resources/jquery.chosen/chosen.jquery.js
# legacy scripts
-skins/common/
+skins/common/IEFixes.js
+skins/common/config.js
+skins/common/protect.js
+skins/common/upload.js
# github.com/jshint/jshint/issues/729
tests/qunit/suites/resources/mediawiki/mediawiki.jscompat.test.js
+++ /dev/null
-Security reminder: MediaWiki does not require PHP's register_globals. If you
-have it on, turn it '''off''' if you can.
-
-== MediaWiki 1.21 ==
-
-THIS IS NOT A RELEASE YET
-
-MediaWiki 1.21 is an alpha-quality branch and is not recommended for use in
-production.
-
-=== Configuration changes in 1.21 ===
-* (bug 29374) $wgVectorUseSimpleSearch is now enabled by default.
-* Deprecated $wgAllowRealName is removed. Use $wgHiddenPrefs[] = 'realname'
- instead.
-* (bug 39957) Added $wgUnwatchedPageThreshold, specifying minimum count
- of page watchers required for the number to be accessible to users
- without the unwatchedpages permission.
-* $wgBug34832TransitionalRollback has been removed.
-* (bug 29472) $wgUseDynamicDates has been removed and its functionality
- disabled.
-
-=== New features in 1.21 ===
-* (bug 38110) Schema changes (adding or dropping tables, indices and
- fields) can be now be done separately from from other changes that
- update.php makes. This is useful in environments that use database
- permissions to restrict schema changes but allow the DB user that
- MediaWiki normally runs as to perform other changes that update.php
- makes. Schema changes can be run separately. See the file UPGRADE
- for more information.
-* (bug 34876) jquery.makeCollapsible has been improved in performance.
-* Added ContentHandler facility to allow extensions to support other content
- than wikitext. See docs/contenthandler.txt for details.
-* New feature was developed for showing high-DPI thumbnails for high-DPI mobile
- and desktop displays (configurable with $wgResponsiveImages).
-* Added new backend to represent and store information about sites and site
- specific configuration.
-* jQuery upgraded from 1.8.2 to 1.8.3.
-* jQuery UI upgraded from 1.8.23 to 1.8.24.
-* Added separate fa_sha1 field to filearchive table. This allows sha1
- searches with the api in miser mode for deleted files.
-* Add initial and programmatic sorting for tablesorter.
-* Add the event "sortEnd.tablesorter", triggered after sorting has completed.
-* The Job system was refactored to allow for different backing stores for
- queues as well as cross-wiki access to queues, among other things. The schema
- for the DB queue was changed to support better concurrency and reduce
- deadlock errors.
-* Added ApiQueryORM class to facilitate creation of query API modules based on
- tables that have a corresponding ORMTable class.
-* (bug 40876) Icon for PSD (Adobe Photoshop) file types.
-* (bug 40641) Implemented Special:Version/Credits with a list of contributors.
-* (bug 7851) Implemented one-click AJAX patrolling.
-* The <data>, <time>, <meta>, and <link> elements are allowed within WikiText
- for use with Microdata.
-* The HTML5 <mark> tag has been whitelisted.
-* Added ParserCloned hook for when the Parser object is cloned.
-* Added AlternateEditPreview hook to allow extensions to replace the page
- preview from the edit page.
-* Added EditPage::showStandardInputs:options hook to allow extensions to add
- new fields to the "editOptions" area of the edit form.
-* Upload stash DB schema altered to improve upload performance.
-* The following global functions are now reporting deprecated warnings in
- debug mode: wfMsg, wfMsgNoTrans, wfMsgForContent, wfMsgForContentNoTrans,
- wfMsgReal, wfMsgGetKey, wfMsgHtml, wfMsgWikiHtml, wfMsgExt, wfEmptyMsg. Use
- the Message class, or the global method wfMessage.
-* Added $wgEnableCanonicalServerLink, off by default. If enabled, a
- <link rel=canonical> tag is added to every page indicating the correct server
- to use.
-* Debug message emitted by wfDebugLog() will now be prefixed with the group
- name when its logged to the default log file. That is the case whenever the
- group has no key in wgDebugLogGroups, that will help triage the default log.
-* (bug 24620) Add types to LogFormatter.
-* jQuery JSON upgraded from 2.3 to 2.4.0.
-* Added GetDoubleUnderscoreIDs hook, for modifying the list of magic words.
-* DatabaseUpdater class has two new methods to ease extensions schema changes:
- dropExtensionIndex and renameExtensionIndex.
-* New preference type - 'api'. Preferences of this type are not shown on
- Special:Preferences, but are still available via the action=options API.
-* (bug 39397) Hide rollback link if a user is the only contributor of the page.
-* $wgPageInfoTransclusionLimit limits the list size of transcluded articles
- on the info action. Default is 50.
-* Added action=createaccount to allow user account creation.
-* (bug 40124) action=options API also allows for setting of arbitrary
- preferences, provided that their names are prefixed with 'userjs-'. This
- officially reenables the feature that was undocumented and defective
- in MW 1.20 (saving preferences using Special:Preferences cleared any
- additional fields) and which has been disabled in 1.20.1 as a part of
- a security fix (bug 42202).
-* Added option to specify "others" as author in extension credits using
- "..." as author name.
-* Added the ability to limit the wall clock time used by shell processes,
- as well as the CPU time. Configurable with $wgMaxShellWallClockTime.
-* Allow memory of shell subprocesses to be limited using Linux cgroups
- instead of ulimit -v, which tends to cause deadlocks in recent versions
- of ImageMagick. Configurable with $wgShellCgroup.
-* Added $wgWhitelistReadRegexp for regex whitelisting.
-* (bug 5346) Categories that are redirects will be displayed italic in
- the category links section at the bottom of a page.
-* (bug 43915) New maintenance script deleteEqualMessages.php.
-* You can now create checkbox option matrices through the HTMLCheckMatrix
- subclass in HTMLForm.
-* WikiText now permits the use of WAI-ARIA's role="presentation" inside of
- html elements and tables. This allows presentational markup, especially
- tables. To be marked up as such.
-* maintenance/sql.php learned the --cluster option. Let you run the script
- on some external cluster instead of the primary cluster for a given wiki.
-* (bug 20281) test the parsing of inline URLs.
-* Added Special:PagesWithProp, which lists pages using a particular page property.
-* Implemented language-specific collations for category sorting for 67 languages
- based in latin, greek and cyrillic alphabets. This allows one to *finally* get
- articles to be correctly sorted on category pages. They are named
- 'uca-<langcode>', where <langcode> is one of: af, ast, az, be, bg, br, bs, ca,
- co, cs, cy, da, de, dsb, el, en, eo, es, et, eu, fi, fo, fr, fur, fy, ga, gd,
- gl, hr, hsb, hu, is, it, kk, kl, ku, ky, la, lb, lt, lv, mk, mo, mt, nl, no,
- oc, pl, pt, rm, ro, ru, rup, sco, sk, sl, smn, sq, sr, sv, tk, tl, tr, tt, uk,
- uz, vi.
-* Added 'CategoryAfterPageAdded' and 'CategoryAfterPageRemoved' hooks.
-* Added 'HistoryRevisionTools' and 'DiffRevisionTools' hooks.
-* Added 'SpecialSearchResultsPrepend' and 'SpecialSearchResultsAppend' hooks.
-* (bug 33186) Add image rotation api "imagerotate"
-* (bug 34040) Add "User rights management" link on user page toolbox.
-* (bug 45526) Add QUnit assertion helper "QUnit.assert.htmlEqual" for asserting
- structual equality of HTML (ignoring insignificant differences like
- quotmarks, order and whitespace in the attribute list).
-
-=== Bug fixes in 1.21 ===
-* (bug 42649) PHP Fatal error: Call to a member function isLocal() on a
- non-object in Title.php
-* (bug 46493) Special:ProtectedPages results in whitepage when a bad title is protected
-* (bug 40617) Installer can now customize the logo in LocalSettings.php
-* (bug 40353) SpecialDoubleRedirect should support interwiki redirects.
-* (bug 40352) fixDoubleRedirects.php should support interwiki redirects.
-* (bug 9237) SpecialBrokenRedirect should not list interwiki redirects.
-* (bug 34960) Drop unused fields rc_moved_to_ns and rc_moved_to_title from
- recentchanges table.
-* (bug 32951) Do not register internal externals with absolute protocol,
- when server has relative protocol.
-* (bug 39005) When purging proxies listed in $wgSquidServers using HTTP PURGE
- method requests, we now send a Host header by default, for Varnish
- compatibility. This also works with Squid in reverse-proxy mode. If you wish
- to support Squid configured in forward-proxy mode, set
- $wgSquidPurgeUseHostHeader to false.
-* (bug 37020) sql.php with readline eats semicolon.
-* (bug 11748) Properly handle optionally-closed HTML tags when Tidy is
- disabled, and don't wrap HTML-syntax definition lists in paragraphs.
-* (bug 41409) Diffs while editing an old revision should again diff against the
- current revision.
-* (bug 41494) Honor $wgLogExceptionBacktrace when logging non-API exceptions
- caught during API execution.
-* (bug 37963) Fixed loading process for user options.
-* (bug 26995) Update filename field on Upload page after having sanitized it.
-* (bug 41793) Contribution links to users with 0 edits on Special:ListUsers
- didn't show up red.
-* (bug 41899) A PHP notice no longer occurs when using the "rvcontinue" API
- parameter.
-* (bug 42036) Account creation emails now contain canonical (not
- protocol-relative) URLs.
-* (bug 41990) Fix regression: API edit with redirect=true and lacking
- starttimestamp and basetimestamp should not cause an edit conflict.
-* (bug 41706) EditPage: Preloaded page should be converted if possible and
- needed.
-* (bug 41886) Rowspans are no longer exploded by tablesorter until the table is
- actually sorted.
-* (bug 2865) User interface HTML elements don't use lang attribute.
- (completed the fix by adding the lang attribute to firstHeading).
-* (bug 42173) Removed namespace prefixes on Special:UncategorizedCategories.
-* (bug 36053) Log in "returnto" feature forgets query parameters if no
- title parameter was specified.
-* (bug 42410) API action=edit now returns correct timestamp for the new edit.
-* (bug 14901) Email notification mistakes log action for new page creation.
- Enotif no longer sends "page has been created" notifications for some log
- actions. The following events now have a correct message: page creation,
- deletion, move, restore (undeletion), change (edit). Parameter
- $CHANGEDORCREATED is deprecated in 'enotif_body' and scheduled for removal in
- MediaWiki 1.23.
-* (bug 457) In the sidebar of Vector, CologneBlue, Monobook, and Monobook-based
- skins, the heading levels have been changed from (variously per skin)
- <h4>, <h5> or <h6> to only <h3>s, with a <h2> hidden heading above them.
- If you are styling or scripting the headings in a custom way, this change
- will require updates to your site's CSS or JS.
-* (bug 41342) jquery.suggestions should cancel any active (async) fetches
- before it triggers another fetch.
-* (bug 42184) $wgUploadSizeWarning missing second variable.
-* (bug 34581) removeUnusedAccounts.php maintenance script now ignores newuser
- log when determining whether an account is used.
-* (bug 43379) Gracefully fail if rev_len is unavailable for a revision on the
- History page.
-* (bug 42949) API no longer assumes all exceptions are MWException.
-* (bug 41733) Hide "New user message" (.usermessage) element from printable view.
-* (bug 39062) Special:Contributions will display changes that don't have
- a parent id instead of just an empty bullet item.
-* (bug 37209) "LinkCache doesn't currently know about this title" error fixed.
-* wfMerge() now works if $wgDiff3 contains spaces
-* (bug 43052) mediawiki.action.view.dblClickEdit.dblClickEdit should trigger
- ca-edit click instead opening URL directly.
-* (bug 43964) Invalid value of "link" parameter in <gallery> no longer produces
- a fatal error.
-* (bug 44775) The username field is not pre-filled when creating an account.
-* (bug 45069) wfParseUrl() no longer produces a PHP notice if passed a "mailto:"
- URL without address
-* (bug 45012) Creating an account by e-mail can no longer show a
- "password mismatch" error.
-* (bug 44599) On Special:Version, HEADs for submodule checkouts (e.g. for
- extensions) performed using Git 1.7.8+ should now appear.
-* (bug 42184) $wgUploadSizeWarning missing second variable
-* (bug 40326) Check if files exist with a different extension during uploading
-* (bug 34798) Updated CSS for Atom/RSS recent changes feeds to match on-wiki diffs.
-* (bug 42430) Calling numRows on MySQL no longer propagates unrelated errors.
-* (bug 44719) Removed mention of non-existing maintenance/migrateCurStubs.php
- script in includes/DefaultSettings.php
-* (bug 45143) jquery.badge: Treat non-Latin variants of zero as zero as well.
-* (bug 46151) mwdocgen.php should not ignore exit code of doxygen command.
-* (bug 41889) Fix $.tablesorter rowspan exploding for complex cases.
-* (bug 47489) Installer now automatically selects the next-best database type if
- the PHP mysql extension is not loaded, preventing fatal errors in some cases.
-* (bug 47202) wikibits: FF2Fixes.css should not be loaded in Firefox 20.
-
-=== API changes in 1.21 ===
-* prop=revisions can now report the contentmodel and contentformat.
- See docs/contenthandler.txt.
-* action=edit and action=parse now support contentmodel and contentformat
- parameters to control the interpretation of page content.
- See docs/contenthandler.txt for details.
-* (bug 35693) ApiQueryImageInfo now suppresses errors when unserializing metadata.
-* (bug 40111) Disable minor edit for page/section creation by API.
-* (bug 41042) Revert change to action=parse&page=... behavior when the page
- does not exist.
-* (bug 27202) Add timestamp sort to list=allimages.
-* (bug 43137) Don't return the sha1 of revisions through the API if the content is
- revision-deleted.
-* ApiQueryImageInfo now also returns imageinfo for redirects.
-* list=alltransclusions added to enumerate every instance of page embedding
-* list=alllinks & alltransclusions now allow both 'from' and 'continue' in
- the same query. When both are present, 'from' is simply ignored.
-* list=alllinks & alltransclusions now allow 'unique' in generators, to yield
- a list of all link/template target pages instead of source pages.
-* BREAKING CHANGE: list=logevents output format changed for details of some log
- types. Specifically, details that were formerly reported under a key like
- "4::foo" will now be reported under a key of simply "foo".
-* BREAKING CHANGE: '??_badcontinue' error code was changed to '??badcontinue'
- for all query modules.
-* ApiQueryBase adds 'badcontinue' error code if module has 'continue' parameter.
-* (bug 35885) Removed version parameter and all getVersion() methods.
-* action=options now takes a "resetkinds" option, which allows only resetting
- certain types of preferences when the "reset" option is set.
-* (bug 36751) ApiQueryImageInfo now returns imageinfo for the redirect target
- when queried with &redirects=.
-* (bug 31849) ApiQueryImageInfo no longer gets confused when asked for info on
- a redirect and its target.
-* (bug 43849) ApiQueryImageInfo no longer throws exceptions with ForeignDBRepo
- redirects.
-* On error, any warnings generated before that error will be shown in the result.
-* action=help supports generalized submodules (modules=query+value), querymodules obsolete
-* ApiQueryImageInfo continuation is more reliable. The only major change is
- that the imagerepository property will no longer be set on page objects not
- processed in the current query (i.e. non-images or those skipped due to
- iicontinue).
-* Add supports for all pageset capabilities - generators, redirects, converttitles to
- action=purge and action=setnotificationtimestamp.
-* (bug 43251) prop=pageprops&ppprop= now accepts multiple props to query.
-* ApiQueryImageInfo will now limit the number of calls to File::transform made
- in any one query. If there are too many, iicontinue will be returned.
-* action=query&meta=siteinfo&siprop=general will now return the regexes used for
- link trails and link prefixes. Added for Parsoid support.
-* Added an API query module list=pageswithprop, which lists pages using a
- particular page property.
-* Added an API query module list=pagepropnames, which lists all page prop names
- currently in use on the wiki.
-* (bug 44921) ApiMain::execute() will now return after the CORS check for an
- HTTP OPTIONS request.
-* (bug 44923) action=upload works correctly if the entire file is uploaded in
- the first chunk.
-* Added 'continue=' parameter to streamline client iteration over complex query results
-* (bug 44909) API parameters may now be marked as type "upload", which is now
- used for action=upload's 'file' and 'chunk' parameters. This type will raise
- an error during parameter validation if the parameter is given but not
- recognized as an uploaded file.
-* (bug 44244) prop=info may now return the number of people watching each page.
-* (bug 33304) list=allpages will no longer return duplicate entries when
- querying protection.
-* (bug 33304) list=allpages will now find really old indefinite protections.
-* (bug 45937) meta=allmessages will report a syntactically invalid lang as a
- proper error instead of as an uncaught exception.
-* The JSON output formatter now leaves forward slashes unescaped to improve human
- readability of URLs and similar strings. Also, a "utf8" option is now provided
- to use UTF-8 encoding instead of hex escape codes for most non-ASCII characters.
-
-=== API internal changes in 1.21 ===
-* For debugging only, a new global $wgDebugAPI removes many API restrictions when true.
- Never use on the production servers, as this flag introduces security holes.
- Whenever enabled, a warning will also be added to all output.
-* ApiModuleManager now handles all submodules (actions,props,lists) and instantiation
-* Query stores prop/list/meta as submodules
-* ApiPageSet can now be used in any action to process titles/pageids/revids or any generator.
-* BREAKING CHANGE: ApiPageSet constructor now has two params instead of three, with only the
- first one keeping its meaning. ApiPageSet is now derived from ApiBase.
-* BREAKING CHANGE: ApiQuery::newGenerator() and executeGeneratorModule() were deleted.
-* ApiQueryGeneratorBase::setGeneratorMode() now requires a pageset param.
-* $wgAPIGeneratorModules is now obsolete and will be ignored.
-* Added flags ApiResult::OVERRIDE and ADD_ON_TOP to setElement() and addValue()
-* Internal API calls will now include <warnings> in case of unused parameters
-
-=== Languages updated in 1.21 ===
-
-MediaWiki supports over 350 languages. Many localisations are updated
-regularly. Below only new and removed languages are listed, as well as
-changes to languages because of Bugzilla reports.
-
-* South Azerbaijani (azb) added.
-* (bug 30040) Autonym for nds-nl is now 'Nedersaksies' (was 'Nedersaksisch').
-* (bug 45436) Autonym for pi (Pali) is now 'पालि' (was ''पाळि').
-* (bug 34977) Now formatted numbers in Spanish use space as separator
- for thousands, as mandated by the Real Academia Española.
-* (bug 35031) Kurdish formatted numbers now use period and comma
- as separators for thousands and decimals respectively.
-
-=== Other changes in 1.21 ===
-* BREAKING CHANGE: (bug 44385) Removed the jquery.collapsibleTabs module and
- moved it to the Vector extension. It was entirely Vector-extension-specific,
- deeply interconnected with the extension, and this functionality really
- belongs to the extension instead of the skin anyway. In the unlikely case you
- were using it, you have to either copy it to your extension, or install the
- Vector extension (and possibly disable its features using config settings if
- you don't want them).
-* Experimental IBM DB2 support was removed due to lack of interest and maintainership.
-* BREAKING CHANGE: Filenames of maintenance scripts were standardized into
- lowerCamelCase format, and made more explicit:
- - clear_stats.php -> clearCacheStats.php
- - clear_interwiki_cache.php -> clearInterwikiCache.php
- - initStats.php -> initSiteStats.php
- - proxy_check.php -> proxyCheck.php
- - stats.php -> showCacheStats.php
- - showStats.php -> showSiteStats.php.
- Class names were renamed accordingly:
- - clear_stats -> ClearCacheStats
- - InitStats -> InitSiteStats
- - CacheStats -> ShowCacheStats
- - ShowStats -> ShowSiteStats.
-* BREAKING CHANGE: (bug 38244) Removed the mediawiki.api.titleblacklist module
- and moved it to the TitleBlacklist extension.
-* BREAKING CHANGE: Implementation of MediaWiki's JS and JSON value encoding
- has changed:
-** MediaWiki no longer supports PHP installations in which the native JSON
- extension is missing or disabled.
-** XmlJsCode objects can no longer be nested inside objects or arrays.
- (For Xml::encodeJsCall(), this individually applies to each argument.)
-** The sets of characters escaped by default, along with the precise escape
- sequences used, have changed (except for the Xml::escapeJsString()
- function, which is now deprecated).
-* BREAKING CHANGE: The Services_JSON class has been removed. If necessary,
- be sure to upgrade affected extensions at the same time (e.g. Collection).
-
-== Compatibility ==
-
-MediaWiki 1.21 requires PHP 5.3.2 or later.
-
-MySQL is the recommended DBMS. PostgreSQL or SQLite can also be used, but
-support for them is somewhat less mature. There is experimental support for
-Oracle.
-
-The supported versions are:
-
-* MySQL 5.0.2 or later
-* PostgreSQL 8.3 or later
-* SQLite 3.3.7 or later
-* Oracle 9.0.1 or later
-
-== Upgrading ==
-
-1.21 has several database changes since 1.20, and will not work without schema
-updates. Note that due to changes to some very large tables like the revision
-table, the schema update may take quite long (minutes on a medium sized site,
-many hours on a large site).
-
-If upgrading from before 1.11, and you are using a wiki as a commons
-repository, make sure that it is updated as well. Otherwise, errors may arise
-due to database schema changes.
-
-If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
-new database fields are filled with data.
-
-If you are upgrading from MediaWiki 1.4.x or earlier, you should upgrade to
-1.5 first. The upgrade script maintenance/upgrade1_5.php has been removed
-with MediaWiki 1.21.
-
-Don't forget to always back up your database before upgrading!
-
-See the file UPGRADE for more detailed upgrade instructions.
-
-For notes on 1.19.x and older releases, see HISTORY.
-
-== Online documentation ==
-
-Documentation for both end-users and site administrators is available on
-MediaWiki.org, and is covered under the GNU Free Documentation License (except
-for pages that explicitly state that their contents are in the public domain):
-
- https://www.mediawiki.org/wiki/Documentation
-
-== Mailing list ==
-
-A mailing list is available for MediaWiki user support and discussion:
-
- https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
-
-A low-traffic announcements-only list is also available:
-
- https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
-
-It's highly recommended that you sign up for one of these lists if you're
-going to run a public MediaWiki, so you can be notified of security fixes.
-
-== IRC help ==
-
-There's usually someone online in #mediawiki on irc.freenode.net.
=== Configuration changes in 1.22 ===
* $wgRedirectScript was removed. It was unused.
* Removed $wgLocalMessageCacheSerialized, it is now always true.
-* When $wgUseVFormUserLogin is true, the redesign of Special:UserLogin is
- activated; when $wgUseVFormCreateAccount is true, the redesign of
- Special:UserLogin/signup is activated.
* $wgVectorUseIconWatch is now enabled by default.
* $wgCascadingRestrictionLevels was added.
* ftps, ssh, sftp, xmpp, sip, sips, tel, sms, bitcoin, magnet, urn, and geo
It is still set to true for extension compatibility but doing so in extensions is deprecated.
* $wgXhtmlDefaultNamespace is no longer used by core. Setting it will no longer change the
xmlns used by MediaWiki. Reliance on this variable by extensions is deprecated.
+* $wgHandheldStyle was removed.
+* $wgHandheldForIPhone was removed.
+* $wgJsMimeType is no longer used by core. Most usage has been removed since
+ HTML output is now exclusively HTML5.
+* $wgDBOracleDRCP added. True enables persistent connection with DRCP on Oracle.
+* $wgLogAutopatrol added to allow disabling logging of autopatrol edits in the logging table.
+ default for $wgLogAutopatrol is true.
+* The 'edit' right no longer allows for editing a user's own CSS and JS.
+* New rights 'editmyusercss', 'editmyuserjs', 'viewmywatchlist',
+ and 'editmywatchlist' restrict actions that were formerly allowed by default.
+ They have been added to the default for $wgGroupPermissions['*'].
=== New features in 1.22 ===
* (bug 44525) mediawiki.jqueryMsg can now parse (whitelisted) HTML elements and attributes.
* New 'mediawiki.ui' CSS module providing mw-ui-* styles for buttons and a
compact vertical form layout.
* New versions of login (Special:UserLogin) and create account
- (Special:UserLogin/signup) forms. They are opt-in for now, controlled by
- the $wgUseVFormUserLogin and $wgUseVFormCreateAccount settings or a 'useNew'
- URL parameter trigger.
+ (Special:UserLogin/signup) forms using the "vform" compact vertical form layout.
+ These forms use new messages that assume a "Help logging in" link, see
+ https://www.mediawiki.org/wiki/Manual:Page_customizations;
+ https://www.mediawiki.org/wiki/Account_creation_user_experience/Strings lists the
+ message key changes.
* (bug 23343) Implemented ability to apply IP blocks to the contents of X-Forwarded-For headers
by adding a new configuration variable $wgApplyIpBlocksToXff (disabled by default).
* The new hook 'APIGetPossibleErrors' to modify the list of possible errors was
which can be cascading (previously 'sysop' was hard-coded as the only one).
* XHTML5 support has been improved. If you set $wgMimeType = 'application/xhtml+xml'
MediaWiki will try outputting markup acording to XHTML5 rules.
+* New hook 'TitleSquidURLs' for manipulating the list of URLs to be purged from
+ HTTP caches when a page is changed.
+* Changed the patrolling system to always show the link for patrolling in case the
+ current revision is patrollable. This also removed the usage of the rcid URI parameters.
+* Oracle DB backend now supports Database Resident Connection Pooling (DRCP).
+ Can be enabled by setting $wgDBOracleDRCP=true.
+ Requires Oracle DB 11gR1 or above, enabled DRCP inside the DB itself and a
+ propper connect string.
+ More about DRCP can be found at:
+ http://www.oracle-base.com/articles/11g/database-resident-connection-pool-11gr1.php
+* Add a new parameter $patrolFooterShown to hook ArticleViewFooter so the hook
+ handlers can take further action based on the status of the patrol footer
+* LinkCache singleton can now be altered or cleared, letting one to specify
+ another instance that does not rely on a database backend.
+* MediaWiki's PHPUnit tests can now use PHPUnit installed using composer --dev.
+* New user rights have been added to increase granularity in rights management
+ for extensions such as OAuth:
+** editmyusercss controls whether a user may edit their own CSS subpages.
+** editmyuserjs controls whether a user may edit their own JS subpages.
+** viewmywatchlist controls whether a user may view their watchlist.
+** editmywatchlist controls whether a user may edit their watchlist.
+* Add new hook AbortTalkPageEmailNotification, this will be used to determine
+ whether to send the regular talk page email notification
+* (bug 46513) Vector: Add the collapsibleTabs script from the Vector extension.
+* Added $wgRecentChangesFlags for defining new flags for RecentChanges and
+ watchlists.
=== Bug fixes in 1.22 ===
* Disable Special:PasswordReset when $wgEnableEmail is false. Previously one
strings will now start with digits 0 and 8-f as often as they should.
* (bug 45371) Removed Parser_LinkHooks and CoreLinkFunctions classes.
* (bug 41545) Allow <kbd>, <samp>, and <var> to be nested like allowed in html.
+* PLURAL magic word no longer causes a PHP notice when no matching form exists.
+* (bug 36641) Patrol page links no longer show on non-existent revisions.
+* (bug 35810) Pages not linked from Special:RecentChanges or Special:NewPages
+ are patrollable now.
+* (bug 30213) JavaScript for search suggestions is now disabled when the API
+ is disabled, and AJAX patrolling and watching are now disabled when use of
+ the write API is not allowed.
+* (bug 48294) API: Fix chunk upload async mode.
+* (bug 46749) Broken files tracking category removed from pages if an image
+ with that name is uploaded.
+* (bug 14176) System messages that are empty were previously incorrectly treated
+ as non-existent, causing a fallback to the default. This stopped users from
+ overriding system messages to make them blank.
+* (bug 48319) action=parse no longer returns an error if passed none of 'oldid',
+ 'pageid', 'page', 'title', and 'text' (e.g. if only passed 'summary'). A
+ warning will instead be issued if 'title' is non-default, unless no props are
+ requested.
+* Special:Recentchangeslinked will now include upload log entries
+* (bug 41281) Fixed ugly output if file size could not be extracted for multi-page media.
+* (bug 50315) list=logevents API module will now output log entries by anonymous users.
=== API changes in 1.22 ===
+* (bug 25553) The JSON output formatter now leaves forward slashes unescaped
+ to improve human readability of URLs and similar strings. Also, a "utf8"
+ option is now provided to use UTF-8 encoding instead of hex escape codes
+ for most non-ASCII characters.
* (bug 46626) xmldoublequote parameter was removed. Because of a bug, the
parameter has had no effect since MediaWiki 1.16, and so its removal is
unlikely to impact existing clients.
stored in the database.
* (bug 47219) Allow specifying change type of Wikipedia feed items
* prop=imageinfo now allows setting iiurlheight without setting iiurlwidth
-* prop=info now adds the content model of the title.
-* New upload log entries will now contain information on the relavent
+* prop=info now adds the content model and page language of the title.
+* New upload log entries will now contain information on the relevant
image (sha1 and timestamp).
+* (bug 49239) action=parse now can parse in preview and section preview modes.
+* (bug 49259) action=patrol now accepts revision ids.
+* (bug 48129) list=blocks&bkip= now correctly handles IPv6 CIDR ranges and
+ honors $wgBlockCIDRLimit. Note any clients passing invalid values to bkip
+ will now receive an error, rather than the previous behavior listing all
+ user blocks.
+* (bug 48201) action=parse&text=foo now assumes wikitext if no title is given,
+ rather than using the content model of the page "API".
+* action=watch may now return errors.
=== Languages updated in 1.22===
regularly. Below only new and removed languages are listed, as well as
changes to languages because of Bugzilla reports.
+* Batak Toba (bbc-latn) added.
* (bug 46751) Made Buryat (Russia) (буряад) (bxr) fallback to Russian.
=== Other changes in 1.22 ===
+* BREAKING CHANGE: Implementation of MediaWiki's JS and JSON value encoding
+ has changed:
+** MediaWiki no longer supports PHP installations in which the native JSON
+ extension is missing or disabled.
+** XmlJsCode objects can no longer be nested inside objects or arrays.
+ (For Xml::encodeJsCall(), this individually applies to each argument.)
+** The sets of characters escaped by default, along with the precise escape
+ sequences used, have changed (except for the Xml::escapeJsString()
+ function, which is now deprecated).
+* BREAKING CHANGE: The Services_JSON class has been removed. If necessary,
+ be sure to upgrade affected extensions at the same time (e.g. Collection).
* redirect.php was removed. It was unused.
* ClickTracking integration was dropped from the mediaWiki.user.bucket
JavaScript function. The 'tracked' option is now ignored.
to redirect through Special:Redirect.
* Monobook: Removed the old conditional stylesheets for Opera 6, 7 and 9.
* Support for XHTML 1.0 has been removed. MediaWiki now only outputs (X)HTML5.
+* wikibits: User-agent related globals have been deprecated. The following
+ properties now default to false and emit mw.log.warn: is_gecko, is_chrome_mac,
+ is_chrome, webkit_version, is_safari_win, is_safari, webkit_match, is_ff2,
+ ff2_bugs, is_ff2_win, is_ff2_x11, opera95_bugs, opera7_bugs, opera6_bugs,
+ is_opera_95, is_opera_preseven, is_opera, and ie6_bugs.
+* (bug 48276) MediaWiki will now flash a confirmation message upon successfully
+ editing a page.
+* (bug 40785) mediawiki.legacy.ajax has been marked as deprecated. The following
+ properties now emit mw.log.warn when accessed: sajax_debug, sajax_init_object,
+ sajax_do_call and wfSupportsAjax.
+* BREAKING CHANGE: meta keywords are no longer supported. A <meta name="keywords"
+ will no longer be output and OutputPage::addKeyword no longer exists.
+* Methods Title::userCanEditCssSubpage and Title::userCanEditJsSubpage,
+ deprecated since 1.19, have been removed.
+* (bug 50134) Hook functions are no longer required to return a value. When a
+ hook function does not return a value (or when it returns an explicit null),
+ processing continues. To abort the hook, a hook function must return an
+ explicit, boolean false or a string error message. Other falsey values are
+ tantamount to a 'return true' in earlier versions of MediaWiki.
== Compatibility ==
// Bail if PHP is too low
if ( !function_exists( 'version_compare' ) || version_compare( phpversion(), '5.3.2' ) < 0 ) {
// We need to use dirname( __FILE__ ) here cause __DIR__ is PHP5.3+
- require( dirname( __FILE__ ) . '/includes/PHPVersionError.php' );
+ require dirname( __FILE__ ) . '/includes/PHPVersionError.php';
wfPHPVersionError( 'api.php' );
}
// Initialise common code.
-require ( __DIR__ . '/includes/WebStart.php' );
+require __DIR__ . '/includes/WebStart.php';
wfProfileIn( 'api.php' );
$starttime = microtime( true );
making for some slight savings in memory and load-up performance at runtime.
Admins who want to have all the reversed titles can add:
- require_once('extensions/ReverseTitle.php');
+ require_once 'extensions/ReverseTitle.php';
...to their LocalSettings.php file; those of us who don't want or need it can
just leave it out.
$user: the User object about to be created (read-only, incomplete)
&$msg: out parameter: HTML to display on abort
+'AbortTalkPageEmailNotification': Return false to cancel talk page email notification
+$targetUser: the user whom to send talk page email notification
+$title: the page title
+
'AbortChangePassword': Return false to cancel password change.
$user: the User object to which the password change is occuring
$mOldpass: the old password provided by the user
'ArticleViewFooter': After showing the footer section of an ordinary page view
$article: Article object
+$patrolFooterShown: boolean whether patrol footer is shown
'ArticleViewHeader': Before the parser cache is about to be tried for article
viewing.
$flags: a comma-delimited list of strings representing the options used. May
include: utf8 (this will always be set for new revisions); gzip; external.
-'SearchUpdate': Prior to search update completion.
+'SearchUpdate': Prior to search update completion. Return false to stop any
+further text/content processing
$id : Page id
-$namespace : Page namespace
-$title : Page title
+$title : Title object
$text : Current text being indexed
+$content : Content object for text being indexed.
'SearchGetNearMatchBefore': Perform exact-title-matches in "go" searches before
the normal operations.
'SearchableNamespaces': An option to modify which namespaces are searchable.
&$arr : Array of namespaces ($nsId => $name) which will be used.
-'SeleniumSettings': TODO
-
'SetupAfterCache': Called in Setup.php, after cache objects are set
'ShowMissingArticle': Called when generating the output for a non-existent page.
&$text: Link text.
&$result: Complete assoc. array if you want to return true.
-'SkinTemplateTabs': TODO
-
'SkinTemplateToolboxEnd': Called by SkinTemplate skins after toolbox links have
been rendered (useful for adding more).
$sk: The QuickTemplate based skin template running the hook.
&$titleArray: set this to an object to override the default object returned
$res: database result used to create the object
+'TitleQuickPermissions': Called from Title::checkQuickPermissions to add to
+or override the quick permissions check.
+$title: The Title object being accessed
+$user: The User performing the action
+$action: Action being performed
+&$errors: Array of errors
+$doExpensiveQueries: Whether to do expensive DB queries
+$short: Whether to return immediately on first error
+
'TitleGetRestrictionTypes': Allows extensions to modify the types of protection
that can be applied.
$title: The title in question.
$user: Current user object
&$whitelisted: Boolean value of whether this title is whitelisted
+'TitleSquidURLs': Called to determine which URLs to purge from HTTP caches.
+$this: Title object to purge
+&$urls: An array of URLs to purge from the caches, to be manipulated.
+
'UndeleteForm::showHistory': Called in UndeleteForm::showHistory, after a
PageArchive object has been created but before any further processing is done.
&$archive: PageArchive object
'UnwatchArticle': Before a watch is removed from an article.
$user: user watching
$page: WikiPage object to be removed
+&$status: Status object to be returned if the hook returns false
'UnwatchArticleComplete': After a watch is removed from an article.
$user: user that watched
'WatchArticle': Before a watch is added to an article.
$user: user that will watch
$page: WikiPage object to be watched
+&$status: Status object to be returned if the hook returns false
'WatchArticleComplete': After a watch is added to an article.
$user: user that watched
EXAMPLE:
<?php
-require("MemCachedClient.inc.php");
+require 'MemCachedClient.inc.php';
// set the servers, with the last one having an integer weight value of 3
$options["servers"] = array("10.0.0.15:11000","10.0.0.16:11001",array("10.0.0.17:11002", 3));
* Modern: An attractive blue/grey theme with sidebar and top bar. Derived from
Monobook.
-* Cologne Blue: A lightweight skin with minimal formatting. The oldest of
- currently bundled skins, largely rewritten in 2012 while keeping the looks.
+* Cologne Blue: A lightweight skin with minimal formatting. The oldest of the
+ currently bundled skins, largely rewritten in 2012 while keeping its
+ appearance.
Several legacy skins were removed in the 1.22 release, as the burden of
This skin is now used for the old Wikipedia snapshot at
http://nostalgia.wikipedia.org/
-* Chick: A lightweight Monobook skin with no sidebar, the sidebar links were
+* Chick: A lightweight Monobook skin with no sidebar. The sidebar links were
given at the bottom of the page instead.
* Simple: A lightweight skin with a simple white-background sidebar and no top
bar.
-* MySkin: Monobook without the CSS. The idea was that you customise it using
- user or site CSS.
+* MySkin: Essentially Monobook without the CSS. The idea was that it could be
+ customised using user-specific or site-wide CSS (see below).
== Custom CSS/JS ==
It is possible to customise the site CSS and JavaScript without editing any
-source files. This is done by editing some pages on the wiki:
+server-side source files. This is done by editing some pages on the wiki:
* [[MediaWiki:Common.css]] -- for skin-independent CSS
* [[MediaWiki:Common.js]] -- for skin-independent JavaScript
This technique is used by the more ambitious MediaWiki site operators, to
create complex custom skins for their wikis. It should be preferred over
-editing the core Monobook skin directly.
+editing the core Monobook skin directly.
See http://www.mediawiki.org/wiki/Manual:Skinning for more information.
<html>
<head>
<title>CSS Child selector emulation for IE 6</title>
- <style type="text/css">
+ <style>
/** Common rules **/
body { background-color: #CCC; }
table { border:1px black solid; }
</tr>
</table>
<p><strong>NOTE:</strong>The nested caption keep the green background. The nested table keep the black border. This is because those declarations are global so we did not reset them.</p>
-
<!DOCTYPE html>
-<html lang="en" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
+<html lang="en" dir="ltr">
<head>
- <link rel="stylesheet" href="../../skins/common/shared.css" />
+ <link rel="stylesheet" href="../../skins/common/shared.css">
</head>
<body style="font-size: small;">
<tr><td>line with hover</td><td>line with hover</td></tr>
</table>
-</body></html>
+</body>
+</html>
<!DOCTYPE html>
-<html lang="en" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
+<html lang="en" dir="ltr">
<head>
- <link rel="stylesheet" href="../../resources/mediawiki.action/mediawiki.action.history.diff.css" />
+ <link rel="stylesheet" href="../../resources/mediawiki.action/mediawiki.action.history.diff.css">
</head>
<body style="background-color: #C0C0C0;">
<p>
</td></tr>
</table>
-</body></html>
+</body>
+</html>
<!DOCTYPE html>
-<html lang="en" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
+<html lang="en" dir="ltr">
<head>
- <style type="text/css">
+ <style>
pre {
border: 1px dashed #AAA;
background-color: #E0E0E0;
font-family: monospace, DOESNOTEXISTREALLY;'>
font-family: monospace, DOESNOTEXISTREALLY;
</pre>
-
<!DOCTYPE html>
<html>
<head>
- <style type="text/css">
+ <style>
/** This is just for coloring: */
table { border: 1px solid #CC0; }
td { border: 1px solid #CCC; }
</tr>
</table>
</div>
-
*/
define( 'MW_NO_OUTPUT_COMPRESSION', 1 );
-require ( __DIR__ . '/includes/WebStart.php' );
+require __DIR__ . '/includes/WebStart.php';
wfProfileIn( 'img_auth.php' );
# Set action base paths so that WebRequest::getPathInfo()
/**
* Get the robot policy to be used for the current view
* @param string $action the action= GET parameter
- * @param $pOutput ParserOutput
+ * @param $pOutput ParserOutput|null
* @return Array the policy that should be set
* TODO: actions other than 'view'
*/
- public function getRobotPolicy( $action, $pOutput ) {
+ public function getRobotPolicy( $action, $pOutput = null ) {
global $wgArticleRobotPolicies, $wgNamespaceRobotPolicies, $wgDefaultRobotPolicy;
$ns = $this->getTitle()->getNamespace();
$this->getContext()->getOutput()->addWikiMsg( 'anontalkpagetext' );
}
- # If we have been passed an &rcid= parameter, we want to give the user a
- # chance to mark this new article as patrolled.
- $this->showPatrolFooter();
+ // Show a footer allowing the user to patrol the shown revision or page if possible
+ $patrolFooterShown = $this->showPatrolFooter();
- wfRunHooks( 'ArticleViewFooter', array( $this ) );
+ wfRunHooks( 'ArticleViewFooter', array( $this, $patrolFooterShown ) );
}
* desired, does nothing.
* Side effect: When the patrol link is build, this method will call
* OutputPage::preventClickjacking() and load mediawiki.page.patrol.ajax.
+ *
+ * @return bool
*/
public function showPatrolFooter() {
- $request = $this->getContext()->getRequest();
+ global $wgUseNPPatrol, $wgUseRCPatrol, $wgEnableAPI, $wgEnableWriteAPI;
+
$outputPage = $this->getContext()->getOutput();
$user = $this->getContext()->getUser();
- $rcid = $request->getVal( 'rcid' );
+ $cache = wfGetMainCache();
+ $rc = false;
- if ( !$rcid || !$this->getTitle()->quickUserCan( 'patrol', $user ) ) {
- return;
+ if ( !$this->getTitle()->quickUserCan( 'patrol', $user ) || !( $wgUseRCPatrol || $wgUseNPPatrol ) ) {
+ // Patrolling is disabled or the user isn't allowed to
+ return false;
+ }
+
+ wfProfileIn( __METHOD__ );
+
+ // New page patrol: Get the timestamp of the oldest revison which
+ // the revision table holds for the given page. Then we look
+ // whether it's within the RC lifespan and if it is, we try
+ // to get the recentchanges row belonging to that entry
+ // (with rc_new = 1).
+
+ // Check for cached results
+ if ( $cache->get( wfMemcKey( 'NotPatrollablePage', $this->getTitle()->getArticleID() ) ) ) {
+ wfProfileOut( __METHOD__ );
+ return false;
}
+ if ( $this->mRevision && !RecentChange::isInRCLifespan( $this->mRevision->getTimestamp(), 21600 ) ) {
+ // The current revision is already older than what could be in the RC table
+ // 6h tolerance because the RC might not be cleaned out regularly
+ wfProfileOut( __METHOD__ );
+ return false;
+ }
+
+ $dbr = wfGetDB( DB_SLAVE );
+ $oldestRevisionTimestamp = $dbr->selectField(
+ 'revision',
+ 'MIN( rev_timestamp )',
+ array( 'rev_page' => $this->getTitle()->getArticleID() ),
+ __METHOD__
+ );
+
+ if ( $oldestRevisionTimestamp && RecentChange::isInRCLifespan( $oldestRevisionTimestamp, 21600 ) ) {
+ // 6h tolerance because the RC might not be cleaned out regularly
+ $rc = RecentChange::newFromConds(
+ array(
+ 'rc_new' => 1,
+ 'rc_timestamp' => $oldestRevisionTimestamp,
+ 'rc_namespace' => $this->getTitle()->getNamespace(),
+ 'rc_cur_id' => $this->getTitle()->getArticleID(),
+ 'rc_patrolled' => 0
+ ),
+ __METHOD__,
+ array( 'USE INDEX' => 'new_name_timestamp' )
+ );
+ }
+
+ if ( !$rc ) {
+ // No RC entry around
+
+ // Cache the information we gathered above in case we can't patrol
+ // Don't cache in case we can patrol as this could change
+ $cache->set( wfMemcKey( 'NotPatrollablePage', $this->getTitle()->getArticleID() ), '1' );
+
+ wfProfileOut( __METHOD__ );
+ return false;
+ }
+
+ $rcid = $rc->getAttribute( 'rc_id' );
+
$token = $user->getEditToken( $rcid );
$outputPage->preventClickjacking();
- $outputPage->addModules( 'mediawiki.page.patrol.ajax' );
+ if ( $wgEnableAPI && $wgEnableWriteAPI && $user->isAllowed( 'writeapi' ) ) {
+ $outputPage->addModules( 'mediawiki.page.patrol.ajax' );
+ }
$link = Linker::linkKnown(
$this->getTitle(),
wfMessage( 'markaspatrolledlink' )->rawParams( $link )->escaped() .
'</div>'
);
+
+ wfProfileOut( __METHOD__ );
+ return true;
}
/**
public function showMissingArticle() {
global $wgSend404Code;
$outputPage = $this->getContext()->getOutput();
+ // Whether the page is a root user page of an existing user (but not a subpage)
$validUserPage = false;
# Show info in user (talk) namespace. Does the user exist? Is he blocked?
)
)
);
- $validUserPage = true;
+ $validUserPage = !$this->getTitle()->isSubpage();
} else {
- $validUserPage = true;
+ $validUserPage = !$this->getTitle()->isSubpage();
}
}
$this->getContext()->getRequest()->response()->header( "HTTP/1.1 404 Not Found" );
}
+ if ( $validUserPage ) {
+ // Also apply the robot policy for nonexisting user pages (as those aren't served as 404)
+ $policy = $this->getRobotPolicy( 'view' );
+ $outputPage->setIndexPolicy( $policy['index'] );
+ $outputPage->setFollowPolicy( $policy['follow'] );
+ }
+
$hookResult = wfRunHooks( 'BeforeDisplayNoArticleText', array( $this ) );
if ( ! $hookResult ) {
$this->doDelete( $reason, $suppress );
- if ( $user->isLoggedIn() && $request->getCheck( 'wpWatch' ) != $user->isWatched( $title ) ) {
- if ( $request->getCheck( 'wpWatch' ) ) {
- WatchAction::doWatch( $title, $user );
- } else {
- WatchAction::doUnwatch( $title, $user );
- }
- }
+ WatchAction::doWatchOrUnwatch( $request->getCheck( 'wpWatch' ), $title, $user );
return;
}
'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',
'DatabaseBase' => 'includes/db/Database.php',
'DatabaseMssql' => 'includes/db/DatabaseMssql.php',
'DatabaseMysql' => 'includes/db/DatabaseMysql.php',
+ 'DatabaseMysqlBase' => 'includes/db/DatabaseMysqlBase.php',
'DatabaseOracle' => 'includes/db/DatabaseOracle.php',
'DatabasePostgres' => 'includes/db/DatabasePostgres.php',
'DatabaseSqlite' => 'includes/db/DatabaseSqlite.php',
'LoadMonitor_Null' => 'includes/db/LoadMonitor.php',
'MssqlField' => 'includes/db/DatabaseMssql.php',
'MssqlResult' => 'includes/db/DatabaseMssql.php',
- 'MySQLField' => 'includes/db/DatabaseMysql.php',
- 'MySQLMasterPos' => 'includes/db/DatabaseMysql.php',
+ 'MySQLField' => 'includes/db/DatabaseMysqlBase.php',
+ 'MySQLMasterPos' => 'includes/db/DatabaseMysqlBase.php',
'ORAField' => 'includes/db/DatabaseOracle.php',
'ORAResult' => 'includes/db/DatabaseOracle.php',
'ORMIterator' => 'includes/db/ORMIterator.php',
# includes/filebackend
'FileBackendGroup' => 'includes/filebackend/FileBackendGroup.php',
'FileBackend' => 'includes/filebackend/FileBackend.php',
+ 'FileBackendError' => 'includes/filebackend/FileBackend.php',
'FileBackendStore' => 'includes/filebackend/FileBackendStore.php',
'FileBackendStoreShardListIterator' => 'includes/filebackend/FileBackendStore.php',
'FileBackendStoreShardDirIterator' => 'includes/filebackend/FileBackendStore.php',
# includes/job
'Job' => 'includes/job/Job.php',
'JobQueue' => 'includes/job/JobQueue.php',
- 'JobQueueAggregator' => 'includes/job/JobQueueAggregator.php',
- 'JobQueueAggregatorMemc' => 'includes/job/JobQueueAggregatorMemc.php',
- 'JobQueueAggregatorRedis' => 'includes/job/JobQueueAggregatorRedis.php',
+ 'JobQueueAggregator' => 'includes/job/aggregator/JobQueueAggregator.php',
+ 'JobQueueAggregatorMemc' => 'includes/job/aggregator/JobQueueAggregatorMemc.php',
+ 'JobQueueAggregatorRedis' => 'includes/job/aggregator/JobQueueAggregatorRedis.php',
'JobQueueDB' => 'includes/job/JobQueueDB.php',
'JobQueueGroup' => 'includes/job/JobQueueGroup.php',
'JobQueueFederated' => 'includes/job/JobQueueFederated.php',
'SearchResultTooMany' => 'includes/search/SearchEngine.php',
'SearchSqlite' => 'includes/search/SearchSqlite.php',
'SearchUpdate' => 'includes/search/SearchUpdate.php',
- 'SearchUpdateMyISAM' => 'includes/search/SearchUpdate.php',
'SqliteSearchResultSet' => 'includes/search/SearchSqlite.php',
'SqlSearchResultSet' => 'includes/search/SearchEngine.php',
'UnwatchedpagesPage' => 'includes/specials/SpecialUnwatchedpages.php',
'UploadChunkFileException' => 'includes/upload/UploadFromChunks.php',
'UploadChunkZeroLengthFileException' => 'includes/upload/UploadFromChunks.php',
+ 'UploadChunkVerificationException' => 'includes/upload/UploadFromChunks.php',
'UploadForm' => 'includes/specials/SpecialUpload.php',
'UploadSourceField' => 'includes/specials/SpecialUpload.php',
'UserrightsPage' => 'includes/specials/SpecialUserrights.php',
# includes/templates
'UserloginTemplate' => 'includes/templates/Userlogin.php',
- 'UserloginTemplateVForm' => 'includes/templates/UserloginVForm.php',
'UsercreateTemplate' => 'includes/templates/Usercreate.php',
- 'UsercreateTemplateVForm' => 'includes/templates/UsercreateVForm.php',
# includes/upload
'UploadBase' => 'includes/upload/UploadBase.php',
'UploadFromUrl' => 'includes/upload/UploadFromUrl.php',
'UploadStash' => 'includes/upload/UploadStash.php',
'UploadStashBadPathException' => 'includes/upload/UploadStash.php',
+ 'UploadStashException' => 'includes/upload/UploadStash.php',
'UploadStashFile' => 'includes/upload/UploadStash.php',
'UploadStashFileException' => 'includes/upload/UploadStash.php',
'UploadStashFileNotFoundException' => 'includes/upload/UploadStash.php',
}
}
-if ( function_exists( 'spl_autoload_register' ) ) {
- spl_autoload_register( array( 'AutoLoader', 'autoload' ) );
-} else {
- function __autoload( $class ) {
- AutoLoader::autoload( $class );
- }
-
- ini_set( 'unserialize_callback_func', '__autoload' );
-}
+spl_autoload_register( array( 'AutoLoader', 'autoload' ) );
* @param Bool $isAnon Exclude anonymous-only blocks if false
* @param Bool $fromMaster Whether to query the master or slave database
* @return Array of Blocks
- * @since 1.21
+ * @since 1.22
*/
public static function getBlocksForIPList( array $ipChain, $isAnon, $fromMaster = false ) {
if ( !count( $ipChain ) ) {
$first = true;
foreach ( $colContents as $char => $articles ) {
- $ret .= '<h3>' . htmlspecialchars( $char );
+ # Change space to non-breaking space to keep headers aligned
+ $h3char = $char === ' ' ? ' ' : htmlspecialchars( $char );
+
+ $ret .= '<h3>' . $h3char;
if ( $first && $char === $prevchar ) {
# We're continuing a previous chunk at the top of a new
# column, so add " cont." after the letter.
* @param string $nothing to use for empty space
* @return String
*/
- protected function recentChangesFlags( $flags, $nothing = ' ' ) {
+ public function recentChangesFlags( $flags, $nothing = ' ' ) {
+ global $wgRecentChangesFlags;
$f = '';
- foreach ( array( 'newpage', 'minor', 'bot', 'unpatrolled' ) as $flag ) {
+ foreach ( array_keys( $wgRecentChangesFlags ) as $flag ) {
$f .= isset( $flags[$flag] ) && $flags[$flag]
? self::flag( $flag )
: $nothing;
* unpatrolled edit. By default in English it will contain "N", "m", "b",
* "!" respectively, plus it will have an appropriate title and class.
*
- * @param string $flag 'newpage', 'unpatrolled', 'minor', or 'bot'
+ * @param string $flag One key of $wgRecentChangesFlags
* @return String: Raw HTML
*/
public static function flag( $flag ) {
- static $messages = null;
- if ( is_null( $messages ) ) {
- $messages = array(
- 'newpage' => array( 'newpageletter', 'recentchanges-label-newpage' ),
- 'minoredit' => array( 'minoreditletter', 'recentchanges-label-minor' ),
- 'botedit' => array( 'boteditletter', 'recentchanges-label-bot' ),
- 'unpatrolled' => array( 'unpatrolledletter', 'recentchanges-label-unpatrolled' ),
- );
- foreach ( $messages as &$value ) {
- $value[0] = wfMessage( $value[0] )->escaped();
- $value[1] = wfMessage( $value[1] )->escaped();
+ static $flagInfos = null;
+ if ( is_null( $flagInfos ) ) {
+ global $wgRecentChangesFlags;
+ $flagInfos = array();
+ foreach ( $wgRecentChangesFlags as $key => $value ) {
+ $flagInfos[$key]['letter'] = wfMessage( $value['letter'] )->escaped();
+ $flagInfos[$key]['title'] = wfMessage( $value['title'] )->escaped();
+ // Allow customized class name, fall back to flag name
+ $flagInfos[$key]['class'] = Sanitizer::escapeClass(
+ isset( $value['class'] ) ? $value['class'] : $key );
}
}
- # Inconsistent naming, bleh
+ // Inconsistent naming, bleh, kepted for b/c
$map = array(
- 'newpage' => 'newpage',
- 'minor' => 'minoredit',
- 'bot' => 'botedit',
- 'unpatrolled' => 'unpatrolled',
- 'minoredit' => 'minoredit',
- 'botedit' => 'botedit',
+ 'minoredit' => 'minor',
+ 'botedit' => 'bot',
);
- $flag = $map[$flag];
+ if ( isset( $map[$flag] ) ) {
+ $flag = $map[$flag];
+ }
- return "<abbr class='$flag' title='" . $messages[$flag][1] . "'>" . $messages[$flag][0] . '</abbr>';
+ return "<abbr class='" . $flagInfos[$flag]['class'] . "' title='" . $flagInfos[$flag]['title'] . "'>" .
+ $flagInfos[$flag]['letter'] .
+ '</abbr>';
}
/**
'oldid' => $rc->mAttribs['rc_last_oldid']
);
- if ( $unpatrolled ) {
- $query['rcid'] = $rc->mAttribs['rc_id'];
- };
-
$diffLink = Linker::linkKnown(
$rc->getTitle(),
$this->message['diff'],
* @param $watched
*/
public function insertArticleLink( &$s, &$rc, $unpatrolled, $watched ) {
- # If it's a new article, there is no diff link, but if it hasn't been
- # patrolled yet, we need to give users a way to do so
- $params = array();
+ global $wgUseRCPatrol;
- if ( $unpatrolled && $rc->mAttribs['rc_type'] == RC_NEW ) {
- $params['rcid'] = $rc->mAttribs['rc_id'];
- }
+ $params = array();
$articlelink = Linker::linkKnown(
$rc->getTitle(),
* @param $rc RecentChange
*/
public function insertRollback( &$s, &$rc ) {
- if ( $rc->mAttribs['rc_type'] != RC_NEW && $rc->mAttribs['rc_this_oldid'] && $rc->mAttribs['rc_cur_id'] ) {
+ if ( $rc->mAttribs['rc_type'] == RC_EDIT && $rc->mAttribs['rc_this_oldid'] && $rc->mAttribs['rc_cur_id'] ) {
$page = $rc->getTitle();
/** Check for rollback and edit permissions, disallow special pages, and only
* show a link on the top-most revision */
$this->rcCacheIndex = 0;
$this->lastdate = '';
$this->rclistOpen = false;
- $this->getOutput()->addModuleStyles( 'mediawiki.special.changeslist' );
+ $this->getOutput()->addModuleStyles( array(
+ 'mediawiki.special.changeslist',
+ 'mediawiki.special.changeslist.enhanced',
+ ) );
+ $this->getOutput()->addModules( array(
+ 'jquery.makeCollapsible',
+ 'mediawiki.icon',
+ ) );
return '';
}
/**
if ( $type == RC_MOVE || $type == RC_MOVE_OVER_REDIRECT ) {
// New unpatrolled pages
} elseif ( $rc->unpatrolled && $type == RC_NEW ) {
- $clink = Linker::linkKnown( $rc->getTitle(), null, array(),
- array( 'rcid' => $rc->mAttribs['rc_id'] ) );
+ $clink = Linker::linkKnown( $rc->getTitle() );
// Log entries
} elseif ( $type == RC_LOG ) {
if ( $logType ) {
# called too many times (50% of CPU time on RecentChanges!).
$thisOldid = $rc->mAttribs['rc_this_oldid'];
$lastOldid = $rc->mAttribs['rc_last_oldid'];
- if ( $rc->unpatrolled ) {
- $rcIdQuery = array( 'rcid' => $rc->mAttribs['rc_id'] );
- } else {
- $rcIdQuery = array();
- }
+
$querycur = $curIdEq + array( 'diff' => '0', 'oldid' => $thisOldid );
- $querydiff = $curIdEq + array( 'diff' => $thisOldid, 'oldid' =>
- $lastOldid ) + $rcIdQuery;
+ $querydiff = $curIdEq + array( 'diff' => $thisOldid, 'oldid' => $lastOldid );
if ( !$showdifflinks ) {
$curLink = $this->message['cur'];
$lastLink = $this->message['last'];
} else {
$lastLink = Linker::linkKnown( $rc->getTitle(), $this->message['last'],
- array(), $curIdEq + array( 'diff' => $thisOldid, 'oldid' => $lastOldid ) + $rcIdQuery );
+ array(), $curIdEq + array( 'diff' => $thisOldid, 'oldid' => $lastOldid ) );
}
# Make user links
implode( $this->message['semicolon-separator'], $users )
)->escaped() . '</span>';
- $tl = '<span class="mw-collapsible-toggle mw-enhancedchanges-arrow mw-enhancedchanges-arrow-space"></span>';
+ $tl = '<span class="mw-collapsible-toggle mw-collapsible-arrow mw-enhancedchanges-arrow mw-enhancedchanges-arrow-space"></span>';
$r .= "<td>$tl</td>";
# Main line
} elseif ( !ChangesList::userCan( $rcObj, Revision::DELETED_TEXT, $this->getUser() ) ) {
$link = '<span class="history-deleted">' . $rcObj->timestamp . '</span> ';
} else {
- if ( $rcObj->unpatrolled && $type == RC_NEW ) {
- $params['rcid'] = $rcObj->mAttribs['rc_id'];
- }
$link = Linker::linkKnown(
$rcObj->getTitle(),
$r .= '<td class="mw-enhanced-rc"><span class="mw-enhancedchanges-arrow-space"></span>';
# Flag and Timestamp
if ( $type == RC_MOVE || $type == RC_MOVE_OVER_REDIRECT ) {
- $r .= '    '; // 4 flags -> 4 spaces
+ $r .= $this->recentChangesFlags( array() ); // no flags, but need the placeholders
} else {
$r .= $this->recentChangesFlags( array(
'newpage' => $type == RC_NEW,
return new IcuCollation( 'root' );
default:
$match = array();
- if ( preg_match( '/^uca-([a-z-]+)$/', $collationName, $match ) ) {
+ if ( preg_match( '/^uca-([a-z@=-]+)$/', $collationName, $match ) ) {
return new IcuCollation( $match[1] );
}
'pt' => array(),
'ru' => array(),
'sv' => array( "Å", "Ä", "Ö" ),
+ 'sv@collation=standard' => array( "Å", "Ä", "Ö" ),
'uk' => array( "Ґ", "Ь" ),
'vi' => array( "Ă", "Â", "Đ", "Ê", "Ô", "Ơ", "Ư" ),
// Not verified, but likely correct
'es' => array( "Ñ" ),
'et' => array( "Š", "Ž", "Õ", "Ä", "Ö", "Ü" ),
'eu' => array( "Ñ" ),
+ 'fa' => array( "آ", "ء", "ه" ),
'fo' => array( "Á", "Ð", "Í", "Ó", "Ú", "Ý", "Æ", "Ø", "Å" ),
'fr' => array(),
'fur' => array( "À", "Á", "Â", "È", "Ì", "Ò", "Ù" ),
*/
$wgDBmysql5 = false;
+/**
+ * Set true to enable Oracle DCRP (supported from 11gR1 onward)
+ *
+ * To use this feature set to true and use a datasource defined as
+ * POOLED (i.e. in tnsnames definition set server=pooled in connect_data
+ * block).
+ *
+ * Starting from 11gR1 you can use DCRP (Database Resident Connection
+ * Pool) that maintains established sessions and reuses them on new
+ * connections.
+ *
+ * Not completely tested, but it should fall back on normal connection
+ * in case the pool is full or the datasource is not configured as
+ * pooled.
+ * And the other way around; using oci_pconnect on a non pooled
+ * datasource should produce a normal connection.
+ *
+ * When it comes to frequent shortlived DB connections like with MW
+ * Oracle tends to s***. The problem is the driver connects to the
+ * database reasonably fast, but establishing a session takes time and
+ * resources. MW does not rely on session state (as it does not use
+ * features such as package variables) so establishing a valid session
+ * is in this case an unwanted overhead that just slows things down.
+ *
+ * @warning EXPERIMENTAL!
+ *
+ */
+$wgDBOracleDRCP = false;
+
/**
* Other wikis on this site, can be administered from a single developer
* account.
$wgMimeType = 'text/html';
/**
- * The content type used in script tags. This is mostly going to be ignored at
- * least for actual HTML output, since HTML5 doesn't require a MIME type for
- * JavaScript or CSS (those are the default script and style languages).
+ * Previously used as content type in HTML script tags. This is now ignored since
+ * HTML5 doesn't require a MIME type for script tags (javascript is the default).
+ * It was also previously used by RawAction to determine the ctype query parameter
+ * value that will result in a javascript response.
+ * @deprecated since 1.22
*/
-$wgJsMimeType = 'text/javascript';
+$wgJsMimeType = null;
/**
* The default xmlns attribute. The option to define this has been removed.
/** Array for more like $wgSkipSkin. */
$wgSkipSkins = array();
-/**
- * Optionally, we can specify a stylesheet to use for media="handheld".
- * This is recognized by some, but not all, handheld/mobile/PDA browsers.
- * If left empty, compliant handheld browsers won't pick up the skin
- * stylesheet, which is specified for 'screen' media.
- *
- * Can be a complete URL, base-relative path, or $wgStylePath-relative path.
- * Try 'chick/main.css' to apply the Chick styles to the MonoBook HTML.
- *
- * Will also be switched in when 'handheld=yes' is added to the URL, like
- * the 'printable=yes' mode for print media.
- */
-$wgHandheldStyle = false;
-
-/**
- * If set, 'screen' and 'handheld' media specifiers for stylesheets are
- * transformed such that they apply to the iPhone/iPod Touch Mobile Safari,
- * which doesn't recognize 'handheld' but does support media queries on its
- * screen size.
- *
- * Consider only using this if you have a *really good* handheld stylesheet,
- * as iPhone users won't have any way to disable it and use the "grown-up"
- * styles instead.
- */
-$wgHandheldForIPhone = false;
-
/**
* Allow user Javascript page?
* This enables a lot of neat customizations, but may
*/
$wgVectorUseIconWatch = true;
-/**
- * Use compact vertical form ("VForm") design for Special:Userlogin. This can
- * be overridden by a useNew bool in the query string. For instance, if it is
- * globally false, you can try it with useNew=1.
- *
- * @since 1.22
- */
-$wgUseVFormUserLogin = false;
-
-/**
- * Use compact vertical form ("VForm") design for account creation
- * (Special:Userlogin?type=signup).
- *
- * @since 1.22
- */
-$wgUseVFormCreateAccount = false;
-
/**
* Display user edit counts in various prominent places.
*/
$wgAllowDisplayTitle = true;
/**
- * For consistency, restrict DISPLAYTITLE to titles that normalize to the same
- * canonical DB key.
+ * For consistency, restrict DISPLAYTITLE to text that normalizes to the same
+ * canonical DB key. Also disallow some inline CSS rules like display: none;
+ * which can cause the text to be hidden or unselectable.
*/
$wgRestrictDisplayTitle = true;
$wgGroupPermissions['*']['createpage'] = true;
$wgGroupPermissions['*']['createtalk'] = true;
$wgGroupPermissions['*']['writeapi'] = true;
+$wgGroupPermissions['*']['editmyusercss'] = true;
+$wgGroupPermissions['*']['editmyuserjs'] = true;
+$wgGroupPermissions['*']['viewmywatchlist'] = true;
+$wgGroupPermissions['*']['editmywatchlist'] = true;
#$wgGroupPermissions['*']['patrolmarks'] = false; // let anons see what was patrolled
// Implicit group for all logged-in accounts
'user' => null, // for each logged-in user
'newbie' => null, // for each recent (autoconfirmed) account; overrides 'user'
'ip' => null, // for each anon and recent account
- 'subnet' => null, // ... with final octet removed
+ 'subnet' => null, // ... within a /24 subnet in IPv4 or /64 in IPv6
),
'move' => array(
'user' => null,
* The value is the replacement for the key (it can contain $1, etc.)
* %h will be replaced by the short SHA-1 (7 first chars) and %H by the
* full SHA-1 of the HEAD revision.
+ * %r will be replaced with a URL-encoded version of $1.
*
* @since 1.20
*/
$wgGitRepositoryViewers = array(
- 'https://gerrit.wikimedia.org/r/p/(.*)' => 'https://gerrit.wikimedia.org/r/gitweb?p=$1;h=%H',
- 'ssh://(?:[a-z0-9_]+@)?gerrit.wikimedia.org:29418/(.*)' => 'https://gerrit.wikimedia.org/r/gitweb?p=$1;h=%H',
+ 'https://gerrit.wikimedia.org/r/p/(.*)' => 'https://git.wikimedia.org/commit/%r/%H',
+ 'ssh://(?:[a-z0-9_]+@)?gerrit.wikimedia.org:29418/(.*)' => 'https://git.wikimedia.org/commit/%r/%H',
);
/** @} */ # End of maintenance }
/** Use new page patrolling to check new pages on Special:Newpages */
$wgUseNPPatrol = true;
+/** Log autopatrol actions to the log table */
+$wgLogAutopatrol = true;
+
/** Provide syndication feeds (RSS, Atom) for, e.g., Recentchanges, Newpages */
$wgFeed = true;
*/
$wgUnwatchedPageThreshold = false;
+/**
+ * Recent changes flag, shown in Recentchanges and watchlist
+ *
+ * Adding a new one:
+ * $wgRecentChangesFlags['flag'] => array( 'letter-msg', 'tooltip-msg' );
+ * 'class' allows to set a css class different than the flag name
+ *
+ * @since 1.22
+ */
+$wgRecentChangesFlags = array(
+ 'newpage' => array( 'letter' => 'newpageletter',
+ 'title' => 'recentchanges-label-newpage' ),
+ 'minor' => array( 'letter' => 'minoreditletter',
+ 'title' => 'recentchanges-label-minor', 'class' => 'minoredit' ),
+ 'bot' => array( 'letter' => 'boteditletter',
+ 'title' => 'recentchanges-label-bot', 'class' => 'botedit' ),
+ 'unpatrolled' => array( 'letter' => 'unpatrolledletter',
+ 'title' => 'recentchanges-label-unpatrolled' ),
+);
+
/** @} */ # end RC/watchlist }
/************************************************************************//**
*/
$wgHTTPProxy = false;
+/**
+ * Timeout for connections done internally (in seconds)
+ * Only works for curl
+ */
+$wgHTTPConnectTimeout = 5e0;
+
/** @} */ # End HTTP client }
/************************************************************************//**
*/
$wgUploadMaintenance = false;
-/**
- * Allows running of selenium tests via maintenance/tests/RunSeleniumTests.php
- */
-$wgEnableSelenium = false;
-$wgSeleniumTestConfigs = array();
-$wgSeleniumConfigFile = null;
-$wgDBtestuser = ''; //db user that has permission to create and drop the test databases only
-$wgDBtestpassword = '';
-
/**
* Associative array mapping namespace IDs to the name of the content model pages in that namespace should have by
* default (use the CONTENT_MODEL_XXX constants). If no special content type is defined for a given namespace,
protected function updateWatchlist() {
global $wgUser;
- if ( $wgUser->isLoggedIn() && $this->watchthis != $wgUser->isWatched( $this->mTitle ) ) {
+ if ( $wgUser->isLoggedIn()
+ && $this->watchthis != $wgUser->isWatched( $this->mTitle, WatchedItem::IGNORE_USER_RIGHTS )
+ ) {
$fname = __METHOD__;
$title = $this->mTitle;
$watch = $this->watchthis;
$dbw = wfGetDB( DB_MASTER );
$dbw->onTransactionIdle( function() use ( $dbw, $title, $watch, $wgUser, $fname ) {
$dbw->begin( $fname );
- if ( $watch ) {
- WatchAction::doWatch( $title, $wgUser );
- } else {
- WatchAction::doUnwatch( $title, $wgUser );
- }
+ WatchAction::doWatchOrUnwatch( $watch, $title, $wgUser );
$dbw->commit( $fname );
} );
}
$archiveName = '';
}
if ( $dumpContents ) {
+ $be = $file->getRepo()->getBackend();
# Dump file as base64
# Uses only XML-safe characters, so does not need escaping
+ # @TODO: too bad this loads the contents into memory (script might swap)
$contents = ' <contents encoding="base64">' .
- chunk_split( base64_encode( file_get_contents( $file->getPath() ) ) ) .
+ chunk_split( base64_encode(
+ $be->getFileContents( array( 'src' => $file->getPath() ) ) ) ) .
" </contents>\n";
} else {
$contents = '';
// file, otherwise go back to the description page
$wgOut->addReturnTo( $this->oldimage ? $this->title : Title::newMainPage() );
- if ( $wgUser->isLoggedIn() && $wgRequest->getCheck( 'wpWatch' ) != $wgUser->isWatched( $this->title ) ) {
- if ( $wgRequest->getCheck( 'wpWatch' ) ) {
- WatchAction::doWatch( $this->title, $wgUser );
- } else {
- WatchAction::doUnwatch( $this->title, $wgUser );
- }
- }
+ WatchAction::doWatchOrUnwatch( $wgRequest->getCheck( 'wpWatch' ), $this->title, $wgUser );
}
return;
}
}
foreach ( self::getViewers() as $repo => $viewer ) {
$pattern = '#^' . $repo . '$#';
- if ( preg_match( $pattern, $url ) ) {
+ if ( preg_match( $pattern, $url, $matches ) ) {
$viewerUrl = preg_replace( $pattern, $viewer, $url );
$headSHA1 = $this->getHeadSHA1();
$replacements = array(
'%h' => substr( $headSHA1, 0, 7 ),
- '%H' => $headSHA1
+ '%H' => $headSHA1,
+ '%r' => urlencode( $matches[1] ),
);
return strtr( $viewerUrl, $replacements );
}
wfErrorLog( "$time $host $wiki: $text", $wgDebugLogGroups[$logGroup] );
}
} elseif ( $public === true ) {
- wfDebug( "[$logGroup] $text", true );
+ wfDebug( "[$logGroup] $text", false );
}
}
* @return Bool
*/
function wfIniGetBool( $setting ) {
- $val = ini_get( $setting );
+ $val = strtolower( ini_get( $setting ) );
// 'on' and 'true' can't have whitespace around them, but '1' can.
- return strtolower( $val ) == 'on'
- || strtolower( $val ) == 'true'
- || strtolower( $val ) == 'yes'
+ return $val == 'on'
+ || $val == 'true'
+ || $val == 'yes'
|| preg_match( "/^\s*[+-]?0*[1-9]/", $val ); // approx C atoi() function
}
protected $mSectionFooters = array();
protected $mPost = '';
protected $mId;
+ protected $mTableId = '';
protected $mSubmitID;
protected $mSubmitName;
$this->setContext( $context );
$this->mTitle = false; // We don't need them to set a title
$this->mMessagePrefix = $messagePrefix;
- } else {
+ } elseif ( is_null( $context ) && $messagePrefix !== '' ) {
+ $this->mMessagePrefix = $messagePrefix;
+ } elseif ( is_string( $context ) && $messagePrefix === '' ) {
// B/C since 1.18
- if ( is_string( $context ) && $messagePrefix === '' ) {
- // it's actually $messagePrefix
- $this->mMessagePrefix = $context;
- }
+ // it's actually $messagePrefix
+ $this->mMessagePrefix = $context;
}
// Expand out into a tree.
}
/**
- * Display the form (sending to $wgOut), with an appropriate error
- * message or stack of messages, and any validation errors, etc.
+ * 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
* @return String
*/
function getBody() {
- return $this->displaySection( $this->mFieldTree );
+ return $this->displaySection( $this->mFieldTree, $this->mTableId );
}
/**
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)
$this->mId = $id;
return $this;
}
+
/**
* Prompt the whole form to be wrapped in a "<fieldset>", with
* this text as its "<legend>" element.
$hasLabel = true;
}
} elseif ( is_array( $value ) ) {
- $section = $this->displaySection( $value, $key, "$fieldsetIDPrefix$key-" );
+ $section = $this->displaySection( $value, "mw-htmlform-$key", "$fieldsetIDPrefix$key-" );
$legend = $this->getLegend( $key );
if ( isset( $this->mSectionHeaders[$key] ) ) {
$section = $this->mSectionHeaders[$key] . $section;
);
if ( $sectionName ) {
- $attribs['id'] = Sanitizer::escapeId( "mw-htmlform-$sectionName" );
+ $attribs['id'] = Sanitizer::escapeId( $sectionName );
}
if ( $displayFormat === 'table' ) {
* 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.
+ * - 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 {
}
$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";
* @param array $args Array of parameters passed to hook functions
* @return bool True if no handler aborted the hook
*
+ * @since 1.22 A hook function is not required to return a value for
+ * processing to continue. Not returning a value (or explicitly
+ * returning null) is equivalent to returning true.
* @throws MWException
* @throws FatalError
*/
'Detected bug in an extension! ' .
"Hook $func has invalid call signature; " . $badhookmsg
);
- } elseif ( $retval === null ) {
- // Null was returned. Error.
- throw new MWException(
- 'Detected bug in an extension! ' .
- "Hook $func failed to return a value; " .
- 'should return true to continue hook processing or false to abort.'
- );
- } elseif ( !$retval ) {
+ } elseif ( $retval === false ) {
wfProfileOut( 'hook: ' . $event );
// False was returned. Stop processing, but no error.
return false;
// In text/html, initial <html> and <head> tags can be omitted under
// pretty much any sane circumstances, if they have no attributes. See:
- // <http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#optional-tags>
+ // <http://www.whatwg.org/html/syntax.html#optional-tags>
if ( !$wgWellFormedXml && !$attribs
&& in_array( $element, array( 'html', 'head' ) ) ) {
return '';
$element = strtolower( $element );
// Reference:
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/syntax.html#optional-tags
+ // http://www.whatwg.org/html/syntax.html#optional-tags
if ( !$wgWellFormedXml && in_array( $element, array(
'html',
'head',
* @return Boolean
*/
public static function isXmlMimeType( $mimetype ) {
- # http://www.whatwg.org/specs/web-apps/current-work/multipage/infrastructure.html#xml-mime-type
+ # http://www.whatwg.org/html/infrastructure.html#xml-mime-type
# * text/xml
# * application/xml
# * Any mimetype with a subtype ending in +xml (this implicitly includes application/xhtml+xml)
$candidates = array();
foreach ( $urls as $density => $url ) {
// Image candidate syntax per current whatwg live spec, 2012-09-23:
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/embedded-content-1.html#attr-img-srcset
+ // http://www.whatwg.org/html/embedded-content-1.html#attr-img-srcset
$candidates[] = "{$url} {$density}x";
}
return implode( ", ", $candidates );
* @param array $options options to pass to MWHttpRequest object.
* Possible keys for the array:
* - timeout Timeout length in seconds
+ * - connectTimeout Timeout for connection, in seconds (curl only)
* - postData An array of key-value pairs or a url-encoded form data
* - proxy The proxy to use.
* Otherwise it will use $wgHTTPProxy (if set)
* Otherwise it will use the environment variable "http_proxy" (if set)
* - noProxy Don't use any proxy at all. Takes precedence over proxy value(s).
- * - sslVerifyHost (curl only) Verify hostname against certificate
- * - sslVerifyCert (curl only) Verify SSL certificate
- * - caInfo (curl only) Provide CA information
+ * - sslVerifyHost Verify hostname against certificate
+ * - sslVerifyCert Verify SSL certificate
+ * - caInfo Provide CA information
* - maxRedirects Maximum number of redirects to follow (defaults to 5)
* - followRedirects Whether to follow redirects (defaults to false).
* Note: this should only be used when the target URL is trusted,
if ( !isset( $options['timeout'] ) ) {
$options['timeout'] = 'default';
}
+ if( !isset( $options['connectTimeout'] ) ) {
+ $options['connectTimeout'] = 'default';
+ }
$req = MWHttpRequest::factory( $url, $options );
$status = $req->execute();
* @param array $options (optional) extra params to pass (see Http::request())
*/
protected function __construct( $url, $options = array() ) {
- global $wgHTTPTimeout;
+ global $wgHTTPTimeout, $wgHTTPConnectTimeout;
$this->url = wfExpandUrl( $url, PROTO_HTTP );
$this->parsedUrl = wfParseUrl( $this->url );
} else {
$this->timeout = $wgHTTPTimeout;
}
+ if ( isset( $options['connectTimeout'] ) && $options['connectTimeout'] != 'default' ) {
+ $this->connectTimeout = $options['connectTimeout'];
+ } else {
+ $this->connectTimeout = $wgHTTPConnectTimeout;
+ }
if ( isset( $options['userAgent'] ) ) {
$this->setUserAgent( $options['userAgent'] );
}
$this->curlOptions[CURLOPT_PROXY] = $this->proxy;
$this->curlOptions[CURLOPT_TIMEOUT] = $this->timeout;
+ $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" );
$options['timeout'] = $this->timeout;
- $context = stream_context_create( array( 'http' => $options ) );
+ if ( $this->sslVerifyHost ) {
+ $options['CN_match'] = $this->parsedUrl['host'];
+ }
+ if ( $this->sslVerifyCert ) {
+ $options['verify_peer'] = true;
+ }
+
+ if ( is_dir( $this->caInfo ) ) {
+ $options['capath'] = $this->caInfo;
+ } elseif ( is_file( $this->caInfo ) ) {
+ $options['cafile'] = $this->caInfo;
+ } elseif ( $this->caInfo ) {
+ throw new MWException( "Invalid CA info passed: {$this->caInfo}" );
+ }
+
+ $scheme = $this->parsedUrl['scheme'];
+ $context = stream_context_create( array( "$scheme" => $options ) );
$this->headerList = array();
$reqCount = 0;
# We're dealing with a non-image, spit out the name and be done with it.
$thumbhtml = "\n\t\t\t" . '<div style="height: ' . ( self::THUMB_PADDING + $this->mHeights ) . 'px;">'
. htmlspecialchars( $nt->getText() ) . '</div>';
+
+ if ( $this->mParser instanceof Parser ) {
+ $this->mParser->addTrackingCategory( 'broken-file-category' );
+ }
} elseif ( $this->mHideBadImages && wfIsBadImage( $nt->getDBkey(), $this->getContextTitle() ) ) {
# The image is blacklisted, just show it as a text link.
$thumbhtml = "\n\t\t\t" . '<div style="height: ' . ( self::THUMB_PADDING + $this->mHeights ) . 'px;">' .
} else {
$params = array( 'page' => $page );
}
+
+ $renderLang = $request->getVal( 'lang' );
+ if ( !is_null( $renderLang ) ) {
+ $params['lang'] = $renderLang;
+ }
+
$width_orig = $this->displayImg->getWidth( $page );
$width = $width_orig;
$height_orig = $this->displayImg->getHeight( $page );
wfProfileOut( __METHOD__ );
}
+ /**
+ * Queue recursive jobs for this page
+ *
+ * Which means do LinksUpdate on all templates
+ * that include the current page, using the job queue.
+ */
function queueRecursiveJobs() {
- wfProfileIn( __METHOD__ );
+ self::queueRecursiveJobsForTable( $this->mTitle, 'templatelinks' );
+ }
- if ( $this->mTitle->getBacklinkCache()->hasLinks( 'templatelinks' ) ) {
+ /**
+ * Queue a RefreshLinks job for any table.
+ *
+ * @param Title $title Title to do job for
+ * @param String $table Table to use (e.g. 'templatelinks')
+ */
+ public static function queueRecursiveJobsForTable( Title $title, $table ) {
+ wfProfileIn( __METHOD__ );
+ if ( $title->getBacklinkCache()->hasLinks( $table ) ) {
$job = new RefreshLinksJob2(
- $this->mTitle,
+ $title,
array(
- 'table' => 'templatelinks',
+ 'table' => $table,
) + Job::newRootJobParams( // "overall" refresh links job info
- "refreshlinks:templatelinks:{$this->mTitle->getPrefixedText()}"
+ "refreshlinks:{$table}:{$title->getPrefixedText()}"
)
);
JobQueueGroup::singleton()->push( $job );
JobQueueGroup::singleton()->deduplicateRootJob( $job );
}
-
wfProfileOut( __METHOD__ );
}
class MappedIterator implements Iterator {
/** @var Iterator */
protected $baseIterator;
- /** @var Closure */
+ /** @var callable */
protected $vCallback;
/**
* The keys of the base iterator are reused verbatim.
*
* @param Iterator|Array $iter
- * @param Closure $vCallback
+ * @param callable $vCallback
* @throws MWException
*/
- public function __construct( $iter, Closure $vCallback ) {
+ public function __construct( $iter, $vCallback ) {
if ( is_array( $iter ) ) {
$this->baseIterator = new ArrayIterator( $iter );
} elseif ( $iter instanceof Iterator ) {
throw new MWException( "Invalid base iterator provided." );
}
$this->vCallback = $vCallback;
- }
+ }
/**
* @return void
/// Should be private. Used with addMeta() which adds "<meta>"
var $mMetatags = array();
- /// "<meta keywords='stuff'>" most of the time the first 10 links to an article
- var $mKeywords = array();
-
var $mLinktags = array();
var $mCanonicalUrl = false;
array_push( $this->mMetatags, array( $name, $val ) );
}
- /**
- * Add a keyword or a list of keywords in the page header
- *
- * @param string $text or array of strings
- */
- function addKeyword( $text ) {
- if ( is_array( $text ) ) {
- $this->mKeywords = array_merge( $this->mKeywords, $text );
- } else {
- array_push( $this->mKeywords, $text );
- }
- }
-
/**
* Add a new \<link\> tag to the page header.
*
* the object, let's actually output it:
*/
public function output() {
- global $wgLanguageCode, $wgDebugRedirects, $wgMimeType, $wgVaryOnXFP;
+ global $wgLanguageCode, $wgDebugRedirects, $wgMimeType, $wgVaryOnXFP,
+ $wgUseAjax, $wgResponsiveImages;
if ( $this->mDoNothing ) {
return;
if ( $this->mArticleBodyOnly ) {
echo $this->mBodytext;
} else {
- $this->addDefaultModules();
$sk = $this->getSkin();
+ // add skin specific modules
+ $modules = $sk->getDefaultModules();
+
+ // enforce various default modules for all skins
+ $coreModules = array(
+ // keep this list as small as possible
+ 'mediawiki.page.startup',
+ 'mediawiki.user',
+ );
+
+ // Support for high-density display images if enabled
+ if ( $wgResponsiveImages ) {
+ $coreModules[] = 'mediawiki.hidpi';
+ }
+
+ $this->addModules( $coreModules );
+ foreach ( $modules as $group ) {
+ $this->addModules( $group );
+ }
+ MWDebug::addModules( $this );
+ if ( $wgUseAjax ) {
+ // FIXME: deprecate? - not clear why this is useful
+ wfRunHooks( 'AjaxAddScript', array( &$this ) );
+ }
// Hook that allows last minute changes to the output page, e.g.
// adding of CSS or Javascript by extensions.
* Actually output something with print.
*
* @param string $ins the string to output
- * @deprecated since 1.20 Use echo yourself.
+ * @deprecated since 1.22 Use echo yourself.
*/
public function out( $ins ) {
wfDeprecated( __METHOD__, '1.22' );
// The spec recommends defining XHTML5's charset using the XML declaration
// instead of meta.
// Our XML declaration is output by Html::htmlHeader.
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#attr-meta-http-equiv-content-type
- // http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#charset
+ // http://www.whatwg.org/html/semantics.html#attr-meta-http-equiv-content-type
+ // http://www.whatwg.org/html/semantics.html#charset
$ret .= Html::element( 'meta', array( 'charset' => 'UTF-8' ) );
}
return $ret;
}
- /**
- * Add the default ResourceLoader modules to this object
- */
- private function addDefaultModules() {
- global $wgIncludeLegacyJavaScript, $wgPreloadJavaScriptMwUtil, $wgUseAjax,
- $wgAjaxWatch, $wgResponsiveImages;
-
- // Add base resources
- $this->addModules( array(
- 'mediawiki.user',
- 'mediawiki.page.startup',
- 'mediawiki.page.ready',
- ) );
- if ( $wgIncludeLegacyJavaScript ) {
- $this->addModules( 'mediawiki.legacy.wikibits' );
- }
-
- if ( $wgPreloadJavaScriptMwUtil ) {
- $this->addModules( 'mediawiki.util' );
- }
-
- MWDebug::addModules( $this );
-
- // Add various resources if required
- if ( $wgUseAjax ) {
- $this->addModules( 'mediawiki.legacy.ajax' );
-
- wfRunHooks( 'AjaxAddScript', array( &$this ) );
-
- if ( $wgAjaxWatch && $this->getUser()->isLoggedIn() ) {
- $this->addModules( 'mediawiki.page.watch.ajax' );
- }
-
- if ( !$this->getUser()->getOption( 'disablesuggest', false ) ) {
- $this->addModules( 'mediawiki.searchSuggest' );
- }
- }
-
- if ( $this->getUser()->getBoolOption( 'editsectiononrightclick' ) ) {
- $this->addModules( 'mediawiki.action.view.rightClickEdit' );
- }
-
- # Crazy edit-on-double-click stuff
- if ( $this->isArticle() && $this->getUser()->getOption( 'editondblclick' ) ) {
- $this->addModules( 'mediawiki.action.view.dblClickEdit' );
- }
-
- // Support for high-density display images
- if ( $wgResponsiveImages ) {
- $this->addModules( 'mediawiki.hidpi' );
- }
- }
-
/**
* Get a ResourceLoader object associated with this OutputPage
*
) );
}
- if ( count( $this->mKeywords ) > 0 ) {
- $strip = array(
- "/<.*?" . ">/" => '',
- "/_/" => ' '
- );
- $tags['meta-keywords'] = Html::element( 'meta', array(
- 'name' => 'keywords',
- 'content' => preg_replace(
- array_keys( $strip ),
- array_values( $strip ),
- implode( ',', $this->mKeywords )
- )
- ) );
- }
-
foreach ( $this->mMetatags as $tag ) {
if ( 0 == strcasecmp( 'http:', substr( $tag[0], 0, 5 ) ) ) {
$a = 'http-equiv';
* this stylesheet
*/
public static function transformCssMedia( $media ) {
- global $wgRequest, $wgHandheldForIPhone;
+ global $wgRequest;
// http://www.w3.org/TR/css3-mediaqueries/#syntax
$screenMediaQueryRegex = '/^(?:only\s+)?screen\b/i';
}
}
- // Expand longer media queries as iPhone doesn't grok 'handheld'
- if ( $wgHandheldForIPhone ) {
- $mediaAliases = array(
- 'screen' => 'screen and (min-device-width: 481px)',
- 'handheld' => 'handheld, only screen and (max-device-width: 480px)',
- );
-
- if ( isset( $mediaAliases[$media] ) ) {
- $media = $mediaAliases[$media];
- }
- }
-
return $media;
}
foreach ( $columns as $column ) {
foreach ( $rows as $row ) {
- if ( $user->getOption( "$prefix-$column-$row" ) ) {
+ if ( $user->getOption( "$prefix$column-$row" ) ) {
$val[] = "$column-$row";
}
}
'section' => 'personal/info',
);
+ $editCount = Linker::link( SpecialPage::getTitleFor( "Contributions", $userName ),
+ $lang->formatNum( $user->getEditCount() ) );
+
$defaultPreferences['editcount'] = array(
'type' => 'info',
+ 'raw' => true,
'label-message' => 'prefs-edits',
- 'default' => $lang->formatNum( $user->getEditCount() ),
+ 'default' => $editCount,
'section' => 'personal/info',
);
$info = $field->mParams;
$prefix = isset( $info['prefix'] ) ? $info['prefix'] : $fieldname;
foreach ( $field->filterDataForSubmit( $data[$fieldname] ) as $key => $value ) {
- $data["$prefix-$key"] = $value;
+ $data["$prefix$key"] = $value;
}
unset( $data[$fieldname] );
}
return false;
}
- if ( $wgUser->isLoggedIn() && $wgRequest->getCheck( 'mwProtectWatch' ) != $wgUser->isWatched( $this->mTitle ) ) {
- if ( $wgRequest->getCheck( 'mwProtectWatch' ) ) {
- WatchAction::doWatch( $this->mTitle, $wgUser );
- } else {
- WatchAction::doUnwatch( $this->mTitle, $wgUser );
- }
- }
+ WatchAction::doWatchOrUnwatch( $wgRequest->getCheck( 'mwProtectWatch' ), $this->mTitle, $wgUser );
+
return true;
}
}
/**
+ * @deprecated in 1.22
* @param $row
* @return RecentChange
*/
public static function newFromCurRow( $row ) {
+ wfDeprecated( __METHOD__, '1.22' );
$rc = new RecentChange;
$rc->loadFromCurRow( $row );
$rc->notificationtimestamp = false;
*
* @param array $conds of conditions
* @param $fname Mixed: override the method name in profiling/logs
+ * @param $options Array Query options
* @return RecentChange
*/
- public static function newFromConds( $conds, $fname = __METHOD__ ) {
+ public static function newFromConds( $conds, $fname = __METHOD__, $options = array() ) {
$dbr = wfGetDB( DB_SLAVE );
- $row = $dbr->selectRow( 'recentchanges', self::selectFields(), $conds, $fname );
+ $row = $dbr->selectRow( 'recentchanges', self::selectFields(), $conds, $fname, $options );
if ( $row !== false ) {
return self::newFromRow( $row );
} else {
* @return String
*/
public static function cleanupForIRC( $text ) {
- return Sanitizer::decodeCharReferences( str_replace( array( "\n", "\r" ), array( "", "" ), $text ) );
+ return Sanitizer::decodeCharReferences( str_replace( array( "\n", "\r" ), array( " ", "" ), $text ) );
}
/**
),
__METHOD__
);
+ // Invalidate the page cache after the page has been patrolled
+ // to make sure that the Patrol link isn't visible any longer!
+ $this->getTitle()->invalidateCache();
return $dbw->affectedRows();
}
/**
* Makes a pseudo-RC entry from a cur row
*
+ * @deprected in 1.22
* @param $row
*/
public function loadFromCurRow( $row ) {
+ wfDeprecated( __METHOD__, '1.22' );
$this->mAttribs = array(
'rc_timestamp' => wfTimestamp( TS_MW, $row->rev_timestamp ),
'rc_cur_time' => $row->rev_timestamp,
}
return $ip;
}
+
+ /**
+ * Check whether the given timestamp is new enough to have a RC row with a given tolerance
+ * as the recentchanges table might not be cleared out regularly (so older entries might exist)
+ * or rows which will be deleted soon shouldn't be included.
+ *
+ * @param $timestamp mixed MWTimestamp compatible timestamp
+ * @param $tolerance integer Tolerance in seconds
+ * @return bool
+ */
+ public static function isInRCLifespan( $timestamp, $tolerance = 0 ) {
+ global $wgRCMaxAge;
+ return wfTimestamp( TS_UNIX, $timestamp ) > time() - $tolerance - $wgRCMaxAge;
+ }
}
}
/**
- * @return Integer rcid of the unpatrolled row, zero if there isn't one
+ * @return integer rcid of the unpatrolled row, zero if there isn't one
*/
public function isUnpatrolled() {
if ( $this->mUnpatrolled !== null ) {
return $this->mUnpatrolled;
}
+ $rc = $this->getRecentChange();
+ if ( $rc && $rc->getAttribute( 'rc_patrolled' ) == 0 ) {
+ $this->mUnpatrolled = $rc->getAttribute( 'rc_id' );
+ } else {
+ $this->mUnpatrolled = 0;
+ }
+ return $this->mUnpatrolled;
+ }
+
+ /**
+ * Get the RC object belonging to the current revision, if there's one
+ *
+ * @since 1.22
+ * @return RecentChange|null
+ */
+ public function getRecentChange() {
$dbr = wfGetDB( DB_SLAVE );
- $this->mUnpatrolled = $dbr->selectField( 'recentchanges',
- 'rc_id',
- array( // Add redundant user,timestamp condition so we can use the existing index
+ return RecentChange::newFromConds(
+ array(
'rc_user_text' => $this->getRawUserText(),
'rc_timestamp' => $dbr->timestamp( $this->getTimestamp() ),
- 'rc_this_oldid' => $this->getId(),
- 'rc_patrolled' => 0
+ 'rc_this_oldid' => $this->getId()
),
__METHOD__
);
- return (int)$this->mUnpatrolled;
}
/**
# WAI-ARIA
# http://www.w3.org/TR/wai-aria/
- # http://www.whatwg.org/specs/web-apps/current-work/multipage/elements.html#wai-aria
+ # http://www.whatwg.org/html/elements.html#wai-aria
# For now we only support role="presentation" until we work out what roles should be
# usable by content and we ensure that our code explicitly rejects patterns that
# violate HTML5's ARIA restrictions.
/**
* Pick apart some CSS and check it for forbidden or unsafe structures.
* Returns a sanitized string. This sanitized string will have
- * character references and escape sequences decoded, and comments
- * stripped. If the input is just too evil, only a comment complaining
- * about evilness will be returned.
+ * character references and escape sequences decoded and comments
+ * stripped (unless it is itself one valid comment, in which case the value
+ * will be passed through). If the input is just too evil, only a comment
+ * complaining about evilness will be returned.
*
* Currently URL references, 'expression', 'tps' are forbidden.
*
$value = preg_replace_callback( $decodeRegex,
array( __CLASS__, 'cssDecodeCallback' ), $value );
- // Remove any comments; IE gets token splitting wrong
- // This must be done AFTER decoding character references and
- // escape sequences, because those steps can introduce comments
- // This step cannot introduce character references or escape
- // sequences, because it replaces comments with spaces rather
- // than removing them completely.
- $value = StringUtils::delimiterReplace( '/*', '*/', ' ', $value );
-
- // Remove anything after a comment-start token, to guard against
- // incorrect client implementations.
- $commentPos = strpos( $value, '/*' );
- if ( $commentPos !== false ) {
- $value = substr( $value, 0, $commentPos );
+ // Let the value through if it's nothing but a single comment, to
+ // allow other functions which may reject it to pass some error
+ // message through.
+ if ( !preg_match( '! ^ \s* /\* [^*\\/]* \*/ \s* $ !x', $value ) ) {
+ // Remove any comments; IE gets token splitting wrong
+ // This must be done AFTER decoding character references and
+ // escape sequences, because those steps can introduce comments
+ // This step cannot introduce character references or escape
+ // sequences, because it replaces comments with spaces rather
+ // than removing them completely.
+ $value = StringUtils::delimiterReplace( '/*', '*/', ' ', $value );
+
+ // Remove anything after a comment-start token, to guard against
+ // incorrect client implementations.
+ $commentPos = strpos( $value, '/*' );
+ if ( $commentPos !== false ) {
+ $value = substr( $value, 0, $commentPos );
+ }
}
// Reject problematic keywords and control characters
$decoded = Sanitizer::decodeTagAttributes( $text );
$stripped = Sanitizer::validateTagAttributes( $decoded, $element );
- $attribs = array();
- foreach ( $stripped as $attribute => $value ) {
- $encAttribute = htmlspecialchars( $attribute );
- $encValue = Sanitizer::safeEncodeAttribute( $value );
-
- $attribs[] = "$encAttribute=\"$encValue\"";
- }
- return count( $attribs ) ? ' ' . implode( ' ', $attribs ) : '';
+ return Sanitizer::safeEncodeTagAttributes( $stripped );
}
/**
* in the id and
* name attributes
* @see http://www.w3.org/TR/html401/struct/links.html#h-12.2.3 Anchors with the id attribute
- * @see http://www.whatwg.org/specs/web-apps/current-work/multipage/elements.html#the-id-attribute
+ * @see http://www.whatwg.org/html/elements.html#the-id-attribute
* HTML5 definition of id attribute
*
* @param string $id id to escape
return $attribs;
}
+ /**
+ * Build a partial tag string from an associative array of attribute
+ * names and values as returned by decodeTagAttributes.
+ *
+ * @param $assoc_array Array
+ * @return String
+ */
+ public static function safeEncodeTagAttributes( $assoc_array ) {
+ $attribs = array();
+ foreach ( $assoc_array as $attribute => $value ) {
+ $encAttribute = htmlspecialchars( $attribute );
+ $encValue = Sanitizer::safeEncodeAttribute( $value );
+
+ $attribs[] = "$encAttribute=\"$encValue\"";
+ }
+ return count( $attribs ) ? ' ' . implode( ' ', $attribs ) : '';
+ }
+
/**
* Pick the appropriate attribute value from a match set from the
* attribs regex matches.
}
if ( $wgAllowMicrodataAttributes ) {
- # add HTML5 microdata tags as specified by http://www.whatwg.org/specs/web-apps/current-work/multipage/microdata.html#the-microdata-model
+ # add HTML5 microdata tags as specified by http://www.whatwg.org/html/microdata.html#the-microdata-model
$common = array_merge( $common, array(
'itemid', 'itemprop', 'itemref', 'itemscope', 'itemtype'
) );
'hr' => array_merge( $common, array( 'noshade', 'size', 'width' ) ),
# HTML Ruby annotation text module, simple ruby only.
- # http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-ruby-element
+ # http://www.whatwg.org/html/text-level-semantics.html#the-ruby-element
'ruby' => $common,
# rbc
# rtc
'bdi' => $common,
# HTML5 elements, defined by:
- # http://www.whatwg.org/specs/web-apps/current-work/multipage/
+ # http://www.whatwg.org/html/
'data' => array_merge( $common, array( 'value' ) ),
'time' => array_merge( $common, array( 'datetime' ) ),
'mark' => $common,
* Does a string look like an e-mail address?
*
* This validates an email address using an HTML5 specification found at:
- * http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#valid-e-mail-address
+ * http://www.whatwg.org/html/states-of-the-type-attribute.html#valid-e-mail-address
* Which as of 2011-01-24 says:
*
* A valid e-mail address is a string that matches the ABNF production
* @since 1.21
*/
class ScopedCallback {
- /** @var Closure */
+ /** @var callable */
protected $callback;
/**
- * @param $callback Closure
+ * @param callable $callback
+ * @throws MWException
*/
- public function __construct( Closure $callback ) {
+ public function __construct( $callback ) {
+ if ( !is_callable( $callback ) ) {
+ throw new MWException( "Provided callback is not valid." );
+ }
$this->callback = $callback;
}
+++ /dev/null
-<?php
-/**
- * Dynamically change configuration variables based on the test suite name and a cookie value.
- *
- * For details on how to configure a wiki for a Selenium test, see:
- * http://www.mediawiki.org/wiki/SeleniumFramework#Test_Wiki_configuration
- *
- * 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
- */
-
-if ( !defined( 'MEDIAWIKI' ) ) {
- die( 1 );
-}
-
-require_once "$IP/includes/GlobalFunctions.php";
-
-$fname = 'SeleniumWebSettings.php';
-wfProfileIn( $fname );
-
-$cookiePrefix = $wgSitename . '-';
-$cookieName = $cookiePrefix . 'Selenium';
-
-// this is a fallback SQL file
-$testSqlFile = false;
-$testImageZip = false;
-
-// if we find a request parameter containing the test name, set a cookie with the test name
-if ( isset( $_GET['setupTestSuite'] ) ) {
- $setupTestSuiteName = $_GET['setupTestSuite'];
-
- if (
- preg_match( '/[^a-zA-Z0-9_-]/', $setupTestSuiteName ) ||
- !isset( $wgSeleniumTestConfigs[$setupTestSuiteName] )
- )
- {
- return;
- }
- if ( strlen( $setupTestSuiteName ) > 0 ) {
- $expire = time() + 600;
- setcookie(
- $cookieName,
- $setupTestSuiteName,
- $expire,
- $wgCookiePath,
- $wgCookieDomain,
- $wgCookieSecure,
- true
- );
- }
-
- $testIncludes = array(); // array containing all the includes needed for this test
- $testGlobalConfigs = array(); // an array containing all the global configs needed for this test
- $testResourceFiles = array(); // an array containing all the resource files needed for this test
- $callback = $wgSeleniumTestConfigs[$setupTestSuiteName];
- call_user_func_array( $callback, array( &$testIncludes, &$testGlobalConfigs, &$testResourceFiles ) );
-
- if ( isset( $testResourceFiles['images'] ) ) {
- $testImageZip = $testResourceFiles['images'];
- }
-
- if ( isset( $testResourceFiles['db'] ) ) {
- $testSqlFile = $testResourceFiles['db'];
- $testResourceName = getTestResourceNameFromTestSuiteName( $setupTestSuiteName );
-
- switchToTestResources( $testResourceName, false ); // false means do not switch database yet
- setupTestResources( $testResourceName, $testSqlFile, $testImageZip );
- }
-}
-
-// clear the cookie based on a request param
-if ( isset( $_GET['clearTestSuite'] ) ) {
- $testSuiteName = getTestSuiteNameFromCookie( $cookieName );
-
- $expire = time() - 600;
- setcookie(
- $cookieName,
- '',
- $expire,
- $wgCookiePath,
- $wgCookieDomain,
- $wgCookieSecure,
- true
- );
-
- $testResourceName = getTestResourceNameFromTestSuiteName( $testSuiteName );
- teardownTestResources( $testResourceName );
-}
-
-// if a cookie is found, run the appropriate callback to get the config params.
-if ( isset( $_COOKIE[$cookieName] ) ) {
- $testSuiteName = getTestSuiteNameFromCookie( $cookieName );
- if ( !isset( $wgSeleniumTestConfigs[$testSuiteName] ) ) {
- return;
- }
-
- $testIncludes = array(); // array containing all the includes needed for this test
- $testGlobalConfigs = array(); // an array containing all the global configs needed for this test
- $testResourceFiles = array(); // an array containing all the resource files needed for this test
- $callback = $wgSeleniumTestConfigs[$testSuiteName];
- call_user_func_array( $callback, array( &$testIncludes, &$testGlobalConfigs, &$testResourceFiles ) );
-
- if ( isset( $testResourceFiles['db'] ) ) {
- $testResourceName = getTestResourceNameFromTestSuiteName( $testSuiteName );
- switchToTestResources( $testResourceName );
- }
- foreach ( $testIncludes as $includeFile ) {
- $file = $IP . '/' . $includeFile;
- require_once $file;
- }
- foreach ( $testGlobalConfigs as $key => $value ) {
- if ( is_array( $value ) ) {
- $GLOBALS[$key] = array_merge( $GLOBALS[$key], $value );
- } else {
- $GLOBALS[$key] = $value;
- }
- }
-}
-
-wfProfileOut( $fname );
-
-function getTestSuiteNameFromCookie( $cookieName ) {
- $testSuiteName = null;
- if ( isset( $_COOKIE[$cookieName] ) ) {
- $testSuiteName = $_COOKIE[$cookieName];
- }
- return $testSuiteName;
-}
-
-function getTestResourceNameFromTestSuiteName( $testSuiteName ) {
- $testResourceName = null;
- if ( isset( $testSuiteName ) ) {
- $testResourceName = $testSuiteName;
- }
- return $testResourceName;
-}
-
-function getTestUploadPathFromResourceName( $testResourceName ) {
- global $IP;
- $testUploadPath = "$IP/images/$testResourceName";
- return $testUploadPath;
-}
-
-function setupTestResources( $testResourceName, $testSqlFile, $testImageZip ) {
- global $wgDBname;
-
- // Basic security. Do not allow to drop productive database.
- if ( $testResourceName == $wgDBname ) {
- die( 'Cannot override productive database.' );
- }
- if ( $testResourceName == '' ) {
- die( 'Cannot identify a test the resources should be installed for.' );
- }
-
- // create tables
- $dbw = wfGetDB( DB_MASTER );
- $dbw->query( 'DROP DATABASE IF EXISTS ' . $testResourceName );
- $dbw->query( 'CREATE DATABASE ' . $testResourceName );
-
- // do not set the new DB name before database is setup
- $wgDBname = $testResourceName;
- $dbw->selectDB( $testResourceName );
- // populate from SQL file
- if ( $testSqlFile ) {
- $dbw->sourceFile( $testSqlFile );
- }
-
- // create test image dir
- $testUploadPath = getTestUploadPathFromResourceName( $testResourceName );
- if ( !file_exists( $testUploadPath ) ) {
- mkdir( $testUploadPath );
- }
-
- if ( $testImageZip ) {
- $zip = new ZipArchive();
- $zip->open( $testImageZip );
- $zip->extractTo( $testUploadPath );
- $zip->close();
- }
-}
-
-function teardownTestResources( $testResourceName ) {
- // remove test database
- $dbw = wfGetDB( DB_MASTER );
- $dbw->query( 'DROP DATABASE IF EXISTS ' . $testResourceName );
-
- $testUploadPath = getTestUploadPathFromResourceName( $testResourceName );
- // remove test image dir
- if ( file_exists( $testUploadPath ) ) {
- wfRecursiveRemoveDir( $testUploadPath );
- }
-}
-
-function switchToTestResources( $testResourceName, $switchDB = true ) {
- global $wgDBuser, $wgDBpassword, $wgDBname;
- global $wgDBtestuser, $wgDBtestpassword;
- global $wgUploadPath;
-
- if ( $switchDB ) {
- $wgDBname = $testResourceName;
- }
- $wgDBuser = $wgDBtestuser;
- $wgDBpassword = $wgDBtestpassword;
-
- $testUploadPath = getTestUploadPathFromResourceName( $testResourceName );
- $wgUploadPath = $testUploadPath;
-}
$wgActions[$action] = false;
}
-# We always output html5 since 1.22, override any change made by local settings
+# We always output HTML5 since 1.22, overriding these is no longer supported
+# we set them here for extensions that depend on its value.
$wgHtml5 = true;
-
-# Setting wgXhtmlDefaultNamespace is not supported since 1.22.
-# However we define it here for extensions that depend on its value.
$wgXhtmlDefaultNamespace = 'http://www.w3.org/1999/xhtml';
+$wgJsMimeType = 'text/javascript';
if ( !$wgHtml5Version && $wgAllowRdfaAttributes ) {
# see http://www.w3.org/TR/rdfa-in-html/#document-conformance
}
if ( !class_exists( 'AutoLoader' ) ) {
- require_once( "$IP/includes/AutoLoader.php" );
+ require_once "$IP/includes/AutoLoader.php";
}
wfProfileIn( $fname . '-exception' );
wfProfileOut( $fname . '-exception' );
wfProfileIn( $fname . '-includes' );
-require_once( "$IP/includes/normal/UtfNormalUtil.php" );
-require_once( "$IP/includes/GlobalFunctions.php" );
-require_once( "$IP/includes/ProxyTools.php" );
-require_once( "$IP/includes/normal/UtfNormalDefines.php" );
+require_once "$IP/includes/normal/UtfNormalUtil.php";
+require_once "$IP/includes/GlobalFunctions.php";
+require_once "$IP/includes/ProxyTools.php";
+require_once "$IP/includes/normal/UtfNormalDefines.php";
wfProfileOut( $fname . '-includes' );
if ( $wgSecureLogin && substr( $wgServer, 0, 2 ) !== '//' ) {
* @return bool
*/
private static function isSane( $row ) {
- if (
- $row === false
+ if ( $row === false
|| $row->ss_total_pages < $row->ss_good_articles
|| $row->ss_total_edits < $row->ss_total_pages
+ || $row->ss_users < $row->ss_active_users
) {
return false;
}
// Now check for underflow/overflow
- foreach ( array( 'total_views', 'total_edits', 'good_articles',
- 'total_pages', 'users', 'images' ) as $member ) {
- if (
- $row->{"ss_$member"} > 2000000000
- || $row->{"ss_$member"} < 0
- ) {
+ foreach ( array(
+ 'ss_total_views',
+ 'ss_total_edits',
+ 'ss_good_articles',
+ 'ss_total_pages',
+ 'ss_users',
+ 'ss_active_users',
+ 'ss_images',
+ ) as $member ) {
+ if ( $row->$member > 2000000000 || $row->$member < 0 ) {
return false;
}
}
*/
/**
- * The main skin class that provide methods and properties for all other skins.
+ * The main skin class which provides methods and properties for all other skins.
* This base class is also the "Standard" skin.
*
* See docs/skin.txt for more information.
}
/**
- * Fetch the list of usable skins in regards to $wgSkipSkins.
+ * Fetch the list of user-selectable skins in regards to $wgSkipSkins.
* Useful for Special:Preferences and other places where you
* only want to show skins users _can_ use.
* @return array of strings
public static function getUsableSkins() {
global $wgSkipSkins;
- $usableSkins = self::getSkinNames();
+ $allowedSkins = self::getSkinNames();
foreach ( $wgSkipSkins as $skip ) {
- unset( $usableSkins[$skip] );
+ unset( $allowedSkins[$skip] );
}
- return $usableSkins;
+ return $allowedSkins;
}
/**
wfProfileOut( __METHOD__ );
}
+ /**
+ * Defines the ResourceLoader modules that should be added to the skin
+ * It is recommended that skins wishing to override call parent::getDefaultModules()
+ * and substitute out any modules they wish to change by using a key to look them up
+ * @return Array of modules with helper keys for easy overriding
+ */
+ public function getDefaultModules() {
+ global $wgIncludeLegacyJavaScript, $wgPreloadJavaScriptMwUtil, $wgUseAjax,
+ $wgAjaxWatch, $wgEnableAPI, $wgEnableWriteAPI;
+
+ $out = $this->getOutput();
+ $user = $out->getUser();
+ $modules = array(
+ // modules that enhance the page content in some way
+ 'content' => array(
+ 'mediawiki.page.ready',
+ ),
+ // modules that exist for legacy reasons
+ 'legacy' => array(),
+ // modules relating to search functionality
+ 'search' => array(),
+ // modules relating to functionality relating to watching an article
+ 'watch' => array(),
+ // modules which relate to the current users preferences
+ 'user' => array(),
+ );
+ if ( $wgIncludeLegacyJavaScript ) {
+ $modules['legacy'][] = 'mediawiki.legacy.wikibits';
+ }
+
+ if ( $wgPreloadJavaScriptMwUtil ) {
+ $modules['legacy'][] = 'mediawiki.util';
+ }
+
+ // Add various resources if required
+ if ( $wgUseAjax ) {
+ $modules['legacy'][] = 'mediawiki.legacy.ajax';
+
+ if ( $wgEnableAPI ) {
+ if ( $wgEnableWriteAPI && $wgAjaxWatch && $user->isLoggedIn()
+ && $user->isAllowed( 'writeapi' )
+ ) {
+ $modules['watch'][] = 'mediawiki.page.watch.ajax';
+ }
+
+ if ( !$user->getOption( 'disablesuggest', false ) ) {
+ $modules['search'][] = 'mediawiki.searchSuggest';
+ }
+ }
+ }
+
+ if ( $user->getBoolOption( 'editsectiononrightclick' ) ) {
+ $modules['user'][] = 'mediawiki.action.view.rightClickEdit';
+ }
+
+ // Crazy edit-on-double-click stuff
+ if ( $out->isArticle() && $user->getOption( 'editondblclick' ) ) {
+ $modules['user'][] = 'mediawiki.action.view.dblClickEdit';
+ }
+ return $modules;
+ }
+
/**
* Preload the existence of three commonly-requested pages in a single query
*/
'href' => $href,
'active' => ( $href == $pageurl )
);
- $href = self::makeSpecialUrl( 'Watchlist' );
- $personal_urls['watchlist'] = array(
- 'text' => $this->msg( 'mywatchlist' )->text(),
- 'href' => $href,
- 'active' => ( $href == $pageurl )
- );
+
+ if ( $this->getUser()->isAllowed( 'viewmywatchlist' ) ) {
+ $href = self::makeSpecialUrl( 'Watchlist' );
+ $personal_urls['watchlist'] = array(
+ 'text' => $this->msg( 'mywatchlist' )->text(),
+ 'href' => $href,
+ 'active' => ( $href == $pageurl )
+ );
+ }
# We need to do an explicit check for Special:Contributions, as we
# have to match both the title, and the target, which could come
wfProfileOut( __METHOD__ . '-live' );
// Checks if the user is logged in
- if ( $this->loggedin ) {
+ if ( $this->loggedin && $user->isAllowedAll( 'viewmywatchlist', 'editmywatchlist' ) ) {
/**
* The following actions use messages which, if made particular to
* the any specific skins, would break the Ajax code which makes this
}
$sur = new UserrightsPage;
+ $sur->setContext( $this->getContext() );
if ( $sur->userCanExecute( $this->getUser() ) ) {
$nav_urls['userrights'] = array(
'href' => self::makeSpecialUrlSubpage( 'Userrights', $rootUser )
* @ingroup SpecialPage
*/
class SpecialPage {
-
// The canonical name of this special page
// Also used for the default <h1> heading, @see getDescription()
protected $mName;
* 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 $function Callback|Bool: 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
+ * @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,
/**
* 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 $function Callback|Bool: 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
+ * @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;
if ( $this->mContext instanceof IContextSource ) {
return $this->mContext;
} else {
- wfDebug( __METHOD__ . " called and \$mContext is null. Return RequestContext::getMain(); for sanity\n" );
+ wfDebug( __METHOD__ . " called and \$mContext is null. " .
+ "Return RequestContext::getMain(); for sanity\n" );
return RequestContext::getMain();
}
}
* Play with the HTMLForm if you need to more substantially
* @param $form HTMLForm
*/
- protected function alterForm( HTMLForm $form ) {}
+ protected function alterForm( HTMLForm $form ) {
+ }
/**
* Get message prefix for HTMLForm
$form->setWrapperLegendMsg( $this->getMessagePrefix() . '-legend' );
$headerMsg = $this->msg( $this->getMessagePrefix() . '-text' );
- if ( !$headerMsg->disabled() ) {
+ if ( !$headerMsg->isDisabled() ) {
$form->addHeaderText( $headerMsg->parseAsBlock() );
}
* confirmation message
* @since 1.22 Default is to do nothing
*/
- public function onSuccess() {}
+ public function onSuccess() {
+ }
/**
* Basic SpecialPage workflow: get a form, send it to the user; get some data back,
}
abstract class SpecialRedirectToSpecial extends RedirectSpecialPage {
+ // @todo FIXME: Visibility must be declared
var $redirName, $redirSubpage;
function __construct(
* - 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/w/index.php?title=Special:MyPage&offset=20110000000000&limit=1&action=history
+ * 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:
* @return Array list of errors
*/
private function checkQuickPermissions( $action, $user, $errors, $doExpensiveQueries, $short ) {
+ if ( !wfRunHooks( 'TitleQuickPermissions', array( $this, $user, $action, &$errors, $doExpensiveQueries, $short ) ) ) {
+ return $errors;
+ }
+
if ( $action == 'create' ) {
if (
( $this->isTalkPage() && !$user->isAllowed( 'createtalk' ) ) ||
# Protect css/js subpages of user pages
# XXX: this might be better using restrictions
# XXX: right 'editusercssjs' is deprecated, for backward compatibility only
- if ( $action != 'patrol' && !$user->isAllowed( 'editusercssjs' )
- && !preg_match( '/^' . preg_quote( $user->getName(), '/' ) . '\//', $this->mTextform ) ) {
- if ( $this->isCssSubpage() && !$user->isAllowed( 'editusercss' ) ) {
- $errors[] = array( 'customcssprotected' );
- } elseif ( $this->isJsSubpage() && !$user->isAllowed( 'edituserjs' ) ) {
- $errors[] = array( 'customjsprotected' );
+ if ( $action != 'patrol' && !$user->isAllowed( 'editusercssjs' ) ) {
+ if ( preg_match( '/^' . preg_quote( $user->getName(), '/' ) . '\//', $this->mTextform ) ) {
+ if ( $this->isCssSubpage() && !$user->isAllowedAny( 'editmyusercss', 'editusercss' ) ) {
+ $errors[] = array( 'mycustomcssprotected' );
+ } elseif ( $this->isJsSubpage() && !$user->isAllowedAny( 'editmyuserjs', 'edituserjs' ) ) {
+ $errors[] = array( 'mycustomjsprotected' );
+ }
+ } else {
+ if ( $this->isCssSubpage() && !$user->isAllowed( 'editusercss' ) ) {
+ $errors[] = array( 'customcssprotected' );
+ } elseif ( $this->isJsSubpage() && !$user->isAllowed( 'edituserjs' ) ) {
+ $errors[] = array( 'customjsprotected' );
+ }
}
}
return $errors;
}
- /**
- * Protect css subpages of user pages: can $wgUser edit
- * this page?
- *
- * @deprecated in 1.19; use getUserPermissionsErrors() instead.
- * @return Bool
- */
- public function userCanEditCssSubpage() {
- global $wgUser;
- wfDeprecated( __METHOD__, '1.19' );
- return ( ( $wgUser->isAllowedAll( 'editusercssjs', 'editusercss' ) )
- || preg_match( '/^' . preg_quote( $wgUser->getName(), '/' ) . '\//', $this->mTextform ) );
- }
-
- /**
- * Protect js subpages of user pages: can $wgUser edit
- * this page?
- *
- * @deprecated in 1.19; use getUserPermissionsErrors() instead.
- * @return Bool
- */
- public function userCanEditJsSubpage() {
- global $wgUser;
- wfDeprecated( __METHOD__, '1.19' );
- return (
- ( $wgUser->isAllowedAll( 'editusercssjs', 'edituserjs' ) )
- || preg_match( '/^' . preg_quote( $wgUser->getName(), '/' ) . '\//', $this->mTextform )
- );
- }
-
/**
* Get a filtered list of all restriction types supported by this wiki.
* @param bool $exists True to get all restriction types that apply to
$linkCache = LinkCache::singleton();
$cached = $linkCache->getGoodLinkFieldObj( $this, 'redirect' );
if ( $cached === null ) {
- // TODO: check the assumption that the cache actually knows about this title
- // and handle this, such as get the title from the database.
- // See https://bugzilla.wikimedia.org/show_bug.cgi?id=37209
- wfDebug( "LinkCache doesn't currently know about this title: " . $this->getPrefixedDBkey() );
- wfDebug( wfBacktrace() );
+ # Trust LinkCache's state over our own
+ # LinkCache is telling us that the page doesn't exist, despite there being cached
+ # data relating to an existing page in $this->mArticleID. Updaters should clear
+ # LinkCache as appropriate, or use $flags = Title::GAID_FOR_UPDATE. If that flag is
+ # set, then LinkCache will definitely be up to date here, since getArticleID() forces
+ # LinkCache to refresh its data from the master.
+ return $this->mRedirect = false;
}
$this->mRedirect = (bool)$cached;
}
$linkCache = LinkCache::singleton();
$cached = $linkCache->getGoodLinkFieldObj( $this, 'length' );
- if ( $cached === null ) { # check the assumption that the cache actually knows about this title
- # XXX: this does apparently happen, see https://bugzilla.wikimedia.org/show_bug.cgi?id=37209
- # as a stop gap, perhaps log this, but don't throw an exception?
- wfDebug( "LinkCache doesn't currently know about this title: " . $this->getPrefixedDBkey() );
- wfDebug( wfBacktrace() );
+ if ( $cached === null ) {
+ # Trust LinkCache's state over our own, as for isRedirect()
+ return $this->mLength = 0;
}
$this->mLength = intval( $cached );
* What is the page_latest field for this page?
*
* @param int $flags a bit field; may be Title::GAID_FOR_UPDATE to select for update
- * @throws MWException
* @return Int or 0 if the page doesn't exist
*/
public function getLatestRevID( $flags = 0 ) {
$linkCache = LinkCache::singleton();
$linkCache->addLinkObj( $this );
$cached = $linkCache->getGoodLinkFieldObj( $this, 'revision' );
- if ( $cached === null ) { # check the assumption that the cache actually knows about this title
- # XXX: this does apparently happen, see https://bugzilla.wikimedia.org/show_bug.cgi?id=37209
- # as a stop gap, perhaps log this, but don't throw an exception?
- throw new MWException( "LinkCache doesn't currently know about this title: " . $this->getPrefixedDBkey() );
+ if ( $cached === null ) {
+ # Trust LinkCache's state over our own, as for isRedirect()
+ return $this->mLatestID = 0;
}
$this->mLatestID = intval( $cached );
}
}
+ wfRunHooks( 'TitleSquidURLs', array( $this, &$urls ) );
return $urls;
}
* @return Bool true if the update succeeded
*/
public function invalidateCache() {
- global $wgMemc;
-
if ( wfReadOnly() ) {
return false;
}
$method
);
} );
- HTMLFileCache::clearFileCache( $this );
- // Clear page info.
- $revision = WikiPage::factory( $this )->getRevision();
- if ( $revision !== null ) {
- $memcKey = wfMemcKey( 'infoaction', $this->getPrefixedText(), $revision->getId() );
- $success = $wgMemc->delete( $memcKey );
- } else {
- $success = true;
- }
-
- return $success;
+ return true;
}
/**
if ( array_key_exists( $uid, $this->mNotificationTimestamp ) ) {
return $this->mNotificationTimestamp[$uid];
}
- if ( !$uid || !$wgShowUpdatedMarker ) {
+ if ( !$uid || !$wgShowUpdatedMarker || !$user->isAllowed( 'viewmywatchlist' ) ) {
return $this->mNotificationTimestamp[$uid] = false;
}
// Don't cache too much!
'edit',
'editinterface',
'editprotected',
+ 'editmyusercss',
+ 'editmyuserjs',
+ 'editmywatchlist',
'editusercssjs', #deprecated
'editusercss',
'edituserjs',
'upload_by_url',
'userrights',
'userrights-interwiki',
+ 'viewmywatchlist',
'writeapi',
);
/**
}
/**
- * @return String
+ * @return string
*/
function __toString() {
return $this->getName();
}
wfProfileIn( __METHOD__ );
- # Set it now to avoid infinite recursion in accessors
+ // Set it now to avoid infinite recursion in accessors
$this->mLoadedItems = true;
switch ( $this->mFrom ) {
case 'name':
$this->mId = self::idFromName( $this->mName );
if ( !$this->mId ) {
- # Nonexistent user placeholder object
+ // Nonexistent user placeholder object
$this->loadDefaults( $this->mName );
} else {
$this->loadFromId();
/**
* Load user table data, given mId has already been set.
- * @return Bool false if the ID does not exist, true otherwise
+ * @return bool false if the ID does not exist, true otherwise
*/
public function loadFromId() {
global $wgMemc;
return false;
}
- # Try cache
+ // Try cache
$key = wfMemcKey( 'user', 'id', $this->mId );
$data = $wgMemc->get( $key );
if ( !is_array( $data ) || $data['mVersion'] < MW_USER_VERSION ) {
- # Object is expired, load from DB
+ // Object is expired, load from DB
$data = false;
}
if ( !$data ) {
wfDebug( "User: cache miss for user {$this->mId}\n" );
- # Load from DB
+ // Load from DB
if ( !$this->loadFromDatabase() ) {
- # Can't load from ID, user is anonymous
+ // Can't load from ID, user is anonymous
return false;
}
$this->saveToCache();
} else {
wfDebug( "User: got user {$this->mId} from cache\n" );
- # Restore from cache
+ // Restore from cache
foreach ( self::$mCacheVars as $name ) {
$this->$name = $data[$name];
}
* you have both an ID and a name handy.
*
* @param string $name Username, validated by Title::newFromText()
- * @param string|Bool $validate Validate username. Takes the same parameters as
- * User::getCanonicalName(), except that true is accepted as an alias
- * for 'valid', for BC.
+ * @param string|bool $validate Validate username. Takes the same parameters as
+ * User::getCanonicalName(), except that true is accepted as an alias
+ * for 'valid', for BC.
*
* @return User|bool User object, or false if the username is invalid
- * (e.g. if it contains illegal characters or is an IP address). If the
- * username is not present in the database, the result will be a user object
- * with a name, zero user ID and default settings.
+ * (e.g. if it contains illegal characters or is an IP address). If the
+ * username is not present in the database, the result will be a user object
+ * with a name, zero user ID and default settings.
*/
public static function newFromName( $name, $validate = 'valid' ) {
if ( $validate === true ) {
if ( $name === false ) {
return false;
} else {
- # Create unloaded user object
+ // Create unloaded user object
$u = new User;
$u->mName = $name;
$u->mFrom = 'name';
* If the code is invalid or has expired, returns NULL.
*
* @param string $code Confirmation code
- * @return User object, or null
+ * @return User|null
*/
public static function newFromConfirmationCode( $code ) {
$dbr = wfGetDB( DB_SLAVE );
* Create a new user object using data from session or cookies. If the
* login credentials are invalid, the result is an anonymous user.
*
- * @param $request WebRequest object to use; $wgRequest will be used if omitted.
+ * @param WebRequest $request Object to use; $wgRequest will be used if omitted.
* @return User object
*/
public static function newFromSession( WebRequest $request = null ) {
/**
* Get the username corresponding to a given user ID
* @param int $id User ID
- * @return String|bool The corresponding username
+ * @return string|bool The corresponding username
*/
public static function whoIs( $id ) {
return UserCache::singleton()->getProp( $id, 'name' );
* Get the real name of a user given their user ID
*
* @param int $id User ID
- * @return String|bool The corresponding user's real name
+ * @return string|bool The corresponding user's real name
*/
public static function whoIsReal( $id ) {
return UserCache::singleton()->getProp( $id, 'real_name' );
/**
* Get database id given a user name
* @param string $name Username
- * @return Int|Null The corresponding user's ID, or null if user is nonexistent
+ * @return int|null The corresponding user's ID, or null if user is nonexistent
*/
public static function idFromName( $name ) {
$nt = Title::makeTitleSafe( NS_USER, $name );
if ( is_null( $nt ) ) {
- # Illegal name
+ // Illegal name
return null;
}
* addresses like this, if we allowed accounts like this to be created
* new users could get the old edits of these anonymous users.
*
- * @param string $name to match
- * @return Bool
+ * @param string $name Name to match
+ * @return bool
*/
public static function isIP( $name ) {
return preg_match( '/^\d{1,3}\.\d{1,3}\.\d{1,3}\.(?:xxx|\d{1,3})$/', $name ) || IP::isIPv6( $name );
* is longer than the maximum allowed username size or doesn't begin with
* a capital letter.
*
- * @param string $name to match
- * @return Bool
+ * @param string $name Name to match
+ * @return bool
*/
public static function isValidUserName( $name ) {
global $wgContLang, $wgMaxNameChars;
* If an account already exists in this form, login will be blocked
* by a failure to pass this function.
*
- * @param string $name to match
- * @return Bool
+ * @param string $name Name to match
+ * @return bool
*/
public static function isUsableName( $name ) {
global $wgReservedUsernames;
* isValidUserName() to avoid disrupting existing accounts.
*
* @param string $name to match
- * @return Bool
+ * @return bool
*/
public static function isCreatableName( $name ) {
global $wgInvalidUsernameCharacters;
* Is the input a valid password for this user?
*
* @param string $password Desired password
- * @return Bool
+ * @return bool
*/
public function isValidPassword( $password ) {
//simple boolean wrapper for getPasswordValidity
* Does a string look like an e-mail address?
*
* This validates an email address using an HTML5 specification found at:
- * http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#valid-e-mail-address
+ * http://www.whatwg.org/html/states-of-the-type-attribute.html#valid-e-mail-address
* Which as of 2011-01-24 says:
*
* A valid e-mail address is a string that matches the ABNF production
* pass validation here.
*
* @param string $addr E-mail address
- * @return Bool
+ * @return bool
* @deprecated since 1.18 call Sanitizer::isValidEmail() directly
*/
public static function isValidEmailAddr( $addr ) {
* Given unvalidated user input, return a canonical username, or false if
* the username is invalid.
* @param string $name User input
- * @param string|Bool $validate type of validation to use:
+ * @param string|bool $validate type of validation to use:
* - false No validation
* - 'valid' Valid for batch processes
* - 'usable' Valid for batch processes and login
* @return bool|string
*/
public static function getCanonicalName( $name, $validate = 'valid' ) {
- # Force usernames to capital
+ // Force usernames to capital
global $wgContLang;
$name = $wgContLang->ucfirst( $name );
return false;
}
- # Clean up name according to title rules
+ // Clean up name according to title rules
$t = ( $validate === 'valid' ) ?
Title::newFromText( $name ) : Title::makeTitle( NS_USER, $name );
- # Check for invalid titles
+ // Check for invalid titles
if ( is_null( $t ) ) {
return false;
}
- # Reject various classes of invalid names
+ // Reject various classes of invalid names
global $wgAuth;
$name = $wgAuth->getCanonicalName( $t->getText() );
* Count the number of edits of a user
*
* @param int $uid User ID to check
- * @return Int the user's edit count
+ * @return int The user's edit count
*
* @deprecated since 1.21 in favour of User::getEditCount
*/
/**
* Return a random password.
*
- * @return String new random password
+ * @return string New random password
*/
public static function randomPassword() {
global $wgMinimalPasswordLength;
* @param string $all 'all' to check if the whole object has been loaded
* or any other string to check if only the item is available (e.g.
* for optimisation)
- * @return Boolean
+ * @return boolean
*/
public function isItemLoaded( $item, $all = 'all' ) {
return ( $this->mLoadedItems === true && $all === 'all' ) ||
/**
* Set that an item has been loaded
*
- * @param $item String
+ * @param string $item
*/
protected function setItemLoaded( $item ) {
if ( is_array( $this->mLoadedItems ) ) {
/**
* Load user data from the session or login cookie.
- * @return Bool True if the user is logged in, false otherwise.
+ * @return bool True if the user is logged in, false otherwise.
*/
private function loadFromSession() {
$result = null;
$proposedUser = User::newFromId( $sId );
if ( !$proposedUser->isLoggedIn() ) {
- # Not a valid ID
+ // Not a valid ID
return false;
}
global $wgBlockDisablesLogin;
if ( $wgBlockDisablesLogin && $proposedUser->isBlocked() ) {
- # User blocked and we've disabled blocked user logins
+ // User blocked and we've disabled blocked user logins
return false;
}
$passwordCorrect = ( strlen( $token ) && $token === $request->getCookie( 'Token' ) );
$from = 'cookie';
} else {
- # No session or persistent login cookie
+ // No session or persistent login cookie
return false;
}
wfDebug( "User: logged in from $from\n" );
return true;
} else {
- # Invalid credentials
+ // Invalid credentials
wfDebug( "User: can't log in from $from, invalid credentials\n" );
return false;
}
* Load user and user_group data from the database.
* $this->mId must be set, this is how the user is identified.
*
- * @return Bool True if the user exists, false if the user is anonymous
+ * @return bool True if the user exists, false if the user is anonymous
*/
public function loadFromDatabase() {
- # Paranoia
+ // Paranoia
$this->mId = intval( $this->mId );
- /** Anonymous user */
+ // Anonymous user
if ( !$this->mId ) {
$this->loadDefaults();
return false;
wfRunHooks( 'UserLoadFromDatabase', array( $this, &$s ) );
if ( $s !== false ) {
- # Initialise user table data
+ // Initialise user table data
$this->loadFromRow( $s );
$this->mGroups = null; // deferred
$this->getEditCount(); // revalidation for nulls
return true;
} else {
- # Invalid user_id
+ // Invalid user_id
$this->mId = 0;
$this->loadDefaults();
return false;
* Clear various cached data stored in this object. The cache of the user table
* data (i.e. self::$mCacheVars) is not cleared unless $reloadFrom is given.
*
- * @param bool|String $reloadFrom Reload user and user_groups table data from a
+ * @param bool|string $reloadFrom Reload user and user_groups table data from a
* given source. May be "name", "id", "defaults", "session", or false for
* no reload.
*/
}
$defOpt = $wgDefaultUserOptions;
- # default language setting
- $defOpt['variant'] = $wgContLang->getCode();
- $defOpt['language'] = $wgContLang->getCode();
+ // Default language setting
+ $defOpt['language'] = $defOpt['variant'] = $wgContLang->getCode();
foreach ( SearchEngine::searchableNamespaces() as $nsnum => $nsname ) {
$defOpt['searchNs' . $nsnum] = !empty( $wgNamespacesToBeSearchedDefault[$nsnum] );
}
* Get a given default option value.
*
* @param string $opt Name of option to retrieve
- * @return String Default option value
+ * @return string Default option value
*/
public static function getDefaultOption( $opt ) {
$defOpts = self::getDefaultOptions();
$ip = null;
}
- # User/IP blocking
+ // User/IP blocking
$block = Block::newFromTarget( $this, $ip, !$bFromSlave );
- # Proxy blocking
+ // Proxy blocking
if ( !$block instanceof Block && $ip !== null && !$this->isAllowed( 'proxyunbannable' )
&& !in_array( $ip, $wgProxyWhitelist ) )
{
- # Local list
+ // Local list
if ( self::isLocallyBlockedProxy( $ip ) ) {
$block = new Block;
$block->setBlocker( wfMessage( 'proxyblocker' )->text() );
}
}
- # (bug 23343) Apply IP blocks to the contents of XFF headers, if enabled
+ // (bug 23343) Apply IP blocks to the contents of XFF headers, if enabled
if ( !$block instanceof Block
&& $wgApplyIpBlocksToXff
&& $ip !== null
*
* @param string $ip IP to check
* @param bool $checkWhitelist whether to check the whitelist first
- * @return Bool True if blacklisted.
+ * @return bool True if blacklisted.
*/
public function isDnsBlacklisted( $ip, $checkWhitelist = false ) {
global $wgEnableSorbs, $wgEnableDnsBlacklist,
*
* @param string $ip IP to check
* @param string|array $bases of Strings: URL of the DNS blacklist
- * @return Bool True if blacklisted.
+ * @return bool True if blacklisted.
*/
public function inDnsBlacklist( $ip, $bases ) {
wfProfileIn( __METHOD__ );
$found = false;
// @todo FIXME: IPv6 ??? (http://bugs.php.net/bug.php?id=33170)
if ( IP::isIPv4( $ip ) ) {
- # Reverse IP, bug 21255
+ // Reverse IP, bug 21255
$ipReversed = implode( '.', array_reverse( explode( '.', $ip ) ) );
foreach ( (array)$bases as $base ) {
- # Make hostname
- # If we have an access key, use that too (ProjectHoneypot, etc.)
+ // Make hostname
+ // If we have an access key, use that too (ProjectHoneypot, etc.)
if ( is_array( $base ) ) {
if ( count( $base ) >= 2 ) {
- # Access key is 1, base URL is 0
+ // Access key is 1, base URL is 0
$host = "{$base[1]}.$ipReversed.{$base[0]}";
} else {
$host = "$ipReversed.{$base[0]}";
$host = "$ipReversed.$base";
}
- # Send query
+ // Send query
$ipList = gethostbynamel( $host );
if ( $ipList ) {
wfProfileIn( __METHOD__ );
if ( !is_array( $wgProxyList ) ) {
- # Load from the specified file
+ // Load from the specified file
$wgProxyList = array_map( 'trim', file( $wgProxyList ) );
}
} elseif ( array_search( $ip, $wgProxyList ) !== false ) {
$ret = true;
} elseif ( array_key_exists( $ip, $wgProxyList ) ) {
- # Old-style flipped proxy list
+ // Old-style flipped proxy list
$ret = true;
} else {
$ret = false;
/**
* Is this user subject to rate limiting?
*
- * @return Bool True if rate limited
+ * @return bool True if rate limited
*/
public function isPingLimitable() {
global $wgRateLimitsExcludedIPs;
* last-hit counters will be shared across wikis.
*
* @param string $action Action to enforce; 'edit' if unspecified
- * @return Bool True if a rate limiter was tripped
+ * @return bool True if a rate limiter was tripped
*/
public function pingLimiter( $action = 'edit' ) {
- # Call the 'PingLimiter' hook
+ // Call the 'PingLimiter' hook
$result = false;
if ( !wfRunHooks( 'PingLimiter', array( &$this, $action, &$result ) ) ) {
return $result;
return false;
}
- # Some groups shouldn't trigger the ping limiter, ever
+ // Some groups shouldn't trigger the ping limiter, ever
if ( !$this->isPingLimitable() ) {
return false;
}
$limits = $wgRateLimits[$action];
$keys = array();
$id = $this->getId();
- $ip = $this->getRequest()->getIP();
$userLimit = false;
if ( isset( $limits['anon'] ) && $id == 0 ) {
$keys[wfMemcKey( 'limiter', $action, 'user', $id )] = $limits['newbie'];
}
if ( isset( $limits['ip'] ) ) {
+ $ip = $this->getRequest()->getIP();
$keys["mediawiki:limiter:$action:ip:$ip"] = $limits['ip'];
}
- $matches = array();
- if ( isset( $limits['subnet'] ) && preg_match( '/^(\d+\.\d+\.\d+)\.\d+$/', $ip, $matches ) ) {
- $subnet = $matches[1];
- $keys["mediawiki:limiter:$action:subnet:$subnet"] = $limits['subnet'];
+ if ( isset( $limits['subnet'] ) ) {
+ $ip = $this->getRequest()->getIP();
+ $matches = array();
+ $subnet = false;
+ if ( IP::isIPv6( $ip ) ) {
+ $parts = IP::parseRange( "$ip/64" );
+ $subnet = $parts[0];
+ } elseif ( preg_match( '/^(\d+\.\d+\.\d+)\.\d+$/', $ip, $matches ) ) {
+ // IPv4
+ $subnet = $matches[1];
+ }
+ if ( $subnet !== false ) {
+ $keys["mediawiki:limiter:$action:subnet:$subnet"] = $limits['subnet'];
+ }
}
}
// Check for group-specific permissions
* Check if user is blocked
*
* @param bool $bFromSlave Whether to check the slave database instead of the master
- * @return Bool True if blocked, false otherwise
+ * @return bool True if blocked, false otherwise
*/
public function isBlocked( $bFromSlave = true ) { // hacked from false due to horrible probs on site
return $this->getBlock( $bFromSlave ) instanceof Block && $this->getBlock()->prevents( 'edit' );
/**
* Check if user is blocked from editing a particular article
*
- * @param $title Title to check
+ * @param Title $title Title to check
* @param bool $bFromSlave whether to check the slave database instead of the master
- * @return Bool
+ * @return bool
*/
function isBlockedFrom( $title, $bFromSlave = false ) {
global $wgBlockAllowsUTEdit;
$blocked = $this->isBlocked( $bFromSlave );
$allowUsertalk = ( $wgBlockAllowsUTEdit ? $this->mAllowUsertalk : false );
- # If a user's name is suppressed, they cannot make edits anywhere
+ // If a user's name is suppressed, they cannot make edits anywhere
if ( !$this->mHideName && $allowUsertalk && $title->getText() === $this->getName() &&
$title->getNamespace() == NS_USER_TALK ) {
$blocked = false;
/**
* If user is blocked, return the name of the user who placed the block
- * @return String name of blocker
+ * @return string Name of blocker
*/
public function blockedBy() {
$this->getBlockedStatus();
/**
* If user is blocked, return the specified reason for the block
- * @return String Blocking reason
+ * @return string Blocking reason
*/
public function blockedFor() {
$this->getBlockedStatus();
/**
* If user is blocked, return the ID for the block
- * @return Int Block ID
+ * @return int Block ID
*/
public function getBlockId() {
$this->getBlockedStatus();
* This is intended for quick UI checks.
*
* @param string $ip IP address, uses current client if none given
- * @return Bool True if blocked, false otherwise
+ * @return bool True if blocked, false otherwise
*/
public function isBlockedGlobally( $ip = '' ) {
if ( $this->mBlockedGlobally !== null ) {
/**
* Check if user account is locked
*
- * @return Bool True if locked, false otherwise
+ * @return bool True if locked, false otherwise
*/
public function isLocked() {
if ( $this->mLocked !== null ) {
/**
* Check if user account is hidden
*
- * @return Bool True if hidden, false otherwise
+ * @return bool True if hidden, false otherwise
*/
public function isHidden() {
if ( $this->mHideName !== null ) {
/**
* Get the user's ID.
- * @return Int The user's ID; 0 if the user is anonymous or nonexistent
+ * @return int The user's ID; 0 if the user is anonymous or nonexistent
*/
public function getId() {
if ( $this->mId === null && $this->mName !== null && User::isIP( $this->mName ) ) {
/**
* Get the user name, or the IP of an anonymous user
- * @return String User's name or IP address
+ * @return string User's name or IP address
*/
public function getName() {
if ( $this->isItemLoaded( 'name', 'only' ) ) {
- # Special case optimisation
+ // Special case optimisation
return $this->mName;
} else {
$this->load();
if ( $this->mName === false ) {
- # Clean up IPs
+ // Clean up IPs
$this->mName = IP::sanitizeIP( $this->getRequest()->getIP() );
}
return $this->mName;
/**
* Get the user's name escaped by underscores.
- * @return String Username escaped by underscores.
+ * @return string Username escaped by underscores.
*/
public function getTitleKey() {
return str_replace( ' ', '_', $this->getName() );
/**
* Check if the user has new messages.
- * @return Bool True if the user has new messages
+ * @return bool True if the user has new messages
*/
public function getNewtalk() {
$this->load();
- # Load the newtalk status if it is unloaded (mNewtalk=-1)
+ // Load the newtalk status if it is unloaded (mNewtalk=-1)
if ( $this->mNewtalk === -1 ) {
$this->mNewtalk = false; # reset talk page status
- # Check memcached separately for anons, who have no
- # entire User object stored in there.
+ // Check memcached separately for anons, who have no
+ // entire User object stored in there.
if ( !$this->mId ) {
global $wgDisableAnonTalk;
if ( $wgDisableAnonTalk ) {
/**
* Return the revision and link for the oldest new talk page message for
* this user.
- * Note: This function was designed to accomodate multiple talk pages, but
+ * @note This function was designed to accomodate multiple talk pages, but
* currently only returns a single link and revision.
* @return Array
*/
/**
* Get the revision ID for the oldest new talk page message for this user
- * @return Integer or null if there are no new messages
+ * @return int|null Revision id or null if there are no new messages
*/
public function getNewMessageRevisionId() {
$newMessageRevisionId = null;
*
* @see getNewtalk()
* @param string $field 'user_ip' for anonymous users, 'user_id' otherwise
- * @param string|Int $id User's IP address for anonymous users, User ID otherwise
+ * @param string|int $id User's IP address for anonymous users, User ID otherwise
* @param bool $fromMaster true to fetch from the master, false for a slave
- * @return Bool True if the user has new messages
+ * @return bool True if the user has new messages
*/
protected function checkNewtalk( $field, $id, $fromMaster = false ) {
if ( $fromMaster ) {
/**
* Add or update the new messages flag
* @param string $field 'user_ip' for anonymous users, 'user_id' otherwise
- * @param string|Int $id User's IP address for anonymous users, User ID otherwise
+ * @param string|int $id User's IP address for anonymous users, User ID otherwise
* @param $curRev Revision new, as yet unseen revision of the user talk page. Ignored if null.
- * @return Bool True if successful, false otherwise
+ * @return bool True if successful, false otherwise
*/
protected function updateNewtalk( $field, $id, $curRev = null ) {
// Get timestamp of the talk page revision prior to the current one
/**
* Clear the new messages flag for the given user
* @param string $field 'user_ip' for anonymous users, 'user_id' otherwise
- * @param string|Int $id User's IP address for anonymous users, User ID otherwise
- * @return Bool True if successful, false otherwise
+ * @param string|int $id User's IP address for anonymous users, User ID otherwise
+ * @return bool True if successful, false otherwise
*/
protected function deleteNewtalk( $field, $id ) {
$dbw = wfGetDB( DB_MASTER );
/**
* Generate a current or new-future timestamp to be stored in the
* user_touched field when we update things.
- * @return String Timestamp in TS_MW format
+ * @return string Timestamp in TS_MW format
*/
private static function newTouchedTimestamp() {
global $wgClockSkewFudge;
/**
* Validate the cache for this account.
* @param string $timestamp A timestamp in TS_MW format
- *
* @return bool
*/
public function validateCache( $timestamp ) {
/**
* Get the user touched timestamp
- * @return String timestamp
+ * @return string timestamp
*/
public function getTouched() {
$this->load();
* Set the password and reset the random token unconditionally.
*
* @param string|null $str New password to set or null to set an invalid
- * password hash meaning that the user will not be able to log in
- * through the web interface.
+ * password hash meaning that the user will not be able to log in
+ * through the web interface.
*/
public function setInternalPassword( $str ) {
$this->load();
/**
* Get the user's current token.
* @param bool $forceCreation Force the generation of a new token if the user doesn't have one (default=true for backwards compatibility)
- * @return String Token
+ * @return string Token
*/
public function getToken( $forceCreation = true ) {
$this->load();
/**
* Has password reminder email been sent within the last
* $wgPasswordReminderResendTime hours?
- * @return Bool
+ * @return bool
*/
public function isPasswordReminderThrottled() {
global $wgPasswordReminderResendTime;
/**
* Get the user's e-mail address
- * @return String User's email address
+ * @return string User's email address
*/
public function getEmail() {
$this->load();
/**
* Get the timestamp of the user's e-mail authentication
- * @return String TS_MW timestamp
+ * @return string TS_MW timestamp
*/
public function getEmailAuthenticationTimestamp() {
$this->load();
$this->setEmail( $str );
if ( $str !== '' && $wgEmailAuthentication ) {
- # Send a confirmation request to the new address if needed
+ // Send a confirmation request to the new address if needed
$type = $oldaddr != '' ? 'changed' : 'set';
$result = $this->sendConfirmationMail( $type );
if ( $result->isGood() ) {
- # Say the the caller that a confirmation mail has been sent
+ // Say the the caller that a confirmation mail has been sent
$result->value = 'eauth';
}
} else {
/**
* Get the user's real name
- * @return String User's real name
+ * @return string User's real name
*/
public function getRealName() {
if ( !$this->isItemLoaded( 'realname' ) ) {
*
* @param string $oname The option to check
* @param string $defaultOverride A default value returned if the option does not exist
- * @param bool $ignoreHidden = whether to ignore the effects of $wgHiddenPrefs
- * @return String User's current value for the option
+ * @param bool $ignoreHidden Whether to ignore the effects of $wgHiddenPrefs
+ * @return string User's current value for the option
* @see getBoolOption()
* @see getIntOption()
*/
* Get the user's current setting for a given option, as a boolean value.
*
* @param string $oname The option to check
- * @return Bool User's current value for the option
+ * @return bool User's current value for the option
* @see getOption()
*/
public function getBoolOption( $oname ) {
*
* @param string $oname The option to check
* @param int $defaultOverride A default value returned if the option does not exist
- * @return Int User's current value for the option
+ * @return int User's current value for the option
* @see getOption()
*/
public function getIntOption( $oname, $defaultOverride = 0 ) {
* Set the given option for a user.
*
* @param string $oname The option to set
- * @param $val mixed New value to set
+ * @param mixed $val New value to set
*/
public function setOption( $oname, $val ) {
$this->loadOptions();
* and 'all', which forces a reset of *all* preferences and overrides everything else.
*
* @param array|string $resetKinds which kinds of preferences to reset. Defaults to
- * array( 'registered', 'registered-multiselect', 'registered-checkmatrix', 'unused' )
- * for backwards-compatibility.
+ * array( 'registered', 'registered-multiselect', 'registered-checkmatrix', 'unused' )
+ * for backwards-compatibility.
* @param $context IContextSource|null context source used when $resetKinds
- * does not contain 'all', passed to getOptionKinds().
- * Defaults to RequestContext::getMain() when null.
+ * does not contain 'all', passed to getOptionKinds().
+ * Defaults to RequestContext::getMain() when null.
*/
public function resetOptions(
$resetKinds = array( 'registered', 'registered-multiselect', 'registered-checkmatrix', 'unused' ),
/**
* Get the user's preferred date format.
- * @return String User's preferred date format
+ * @return string User's preferred date format
*/
public function getDatePreference() {
// Important migration for old data rows
global $wgMaxArticleSize; # Maximum article size, in Kb
$threshold = $this->getIntOption( 'stubthreshold' );
if ( $threshold > $wgMaxArticleSize * 1024 ) {
- # If they have set an impossible value, disable the preference
- # so we can use the parser cache again.
+ // If they have set an impossible value, disable the preference
+ // so we can use the parser cache again.
$threshold = 0;
}
return $threshold;
$this->getGroups(), // explicit groups
$this->getAutomaticGroups( $recache ) // implicit groups
) );
- # Hook for additional groups
+ // Hook for additional groups
wfRunHooks( 'UserEffectiveGroups', array( &$this, &$this->mEffectiveGroups ) );
// Force reindexation of groups when a hook has unset one of them
$this->mEffectiveGroups = array_values( array_unique( $this->mEffectiveGroups ) );
) );
}
if ( $recache ) {
- # Assure data consistency with rights/groups,
- # as getEffectiveGroups() depends on this function
+ // Assure data consistency with rights/groups,
+ // as getEffectiveGroups() depends on this function
$this->mEffectiveGroups = null;
}
wfProfileOut( __METHOD__ );
/**
* Get the user's edit count.
- * @return Int
+ * @return int
*/
public function getEditCount() {
if ( !$this->getId() ) {
/**
* Get whether the user is logged in
- * @return Bool
+ * @return bool
*/
public function isLoggedIn() {
return $this->getID() != 0;
/**
* Get whether the user is anonymous
- * @return Bool
+ * @return bool
*/
public function isAnon() {
return !$this->isLoggedIn();
* Check if user is allowed to access a feature / make an action
*
* @internal param \String $varargs permissions to test
- * @return Boolean: True if user is allowed to perform *any* of the given actions
+ * @return boolean: True if user is allowed to perform *any* of the given actions
*
* @return bool
*/
/**
* Internal mechanics of testing a permission
- * @param $action String
+ * @param string $action
* @return bool
*/
public function isAllowed( $action = '' ) {
if ( $action === '' ) {
return true; // In the spirit of DWIM
}
- # Patrolling may not be enabled
+ // Patrolling may not be enabled
if ( $action === 'patrol' || $action === 'autopatrol' ) {
global $wgUseRCPatrol, $wgUseNPPatrol;
if ( !$wgUseRCPatrol && !$wgUseNPPatrol ) {
return false;
}
}
- # Use strict parameter to avoid matching numeric 0 accidentally inserted
- # by misconfiguration: 0 == 'foo'
+ // Use strict parameter to avoid matching numeric 0 accidentally inserted
+ // by misconfiguration: 0 == 'foo'
return in_array( $action, $this->getRights(), true );
}
/**
* Check whether to enable recent changes patrol features for this user
- * @return Boolean: True or false
+ * @return boolean: True or false
*/
public function useRCPatrol() {
global $wgUseRCPatrol;
/**
* Check whether to enable new pages patrol features for this user
- * @return Bool True or false
+ * @return bool True or false
*/
public function useNPPatrol() {
global $wgUseRCPatrol, $wgUseNPPatrol;
- return ( ( $wgUseRCPatrol || $wgUseNPPatrol ) && ( $this->isAllowedAny( 'patrol', 'patrolmarks' ) ) );
+ return (
+ ( $wgUseRCPatrol || $wgUseNPPatrol )
+ && ( $this->isAllowedAny( 'patrol', 'patrolmarks' ) )
+ );
}
/**
/**
* Get a WatchedItem for this user and $title.
*
+ * @since 1.22 $checkRights parameter added
* @param $title Title
+ * @param $checkRights int Whether to check 'viewmywatchlist'/'editmywatchlist' rights.
+ * Pass WatchedItem::CHECK_USER_RIGHTS or WatchedItem::IGNORE_USER_RIGHTS.
* @return WatchedItem
*/
- public function getWatchedItem( $title ) {
- $key = $title->getNamespace() . ':' . $title->getDBkey();
+ public function getWatchedItem( $title, $checkRights = WatchedItem::CHECK_USER_RIGHTS ) {
+ $key = $checkRights . ':' . $title->getNamespace() . ':' . $title->getDBkey();
if ( isset( $this->mWatchedItems[$key] ) ) {
return $this->mWatchedItems[$key];
$this->mWatchedItems = array();
}
- $this->mWatchedItems[$key] = WatchedItem::fromUserTitle( $this, $title );
+ $this->mWatchedItems[$key] = WatchedItem::fromUserTitle( $this, $title, $checkRights );
return $this->mWatchedItems[$key];
}
/**
* Check the watched status of an article.
+ * @since 1.22 $checkRights parameter added
* @param $title Title of the article to look at
- * @return Bool
+ * @param $checkRights int Whether to check 'viewmywatchlist'/'editmywatchlist' rights.
+ * Pass WatchedItem::CHECK_USER_RIGHTS or WatchedItem::IGNORE_USER_RIGHTS.
+ * @return bool
*/
- public function isWatched( $title ) {
- return $this->getWatchedItem( $title )->isWatched();
+ public function isWatched( $title, $checkRights = WatchedItem::CHECK_USER_RIGHTS ) {
+ return $this->getWatchedItem( $title, $checkRights )->isWatched();
}
/**
* Watch an article.
+ * @since 1.22 $checkRights parameter added
* @param $title Title of the article to look at
+ * @param $checkRights int Whether to check 'viewmywatchlist'/'editmywatchlist' rights.
+ * Pass WatchedItem::CHECK_USER_RIGHTS or WatchedItem::IGNORE_USER_RIGHTS.
*/
- public function addWatch( $title ) {
- $this->getWatchedItem( $title )->addWatch();
+ public function addWatch( $title, $checkRights = WatchedItem::CHECK_USER_RIGHTS ) {
+ $this->getWatchedItem( $title, $checkRights )->addWatch();
$this->invalidateCache();
}
/**
* Stop watching an article.
+ * @since 1.22 $checkRights parameter added
* @param $title Title of the article to look at
+ * @param $checkRights int Whether to check 'viewmywatchlist'/'editmywatchlist' rights.
+ * Pass WatchedItem::CHECK_USER_RIGHTS or WatchedItem::IGNORE_USER_RIGHTS.
*/
- public function removeWatch( $title ) {
- $this->getWatchedItem( $title )->removeWatch();
+ public function removeWatch( $title, $checkRights = WatchedItem::CHECK_USER_RIGHTS ) {
+ $this->getWatchedItem( $title, $checkRights )->removeWatch();
$this->invalidateCache();
}
* Clear the user's notification timestamp for the given title.
* If e-notif e-mails are on, they will receive notification mails on
* the next change of the page if it's watched etc.
+ * @note If the user doesn't have 'editmywatchlist', this will do nothing.
* @param $title Title of the article to look at
*/
public function clearNotification( &$title ) {
global $wgUseEnotif, $wgShowUpdatedMarker;
- # Do nothing if the database is locked to writes
+ // Do nothing if the database is locked to writes
if ( wfReadOnly() ) {
return;
}
+ // Do nothing if not allowed to edit the watchlist
+ if ( !$this->isAllowed( 'editmywatchlist' ) ) {
+ return;
+ }
+
if ( $title->getNamespace() == NS_USER_TALK &&
$title->getText() == $this->getName() ) {
if ( !wfRunHooks( 'UserClearNewTalkNotification', array( &$this ) ) ) {
* Resets all of the given user's page-change notification timestamps.
* If e-notif e-mails are on, they will receive notification mails on
* the next change of any watched page.
+ * @note If the user doesn't have 'editmywatchlist', this will do nothing.
*/
public function clearAllNotifications() {
if ( wfReadOnly() ) {
return;
}
+ // Do nothing if not allowed to edit the watchlist
+ if ( !$this->isAllowed( 'editmywatchlist' ) ) {
+ return;
+ }
+
global $wgUseEnotif, $wgShowUpdatedMarker;
if ( !$wgUseEnotif && !$wgShowUpdatedMarker ) {
$this->setNewtalk( false );
* @param string $value Value to set
* @param int $exp Expiration time, as a UNIX time value;
* if 0 or not specified, use the default $wgCookieExpiration
- * @param $secure Bool
+ * @param bool $secure
* true: Force setting the secure attribute when setting the cookie
* false: Force NOT setting the secure attribute when setting the cookie
* null (default): Use the default ($wgCookieSecure) to set the secure attribute
$this->clearCookie( 'Token' );
$this->clearCookie( 'forceHTTPS' );
- # Remember when user logged out, to prevent seeing cached pages
+ // Remember when user logged out, to prevent seeing cached pages
$this->setCookie( 'LoggedOut', wfTimestampNow(), time() + 86400 );
}
/**
* If only this user's username is known, and it exists, return the user ID.
- * @return Int
+ * @return int
*/
public function idForName() {
$s = trim( $this->getName() );
$this->mTouched = self::newTouchedTimestamp();
$dbw = wfGetDB( DB_MASTER );
+ $inWrite = $dbw->writesOrCallbacksPending();
$seqVal = $dbw->nextSequenceValue( 'user_user_id_seq' );
$dbw->insert( 'user',
array(
array( 'IGNORE' )
);
if ( !$dbw->affectedRows() ) {
+ if ( !$inWrite ) {
+ // XXX: Get out of REPEATABLE-READ so the SELECT below works.
+ // Often this case happens early in views before any writes.
+ // This shows up at least with CentralAuth.
+ $dbw->commit( __METHOD__, 'flush' );
+ }
$this->mId = $dbw->selectField( 'user', 'user_id',
array( 'user_name' => $this->mName ), __METHOD__ );
$loaded = false;
* settings.
*
* @deprecated since 1.17 use the ParserOptions object to get the relevant options
- * @return String Page rendering hash
+ * @return string Page rendering hash
*/
public function getPageRenderingHash() {
wfDeprecated( __METHOD__, '1.17' );
/**
* Get whether the user is explicitly blocked from account creation.
- * @return Bool|Block
+ * @return bool|Block
*/
public function isBlockedFromCreateAccount() {
$this->getBlockedStatus();
/**
* Get whether the user is blocked from using Special:Emailuser.
- * @return Bool
+ * @return bool
*/
public function isBlockedFromEmailuser() {
$this->getBlockedStatus();
/**
* Get whether the user is allowed to create an account.
- * @return Bool
+ * @return bool
*/
function isAllowedToCreateAccount() {
return $this->isAllowed( 'createaccount' ) && !$this->isBlockedFromCreateAccount();
/**
* Determine whether the user is a newbie. Newbies are either
* anonymous IPs, or the most recently created accounts.
- * @return Bool
+ * @return bool
*/
public function isNewbie() {
return !$this->isAllowed( 'autoconfirmed' );
/**
* Check to see if the given clear-text password is one of the accepted passwords
* @param string $password user password.
- * @return Boolean: True if the given password is correct, otherwise False.
+ * @return boolean: True if the given password is correct, otherwise False.
*/
public function checkPassword( $password ) {
global $wgAuth, $wgLegacyEncoding;
if ( $wgAuth->authenticate( $this->getName(), $password ) ) {
return true;
} elseif ( $wgAuth->strict() ) {
- /* Auth plugin doesn't allow local authentication */
+ // Auth plugin doesn't allow local authentication
return false;
} elseif ( $wgAuth->strictUserAuth( $this->getName() ) ) {
- /* Auth plugin doesn't allow local authentication for this user name */
+ // Auth plugin doesn't allow local authentication for this user name
return false;
}
if ( self::comparePasswords( $this->mPassword, $password, $this->mId ) ) {
return true;
} elseif ( $wgLegacyEncoding ) {
- # Some wikis were converted from ISO 8859-1 to UTF-8, the passwords can't be converted
- # Check for this with iconv
+ // Some wikis were converted from ISO 8859-1 to UTF-8, the passwords can't be converted
+ // Check for this with iconv
$cp1252Password = iconv( 'UTF-8', 'WINDOWS-1252//TRANSLIT', $password );
if ( $cp1252Password != $password &&
self::comparePasswords( $this->mPassword, $cp1252Password, $this->mId ) )
*
* @param $plaintext string
*
- * @return Boolean: True if matches, false otherwise
+ * @return boolean: True if matches, false otherwise
*/
public function checkTemporaryPassword( $plaintext ) {
global $wgNewPasswordExpiry;
*
* @param string|array $salt of Strings Optional function-specific data for hashing
* @param $request WebRequest object to use or null to use $wgRequest
- * @return String The new edit token
+ * @return string The new edit token
*/
public function editToken( $salt = '', $request = null ) {
wfDeprecated( __METHOD__, '1.19' );
*
* @param string|array $salt of Strings Optional function-specific data for hashing
* @param $request WebRequest object to use or null to use $wgRequest
- * @return String The new edit token
+ * @return string The new edit token
*/
public function getEditToken( $salt = '', $request = null ) {
if ( $request == null ) {
/**
* Generate a looking random token for various uses.
*
- * @return String The new random token
- * @deprecated since 1.20; Use MWCryptRand for secure purposes or wfRandomString for pseudo-randomness
+ * @return string The new random token
+ * @deprecated since 1.20: Use MWCryptRand for secure purposes or wfRandomString for pseudo-randomness
*/
public static function generateToken() {
return MWCryptRand::generateHex( 32 );
*
* @param string $val Input value to compare
* @param string $salt Optional function-specific data for hashing
- * @param $request WebRequest object to use or null to use $wgRequest
- * @return Boolean: Whether the token matches
+ * @param WebRequest $request Object to use or null to use $wgRequest
+ * @return boolean: Whether the token matches
*/
public function matchEditToken( $val, $salt = '', $request = null ) {
$sessionToken = $this->getEditToken( $salt, $request );
*
* @param string $val Input value to compare
* @param string $salt Optional function-specific data for hashing
- * @param $request WebRequest object to use or null to use $wgRequest
- * @return Boolean: Whether the token matches
+ * @param WebRequest $request object to use or null to use $wgRequest
+ * @return boolean: Whether the token matches
*/
public function matchEditTokenNoSuffix( $val, $salt = '', $request = null ) {
$sessionToken = $this->getEditToken( $salt, $request );
* this change to the database.
*
* @param &$expiration \mixed Accepts the expiration time
- * @return String New token
+ * @return string New token
*/
protected function confirmationToken( &$expiration ) {
global $wgUserEmailConfirmationTokenExpiry;
/**
* Return a URL the user can use to confirm their email address.
* @param string $token Accepts the email confirmation token
- * @return String New token URL
+ * @return string New token URL
*/
protected function confirmationTokenUrl( $token ) {
return $this->getTokenUrl( 'ConfirmEmail', $token );
/**
* Return a URL the user can use to invalidate their email address.
* @param string $token Accepts the email confirmation token
- * @return String New token URL
+ * @return string New token URL
*/
protected function invalidationTokenUrl( $token ) {
return $this->getTokenUrl( 'InvalidateEmail', $token );
*
* @param string $page Special page
* @param string $token Token
- * @return String Formatted URL
+ * @return string Formatted URL
*/
protected function getTokenUrl( $page, $token ) {
// Hack to bypass localization of 'Special:'
/**
* Is this user allowed to send e-mails within limits of current
* site configuration?
- * @return Bool
+ * @return bool
*/
public function canSendEmail() {
global $wgEnableEmail, $wgEnableUserEmail;
/**
* Is this user allowed to receive e-mails within limits of current
* site configuration?
- * @return Bool
+ * @return bool
*/
public function canReceiveEmail() {
return $this->isEmailConfirmed() && !$this->getOption( 'disablemail' );
* confirmed their address by returning a code or using a password
* sent to the address from the wiki.
*
- * @return Bool
+ * @return bool
*/
public function isEmailConfirmed() {
global $wgEmailAuthentication;
/**
* Check whether there is an outstanding request for e-mail confirmation.
- * @return Bool
+ * @return bool
*/
public function isEmailConfirmationPending() {
global $wgEmailAuthentication;
/**
* Get the timestamp of account creation.
*
- * @return String|Bool|Null Timestamp of account creation, false for
- * non-existent/anonymous user accounts, or null if existing account
- * but information is not in database.
+ * @return string|bool|null Timestamp of account creation, false for
+ * non-existent/anonymous user accounts, or null if existing account
+ * but information is not in database.
*/
public function getRegistration() {
if ( $this->isAnon() ) {
/**
* Get the timestamp of the first edit
*
- * @return String|Bool Timestamp of first edit, or false for
- * non-existent/anonymous user accounts.
+ * @return string|bool Timestamp of first edit, or false for
+ * non-existent/anonymous user accounts.
*/
public function getFirstEditTimestamp() {
if ( $this->getId() == 0 ) {
* Get the localized descriptive name for a group, if it exists
*
* @param string $group Internal group name
- * @return String Localized descriptive group name
+ * @return string Localized descriptive group name
*/
public static function getGroupName( $group ) {
$msg = wfMessage( "group-$group" );
*
* @param string $group Internal group name
* @param string $username Username for gender (since 1.19)
- * @return String Localized name for group member
+ * @return string Localized name for group member
*/
public static function getGroupMember( $group, $username = '#' ) {
$msg = wfMessage( "group-$group-member", $username );
* Get the title of a page describing a particular group
*
* @param string $group Internal group name
- * @return Title|Bool Title of the page if it exists, false otherwise
+ * @return Title|bool Title of the page if it exists, false otherwise
*/
public static function getGroupPage( $group ) {
$msg = wfMessage( 'grouppage-' . $group )->inContentLanguage();
*
* @param string $group Internal name of the group
* @param string $text The text of the link
- * @return String HTML link to the group
+ * @return string HTML link to the group
*/
public static function makeGroupLinkHTML( $group, $text = '' ) {
if ( $text == '' ) {
*
* @param string $group Internal name of the group
* @param string $text The text of the link
- * @return String Wikilink to the group
+ * @return string Wikilink to the group
*/
public static function makeGroupLinkWiki( $group, $text = '' ) {
if ( $text == '' ) {
* Initialize user_editcount from data out of the revision table
*
* @param $add Integer Edits to add to the count from the revision table
- * @return Integer Number of edits
+ * @return integer Number of edits
*/
protected function initEditCount( $add = 0 ) {
// Pull from a slave to be less cruel to servers
* Get the description of a given right
*
* @param string $right Right to query
- * @return String Localized description of the right
+ * @return string Localized description of the right
*/
public static function getRightDescription( $right ) {
$key = "right-$right";
*
* @param string $password Plain-text password
* @param string $userId User ID
- * @return String Password hash
+ * @return string Password hash
*/
public static function oldCrypt( $password, $userId ) {
global $wgPasswordSalt;
*
* @param string $password Plain-text password
* @param bool|string $salt Optional salt, may be random or the user ID.
-
- * If unspecified or false, will generate one automatically
- * @return String Password hash
+ * If unspecified or false, will generate one automatically
+ * @return string Password hash
*/
public static function crypt( $password, $salt = false ) {
global $wgPasswordSalt;
* @param string $password Plain-text password to compare
* @param string|bool $userId User ID for old-style password salt
*
- * @return Boolean
+ * @return boolean
*/
public static function comparePasswords( $hash, $password, $userId = false ) {
$type = substr( $hash, 0, 3 );
}
if ( $type == ':A:' ) {
- # Unsalted
+ // Unsalted
return md5( $password ) === substr( $hash, 3 );
} elseif ( $type == ':B:' ) {
- # Salted
+ // Salted
list( $salt, $realHash ) = explode( ':', substr( $hash, 3 ), 2 );
return md5( $salt . '-' . md5( $password ) ) === $realHash;
} else {
- # Old-style
+ // Old-style
return self::oldCrypt( $password, $userId ) === $hash;
}
}
* no matter the value of $wgUser
* - 'create2' for a logged in user creating an account for someone else
* - 'byemail' when the created user will receive its password by e-mail
+ * - 'autocreate' when the user is automatically created (such as by CentralAuth).
* - Boolean means whether the account was created by e-mail (deprecated):
* - true will be converted to 'byemail'
* - false will be converted to 'create' if this object is the same as
$userId = $this->getId();
$insert_rows = array();
foreach ( $saveOptions as $key => $value ) {
- # Don't bother storing default values
+ // Don't bother storing default values
$defaultOption = self::getDefaultOption( $key );
if ( ( is_null( $defaultOption ) &&
!( $value === false || is_null( $value ) ) ) ||
'user_editcount',
);
}
+
+ /**
+ * Factory function for fatal permission-denied errors
+ *
+ * @since 1.22
+ * @param string $permission User right required
+ * @return Status
+ */
+ static function newFatalPermissionDeniedStatus( $permission ) {
+ global $wgLang;
+
+ $groups = array_map(
+ array( 'User', 'makeGroupLinkWiki' ),
+ User::getGroupsWithPermission( $permission )
+ );
+
+ if ( $groups ) {
+ return Status::newFatal( 'badaccess-groups', $wgLang->commaList( $groups ), count( $groups ) );
+ } else {
+ return Status::newFatal( 'badaccess-group0' );
+ }
+ }
}
wfDebug( "Assembling multipart mime email\n" );
if ( !stream_resolve_include_path( 'Mail/mime.php' ) ) {
wfDebug( "PEAR Mail_Mime package is not installed. Falling back to text email.\n" );
+ // remove the html body for text email fall back
+ $body = $body['text'];
}
else {
require_once 'Mail/mime.php';
} elseif ( $targetUser->getOption( 'enotifusertalkpages' ) &&
( !$minorEdit || $targetUser->getOption( 'enotifminoredits' ) ) )
{
- if ( $targetUser->isEmailConfirmed() ) {
+ if ( !$targetUser->isEmailConfirmed() ) {
+ wfDebug( __METHOD__ . ": talk page owner doesn't have validated email\n" );
+ } elseif ( !wfRunHooks( 'AbortTalkPageEmailNotification', array( $targetUser, $title ) ) ) {
+ wfDebug( __METHOD__ . ": talk page update notification is aborted for this user\n" );
+ } else {
wfDebug( __METHOD__ . ": sending talk page update notification\n" );
return true;
- } else {
- wfDebug( __METHOD__ . ": talk page owner doesn't have validated email\n" );
}
} else {
wfDebug( __METHOD__ . ": talk page owner doesn't want notifications\n" );
* @ingroup Watchlist
*/
class WatchedItem {
- var $mTitle, $mUser;
+ /**
+ * Constant to specify that user rights 'editmywatchlist' and
+ * 'viewmywatchlist' should not be checked.
+ * @since 1.22
+ */
+ const IGNORE_USER_RIGHTS = 0;
+
+ /**
+ * Constant to specify that user rights 'editmywatchlist' and
+ * 'viewmywatchlist' should be checked.
+ * @since 1.22
+ */
+ const CHECK_USER_RIGHTS = 1;
+
+ var $mTitle, $mUser, $mCheckRights;
private $loaded = false, $watched, $timestamp;
/**
* Create a WatchedItem object with the given user and title
+ * @since 1.22 $checkRights parameter added
* @param $user User: the user to use for (un)watching
* @param $title Title: the title we're going to (un)watch
+ * @param $checkRights int: Whether to check the 'viewmywatchlist' and 'editmywatchlist' rights.
+ * Pass either WatchedItem::IGNORE_USER_RIGHTS or WatchedItem::CHECK_USER_RIGHTS.
* @return WatchedItem object
*/
- public static function fromUserTitle( $user, $title ) {
+ public static function fromUserTitle( $user, $title, $checkRights = WatchedItem::CHECK_USER_RIGHTS ) {
$wl = new WatchedItem;
$wl->mUser = $user;
$wl->mTitle = $title;
+ $wl->mCheckRights = $checkRights;
return $wl;
}
}
$this->loaded = true;
+ // Only loggedin user can have a watchlist
+ if ( $this->mUser->isAnon() ) {
+ $this->watched = false;
+ return;
+ }
+
# Pages and their talk pages are considered equivalent for watching;
# remember that talk namespaces are numbered as page namespace+1.
}
}
+ /**
+ * Check permissions
+ * @param $what string: 'viewmywatchlist' or 'editmywatchlist'
+ */
+ private function isAllowed( $what ) {
+ return !$this->mCheckRights || $this->mUser->isAllowed( $what );
+ }
+
/**
* Is mTitle being watched by mUser?
* @return bool
*/
public function isWatched() {
+ if ( !$this->isAllowed( 'viewmywatchlist' ) ) {
+ return false;
+ }
+
$this->load();
return $this->watched;
}
* the wl_notificationtimestamp field otherwise
*/
public function getNotificationTimestamp() {
+ if ( !$this->isAllowed( 'viewmywatchlist' ) ) {
+ return false;
+ }
+
$this->load();
if ( $this->watched ) {
return $this->timestamp;
* page is not watched or the notification timestamp is already NULL.
*/
public function resetNotificationTimestamp( $force = '' ) {
+ // Only loggedin user can have a watchlist
+ if ( wfReadOnly() || $this->mUser->isAnon() || !$this->isAllowed( 'editmywatchlist' ) ) {
+ return;
+ }
+
if ( $force != 'force' ) {
$this->load();
if ( !$this->watched || $this->timestamp === null ) {
/**
* Given a title and user (assumes the object is setup), add the watch to the
* database.
- * @return bool (always true)
+ * @return bool
*/
public function addWatch() {
wfProfileIn( __METHOD__ );
+ // Only loggedin user can have a watchlist
+ if ( wfReadOnly() || $this->mUser->isAnon() || !$this->isAllowed( 'editmywatchlist' ) ) {
+ wfProfileOut( __METHOD__ );
+ return false;
+ }
+
// Use INSERT IGNORE to avoid overwriting the notification timestamp
// if there's already an entry for this page
$dbw = wfGetDB( DB_MASTER );
public function removeWatch() {
wfProfileIn( __METHOD__ );
+ // Only loggedin user can have a watchlist
+ if ( wfReadOnly() || $this->mUser->isAnon() || !$this->isAllowed( 'editmywatchlist' ) ) {
+ wfProfileOut( __METHOD__ );
+ return false;
+ }
+
$success = false;
$dbw = wfGetDB( DB_MASTER );
$dbw->delete( 'watchlist',
array_unshift( $ipchain, $ip );
}
- # Step through XFF list and find the last address in the list which is a trusted server
- # Set $ip to the IP address given by that trusted server, unless the address is not sensible (e.g. private)
+ # Step through XFF list and find the last address in the list which is a
+ # trusted server. Set $ip to the IP address given by that trusted server,
+ # unless the address is not sensible (e.g. private). However, prefer private
+ # IP addresses over proxy servers controlled by this site (more sensible).
foreach ( $ipchain as $i => $curIP ) {
$curIP = IP::canonicalize( $curIP );
- if ( wfIsTrustedProxy( $curIP ) ) {
- if ( isset( $ipchain[$i + 1] ) ) {
- if ( $wgUsePrivateIPs || IP::isPublic( $ipchain[$i + 1] ) ) {
- $ip = $ipchain[$i + 1];
- }
+ if ( wfIsTrustedProxy( $curIP ) && isset( $ipchain[$i + 1] ) ) {
+ if ( wfIsConfiguredProxy( $curIP ) || // bug 48919
+ ( IP::isPublic( $ipchain[$i + 1] ) || $wgUsePrivateIPs )
+ ) {
+ $ip = IP::canonicalize( $ipchain[$i + 1] );
+ continue;
}
- } else {
- break;
}
+ break;
}
}
}
/**
- * @param $name
+ * @param string $name The name of the header to get (case insensitive).
* @return bool|string
*/
public function getHeader( $name ) {
+ $name = strtoupper( $name );
return isset( $this->headers[$name] ) ? $this->headers[$name] : false;
}
* @param $val string
*/
public function setHeader( $name, $val ) {
+ $name = strtoupper( $name );
$this->headers[$name] = $val;
}
} else {
list( $key, $val ) = array_map( 'trim', explode( ":", $string, 2 ) );
+ $key = strtoupper( $key );
+
if ( $replace || !isset( $this->headers[$key] ) ) {
$this->headers[$key] = $val;
}
}
/**
- * @param $key string
+ * @param string $key The name of the header to get (case insensitive).
* @return string
*/
public function getheader( $key ) {
+ $key = strtoupper( $key );
+
if ( isset( $this->headers[$key] ) ) {
return $this->headers[$key];
}
}
}
+# Load composer's autoloader if present
+if ( is_readable( "$IP/vendor/autoload.php" ) ) {
+ require_once "$IP/vendor/autoload.php";
+}
+
# Get MWInit class
require_once "$IP/includes/Init.php";
require_once MW_CONFIG_FILE;
}
-if ( $wgEnableSelenium ) {
- require_once "$IP/includes/SeleniumWebSettings.php";
-}
-
wfProfileOut( 'WebStart.php-conf' );
wfProfileIn( 'WebStart.php-ob_start' );
wfShellExec( "$cmd &", $retVal );
wfProfileOut( __METHOD__ . '-exec' );
} else {
- // Fallback to running the jobs here while the user waits
- $group = JobQueueGroup::singleton();
- do {
- $job = $group->pop( JobQueueGroup::USE_CACHE ); // job from any queue
- if ( $job ) {
- $output = $job->toString() . "\n";
- $t = - microtime( true );
- wfProfileIn( __METHOD__ . '-' . get_class( $job ) );
- $success = $job->run();
- wfProfileOut( __METHOD__ . '-' . get_class( $job ) );
- $group->ack( $job ); // done
- $t += microtime( true );
- $t = round( $t * 1000 );
- if ( $success === false ) {
- $output .= "Error: " . $job->getLastError() . ", Time: $t ms\n";
- } else {
- $output .= "Success, Time: $t ms\n";
+ try {
+ // Fallback to running the jobs here while the user waits
+ $group = JobQueueGroup::singleton();
+ do {
+ $job = $group->pop( JobQueueGroup::USE_CACHE ); // job from any queue
+ if ( $job ) {
+ $output = $job->toString() . "\n";
+ $t = - microtime( true );
+ wfProfileIn( __METHOD__ . '-' . get_class( $job ) );
+ $success = $job->run();
+ wfProfileOut( __METHOD__ . '-' . get_class( $job ) );
+ $group->ack( $job ); // done
+ $t += microtime( true );
+ $t = round( $t * 1000 );
+ if ( $success === false ) {
+ $output .= "Error: " . $job->getLastError() . ", Time: $t ms\n";
+ } else {
+ $output .= "Success, Time: $t ms\n";
+ }
+ wfDebugLog( 'jobqueue', $output );
}
- wfDebugLog( 'jobqueue', $output );
- }
- } while ( --$n && $job );
+ } while ( --$n && $job );
+ } catch ( MWException $e ) {
+ // We don't want exceptions thrown during job execution to
+ // be reported to the user since the output is already sent.
+ // Instead we just log them.
+ wfDebugLog( 'exception', $e->getLogMessage() );
+ }
}
}
}
}
DeferredUpdates::addUpdate( new SiteStatsUpdate( 0, 1, $good, $total ) );
- DeferredUpdates::addUpdate( new SearchUpdate( $id, $title, $content->getTextForSearchIndex() ) );
- // @todo let the search engine decide what to do with the content object
+ DeferredUpdates::addUpdate( new SearchUpdate( $id, $title, $content ) );
// If this is another user's talk page, update newtalk.
// Don't do this if $options['changed'] = false (null-edits) nor if
}
$this->mTitle->flushRestrictions();
+ InfoAction::invalidateCache( $this->mTitle );
if ( $logAction == 'unprotect' ) {
$logParams = array();
/**
* Do some database updates after deletion
*
- * @param int $id page_id value of the page being deleted (B/C, currently unused)
+ * @param int $id page_id value of the page being deleted
* @param $content Content: optional page content to be used when determining the required updates.
* This may be needed because $this->getContent() may already return null when the page proper was deleted.
*/
// Reset this object and the Title object
$this->loadFromRow( false, self::READ_LATEST );
+
+ // Search engine
+ DeferredUpdates::addUpdate( new SearchUpdate( $id, $this->mTitle ) );
}
/**
// File cache
HTMLFileCache::clearFileCache( $title );
+ InfoAction::invalidateCache( $title );
// Messages
if ( $title->getNamespace() == NS_MEDIAWIKI ) {
// Clear file cache for this page only
HTMLFileCache::clearFileCache( $title );
+ InfoAction::invalidateCache( $title );
}
/**#@-*/
function() use ( $dbw, $that, $method, $added, $deleted ) {
$ns = $that->getTitle()->getNamespace();
- // First make sure the rows exist. If one of the "deleted" ones didn't
- // exist, we might legitimately not create it, but it's simpler to just
- // create it and then give it a negative value, since the value is bogus
- // anyway.
- //
- // Sometimes I wish we had INSERT ... ON DUPLICATE KEY UPDATE.
- $insertCats = array_merge( $added, $deleted );
- if ( !$insertCats ) {
- // Okay, nothing to do
- return;
- }
-
- $insertRows = array();
- foreach ( $insertCats as $cat ) {
- $insertRows[] = array(
- 'cat_id' => $dbw->nextSequenceValue( 'category_cat_id_seq' ),
- 'cat_title' => $cat
- );
- }
- $dbw->insert( 'category', $insertRows, $method, 'IGNORE' );
-
$addFields = array( 'cat_pages = cat_pages + 1' );
$removeFields = array( 'cat_pages = cat_pages - 1' );
-
if ( $ns == NS_CATEGORY ) {
$addFields[] = 'cat_subcats = cat_subcats + 1';
$removeFields[] = 'cat_subcats = cat_subcats - 1';
$removeFields[] = 'cat_files = cat_files - 1';
}
- if ( $added ) {
- $dbw->update(
+ if ( count( $added ) ) {
+ $insertRows = array();
+ foreach ( $added as $cat ) {
+ $insertRows[] = array(
+ 'cat_title' => $cat,
+ 'cat_pages' => 1,
+ 'cat_subcats' => ( $ns == NS_CATEGORY ) ? 1 : 0,
+ 'cat_files' => ( $ns == NS_FILE ) ? 1 : 0,
+ );
+ }
+ $dbw->upsert(
'category',
+ $insertRows,
+ array( 'cat_title' ),
$addFields,
- array( 'cat_title' => $added ),
$method
);
}
- if ( $deleted ) {
+ if ( count( $deleted ) ) {
$dbw->update(
'category',
$removeFields,
$cat = Category::newFromName( $catName );
wfRunHooks( 'CategoryAfterPageAdded', array( $cat, $that ) );
}
+
foreach ( $deleted as $catName ) {
$cat = Category::newFromName( $catName );
wfRunHooks( 'CategoryAfterPageRemoved', array( $cat, $that ) );
public $rootElement = '';
/**
- * @param string $file filename
- * @param $filterCallback callable (optional)
+ * @param string $input a filename or string containing the XML element
+ * @param callable $filterCallback (optional)
* Function to call to do additional custom validity checks from the
* SAX element handler event. This gives you access to the element
* namespace, name, and attributes, but not to text contents.
* Filter should return 'true' to toggle on $this->filterMatch
+ * @param boolean $isFile (optional) indicates if the first parameter is a
+ * filename (default, true) or if it is a string (false)
*/
- function __construct( $file, $filterCallback = null ) {
+ function __construct( $input, $filterCallback = null, $isFile = true ) {
$this->filterCallback = $filterCallback;
- $this->run( $file );
+ if ( $isFile ) {
+ $this->validateFromFile( $input );
+ } else {
+ $this->validateFromString( $input );
+ }
+ }
+
+ /**
+ * Alternative constructor: from filename
+ *
+ * @param string $fname the filename of an XML document
+ * @param callable $filterCallback (optional)
+ * Function to call to do additional custom validity checks from the
+ * SAX element handler event. This gives you access to the element
+ * namespace, name, and attributes, but not to text contents.
+ * Filter should return 'true' to toggle on $this->filterMatch
+ * @return XmlTypeCheck
+ */
+ public static function newFromFilename( $fname, $filterCallback = null ) {
+ return new self( $fname, $filterCallback, true );
+ }
+
+ /**
+ * Alternative constructor: from string
+ *
+ * @param string $string a string containing an XML element
+ * @param callable $filterCallback (optional)
+ * Function to call to do additional custom validity checks from the
+ * SAX element handler event. This gives you access to the element
+ * namespace, name, and attributes, but not to text contents.
+ * Filter should return 'true' to toggle on $this->filterMatch
+ * @return XmlTypeCheck
+ */
+ public static function newFromString( $string, $filterCallback = null ) {
+ return new self( $string, $filterCallback, false );
}
/**
}
/**
- * @param $fname
+ * Get an XML parser with the root element handler.
+ * @see XmlTypeCheck::rootElementOpen()
+ * @return resource a resource handle for the XML parser
*/
- private function run( $fname ) {
+ private function getParser() {
$parser = xml_parser_create_ns( 'UTF-8' );
-
// case folding violates XML standard, turn it off
xml_parser_set_option( $parser, XML_OPTION_CASE_FOLDING, false );
-
xml_set_element_handler( $parser, array( $this, 'rootElementOpen' ), false );
+ return $parser;
+ }
+
+ /**
+ * @param string $fname the filename
+ */
+ private function validateFromFile( $fname ) {
+ $parser = $this->getParser();
if ( file_exists( $fname ) ) {
$file = fopen( $fname, "rb" );
$chunk = fread( $file, 32768 );
$ret = xml_parse( $parser, $chunk, feof( $file ) );
if ( $ret == 0 ) {
- // XML isn't well-formed!
+ $this->wellFormed = false;
fclose( $file );
xml_parser_free( $parser );
return;
fclose( $file );
}
}
-
$this->wellFormed = true;
xml_parser_free( $parser );
}
+ /**
+ *
+ * @param string $string the XML-input-string to be checked.
+ */
+ private function validateFromString( $string ) {
+ $parser = $this->getParser();
+ $ret = xml_parse( $parser, $string, true );
+ xml_parser_free( $parser );
+ if ( $ret == 0 ) {
+ $this->wellFormed = false;
+ return;
+ }
+ $this->wellFormed = true;
+ }
+
/**
* @param $parser
* @param $name
return false;
}
+ /**
+ * Clear the info cache for a given Title.
+ *
+ * @since 1.22
+ * @param Title $title Title to clear cache for
+ */
+ public static function invalidateCache( Title $title ) {
+ global $wgMemc;
+ // Clear page info.
+ $revision = WikiPage::factory( $title )->getRevision();
+ if ( $revision !== null ) {
+ $key = wfMemcKey( 'infoaction', sha1( $title->getPrefixedText() ), $revision->getId() );
+ $wgMemc->delete( $key );
+ }
+ }
+
/**
* Shows page information on GET request.
*
foreach ( $infoTable as $infoRow ) {
$name = ( $infoRow[0] instanceof Message ) ? $infoRow[0]->escaped() : $infoRow[0];
$value = ( $infoRow[1] instanceof Message ) ? $infoRow[1]->escaped() : $infoRow[1];
- $table = $this->addRow( $table, $name, $value ) . "\n";
+ $id = ( $infoRow[0] instanceof Message ) ? $infoRow[0]->getKey() : null;
+ $table = $this->addRow( $table, $name, $value, $id ) . "\n";
}
$content = $this->addTable( $content, $table ) . "\n";
}
* @param string $table The table that will be added to the content
* @param string $name The name of the row
* @param string $value The value of the row
+ * @param string $id The ID to use for the 'tr' element
* @return string The table with the row added
*/
- protected function addRow( $table, $name, $value ) {
- return $table . Html::rawElement( 'tr', array(),
+ protected function addRow( $table, $name, $value, $id ) {
+ return $table . Html::rawElement( 'tr', $id === null ? array() : array( 'id' => 'mw-' . $id ),
Html::rawElement( 'td', array( 'style' => 'vertical-align: top;' ), $name ) .
Html::rawElement( 'td', array(), $value )
);
* @return array
*/
protected function pageInfo() {
- global $wgContLang, $wgRCMaxAge, $wgMemc, $wgUnwatchedPageThreshold, $wgPageInfoTransclusionLimit;
+ global $wgContLang, $wgRCMaxAge, $wgMemc,
+ $wgUnwatchedPageThreshold, $wgPageInfoTransclusionLimit;
$user = $this->getUser();
$lang = $this->getLanguage();
$title = $this->getTitle();
$id = $title->getArticleID();
- $memcKey = wfMemcKey( 'infoaction', sha1( $title->getPrefixedText() ), $this->page->getLatest() );
+ $memcKey = wfMemcKey( 'infoaction',
+ sha1( $title->getPrefixedText() ), $this->page->getLatest() );
$pageCounts = $wgMemc->get( $memcKey );
if ( $pageCounts === false ) {
// Get page information that would be too "expensive" to retrieve by normal means
}
function onView() {
- global $wgSquidMaxage, $wgForcedRawSMaxage, $wgJsMimeType;
+ global $wgSquidMaxage, $wgForcedRawSMaxage;
$this->getOutput()->disable();
$request = $this->getRequest();
# Force caching for CSS and JS raw content, default: 5 minutes
if ( $smaxage === null ) {
- if ( $contentType == 'text/css' || $contentType == $wgJsMimeType ) {
+ if ( $contentType == 'text/css' || $contentType == 'text/javascript' ) {
$smaxage = intval( $wgForcedRawSMaxage );
} else {
$smaxage = 0;
* @return String
*/
public function getContentType() {
- global $wgJsMimeType;
-
$ctype = $this->getRequest()->getVal( 'ctype' );
if ( $ctype == '' ) {
$gen = $this->getRequest()->getVal( 'gen' );
if ( $gen == 'js' ) {
- $ctype = $wgJsMimeType;
+ $ctype = 'text/javascript';
} elseif ( $gen == 'css' ) {
$ctype = 'text/css';
}
}
- $allowedCTypes = array( 'text/x-wiki', $wgJsMimeType, 'text/css', 'application/x-zope-edit' );
+ $allowedCTypes = array( 'text/x-wiki', 'text/javascript', 'text/css', 'application/x-zope-edit' );
if ( $ctype == '' || !in_array( $ctype, $allowedCTypes ) ) {
$ctype = 'text/x-wiki';
}
return parent::checkCanExecute( $user );
}
- public static function doWatch( Title $title, User $user ) {
+ /**
+ * Watch or unwatch a page
+ * @since 1.22
+ * @param bool $watch Whether to watch or unwatch the page
+ * @param Title $title Page to watch/unwatch
+ * @param User $user User who is watching/unwatching
+ * @return Status
+ */
+ public static function doWatchOrUnwatch( $watch, Title $title, User $user ) {
+ if ( $user->isLoggedIn() && $user->isWatched( $title, WatchedItem::IGNORE_USER_RIGHTS ) != $watch ) {
+ // If the user doesn't have 'editmywatchlist', we still want to
+ // allow them to add but not remove items via edits and such.
+ if ( $watch ) {
+ return self::doWatch( $title, $user, WatchedItem::IGNORE_USER_RIGHTS );
+ } else {
+ return self::doUnwatch( $title, $user );
+ }
+ }
+ return Status::newGood();
+ }
+
+ /**
+ * Watch a page
+ * @since 1.22 Returns Status, $checkRights parameter added
+ * @param Title $title Page to watch/unwatch
+ * @param User $user User who is watching/unwatching
+ * @param int $checkRights Passed through to $user->addWatch()
+ * @return Status
+ */
+ public static function doWatch( Title $title, User $user, $checkRights = WatchedItem::CHECK_USER_RIGHTS ) {
+ if ( $checkRights !== WatchedItem::IGNORE_USER_RIGHTS && !$user->isAllowed( 'editmywatchlist' ) ) {
+ return User::newFatalPermissionDeniedStatus( 'editmywatchlist' );
+ }
+
$page = WikiPage::factory( $title );
- if ( wfRunHooks( 'WatchArticle', array( &$user, &$page ) ) ) {
- $user->addWatch( $title );
+ $status = Status::newFatal( 'hookaborted' );
+ if ( wfRunHooks( 'WatchArticle', array( &$user, &$page, &$status ) ) ) {
+ $status = Status::newGood();
+ $user->addWatch( $title, $checkRights );
wfRunHooks( 'WatchArticleComplete', array( &$user, &$page ) );
}
- return true;
+ return $status;
}
+ /**
+ * Unwatch a page
+ * @since 1.22 Returns Status
+ * @param Title $title Page to watch/unwatch
+ * @param User $user User who is watching/unwatching
+ * @return Status
+ */
public static function doUnwatch( Title $title, User $user ) {
+ if ( !$user->isAllowed( 'editmywatchlist' ) ) {
+ return User::newFatalPermissionDeniedStatus( 'editmywatchlist' );
+ }
+
$page = WikiPage::factory( $title );
- if ( wfRunHooks( 'UnwatchArticle', array( &$user, &$page ) ) ) {
+ $status = Status::newFatal( 'hookaborted' );
+ if ( wfRunHooks( 'UnwatchArticle', array( &$user, &$page, &$status ) ) ) {
+ $status = Status::newGood();
$user->removeWatch( $title );
wfRunHooks( 'UnwatchArticleComplete', array( &$user, &$page ) );
}
- return true;
+ return $status;
}
/**
}
$examples = $this->getExamples();
- if ( $examples !== false && $examples !== '' ) {
+ if ( $examples ) {
if ( !is_array( $examples ) ) {
$examples = array(
$examples
array( $this, "parameterNotEmpty" ) ) ), $required );
if ( count( $intersection ) > 1 ) {
- $this->dieUsage( "The parameters {$p}" . implode( ", {$p}", $intersection ) . ' can not be used together', "{$p}invalidparammix" );
+ $this->dieUsage( "The parameters {$p}" . implode( ", {$p}", $intersection ) . ' can not be used together', 'invalidparammix' );
} elseif ( count( $intersection ) == 0 ) {
- $this->dieUsage( "One of the parameters {$p}" . implode( ", {$p}", $required ) . ' is required', "{$p}missingparam" );
+ $this->dieUsage( "One of the parameters {$p}" . implode( ", {$p}", $required ) . ' is required', 'missingparam' );
}
}
array( $this, "parameterNotEmpty" ) ) ), $required );
if ( count( $intersection ) > 1 ) {
- $this->dieUsage( "The parameters {$p}" . implode( ", {$p}", $intersection ) . ' can not be used together', "{$p}invalidparammix" );
+ $this->dieUsage( "The parameters {$p}" . implode( ", {$p}", $intersection ) . ' can not be used together', 'invalidparammix' );
}
}
*/
protected function getWatchlistValue( $watchlist, $titleObj, $userOption = null ) {
- $userWatching = $this->getUser()->isWatched( $titleObj );
+ $userWatching = $this->getUser()->isWatched( $titleObj, WatchedItem::IGNORE_USER_RIGHTS );
switch ( $watchlist ) {
case 'watch':
return;
}
- $user = $this->getUser();
- if ( $value ) {
- WatchAction::doWatch( $titleObj, $user );
- } else {
- WatchAction::doUnwatch( $titleObj, $user );
- }
+ WatchAction::doWatchOrUnwatch( $value, $titleObj, $this->getUser() );
}
/**
throw new UsageException( $description, $this->encodeParamName( $errorCode ), $httpRespCode, $extradata );
}
+ /**
+ * Throw a UsageException based on the errors in the Status object.
+ *
+ * @since 1.22
+ * @param Status $status Status object
+ * @throws UsageException
+ */
+ public function dieStatus( $status ) {
+ if ( $status->isGood() ) {
+ throw new MWException( 'Successful status passed to ApiBase::dieStatus' );
+ }
+
+ $errors = $status->getErrorsArray();
+ if ( !$errors ) {
+ // No errors? Assume the warnings should be treated as errors
+ $errors = $status->getWarningsArray();
+ }
+ if ( !$errors ) {
+ // Still no errors? Punt
+ $errors = array( array( 'unknownerror-nocode' ) );
+ }
+
+ // Cannot use dieUsageMsg() because extensions might return custom
+ // error messages.
+ if ( $errors[0] instanceof Message ) {
+ $msg = $errors[0];
+ $code = $msg->getKey();
+ } else {
+ $code = array_shift( $errors[0] );
+ $msg = wfMessage( $code, $errors[0] );
+ }
+ if ( isset( ApiBase::$messageMap[$code] ) ) {
+ // Translate message to code, for backwards compatability
+ $code = ApiBase::$messageMap[$code]['code'];
+ }
+ $this->dieUsage( $msg->inLanguage( 'en' )->useDatabase( false )->plain(), $code );
+ }
+
/**
* Array that maps message keys to error messages. $1 and friends are replaced.
*/
if ( !$this->getUser()->isLoggedIn() ) {
$this->dieUsage( 'You must be logged-in to have a watchlist', 'notloggedin' );
}
+ if ( !$this->getUser()->isAllowed( 'viewmywatchlist' ) ) {
+ $this->dieUsage( 'You don\'t have permission to view your watchlist', 'permissiondenied' );
+ }
$user = $this->getUser();
}
return $user;
}
if ( $this->needsToken() ) {
- $ret[] = array( 'missingparam', 'token' );
+ if ( !isset( $params['token'][ApiBase::PARAM_REQUIRED] )
+ || !$params['token'][ApiBase::PARAM_REQUIRED]
+ ) {
+ // Add token as possible missing parameter, if not already done
+ $ret[] = array( 'missingparam', 'token' );
+ }
$ret[] = array( 'sessionfailure' );
}
$result['result'] = 'needtoken';
} elseif ( !$status->isOK() ) {
// There was an error. Die now.
- // Cannot use dieUsageMsg() directly because extensions
- // might return custom error messages.
- $errors = $status->getErrorsArray();
- if ( $errors[0] instanceof Message ) {
- $code = 'aborted';
- $desc = $errors[0];
- } else {
- $code = array_shift( $errors[0] );
- $desc = wfMessage( $code, $errors[0] );
- }
- $this->dieUsage( $desc, $code );
+ $this->dieStatus( $status );
} elseif ( !$status->isGood() ) {
// Status is not good, but OK. This means warnings.
$result['result'] = 'warning';
$this->dieUsageMsg( $status[0] );
}
if ( !$status->isGood() ) {
- $errors = $status->getErrorsArray();
- $this->dieUsageMsg( $errors[0] ); // We don't care about multiple errors, just report one of them
+ $this->dieStatus( $status );
}
// Deprecated parameters
$source = ImportStreamSource::newFromUpload( 'xml' );
}
if ( !$source->isOK() ) {
- $this->dieUsageMsg( $source->getErrorsArray() );
+ $this->dieStatus( $source );
}
$importer = new WikiImporter( $source->value );
if ( isset( $params['rootpage'] ) ) {
$statusRootPage = $importer->setTargetRootPage( $params['rootpage'] );
if ( !$statusRootPage->isGood() ) {
- $this->dieUsageMsg( $statusRootPage->getErrorsArray() );
+ $this->dieStatus( $statusRootPage );
}
}
$reporter = new ApiImportReporter(
$from = $this->mPendingRedirectIDs[$rdfrom]->getPrefixedText();
$to = Title::makeTitle( $row->rd_namespace, $row->rd_title, $row->rd_fragment, $row->rd_interwiki );
unset( $this->mPendingRedirectIDs[$rdfrom] );
- if ( !isset( $this->mAllPages[$row->rd_namespace][$row->rd_title] ) ) {
+ if ( !$to->isExternal() && !isset( $this->mAllPages[$row->rd_namespace][$row->rd_title] ) ) {
$lb->add( $row->rd_namespace, $row->rd_title );
}
$this->mRedirectTitles[$from] = $to;
$params = $this->extractRequestParams();
$text = $params['text'];
$title = $params['title'];
+ if ( $title === null ) {
+ $titleProvided = false;
+ // A title is needed for parsing, so arbitrarily choose one
+ $title = 'API';
+ } else {
+ $titleProvided = true;
+ }
+
$page = $params['page'];
$pageid = $params['pageid'];
$oldid = $params['oldid'];
$model = $params['contentmodel'];
$format = $params['contentformat'];
- if ( !is_null( $page ) && ( !is_null( $text ) || $title != 'API' ) ) {
+ if ( !is_null( $page ) && ( !is_null( $text ) || $titleProvided ) ) {
$this->dieUsage( 'The page parameter cannot be used together with the text and title parameters', 'params' );
}
$titleObj = $rev->getTitle();
$wgTitle = $titleObj;
$pageObj = WikiPage::factory( $titleObj );
- $popts = $pageObj->makeParserOptions( $this->getContext() );
- $popts->enableLimitReport( !$params['disablepp'] );
+ $popts = $this->makeParserOptions( $pageObj, $params );
// If for some reason the "oldid" is actually the current revision, it may be cached
if ( $rev->isCurrent() ) {
$oldid = $pageObj->getLatest();
}
- $popts = $pageObj->makeParserOptions( $this->getContext() );
- $popts->enableLimitReport( !$params['disablepp'] );
+ $popts = $this->makeParserOptions( $pageObj, $params );
// Potentially cached
$p_result = $this->getParsedContent( $pageObj, $popts, $pageid,
$wgTitle = $titleObj;
$pageObj = WikiPage::factory( $titleObj );
- $popts = $pageObj->makeParserOptions( $this->getContext() );
- $popts->enableLimitReport( !$params['disablepp'] );
+ $popts = $this->makeParserOptions( $pageObj, $params );
if ( is_null( $text ) ) {
- $this->dieUsage( 'The text parameter should be passed with the title parameter. Should you be using the "page" parameter instead?', 'params' );
+ if ( $titleProvided && ( $prop || $params['generatexml'] ) ) {
+ $this->setWarning(
+ "'title' used without 'text', and parsed page properties were requested " .
+ "(did you mean to use 'page' instead of 'title'?)"
+ );
+ }
+ // Prevent warning from ContentHandler::makeContent()
+ $text = '';
+ }
+
+ // If we are parsing text, do not use the content model of the default
+ // API title, but default to wikitext to keep BC.
+ if ( !$titleProvided && is_null( $model ) ) {
+ $model = CONTENT_MODEL_WIKITEXT;
+ $this->setWarning( "No 'title' or 'contentmodel' was given, assuming $model." );
}
try {
}
}
+ /**
+ * Constructs a ParserOptions object
+ *
+ * @param WikiPage $pageObj
+ * @param array $params
+ *
+ * @return ParserOptions
+ */
+ protected function makeParserOptions( WikiPage $pageObj, array $params ) {
+ wfProfileIn( __METHOD__ );
+
+ $popts = $pageObj->makeParserOptions( $this->getContext() );
+ $popts->enableLimitReport( !$params['disablepp'] );
+ $popts->setIsPreview( $params['preview'] || $params['sectionpreview'] );
+ $popts->setIsSectionPreview( $params['sectionpreview'] );
+
+ wfProfileOut( __METHOD__ );
+ return $popts;
+ }
+
/**
* @param $page WikiPage
* @param $popts ParserOptions
public function getAllowedParams() {
return array(
- 'title' => array(
- ApiBase::PARAM_DFLT => 'API',
- ),
+ 'title' => null,
'text' => null,
'summary' => null,
'page' => null,
'section' => null,
'disablepp' => false,
'generatexml' => false,
+ 'preview' => false,
+ 'sectionpreview' => false,
'contentformat' => array(
ApiBase::PARAM_TYPE => ContentHandler::getAllContentFormats(),
),
public function getParamDescription() {
$p = $this->getModulePrefix();
+ $wikitext = CONTENT_MODEL_WIKITEXT;
return array(
- 'text' => 'Wikitext to parse',
+ 'text' => "Text to parse. Use {$p}title or {$p}contentmodel to control the content model",
'summary' => 'Summary to parse',
'redirects' => "If the {$p}page or the {$p}pageid parameter is set to a redirect, resolve it",
- 'title' => 'Title of page the text belongs to',
+ 'title' => "Title of page the text belongs to. " .
+ "If omitted, \"API\" is used as the title with content model $wikitext",
'page' => "Parse the content of this page. Cannot be used together with {$p}text and {$p}title",
'pageid' => "Parse the content of this page. Overrides {$p}page",
'oldid' => "Parse the content of this revision. Overrides {$p}page and {$p}pageid",
),
'pst' => array(
'Do a pre-save transform on the input before parsing it',
- 'Ignored if page, pageid or oldid is used'
+ "Only valid when used with {$p}text",
),
'onlypst' => array(
'Do a pre-save transform (PST) on the input, but don\'t parse it',
- 'Returns the same wikitext, after a PST has been applied. Ignored if page, pageid or oldid is used'
+ 'Returns the same wikitext, after a PST has been applied.',
+ "Only valid when used with {$p}text",
),
'uselang' => 'Which language to parse the request in',
'section' => 'Only retrieve the content of this section number',
'disablepp' => 'Disable the PP Report from the parser output',
- 'generatexml' => 'Generate XML parse tree (requires prop=wikitext)',
- 'contentformat' => 'Content serialization format used for the input text',
- 'contentmodel' => 'Content model of the new content',
+ 'generatexml' => "Generate XML parse tree (requires contentmodel=$wikitext)",
+ 'preview' => 'Parse in preview mode',
+ 'sectionpreview' => 'Parse in section preview mode (enables preview mode too)',
+ 'contentformat' => array(
+ 'Content serialization format used for the input text',
+ "Only valid when used with {$p}text",
+ ),
+ 'contentmodel' => array(
+ "Content model of the input text. Default is the model of the " .
+ "specified ${p}title, or $wikitext if ${p}title is not specified",
+ "Only valid when used with {$p}text",
+ ),
);
}
public function getDescription() {
+ $p = $this->getModulePrefix();
return array(
- 'Parses wikitext and returns parser output',
+ 'Parses content and returns parser output',
'See the various prop-Modules of action=query to get information from the current version of a page',
+ 'There are several ways to specify the text to parse:',
+ "1) Specify a page or revision, using {$p}page, {$p}pageid, or {$p}oldid.",
+ "2) Specify content explicitly, using {$p}text, {$p}title, and {$p}contentmodel.",
+ "3) Specify only a summary to parse. {$p}prop should be given an empty value.",
);
}
public function getPossibleErrors() {
return array_merge( parent::getPossibleErrors(), array(
array( 'code' => 'params', 'info' => 'The page parameter cannot be used together with the text and title parameters' ),
- array( 'code' => 'params', 'info' => 'The text parameter should be passed with the title parameter. Should you be using the "page" parameter instead?' ),
array( 'code' => 'missingrev', 'info' => 'There is no revision ID oldid' ),
array( 'code' => 'permissiondenied', 'info' => 'You don\'t have permission to view deleted revisions' ),
array( 'code' => 'missingtitle', 'info' => 'The page you specified doesn\'t exist' ),
public function getExamples() {
return array(
- 'api.php?action=parse&text={{Project:Sandbox}}'
+ 'api.php?action=parse&page=Project:Sandbox' => 'Parse a page',
+ 'api.php?action=parse&text={{Project:Sandbox}}' => 'Parse wikitext',
+ 'api.php?action=parse&text={{PAGENAME}}&title=Test' => 'Parse wikitext, specifying the page title',
+ 'api.php?action=parse&summary=Some+[[link]]&prop=' => 'Parse a summary',
);
}
*/
public function execute() {
$params = $this->extractRequestParams();
-
- $rc = RecentChange::newFromID( $params['rcid'] );
- if ( !$rc instanceof RecentChange ) {
- $this->dieUsageMsg( array( 'nosuchrcid', $params['rcid'] ) );
+ $this->requireOnlyOneParameter( $params, 'rcid', 'revid' );
+
+ if ( isset( $params['rcid'] ) ) {
+ $rc = RecentChange::newFromID( $params['rcid'] );
+ if ( !$rc ) {
+ $this->dieUsageMsg( array( 'nosuchrcid', $params['rcid'] ) );
+ }
+ } else {
+ $rev = Revision::newFromId( $params['revid'] );
+ if ( !$rev ) {
+ $this->dieUsageMsg( array( 'nosuchrevid', $params['revid'] ) );
+ }
+ $rc = $rev->getRecentChange();
+ if ( !$rc ) {
+ $this->dieUsage(
+ 'The revision ' . $params['revid'] . " can't be patrolled as it's too old",
+ 'notpatrollable'
+ );
+ }
}
+
$retval = $rc->doMarkPatrolled( $this->getUser() );
if ( $retval ) {
ApiBase::PARAM_REQUIRED => true
),
'rcid' => array(
- ApiBase::PARAM_TYPE => 'integer',
- ApiBase::PARAM_REQUIRED => true
+ ApiBase::PARAM_TYPE => 'integer'
+ ),
+ 'revid' => array(
+ ApiBase::PARAM_TYPE => 'integer'
),
);
}
return array(
'token' => 'Patrol token obtained from list=recentchanges',
'rcid' => 'Recentchanges ID to patrol',
+ 'revid' => 'Revision ID to patrol',
);
}
}
public function getPossibleErrors() {
- return array_merge( parent::getPossibleErrors(), array(
- array( 'nosuchrcid', 'rcid' ),
+ return array_merge(
+ parent::getPossibleErrors(),
+ parent::getRequireOnlyOneParameterErrorMessages( array( 'rcid', 'revid' ) ),
+ array(
+ array( 'nosuchrcid', 'rcid' ),
+ array( 'nosuchrevid', 'revid' ),
+ array(
+ 'code' => 'notpatrollable',
+ 'info' => "The revision can't be patrolled as it's too old"
+ )
) );
}
public function getExamples() {
return array(
- 'api.php?action=patrol&token=123abc&rcid=230672766'
+ 'api.php?action=patrol&token=123abc&rcid=230672766',
+ 'api.php?action=patrol&token=123abc&revid=230672766'
);
}
$status = $pageObj->doUpdateRestrictions( $protections, $expiryarray, $cascade, $params['reason'], $this->getUser() );
if ( !$status->isOK() ) {
- $errors = $status->getErrorsArray();
- $this->dieUsageMsg( $errors[0] );
+ $this->dieStatus( $status );
}
$res = array(
'title' => $titleObj->getPrefixedText(),
$this->dfltNamespace = NS_MAIN;
$this->indexTag = 'l';
$this->description = 'Enumerate all links that point to a given namespace';
- $this->descriptionLink = 'link';
- $this->descriptionLinked = 'linked';
+ $this->descriptionWhat = 'link';
+ $this->descriptionTargets = 'linked titles';
$this->descriptionLinking = 'linking';
break;
case 'alltransclusions':
$this->dfltNamespace = NS_TEMPLATE;
$this->indexTag = 't';
$this->description = 'List all transclusions (pages embedded using {{x}}), including non-existing';
- $this->descriptionLink = 'transclusion';
- $this->descriptionLinked = 'transcluded';
+ $this->descriptionWhat = 'transclusion';
+ $this->descriptionTargets = 'transcluded titles';
$this->descriptionLinking = 'transcluding';
break;
default:
if ( $params['unique'] ) {
if ( $fld_ids ) {
$this->dieUsage(
- "{$this->getModuleName()} cannot return corresponding page ids in unique {$this->descriptionLink}s mode",
+ "{$this->getModuleName()} cannot return corresponding page ids in unique {$this->descriptionWhat}s mode",
'params' );
}
$this->addOption( 'DISTINCT' );
public function getParamDescription() {
$p = $this->getModulePrefix();
- $link = $this->descriptionLink;
+ $what = $this->descriptionWhat;
+ $targets = $this->descriptionTargets;
$linking = $this->descriptionLinking;
return array(
- 'from' => "The title of the $link to start enumerating from",
- 'to' => "The title of the $link to stop enumerating at",
- 'prefix' => "Search for all $link titles that begin with this value",
+ 'from' => "The title of the $what to start enumerating from",
+ 'to' => "The title of the $what to stop enumerating at",
+ 'prefix' => "Search for all $targets that begin with this value",
'unique' => array(
- "Only show distinct $link titles. Cannot be used with {$p}prop=ids.",
- 'When used as a generator, yields target pages instead of source pages.',
+ "Only show distinct $targets. Cannot be used with {$p}prop=ids.",
+ 'When used as a generator, yields target pages instead of source pages.',
),
'prop' => array(
'What pieces of information to include',
" ids - Adds the pageid of the $linking page (Cannot be used with {$p}unique)",
- " title - Adds the title of the $link",
+ " title - Adds the title of the $what",
),
'namespace' => 'The namespace to enumerate',
- 'limit' => "How many total items to return",
+ 'limit' => 'How many total items to return',
'continue' => 'When more results are available, use this to continue',
'dir' => 'The direction in which to list',
);
public function getPossibleErrors() {
$m = $this->getModuleName();
- $link = $this->descriptionLink;
+ $what = $this->descriptionWhat;
return array_merge( parent::getPossibleErrors(), array(
- array( 'code' => 'params', 'info' => "{$m} cannot return corresponding page ids in unique {$link}s mode" ),
+ array( 'code' => 'params', 'info' => "{$m} cannot return corresponding page ids in unique {$what}s mode" ),
) );
}
public function getExamples() {
$p = $this->getModulePrefix();
- $link = $this->descriptionLink;
- $linked = $this->descriptionLinked;
+ $name = $this->getModuleName();
+ $what = $this->descriptionWhat;
+ $targets = $this->descriptionTargets;
return array(
- "api.php?action=query&list=all{$link}s&{$p}from=B&{$p}prop=ids|title"
- => "List $linked titles with page ids they are from, including missing ones. Start at B",
- "api.php?action=query&list=all{$link}s&{$p}unique=&{$p}from=B"
- => "List unique $linked titles",
- "api.php?action=query&generator=all{$link}s&g{$p}unique=&g{$p}from=B"
- => "Gets all $link targets, marking the missing ones",
- "api.php?action=query&generator=all{$link}s&g{$p}from=B"
- => "Gets pages containing the {$link}s",
+ "api.php?action=query&list={$name}&{$p}from=B&{$p}prop=ids|title"
+ => "List $targets with page ids they are from, including missing ones. Start at B",
+ "api.php?action=query&list={$name}&{$p}unique=&{$p}from=B"
+ => "List unique $targets",
+ "api.php?action=query&generator={$name}&g{$p}unique=&g{$p}from=B"
+ => "Gets all $targets, marking the missing ones",
+ "api.php?action=query&generator={$name}&g{$p}from=B"
+ => "Gets pages containing the {$what}s",
);
}
public function getHelpUrls() {
- return "https://www.mediawiki.org/wiki/API:All{$this->descriptionLink}s";
+ $name = ucfirst( $this->getModuleName() );
+ return "https://www.mediawiki.org/wiki/API:{$name}";
}
}
$this->addWhereFld( 'ipb_auto', 0 );
}
if ( isset( $params['ip'] ) ) {
- list( $ip, $range ) = IP::parseCIDR( $params['ip'] );
- if ( $ip && $range ) {
- // We got a CIDR range
- if ( $range < 16 ) {
- $this->dieUsage( 'CIDR ranges broader than /16 are not accepted', 'cidrtoobroad' );
- }
- $lower = wfBaseConvert( $ip, 10, 16, 8, false );
- $upper = wfBaseConvert( $ip + pow( 2, 32 - $range ) - 1, 10, 16, 8, false );
+ global $wgBlockCIDRLimit;
+ if ( IP::isIPv4( $params['ip'] ) ) {
+ $type = 'IPv4';
+ $cidrLimit = $wgBlockCIDRLimit['IPv4'];
+ $prefixLen = 0;
+ } elseif ( IP::isIPv6( $params['ip'] ) ) {
+ $type = 'IPv6';
+ $cidrLimit = $wgBlockCIDRLimit['IPv6'];
+ $prefixLen = 3; // IP::toHex output is prefixed with "v6-"
} else {
- $lower = $upper = IP::toHex( $params['ip'] );
+ $this->dieUsage( 'IP parameter is not valid', 'param_ip' );
+ }
+
+ # Check range validity, if it's a CIDR
+ list( $ip, $range ) = IP::parseCIDR( $params['ip'] );
+ if ( $ip !== false && $range !== false && $range < $cidrLimit ) {
+ $this->dieUsage( "$type CIDR ranges broader than /$cidrLimit are not accepted", 'cidrtoobroad' );
}
- $prefix = substr( $lower, 0, 4 );
+
+ # Let IP::parseRange handle calculating $upper, instead of duplicating the logic here.
+ list( $lower, $upper ) = IP::parseRange( $params['ip'] );
+
+ # Extract the common prefix to any rangeblock affecting this IP/CIDR
+ $prefix = substr( $lower, 0, $prefixLen + floor( $cidrLimit / 4 ) );
# Fairly hard to make a malicious SQL statement out of hex characters,
# but it is good practice to add quotes
}
public function getParamDescription() {
+ global $wgBlockCIDRLimit;
$p = $this->getModulePrefix();
return array(
'start' => 'The timestamp to start enumerating from',
'dir' => $this->getDirectionDescription( $p ),
'ids' => 'List of block IDs to list (optional)',
'users' => 'List of users to search for (optional)',
- 'ip' => array( 'Get all blocks applying to this IP or CIDR range, including range blocks.',
- 'Cannot be used together with bkusers. CIDR ranges broader than /16 are not accepted' ),
+ 'ip' => array(
+ 'Get all blocks applying to this IP or CIDR range, including range blocks.',
+ "Cannot be used together with bkusers. CIDR ranges broader than " .
+ "IPv4/{$wgBlockCIDRLimit['IPv4']} or IPv6/{$wgBlockCIDRLimit['IPv6']} " .
+ "are not accepted"
+ ),
'limit' => 'The maximum amount of blocks to list',
'prop' => array(
'Which properties to get',
}
public function getPossibleErrors() {
+ global $wgBlockCIDRLimit;
return array_merge( parent::getPossibleErrors(),
$this->getRequireOnlyOneParameterErrorMessages( array( 'users', 'ip' ) ),
array(
- array( 'code' => 'cidrtoobroad', 'info' => 'CIDR ranges broader than /16 are not accepted' ),
+ array(
+ 'code' => 'cidrtoobroad',
+ 'info' => "IPv4 CIDR ranges broader than /{$wgBlockCIDRLimit['IPv4']} are not accepted"
+ ),
+ array(
+ 'code' => 'cidrtoobroad',
+ 'info' => "IPv6 CIDR ranges broader than /{$wgBlockCIDRLimit['IPv6']} are not accepted"
+ ),
+ array( 'code' => 'param_ip', 'info' => 'IP parameter is not valid' ),
array( 'code' => 'param_user', 'info' => 'User parameter may not be empty' ),
array( 'code' => 'param_user', 'info' => 'User name user is not valid' ),
array( 'show' ),
),
'offset' => 'Used for paging. Use the value returned for "continue"',
'protocol' => array(
- "Protocol of the url. If empty and {$p}query set, the protocol is http.",
+ "Protocol of the URL. If empty and {$p}query set, the protocol is http.",
"Leave both this and {$p}query empty to list all external links"
),
'query' => 'Search string without protocol. See [[Special:LinkSearch]]. Leave empty to list all external links',
'namespace' => 'The page namespace(s) to enumerate.',
'limit' => 'How many pages to return.',
- 'expandurl' => 'Expand protocol-relative urls with the canonical protocol',
+ 'expandurl' => 'Expand protocol-relative URLs with the canonical protocol',
);
if ( $wgMiserMode ) {
'limit' => 'How many links to return',
'offset' => 'When more results are available, use this to continue',
'protocol' => array(
- "Protocol of the url. If empty and {$p}query set, the protocol is http.",
+ "Protocol of the URL. If empty and {$p}query set, the protocol is http.",
"Leave both this and {$p}query empty to list all external links"
),
'query' => 'Search string without protocol. Useful for checking whether a certain page contains a certain external url',
- 'expandurl' => 'Expand protocol-relative urls with the canonical protocol',
+ 'expandurl' => 'Expand protocol-relative URLs with the canonical protocol',
);
}
}
public function getDescription() {
- return 'Returns all external urls (not interwikis) from the given page(s)';
+ return 'Returns all external URLs (not interwikis) from the given page(s)';
}
public function getPossibleErrors() {
* @return Array of parameters for transform.
*/
protected function mergeThumbParams( $image, $thumbParams, $otherParams ) {
+ global $wgThumbLimits;
if ( !isset( $thumbParams['width'] ) && isset( $thumbParams['height'] ) ) {
- // Populate the width with the image's width, so only the height restriction applies
- $thumbParams['width'] = $image->getWidth();
+ // We want to limit only by height in this situation, so pass the
+ // image's full width as the limiting width. But some file types
+ // don't have a width of their own, so pick something arbitrary so
+ // thumbnailing the default icon works.
+ if ( $image->getWidth() <= 0 ) {
+ $thumbParams['width'] = max( $wgThumbLimits );
+ } else {
+ $thumbParams['width'] = $image->getWidth();
+ }
}
if ( !$otherParams ) {
$dbkey = $title->getDBkey();
$pageInfo['contentmodel'] = $title->getContentModel();
+ $pageInfo['pagelanguage'] = $title->getPageLanguage()->getCode();
if ( $titleExists ) {
global $wgDisableCounters;
private function getWatchedInfo() {
$user = $this->getUser();
- if ( $user->isAnon() || count( $this->everything ) == 0 ) {
+ if ( $user->isAnon() || count( $this->everything ) == 0
+ || !$user->isAllowed( 'viewmywatchlist' )
+ ) {
return;
}
$this->addTables( array( 'logging', 'user', 'page' ) );
$this->addOption( 'STRAIGHT_JOIN' );
$this->addJoinConds( array(
- 'user' => array( 'JOIN',
+ 'user' => array( 'LEFT JOIN',
'user_id=log_user' ),
'page' => array( 'LEFT JOIN',
array( 'log_namespace=page_namespace',
) );
$this->addFieldsIf( array( 'log_id', 'page_id' ), $this->fld_ids );
- $this->addFieldsIf( array( 'log_user', 'user_name' ), $this->fld_user );
- $this->addFieldsIf( 'user_id', $this->fld_userid );
+ $this->addFieldsIf( array( 'log_user', 'log_user_text', 'user_name' ), $this->fld_user );
+ $this->addFieldsIf( 'log_user', $this->fld_userid );
$this->addFieldsIf( array( 'log_namespace', 'log_title' ), $this->fld_title || $this->fld_parsedcomment );
$this->addFieldsIf( 'log_comment', $this->fld_comment || $this->fld_parsedcomment );
$this->addFieldsIf( 'log_params', $this->fld_details );
$vals['userhidden'] = '';
} else {
if ( $this->fld_user ) {
- $vals['user'] = $row->user_name;
+ $vals['user'] = $row->user_name === null ? $row->log_user_text : $row->user_name;
}
if ( $this->fld_userid ) {
- $vals['userid'] = $row->user_id;
+ $vals['userid'] = $row->log_user;
}
if ( !$row->log_user ) {
private $fld_comment = false, $fld_parsedcomment = false, $fld_user = false, $fld_userid = false,
$fld_flags = false, $fld_timestamp = false, $fld_title = false, $fld_ids = false,
$fld_sizes = false, $fld_redirect = false, $fld_patrolled = false, $fld_loginfo = false,
- $fld_tags = false, $token = array();
+ $fld_tags = false, $fld_sha1 = false, $token = array();
private $tokenFunctions;
$this->fld_patrolled = isset( $prop['patrolled'] );
$this->fld_loginfo = isset( $prop['loginfo'] );
$this->fld_tags = isset( $prop['tags'] );
+ $this->fld_sha1 = isset( $prop['sha1'] );
}
public function execute() {
$this->addFields( 'ts_tags' );
}
+ if ( $this->fld_sha1 ) {
+ $this->addTables( 'revision' );
+ $this->addJoinConds( array( 'revision' => array( 'LEFT JOIN', array( 'rc_this_oldid=rev_id' ) ) ) );
+ $this->addFields( array( 'rev_sha1', 'rev_deleted' ) );
+ }
+
if ( $params['toponly'] || $showRedirects ) {
$this->addTables( 'page' );
$this->addJoinConds( array( 'page' => array( 'LEFT JOIN', array( 'rc_namespace=page_namespace', 'rc_title=page_title' ) ) ) );
}
}
+ if ( $this->fld_sha1 && $row->rev_sha1 !== null ) {
+ // The RevDel check should currently never pass due to the
+ // rc_deleted = 0 condition in the WHERE clause, but in case that
+ // ever changes we check it here too.
+ if ( $row->rev_deleted & Revision::DELETED_TEXT ) {
+ $vals['sha1hidden'] = '';
+ } elseif ( $row->rev_sha1 !== '' ) {
+ $vals['sha1'] = wfBaseConvert( $row->rev_sha1, 36, 16, 40 );
+ } else {
+ $vals['sha1'] = '';
+ }
+ }
+
if ( !is_null( $this->token ) ) {
$tokenFunctions = $this->getTokenFunctions();
foreach ( $this->token as $t ) {
'redirect',
'patrolled',
'loginfo',
- 'tags'
+ 'tags',
+ 'sha1',
)
),
'token' => array(
' patrolled - Tags edits that have been patrolled',
' loginfo - Adds log information (logid, logtype, etc) to log entries',
' tags - Lists tags for the entry',
+ ' sha1 - Adds the content checksum for entries associated with a revision',
),
'token' => 'Which tokens to obtain for each change',
'show' => array(
ApiBase::PROP_TYPE => 'string',
ApiBase::PROP_NULLABLE => true
)
- )
+ ),
+ 'sha1' => array(
+ 'sha1' => array(
+ ApiBase::PROP_TYPE => 'string',
+ ApiBase::PROP_NULLABLE => true
+ ),
+ 'sha1hidden' => array(
+ ApiBase::PROP_TYPE => 'boolean',
+ ApiBase::PROP_NULLABLE => true
+ ),
+ ),
);
self::addTokenProperties( $props, $this->getTokenFunctions() );
} else {
$this->setWarning( "Conversion to XML is supported for wikitext only, " .
$title->getPrefixedDBkey() .
- " uses content model " . $content->getModel() . ")" );
+ " uses content model " . $content->getModel() );
}
}
} else {
$this->setWarning( "Template expansion is supported for wikitext only, " .
$title->getPrefixedDBkey() .
- " uses content model " . $content->getModel() . ")" );
+ " uses content model " . $content->getModel() );
$text = false;
}
}
}
+ $context = $this->getContext();
// Second pass: add result data to $retval
foreach ( $goodNames as $u ) {
if ( !isset( $data[$u] ) ) {
$data[$u] = array( 'name' => $u );
$urPage = new UserrightsPage;
+ $urPage->setContext( $context );
$iwUser = $urPage->fetchUser( $u );
if ( $iwUser instanceof UserRightsProxy ) {
if ( $user->isAnon() ) {
$this->dieUsage( 'Anonymous users cannot use watchlist change notifications', 'notloggedin' );
}
+ if ( !$user->isAllowed( 'editmywatchlist' ) ) {
+ $this->dieUsage( 'You don\'t have permission to edit your watchlist', 'permissiondenied' );
+ }
$params = $this->extractRequestParams();
$this->requireMaxOneParameter( $params, 'timestamp', 'torevid', 'newerthanrevid' );
}
// Select an upload module
- if ( !$this->selectUploadModule() ) {
- return; // not a true upload, but a status request or similar
- } elseif ( !isset( $this->mUpload ) ) {
- $this->dieUsage( 'No upload module set', 'nomodule' );
+ try {
+ if ( !$this->selectUploadModule() ) {
+ return; // not a true upload, but a status request or similar
+ } elseif ( !isset( $this->mUpload ) ) {
+ $this->dieUsage( 'No upload module set', 'nomodule' );
+ }
+ } catch ( UploadStashException $e ) { // XXX: don't spam exception log
+ $this->dieUsage( get_class( $e ) . ": " . $e->getMessage(), 'stasherror' );
}
// First check permission to upload
if ( !$this->mUpload->getTitle() ) {
$this->dieUsage( 'Invalid file title supplied', 'internal-error' );
}
- } elseif ( $this->mParams['async'] ) {
+ } elseif ( $this->mParams['async'] && $this->mParams['filekey'] ) {
// defer verification to background process
} else {
+ wfDebug( __METHOD__ . 'about to verify' );
$this->verifyUpload();
}
}
// Get the result based on the current upload context:
- $result = $this->getContextResult();
- if ( $result['result'] === 'Success' ) {
- $result['imageinfo'] = $this->mUpload->getImageInfo( $this->getResult() );
+ try {
+ $result = $this->getContextResult();
+ if ( $result['result'] === 'Success' ) {
+ $result['imageinfo'] = $this->mUpload->getImageInfo( $this->getResult() );
+ }
+ } catch ( UploadStashException $e ) { // XXX: don't spam exception log
+ $this->dieUsage( get_class( $e ) . ": " . $e->getMessage(), 'stasherror' );
}
$this->getResult()->addValue( null, $this->getModuleName(), $result );
$chunkPath = $request->getFileTempname( 'chunk' );
$chunkSize = $request->getUpload( 'chunk' )->getSize();
if ( $this->mParams['offset'] == 0 ) {
- $filekey = $this->performStash();
+ try {
+ $filekey = $this->performStash();
+ } catch ( MWException $e ) {
+ // FIXME: Error handling here is wrong/different from rest of this
+ $this->dieUsage( $e->getMessage(), 'stashfailed' );
+ }
} else {
$filekey = $this->mParams['filekey'];
/** @var $status Status */
// Check we added the last chunk:
if ( $this->mParams['offset'] + $chunkSize == $this->mParams['filesize'] ) {
if ( $this->mParams['async'] ) {
- $progress = UploadBase::getSessionStatus( $this->mParams['filekey'] );
+ $progress = UploadBase::getSessionStatus( $filekey );
if ( $progress && $progress['result'] === 'Poll' ) {
$this->dieUsage( "Chunk assembly already in progress.", 'stashfailed' );
}
UploadBase::setSessionStatus(
- $this->mParams['filekey'],
+ $filekey,
array( 'result' => 'Poll',
'stage' => 'queued', 'status' => Status::newGood() )
);
$ok = JobQueueGroup::singleton()->push( new AssembleUploadChunksJob(
- Title::makeTitle( NS_FILE, $this->mParams['filekey'] ),
+ Title::makeTitle( NS_FILE, $filekey ),
array(
'filename' => $this->mParams['filename'],
- 'filekey' => $this->mParams['filekey'],
+ 'filekey' => $filekey,
'session' => $this->getContext()->exportSession()
)
) );
if ( $ok ) {
$result['result'] = 'Poll';
} else {
- UploadBase::setSessionStatus( $this->mParams['filekey'], false );
+ UploadBase::setSessionStatus( $filekey, false );
$this->dieUsage(
"Failed to start AssembleUploadChunks.php", 'stashfailed' );
}
array( 'code' => 'publishfailed', 'info' => 'Publishing of stashed file failed' ),
array( 'code' => 'internal-error', 'info' => 'An internal error occurred' ),
array( 'code' => 'asynccopyuploaddisabled', 'info' => 'Asynchronous copy uploads disabled' ),
+ array( 'code' => 'stasherror', 'info' => 'An upload stash error occurred' ),
array( 'fileexists-forbidden' ),
array( 'fileexists-shared-forbidden' ),
)
$user = $this->getUrUser();
$form = new UserrightsPage;
+ $form->setContext( $this->getContext() );
$r['user'] = $user->getName();
$r['userid'] = $user->getId();
list( $r['added'], $r['removed'] ) =
$params = $this->extractRequestParams();
$form = new UserrightsPage;
+ $form->setContext( $this->getContext() );
$status = $form->fetchUser( $params['user'] );
if ( !$status->isOK() ) {
- $errors = $status->getErrorsArray();
- $this->dieUsageMsg( $errors[0] );
+ $this->dieStatus( $status );
} else {
$user = $status->value;
}
if ( !$user->isLoggedIn() ) {
$this->dieUsage( 'You must be logged-in to have a watchlist', 'notloggedin' );
}
+ if ( !$user->isAllowed( 'editmywatchlist' ) ) {
+ $this->dieUsage( 'You don\'t have permission to edit your watchlist', 'permissiondenied' );
+ }
$params = $this->extractRequestParams();
$title = Title::newFromText( $params['title'] );
if ( $params['unwatch'] ) {
$res['unwatched'] = '';
$res['message'] = $this->msg( 'removedwatchtext', $title->getPrefixedText() )->title( $title )->parseAsBlock();
- $success = UnwatchAction::doUnwatch( $title, $user );
+ $status = UnwatchAction::doUnwatch( $title, $user );
} else {
$res['watched'] = '';
$res['message'] = $this->msg( 'addedwatchtext', $title->getPrefixedText() )->title( $title )->parseAsBlock();
- $success = WatchAction::doWatch( $title, $user );
+ $status = WatchAction::doWatch( $title, $user );
}
if ( !is_null( $oldLang ) ) {
$this->getContext()->setLanguage( $oldLang ); // Reset language to $oldLang
}
- if ( !$success ) {
- $this->dieUsageMsg( 'hookaborted' );
+ if ( !$status->isOK() ) {
+ $this->dieStatus( $status );
}
$this->getResult()->addValue( null, $this->getModuleName(), $res );
}
private $mForUpdate = false;
/**
- * Get an instance of this class
+ * @var LinkCache
+ */
+ protected static $instance;
+
+ /**
+ * Get an instance of this class.
*
* @return LinkCache
*/
static function &singleton() {
- static $instance;
- if ( !isset( $instance ) ) {
- $instance = new LinkCache;
+ if ( self::$instance ) {
+ return self::$instance;
}
- return $instance;
+ self::$instance = new LinkCache;
+ return self::$instance;
+ }
+
+ /**
+ * Destroy the singleton instance, a new one will be created next time
+ * singleton() is called.
+ * @since 1.22
+ */
+ static function destroySingleton() {
+ self::$instance = null;
+ }
+
+ /**
+ * Set the singleton instance to a given object.
+ * Since we do not have an interface for LinkCache, you have to be sure the
+ * given object implements all the LinkCache public methods.
+ * @param LinkCache $instance
+ * @since 1.22
+ */
+ static function setSingleton( LinkCache $instance ) {
+ self::$instance = $instance;
}
/**
/**
* Get the plural rule types for a given language from the XML files.
* Cached.
- * @since 1.21
+ * @since 1.22
*/
public function getPluralRuleTypes( $code ) {
if ( $this->pluralRuleTypes === null ) {
*/
/**
- *
+ * MediaWiki message cache structure version.
+ * Bump this whenever the message cache format has changed.
+ */
+define( 'MSG_CACHE_VERSION', 1 );
+
+/**
+ * Memcached timeout when loading a key.
+ * See MessageCache::load()
*/
define( 'MSG_LOAD_TIMEOUT', 60 );
+
+/**
+ * Memcached timeout when locking a key for a writing operation.
+ * See MessageCache::lock()
+ */
define( 'MSG_LOCK_TIMEOUT', 30 );
+/**
+ * Number of times we will try to acquire a lock from Memcached.
+ * This comes in addition to MSG_LOCK_TIMEOUT.
+ */
define( 'MSG_WAIT_TIMEOUT', 30 );
-define( 'MSG_CACHE_VERSION', 1 );
/**
* Message cache
*/
protected $mCache;
- // Should mean that database cannot be used, but check
+ /**
+ * Should mean that database cannot be used, but check
+ * @var bool $mDisable
+ */
protected $mDisable;
- /// Lifetime for cache, used by object caching
+ /**
+ * Lifetime for cache, used by object caching.
+ * Set on construction, see __construct().
+ */
protected $mExpiry;
/**
*/
protected $mParserOptions, $mParser;
- /// Variable for tracking which variables are already loaded
+ /**
+ * Variable for tracking which variables are already loaded
+ * @var array $mLoadedLanguages
+ */
protected $mLoadedLanguages = array();
/**
* Singleton instance
*
- * @var MessageCache
+ * @var MessageCache $instance
*/
private static $instance;
/**
- * @var bool
+ * @var bool $mInParser
*/
protected $mInParser = false;
self::$instance = null;
}
+ /**
+ * @param ObjectCache $memCached A cache instance. If none, fall back to CACHE_NONE.
+ * @param bool $useDB
+ * @param int $expiry Lifetime for cache. @see $mExpiry.
+ */
function __construct( $memCached, $useDB, $expiry ) {
if ( !$memCached ) {
$memCached = wfGetCache( CACHE_NONE );
}
/**
- * Represents a write lock on the messages key
+ * Represents a write lock on the messages key.
+ *
+ * Will retry MessageCache::MSG_WAIT_TIMEOUT times, each operations having
+ * a timeout of MessageCache::MSG_LOCK_TIMEOUT.
*
* @param string $key
* @return Boolean: success
/**
* Get a message from either the content language or the user language.
*
- * @param string $key The message cache key
- * @param bool $useDB Get the message from the DB, false to use only
- * the localisation
- * @param bool|string $langcode Code of the language to get the message for, if
- * it is a valid code create a language for that language,
- * if it is a string but not a valid code then make a basic
- * language object, if it is a false boolean then use the
- * current users language (as a fallback for the old
- * parameter functionality), or if it is a true boolean
- * then use the wikis content language (also as a
- * fallback).
- * @param bool $isFullKey Specifies whether $key is a two part key "msg/lang".
+ * First, assemble a list of languages to attempt getting the message from. This
+ * chain begins with the requested language and its fallbacks and then continues with
+ * the content language and its fallbacks. For each language in the chain, the following
+ * process will occur (in this order):
+ * 1. If a language-specific override, i.e., [[MW:msg/lang]], is available, use that.
+ * Note: for the content language, there is no /lang subpage.
+ * 2. Fetch from the static CDB cache.
+ * 3. If available, check the database for fallback language overrides.
*
- * @throws MWException
- * @return string|bool
+ * This process provides a number of guarantees. When changing this code, make sure all
+ * of these guarantees are preserved.
+ * * If the requested language is *not* the content language, then the CDB cache for that
+ * specific language will take precedence over the root database page ([[MW:msg]]).
+ * * Fallbacks will be just that: fallbacks. A fallback language will never be reached if
+ * the message is available *anywhere* in the language for which it is a fallback.
+ *
+ * @param string $key the message key
+ * @param bool $useDB If true, look for the message in the DB, false
+ * to use only the compiled l10n cache.
+ * @param bool|string|object $langcode Code of the language to get the message for.
+ * - If string and a valid code, will create a standard language object
+ * - If string but not a valid code, will create a basic language object
+ * - If boolean and false, create object from the current users language
+ * - If boolean and true, create object from the wikis content language
+ * - If language object, use it as given
+ * @param bool $isFullKey specifies whether $key is a two part key
+ * "msg/lang".
+ *
+ * @throws MWException when given an invalid key
+ * @return string|bool False if the message doesn't exist, otherwise the message (which can be empty)
*/
function get( $key, $useDB = true, $langcode = true, $isFullKey = false ) {
- global $wgLanguageCode, $wgContLang;
+ global $wgContLang;
- if ( is_int( $key ) ) {
- // "Non-string key given" exception sometimes happens for numerical
- // strings that become ints somewhere on their way here
- $key = strval( $key );
- }
+ $section = new ProfileSection( __METHOD__ );
- if ( !is_string( $key ) ) {
+ if ( is_int( $key ) ) {
+ // Fix numerical strings that somehow become ints
+ // on their way here
+ $key = (string)$key;
+ } elseif ( !is_string( $key ) ) {
throw new MWException( 'Non-string key given' );
- }
-
- if ( strval( $key ) === '' ) {
- # Shortcut: the empty key is always missing
+ } elseif ( $key === '' ) {
+ // Shortcut: the empty key is always missing
return false;
}
- $lang = wfGetLangObj( $langcode );
- if ( !$lang ) {
- throw new MWException( "Bad lang code $langcode given" );
+ // For full keys, get the language code from the key
+ $pos = strrpos( $key, '/' );
+ if ( $isFullKey && $pos !== false ) {
+ $langcode = substr( $key, $pos + 1 );
+ $key = substr( $key, 0, $pos );
}
- $langcode = $lang->getCode();
-
- $message = false;
-
- # Normalise title-case input (with some inlining)
- $lckey = str_replace( ' ', '_', $key );
+ // Normalise title-case input (with some inlining)
+ $lckey = strtr( $key, ' ', '_');
if ( ord( $key ) < 128 ) {
$lckey[0] = strtolower( $lckey[0] );
$uckey = ucfirst( $lckey );
$uckey = $wgContLang->ucfirst( $lckey );
}
- # Try the MediaWiki namespace
- if ( !$this->mDisable && $useDB ) {
- $title = $uckey;
- if ( !$isFullKey && ( $langcode != $wgLanguageCode ) ) {
- $title .= '/' . $langcode;
- }
- $message = $this->getMsgFromNamespace( $title, $langcode );
- }
-
- # Try the array in the language object
- if ( $message === false ) {
- $message = $lang->getMessage( $lckey );
- if ( is_null( $message ) ) {
- $message = false;
- }
- }
+ // Loop through each language in the fallback list until we find something useful
+ $lang = wfGetLangObj( $langcode );
+ $message = $this->getMessageFromFallbackChain( $lang, $lckey, $uckey, !$this->mDisable && $useDB );
- # Try the array of another language
+ // If we still have no message, maybe the key was in fact a full key so try that
if ( $message === false ) {
$parts = explode( '/', $lckey );
- # We may get calls for things that are http-urls from sidebar
- # Let's not load nonexistent languages for those
- # They usually have more than one slash.
+ // We may get calls for things that are http-urls from sidebar
+ // Let's not load nonexistent languages for those
+ // They usually have more than one slash.
if ( count( $parts ) == 2 && $parts[1] !== '' ) {
$message = Language::getMessageFor( $parts[0], $parts[1] );
- if ( is_null( $message ) ) {
+ if ( $message === null ) {
$message = false;
}
}
}
- # Is this a custom message? Try the default language in the db...
- if ( ( $message === false || $message === '-' ) &&
- !$this->mDisable && $useDB &&
- !$isFullKey && ( $langcode != $wgLanguageCode )
- ) {
+ // Post-processing if the message exists
+ if( $message !== false ) {
+ // Fix whitespace
+ $message = str_replace(
+ array(
+ # Fix for trailing whitespace, removed by textarea
+ ' ',
+ # Fix for NBSP, converted to space by firefox
+ ' ',
+ ' ',
+ ),
+ array(
+ ' ',
+ "\xc2\xa0",
+ "\xc2\xa0"
+ ),
+ $message
+ );
+ }
+
+ return $message;
+ }
+
+ /**
+ * Given a language, try and fetch a message from that language, then the
+ * fallbacks of that language, then the site language, then the fallbacks for the
+ * site language.
+ *
+ * @param Language $lang Requested language
+ * @param string $lckey Lowercase key for the message
+ * @param string $uckey Uppercase key for the message
+ * @param bool $useDB Whether to use the database
+ *
+ * @see MessageCache::get
+ * @return string|bool The message, or false if not found
+ */
+ protected function getMessageFromFallbackChain( $lang, $lckey, $uckey, $useDB ) {
+ global $wgLanguageCode, $wgContLang;
+
+ $langcode = $lang->getCode();
+ $message = false;
+
+ // First try the requested language.
+ if ( $useDB ) {
+ if ( $langcode === $wgLanguageCode ) {
+ // Messages created in the content language will not have the /lang extension
+ $message = $this->getMsgFromNamespace( $uckey, $langcode );
+ } else {
+ $message = $this->getMsgFromNamespace( "$uckey/$langcode", $langcode );
+ }
+ }
+
+ if ( $message !== false ) {
+ return $message;
+ }
+
+ // Check the CDB cache
+ $message = $lang->getMessage( $lckey );
+ if ( $message !== null ) {
+ return $message;
+ }
+
+ list( $fallbackChain, $siteFallbackChain ) = Language::getFallbacksIncludingSiteLanguage( $langcode );
+
+ // Next try checking the database for all of the fallback languages of the requested language.
+ if ( $useDB ) {
+ foreach ( $fallbackChain as $code ) {
+ if ( $code === $wgLanguageCode ) {
+ // Messages created in the content language will not have the /lang extension
+ $message = $this->getMsgFromNamespace( $uckey, $code );
+ } else {
+ $message = $this->getMsgFromNamespace( "$uckey/$code", $code );
+ }
+
+ if ( $message !== false ) {
+ // Found the message.
+ return $message;
+ }
+ }
+ }
+
+ // Now try checking the site language.
+ if ( $useDB ) {
$message = $this->getMsgFromNamespace( $uckey, $wgLanguageCode );
+ if ( $message !== false ) {
+ return $message;
+ }
}
- # Final fallback
- if ( $message === false ) {
- return false;
+ $message = $wgContLang->getMessage( $lckey );
+ if ( $message !== null ) {
+ return $message;
}
- # Fix whitespace
- $message = strtr( $message,
- array(
- # Fix for trailing whitespace, removed by textarea
- ' ' => ' ',
- # Fix for NBSP, converted to space by firefox
- ' ' => "\xc2\xa0",
- ' ' => "\xc2\xa0",
- ) );
+ // Finally try the DB for the site language's fallbacks.
+ if ( $useDB ) {
+ foreach ( $siteFallbackChain as $code ) {
+ $message = $this->getMsgFromNamespace( "$uckey/$code", $code );
+ if ( $message === false && $code === $wgLanguageCode ) {
+ // Messages created in the content language will not have the /lang extension
+ $message = $this->getMsgFromNamespace( $uckey, $code );
+ }
- return $message;
+ if ( $message !== false ) {
+ // Found the message.
+ return $message;
+ }
+ }
+ }
+
+ return false;
}
/**
*
* @param string $title Message cache key with initial uppercase letter.
* @param string $code Code denoting the language to try.
- * @return string|bool False on failure
+ * @return string|bool The message, or false iff it does not exist or on error
*/
function getMsgFromNamespace( $title, $code ) {
$this->load( $code );
if ( isset( $this->mCache[$code][$title] ) ) {
$entry = $this->mCache[$code][$title];
if ( substr( $entry, 0, 1 ) === ' ' ) {
- return substr( $entry, 1 );
+ // The message exists, so make sure a string
+ // is returned.
+ return (string)substr( $entry, 1 );
} elseif ( $entry === '!NONEXISTENT' ) {
return false;
} elseif ( $entry === '!TOO BIG' ) {
if ( $entry ) {
if ( substr( $entry, 0, 1 ) === ' ' ) {
$this->mCache[$code][$title] = $entry;
- return substr( $entry, 1 );
+ // The message exists, so make sure a string
+ // is returned.
+ return (string)substr( $entry, 1 );
} elseif ( $entry === '!NONEXISTENT' ) {
$this->mCache[$code][$title] = '!NONEXISTENT';
return false;
*
* @param integer $userId
* @param string $ip
- * @since 1.21
+ * @since 1.22
*/
public function getUserName( $userId, $ip ) {
return $userId > 0 ? $this->getProp( $userId, 'name' ) : $ip;
* @since 1.21
*/
class RedisConnectionPool {
- // Settings for all connections in this pool
- protected $connectTimeout; // string; connection timeout
- protected $persistent; // bool; whether connections persist
- protected $password; // string; plaintext auth password
- protected $serializer; // integer; the serializer to use (Redis::SERIALIZER_*)
+ /**
+ * @name Pool settings.
+ * Settings there are shared for any connection made in this pool.
+ * See the singleton() method documentation for more details.
+ * @{
+ */
+ /** @var string Connection timeout in seconds */
+ protected $connectTimeout;
+ /** @var string Plaintext auth password */
+ protected $password;
+ /** @var bool Whether connections persist */
+ protected $persistent;
+ /** @var integer Serializer to use (Redis::SERIALIZER_*) */
+ protected $serializer;
+ /** @} */
- protected $idlePoolSize = 0; // integer; current idle pool size
+ /** @var integer Current idle pool size */
+ protected $idlePoolSize = 0;
/** @var Array (server name => ((connection info array),...) */
protected $connections = array();
/** @var Array (server name => UNIX timestamp) */
protected $downServers = array();
- /** @var Array */
- protected static $instances = array(); // (pool ID => RedisConnectionPool)
+ /** @var Array (pool ID => RedisConnectionPool) */
+ protected static $instances = array();
- const SERVER_DOWN_TTL = 30; // integer; seconds to cache servers as "down"
+ /** integer; seconds to cache servers as "down". */
+ const SERVER_DOWN_TTL = 30;
/**
* @param array $options
protected $mConn = null;
protected $mOpened = false;
- /** @var array of Closure */
+ /** @var callable[] */
protected $mTrxIdleCallbacks = array();
- /** @var array of Closure */
+ /** @var callable[] */
protected $mTrxPreCommitCallbacks = array();
protected $mTablePrefix;
$startOpts .= ' SQL_NO_CACHE';
}
- if ( isset( $options['USE INDEX'] ) && ! is_array( $options['USE INDEX'] ) ) {
+ if ( isset( $options['USE INDEX'] ) && is_string( $options['USE INDEX'] ) ) {
$useIndex = $this->useIndexClause( $options['USE INDEX'] );
} else {
$useIndex = '';
}
$options = (array)$options;
+ $useIndexes = ( isset( $options['USE INDEX'] ) && is_array( $options['USE INDEX'] ) )
+ ? $options['USE INDEX']
+ : array();
if ( is_array( $table ) ) {
- $useIndex = ( isset( $options['USE INDEX'] ) && is_array( $options['USE INDEX'] ) )
- ? $options['USE INDEX']
- : array();
- if ( count( $join_conds ) || count( $useIndex ) ) {
- $from = ' FROM ' .
- $this->tableNamesWithUseIndexOrJOIN( $table, $useIndex, $join_conds );
- } else {
- $from = ' FROM ' . implode( ',', $this->tableNamesWithAlias( $table ) );
- }
+ $from = ' FROM ' .
+ $this->tableNamesWithUseIndexOrJOIN( $table, $useIndexes, $join_conds );
} elseif ( $table != '' ) {
if ( $table[0] == ' ' ) {
$from = ' FROM ' . $table;
} else {
- $from = ' FROM ' . $this->tableName( $table );
+ $from = ' FROM ' .
+ $this->tableNamesWithUseIndexOrJOIN( array( $table ), $useIndexes, array() );
}
} else {
$from = '';
}
- list( $startOpts, $useIndex, $preLimitTail, $postLimitTail ) = $this->makeSelectOptions( $options );
+ list( $startOpts, $useIndex, $preLimitTail, $postLimitTail ) =
+ $this->makeSelectOptions( $options );
if ( !empty( $conds ) ) {
if ( is_array( $conds ) ) {
}
// We can't separate explicit JOIN clauses with ',', use ' ' for those
- $straightJoins = !empty( $ret ) ? implode( ',', $ret ) : "";
- $otherJoins = !empty( $retJOIN ) ? implode( ' ', $retJOIN ) : "";
+ $implicitJoins = !empty( $ret ) ? implode( ',', $ret ) : "";
+ $explicitJoins = !empty( $retJOIN ) ? implode( ' ', $retJOIN ) : "";
// Compile our final table clause
- return implode( ' ', array( $straightJoins, $otherJoins ) );
+ return implode( ' ', array( $implicitJoins, $explicitJoins ) );
}
/**
return $this->query( $sql, $fname );
}
+ /**
+ * INSERT ON DUPLICATE KEY UPDATE wrapper, upserts an array into a table.
+ *
+ * This updates any conflicting rows (according to the unique indexes) using
+ * the provided SET clause and inserts any remaining (non-conflicted) rows.
+ *
+ * $rows may be either:
+ * - A single associative array. The array keys are the field names, and
+ * the values are the values to insert. The values are treated as data
+ * and will be quoted appropriately. If NULL is inserted, this will be
+ * converted to a database NULL.
+ * - An array with numeric keys, holding a list of associative arrays.
+ * This causes a multi-row INSERT on DBMSs that support it. The keys in
+ * each subarray must be identical to each other, and in the same order.
+ *
+ * It may be more efficient to leave off unique indexes which are unlikely
+ * to collide. However if you do this, you run the risk of encountering
+ * errors which wouldn't have occurred in MySQL.
+ *
+ * Usually throws a DBQueryError on failure. If errors are explicitly ignored,
+ * returns success.
+ *
+ * @param string $table Table name. This will be passed through DatabaseBase::tableName().
+ * @param array $rows A single row or list of rows to insert
+ * @param array $uniqueIndexes List of single field names or field name tuples
+ * @param array $set An array of values to SET. For each array element,
+ * the key gives the field name, and the value gives the data
+ * to set that field to. The data will be quoted by
+ * DatabaseBase::addQuotes().
+ * @param string $fname Calling function name (use __METHOD__) for logs/profiling
+ * @param array $options of options
+ *
+ * @return bool
+ * @since 1.22
+ */
+ public function upsert(
+ $table, array $rows, array $uniqueIndexes, array $set, $fname = __METHOD__
+ ) {
+ if ( !count( $rows ) ) {
+ return true; // nothing to do
+ }
+ $rows = is_array( reset( $rows ) ) ? $rows : array( $rows );
+
+ if ( count( $uniqueIndexes ) ) {
+ $clauses = array(); // list WHERE clauses that each identify a single row
+ foreach ( $rows as $row ) {
+ foreach ( $uniqueIndexes as $index ) {
+ $index = is_array( $index ) ? $index : array( $index ); // columns
+ $rowKey = array(); // unique key to this row
+ foreach ( $index as $column ) {
+ $rowKey[$column] = $row[$column];
+ }
+ $clauses[] = $this->makeList( $rowKey, LIST_AND );
+ }
+ }
+ $where = array( $this->makeList( $clauses, LIST_OR ) );
+ } else {
+ $where = false;
+ }
+
+ $useTrx = !$this->mTrxLevel;
+ if ( $useTrx ) {
+ $this->begin( $fname );
+ }
+ try {
+ # Update any existing conflicting row(s)
+ if ( $where !== false ) {
+ $ok = $this->update( $table, $set, $where, $fname );
+ } else {
+ $ok = true;
+ }
+ # Now insert any non-conflicting row(s)
+ $ok = $this->insert( $table, $rows, $fname, array( 'IGNORE' ) ) && $ok;
+ } catch ( Exception $e ) {
+ if ( $useTrx ) {
+ $this->rollback( $fname );
+ }
+ throw $e;
+ }
+ if ( $useTrx ) {
+ $this->commit( $fname );
+ }
+
+ return $ok;
+ }
+
/**
* DELETE where the condition is a join.
*
$sql = "DELETE FROM $table";
if ( $conds != '*' ) {
- $sql .= ' WHERE ' . $this->makeList( $conds, LIST_AND );
+ if ( is_array( $conds ) ) {
+ $conds = $this->makeList( $conds, LIST_AND );
+ }
+ $sql .= ' WHERE ' . $conds;
}
return $this->query( $sql, $fname );
* after the database is updated so that the jobs will see the data when they actually run.
* It can also be used for updates that easily cause deadlocks if locks are held too long.
*
- * @param Closure $callback
+ * @param callable $callback
* @since 1.20
*/
- final public function onTransactionIdle( Closure $callback ) {
+ final public function onTransactionIdle( $callback ) {
$this->mTrxIdleCallbacks[] = $callback;
if ( !$this->mTrxLevel ) {
$this->runOnTransactionIdleCallbacks();
* This is useful for updates that easily cause deadlocks if locks are held too long
* but where atomicity is strongly desired for these updates and some related updates.
*
- * @param Closure $callback
+ * @param callable $callback
* @since 1.22
*/
- final public function onTransactionPreCommitOrIdle( Closure $callback ) {
+ final public function onTransactionPreCommitOrIdle( $callback ) {
if ( $this->mTrxLevel ) {
$this->mTrxPreCommitCallbacks[] = $callback;
} else {
*/
/**
- * Database abstraction object for mySQL
- * Inherit all methods and properties of Database::Database()
+ * Database abstraction object for PHP extension mysql.
*
* @ingroup Database
* @see Database
*/
-class DatabaseMysql extends DatabaseBase {
-
- /**
- * @return string
- */
- function getType() {
- return 'mysql';
- }
+class DatabaseMysql extends DatabaseMysqlBase {
/**
* @param $sql string
return $ret;
}
- /**
- * @param $server string
- * @param $user string
- * @param $password string
- * @param $dbName string
- * @return bool
- * @throws DBConnectionError
- */
- function open( $server, $user, $password, $dbName ) {
- global $wgAllDBsAreLocalhost, $wgDBmysql5, $wgSQLMode;
- wfProfileIn( __METHOD__ );
-
+ protected function mysqlConnect( $realServer ) {
# Load mysql.so if we don't have it
wfDl( 'mysql' );
# Fail now
# Otherwise we get a suppressed fatal error, which is very hard to track down
if ( !function_exists( 'mysql_connect' ) ) {
- wfProfileOut( __METHOD__ );
throw new DBConnectionError( $this, "MySQL functions missing, have you compiled PHP with the --with-mysql option?\n" );
}
- # Debugging hack -- fake cluster
- if ( $wgAllDBsAreLocalhost ) {
- $realServer = 'localhost';
- } else {
- $realServer = $server;
- }
- $this->close();
- $this->mServer = $server;
- $this->mUser = $user;
- $this->mPassword = $password;
- $this->mDBname = $dbName;
-
$connFlags = 0;
if ( $this->mFlags & DBO_SSL ) {
$connFlags |= MYSQL_CLIENT_SSL;
$connFlags |= MYSQL_CLIENT_COMPRESS;
}
- wfProfileIn( "dbconnect-$server" );
-
- # The kernel's default SYN retransmission period is far too slow for us,
- # so we use a short timeout plus a manual retry. Retrying means that a small
- # but finite rate of SYN packet loss won't cause user-visible errors.
- $this->mConn = false;
if ( ini_get( 'mysql.connect_timeout' ) <= 3 ) {
$numAttempts = 2;
} else {
$numAttempts = 1;
}
- $this->installErrorHandler();
- for ( $i = 0; $i < $numAttempts && !$this->mConn; $i++ ) {
+
+ $conn = false;
+
+ for ( $i = 0; $i < $numAttempts && !$conn; $i++ ) {
if ( $i > 1 ) {
usleep( 1000 );
}
if ( $this->mFlags & DBO_PERSISTENT ) {
- $this->mConn = mysql_pconnect( $realServer, $user, $password, $connFlags );
+ $conn = mysql_pconnect( $realServer, $this->mUser, $this->mPassword, $connFlags );
} else {
# Create a new connection...
- $this->mConn = mysql_connect( $realServer, $user, $password, true, $connFlags );
- }
- #if ( $this->mConn === false ) {
- #$iplus = $i + 1;
- #wfLogDBError("Connect loop error $iplus of $max ($server): " . mysql_errno() . " - " . mysql_error()."\n");
- #}
- }
- $error = $this->restoreErrorHandler();
-
- wfProfileOut( "dbconnect-$server" );
-
- # Always log connection errors
- if ( !$this->mConn ) {
- if ( !$error ) {
- $error = $this->lastError();
- }
- wfLogDBError( "Error connecting to {$this->mServer}: $error\n" );
- wfDebug( "DB connection error\n" .
- "Server: $server, User: $user, Password: " .
- substr( $password, 0, 3 ) . "..., error: " . $error . "\n" );
-
- wfProfileOut( __METHOD__ );
- return $this->reportConnectionError( $error );
- }
-
- if ( $dbName != '' ) {
- wfSuppressWarnings();
- $success = mysql_select_db( $dbName, $this->mConn );
- wfRestoreWarnings();
- if ( !$success ) {
- wfLogDBError( "Error selecting database $dbName on server {$this->mServer}\n" );
- wfDebug( "Error selecting database $dbName on server {$this->mServer} " .
- "from client host " . wfHostname() . "\n" );
-
- wfProfileOut( __METHOD__ );
- return $this->reportConnectionError( "Error selecting database $dbName" );
+ $conn = mysql_connect( $realServer, $this->mUser, $this->mPassword, true, $connFlags );
}
}
- // Tell the server we're communicating with it in UTF-8.
- // This may engage various charset conversions.
- if ( $wgDBmysql5 ) {
- $this->query( 'SET NAMES utf8', __METHOD__ );
- } else {
- $this->query( 'SET NAMES binary', __METHOD__ );
- }
- // Set SQL mode, default is turning them all off, can be overridden or skipped with null
- if ( is_string( $wgSQLMode ) ) {
- $mode = $this->addQuotes( $wgSQLMode );
- $this->query( "SET sql_mode = $mode", __METHOD__ );
- }
-
- $this->mOpened = true;
- wfProfileOut( __METHOD__ );
- return true;
+ return $conn;
}
/**
return mysql_close( $this->mConn );
}
- /**
- * @param $res ResultWrapper
- * @throws DBUnexpectedError
- */
- function freeResult( $res ) {
- if ( $res instanceof ResultWrapper ) {
- $res = $res->result;
- }
- wfSuppressWarnings();
- $ok = mysql_free_result( $res );
- wfRestoreWarnings();
- if ( !$ok ) {
- throw new DBUnexpectedError( $this, "Unable to free MySQL result" );
- }
- }
-
- /**
- * @param $res ResultWrapper
- * @return object|bool
- * @throws DBUnexpectedError
- */
- function fetchObject( $res ) {
- if ( $res instanceof ResultWrapper ) {
- $res = $res->result;
- }
- wfSuppressWarnings();
- $row = mysql_fetch_object( $res );
- wfRestoreWarnings();
-
- $errno = $this->lastErrno();
- // Unfortunately, mysql_fetch_object does not reset the last errno.
- // Only check for CR_SERVER_LOST and CR_UNKNOWN_ERROR, as
- // these are the only errors mysql_fetch_object can cause.
- // See http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html.
- if ( $errno == 2000 || $errno == 2013 ) {
- throw new DBUnexpectedError( $this, 'Error in fetchObject(): ' . htmlspecialchars( $this->lastError() ) );
- }
- return $row;
- }
-
- /**
- * @param $res ResultWrapper
- * @return array|bool
- * @throws DBUnexpectedError
- */
- function fetchRow( $res ) {
- if ( $res instanceof ResultWrapper ) {
- $res = $res->result;
- }
- wfSuppressWarnings();
- $row = mysql_fetch_array( $res );
- wfRestoreWarnings();
-
- $errno = $this->lastErrno();
- // Unfortunately, mysql_fetch_array does not reset the last errno.
- // Only check for CR_SERVER_LOST and CR_UNKNOWN_ERROR, as
- // these are the only errors mysql_fetch_object can cause.
- // See http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html.
- if ( $errno == 2000 || $errno == 2013 ) {
- throw new DBUnexpectedError( $this, 'Error in fetchRow(): ' . htmlspecialchars( $this->lastError() ) );
- }
- return $row;
- }
-
- /**
- * @throws DBUnexpectedError
- * @param $res ResultWrapper
- * @return int
- */
- function numRows( $res ) {
- if ( $res instanceof ResultWrapper ) {
- $res = $res->result;
- }
- wfSuppressWarnings();
- $n = mysql_num_rows( $res );
- wfRestoreWarnings();
- // Unfortunately, mysql_num_rows does not reset the last errno.
- // We are not checking for any errors here, since
- // these are no errors mysql_num_rows can cause.
- // See http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html.
- // See https://bugzilla.wikimedia.org/42430
- return $n;
- }
-
- /**
- * @param $res ResultWrapper
- * @return int
- */
- function numFields( $res ) {
- if ( $res instanceof ResultWrapper ) {
- $res = $res->result;
- }
- return mysql_num_fields( $res );
- }
-
- /**
- * @param $res ResultWrapper
- * @param $n string
- * @return string
- */
- function fieldName( $res, $n ) {
- if ( $res instanceof ResultWrapper ) {
- $res = $res->result;
- }
- return mysql_field_name( $res, $n );
- }
-
/**
* @return int
*/
return mysql_insert_id( $this->mConn );
}
- /**
- * @param $res ResultWrapper
- * @param $row
- * @return bool
- */
- function dataSeek( $res, $row ) {
- if ( $res instanceof ResultWrapper ) {
- $res = $res->result;
- }
- return mysql_data_seek( $res, $row );
- }
-
/**
* @return int
*/
}
}
- /**
- * @return string
- */
- function lastError() {
- if ( $this->mConn ) {
- # Even if it's non-zero, it can still be invalid
- wfSuppressWarnings();
- $error = mysql_error( $this->mConn );
- if ( !$error ) {
- $error = mysql_error();
- }
- wfRestoreWarnings();
- } else {
- $error = mysql_error();
- }
- if ( $error ) {
- $error .= ' (' . $this->mServer . ')';
- }
- return $error;
- }
-
/**
* @return int
*/
return mysql_affected_rows( $this->mConn );
}
- /**
- * @param $table string
- * @param $uniqueIndexes
- * @param $rows array
- * @param $fname string
- * @return ResultWrapper
- */
- function replace( $table, $uniqueIndexes, $rows, $fname = __METHOD__ ) {
- return $this->nativeReplace( $table, $rows, $fname );
- }
-
- /**
- * Estimate rows in dataset
- * Returns estimated count, based on EXPLAIN output
- * Takes same arguments as Database::select()
- *
- * @param $table string|array
- * @param $vars string|array
- * @param $conds string|array
- * @param $fname string
- * @param $options string|array
- * @return int
- */
- public function estimateRowCount( $table, $vars = '*', $conds = '', $fname = __METHOD__, $options = array() ) {
- $options['EXPLAIN'] = true;
- $res = $this->select( $table, $vars, $conds, $fname, $options );
- if ( $res === false ) {
- return false;
- }
- if ( !$this->numRows( $res ) ) {
- return 0;
- }
-
- $rows = 1;
- foreach ( $res as $plan ) {
- $rows *= $plan->rows > 0 ? $plan->rows : 1; // avoid resetting to zero
- }
- return $rows;
- }
-
- /**
- * @param $table string
- * @param $field string
- * @return bool|MySQLField
- */
- function fieldInfo( $table, $field ) {
- $table = $this->tableName( $table );
- $res = $this->query( "SELECT * FROM $table LIMIT 1", __METHOD__, true );
- if ( !$res ) {
- return false;
- }
- $n = mysql_num_fields( $res->result );
- for ( $i = 0; $i < $n; $i++ ) {
- $meta = mysql_fetch_field( $res->result, $i );
- if ( $field == $meta->name ) {
- return new MySQLField( $meta );
- }
- }
- return false;
- }
-
- /**
- * Get information about an index into an object
- * Returns false if the index does not exist
- *
- * @param $table string
- * @param $index string
- * @param $fname string
- * @return bool|array|null False or null on failure
- */
- function indexInfo( $table, $index, $fname = __METHOD__ ) {
- # SHOW INDEX works in MySQL 3.23.58, but SHOW INDEXES does not.
- # SHOW INDEX should work for 3.x and up:
- # http://dev.mysql.com/doc/mysql/en/SHOW_INDEX.html
- $table = $this->tableName( $table );
- $index = $this->indexName( $index );
-
- $sql = 'SHOW INDEX FROM ' . $table;
- $res = $this->query( $sql, $fname );
-
- if ( !$res ) {
- return null;
- }
-
- $result = array();
-
- foreach ( $res as $row ) {
- if ( $row->Key_name == $index ) {
- $result[] = $row;
- }
- }
- return empty( $result ) ? false : $result;
- }
-
/**
* @param $db
* @return bool
return mysql_select_db( $db, $this->mConn );
}
- /**
- * @param $s string
- *
- * @return string
- */
- function strencode( $s ) {
- $sQuoted = mysql_real_escape_string( $s, $this->mConn );
-
- if ( $sQuoted === false ) {
- $this->ping();
- $sQuoted = mysql_real_escape_string( $s, $this->mConn );
- }
- return $sQuoted;
- }
-
- /**
- * MySQL uses `backticks` for identifier quoting instead of the sql standard "double quotes".
- *
- * @param $s string
- *
- * @return string
- */
- public function addIdentifierQuotes( $s ) {
- return "`" . $this->strencode( $s ) . "`";
- }
-
- /**
- * @param $name string
- * @return bool
- */
- public function isQuotedIdentifier( $name ) {
- return strlen( $name ) && $name[0] == '`' && substr( $name, -1, 1 ) == '`';
- }
-
- /**
- * @return bool
- */
- function ping() {
- $ping = mysql_ping( $this->mConn );
- if ( $ping ) {
- return true;
- }
-
- mysql_close( $this->mConn );
- $this->mOpened = false;
- $this->mConn = false;
- $this->open( $this->mServer, $this->mUser, $this->mPassword, $this->mDBname );
- return true;
- }
-
- /**
- * Returns slave lag.
- *
- * This will do a SHOW SLAVE STATUS
- *
- * @return int
- */
- function getLag() {
- if ( !is_null( $this->mFakeSlaveLag ) ) {
- wfDebug( "getLag: fake slave lagged {$this->mFakeSlaveLag} seconds\n" );
- return $this->mFakeSlaveLag;
- }
-
- return $this->getLagFromSlaveStatus();
- }
-
- /**
- * @return bool|int
- */
- function getLagFromSlaveStatus() {
- $res = $this->query( 'SHOW SLAVE STATUS', __METHOD__ );
- if ( !$res ) {
- return false;
- }
- $row = $res->fetchObject();
- if ( !$row ) {
- return false;
- }
- if ( strval( $row->Seconds_Behind_Master ) === '' ) {
- return false;
- } else {
- return intval( $row->Seconds_Behind_Master );
- }
- }
-
- /**
- * @deprecated in 1.19, use getLagFromSlaveStatus
- *
- * @return bool|int
- */
- function getLagFromProcesslist() {
- wfDeprecated( __METHOD__, '1.19' );
- $res = $this->query( 'SHOW PROCESSLIST', __METHOD__ );
- if ( !$res ) {
- return false;
- }
- # Find slave SQL thread
- foreach ( $res as $row ) {
- /* This should work for most situations - when default db
- * for thread is not specified, it had no events executed,
- * and therefore it doesn't know yet how lagged it is.
- *
- * Relay log I/O thread does not select databases.
- */
- if ( $row->User == 'system user' &&
- $row->State != 'Waiting for master to send event' &&
- $row->State != 'Connecting to master' &&
- $row->State != 'Queueing master event to the relay log' &&
- $row->State != 'Waiting for master update' &&
- $row->State != 'Requesting binlog dump' &&
- $row->State != 'Waiting to reconnect after a failed master event read' &&
- $row->State != 'Reconnecting after a failed master event read' &&
- $row->State != 'Registering slave on master'
- ) {
- # This is it, return the time (except -ve)
- if ( $row->Time > 0x7fffffff ) {
- return false;
- } else {
- return $row->Time;
- }
- }
- }
- return false;
- }
-
- /**
- * Wait for the slave to catch up to a given master position.
- *
- * @param $pos DBMasterPos object
- * @param $timeout Integer: the maximum number of seconds to wait for synchronisation
- * @return bool|string
- */
- function masterPosWait( DBMasterPos $pos, $timeout ) {
- $fname = __METHOD__;
- wfProfileIn( $fname );
-
- # Commit any open transactions
- if ( $this->mTrxLevel ) {
- $this->commit( $fname );
- }
-
- if ( !is_null( $this->mFakeSlaveLag ) ) {
- $status = parent::masterPosWait( $pos, $timeout );
- wfProfileOut( $fname );
- return $status;
- }
-
- # Call doQuery() directly, to avoid opening a transaction if DBO_TRX is set
- $encFile = $this->addQuotes( $pos->file );
- $encPos = intval( $pos->pos );
- $sql = "SELECT MASTER_POS_WAIT($encFile, $encPos, $timeout)";
- $res = $this->doQuery( $sql );
-
- if ( $res && $row = $this->fetchRow( $res ) ) {
- wfProfileOut( $fname );
- return $row[0];
- }
- wfProfileOut( $fname );
- return false;
- }
-
- /**
- * Get the position of the master from SHOW SLAVE STATUS
- *
- * @return MySQLMasterPos|bool
- */
- function getSlavePos() {
- if ( !is_null( $this->mFakeSlaveLag ) ) {
- return parent::getSlavePos();
- }
-
- $res = $this->query( 'SHOW SLAVE STATUS', 'DatabaseBase::getSlavePos' );
- $row = $this->fetchObject( $res );
-
- if ( $row ) {
- $pos = isset( $row->Exec_master_log_pos ) ? $row->Exec_master_log_pos : $row->Exec_Master_Log_Pos;
- return new MySQLMasterPos( $row->Relay_Master_Log_File, $pos );
- } else {
- return false;
- }
- }
-
- /**
- * Get the position of the master from SHOW MASTER STATUS
- *
- * @return MySQLMasterPos|bool
- */
- function getMasterPos() {
- if ( $this->mFakeMaster ) {
- return parent::getMasterPos();
- }
-
- $res = $this->query( 'SHOW MASTER STATUS', 'DatabaseBase::getMasterPos' );
- $row = $this->fetchObject( $res );
-
- if ( $row ) {
- return new MySQLMasterPos( $row->File, $row->Position );
- } else {
- return false;
- }
- }
-
/**
* @return string
*/
return mysql_get_server_info( $this->mConn );
}
- /**
- * @param $index
- * @return string
- */
- function useIndexClause( $index ) {
- return "FORCE INDEX (" . $this->indexName( $index ) . ")";
- }
-
- /**
- * @return string
- */
- function lowPriorityOption() {
- return 'LOW_PRIORITY';
+ protected function mysqlFreeResult( $res ) {
+ return mysql_free_result( $res );
}
- /**
- * @return string
- */
- public function getSoftwareLink() {
- return '[http://www.mysql.com/ MySQL]';
- }
-
- /**
- * @param $options array
- */
- public function setSessionOptions( array $options ) {
- if ( isset( $options['connTimeout'] ) ) {
- $timeout = (int)$options['connTimeout'];
- $this->query( "SET net_read_timeout=$timeout" );
- $this->query( "SET net_write_timeout=$timeout" );
- }
+ protected function mysqlFetchObject( $res ) {
+ return mysql_fetch_object( $res );
}
- public function streamStatementEnd( &$sql, &$newLine ) {
- if ( strtoupper( substr( $newLine, 0, 9 ) ) == 'DELIMITER' ) {
- preg_match( '/^DELIMITER\s+(\S+)/', $newLine, $m );
- $this->delimiter = $m[1];
- $newLine = '';
- }
- return parent::streamStatementEnd( $sql, $newLine );
+ protected function mysqlFetchArray( $res ) {
+ return mysql_fetch_array( $res );
}
- /**
- * Check to see if a named lock is available. This is non-blocking.
- *
- * @param string $lockName name of lock to poll
- * @param string $method name of method calling us
- * @return Boolean
- * @since 1.20
- */
- public function lockIsFree( $lockName, $method ) {
- $lockName = $this->addQuotes( $lockName );
- $result = $this->query( "SELECT IS_FREE_LOCK($lockName) AS lockstatus", $method );
- $row = $this->fetchObject( $result );
- return ( $row->lockstatus == 1 );
+ protected function mysqlNumRows( $res ) {
+ return mysql_num_rows( $res );
}
- /**
- * @param $lockName string
- * @param $method string
- * @param $timeout int
- * @return bool
- */
- public function lock( $lockName, $method, $timeout = 5 ) {
- $lockName = $this->addQuotes( $lockName );
- $result = $this->query( "SELECT GET_LOCK($lockName, $timeout) AS lockstatus", $method );
- $row = $this->fetchObject( $result );
-
- if ( $row->lockstatus == 1 ) {
- return true;
- } else {
- wfDebug( __METHOD__ . " failed to acquire lock\n" );
- return false;
- }
- }
-
- /**
- * FROM MYSQL DOCS: http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_release-lock
- * @param $lockName string
- * @param $method string
- * @return bool
- */
- public function unlock( $lockName, $method ) {
- $lockName = $this->addQuotes( $lockName );
- $result = $this->query( "SELECT RELEASE_LOCK($lockName) as lockstatus", $method );
- $row = $this->fetchObject( $result );
- return ( $row->lockstatus == 1 );
- }
-
- /**
- * @param $read array
- * @param $write array
- * @param $method string
- * @param $lowPriority bool
- * @return bool
- */
- public function lockTables( $read, $write, $method, $lowPriority = true ) {
- $items = array();
-
- foreach ( $write as $table ) {
- $tbl = $this->tableName( $table ) .
- ( $lowPriority ? ' LOW_PRIORITY' : '' ) .
- ' WRITE';
- $items[] = $tbl;
- }
- foreach ( $read as $table ) {
- $items[] = $this->tableName( $table ) . ' READ';
- }
- $sql = "LOCK TABLES " . implode( ',', $items );
- $this->query( $sql, $method );
- return true;
- }
-
- /**
- * @param $method string
- * @return bool
- */
- public function unlockTables( $method ) {
- $this->query( "UNLOCK TABLES", $method );
- return true;
- }
-
- /**
- * Get search engine class. All subclasses of this
- * need to implement this if they wish to use searching.
- *
- * @return String
- */
- public function getSearchEngine() {
- return 'SearchMySQL';
- }
-
- /**
- * @param bool $value
- * @return mixed
- */
- public function setBigSelects( $value = true ) {
- if ( $value === 'default' ) {
- if ( $this->mDefaultBigSelects === null ) {
- # Function hasn't been called before so it must already be set to the default
- return;
- } else {
- $value = $this->mDefaultBigSelects;
- }
- } elseif ( $this->mDefaultBigSelects === null ) {
- $this->mDefaultBigSelects = (bool)$this->selectField( false, '@@sql_big_selects' );
- }
- $encValue = $value ? '1' : '0';
- $this->query( "SET sql_big_selects=$encValue", __METHOD__ );
- }
-
- /**
- * DELETE where the condition is a join. MySql uses multi-table deletes.
- * @param $delTable string
- * @param $joinTable string
- * @param $delVar string
- * @param $joinVar string
- * @param $conds array|string
- * @param bool|string $fname bool
- * @throws DBUnexpectedError
- * @return bool|ResultWrapper
- */
- function deleteJoin( $delTable, $joinTable, $delVar, $joinVar, $conds, $fname = __METHOD__ ) {
- if ( !$conds ) {
- throw new DBUnexpectedError( $this, 'DatabaseBase::deleteJoin() called with empty $conds' );
- }
-
- $delTable = $this->tableName( $delTable );
- $joinTable = $this->tableName( $joinTable );
- $sql = "DELETE $delTable FROM $delTable, $joinTable WHERE $delVar=$joinVar ";
-
- if ( $conds != '*' ) {
- $sql .= ' AND ' . $this->makeList( $conds, LIST_AND );
- }
-
- return $this->query( $sql, $fname );
- }
-
- /**
- * Determines how long the server has been up
- *
- * @return int
- */
- function getServerUptime() {
- $vars = $this->getMysqlStatus( 'Uptime' );
- return (int)$vars['Uptime'];
- }
-
- /**
- * Determines if the last failure was due to a deadlock
- *
- * @return bool
- */
- function wasDeadlock() {
- return $this->lastErrno() == 1213;
- }
-
- /**
- * Determines if the last failure was due to a lock timeout
- *
- * @return bool
- */
- function wasLockTimeout() {
- return $this->lastErrno() == 1205;
- }
-
- /**
- * Determines if the last query error was something that should be dealt
- * with by pinging the connection and reissuing the query
- *
- * @return bool
- */
- function wasErrorReissuable() {
- return $this->lastErrno() == 2013 || $this->lastErrno() == 2006;
- }
-
- /**
- * Determines if the last failure was due to the database being read-only.
- *
- * @return bool
- */
- function wasReadOnlyError() {
- return $this->lastErrno() == 1223 ||
- ( $this->lastErrno() == 1290 && strpos( $this->lastError(), '--read-only' ) !== false );
- }
-
- /**
- * @param $oldName
- * @param $newName
- * @param $temporary bool
- * @param $fname string
- */
- function duplicateTableStructure( $oldName, $newName, $temporary = false, $fname = __METHOD__ ) {
- $tmp = $temporary ? 'TEMPORARY ' : '';
- $newName = $this->addIdentifierQuotes( $newName );
- $oldName = $this->addIdentifierQuotes( $oldName );
- $query = "CREATE $tmp TABLE $newName (LIKE $oldName)";
- $this->query( $query, $fname );
- }
-
- /**
- * List all tables on the database
- *
- * @param string $prefix Only show tables with this prefix, e.g. mw_
- * @param string $fname calling function name
- * @return array
- */
- function listTables( $prefix = null, $fname = __METHOD__ ) {
- $result = $this->query( "SHOW TABLES", $fname );
-
- $endArray = array();
-
- foreach ( $result as $table ) {
- $vars = get_object_vars( $table );
- $table = array_pop( $vars );
-
- if ( !$prefix || strpos( $table, $prefix ) === 0 ) {
- $endArray[] = $table;
- }
- }
-
- return $endArray;
- }
-
- /**
- * @param $tableName
- * @param $fName string
- * @return bool|ResultWrapper
- */
- public function dropTable( $tableName, $fName = __METHOD__ ) {
- if ( !$this->tableExists( $tableName, $fName ) ) {
- return false;
- }
- return $this->query( "DROP TABLE IF EXISTS " . $this->tableName( $tableName ), $fName );
- }
-
- /**
- * @return array
- */
- protected function getDefaultSchemaVars() {
- $vars = parent::getDefaultSchemaVars();
- $vars['wgDBTableOptions'] = str_replace( 'TYPE', 'ENGINE', $GLOBALS['wgDBTableOptions'] );
- $vars['wgDBTableOptions'] = str_replace( 'CHARSET=mysql4', 'CHARSET=binary', $vars['wgDBTableOptions'] );
- return $vars;
- }
-
- /**
- * Get status information from SHOW STATUS in an associative array
- *
- * @param $which string
- * @return array
- */
- function getMysqlStatus( $which = "%" ) {
- $res = $this->query( "SHOW STATUS LIKE '{$which}'" );
- $status = array();
-
- foreach ( $res as $row ) {
- $status[$row->Variable_name] = $row->Value;
- }
-
- return $status;
- }
-
-}
-
-/**
- * Utility class.
- * @ingroup Database
- */
-class MySQLField implements Field {
- private $name, $tablename, $default, $max_length, $nullable,
- $is_pk, $is_unique, $is_multiple, $is_key, $type;
-
- function __construct( $info ) {
- $this->name = $info->name;
- $this->tablename = $info->table;
- $this->default = $info->def;
- $this->max_length = $info->max_length;
- $this->nullable = !$info->not_null;
- $this->is_pk = $info->primary_key;
- $this->is_unique = $info->unique_key;
- $this->is_multiple = $info->multiple_key;
- $this->is_key = ( $this->is_pk || $this->is_unique || $this->is_multiple );
- $this->type = $info->type;
- }
-
- /**
- * @return string
- */
- function name() {
- return $this->name;
- }
-
- /**
- * @return string
- */
- function tableName() {
- return $this->tableName;
- }
-
- /**
- * @return string
- */
- function type() {
- return $this->type;
+ protected function mysqlNumFields( $res ) {
+ return mysql_num_fields( $res );
}
- /**
- * @return bool
- */
- function isNullable() {
- return $this->nullable;
+ protected function mysqlFetchField( $res, $n ) {
+ return mysql_fetch_field( $res, $n );
}
- function defaultValue() {
- return $this->default;
+ protected function mysqlFieldName( $res, $n ) {
+ return mysql_field_name( $res, $n );
}
- /**
- * @return bool
- */
- function isKey() {
- return $this->is_key;
+ protected function mysqlDataSeek( $res, $row ) {
+ return mysql_data_seek( $res, $row );
}
- /**
- * @return bool
- */
- function isMultipleKey() {
- return $this->is_multiple;
+ protected function mysqlError( $conn = null ) {
+ return ( $conn !== null ) ? mysql_error( $conn ) : mysql_error(); // avoid warning
}
-}
-
-class MySQLMasterPos implements DBMasterPos {
- var $file, $pos;
- function __construct( $file, $pos ) {
- $this->file = $file;
- $this->pos = $pos;
+ protected function mysqlRealEscapeString( $s ) {
+ return mysql_real_escape_string( $s, $this->mConn );
}
- function __toString() {
- return "{$this->file}/{$this->pos}";
+ protected function mysqlPing() {
+ return mysql_ping( $this->mConn );
}
}
--- /dev/null
+<?php
+/**
+ * This is the MySQL database abstraction layer.
+ *
+ * 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 Database
+ */
+
+/**
+ * Database abstraction object for MySQL.
+ * Defines methods independent on used MySQL extension.
+ *
+ * @ingroup Database
+ * @since 1.22
+ * @see Database
+ */
+abstract class DatabaseMysqlBase extends DatabaseBase {
+ /** @var MysqlMasterPos */
+ protected $lastKnownSlavePos;
+
+ /**
+ * @return string
+ */
+ function getType() {
+ return 'mysql';
+ }
+
+ /**
+ * @param $server string
+ * @param $user string
+ * @param $password string
+ * @param $dbName string
+ * @return bool
+ * @throws DBConnectionError
+ */
+ function open( $server, $user, $password, $dbName ) {
+ global $wgAllDBsAreLocalhost, $wgDBmysql5, $wgSQLMode;
+ wfProfileIn( __METHOD__ );
+
+ # Debugging hack -- fake cluster
+ if ( $wgAllDBsAreLocalhost ) {
+ $realServer = 'localhost';
+ } else {
+ $realServer = $server;
+ }
+ $this->close();
+ $this->mServer = $server;
+ $this->mUser = $user;
+ $this->mPassword = $password;
+ $this->mDBname = $dbName;
+
+ wfProfileIn( "dbconnect-$server" );
+
+ # The kernel's default SYN retransmission period is far too slow for us,
+ # so we use a short timeout plus a manual retry. Retrying means that a small
+ # but finite rate of SYN packet loss won't cause user-visible errors.
+ $this->mConn = false;
+ $this->installErrorHandler();
+ try {
+ $this->mConn = $this->mysqlConnect( $realServer );
+ } catch (Exception $ex) {
+ wfProfileOut( "dbconnect-$server" );
+ wfProfileOut( __METHOD__ );
+ throw $ex;
+ }
+ $error = $this->restoreErrorHandler();
+
+ wfProfileOut( "dbconnect-$server" );
+
+ # Always log connection errors
+ if ( !$this->mConn ) {
+ if ( !$error ) {
+ $error = $this->lastError();
+ }
+ wfLogDBError( "Error connecting to {$this->mServer}: $error\n" );
+ wfDebug( "DB connection error\n" .
+ "Server: $server, User: $user, Password: " .
+ substr( $password, 0, 3 ) . "..., error: " . $error . "\n" );
+
+ wfProfileOut( __METHOD__ );
+ return $this->reportConnectionError( $error );
+ }
+
+ if ( $dbName != '' ) {
+ wfSuppressWarnings();
+ $success = $this->selectDB( $dbName );
+ wfRestoreWarnings();
+ if ( !$success ) {
+ wfLogDBError( "Error selecting database $dbName on server {$this->mServer}\n" );
+ wfDebug( "Error selecting database $dbName on server {$this->mServer} " .
+ "from client host " . wfHostname() . "\n" );
+
+ wfProfileOut( __METHOD__ );
+ return $this->reportConnectionError( "Error selecting database $dbName" );
+ }
+ }
+
+ // Tell the server we're communicating with it in UTF-8.
+ // This may engage various charset conversions.
+ if ( $wgDBmysql5 ) {
+ $this->query( 'SET NAMES utf8', __METHOD__ );
+ } else {
+ $this->query( 'SET NAMES binary', __METHOD__ );
+ }
+ // Set SQL mode, default is turning them all off, can be overridden or skipped with null
+ if ( is_string( $wgSQLMode ) ) {
+ $mode = $this->addQuotes( $wgSQLMode );
+ $this->query( "SET sql_mode = $mode", __METHOD__ );
+ }
+
+ $this->mOpened = true;
+ wfProfileOut( __METHOD__ );
+ return true;
+ }
+
+ /**
+ * Open a connection to a MySQL server
+ *
+ * @param $realServer string
+ * @return mixed Raw connection
+ * @throws DBConnectionError
+ */
+ abstract protected function mysqlConnect( $realServer );
+
+ /**
+ * @param $res ResultWrapper
+ * @throws DBUnexpectedError
+ */
+ function freeResult( $res ) {
+ if ( $res instanceof ResultWrapper ) {
+ $res = $res->result;
+ }
+ wfSuppressWarnings();
+ $ok = $this->mysqlFreeResult( $res );
+ wfRestoreWarnings();
+ if ( !$ok ) {
+ throw new DBUnexpectedError( $this, "Unable to free MySQL result" );
+ }
+ }
+
+ /**
+ * Free result memory
+ *
+ * @param $res Raw result
+ * @return bool
+ */
+ abstract protected function mysqlFreeResult( $res );
+
+ /**
+ * @param $res ResultWrapper
+ * @return object|bool
+ * @throws DBUnexpectedError
+ */
+ function fetchObject( $res ) {
+ if ( $res instanceof ResultWrapper ) {
+ $res = $res->result;
+ }
+ wfSuppressWarnings();
+ $row = $this->mysqlFetchObject( $res );
+ wfRestoreWarnings();
+
+ $errno = $this->lastErrno();
+ // Unfortunately, mysql_fetch_object does not reset the last errno.
+ // Only check for CR_SERVER_LOST and CR_UNKNOWN_ERROR, as
+ // these are the only errors mysql_fetch_object can cause.
+ // See http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html.
+ if ( $errno == 2000 || $errno == 2013 ) {
+ throw new DBUnexpectedError( $this, 'Error in fetchObject(): ' . htmlspecialchars( $this->lastError() ) );
+ }
+ return $row;
+ }
+
+ /**
+ * Fetch a result row as an object
+ *
+ * @param $res Raw result
+ * @return stdClass
+ */
+ abstract protected function mysqlFetchObject( $res );
+
+ /**
+ * @param $res ResultWrapper
+ * @return array|bool
+ * @throws DBUnexpectedError
+ */
+ function fetchRow( $res ) {
+ if ( $res instanceof ResultWrapper ) {
+ $res = $res->result;
+ }
+ wfSuppressWarnings();
+ $row = $this->mysqlFetchArray( $res );
+ wfRestoreWarnings();
+
+ $errno = $this->lastErrno();
+ // Unfortunately, mysql_fetch_array does not reset the last errno.
+ // Only check for CR_SERVER_LOST and CR_UNKNOWN_ERROR, as
+ // these are the only errors mysql_fetch_array can cause.
+ // See http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html.
+ if ( $errno == 2000 || $errno == 2013 ) {
+ throw new DBUnexpectedError( $this, 'Error in fetchRow(): ' . htmlspecialchars( $this->lastError() ) );
+ }
+ return $row;
+ }
+
+ /**
+ * Fetch a result row as an associative and numeric array
+ *
+ * @param $res Raw result
+ * @return array
+ */
+ abstract protected function mysqlFetchArray( $res );
+
+ /**
+ * @throws DBUnexpectedError
+ * @param $res ResultWrapper
+ * @return int
+ */
+ function numRows( $res ) {
+ if ( $res instanceof ResultWrapper ) {
+ $res = $res->result;
+ }
+ wfSuppressWarnings();
+ $n = $this->mysqlNumRows( $res );
+ wfRestoreWarnings();
+ // Unfortunately, mysql_num_rows does not reset the last errno.
+ // We are not checking for any errors here, since
+ // these are no errors mysql_num_rows can cause.
+ // See http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-row.html.
+ // See https://bugzilla.wikimedia.org/42430
+ return $n;
+ }
+
+ /**
+ * Get number of rows in result
+ *
+ * @param $res Raw result
+ * @return int
+ */
+ abstract protected function mysqlNumRows( $res );
+
+ /**
+ * @param $res ResultWrapper
+ * @return int
+ */
+ function numFields( $res ) {
+ if ( $res instanceof ResultWrapper ) {
+ $res = $res->result;
+ }
+ return $this->mysqlNumFields( $res );
+ }
+
+ /**
+ * Get number of fields in result
+ *
+ * @param $res Raw result
+ * @return int
+ */
+ abstract protected function mysqlNumFields( $res );
+
+ /**
+ * @param $res ResultWrapper
+ * @param $n string
+ * @return string
+ */
+ function fieldName( $res, $n ) {
+ if ( $res instanceof ResultWrapper ) {
+ $res = $res->result;
+ }
+ return $this->mysqlFieldName( $res, $n );
+ }
+
+ /**
+ * Get the name of the specified field in a result
+ *
+ * @param $res Raw result
+ * @param $n int
+ * @return string
+ */
+ abstract protected function mysqlFieldName( $res, $n );
+
+ /**
+ * @param $res ResultWrapper
+ * @param $row
+ * @return bool
+ */
+ function dataSeek( $res, $row ) {
+ if ( $res instanceof ResultWrapper ) {
+ $res = $res->result;
+ }
+ return $this->mysqlDataSeek( $res, $row );
+ }
+
+ /**
+ * Move internal result pointer
+ *
+ * @param $res Raw result
+ * @param $row int
+ * @return bool
+ */
+ abstract protected function mysqlDataSeek( $res, $row );
+
+ /**
+ * @return string
+ */
+ function lastError() {
+ if ( $this->mConn ) {
+ # Even if it's non-zero, it can still be invalid
+ wfSuppressWarnings();
+ $error = $this->mysqlError( $this->mConn );
+ if ( !$error ) {
+ $error = $this->mysqlError();
+ }
+ wfRestoreWarnings();
+ } else {
+ $error = $this->mysqlError();
+ }
+ if ( $error ) {
+ $error .= ' (' . $this->mServer . ')';
+ }
+ return $error;
+ }
+
+ /**
+ * Returns the text of the error message from previous MySQL operation
+ *
+ * @param $conn Raw connection
+ * @return string
+ */
+ abstract protected function mysqlError( $conn = null );
+
+ /**
+ * @param $table string
+ * @param $uniqueIndexes
+ * @param $rows array
+ * @param $fname string
+ * @return ResultWrapper
+ */
+ function replace( $table, $uniqueIndexes, $rows, $fname = __METHOD__ ) {
+ return $this->nativeReplace( $table, $rows, $fname );
+ }
+
+ /**
+ * Estimate rows in dataset
+ * Returns estimated count, based on EXPLAIN output
+ * Takes same arguments as Database::select()
+ *
+ * @param $table string|array
+ * @param $vars string|array
+ * @param $conds string|array
+ * @param $fname string
+ * @param $options string|array
+ * @return int
+ */
+ public function estimateRowCount( $table, $vars = '*', $conds = '', $fname = __METHOD__, $options = array() ) {
+ $options['EXPLAIN'] = true;
+ $res = $this->select( $table, $vars, $conds, $fname, $options );
+ if ( $res === false ) {
+ return false;
+ }
+ if ( !$this->numRows( $res ) ) {
+ return 0;
+ }
+
+ $rows = 1;
+ foreach ( $res as $plan ) {
+ $rows *= $plan->rows > 0 ? $plan->rows : 1; // avoid resetting to zero
+ }
+ return $rows;
+ }
+
+ /**
+ * @param $table string
+ * @param $field string
+ * @return bool|MySQLField
+ */
+ function fieldInfo( $table, $field ) {
+ $table = $this->tableName( $table );
+ $res = $this->query( "SELECT * FROM $table LIMIT 1", __METHOD__, true );
+ if ( !$res ) {
+ return false;
+ }
+ $n = $this->mysqlNumFields( $res->result );
+ for ( $i = 0; $i < $n; $i++ ) {
+ $meta = $this->mysqlFetchField( $res->result, $i );
+ if ( $field == $meta->name ) {
+ return new MySQLField( $meta );
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Get column information from a result
+ *
+ * @param $res Raw result
+ * @param $n int
+ * @return stdClass
+ */
+ abstract protected function mysqlFetchField( $res, $n );
+
+ /**
+ * Get information about an index into an object
+ * Returns false if the index does not exist
+ *
+ * @param $table string
+ * @param $index string
+ * @param $fname string
+ * @return bool|array|null False or null on failure
+ */
+ function indexInfo( $table, $index, $fname = __METHOD__ ) {
+ # SHOW INDEX works in MySQL 3.23.58, but SHOW INDEXES does not.
+ # SHOW INDEX should work for 3.x and up:
+ # http://dev.mysql.com/doc/mysql/en/SHOW_INDEX.html
+ $table = $this->tableName( $table );
+ $index = $this->indexName( $index );
+
+ $sql = 'SHOW INDEX FROM ' . $table;
+ $res = $this->query( $sql, $fname );
+
+ if ( !$res ) {
+ return null;
+ }
+
+ $result = array();
+
+ foreach ( $res as $row ) {
+ if ( $row->Key_name == $index ) {
+ $result[] = $row;
+ }
+ }
+ return empty( $result ) ? false : $result;
+ }
+
+ /**
+ * @param $s string
+ *
+ * @return string
+ */
+ function strencode( $s ) {
+ $sQuoted = $this->mysqlRealEscapeString( $s );
+
+ if ( $sQuoted === false ) {
+ $this->ping();
+ $sQuoted = $this->mysqlRealEscapeString( $s );
+ }
+ return $sQuoted;
+ }
+
+ /**
+ * MySQL uses `backticks` for identifier quoting instead of the sql standard "double quotes".
+ *
+ * @param $s string
+ *
+ * @return string
+ */
+ public function addIdentifierQuotes( $s ) {
+ return "`" . $this->strencode( $s ) . "`";
+ }
+
+ /**
+ * @param $name string
+ * @return bool
+ */
+ public function isQuotedIdentifier( $name ) {
+ return strlen( $name ) && $name[0] == '`' && substr( $name, -1, 1 ) == '`';
+ }
+
+ /**
+ * @return bool
+ */
+ function ping() {
+ $ping = $this->mysqlPing();
+ if ( $ping ) {
+ return true;
+ }
+
+ $this->closeConnection();
+ $this->mOpened = false;
+ $this->mConn = false;
+ $this->open( $this->mServer, $this->mUser, $this->mPassword, $this->mDBname );
+ return true;
+ }
+
+ /**
+ * Ping a server connection or reconnect if there is no connection
+ *
+ * @return bool
+ */
+ abstract protected function mysqlPing();
+
+ /**
+ * Returns slave lag.
+ *
+ * This will do a SHOW SLAVE STATUS
+ *
+ * @return int
+ */
+ function getLag() {
+ if ( !is_null( $this->mFakeSlaveLag ) ) {
+ wfDebug( "getLag: fake slave lagged {$this->mFakeSlaveLag} seconds\n" );
+ return $this->mFakeSlaveLag;
+ }
+
+ return $this->getLagFromSlaveStatus();
+ }
+
+ /**
+ * @return bool|int
+ */
+ function getLagFromSlaveStatus() {
+ $res = $this->query( 'SHOW SLAVE STATUS', __METHOD__ );
+ if ( !$res ) {
+ return false;
+ }
+ $row = $res->fetchObject();
+ if ( !$row ) {
+ return false;
+ }
+ if ( strval( $row->Seconds_Behind_Master ) === '' ) {
+ return false;
+ } else {
+ return intval( $row->Seconds_Behind_Master );
+ }
+ }
+
+ /**
+ * @deprecated in 1.19, use getLagFromSlaveStatus
+ *
+ * @return bool|int
+ */
+ function getLagFromProcesslist() {
+ wfDeprecated( __METHOD__, '1.19' );
+ $res = $this->query( 'SHOW PROCESSLIST', __METHOD__ );
+ if ( !$res ) {
+ return false;
+ }
+ # Find slave SQL thread
+ foreach ( $res as $row ) {
+ /* This should work for most situations - when default db
+ * for thread is not specified, it had no events executed,
+ * and therefore it doesn't know yet how lagged it is.
+ *
+ * Relay log I/O thread does not select databases.
+ */
+ if ( $row->User == 'system user' &&
+ $row->State != 'Waiting for master to send event' &&
+ $row->State != 'Connecting to master' &&
+ $row->State != 'Queueing master event to the relay log' &&
+ $row->State != 'Waiting for master update' &&
+ $row->State != 'Requesting binlog dump' &&
+ $row->State != 'Waiting to reconnect after a failed master event read' &&
+ $row->State != 'Reconnecting after a failed master event read' &&
+ $row->State != 'Registering slave on master'
+ ) {
+ # This is it, return the time (except -ve)
+ if ( $row->Time > 0x7fffffff ) {
+ return false;
+ } else {
+ return $row->Time;
+ }
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Wait for the slave to catch up to a given master position.
+ * @TODO: return values for this and base class are rubbish
+ *
+ * @param $pos DBMasterPos object
+ * @param $timeout Integer: the maximum number of seconds to wait for synchronisation
+ * @return bool|string
+ */
+ function masterPosWait( DBMasterPos $pos, $timeout ) {
+ if ( $this->lastKnownSlavePos && $this->lastKnownSlavePos->hasReached( $pos ) ) {
+ return '0'; // http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html
+ }
+
+ wfProfileIn( __METHOD__ );
+ # Commit any open transactions
+ $this->commit( __METHOD__, 'flush' );
+
+ if ( !is_null( $this->mFakeSlaveLag ) ) {
+ $status = parent::masterPosWait( $pos, $timeout );
+ wfProfileOut( __METHOD__ );
+ return $status;
+ }
+
+ # Call doQuery() directly, to avoid opening a transaction if DBO_TRX is set
+ $encFile = $this->addQuotes( $pos->file );
+ $encPos = intval( $pos->pos );
+ $sql = "SELECT MASTER_POS_WAIT($encFile, $encPos, $timeout)";
+ $res = $this->doQuery( $sql );
+
+ $status = false;
+ if ( $res && $row = $this->fetchRow( $res ) ) {
+ $status = $row[0]; // can be NULL, -1, or 0+ per the MySQL manual
+ if ( ctype_digit( $status ) ) { // success
+ $this->lastKnownSlavePos = $pos;
+ }
+ }
+
+ wfProfileOut( __METHOD__ );
+ return $status;
+ }
+
+ /**
+ * Get the position of the master from SHOW SLAVE STATUS
+ *
+ * @return MySQLMasterPos|bool
+ */
+ function getSlavePos() {
+ if ( !is_null( $this->mFakeSlaveLag ) ) {
+ return parent::getSlavePos();
+ }
+
+ $res = $this->query( 'SHOW SLAVE STATUS', 'DatabaseBase::getSlavePos' );
+ $row = $this->fetchObject( $res );
+
+ if ( $row ) {
+ $pos = isset( $row->Exec_master_log_pos ) ? $row->Exec_master_log_pos : $row->Exec_Master_Log_Pos;
+ return new MySQLMasterPos( $row->Relay_Master_Log_File, $pos );
+ } else {
+ return false;
+ }
+ }
+
+ /**
+ * Get the position of the master from SHOW MASTER STATUS
+ *
+ * @return MySQLMasterPos|bool
+ */
+ function getMasterPos() {
+ if ( $this->mFakeMaster ) {
+ return parent::getMasterPos();
+ }
+
+ $res = $this->query( 'SHOW MASTER STATUS', 'DatabaseBase::getMasterPos' );
+ $row = $this->fetchObject( $res );
+
+ if ( $row ) {
+ return new MySQLMasterPos( $row->File, $row->Position );
+ } else {
+ return false;
+ }
+ }
+
+ /**
+ * @param $index
+ * @return string
+ */
+ function useIndexClause( $index ) {
+ return "FORCE INDEX (" . $this->indexName( $index ) . ")";
+ }
+
+ /**
+ * @return string
+ */
+ function lowPriorityOption() {
+ return 'LOW_PRIORITY';
+ }
+
+ /**
+ * @return string
+ */
+ public function getSoftwareLink() {
+ return '[http://www.mysql.com/ MySQL]';
+ }
+
+ /**
+ * @param $options array
+ */
+ public function setSessionOptions( array $options ) {
+ if ( isset( $options['connTimeout'] ) ) {
+ $timeout = (int)$options['connTimeout'];
+ $this->query( "SET net_read_timeout=$timeout" );
+ $this->query( "SET net_write_timeout=$timeout" );
+ }
+ }
+
+ public function streamStatementEnd( &$sql, &$newLine ) {
+ if ( strtoupper( substr( $newLine, 0, 9 ) ) == 'DELIMITER' ) {
+ preg_match( '/^DELIMITER\s+(\S+)/', $newLine, $m );
+ $this->delimiter = $m[1];
+ $newLine = '';
+ }
+ return parent::streamStatementEnd( $sql, $newLine );
+ }
+
+ /**
+ * Check to see if a named lock is available. This is non-blocking.
+ *
+ * @param string $lockName name of lock to poll
+ * @param string $method name of method calling us
+ * @return Boolean
+ * @since 1.20
+ */
+ public function lockIsFree( $lockName, $method ) {
+ $lockName = $this->addQuotes( $lockName );
+ $result = $this->query( "SELECT IS_FREE_LOCK($lockName) AS lockstatus", $method );
+ $row = $this->fetchObject( $result );
+ return ( $row->lockstatus == 1 );
+ }
+
+ /**
+ * @param $lockName string
+ * @param $method string
+ * @param $timeout int
+ * @return bool
+ */
+ public function lock( $lockName, $method, $timeout = 5 ) {
+ $lockName = $this->addQuotes( $lockName );
+ $result = $this->query( "SELECT GET_LOCK($lockName, $timeout) AS lockstatus", $method );
+ $row = $this->fetchObject( $result );
+
+ if ( $row->lockstatus == 1 ) {
+ return true;
+ } else {
+ wfDebug( __METHOD__ . " failed to acquire lock\n" );
+ return false;
+ }
+ }
+
+ /**
+ * FROM MYSQL DOCS: http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_release-lock
+ * @param $lockName string
+ * @param $method string
+ * @return bool
+ */
+ public function unlock( $lockName, $method ) {
+ $lockName = $this->addQuotes( $lockName );
+ $result = $this->query( "SELECT RELEASE_LOCK($lockName) as lockstatus", $method );
+ $row = $this->fetchObject( $result );
+ return ( $row->lockstatus == 1 );
+ }
+
+ /**
+ * @param $read array
+ * @param $write array
+ * @param $method string
+ * @param $lowPriority bool
+ * @return bool
+ */
+ public function lockTables( $read, $write, $method, $lowPriority = true ) {
+ $items = array();
+
+ foreach ( $write as $table ) {
+ $tbl = $this->tableName( $table ) .
+ ( $lowPriority ? ' LOW_PRIORITY' : '' ) .
+ ' WRITE';
+ $items[] = $tbl;
+ }
+ foreach ( $read as $table ) {
+ $items[] = $this->tableName( $table ) . ' READ';
+ }
+ $sql = "LOCK TABLES " . implode( ',', $items );
+ $this->query( $sql, $method );
+ return true;
+ }
+
+ /**
+ * @param $method string
+ * @return bool
+ */
+ public function unlockTables( $method ) {
+ $this->query( "UNLOCK TABLES", $method );
+ return true;
+ }
+
+ /**
+ * Get search engine class. All subclasses of this
+ * need to implement this if they wish to use searching.
+ *
+ * @return String
+ */
+ public function getSearchEngine() {
+ return 'SearchMySQL';
+ }
+
+ /**
+ * @param bool $value
+ * @return mixed
+ */
+ public function setBigSelects( $value = true ) {
+ if ( $value === 'default' ) {
+ if ( $this->mDefaultBigSelects === null ) {
+ # Function hasn't been called before so it must already be set to the default
+ return;
+ } else {
+ $value = $this->mDefaultBigSelects;
+ }
+ } elseif ( $this->mDefaultBigSelects === null ) {
+ $this->mDefaultBigSelects = (bool)$this->selectField( false, '@@sql_big_selects' );
+ }
+ $encValue = $value ? '1' : '0';
+ $this->query( "SET sql_big_selects=$encValue", __METHOD__ );
+ }
+
+ /**
+ * DELETE where the condition is a join. MySql uses multi-table deletes.
+ * @param $delTable string
+ * @param $joinTable string
+ * @param $delVar string
+ * @param $joinVar string
+ * @param $conds array|string
+ * @param bool|string $fname bool
+ * @throws DBUnexpectedError
+ * @return bool|ResultWrapper
+ */
+ function deleteJoin( $delTable, $joinTable, $delVar, $joinVar, $conds, $fname = __METHOD__ ) {
+ if ( !$conds ) {
+ throw new DBUnexpectedError( $this, 'DatabaseBase::deleteJoin() called with empty $conds' );
+ }
+
+ $delTable = $this->tableName( $delTable );
+ $joinTable = $this->tableName( $joinTable );
+ $sql = "DELETE $delTable FROM $delTable, $joinTable WHERE $delVar=$joinVar ";
+
+ if ( $conds != '*' ) {
+ $sql .= ' AND ' . $this->makeList( $conds, LIST_AND );
+ }
+
+ return $this->query( $sql, $fname );
+ }
+
+ /**
+ * @param string $table
+ * @param array $rows
+ * @param array $uniqueIndexes
+ * @param array $set
+ * @param string $fname
+ * @param array $options
+ * @return bool
+ */
+ public function upsert(
+ $table, array $rows, array $uniqueIndexes, array $set, $fname = __METHOD__
+ ) {
+ if ( !count( $rows ) ) {
+ return true; // nothing to do
+ }
+ $rows = is_array( reset( $rows ) ) ? $rows : array( $rows );
+
+ $table = $this->tableName( $table );
+ $columns = array_keys( $rows[0] );
+
+ $sql = "INSERT INTO $table (" . implode( ',', $columns ) . ') VALUES ';
+ $rowTuples = array();
+ foreach ( $rows as $row ) {
+ $rowTuples[] = '(' . $this->makeList( $row ) . ')';
+ }
+ $sql .= implode( ',', $rowTuples );
+ $sql .= " ON DUPLICATE KEY UPDATE " . $this->makeList( $set, LIST_SET );
+
+ return (bool)$this->query( $sql, $fname );
+ }
+
+ /**
+ * Determines how long the server has been up
+ *
+ * @return int
+ */
+ function getServerUptime() {
+ $vars = $this->getMysqlStatus( 'Uptime' );
+ return (int)$vars['Uptime'];
+ }
+
+ /**
+ * Determines if the last failure was due to a deadlock
+ *
+ * @return bool
+ */
+ function wasDeadlock() {
+ return $this->lastErrno() == 1213;
+ }
+
+ /**
+ * Determines if the last failure was due to a lock timeout
+ *
+ * @return bool
+ */
+ function wasLockTimeout() {
+ return $this->lastErrno() == 1205;
+ }
+
+ /**
+ * Determines if the last query error was something that should be dealt
+ * with by pinging the connection and reissuing the query
+ *
+ * @return bool
+ */
+ function wasErrorReissuable() {
+ return $this->lastErrno() == 2013 || $this->lastErrno() == 2006;
+ }
+
+ /**
+ * Determines if the last failure was due to the database being read-only.
+ *
+ * @return bool
+ */
+ function wasReadOnlyError() {
+ return $this->lastErrno() == 1223 ||
+ ( $this->lastErrno() == 1290 && strpos( $this->lastError(), '--read-only' ) !== false );
+ }
+
+ /**
+ * @param $oldName
+ * @param $newName
+ * @param $temporary bool
+ * @param $fname string
+ */
+ function duplicateTableStructure( $oldName, $newName, $temporary = false, $fname = __METHOD__ ) {
+ $tmp = $temporary ? 'TEMPORARY ' : '';
+ $newName = $this->addIdentifierQuotes( $newName );
+ $oldName = $this->addIdentifierQuotes( $oldName );
+ $query = "CREATE $tmp TABLE $newName (LIKE $oldName)";
+ $this->query( $query, $fname );
+ }
+
+ /**
+ * List all tables on the database
+ *
+ * @param string $prefix Only show tables with this prefix, e.g. mw_
+ * @param string $fname calling function name
+ * @return array
+ */
+ function listTables( $prefix = null, $fname = __METHOD__ ) {
+ $result = $this->query( "SHOW TABLES", $fname );
+
+ $endArray = array();
+
+ foreach ( $result as $table ) {
+ $vars = get_object_vars( $table );
+ $table = array_pop( $vars );
+
+ if ( !$prefix || strpos( $table, $prefix ) === 0 ) {
+ $endArray[] = $table;
+ }
+ }
+
+ return $endArray;
+ }
+
+ /**
+ * @param $tableName
+ * @param $fName string
+ * @return bool|ResultWrapper
+ */
+ public function dropTable( $tableName, $fName = __METHOD__ ) {
+ if ( !$this->tableExists( $tableName, $fName ) ) {
+ return false;
+ }
+ return $this->query( "DROP TABLE IF EXISTS " . $this->tableName( $tableName ), $fName );
+ }
+
+ /**
+ * @return array
+ */
+ protected function getDefaultSchemaVars() {
+ $vars = parent::getDefaultSchemaVars();
+ $vars['wgDBTableOptions'] = str_replace( 'TYPE', 'ENGINE', $GLOBALS['wgDBTableOptions'] );
+ $vars['wgDBTableOptions'] = str_replace( 'CHARSET=mysql4', 'CHARSET=binary', $vars['wgDBTableOptions'] );
+ return $vars;
+ }
+
+ /**
+ * Get status information from SHOW STATUS in an associative array
+ *
+ * @param $which string
+ * @return array
+ */
+ function getMysqlStatus( $which = "%" ) {
+ $res = $this->query( "SHOW STATUS LIKE '{$which}'" );
+ $status = array();
+
+ foreach ( $res as $row ) {
+ $status[$row->Variable_name] = $row->Value;
+ }
+
+ return $status;
+ }
+
+}
+
+
+
+/**
+ * Utility class.
+ * @ingroup Database
+ */
+class MySQLField implements Field {
+ private $name, $tablename, $default, $max_length, $nullable,
+ $is_pk, $is_unique, $is_multiple, $is_key, $type;
+
+ function __construct( $info ) {
+ $this->name = $info->name;
+ $this->tablename = $info->table;
+ $this->default = $info->def;
+ $this->max_length = $info->max_length;
+ $this->nullable = !$info->not_null;
+ $this->is_pk = $info->primary_key;
+ $this->is_unique = $info->unique_key;
+ $this->is_multiple = $info->multiple_key;
+ $this->is_key = ( $this->is_pk || $this->is_unique || $this->is_multiple );
+ $this->type = $info->type;
+ }
+
+ /**
+ * @return string
+ */
+ function name() {
+ return $this->name;
+ }
+
+ /**
+ * @return string
+ */
+ function tableName() {
+ return $this->tableName;
+ }
+
+ /**
+ * @return string
+ */
+ function type() {
+ return $this->type;
+ }
+
+ /**
+ * @return bool
+ */
+ function isNullable() {
+ return $this->nullable;
+ }
+
+ function defaultValue() {
+ return $this->default;
+ }
+
+ /**
+ * @return bool
+ */
+ function isKey() {
+ return $this->is_key;
+ }
+
+ /**
+ * @return bool
+ */
+ function isMultipleKey() {
+ return $this->is_multiple;
+ }
+}
+
+class MySQLMasterPos implements DBMasterPos {
+ var $file, $pos;
+
+ function __construct( $file, $pos ) {
+ $this->file = $file;
+ $this->pos = $pos;
+ }
+
+ function __toString() {
+ // e.g db1034-bin.000976/843431247
+ return "{$this->file}/{$this->pos}";
+ }
+
+ /**
+ * @return array|false (int, int)
+ */
+ protected function getCoordinates() {
+ $m = array();
+ if ( preg_match( '!\.(\d+)/(\d+)$!', (string)$this, $m ) ) {
+ return array( (int)$m[1], (int)$m[2] );
+ }
+ return false;
+ }
+
+ function hasReached( MySQLMasterPos $pos ) {
+ $thisPos = $this->getCoordinates();
+ $thatPos = $pos->getCoordinates();
+ return ( $thisPos && $thatPos && $thisPos >= $thatPos );
+ }
+}
* @return DatabaseBase|null
*/
function open( $server, $user, $password, $dbName ) {
+ global $wgDBOracleDRCP;
if ( !function_exists( 'oci_connect' ) ) {
throw new DBConnectionError( $this, "Oracle functions missing, have you compiled PHP with the --with-oci8 option?\n (Note: if you recently installed PHP, you may need to restart your webserver and database)\n" );
}
return;
}
+ if ( $wgDBOracleDRCP ) {
+ $this->setFlag( DBO_PERSISTENT );
+ }
+
$session_mode = $this->mFlags & DBO_SYSDBA ? OCI_SYSDBA : OCI_DEFAULT;
+
wfSuppressWarnings();
- if ( $this->mFlags & DBO_DEFAULT ) {
+ if ( $this->mFlags & DBO_PERSISTENT ) {
+ $this->mConn = oci_pconnect( $this->mUser, $this->mPassword, $this->mServer, $this->defaultCharset, $session_mode );
+ } else if ( $this->mFlags & DBO_DEFAULT ) {
$this->mConn = oci_new_connect( $this->mUser, $this->mPassword, $this->mServer, $this->defaultCharset, $session_mode );
} else {
$this->mConn = oci_connect( $this->mUser, $this->mPassword, $this->mServer, $this->defaultCharset, $session_mode );
return $output;
}
do {
- if ( '{' != $text{$offset} ) {
+ if ( '{' != $text[$offset] ) {
preg_match( "/(\\{?\"([^\"\\\\]|\\\\.)*\"|[^,{}]+)+([,}]+)/",
$text, $match, 0, $offset );
$offset += strlen( $match[0] );
- $output[] = ( '"' != $match[1]{0}
+ $output[] = ( '"' != $match[1][0]
? $match[1]
: stripcslashes( substr( $match[1], 1, -1 ) ) );
if ( '},' == $match[3] ) {
* Load the specified fields from the database.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param array|null $fields
* @param boolean $override
* Gets the value of a field but first loads it if not done so already.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
- * @param string$name
+ * @param string $name
*
* @return mixed
*/
* Load the default values, via getDefaults.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param boolean $override
*/
* @since 1.20
*
* @param string|null $functionName
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @return boolean Success indicator
*/
* Removes the object from the database.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @return boolean Success indicator
*/
* Add an amount (can be negative) to the specified field (needs to be numeric).
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param string $field
* @param integer $amount
* Computes and updates the values of the summary fields.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param array|string|null $summaryFields
*/
* Sets the value for the @see $updateSummaries field.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param boolean $update
*/
* Sets the value for the @see $inSummaryMode field.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param boolean $summaryMode
*/
* Returns the table this IORMRow is a row in.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @return IORMTable
*/
# Operation-based index
if ( $i == DB_SLAVE ) {
+ $this->mLastError = 'Unknown error'; // reset error string
$i = $this->getReaderIndex( false, $wiki );
# Couldn't find a working server in getReaderIndex()?
if ( $i === false ) {
$masterName = $this->parent->getServerName( 0 );
$memcKey = wfMemcKey( 'lag_times', $masterName );
$times = $wgMemc->get( $memcKey );
- if ( $times ) {
+ if ( is_array( $times ) ) {
# Randomly recache with probability rising over $expiry
$elapsed = time() - $times['timestamp'];
$chance = max( 0, ( $expiry - $elapsed ) * $requestRate );
if ( mt_rand( 0, $chance ) != 0 ) {
- unset( $times['timestamp'] );
+ unset( $times['timestamp'] ); // hide from caller
wfProfileOut( __METHOD__ );
return $times;
}
}
# Cache key missing or expired
+ if ( $wgMemc->add( "$memcKey:lock", 1, 10 ) ) {
+ # Let this process alone update the cache value
+ $unlocker = new ScopedCallback( function() use ( $wgMemc, $memcKey ) {
+ $wgMemc->delete( $memcKey );
+ } );
+ } elseif ( is_array( $times ) ) {
+ # Could not acquire lock but an old cache exists, so use it
+ unset( $times['timestamp'] ); // hide from caller
+ wfProfileOut( __METHOD__ );
+ return $times;
+ }
$times = array();
foreach ( $serverIndexes as $i ) {
# Add a timestamp key so we know when it was cached
$times['timestamp'] = time();
- $wgMemc->set( $memcKey, $times, $expiry );
-
- # But don't give the timestamp to the caller
- unset( $times['timestamp'] );
- $lagTimes = $times;
+ $wgMemc->set( $memcKey, $times, $expiry + 10 );
+ unset( $times['timestamp'] ); // hide from caller
wfProfileOut( __METHOD__ );
- return $lagTimes;
+ return $times;
}
/**
* Settings this to false can prevent needless updating work in situations
* such as deleting a university, which will then delete all it's courses.
*
- * @deprecated since 1.21
+ * @deprecated since 1.22
* @since 1.20
* @var bool
*/
* This mode indicates that only summary fields got updated,
* which allows for optimizations.
*
- * @deprecated since 1.21
+ * @deprecated since 1.22
* @since 1.20
* @var bool
*/
protected $inSummaryMode = false;
/**
- * @deprecated since 1.21
+ * @deprecated since 1.22
* @since 1.20
* @var ORMTable|null
*/
*
* @since 1.20
*
- * @param IORMTable|null $table Deprecated since 1.21
+ * @param IORMTable|null $table Deprecated since 1.22
* @param array|null $fields
- * @param boolean $loadDefaults Deprecated since 1.21
+ * @param boolean $loadDefaults Deprecated since 1.22
*/
public function __construct( IORMTable $table = null, $fields = null, $loadDefaults = false ) {
$this->table = $table;
* Load the specified fields from the database.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param array|null $fields
* @param boolean $override
* Gets the value of a field but first loads it if not done so already.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param $name string
*
* Gets the fields => values to write to the table.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @return array
*/
* Load the default values, via getDefaults.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param boolean $override
*/
* when it already exists, or inserting it when it doesn't.
*
* @since 1.20
- * @deprecated since 1.21 Use IORMTable->updateRow or ->insertRow
+ * @deprecated since 1.22 Use IORMTable->updateRow or ->insertRow
*
* @param string|null $functionName
*
* Updates the object in the database.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param string|null $functionName
*
$success = $dbw->update(
$this->table->getName(),
$this->getWriteValues(),
- $this->table->getPrefixedValues( $this->getWriteValues() ),
+ $this->table->getPrefixedValues( $this->getUpdateConditions() ),
is_null( $functionName ) ? __METHOD__ : $functionName
);
* Inserts the object into the database.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param string|null $functionName
* @param array|null $options
* Removes the object from the database.
*
* @since 1.20
- * @deprecated since 1.21, use IROMtable->removeRow
+ * @deprecated since 1.22, use IORMTable->removeRow
*
* @return boolean Success indicator
*/
* Gets called before an object is removed from the database.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*/
protected function beforeRemove() {
$this->loadFields( $this->getBeforeRemoveFields(), false, true );
* Can be overridden to get rid of linked data.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*/
protected function onRemoved() {
$this->setField( 'id', null );
* Add an amount (can be negative) to the specified field (needs to be numeric).
*
* @since 1.20
- * @deprecated since 1.21, use IORMTable->addToField
+ * @deprecated since 1.22, use IORMTable->addToField
*
* @param string $field
* @param integer $amount
* Return the names of the fields.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @return array
*/
* Computes and updates the values of the summary fields.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param array|string|null $summaryFields
*/
* Sets the value for the @see $updateSummaries field.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param boolean $update
*/
* Sets the value for the @see $inSummaryMode field.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @param boolean $summaryMode
*/
* Returns the table this IORMRow is a row in.
*
* @since 1.20
- * @deprecated since 1.21
+ * @deprecated since 1.22
*
* @return IORMTable
*/
}
/**
- * Updated the provided row in the database.
+ * Updates the provided row in the database.
*
- * @since 1.21
+ * @since 1.22
*
* @param IORMRow $row The row to save
* @param string|null $functionName
/**
* Inserts the provided row into the database.
*
- * @since 1.21
+ * @since 1.22
*
* @param IORMRow $row
* @param string|null $functionName
/**
* Gets the fields => values to write to the table.
*
- * @since 1.20
+ * @since 1.22
*
* @param IORMRow $row
*
/**
* Removes the provided row from the database.
*
- * @since 1.21
+ * @since 1.22
*
* @param IORMRow $row
* @param string|null $functionName
/**
* Add an amount (can be negative) to the specified field (needs to be numeric).
*
- * @since 1.21
+ * @since 1.22
*
* @param array $conditions
* @param string $field
<?php
/**
- * Debug toolbar related code
+ * Debug toolbar related code.
*
* 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
*/
/**
- * New debugger system that outputs a toolbar on page view
+ * New debugger system that outputs a toolbar on page view.
*
* By default, most methods do nothing ( self::$enabled = false ). You have
* to explicitly call MWDebug::init() to enabled them.
/**
* Log lines
*
- * @var array
+ * @var array $log
*/
protected static $log = array();
/**
- * Debug messages from wfDebug()
+ * Debug messages from wfDebug().
*
- * @var array
+ * @var array $debug
*/
protected static $debug = array();
/**
- * Queries
+ * SQL statements of the databses queries.
*
- * @var array
+ * @var array $query
*/
protected static $query = array();
/**
* Is the debugger enabled?
*
- * @var bool
+ * @var bool $enabled
*/
protected static $enabled = false;
* Array of functions that have already been warned, formatted
* function-caller to prevent a buttload of warnings
*
- * @var array
+ * @var array $deprecationWarnings
*/
protected static $deprecationWarnings = array();
global $wgDebugComments, $wgShowDebug;
if ( self::$enabled || $wgDebugComments || $wgShowDebug ) {
- self::$debug[] = rtrim( $str );
+ self::$debug[] = rtrim( UtfNormal::cleanUp( $str ) );
}
}
* @var Title
*/
var $mOldPage, $mNewPage;
- var $mRcidMarkPatrolled;
/**
* @var Revision
* Constructor
* @param $context IContextSource context to use, anything else will be ignored
* @param $old Integer old ID we want to show and diff with.
- * @param string $new either 'prev' or 'next'.
- * @param $rcid Integer ??? FIXME (default 0)
+ * @param $new String either 'prev' or 'next'.
+ * @param $rcid Integer Deprecated, no longer used!
* @param $refreshCache boolean If set, refreshes the diff cache
* @param $unhide boolean If set, allow viewing deleted revs
*/
$this->mOldid = $old;
$this->mNewid = $new;
- $this->mRcidMarkPatrolled = intval( $rcid ); # force it to be an integer
$this->mRefreshCache = $refreshCache;
$this->unhide = $unhide;
}
* @return String
*/
protected function markPatrolledLink() {
- global $wgUseRCPatrol;
+ global $wgUseRCPatrol, $wgEnableAPI, $wgEnableWriteAPI;
if ( $this->mMarkPatrolledLink === null ) {
// Prepare a change patrol link, if applicable
- if ( $wgUseRCPatrol && $this->mNewPage->quickUserCan( 'patrol', $this->getUser() ) ) {
- // If we've been given an explicit change identifier, use it; saves time
- if ( $this->mRcidMarkPatrolled ) {
- $rcid = $this->mRcidMarkPatrolled;
- $rc = RecentChange::newFromId( $rcid );
- // Already patrolled?
- $rcid = is_object( $rc ) && !$rc->getAttribute( 'rc_patrolled' ) ? $rcid : 0;
+ if (
+ // Is patrolling enabled and the user allowed to?
+ $wgUseRCPatrol && $this->mNewPage->quickUserCan( 'patrol', $this->getUser() ) &&
+ // Only do this if the revision isn't more than 6 hours older
+ // than the Max RC age (6h because the RC might not be cleaned out regularly)
+ RecentChange::isInRCLifespan( $this->mNewRev->getTimestamp(), 21600 )
+ ) {
+ // Look for an unpatrolled change corresponding to this diff
+
+ $db = wfGetDB( DB_SLAVE );
+ $change = RecentChange::newFromConds(
+ array(
+ 'rc_timestamp' => $db->timestamp( $this->mNewRev->getTimestamp() ),
+ 'rc_this_oldid' => $this->mNewid,
+ 'rc_patrolled' => 0
+ ),
+ __METHOD__,
+ array( 'USE INDEX' => 'rc_timestamp' )
+ );
+
+ if ( $change ) {
+ $rcid = $change->getAttribute( 'rc_id' );
} else {
- // Look for an unpatrolled change corresponding to this diff
- $db = wfGetDB( DB_SLAVE );
- $change = RecentChange::newFromConds(
- array(
- // Redundant user,timestamp condition so we can use the existing index
- 'rc_user_text' => $this->mNewRev->getRawUserText(),
- 'rc_timestamp' => $db->timestamp( $this->mNewRev->getTimestamp() ),
- 'rc_this_oldid' => $this->mNewid,
- 'rc_last_oldid' => $this->mOldid,
- 'rc_patrolled' => 0
- ),
- __METHOD__
- );
- if ( $change instanceof RecentChange ) {
- $rcid = $change->mAttribs['rc_id'];
- $this->mRcidMarkPatrolled = $rcid;
- } else {
- // None found
- $rcid = 0;
- }
+ // None found
+ $rcid = 0;
}
// Build the link
if ( $rcid ) {
$this->getOutput()->preventClickjacking();
- $this->getOutput()->addModules( 'mediawiki.page.patrol.ajax' );
+ if ( $wgEnableAPI && $wgEnableWriteAPI
+ && $this->getUser()->isAllowed( 'writeapi' )
+ ) {
+ $this->getOutput()->addModules( 'mediawiki.page.patrol.ajax' );
+ }
$token = $this->getUser()->getEditToken( $rcid );
$this->mMarkPatrolledLink = ' <span class="patrollink">[' . Linker::linkKnown(
$colspan = 1;
$multiColspan = 2;
}
- $header .= "
- <tr style='vertical-align: top;'>
- <td colspan='$colspan' class='diff-otitle'>{$otitle}</td>
- <td colspan='$colspan' class='diff-ntitle'>{$ntitle}</td>
- </tr>";
+ if ( $otitle || $ntitle ) {
+ $header .= "
+ <tr style='vertical-align: top;'>
+ <td colspan='$colspan' class='diff-otitle'>{$otitle}</td>
+ <td colspan='$colspan' class='diff-ntitle'>{$ntitle}</td>
+ </tr>";
+ }
}
if ( $multi != '' ) {
*/
class FSFile {
protected $path; // path to file
- private $sha1Base36 = null; // File Sha1Base36
+ protected $sha1Base36; // file SHA-1 in base 36
/**
* Sets up the file object
* Get an associative array containing information about
* a file with the given storage path.
*
- * @param $ext Mixed: the file extension, or true to extract it from the filename.
+ * @param Mixed $ext: the file extension, or true to extract it from the filename.
* Set it to false to ignore the extension.
*
* @return array
/**
* Exract image size information
*
- * @param $gis array
+ * @param array $gis
* @return Array
*/
protected function extractImageSizeInfo( array $gis ) {
* 160 log 2 / log 36 = 30.95, so the 160-bit hash fills 31 digits in base 36
* fairly neatly.
*
- * @param $recache bool
+ * @param bool $recache
* @return bool|string False on failure
*/
public function getSha1Base36( $recache = false ) {
/**
* Get the final file extension from a file system path
*
- * @param $path string
+ * @param string $path
* @return string
*/
public static function extensionFromPath( $path ) {
* Get an associative array containing information about a file in the local filesystem.
*
* @param string $path absolute local filesystem path
- * @param $ext Mixed: the file extension, or true to extract it from the filename.
+ * @param Mixed $ext: the file extension, or true to extract it from the filename.
* Set it to false to ignore the extension.
- *
* @return array
*/
public static function getPropsFromPath( $path, $ext = true ) {
* 160 log 2 / log 36 = 30.95, so the 160-bit hash fills 31 digits in base 36
* fairly neatly.
*
- * @param $path string
- * @param $recache bool
- *
+ * @param string $path
* @return bool|string False on failure
*/
- public static function getSha1Base36FromPath( $path, $recache = false ) {
- static $sha1Base36 = array();
-
- if ( !isset( $sha1Base36[$path] ) || $recache ) {
- $fsFile = new self( $path );
- $sha1Base36[$path] = $fsFile->getSha1Base36();
- }
-
- return $sha1Base36[$path];
+ public static function getSha1Base36FromPath( $path ) {
+ $fsFile = new self( $path );
+ return $fsFile->getSha1Base36();
}
}
}
}
- /**
- * @see FileBackendStore::resolveContainerPath()
- * @param $container string
- * @param $relStoragePath string
- * @return null|string
- */
protected function resolveContainerPath( $container, $relStoragePath ) {
// Check that container has a root directory
if ( isset( $this->containerPaths[$container] ) || isset( $this->basePath ) ) {
* Given the short (unresolved) and full (resolved) name of
* a container, return the file system path of the container.
*
- * @param $shortCont string
- * @param $fullCont string
+ * @param string $shortCont
+ * @param string $fullCont
* @return string|null
*/
protected function containerFSRoot( $shortCont, $fullCont ) {
return $fsPath;
}
- /**
- * @see FileBackendStore::isPathUsableInternal()
- * @return bool
- */
public function isPathUsableInternal( $storagePath ) {
$fsPath = $this->resolveToFSPath( $storagePath );
if ( $fsPath === null ) {
return $ok;
}
- /**
- * @see FileBackendStore::doCreateInternal()
- * @return Status
- */
protected function doCreateInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doStoreInternal()
- * @return Status
- */
protected function doStoreInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doCopyInternal()
- * @return Status
- */
protected function doCopyInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doMoveInternal()
- * @return Status
- */
protected function doMoveInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doDeleteInternal()
- * @return Status
- */
protected function doDeleteInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doPrepareInternal()
- * @return Status
- */
protected function doPrepareInternal( $fullCont, $dirRel, array $params ) {
$status = Status::newGood();
list( , $shortCont, ) = FileBackend::splitStoragePath( $params['dir'] );
return $status;
}
- /**
- * @see FileBackendStore::doSecureInternal()
- * @return Status
- */
protected function doSecureInternal( $fullCont, $dirRel, array $params ) {
$status = Status::newGood();
list( , $shortCont, ) = FileBackend::splitStoragePath( $params['dir'] );
return $status;
}
- /**
- * @see FileBackendStore::doPublishInternal()
- * @return Status
- */
protected function doPublishInternal( $fullCont, $dirRel, array $params ) {
$status = Status::newGood();
list( , $shortCont, ) = FileBackend::splitStoragePath( $params['dir'] );
return $status;
}
- /**
- * @see FileBackendStore::doCleanInternal()
- * @return Status
- */
protected function doCleanInternal( $fullCont, $dirRel, array $params ) {
$status = Status::newGood();
list( , $shortCont, ) = FileBackend::splitStoragePath( $params['dir'] );
return $status;
}
- /**
- * @see FileBackendStore::doFileExists()
- * @return array|bool|null
- */
protected function doGetFileStat( array $params ) {
$source = $this->resolveToFSPath( $params['src'] );
if ( $source === null ) {
clearstatcache(); // clear the PHP file stat cache
}
- /**
- * @see FileBackendStore::doDirectoryExists()
- * @return bool|null
- */
protected function doDirectoryExists( $fullCont, $dirRel, array $params ) {
list( , $shortCont, ) = FileBackend::splitStoragePath( $params['dir'] );
$contRoot = $this->containerFSRoot( $shortCont, $fullCont ); // must be valid
return new FSFileBackendFileList( $dir, $params );
}
- /**
- * @see FileBackendStore::doGetLocalReferenceMulti()
- * @return Array
- */
protected function doGetLocalReferenceMulti( array $params ) {
$fsFiles = array(); // (path => FSFile)
return $fsFiles;
}
- /**
- * @see FileBackendStore::doGetLocalCopyMulti()
- * @return Array
- */
protected function doGetLocalCopyMulti( array $params ) {
$tmpFiles = array(); // (path => TempFSFile)
return $tmpFiles;
}
- /**
- * @see FileBackendStore::directoriesAreVirtual()
- * @return bool
- */
protected function directoriesAreVirtual() {
return false;
}
- /**
- * @see FileBackendStore::doExecuteOpHandlesInternal()
- * @return Array List of corresponding Status objects
- */
protected function doExecuteOpHandlesInternal( array $fileOpHandles ) {
$statuses = array();
}
/**
- * @param $errno integer
- * @param $errstr string
+ * @param integer $errno
+ * @param string $errstr
* @return bool
* @access private
*/
public $chmodPath; // string; file to chmod
/**
- * @param $backend
- * @param $params array
- * @param $call
- * @param $cmd
- * @param $chmodPath null
+ * @param FSFileBackend $backend
+ * @param array $params
+ * @param string $call
+ * @param string $cmd
+ * @param integer|null $chmodPath
*/
- public function __construct( $backend, array $params, $call, $cmd, $chmodPath = null ) {
+ public function __construct(
+ FSFileBackend $backend, array $params, $call, $cmd, $chmodPath = null
+ ) {
$this->backend = $backend;
$this->params = $params;
$this->call = $call;
/**
* @param string $dir file system directory
- * @param $params array
+ * @param array $params
*/
public function __construct( $dir, array $params ) {
$path = realpath( $dir ); // normalize
try {
$this->iter->next();
$this->filterViaNext();
- } catch ( UnexpectedValueException $e ) {
- $this->iter = null;
+ } catch ( UnexpectedValueException $e ) { // bad permissions? deleted?
+ throw new FileBackendError( "File iterator gave UnexpectedValueException." );
}
++$this->pos;
}
try {
$this->iter->rewind();
$this->filterViaNext();
- } catch ( UnexpectedValueException $e ) {
- $this->iter = null;
+ } catch ( UnexpectedValueException $e ) { // bad permissions? deleted?
+ throw new FileBackendError( "File iterator gave UnexpectedValueException." );
}
}
* Return only the relative path and normalize slashes to FileBackend-style.
* Uses the "real path" since the suffix is based upon that.
*
- * @param $path string
+ * @param string $path
* @return string
*/
protected function getRelPath( $dir ) {
* Allowed values are "implicit", "explicit" and "off".
* - concurrency : How many file operations can be done in parallel.
*
- * @param $config Array
+ * @param array $config
* @throws MWException
*/
public function __construct( array $config ) {
*
* Storage backends with eventual consistency might return stale data.
*
- * @param $params array
+ * @param array $params
* $params include:
* - dir : storage directory
* @return bool|null Returns null on failure
*
* Storage backends with eventual consistency might return stale data.
*
- * @param $params array
+ * Failures during iteration can result in FileBackendError exceptions (since 1.22).
+ *
+ * @param array $params
* $params include:
* - dir : storage directory
* - topOnly : only return direct child dirs of the directory
*
* Storage backends with eventual consistency might return stale data.
*
- * @param $params array
+ * Failures during iteration can result in FileBackendError exceptions (since 1.22).
+ *
+ * @param array $params
* $params include:
* - dir : storage directory
* @return Traversable|Array|null Returns null on failure
*
* Storage backends with eventual consistency might return stale data.
*
- * @param $params array
+ * Failures during iteration can result in FileBackendError exceptions (since 1.22).
+ *
+ * @param array $params
* $params include:
* - dir : storage directory
* - topOnly : only return direct child files of the directory (since 1.20)
*
* Storage backends with eventual consistency might return stale data.
*
- * @param $params array
+ * Failures during iteration can result in FileBackendError exceptions (since 1.22).
+ *
+ * @param array $params
* $params include:
* - dir : storage directory
* - adviseStat : set to true if stat requests will be made on the files (since 1.22)
* Callers should consider using getScopedFileLocks() instead.
*
* @param array $paths Storage paths
- * @param $type integer LockManager::LOCK_* constant
+ * @param integer $type LockManager::LOCK_* constant
* @return Status
*/
final public function lockFiles( array $paths, $type ) {
* Unlock the files at the given storage paths in the backend.
*
* @param array $paths Storage paths
- * @param $type integer LockManager::LOCK_* constant
+ * @param integer $type LockManager::LOCK_* constant
* @return Status
*/
final public function unlockFiles( array $paths, $type ) {
* the status updated. Unlock fatals will not change the status "OK" value.
*
* @param array $paths Storage paths
- * @param $type integer LockManager::LOCK_* constant
- * @param $status Status Status to update on lock/unlock
+ * @param integer $type LockManager::LOCK_* constant
+ * @param Status $status Status to update on lock/unlock
* @return ScopedLock|null Returns null on failure
*/
final public function getScopedFileLocks( array $paths, $type, Status $status ) {
* @see FileBackend::doOperations()
*
* @param array $ops List of file operations to FileBackend::doOperations()
- * @param $status Status Status to update on lock/unlock
+ * @param Status $status Status to update on lock/unlock
* @return Array List of ScopedFileLocks or null values
* @since 1.20
*/
* Check if a given path is a "mwstore://" path.
* This does not do any further validation or any existence checks.
*
- * @param $path string
+ * @param string $path
* @return bool
*/
final public static function isStoragePath( $path ) {
* and a relative file path. The relative path may be the empty string.
* This does not do any path normalization or traversal checks.
*
- * @param $storagePath string
+ * @param string $storagePath
* @return Array (backend, container, rel object) or (null, null, null)
*/
final public static function splitStoragePath( $storagePath ) {
* Normalize a storage path by cleaning up directory separators.
* Returns null if the path is not of the format of a valid storage path.
*
- * @param $storagePath string
+ * @param string $storagePath
* @return string|null
*/
final public static function normalizeStoragePath( $storagePath ) {
* This returns a path like "mwstore://backend/container",
* "mwstore://backend/container/...", or null if there is no parent.
*
- * @param $storagePath string
+ * @param string $storagePath
* @return string|null
*/
final public static function parentStoragePath( $storagePath ) {
/**
* Get the final extension from a storage or FS path
*
- * @param $path string
+ * @param string $path
* @return string
*/
final public static function extensionFromPath( $path ) {
/**
* Check if a relative path has no directory traversals
*
- * @param $path string
+ * @param string $path
* @return bool
* @since 1.20
*/
return $path;
}
}
+
+/**
+ * @ingroup FileBackend
+ * @since 1.22
+ */
+class FileBackendError extends MWException {}
/**
* Register an array of file backend configurations
*
- * @param $configs Array
+ * @param Array $configs
* @return void
* @throws MWException
*/
/**
* Get the backend object with a given name
*
- * @param $name string
+ * @param string $name
* @return FileBackend
* @throws MWException
*/
/**
* Get the config array for a backend object with a given name
*
- * @param $name string
+ * @param string $name
* @return Array
* @throws MWException
*/
/**
* Get an appropriate backend object from a storage path
*
- * @param $storagePath string
+ * @param string $storagePath
* @return FileBackend|null Backend or null on failure
*/
public function backendFromPath( $storagePath ) {
* - noPushQuickOps : (hack) Only apply doQuickOperations() to the master backend.
* - noPushDirConts : (hack) Only apply directory functions to the master backend.
*
- * @param $config Array
+ * @param Array $config
* @throws MWException
*/
public function __construct( array $config ) {
}
}
- /**
- * @see FileBackend::doOperationsInternal()
- * @return Status
- */
final protected function doOperationsInternal( array $ops, array $opts ) {
$status = Status::newGood();
* for a set of operations with that of a given internal backend.
*
* @param array $ops List of file operation arrays
- * @param $backend FileBackendStore
+ * @param FileBackendStore $backend
* @return Array
*/
protected function substOpBatchPaths( array $ops, FileBackendStore $backend ) {
* Same as substOpBatchPaths() but for a single operation
*
* @param array $ops File operation array
- * @param $backend FileBackendStore
+ * @param FileBackendStore $backend
* @return Array
*/
protected function substOpPaths( array $ops, FileBackendStore $backend ) {
* Substitute the backend of storage paths with an internal backend's name
*
* @param array|string $paths List of paths or single string path
- * @param $backend FileBackendStore
+ * @param FileBackendStore $backend
* @return Array|string
*/
protected function substPaths( $paths, FileBackendStore $backend ) {
);
}
- /**
- * @see FileBackend::doQuickOperationsInternal()
- * @return Status
- */
protected function doQuickOperationsInternal( array $ops ) {
$status = Status::newGood();
// Do the operations on the master backend; setting Status fields...
return !in_array( $shortCont, $this->noPushDirConts );
}
- /**
- * @see FileBackend::doPrepare()
- * @return Status
- */
protected function doPrepare( array $params ) {
$status = Status::newGood();
$replicate = $this->replicateContainerDirChanges( $params['dir'] );
return $status;
}
- /**
- * @see FileBackend::doSecure()
- * @param $params array
- * @return Status
- */
protected function doSecure( array $params ) {
$status = Status::newGood();
$replicate = $this->replicateContainerDirChanges( $params['dir'] );
return $status;
}
- /**
- * @see FileBackend::doPublish()
- * @param $params array
- * @return Status
- */
protected function doPublish( array $params ) {
$status = Status::newGood();
$replicate = $this->replicateContainerDirChanges( $params['dir'] );
return $status;
}
- /**
- * @see FileBackend::doClean()
- * @param $params array
- * @return Status
- */
protected function doClean( array $params ) {
$status = Status::newGood();
$replicate = $this->replicateContainerDirChanges( $params['dir'] );
return $status;
}
- /**
- * @see FileBackend::concatenate()
- * @param $params array
- * @return Status
- */
public function concatenate( array $params ) {
// We are writing to an FS file, so we don't need to do this per-backend
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->concatenate( $realParams );
}
- /**
- * @see FileBackend::fileExists()
- * @param $params array
- * @return bool|null
- */
public function fileExists( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->fileExists( $realParams );
}
- /**
- * @see FileBackend::getFileTimestamp()
- * @param $params array
- * @return bool|string
- */
public function getFileTimestamp( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getFileTimestamp( $realParams );
}
- /**
- * @see FileBackend::getFileSize()
- * @param $params array
- * @return bool|int
- */
public function getFileSize( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getFileSize( $realParams );
}
- /**
- * @see FileBackend::getFileStat()
- * @param $params array
- * @return Array|bool|null
- */
public function getFileStat( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getFileStat( $realParams );
}
- /**
- * @see FileBackend::getFileContentsMulti()
- * @param $params array
- * @return bool|string
- */
public function getFileContentsMulti( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
$contentsM = $this->backends[$this->masterIndex]->getFileContentsMulti( $realParams );
return $contents;
}
- /**
- * @see FileBackend::getFileSha1Base36()
- * @param $params array
- * @return bool|string
- */
public function getFileSha1Base36( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getFileSha1Base36( $realParams );
}
- /**
- * @see FileBackend::getFileProps()
- * @param $params array
- * @return Array
- */
public function getFileProps( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getFileProps( $realParams );
}
- /**
- * @see FileBackend::streamFile()
- * @param $params array
- * @return \Status
- */
public function streamFile( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->streamFile( $realParams );
}
- /**
- * @see FileBackend::getLocalReferenceMulti()
- * @param $params array
- * @return FSFile|null
- */
public function getLocalReferenceMulti( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
$fsFilesM = $this->backends[$this->masterIndex]->getLocalReferenceMulti( $realParams );
return $fsFiles;
}
- /**
- * @see FileBackend::getLocalCopyMulti()
- * @param $params array
- * @return null|TempFSFile
- */
public function getLocalCopyMulti( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
$tempFilesM = $this->backends[$this->masterIndex]->getLocalCopyMulti( $realParams );
return $tempFiles;
}
- /**
- * @see FileBackend::getFileHttpUrl()
- * @return string|null
- */
public function getFileHttpUrl( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getFileHttpUrl( $realParams );
}
- /**
- * @see FileBackend::directoryExists()
- * @param $params array
- * @return bool|null
- */
public function directoryExists( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->directoryExists( $realParams );
}
- /**
- * @see FileBackend::getSubdirectoryList()
- * @param $params array
- * @return Array|null|Traversable
- */
public function getDirectoryList( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getDirectoryList( $realParams );
}
- /**
- * @see FileBackend::getFileList()
- * @param $params array
- * @return Array|null|\Traversable
- */
public function getFileList( array $params ) {
$realParams = $this->substOpPaths( $params, $this->backends[$this->masterIndex] );
return $this->backends[$this->masterIndex]->getFileList( $realParams );
}
- /**
- * @see FileBackend::clearCache()
- */
public function clearCache( array $paths = null ) {
foreach ( $this->backends as $backend ) {
$realPaths = is_array( $paths ) ? $this->substPaths( $paths, $backend ) : null;
}
}
- /**
- * @see FileBackend::getScopedLocksForOps()
- */
public function getScopedLocksForOps( array $ops, Status $status ) {
$fileOps = $this->backends[$this->masterIndex]->getOperationsInternal( $ops );
// Get the paths to lock from the master backend
/**
* @see FileBackend::__construct()
*
- * @param $config Array
+ * @param array $config
*/
public function __construct( array $config ) {
parent::__construct( $config );
* written under it, and that any file already there is writable.
* Backends using key/value stores should check if the container exists.
*
- * @param $storagePath string
+ * @param string $storagePath
* @return bool
*/
abstract public function isPathUsableInternal( $storagePath );
* @return Status
*/
final public function createInternal( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
if ( strlen( $params['content'] ) > $this->maxFileSizeInternal() ) {
$status = Status::newFatal( 'backend-fail-maxsize',
$params['dst'], $this->maxFileSizeInternal() );
$this->deleteFileCache( $params['dst'] ); // persistent cache
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
* @return Status
*/
final public function storeInternal( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
if ( filesize( $params['src'] ) > $this->maxFileSizeInternal() ) {
$status = Status::newFatal( 'backend-fail-maxsize',
$params['dst'], $this->maxFileSizeInternal() );
$this->deleteFileCache( $params['dst'] ); // persistent cache
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
* @return Status
*/
final public function copyInternal( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = $this->doCopyInternal( $params );
$this->clearCache( array( $params['dst'] ) );
if ( !isset( $params['dstExists'] ) || $params['dstExists'] ) {
$this->deleteFileCache( $params['dst'] ); // persistent cache
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
* @return Status
*/
final public function deleteInternal( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = $this->doDeleteInternal( $params );
$this->clearCache( array( $params['src'] ) );
$this->deleteFileCache( $params['src'] ); // persistent cache
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
* @return Status
*/
final public function moveInternal( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = $this->doMoveInternal( $params );
$this->clearCache( array( $params['src'], $params['dst'] ) );
$this->deleteFileCache( $params['src'] ); // persistent cache
if ( !isset( $params['dstExists'] ) || $params['dstExists'] ) {
$this->deleteFileCache( $params['dst'] ); // persistent cache
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
* @return Status
*/
final public function describeInternal( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
if ( count( $params['headers'] ) ) {
$status = $this->doDescribeInternal( $params );
$this->clearCache( array( $params['src'] ) );
} else {
$status = Status::newGood(); // nothing to do
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
return Status::newGood();
}
- /**
- * @see FileBackend::concatenate()
- * @return Status
- */
final public function concatenate( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
// Try to lock the source files for the scope of this function
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
return $status;
}
- /**
- * @see FileBackend::doPrepare()
- * @return Status
- */
final protected function doPrepare( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
-
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
+
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
if ( $dir === null ) {
$status->fatal( 'backend-fail-invalidpath', $params['dir'] );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status; // invalid storage path
}
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
return Status::newGood();
}
- /**
- * @see FileBackend::doSecure()
- * @return Status
- */
final protected function doSecure( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
if ( $dir === null ) {
$status->fatal( 'backend-fail-invalidpath', $params['dir'] );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status; // invalid storage path
}
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
return Status::newGood();
}
- /**
- * @see FileBackend::doPublish()
- * @return Status
- */
final protected function doPublish( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
if ( $dir === null ) {
$status->fatal( 'backend-fail-invalidpath', $params['dir'] );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status; // invalid storage path
}
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
return Status::newGood();
}
- /**
- * @see FileBackend::doClean()
- * @return Status
- */
final protected function doClean( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
// Recursive: first delete all empty subdirs recursively
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
if ( $dir === null ) {
$status->fatal( 'backend-fail-invalidpath', $params['dir'] );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status; // invalid storage path
}
$filesLockEx = array( $params['dir'] );
$scopedLockE = $this->getScopedFileLocks( $filesLockEx, LockManager::LOCK_EX, $status );
if ( !$status->isOK() ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status; // abort
}
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
return Status::newGood();
}
- /**
- * @see FileBackend::fileExists()
- * @return bool|null
- */
final public function fileExists( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$stat = $this->getFileStat( $params );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return ( $stat === null ) ? null : (bool)$stat; // null => failure
}
- /**
- * @see FileBackend::getFileTimestamp()
- * @return bool
- */
final public function getFileTimestamp( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$stat = $this->getFileStat( $params );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $stat ? $stat['mtime'] : false;
}
- /**
- * @see FileBackend::getFileSize()
- * @return bool
- */
final public function getFileSize( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$stat = $this->getFileStat( $params );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $stat ? $stat['size'] : false;
}
- /**
- * @see FileBackend::getFileStat()
- * @return bool
- */
final public function getFileStat( array $params ) {
$path = self::normalizeStoragePath( $params['src'] );
if ( $path === null ) {
return false; // invalid storage path
}
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$latest = !empty( $params['latest'] ); // use latest data?
if ( !$this->cheapCache->has( $path, 'stat', self::CACHE_TTL ) ) {
$this->primeFileCache( array( $path ) ); // check persistent cache
// value was in fact fetched with the latest available data.
if ( is_array( $stat ) ) {
if ( !$latest || $stat['latest'] ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $stat;
}
} elseif ( in_array( $stat, array( 'NOT_EXIST', 'NOT_EXIST_LATEST' ) ) ) {
if ( !$latest || $stat === 'NOT_EXIST_LATEST' ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return false;
}
}
} else { // an error occurred
wfDebug( __METHOD__ . ": Could not stat file $path.\n" );
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $stat;
}
*/
abstract protected function doGetFileStat( array $params );
- /**
- * @see FileBackend::getFileContentsMulti()
- * @return Array
- */
public function getFileContentsMulti( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$params = $this->setConcurrencyFlags( $params );
$contents = $this->doGetFileContentsMulti( $params );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $contents;
}
return $contents;
}
- /**
- * @see FileBackend::getFileSha1Base36()
- * @return bool|string
- */
final public function getFileSha1Base36( array $params ) {
$path = self::normalizeStoragePath( $params['src'] );
if ( $path === null ) {
return false; // invalid storage path
}
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$latest = !empty( $params['latest'] ); // use latest data?
if ( $this->cheapCache->has( $path, 'sha1', self::CACHE_TTL ) ) {
$stat = $this->cheapCache->get( $path, 'sha1' );
// If we want the latest data, check that this cached
// value was in fact fetched with the latest available data.
if ( !$latest || $stat['latest'] ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $stat['hash'];
}
}
wfProfileOut( __METHOD__ . '-miss-' . $this->name );
wfProfileOut( __METHOD__ . '-miss' );
$this->cheapCache->set( $path, 'sha1', array( 'hash' => $hash, 'latest' => $latest ) );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $hash;
}
}
}
- /**
- * @see FileBackend::getFileProps()
- * @return Array
- */
final public function getFileProps( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$fsFile = $this->getLocalReference( $params );
$props = $fsFile ? $fsFile->getProps() : FSFile::placeholderProps();
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $props;
}
- /**
- * @see FileBackend::getLocalReferenceMulti()
- * @return Array
- */
final public function getLocalReferenceMulti( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$params = $this->setConcurrencyFlags( $params );
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $fsFiles;
}
return $this->doGetLocalCopyMulti( $params );
}
- /**
- * @see FileBackend::getLocalCopyMulti()
- * @return Array
- */
final public function getLocalCopyMulti( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$params = $this->setConcurrencyFlags( $params );
$tmpFiles = $this->doGetLocalCopyMulti( $params );
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $tmpFiles;
}
return null; // not supported
}
- /**
- * @see FileBackend::streamFile()
- * @return Status
- */
final public function streamFile( array $params ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
$info = $this->getFileStat( $params );
$status->fatal( 'backend-fail-stream', $params['src'] );
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
return $status;
}
- /**
- * @see FileBackend::directoryExists()
- * @return bool|null
- */
final public function directoryExists( array $params ) {
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
if ( $dir === null ) {
*/
abstract protected function doDirectoryExists( $container, $dir, array $params );
- /**
- * @see FileBackend::getDirectoryList()
- * @return Traversable|Array|null Returns null on failure
- */
final public function getDirectoryList( array $params ) {
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
if ( $dir === null ) { // invalid storage path
*/
abstract public function getDirectoryListInternal( $container, $dir, array $params );
- /**
- * @see FileBackend::getFileList()
- * @return Traversable|Array|null Returns null on failure
- */
final public function getFileList( array $params ) {
list( $fullCont, $dir, $shard ) = $this->resolveStoragePath( $params['dir'] );
if ( $dir === null ) { // invalid storage path
return $paths;
}
- /**
- * @see FileBackend::getScopedLocksForOps()
- * @return Array
- */
public function getScopedLocksForOps( array $ops, Status $status ) {
$paths = $this->getPathsToLockForOpsInternal( $this->getOperationsInternal( $ops ) );
return array(
);
}
- /**
- * @see FileBackend::doOperationsInternal()
- * @return Status
- */
final protected function doOperationsInternal( array $ops, array $opts ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
// Fix up custom header name/value pairs...
$scopeLockS = $this->getScopedFileLocks( $paths['sh'], LockManager::LOCK_UW, $status );
$scopeLockE = $this->getScopedFileLocks( $paths['ex'], LockManager::LOCK_EX, $status );
if ( !$status->isOK() ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status; // abort
}
}
$status->merge( $subStatus );
$status->success = $subStatus->success; // not done in merge()
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
- /**
- * @see FileBackend::doQuickOperationsInternal()
- * @return Status
- * @throws MWException
- */
final protected function doQuickOperationsInternal( array $ops ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$status = Status::newGood();
// Fix up custom header name/value pairs...
// Perform the sync-only ops and build up op handles for the async ops...
foreach ( $ops as $index => $params ) {
if ( !in_array( $params['op'], $supportedOps ) ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
throw new MWException( "Operation '{$params['op']}' is not supported." );
}
$method = $params['op'] . 'Internal'; // e.g. "storeInternal"
}
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $status;
}
* @throws MWException
*/
final public function executeOpHandlesInternal( array $fileOpHandles ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
foreach ( $fileOpHandles as $fileOpHandle ) {
if ( !( $fileOpHandle instanceof FileBackendStoreOpHandle ) ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
throw new MWException( "Given a non-FileBackendStoreOpHandle object." );
} elseif ( $fileOpHandle->backend->getName() !== $this->getName() ) {
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
throw new MWException( "Given a FileBackendStoreOpHandle for the wrong backend." );
}
}
foreach ( $fileOpHandles as $fileOpHandle ) {
$fileOpHandle->closeResources();
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
return $res;
}
return $op;
}
- /**
- * @see FileBackend::preloadCache()
- */
final public function preloadCache( array $paths ) {
$fullConts = array(); // full container names
foreach ( $paths as $path ) {
$this->primeFileCache( $paths );
}
- /**
- * @see FileBackend::clearCache()
- */
final public function clearCache( array $paths = null ) {
if ( is_array( $paths ) ) {
$paths = array_map( 'FileBackend::normalizeStoragePath', $paths );
* Check if a container name is valid.
* This checks for for length and illegal characters.
*
- * @param $container string
+ * @param string $container
* @return bool
*/
final protected static function isValidContainerName( $container ) {
* this means that the path can only refer to a directory and can only
* be scanned by looking in all the container shards.
*
- * @param $storagePath string
+ * @param string $storagePath
* @return Array (container, path, container suffix) or (null, null, null) if invalid
*/
final protected function resolveStoragePath( $storagePath ) {
*
* @see FileBackendStore::resolveStoragePath()
*
- * @param $storagePath string
+ * @param string $storagePath
* @return Array (container, path) or (null, null) if invalid
*/
final protected function resolveStoragePathReal( $storagePath ) {
* If greater than 0, then all file storage paths within
* the container are required to be hashed accordingly.
*
- * @param $container string
+ * @param string $container
* @return Array (integer levels, integer base, repeat flag) or (0, 0, false)
*/
final protected function getContainerHashLevels( $container ) {
/**
* Get a list of full container shard suffixes for a container
*
- * @param $container string
+ * @param string $container
* @return Array
*/
final protected function getContainerSuffixes( $container ) {
/**
* Get the full container name, including the wiki ID prefix
*
- * @param $container string
+ * @param string $container
* @return string
*/
final protected function fullContainerName( $container ) {
* This is intended for internal use, such as encoding illegal chars.
* Subclasses can override this to be more restrictive.
*
- * @param $container string
+ * @param string $container
* @return string|null
*/
protected function resolveContainerName( $container ) {
* used in a list of container names, storage paths, or FileOp objects.
* This loads the persistent cache values into the process cache.
*
- * @param $items Array
+ * @param Array $items
* @return void
*/
final protected function primeContainerCache( array $items ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$paths = array(); // list of storage paths
$contNames = array(); // (cache key => resolved container name)
// Populate the container process cache for the backend...
$this->doPrimeContainerCache( array_filter( $contInfo, 'is_array' ) );
-
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
}
/**
* @return void
*/
final protected function primeFileCache( array $items ) {
- wfProfileIn( __METHOD__ );
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . "-{$this->name}" );
$paths = array(); // list of storage paths
$pathNames = array(); // (cache key => storage path)
}
}
}
-
- wfProfileOut( __METHOD__ . '-' . $this->name );
- wfProfileOut( __METHOD__ );
}
/**
protected $multiShardPaths = array(); // (rel path => 1)
/**
- * @param $backend FileBackendStore
+ * @param FileBackendStore $backend
* @param string $container Full storage container name
* @param string $dir Storage directory relative to container
* @param array $suffixes List of container shard suffixes
/**
* Build a new batch file operation transaction
*
- * @param $backend FileBackendStore
- * @param $params Array
+ * @param FileBackendStore $backend
+ * @param Array $params
* @throws MWException
*/
final public function __construct( FileBackendStore $backend, array $params ) {
/**
* Normalize $item or anything in $item that is a valid storage path
*
- * @param $item string|array
+ * @param string $item|array
* @return string|Array
*/
protected function normalizeAnyStoragePaths( $item ) {
/**
* Normalize a string if it is a valid storage path
*
- * @param $path string
+ * @param string $path
* @return string
*/
protected static function normalizeIfValidStoragePath( $path ) {
/**
* Set the batch UUID this operation belongs to
*
- * @param $batchId string
+ * @param string $batchId
* @return void
*/
final public function setBatchId( $batchId ) {
/**
* Get the value of the parameter with the given name
*
- * @param $name string
+ * @param string $name
* @return mixed Returns null if the parameter is not set
*/
final public function getParam( $name ) {
* This must update $predicates for each path that the op can change
* except when a failing status object is returned.
*
- * @param $predicates Array
+ * @param Array $predicates
* @return Status
*/
final public function precheck( array &$predicates ) {
/**
* Adjust params to FileBackendStore internal file calls
*
- * @param $params Array
+ * @param Array $params
* @return Array (required params list, optional params list)
*/
protected function setFlags( array $params ) {
* Also set the destExists, overwriteSameCase and sourceSha1 member variables.
* A bad status will be returned if there is no chance it can be overwritten.
*
- * @param $predicates Array
+ * @param Array $predicates
* @return Status
*/
protected function precheckDestExistence( array $predicates ) {
* Check if a file will exist in storage when this operation is attempted
*
* @param string $source Storage path
- * @param $predicates Array
+ * @param Array $predicates
* @return bool
*/
final protected function fileExists( $source, array $predicates ) {
* Get the SHA-1 of a file in storage when this operation is attempted
*
* @param string $source Storage path
- * @param $predicates Array
+ * @param Array $predicates
* @return string|bool False on failure
*/
final protected function fileSha1( $source, array $predicates ) {
/**
* Log a file operation failure and preserve any temp files
*
- * @param $action string
+ * @param string $action
* @return void
*/
final public function logFailure( $action ) {
return $status; // safe to call attempt()
}
- /**
- * @return Status
- */
protected function doAttempt() {
if ( !$this->overwriteSameCase ) {
// Create the file at the destination
return Status::newGood();
}
- /**
- * @return bool|String
- */
protected function getSourceSha1Base36() {
return wfBaseConvert( sha1( $this->params['content'] ), 16, 36, 31 );
}
- /**
- * @return array
- */
public function storagePathsChanged() {
return array( $this->params['dst'] );
}
* Parameters for this operation are outlined in FileBackend::doOperations().
*/
class StoreFileOp extends FileOp {
- /**
- * @return array
- */
protected function allowedParams() {
return array( array( 'src', 'dst' ),
array( 'overwrite', 'overwriteSame', 'headers' ) );
}
- /**
- * @param $predicates array
- * @return Status
- */
protected function doPrecheck( array &$predicates ) {
$status = Status::newGood();
// Check if the source file exists on the file system
return $status; // safe to call attempt()
}
- /**
- * @return Status
- */
protected function doAttempt() {
if ( !$this->overwriteSameCase ) {
// Store the file at the destination
return Status::newGood();
}
- /**
- * @return bool|string
- */
protected function getSourceSha1Base36() {
wfSuppressWarnings();
$hash = sha1_file( $this->params['src'] );
* Parameters for this operation are outlined in FileBackend::doOperations().
*/
class CopyFileOp extends FileOp {
- /**
- * @return array
- */
protected function allowedParams() {
return array( array( 'src', 'dst' ),
array( 'overwrite', 'overwriteSame', 'ignoreMissingSource', 'headers' ) );
}
- /**
- * @param $predicates array
- * @return Status
- */
protected function doPrecheck( array &$predicates ) {
$status = Status::newGood();
// Check if the source file exists
return $status; // safe to call attempt()
}
- /**
- * @return Status
- */
protected function doAttempt() {
if ( $this->overwriteSameCase ) {
$status = Status::newGood(); // nothing to do
return $status;
}
- /**
- * @return array
- */
public function storagePathsRead() {
return array( $this->params['src'] );
}
- /**
- * @return array
- */
public function storagePathsChanged() {
return array( $this->params['dst'] );
}
* Parameters for this operation are outlined in FileBackend::doOperations().
*/
class MoveFileOp extends FileOp {
- /**
- * @return array
- */
protected function allowedParams() {
return array( array( 'src', 'dst' ),
array( 'overwrite', 'overwriteSame', 'ignoreMissingSource', 'headers' ) );
}
- /**
- * @param $predicates array
- * @return Status
- */
protected function doPrecheck( array &$predicates ) {
$status = Status::newGood();
// Check if the source file exists
return $status; // safe to call attempt()
}
- /**
- * @return Status
- */
protected function doAttempt() {
if ( $this->overwriteSameCase ) {
if ( $this->params['src'] === $this->params['dst'] ) {
return $status;
}
- /**
- * @return array
- */
public function storagePathsRead() {
return array( $this->params['src'] );
}
- /**
- * @return array
- */
public function storagePathsChanged() {
return array( $this->params['src'], $this->params['dst'] );
}
* Parameters for this operation are outlined in FileBackend::doOperations().
*/
class DeleteFileOp extends FileOp {
- /**
- * @return array
- */
protected function allowedParams() {
return array( array( 'src' ), array( 'ignoreMissingSource' ) );
}
- /**
- * @param $predicates array
- * @return Status
- */
protected function doPrecheck( array &$predicates ) {
$status = Status::newGood();
// Check if the source file exists
return $status; // safe to call attempt()
}
- /**
- * @return Status
- */
protected function doAttempt() {
// Delete the source file
return $this->backend->deleteInternal( $this->setFlags( $this->params ) );
}
- /**
- * @return array
- */
public function storagePathsChanged() {
return array( $this->params['src'] );
}
* Parameters for this operation are outlined in FileBackend::doOperations().
*/
class DescribeFileOp extends FileOp {
- /**
- * @return array
- */
protected function allowedParams() {
return array( array( 'src' ), array( 'headers' ) );
}
- /**
- * @param $predicates array
- * @return Status
- */
protected function doPrecheck( array &$predicates ) {
$status = Status::newGood();
// Check if the source file exists
return $status; // safe to call attempt()
}
- /**
- * @return Status
- */
protected function doAttempt() {
// Update the source file's metadata
return $this->backend->describeInternal( $this->setFlags( $this->params ) );
}
- /**
- * @return array
- */
public function storagePathsChanged() {
return array( $this->params['src'] );
}
*
* @param array $performOps List of FileOp operations
* @param array $opts Batch operation options
- * @param $journal FileJournal Journal to log operations to
+ * @param FileJournal $journal Journal to log operations to
* @return Status
*/
public static function attempt( array $performOps, array $opts, FileJournal $journal ) {
* within any given sub-batch do not depend on each other.
* This will abort remaining ops on failure.
*
- * @param $pPerformOps Array
- * @param $status Status
+ * @param Array $pPerformOps
+ * @param Status $status
* @return bool Success
*/
protected static function runParallelBatches( array $pPerformOps, Status $status ) {
The following basic operations are supported for reading from a backend:
On files:
-* state a file for basic information (timestamp, size)
+* stat a file for basic information (timestamp, size)
* read a file into a string or several files into a map of path names to strings
* download a file or set of files to a temporary file (on a mounted file system)
* get the SHA1 hash of a file
return $relStoragePath;
}
- /**
- * @see FileBackendStore::isPathUsableInternal()
- * @return bool
- */
public function isPathUsableInternal( $storagePath ) {
list( $container, $rel ) = $this->resolveStoragePathReal( $storagePath );
if ( $rel === null ) {
}
/**
- * @param $headers array
+ * @param array $headers
* @return array
*/
protected function sanitizeHdrs( array $headers ) {
}
/**
- * @param $disposition string Content-Disposition header value
+ * @param string $disposition Content-Disposition header value
* @return string Truncated Content-Disposition header value to meet Swift limits
*/
protected function truncDisp( $disposition ) {
return $res;
}
- /**
- * @see FileBackendStore::doCreateInternal()
- * @return Status
- */
protected function doCreateInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doStoreInternal()
- * @return Status
- */
protected function doStoreInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doCopyInternal()
- * @return Status
- */
protected function doCopyInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doMoveInternal()
- * @return Status
- */
protected function doMoveInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doDeleteInternal()
- * @return Status
- */
protected function doDeleteInternal( array $params ) {
$status = Status::newGood();
}
}
- /**
- * @see FileBackendStore::doDescribeInternal()
- * @return Status
- */
protected function doDescribeInternal( array $params ) {
$status = Status::newGood();
return $status;
}
- /**
- * @see FileBackendStore::doPrepareInternal()
- * @return Status
- */
protected function doPrepareInternal( $fullCont, $dir, array $params ) {
$status = Status::newGood();
return $status;
}
- /**
- * @see FileBackendStore::doCleanInternal()
- * @return Status
- */
protected function doCleanInternal( $fullCont, $dir, array $params ) {
$status = Status::newGood();
return $status;
}
- /**
- * @see FileBackendStore::doFileExists()
- * @return array|bool|null
- */
protected function doGetFileStat( array $params ) {
list( $srcCont, $srcRel ) = $this->resolveStoragePathReal( $params['src'] );
if ( $srcRel === null ) {
/**
* Fill in any missing object metadata and save it to Swift
*
- * @param $obj CF_Object
+ * @param CF_Object $obj
* @param string $path Storage path to object
* @return bool Success
* @throws Exception cloudfiles exceptions
return false; // failed
}
- /**
- * @see FileBackendStore::doGetFileContentsMulti()
- * @return Array
- */
protected function doGetFileContentsMulti( array $params ) {
$contents = array();
* @param string $fullCont Resolved container name
* @param string $dir Resolved storage directory with no trailing slash
* @param string|null $after Storage path of file to list items after
- * @param $limit integer Max number of items to list
+ * @param integer $limit Max number of items to list
* @param array $params Parameters for getDirectoryList()
* @return Array List of resolved paths of directories directly under $dir
+ * @throws FileBackendError
*/
public function getDirListPageInternal( $fullCont, $dir, &$after, $limit, array $params ) {
$dirs = array();
return $dirs; // nothing more
}
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . '-' . $this->name );
try {
$container = $this->getContainer( $fullCont );
$prefix = ( $dir == '' ) ? null : "{$dir}/";
} catch ( CloudFilesException $e ) { // some other exception?
$this->handleException( $e, null, __METHOD__,
array( 'cont' => $fullCont, 'dir' => $dir ) );
+ throw new FileBackendError( "Got " . get_class( $e ) . " exception." );
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
return $dirs;
}
* @param string $fullCont Resolved container name
* @param string $dir Resolved storage directory with no trailing slash
* @param string|null $after Storage path of file to list items after
- * @param $limit integer Max number of items to list
+ * @param integer $limit Max number of items to list
* @param array $params Parameters for getDirectoryList()
* @return Array List of resolved paths of files under $dir
+ * @throws FileBackendError
*/
public function getFileListPageInternal( $fullCont, $dir, &$after, $limit, array $params ) {
$files = array();
return $files; // nothing more
}
- wfProfileIn( __METHOD__ . '-' . $this->name );
+ $section = new ProfileSection( __METHOD__ . '-' . $this->name );
try {
$container = $this->getContainer( $fullCont );
$prefix = ( $dir == '' ) ? null : "{$dir}/";
} catch ( CloudFilesException $e ) { // some other exception?
$this->handleException( $e, null, __METHOD__,
array( 'cont' => $fullCont, 'dir' => $dir ) );
+ throw new FileBackendError( "Got " . get_class( $e ) . " exception." );
}
- wfProfileOut( __METHOD__ . '-' . $this->name );
return $files;
}
$names = array();
$storageDir = rtrim( $params['dir'], '/' );
$suffixStart = ( $dir === '' ) ? 0 : strlen( $dir ) + 1; // size of "path/to/dir/"
- foreach ( $cfObjects as $object ) {
+ // Iterate over the list *backwards* as this primes the stat cache, which is LRU.
+ // If this fills the cache and the caller stats an uncached file before stating
+ // the ones on the listing, there would be zero cache hits if this went forwards.
+ for ( end( $cfObjects ); key( $cfObjects ) !== null; prev( $cfObjects ) ) {
+ $object = current( $cfObjects );
$path = "{$storageDir}/" . substr( $object->name, $suffixStart );
$val = array(
// Convert dates like "Tue, 03 Jan 2012 22:01:04 GMT" to TS_MW
$this->cheapCache->set( $path, 'stat', $val );
$names[] = $object->name;
}
- return $names;
+ return array_reverse( $names ); // keep the paths in original order
}
- /**
- * @see FileBackendStore::doGetFileSha1base36()
- * @return bool
- */
protected function doGetFileSha1base36( array $params ) {
$stat = $this->getFileStat( $params );
if ( $stat ) {
}
}
- /**
- * @see FileBackendStore::doStreamFile()
- * @return Status
- */
protected function doStreamFile( array $params ) {
$status = Status::newGood();
return $status;
}
- /**
- * @see FileBackendStore::doGetLocalCopyMulti()
- * @return null|TempFSFile
- */
protected function doGetLocalCopyMulti( array $params ) {
$tmpFiles = array();
return $tmpFiles;
}
- /**
- * @see FileBackendStore::getFileHttpUrl()
- * @return string|null
- */
public function getFileHttpUrl( array $params ) {
if ( $this->swiftTempUrlKey != '' ||
( $this->rgwS3AccessKey != '' && $this->rgwS3SecretKey != '' ) )
return null;
}
- /**
- * @see FileBackendStore::directoriesAreVirtual()
- * @return bool
- */
protected function directoriesAreVirtual() {
return true;
}
return $hdrs;
}
- /**
- * @see FileBackendStore::doExecuteOpHandlesInternal()
- * @return Array List of corresponding Status objects
- */
protected function doExecuteOpHandlesInternal( array $fileOpHandles ) {
$statuses = array();
* In general, we don't allow listings to end-users. It's not useful, isn't well-defined
* (lists are truncated to 10000 item with no way to page), and is just a performance risk.
*
- * @param $contObj CF_Container Swift container
+ * @param CF_Container $contObj Swift container
* @param array $readGrps List of read access routes
* @param array $writeGrps List of write access routes
* @return Status
/**
* Get the cache key for a container
*
- * @param $username string
+ * @param string $username
* @return string
*/
private function getCredsCacheKey( $username ) {
$conn->delete_container( $container );
}
- /**
- * @see FileBackendStore::doPrimeContainerCache()
- * @return void
- */
protected function doPrimeContainerCache( array $containerInfo ) {
try {
$conn = $this->getConnection(); // Swift proxy connection
* Log an unexpected exception for this backend.
* This also sets the Status object to have a fatal error.
*
- * @param $e Exception
- * @param $status Status|null
- * @param $func string
+ * @param Exception $e
+ * @param Status $status|null
+ * @param string $func
* @param array $params
* @return void
*/
/** @var Array */
public $affectedObjects = array();
- public function __construct( $backend, array $params, $call, CF_Async_Op $cfOp ) {
+ /**
+ * @param SwiftFileBackend $backend
+ * @param array $params
+ * @param string $call
+ * @param CF_Async_Op $cfOp
+ */
+ public function __construct(
+ SwiftFileBackend $backend, array $params, $call, CF_Async_Op $cfOp
+ ) {
$this->backend = $backend;
$this->params = $params;
$this->call = $call;
const PAGE_SIZE = 9000; // file listing buffer size
/**
- * @param $backend SwiftFileBackend
+ * @param SwiftFileBackend $backend
* @param string $fullCont Resolved container name
* @param string $dir Resolved directory relative to container
* @param array $params
*
* @param string $container Resolved container name
* @param string $dir Resolved path relative to container
- * @param $after string|null
- * @param $limit integer
+ * @param string $after|null
+ * @param integer $limit
* @param array $params
- * @return Traversable|Array|null Returns null on failure
+ * @return Traversable|Array
*/
abstract protected function pageFromList( $container, $dir, &$after, $limit, array $params );
}
/**
* @see SwiftFileBackendList::pageFromList()
- * @return Array|null
+ * @return Array
*/
protected function pageFromList( $container, $dir, &$after, $limit, array $params ) {
return $this->backend->getDirListPageInternal( $container, $dir, $after, $limit, $params );
/**
* @see SwiftFileBackendList::pageFromList()
- * @return Array|null
+ * @return Array
*/
protected function pageFromList( $container, $dir, &$after, $limit, array $params ) {
return $this->backend->getFileListPageInternal( $container, $dir, $after, $limit, $params );
* Make a new temporary file on the file system.
* Temporary files may be purged when the file object falls out of scope.
*
- * @param $prefix string
- * @param $extension string
+ * @param string $prefix
+ * @param string $extension
* @return TempFSFile|null
*/
public static function factory( $prefix, $extension = '' ) {
/**
* Clean up the temporary file only after an object goes out of scope
*
- * @param $object Object
+ * @param Object $object
* @return TempFSFile This object
*/
public function bind( $object ) {
protected $domain; // string; domain (usually wiki ID)
protected $lockTTL; // integer; maximum time locks can be held
- /* Lock types; stronger locks have higher values */
+ /** Lock types; stronger locks have higher values */
const LOCK_SH = 1; // shared lock (for reads)
const LOCK_UW = 2; // shared lock (for reads used to write elsewhere)
const LOCK_EX = 3; // exclusive lock (for writes)
* @return Status
*/
final public function lock( array $paths, $type = self::LOCK_EX, $timeout = 0 ) {
+ return $this->lockByType( array( $type => $paths ), $timeout );
+ }
+
+ /**
+ * Lock the resources at the given abstract paths
+ *
+ * @param array $paths Map of LockManager::LOCK_* constants to lists of storage paths
+ * @param integer $timeout Timeout in seconds (0 means non-blocking) (since 1.21)
+ * @return Status
+ * @since 1.22
+ */
+ final public function lockByType( array $pathsByType, $timeout = 0 ) {
wfProfileIn( __METHOD__ );
+ $status = Status::newGood();
+ $pathsByType = $this->normalizePathsByType( $pathsByType );
$msleep = array( 0, 50, 100, 300, 500 ); // retry backoff times
$start = microtime( true );
do {
- $status = $this->doLock( array_unique( $paths ), $this->lockTypeMap[$type] );
+ $status = $this->doLockByType( $pathsByType );
$elapsed = microtime( true ) - $start;
if ( $status->isOK() || $elapsed >= $timeout || $elapsed < 0 ) {
break; // success, timeout, or clock set back
* @return Status
*/
final public function unlock( array $paths, $type = self::LOCK_EX ) {
+ return $this->unlockByType( array( $type => $paths ) );
+ }
+
+ /**
+ * Unlock the resources at the given abstract paths
+ *
+ * @param array $paths Map of LockManager::LOCK_* constants to lists of storage paths
+ * @return Status
+ * @since 1.22
+ */
+ final public function unlockByType( array $pathsByType ) {
wfProfileIn( __METHOD__ );
- $status = $this->doUnlock( array_unique( $paths ), $this->lockTypeMap[$type] );
+ $pathsByType = $this->normalizePathsByType( $pathsByType );
+ $status = $this->doUnlockByType( $pathsByType );
wfProfileOut( __METHOD__ );
return $status;
}
return sha1( "{$this->domain}:{$path}" );
}
+ /**
+ * Normalize the $paths array by converting LOCK_UW locks into the
+ * appropriate type and removing any duplicated paths for each lock type.
+ *
+ * @param array $paths Map of LockManager::LOCK_* constants to lists of storage paths
+ * @return Array
+ * @since 1.22
+ */
+ final protected function normalizePathsByType( array $pathsByType ) {
+ $res = array();
+ foreach ( $pathsByType as $type => $paths ) {
+ $res[$this->lockTypeMap[$type]] = array_unique( $paths );
+ }
+ return $res;
+ }
+
+ /**
+ * @see LockManager::lockByType()
+ * @param array $paths Map of LockManager::LOCK_* constants to lists of storage paths
+ * @return Status
+ * @since 1.22
+ */
+ protected function doLockByType( array $pathsByType ) {
+ $status = Status::newGood();
+ $lockedByType = array(); // map of (type => paths)
+ foreach ( $pathsByType as $type => $paths ) {
+ $status->merge( $this->doLock( $paths, $type ) );
+ if ( $status->isOK() ) {
+ $lockedByType[$type] = $paths;
+ } else {
+ // Release the subset of locks that were acquired
+ foreach ( $lockedByType as $type => $paths ) {
+ $status->merge( $this->doUnlock( $paths, $type ) );
+ }
+ break;
+ }
+ }
+ return $status;
+ }
+
/**
* Lock resources with the given keys and lock type
*
*/
abstract protected function doLock( array $paths, $type );
+ /**
+ * @see LockManager::unlockByType()
+ * @param array $paths Map of LockManager::LOCK_* constants to lists of storage paths
+ * @return Status
+ * @since 1.22
+ */
+ protected function doUnlockByType( array $pathsByType ) {
+ $status = Status::newGood();
+ foreach ( $pathsByType as $type => $paths ) {
+ $status->merge( $this->doUnlock( $paths, $type ) );
+ }
+ return $status;
+ }
+
/**
* Unlock resources with the given keys and lock type
*
protected $manager;
/** @var Status */
protected $status;
- /** @var Array List of resource paths*/
- protected $paths;
-
- protected $type; // integer lock type
+ /** @var Array Map of lock types to resource paths */
+ protected $pathsByType;
/**
- * @param $manager LockManager
- * @param array $paths List of storage paths
- * @param $type integer LockManager::LOCK_* constant
- * @param $status Status
+ * @param LockManager $manager
+ * @param array $pathsByType Map of lock types to path lists
+ * @param Status $status
*/
- protected function __construct(
- LockManager $manager, array $paths, $type, Status $status
- ) {
+ protected function __construct( LockManager $manager, array $pathsByType, Status $status ) {
$this->manager = $manager;
- $this->paths = $paths;
+ $this->pathsByType = $pathsByType;
$this->status = $status;
- $this->type = $type;
}
/**
* Any locks are released once this object goes out of scope.
* The status object is updated with any errors or warnings.
*
- * @param $manager LockManager
- * @param array $paths List of storage paths
- * @param $type integer LockManager::LOCK_* constant
- * @param $status Status
+ * $type can be "mixed" and $paths can be a map of types to paths (since 1.22).
+ * Otherwise $type should be an integer and $paths should be a list of paths.
+ *
+ * @param LockManager $manager
+ * @param array $paths List of storage paths or map of lock types to path lists
+ * @param integer|string $type LockManager::LOCK_* constant or "mixed"
+ * @param Status $status
+ * @param integer $timeout Timeout in seconds (0 means non-blocking) (since 1.22)
* @return ScopedLock|null Returns null on failure
*/
public static function factory(
- LockManager $manager, array $paths, $type, Status $status
+ LockManager $manager, array $paths, $type, Status $status, $timeout = 0
) {
- $lockStatus = $manager->lock( $paths, $type );
+ $pathsByType = is_integer( $type ) ? array( $type => $paths ) : $paths;
+ $lockStatus = $manager->lockByType( $pathsByType, $timeout );
$status->merge( $lockStatus );
if ( $lockStatus->isOK() ) {
- return new self( $manager, $paths, $type, $status );
+ return new self( $manager, $pathsByType, $status );
}
return null;
}
$lock = null;
}
+ /**
+ * Release the locks when this goes out of scope
+ */
function __destruct() {
$wasOk = $this->status->isOK();
- $this->status->merge( $this->manager->unlock( $this->paths, $this->type ) );
+ $this->status->merge( $this->manager->unlockByType( $this->pathsByType ) );
if ( $wasOk ) {
// Make sure status is OK, despite any unlockFiles() fatals
$this->status->setResult( true, $this->status->value );
* Return the width of the image
*
* @param $page int
- * @return bool|int Returns false on error
+ * @return int
*/
public function getWidth( $page = 1 ) {
$this->load();
if ( $dim ) {
return $dim['width'];
} else {
- return false;
+ // For non-paged media, the false goes through an
+ // intval, turning failure into 0, so do same here.
+ return 0;
}
} else {
return $this->width;
* Return the height of the image
*
* @param $page int
- * @return bool|int Returns false on error
+ * @return int
*/
public function getHeight( $page = 1 ) {
$this->load();
if ( $dim ) {
return $dim['height'];
} else {
- return false;
+ // For non-paged media, the false goes through an
+ // intval, turning failure into 0, so do same here.
+ return 0;
}
} else {
return $this->height;
// creation, page doesn't exist yet, so log_page = 0
// but we want it to point to the page we're making,
// so we later modify the log entry.
+ // For a similar reason, we avoid making an RC entry
+ // now and wait until the page exists.
$logId = $logEntry->insert();
- $logEntry->publish( $logId );
- wfProfileIn( __METHOD__ . '-edit' );
$exists = $descTitle->exists();
+ if ( $exists ) {
+ // Page exists, do RC entry now (otherwise we wait for later).
+ $logEntry->publish( $logId );
+ }
+ wfProfileIn( __METHOD__ . '-edit' );
if ( $exists ) {
# Create a null revision
$content = ContentHandler::makeContent( $pageText, $descTitle );
$status = $wikiPage->doEditContent( $content, $comment, EDIT_NEW | EDIT_SUPPRESS_RC, false, $user );
- if ( isset( $status->value['revision'] ) ) { // XXX; doEdit() uses a transaction
- $dbw->begin( __METHOD__ );
+ $dbw->begin( __METHOD__ ); // XXX; doEdit() uses a transaction
+ // Now that the page exists, make an RC entry.
+ $logEntry->publish( $logId );
+ if ( isset( $status->value['revision'] ) ) {
$dbw->update( 'logging',
array( 'log_page' => $status->value['revision']->getPage() ),
array( 'log_id' => $logId ),
__METHOD__
);
- $dbw->commit( __METHOD__ ); // commit before anything bad can happen
}
+ $dbw->commit( __METHOD__ ); // commit before anything bad can happen
}
+
+
wfProfileOut( __METHOD__ . '-edit' );
# Save to cache and purge the squid
# Invalidate cache for all pages using this file
$update = new HTMLCacheUpdate( $this->getTitle(), 'imagelinks' );
$update->doUpdate();
+ if ( !$reupload ) {
+ LinksUpdate::queueRecursiveJobsForTable( $this->getTitle(), 'imagelinks' );
+ }
# Invalidate cache for all pages that redirects on this page
$redirs = $this->getTitle()->getRedirectsHere();
foreach ( $redirs as $redir ) {
+ if ( !$reupload && $redir->getNamespace() === NS_FILE ) {
+ LinksUpdate::queueRecursiveJobsForTable( $redir, 'imagelinks' );
+ }
$update = new HTMLCacheUpdate( $redir, 'imagelinks' );
$update->doUpdate();
}
'config-missing-db-host' => 'You must enter a value for "Database host"',
'config-missing-db-server-oracle' => 'You must enter a value for "Database TNS"',
'config-invalid-db-server-oracle' => 'Invalid database TNS "$1".
-Use only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_) and dots (.).',
+Use either "TNS Name" or an "Easy Connect" string ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Oracle Naming Methods])',
'config-invalid-db-name' => 'Invalid database name "$1".
Use only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_) and hyphens (-).',
'config-invalid-db-prefix' => 'Invalid database prefix "$1".
'config-page-name' => '{{Identical|Name}}',
'config-page-options' => '{{Identical|Options}}',
'config-page-install' => '{{Identical|Install}}',
+ 'config-page-complete' => '{{Identical|Complete}}',
'config-page-releasenotes' => '{{Identical|Release notes}}',
'config-page-copying' => 'This is a link to the full GPL text',
'config-restart' => 'Button text to confirm the installation procedure has to be restarted.',
'config-db-web-account-same' => 'checkbox label',
'config-db-web-create' => 'checkbox label',
'config-mysql-only-myisam-dep' => 'Used as warning message when mysql does not support the minimum suggested feature set.',
+ 'config-mysql-binary' => '{{Identical|Binary}}',
'config-ns-generic' => 'Used as label for "namespace type" radio button.
See also:
* [//www.mediawiki.org/wiki/Help:Configuration_settings Konfigurimi i MediaWikit]
* [//www.mediawiki.org/wiki/Help:FAQ Pyetjet e shpeshta rreth MediaWikit]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Njoftime rreth MediaWikit]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Njoftime rreth MediaWikit]', # Fuzzy
);
/** Amharic (አማርኛ)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Aragonese (aragonés)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista de caracteristicas confegurables]
* [//www.mediawiki.org/wiki/Manual:FAQ Preguntas cutianas sobre MediaWiki (FAQ)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de correu sobre ta anuncios de MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de correu sobre ta anuncios de MediaWiki]", # Fuzzy
);
/** Old English (Ænglisc)
* @author Gott wisst
*/
$messages['ang'] = array(
- 'mainpagetext' => "'''MediaǷiki hafaþ ȝeƿorden spēdiȝe inseted.'''",
+ 'mainpagetext' => "'''MediaWiki hafaþ geworden spēdige inseted.'''",
'mainpagedocfooter' => 'Þeahta þone [//meta.wikimedia.org/wiki/Help:Contents Brūcenda Lǣdend] on helpe mid þǣre nytte of ƿikisōftƿare.
== Beȝinnunȝ ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Onfæstnunȝa ȝesetednessa ȝetæl]
* [//www.mediawiki.org/wiki/Manual:FAQ Ȝetæl oft ascodra ascunȝa ymb MediaǷiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Ǣrendunȝȝetæl nīƿra MediaǷiki forþsendnessa]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Ǣrendunȝȝetæl nīƿra MediaǷiki forþsendnessa]', # Fuzzy
);
/** Arabic (العربية)
== L-bdaya mĝa MediaWiki ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista dyal l-paramétraṫ dyal l-konfigurasyon]
* [//www.mediawiki.org/wiki/Manual:FAQ/fr FAQ fe MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista dyal l-modakaraṫ ĝla versyonaṫ jdad dyal MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista dyal l-modakaraṫ ĝla versyonaṫ jdad dyal MediaWiki]', # Fuzzy
);
/** Egyptian Spoken Arabic (مصرى)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings لستة اعدادات الضبط]
* [//www.mediawiki.org/wiki/Manual:FAQ أسئلة بتكرر حوالين الميدياويكى]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce لستة الايميلات بتاعة اعلانات الميدياويكى]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce لستة الايميلات بتاعة اعلانات الميدياويكى]', # Fuzzy
);
-/** Assamese (à¦\85সমà§\80à§\9fা)
+/** Assamese (à¦\85সমà§\80য়া)
* @author Chaipau
* @author Gitartha.bordoloi
*/
== আৰম্ভণি কৰিবলৈ ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Asturian (asturianu)
'config-page-install' => 'Nizamlama',
'config-page-complete' => 'Komplektləşdir!',
'config-charset-mysql5' => 'MySQL 4.1/5.0 UTF-8',
- 'config-type-ibm_db2' => 'IBM DB2',
'config-mysql-myisam' => 'MyISAM',
'config-mysql-utf8' => 'UTF-8',
'config-ns-generic' => 'Layihə',
== Faydalı keçidlər ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Tənzimləmələrin siyahısı]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki haqqında tez-tez soruşulan suallar]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-poçt siyahısı]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-poçt siyahısı]', # Fuzzy
);
/** Bashkir (башҡортса)
== Файҙалы сығанаҡтар ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Көйләүҙәр исемлеге (инг.)];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki тураһында йыш бирелгән һорауҙар һәм яуаптар (инг.)];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-ның яңы версиялары тураһында хәбәрҙәр алып тороу].',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-ның яңы версиялары тураһында хәбәрҙәр алып тороу].', # Fuzzy
);
/** Bavarian (Boarisch)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Listen voh de Konfigurazionsvariaablen]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki-FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailinglisten voh de neichen MediaWiki-Versionen]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailinglisten voh de neichen MediaWiki-Versionen]', # Fuzzy
);
/** Southern Balochi (بلوچی مکرانی)
== شروع بیت ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Bikol Central (Bikol Central)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Belarusian (беларуская)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Пералік параметраў канфігурацыі (англ.)]
* [//www.mediawiki.org/wiki/Manual:FAQ ЧАПЫ MediaWiki (англ.)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Ліставанне аб выпусках MediaWiki (англ.)]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Ліставанне аб выпусках MediaWiki (англ.)]', # Fuzzy
);
/** Belarusian (Taraškievica orthography) (беларуская (тарашкевіца))
'config-mod-security' => "'''Папярэджаньне''': на Вашым ўэб-сэрверы ўключаны [http://modsecurity.org/ mod_security]. У выпадку няслушнай наладцы, ён можа стаць прычынай праблемаў для MediaWiki ці іншага праграмнага забесьпячэньня, якое дазваляе ўдзельнікам дасылаць на сэрвэр любы зьмест.
Глядзіце [http://modsecurity.org/documentation/ дакумэнтацыю mod_security] ці зьвярніцеся ў падтрымку Вашага хосту, калі ў Вас узьнікаюць выпадковыя праблемы.",
'config-diff3-bad' => 'GNU diff3 ня знойдзены.',
+ 'config-git' => 'Знойдзеная сыстэма канстролю вэрсіяў Git: <code>$1</code>',
+ 'config-git-bad' => 'Сыстэма кантролю вэрсіяў Git ня знойдзеная.',
'config-imagemagick' => 'Знойдзены ImageMagick: <code>$1</code>.
Пасьля ўключэньня загрузак будзе ўключанае маштабаваньне выяваў.',
'config-gd' => 'GD падтрымліваецца ўбудавана.
'config-missing-db-host' => 'Вы павінны ўвесьці значэньне парамэтру «Хост базы зьвестак»',
'config-missing-db-server-oracle' => 'Вы павінны ўвесьці значэньне парамэтру «TNS базы зьвестак»',
'config-invalid-db-server-oracle' => 'Няслушнае TNS базы зьвестак «$1».
-Назва можа ўтрымліваць толькі ASCII-літары (a-z, A-Z), лічбы (0-9), сымбалі падкрэсьліваньня(_) і кропкі (.).',
+Назва можа ўтрымліваць толькі ASCII-літары (a-z, A-Z), лічбы (0-9), сымбалі падкрэсьліваньня(_) і кропкі (.).', # Fuzzy
'config-invalid-db-name' => 'Няслушная назва базы зьвестак «$1».
Назва можа ўтрымліваць толькі ASCII-літары (a-z, A-Z), лічбы (0-9), сымбалі падкрэсьліваньня(_) і працяжнікі (-).',
'config-invalid-db-prefix' => 'Няслушны прэфікс базы зьвестак «$1».
'config-logo-help' => 'Афармленьне MediaWiki па змоўчваньні уключае прастору для лягатыпу памерам 135×160 піксэляў у верхнім левым куце.
Загрузіце выяву адпаведнага памеру і увядзіце тут URL-адрас.
-Калі Вы не жадаеце мець ніякага лягатыпу, пакіньце поле пустым.',
+Калі Вы не жадаеце мець ніякага лягатыпу, пакіньце поле пустым.', # Fuzzy
'config-instantcommons' => 'Дазволіць Instant Commons',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] — магчымасьць, якая дазваляе вікі выкарыстоўваць выявы, гукі і іншыя мэдыя, якія знаходзяцца на сайце [//commons.wikimedia.org/ Wikimedia Commons].
Каб гэта зрабіць, MediaWiki патрабуе доступу да Інтэрнэту.
'config-logo-help' => 'Обликът по подразбиране на МедияУики вклчва място с размери 135х160 пиксела за лого над страничното меню.
Ако има наличен файл с подходящ размер, неговият адрес може да бъде посочен тук.
-Ако не е необходимо лого, полето може да се остави празно.',
+Ако не е необходимо лого, полето може да се остави празно.', # Fuzzy
'config-instantcommons' => 'Включване на Instant Commons',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] е функционалност, която позволява на уикитата да използват картинки, звуци и друга медиа от сайта на Уикимедия [//commons.wikimedia.org/ Общомедия].
За да е възможно това, МедияУики изисква достъп до Интернет.
== Gasan bamula ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Daptar konpigurasi setélan]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki nang rancak ditakunakan]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki rilis milis]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki rilis milis]', # Fuzzy
);
/** Bengali (বাংলা)
'config-sqlite-dir' => 'এসকিউলাইট ডেটা ডিরেক্টরি:',
'config-oracle-def-ts' => 'পূর্বনির্ধারিত টেবিলস্পেস',
'config-oracle-temp-ts' => 'সাময়কি টেবিলস্পেস:',
- 'config-type-ibm_db2' => 'আইবিএম ডিবি২',
'config-header-mysql' => 'মাইএসকিউএল সেটিংস',
'config-header-postgres' => 'পোস্টগ্রেএসকিউএল সেটিংস',
'config-header-sqlite' => 'এসকিউলাইট সেটিংস',
'config-header-oracle' => 'ওরাকল সেটিংস',
- 'config-header-ibm_db2' => 'আইবিএম ডিবি২ সেটিংস',
'config-invalid-db-type' => 'ডেটাবেজের ধরন অগ্রহযোগ্য',
'config-missing-db-name' => 'আপনাকে অবশ্যই "ডেটাবেজ নাম"-এর জন্য একটি মান প্রবেশ করাতে হবে',
'config-missing-db-host' => 'আপনাকে অবশ্যই "ডেটাবেজ হোস্ট"-এর জন্য একটি মান প্রবেশ করাতে হবে',
'config-optional-continue' => 'আরও প্রশ্ন জিজ্ঞেস করুন।',
'config-optional-skip' => 'আমি ইতিমধ্যেই বিরক্ত হয়ে গেছি, উইকিটি ইন্সটল করো।',
'config-profile' => 'ব্যবহারকারী অধিকার প্রোফাইল:',
- 'config-profile-wiki' => 'গতানুগতিক উইকি',
+ 'config-profile-wiki' => 'গতানুগতিক উইকি', # Fuzzy
'config-profile-no-anon' => 'অ্যাকাউন্ট তৈরি করা বাধ্যতামূলক',
'config-profile-fishbowl' => 'শুধুমাত্র নির্ধারিত সম্পাদকদের জন্যই',
'config-profile-private' => 'ব্যক্তিগত উইকি',
* [//www.mediawiki.org/wiki/Manual:Configuration_settings কনফিগারেশন সেটিংস তালিকা]
* [//www.mediawiki.org/wiki/Manual:FAQ প্রশ্নোত্তরে মিডিয়াউইকি]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce মিডিয়াউইকি রিলিজের মেইলিং লিস্ট]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce মিডিয়াউইকি রিলিজের মেইলিং লিস্ট]', # Fuzzy
);
/** Bishnupria Manipuri (বিষ্ণুপ্রিয়া মণিপুরী)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings কনফিগারেশন সেটিংর তালিকাহান]
* [//www.mediawiki.org/wiki/Manual:FAQ মিডিয়া উইকি আঙলাক]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce মিডিয়া উইকির ফঙপার বারে মেইলর তালিকাহান]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce মিডিয়া উইকির ফঙপার বারে মেইলর তালিকাহান]', # Fuzzy
);
/** Breton (brezhoneg)
== Цхьаболу пайде гlирсаш ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Гlирс нисбан тарлушболу могlам];
* [//www.mediawiki.org/wiki/Manual:FAQ Сих сиха лушдолу хаттарш а жоьпаш оцу MediaWiki];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Хаам бохьуьйту араяларца башхонца керла MediaWiki].',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Хаам бохьуьйту араяларца башхонца керла MediaWiki].', # Fuzzy
);
/** Cebuano (Cebuano)
== Pagsugod ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Listahan sa mga setting sa kompigurasyon]
* [//www.mediawiki.org/wiki/Manual:FAQ FAQ sa MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list sa mga release sa MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list sa mga release sa MediaWiki]', # Fuzzy
);
/** Sorani Kurdish (کوردی)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista sang mga setting sang konpigurayon]
* [//www.mediawiki.org/wiki/Manual:FAQ Mga perme napangkot sa MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista sang mga ginapadal-an sang sulat sang MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista sang mga ginapadal-an sang sulat sang MediaWiki]', # Fuzzy
);
/** Crimean Turkish (Cyrillic script) (къырымтатарджа (Кирилл))
== Базы файдалы сайтлар ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Олуджы сазламалар джедвели];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki боюнджа сыкъ берильген суаллернен джеваплар];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-нинъ янъы версияларынынъ чыкъувындан хабер йиберюв].",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-нинъ янъы версияларынынъ чыкъувындан хабер йиберюв].", # Fuzzy
);
/** Crimean Turkish (Latin script) (qırımtatarca (Latin))
== Bazı faydalı saytlar ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Olucı sazlamalar cedveli];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki boyunca sıq berilgen suallernen cevaplar];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-niñ yañı versiyalarınıñ çıquvından haber yiberüv].",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-niñ yañı versiyalarınıñ çıquvından haber yiberüv].", # Fuzzy
);
/** Czech (česky)
== Пулăшма пултарĕç ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Ĕнерлевсен списокĕ];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki тăрăх час-часах ыйтакан ыйтусемпе хуравсем];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki çĕнĕ верси тухнине пĕлтерекен рассылка].',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki çĕнĕ верси тухнине пĕлтерекен рассылка].', # Fuzzy
);
/** Welsh (Cymraeg)
+ * @author Lloffiwr
* @author Xxglennxx
*/
$messages['cy'] = array(
'mainpagetext' => "'''Wedi llwyddo gosod meddalwedd MediaWiki yma'''",
- 'mainpagedocfooter' => 'Ceir cymorth (yn Saesneg) ar ddefnyddio meddalwedd wici yn y [//meta.wikimedia.org/wiki/Help:Contents Canllaw Defnyddwyr] ar wefan Wikimedia.
+ 'mainpagedocfooter' => "Ceir cymorth (yn Saesneg) ar ddefnyddio meddalwedd wici yn y [//meta.wikimedia.org/wiki/Help:Contents Canllaw Defnyddwyr] ar wefan Wikimedia.
==Cychwyn arni==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Rhestr osodiadau wrth gyflunio]
* [//www.mediawiki.org/wiki/Manual:FAQ Cwestiynau poblogaidd ar MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Rhestr postio datganiadau MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Rhestr postio datganiadau MediaWiki]
+* [//www.mediawiki.org/wiki/Localisation#Translation_resources Cyfieithu MediaWici i'ch iaith chi]",
);
/** Danish (dansk)
== At komme i gang ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Listen over opsætningsmuligheder]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki ofte stillede spørgsmål]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Postliste angående udgivelser af MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Postliste angående udgivelser af MediaWiki]', # Fuzzy
);
/** German (Deutsch)
'config-missing-db-host' => 'Bei „Datenbankhost“ muss ein Wert angegeben werden.',
'config-missing-db-server-oracle' => 'Für das „Datenbank-TNS“ muss ein Wert eingegeben werden',
'config-invalid-db-server-oracle' => 'Ungültiges Datenbank-TNS „$1“.
-Es dürfen nur ASCII-codierte Buchstaben (a-z, A-Z), Zahlen (0-9) und Unterstriche (_) und Punkte (.) verwendet werden.',
+Entweder „TNS Name“ oder eine „Easy Connect“-Zeichenfolge verwenden ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Oracle-Benennungsmethoden])',
'config-invalid-db-name' => 'Ungültiger Datenbankname „$1“.
Es dürfen nur ASCII-codierte Buchstaben (a-z, A-Z), Zahlen (0-9), Unter- (_) sowie Bindestriche (-) verwendet werden.',
'config-invalid-db-prefix' => 'Ungültiger Datenbanktabellenpräfix „$1“.
== Starthilfen ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Liste der Konfigurationsvariablen]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki-FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailingliste neuer MediaWiki-Versionen]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailingliste neuer MediaWiki-Versionen]', # Fuzzy
);
/** Zazaki (Zazaki)
'config-charset-mysql5-binary' => 'MySQL 4.1/5.0 dılet',
'config-charset-mysql5' => 'MySQL 4.1/5.0 UTF-8',
'config-db-port' => 'Portê database:',
- 'config-type-ibm_db2' => 'IBM DB2',
'config-header-mysql' => 'Sazkardışê MySQL',
'config-mysql-innodb' => 'InnoDB',
'config-mysql-myisam' => 'MyISAM',
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista eyaranê vıraştışi]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki de ÇZP]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki ra lista serbest-dayışê postey]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki ra lista serbest-dayışê postey]', # Fuzzy
);
/** Lower Sorbian (dolnoserbski)
== Kopotimpuunan ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lis papatantu nuludan]
* [//www.mediawiki.org/wiki/Manual:FAQ Ponguhatan Koinsoruan om Simbar ModiaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lis pininsuratan pinolabus do ModiaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lis pininsuratan pinolabus do ModiaWiki]', # Fuzzy
);
/** Greek (Ελληνικά)
'config-header-postgres' => 'Ρυθμίσεις PostgreSQL',
'config-header-sqlite' => 'Ρυθμίσεις SQLite',
'config-header-oracle' => 'Ρυθμίσεις Oracle',
- 'config-header-ibm_db2' => 'Ρυθμίσεις IBM DB2',
'config-invalid-db-type' => 'Μη έγκυρος τύπος βάσης δεδομένων',
'config-mysql-utf8' => 'UTF-8',
'config-site-name' => 'Όνομα του βίκι:',
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Listo de konfiguraĵoj] (angla)
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki Oftaj Demandoj] (angla)
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki dissendolisto pri anoncoj] (angla)",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki dissendolisto pri anoncoj] (angla)", # Fuzzy
);
/** Spanish (español)
== Empezando ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista de ajustes de configuración]
* [//www.mediawiki.org/wiki/Manual:FAQ/es FAQ de MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de correo de anuncios de distribución de MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de correo de anuncios de distribución de MediaWiki]', # Fuzzy
);
/** Estonian (eesti)
'config-admin-password' => 'Pasahitza:',
'config-admin-password-confirm' => 'Pasahitza berriz:',
'config-admin-email' => 'E-posta helbidea:',
- 'config-profile-wiki' => 'Wiki tradizionala',
+ 'config-profile-wiki' => 'Wiki tradizionala', # Fuzzy
'config-profile-private' => 'Wiki pribatua',
'config-license' => 'Copyright eta lizentzia:',
'config-license-pd' => 'Domeinu Askea',
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Konfigurazio balioen zerrenda]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ (Maiz egindako galderak)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWikiren argitalpenen posta zerrenda]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWikiren argitalpenen posta zerrenda]', # Fuzzy
);
/** Extremaduran (estremeñu)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Persian (فارسی)
'config-missing-db-host' => "Vous devez entrer une valeur pour « l'hôte de la base de données »",
'config-missing-db-server-oracle' => 'Vous devez saisir une valeur pour le « Nom TNS de la base de données »',
'config-invalid-db-server-oracle' => 'Le nom TNS de la base de données (« $1 ») est invalide.
-Il ne peut contenir que des lettres latines de base (a-z, A-Z), des chiffres (0-9), des caractères de soulignement (_) et des points (.).',
+Utilisez uniquement la chaîne "TNS Name" ou "Easy Connect" ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Méthodes de nommage Oracle])',
'config-invalid-db-name' => 'Nom de la base de données invalide (« $1 »).
Il ne peut contenir que des lettres latines (a-z, A-Z), des chiffres (0-9), des caractères de soulignement (_) et des tirets (-).',
'config-invalid-db-prefix' => 'Préfixe de la base de données non valide « $1 ».
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Réglage]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki: Questions Souvent Posées]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki Liste à Malle]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki Liste à Malle]', # Fuzzy
);
/** Franco-Provençal (arpetan)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings List mei ynstellings]
* [//www.mediawiki.org/wiki/Manual:FAQ Faak stelde fragen (FAQ)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailinglist foar oankundigings fan nije ferzjes]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailinglist foar oankundigings fan nije ferzjes]", # Fuzzy
);
/** Irish (Gaeilge)
'config-help' => 'Cuidiú',
'mainpagetext' => "'''D'éirigh le suiteáil MediaWiki.'''",
'mainpagedocfooter' => 'Féach ar [//meta.wikimedia.org/wiki/MediaWiki_localisation doiciméid um conas an chomhéadán a athrú]
-agus an [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide Lámhleabhar úsáideora] chun cabhair úsáide agus fíoraíochta a fháil.',
+agus an [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide Lámhleabhar úsáideora] chun cabhair úsáide agus fíoraíochta a fháil.', # Fuzzy
);
/** Gagauz (Gagauz)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Simplified Gan script (赣语(简体))
* [//www.mediawiki.org/wiki/Manual:Configuration_settings MediaWiki 配置设定列表]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki 平常问题解答]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki 发布email清单]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki 发布email清单]', # Fuzzy
);
/** Traditional Gan script (贛語(繁體))
'config-missing-db-host' => 'Debe escribir un valor "Servidor da base de datos"',
'config-missing-db-server-oracle' => 'Debe escribir un valor "TNS da base de datos"',
'config-invalid-db-server-oracle' => 'O TNS da base de datos, "$1", é incorrecto.
-Só pode conter letras ASCII (a-z, A-Z), números (0-9), guións baixos (_) e puntos (.).',
+Utilice só "TNS Name" ou unha cadea de texto "Easy Connect" ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm métodos de nomeamento de Oracle])',
'config-invalid-db-name' => 'O nome da base de datos, "$1", é incorrecto.
Só pode conter letras ASCII (a-z, A-Z), números (0-9), guións baixos (_) e guións (-).',
'config-invalid-db-prefix' => 'O prefixo da base de datos, "$1", é incorrecto.
== Ἄρξασθε ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Διαλογή παραμέτρων διαμορφώσεως]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki: τὰ πολλάκις αἰτηθέντα]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Διαλογή διαλέξεων ἐπὶ τῶν διανομῶν τῆς MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Διαλογή διαλέξεων ἐπὶ τῶν διανομῶν τῆς MediaWiki]', # Fuzzy
);
/** Swiss German (Alemannisch)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings MediaWiki Phi-chṳ sat-thin chhîn-tân]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki Phìn-sòng mun-thì kié-tap]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki fat-phu email chhîn-tân]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki fat-phu email chhîn-tân]', # Fuzzy
);
/** Hawaiian (Hawai`i)
'config-logo-help' => 'המראה ההתחלתי של מדיה־ויקי מכיל מקום לסמל של 135 על 160 פיקסלים בפינה העליונה מעל תפריט הצד.
יש להעלות תמונה בגודל מתאים ולהכניס את הכתובת כאן.
-אם אינכם רוצים סמל, השאירו את התיבה הזאת ריקה.',
+אם אינכם רוצים סמל, השאירו את התיבה הזאת ריקה.', # Fuzzy
'config-instantcommons' => 'להפעיל את Instant Commons',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] היא תכונה שמאפשרת לאתרי ויקי להשתמש בתמונות, בצלילים ובמדיה אחרת שנמצאת באתר [//commons.wikimedia.org/ ויקישיתוף] (Wikimedia Commons).
כדי לעשות את זה, מדיה־ויקי צריך לגשת לאינטרנט.
== शुरुवात करें ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings कॉन्फिगरेशन सेटींगकी सूची]
* [//www.mediawiki.org/wiki/Manual:FAQ मीडियाविकिके बारे में प्राय: पूछे जाने वाले सवाल]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce मीडियाविकि मेलिंग लिस्ट]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce मीडियाविकि मेलिंग लिस्ट]', # Fuzzy
);
/** Fiji Hindi (Latin script) (Fiji Hindi)
== Getting started ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Hiligaynon (Ilonggo)
== Pag-umpisa ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista sang mga konpigorasyon sang pagkay-o]
* [//www.mediawiki.org/wiki/Manual:FAQ Mga Masami Pamangkoton sa MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista sang mga ginapadal-an sang sulat kon may paguha-on nga MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista sang mga ginapadal-an sang sulat kon may paguha-on nga MediaWiki]", # Fuzzy
);
/** Croatian (hrvatski)
$messages['hr'] = array(
'mainpagetext' => "'''Softver MediaWiki je uspješno instaliran.'''",
'mainpagedocfooter' => 'Pogledajte [//meta.wikimedia.org/wiki/MediaWiki_localisation dokumentaciju o prilagodbi sučelja]
-i [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide Vodič za suradnike] za pomoć pri uporabi i podešavanju.',
+i [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide Vodič za suradnike] za pomoć pri uporabi i podešavanju.', # Fuzzy
);
/** Upper Sorbian (hornjoserbsce)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lis paramèt yo pou konfigirasyon]
* [//www.mediawiki.org/wiki/Manyèl:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lis diskisyon ki parèt sou MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lis diskisyon ki parèt sou MediaWiki]', # Fuzzy
);
/** Hungarian (magyar)
'config-logo-help' => 'A MediaWiki alapértelmezett felülete helyet ad egy 135×160 pixeles logónak a bal felső sarokban.
Tölts fel egy megfelelő méretű képet, majd írd be ide az URL-címét!
-Ha nem szeretnél logót használni, egyszerűen hagyd üresen a mezőt.',
+Ha nem szeretnél logót használni, egyszerűen hagyd üresen a mezőt.', # Fuzzy
'config-instantcommons' => 'Instant Commons engedélyezése',
'config-instantcommons-help' => 'Az [//www.mediawiki.org/wiki/InstantCommons Instant Commons] lehetővé teszi, hogy a wikin használhassák a [//commons.wikimedia.org/ Wikimedia Commons] oldalon található képeket, hangokat és más médiafájlokat.
A használatához a MediaWikinek internethozzáférésre van szüksége.
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Interlingua (interlingua)
'config-logo-help' => 'Le apparentia predefinite de MediaWiki include spatio pro un logotypo de 135×160 pixels supra le menu del barra lateral.
Incarga un imagine con le dimensiones appropriate, e entra le URL hic.
-Si tu non vole un logotypo, lassa iste quadro vacue.',
+Si tu non vole un logotypo, lassa iste quadro vacue.', # Fuzzy
'config-instantcommons' => 'Activar "Instant Commons"',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] es un function que permitte a wikis de usar imagines, sonos e altere multimedia trovate in le sito [//commons.wikimedia.org/ Wikimedia Commons].
Pro poter facer isto, MediaWiki require accesso a Internet.
'config-logo-help' => 'Kulit bawaan MediaWiki memberikan ruang untuk logo berukuran 135x160 piksel di atas menu bilah samping.
Unggah gambar dengan ukuran yang sesuai, lalu masukkan URL di sini.
-Jika Anda tidak ingin menyertakan logo, biarkan kotak ini kosong.',
+Jika Anda tidak ingin menyertakan logo, biarkan kotak ini kosong.', # Fuzzy
'config-instantcommons' => 'Aktifkan Instant Commons',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] adalah fitur yang memungkinkan wiki untuk menggunakan gambar, suara, dan media lain dari [//commons.wikimedia.org/ Wikimedia Commons].
Untuk melakukannya, MediaWiki memerlukan akses ke Internet.
== Komencar ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Listo di ''Configuration setting'']
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki OQQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki nova versioni posto-listo]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki nova versioni posto-listo]", # Fuzzy
);
/** Icelandic (íslenska)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Listi yfir uppsetningarstillingar]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki Algengar spurningar MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Póstlisti MediaWiki-útgáfa]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Póstlisti MediaWiki-útgáfa]', # Fuzzy
);
/** Italian (italiano)
'config-no-cache' => "'''Attenzione:''' [http://www.php.net/apc APC], [http://xcache.lighttpd.net/ XCache] o [http://www.iis.net/download/WinCacheForPhp WinCache] non sono stati trovati.
La caching degli oggetti non è attivata.",
'config-diff3-bad' => 'GNU diff3 non trovato.',
+ 'config-git' => 'Trovato software di controllo della versione Git: <code>$1</code>.',
+ 'config-git-bad' => 'Software di controllo della versione Git non trovato.',
'config-imagemagick' => 'Trovato ImageMagick: <code>$1</code>.
Le miniature delle immagini saranno presenti se gli upload vengono abilitati.',
'config-gd' => 'Trovata la GD Graphics Library built-in.
'config-using-server' => 'Nome server in uso "<nowiki>$1</nowiki>".',
'config-using-uri' => 'URL del server in uso "<nowiki>$1$2</nowiki>".',
'config-db-type' => 'Tipo di database:',
+ 'config-db-host' => 'Host del database:',
+ 'config-db-host-oracle' => 'TNS del database:',
'config-db-wiki-settings' => 'Identifica questo wiki',
'config-db-name' => 'Nome del database:',
'config-db-name-oracle' => 'Schema del database:',
+ 'config-db-install-account' => "Account utente per l'installazione",
'config-db-username' => 'Nome utente del database:',
+ 'config-db-password' => 'Password del database:',
'config-db-password-empty' => 'Inserire una password per il nuovo utente del database: $1.
Anche se può essere possibile creare utenti senza password, questo non è sicuro.',
+ 'config-db-install-username' => "Inserisci il nome utente che verrà utilizzato per connettersi al database durante il processo di installazione.
+Questo non è il nome utente dell'account MediaWiki; ma quello per il tuo database.",
+ 'config-db-install-password' => "Inserisci la password che verrà utilizzato per connettersi al database durante il processo di installazione.
+Questa non è la password dell'account MediaWiki; ma quella per il tuo database.",
'config-db-install-help' => "Inserire il nome utente e la password che verranno usate per la connessione al database durante il processo d'installazione.",
+ 'config-db-account-lock' => 'Utilizza lo stesso nome utente e password durante il normale funzionamento',
+ 'config-db-wiki-account' => 'Account utente per il normale funzionamento',
+ 'config-db-wiki-help' => "Inserisci il nome utente e la password che verrà utilizzato per connettersi al database durante il normale funzionamento del wiki.
+Se l'account non esiste, e l'account di installazione dispone di privilegi sufficienti, verrà creato con privilegi minimi necessari per operare sul wiki.",
'config-db-prefix' => 'Prefisso tabella del database:',
'config-db-charset' => 'Set di caratteri del database',
'config-charset-mysql5' => 'MySQL 4.1/5.0 UTF-8',
Da cambiare solamente se si è sicuri di averne bisogno.',
'config-pg-test-error' => "Impossibile connettersi al database '''$1''': $2",
'config-sqlite-dir' => 'Directory data di SQLite:',
+ 'config-oracle-def-ts' => 'Tablespace di default:',
+ 'config-oracle-temp-ts' => 'Tablespace temporaneo:',
'config-header-mysql' => 'Impostazioni MySQL',
'config-header-postgres' => 'Impostazioni PostgreSQL',
'config-header-sqlite' => 'Impostazioni SQLite',
'config-header-oracle' => 'Impostazioni Oracle',
'config-invalid-db-type' => 'Tipo di database non valido',
'config-missing-db-name' => 'È necessario immettere un valore per "Nome del database"',
+ 'config-missing-db-host' => 'È necessario immettere un valore per "Host del database"',
+ 'config-missing-db-server-oracle' => 'È necessario immettere un valore per "TNS del database"',
+ 'config-connection-error' => '$1.
+
+Controlla host, nome utente e password e prova ancora.',
+ 'config-postgres-old' => 'PostgreSQL $1 o una versione successiva è necessaria, rilevata la $2.',
+ 'config-sqlite-cant-create-db' => 'Impossibile creare il file di database <code>$1</code> .',
+ 'config-can-upgrade' => "Ci sono tabelle di MediaWiki in questo database.
+Per aggiornarle a MediaWiki $1, fai clic su '''continua'''.",
+ 'config-upgrade-done' => "Aggiornamento completo.
+
+Puoi [$1 iniziare ad usare il tuo wiki].
+
+Se vuoi rigenerare il tuo file <code>LocalSettings.php</code>, clicca sul pulsante sotto. Questa operazione '''non è raccomandata''', a meno che non hai problemi con il tuo wiki.",
+ 'config-upgrade-done-no-regenerate' => 'Aggiornamento completo.
+
+Puoi [$1 iniziare ad usare il tuo wiki].',
+ 'config-regenerate' => 'Rigenera LocalSettings.php →',
'config-db-web-account' => "Account del database per l'accesso web",
+ 'config-db-web-help' => 'Seleziona il nome utente e la password che il server web utilizzerà per connettersi al server di database, durante il normale funzionamento del wiki.',
+ 'config-db-web-account-same' => "Utilizza lo stesso account dell'installazione",
'config-db-web-create' => "Crea l'account se non esiste già",
+ 'config-db-web-no-create-privs' => "L'account usato per l'installazione non dispone dei privilegi necessari per creare un altro account.
+L'account indicato qui deve già esistere.",
'config-mysql-engine' => 'Storage engine:',
'config-mysql-innodb' => 'InnoDB',
'config-mysql-myisam' => 'MyISAM',
'config-mysql-charset' => 'Set di caratteri del database:',
'config-mysql-binary' => 'Binario',
'config-mysql-utf8' => 'UTF-8',
+ 'config-site-name' => 'Nome del wiki:',
+ 'config-site-name-help' => 'Questo verrà visualizzato nella barra del titolo del browser e in vari altri posti.',
+ 'config-site-name-blank' => 'Inserisci il nome del sito.',
+ 'config-project-namespace' => 'Namespace del progetto:',
'config-ns-generic' => 'Progetto',
- 'config-ns-site-name' => 'Stesso nome wiki: $1',
+ 'config-ns-site-name' => 'Stesso nome del wiki: $1',
+ 'config-ns-other' => 'Altro (specificare)',
'config-ns-other-default' => 'MyWiki',
'config-admin-box' => 'Account amministratore',
'config-admin-name' => 'Tuo nome:',
'config-almost-done' => 'Hai quasi finito!
Adesso puoi saltare la rimanente parte della configurazione e semplicemente installare la wiki.',
'config-optional-continue' => 'Fammi altre domande.',
+ 'config-optional-skip' => 'Sono già stanco, installa solo il wiki.',
+ 'config-profile' => 'Profilo dei diritti utente:',
'config-profile-wiki' => 'Wiki aperto',
'config-profile-no-anon' => 'Creazione utenza obbligatoria',
'config-profile-fishbowl' => 'Solo editori autorizzati',
In precedenza Wikipedia ha utilizzato la GNU Free Documentation License. La GFDL è una licenza valida, ma è di difficile comprensione e complica il riutilizzo dei contenuti.",
'config-email-settings' => 'Impostazioni email',
+ 'config-enable-email' => 'Abilita la posta elettronica in uscita',
'config-email-user' => 'Abilita invio email fra utenti',
+ 'config-email-usertalk' => 'Abilita le notifiche per le pagine di discussione utente',
+ 'config-email-watchlist' => 'Abilita le notifiche per gli osservati speciali',
'config-email-auth' => 'Abilita autenticazione via email',
+ 'config-email-sender' => 'Indirizzo email di ritorno:',
+ 'config-upload-settings' => 'Caricamenti di immagini e file',
'config-upload-enable' => 'Consentire il caricamento di file',
'config-upload-deleted' => 'Directory per i file cancellati:',
'config-logo' => 'URL del logo:',
'config-cc-again' => 'Seleziona di nuovo...',
'config-cc-not-chosen' => 'Scegliere quale licenza Creative Commons si desidera e cliccare su "procedi".',
'config-advanced-settings' => 'Configurazione avanzata',
+ 'config-memcached-servers' => 'Server di memcached:',
'config-memcache-needservers' => 'È stato selezionato il tipo di caching Memcached, ma non è stato impostato alcun server.',
'config-memcache-badip' => 'È stato inserito un indirizzo IP non valido per Memcached: $1.',
+ 'config-memcache-badport' => 'I numeri di porta per memcached dovrebbero essere tra $1 e $2.',
'config-extensions' => 'Estensioni',
'config-install-step-done' => 'fatto',
'config-install-step-failed' => 'non riuscito',
+ 'config-install-database' => 'Configurazione database',
'config-install-schema' => 'Creazione dello schema',
'config-install-user' => 'Creazione di utente del database',
'config-install-user-alreadyexists' => 'L\'utente "$1" è già presente',
'config-install-user-create-failed' => 'Creazione dell\'utente "$1" non riuscita: $2',
'config-install-user-missing' => 'L\'utente indicato "$1" non esiste.',
+ 'config-install-tables' => 'Creazione tabelle',
'config-install-tables-failed' => "'''Errore''': La creazione della tabella non è riuscita: $1",
'config-install-interwiki' => 'Riempimento della tabella interwiki predefinita',
'config-install-interwiki-list' => 'Impossibile leggere il file <code>interwiki.list</code>.',
'config-install-subscribe-fail' => 'Impossibile sottoscrivere mediawiki-announce: $1',
'config-install-subscribe-notpossible' => 'cURL non è installato e allow_url_fopen non è disponibile.',
'config-install-mainpage' => 'Creazione della pagina principale con contenuto predefinito',
+ 'config-install-extension-tables' => 'Creazione delle tabelle per le estensioni attivate',
'config-install-mainpage-failed' => 'Impossibile inserire la pagina principale: $1',
'config-download-localsettings' => 'Scarica <code>LocalSettings.php</code>',
'config-help' => 'aiuto',
/** Japanese (日本語)
* @author Aphaia
+ * @author Fryed-peach
* @author Iwai.masaharu
* @author Mizusumashi
* @author Ninomy
共有サーバーを使用している場合は、適切なデータベース ドライバーのインストールを、サーバーの管理者に依頼してください。
PHP を自分でコンパイルした場合は、例えば <code>./configure --with-mysql</code> を実行して、データベース クライアントを使用できるように再設定してください。
Debian または Ubuntu のパッケージから PHP をインストールした場合は、php5-mysql モジュールもインストールする必要があります。',
+ 'config-outdated-sqlite' => "'''警告:''' あなたは SQLite $1 を使用していますが、最低限必要なバージョン $2 より古いバージョンです。SQLite は利用できません。",
'config-no-fts3' => "'''警告:''' SQLite は [//sqlite.org/fts3.html FTS3] モジュールなしでコンパイルされており、このバックエンドでは検索機能は利用できなくなります。",
'config-register-globals' => "'''警告: PHP の <code>[http://php.net/register_globals register_globals]</code> オプションが有効になっています。'''
'''可能なら無効化してください。'''
'config-missing-db-host' => '「データベースのホスト」を入力してください',
'config-missing-db-server-oracle' => '「データベース TNS」の値を入力してください',
'config-invalid-db-server-oracle' => '「$1」は無効なデータベース TNS です。
-ã\82¢ã\82¹ã\82ã\83¼è\8b±å\97(a-zã\80\81A-Z)ã\80\81æ\95°å\97(0-9)ã\80\81ã\82¢ã\83³ã\83\80ã\83¼ã\83\90ã\83¼(_)ã\80\81ã\83\89ã\83\83ã\83\88(.)ã\81®ã\81¿ã\82\92使ç\94¨ã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84ã\80\82',
+ã\80\8cTNS å\90\8dã\80\8dã\80\8cEasy Connectã\80\8dæ\96\87å\97å\88\97ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\82\92使ç\94¨ã\81\97ã\81¦ã\81\8fã\81 ã\81\95ã\81\84 ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Oracle Naming Methods])',
'config-invalid-db-name' => '「$1」は無効なデータベース名です。
-アスキー英字(a-z、A-Z)、数字(0-9)、アンダーバー(_)、ハイフン(-)のみを使用してください。',
- 'config-invalid-db-prefix' => 'ã\80\8c$1ã\80\8dã\81¯ç\84¡å\8a¹ã\81ªã\83\87ã\83¼ã\82¿ã\83\99ã\83¼ã\82¹æ\8e¥é èª\9eã\81§ã\81\99ã\80\82
-アスキー英字(a-z, A-Z)、数字(0-9)、下線(_)、ハイフン(-)のみを使用してください。',
+半角の英数字 (a-z、A-Z、0-9)、アンダースコア (_)、ハイフン (-) のみを使用してください。',
+ 'config-invalid-db-prefix' => 'ã\80\8c$1ã\80\8dã\81¯ç\84¡å\8a¹ã\81ªã\83\87ã\83¼ã\82¿ã\83\99ã\83¼ã\82¹æ\8e¥é è¾\9eã\81§ã\81\99ã\80\82
+半角の英数字 (a-z、A-Z、0-9)、アンダースコア (_)、ハイフン (-) のみを使用してください。',
'config-connection-error' => '$1。
以下のホスト名、ユーザー名、パスワードを確認してから再度試してください。',
'config-invalid-schema' => '「$1」は MediaWiki のスキーマとして無効です。
-ASCII の英数字 (a-z、A-Z、0-9)、下線 (_) のみを使用してください。',
+半角の英数字 (a-z、A-Z、0-9)、アンダースコア (_) のみを使用してください。',
'config-postgres-old' => 'PostgreSQL $1 以降が必要です。ご使用中の PostgreSQL は $2 です。',
'config-sqlite-name-help' => 'あなたのウェキと同一性のある名前を選んでください。
空白およびハイフンは使用しないでください。
'config-optional-continue' => '私にもっと質問してください。',
'config-optional-skip' => 'もう飽きてしまったので、とにかくウィキをインストールしてください。',
'config-profile' => '利用者権限のプロファイル:',
- 'config-profile-wiki' => '伝統的なウィキ', # Fuzzy
+ 'config-profile-wiki' => '公開ウィキ',
'config-profile-no-anon' => 'アカウントの作成が必要',
'config-profile-fishbowl' => '承認された編集者のみ',
'config-profile-private' => '非公開ウィキ',
== Taatop ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Jutish (jysk)
*/
$messages['jut'] = array(
'mainpagetext' => "'''MediaWiki er nu installeret.'''",
- 'mainpagedocfooter' => "Se vores engelskspråĝede [//meta.wikimedia.org/wiki/MediaWiki_localisation dokumentåsje tilpasnenge'm åf æ brugergrænseflade] og [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide æ brugervejlednenge] før åplysnenger åpsætnenge'm og anvendelse.",
+ 'mainpagedocfooter' => "Se vores engelskspråĝede [//meta.wikimedia.org/wiki/MediaWiki_localisation dokumentåsje tilpasnenge'm åf æ brugergrænseflade] og [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide æ brugervejlednenge] før åplysnenger åpsætnenge'm og anvendelse.", # Fuzzy
);
/** Javanese (Basa Jawa)
== Miwiti panggunan ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Daftar pangaturan préférènsi]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Milis rilis MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Milis rilis MediaWiki]", # Fuzzy
);
/** Georgian (ქართული)
'config-header-postgres' => 'PostgreSQL-ის პარამეტრები',
'config-header-sqlite' => 'SQLite-ის პარამეტრები',
'config-header-oracle' => 'Oracle-ის პარამეტრები',
- 'config-header-ibm_db2' => 'IBM DB2-ის პარამეტრები',
'config-invalid-db-type' => 'არასწორი მონაცემთა ბაზის ტიპი',
'config-mysql-innodb' => 'InnoDB',
'config-mysql-myisam' => 'MyISAM',
== Baslaw ushın ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Konfiguratsiya sazlaw dizimi]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWikidin' Ko'p Soralatug'ın Sorawları]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki haqqında xat tarqatıw dizimi]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki haqqında xat tarqatıw dizimi]", # Fuzzy
);
/** Адыгэбзэ (Адыгэбзэ)
== Къыщхьэпэгъуэ хъуфынухэр ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Зэгъэзэхуэгъуэ гуэрэхэм я тхылъ];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki-м упщӀэ нахъыбу ятхэмрэ я жэуапхэмрэ];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-м и версиэ щӀэуэ къэжахэм я къэӀохугъуэ].',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-м и версиэ щӀэуэ къэжахэм я къэӀохугъуэ].', # Fuzzy
);
/** Khowar (کھوار)
== Gamê verêni ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista ayarunê vırastene]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki de ÇZP]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki ra lista serbest-daena postey]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki ra lista serbest-daena postey]", # Fuzzy
);
/** Kazakh (Arabic script) (قازاقشا (تٴوتە))
== باستاۋ ٴۇشىن ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings باپتالىم قالاۋلارىنىڭ ٴتىزىمى]
* [//www.mediawiki.org/wiki/Manual:FAQ مەدىياۋىيكىيدىڭ جىيى قويىلعان ساۋالدارى]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce مەدىياۋىيكىي شىعۋ تۋرالى حات تاراتۋ ٴتىزىمى]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce مەدىياۋىيكىي شىعۋ تۋرالى حات تاراتۋ ٴتىزىمى]', # Fuzzy
);
/** Kazakh (Cyrillic script) (қазақша (кирил))
== Бастау үшін ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Бапталым қалауларының тізімі]
* [//www.mediawiki.org/wiki/Manual:FAQ МедиаУикидің Жиы Қойылған Сауалдары]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce МедиаУики шығу туралы хат тарату тізімі]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce МедиаУики шығу туралы хат тарату тізімі]', # Fuzzy
);
/** Kazakh (Latin script) (qazaqşa (latın))
== Bastaw üşin ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Baptalım qalawlarınıñ tizimi]
* [//www.mediawiki.org/wiki/Manual:FAQ MedïaWïkïdiñ Jïı Qoýılğan Sawaldarı]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MedïaWïkï şığw twralı xat taratw tizimi]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MedïaWïkï şığw twralı xat taratw tizimi]', # Fuzzy
);
/** Khmer (ភាសាខ្មែរ)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings បញ្ជីកំណត់ទម្រង់]
* [//www.mediawiki.org/wiki/Manual:FAQ/km សំណួរញឹកញាប់មេឌាវិគី]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce បញ្ជីពិភាក្សាការផ្សព្វផ្សាយរបស់មេឌាវិគី]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce បញ្ជីពិភាក្សាការផ្សព្វផ្សាយរបស់មេឌាវិគី]', # Fuzzy
);
/** Kannada (ಕನ್ನಡ)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ ಮೀಡಿಯವಿಕಿ FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]', # Fuzzy
);
/** Korean (한국어)
예를 들어 <code>/var/lib/mediawiki/yourwiki</code>와 같이 다른 곳에 데이터베이스를 넣는 것이 좋습니다.",
'config-oracle-def-ts' => '기본 테이블공간:',
'config-oracle-temp-ts' => '임시 테이블공간:',
- 'config-type-oracle' => '오라클',
+ 'config-type-oracle' => 'Oracle',
'config-support-info' => '미디어위키는 다음의 데이터베이스 시스템을 지원합니다:
$1
'config-header-mysql' => 'MySQL 설정',
'config-header-postgres' => 'PostgreSQL 설정',
'config-header-sqlite' => 'SQLite 설정',
- 'config-header-oracle' => '오라클 설정',
+ 'config-header-oracle' => 'Oracle 설정',
'config-invalid-db-type' => '잘못된 데이터베이스 종류',
'config-missing-db-name' => '"데이터베이스 이름"에 대한 값을 입력해야 합니다',
'config-missing-db-host' => '"데이터베이스 호스트"에 대한 값을 입력해야 합니다',
'config-missing-db-server-oracle' => '"데이터베이스 TNS"에 대한 값을 입력해야 합니다',
'config-invalid-db-server-oracle' => '"$1" 데이터베이스 TNS가 잘못됐습니다.
-ASCII 글자 (a-z, A-Z), 숫자 (0-9), 밑줄 (_)과 하이픈 (-)만 사용하세요.',
+ASCII 글자 (a-z, A-Z), 숫자 (0-9), 밑줄 (_)과 하이픈 (-)만 사용하세요.', # Fuzzy
'config-invalid-db-name' => '"$1" 데이터베이스 이름이 잘못되었습니다.
ASCII 글자 (a-z, A-Z), 숫자 (0-9), 밑줄 (_)과 하이픈 (-)만 사용하세요.',
'config-invalid-db-prefix' => '"$1" 데이터베이스 접두어가 잘못됐습니다.
== Файдалы ресурсла ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings тюрлендириулени списогу (ингил.)];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki-ни юсюнден кёб берилген соруула];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-ни джангы версиясыны чыкъгъанын билдириу письмола].",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-ни джангы версиясыны чыкъгъанын билдириу письмола].", # Fuzzy
);
/** Colognian (Ripoarisch)
Et <i lang="en">object caching</i> es nit müjjelesh un ußjeschalldt.',
'config-mod-security' => "'''Opjepaß''': Dinge Webßööver hät <code lang=\"en\">[http://modsecurity.org/ mod_security]</code> enjeschalldt. Wann doh derbei en Enschtällong nit janz akeraat paßß, dann kann et goot sin, dat mer Probleme met MeedijaWiki un oc met ander Projramme kritt, die zohlööt, dat vun ußerhallef öhndsene Krohm op dä Webßööver jebraat wääde künnt.Beloor Der di Sigg <code lang=\"en\">[http://modsecurity.org/documentation/ mod_security documentation]</code> udder donn met dä Fachlück för Dinge Webßööver kalle, wann zohfälleje un koomijje Fähler bemerke deihß.",
'config-diff3-bad' => 'Mer han <i lang="en">GNU</i> <code lang="en">diff3</code> nit jefonge.',
+ 'config-git' => 'Mer han de Väsjohn <code>$1</code> vun däm Väsjohnsverwalldongsprojamm <i lang="en">Git</i> jefonge.',
+ 'config-git-bad' => 'Dat Väsjohnsverwalldongsprojamm <i lang="en">Git</i> ham_mer nit jefonge.',
'config-imagemagick' => 'Mer han <i lang="en">ImageMagick</i> jefonge: <code>$1</code>.
Et Ömrääschne en Minni-Beldsche weed müjjelesch sin, wann De et Belder Huhlaade zohlöhß.',
'config-gd' => 'Mer han de ennjeboute GD-Jrafik-Projramm-Biblijotheek jefonge.
'config-using531' => 'MediaWiki läuf nit met PHP $1 zosamme wääje enem [//bugs.php.net/bug.php?id=50394 Fähler em Zosammehang met Parrameetere för <code lang="en">__call()</code>].
Jangk op de Version 5.3.2 vum <i lang="en">PHP</i> ov dohnoh, udder op de Version 5.3.0 udder dovöör, öm dat Problem ze ömjonn.
Heh jeiht et nit wigger.',
- 'config-suhosin-max-value-length' => '<i lang="en">Suhosin</i> es enschtalleet. Dröm kann ene <code lang="en">GET</code>-Parrameeter nit övver {{PLURAL:$1|ei Byte|$q Bytes|noll Byte}} lang wääde. En MediaWiki singe <i lang="en">ResourceLoader</i> kütt doh zwa drömeröm, ävver dat brems. Wann müjelesch, doht <code lang="en">suhosin.get.max_value_length</code> en dä Dattei <code lang="en">php.ini</code> op 1024 Bytes udder drövver enschtälle. un dann moß <code lang="en">$wgResourceLoaderMaxQueryLength</code> en dä Dattei <code lang="en">LocalSettings.php</code> op däsälve Wäät jesaz wääde.', # Fuzzy
+ 'config-suhosin-max-value-length' => '<i lang="en">Suhosin</i> es enschtalleet. Dröm kann ene <code lang="en">GET</code>-Parrameeter nit övver {{PLURAL:$1|ei Byte|$1 Bytes|noll Byte}} lang wääde. Dem MediaWiki singe <i lang="en">ResourceLoader</i> kütt doh zwa drömeröm, ävver dat bräms. Wann müjelesch, doht <code lang="en">suhosin.get.max_value_length</code> en dä Dattei <code lang="en">php.ini</code> op 1024 Bytes udder drövver enschtälle, un dann moß <code lang="en">$wgResourceLoaderMaxQueryLength</code> en dä Dattei <code lang="en">LocalSettings.php</code> op däsälve Wäät jesaz wääde.',
'config-db-type' => 'De Zoot Daatebangk:',
'config-db-host' => 'Dä Name vun däm Rääschner met dä Daatebangk:',
'config-db-host-help' => 'Wann Dinge ẞööver för de Daatebangk ob enem andere Rääschner es, donn heh dämm singe Name udder dämm sing <i lang="en">IP</i>-Addräß enjävve.
Wann Ding <i lang="en">MySQL</i> et Schpeischere en <i lang="en">InnoDB</i>-Datteije ongerschtöze deiht, dom_mer dat nohdröcklesch ämfähle.
Kann dä ẞööver dat nit, künnd et joode jelääjeheit sin, dä ens op der neuste Schtand ze bränge.',
+ 'config-mysql-only-myisam-dep' => '\'\'\'Opjepaß:\'\'\' <i lang="en">MyISAM</i> es de einzeje Zoot Speischerprojramm för <i lang="en">MySQL</i>, di nit för MediaWiki ze ämfähle es, weil:
+* wääje dem Schpärre vun jannze Tabälle sin koum paralleele Axjuhne en dä Daatebangk möjjelesch,
+* et es aanfällesch för Probleeme met de Daate es, un
+* et weed vun MediaWiki nit emmer jood ongerschtöz.
+
+Ding Enschtallazjuhn vum <i lang="en">MySQL</i> kann nit met <i lang="en">InnoDB</i> ömjonn.
+Wi wöhr et met ener neuere väsjohn vum <i lang="en">MySQL</i>?',
'config-mysql-engine-help' => "'''InnoDB''' es fö jewöhnlesch et beß, weil vill Zohjreffe op eijmohl joot ongershtöz wääde.
'''MyISAM''' es flöcker op Rääschnere met bloß einem Minsch draan, un bei Wikis, di mer bloß lässe un nit schrieeve kann.
'config-optional-continue' => 'De wells noch mieh Frore jeshtallt krijje un noch mieh Enshtällunge maache?',
'config-optional-skip' => 'Nä, lohß dä Ömshtand, donn eifarr_et Wiki opsäze.',
'config-profile' => 'Enshtällunge för de Metmaacher ier Rääschte:',
- 'config-profile-wiki' => 'E tradizjonäll offe Wiki', # Fuzzy
+ 'config-profile-wiki' => 'En offe Wiki',
'config-profile-no-anon' => 'Schriever möße enlogge',
'config-profile-fishbowl' => 'Bloß ußdröcklesch zohjelohße Schriever',
'config-profile-private' => 'E jeschloße Privat_Wiki',
- 'config-profile-help' => "Wikis loufe et beß, wam_mer esu vill Lück wi müjjelesch draan metmaache un schrieve löht.
-Met MediaWiki es et ejfach, de neuste Änderunge ze beloore un wat ahnungslose udder fiese Lück kapott jemaat han wider retuur ze maache.
+ 'config-profile-help' => "Wikis loufe et bäß, wam_mer esu vill Lück wi möjjelesch draan metmaache un schrieve löht.
+Met MediaWiki es et ejfach, de neuste Änderonge ze beloore un wat ahnungslose udder fiese Lück kapott jemaat han wider retuur ze maache.
-Bloß, mänsh eine häd_eruß jefonge, dat mer MediaWiki jood en en jruuße Zahl ongerscheidlijje Rolle bruche kann, un nit emmer es et leish, ene vum onverfälschte Wiki_Wääsch ze övverzeuje.
+Bloß, mänsch eine häd_eruß jefonge, dat mer MediaWiki jood en en jruuße Zahl ongerscheidlijje Rolle bruche kann, un nit emmer es et leisch, ene vum onverfälschte Wiki_Wääsch ze övverzeuje.
Esu häß De de Wahl:
-'''{{int:config-profile-wiki}}''' löht jeder_ein metschrieve, och ohne enzelogge.
+'''{{int:config-profile-wiki}}''' löht jeder_ein metschrieve, och ohne sesch enzelogge.
-'''{{int:config-profile-no-anon}}''', dat sorsh för mieh seeshbaa Verantwootlishkeite, künnt ävver zohfällije Methellefer verschrecke.
+'''{{int:config-profile-no-anon}}''', dat sorsch för mieh seeschbaa Verantwootlischkeite, künnt ävver zohfällije Methellefer verschrecke.
'''{{int:config-profile-fishbowl}}''' löht nor de ußjesöhk Metmaacher schrieve, ävver de janze Öffentleshkeit kann et lässe un süht och de ällder Versione, un wat wää wann draan jedonn hät.
'''{{int:config-profile-private}}''' kann nur lässe, wäh en et Wiki zohjelohße es, un desellve Jropp kann uch schrieve.
-Noch ander un un opwändijere Enshtellunge för de Rääschte sin müjjelesch, wann et Wiki ens aam Loufe es. Loor Der doför de [//www.mediawiki.org/wiki/Manual:User_rights zopaß Hölp em Handbooch] aan.", # Fuzzy
+Noch ander un un opwändijere Enschtellunge för de Rääschte sin möjjelesch, wann et Wiki ens aam Loufe es. Loor Der doför de [//www.mediawiki.org/wiki/Manual:User_rights zopaß Hölp em Handbooch] aan.",
'config-license' => 'Urhävverrääsch un Lizänz:',
'config-license-none' => 'Kein Fooßreih övver de Lizänz',
'config-license-cc-by-sa' => '<i lang="en">Creative Commons</i> Der Name moß jenannt sin, et Wiggerjävve es zohjelohße onger dersellve Bedengunge',
'config-logo-help' => 'De Schtandart_Bedeen_Bovverfläsch vum MediaWiki hät e Logo bovve en der Eck met 135x160 Pixele.
Donn e zopaß Logo huh laade, un donn däm sing URL heh endraare.
-Wells De kei Logo han, draach heh nix en.', # Fuzzy
+Do kanns <code lang="en">$wgStylePath</code> udder <code lang="en">$wgScriptPath</code> nämme, wann Ding Logo en einem vun dänne Pahde litt.
+
+Wells De kei Logo han, draach heh nix en.',
'config-instantcommons' => 'Donn <i lang="en">InstantCommons</i> zohlohße.',
'config-instantcommons-help' => '<i lang="en">[//www.mediawiki.org/wiki/InstantCommons InstantCommons]</i> es en Eijeschaff, di et för Wikis müjjelesch määt, Belder, Tondatteie un ander Meedijedatteie enzebenge, di op dä Webßait vun de <i lang="en">[//commons.wikimedia.org/ Wikimedia Commons]</i> ongerjebraat sin. Öm dat noze ze künne, moß dä ẞööver vum MediaWiki en Verbendung nohm Internet opnämme künne.
Et sühd esu uß, wi wann De MediaWiki ald enshtalleet hätß, un wöhrs aam Versöhke, dat norr_ens ze donn.
Jang wigger op de näähßte Sigg.",
'config-install-begin' => 'Wann De op „{{int:config-continue}}“ klecks, jeiht de Enshtallazjuhn vum MediaWiki loßß.
-Wann De noch Änderonge maache wells, dann kleck op „{{int:config-back}}“.', # Fuzzy
+Wann De noch Änderonge maache wells, dann kleck op „{{int:config-back}}“.',
'config-install-step-done' => 'jedonn',
'config-install-step-failed' => 'donävve jejange',
'config-install-extensions' => 'Zohsazprojramme enjeschloße',
'config-download-localsettings' => 'Donn di Dattei <code lang="en">LocalSettings.php</code> eronger laade',
'config-help' => 'Hölp',
'config-nofile' => 'De Dattei „$1“ ham_mer nit jefonge. Es di fottjeschmeße?',
+ 'config-extension-link' => 'Häs De jewoß, dat et Wiki [//www.mediawiki.org/wiki/Manual:Extensions Zohsazprojramme] hann kann?
+
+Do kanns [//www.mediawiki.org/wiki/Category:Extensions_by_category Zohsazprojramme noh Saachjroppe] söhke udder en de [//www.mediawiki.org/wiki/Extension_Matrix Tabäll met de Zohsazprojramme] kike, öm de kumplätte Leß met de Zohsazprojramme ze krijje.',
'mainpagetext' => "'''MediaWiki es jetz enstalleet.'''",
- 'mainpagedocfooter' => 'Luur en et (änglesche) [//meta.wikimedia.org/wiki/Help:Contents Handboch] wann De wesse wells wie de Wiki-Soffwär jebruch un bedeent wääde muss.
+ 'mainpagedocfooter' => 'Luur en et (änglesche) [//meta.wikimedia.org/wiki/Help:Contents Handbooch] wann De wesse wells wie de Wiki-Soffwär jebruch un bedeent wääde moß.
== För dä Aanfang ==
Dat es och all op Änglesch:
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]', # Fuzzy
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
+* [//www.mediawiki.org/wiki/Localisation#Translation_resources Donn MediaWiki op Ding Schprooch aanpaße]',
);
/** Kurdish (Latin script) (Kurdî (latînî))
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lîsteya varîyablên konfîgûrasîyonê]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lîsteya e-nameyên versyonên nuh yê MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lîsteya e-nameyên versyonên nuh yê MediaWiki]', # Fuzzy
);
/** Ladino (Ladino)
== En Empeçando ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings La lista de los arreglamientos de la konfiggurasyón]
* [//www.mediawiki.org/wiki/Manual:FAQ/lad DDS de MedyaViki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce La lista de las letrales (e-mail) de MedyaViki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce La lista de las letrales (e-mail) de MedyaViki]', # Fuzzy
);
/** Luxembourgish (Lëtzebuergesch)
'config-localsettings-upgrade' => "'''Opgepasst''': E Fichier <code>LocalSettings.php</code> gouf fonnt.
Är Software kann aktualiséiert ginn, setzt w.e.g. de Wäert vum <code>\$wgUpgradeKey</code> an d'Këscht.
Dir fannt en am <code>LocalSettings.php</code>.",
+ 'config-localsettings-cli-upgrade' => "E Fichier <code>LocalSettings.php</code> gouf fonnt.
+Fir dës Installatioun z'aktuaéliséieren start w.e.g. <code>update.php</code>",
'config-localsettings-key' => 'Aktualisatiounsschlëssel:',
'config-localsettings-badkey' => 'De Schlëssel deen Dir aginn hutt ass net korrekt',
'config-localsettings-incomplete' => 'De Fichier <code>LocalSettings.php</code> schéngt net komplett ze sinn.
'config-install-stats' => 'Initialisatioun vun de Statistiken',
'config-install-keys' => 'Generéiere vum Geheimschlëssel',
'config-install-sysop' => 'Administrateur Benotzerkont gëtt ugeluecht',
+ 'config-install-mainpage' => 'Haaptsäit mat Standard-Inhalt gëtt ugeluecht',
'config-install-extension-tables' => "D'Tabelle fir déi aktivéiert Erweiderunge ginn ugeluecht",
'config-install-mainpage-failed' => "D'Haaptsäit konnt net dragesat ginn: $1",
'config-download-localsettings' => '<code>LocalSettings.php</code> eroflueden',
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista de ajustas de la desinia]
* [//www.mediawiki.org/wiki/Manual:FAQ Demandas comun de MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista per receta anunsias de novas supra MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista per receta anunsias de novas supra MediaWiki]', # Fuzzy
);
/** Ganda (Luganda)
== Amagezi agakuyamba okutandika ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lukalala lw'eby'enteekateeka yo]
* [//www.mediawiki.org/wiki/Manual:FAQ Ebiter'okubuuzibwa ku MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Wewandise ofunenga amawulire aga email ag'ebifa ku MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Wewandise ofunenga amawulire aga email ag'ebifa ku MediaWiki]", # Fuzzy
);
/** Limburgish (Limburgs)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lies mit instellinge]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki VGV (FAQ)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki mailinglies veur nuuj versies]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki mailinglies veur nuuj versies]", # Fuzzy
);
/** Lao (ລາວ)
'config-page-upgradedoc' => 'Atnaujinama',
'config-restart' => 'Taip, paleiskite jį iš naujo',
'config-charset-mysql5' => 'MySQL 4.1/5.0 UTF-8',
- 'config-type-ibm_db2' => 'IBM DB2',
'config-header-mysql' => 'MySQL nustatymai',
'config-header-postgres' => 'PostgreSQL nustatymai',
'config-header-sqlite' => 'SQLite nustatymai',
'config-header-oracle' => 'Oracle nustatymai',
- 'config-header-ibm_db2' => 'IBM DB2 nustatymai',
'config-mysql-innodb' => 'InnoDB',
'config-mysql-myisam' => 'MyISAM',
'config-mysql-utf8' => 'UTF-8',
'config-optional-continue' => 'Paklausti daugiau klausimų.',
'config-optional-skip' => 'Man jau nuobodu, tiesiog įdiekite viki.',
'config-profile' => 'Vartotojo teisių paskyra:',
- 'config-profile-wiki' => 'Tradicinė viki',
+ 'config-profile-wiki' => 'Tradicinė viki', # Fuzzy
'config-profile-private' => 'Privati viki',
'config-license-pd' => 'Viešas Domenas',
'config-email-settings' => 'El. pašto nustatymai',
== Pirmie soļi ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Konfigurācijas iespēju saraksts]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki J&A]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Parakstīties uz paziņojumiem par jaunām MediaWiki versijām]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Parakstīties uz paziņojumiem par jaunām MediaWiki versijām]', # Fuzzy
);
/** Literary Chinese (文言)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Lazuri (Lazuri)
== Ağani na gyoç’k’u maxmarepe ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Ok'iduşi ayarepeşi liste]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki P'anda Na-k'itxu K'itxalape]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-mailepeşiş liste]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-mailepeşiş liste]", # Fuzzy
);
/** Maithili (मैथिली)
==प्रारम्भ कोना करी==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Moksha (мокшень)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Васьфневи арафнематнень кярькссь]
* [//www.mediawiki.org/wiki/Manual:FAQ МедиаВикить Сидеста Кеподеви Кизефксне]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce МедиаВикить од верзиятнень колга кулянь пачфтема]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce МедиаВикить од верзиятнень колга кулянь пачфтема]', # Fuzzy
);
/** Malagasy (Malagasy)
'config-admin-name' => 'Ny anaranao :',
'config-admin-password' => 'Tenimiafina :',
'config-admin-email' => 'Adiresy imailaka :',
- 'config-profile-wiki' => 'Wiki tsotra',
+ 'config-profile-wiki' => 'Wiki tsotra', # Fuzzy
'config-profile-no-anon' => 'Mila mamorona kaonty',
'config-profile-fishbowl' => 'Mpanova mahazo alalana ihany',
'config-profile-private' => 'Wiki tsy sarababem-bahoaka',
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lisitra ny paramètre de configuration]
* [//www.mediawiki.org/wiki/Manual:FAQ/fr FAQ momba ny MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Resaka momba ny fizaràn'ny MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Resaka momba ny fizaràn'ny MediaWiki]", # Fuzzy
);
/** Eastern Mari (олык марий)
'config-missing-db-name' => 'Мора да внесете значење за параметарот „Име на базата“',
'config-missing-db-host' => 'Мора да внесете вредност за „Домаќин на базата на податоци“',
'config-missing-db-server-oracle' => 'Мора да внесете вредност за „TNS на базата“',
- 'config-invalid-db-server-oracle' => 'Неважечки TNS „$1“ за базата.
-Користете само знаци по ASCII - букви (a-z, A-Z), бројки (0-9), долни црти (_) и точки (.).',
+ 'config-invalid-db-server-oracle' => 'Неважечки TNS „$1“.
+Користете или „TNS Name“ или низата „Easy Connect“ ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Методи на именување за Oracle])',
'config-invalid-db-name' => 'Неважечко име на базата „$1“.
Користете само ASCII-букви (a-z, A-Z), бројки (0-9), долни црти (_) и цртички (-).',
'config-invalid-db-prefix' => 'Неважечки префикс за базата „$1“.
'config-ns-other' => 'Друго (наведете)',
'config-ns-other-default' => 'МоеВики',
'config-project-namespace-help' => "По примерот на Википедија, многу викија ги чуваат страниците со правила на посебно место од самите содржини, т.е. во „'''проектен именски простор'''“.
-СиÑ\82е наÑ\81лови на Ñ\81Ñ\82Ñ\80аниÑ\86иÑ\82е во овоÑ\98 именÑ\81ки пÑ\80оÑ\81Ñ\82оÑ\80 поÑ\87нÑ\83вааÑ\82 Ñ\81о извеÑ\81ен пÑ\80еÑ\84икÑ\81, којшто можете да го укажете тука.
-Ð\9fо Ñ\82Ñ\80адиÑ\86иÑ\98а пÑ\80еÑ\84икÑ\81оÑ\82 произлегува од името на викито, но не смее да содржи интерпункциски знаци како „#“ или „:“.",
+СиÑ\82е наÑ\81лови на Ñ\81Ñ\82Ñ\80аниÑ\86иÑ\82е во овоÑ\98 именÑ\81ки пÑ\80оÑ\81Ñ\82оÑ\80 поÑ\87нÑ\83вааÑ\82 Ñ\81о извеÑ\81на пÑ\80еÑ\82Ñ\81Ñ\82авка, којшто можете да го укажете тука.
+Ð\9fо Ñ\82Ñ\80адиÑ\86иÑ\98а пÑ\80еÑ\82Ñ\81Ñ\82авкаÑ\82а произлегува од името на викито, но не смее да содржи интерпункциски знаци како „#“ или „:“.",
'config-ns-invalid' => 'Назначениот именски простор „<nowiki>$1</nowiki>“ е неважечки.
Назначете друг проектен именски простор.',
'config-ns-conflict' => 'Наведениот именски простор „<nowiki>$1</nowiki>“ се коси со основниот именски простор на МедијаВики.
== Эхлэх ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Тохиргоо]
* [//www.mediawiki.org/wiki/Manual:FAQ МедиаВикигийн тогтмол тавигддаг асуултууд]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce МедиаВикигийн мэдээний мэйл явуулах жагсаалт]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce МедиаВикигийн мэдээний мэйл явуулах жагсаалт]', # Fuzzy
);
/** Marathi (मराठी)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings कॉन्फिगरेशन सेटींगची यादी]
* [//www.mediawiki.org/wiki/Manual:FAQ मीडियाविकी नेहमी विचारले जाणारे प्रश्न]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce मीडियाविकि मेलिंग लिस्ट]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce मीडियाविकि मेलिंग लिस्ट]', # Fuzzy
);
/** Malay (Bahasa Melayu)
'config-localsettings-key' => 'Kunci naik taraf:',
'config-localsettings-badkey' => 'Kunci yang anda berikan tidak betul.',
'config-session-error' => 'Ralat ketika memulakan sesi: $1',
- 'config-your-language' => 'Bahasa kamu:',
+ 'config-your-language' => 'Bahasa anda:',
'config-your-language-help' => 'Pilihkan bahasa untuk digunakan dalam proses pemasangan ini.',
'config-wiki-language' => 'Bahasa wiki:',
'config-wiki-language-help' => 'Pilih bahasa utama wiki yang bakal dicipta ini.',
'config-unicode-using-utf8' => 'utf8_normalize.so oleh Brion Vibber digunakan untuk penormalan Unicode.',
'config-unicode-using-intl' => '[http://pecl.php.net/intl Sambungan intl PECL] digunakan untuk penormalan Unicode.',
'config-db-charset' => 'Peranggu aksara pangkalan data',
- 'config-type-ibm_db2' => 'IBM DB2',
'config-header-mysql' => 'Keutamaan MySQL',
'config-header-postgres' => 'Keutamaan PostgreSQL',
'config-header-sqlite' => 'Keutamaan SQLite',
'config-header-oracle' => 'Keutamaan Oracle',
- 'config-header-ibm_db2' => 'Keutamaan IBM DB2',
'config-invalid-db-type' => 'Jenis pangkalan data tidak sah',
'config-db-web-account-same' => 'Gunakan akaun yang sama seperti dalam pemasangan',
'config-db-web-create' => 'Ciptakan akaun jika belum wujud',
'mainpagetext' => "'''MediaWiki telah berjaya dipasang.'''",
'mainpagedocfooter' => 'Sila rujuk [//meta.wikimedia.org/wiki/Help:Contents Panduan Penggunaan] untuk maklumat mengenai penggunaan perisian wiki ini.
-== Untuk bermula ==
+== Permulaan ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Senarai tetapan konfigurasi]
* [//www.mediawiki.org/wiki/Manual:FAQ Soalan Lazim MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Senarai mel bagi keluaran MediaWiki]', # Fuzzy
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Senarai surat keluaran MediaWiki]
+* [//www.mediawiki.org/wiki/Localisation#Translation_resources Terjemahkan MediaWiki ke dalam bahasa anda]',
);
/** Maltese (Malti)
== 入門 ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings 配置的設定]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki時常問答]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki的公布列單]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki的公布列單]', # Fuzzy
);
/** Norwegian Bokmål (norsk bokmål)
un dat [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide Brukerhandbook] för Hülp to de Bruuk un Konfiguratschoon.', # Fuzzy
);
-/** Nedersaksisch (Nedersaksisch)
+/** Low Saxon (Netherlands) (Nedersaksies)
* @author Servien
*/
$messages['nds-nl'] = array(
== Meer hulpe ==
* [//www.mediawiki.org/wiki/Help:Configuration_settings Lieste mit instellingen]
* [//www.mediawiki.org/wiki/Help:FAQ MediaWiki-vragen die vake esteld wörden]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-postlieste veur nieje versies]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki-postlieste veur nieje versies]', # Fuzzy
);
/** Nepali (नेपाली)
== सुरू गर्नको लागि ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings विन्यास सेटिङ्ग सूची]
* [//www.mediawiki.org/wiki/Manual:FAQ मेडियाविकि सामान्य प्रश्नका उत्तरहरु]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce मेडियाविकि सुचना मेलिङ्ग सूची]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce मेडियाविकि सुचना मेलिङ्ग सूची]', # Fuzzy
);
/** Dutch (Nederlands)
'config-missing-db-name' => 'U moet een waarde opgeven voor "Databasenaam"',
'config-missing-db-host' => 'U moet een waarde invoeren voor "Databaseserver"',
'config-missing-db-server-oracle' => 'U moet een waarde opgeven voor "Database-TNS"',
- 'config-invalid-db-server-oracle' => 'Ongeldige database-TMS "$1".
-Gebruik alleen letters (a-z, A-Z), cijfers (0-9) en liggende streepjes (_).',
+ 'config-invalid-db-server-oracle' => 'Ongeldige database-TNS "$1".
+Gebruik "TNS Names" of een "Easy Connect" tekst ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Oracle naamgevingsmethoden])',
'config-invalid-db-name' => 'Ongeldige databasenaam "$1".
Gebruik alleen letters (a-z, A-Z), cijfers (0-9) en liggende streepjes (_) en streepjes (-).',
'config-invalid-db-prefix' => 'Ongeldig databasevoorvoegsel "$1".
* [//www.mediawiki.org/wiki/Localisation#Translation_resources Maak MediaWiki beschikbaar in jouw taal]',
);
-/** Norwegian Nynorsk (norsk (nynorsk))
+/** Norwegian Nynorsk (norsk nynorsk)
* @author Harald Khan
* @author Nghtwlkr
*/
==Kome i gang==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Liste over oppsettsinnstillingar]
* [//www.mediawiki.org/wiki/Manual:FAQ Spørsmål og svar om MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce E-postliste med informasjon om nye MediaWiki-versjonar]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce E-postliste med informasjon om nye MediaWiki-versjonar]', # Fuzzy
);
/** Norwegian (bokmål) (norsk (bokmål)) */
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista dels paramètres de configuracion]
* [//www.mediawiki.org/wiki/Manual:FAQ/fr FAQ MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de discussions de las parucions de MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista de discussions de las parucions de MediaWiki]", # Fuzzy
);
-/** Oriya (à¬\93à\9cିଆ)
+/** Oriya (à¬\93ଡ଼ିଆ)
* @author Jnanaranjan Sahu
*/
$messages['or'] = array(
== Pamagumpisa ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Picard (Picard)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lischt vun Gnepp zum Konfiguriere]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki-FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Eposchde-Lischt fer neie MediaWiki-Versione]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Eposchde-Lischt fer neie MediaWiki-Versione]", # Fuzzy
);
/** Polish (polski)
'config-mod-security' => "''' Ostrzeżenie ''': Serwer sieci web ma włączone [http://modsecurity.org/ mod_security]. Jeśli niepoprawnie skonfigurowane, może być przyczyną problemów MediaWiki lub innego oprogramowania, które pozwala użytkownikom na wysyłanie dowolnej zawartości.
Sprawdź w [http://modsecurity.org/documentation/ dokumentacji mod_security] lub skontaktuj się z obsługa hosta, jeśli wystąpią losowe błędy.",
'config-diff3-bad' => 'Nie znaleziono GNU diff3.',
+ 'config-git' => 'Znaleziono oprogramowanie kontroli wersji Git: <code>$1</code>.',
+ 'config-git-bad' => 'Oprogramowanie systemu kontroli wersji Git nie zostało znalezione.',
'config-imagemagick' => 'Mamy zainstalowany ImageMagick <code>$1</code>, dzięki czemu będzie można pomniejszać załadowane grafiki.',
'config-gd' => 'Mamy wbudowaną bibliotekę graficzną GD, dzięki ceymu będzie można pomniejszać załadowane grafiki.',
'config-no-scaling' => 'Nie można odnaleźć biblioteki GD lub ImageMagick. Nie będzie działać pomniejszanie załadowane grafiki.',
'config-using531' => 'MediaWiki nie może być używane z PHP $1 z powodu błędu dotyczącego referencyjnych argumentów funkcji <code>__call()</code>.
Uaktualnij do PHP 5.3.2 lub nowszego. Możesz również cofnąć wersję do PHP 5.3.0, aby naprawić ten błąd.
Instalacja została przerwana.',
- 'config-suhosin-max-value-length' => 'Jest zainstalowany Suhosin i ogranicza długość parametru GET do $1 bajtów. Komponent ResourceLoader w MediaWiki wykona obejście tego ograniczenia, ale kosztem wydajności. Jeśli to możliwe należy ustawić <code>suhosin.get.max_value_length</code> na 1024 lub wyższej w <code>php.ini</code> oraz ustawić <code>$wgResourceLoaderMaxQueryLength</code> w LocalSettings.php na tę samą wartość.', # Fuzzy
+ 'config-suhosin-max-value-length' => 'Jest zainstalowany Suhosin i ogranicza długość parametru GET <code>length</code> do $1 bajtów. Komponent ResourceLoader w MediaWiki wykona obejście tego ograniczenia, ale kosztem wydajności.
+Jeśli to możliwe, należy ustawić <code>suhosin.get.max_value_length</code> na 1024 lub wyżej w <code>php.ini</code> oraz ustawić <code>$wgResourceLoaderMaxQueryLength</code> w <code>LocalSettings.php</code> na tę samą wartość.',
'config-db-type' => 'Typ bazy danych',
'config-db-host' => 'Adres serwera bazy danych',
'config-db-host-help' => 'Jeśli serwer bazy danych jest na innej maszynie, wprowadź jej nazwę domenową lub adres IP.
'config-missing-db-host' => 'Musisz wpisać wartość w polu „Serwer bazy danych”',
'config-missing-db-server-oracle' => 'Należy wpisać wartość w polu „Nazwa instancji bazy danych (TNS)”',
'config-invalid-db-server-oracle' => 'Nieprawidłowa nazwa instancji bazy danych (TNS) „$1”.
-W nazwie można użyć wyłącznie liter ASCII (a-z, A-Z), cyfr (0-9), podkreślenia (_) i kropek (.).',
+Użyj "TNS Name" lub "Easy Connect" ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Oracle Naming Methods])',
'config-invalid-db-name' => 'Nieprawidłowa nazwa bazy danych „$1”.
Używaj wyłącznie liter ASCII (a-z, A-Z), cyfr (0-9), podkreślenia (_) lub znaku odejmowania (-).',
'config-invalid-db-prefix' => 'Nieprawidłowy prefiks bazy danych „$1”.
Jeśli instalacja MySQL obsługuje InnoDB, jest wysoce zalecane, by to je wybrać.
Jeśli instalacja MySQL nie obsługuje InnoDB, być może nadszedł czas na jej uaktualnienie.",
+ 'config-mysql-only-myisam-dep' => "'''Ostrzeżenie:''' MyISAM jest jedynym dostępnym mechanizmem składowania dla MySQL, który nie jest zalecany do używania z MediaWiki, ponieważ:
+* słabo obsługuje współbieżność z powodu blokowania tabel
+* jest bardziej skłonny do uszkodzeń niż inne silniki
+* kod MediaWiki nie zawsze traktuje MyISAM jak powinien
+
+Twoja instalacja MySQL nie obsługuje InnoDB, być może jest to czas na aktualizację.",
'config-mysql-engine-help' => "'''InnoDB''' jest prawie zawsze najlepszą opcją, ponieważ posiada dobrą obsługę współbieżności.
'''MyISAM''' może być szybsze w instalacjach pojedynczego użytkownika lub tylko do odczytu.
'config-admin-error-user' => 'Błąd wewnętrzny podczas tworzenia konta administratora o nazwie „<nowiki>$1</nowiki>”.',
'config-admin-error-password' => 'Wewnętrzny błąd podczas ustawiania hasła dla administratora „<nowiki>$1</nowiki>”: <pre>$2</pre>',
'config-admin-error-bademail' => 'Wpisałeś nieprawidłowy adres e‐mail',
- 'config-subscribe' => 'Zapisz się na [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce listę pocztową z ogłaszaniami o nowych wersjach].',
+ 'config-subscribe' => 'Zapisz się na [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce listę pocztową z ogłoszeniami o nowych wersjach].',
'config-subscribe-help' => 'Jest to lista o małej liczbie wiadomości, wykorzystywana do przesyłania informacji o udostępnieniu nowej wersji oraz istotnych sprawach dotyczących bezpieczeństwa.
Powinieneś zapisać się na tę listę i aktualizować zainstalowane oprogramowanie MediaWiki gdy pojawia się nowa wersja.',
'config-subscribe-noemail' => 'Próbowano subskrybować listę mailingową ogłoszeń wersji bez podania adresu e-mail.
'config-profile-fishbowl' => 'Wyłącznie zatwierdzeni edytorzy',
'config-profile-private' => 'Prywatna wiki',
'config-profile-help' => "Strony typu wiki działają najlepiej, gdy pozwolisz je edytować tak wielu osobom, jak to możliwie.
-W MediaWiki, jest łatwe sprawdzenie ostatnich zmian i wycofać szkody, które są spowodowane przez naiwnych lub złośliwych użytkowników.
+W MediaWiki, można łatwo sprawdzić ostatnie zmiany i wycofać szkody, które są spowodowane przez naiwnych lub złośliwych użytkowników.
-Jednakże wielu uznało MediaWiki użytecznymi w różnorodnych rolach, a czasami nie jest łatwo przekonać wszystkich do korzyści ze sposobu działania wiki.
+Jednakże wielu uznało MediaWiki użytecznym w różnorodnych rolach, a czasami nie jest łatwo przekonać wszystkich do korzyści ze sposobu działania wiki. Masz więc wybór.
-Ustawienie '''{{int:config-profil-wiki}}''' pozwala każdemu na edycję, nawet bez logowania się.
-Wiki z '''{{int:config-profile-no-anon}}''' zawiera dodatkowe funkcje rozliczania się, ale może powstrzymać dorywczych współpracowników.
+Ustawienie '''{{int:config-profile-wiki}}''' pozwala każdemu na edycję, nawet bez logowania się.
+Wiki z '''{{int:config-profile-no-anon}}''' zawiera dodatkowe możliwości ale może powstrzymywać potencjalnych edytorów.
Scenariusz '''{{int:config-profile-fishbowl}}''' umożliwia zatwierdzonym użytkownikom edycję, ale wyświetlanie stron jest powszechnie dostępne, włącznie z historią.
-Ustawienie '''{{int:config-profile-private}}'' ' pozwala na wyświetlanie stron tylko zatwierdzonym użytkownikom, ta sama grupa może edytować.
+Ustawienie '''{{int:config-profile-private}}'' ' pozwala na wyświetlanie stron tylko zatwierdzonym użytkownikom, ta sama grupa może je edytować.
-Bardziej skomplikowane konfiguracje uprawnień użytkowników są dostępne po zakończeniu instalacji, zobacz [//www.mediawiki.org/wiki/Manual:User_rights odpowiednią część podręcznika].", # Fuzzy
+Bardziej skomplikowane konfiguracje uprawnień użytkowników są dostępne po zakończeniu instalacji, zobacz [//www.mediawiki.org/wiki/Manual:User_rights odpowiednią część podręcznika].",
'config-license' => 'Prawa autorskie i licencja',
'config-license-none' => 'Brak stopki z licencją',
'config-license-cc-by-sa' => 'Creative Commons – za uznaniem autora, na tych samych zasadach',
'config-logo-help' => 'Domyślny motyw MediaWiki zawiera miejsce na logo wielkości 135 x 160 pikseli powyżej menu na pasku bocznym.
Prześlij obrazek o odpowiednim rozmiarze, a następnie wpisz jego URL tutaj.
-Jeśli nie chcesz logo, pozostaw to pole puste.', # Fuzzy
+Możesz użyć <code>$wgStylePath</code> lub <code>$wgScriptPath</code> jeżeli twoje logo jest relatywne do tych ścieżek.
+
+Jeśli nie chcesz logo, pozostaw to pole puste.',
'config-instantcommons' => 'Włącz Instant Commons',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] jest funkcją, która pozwala wiki używać obrazów, dźwięków i innych mediów znalezionych na witrynie [//commons.wikimedia.org/ Wikimedia Commons].
Aby to zrobić, MediaWiki wymaga dostępu do internetu.
Mogą one wymagać dodatkowych czynności konfiguracyjnych, ale można je teraz włączyć',
'config-install-alreadydone' => "'''Uwaga''' – wydaje się, że MediaWiki jest już zainstalowane, a obecnie próbujesz zainstalować je ponownie.
Przejdź do następnej strony.",
- 'config-install-begin' => 'Po naciśnięciu "{{int:config-continue}}", rozpocznie się instalacji MediaWiki.
-Jeśli nadal chcesz dokonać zmian, naciśnij wstecz.', # Fuzzy
+ 'config-install-begin' => 'Po naciśnięciu "{{int:config-continue}}", rozpocznie się instalacja MediaWiki.
+Jeśli nadal chcesz dokonać zmian, naciśnij "{{int:config-back}}".',
'config-install-step-done' => 'gotowe',
'config-install-step-failed' => 'nieudane',
'config-install-extensions' => 'Włącznie z rozszerzeniami',
'config-download-localsettings' => 'Pobierz <code>LocalSettings.php</code>',
'config-help' => 'pomoc',
'config-nofile' => 'Nie udało się odnaleźć pliku "$1". Czy nie został usunięty?',
+ 'config-extension-link' => 'Czy wiesz, że twoja wiki obsługuje [//www.mediawiki.org/wiki/Manual:Extensions/pl rozszerzenia]?
+
+Możesz przejrzeć [//www.mediawiki.org/wiki/Category:Extensions_by_category rozszerzenia według kategorii] lub [//www.mediawiki.org/wiki/Extension_Matrix Extension Matrix] aby zobaczyć pełną listę rozszerzeń.',
'mainpagetext' => "'''Instalacja MediaWiki powiodła się.'''",
'mainpagedocfooter' => 'Zobacz [//meta.wikimedia.org/wiki/Help:Contents przewodnik użytkownika] w celu uzyskania informacji o działaniu oprogramowania wiki.
== Na początek ==
-* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista ustawień konfiguracyjnych]
-* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Komunikaty o nowych wersjach MediaWiki]', # Fuzzy
+* [//www.mediawiki.org/wiki/Manual:Configuration_settings/pl Lista ustawień konfiguracyjnych]
+* [//www.mediawiki.org/wiki/Manual:FAQ/pl MediaWiki FAQ]
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Komunikaty o nowych wersjach MediaWiki]
+* [//www.mediawiki.org/wiki/Localisation#Translation_resources Przetłumacz MediaWiki na swój język]',
);
/** Piedmontese (Piemontèis)
== En pagaūseņu ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]', # Fuzzy
);
/** Pashto (پښتو)
'config-title' => 'Instalação MediaWiki $1',
'config-information' => 'Informação',
'config-localsettings-upgrade' => 'Foi detectado um ficheiro <code>LocalSettings.php</code>.
-Para actualizar esta instalação, por favor introduza o valor de <code>$wgUpgradeKey</code> na caixa abaixo.
+Para atualizar esta instalação, por favor introduza o valor de <code>$wgUpgradeKey</code> na caixa abaixo.
Encontra este valor no <code>LocalSettings.php</code>.',
'config-localsettings-cli-upgrade' => 'Foi detectada a existência de um ficheiro <code>LocalSettings.php</code>.
Para actualizar esta instalação execute o <code>update.php</code>, por favor.',
'config-page-language' => 'Língua',
'config-page-welcome' => 'Bem-vindo(a) ao MediaWiki!',
'config-page-dbconnect' => 'Ligar à base de dados',
- 'config-page-upgrade' => 'Actualizar a instalação existente',
+ 'config-page-upgrade' => 'Atualizar a instalação existente',
'config-page-dbsettings' => 'Configurações da base de dados',
'config-page-name' => 'Nome',
'config-page-options' => 'Opções',
'config-page-readme' => 'Leia-me',
'config-page-releasenotes' => 'Notas de lançamento',
'config-page-copying' => 'A copiar',
- 'config-page-upgradedoc' => 'A actualizar',
+ 'config-page-upgradedoc' => 'Atualizando',
'config-page-existingwiki' => 'Wiki existente',
'config-help-restart' => 'Deseja limpar todos os dados gravados que introduziu e reiniciar o processo de instalação?',
'config-restart' => 'Sim, reiniciar',
'config-missing-db-host' => 'Tem de introduzir um valor para "Servidor da base de dados"',
'config-missing-db-server-oracle' => 'Tem de introduzir um valor para "TNS da base de dados"',
'config-invalid-db-server-oracle' => 'O TNS da base de dados, "$1", é inválido.
-Use só letras (a-z, A-Z), algarismos (0-9), sublinhados (_) e pontos (.) dos caracteres ASCII.',
+Use só letras (a-z, A-Z), algarismos (0-9), sublinhados (_) e pontos (.) dos caracteres ASCII.', # Fuzzy
'config-invalid-db-name' => 'O nome da base de dados, "$1", é inválido.
Use só letras (a-z, A-Z), algarismos (0-9), sublinhados (_) e hífens (-) dos caracteres ASCII.',
'config-invalid-db-prefix' => 'O prefixo da base de dados, "$1", é inválido.
'config-admin-error-bademail' => 'Introduziu um correio electrónico inválido',
'config-subscribe' => 'Subscreva a [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce lista de divulgação de anúncios de lançamento].',
'config-subscribe-help' => 'Esta é uma lista de divulgação de baixo volume para anúncios de lançamento de versões novas, incluindo anúncios de segurança importantes.
-Deve subscrevê-la e actualizar a sua instalação MediaWiki quando são lançadas versões novas.',
+Deve subscrevê-la e atualizar a sua instalação MediaWiki quando são lançadas versões novas.',
'config-subscribe-noemail' => 'Tentou subscrever a lista de divulgação dos anúncios de novas versões, sem fornecer um endereço de correio electrónico.
Para subscrever esta lista de divulgação tem de fornecer um endereço de correio electrónico.',
'config-almost-done' => 'Está quase a terminar!
/** Brazilian Portuguese (português do Brasil)
* @author Giro720
* @author Gustavo
+ * @author Luckas
* @author Marcionunes
* @author 555
*/
'config-page-releasenotes' => 'Notas de lançamento',
'config-page-copying' => 'Copiando',
'config-page-upgradedoc' => 'Atualizando',
+ 'config-page-existingwiki' => 'Wiki existente',
'config-help-restart' => 'Deseja limpar todos os dados salvos que você introduziu e reiniciar o processo de instalação?',
'config-restart' => 'Sim, reiniciar',
'config-welcome' => '=== Verificações do ambiente ===
'config-register-globals' => "' ' 'Aviso: A opção <code>[http://php.net/register_globals register_globals]</code> do PHP está ativada.'''
' ' 'Desative-a, se puder.'''
O MediaWiki funcionará mesmo assim, mas o seu servidor ficará exposto a potenciais vulnerabilidades de segurança.",
+ 'config-charset-mysql5-binary' => 'MySQL 4.1/5.0 binário',
+ 'config-charset-mysql5' => 'MySQL 4.1/5.0 UTF-8',
+ 'config-mysql-innodb' => 'InnoDB',
+ 'config-mysql-myisam' => 'MyISAM',
+ 'config-mysql-binary' => 'Binário',
+ 'config-mysql-utf8' => 'UTF-8',
+ 'config-ns-generic' => 'Projeto',
+ 'config-admin-box' => 'Conta de administrador',
+ 'config-admin-name' => 'Seu nome:',
+ 'config-admin-password' => 'Senha:',
+ 'config-license-pd' => 'Domínio público',
'config-logo-help' => 'O tema padrão do MediaWiki inclui espaço para um logotipo de 135x160 pixels no canto superior esquerdo.
Faça o upload de uma imagem com estas dimensões e introduza aqui a URL dessa imagem.
Se você não pretende usar um logotipo, deixe este campo em branco.', # Fuzzy
+ 'config-advanced-settings' => 'Configuração avançada',
+ 'config-extensions' => 'Extensões',
+ 'config-help' => 'ajuda',
'mainpagetext' => "'''MediaWiki instalado com sucesso.'''",
'mainpagedocfooter' => 'Consulte o [//meta.wikimedia.org/wiki/Help:Contents Manual de Usuário] para informações de como usar o software wiki.
== Cumenzar ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Glista da las opziuns per la configuraziun]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Glista da mail da MediaWiki cun annunzias da novas versiuns]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Glista da mail da MediaWiki cun annunzias da novas versiuns]", # Fuzzy
);
/** Romanian (română)
'config-title' => 'Installazzione de MediaUicchi $1',
'config-information' => "'Mbormaziune",
'config-localsettings-key' => 'Chiave de aggiornamende:',
+ 'config-localsettings-badkey' => "'A chiave ca è date non g'è corrette.",
+ 'config-session-error' => "Errore facenne accumenzà 'a sessione: $1",
+ 'config-your-language' => "'A lènga toje:",
+ 'config-your-language-help' => "Scacchie 'na lènghe da ausà duranne 'u processe de installazzione:",
+ 'config-wiki-language' => 'Lènga de Uicchi:',
+ 'config-back' => '← Rrète',
+ 'config-continue' => 'Condinue →',
'config-page-language' => 'Lènghe',
+ 'config-page-welcome' => "Bovègne jndr'à MediaUicchi!",
+ 'config-page-dbconnect' => "Collegate a 'u database",
+ 'config-page-upgrade' => "Aggiorne l'installazzione esistende",
+ 'config-page-dbsettings' => "'Mbostaziune d'u database",
'config-page-name' => 'Nome',
+ 'config-page-options' => 'Opziune',
+ 'config-page-install' => 'Installe',
+ 'config-page-complete' => 'Combletate!',
+ 'config-page-restart' => "Riavvie l'installazzione",
+ 'config-page-readme' => 'Liggeme',
+ 'config-page-releasenotes' => 'Note de rilasce',
+ 'config-page-copying' => 'Stoche a copie',
+ 'config-page-upgradedoc' => 'Aggiornamende',
+ 'config-page-existingwiki' => 'Uicchi esistende',
+ 'config-db-type' => 'Tipe de database:',
'config-db-charset' => "'Nzieme de carattere d'u database",
'config-charset-mysql5-binary' => 'MySQL 4.1/5.0 binary',
'config-charset-mysql5' => 'MySQL 4.1/5.0 UTF-8',
'config-logo-help' => 'Стандартная тема оформления MediaWiki содержит над боковой панелью пространство для логотипа размером 135x160 пикселей.
Загрузите изображение соответствующего размера, и введите его URL здесь.
-Если вам не нужен логотип, оставьте это поле пустым.',
+Если вам не нужен логотип, оставьте это поле пустым.', # Fuzzy
'config-instantcommons' => 'Включить Instant Commons',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] — это функция, позволяющая использовать изображения, звуки и другие медиафайлы с Викисклада ([//commons.wikimedia.org/ Wikimedia Commons]).
Для работы этой функции MediaWiki необходим доступ к Интернету.
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Наставлїня конфіґурації]
* [//www.mediawiki.org/wiki/Manual:FAQ Часты вопросы о MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Розосыланя повідомлїнь про новы верзії MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Розосыланя повідомлїнь про новы верзії MediaWiki]', # Fuzzy
);
/** Sanskrit (संस्कृतम्)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Конфигурация уларытыытын параметрдара]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki релизтарын почтовай испииһэгэ]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki релизтарын почтовай испииһэгэ]', # Fuzzy
);
/** Sardinian (sardu)
== P'accuminzari ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Alencu di mpustazzioni di cunfigurazzioni]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list dî rilassi di MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list dî rilassi di MediaWiki]", # Fuzzy
);
/** Scots (Scots)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settins leet]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki releese mailin leet]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki releese mailin leet]", # Fuzzy
);
/** Sassaresu (Sassaresu)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Impusthazioni di cunfigurazioni]
* [//www.mediawiki.org/wiki/Manual:FAQ Prigonti friquenti i MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list annùnzii MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list annùnzii MediaWiki]", # Fuzzy
);
/** Cmique Itom (Cmique Itom)
== Početak ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista postavki]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki najčešće postavljana pitanja]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista E-Mail adresa MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Lista E-Mail adresa MediaWiki]', # Fuzzy
);
/** Tachelhit (Tašlḥiyt/ⵜⴰⵛⵍⵃⵉⵜ)
== Izwir d MediaWiki ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Umuɣ n iɣwwarn n usgadda ]
* [//www.mediawiki.org/wiki/Manual:FAQ/fr Isqqsitn f MidyWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Umuɣ n imsgdaln f imbḍitn n MidyaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Umuɣ n imsgdaln f imbḍitn n MidyaWiki]', # Fuzzy
);
/** Sinhala (සිංහල)
'config-missing-db-host' => 'Vnesti morate vrednost za »Gostitelj zbirke podatkov«',
'config-missing-db-server-oracle' => 'Vnesti morate vrednost za »TNS zbirke podatkov«',
'config-invalid-db-server-oracle' => 'Neveljaven TNS zbirke podatkov »$1«.
-Uporabljajte samo črke ASCII (a-z, A-Z), številke (0-9), podčrtaje (_) in pike (.).',
+Uporabite ali "ime TNS" ali niz "Easy Connect" ([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Načini poimenovanja Oracle])',
'config-invalid-db-name' => 'Neveljavno ime zbirke podatkov »$1«.
Uporabljajte samo črke ASCII (a-z, A-Z), številke (0-9), podčrtaje (_) in vezaje (-).',
'config-invalid-db-prefix' => 'Neveljavna predpona zbirke podatkov »$1«.
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Liste der Konfigurationsvariablen]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki-FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailingliste neuer MediaWiki-Versionen]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailingliste neuer MediaWiki-Versionen]', # Fuzzy
);
/** Somali (Soomaaliga)
== Bilaaw ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Albanian (shqip)
== Sa për fillim==
* [//www.mediawiki.org/wiki/Help:Configuration_settings Parazgjedhjet e MediaWiki-t]
* [//www.mediawiki.org/wiki/Help:FAQ Pyetjet e shpeshta rreth MediaWiki-t]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Njoftime rreth MediaWiki-t]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Njoftime rreth MediaWiki-t]', # Fuzzy
);
/** Serbian (Cyrillic script) (српски (ћирилица))
== Увод ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Помоћ у вези са подешавањима]
* [//www.mediawiki.org/wiki/Manual:FAQ Често постављена питања]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Дописна листа о издањима Медијавикија]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Дописна листа о издањима Медијавикија]', # Fuzzy
);
/** Serbian (Latin script) (srpski (latinica))
== Za početak ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Pomoć u vezi sa podešavanjima]
* [//www.mediawiki.org/wiki/Manual:FAQ Najčešće postavljena pitanja]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mejling lista o izdanjima MedijaVikija]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mejling lista o izdanjima MedijaVikija]', # Fuzzy
);
/** Sranan Tongo (Sranantongo)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Den seti]
* [//www.mediawiki.org/wiki/Manual:FAQ Sani di ben aksi furu (FAQ)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Boskopu grupu gi nyun meki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Boskopu grupu gi nyun meki]', # Fuzzy
);
/** Swati (SiSwati)
*/
$messages['stq'] = array(
'mainpagetext' => "'''Ju MediaWiki Software wuude mäd Ärfoulch installierd.'''",
- 'mainpagedocfooter' => 'Sjuch ju [//meta.wikimedia.org/wiki/MediaWiki_localization Dokumentation tou de Anpaasenge fon dän Benutseruurfläche] un dät [//meta.wikimedia.org/wiki/Help:Contents Benutserhondbouk] foar Hälpe tou ju Benutsenge un Konfiguration.',
+ 'mainpagedocfooter' => 'Sjuch ju [//meta.wikimedia.org/wiki/MediaWiki_localization Dokumentation tou de Anpaasenge fon dän Benutseruurfläche] un dät [//meta.wikimedia.org/wiki/Help:Contents Benutserhondbouk] foar Hälpe tou ju Benutsenge un Konfiguration.', # Fuzzy
);
/** Sundanese (Basa Sunda)
*/
$messages['su'] = array(
'mainpagetext' => "'''''Software'' MediaWiki geus diinstal.'''",
- 'mainpagedocfooter' => "Mangga tingal ''[//meta.wikimedia.org/wiki/MediaWiki_localisation documentation on customizing the interface]'' jeung [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide Tungtunan Pamaké] pikeun pitulung maké jeung konfigurasi.",
+ 'mainpagedocfooter' => "Mangga tingal ''[//meta.wikimedia.org/wiki/MediaWiki_localisation documentation on customizing the interface]'' jeung [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide Tungtunan Pamaké] pikeun pitulung maké jeung konfigurasi.", # Fuzzy
);
/** Swedish (svenska)
+ * @author Jopparn
* @author Skalman
* @author WikiPhoenix
*/
'config-desc' => 'Installationsprogram för MediaWiki',
'config-title' => 'Installation av MediaWiki $1',
'config-information' => 'Information',
+ 'config-localsettings-upgrade' => 'A <code>LocalSettings.php</code>-fil har upptäckts.
+För att uppgradera den här installationen, vänligen ange värdet för <code>$wgUpgradeKey</code> i rutan nedan.
+Du hittar den i <code>LocalSettings.php</code>.',
+ 'config-localsettings-cli-upgrade' => 'En <code>LocalSettings.php</code>-fil har upptäckts.
+För att uppgradera denna installation, kör <code>update.php</code> istället',
'config-localsettings-key' => 'Uppgraderingsnyckel:',
'config-localsettings-badkey' => 'Nyckeln du angav är inkorrekt.',
+ 'config-upgrade-key-missing' => 'En nuvarande installerade av MediaWiki har upptäckts.
+För att uppgradera installationen, lägg till följande rad i slutet av din <code>LocalSettings.php</code>:
+
+$1',
+ 'config-localsettings-incomplete' => 'De befintliga <code>LocalSettings.php</code> verkar vara ofullständig.
+Variabeln $1 är inte inställd.
+Ändra <code>LocalSettings.php</code> så att denna variabel är inställd och klicka på "{{int:Config-continue}}".',
'config-session-error' => 'Fel vid uppstart av session: $1',
'config-your-language' => 'Ditt språk:',
'config-your-language-help' => 'Välj ett språk som ska användas under installationen.',
'config-env-php' => 'PHP $1 är installerad.',
'config-env-php-toolow' => 'PHP $1 är installerad.
MediaWiki kräver PHP $2 eller högre.',
+ 'config-outdated-sqlite' => "'''Varning:''' du har SQLite $1, vilket är lägre än minimikravet version $2. SQLite kommer inte att vara tillgänglig.",
+ 'config-register-globals' => "'''Varning: PHP:s <code>[http://php.net/register_globals register_globals]</code> tillval är aktiverat.'''
+'''Inaktivera den om du kan.'''
+MediaWiki kommer att fungera, men din server exponeras för potentiella säkerhetsluckor.",
+ 'config-safe-mode' => "''' Varning:''' PHP:s [http://www.php.net/features.safe-mode felsäkert läge] är aktivt.
+Det kan orsaka problem, särskilt om du använder filöverföringar och <code>math</code>-stöd.",
+ 'config-xml-bad' => 'PHP:s XML-modul saknas.
+MediaWiki kräver funktioner i denna modul och kommer inte att fungera i den här konfigurationen.
+Om du kör Mandrake, installera php-xml-paketet.',
+ 'config-memory-bad' => "''' Varning:''' PHP:s <code>memory_limit</code> är $1.
+Detta är förmodligen för lågt.
+Installationen kan misslyckas!",
'config-xcache' => '[http://xcache.lighttpd.net/ XCache] är installerad',
'config-apc' => '[http://www.php.net/apc APC] är installerad',
'config-wincache' => '[http://www.iis.net/download/WinCacheForPhp WinCache] är installerad',
'config-diff3-bad' => 'GNU diff3 hittades inte.',
+ 'config-git-bad' => 'Git-versionen av kontrollmjukvaran hittades inte.',
+ 'config-no-uri' => "'''Fel:''' Kunde inte fastställa det nuvarande URI:et.
+Installationen avbröts.",
+ 'config-no-cli-uri' => "'''Varning:''' inget --scriptpath är anget, med standarden: <code>$1</code> .",
'config-using-server' => 'Använder servernamn "<nowiki>$1</nowiki>".',
'config-using-uri' => 'Använder server-URL "<nowiki>$1$2</nowiki>".',
+ 'config-no-cli-uploads-check' => "'''Varning:''' Din standardkatalog för uppladdningar (<code>$1</code>) inte är kontrollerad för sårbarhet från godtyckliga skriptkörning under CLI-installationen.",
'config-db-type' => 'Databastyp:',
+ 'config-db-host' => 'Databasvärd:',
'config-db-wiki-settings' => 'Identifiera denna wiki',
'config-db-name' => 'Databasnamn:',
'config-db-name-oracle' => 'Databasschema:',
'config-db-install-account' => 'Användarkonto för installation',
'config-db-username' => 'Databas-användarnamn:',
'config-db-password' => 'Databas-lösenord:',
+ 'config-db-wiki-account' => 'Användarkonto för normal drift',
+ 'config-db-prefix' => 'Prefix för tabellerna i databasen:',
'config-db-port' => 'Databasport:',
'config-db-schema' => 'Schema för MediaWiki',
+ 'config-pg-test-error' => "Kan inte ansluta till databas '''$1''': $2",
+ 'config-sqlite-dir' => 'SQLite data-katalog:',
'config-header-mysql' => 'MySQL-inställningar',
'config-header-postgres' => 'PostgreSQL-inställningar',
'config-header-sqlite' => 'SQLite-inställningar',
'config-invalid-db-type' => 'Ogiltig databastyp',
'config-missing-db-name' => 'Du måste ange ett värde för "Databasnamn"',
'config-missing-db-host' => 'Du måste ange ett värde för "Databasvärd"',
+ 'config-missing-db-server-oracle' => 'Du måste ange ett värde för "Databas TNS"',
'config-invalid-db-name' => '"$1" är ett ogiltigt databasnamn.
Använd bara ASCII-bokstäver (a-z, A-Z), siffror (0-9), understreck (_) och bindestreck (-).',
'config-invalid-db-prefix' => '"$1" är ett ogiltigt databasprefix.
Kontrollera värden, användarnamnet och lösenordet nedan och försök igen',
'config-invalid-schema' => '"$1" är ett ogiltigt schema för MediaWiki.
Använd bara ASCII-bokstäver (a-z, A-Z), siffror (0-9), understreck (_) och bindestreck (-).',
+ 'config-db-sys-create-oracle' => 'Installationsprogrammet stöder endast med ett SYSDBA-konto för att skapa ett nytt konto.',
'config-db-sys-user-exists-oracle' => 'Användarkontot "$1" finns redan. SYSDBA kan endast användas för att skapa ett nytt konto!',
'config-postgres-old' => 'PostgreSQL $1 eller senare krävs, du har $2.',
+ 'config-sqlite-readonly' => 'Filen <code>$1</code> är inte skrivbar.',
+ 'config-sqlite-cant-create-db' => 'Kunde inte skapa databasfilen <code>$1</code>.',
+ 'config-sqlite-fts3-downgrade' => 'PHP saknar stöd för FTS3, nedgraderar tabeller',
+ 'config-can-upgrade' => "Det finns MediaWiki-tabeller i den här databasen.
+För att uppgradera dem till MediaWiki $1, klicka på '''Fortsätt'''.",
'config-upgrade-done' => "Uppgraderingen slutfördes.
Du kan nu [$1 börja använda din wiki].
'config-upgrade-done-no-regenerate' => 'Uppgraderingen slutfördes.
Du kan nu [$1 börja använda din wiki].',
+ 'config-regenerate' => 'Återskapa LocalSettings.php →',
+ 'config-db-web-account' => 'Databaskonto för webbaccess',
'config-db-web-account-same' => 'Använd samma konto som för installation',
'config-db-web-create' => 'Skapa kontot om det inte redan finns',
'config-mysql-engine' => 'Lagringsmotor:',
'config-site-name' => 'Namnet på wikin:',
'config-site-name-blank' => 'Ange ett sidnamn.',
'config-ns-generic' => 'Projekt',
+ 'config-ns-other' => 'Annan (specificera)',
'config-ns-invalid' => 'Den angivna namnrymden "<nowiki>$1</nowiki>" är ogiltig.
Ange ett annat namnrymd för projektet.',
'config-ns-conflict' => 'Den angivna namnrymden "<nowiki>$1</nowiki>" står i konflikt med en standardnamnrymd för MediaWiki.
'config-optional-continue' => 'Ställ fler frågor till mig.',
'config-optional-skip' => 'Jag är redan uttråkad, bara installera wiki.',
'config-profile-wiki' => 'Öppen wiki',
+ 'config-profile-no-anon' => 'Kontoskapande krävs',
'config-profile-fishbowl' => 'Endast auktoriserade redigerare',
'config-profile-private' => 'Privat wiki',
'config-license' => 'Upphovsrätt och licens:',
'config-license-pd' => 'Allmän egendom',
'config-license-cc-choose' => 'Välj en anpassad Creative Commons-licens',
'config-email-settings' => 'E-postinställningar',
+ 'config-enable-email' => 'Aktivera utgående e-post',
+ 'config-email-user' => 'Aktivera e-post mellan användare',
+ 'config-email-user-help' => 'Tillåta alla användare att skicka mail till varandra om de har aktiverat det i deras preferenser.',
+ 'config-email-usertalk' => 'Aktivera underrättelse för användardiskussionssidan',
'config-email-watchlist' => 'Aktivera meddelanden för bevakningslistan',
+ 'config-email-auth' => 'Aktivera autentisering via e-post',
'config-upload-settings' => 'Bild- och filuppladdningar',
'config-upload-enable' => 'Aktivera filöverföringar',
'config-upload-deleted' => 'Mapp för raderade filer:',
== Msaada wa kianzio ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Orodha ya mipangilio ya msingi]
* [//www.mediawiki.org/wiki/Manual:FAQ FAQ ya MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Orodha ya utoaji wa habari za MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Orodha ya utoaji wa habari za MediaWiki]', # Fuzzy
);
/** Silesian (ślůnski)
== Na sztart ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lista sztalowań konfiguracyje]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Komuńikaty uo nowych wersyjach MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Komuńikaty uo nowych wersyjach MediaWiki]', # Fuzzy
);
/** Tamil (தமிழ்)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ ಮೀಡಿಯವಿಕಿ FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]', # Fuzzy
);
/** Telugu (తెలుగు)
'config-admin-password-confirm' => 'సంకేతపదం మళ్ళీ:',
'config-admin-email' => 'ఈ-మెయిలు చిరునామా:',
'config-optional-continue' => 'నన్ను మరిన్ని ప్రశ్నలు అడుగు.',
- 'config-profile-wiki' => 'సంప్రదాయ వికీ',
+ 'config-profile-wiki' => 'సంప్రదాయ వికీ', # Fuzzy
'config-profile-no-anon' => 'ఖాతా సృష్టింపు తప్పనిసరి',
'config-profile-private' => 'అంతరంగిక వికీ',
'config-license' => 'కాపీహక్కులు మరియు లైసెన్సు:',
* [//www.mediawiki.org/wiki/Manual:Configuration_settings మీడియావికీ పనితీరు, అమరిక మార్చుకునేందుకు వీలుకల్పించే చిహ్నాల జాబితా]
* [//www.mediawiki.org/wiki/Manual:FAQ మీడియావికీపై తరుచుగా అడిగే ప్రశ్నలు]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce మీడియావికీ సాఫ్టువేరు కొత్త వెర్షను విడుదలల గురించి తెలిపే మెయిలింగు లిస్టు]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce మీడియావికీ సాఫ్టువేరు కొత్త వెర్షను విడుదలల గురించి తెలిపే మెయిలింగు లిస్టు]', # Fuzzy
);
/** Tetum (tetun)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Феҳристи танзимоти пайгирбандӣ]
* [//www.mediawiki.org/wiki/Manual:FAQ Пурсишҳои МедиаВики]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Феҳристи ройномаҳои нусхаҳои МедиаВики]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Феҳристи ройномаҳои нусхаҳои МедиаВики]', # Fuzzy
);
/** Tajik (Latin script) (tojikī)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Fehristi tanzimoti pajgirbandī]
* [//www.mediawiki.org/wiki/Manual:FAQ Pursişhoi MediaViki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Fehristi rojnomahoi nusxahoi MediaViki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Fehristi rojnomahoi nusxahoi MediaViki]', # Fuzzy
);
/** Thai (ไทย)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings รายการการปรับแต่งระบบ] (ภาษาอังกฤษ)
* [//www.mediawiki.org/wiki/Manual:FAQ คำถามที่ถามบ่อยในมีเดียวิกิ] (ภาษาอังกฤษ)
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce เมลลิงลิสต์ของมีเดียวิกิ]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce เมลลิงลิสต์ของมีเดียวิกิ]', # Fuzzy
);
/** Turkmen (Türkmençe)
== Öwrenjeler ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Konfigurasiýa sazlamalary]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki SSS]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-poçta sanawy]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-poçta sanawy]', # Fuzzy
);
/** Tagalog (Tagalog)
'config-logo-help' => 'Ang likas na nakatakdang pabalat ng MediaWiki ay nagsasama ng puwang para sa isang logong 135x160 ang piksel na nasa itaas ng menu ng panggilid na bareta.
Magkargang papaitaas ng isang imahe na mayroong naaangkop na sukat, at ipasok dito ang URL.
-Kung ayaw mo ng isang logo, iwanang walang laman ang kahong ito.',
+Kung ayaw mo ng isang logo, iwanang walang laman ang kahong ito.', # Fuzzy
'config-instantcommons' => 'Paganahin ang Mga Pangkaraniwang Biglaan',
'config-instantcommons-help' => 'Ang [//www.mediawiki.org/wiki/InstantCommons Instant Commons] ay isang tampok na nagpapahintulot sa mga wiki upang gumamit ng mga imahe, mga tunog at iba pang mga midyang matatagpuan sa pook ng [//commons.wikimedia.org/ Wikimedia Commons].
Upang magawa ito, nangangailangan ang MediaWiki ng pagka nakakapunta sa Internet.
== Yeni Başlayanlar ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Yapılandırma ayarlarının listesi]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki SSS]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-posta listesi]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki e-posta listesi]', # Fuzzy
);
/** Tatar (Cyrillic script) (татарча)
== Кайбер файдалы ресурслар ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Көйләнмәләр исемлеге (инг.)];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki турында еш бирелгән сораулар һәм җаваплар (инг.)];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki'ның яңа версияләре турында хәбәрләр яздырып алу].",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki'ның яңа версияләре турында хәбәрләр яздырып алу].", # Fuzzy
);
/** Tatar (Latin script) (tatarça)
== Qayber faydalı resurslar ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Köylänmälär isemlege (ing.)];
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki turında yış birelgän sorawlar häm cawaplar (ing.)];
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki'nıñ yaña versiäläre turında xäbärlär yazdırıp alu].",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki'nıñ yaña versiäläre turında xäbärlär yazdırıp alu].", # Fuzzy
);
/** Udmurt (удмурт)
== دەسلەپكى ساۋات ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings سەپلىمە تەڭشەك تىزىملىكى]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki كۆپ ئۇچرايدىغان مەسىلىلەرگە جاۋاب]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki تارقاتقان ئېلخەت تىزىملىكى]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki تارقاتقان ئېلخەت تىزىملىكى]', # Fuzzy
);
/** Ukrainian (українська)
'config-logo-help' => 'Стандартна схема оформлення MediaWiki містить вільне для логотипу місце над бічною панеллю розміром 135x160 пікселів.
Завантажте зображення відповідного розміру і введіть тут його URL.
-Якщо Вам не потрібен логотип, залиште це поле пустим.',
+Якщо Вам не потрібен логотип, залиште це поле пустим.', # Fuzzy
'config-instantcommons' => 'Увімкнути Instant Commons',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons Instant Commons] це функція, що дозволяє вікі використовувати зображення, звуки та інші медіа, розміщені на [//commons.wikimedia.org/ Вікісховищі].
Для цього MediaWiki необхідний доступ до інтернету.
);
/** Uzbek (oʻzbekcha)
+ * @author Sociologist
*/
$messages['uz'] = array(
+ 'config-admin-password-blank' => 'Administrator hisob yozuvi uchun maxfiy soʻz kiriting.',
'mainpagetext' => "'''MediaWiki muvaffaqiyatli o'rnatildi.'''",
'mainpagedocfooter' => "Wiki dasturini ishlatish haqida ma'lumot olish uchun [//meta.wikimedia.org/wiki/Help:Contents Foydalanuvchi qo'llanmasi] sahifasiga murojaat qiling.
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Moslamalar ro'yxati]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki haqida ko'p so'raladigan savollar]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki yangi versiyasi chiqqanda xabar berish ro'yxati]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki yangi versiyasi chiqqanda xabar berish ro'yxati]", # Fuzzy
);
/** vèneto (vèneto)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Inpostasion de configurasion]
* [//www.mediawiki.org/wiki/Manual:FAQ Domande frequenti so MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list anunsi MediaWiki]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailing list anunsi MediaWiki]", # Fuzzy
);
/** Veps (vepsän kel’)
== Erased tarbhaižed resursad ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Järgendusiden nimikirjutez]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce počtnimikirjutez]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce počtnimikirjutez]', # Fuzzy
);
/** Vietnamese (Tiếng Việt)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Danh sách các thiết lập cấu hình]
* [//www.mediawiki.org/wiki/Manual:FAQ Các câu hỏi thường gặp MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Danh sách gửi thư về việc phát hành MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Danh sách gửi thư về việc phát hành MediaWiki]', # Fuzzy
);
/** Volapük (Volapük)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Parametalised]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki: SSP]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Potalised tefü fomams nulik ela MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Potalised tefü fomams nulik ela MediaWiki]', # Fuzzy
);
/** Võro (Võro)
* [//meta.wikimedia.org/wiki/MediaWiki_User%27s_Guide MediaWiki pruukmisoppus (inglüse keelen)].
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Säädmiisi oppus (inglüse keelen)]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki kõgõ küsütümbäq küsümiseq (inglüse keelen)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce E-postilist, minka andas teedäq MediaWiki vahtsist kujõst].',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce E-postilist, minka andas teedäq MediaWiki vahtsist kujõst].', # Fuzzy
);
/** Walloon (walon)
== Ha pagtikang==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Wolof (Wolof)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Limu jumtukaayi kocc-koccal gi]
* [//www.mediawiki.org/wiki/Manual:FAQ FAQ MediaWiki]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Limu waxtaan ci liy-génn ci MediaWiki]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Limu waxtaan ci liy-génn ci MediaWiki]', # Fuzzy
);
/** Wu (吴语)
== 入门 ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings MediaWiki 配置设置列表]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki 常见问题解答]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki 发布邮件列表]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki 发布邮件列表]', # Fuzzy
);
/** Kalmyk (хальмг)
== Туста заавр ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Көгүдә бүрткл]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki туск ЮмБи]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki шинҗллһнә бүрткл]',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki шинҗллһнә бүрткл]', # Fuzzy
);
/** Yiddish (ייִדיש)
== Láti bẹ̀rẹ̀ ==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]", # Fuzzy
);
/** Cantonese (粵語)
==開始使用==
* [//www.mediawiki.org/wiki/Manual:Configuration_settings 配置設定清單](英)
* [//www.mediawiki.org/wiki/Manual:FAQ MediaWiki 常見問題](英)
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki 發佈郵件名單](英)',
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki 發佈郵件名單](英)', # Fuzzy
);
/** Zeeuws (Zeêuws)
* [//www.mediawiki.org/wiki/Manual:Configuration_settings Lieste mie instelliengen]
* [//www.mediawiki.org/wiki/Manual:FAQ Veehestelde vraehen (FAQ)]
-* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailienglieste voe ankondigiengen van nieuwe versies]",
+* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce Mailienglieste voe ankondigiengen van nieuwe versies]", # Fuzzy
);
/** Simplified Chinese (中文(简体))
/** Traditional Chinese (中文(繁體))
* @author Anthony Fok
* @author Hzy980512
+ * @author Justincheng12345
* @author Liangent
* @author Mark85296341
* @author Simon Shek
Object caching is not enabled.",
'config-mod-security' => "'''警告''':您的服務器已啟動[http://modsecurity.org/ mod_security]。若其配置錯誤, 會導致MediaWiki和其他軟件的錯誤並允許用戶任意發布內容。如果您遇到任何錯誤,請查閱[http://modsecurity.org/documentation/ mod_security文檔]或聯繫您的客服。",
'config-diff3-bad' => '找不到GNU diff3。',
+ 'config-git' => '發現Git版本控制軟件:<code>$1</code>。',
+ 'config-git-bad' => '無法找到Git版本控制軟件。',
'config-imagemagick' => '已找到ImageMagick:<code>$1</code>。如果你啟用了上傳功能,縮略圖功能也將被啟用。',
'config-gd' => '已找到內建的GD圖形庫。如果你啟用了上傳功能,縮略圖功能也將被啟用。',
'config-no-scaling' => '找不到GD庫或ImageMagick。縮略圖功能將不可用。',
'config-missing-db-name' => '您必須為“數據庫名稱”輸入內容',
'config-missing-db-host' => '您必須為“數據庫主機”輸入內容',
'config-missing-db-server-oracle' => '您必須為“數據庫透明網絡底層(TNS)”輸入內容',
- 'config-invalid-db-server-oracle' => '無效的數據庫TNS“$1”。請只使用ASCII字母(a-z、A-Z)、數字(0-9)、下劃線(_)和點號(.)。',
+ 'config-invalid-db-server-oracle' => '無效的數據庫TNS「$1」。
+請只使用「TNS Name」或「Easy Connect」 字串([http://docs.oracle.com/cd/E11882_01/network.112/e10836/naming.htm Oracle命名法])',
'config-invalid-db-name' => '無效的數據庫名稱“$1”。請只使用ASCII字母(a-z、A-Z)、數字(0-9)、下劃線(_)和連字號(-)。',
'config-invalid-db-prefix' => '無效的數據庫前綴“$1”。請只使用ASCII字母(a-z、A-Z)、數字(0-9)、下劃線(_)和連字號(-)。',
'config-connection-error' => '$1。
'config-optional-continue' => '多問我一些問題吧。',
'config-optional-skip' => '我已經不耐煩了,趕緊安裝我的wiki。',
'config-profile' => '用戶權限配置:',
- 'config-profile-wiki' => '傳統wiki', # Fuzzy
+ 'config-profile-wiki' => '開放的wiki',
'config-profile-no-anon' => '需要註冊帳號',
'config-profile-fishbowl' => '編輯受限',
'config-profile-private' => '非公開wiki',
'config-logo' => '標誌URL:',
'config-logo-help' => '在MediaWiki的默認外觀中,左側欄菜單之上有一塊135x160像素的標誌區。請上傳一幅相應大小的圖像,並在此輸入URL。
-如果您不希望使用標誌,請將本處留空。',
+如果您不希望使用標誌,請將本處留空。', # Fuzzy
'config-instantcommons' => '啟用即時共享資源',
'config-instantcommons-help' => '[//www.mediawiki.org/wiki/InstantCommons 即時共享資源]可以讓wiki使用來自[//commons.wikimedia.org/ 維基共享資源]網站的圖像、音頻和其他媒體文件。要啟用該功能,MediaWiki必須能夠訪問互聯網。
foreach ( $this->extensions as $extName ) {
$encExtName = self::escapePhpString( $extName );
- $localSettings .= "require_once( \"\$IP/extensions/$encExtName/$encExtName.php\" );\n";
+ $localSettings .= "require_once \"\$IP/extensions/$encExtName/$encExtName.php\";\n";
}
}
$status = Status::newGood();
if ( !strlen( $newValues['wgDBserver'] ) ) {
$status->fatal( 'config-missing-db-server-oracle' );
- } elseif ( !preg_match( '/^[a-zA-Z0-9_\.]+$/', $newValues['wgDBserver'] ) ) {
+ } elseif ( !self::checkConnectStringFormat( $newValues['wgDBserver'] ) ) {
$status->fatal( 'config-invalid-db-server-oracle', $newValues['wgDBserver'] );
}
if ( !preg_match( '/^[a-zA-Z0-9_]*$/', $newValues['wgDBprefix'] ) ) {
";
}
+ /**
+ * Function checks the format of Oracle connect string
+ * The actual validity of the string is checked by attempting to connect
+ *
+ * Regex should be able to validate all connect string formats
+ * [//](host|tns_name)[:port][/service_name][:POOLED]
+ * http://www.orafaq.com/wiki/EZCONNECT
+ *
+ * @since 1.22
+ *
+ * @param string $connect_string
+ *
+ * @return bool Whether the connection string is valid.
+ */
+ public static function checkConnectStringFormat( $connect_string ) {
+ $isValid = preg_match( '/^[[:alpha:]][\w\-]*(?:\.[[:alpha:]][\w\-]*){0,2}$/', $connect_string ); // TNS name
+ $isValid |= preg_match( '/^(?:\/\/)?[\w\-\.]+(?::[\d]+)?(?:\/(?:[\w\-\.]+(?::(pooled|dedicated|shared))?)?(?:\/[\w\-\.]+)?)?$/', $connect_string ); // EZConnect
+ return (bool)$isValid;
+ }
+
}
$meta = $this->db->query( 'SELECT column_name FROM all_cons_columns WHERE owner = \'' .
strtoupper( $this->db->getDBname() ) .
- '\' AND constraint_name = \'MW_PAGE_RESTRICTIONS_PK\' AND rownum = 1'
+ '\' AND constraint_name = \'' .
+ $this->db->tablePrefix() .
+ 'PAGE_RESTRICTIONS_PK\' AND rownum = 1'
);
$row = $meta->fetchRow();
if ( $row['column_name'] == 'PR_ID' ) {
'  ' .
htmlspecialchars( $this->getVar( 'wgRightsText' ) ) .
"</p>\n" .
- "<p style=\"text-align: center\">" .
+ "<p style=\"text-align: center;\">" .
Html::element( 'a',
array(
'href' => $this->getCCPartnerUrl(),
wfMessage( 'config-cc-again' )->text()
) .
"</p>\n" .
- "<script type=\"text/javascript\">\n" .
+ "<script>\n" .
# Reduce the wrapper div height
htmlspecialchars( $reduceJs ) .
"\n" .
if ( isset( $_SERVER['HTTP_USER_AGENT'] ) &&
strpos( $_SERVER['HTTP_USER_AGENT'], 'MSIE' ) !== false ) {
// JS appears the only method that works consistently with IE7+
- $this->addHtml( "\n<script type=\"" . $GLOBALS['wgJsMimeType'] .
- '">jQuery( document ).ready( function() { document.location=' .
+ $this->addHtml( "\n<script>jQuery( document ).ready( function () { document.location = " .
Xml::encodeJsVar( $lsUrl ) . "; } );</script>\n" );
} else {
$this->parent->request->response()->header( "Refresh: 0;url=$lsUrl" );
+++ /dev/null
-<?php
-/**
- * Job queue aggregator code.
- *
- * 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
- * @author Aaron Schulz
- */
-
-/**
- * Class to handle tracking information about all queues
- *
- * @ingroup JobQueue
- * @since 1.21
- */
-abstract class JobQueueAggregator {
- /** @var JobQueueAggregator */
- protected static $instance = null;
-
- /**
- * @param array $params
- */
- protected function __construct( array $params ) {}
-
- /**
- * @return JobQueueAggregator
- */
- final public static function singleton() {
- global $wgJobQueueAggregator;
-
- if ( !isset( self::$instance ) ) {
- $class = $wgJobQueueAggregator['class'];
- $obj = new $class( $wgJobQueueAggregator );
- if ( !( $obj instanceof JobQueueAggregator ) ) {
- throw new MWException( "Class '$class' is not a JobQueueAggregator class." );
- }
- self::$instance = $obj;
- }
-
- return self::$instance;
- }
-
- /**
- * Destroy the singleton instance
- *
- * @return void
- */
- final public static function destroySingleton() {
- self::$instance = null;
- }
-
- /**
- * Mark a queue as being empty
- *
- * @param string $wiki
- * @param string $type
- * @return bool Success
- */
- final public function notifyQueueEmpty( $wiki, $type ) {
- wfProfileIn( __METHOD__ );
- $ok = $this->doNotifyQueueEmpty( $wiki, $type );
- wfProfileOut( __METHOD__ );
- return $ok;
- }
-
- /**
- * @see JobQueueAggregator::notifyQueueEmpty()
- */
- abstract protected function doNotifyQueueEmpty( $wiki, $type );
-
- /**
- * Mark a queue as being non-empty
- *
- * @param string $wiki
- * @param string $type
- * @return bool Success
- */
- final public function notifyQueueNonEmpty( $wiki, $type ) {
- wfProfileIn( __METHOD__ );
- $ok = $this->doNotifyQueueNonEmpty( $wiki, $type );
- wfProfileOut( __METHOD__ );
- return $ok;
- }
-
- /**
- * @see JobQueueAggregator::notifyQueueNonEmpty()
- */
- abstract protected function doNotifyQueueNonEmpty( $wiki, $type );
-
- /**
- * Get the list of all of the queues with jobs
- *
- * @return Array (job type => (list of wiki IDs))
- */
- final public function getAllReadyWikiQueues() {
- wfProfileIn( __METHOD__ );
- $res = $this->doGetAllReadyWikiQueues();
- wfProfileOut( __METHOD__ );
- return $res;
- }
-
- /**
- * @see JobQueueAggregator::getAllReadyWikiQueues()
- */
- abstract protected function doGetAllReadyWikiQueues();
-
- /**
- * Purge all of the aggregator information
- *
- * @return bool Success
- */
- final public function purge() {
- wfProfileIn( __METHOD__ );
- $res = $this->doPurge();
- wfProfileOut( __METHOD__ );
- return $res;
- }
-
- /**
- * @see JobQueueAggregator::purge()
- */
- abstract protected function doPurge();
-
- /**
- * Get all databases that have a pending job.
- * This poll all the queues and is this expensive.
- *
- * @return Array (job type => (list of wiki IDs))
- */
- protected function findPendingWikiQueues() {
- global $wgLocalDatabases;
-
- $pendingDBs = array(); // (job type => (db list))
- foreach ( $wgLocalDatabases as $db ) {
- foreach ( JobQueueGroup::singleton( $db )->getQueuesWithJobs() as $type ) {
- $pendingDBs[$type][] = $db;
- }
- }
-
- return $pendingDBs;
- }
-}
+++ /dev/null
-<?php
-/**
- * Job queue aggregator code that uses BagOStuff.
- *
- * 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
- * @author Aaron Schulz
- */
-
-/**
- * Class to handle tracking information about all queues using BagOStuff
- *
- * @ingroup JobQueue
- * @since 1.21
- */
-class JobQueueAggregatorMemc extends JobQueueAggregator {
- /** @var BagOStuff */
- protected $cache;
-
- protected $cacheTTL; // integer; seconds
-
- /**
- * @params include:
- * - objectCache : Name of an object cache registered in $wgObjectCaches.
- * This defaults to the one specified by $wgMainCacheType.
- * - cacheTTL : Seconds to cache the aggregate data before regenerating.
- * @param array $params
- */
- protected function __construct( array $params ) {
- parent::__construct( $params );
- $this->cache = isset( $params['objectCache'] )
- ? wfGetCache( $params['objectCache'] )
- : wfGetMainCache();
- $this->cacheTTL = isset( $params['cacheTTL'] ) ? $params['cacheTTL'] : 180; // 3 min
- }
-
- /**
- * @see JobQueueAggregator::doNotifyQueueEmpty()
- */
- protected function doNotifyQueueEmpty( $wiki, $type ) {
- $key = $this->getReadyQueueCacheKey();
- // Delist the queue from the "ready queue" list
- if ( $this->cache->add( "$key:lock", 1, 60 ) ) { // lock
- $curInfo = $this->cache->get( $key );
- if ( is_array( $curInfo ) && isset( $curInfo['pendingDBs'][$type] ) ) {
- if ( in_array( $wiki, $curInfo['pendingDBs'][$type] ) ) {
- $curInfo['pendingDBs'][$type] = array_diff(
- $curInfo['pendingDBs'][$type], array( $wiki ) );
- $this->cache->set( $key, $curInfo );
- }
- }
- $this->cache->delete( "$key:lock" ); // unlock
- }
- return true;
- }
-
- /**
- * @see JobQueueAggregator::doNotifyQueueNonEmpty()
- */
- protected function doNotifyQueueNonEmpty( $wiki, $type ) {
- return true; // updated periodically
- }
-
- /**
- * @see JobQueueAggregator::doAllGetReadyWikiQueues()
- */
- protected function doGetAllReadyWikiQueues() {
- $key = $this->getReadyQueueCacheKey();
- // If the cache entry wasn't present, is stale, or in .1% of cases otherwise,
- // regenerate the cache. Use any available stale cache if another process is
- // currently regenerating the pending DB information.
- $pendingDbInfo = $this->cache->get( $key );
- if ( !is_array( $pendingDbInfo )
- || ( time() - $pendingDbInfo['timestamp'] ) > $this->cacheTTL
- || mt_rand( 0, 999 ) == 0
- ) {
- if ( $this->cache->add( "$key:rebuild", 1, 1800 ) ) { // lock
- $pendingDbInfo = array(
- 'pendingDBs' => $this->findPendingWikiQueues(),
- 'timestamp' => time()
- );
- for ( $attempts = 1; $attempts <= 25; ++$attempts ) {
- if ( $this->cache->add( "$key:lock", 1, 60 ) ) { // lock
- $this->cache->set( $key, $pendingDbInfo );
- $this->cache->delete( "$key:lock" ); // unlock
- break;
- }
- }
- $this->cache->delete( "$key:rebuild" ); // unlock
- }
- }
- return is_array( $pendingDbInfo )
- ? $pendingDbInfo['pendingDBs']
- : array(); // cache is both empty and locked
- }
-
- /**
- * @see JobQueueAggregator::doPurge()
- */
- protected function doPurge() {
- return $this->cache->delete( $this->getReadyQueueCacheKey() );
- }
-
- /**
- * @return string
- */
- private function getReadyQueueCacheKey() {
- return "jobqueue:aggregator:ready-queues:v1"; // global
- }
-}
+++ /dev/null
-<?php
-/**
- * Job queue aggregator code that uses PhpRedis.
- *
- * 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
- * @author Aaron Schulz
- */
-
-/**
- * Class to handle tracking information about all queues using PhpRedis
- *
- * @ingroup JobQueue
- * @ingroup Redis
- * @since 1.21
- */
-class JobQueueAggregatorRedis extends JobQueueAggregator {
- /** @var RedisConnectionPool */
- protected $redisPool;
-
- /**
- * @params include:
- * - redisConfig : An array of parameters to RedisConnectionPool::__construct().
- * - redisServer : A hostname/port combination or the absolute path of a UNIX socket.
- * If a hostname is specified but no port, the standard port number
- * 6379 will be used. Required.
- * @param array $params
- */
- protected function __construct( array $params ) {
- parent::__construct( $params );
- $this->server = $params['redisServer'];
- $this->redisPool = RedisConnectionPool::singleton( $params['redisConfig'] );
- }
-
- /**
- * @see JobQueueAggregator::doNotifyQueueEmpty()
- */
- protected function doNotifyQueueEmpty( $wiki, $type ) {
- $conn = $this->getConnection();
- if ( !$conn ) {
- return false;
- }
- try {
- $conn->hDel( $this->getReadyQueueKey(), $this->encQueueName( $type, $wiki ) );
- return true;
- } catch ( RedisException $e ) {
- $this->handleException( $conn, $e );
- return false;
- }
- }
-
- /**
- * @see JobQueueAggregator::doNotifyQueueNonEmpty()
- */
- protected function doNotifyQueueNonEmpty( $wiki, $type ) {
- $conn = $this->getConnection();
- if ( !$conn ) {
- return false;
- }
- try {
- $conn->hSet( $this->getReadyQueueKey(), $this->encQueueName( $type, $wiki ), time() );
- return true;
- } catch ( RedisException $e ) {
- $this->handleException( $conn, $e );
- return false;
- }
- }
-
- /**
- * @see JobQueueAggregator::doAllGetReadyWikiQueues()
- */
- protected function doGetAllReadyWikiQueues() {
- $conn = $this->getConnection();
- if ( !$conn ) {
- return array();
- }
- try {
- $conn->multi( Redis::PIPELINE );
- $conn->exists( $this->getReadyQueueKey() );
- $conn->hGetAll( $this->getReadyQueueKey() );
- list( $exists, $map ) = $conn->exec();
-
- if ( $exists ) { // cache hit
- $pendingDBs = array(); // (type => list of wikis)
- foreach ( $map as $key => $time ) {
- list( $type, $wiki ) = $this->dencQueueName( $key );
- $pendingDBs[$type][] = $wiki;
- }
- } else { // cache miss
- // Avoid duplicated effort
- $conn->multi( Redis::MULTI );
- $conn->setnx( $this->getReadyQueueKey() . ":lock", 1 );
- $conn->expire( $this->getReadyQueueKey() . ":lock", 3600 );
- if ( $conn->exec() !== array( true, true ) ) { // lock
- return array(); // already in progress
- }
-
- $pendingDBs = $this->findPendingWikiQueues(); // (type => list of wikis)
-
- $conn->delete( $this->getReadyQueueKey() . ":lock" ); // unlock
-
- $now = time();
- $map = array();
- foreach ( $pendingDBs as $type => $wikis ) {
- foreach ( $wikis as $wiki ) {
- $map[$this->encQueueName( $type, $wiki )] = $now;
- }
- }
- $conn->hMSet( $this->getReadyQueueKey(), $map );
- }
-
- return $pendingDBs;
- } catch ( RedisException $e ) {
- $this->handleException( $conn, $e );
- return array();
- }
- }
-
- /**
- * @see JobQueueAggregator::doPurge()
- */
- protected function doPurge() {
- $conn = $this->getConnection();
- if ( !$conn ) {
- return false;
- }
- try {
- $conn->delete( $this->getReadyQueueKey() );
- } catch ( RedisException $e ) {
- $this->handleException( $conn, $e );
- return false;
- }
- return true;
- }
-
- /**
- * Get a connection to the server that handles all sub-queues for this queue
- *
- * @return Array (server name, Redis instance)
- * @throws MWException
- */
- protected function getConnection() {
- return $this->redisPool->getConnection( $this->server );
- }
-
- /**
- * @param RedisConnRef $conn
- * @param RedisException $e
- * @return void
- */
- protected function handleException( RedisConnRef $conn, $e ) {
- $this->redisPool->handleException( $this->server, $conn, $e );
- }
-
- /**
- * @return string
- */
- private function getReadyQueueKey() {
- return "jobqueue:aggregator:h-ready-queues:v1"; // global
- }
-
- /**
- * @param string $type
- * @param string $wiki
- * @return string
- */
- private function encQueueName( $type, $wiki ) {
- return rawurlencode( $type ) . '/' . rawurlencode( $wiki );
- }
-
- /**
- * @param string $name
- * @return string
- */
- private function dencQueueName( $name ) {
- list( $type, $wiki ) = explode( '/', $name, 2 );
- return array( rawurldecode( $type ), rawurldecode( $wiki ) );
- }
-}
$method
);
foreach ( $res as $row ) {
- wfDebug( "Job with hash '{$row->job_sha1}' is a duplicate." );
+ wfDebug( "Job with hash '{$row->job_sha1}' is a duplicate.\n" );
unset( $rowSet[$row->job_sha1] ); // already enqueued
}
}
*
* @ingroup JobQueue
* @ingroup Redis
- * @since 1.21
+ * @since 1.22
*/
class JobQueueRedis extends JobQueue {
/** @var RedisConnectionPool */
protected $redisPool;
protected $server; // string; server address
+ protected $compression; // string; compression method to use
const MAX_AGE_PRUNE = 604800; // integer; seconds a job can live once claimed (7 days)
* - redisServer : A hostname/port combination or the absolute path of a UNIX socket.
* If a hostname is specified but no port, the standard port number
* 6379 will be used. Required.
+ * - compression : The type of compression to use; one of (none,gzip).
* @param array $params
*/
public function __construct( array $params ) {
parent::__construct( $params );
$params['redisConfig']['serializer'] = 'none'; // make it easy to use Lua
$this->server = $params['redisServer'];
+ $this->compression = isset( $params['compression'] ) ? $params['compression'] : 'none';
$this->redisPool = RedisConnectionPool::singleton( $params['redisConfig'] );
}
$args[] = (string)$item['uuid'];
$args[] = (string)$item['sha1'];
$args[] = (string)$item['rtimestamp'];
- $args[] = (string)serialize( $item );
+ $args[] = (string)$this->serialize( $item );
}
static $script =
<<<LUA
}
JobQueue::incrStats( 'job-pop', $this->type );
- $item = unserialize( $blob );
+ $item = $this->unserialize( $blob );
if ( $item === false ) {
wfDebugLog( 'JobQueueRedis', "Could not unserialize {$this->type} job." );
continue;
*/
public function getJobFromUidInternal( $uid, RedisConnRef $conn ) {
try {
- $item = unserialize( $conn->hGet( $this->getQueueKey( 'h-data' ), $uid ) );
+ $item = $this->unserialize( $conn->hGet( $this->getQueueKey( 'h-data' ), $uid ) );
if ( !is_array( $item ) ) { // this shouldn't happen
throw new MWException( "Could not find job with ID '$uid'." );
}
return false;
}
+ /**
+ * @param array $fields
+ * @return string Serialized and possibly compressed version of $fields
+ */
+ protected function serialize( array $fields ) {
+ $blob = serialize( $fields );
+ if ( $this->compression === 'gzip'
+ && strlen( $blob ) >= 1024 && function_exists( 'gzdeflate' ) )
+ {
+ $object = (object)array( 'blob' => gzdeflate( $blob ), 'enc' => 'gzip' );
+ $blobz = serialize( $object );
+ return ( strlen( $blobz ) < strlen( $blob ) ) ? $blobz : $blob;
+ } else {
+ return $blob;
+ }
+ }
+
+ /**
+ * @param string $blob
+ * @return array|bool Unserialized version of $blob or false
+ */
+ protected function unserialize( $blob ) {
+ $fields = unserialize( $blob );
+ if ( is_object( $fields ) ) {
+ if ( $fields->enc === 'gzip' && function_exists( 'gzinflate' ) ) {
+ $fields = unserialize( gzinflate( $fields->blob ) );
+ } else {
+ $fields = false;
+ }
+ }
+ return is_array( $fields ) ? $fields : false;
+ }
+
/**
* Get a connection to the server that handles all sub-queues for this queue
*
--- /dev/null
+<?php
+/**
+ * Job queue aggregator code.
+ *
+ * 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
+ * @author Aaron Schulz
+ */
+
+/**
+ * Class to handle tracking information about all queues
+ *
+ * @ingroup JobQueue
+ * @since 1.21
+ */
+abstract class JobQueueAggregator {
+ /** @var JobQueueAggregator */
+ protected static $instance = null;
+
+ /**
+ * @param array $params
+ */
+ protected function __construct( array $params ) {}
+
+ /**
+ * @return JobQueueAggregator
+ */
+ final public static function singleton() {
+ global $wgJobQueueAggregator;
+
+ if ( !isset( self::$instance ) ) {
+ $class = $wgJobQueueAggregator['class'];
+ $obj = new $class( $wgJobQueueAggregator );
+ if ( !( $obj instanceof JobQueueAggregator ) ) {
+ throw new MWException( "Class '$class' is not a JobQueueAggregator class." );
+ }
+ self::$instance = $obj;
+ }
+
+ return self::$instance;
+ }
+
+ /**
+ * Destroy the singleton instance
+ *
+ * @return void
+ */
+ final public static function destroySingleton() {
+ self::$instance = null;
+ }
+
+ /**
+ * Mark a queue as being empty
+ *
+ * @param string $wiki
+ * @param string $type
+ * @return bool Success
+ */
+ final public function notifyQueueEmpty( $wiki, $type ) {
+ wfProfileIn( __METHOD__ );
+ $ok = $this->doNotifyQueueEmpty( $wiki, $type );
+ wfProfileOut( __METHOD__ );
+ return $ok;
+ }
+
+ /**
+ * @see JobQueueAggregator::notifyQueueEmpty()
+ */
+ abstract protected function doNotifyQueueEmpty( $wiki, $type );
+
+ /**
+ * Mark a queue as being non-empty
+ *
+ * @param string $wiki
+ * @param string $type
+ * @return bool Success
+ */
+ final public function notifyQueueNonEmpty( $wiki, $type ) {
+ wfProfileIn( __METHOD__ );
+ $ok = $this->doNotifyQueueNonEmpty( $wiki, $type );
+ wfProfileOut( __METHOD__ );
+ return $ok;
+ }
+
+ /**
+ * @see JobQueueAggregator::notifyQueueNonEmpty()
+ */
+ abstract protected function doNotifyQueueNonEmpty( $wiki, $type );
+
+ /**
+ * Get the list of all of the queues with jobs
+ *
+ * @return Array (job type => (list of wiki IDs))
+ */
+ final public function getAllReadyWikiQueues() {
+ wfProfileIn( __METHOD__ );
+ $res = $this->doGetAllReadyWikiQueues();
+ wfProfileOut( __METHOD__ );
+ return $res;
+ }
+
+ /**
+ * @see JobQueueAggregator::getAllReadyWikiQueues()
+ */
+ abstract protected function doGetAllReadyWikiQueues();
+
+ /**
+ * Purge all of the aggregator information
+ *
+ * @return bool Success
+ */
+ final public function purge() {
+ wfProfileIn( __METHOD__ );
+ $res = $this->doPurge();
+ wfProfileOut( __METHOD__ );
+ return $res;
+ }
+
+ /**
+ * @see JobQueueAggregator::purge()
+ */
+ abstract protected function doPurge();
+
+ /**
+ * Get all databases that have a pending job.
+ * This poll all the queues and is this expensive.
+ *
+ * @return Array (job type => (list of wiki IDs))
+ */
+ protected function findPendingWikiQueues() {
+ global $wgLocalDatabases;
+
+ $pendingDBs = array(); // (job type => (db list))
+ foreach ( $wgLocalDatabases as $db ) {
+ foreach ( JobQueueGroup::singleton( $db )->getQueuesWithJobs() as $type ) {
+ $pendingDBs[$type][] = $db;
+ }
+ }
+
+ return $pendingDBs;
+ }
+}
--- /dev/null
+<?php
+/**
+ * Job queue aggregator code that uses BagOStuff.
+ *
+ * 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
+ * @author Aaron Schulz
+ */
+
+/**
+ * Class to handle tracking information about all queues using BagOStuff
+ *
+ * @ingroup JobQueue
+ * @since 1.21
+ */
+class JobQueueAggregatorMemc extends JobQueueAggregator {
+ /** @var BagOStuff */
+ protected $cache;
+
+ protected $cacheTTL; // integer; seconds
+
+ /**
+ * @params include:
+ * - objectCache : Name of an object cache registered in $wgObjectCaches.
+ * This defaults to the one specified by $wgMainCacheType.
+ * - cacheTTL : Seconds to cache the aggregate data before regenerating.
+ * @param array $params
+ */
+ protected function __construct( array $params ) {
+ parent::__construct( $params );
+ $this->cache = isset( $params['objectCache'] )
+ ? wfGetCache( $params['objectCache'] )
+ : wfGetMainCache();
+ $this->cacheTTL = isset( $params['cacheTTL'] ) ? $params['cacheTTL'] : 180; // 3 min
+ }
+
+ /**
+ * @see JobQueueAggregator::doNotifyQueueEmpty()
+ */
+ protected function doNotifyQueueEmpty( $wiki, $type ) {
+ $key = $this->getReadyQueueCacheKey();
+ // Delist the queue from the "ready queue" list
+ if ( $this->cache->add( "$key:lock", 1, 60 ) ) { // lock
+ $curInfo = $this->cache->get( $key );
+ if ( is_array( $curInfo ) && isset( $curInfo['pendingDBs'][$type] ) ) {
+ if ( in_array( $wiki, $curInfo['pendingDBs'][$type] ) ) {
+ $curInfo['pendingDBs'][$type] = array_diff(
+ $curInfo['pendingDBs'][$type], array( $wiki ) );
+ $this->cache->set( $key, $curInfo );
+ }
+ }
+ $this->cache->delete( "$key:lock" ); // unlock
+ }
+ return true;
+ }
+
+ /**
+ * @see JobQueueAggregator::doNotifyQueueNonEmpty()
+ */
+ protected function doNotifyQueueNonEmpty( $wiki, $type ) {
+ return true; // updated periodically
+ }
+
+ /**
+ * @see JobQueueAggregator::doAllGetReadyWikiQueues()
+ */
+ protected function doGetAllReadyWikiQueues() {
+ $key = $this->getReadyQueueCacheKey();
+ // If the cache entry wasn't present, is stale, or in .1% of cases otherwise,
+ // regenerate the cache. Use any available stale cache if another process is
+ // currently regenerating the pending DB information.
+ $pendingDbInfo = $this->cache->get( $key );
+ if ( !is_array( $pendingDbInfo )
+ || ( time() - $pendingDbInfo['timestamp'] ) > $this->cacheTTL
+ || mt_rand( 0, 999 ) == 0
+ ) {
+ if ( $this->cache->add( "$key:rebuild", 1, 1800 ) ) { // lock
+ $pendingDbInfo = array(
+ 'pendingDBs' => $this->findPendingWikiQueues(),
+ 'timestamp' => time()
+ );
+ for ( $attempts = 1; $attempts <= 25; ++$attempts ) {
+ if ( $this->cache->add( "$key:lock", 1, 60 ) ) { // lock
+ $this->cache->set( $key, $pendingDbInfo );
+ $this->cache->delete( "$key:lock" ); // unlock
+ break;
+ }
+ }
+ $this->cache->delete( "$key:rebuild" ); // unlock
+ }
+ }
+ return is_array( $pendingDbInfo )
+ ? $pendingDbInfo['pendingDBs']
+ : array(); // cache is both empty and locked
+ }
+
+ /**
+ * @see JobQueueAggregator::doPurge()
+ */
+ protected function doPurge() {
+ return $this->cache->delete( $this->getReadyQueueCacheKey() );
+ }
+
+ /**
+ * @return string
+ */
+ private function getReadyQueueCacheKey() {
+ return "jobqueue:aggregator:ready-queues:v1"; // global
+ }
+}
--- /dev/null
+<?php
+/**
+ * Job queue aggregator code that uses PhpRedis.
+ *
+ * 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
+ * @author Aaron Schulz
+ */
+
+/**
+ * Class to handle tracking information about all queues using PhpRedis
+ *
+ * @ingroup JobQueue
+ * @ingroup Redis
+ * @since 1.21
+ */
+class JobQueueAggregatorRedis extends JobQueueAggregator {
+ /** @var RedisConnectionPool */
+ protected $redisPool;
+
+ /**
+ * @params include:
+ * - redisConfig : An array of parameters to RedisConnectionPool::__construct().
+ * - redisServer : A hostname/port combination or the absolute path of a UNIX socket.
+ * If a hostname is specified but no port, the standard port number
+ * 6379 will be used. Required.
+ * @param array $params
+ */
+ protected function __construct( array $params ) {
+ parent::__construct( $params );
+ $this->server = $params['redisServer'];
+ $this->redisPool = RedisConnectionPool::singleton( $params['redisConfig'] );
+ }
+
+ /**
+ * @see JobQueueAggregator::doNotifyQueueEmpty()
+ */
+ protected function doNotifyQueueEmpty( $wiki, $type ) {
+ $conn = $this->getConnection();
+ if ( !$conn ) {
+ return false;
+ }
+ try {
+ $conn->hDel( $this->getReadyQueueKey(), $this->encQueueName( $type, $wiki ) );
+ return true;
+ } catch ( RedisException $e ) {
+ $this->handleException( $conn, $e );
+ return false;
+ }
+ }
+
+ /**
+ * @see JobQueueAggregator::doNotifyQueueNonEmpty()
+ */
+ protected function doNotifyQueueNonEmpty( $wiki, $type ) {
+ $conn = $this->getConnection();
+ if ( !$conn ) {
+ return false;
+ }
+ try {
+ $conn->hSet( $this->getReadyQueueKey(), $this->encQueueName( $type, $wiki ), time() );
+ return true;
+ } catch ( RedisException $e ) {
+ $this->handleException( $conn, $e );
+ return false;
+ }
+ }
+
+ /**
+ * @see JobQueueAggregator::doAllGetReadyWikiQueues()
+ */
+ protected function doGetAllReadyWikiQueues() {
+ $conn = $this->getConnection();
+ if ( !$conn ) {
+ return array();
+ }
+ try {
+ $conn->multi( Redis::PIPELINE );
+ $conn->exists( $this->getReadyQueueKey() );
+ $conn->hGetAll( $this->getReadyQueueKey() );
+ list( $exists, $map ) = $conn->exec();
+
+ if ( $exists ) { // cache hit
+ $pendingDBs = array(); // (type => list of wikis)
+ foreach ( $map as $key => $time ) {
+ list( $type, $wiki ) = $this->dencQueueName( $key );
+ $pendingDBs[$type][] = $wiki;
+ }
+ } else { // cache miss
+ // Avoid duplicated effort
+ $conn->multi( Redis::MULTI );
+ $conn->setnx( $this->getReadyQueueKey() . ":lock", 1 );
+ $conn->expire( $this->getReadyQueueKey() . ":lock", 3600 );
+ if ( $conn->exec() !== array( true, true ) ) { // lock
+ return array(); // already in progress
+ }
+
+ $pendingDBs = $this->findPendingWikiQueues(); // (type => list of wikis)
+
+ $conn->delete( $this->getReadyQueueKey() . ":lock" ); // unlock
+
+ $now = time();
+ $map = array();
+ foreach ( $pendingDBs as $type => $wikis ) {
+ foreach ( $wikis as $wiki ) {
+ $map[$this->encQueueName( $type, $wiki )] = $now;
+ }
+ }
+ $conn->hMSet( $this->getReadyQueueKey(), $map );
+ }
+
+ return $pendingDBs;
+ } catch ( RedisException $e ) {
+ $this->handleException( $conn, $e );
+ return array();
+ }
+ }
+
+ /**
+ * @see JobQueueAggregator::doPurge()
+ */
+ protected function doPurge() {
+ $conn = $this->getConnection();
+ if ( !$conn ) {
+ return false;
+ }
+ try {
+ $conn->delete( $this->getReadyQueueKey() );
+ } catch ( RedisException $e ) {
+ $this->handleException( $conn, $e );
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * Get a connection to the server that handles all sub-queues for this queue
+ *
+ * @return Array (server name, Redis instance)
+ * @throws MWException
+ */
+ protected function getConnection() {
+ return $this->redisPool->getConnection( $this->server );
+ }
+
+ /**
+ * @param RedisConnRef $conn
+ * @param RedisException $e
+ * @return void
+ */
+ protected function handleException( RedisConnRef $conn, $e ) {
+ $this->redisPool->handleException( $this->server, $conn, $e );
+ }
+
+ /**
+ * @return string
+ */
+ private function getReadyQueueKey() {
+ return "jobqueue:aggregator:h-ready-queues:v1"; // global
+ }
+
+ /**
+ * @param string $type
+ * @param string $wiki
+ * @return string
+ */
+ private function encQueueName( $type, $wiki ) {
+ return rawurlencode( $type ) . '/' . rawurlencode( $wiki );
+ }
+
+ /**
+ * @param string $name
+ * @return string
+ */
+ private function dencQueueName( $name ) {
+ list( $type, $wiki ) = explode( '/', $name, 2 );
+ return array( rawurldecode( $type ), rawurldecode( $wiki ) );
+ }
+}
$updates = $content->getSecondaryDataUpdates( $title, null, false, $parserOutput );
DataUpdate::runUpdates( $updates );
+
+ InfoAction::invalidateCache( $title );
+
wfProfileOut( $fname );
}
}
class RefreshLinksJob2 extends Job {
function __construct( $title, $params, $id = 0 ) {
parent::__construct( 'refreshLinks2', $title, $params, $id );
+ // Base jobs for large templates can easily be de-duplicated
+ $this->removeDuplicates = !isset( $params['start'] ) && !isset( $params['end'] );
}
/**
* This encoding option saves 3 to 8 bytes (uncompressed) for each such character;
* however, it could break compatibility with systems that incorrectly handle UTF-8.
*
- * @since 1.21
+ * @since 1.22
*/
const UTF8_OK = 1;
* - HTML5, §4.3.1.2 Restrictions for contents of script elements
* - XML 1.0 (5th Ed.), §2.4 Character Data and Markup
*
- * @since 1.21
+ * @since 1.22
*/
const XMLMETA_OK = 2;
*
* @warning When generating inline script blocks, use FormatJson::UTF8_OK instead.
*
- * @since 1.21
+ * @since 1.22
*/
const ALL_OK = 3;
* @note Empty arrays are encoded as numeric arrays, not as objects, so cast any associative
* array that might be empty to an object before encoding it.
*
- * @note In pre-1.21 versions of MediaWiki, using this function for generating inline script
+ * @note In pre-1.22 versions of MediaWiki, using this function for generating inline script
* blocks may result in an XSS vulnerability, and quite likely will in XML documents
* (cf. FormatJson::XMLMETA_OK). Use Xml::encodeJsVar() instead in such cases.
*
$patterns['rtl_in_url'] = "/{$patterns['lookbehind_not_letter']}(rtl){$patterns['lookahead_for_closing_paren']}/i";
$patterns['cursor_east'] = "/{$patterns['lookbehind_not_letter']}([ns]?)e-resize/";
$patterns['cursor_west'] = "/{$patterns['lookbehind_not_letter']}([ns]?)w-resize/";
- $patterns['four_notation_quantity'] = "/{$patterns['possibly_negative_quantity']}(\s+){$patterns['possibly_negative_quantity']}(\s+){$patterns['possibly_negative_quantity']}(\s+){$patterns['possibly_negative_quantity']}/i";
- $patterns['four_notation_color'] = "/(-color\s*:\s*){$patterns['color']}(\s+){$patterns['color']}(\s+){$patterns['color']}(\s+){$patterns['color']}/i";
+ $patterns['four_notation_quantity'] = "/(:\s*){$patterns['possibly_negative_quantity']}(\s+){$patterns['possibly_negative_quantity']}(\s+){$patterns['possibly_negative_quantity']}(\s+){$patterns['possibly_negative_quantity']}(\s*[;}])/i";
+ $patterns['four_notation_color'] = "/(-color\s*:\s*){$patterns['color']}(\s+){$patterns['color']}(\s+){$patterns['color']}(\s+){$patterns['color']}(\s*[;}])/i";
// The two regexes below are parenthesized differently then in the original implementation to make the
// callback's job more straightforward
$patterns['bg_horizontal_percentage'] = "/(background(?:-position)?\s*:\s*[^%]*?)(-?{$patterns['num']})(%\s*(?:{$patterns['quantity']}|{$patterns['ident']}))/";
* @return string
*/
private static function fixFourPartNotation( $css ) {
- $css = preg_replace( self::$patterns['four_notation_quantity'], '$1$2$7$4$5$6$3', $css );
- $css = preg_replace( self::$patterns['four_notation_color'], '$1$2$3$8$5$6$7$4', $css );
+ $css = preg_replace( self::$patterns['four_notation_quantity'], '$1$2$3$8$5$6$7$4$9', $css );
+ $css = preg_replace( self::$patterns['four_notation_color'], '$1$2$3$8$5$6$7$4$9', $css );
return $css;
}
class HttpStatus {
/**
- * Get the message associed with the HTTP response code $code
+ * Get the message associated with HTTP response code $code
*
* Replace OutputPage::getStatusMessage( $code )
*
* @file
* @author Niklas Laxström
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- * @since 1.21
+ * @since 1.22
*/
/**
* @return String
*/
public static function formatBlockFlags( $flags, $lang ) {
- $flags = explode( ',', trim( $flags ) );
+ $flags = trim( $flags );
+ if ( $flags === '' ) {
+ return ''; //nothing to do
+ }
+ $flags = explode( ',', $flags );
- if ( count( $flags ) > 0 ) {
- for ( $i = 0; $i < count( $flags ); $i++ ) {
- $flags[$i] = self::formatBlockFlag( $flags[$i], $lang );
- }
- return wfMessage( 'parentheses' )->inLanguage( $lang )
- ->rawParams( $lang->commaList( $flags ) )->escaped();
- } else {
- return '';
+ for ( $i = 0; $i < count( $flags ); $i++ ) {
+ $flags[$i] = self::formatBlockFlag( $flags[$i], $lang );
}
+ return wfMessage( 'parentheses' )->inLanguage( $lang )
+ ->rawParams( $lang->commaList( $flags ) )->escaped();
}
/**
* @file
* @author Niklas Laxström
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- * @since 1.21
+ * @since 1.22
*/
/**
* @file
* @author Niklas Laxström
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- * @since 1.21
+ * @since 1.22
*/
/**
* @return bool
*/
public static function record( $rc, $auto = false, User $user = null ) {
+ global $wgLogAutopatrol;
+
+ // do not log autopatrolled edits if setting disables it
+ if ( $auto && !$wgLogAutopatrol ) {
+ return false;
+ }
+
if ( !$rc instanceof RecentChange ) {
$rc = RecentChange::newFromId( $rc );
if ( !is_object( $rc ) ) {
* @file
* @author Niklas Laxström
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- * @since 1.21
+ * @since 1.22
*/
/**
* @file
* @author Alexandre Emsenhuber
* @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- * @since 1.21
+ * @since 1.22
*/
/**
return $vals[0];
}
elseif ( count( $vals ) === 0 ) {
- wfDebug( __METHOD__ . ' metadata array with 0 elements!' );
+ wfDebug( __METHOD__ . " metadata array with 0 elements!\n" );
return ""; // paranoia. This should never happen
}
/* @todo FIXME: This should hide some of the list entries if there are
wfRestoreWarnings();
if ( !$data || !is_array( $data ) ) {
- wfDebug( __METHOD__ . ' invalid GIF metadata' );
+ wfDebug( __METHOD__ . " invalid GIF metadata\n" );
return self::METADATA_BAD;
}
if ( !isset( $data['metadata']['_MW_GIF_VERSION'] )
|| $data['metadata']['_MW_GIF_VERSION'] != GIFMetadataExtractor::VERSION ) {
- wfDebug( __METHOD__ . ' old but compatible GIF metadata' );
+ wfDebug( __METHOD__ . " old but compatible GIF metadata\n" );
return self::METADATA_COMPATIBLE;
}
return self::METADATA_GOOD;
$data = fread( $fh, $blockLength );
if ( $blockLength != 11 ) {
- wfDebug( __METHOD__ . ' GIF application block with wrong length' );
+ wfDebug( __METHOD__ . " GIF application block with wrong length\n" );
fseek( $fh, -( $blockLength + 1 ), SEEK_CUR );
self::skipBlock( $fh );
continue;
if ( $com === $oldCom ) {
$segments["COM"][] = $oldCom;
} else {
- wfDebug( __METHOD__ . ' Ignoring JPEG comment as is garbage.' );
+ wfDebug( __METHOD__ . " Ignoring JPEG comment as is garbage.\n" );
}
} elseif ( $buffer === "\xE1" ) {
} elseif ( $byteOrderMarker === 'II' ) {
$segments['byteOrder'] = 'LE';
} else {
- wfDebug( __METHOD__ . ' Invalid byte ordering?!' );
+ wfDebug( __METHOD__ . " Invalid byte ordering?!\n" );
}
}
} elseif ( $buffer === "\xED" ) {
/**
* Merge a parameter array into a string appropriate for inclusion in filenames
*
- * @param $params array
+ * @param $params array Array of parameters that have been through normaliseParams.
*/
abstract function makeParamString( $params );
* @param string $dstPath filesystem destination path
* @param string $dstUrl destination URL to use in output HTML
* @param array $params arbitrary set of parameters validated by $this->validateParam()
+ * Note: These parameters have *not* gone through $this->normaliseParams()
* @param $flags Integer: a bitfield, may contain self::TRANSFORM_LATER
*
* @return MediaTransformOutput
/**
* Get the thumbnail extension and MIME type for a given source MIME type
+ *
+ * @param String $ext Extension of original file
+ * @param String $mime Mime type of original file
+ * @param Array $params Handler specific rendering parameters
* @return array thumbnail extension and MIME type
*/
function getThumbType( $ext, $mime, $params = null ) {
* Get an associative array of page dimensions
* Currently "width" and "height" are understood, but this might be
* expanded in the future.
- * Returns false if unknown or if the document is not multi-page.
+ * Returns false if unknown.
+ *
+ * It is expected that handlers for paged media (e.g. DjVuHandler)
+ * will override this method so that it gives the correct results
+ * for each specific page of the file, using the $page argument.
+ *
+ * @note For non-paged media, use getImageSize.
*
* @param $image File
- * @param $page Unused, left for backcompatibility?
- * @return array
+ * @param $page What page to get dimensions of
+ * @return array|bool
*/
function getPageDimensions( $image, $page ) {
$gis = $this->getImageSize( $image, $image->getLocalRefPath() );
- return array(
- 'width' => $gis[0],
- 'height' => $gis[1]
- );
+ if ( $gis ) {
+ return array(
+ 'width' => $gis[0],
+ 'height' => $gis[1]
+ );
+ } else {
+ return false;
+ }
}
/**
}
/**
+ * Used instead of getLongDesc if there is no handler registered for file.
+ *
* @param $file File
* @return string
*/
}
/**
+ * Short description. Shown on Special:Search results.
+ *
* @param $file File
* @return string
*/
}
/**
+ * Long description. Shown under image on image description page surounded by ().
+ *
* @param $file File
* @return string
*/
}
/**
+ * Used instead of getShortDesc if there is no handler registered for file.
+ *
* @param $file File
* @return string
*/
}
}
+ /**
+ * Shown in file history box on image description page.
+ *
+ * @param File $file
+ * @return String Dimensions
+ */
function getDimensionsString( $file ) {
return '';
}
/**
- * Modify the parser object post-transform
+ * Modify the parser object post-transform.
+ *
+ * This is often used to do $parser->addOutputHook(),
+ * in order to add some javascript to render a viewer.
+ * See TimedMediaHandler or OggHandler for an example.
+ *
+ * @param Parser $parser
+ * @param File $file
*/
function parserTransformHook( $parser, $file ) {}
}
/**
- * Remove files from the purge list
+ * Remove files from the purge list.
+ *
+ * This is used by some video handlers to prevent ?action=purge
+ * from removing a transcoded video, which is expensive to
+ * regenerate.
+ *
+ * @see LocalFile::purgeThumbnails
*
* @param array $files
- * @param array $options
+ * @param array $options Purge options. Currently will always be
+ * an array with a single key 'forThumbRefresh' set to true.
*/
public function filterThumbnailPurgeList( &$files, $options ) {
// Do nothing
*/
var $file;
- var $width, $height, $url, $page, $path;
+ var $width, $height, $url, $page, $path, $lang;
/**
* @var array Associative array mapping optional supplementary image files
/**
* @param $title string
- * @param $params array
+ * @param $params string|array Query parameters to add
* @return array
*/
- public function getDescLinkAttribs( $title = null, $params = '' ) {
- $query = '';
+ public function getDescLinkAttribs( $title = null, $params = array() ) {
+ if ( is_array( $params ) ) {
+ $query = $params;
+ } else {
+ $query = array();
+ }
if ( $this->page && $this->page !== 1 ) {
- $query = 'page=' . urlencode( $this->page );
+ $query['page'] = $this->page;
}
- if ( $params ) {
- $query .= $query ? '&' . $params : $params;
+ if( $this->lang ) {
+ $query['lang'] = $this->lang;
}
+
+ if ( is_string( $params ) && $params !== '' ) {
+ $query = $params . '&' . wfArrayToCgi( $query );
+ }
+
$attribs = array(
'href' => $this->file->getTitle()->getLocalURL( $query ),
'class' => 'image',
# Previous parameters:
# $file, $url, $width, $height, $path = false, $page = false
+ $defaults = array(
+ 'page' => false,
+ 'lang' => false
+ );
+
if ( is_array( $parameters ) ) {
- $defaults = array(
- 'page' => false
- );
$actualParams = $parameters + $defaults;
} else {
# Using old format, should convert. Later a warning could be added here.
'width' => $path,
'height' => $parameters,
'page' => ( $numArgs > 5 ) ? func_get_arg( 5 ) : false
- );
+ ) + $defaults;
$path = ( $numArgs > 4 ) ? func_get_arg( 4 ) : false;
}
$this->height = round( $actualParams['height'] );
$this->page = $actualParams['page'];
+ $this->lang = $actualParams['lang'];
}
/**
wfRestoreWarnings();
if ( !$data || !is_array( $data ) ) {
- wfDebug( __METHOD__ . ' invalid png metadata' );
+ wfDebug( __METHOD__ . " invalid png metadata\n" );
return self::METADATA_BAD;
}
if ( !isset( $data['metadata']['_MW_PNG_VERSION'] )
|| $data['metadata']['_MW_PNG_VERSION'] != PNGMetadataExtractor::VERSION ) {
- wfDebug( __METHOD__ . ' old but compatible png metadata' );
+ wfDebug( __METHOD__ . " old but compatible png metadata\n" );
return self::METADATA_COMPATIBLE;
}
return self::METADATA_GOOD;
if ( $items[5] === false ) {
// decompression failed
- wfDebug( __METHOD__ . ' Error decompressing iTxt chunk - ' . $items[1] );
+ wfDebug( __METHOD__ . ' Error decompressing iTxt chunk - ' . $items[1] . "\n");
fseek( $fh, self::$CRC_size, SEEK_CUR );
continue;
}
} else {
wfDebug( __METHOD__ . ' Skipping compressed png iTXt chunk due to lack of zlib,'
- . ' or potentially invalid compression method' );
+ . " or potentially invalid compression method\n" );
fseek( $fh, self::$CRC_size, SEEK_CUR );
continue;
}
$compression = substr( $postKeyword, 0, 1 );
$content = substr( $postKeyword, 1 );
if ( $compression !== "\x00" ) {
- wfDebug( __METHOD__ . " Unrecognized compression method in zTXt ($keyword). Skipping." );
+ wfDebug( __METHOD__ . " Unrecognized compression method in zTXt ($keyword). Skipping.\n" );
fseek( $fh, self::$CRC_size, SEEK_CUR );
continue;
}
if ( $content === false ) {
// decompression failed
- wfDebug( __METHOD__ . ' Error decompressing zTXt chunk - ' . $keyword );
+ wfDebug( __METHOD__ . ' Error decompressing zTXt chunk - ' . $keyword . "\n");
fseek( $fh, self::$CRC_size, SEEK_CUR );
continue;
}
$text[$finalKeyword]['_type'] = 'lang';
} else {
- wfDebug( __METHOD__ . " Cannot decompress zTXt chunk due to lack of zlib. Skipping." );
+ wfDebug( __METHOD__ . " Cannot decompress zTXt chunk due to lack of zlib. Skipping.\n" );
fseek( $fh, $chunk_size, SEEK_CUR );
}
} elseif ( $chunk_type == 'tIME' ) {
$clientHeight = $params['height'];
$physicalWidth = $params['physicalWidth'];
$physicalHeight = $params['physicalHeight'];
+ $lang = isset( $params['lang'] ) ? $params['lang'] : 'en';
if ( $flags & self::TRANSFORM_LATER ) {
return new ThumbnailImage( $image, $dstUrl, $dstPath, $params );
}
$srcPath = $image->getLocalRefPath();
- $status = $this->rasterize( $srcPath, $dstPath, $physicalWidth, $physicalHeight );
+ $status = $this->rasterize( $srcPath, $dstPath, $physicalWidth, $physicalHeight, $lang );
if ( $status === true ) {
return new ThumbnailImage( $image, $dstUrl, $dstPath, $params );
} else {
* @param string $dstPath
* @param string $width
* @param string $height
+ * @param string $lang Language code of the language to render the SVG in
* @throws MWException
* @return bool|MediaTransformError
*/
- public function rasterize( $srcPath, $dstPath, $width, $height ) {
+ public function rasterize( $srcPath, $dstPath, $width, $height, $lang = false ) {
global $wgSVGConverters, $wgSVGConverter, $wgSVGConverterPath;
$err = false;
$retval = '';
if ( is_array( $wgSVGConverters[$wgSVGConverter] ) ) {
// This is a PHP callable
$func = $wgSVGConverters[$wgSVGConverter][0];
- $args = array_merge( array( $srcPath, $dstPath, $width, $height ),
+ $args = array_merge( array( $srcPath, $dstPath, $width, $height, $lang ),
array_slice( $wgSVGConverters[$wgSVGConverter], 1 ) );
if ( !is_callable( $func ) ) {
throw new MWException( "$func is not callable" );
wfEscapeShellArg( $dstPath ) ),
$wgSVGConverters[$wgSVGConverter]
) . " 2>&1";
+
+ $env = array();
+ if( $lang !== false ) {
+ $env['LANG'] = $lang;
+ }
+
wfProfileIn( 'rsvg' );
wfDebug( __METHOD__ . ": $cmd\n" );
- $err = wfShellExec( $cmd, $retval );
+ $err = wfShellExec( $cmd, $retval, $env );
wfProfileOut( 'rsvg' );
}
}
}
return $result;
}
+
+
+ /**
+ * @param string $name Parameter name
+ * @param $string $value Parameter value
+ * @return bool Validity
+ */
+ function validateParam( $name, $value ) {
+ if ( in_array( $name, array( 'width', 'height' ) ) ) {
+ // Reject negative heights, widths
+ return ( $value > 0 );
+ } elseif( $name == 'lang' ) {
+ // Validate $code
+ if( !Language::isValidBuiltinCode( $value ) ) {
+ wfDebug( "Invalid user language code\n" );
+ return false;
+ }
+ return true;
+ }
+ // Only lang, width and height are acceptable keys
+ return false;
+ }
+
+ /**
+ * @param array $params name=>value pairs of parameters
+ * @return string Filename to use
+ */
+ function makeParamString( $params ) {
+ $lang = '';
+ if( isset( $params['lang'] ) && $params['lang'] !== 'en' ) {
+ $params['lang'] = mb_strtolower( $params['lang'] );
+ $lang = "lang{$params['lang']}-";
+ }
+ if ( !isset( $params['width'] ) ) {
+ return false;
+ }
+ return "$lang{$params['width']}px";
+ }
+
+ function parseParamString( $str ) {
+ $m = false;
+ if ( preg_match( '/^lang([a-z]+(?:-[a-z]+)*)-(\d+)px$/', $str, $m ) ) {
+ return array( 'width' => array_pop( $m ), 'lang' => $m[1] );
+ } elseif( preg_match( '/^(\d+)px$/', $str, $m ) ) {
+ return array( 'width' => $m[1], 'lang' => 'en' );
+ } else {
+ return false;
+ }
+ }
+
+ function getParamMap() {
+ return array( 'img_lang' => 'lang', 'img_width' => 'width' );
+ }
+
+ /**
+ * @param $params
+ * @return array
+ */
+ function getScriptParams( $params ) {
+ return array(
+ 'width' => $params['width'],
+ 'lang' => $params['lang'],
+ );
+ }
}
There's an experimental PHP extension module which wraps the ICU library's
normalization functions. This is *MUCH* faster than doing this work in pure
-PHP code. This is in the 'normal' directory in MediaWiki's CVS extensions
-module. It is known to work with PHP 4.3.8 and 5.0.2 on Linux/x86 but hasn't
-been thoroughly tested on other configurations.
+PHP code. This is at https://git.wikimedia.org/summary/mediawiki%2Fextensions%2Fnormal.git.
+It is used by the WMF, which currently runs PHP 5.3.10 on Linux. It hasn't been
+thoroughly tested on other configurations, but may work.
If the php_normal.so module is loaded in php.ini, the normalization functions
will automatically use it. If you can't (or don't want to) load it in php.ini,
-you may be able to load it using the dl() function before include()ing or
-require()ing UtfNormal.php, and it will be picked up.
+you may be able to load it using the dl() function before the inclusion of
+UtfNormal.php, and it will be picked up.
* - compress_threshold: The minimum size an object must be before it is compressed
* - timeout: The read timeout in microseconds
* - connect_timeout: The connect timeout in seconds
+ * - retry_timeout: Time in seconds to wait before retrying a failed connect attempt
+ * - server_failure_limit: Limit for server connect failures before it is removed
* - serializer: May be either "php" or "igbinary". Igbinary produces more compact
* values, but serialization is much slower unless the php.ini option
* igbinary.compact_strings is off.
$params['serializer'] = 'php';
}
+ if ( isset( $params['retry_timeout'] ) ) {
+ $this->client->setOption( Memcached::OPT_RETRY_TIMEOUT, $params['retry_timeout'] );
+ }
+
+ if ( isset ( $params['server_failure_limit'] ) ) {
+ $this->client->setOption( Memcached::OPT_SERVER_FAILURE_LIMIT, $params['server_failure_limit'] );
+ }
+
// The compression threshold is an undocumented php.ini option for some
// reason. There's probably not much harm in setting it globally, for
// compatibility with the settings for the PHP client.
*
* @param $id string
*
- * @return ObjectCache
+ * @return BagOStuff
*/
static function getInstance( $id ) {
if ( isset( self::$instances[$id] ) ) {
* @param $id string
*
* @throws MWException
- * @return ObjectCache
+ * @return BagOStuff
*/
static function newFromId( $id ) {
global $wgObjectCaches;
* @param $params array
*
* @throws MWException
- * @return ObjectCache
+ * @return BagOStuff
*/
static function newFromParams( $params ) {
if ( isset( $params['factory'] ) ) {
* If no cache choice is configured (by default $wgMainCacheType is CACHE_NONE),
* then CACHE_ANYTHING will forward to CACHE_DB.
* @param $params array
- * @return ObjectCache
+ * @return BagOStuff
*/
static function newAnything( $params ) {
global $wgMainCacheType, $wgMessageCacheType, $wgParserCacheType;
*
* @param $params array
* @throws MWException
- * @return ObjectCache
+ * @return BagOStuff
*/
static function newAccelerator( $params ) {
if ( function_exists( 'apc_fetch' ) ) {
static function displaytitle( $parser, $text = '' ) {
global $wgRestrictDisplayTitle;
- #parse a limited subset of wiki markup (just the single quote items)
+ // parse a limited subset of wiki markup (just the single quote items)
$text = $parser->doQuotes( $text );
- #remove stripped text (e.g. the UNIQ-QINU stuff) that was generated by tag extensions/whatever
+ // remove stripped text (e.g. the UNIQ-QINU stuff) that was generated by tag extensions/whatever
$text = preg_replace( '/' . preg_quote( $parser->uniqPrefix(), '/' ) . '.*?'
. preg_quote( Parser::MARKER_SUFFIX, '/' ) . '/', '', $text );
- #list of disallowed tags for DISPLAYTITLE
- #these will be escaped even though they are allowed in normal wiki text
+ // list of disallowed tags for DISPLAYTITLE
+ // these will be escaped even though they are allowed in normal wiki text
$bad = array( 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'div', 'blockquote', 'ol', 'ul', 'li', 'hr',
'table', 'tr', 'th', 'td', 'dl', 'dd', 'caption', 'p', 'ruby', 'rb', 'rt', 'rp', 'br' );
- #only requested titles that normalize to the actual title are allowed through
- #if $wgRestrictDisplayTitle is true (it is by default)
- #mimic the escaping process that occurs in OutputPage::setPageTitle
- $text = Sanitizer::normalizeCharReferences( Sanitizer::removeHTMLtags( $text, null, array(), array(), $bad ) );
+ // disallow some styles that could be used to bypass $wgRestrictDisplayTitle
+ if ( $wgRestrictDisplayTitle ) {
+ $htmlTagsCallback = function ( &$params ) {
+ $decoded = Sanitizer::decodeTagAttributes( $params );
+
+ if ( isset( $decoded['style'] ) ) {
+ // this is called later anyway, but we need it right now for the regexes below to be safe
+ // calling it twice doesn't hurt
+ $decoded['style'] = Sanitizer::checkCss( $decoded['style'] );
+
+ if ( preg_match( '/(display|user-select|visibility)\s*:/i', $decoded['style'] ) ) {
+ $decoded['style'] = '/* attempt to bypass $wgRestrictDisplayTitle */';
+ }
+ }
+
+ $params = Sanitizer::safeEncodeTagAttributes( $decoded );
+ };
+ } else {
+ $htmlTagsCallback = null;
+ }
+
+ // only requested titles that normalize to the actual title are allowed through
+ // if $wgRestrictDisplayTitle is true (it is by default)
+ // mimic the escaping process that occurs in OutputPage::setPageTitle
+ $text = Sanitizer::normalizeCharReferences( Sanitizer::removeHTMLtags( $text, $htmlTagsCallback, array(), array(), $bad ) );
$title = Title::newFromText( Sanitizer::stripAllTags( $text ) );
if ( !$wgRestrictDisplayTitle ) {
return self::formatRaw( SiteStats::edits(), $raw );
}
static function numberofviews( $parser, $raw = null ) {
- return self::formatRaw( SiteStats::views(), $raw );
+ global $wgDisableCounters;
+ return !$wgDisableCounters ? self::formatRaw( SiteStats::views(), $raw ) : '';
}
static function pagesinnamespace( $parser, $namespace = 0, $raw = null ) {
return self::formatRaw( SiteStats::pagesInNs( intval( $namespace ) ), $raw );
$title = SpecialPage::getTitleFor( $page, $subpage );
return $title->getPrefixedText();
} else {
- return wfMessage( 'nosuchspecialpage' )->inContentLanguage()->text();
+ // unknown special page, just use the given text as its title, if at all possible
+ $title = Title::makeTitleSafe( NS_SPECIAL, $text );
+ return $title ? $title->getPrefixedText() : self::special( $parser, 'Badtitle' );
}
}
if ( !$found && $title ) {
if ( !Profiler::instance()->isPersistent() ) {
# Too many unique items can kill profiling DBs/collectors
- $titleProfileIn = __METHOD__ . "-title-" . $title->getDBkey();
+ $titleProfileIn = __METHOD__ . "-title-" . $title->getPrefixedDBkey();
wfProfileIn( $titleProfileIn ); // template in
}
wfProfileIn( __METHOD__ . '-loadtpl' );
function getText() {
if ( $this->mEditSectionTokens ) {
- $text = $this->mText;
-
- // If there's old output with misplaced editsections links cached, mangle it to put them in
- // the right position. We can assume that there is no '</hN>' inside header tags, making this
- // possible to do with a regex.
- $text = preg_replace(
- // [ this part is like EDITSECTION_REGEX, but with non-capturing groups ]
- // note the space here ------v
- '#(<[hH](\d)>)(<(?:mw:)?editsection page="(?:.*?)" section="(?:.*?)"(?:/>|>(?:.*?)(?:</(?:mw:)?editsection>))) ([\s\S]*?)(</[hH]\2>)#',
- // swap the order of content and editsection link - $2 is ignored since it's the number in hN's tag name
- '$1$4 $3$5',
- $text
- );
-
return preg_replace_callback( ParserOutput::EDITSECTION_REGEX,
- array( &$this, 'replaceEditSectionLinksCallback' ), $text );
+ array( &$this, 'replaceEditSectionLinksCallback' ), $this->mText );
}
return preg_replace( ParserOutput::EDITSECTION_REGEX, '', $this->mText );
}
* @param string $functionname name of the function we will profile
*/
function wfProfileIn( $functionname ) {
- global $wgProfiler;
- if ( $wgProfiler instanceof Profiler || isset( $wgProfiler['class'] ) ) {
+ if ( Profiler::$__instance === null ) { // use this directly to reduce overhead
+ Profiler::instance();
+ }
+ if ( Profiler::$__instance && !( Profiler::$__instance instanceof ProfilerStub ) ) {
Profiler::instance()->profileIn( $functionname );
}
}
* @param string $functionname name of the function we have profiled
*/
function wfProfileOut( $functionname = 'missing' ) {
- global $wgProfiler;
- if ( $wgProfiler instanceof Profiler || isset( $wgProfiler['class'] ) ) {
+ if ( Profiler::$__instance === null ) { // use this directly to reduce overhead
+ Profiler::instance();
+ }
+ if ( Profiler::$__instance && !( Profiler::$__instance instanceof ProfilerStub ) ) {
Profiler::instance()->profileOut( $functionname );
}
}
* @return Profiler
*/
public static function instance() {
- if ( is_null( self::$__instance ) ) {
+ if ( self::$__instance === null ) {
global $wgProfiler;
if ( is_array( $wgProfiler ) ) {
if ( !isset( $wgProfiler['class'] ) ) {
- wfDebug( __METHOD__ . " called without \$wgProfiler['class']"
- . " set, falling back to ProfilerStub for safety\n" );
$class = 'ProfilerStub';
} else {
$class = $wgProfiler['class'];
} elseif ( $wgProfiler instanceof Profiler ) {
self::$__instance = $wgProfiler; // back-compat
} else {
- wfDebug( __METHOD__ . ' called with bogus $wgProfiler setting,'
- . " falling back to ProfilerStub for safety\n" );
self::$__instance = new ProfilerStub( $wgProfiler );
}
}
// Save filtered text to Memcached
$cache->set( $key, $result );
} catch ( Exception $exception ) {
+ wfDebugLog( 'resourceloader', __METHOD__ . ": minification failed: $e" );
+ $this->hasErrors = true;
// Return exception as a comment
$result = $this->makeComment( $exception->__toString() );
- $this->hasErrors = true;
}
wfProfileOut( __METHOD__ );
$this->addSource( $wgResourceLoaderSources );
// Register core modules
- $this->register( include( "$IP/resources/Resources.php" ) );
+ $this->register( include "$IP/resources/Resources.php" );
// Register extension modules
wfRunHooks( 'ResourceLoaderRegisterModules', array( &$this ) );
$this->register( $wgResourceModules );
// Do not allow private modules to be loaded from the web.
// This is a security issue, see bug 34907.
if ( $module->getGroup() === 'private' ) {
- $errors .= $this->makeComment( "Cannot show private module \"$name\"" );
+ wfDebugLog( 'resourceloader', __METHOD__ . ": request for private module denied: $e" );
$this->hasErrors = true;
+ // Add exception to the output as a comment
+ $errors .= $this->makeComment( "Cannot show private module \"$name\"" );
+
continue;
}
$modules[$name] = $module;
try {
$this->preloadModuleInfo( array_keys( $modules ), $context );
} catch ( Exception $e ) {
+ wfDebugLog( 'resourceloader', __METHOD__ . ": preloading module info failed: $e" );
+ $this->hasErrors = true;
// Add exception to the output as a comment
$errors .= $this->makeComment( $e->__toString() );
- $this->hasErrors = true;
}
wfProfileIn( __METHOD__ . '-getModifiedTime' );
// Calculate maximum modified time
$mtime = max( $mtime, $module->getModifiedTime( $context ) );
} catch ( Exception $e ) {
+ wfDebugLog( 'resourceloader', __METHOD__ . ": calculating maximum modified time failed: $e" );
+ $this->hasErrors = true;
// Add exception to the output as a comment
$errors .= $this->makeComment( $e->__toString() );
- $this->hasErrors = true;
}
}
}
if ( $context->getOnly() === 'styles' ) {
header( 'Content-Type: text/css; charset=utf-8' );
+ header( 'Access-Control-Allow-Origin: *' );
} else {
header( 'Content-Type: text/javascript; charset=utf-8' );
}
try {
$blobs = MessageBlobStore::get( $this, $modules, $context->getLanguage() );
} catch ( Exception $e ) {
+ wfDebugLog( 'resourceloader', __METHOD__ . ": pre-fetching blobs from MessageBlobStore failed: $e" );
+ $this->hasErrors = true;
// Add exception to the output as a comment
$exceptions .= $this->makeComment( $e->__toString() );
- $this->hasErrors = true;
}
} else {
$blobs = array();
break;
}
} catch ( Exception $e ) {
+ wfDebugLog( 'resourceloader', __METHOD__ . ": generating module package failed: $e" );
+ $this->hasErrors = true;
// Add exception to the output as a comment
$exceptions .= $this->makeComment( $e->__toString() );
- $this->hasErrors = true;
// Register module as missing
$missing[] = $name;
$pos = strrpos( $group, '.' );
if ( $pos === false ) {
// Prefixless modules, i.e. without dots
- $retval = explode( ',', $group );
+ $retval = array_merge( $retval, explode( ',', $group ) );
} else {
// We have a prefix and a bunch of suffixes
$prefix = substr( $group, 0, $pos ); // 'foo'
);
}
} catch ( Exception $e ) {
- wfDebug( __METHOD__ . " failed to update DB: $e\n" );
+ wfDebugLog( 'resourceloader', __METHOD__ . ": failed to update DB: $e" );
}
return $styles;
}
* @return Array: List of pages
*/
protected function getPages( ResourceLoaderContext $context ) {
- global $wgUseSiteJs, $wgUseSiteCss, $wgHandheldStyle;
+ global $wgUseSiteJs, $wgUseSiteCss;
$pages = array();
if ( $wgUseSiteJs ) {
}
$pages['MediaWiki:Print.css'] = array( 'type' => 'style', 'media' => 'print' );
- if ( $wgHandheldStyle ) {
- $pages['MediaWiki:Handheld.css'] = array(
- 'type' => 'style',
- 'media' => 'handheld' );
- }
return $pages;
}
$rules[] = "#toc { display: none; }\n";
}
if ( !$options['editsection'] ) {
- $rules[] = ".mw-editsection, .editsection { display: none; }\n";
+ $rules[] = ".mw-editsection { display: none; }\n";
}
if ( $options['editfont'] !== 'default' ) {
// Double-check that $options['editfont'] consists of safe characters only
$content = $revision->getContent( Revision::RAW );
if ( !$content ) {
- wfDebug( __METHOD__ . "failed to load content of JS/CSS page!\n" );
+ wfDebugLog( 'resourceloader', __METHOD__ . ': failed to load content of JS/CSS page!' );
return null;
}
$model = $content->getModel();
if ( $model !== CONTENT_MODEL_CSS && $model !== CONTENT_MODEL_JAVASCRIPT ) {
- wfDebug( __METHOD__ . "bad content model $model for JS/CSS page!\n" );
+ wfDebugLog( 'resourceloader', __METHOD__ . ': bad content model $model for JS/CSS page!' );
return null;
}
// no-op
}
+ /**
+ * Delete an indexed page
+ * Title should be pre-processed.
+ * STUB
+ *
+ * @param Integer $id Page id that was deleted
+ * @param String $title Title of page that was deleted
+ */
+ function delete( $id, $title ) {
+ // no-op
+ }
+
/**
* Get OpenSearch suggestion template
*
return $wgCanonicalServer . wfScript( 'api' ) . '?action=opensearch&search={searchTerms}&namespace=' . $ns;
}
}
+
+ /**
+ * Get the raw text for updating the index from a content object
+ * Nicer search backends could possibly do something cooler than
+ * just returning raw text
+ *
+ * @todo This isn't ideal, we'd really like to have content-specific handling here
+ * @param Title $t Title we're indexing
+ * @param Content $c Content of the page to index
+ * @return string
+ */
+ public function getTextFromContent( Title $t, Content $c = null ) {
+ return $c ? $c->getTextForSearchIndex() : '';
+ }
}
/**
protected function initText() {
if ( !isset( $this->mText ) ) {
if ( $this->mRevision != null ) {
- //TODO: if we could plug in some code that knows about special content models *and* about
- // special features of the search engine, the search could benefit.
- $content = $this->mRevision->getContent();
- $this->mText = $content ? $content->getTextForSearchIndex() : '';
+ $this->mText = SearchEngine::create()
+ ->getTextFromContent( $this->mTitle, $this->mRevision->getContent() );
} else { // TODO: can we fetch raw wikitext for commons images?
$this->mText = '';
}
array( $dbw->lowPriorityOption() ) );
}
+ /**
+ * Delete an indexed page
+ * Title should be pre-processed.
+ *
+ * @param Integer $id Page id that was deleted
+ * @param String $title Title of page that was deleted
+ */
+ function delete( $id, $title ) {
+ $dbw = wfGetDB( DB_MASTER );
+
+ $dbw->delete( 'searchindex', array( 'si_page' => $id ), __METHOD__ );
+ }
+
/**
* Converts some characters for MySQL's indexing to grok it correctly,
* and pads short words to overcome limitations.
* @ingroup Search
*/
class SearchUpdate implements DeferrableUpdate {
-
- private $mId = 0, $mNamespace, $mTitle, $mText;
- private $mTitleWords;
-
- function __construct( $id, $title, $text = false ) {
+ /**
+ * Page id being updated
+ * @var int
+ */
+ private $id = 0;
+
+ /**
+ * Title we're updating
+ * @var Title
+ */
+ private $title;
+
+ /**
+ * Content of the page (not text)
+ * @var Content|false
+ */
+ private $content;
+
+ /**
+ * Constructor
+ *
+ * @param int $id Page id to update
+ * @param Title|string $title Title of page to update
+ * @param Content|string|false $c Content of the page to update.
+ * If a Content object, text will be gotten from it. String is for back-compat.
+ * Passing false tells the backend to just update the title, not the content
+ */
+ public function __construct( $id, $title, $c = false ) {
if ( is_string( $title ) ) {
$nt = Title::newFromText( $title );
} else {
}
if ( $nt ) {
- $this->mId = $id;
- $this->mText = $text;
-
- $this->mNamespace = $nt->getNamespace();
- $this->mTitle = $nt->getText(); # Discard namespace
-
- $this->mTitleWords = $this->mTextWords = array();
+ $this->id = $id;
+ // is_string() check is back-compat for ApprovedRevs
+ if( is_string( $c ) ) {
+ $this->content = new TextContent( $c );
+ } else {
+ $this->content = $c ?: false;
+ }
+ $this->title = $nt;
} else {
wfDebug( "SearchUpdate object created with invalid title '$title'\n" );
}
}
- function doUpdate() {
- global $wgContLang, $wgDisableSearchUpdate;
+ /**
+ * Perform actual update for the entry
+ */
+ public function doUpdate() {
+ global $wgDisableSearchUpdate;
- if ( $wgDisableSearchUpdate || !$this->mId ) {
+ if ( $wgDisableSearchUpdate || !$this->id ) {
return;
}
wfProfileIn( __METHOD__ );
$search = SearchEngine::create();
- $lc = SearchEngine::legalSearchChars() . '&#;';
+ $normalTitle = $search->normalizeText(
+ Title::indexTitle( $this->title->getNamespace(), $this->title->getText() ) );
- if ( $this->mText === false ) {
- $search->updateTitle( $this->mId,
- $search->normalizeText( Title::indexTitle( $this->mNamespace, $this->mTitle ) ) );
+ if ( WikiPage::newFromId( $this->id ) === null ) {
+ $search->delete( $this->id, $normalTitle );
+ wfProfileOut( __METHOD__ );
+ return;
+ } elseif ( $this->content === false ) {
+ $search->updateTitle( $this->id, $normalTitle );
wfProfileOut( __METHOD__ );
return;
}
+ $text = $search->getTextFromContent( $this->title, $this->content );
+ if( wfRunHooks( 'SearchUpdate', array( $this->id, $this->title, &$text, $this->content ) ) ) {
+ $text = self::updateText( $text );
+ }
+
+ # Perform the actual update
+ $search->update( $this->id, $normalTitle, $search->normalizeText( $text ) );
+
+ wfProfileOut( __METHOD__ );
+ }
+
+ /**
+ * Clean text for indexing. Only really suitable for indexing in databases.
+ * If you're using a real search engine, you'll probably want to override
+ * this behavior and do something nicer with the original wikitext.
+ */
+ public static function updateText( $text ) {
+ global $wgContLang;
+
# Language-specific strip/conversion
- $text = $wgContLang->normalizeForSearch( $this->mText );
+ $text = $wgContLang->normalizeForSearch( $text );
+ $lc = SearchEngine::legalSearchChars() . '&#;';
wfProfileIn( __METHOD__ . '-regexps' );
$text = preg_replace( "/<\\/?\\s*[A-Za-z][^>]*?>/",
# Strip wiki '' and '''
$text = preg_replace( "/''[']*/", " ", $text );
wfProfileOut( __METHOD__ . '-regexps' );
-
- wfRunHooks( 'SearchUpdate', array( $this->mId, $this->mNamespace, $this->mTitle, &$text ) );
-
- # Perform the actual update
- $search->update( $this->mId, $search->normalizeText( Title::indexTitle( $this->mNamespace, $this->mTitle ) ),
- $search->normalizeText( $text ) );
-
- wfProfileOut( __METHOD__ );
+ return $text;
}
}
-
-/**
- * Placeholder class
- *
- * @ingroup Search
- */
-class SearchUpdateMyISAM extends SearchUpdate {
- # Inherits everything
-}
# Can't watch a rangeblock
if ( $type != Block::TYPE_RANGE && $data['Watch'] ) {
- $performer->addWatch( Title::makeTitle( NS_USER, $target ) );
+ WatchAction::doWatch( Title::makeTitle( NS_USER, $target ), $performer, WatchedItem::IGNORE_USER_RIGHTS );
}
# Block constructor sanitizes certain block options on insert
'target' => $target,
'contribs' => $this->opts['contribs'],
'namespace' => $this->opts['namespace'],
+ 'tagfilter' => $this->opts['tagfilter'],
'year' => $this->opts['year'],
'month' => $this->opts['month'],
'deletedOnly' => $this->opts['deletedOnly'],
private $badItems = array();
public function __construct() {
- parent::__construct( 'EditWatchlist' );
+ parent::__construct( 'EditWatchlist', 'editmywatchlist' );
}
/**
$extraOutput = array();
$count = 1;
foreach ( $extraPages as $oldSubpage ) {
- if ( $ot->equals( $oldSubpage ) ) {
+ if ( $ot->equals( $oldSubpage ) || $nt->equals( $oldSubpage ) ) {
# Already did this one.
continue;
}
}
# Deal with watches (we don't watch subpages)
- if ( $this->watch && $user->isLoggedIn() ) {
- $user->addWatch( $ot );
- $user->addWatch( $nt );
- } else {
- $user->removeWatch( $ot );
- $user->removeWatch( $nt );
- }
+ WatchAction::doWatchOrUnwatch( $this->watch, $ot, $user );
+ WatchAction::doWatchOrUnwatch( $this->watch, $nt, $user );
# Re-clear the file redirect cache, which may have been polluted by
# parsing in messages above. See CR r56745.
$query = array( 'redirect' => 'no' );
- if ( $this->patrollable( $result ) ) {
- $query['rcid'] = $result->rc_id;
- }
-
// Linker::linkKnown() uses 'known' and 'noclasses' options.
// This breaks the colouration for stubs.
$plink = Linker::link(
}
public function alterForm( HTMLForm $form ) {
- $form->setSubmitTextMsg( 'mailmypassword' );
- }
-
- protected function preText() {
global $wgPasswordResetRoutes;
+
$i = 0;
if ( isset( $wgPasswordResetRoutes['username'] ) && $wgPasswordResetRoutes['username'] ) {
$i++;
$i++;
}
- return $this->msg( 'passwordreset-pretext', $i )->parseAsBlock();
+ $message = ( $i > 1 ) ? 'passwordreset-text-many' : 'passwordreset-text-one';
+
+ $form->setHeaderText( $this->msg( $message, $i )->parseAsBlock() );
+ $form->setSubmitTextMsg( 'mailmypassword' );
}
/**
$fields = RecentChange::selectFields();
// JOIN on watchlist for users
- if ( $uid ) {
+ if ( $uid && $this->getUser()->isAllowed( 'viewmywatchlist' ) ) {
$tables[] = 'watchlist';
$fields[] = 'wl_user';
$fields[] = 'wl_notificationtimestamp';
$defaults = $opts->getAllValues();
$nondefaults = $opts->getChangedValues();
- $opts->consumeValues( array(
- 'namespace', 'invert', 'associated', 'tagfilter',
- 'categories', 'categories_any'
- ) );
$panel = array();
$panel[] = $this->optionsPanel( $defaults, $nondefaults );
* @return array
*/
function getExtraOptions( $opts ) {
+ $opts->consumeValues( array(
+ 'namespace', 'invert', 'associated', 'tagfilter', 'categories', 'categories_any'
+ ) );
+
$extraOpts = array();
$extraOpts['namespace'] = $this->namespaceFilterForm( $opts );
$extraOpts['tagfilter'] = $tagFilter;
}
- wfRunHooks( 'SpecialRecentChangesPanel', array( &$extraOpts, $opts ) );
+ // Don't fire the hook for subclasses. (Or should we?)
+ if ( $this->getName() === 'Recentchanges' ) {
+ wfRunHooks( 'SpecialRecentChangesPanel', array( &$extraOpts, $opts ) );
+ }
return $extraOpts;
}
}
# Sort data for display and make sure it's unique after we've added user data.
- $wgRCLinkLimits[] = $options['limit'];
- $wgRCLinkDays[] = $options['days'];
- sort( $wgRCLinkLimits );
- sort( $wgRCLinkDays );
- $wgRCLinkLimits = array_unique( $wgRCLinkLimits );
- $wgRCLinkDays = array_unique( $wgRCLinkDays );
+ $linkLimits = $wgRCLinkLimits;
+ $linkLimits[] = $options['limit'];
+ sort( $linkLimits );
+ $linkLimits = array_unique( $linkLimits );
+
+ $linkDays = $wgRCLinkDays;
+ $linkDays[] = $options['days'];
+ sort( $linkDays );
+ $linkDays = array_unique( $linkDays );
// limit links
$cl = array();
- foreach ( $wgRCLinkLimits as $value ) {
+ foreach ( $linkLimits as $value ) {
$cl[] = $this->makeOptionsLink( $lang->formatNum( $value ),
array( 'limit' => $value ), $nondefaults, $value == $options['limit'] );
}
// day links, reset 'from' to none
$dl = array();
- foreach ( $wgRCLinkDays as $value ) {
+ foreach ( $linkDays as $value ) {
$dl[] = $this->makeOptionsLink( $lang->formatNum( $value ),
array( 'days' => $value, 'from' => '' ), $nondefaults, $value == $options['days'] );
}
$outputPage = $this->getOutput();
$title = Title::newFromURL( $target );
if ( !$title || $title->getInterwiki() != '' ) {
- $outputPage->wrapWikiMsg( "<div class=\"errorbox\">\n$1\n</div><br style=\"clear: both\" />", 'allpagesbadtitle' );
+ $outputPage->wrapWikiMsg( "<div class=\"errorbox\">\n$1\n</div>", 'allpagesbadtitle' );
return false;
}
// left join with watchlist table to highlight watched rows
$uid = $this->getUser()->getId();
- if ( $uid ) {
+ if ( $uid && $this->getUser()->isAllowed( 'viewmywatchlist' ) ) {
$tables[] = 'watchlist';
$select[] = 'wl_user';
$join_conds['watchlist'] = array( 'LEFT JOIN', array(
}
/**
- * @param $opts FormOptions
+ * Get options to be displayed in a form
+ *
+ * @param FormOptions $opts
* @return array
*/
function getExtraOptions( $opts ) {
- $opts->consumeValues( array( 'showlinkedto', 'target', 'tagfilter' ) );
- $extraOpts = array();
- $extraOpts['namespace'] = $this->namespaceFilterForm( $opts );
+ $extraOpts = parent::getExtraOptions( $opts );
+
+ $opts->consumeValues( array( 'showlinkedto', 'target' ) );
+
$extraOpts['target'] = array( $this->msg( 'recentchangeslinked-page' )->escaped(),
Xml::input( 'target', 40, str_replace( '_', ' ', $opts['target'] ) ) .
Xml::check( 'showlinkedto', $opts['showlinkedto'], array( 'id' => 'showlinkedto' ) ) . ' ' .
Xml::label( $this->msg( 'recentchangeslinked-to' )->text(), 'showlinkedto' ) );
- $tagFilter = ChangeTags::buildTagFilterSelector( $opts['tagfilter'] );
- if ( $tagFilter ) {
- $extraOpts['tagfilter'] = $tagFilter;
- }
+
return $extraOpts;
}
}
protected function getGroupName() {
- return 'redirects';
+ return 'pages';
}
}
if ( $this->mTimestamp !== '' ) {
$this->showRevision( $this->mTimestamp );
- } elseif ( $this->mFilename !== null ) {
+ } elseif ( $this->mFilename !== null && $this->mTargetObj->inNamespace( NS_FILE ) ) {
$file = new ArchivedFile( $this->mTargetObj, '', $this->mFilename );
// Check if user is allowed to see this file
if ( !$file->exists() ) {
*/
public static function getInitialPageText( $comment = '', $license = '', $copyStatus = '', $source = '' ) {
global $wgUseCopyrightUpload, $wgForceUIMsgAsContentMsg;
- $wgForceUIMsgAsContentMsg = (array) $wgForceUIMsgAsContentMsg;
$msg = array();
/* These messages are transcluded into the actual text of the description page.
* instead of hardcoding it there in the uploader language.
*/
foreach ( array( 'license-header', 'filedesc', 'filestatus', 'filesource' ) as $msgName ) {
- if ( in_array( $msgName, $wgForceUIMsgAsContentMsg ) ) {
+ if ( in_array( $msgName, (array)$wgForceUIMsgAsContentMsg ) ) {
$msg[$msgName] = "{{int:$msgName}}";
} else {
$msg[$msgName] = wfMessage( $msgName )->inContentLanguage()->text();
var $mAbortLoginErrorMsg = 'login-abort-generic';
private $mLoaded = false;
private $mSecureLoginUrl;
- // TODO Remove old forms and mShowVForm gating after all WMF wikis have
- // adapted messages and help links to new versions.
- private $mShowVForm;
/**
* @ var WebRequest
}
function getDescription() {
- if ( !$this->getUser()->isAllowed( 'createaccount' ) ) {
- return $this->msg( 'userloginnocreate' )->text();
- }
- if ( $this->mShowVForm ) {
- if ( $this->mType === 'signup' ) {
- return $this->msg( 'createaccount' )->text();
- } else {
- return $this->msg( 'login' )->text();
- }
+ if ( $this->mType === 'signup' ) {
+ return $this->msg( 'createaccount' )->text();
} else {
- return $this->msg( 'userlogin' )->text();
+ return $this->msg( 'login' )->text();
}
}
if ( $subPage == 'signup' ) {
$this->mType = 'signup';
}
- $this->mShowVForm = $this->shouldShowVForm();
-
$this->setHeaders();
// If logging in and not on HTTPS, either redirect to it or offer a link.
}
}
- /**
- * Whether to show new vertically laid out login form.
- * ?useNew=1 forces new style, ?useNew=0 forces old style,
- * otherwise consult $wgUseVFormUserLogin.
- * @return Boolean
- */
- private function shouldShowVForm() {
- global $wgUseVFormCreateAccount, $wgUseVFormUserLogin;
-
- if ( $this->mType == 'signup' ) {
- return $this->mRequest->getBool( 'useNew', $wgUseVFormCreateAccount );
- } else {
- return $this->mRequest->getBool( 'useNew', $wgUseVFormUserLogin );
- }
- }
-
/**
* @private
*/
}
if ( $this->mType == 'signup' ) {
- $out->addModules( 'mediawiki.special.userlogin.signup' );
- if ( $this->mShowVForm ) {
- $template = new UsercreateTemplateVForm();
- $out->addModuleStyles( array(
- 'mediawiki.ui',
- 'mediawiki.special.createaccount.vform'
- ) );
- // XXX hack pending RL or JS parse() support for complex content messages
- // https://bugzilla.wikimedia.org/show_bug.cgi?id=25349
- $out->addJsConfigVars( 'wgCreateacctImgcaptchaHelp',
- $this->msg( 'createacct-imgcaptcha-help' )->parse() );
- $out->addModules( 'mediawiki.special.createaccount.vform.js' );
- // Must match number of benefits defined in messages
- $template->set( 'benefitCount', 3 );
- } else {
- $template = new UsercreateTemplate();
- }
+ $template = new UsercreateTemplate();
+
+ $out->addModuleStyles( array(
+ 'mediawiki.ui',
+ 'mediawiki.special.createaccount'
+ ) );
+ // XXX hack pending RL or JS parse() support for complex content messages
+ // https://bugzilla.wikimedia.org/show_bug.cgi?id=25349
+ $out->addJsConfigVars( 'wgCreateacctImgcaptchaHelp',
+ $this->msg( 'createacct-imgcaptcha-help' )->parse() );
+ $out->addModules( array(
+ 'mediawiki.special.createaccount.js'
+ ) );
+ // Must match number of benefits defined in messages
+ $template->set( 'benefitCount', 3 );
+
$q = 'action=submitlogin&type=signup';
$linkq = 'type=login';
- $linkmsg = 'gotaccount';
} else {
- if ( $this->mShowVForm ) {
- $template = new UserloginTemplateVForm();
- $out->addModuleStyles( array(
- 'mediawiki.ui',
- 'mediawiki.special.userlogin.vform'
- ) );
- } else {
- $template = new UserloginTemplate();
- }
+ $template = new UserloginTemplate();
+
+ $out->addModuleStyles( array(
+ 'mediawiki.ui',
+ 'mediawiki.special.userlogin'
+ ) );
+
$q = 'action=submitlogin&type=login';
$linkq = 'type=signup';
- $linkmsg = 'nologin';
}
if ( $this->mReturnTo !== '' ) {
if ( $wgLoginLanguageSelector && $this->mLanguage ) {
$linkq .= '&uselang=' . $this->mLanguage;
}
- if ( !$this->mShowVForm ) {
- $link = Html::element( 'a', array( 'href' => $titleObj->getLocalURL( $linkq ) ),
- $this->msg( $linkmsg . 'link' )->text() ); # Calling either 'gotaccountlink' or 'nologinlink'
-
- $template->set( 'link', $this->msg( $linkmsg )->rawParams( $link )->parse() );
-
- } else {
- // Supply URL, login template creates the button.
- // (The template 'link' key, passed above, is obsolete in the VForm design.)
- $template->set( 'createOrLoginHref', $titleObj->getLocalURL( $linkq ) );
- }
+ // Supply URL, login template creates the button.
+ $template->set( 'createOrLoginHref', $titleObj->getLocalURL( $linkq ) );
} else {
$template->set( 'link', '' );
}
}
if ( !$this->userCanChangeRights( $user, true ) ) {
+ if ( $this->isself && $request->getCheck( 'success' ) ) {
+ // bug 48609: if the user just removed its own rights, this would
+ // leads it in a "permissions error" page. In that case, show a
+ // message that it can't anymore use this page instead of an error
+ $this->setHeaders();
+ $out = $this->getOutput();
+ $out->wrapWikiMsg( "<div class=\"successbox\">\n$1\n</div>", 'userrights-removed-self' );
+ $out->returnToMain();
+ return;
+ }
+
// @todo FIXME: There may be intermediate groups we can mention.
$msg = $user->isAnon() ? 'userrights-nologin' : 'userrights-notallowed';
throw new PermissionsError( null, array( array( $msg ) ) );
}
function getSuccessURL() {
- return $this->getTitle( $this->mTarget )->getFullURL();
+ return $this->getTitle( $this->mTarget )->getFullURL( array( 'success' => 1 ) );
}
/**
/**
* Constructor
*/
- public function __construct( $page = 'Watchlist' ) {
- parent::__construct( $page );
+ public function __construct( $page = 'Watchlist', $restriction = 'viewmywatchlist' ) {
+ parent::__construct( $page, $restriction );
}
/**
return;
}
+ // Check permissions
+ $this->checkPermissions();
+
// Add feed links
$wlToken = $user->getOption( 'watchlisttoken' );
if ( !$wlToken ) {
}
# Create output form
- $form = Xml::fieldset( $this->msg( 'watchlist-options' )->text(), false, array( 'id' => 'mw-watchlist-options' ) );
+ $form = Xml::fieldset(
+ $this->msg( 'watchlist-options' )->text(),
+ false,
+ array( 'id' => 'mw-watchlist-options' )
+ );
# Show watchlist header
+ $form .= "<p>";
$form .= $this->msg( 'watchlist-details' )->numParams( $nitems )->parse() . "\n";
-
- if ( $user->getOption( 'enotifwatchlistpages' ) && $wgEnotifWatchlist ) {
- $form .= $this->msg( 'wlheader-enotif' )->parseAsBlock() . "\n";
+ if ( $wgEnotifWatchlist && $user->getOption( 'enotifwatchlistpages' ) ) {
+ $form .= $this->msg( 'wlheader-enotif' )->parse() . "\n";
+ }
+ if ( $wgShowUpdatedMarker ) {
+ $form .= $this->msg( 'wlheader-showupdated' )->parse() . "\n";
}
+ $form .= "</p>";
+
if ( $wgShowUpdatedMarker ) {
$form .= Xml::openElement( 'form', array( 'method' => 'post',
- 'action' => $this->getTitle()->getLocalURL(),
- 'id' => 'mw-watchlist-resetbutton' ) ) . "\n" .
- $this->msg( 'wlheader-showupdated' )->parse() .
- Xml::submitButton( $this->msg( 'enotif_reset' )->text(), array( 'name' => 'dummy' ) ) . "\n" .
- Html::hidden( 'reset', 'all' ) . "\n";
- foreach ( $nondefaults as $key => $value ) {
- $form .= Html::hidden( $key, $value ) . "\n";
- }
- $form .= Xml::closeElement( 'form' ) . "\n";
+ 'action' => $this->getTitle()->getLocalURL(),
+ 'id' => 'mw-watchlist-resetbutton' ) ) . "\n" .
+ Xml::submitButton( $this->msg( 'enotif_reset' )->text(), array( 'name' => 'dummy' ) ) . "\n" .
+ Html::hidden( 'reset', 'all' ) . "\n";
+ foreach ( $nondefaults as $key => $value ) {
+ $form .= Html::hidden( $key, $value ) . "\n";
+ }
+ $form .= Xml::closeElement( 'form' ) . "\n";
}
+
$form .= "<hr />\n";
$tables = array( 'recentchanges', 'watchlist' );
<?php
/**
- * Html form for account creation.
+ * Html form for account creation (since 1.22 with VForm appearance).
*
* 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
* @ingroup Templates
*/
-/**
- * @defgroup Templates Templates
- */
-
if ( !defined( 'MEDIAWIKI' ) ) {
die( -1 );
}
-/**
- * @ingroup Templates
- */
-class UsercreateTemplate extends QuickTemplate {
+class UsercreateTemplate extends BaseTemplate {
+
+ /**
+ * Extensions (AntiSpoof and TitleBlacklist) call this in response to
+ * UserCreateForm hook to add checkboxes to the create account form.
+ */
function addInputItem( $name, $value, $type, $msg, $helptext = false ) {
$this->data['extraInput'][] = array(
'name' => $name,
}
function execute() {
- if ( $this->data['message'] ) {
-?>
- <div class="<?php $this->text( 'messagetype' ); ?>box">
-<?php
- if ( $this->data['messagetype'] == 'error' ) {
- ?><strong><?php $this->msg( 'loginerror' ); ?></strong><br /><?php
- }
- $this->html( 'message' );
-?>
- </div>
- <div class="visualClear"></div>
-<?php
- }
+ global $wgCookieExpiration;
+ $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
?>
-
-<div id="signupstart"><?php $this->msgWiki( 'signupstart' ); ?></div>
-<div id="userlogin">
-
-<form name="userlogin2" id="userlogin2" method="post" action="<?php $this->text( 'action' ); ?>">
- <h2><?php $this->msg( 'createaccount' ); ?></h2>
- <p id="userloginlink"><?php $this->html( 'link' ); ?></p>
- <?php $this->html( 'header' ); /* pre-table point for form plugins... */ ?>
-<?php
+<div class="mw-ui-container">
+ <?php
if ( $this->haveData( 'languages' ) ) {
- ?><div id="languagelinks"><p><?php $this->html( 'languages' ); ?></p></div><?php
+ ?>
+ <div id="languagelinks">
+ <p><?php $this->html( 'languages' ); ?></p>
+ </div>
+ <?php
}
+ ?>
+<div id="userloginForm">
+<h2 class="createaccount-join"><?php $this->msg( 'createacct-join' ); ?></h2>
+<form name="userlogin2" id="userlogin2" class="mw-ui-vform" method="post" action="<?php $this->text( 'action' ); ?>">
+ <section class="mw-form-header">
+ <?php $this->html( 'header' ); /* extensions such as ConfirmEdit add form HTML here */ ?>
+ </section>
+ <?php
+ if ( $this->data['message'] ) {
?>
- <table>
- <tr>
- <td class="mw-label"><label for='wpName2'><?php $this->msg( 'yourname' ); ?></label></td>
- <td class="mw-input">
- <?php
- echo Html::input( 'wpName', $this->data['name'], 'text', array(
- 'class' => 'loginText',
+ <div class="<?php $this->text( 'messagetype' ); ?>box">
+ <?php if ( $this->data['messagetype'] == 'error' ) { ?>
+ <strong><?php $this->msg( 'createacct-error' ); ?></strong><br />
+ <?php } ?>
+ <?php $this->html( 'message' ); ?>
+ </div>
+ <?php } ?>
+ <div>
+ <label for='wpName2'>
+ <?php $this->msg( 'userlogin-yourname' ); ?>
+
+ <span class="mw-ui-flush-right"><?php echo $this->getMsg( 'createacct-helpusername' )->parse(); ?></span>
+ </label>
+ <?php echo Html::input( 'wpName', $this->data['name'], 'text', array(
+ 'class' => 'mw-input loginText',
'id' => 'wpName2',
'tabindex' => '1',
'size' => '20',
'required',
+ 'placeholder' => $this->getMsg( 'userlogin-yourname-ph' )->text(),
'autofocus'
) ); ?>
- </td>
- </tr>
- <tr>
- <td></td>
- <td class="mw-input">
-<?php
- if ( $this->data['createemail'] ) {
- echo Xml::checkLabel(
- wfMessage( 'createaccountmail' )->text(),
- 'wpCreateaccountMail',
- 'wpCreateaccountMail',
- $this->data['createemailset'],
- array( 'tabindex' => '2' )
- );
- }
-?>
- </td>
- </tr>
- <tr class="mw-row-password">
- <td class="mw-label"><label for='wpPassword2'><?php $this->msg( 'yourpassword' ); ?></label></td>
- <td class="mw-input">
-<?php
- echo Html::input( 'wpPassword', null, 'password', array(
- 'class' => 'loginPassword',
+ </div>
+ <div>
+ <?php if ( $this->data['createemail'] ) { ?>
+ <label class="mw-ui-checkbox-label">
+ <input name="wpCreateaccountMail" type="checkbox" value="1" id="wpCreateaccountMail" tabindex="2"
+ <?php if ( $this->data['createemailset'] ) {
+ echo 'checked="checked"';
+ } ?>
+ >
+ <?php $this->msg( 'createaccountmail' ); ?>
+ </label>
+ <?php } ?>
+ </div>
+ <div class="mw-row-password">
+ <label for='wpPassword2'><?php $this->msg( 'userlogin-yourpassword' ); ?></label>
+ <?php echo Html::input( 'wpPassword', null, 'password', array(
+ 'class' => 'mw-input loginPassword',
'id' => 'wpPassword2',
'tabindex' => '3',
- 'size' => '20'
+ 'size' => '20',
+ 'required',
+ 'placeholder' => $this->getMsg( 'createacct-yourpassword-ph' )->text()
) + User::passwordChangeInputAttribs() ); ?>
- </td>
- </tr>
-<?php
- if ( $this->data['usedomain'] ) {
+ </div>
+ <?php if ( $this->data['usedomain'] ) {
$doms = "";
foreach ( $this->data['domainnames'] as $dom ) {
$doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
}
-?>
- <tr id="mw-user-domain-section">
- <td class="mw-label"><?php $this->msg( 'yourdomainname' ); ?></td>
- <td class="mw-input">
+ ?>
+ <div id="mw-user-domain-section">
+ <label for="wpDomain"><?php $this->msg( 'yourdomainname' ); ?></label>
+ <div class="mw-input">
<select name="wpDomain" value="<?php $this->text( 'domain' ); ?>"
tabindex="4">
<?php echo $doms ?>
</select>
- </td>
- </tr>
-<?php
- }
-?>
- <tr class="mw-row-password">
- <td class="mw-label"><label for='wpRetype'><?php $this->msg( 'yourpasswordagain' ); ?></label></td>
- <td class="mw-input">
- <?php
- echo Html::input( 'wpRetype', null, 'password', array(
- 'class' => 'loginPassword',
- 'id' => 'wpRetype',
- 'tabindex' => '5',
- 'size' => '20'
- ) + User::passwordChangeInputAttribs() ); ?>
- </td>
- </tr>
- <tr>
-<?php
- if ( $this->data['useemail'] ) {
-?>
- <td class="mw-label"><label for='wpEmail'><?php $this->msg( 'youremail' ); ?></label></td>
- <td class="mw-input">
- <?php
- echo Html::input( 'wpEmail', $this->data['email'], 'email', array(
- 'class' => 'loginText',
- 'id' => 'wpEmail',
- 'tabindex' => '6',
- 'size' => '20'
- ) ); ?>
- <div class="prefsectiontip">
- <?php // duplicated in Preferences.php profilePreferences()
- if ( $this->data['emailrequired'] ) {
- $this->msgWiki( 'prefs-help-email-required' );
- } else {
- $this->msgWiki( 'prefs-help-email' );
- }
- if ( $this->data['emailothers'] ) {
- $this->msgWiki( 'prefs-help-email-others' );
- } ?>
- </div>
- </td>
-<?php
- }
-
- if ( $this->data['userealname'] ) {
-?>
- </tr>
- <tr>
- <td class="mw-label"><label for='wpRealName'><?php $this->msg( 'yourrealname' ); ?></label></td>
- <td class="mw-input">
- <input type='text' class='loginText' name="wpRealName" id="wpRealName"
- tabindex="7"
- value="<?php $this->text( 'realname' ); ?>" size='20' />
- <div class="prefsectiontip">
- <?php $this->msgWiki( 'prefs-help-realname' ); ?>
- </div>
- </td>
-<?php
- }
-
- if ( $this->data['usereason'] ) {
-?>
- </tr>
- <tr>
- <td class="mw-label"><label for='wpReason'><?php $this->msg( 'createaccountreason' ); ?></label></td>
- <td class="mw-input">
- <input type='text' class='loginText' name="wpReason" id="wpReason"
- tabindex="8"
- value="<?php $this->text( 'reason' ); ?>" size='20' />
- </td>
-<?php
- }
-?>
- </tr>
-<?php
- if ( $this->data['canremember'] ) {
-?>
- <tr>
- <td></td>
- <td class="mw-input">
+ </div>
+ </div>
+ <?php } ?>
+ <div class="mw-row-password">
+ <label for='wpRetype'><?php $this->msg( 'createacct-yourpasswordagain' ); ?></label>
+ <?php
+ echo Html::input( 'wpRetype', null, 'password', array(
+ 'class' => 'mw-input loginPassword',
+ 'id' => 'wpRetype',
+ 'tabindex' => '5',
+ 'size' => '20',
+ 'required',
+ 'placeholder' => $this->getMsg( 'createacct-yourpasswordagain-ph' )->text()
+ ) + User::passwordChangeInputAttribs() );
+ ?>
+ </div>
+ <div>
+ <?php if ( $this->data['useemail'] ) { ?>
+ <label for='wpEmail'>
<?php
- global $wgCookieExpiration;
- $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
- echo Xml::checkLabel(
- wfMessage( 'remembermypassword' )->numParams( $expirationDays )->text(),
- 'wpRemember',
- 'wpRemember',
- $this->data['remember'],
- array( 'tabindex' => '9' )
- )
+ $this->msg( $this->data['emailrequired'] ?
+ 'createacct-emailrequired' :
+ 'createacct-emailoptional'
+ );
?>
- </td>
- </tr>
-<?php
- }
-
- $tabIndex = 10;
+ </label>
+ <?php
+ echo Html::input( 'wpEmail', $this->data['email'], 'email', array(
+ 'class' => 'mw-input loginText',
+ 'id' => 'wpEmail',
+ 'tabindex' => '6',
+ 'size' => '20',
+ 'placeholder' => $this->getMsg( 'createacct-email-ph' )->text()
+ ) + ( $this->data['emailrequired'] ? array() : array( 'required' => '' ) ) );
+ ?>
+ <?php } ?>
+ </div>
+ <?php if ( $this->data['userealname'] ) { ?>
+ <div>
+ <label for='wpRealName'><?php $this->msg( 'createacct-realname' ); ?></label>
+ <input type='text' class='mw-input loginText' name="wpRealName" id="wpRealName"
+ tabindex="7"
+ value="<?php $this->text( 'realname' ); ?>" size='20' />
+ <div class="prefsectiontip">
+ <?php $this->msgWiki( 'prefs-help-realname' ); ?>
+ </div>
+ </div>
+ <?php }
+ if ( $this->data['usereason'] ) { ?>
+ <div>
+ <label for='wpReason'><?php $this->msg( 'createacct-reason' ); ?></label>
+ <?php echo Html::input( 'wpReason', $this->data['reason'], 'text', array(
+ 'class' => 'mw-input loginText',
+ 'id' => 'wpReason',
+ 'tabindex' => '8',
+ 'size' => '20',
+ 'placeholder' => $this->getMsg( 'createacct-reason-ph' )->text()
+ ) ); ?>
+ </div>
+ <?php }
+ $tabIndex = 9;
if ( isset( $this->data['extraInput'] ) && is_array( $this->data['extraInput'] ) ) {
foreach ( $this->data['extraInput'] as $inputItem ) { ?>
- <tr>
- <?php
- if ( !empty( $inputItem['msg'] ) && $inputItem['type'] != 'checkbox' ) {
- ?><td class="mw-label"><label for="<?php
- echo htmlspecialchars( $inputItem['name'] ); ?>"><?php
- $this->msgWiki( $inputItem['msg'] ); ?></label><?php
- } else {
- ?><td><?php
- }
- ?></td>
- <td class="mw-input">
- <input type="<?php echo htmlspecialchars( $inputItem['type'] ); ?>" name="<?php
- echo htmlspecialchars( $inputItem['name'] ); ?>"
- tabindex="<?php echo $tabIndex++; ?>"
- value="<?php
- if ( $inputItem['type'] != 'checkbox' ) {
- echo htmlspecialchars( $inputItem['value'] );
+ <div>
+ <?php
+ // If it's a checkbox, output the whole thing (assume it has a msg).
+ if ( $inputItem['type'] == 'checkbox' ) {
+ ?>
+ <label class="mw-ui-checkbox-label">
+ <input
+ name="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
+ id="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
+ type="checkbox" value="1"
+ tabindex="<?php echo $tabIndex++; ?>"
+ <?php if ( !empty( $inputItem['value'] ) ) {
+ echo 'checked="checked"';
+ } ?>
+ >
+ <?php $this->msg( $inputItem['msg'] ); ?>
+ </label>
+ <?php
} else {
- echo '1';
- }
- ?>" id="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
+ // Not a checkbox.
+ // TODO (bug 31909) support other input types, e.g. select boxes.
+ if ( !empty( $inputItem['msg'] ) ) {
+ // Output the message label
+ ?>
+ <label for="<?php echo htmlspecialchars( $inputItem['name'] ); ?>">
+ <?php $this->msgWiki( $inputItem['msg'] ); ?>
+ </label>
<?php
- if ( $inputItem['type'] == 'checkbox' && !empty( $inputItem['value'] ) ) {
- echo 'checked="checked"';
- }
- ?> /> <?php
- if ( $inputItem['type'] == 'checkbox' && !empty( $inputItem['msg'] ) ) {
- ?>
- <label for="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"><?php
- $this->msgHtml( $inputItem['msg'] ); ?></label><?php
}
+ ?>
+ <input
+ type="<?php echo htmlspecialchars( $inputItem['type'] ); ?>"
+ class="mw-input"
+ name="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
+ tabindex="<?php echo $tabIndex++; ?>"
+ value="<?php echo htmlspecialchars( $inputItem['value'] ); ?>"
+ id="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
+ />
+ <?php
+ }
if ( $inputItem['helptext'] !== false ) {
?>
- <div class="prefsectiontip">
- <?php $this->msgWiki( $inputItem['helptext'] ); ?>
- </div><?php
+ <div class="prefsectiontip">
+ <?php $this->msgWiki( $inputItem['helptext'] ); ?>
+ </div>
+ <?php
}
?>
- </td>
- </tr>
-<?php
+ </div>
+ <?php
}
}
-?>
- <tr>
- <td></td>
- <td class="mw-submit">
- <input type='submit' name="wpCreateaccount" id="wpCreateaccount"
- tabindex="<?php echo $tabIndex++; ?>"
- value="<?php $this->msg( 'createaccount' ); ?>" />
- </td>
- </tr>
- </table>
-<?php
- if ( $this->haveData( 'uselang' ) ) {
- ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php
- }
- if ( $this->haveData( 'token' ) ) {
- ?><input type="hidden" name="wpCreateaccountToken" value="<?php $this->text( 'token' ); ?>" /><?php
- }
-?>
+ // JS attempts to move the image CAPTCHA below this part of the form,
+ // so skip one index.
+ $tabIndex++;
+ ?>
+ <div class="mw-submit">
+ <input type='submit' class="mw-ui-button mw-ui-big mw-ui-block mw-ui-primary" name="wpCreateaccount" id="wpCreateaccount"
+ tabindex="<?php echo $tabIndex++; ?>"
+ value="<?php $this->msg( 'createacct-submit' ); ?>" />
+ </div>
+<?php if ( $this->haveData( 'uselang' ) ) { ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php } ?>
+<?php if ( $this->haveData( 'token' ) ) { ?><input type="hidden" name="wpCreateaccountToken" value="<?php $this->text( 'token' ); ?>" /><?php } ?>
</form>
</div>
-<div id="signupend"><?php $this->html( 'signupend' ); ?></div>
+<div class="mw-createacct-benefits-container">
+ <h2><?php $this->msg( 'createacct-benefit-heading' ); ?></h2>
+ <div class="mw-createacct-benefits-list">
+ <?php
+ for ( $benefitIdx = 1; $benefitIdx <= $this->data['benefitCount']; $benefitIdx++ ) {
+ // Pass each benefit's head text (by default a number) as a parameter to the body's message for PLURAL handling.
+ $headUnescaped = $this->getMsg( "createacct-benefit-head$benefitIdx" )->text();
+ ?>
+ <div class="mw-number-text <?php $this->msg( "createacct-benefit-icon$benefitIdx" ); ?>">
+ <h3><?php $this->msg( "createacct-benefit-head$benefitIdx" ); ?></h3>
+ <p><?php echo $this->getMsg( "createacct-benefit-body$benefitIdx" )->params( $headUnescaped )->escaped(); ?></p>
+ </div>
+ <?php
+ }
+ ?>
+ </div>
+</div>
+</div>
<?php
}
+++ /dev/null
-<?php
-/**
- * Html form for account creation with new VForm appearance.
- *
- * 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 Templates
- */
-
-if ( !defined( 'MEDIAWIKI' ) ) {
- die( -1 );
-}
-
-/**
- * Html form for create account with new VForm appearance.
- *
- * @since 1.22
- */
-class UsercreateTemplateVForm extends BaseTemplate {
-
- /**
- * Extensions (AntiSpoof and TitleBlacklist) call this in response to
- * UserCreateForm hook to add checkboxes to the create account form.
- */
- function addInputItem( $name, $value, $type, $msg, $helptext = false ) {
- $this->data['extraInput'][] = array(
- 'name' => $name,
- 'value' => $value,
- 'type' => $type,
- 'msg' => $msg,
- 'helptext' => $helptext,
- );
- }
-
- function execute() {
- global $wgCookieExpiration;
- $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
-?>
-<div class="mw-ui-container">
- <?php
- if ( $this->haveData( 'languages' ) ) {
- ?>
- <div id="languagelinks">
- <p><?php $this->html( 'languages' ); ?></p>
- </div>
- <?php
- }
- ?>
-<div id="userloginForm">
-<h2 class="createaccount-join"><?php $this->msg( 'createacct-join' ); ?></h2>
-<form name="userlogin2" id="userlogin2" class="mw-ui-vform" method="post" action="<?php $this->text( 'action' ); ?>">
- <section class="mw-form-header">
- <?php $this->html( 'header' ); /* extensions such as ConfirmEdit add form HTML here */ ?>
- </section>
- <?php
- if ( $this->data['message'] ) {
-?>
- <div class="<?php $this->text( 'messagetype' ); ?>box">
- <?php if ( $this->data['messagetype'] == 'error' ) { ?>
- <strong><?php $this->msg( 'createacct-error' ); ?></strong><br />
- <?php } ?>
- <?php $this->html( 'message' ); ?>
- </div>
- <?php } ?>
- <div>
- <label for='wpName2'>
- <?php $this->msg( 'userlogin-yourname' ); ?>
-
- <span class="mw-ui-flush-right"><?php echo $this->getMsg( 'createacct-helpusername' )->parse(); ?></span>
- </label>
- <?php echo Html::input( 'wpName', $this->data['name'], 'text', array(
- 'class' => 'mw-input loginText',
- 'id' => 'wpName2',
- 'tabindex' => '1',
- 'size' => '20',
- 'required',
- 'placeholder' => $this->getMsg( 'userlogin-yourname-ph' )->text(),
- 'autofocus'
- ) ); ?>
- </div>
- <div>
- <?php if ( $this->data['createemail'] ) { ?>
- <label class="mw-ui-checkbox-label">
- <input name="wpCreateaccountMail" type="checkbox" value="1" id="wpCreateaccountMail" tabindex="2"
- <?php if ( $this->data['createemailset'] ) {
- echo 'checked="checked"';
- } ?>
- >
- <?php $this->msg( 'createaccountmail' ); ?>
- </label>
- <?php } ?>
- </div>
- <div class="mw-row-password">
- <label for='wpPassword2'><?php $this->msg( 'userlogin-yourpassword' ); ?></label>
- <?php echo Html::input( 'wpPassword', null, 'password', array(
- 'class' => 'mw-input loginPassword',
- 'id' => 'wpPassword2',
- 'tabindex' => '3',
- 'size' => '20',
- 'required',
- 'placeholder' => $this->getMsg( 'createacct-yourpassword-ph' )->text()
- ) + User::passwordChangeInputAttribs() ); ?>
- </div>
- <?php if ( $this->data['usedomain'] ) {
- $doms = "";
- foreach ( $this->data['domainnames'] as $dom ) {
- $doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
- }
- ?>
- <div>
- <label><?php $this->msg( 'yourdomainname' ); ?></label>
- <div class="mw-input">
- <select name="wpDomain" value="<?php $this->text( 'domain' ); ?>"
- tabindex="4">
- <?php echo $doms ?>
- </select>
- </div>
- </div>
- <?php } ?>
- <div class="mw-row-password">
- <label for='wpRetype'><?php $this->msg( 'createacct-yourpasswordagain' ); ?></label>
- <?php
- echo Html::input( 'wpRetype', null, 'password', array(
- 'class' => 'mw-input loginPassword',
- 'id' => 'wpRetype',
- 'tabindex' => '5',
- 'size' => '20',
- 'required',
- 'placeholder' => $this->getMsg( 'createacct-yourpasswordagain-ph' )->text()
- ) + User::passwordChangeInputAttribs() );
- ?>
- </div>
- <div>
- <?php if ( $this->data['useemail'] ) { ?>
- <label for='wpEmail'>
- <?php
- $this->msg( $this->data['emailrequired'] ?
- 'createacct-emailrequired' :
- 'createacct-emailoptional'
- );
- ?>
- </label>
- <?php
- echo Html::input( 'wpEmail', $this->data['email'], 'email', array(
- 'class' => 'mw-input loginText',
- 'id' => 'wpEmail',
- 'tabindex' => '6',
- 'size' => '20',
- 'placeholder' => $this->getMsg( 'createacct-email-ph' )->text()
- ) + ( $this->data['emailrequired'] ? array() : array( 'required' => '' ) ) );
- ?>
- <?php
- // VForm eliminates the prefsectiontip div tip:
- // prefs-help-email-required is redundant with the placeholder text
- // Doesn't show the wordy prefs-help-email
- // Doesn't show the wordy prefs-help-email-others
- ?>
- <?php } ?>
- </div>
- <?php if ( $this->data['userealname'] ) { ?>
- <div>
- <label for='wpRealName'><?php $this->msg( 'createacct-realname' ); ?></label>
- <input type='text' class='mw-input loginText' name="wpRealName" id="wpRealName"
- tabindex="7"
- value="<?php $this->text( 'realname' ); ?>" size='20' />
- <div class="prefsectiontip">
- <?php $this->msgWiki( 'prefs-help-realname' ); ?>
- </div>
- </div>
- <?php }
- if ( $this->data['usereason'] ) { ?>
- <div>
- <label for='wpReason'><?php $this->msg( 'createacct-reason' ); ?></label>
- <?php echo Html::input( 'wpReason', $this->data['reason'], 'text', array(
- 'class' => 'mw-input loginText',
- 'id' => 'wpReason',
- 'tabindex' => '8',
- 'size' => '20',
- 'placeholder' => $this->getMsg( 'createacct-reason-ph' )->text()
- ) ); ?>
- </div>
- <?php }
- $tabIndex = 9;
- if ( isset( $this->data['extraInput'] ) && is_array( $this->data['extraInput'] ) ) {
- foreach ( $this->data['extraInput'] as $inputItem ) { ?>
- <div>
- <?php
- // If it's a checkbox, output the whole thing (assume it has a msg).
- if ( $inputItem['type'] == 'checkbox' ) {
- ?>
- <label class="mw-ui-checkbox-label">
- <input
- name="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
- id="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
- type="checkbox" value="1"
- tabindex="<?php echo $tabIndex++; ?>"
- <?php if ( !empty( $inputItem['value'] ) ) {
- echo 'checked="checked"';
- } ?>
- >
- <?php $this->msg( $inputItem['msg'] ); ?>
- </label>
- <?php
- } else {
- // Not a checkbox.
- if ( !empty( $inputItem['msg'] ) ) {
- // Output the message label
- ?>
- <label for="<?php echo htmlspecialchars( $inputItem['name'] ); ?>">
- <?php $this->msgWiki( $inputItem['msg'] ); ?>
- </label>
- <?php
- }
- ?>
- <input
- type="<?php echo htmlspecialchars( $inputItem['type'] ); ?>"
- class="mw-input"
- name="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
- tabindex="<?php echo $tabIndex++; ?>"
- value="<?php echo htmlspecialchars( $inputItem['value'] ); ?>"
- id="<?php echo htmlspecialchars( $inputItem['name'] ); ?>"
- />
- <?php
- }
- if ( $inputItem['helptext'] !== false ) {
- ?>
- <div class="prefsectiontip">
- <?php $this->msgWiki( $inputItem['helptext'] ); ?>
- </div>
- <?php
- }
- ?>
- </div>
- <?php
- }
- }
- // JS attempts to move the image CAPTCHA below this part of the form,
- // so skip one index.
- $tabIndex++;
- ?>
- <div class="mw-submit">
- <input type='submit' class="mw-ui-button mw-ui-big mw-ui-block mw-ui-primary" name="wpCreateaccount" id="wpCreateaccount"
- tabindex="<?php echo $tabIndex++; ?>"
- value="<?php $this->msg( 'createacct-submit' ); ?>" />
- </div>
- <input type="hidden" id="useNew" name="useNew" value="1" />
-<?php if ( $this->haveData( 'uselang' ) ) { ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php } ?>
-<?php if ( $this->haveData( 'token' ) ) { ?><input type="hidden" name="wpCreateaccountToken" value="<?php $this->text( 'token' ); ?>" /><?php } ?>
-</form>
-</div>
-<div class="mw-createacct-benefits-container">
- <h2><?php $this->msg( 'createacct-benefit-heading' ); ?></h2>
- <div class="mw-createacct-benefits-list">
- <?php
- for ( $benefitIdx = 1; $benefitIdx <= $this->data['benefitCount']; $benefitIdx++ ) {
- // Pass each benefit's head text (by default a number) as a parameter to the body's message for PLURAL handling.
- $headUnescaped = $this->getMsg( "createacct-benefit-head$benefitIdx" )->text();
- ?>
- <div>
- <div class="mw-benefits-icon <?php $this->msg( "createacct-benefit-icon$benefitIdx" ); ?>"></div>
- <div class="mw-number-text">
- <h3><?php $this->msg( "createacct-benefit-head$benefitIdx" ); ?></h3>
- <p><?php echo $this->getMsg( "createacct-benefit-body$benefitIdx" )->params( $headUnescaped )->escaped(); ?></p>
- </div>
- </div>
- <?php
- }
- ?>
- </div>
-</div>
-</div>
-<?php
-
- }
-}
<?php
/**
- * Html form for user login.
+ * Html form for user login (since 1.22 with VForm appearance).
*
* 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
* @ingroup Templates
*/
-/**
- * @defgroup Templates Templates
- */
+class UserloginTemplate extends BaseTemplate {
-/**
- * HTML template for Special:Userlogin form
- * @ingroup Templates
- */
-class UserloginTemplate extends QuickTemplate {
function execute() {
- if ( $this->data['message'] ) {
+ global $wgCookieExpiration;
+ $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
?>
- <div class="<?php $this->text( 'messagetype' ); ?>box">
+<div class="mw-ui-container">
+ <?php
+ if ( $this->haveData( 'languages' ) ) {
+ ?>
+ <div id="languagelinks">
+ <p><?php $this->html( 'languages' ); ?></p>
+ </div>
+ <?php
+ }
+ ?>
+<div id="userloginForm">
+<form name="userlogin" class="mw-ui-vform" method="post" action="<?php $this->text( 'action' ); ?>">
+ <section class="mw-form-header">
+ <?php $this->html( 'header' ); /* extensions such as ConfirmEdit add form HTML here */ ?>
+ </section>
+ <?php
+
+ if ( $this->data['message'] ) {
+ ?>
+ <div class="<?php $this->text( 'messagetype' ); ?>box">
<?php
if ( $this->data['messagetype'] == 'error' ) {
- ?><strong><?php $this->msg( 'loginerror' ); ?></strong><br /><?php
- }
?>
- <?php $this->html( 'message' ); ?>
- </div>
- <div class="visualClear"></div><?php
-
- }
-?>
-<div id="loginstart"><?php $this->msgWiki( 'loginstart' ); ?></div>
-<div id="userloginForm">
-<form name="userlogin" method="post" action="<?php $this->text( 'action' ); ?>">
- <h2><?php $this->msg( 'login' ); ?></h2>
- <p id="userloginlink"><?php $this->html( 'link' ); ?></p>
- <?php $this->html( 'header' ); /* pre-table point for form plugins... */ ?>
- <div id="userloginprompt"><?php $this->msgWiki( 'loginprompt' ); ?></div>
-<?php
- if ( $this->haveData( 'languages' ) ) {
- ?><div id="languagelinks"><p><?php $this->html( 'languages' ); ?></p></div><?php
+ <strong><?php $this->msg( 'loginerror' ) ?></strong><br />
+ <?php
}
-?>
- <table>
- <tr>
- <td class="mw-label"><label for='wpName1'><?php $this->msg( 'yourname' ); ?></label></td>
- <td class="mw-input">
+ $this->html( 'message' );
+ ?>
+ </div>
+ <?php
+ }
+ ?>
+ <div>
+ <label for='wpName1'>
<?php
+ $this->msg( 'userlogin-yourname' );
+ if ( $this->data['secureLoginUrl'] ) {
+ echo Html::element( 'a', array(
+ 'href' => $this->data['secureLoginUrl'],
+ 'class' => 'mw-ui-flush-right mw-secure',
+ ), $this->getMsg( 'userlogin-signwithsecure' )->text() );
+ } ?>
+ </label>
+ <?php
+ $extraAttrs = array();
+ // Set focus to this field if its blank.
+ if ( !$this->data['name'] ) {
+ $extraAttrs['autofocus'] = '';
+ }
echo Html::input( 'wpName', $this->data['name'], 'text', array(
'class' => 'loginText',
'id' => 'wpName1',
'tabindex' => '1',
'size' => '20',
- 'required'
- # Can't do + array( 'autofocus' ) because + for arrays in PHP
- # only works right for associative arrays! Thanks, PHP.
- ) + ( $this->data['name'] ? array() : array( 'autofocus' => '' ) ) ); ?>
+ // 'required' is blacklisted for now in Html.php due to browser issues.
+ // Keeping here in case that changes
+ 'required',
+ 'placeholder' => $this->getMsg( 'userlogin-yourname-ph' )->text()
+ ) + $extraAttrs );
+ ?>
+ </div>
+ <div>
+ <label for='wpPassword1'>
+ <?php
+ $this->msg( 'userlogin-yourpassword' );
- </td>
- </tr>
- <tr>
- <td class="mw-label"><label for='wpPassword1'><?php $this->msg( 'yourpassword' ); ?></label></td>
- <td class="mw-input">
- <?php
+ if ( $this->data['useemail'] && $this->data['canreset'] && $this->data['resetlink'] === true ) {
+ echo Linker::link(
+ SpecialPage::getTitleFor( 'PasswordReset' ),
+ $this->getMsg( 'userlogin-resetpassword-link' )->parse(),
+ array( 'class' => 'mw-ui-flush-right' )
+ );
+ }
+ ?>
+ </label>
+ <?php
+ $extraAttrs = array();
+ // Set focus to this field if username is filled in.
+ if ( $this->data['name'] ) {
+ $extraAttrs['autofocus'] = '';
+ }
echo Html::input( 'wpPassword', null, 'password', array(
'class' => 'loginPassword',
'id' => 'wpPassword1',
'tabindex' => '2',
- 'size' => '20'
- ) + ( $this->data['name'] ? array( 'autofocus' ) : array() ) ); ?>
-
- </td>
- </tr>
-<?php
- if ( isset( $this->data['usedomain'] ) && $this->data['usedomain'] ) {
+ 'size' => '20',
+ 'placeholder' => $this->getMsg( 'userlogin-yourpassword-ph' )->text()
+ ) + $extraAttrs );
+ ?>
+ </div>
+ <?php
+ if ( isset( $this->data['usedomain'] ) && $this->data['usedomain'] ) {
$doms = "";
foreach ( $this->data['domainnames'] as $dom ) {
$doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
}
-?>
- <tr id="mw-user-domain-section">
- <td class="mw-label"><?php $this->msg( 'yourdomainname' ) ?></td>
- <td class="mw-input">
- <select name="wpDomain" value="<?php $this->text( 'domain' ) ?>"
+ ?>
+ <div id="mw-user-domain-section">
+ <label for='wpDomain'><?php $this->msg( 'yourdomainname' ); ?></label>
+ <select name="wpDomain" value="<?php $this->text( 'domain' ); ?>"
tabindex="3">
<?php echo $doms ?>
</select>
- </td>
- </tr>
-<?php
- }
+ </div>
+ <?php }
- if ( $this->haveData( 'extrafields' ) ) {
- echo $this->data['extrafields'];
- }
+ if ( $this->haveData( 'extrafields' ) ) {
+ echo $this->data['extrafields'];
+ } ?>
- if ( $this->data['canremember'] ) {
-?>
- <tr>
- <td></td>
- <td class="mw-input">
- <?php
- global $wgCookieExpiration;
- $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
- echo Xml::checkLabel(
- wfMessage( 'remembermypassword' )->numParams( $expirationDays )->text(),
- 'wpRemember',
- 'wpRemember',
- $this->data['remember'],
- array( 'tabindex' => '8' )
- )
- ?>
- </td>
- </tr>
-<?php
- }
+ <div>
- if ( $this->data['cansecurelogin'] ) {
-?>
- <tr>
- <td></td>
- <td class="mw-input">
- <?php
- echo Xml::checkLabel(
- wfMessage( 'securelogin-stick-https' )->text(),
- 'wpStickHTTPS',
- 'wpStickHTTPS',
- $this->data['stickHTTPS'],
- array( 'tabindex' => '9' )
- );
-?>
- </td>
- </tr>
-<?php
- }
-?>
- <tr>
- <td></td>
- <td class="mw-submit">
+ <?php if ( $this->data['canremember'] ) { ?>
+ <label class="mw-ui-checkbox-label">
+ <input name="wpRemember" type="checkbox" value="1" id="wpRemember" tabindex="4"
+ <?php if ( $this->data['remember'] ) {
+ echo 'checked="checked"';
+ } ?>
+ >
+ <?php echo $this->getMsg( 'userlogin-remembermypassword' )->numParams( $expirationDays )->escaped(); ?>
+ </label>
+ <?php } ?>
+ </div>
+
+ <?php if ( $this->data['cansecurelogin'] ) { ?>
+ <div>
+ <label class="mw-ui-checkbox-label">
+ <input name="wpStickHTTPS" type="checkbox" value="1" id="wpStickHTTPS" tabindex="5"
+ <?php if ( $this->data['stickHTTPS'] ) {
+ echo 'checked="checked"';
+ } ?>
+ >
+ <?php $this->msg( 'securelogin-stick-https' ); ?>
+ </label>
+ </div>
+ <?php } ?>
+ <div>
<?php
- echo Html::input( 'wpLoginAttempt', wfMessage( 'login' )->text(), 'submit', array(
+ echo Html::input( 'wpLoginAttempt', $this->getMsg( 'login' )->text(), 'submit', array(
'id' => 'wpLoginAttempt',
- 'tabindex' => '9'
+ 'tabindex' => '6',
+ 'class' => 'mw-ui-button mw-ui-big mw-ui-block mw-ui-primary'
) );
- if ( $this->data['useemail'] && $this->data['canreset'] ) {
- if ( $this->data['resetlink'] === true ) {
- echo ' ';
- echo Linker::link(
- SpecialPage::getTitleFor( 'PasswordReset' ),
- wfMessage( 'userlogin-resetlink' )
- );
- } elseif ( $this->data['resetlink'] === null ) {
- echo ' ';
- echo Html::input(
- 'wpMailmypassword',
- wfMessage( 'mailmypassword' )->text(),
- 'submit', array(
- 'id' => 'wpMailmypassword',
- 'tabindex' => '10'
- )
- );
- }
- }
-?>
- </td>
- </tr>
- </table>
-<?php
- if ( $this->haveData( 'uselang' ) ) {
- ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php
- }
-
- if ( $this->haveData( 'token' ) ) {
- ?><input type="hidden" name="wpLoginToken" value="<?php $this->text( 'token' ); ?>" /><?php
- }
-?>
+ ?>
+ </div>
+ <div id="mw-userlogin-help">
+ <?php echo $this->getMsg( 'userlogin-helplink' )->parse(); ?>
+ </div>
+ <?php if ( $this->haveData( 'createOrLoginHref' ) ) { ?>
+ <div id="mw-createaccount-cta">
+ <h3 id="mw-userloginlink"><?php $this->msg( 'userlogin-noaccount' ); ?><a href="<?php $this->text( 'createOrLoginHref' ); ?>" id="mw-createaccount-join" tabindex="7" class="mw-ui-button mw-ui-constructive"><?php $this->msg( 'userlogin-joinproject' ); ?></a></h3>
+ </div>
+ <?php } ?>
+<?php if ( $this->haveData( 'uselang' ) ) { ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php } ?>
+<?php if ( $this->haveData( 'token' ) ) { ?><input type="hidden" name="wpLoginToken" value="<?php $this->text( 'token' ); ?>" /><?php } ?>
</form>
</div>
-<div id="loginend"><?php $this->html( 'loginend' ); ?></div>
+</div>
<?php
-
}
}
+++ /dev/null
-<?php
-/**
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- * http://www.gnu.org/copyleft/gpl.html
- *
- * @file
- * @ingroup Templates
- */
-
-
-/**
- * Html form for user login with new VForm appearance.
- */
-class UserloginTemplateVForm extends BaseTemplate {
-
- function execute() {
- global $wgCookieExpiration;
- $expirationDays = ceil( $wgCookieExpiration / ( 3600 * 24 ) );
-?>
-<div class="mw-ui-container">
- <?php
- if ( $this->haveData( 'languages' ) ) {
- ?>
- <div id="languagelinks">
- <p><?php $this->html( 'languages' ); ?></p>
- </div>
- <?php
- }
- ?>
-<div id="userloginForm">
-<form name="userlogin" class="mw-ui-vform" method="post" action="<?php $this->text( 'action' ); ?>">
- <section class="mw-form-header">
- <?php $this->html( 'header' ); /* extensions such as ConfirmEdit add form HTML here */ ?>
- </section>
- <?php
-
- if ( $this->data['message'] ) {
- ?>
- <div class="<?php $this->text( 'messagetype' ); ?>box">
- <?php
- if ( $this->data['messagetype'] == 'error' ) {
- ?>
- <strong><?php $this->msg( 'loginerror' ) ?></strong><br />
- <?php
- }
- $this->html( 'message' );
- ?>
- </div>
- <?php
- }
- ?>
- <div>
- <label for='wpName1'>
- <?php
- $this->msg( 'userlogin-yourname' );
- if ( $this->data['secureLoginUrl'] ) {
- echo Html::element( 'a', array(
- 'href' => $this->data['secureLoginUrl'],
- 'class' => 'mw-ui-flush-right mw-secure',
- ), $this->getMsg( 'userlogin-signwithsecure' )->text() );
- } ?>
- </label>
- <?php
- $extraAttrs = array();
- // Set focus to this field if its blank.
- if ( !$this->data['name'] ) {
- $extraAttrs['autofocus'] = '';
- }
- echo Html::input( 'wpName', $this->data['name'], 'text', array(
- 'class' => 'loginText',
- 'id' => 'wpName1',
- 'tabindex' => '1',
- 'size' => '20',
- // 'required' is blacklisted for now in Html.php due to browser issues.
- // Keeping here in case that changes
- 'required',
- 'placeholder' => $this->getMsg( 'userlogin-yourname-ph' )->text()
- ) + $extraAttrs );
- ?>
- </div>
- <div>
- <label for='wpPassword1'>
- <?php
- $this->msg( 'userlogin-yourpassword' );
-
- if ( $this->data['useemail'] && $this->data['canreset'] && $this->data['resetlink'] === true ) {
- echo Linker::link(
- SpecialPage::getTitleFor( 'PasswordReset' ),
- $this->getMsg( 'userlogin-resetpassword-link' )->parse(),
- array( 'class' => 'mw-ui-flush-right' )
- );
- // TODO: remove the wpMailmypassword code branch from
- // templates/Userlogin.php as well; it is never executed and
- // doesn't work.
- }
- ?>
- </label>
- <?php
- $extraAttrs = array();
- // Set focus to this field if username is filled in.
- if ( $this->data['name'] ) {
- $extraAttrs['autofocus'] = '';
- }
- echo Html::input( 'wpPassword', null, 'password', array(
- 'class' => 'loginPassword',
- 'id' => 'wpPassword1',
- 'tabindex' => '2',
- 'size' => '20',
- 'placeholder' => $this->getMsg( 'userlogin-yourpassword-ph' )->text()
- ) + $extraAttrs );
- ?>
- </div>
- <?php
- if ( isset( $this->data['usedomain'] ) && $this->data['usedomain'] ) {
- $doms = "";
- foreach ( $this->data['domainnames'] as $dom ) {
- $doms .= "<option>" . htmlspecialchars( $dom ) . "</option>";
- }
- ?>
- <div id="mw-user-domain-section">
- <label for='wpDomain' class="pos-above"><?php $this->msg( 'yourdomain' ); ?></label>
- <select name="wpDomain" value="<?php $this->text( 'domain' ); ?>"
- tabindex="3">
- <?php echo $doms ?>
- </select>
- </div>
- <?php }
-
- if ( $this->haveData( 'extrafields' ) ) {
- echo $this->data['extrafields'];
- } ?>
-
- <div>
-
- <?php if ( $this->data['canremember'] ) { ?>
- <label class="mw-ui-checkbox-label">
- <input name="wpRemember" type="checkbox" value="1" id="wpRemember" tabindex="4"
- <?php if ( $this->data['remember'] ) {
- echo 'checked="checked"';
- } ?>
- >
- <?php echo $this->getMsg( 'userlogin-remembermypassword' )->numParams( $expirationDays )->escaped(); ?>
- </label>
- <?php } ?>
- </div>
-
- <?php if ( $this->data['cansecurelogin'] ) { ?>
- <div>
- <label class="mw-ui-checkbox-label">
- <input name="wpStickHTTPS" type="checkbox" value="1" id="wpStickHTTPS" tabindex="5"
- <?php if ( $this->data['stickHTTPS'] ) {
- echo 'checked="checked"';
- } ?>
- >
- <?php $this->msg( 'securelogin-stick-https' ); ?>
- </label>
- </div>
- <?php } ?>
- <div>
- <?php
- echo Html::input( 'wpLoginAttempt', $this->getMsg( 'login' )->text(), 'submit', array(
- 'id' => 'wpLoginAttempt',
- 'tabindex' => '6',
- 'class' => 'mw-ui-button mw-ui-big mw-ui-block mw-ui-primary'
- ) );
- ?>
- </div>
- <div id="mw-userlogin-help">
- <?php echo $this->getMsg( 'userlogin-helplink' )->parse(); ?>
- </div>
- <?php if ( $this->haveData( 'createOrLoginHref' ) ) { ?>
- <div id="mw-createaccount-cta">
- <h3 id="mw-userloginlink"><?php $this->msg( 'userlogin-noaccount' ); ?><a href="<?php $this->text( 'createOrLoginHref' ); ?>" id="mw-createaccount-join" tabindex="7" class="mw-ui-button mw-ui-constructive"><?php $this->msg( 'userlogin-joinproject' ); ?></a></h3>
- </div>
- <?php } ?>
- <input type="hidden" id="mw-useNew" name="useNew" value="1" />
-<?php if ( $this->haveData( 'uselang' ) ) { ?><input type="hidden" name="uselang" value="<?php $this->text( 'uselang' ); ?>" /><?php } ?>
-<?php if ( $this->haveData( 'token' ) ) { ?><input type="hidden" name="wpLoginToken" value="<?php $this->text( 'token' ); ?>" /><?php } ?>
-</form>
-</div>
-</div>
-<?php
- }
-}
}
/**
- * Verify the mime type
+ * Verify the mime type.
*
+ * @note Only checks that it is not an evil mime. The does it have
+ * correct extension given its mime type check is in verifyFile.
* @param string $mime representing the mime
* @return mixed true if the file is verified, an array otherwise
*/
return array( 'filetype-badmime', $mime );
}
- # XXX: Missing extension will be caught by validateName() via getTitle()
- if ( $this->mFinalExtension != '' && !$this->verifyExtension( $mime, $this->mFinalExtension ) ) {
- wfProfileOut( __METHOD__ );
- return array( 'filetype-mime-mismatch', $this->mFinalExtension, $mime );
- }
-
# Check IE type
$fp = fopen( $this->mTempPath, 'rb' );
$chunk = fread( $fp, 256 );
return true;
}
+
/**
* Verifies that it's ok to include the uploaded file
*
* @return mixed true of the file is verified, array otherwise.
*/
protected function verifyFile() {
+ global $wgVerifyMimeType;
+ wfProfileIn( __METHOD__ );
+
+ $status = $this->verifyPartialFile();
+ if ( $status !== true ) {
+ wfProfileOut( __METHOD__ );
+ return $status;
+ }
+
+ if ( $wgVerifyMimeType ) {
+ $this->mFileProps = FSFile::getPropsFromPath( $this->mTempPath, $this->mFinalExtension );
+ $mime = $this->mFileProps['file-mime'];
+
+ # XXX: Missing extension will be caught by validateName() via getTitle()
+ if ( $this->mFinalExtension != '' && !$this->verifyExtension( $mime, $this->mFinalExtension ) ) {
+ wfProfileOut( __METHOD__ );
+ return array( 'filetype-mime-mismatch', $this->mFinalExtension, $mime );
+ }
+ }
+
+
+ $handler = MediaHandler::getHandler( $mime );
+ if ( $handler ) {
+ $handlerStatus = $handler->verifyUpload( $this->mTempPath );
+ if ( !$handlerStatus->isOK() ) {
+ $errors = $handlerStatus->getErrorsArray();
+ wfProfileOut( __METHOD__ );
+ return reset( $errors );
+ }
+ }
+
+ wfRunHooks( 'UploadVerifyFile', array( $this, $mime, &$status ) );
+ if ( $status !== true ) {
+ wfProfileOut( __METHOD__ );
+ return $status;
+ }
+
+ wfDebug( __METHOD__ . ": all clear; passing.\n" );
+ wfProfileOut( __METHOD__ );
+ return true;
+ }
+
+ /**
+ * A verification routine suitable for partial files
+ *
+ * Runs the blacklist checks, but not any checks that may
+ * assume the entire file is present.
+ *
+ * @return Mixed true for valid or array with error message key.
+ */
+ protected function verifyPartialFile() {
global $wgAllowJavaUploads, $wgDisableUploadScriptChecks;
wfProfileIn( __METHOD__ );
- # get the title, even though we are doing nothing with it, because
- # we need to populate mFinalExtension
+ # getTitle() sets some internal parameters like $this->mFinalExtension
$this->getTitle();
$this->mFileProps = FSFile::getPropsFromPath( $this->mTempPath, $this->mFinalExtension );
return array( 'uploadvirus', $virus );
}
- $handler = MediaHandler::getHandler( $mime );
- if ( $handler ) {
- $handlerStatus = $handler->verifyUpload( $this->mTempPath );
- if ( !$handlerStatus->isOK() ) {
- $errors = $handlerStatus->getErrorsArray();
- wfProfileOut( __METHOD__ );
- return reset( $errors );
- }
- }
-
- wfRunHooks( 'UploadVerifyFile', array( $this, $mime, &$status ) );
- if ( $status !== true ) {
- wfProfileOut( __METHOD__ );
- return $status;
- }
-
- wfDebug( __METHOD__ . ": all clear; passing.\n" );
wfProfileOut( __METHOD__ );
return true;
}
if ( $status->isGood() ) {
if ( $watch ) {
- $user->addWatch( $this->getLocalFile()->getTitle() );
+ WatchAction::doWatch( $this->getLocalFile()->getTitle(), $user, WatchedItem::IGNORE_USER_RIGHTS );
}
wfRunHooks( 'UploadComplete', array( &$this ) );
}
if ( $this->mTitle !== false ) {
return $this->mTitle;
}
-
/* Assume that if a user specified File:Something.jpg, this is an error
* and that the namespace prefix needs to be stripped of.
*/
// Stash file is the called on creating a new chunk session:
$this->mChunkIndex = 0;
$this->mOffset = 0;
+
+ $this->verifyChunk();
// Create a local stash target
$this->mLocalFile = parent::stashFile();
// Update the initial file offset (based on file size)
return $status;
}
wfDebugLog( 'fileconcatenate', "Combined $i chunks in $tAmount seconds.\n" );
+
+ $this->mTempPath = $tmpPath; // file system path
+ $this->mFileSize = filesize( $this->mTempPath ); //Since this was set for the last chunk previously
+ $ret = $this->verifyUpload();
+ if ( $ret['status'] !== UploadBase::OK ) {
+ wfDebugLog( 'fileconcatenate', "Verification failed for chunked upload" );
+ $status->fatal( $this->getVerificationErrorCode( $ret['status'] ) );
+ return $status;
+ }
+
// Update the mTempPath and mLocalFile
// (for FileUpload or normal Stash to take over)
- $this->mTempPath = $tmpPath; // file system path
$tStart = microtime( true );
$this->mLocalFile = parent::stashFile( $this->user );
$tAmount = microtime( true ) - $tStart;
if ( $preAppendOffset == $offset ) {
// Update local chunk index for the current chunk
$this->mChunkIndex++;
+ try {
+ # For some reason mTempPath is set to first part
+ $oldTemp = $this->mTempPath;
+ $this->mTempPath = $chunkPath;
+ $this->verifyChunk();
+ $this->mTempPath = $oldTemp;
+ } catch ( UploadChunkVerificationException $e ) {
+ return Status::newFatal( $e->getMessage() );
+ }
$status = $this->outputChunk( $chunkPath );
if ( $status->isGood() ) {
// Update local offset:
}
return $this->mFileKey . '.' . $index;
}
+
+ /**
+ * Verify that the chunk isn't really an evil html file
+ *
+ * @throws UploadChunkVerificationException
+ */
+ private function verifyChunk() {
+ // Rest mDesiredDestName here so we verify the name as if it were mFileKey
+ $oldDesiredDestName = $this->mDesiredDestName;
+ $this->mDesiredDestName = $this->mFileKey;
+ $this->mTitle = false;
+ $res = $this->verifyPartialFile();
+ $this->mDesiredDestName = $oldDesiredDestName;
+ $this->mTitle = false;
+ if( is_array( $res ) ) {
+ throw new UploadChunkVerificationException( $res[0] );
+ }
+ }
}
class UploadChunkZeroLengthFileException extends MWException {};
class UploadChunkFileException extends MWException {};
+class UploadChunkVerificationException extends MWException {};
return $this->mFileProps['sha1'];
}
- /**
- * File has been previously verified so no need to do so again.
- *
- * @return bool
+ /*
+ * protected function verifyFile() inherited
*/
- protected function verifyFile() {
- return true;
- }
/**
* Stash the file.
* @return string
*/
public static function getExtensionForPath( $path ) {
+ global $wgFileBlacklist;
// Does this have an extension?
$n = strrpos( $path, '.' );
$extension = null;
throw new UploadStashFileException( "extension is null" );
}
- return File::normalizeExtension( $extension );
+ $extension = File::normalizeExtension( $extension );
+ if ( in_array( $extension, $wgFileBlacklist ) ) {
+ // The file should already be checked for being evil.
+ // However, if somehow we got here, we definitely
+ // don't want to give it an extension of .php and
+ // put it in a web accesible directory.
+ return '';
+ }
+ return $extension;
}
/**
}
-class UploadStashNotAvailableException extends MWException {};
-class UploadStashFileNotFoundException extends MWException {};
-class UploadStashBadPathException extends MWException {};
-class UploadStashFileException extends MWException {};
-class UploadStashZeroLengthFileException extends MWException {};
-class UploadStashNotLoggedInException extends MWException {};
-class UploadStashWrongOwnerException extends MWException {};
-class UploadStashNoSuchKeyException extends MWException {};
+class UploadStashException extends MWException {};
+class UploadStashNotAvailableException extends UploadStashException {};
+class UploadStashFileNotFoundException extends UploadStashException {};
+class UploadStashBadPathException extends UploadStashException {};
+class UploadStashFileException extends UploadStashException {};
+class UploadStashZeroLengthFileException extends UploadStashException {};
+class UploadStashNotLoggedInException extends UploadStashException {};
+class UploadStashWrongOwnerException extends UploadStashException {};
+class UploadStashNoSuchKeyException extends UploadStashException {};
# 5.1, respectively.
if ( !function_exists( 'version_compare' ) || version_compare( phpversion(), '5.3.2' ) < 0 ) {
// We need to use dirname( __FILE__ ) here cause __DIR__ is PHP5.3+
- require( dirname( __FILE__ ) . '/includes/PHPVersionError.php' );
+ require dirname( __FILE__ ) . '/includes/PHPVersionError.php';
wfPHPVersionError( 'index.php' );
}
# Initialise common code. This gives us access to GlobalFunctions, the
# AutoLoader, and the globals $wgRequest, $wgOut, $wgUser, $wgLang and
# $wgContLang, amongst others; it does *not* load $wgTitle
-require ( __DIR__ . '/includes/WebStart.php' );
+require __DIR__ . '/includes/WebStart.php';
$mediaWiki = new MediaWiki();
$mediaWiki->run();
# Read language names
global $wgLanguageNames;
-require_once( __DIR__ . '/Names.php' );
+require_once __DIR__ . '/Names.php';
if ( function_exists( 'mb_strtoupper' ) ) {
mb_internal_encoding( 'UTF-8' );
public $mVariants, $mCode, $mLoaded = false;
public $mMagicExtensions = array(), $mMagicHookDone = false;
- private $mHtmlCode = null;
+ private $mHtmlCode = null, $mParentLanguage = false;
public $dateFormatStrings = array();
public $mExtendedSpecialPageAliases;
'seconds' => 1,
);
+ /**
+ * Cache for language fallbacks.
+ * @see Language::getFallbacksIncludingSiteLanguage
+ * @since 1.21
+ * @var array
+ */
+ static private $fallbackLanguageCache = array();
+
/**
* Get a cached or new language object for a given language code
* @param $code String
public static function isKnownLanguageTag( $tag ) {
static $coreLanguageNames;
+ // Quick escape for invalid input to avoid exceptions down the line
+ // when code tries to process tags which are not valid at all.
+ if ( !self::isValidBuiltInCode( $tag ) ) {
+ return false;
+ }
+
if ( $coreLanguageNames === null ) {
- include( MWInit::compiledPath( 'languages/Names.php' ) );
+ include MWInit::compiledPath( 'languages/Names.php' );
}
if ( isset( $coreLanguageNames[$tag] )
}
if ( file_exists( "$IP/languages/classes/$class.php" ) ) {
- include_once( "$IP/languages/classes/$class.php" );
+ include_once "$IP/languages/classes/$class.php";
}
}
static $coreLanguageNames;
if ( $coreLanguageNames === null ) {
- include( MWInit::compiledPath( 'languages/Names.php' ) );
+ include MWInit::compiledPath( 'languages/Names.php' );
}
$names = array();
* @param MWTimestamp $relativeTo Base timestamp
* @param User $user User preferences to use
* @return string Human timestamp
- * @since 1.21
+ * @since 1.22
*/
public function getHumanTimestamp( MWTimestamp $ts, MWTimestamp $relativeTo, User $user ) {
$diff = $ts->diff( $relativeTo );
}
/**
+ * Get all magic words from cache.
* @return array
*/
function getMagicWords() {
return self::$dataCache->getItem( $this->mCode, 'magicWords' );
}
+ /**
+ * Run the LanguageGetMagic hook once.
+ */
protected function doMagicHook() {
if ( $this->mMagicHookDone ) {
return;
* @param $mw
*/
function getMagic( $mw ) {
- $this->doMagicHook();
+ // Saves a function call
+ if ( ! $this->mMagicHookDone ) {
+ $this->doMagicHook();
+ }
if ( isset( $this->mMagicExtensions[$mw->mId] ) ) {
$rawEntry = $this->mMagicExtensions[$mw->mId];
} else {
- $magicWords = $this->getMagicWords();
- if ( isset( $magicWords[$mw->mId] ) ) {
- $rawEntry = $magicWords[$mw->mId];
- } else {
- $rawEntry = false;
- }
+ $rawEntry = self::$dataCache->getSubitem(
+ $this->mCode, 'magicWords', $mw->mId );
}
if ( !is_array( $rawEntry ) ) {
* @return string Correct form of plural for $count in this language
*/
function convertPlural( $count, $forms ) {
- if ( !count( $forms ) ) {
- return '';
- }
-
// Handle explicit n=pluralform cases
foreach ( $forms as $index => $form ) {
if ( preg_match( '/\d+=/i', $form ) ) {
unset( $forms[$index] );
}
}
+
$forms = array_values( $forms );
+ if ( !count( $forms ) ) {
+ return '';
+ }
$pluralForm = $this->getPluralRuleIndexNumber( $count );
$pluralForm = min( $pluralForm, count( $forms ) - 1 );
return $this;
}
+ /**
+ * Get the "parent" language which has a converter to convert a "compatible" language
+ * (in another variant) to this language (eg. zh for zh-cn, but not en for en-gb).
+ *
+ * @return Language|null
+ * @since 1.22
+ */
+ public function getParentLanguage() {
+ if ( $this->mParentLanguage !== false ) {
+ return $this->mParentLanguage;
+ }
+
+ $pieces = explode( '-', $this->getCode() );
+ $code = $pieces[0];
+ if ( !in_array( $code, LanguageConverter::$languagesWithVariants ) ) {
+ $this->mParentLanguage = null;
+ return null;
+ }
+ $lang = Language::factory( $code );
+ if ( !$lang->hasVariant( $this->getCode() ) ) {
+ $this->mParentLanguage = null;
+ return null;
+ }
+
+ $this->mParentLanguage = $lang;
+ return $lang;
+ }
+
/**
* Get the RFC 3066 code for this language object
*
*/
public function setCode( $code ) {
$this->mCode = $code;
- // Ensure we don't leave an incorrect html code lying around
+ // Ensure we don't leave incorrect cached data lying around
$this->mHtmlCode = null;
+ $this->mParentLanguage = false;
}
/**
}
}
+ /**
+ * Get the ordered list of fallback languages, ending with the fallback
+ * language chain for the site language.
+ *
+ * @since 1.22
+ * @param string $code Language code
+ * @return array array( fallbacks, site fallbacks )
+ */
+ public static function getFallbacksIncludingSiteLanguage( $code ) {
+ global $wgLanguageCode;
+
+ // Usually, we will only store a tiny number of fallback chains, so we
+ // keep them in static memory.
+ $cacheKey = "{$code}-{$wgLanguageCode}";
+
+ if ( !array_key_exists( $cacheKey, self::$fallbackLanguageCache ) ) {
+ $fallbacks = self::getFallbacksFor( $code );
+
+ // Append the site's fallback chain, including the site language itself
+ $siteFallbacks = self::getFallbacksFor( $wgLanguageCode );
+ array_unshift( $siteFallbacks, $wgLanguageCode );
+
+ // Eliminate any languages already included in the chain
+ $siteFallbacks = array_diff( $siteFallbacks, $fallbacks );
+
+ self::$fallbackLanguageCache[$cacheKey] = array( $fallbacks, $siteFallbacks );
+ }
+ return self::$fallbackLanguageCache[$cacheKey];
+ }
+
/**
* Get all messages for a given language
* WARNING: this may take a long time. If you just need all message *keys*
/**
* Get the plural rule types for the language
- * @since 1.21
+ * @since 1.22
* @return array Associative array with plural form number and plural rule type as key-value pairs
*/
public function getPluralRuleTypes() {
* Find the plural rule type appropriate for the given number
* For example, if the language is set to Arabic, getPluralType(5) should
* return 'few'.
- * @since 1.21
+ * @since 1.22
* @return string The name of the plural rule type, e.g. one, two, few, many
*/
public function getPluralRuleType( $number ) {
// this one is needed when the text is inside an HTML markup
$htmlfix = '|<[^>]+$|^[^<>]*>';
- // disable convert to variants between <code></code> tags
+ // disable convert to variants between <code> tags
$codefix = '<code>.+?<\/code>|';
- // disable convertsion of <script type="text/javascript"> ... </script>
+ // disable conversion of <script> tags
$scriptfix = '<script.*?>.*?<\/script>|';
- // disable conversion of <pre xxxx> ... </pre>
+ // disable conversion of <pre> tags
$prefix = '<pre.*?>.*?<\/pre>|';
$reg = '/' . $codefix . $scriptfix . $prefix .
* and may return false in this case (so this title conversion rule
* will be ignored and the original title is shown).
*
- * @since 1.21
+ * @since 1.22
* @param $variant The variant code to display page title in
* @return String|false The converted title or false if just page name
*/
'ba' => 'башҡортса', # Bashkir
'bar' => 'Boarisch', # Bavarian (Austro-Bavarian and South Tyrolean)
'bat-smg' => 'žemaitėška', # Samogitian (deprecated code, 'sgs' in ISO 693-3 since 2010-06-30 )
+ 'bbc' => 'Batak Toba', # Batak Toba (falls back to bbc-latn)
+ 'bbc-latn' => 'Batak Toba', # Batak Toba
'bcc' => 'بلوچی مکرانی', # Southern Balochi
'bcl' => 'Bikol Central', # Bikol: Central Bicolano language
'be' => 'беларуская', # Belarusian normative
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
-require_once( __DIR__ . '/LanguageZh.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
+require_once __DIR__ . '/LanguageZh.php';
/**
* @ingroup Language
}
function loadDefaultTables() {
- require( __DIR__ . "/../../includes/ZhConversion.php" );
+ require __DIR__ . '/../../includes/ZhConversion.php';
$this->mTables = array(
'gan-hans' => new ReplacementArray( $zh2Hans ),
'gan-hant' => new ReplacementArray( $zh2Hant ),
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
/**
* Conversion script between Latin and Syllabics for Inuktitut.
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
-require_once( __DIR__ . '/LanguageKk_cyrl.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
+require_once __DIR__ . '/LanguageKk_cyrl.php';
define( 'KK_C_UC', 'АӘБВГҒДЕЁЖЗИЙКҚЛМНҢОӨПРСТУҰҮФХҺЦЧШЩЪЫІЬЭЮЯ' ); # Kazakh Cyrillic uppercase
define( 'KK_C_LC', 'аәбвгғдеёжзийкқлмнңоөпрстуұүфхһцчшщъыіьэюя' ); # Kazakh Cyrillic lowercase
}
function loadDefaultTables() {
- // require( __DIR__."/../../includes/KkConversion.php" );
+ // require __DIR__."/../../includes/KkConversion.php";
// Placeholder for future implementing. Remove variables declarations
// after generating KkConversion.php
$kk2Cyrl = array();
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
-require_once( __DIR__ . '/LanguageKu_ku.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
+require_once __DIR__ . '/LanguageKu_ku.php';
/**
* Kurdish converter routines
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
/**
* Conversion script between Latin and Tifinagh for Tachelhit.
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
-require_once( __DIR__ . '/LanguageSr_ec.php' );
-require_once( __DIR__ . '/LanguageSr_el.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
+require_once __DIR__ . '/LanguageSr_ec.php';
+require_once __DIR__ . '/LanguageSr_el.php';
/**
* There are two levels of conversion for Serbian: the script level
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
/**
* Converts Tajiki to latin orthography
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
/**
* @ingroup Language
* @ingroup Language
*/
-require_once( __DIR__ . '/../LanguageConverter.php' );
-require_once( __DIR__ . '/LanguageZh_hans.php' );
+require_once __DIR__ . '/../LanguageConverter.php';
+require_once __DIR__ . '/LanguageZh_hans.php';
/**
* @ingroup Language
}
function loadDefaultTables() {
- require( __DIR__ . "/../../includes/ZhConversion.php" );
+ require __DIR__ . "/../../includes/ZhConversion.php";
$this->mTables = array(
'zh-hans' => new ReplacementArray( $zh2Hans ),
'zh-hant' => new ReplacementArray( $zh2Hant ),
'disclaimers' => 'Beunantah',
'disclaimerpage' => 'Project:Beunantah umom',
'edithelp' => 'Bantu andam',
-'edithelppage' => 'Help:Andam',
'helppage' => 'Help:Asoë',
'mainpage' => 'Ôn Keuë',
'mainpage-description' => 'Ôn Keuë',
'viewprevnext' => 'Eu ($1 {{int:pipe-separator}} $2)($3)',
'searchmenu-exists' => "'''Na on ngon nan \"[[:\$1]]\" bak wiki nyoe.'''",
'searchmenu-new' => "'''Peugöt ôn \"[[:\$1]]\" bak wiki nyoë!'''",
-'searchhelp-url' => 'Help:Asoë',
'searchprofile-articles' => 'Ôn asoë',
'searchprofile-project' => 'Ôn Beunantu ngön Buët',
'searchprofile-images' => 'Multimedia',
'disclaimers' => 'عدم مسؤولية',
'disclaimerpage' => 'Project:عدم مسؤولية عام',
'edithelp' => 'مساعدة التحرير',
-'edithelppage' => 'Help:تحرير',
'helppage' => 'Help:محتويات',
'mainpage' => 'الصفحة الرئيسية',
'mainpage-description' => 'الصفحة الرئيسية',
# Special:PasswordReset
'passwordreset' => 'إعادة ضبط كلمة السر',
-'passwordreset-text' => 'أكمل هذا النموذج لتتلقى بريدا إلكترونيا يذكر بتفاصيل حسابك.',
'passwordreset-legend' => 'إعادة تعيين كلمة السر',
'passwordreset-disabled' => 'عُطّلت إعادة تعيين كلمة السر على هذه الويكي.',
-'passwordreset-pretext' => '{{PLURAL:$1||أدخل أحد أجزاء البيانات أدناه}}',
'passwordreset-username' => 'اسم المستخدم:',
'passwordreset-domain' => 'النطاق:',
'passwordreset-capture' => 'أأعرض البريد الإلكتروني الناتج؟',
* @author Kaganer
* @author Manie
* @author Naudefj
+ * @author Nemo bis
* @author Purodha
* @author Reedy
* @author SPQRobin
'oct' => 'Okt',
'nov' => 'Nov',
'dec' => 'Des',
+'january-date' => '$1 Januarie',
+'february-date' => '$1 Februarie',
+'march-date' => '$1 Maart',
+'april-date' => '$1 April',
+'may-date' => '$1 Mei',
+'june-date' => '$1 Junie',
+'july-date' => '$1 Julie',
+'august-date' => '$1 Augustus',
+'september-date' => '$1 September',
+'october-date' => '$1 Oktober',
+'november-date' => '$1 November',
+'december-date' => '$1 Desember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorie|Kategorieë}}',
'disclaimers' => 'Voorbehoud',
'disclaimerpage' => 'Project:Voorwaardes',
'edithelp' => 'Wysigingshulp',
-'edithelppage' => 'Help:Wysig',
'helppage' => 'Help:Inhoud',
'mainpage' => 'Tuisblad',
'mainpage-description' => 'Tuisblad',
'badtitletext' => "Die bladsytitel waarvoor gevra is, is ongeldig, leeg, of
'n verkeerd geskakelde tussen-taal of tussen-wiki titel.",
'perfcached' => "Die volgende inligting is gekas en mag dalk nie op datum wees nie. 'n Maksimum van {{PLURAL:$1|een resultaat|$1 resultate}} is in die kas beskikbaar.",
-'perfcachedts' => "Die volgende data is gekas en is laas op $1 bygewerk. 'n Maksimum van {{PLURAL:$4|een resultaat|$4 resultate}} is in die kas beskikbaar.",
+'perfcachedts' => "Die volgende data is gekas en is laas op $2 om $3 bygewerk. 'n Maksimum van {{PLURAL:$4|een resultaat|$4 resultate}} is in die kas beskikbaar.",
'querypage-no-updates' => 'Opdatering van hierdie bladsy is huidiglik afgeskakel. Inligting hier sal nie tans verfris word nie.',
'wrong_wfQuery_params' => 'Foutiewe parameters na wfQuery()<br />
Funksie: $1<br />
'nocookiesfornew' => 'Die gebruiker is nie geskep nie omdat die oorsprong nie bevestig kon word nie.
Maak seker dat u koekies aangeskakel het, herlaai die bladsy en probeer dan weer.',
'noname' => 'Ongeldige gebruikersnaam.',
-'loginsuccesstitle' => 'Suksesvolle intekening',
+'loginsuccesstitle' => 'Suksesvolle aanmelding',
'loginsuccess' => 'U is nou by {{SITENAME}} as "$1" ingeteken.',
'nosuchuser' => 'Die gebruiker "$1" bestaan nie.
Gebruikersname is gevoelig vir hoofletters.
# Special:PasswordReset
'passwordreset' => 'Wagwoord herstel',
-'passwordreset-text' => 'Voltooi hierdie vorm om u wagwoord te herstel.',
+'passwordreset-text-one' => 'Voltooi hierdie vorm om u wagwoord te herstel.',
+'passwordreset-text-many' => '{{PLURAL:$1|Vul een van die velde in om u wagwoord te herstel.}}',
'passwordreset-legend' => 'Kry nuwe wagwoord',
'passwordreset-disabled' => 'Die herskik van U wagwoord is gedeaktiveer op hierdie wiki.',
'passwordreset-emaildisabled' => 'E-posfunksies is afgeskakel op hierdie wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1| | Voer een van die onderstaande velde in}}',
'passwordreset-username' => 'Gebruiker:',
'passwordreset-domain' => 'Domein:',
'passwordreset-capture' => 'Wys resulterende e-pos?',
'summary-preview' => 'Opsommingsvoorskou:',
'subject-preview' => 'Onderwerp/opskrif voorskou:',
'blockedtitle' => 'Gebruiker is geblokkeer',
-'blockedtext' => "'''U gebruikersnaam of IP-adres is geblokkeer.'''
+'blockedtext' => "'''U gebruiker of IP-adres is geblokkeer.'''
-Die blokkering is deur $1 gedoen.
-Die rede gegee is ''$2''.
+Die blokkade is deur $1 uitgevoer.
+Die rede verskaf is ''$2''.
* Begin van blokkade: $8
* Blokkade eindig: $6
-* Blokkering gemik op: $7
+* Blokkade gemik teen: $7
-U mag $1 of een van die ander [[{{MediaWiki:Grouppage-sysop}}|administreerders]] kontak om dit te bespreek.
-U kan nie die 'e-pos hierdie gebruiker'-opsie gebruik tensy 'n geldige e-pos adres gespesifiseer is in u [[Special:Preferences|rekening voorkeure]] en u nie geblokkeer is om dit te gebruik nie.
-U huidige IP-adres is $3, en die blokkering ID is #$5.
-Sluit asseblief een of albei hierdie verwysings in by enige navrae.",
+U mag $1 of een van die ander [[{{MediaWiki:Grouppage-sysop}}|administrateurs]] kontak om dit te bespreek.
+U kan nie die 'e-pos hierdie gebruiker'-opsie gebruik nie, tensy 'n geldige e-posadres in u [[Special:Preferences|voorkeure]] gespesifiseer is en u nie geblokkeer is om dit te gebruik nie.
+U huidige IP-adres is $3 en die blokkadenommer is #$5.
+Sluit asseblief een of albei hierdie verwysings by enige navrae in.",
'autoblockedtext' => "U IP-adres is outomaties geblok omdat dit deur 'n gebruiker gebruik was, wat deur $1 geblokkeer is.
Die rede verskaf is:
Dit lyk of dit verwyder is.',
'edit-conflict' => 'Wysigingskonflik',
'edit-no-change' => 'U wysiging was geignoreer omdat die teks nie verander is nie.',
+'postedit-confirmation' => 'U wysigings is gestoor.',
'edit-already-exists' => 'Die bladsy is nie geskep nie.
Dit bestaan alreeds.',
'defaultmessagetext' => 'Verstekteks',
'invalid-content-data' => 'Ongeldige inhoud',
'content-not-allowed-here' => '"$1" word nie op bladsy [[$2]] toegelaat nie.',
'editwarning-warning' => 'As u hierdie bladsy verlaat, verloor u moontlik al die wysigings wat u aangebring het.
-Indien u aangemeld is, kan u hierdie waarskuwing in die "{{int:prefs-editing}}"-afdeling van u voorkeure afskakel.',
+Indien u aangemeld is, kan u hierdie waarskuwing in die "Wysigings"-afdeling van u voorkeure afskakel.',
# Content models
'content-model-wikitext' => 'Wikiteks',
'searchmenu-legend' => 'Soekopsies',
'searchmenu-exists' => "'''Daar is reeds 'n bladsy genaamd \"[[:\$1]]\" op die wiki'''",
'searchmenu-new' => "'''Skep die bladsy \"[[:\$1]]\" op hierdie wiki'''",
-'searchhelp-url' => 'Help:Inhoud',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Wys bladsye wat met die voorvoegsel begin]]',
'searchprofile-articles' => 'Inhoudelike bladsye',
'searchprofile-project' => 'Hulp- en projekbladsye',
'reuploaddesc' => 'Keer terug na die laaivorm.',
'upload-tryagain' => 'Stuur gewysigde lêerbeskrywing',
'uploadnologin' => 'Nie ingeteken nie',
-'uploadnologintext' => 'U moet [[Special:UserLogin|aanmeld]] alvorens u lêers kan laai.',
+'uploadnologintext' => 'U moet $1 alvorens u lêers kan laai.',
'upload_directory_missing' => 'Die oplaaigids ($1) bestaan nie en kon nie deur die webbediener geskep word nie.',
'upload_directory_read_only' => 'Die webbediener kan nie na die oplaai gids ($1) skryf nie.',
'uploaderror' => 'Laaifout',
'notvisiblerev' => 'Weergawe is verwyder',
'watchnochange' => 'Geen item op die dophoulys is geredigeer in die gekose periode nie.',
'watchlist-details' => '{{PLURAL:$1|$1 bladsy|$1 bladsye}} in u dophoulys, besprekingsbladsye uitgesluit.',
-'wlheader-enotif' => '* E-pos notifikasie is aangeskakel.',
-'wlheader-showupdated' => "* Bladsye wat verander is sedert u hulle laas besoek het word in '''vetdruk''' uitgewys",
+'wlheader-enotif' => 'E-pos kennisgewings is aangeskakel.',
+'wlheader-showupdated' => "Bladsye wat verander is sedert u hulle laas besoek het word in '''vetdruk''' uitgewys.",
'watchmethod-recent' => 'Kontroleer onlangse wysigings aan bladsye op dophoulys',
'watchmethod-list' => 'kontroleer bladsye op dophoulys vir wysigings',
'watchlistcontains' => 'Jou dophoulys bevat $1 {{PLURAL:$1|bladsy|bladsye}}.',
'blockip' => 'Blokkeer gebruiker',
'blockip-title' => 'Blokkeer gebruiker',
'blockip-legend' => 'Blokkeer gebruiker of IP-adres',
-'blockiptext' => "Gebruik die vorm hier onder om skryftoegang van 'n sekere IP-adres te blok.
-Dit moet net gedoen word om vandalisme te voorkom en in ooreenstemming met [[{{MediaWiki:Policy-url}}|{{SITENAME}}-beleid]].
+'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.
Vul 'n spesifieke rede hier onder in (haal byvoorbeeld spesifieke bladsye wat gevandaliseer is, aan).",
'ipadressorusername' => 'IP-adres of gebruikersnaam:',
'ipbexpiry' => 'Duur:',
'tog-shownumberswatching' => 'Shfaqe numrin e përdoruesve mbikëqyrës',
'tog-oldsig' => 'Parapamja e nënshkrimit ekzistues:',
'tog-fancysig' => 'Trajto nënshkrimin si tekst (pa vegëz automatike)',
-'tog-externaleditor' => 'Përdor program të jashtëm për redaktim (vetëm për eksperta, lyp përcaktime speciale në kompjuterin tuej)',
-'tog-externaldiff' => 'Përdor program të jashtëm për dallime (vetëm për eksperta, lyp përcaktime speciale në kompjuterin tuej)',
'tog-showjumplinks' => 'Lejo lidhjet é afrueshmerisë "kapërce tek"',
'tog-uselivepreview' => 'Trego parapamjén meniheré (JavaScript) (Eksperimentale)',
'tog-forceeditsummary' => 'Pyetem kur e le përmbledhjen e redaktimit zbrazt',
'tog-showhiddencats' => 'Trego kategoritë e mshefta',
'tog-noconvertlink' => 'Mos lejo konvertimin e titullit vegëz',
'tog-norollbackdiff' => 'Trego ndryshimin mbas procedurës së kthimit mbrapa',
+'tog-useeditwarning' => 'Paralajmëron mua kur unë të lë një redakto faqe me ndryshimet e para shpëtimit',
'underline-always' => 'gjithmonë',
'underline-never' => 'kurrë',
'disclaimers' => 'Shfajsime',
'disclaimerpage' => 'Project:Shfajsimet e përgjithshme',
'edithelp' => 'Ndihmë për redaktim',
-'edithelppage' => 'Help:Redaktimi',
'helppage' => 'Help:Përmbajtja',
'mainpage' => 'Faqja kryesore',
'mainpage-description' => 'Faqja Kryesore',
'edit-no-change' => 'Redaktimi juaj është anashkaluar pasi që asnjë ndryshim nuk u bë në tekst.',
'edit-already-exists' => 'Faqja nuk mundej të hapet.
Ajo tanimë ekziston.',
+'editwarning-warning' => 'Duke e lënë këtë faqe mund të bëjë që ju të humbni ndonjë ndryshim që keni bërë. Nëse ju jeni regjistruar, ju mund ta çaktivizoni këtë paralajmërim në "Tue redaktue" seksionin e preferencave tuaja.',
# Parser/template warnings
'expensive-parserfunction-warning' => 'Kujdes: Kjo faqe ka shumë kërkesa që kërkojnë analizë gramatikore të kushtueshme për sistemin.
'searchmenu-legend' => 'Opcionet e kërkimit',
'searchmenu-exists' => "'''Në këtë wiki âsht nji faqe me titullin \"[[:\$1]]\"'''",
'searchmenu-new' => "'''Krijo faqen \"[[:\$1]]\" në këtë wiki!'''",
-'searchhelp-url' => 'Help:Përmbajtja',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Shfleto faqet me këtë prefiks]]',
'searchprofile-articles' => 'Faqet me përmbajtje',
'searchprofile-project' => 'Faqet e ndihmës dhe projekteve',
Ndërkohë mundeni me lypë me Google.
Vini re se indeksat e tyne të përmbajtjes së {{SITENAME}} munden me qenë të vjetëruem.',
-# Quickbar
-'qbsettings' => 'Vegla të shpejta',
-'qbsettings-none' => 'Asnji',
-'qbsettings-fixedleft' => 'Lidhun majtas',
-'qbsettings-fixedright' => 'Lidhun djathtas',
-'qbsettings-floatingleft' => 'Pezull majtas',
-'qbsettings-floatingright' => 'Pezull djathtas',
-
# Preferences page
'preferences' => 'Parapëlqimet',
'mypreferences' => 'Parapëlqimet e mija',
# Stylesheets
'common.css' => '/* CSSi i vendosun këtu ka me u zbatue në tâna dukjet */',
-'standard.css' => '/* CSSi i vendosun këtu ka me i prekë përdoruesit e dukjes standarde */',
-'nostalgia.css' => '/* CSS i vendosun këtu ka me i prekë shfrytëzuesit e dukjes Nostalgia */',
'cologneblue.css' => '/* CSS i vendosun këtu ka me i prekë shfrytëzuesit e dukjes Cologne Blue */',
'monobook.css' => '/* CSS i vednosun këtu ka me i prekë shfrytëzuesit e dukjes Monobook */',
-'myskin.css' => '/* CSSi i vednosun këtu ka me i prekë shfrytëzuesit e dukjes MySkin */',
-'chick.css' => '/* CSSi i vednosun këtu ka me i prekë shfrytëzuesit e dukjes Chick */',
-'simple.css' => '/* CSSi i vednosun këtu ka me i prekë shfrytëzuesit e dukjes Simple */',
'modern.css' => '/* CSSi i vednosun këtu ka me i prekë shfrytëzuesit e dukjes Modern */',
'vector.css' => '/* CSSi i vednosun këtu ka me i prekë shfrytëzuesit e dukjes Vector */',
'print.css' => '/* CSSi i vednosun këtu ka me e prekë pamjen e shtypjes */',
-'handheld.css' => '/* CSSi i vednosun këtu ka me i prekë shfletuesit mobil (të dorës) në dukje e konfigurueme në $wgHandheldStyle */',
# Scripts
'common.js' => '/* Çdo JavaScript këtu ka me u ngarkue për të gjithë përdoruesit në secilën thirrje të faqes. */',
-'standard.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Standard */',
-'nostalgia.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Nostalgia */',
'cologneblue.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Cologne Blue */',
'monobook.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen MonoBook */',
-'myskin.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen MySkin */',
-'chick.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Chick */',
-'simple.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Simple */',
'modern.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Modern */',
'vector.js' => '/* Çdo JavaScript këtu ka me u ngarkue për shfrytëzuesit që përdorin dukjen Vector */',
/*
Short names for language variants used for language conversion links.
-To disable showing a particular link, set it to 'disable', e.g.
-'variantname-zh-sg' => 'disable',
Variants for Chinese language
*/
'variantname-zh-hans' => 'hans',
'disclaimers' => 'የኃላፊነት ማስታወቂያ',
'disclaimerpage' => 'Project:አጠቃላይ የሕግ ነጥቦች',
'edithelp' => 'የማረም መመሪያ',
-'edithelppage' => 'Help:የማዘጋጀት እርዳታ',
'helppage' => 'Help:ይዞታ',
'mainpage' => 'ዋናው ገጽ',
'mainpage-description' => 'ዋና ገጽ',
'searchmenu-legend' => 'የፍለጋ ምርጫዎች',
'searchmenu-exists' => "'''\"[[:\$1]]\" የሚባል መጣጥፍ በዚሁ ዊኪ ላይ አለ።'''",
'searchmenu-new' => "'''\"[[:\$1]]\" የሚባል መጣጥፍ ይፈጠር?'''",
-'searchhelp-url' => 'Help:ይዞታ',
'searchprofile-articles' => 'ይዞታ ያላቸው መጣጥፎች',
'searchprofile-project' => 'የመርሃግብሩ ገጾች',
'searchprofile-images' => 'ፋይሎች',
'listusers-noresult' => 'ማንም ተጠቃሚ አልተገኘም።',
'listusers-blocked' => '(ታግዷል)',
+# Special:ActiveUsers
+'activeusers' => 'ተግባራዊ አባላት ዝርዝር',
+'activeusers-intro' => 'እነዚህ አባላት ባለፈው $1 ቀን ውስጥ ማናቸውንም አይነት ተግባር ፈጸሙ።',
+'activeusers-count' => '$1 {{PLURAL:$1|ለውጥ|ለውጦች}} ባለፈው $3 ቀን ውስጥ',
+'activeusers-hidebots' => 'ሎሌዎች ይደበቁ',
+'activeusers-hidesysops' => 'መጋቢዎች ይደበቁ',
+'activeusers-noresult' => 'ማንም ተጠቃሚ አልተገኘም።',
+
# Special:ListGroupRights
'listgrouprights' => 'የተጠቃሚ ስብስባ መብቶች',
'listgrouprights-group' => 'ስብስባ',
'notvisiblerev' => 'ዕትሙ ጠፍቷል',
'watchnochange' => 'ከተካከሉት ገጾች አንዳችም በተወሰነው ጊዜ ውስጥ አልተለወጠም።',
'watchlist-details' => 'አሁን {{PLURAL:$1|$1 ገፅ|$1 ገፆች}} በምትከታተላቸው ገፆች ላይ አሉ (የውይይት ገፅ ሳይጨመር)።',
-'wlheader-enotif' => '* የ-ኢሜል ማስታወቂያ እንዲሠራ ተደርጓል።',
-'wlheader-showupdated' => "* መጨረሻ ከጎበኟቸው ጀምሮ የተቀየሩት ገጾች በ'''ጉልህ ፊደላት''' ይታያሉ",
+'wlheader-enotif' => 'የ-ኢሜል ማስታወቂያ እንዲሠራ ተደርጓል።',
+'wlheader-showupdated' => "መጨረሻ ከጎበኟቸው ጀምሮ የተቀየሩት ገጾች በ'''ጉልህ ፊደላት''' ይታያሉ",
'watchmethod-recent' => 'የቅርብ ለውጦችን ለሚከታተሉት ገጾች በመፈለግ',
'watchmethod-list' => 'የሚከታተሉትን ገጾች ለቅርብ ለውጦች በመፈለግ',
'watchlistcontains' => 'አሁን በሙሉ $1 ገጾች እየተከታተሉ ነው።',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'ስፋት',
'exif-imagelength' => 'ቁመት',
'exif-compression' => 'የመጨመቅ ዘዴ',
'exif-cameraownername' => 'ባለ ካሜራ',
'exif-personinimage' => 'የታየው ሰው',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'ያልተጨመቀ',
'exif-unknowndate' => 'ያልታወቀ ቀን',
'version-software-product' => 'ሶፍትዌር',
'version-software-version' => 'ዝርያ',
-# Special:FilePath
-'filepath' => 'የፋይል መንገድ',
-'filepath-page' => 'ፋይሉ፦',
-'filepath-submit' => 'መንገድ',
-'filepath-summary' => 'ይህ ልዩ ገጽ ለ1 ፋይል ሙሉ መንገድ ይሰጣል።<br />
-ስዕል በሙሉ ማጉላት ይታያል፤ ሌላ አይነት ፋይል በሚገባው ፕሮግራም በቀጥታ ይጀመራል።',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'ለቅጂ ፋይሎች መፈልግ',
'fileduplicatesearch-legend' => 'ለቅጂ ለመፈልግ',
'disclaimers' => 'Alvertencias chenerals',
'disclaimerpage' => 'Project:Alvertencias chenerals',
'edithelp' => 'Aduya ta editar pachinas',
-'edithelppage' => "Help:Cómo s'edita una pachina",
'helppage' => 'Help:Aduya',
'mainpage' => 'Portalada',
'mainpage-description' => 'Portalada',
# Special:PasswordReset
'passwordreset' => "Restablir a clau d'acceso",
-'passwordreset-text' => "Completar ista forma ta recibir un recordatorio por correu con os detalles d'a suya cuenta.",
'passwordreset-legend' => "Restablir a clau d'acceso",
'passwordreset-disabled' => "S'ha desactivau o restablimiento de claus en ista wiki.",
-'passwordreset-pretext' => "{{PLURAL:$1||Introduzca uno d'os siguients datos}}",
'passwordreset-username' => "Nombre d'usuario:",
'passwordreset-domain' => 'Dominio:',
'passwordreset-capture' => 'Veyer o mensache resultant?',
'searchmenu-legend' => 'Opcions de busca',
'searchmenu-exists' => "'''Bi ha una pachina clamada \"[[\$1]]\" en ista wiki'''",
'searchmenu-new' => "'''Creyar a pachina \"[[:\$1]]\" en ista wiki!'''",
-'searchhelp-url' => 'Help:Aduya',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Veyer pachinas con iste prefixo]]',
'searchprofile-articles' => 'Pachinas de conteniu',
'searchprofile-project' => "Pachinas d'aduya y d'o prochecto",
'listusers-noresult' => "No s'ha trobato ixe usuario.",
'listusers-blocked' => '({{GENDER:$1|bloqueyato|bloqueyata}})',
+# Special:ActiveUsers
+'activeusers' => "Lista d'usuarios activos",
+'activeusers-intro' => "Ista ye una lista d'usuarios que han teniu bella actividat en os zaguers $1 {{PLURAL:$1|diya|diyas}}.",
+'activeusers-count' => '$1 {{PLURAL:$1|edición|edicions}} en os zaguers {{PLURAL:$3|diya|$3 diyas}}',
+'activeusers-from' => "Amostrar nombres d'usuario que prencipien por:",
+'activeusers-hidebots' => 'Amagar robots',
+'activeusers-hidesysops' => 'Amagar administradors',
+'activeusers-noresult' => "No s'han trobato usuarios.",
+
# Special:ListGroupRights
'listgrouprights' => "Dreitos d'a colla d'usuarios",
'listgrouprights-summary' => "Contino trobará a lista de collas d'usuario definitas en iste wiki, con os suyos dreitos d'acceso asociatos. Tamién puet trobar aquí [[{{MediaWiki:Listgrouprights-helppage}}|información adicional]] sobre os dreitos individuals.",
'notvisiblerev' => "S'ha borrato a revisión",
'watchnochange' => "Dengún d'os articlos d'a suya lista de seguimiento no s'ha editato en o periodo de tiempo amostrato.",
'watchlist-details' => '{{PLURAL:$1|$1 pachina|$1 pachinas}} en a suya lista de seguimiento, sin contar-ie as pachinas de descusión.',
-'wlheader-enotif' => '* A notificación por correu electronico ye activata',
-'wlheader-showupdated' => "* Las pachinas cambiadas dende a suya zaguer vesita s'amuestran en '''negreta'''",
+'wlheader-enotif' => 'A notificación por correu electronico ye activata',
+'wlheader-showupdated' => "Las pachinas cambiadas dende a suya zaguer vesita s'amuestran en '''negreta'''",
'watchmethod-recent' => 'Mirando pachinas cosiratas en os zaguers cambeos',
'watchmethod-list' => 'mirando edicions recients en as pachinas cosiratas',
'watchlistcontains' => 'A suya lista de seguimiento tiene $1 {{PLURAL:$1|pachina|pachinas}}.',
'modern.css' => "/* Os estilos CSS colocaus aquí s'aplicarán ta totz os usuarios que faigan servir l'apariencia Modern */",
'vector.css' => "/* Os estilos CSS colocaus aquí s'aplicarán ta totz os usuarios que faigan servir l'apariencia Vector */",
'print.css' => '/* Os estilos CSS colocaus aquí afectarán a la impresión */',
-'handheld.css' => '/* Os estilos CSS colocaus aquí afectarán a os dispositivos mobils basaus en as apariencias configuradas en $wgHandheldStyle */',
'noscript.css' => "/* Os estilos CSS colocaus aquí s'aplicarán ta totz os usuarios que tiengan desactivato JavaScript */",
'group-autoconfirmed.css' => "/* Os estilos CSS colocaus aquí s'aplicarán nomás a os usuarios autoconfirmatos*/",
'group-bot.css' => "/* Os estilos CSS colocaus aquí s'aplicarán nomás a os bots*/",
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Amplaria',
'exif-imagelength' => 'Altaria',
'exif-bitspersample' => 'Bits por component',
'exif-originalimageheight' => "Altaria d'a imachen antes d'estar retallada",
'exif-originalimagewidth' => "Amplaria d'a imachen antes d'estar retallada",
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Sin de compresión',
'exif-compression-2' => 'CCITT Group 3 1-Dimensional Modified Huffman run length encoding',
'exif-compression-3' => 'Codificación de fax CCITT grupo 3',
'version-software-product' => 'Producto',
'version-software-version' => 'Versión',
-# Special:FilePath
-'filepath' => "Camín d'o fichero",
-'filepath-page' => 'Fichero:',
-'filepath-submit' => 'Ir-ie',
-'filepath-summary' => "Ista pachina especial le retorna o camín completo d'un fichero.
-As imachens s'amuestran en resolución completa, a resta de fichers fan encetar dreitament os suyos programas asociatos.",
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Mirar fichers duplicatos',
'fileduplicatesearch-summary' => 'Mirar archivos duplicatos basatos en a suya valura hash.',
* @ingroup Language
* @file
*
+ * @author Altai uul
* @author Gott wisst
* @author JJohnson
* @author Omnipaedista
'tog-editsectiononrightclick' => 'Þafian dǣla adihtunge þurh swīðran healfe mȳs swengas on dǣla titulum (þearf JavaScript)',
'tog-showtoc' => 'Īwan innunge tabulan (for trametum þe mā þonne 3 fōrecwidas habbaþ)',
'tog-rememberpassword' => 'Gemynan mīne inmeldunge on þissum spearctellende (oþ $1 {{PLURAL:$1|dæg|dagas}} lengest)',
-'tog-watchcreations' => 'Ēacnian mīn wæccgetæl mid trametum þā ic scieppe and ymelum þā ic hlade on nett.',
-'tog-watchdefault' => 'Ēacnian mīn wæccgetæl mid trametum and ymelum þā ic adihte.',
-'tog-watchmoves' => 'Ēacnian mīn wæccgetæl mid trametum and ymelum þā ic wege.',
-'tog-watchdeletion' => 'Ēacnian mīn wæccgetæl mid trametum and ymelum þā ic forlēose.',
+'tog-watchcreations' => 'Ēacnian mīn behealdungtæl mid trametum þā ic scieppe and ymelum þā ic hlade on nett.',
+'tog-watchdefault' => 'Ēacnian mīn behealdungetæl mid trametum and ymelum þā ic adihte.',
+'tog-watchmoves' => 'Ēacnian mīn behealdungtæl mid trametum and ymelum þā ic wege.',
+'tog-watchdeletion' => 'Ēacnian mīn behealdungæl mid trametum and ymelum þā ic forlēose.',
'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 þæt webbsēcend sette trametas on horde',
-'tog-enotifwatchlistpages' => 'Sendan mē spearcǣrend þǣr tramet oþþe ymele on mīnum wæccgetæle sīe andwended.',
-'tog-enotifusertalkpages' => 'Sendan mē spearcǣrend þǣr mīnes brūcendtrametes mōtung sī awended',
+'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.',
'tog-enotifrevealaddr' => 'Īwan mīnne spearcǣrenda naman on gecȳðendum spearcǣrendum',
-'tog-shownumberswatching' => 'Īwan þæt rīm wæccendra brūcenda',
+'tog-shownumberswatching' => 'Īwan þæt rīm behealdendra brūcenda',
'tog-oldsig' => 'Genge selfmearc:',
'tog-fancysig' => 'Dōn selfmearce tō wikitexte (lēas ǣr gedōnes hlencan)',
'tog-showjumplinks' => 'Þafian "gān tō" gefērra hlencena',
'tog-uselivepreview' => 'Notian rihte īwde fōrebysene (þearf JavaScript) (on costnunge)',
-'tog-forceeditsummary' => 'Cȳðan mē þǣr ic ne wrīte ādihtunge sceortnesse',
-'tog-watchlisthideown' => 'Hȳdan mīna adihtunga wiþ þæt wæccgetæl',
-'tog-watchlisthidebots' => 'Hȳdan searuþrǣla adihtunga wiþ þæt wæccgetæl',
-'tog-watchlisthideminor' => 'Hȳdan lytela adihtunga wiþ þæt wæccgetæl',
-'tog-watchlisthideliu' => 'Hȳdan adihtungas fram inmeldedum brūcendum wiþ þæt wæccgetæl',
-'tog-watchlisthideanons' => 'Hȳdan adihtunga fram uncūðum brūcendum wiþ þæt wæccgetæl',
-'tog-watchlisthidepatrolled' => 'Hȳdan weardoda adihtunga wiþ þæt wæccgetæl',
+'tog-forceeditsummary' => 'Cȳðan mē þǣr ic ne wrīte adihtunge sceortnesse',
+'tog-watchlisthideown' => 'Hȳdan mīna adihtunga wiþ þæt behealdungtæl',
+'tog-watchlisthidebots' => 'Hȳdan searuþrǣla adihtunga wiþ þæt behealdungtæl',
+'tog-watchlisthideminor' => 'Hȳdan lytela adihtunga wiþ þæt behealdungtæl',
+'tog-watchlisthideliu' => 'Hȳdan adihtunga fram inmeldodum brūcendum wiþ þæt behealdungtæl',
+'tog-watchlisthideanons' => 'Hȳdan adihtunga fram uncūðum brūcendum wiþ þæt behealdungtæl',
+'tog-watchlisthidepatrolled' => 'Hȳdan weardoda adihtunga wiþ þæt behealdungtæl',
'tog-ccmeonemails' => 'Sendan mē gelīcnessa þāra spearcǣrenda þe ic ōðrum brūcendum sende',
'tog-diffonly' => 'Nā īwan trametes innunge under scādungum',
'tog-showhiddencats' => 'Īwan gehȳdede floccas',
# Font style option in Special:Preferences
'editfont-style' => 'Stæfcynd for þǣre wrītunge on þǣre adihtunge mearce:',
-'editfont-default' => 'Webbsēcendes geƿunelicu gesetedness',
+'editfont-default' => 'Webbsēcendes gewunelicu gesetedness',
'editfont-monospace' => 'Ānes gemetes gebrǣded stæfcynd',
'editfont-sansserif' => 'Tægellēas stæfcynd',
'editfont-serif' => 'Tægelbǣre stæfcynd',
'october-gen' => 'Winterfylleðes',
'november-gen' => 'Blōtmōnþes',
'december-gen' => 'Ǣrran Gēolan',
-'jan' => 'Ǣr Ȝē',
+'jan' => 'Ǣr Gē',
'feb' => 'Sol',
'mar' => 'Hrē',
'apr' => 'Ēas',
'disclaimers' => 'Ætsacunga',
'disclaimerpage' => 'Project:Gemǣne ætsacung',
'edithelp' => 'Help on adihtunge',
-'edithelppage' => 'Help:Adihtung',
'helppage' => 'Help:Innung',
'mainpage' => 'Hēafodtramet',
'mainpage-description' => 'Hēafodtramet',
'viewsource' => 'Sēon fruman',
'cascadeprotected' => 'Þes trament wæs geborgen wiþ adihtunge, for þǣm þe hē is befangen in þissum {{PLURAL:$1|tramente, þe is| tramentum, þe sind}} geborgen settum wyrcende þǣm cyre "cascading": $2',
+# Virus scanner
+'virus-badscanner' => "Јастыра конфигурация: Јарты јок сканер ''$1''",
+'virus-unknownscanner' => 'Јарты јок антивирус:',
+
# Login and logout pages
'logouttext' => "'''Þū eart nū ūtmeldod.'''
Þū canst ætfeolan þǣre nytte {{SITENAME}} tō ungecūðum, oþþe þū canst <span class='plainlinks'>[$1 inmeldian eft]</span> tō þǣm ylcan oþþe ōðrum brūcende.
Cnāw þæt sume trametas mihten gīet wesan geīwde swā þū wǣre gīet inmeldod, oþ þæt þū clǣnsie þīnes sēcendtōles hord.",
+'welcomeuser' => 'Wilcume, $1!',
'yourname' => 'Þīn brūcendnama:',
+'userlogin-yourname' => 'Brūcendnama:',
+'userlogin-yourname-ph' => 'Inwrīt þīnne brūcendnaman',
'yourpassword' => 'Þafungword:',
+'userlogin-yourpassword' => 'Þafungword',
+'userlogin-yourpassword-ph' => 'Inwrīt þīn þafungword',
+'createacct-yourpassword-ph' => 'Inwrīt þafungword',
'yourpasswordagain' => 'Wrītan þafungword eft:',
+'createacct-yourpasswordagain' => 'Asēð þafungword',
+'createacct-yourpasswordagain-ph' => 'Wrīt þafungword eft',
'remembermypassword' => 'Gemynan mīne inmeldunge on þissum webbsēcende (oþ $1 {{PLURAL:$1|dæg|daga}} lengest)',
+'userlogin-remembermypassword' => 'Ætfeolan mīnre inmeldunge',
'yourdomainname' => 'Þīn geweald:',
+'password-change-forbidden' => 'Þū ne canst awendan þafungword on þissum wiki.',
'login' => 'Inmeldian',
'nav-login-createaccount' => 'Inmeldian / wyrcan reccinge',
+'loginprompt' => 'Þū scealt þafian cȳþþu grētunga tō inmeldienne in {{SITENAME}}.',
'userlogin' => 'Inmeldian / wyrcan reccinge',
'userloginnocreate' => 'Inmeldian',
'logout' => 'Ūtmeldian',
'userlogout' => 'Ūtmeldian',
'notloggedin' => 'Nā ingemeldod',
+'userlogin-noaccount' => 'Слерде аккаунт јок по?',
+'userlogin-joinproject' => '{{SITENAME}} кирер',
+'nologin' => 'Слерде аккаунт јок по? $1.',
'nologinlink' => 'Scieppan reccinge',
'createaccount' => 'Scieppan reccinge',
+'gotaccount' => 'Белен аккаунт бар ба? $1.',
'gotaccountlink' => 'Inmeldian',
'createaccountmail' => 'Notian sceortne tīman hlētlic þafungword and sendan hit to þǣm spearcǣrenda naman þe is niðer',
'createaccountreason' => 'Racu:',
'extlink_tip' => 'Ūtanweard hlenca (beþenc þone http:// foredǣl)',
'headline_sample' => 'Hēafodlīnan traht',
'headline_tip' => 'Emnet 2 hēafodlīn',
-'nowiki_sample' => 'Unȝeƿorhtne traht hēr stellan',
-'nowiki_tip' => 'Ƿiki ȝeƿeorc forȝietan',
+'nowiki_sample' => 'Unendebyrdodne traht hēr settan',
+'nowiki_tip' => 'Wiki endebyrdunge forgietan',
'image_sample' => 'Bisen.jpg',
-'image_tip' => 'Impod biliþ',
+'image_tip' => 'Ingesett ymele',
'media_sample' => 'Bisen.ogg',
-'media_tip' => 'Fīlhlenċe',
-'sig_tip' => 'Þīn namanseȝn mid tīdstempunge',
-'hr_tip' => 'Brād līn (ne oft brūcan)',
+'media_tip' => 'Ymelan hlenca',
+'sig_tip' => 'Þīn selfmearc mid tīdmearce',
+'hr_tip' => 'Brād līn (ne brūc oft)',
# Edit pages
'summary' => 'Scortnes:',
'subject' => 'Ymbe/hēafodlīn:',
-'minoredit' => 'Þes is lȳtl ādiht',
+'minoredit' => 'Þēos is lytel adihtung',
'watchthis' => 'Behealdan þisne tramet',
'savearticle' => 'Hordian tramet',
'preview' => 'Fōrebysen',
# History pages
'viewpagelogs' => 'Sēon þisses trametes ealdhold',
-'nohistory' => 'Nis nān ādihtunge stǣr for þissum tramete.',
+'nohistory' => 'Nis nān adihtunge stǣr for þissum tramete.',
'currentrev-asof' => 'Nīwost fadung on $1',
'revisionasof' => 'Nīwung fram $1',
'previousrevision' => '← Ieldre fadung',
'revdelete-hide-comment' => 'Ādihtcƿide hȳdan',
'revdelete-hide-user' => 'Ādihteres brūcendnama/IP address hȳdan',
'revdelete-radio-same' => '(ne hƿeorfan)',
-'revdelete-radio-set' => 'Ȝēa',
-'revdelete-radio-unset' => 'Nā',
-'revdel-restore' => 'scēaƿnesse hƿeorfan',
+'revdelete-radio-set' => 'Gēa',
+'revdelete-radio-unset' => 'Nese',
+'revdel-restore' => 'andwendan īwunge',
'pagehist' => 'Trametes stǣr',
'revdelete-reasonotherlist' => 'Ōðru racu',
'nextn' => 'nīehst {{PLURAL:$1|$1}}',
'viewprevnext' => 'Sēon ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-new' => "'''Scieppan þone tramet \"[[:\$1]]\" on þissum wiki!'''",
-'searchhelp-url' => 'Help:Innung',
'searchprofile-articles' => 'Innunge trametas',
'searchprofile-project' => 'Helpes and Weorca trametas',
'searchprofile-images' => 'Missenendebyrdness',
'yourrealname' => 'Þīn rihtnama*',
'yourlanguage' => 'Brūcendofermearces sprǣc',
'yourvariant' => 'Sprǣce wendung:',
-'yourgender' => 'Ȝecynd:',
-'gender-male' => 'Ƿer',
-'gender-female' => 'Frēo',
-'email' => 'E-ǣrende',
+'yourgender' => 'Gecynd:',
+'gender-male' => 'Wer',
+'gender-female' => 'Wīf',
+'email' => 'Spearcǣrend',
# User rights
-'userrights-user-editname' => 'Brūcendnama ƿrītan:',
-'editusergroup' => 'Ādihtan Brūcendsamþrēatas',
-'userrights-editusergroup' => 'Brūcenda clīeƿenas ādihtan:',
-'saveusergroups' => 'Brūcenda clīeƿenas sparian',
-'userrights-groupsmember' => 'Ȝesīþ þæs:',
+'userrights-user-editname' => 'Wrīt brūcendnaman:',
+'editusergroup' => 'Adihtan brūcendhēapas',
+'userrights-editusergroup' => 'Adihtan brūcendhēapas',
+'saveusergroups' => 'Hordian brūcendhēapas',
+'userrights-groupsmember' => 'Gesīþ lōcaþ tō:',
'userrights-reason' => 'Racu:',
# Groups
-'group' => 'Clīeƿen:',
+'group' => 'Hēap:',
'group-user' => 'Brūcendas:',
-'group-bot' => 'Searuþralas',
-'group-sysop' => 'Beƿitendas',
-'group-bureaucrat' => 'Tōþeȝnas',
-'group-suppress' => 'Oferȝesihta',
+'group-bot' => 'Searuþrǣlas',
+'group-sysop' => 'Bewitendas',
+'group-bureaucrat' => 'Þegnas',
+'group-suppress' => 'Ofergesihta',
'group-all' => '(eall)',
-'group-user-member' => '{{GENDER:$1|brūcend}}',
+'group-user-member' => '{{GENDER:$1|brūcend|brūcicge}}',
'group-bot-member' => '{{GENDER:$1|searuþrǣl}}',
-'group-sysop-member' => '{{GENDER:$1|bewitend}}',
+'group-sysop-member' => '{{GENDER:$1|bewitend|bewiticge}}',
'group-suppress-member' => 'oferȝesiht',
-'grouppage-sysop' => '{{ns:project}}:Beƿitendas',
+'grouppage-sysop' => '{{ns:project}}:Bewitendas',
# Special:Log/newusers
-'newuserlogpage' => 'Brūcenda ȝesceaft ȝetalu',
+'newuserlogpage' => 'Brūcenda scieppunge ealdhord',
# User rights log
'rightslog' => 'Brūcenda riht cranic',
'recentchanges-label-minor' => 'Þēos is lytel adihtung',
'recentchanges-label-bot' => 'Searuþrǣl fremede þās adihtunge',
'rcnote' => "Under {{PLURAL:$1|... '''1''' ...|sind þā æftemestan '''$1''' hweorfunga}} in {{PLURAL:$2|...|þǣm æftemestum '''$2''' dagum}}, . . $5, $4.",
-'rcnotefrom' => "Niðer sind þā andwendunga æfter '''$2''' (mǣst īweþ '''$1''').",
+'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',
'rcshowhidebots' => '$1 searuþrǣlas',
-'rcshowhideliu' => '$1 inmeldede brūcendas',
+'rcshowhideliu' => '$1 inmeldode brūcendas',
'rcshowhideanons' => '$1 uncūðe brūcendas',
'rcshowhidemine' => '$1 mīna adihtunga',
'rclinks' => 'Īwan þā nīwostan $1 andwendunga in þissum nīehstum $2 daga<br />$3',
'newpageletter' => 'N',
'boteditletter' => 'þr',
'rc_categories_any' => 'Ǣnig',
-'rc-enhanced-expand' => 'Ȝehanda sēon (þearf JavaScript)',
-'rc-enhanced-hide' => 'Ȝehanda hȳdan',
+'rc-enhanced-expand' => 'Īwan stafas (þearf JavaScript)',
+'rc-enhanced-hide' => 'Hȳdan stafas',
# Recent changes linked
'recentchangeslinked' => 'Sibba andwendunga',
'filehist-thumbtext' => 'Lytelbiliþ for fadunge fram $1 and siþþan',
'filehist-nothumb' => 'Nān lytelbiliþ',
'filehist-user' => 'Brūcend',
-'filehist-dimensions' => 'Miċela',
-'filehist-filesize' => 'Fīlmiċelnes',
-'filehist-comment' => 'Ymbsprǣċ',
-'filehist-missing' => 'Fīl lēas',
+'filehist-dimensions' => 'Micelnesse gemetu',
+'filehist-filesize' => 'Ymelan micelness',
+'filehist-comment' => 'Ymbsprǣc',
+'filehist-missing' => 'Yemele is æfweard',
'imagelinks' => 'Hlencan tō ymelan',
'linkstoimage' => '{{PLURAL:$1|Se folgienda tramet hæfþ|Þā folgiendan trametas habbaþ}} hlencan tō þisre ymelan:',
'nolinkstoimage' => 'Þǣr ne sind nǣnge trametas þe habbaþ hlencan tō þisre ymelan.',
'listusers-noresult' => 'Nān brūcend wæs gefunden.',
# Special:ActiveUsers
-'activeusers' => 'Hƿata brūcenda ȝetalu',
+'activeusers' => 'Getæl hwætra brūcenda',
# Special:ListGroupRights
'listgrouprights-group' => 'Hēap',
'importfailed' => 'Inbringung tōsǣlede: $1',
'importnotext' => 'Ǣmtiȝ oþþe nān traht',
'importsuccess' => 'Inbringoþ ȝesǣled!',
-'import-noarticle' => 'Nān sīde to inbringenne!',
+'import-noarticle' => 'Nān tramet tō inbringenne!',
# Tooltip help for the actions
-'tooltip-pt-userpage' => 'Þīnu brūcendsīde',
-'tooltip-pt-mytalk' => 'Þīnu ȝespreċsīde',
-'tooltip-pt-preferences' => 'Þīna forebearƿan',
-'tooltip-pt-watchlist' => 'Sēo ȝetalu sīdena þe ƿæccest þū for hƿearfum',
-'tooltip-pt-mycontris' => 'Ȝetalu þīnra forðunga',
-'tooltip-pt-login' => 'Man þē byldeþ to inmeldienne; þēah, þis nis ābeden',
+'tooltip-pt-userpage' => 'Þīn brūcendtramet',
+'tooltip-pt-mytalk' => 'Þīn mōtung',
+'tooltip-pt-preferences' => 'Þīna fōreberunga',
+'tooltip-pt-watchlist' => 'Getæl trameta þā behieltst þū ymbe andwendunga',
+'tooltip-pt-mycontris' => 'Getæl þīnra forðunga',
+'tooltip-pt-login' => 'Man þē byldeþ to inmeldienne; þēah, þis nis abeden',
'tooltip-pt-logout' => 'Ūtmeldian',
-'tooltip-ca-talk' => 'Ȝespreċ ymbe þǣre innoþsīdan',
-'tooltip-ca-edit' => 'Þū meaht þās sīdan ādihtan. Bidde brūc þone forescēaƿecnæpp fore spariende',
+'tooltip-ca-talk' => 'Mōtung ymbe þone innungtramet',
+'tooltip-ca-edit' => 'Þū meaht þisne tramet adihtan. Brūc lā þone fōrebysene cnæpp ǣr þū hordie.',
'tooltip-ca-addsection' => 'Beginnan nīwne dǣl',
'tooltip-ca-viewsource' => 'Þes tramet is borgen.
Þū canst his fruman sēon.',
-'tooltip-ca-history' => 'Ǣrram fadunga þisses trametes',
+'tooltip-ca-history' => 'Ǣrran fadunga þisses trametes',
'tooltip-ca-protect' => 'Beorgan þisne tramet',
'tooltip-ca-unprotect' => 'Andwendan beorgune þisses trametes',
'tooltip-ca-delete' => 'Forlēosan þisne tramet',
'imagemaxsize' => "Mǣst biliðes micelness:<br />''(for ymelena amearcunga trametum)''",
'thumbsize' => 'Þumannæglmicelnes:',
'file-info-size' => '$1 × $2 pixels, fīlmiċelu: $3, MIMEcynn: $4',
-'file-nohires' => 'Þǣr nis nǣniȝ mā miċelu.',
-'svg-long-desc' => 'SVG fīl, rihte $1 × $2 pixels, fīlmiċelu: $3',
-'show-big-image' => 'Fulmiċelu',
+'file-nohires' => 'Þǣr nis nǣnig māre micelness.',
+'svg-long-desc' => 'SVG ymele, rihte $1 × $2 pixels, ymelan micelness: $3',
+'show-big-image' => 'Full micelness',
# Special:NewFiles
-'imagelisttext' => "Niðer is getæl '''$1''' {{PLURAL:$1|ymelan|ymelena}}, endebyrded on $2.",
+'imagelisttext' => "Niðer is getæl '''$1''' {{PLURAL:$1|ymelan|ymelena}}, endebyrded on $2.",
'noimages' => 'Nāht tō sēonne.',
-'ilsubmit' => 'Sēċan',
+'ilsubmit' => 'Sēcan',
'bydate' => 'be tælmearce',
# Metadata
'metadata' => 'Metacȳþþu',
-'metadata-expand' => 'Oferȝehanda sēon',
-'metadata-collapse' => 'Oferȝehanda hȳdan',
+'metadata-expand' => 'Īwan ēacnode stafas',
+'metadata-collapse' => 'Hȳdan ēacnode stafas',
# Exif tags
-'exif-imagewidth' => 'Ƿīdnes',
+'exif-imagewidth' => 'Wīdnes',
'exif-imagelength' => 'Hīehþ',
'exif-compression' => 'Ȝeþryccungmōd',
-'exif-ycbcrpositioning' => 'Y and C ȝesetednes',
+'exif-ycbcrpositioning' => 'Y and C gesetednes',
'exif-imagedescription' => 'Biliðes nama',
'exif-artist' => 'Fruma',
'exif-usercomment' => 'Brūcendes trahtnunga',
'exif-exposuretime' => 'Blicestīd',
'exif-brightnessvalue' => 'APEX beorhtness',
'exif-lightsource' => 'Lēohtfruma',
-'exif-whitebalance' => 'Hƿītefnetta',
+'exif-whitebalance' => 'Hwītes blēos emnett',
'exif-sharpness' => 'Scearpnes',
'exif-gpslatituderef' => 'Norþ oþþe sūþ brǣdu',
'exif-gpslatitude' => 'Brǣdu',
'grouppage-sysop' => '{{ns:project}}:प्रचालक',
+# Special:Log/newusers
+'newuserlogpage' => 'नया सदस्यॊ के सूची',
+
# User rights log
'rightslog' => 'सदस्य अधिकार सूची',
# Special:LinkSearch
'linksearch' => 'बाहरी कड़ी',
-# Special:Log/newusers
-'newuserlogpage' => 'नया सदस्यॊ के सूची',
-
# Special:ListGroupRights
'listgrouprights-members' => '(सदस्य सूची)',
-# E-mail user
+# Email user
'emailuser' => 'इ सदस्य कॆ ई-मेल भेजॊ',
# Watchlist
* @author Mido
* @author Mimouni
* @author Mo7amedsalim
+ * @author Nemo bis
* @author Obayd
* @author OsamaK
* @author Ouda
'tog-justify' => 'حاذ الفقرات',
'tog-hideminor' => 'أخف التحريرات الطفيفة في أحدث التغييرات',
'tog-hidepatrolled' => 'أخف التحريرات المراجعة في أحدث التغييرات',
-'tog-newpageshidepatrolled' => 'أخÙ\81 اÙ\84صÙ\81Øات اÙ\84Ù\85راجعة من قائمة الصفحات الجديدة',
-'tog-extendwatchlist' => 'Ù\85دد Ù\82ائÙ\85Ø© اÙ\84Ù\85راÙ\82بة Ù\84عرض Ù\83Ù\84 اÙ\84تغÙ\8aÙ\8aراتØ\8c Ù\88Ù\84Ù\8aس اÙ\84Ø£Øدث Ù\81Ù\82Ø·',
+'tog-newpageshidepatrolled' => 'أخÙ\81 اÙ\84صÙ\81Øات اÙ\84Ù\85عاÙ\8aÙ\86ة من قائمة الصفحات الجديدة',
+'tog-extendwatchlist' => 'Ù\85دد Ù\82ائÙ\85Ø© اÙ\84Ù\85راÙ\82بة Ù\84تعرض Ù\83Ù\84 اÙ\84تغÙ\8aÙ\8aرات Ù\84ا Ø£ØدثÙ\87ا Ù\88 Øسب',
'tog-usenewrc' => 'جمّع التغييرات حسب الصفحة في أحدث التغييرات وقائمة المراقبة (يتطلب جافاسكربت)',
-'tog-numberheadings' => 'رÙ\82Ù\85 اÙ\84عÙ\86اÙ\88Ù\8aÙ\86 تÙ\84Ù\82ائÙ\8aاÙ\8b',
+'tog-numberheadings' => 'رÙ\82Ù\91Ù\85 اÙ\84عÙ\86اÙ\88Ù\8aÙ\86 تÙ\84Ù\82ائÙ\8aÙ\8bا',
'tog-showtoolbar' => 'أظهر شريط التحرير (يتطلب جافاسكربت)',
'tog-editondblclick' => 'تحرير الصفحات بالنقر المزدوج (جافاسكربت)',
'tog-editsection' => 'مكن تحرير الأقسام بروابط [عدل]',
'tog-watchmoves' => 'أضف الصفحات والملفات التي أنقلها إلى قائمة مراقبتي',
'tog-watchdeletion' => 'أضف الصفحات والملفات التي أحذفها إلى قائمة مراقبتي',
'tog-minordefault' => 'أشِّر كل التعديلات على أنها طفيفة مبدئيا',
-'tog-previewontop' => 'أظهر العرض المسبق قبل صندوق التحرير',
+'tog-previewontop' => 'أظهر معاينة النّصّ فوق صندوق التحرير',
'tog-previewonfirst' => 'أظهر معاينة مع أول تحرير',
-'tog-nocache' => 'عطÙ\91Ù\84 تخزÙ\8aÙ\86 المتصفح للصفحة',
+'tog-nocache' => 'عطÙ\91Ù\84 تخبئة المتصفح للصفحة',
'tog-enotifwatchlistpages' => 'أرسل لي رسالة إلكترونية عندما تتغيّر صفحة أو ملف في قائمة مراقبتي',
-'tog-enotifusertalkpages' => 'أرسل لي رسالة إلكترونية عندما تعدل صفحة نقاشي',
+'tog-enotifusertalkpages' => 'أرسل إليّ بريدا كلّما عُدّلت صفحة نقاشي',
'tog-enotifminoredits' => 'أرسل لي رسالة إلكترونية بشأن التحريرات الطفيفة للصفحات والملفات',
'tog-enotifrevealaddr' => 'أظهر عنوان بريدي الإلكتروني في رسائل الإخطار',
'tog-shownumberswatching' => 'اعرض عدد المستخدمين المراقبِين',
'tog-oldsig' => 'التوقيع الحالي:',
-'tog-fancysig' => 'عامل التوقيع كنص ويكي (بدون وصلة أوتوماتيكية)',
-'tog-showjumplinks' => 'Ù\85Ù\83Ù\86 Ù\88صÙ\84ات "اذÙ\87ب Ø¥Ù\84Ù\89" اÙ\84Ù\85ساعدة',
-'tog-uselivepreview' => 'استخدم الاستعراض السريع (جافاسكريبت) (تجريبي)',
+'tog-fancysig' => 'عامل التوقيع كنصّ ويكي (بلا رابط تلقائي)',
+'tog-showjumplinks' => 'Ù\81عÙ\91Ù\84 رÙ\88ابط "اذÙ\87ب Ø¥Ù\84Ù\89" اÙ\84Ù\85عاÙ\88Ù\86ة',
+'tog-uselivepreview' => 'استخدم المعاينة السريعة (تتطلب جافاسكريبت) (تجريبية)',
'tog-forceeditsummary' => 'نبهني عند إدخال ملخص تحرير فارغ',
'tog-watchlisthideown' => 'أخف تحريراتي من قائمة المراقبة',
'tog-watchlisthidebots' => 'أخف تحريرات الروبوتات من قائمة المراقبة',
-'tog-watchlisthideminor' => 'أخف التعديلات الطفيفة من قائمة المراقبة',
-'tog-watchlisthideliu' => 'أخف تعديلات المستخدمين المسجلين من قائمة المراقبة',
-'tog-watchlisthideanons' => 'أخف تعديلات المستخدمين المجهولين من قائمة المراقبة',
-'tog-watchlisthidepatrolled' => 'أخف التعديلات المراجعة من قائمة المراقبة',
-'tog-ccmeonemails' => 'أرسل لي نسخا من رسائل البريد الإلكتروني التي أرسلها للمستخدمين الآخرين',
+'tog-watchlisthideminor' => 'في قائمة المراقبة أخف التعديلات الطفيفة',
+'tog-watchlisthideliu' => 'في قائمة المراقبة أخف تعديلات المستخدمين الوالجين',
+'tog-watchlisthideanons' => 'في قائمة المراقبة أخف تعديلات المستخدمين المجهولين',
+'tog-watchlisthidepatrolled' => 'في قائمة المراقبة أخف التعديلات المعاينة',
+'tog-ccmeonemails' => 'أرسل إليّ نسخا من رسائل البريد التي أرسلها إل مستخدمين آخرين',
'tog-diffonly' => 'لا تعرض محتوى الصفحة أسفل الفروقات',
'tog-showhiddencats' => 'أظهر التصنيفات المخفية',
'tog-noconvertlink' => 'عطل تحويل عناوين الروابط',
-'tog-norollbackdiff' => 'أزÙ\84 اÙ\84Ù\81رÙ\82 بعد اÙ\84Ù\82Ù\8aاÙ\85 باسترجاع',
-'tog-useeditwarning' => 'حذّرني عندما أغادر تحرير صفحة ذات تغييرات غير محفوظة',
+'tog-norollbackdiff' => 'أزÙ\84 اÙ\84Ù\81رÙ\82 بعد Ø¥Øداث استرجاع',
+'tog-useeditwarning' => 'حذّرني عندما أغادر تحرير صفحة فيها تغييرات لم أحفظها',
'underline-always' => 'دائما',
'underline-never' => 'أبدا',
-'underline-default' => 'تبعا لإعدادات الواجهة أو المتصفح',
+'underline-default' => 'وفق الكسوة أو المتصفّح',
# Font style option in Special:Preferences
-'editfont-style' => 'نمط خط منطقة التحرير:',
-'editfont-default' => 'تبعا لإعدادات المتصفح',
+'editfont-style' => 'طراز خط منطقة التحرير:',
+'editfont-default' => 'وفق إعدادات المتصفح',
'editfont-monospace' => 'خط ثابت العرض',
'editfont-sansserif' => 'خط بلا زوائد',
'editfont-serif' => 'خط بزوائد',
'oct' => 'تشرين الأول',
'nov' => 'تشرين الثاني',
'dec' => 'كانون الأول',
+'january-date' => 'كانون الثاني/يناير $1',
+'february-date' => 'شباط/فبراير $1',
+'march-date' => 'آذار/مارس $1',
+'april-date' => 'نيسان/أبريل $1',
+'may-date' => 'أيار/مايو $1',
+'june-date' => 'حزيران/يونيو $1',
+'july-date' => 'تموز/يوليو $1',
+'august-date' => 'آب/أغسطس $1',
+'september-date' => 'أيلول/سبتمبر $1',
+'october-date' => 'تشرين الأول/أكتوبر $1',
+'november-date' => 'تشرين الثاني/نوفمبر $1',
+'december-date' => 'كانون الأول/ديسمبر $1',
# Categories related messages
-'pagecategories' => '{{PLURAL:$1|لا تصنيف|تصنيف|تصنيفان|تصنيفات}}',
+'pagecategories' => '{{PLURAL:$1|بلا تصنيف|تصنيف|تصنيفان|تصنيفات}}',
'category_header' => 'الصفحات في التصنيف "$1"',
-'subcategories' => 'اÙ\84تصÙ\86Ù\8aÙ\81ات اÙ\84فرعية',
+'subcategories' => 'تصÙ\86Ù\8aÙ\81ات فرعية',
'category-media-header' => 'الوسائط في التصنيف "$1"',
'category-empty' => "''هذا التصنيف لا يحتوي حاليا على صفحات و لا وسائط.''",
-'hidden-categories' => '{{PLURAL:$1|لا تصنيف مخفيا|تصنيف مخفي|تصنيفان مخفيان|تصنيفات مخفية}}',
+'hidden-categories' => '{{PLURAL:$1|لا تصنيفات مخفية|تصنيف مخفي|تصنيفان مخفيان|تصنيفات مخفية}}',
'hidden-category-category' => 'تصنيفات مخفية',
-'category-subcat-count' => '{{PLURAL:$2|Ù\84ا تصاÙ\86Ù\8aÙ\81 Ù\81رعÙ\8aØ© Ù\81Ù\8a Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81|Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81 Ù\81Ù\8aÙ\87 اÙ\84تصÙ\86Ù\8aÙ\81 اÙ\84Ù\81رعÙ\8a اÙ\84تاÙ\84Ù\8a Ù\81Ù\82Ø·.|Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81 Ù\81Ù\8aÙ\87 {{PLURAL:$1||Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81 اÙ\84Ù\81رعÙ\8a|Ù\87Ø°Ù\8aÙ\86 اÙ\84تصÙ\86Ù\8aÙ\81Ù\8aÙ\86 اÙ\84Ù\81رعÙ\8aÙ\8aÙ\86|Ù\87Ø°Ù\87 اÙ\84$1 تصاÙ\86Ù\8aÙ\81 اÙ\84Ù\81رعÙ\8aØ©|Ù\87Ø°Ù\87 اÙ\84$1 تصÙ\86Ù\8aÙ\81ا Ù\81رعÙ\8aا|Ù\87Ø°Ù\87 اÙ\84$1 تصÙ\86Ù\8aÙ\81 Ù\81رعÙ\8a}}، من إجمالي $2.}}',
-'category-subcat-count-limited' => 'Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81 Ù\81Ù\8aÙ\87 {{PLURAL:$1||اÙ\84تصÙ\86Ù\8aÙ\81 اÙ\84Ù\81رعÙ\8a اÙ\84تاÙ\84Ù\8a|اÙ\84تصÙ\86Ù\8aÙ\81Ù\8aÙ\86 اÙ\84Ù\81رعÙ\8aÙ\8aÙ\86 اÙ\84تاÙ\84Ù\8aÙ\8aÙ\86|$1 تصاÙ\86Ù\8aÙ\81 Ù\81رعÙ\8aØ© تاÙ\84Ù\8aØ©|$1 تصÙ\86Ù\8aÙ\81ا Ù\81رعÙ\8aا تاÙ\84Ù\8aا|$1 تصÙ\86Ù\8aÙ\81 Ù\81رعÙ\8a تاÙ\84Ù\8a}}.',
-'category-article-count' => '{{PLURAL:$2|لا يحتوي هذا التصنيف أي صفحات.|هذا التصنيف يحتوي على الصفحة التالية فقط.|{{PLURAL:$1||الصفحة التالية|الصفحتان التاليتان|ال$1 صفحات التالية|ال$1 صفحة التالية|ال$1 صفحة التالية}} في هذا التصنيف، من إجمالي $2.}}',
-'category-article-count-limited' => '{{PLURAL:$1||الصفحة التالية|الصفحتان التاليتان|ال$1 صفحات التالية|ال$1 صفحة التالية|ال$1 صفحة التالية}} في التصنيف الحالي.',
-'category-file-count' => '{{PLURAL:$2||هذا التصنيف يحتوي الملف التالي فقط.|{{PLURAL:$1||الملف التالي|الملفان التاليان|الملفات ال$1 التالية}} في هذا التصنيف من إجمالي $2.}}',
-'category-file-count-limited' => '{{PLURAL:$1|الملف التالي|الملفان التاليان|ال$1 ملفات التالية|ال$1 ملفًا تاليًا|ال$1 ملف تالٍ}} في التصنيف الحالي.',
-'listingcontinuesabbrev' => 'Ù\85تابعة',
+'category-subcat-count' => '{{PLURAL:$2|Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81 Ù\8aØÙ\88Ù\8a اÙ\84تصÙ\86Ù\8aÙ\81 اÙ\84Ù\81رعÙ\8a اÙ\84تاÙ\84Ù\8a|Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81 Ù\8aØÙ\88Ù\8a {{PLURAL:$1||اÙ\84تصÙ\86Ù\8aÙ\81 اÙ\84Ù\81رعÙ\8a|تصÙ\86Ù\8aÙ\81Ù\8aÙ\86 Ù\81رعÙ\8aÙ\8aÙ\86|$1 تصÙ\86Ù\8aÙ\81ات Ù\81رعÙ\8aØ©}}، من إجمالي $2.}}',
+'category-subcat-count-limited' => 'Ù\87ذا اÙ\84تصÙ\86Ù\8aÙ\81 Ù\8aØÙ\88Ù\8a {{PLURAL:$1||اÙ\84تصÙ\86Ù\8aÙ\81 اÙ\84Ù\81رعÙ\8a اÙ\84تاÙ\84Ù\8a|اÙ\84تصÙ\86Ù\8aÙ\81Ù\8aÙ\86 اÙ\84Ù\81رعÙ\8aÙ\8aÙ\86 اÙ\84تاÙ\84Ù\8aÙ\8aÙ\86|اÙ\84تصÙ\86Ù\8aÙ\81ات اÙ\84Ù\81رعÙ\8aØ© $1 اÙ\84تاÙ\84Ù\8aØ©}}.',
+'category-article-count' => '{{PLURAL:$2|لا صفحات بهذا التصنيف سوى التالية.|{{PLURAL:$1||الصفحة التالية مصنّفة|الصفحتان التاليتان مصنّفتان|الصفحات $1 التالية مصنّفة}} بهذا التصنيف، من إجمالي $2.}}',
+'category-article-count-limited' => '{{PLURAL:$1||الصفحة التالية|الصفحتان التاليتان|الصفحات $1 التالية}} مصنّفة بهذا التصنيف.',
+'category-file-count' => '{{PLURAL:$2|لا ملفات مصنّفة بهذا التصنيف سوى التالي.|{{PLURAL:$1||الملف التالي مصنّف|الملفان التاليان مصنّفان|الملفات $1 التالية مصنّفة}} بهذا التصنيف من إجمالي $2.}}',
+'category-file-count-limited' => '{{PLURAL:$1|الملف التالي مصنّف|الملفان التاليان مصنّفان|الملفات $1 التالية مصنّفة}} بهذا التصنيف.',
+'listingcontinuesabbrev' => 'Ù\8aÙ\8fتبع',
'index-category' => 'صفحات مفهرسة',
'noindex-category' => 'صفحات غير مفهرسة',
-'broken-file-category' => 'صفحات تحتوي روابط ملفات معطوبة',
+'broken-file-category' => 'صفحات تحوي روابط ملفات معطوبة',
-'about' => 'عن',
+'about' => 'عن هذه الويكي',
'article' => 'صفحة محتوى',
'newwindow' => '(تفتح في نافذة جديدة)',
'cancel' => 'ألغِ',
'morenotlisted' => 'يوجد المزيد غير مسرود...',
'mypage' => 'صفحة',
'mytalk' => 'نقاش',
-'anontalk' => 'النقاش لعنوان الأيبي هذا',
+'anontalk' => 'نقاش عنوان آيبي هذا',
'navigation' => 'إبحار',
'and' => ' و',
# Vector skin
'vector-action-addsection' => 'أضف موضوعا',
-'vector-action-delete' => 'حذف',
+'vector-action-delete' => 'اØØ°Ù\81',
'vector-action-move' => 'انقل',
'vector-action-protect' => 'احم',
-'vector-action-undelete' => 'استرجع الحذف',
-'vector-action-unprotect' => 'غير الحماية',
-'vector-simplesearch-preference' => 'Ù\85Ù\83Ù\91Ù\86 شريط البحث المبسط (لواجهة فكتور فقط)',
+'vector-action-undelete' => 'تدارÙ\83 الحذف',
+'vector-action-unprotect' => 'غيّر الحماية',
+'vector-simplesearch-preference' => 'Ù\81عÙ\91Ù\84 شريط البحث المبسط (لواجهة فكتور فقط)',
'vector-view-create' => 'أنشئ',
-'vector-view-edit' => 'تعدÙ\8aل',
+'vector-view-edit' => 'عدÙ\91ل',
'vector-view-history' => 'اعرض التاريخ',
-'vector-view-view' => 'اÙ\82رأ',
+'vector-view-view' => 'طاÙ\84ع',
'vector-view-viewsource' => 'طالع المصدر',
'actions' => 'أفعال',
'namespaces' => 'فضاءات التسمية',
'variants' => 'المتغيرات',
'navigation-heading' => 'قائمة التصفح',
-'errorpagetitle' => 'خطأ',
+'errorpagetitle' => 'عطÙ\84',
'returnto' => 'ارجع إلى $1.',
'tagline' => 'من {{SITENAME}}',
'help' => 'مساعدة',
-'search' => 'بحث',
+'search' => 'ابØØ«',
'searchbutton' => 'ابحث',
'go' => 'اذهب',
'searcharticle' => 'اذهب',
'history' => 'تاريخ الصفحة',
'history_short' => 'تاريخ',
'updatedmarker' => 'حُدِّثَت منذ زيارتي الأخيرة',
-'printableversion' => 'نسخة للطباعة',
+'printableversion' => 'بتنسق للطباعة',
'permalink' => 'رابط دائم',
'print' => 'اطبع',
'view' => 'مطالعة',
'edit' => 'تحرير',
'create' => 'إنشاء',
'editthispage' => 'حرِّر هذه الصفحة',
-'create-this-page' => 'أنشئ هذه الصفحة',
+'create-this-page' => 'أنشئ صفحة بهذا العنوان',
'delete' => 'حذف',
'deletethispage' => 'احذف هذه الصفحة',
'undelete_short' => 'استرجاع {{PLURAL:$1||تعديل واحد|تعديلين|$1 تعديلات|$1 تعديلاً|$1 تعديل}}',
'viewdeleted_short' => 'استعرض {{PLURAL:$1||تعديل واحد|تعديلين|$1 تعديلات|$1 تعديلاً|$1 تعديل}}',
-'protect' => 'اØÙ\85',
-'protect_change' => 'غير',
+'protect' => 'ØÙ\85اÙ\8aØ©',
+'protect_change' => 'غيّر',
'protectthispage' => 'احم هذه الصفحة',
-'unprotect' => 'غير الحماية',
-'unprotectthispage' => 'غير حماية هذه الصفحة',
+'unprotect' => 'غيّر الحماية',
+'unprotectthispage' => 'غيّر حماية هذه الصفحة',
'newpage' => 'صفحة جديدة',
'talkpage' => 'ناقش هذه الصفحة',
'talkpagelinktext' => 'نقاش',
'specialpage' => 'صفحة خاصة',
'personaltools' => 'أدوات شخصية',
'postcomment' => 'قسم جديد',
-'articlepage' => 'عرض صفحة المحتوى',
+'articlepage' => 'طاÙ\84ع صفحة المحتوى',
'talk' => 'نقاش',
'views' => 'معاينة',
'toolbox' => 'صندوق الأدوات',
-'userpage' => 'عرض صفحة المستخدم',
-'projectpage' => 'عرض صفحة المشروع',
-'imagepage' => 'عرض صفحة الملف',
-'mediawikipage' => 'عرض صفحة الرسالة',
-'templatepage' => 'عرض صفحة القالب',
-'viewhelppage' => 'عرض صفحة المساعدة',
-'categorypage' => 'عرض صفحة التصنيف',
-'viewtalkpage' => 'عرض النقاش',
+'userpage' => 'طاÙ\84ع صفحة المستخدم',
+'projectpage' => 'طاÙ\84ع صفحة المشروع',
+'imagepage' => 'طاÙ\84ع صفحة الملف',
+'mediawikipage' => 'طاÙ\84ع صفحة الرسالة',
+'templatepage' => 'طاÙ\84ع صفحة القالب',
+'viewhelppage' => 'طاÙ\84ع صفحة المساعدة',
+'categorypage' => 'طاÙ\84ع صفحة التصنيف',
+'viewtalkpage' => 'طاÙ\84ع النقاش',
'otherlanguages' => 'بلغات أخرى',
-'redirectedfrom' => '(تÙ\85 التحويل من $1)',
+'redirectedfrom' => '(بالتحويل من $1)',
'redirectpagesub' => 'صفحة تحويل',
-'lastmodifiedat' => 'آخر تعدÙ\8aÙ\84 Ù\84Ù\87Ø°Ù\87 اÙ\84صÙ\81ØØ© Ù\81Ù\8a $2Ø\8c $1.',
+'lastmodifiedat' => 'آخر تعدÙ\8aÙ\84 Ù\84Ù\87Ø°Ù\87 اÙ\84صÙ\81ØØ© Ù\83اÙ\86 Ù\8aÙ\88Ù\85 $1 اÙ\84ساعة $2.',
'viewcount' => '{{PLURAL:$1|لم تعرض هذه الصفحة أبدا|تم عرض هذه الصفحة مرة واحدة|تم عرض هذه الصفحة مرتين|تم عرض هذه الصفحة $1 مرات|تم عرض هذه الصفحة $1 مرة}}.',
'protectedpage' => 'صفحة محمية',
'jumpto' => 'اذهب إلى:',
'jumptonavigation' => 'تصفح',
-'jumptosearch' => 'بحث',
-'view-pool-error' => 'عذرا، الخوادم منهكة حاليا.
+'jumptosearch' => 'ابØØ«',
+'view-pool-error' => 'عذراØ\8c اÙ\84Ø®Ù\88ادÙ\8aÙ\85 Ù\85Ù\86Ù\87Ù\83Ø© ØاÙ\84Ù\8aا.
يحاول مستخدمون كثر الوصول إلى هذه الصفحة.
-Ù\85Ù\86 Ù\81ضÙ\84Ù\83 اÙ\86تظر Ù\82Ù\84Ù\8aÙ\84ا Ù\82بÙ\84 Ø£Ù\86 تØاÙ\88Ù\84 الوصول إلى هذه الصفحة مجددا.
+Ù\85Ù\86 Ù\81ضÙ\84Ù\83 تÙ\85Ù\87Ù\91Ù\84 Ù\82Ù\84Ù\8aÙ\84ا Ù\82بÙ\84 Ù\85ØاÙ\88Ù\84Ø© الوصول إلى هذه الصفحة مجددا.
$1',
-'pool-timeout' => 'اÙ\86تÙ\87اء اÙ\84اÙ\86تظار Ù\84لقفل',
-'pool-queuefull' => 'طابÙ\88ر اÙ\84اÙ\82تراع Ù\85Ù\84ئ',
-'pool-errorunknown' => 'خطأ غير معروف',
+'pool-timeout' => 'اÙ\86تÙ\87ت Ù\85Ù\87Ù\84Ø© القفل',
+'pool-queuefull' => 'اÙ\84طابÙ\88ر Ù\85Ù\84Ø¢Ù\86',
+'pool-errorunknown' => 'عطÙ\84 غير معروف',
# 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) and the disambiguation template definition (see disambiguations).
'aboutsite' => 'عن {{SITENAME}}',
'aboutpage' => 'Project:عن',
-'copyright' => 'المحتوى متوفر تحت $1.',
+'copyright' => 'المحتوى منشور وفق $1.',
'copyrightpage' => '{{ns:project}}:حقوق النسخ',
'currentevents' => 'الأحداث الجارية',
'currentevents-url' => 'Project:الأحداث الجارية',
-'disclaimers' => 'عدÙ\85 مسؤولية',
-'disclaimerpage' => 'Project:عدÙ\85 مسؤولية عام',
+'disclaimers' => 'إخÙ\84اء مسؤولية',
+'disclaimerpage' => 'Project:إخÙ\84اء مسؤولية عام',
'edithelp' => 'مساعدة التحرير',
-'edithelppage' => 'Help:تحرير',
'helppage' => 'Help:محتويات',
'mainpage' => 'الصفحة الرئيسية',
'mainpage-description' => 'الصفحة الرئيسية',
'privacy' => 'سياسة الخصوصية',
'privacypage' => 'Project:سياسة الخصوصية',
-'badaccess' => 'خطأ Ù\81Ù\8a اÙ\84سÙ\85اØ',
-'badaccess-group0' => 'ليس من المسموح لك تنفيذ الفعل الذي طلبته.',
-'badaccess-groups' => 'اÙ\84Ù\81عÙ\84 اÙ\84Ø°Ù\8a Ø·Ù\84بتÙ\87 Ù\85Ù\82صÙ\88ر عÙ\84Ù\89 اÙ\84Ù\85ستخدÙ\85Ù\8aÙ\86 Ù\81Ù\8a {{PLURAL:$2||Ù\85جÙ\85Ù\88عة|Ù\88اØدة Ù\85Ù\86 Ù\85جÙ\85Ù\88عتÙ\8a|Ù\88اØدة Ù\85Ù\86 مجموعات}}: $1.',
+'badaccess' => 'عطÙ\84 Ù\81Ù\8a اÙ\84صÙ\84اØÙ\8aات',
+'badaccess-group0' => 'غير مصرّح لك بتنفيذ الفعل الذي اعتزمته.',
+'badaccess-groups' => 'اÙ\84Ù\81عÙ\84 اÙ\84Ø°Ù\8a اعتزÙ\85تÙ\87 Ù\85Ù\82صÙ\88ر عÙ\84Ù\89 اÙ\84Ù\85ستخدÙ\85Ù\8aÙ\86 أعضاء {{PLURAL:$2||اÙ\84Ù\85جÙ\85Ù\88عة|Ø¥ØدÙ\89 اÙ\84Ù\85جÙ\85Ù\88عتÙ\8aÙ\86|Ø¥ØدÙ\89 اÙ\84مجموعات}}: $1.',
-'versionrequired' => 'تلزم نسخة $1 من ميدياويكي',
-'versionrequiredtext' => 'تلزم النسخة $1 من ميدياويكي لاستعمال هذه الصفحة. انظر [[Special:Version|صفحة النسخة]]',
+'versionrequired' => 'تلزم الإصدارة $1 من ميدياويكي',
+'versionrequiredtext' => 'تلزم الإصدارة $1 من ميدياويكي لاستعمال هذه الصفحة. طالع [[Special:Version|صفحة معلومات الإصدارة]]',
'ok' => 'موافق',
-'retrievedfrom' => 'تم الاسترجاع من "$1"',
-'youhavenewmessages' => 'توجد لديك $1 ($2).',
+'retrievedfrom' => 'مجلوبة من "$1"',
+'youhavenewmessages' => 'لك $1 ($2).',
'newmessageslink' => 'رسائل جديدة',
-'newmessagesdifflink' => 'آخر تغيير',
-'youhavenewmessagesfromusers' => 'لديك $1 من {{PLURAL:$3||مستخدم واحد|مستخدمين اثنين|$3 مستخدمين|$3 مستخدماً|$3 مستخدم}} ($2).',
-'youhavenewmessagesmanyusers' => 'لديك $1 من مستخدمين كثر ($2).',
+'newmessagesdifflink' => 'Ø£Øدث تغيير',
+'youhavenewmessagesfromusers' => 'لك $1 من {{PLURAL:$3||مستخدم واحد|مستخدمين اثنين|$3 مستخدمين|$3 مستخدماً|$3 مستخدم}} ($2).',
+'youhavenewmessagesmanyusers' => 'لك $1 من مستخدمين كثُر ($2).',
'newmessageslinkplural' => '{{PLURAL:$1|رسالة جديدة|رسائل جديدة}}',
-'newmessagesdifflinkplural' => 'آخر {{PLURAL:$1|تغيير|تغييرات}}',
-'youhavenewmessagesmulti' => 'لديك رسائل جديدة على $1',
-'editsection' => 'تعدÙ\8aل',
+'newmessagesdifflinkplural' => 'Ø£Øدث {{PLURAL:$1|تغيير|تغييرات}}',
+'youhavenewmessagesmulti' => 'لديك رسائل جديدة في $1',
+'editsection' => 'عدÙ\91ل',
'editold' => 'تعديل',
-'viewsourceold' => 'اعرض المصدر',
+'viewsourceold' => 'استعرض اÙ\84Ù\85صدر',
'editlink' => 'تعديل',
-'viewsourcelink' => 'اعرض المصدر',
+'viewsourcelink' => 'استعرض اÙ\84Ù\85صدر',
'editsectionhint' => 'حرر القسم: $1',
'toc' => 'محتويات',
-'showtoc' => 'اعرض',
+'showtoc' => 'أظÙ\87ر',
'hidetoc' => 'أخف',
'collapsible-collapse' => 'اطو',
-'collapsible-expand' => 'Ù\88سع',
-'thisisdeleted' => 'أأعرض أو أسترجع $1؟',
+'collapsible-expand' => 'Ù\85دÙ\91د',
+'thisisdeleted' => 'هل أعرض أو أسترجع $1؟',
'viewdeleted' => 'أأعرض $1؟',
'restorelink' => '{{PLURAL:$1|$1 تعديل محذوف|تعديلا واحدا محذوفا|تعديلين محذوفين|$1 تعديلات محذوفة|$1 تعديلا محذوفا|$1 تعديل محذوف}}',
-'feedlinks' => 'التغذية:',
-'feed-invalid' => 'نوع اشتراك التلقيم غير صحيح.',
+'feedlinks' => 'التلقيمة:',
+'feed-invalid' => 'نوع التلقيمة غير صحيح.',
'feed-unavailable' => 'التلقيمات غير متوفرة',
-'site-rss-feed' => '$1 تلقيم أر إس إس',
-'site-atom-feed' => '$1 تلقيم أتوم',
-'page-rss-feed' => '"$1" تلقيم أر إس إس',
-'page-atom-feed' => '"$1" تلقيم أتوم',
+'site-rss-feed' => 'تلقيمة آرإسإس $1',
+'site-atom-feed' => 'تلقيمة أتوم $1',
+'page-rss-feed' => 'تلقيمة آرإسإس "$1"',
+'page-atom-feed' => 'تلقيمة أتوم "$1"',
'feed-atom' => 'أتوم',
'feed-rss' => 'أر إس إس',
'red-link-title' => '$1 (الصفحة غير موجودة)',
-'sort-descending' => 'ترتيب تنازلي',
-'sort-ascending' => 'ترتÙ\8aب تصاعدÙ\8a',
+'sort-descending' => 'تنازليا',
+'sort-ascending' => 'تصاعدÙ\8aا',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'الصفحة',
-'nstab-user' => 'صفحة {{GENDER:{{BASEPAGENAME}}|مستخدم|مستخدمة}}',
-'nstab-media' => 'صÙ\81ØØ© Ù\88سÙ\8aØ·',
+'nstab-user' => 'صفحة {{GENDER:{{BASEPAGENAME}}|المستخدم|المستخدمة}}',
+'nstab-media' => 'صÙ\81ØØ© Ù\85Ù\8aدÙ\8aا',
'nstab-special' => 'صفحة خاصة',
'nstab-project' => 'صفحة مشروع',
'nstab-image' => 'ملف',
'nstab-category' => 'تصنيف',
# Main script and global functions
-'nosuchaction' => 'لا يوجد فعل كهذا',
+'nosuchaction' => 'لا يوجد فعل كالذي طلبت',
'nosuchactiontext' => 'الفعل المحدد بواسطة المسار غير صحيح.
-ربما تكون قد كتبت المسار بطريقة غير صحيحة، أو اتبعت وصلة غير صحيحة.
-Ù\87ذا ربÙ\85ا Ù\8aØ´Ù\8aر Ø£Ù\8aضا Ø¥Ù\84Ù\89 علة في {{SITENAME}}.',
+ربما تكون قد كتبت المسار بطريقة غير صحيحة، أو اتبعت رابطا غير صحيح.
+Ù\88 Ù\82د Ù\8aÙ\83Ù\88Ù\86 Ù\85رجع Ù\87ذا علة في {{SITENAME}}.',
'nosuchspecialpage' => 'لا توجد صفحة خاصة بهذا الاسم',
'nospecialpagetext' => '<strong>لقد طلبت صفحة خاصة غير صحيحة.</strong>
-Ù\82ائÙ\85Ø© باÙ\84صÙ\81Øات اÙ\84خاصة اÙ\84صØÙ\8aØØ© Ù\8aÙ\85Ù\83Ù\86 Ø¥Ù\8aجادÙ\87ا في [[Special:SpecialPages|{{int:specialpages}}]].',
+Ù\82ائÙ\85Ø© اÙ\84صÙ\81Øات اÙ\84خاصة Ù\85Ù\88جÙ\88دة في [[Special:SpecialPages|{{int:specialpages}}]].',
# General errors
-'error' => 'خطأ',
-'databaseerror' => 'خطأ في قاعدة البيانات',
-'dberrortext' => 'Øدث خطأ Ù\81Ù\8a صÙ\8aغة Ø£ستعلام قاعدة البيانات.
-قد يدل هذا الخطأ على عيب في البرنامج.
-آخر أستعÙ\84اÙ\85 تÙ\85 Ø·Ù\84بÙ\87 Ù\85Ù\86 Ù\82اعدة اÙ\84بÙ\8aاÙ\86ات Ù\83اÙ\86 :
+'error' => 'عطÙ\84',
+'databaseerror' => 'عطÙ\84 في قاعدة البيانات',
+'dberrortext' => 'Øدث عطÙ\84 Ù\81Ù\8a Ù\86ØÙ\88 استعلام قاعدة البيانات.
+قد يكون مرجع هذا علّة في البرمجية.
+آخر استعÙ\84اÙ\85 أجرÙ\8a Ù\81Ù\8a Ù\82اعدة اÙ\84بÙ\8aاÙ\86ات Ù\83اÙ\86:
<blockquote><tt>$1</tt></blockquote>
-Ù\85Ù\86 داخÙ\84 اÙ\84داÙ\84Ø© "<tt>$2</tt>".
-Øددت Ù\82اعدة اÙ\84بÙ\8aاÙ\86ات اÙ\84خطأ "<tt>$3: $4</tt>".',
+من الدالة "<tt>$2</tt>".
+أرجعت Ù\82اعدة اÙ\84بÙ\8aاÙ\86ات اÙ\84عطÙ\84 "<tt>$3: $4</tt>".',
'dberrortextcl' => 'حدث خطأ في صيغة استعلام قاعدة البيانات.
آخر استعلام طلب من قاعدة البيانات كان:
"$1"
من داخل الدالة "$2".
أرجعت قاعدة البيانات الخطأ "$3: $4"',
'laggedslavemode' => "'''تحذير:''' الصفحة قد لا تحتوي على أحدث التحديثات.",
-'readonly' => 'قاعدة البيانات مغلقة',
-'enterlockreason' => 'أدخل سببا للغلق، متضمنا تقديرا لوقت رفع الغلق',
-'readonlytext' => 'قاعدة البيانات مغلقة حاليا أمام المدخلات الجديدة والتعديلات الأخرى، السبب غالبا ما يكون الصيانة، وستعود قاعدة البيانات للوضع الطبيعي قريبا.
+'readonly' => 'قاعدة البيانات مقفلة',
+'enterlockreason' => 'أدخل سببا للقفل ذاكرا تقديرا لوقت إزالة الغلق',
+'readonlytext' => 'قاعدة البيانات مقفلة حاليا أمام المدخلات الجديدة و التعديلات الأخرى. السبب غالبا ما يكون الصيانة، و ستعود قاعدة البيانات للعمل الطبيعي قريبا.
الإداري الذي أغلق قاعدة البيانات أعطى التفسير التالي: $1',
-'missing-article' => 'لم تجد قاعدة البيانات النص الخاص بصفحة كان يجب أن تجدها، واسمها "$1" $2.
+'missing-article' => 'لم تجد قاعدة البيانات نصّ صفحة كان يجب أن يوجد، الصفحة هي "$1" $2.
-عادة ما يحدث هذا عند اتباع فرق قديم أو وصلة تاريخ تؤدي إلى صفحة حذفت.
+عادة ما يحدث هذا عند اتباع فرق قديم أو رابط تأريخ صفحة محذوفة.
-إذا لم تكن هذه هي الحالة، فالمحتمل أنك وجدت خللا في البرنامج.
-من فضلك أبلغ أحد [[Special:ListUsers/sysop|الإداريين]]، وأعطه وصلة إلى مسار هذه الصفحة.',
+إذا لم تكن هذه هي الحال فمن المحتمل أنك قد وقعت على علّة في البرمجية.
+من فضلك أبلغ أحد [[Special:ListUsers/sysop|الإداريين]]، و أعطه مسار هذه الصفحة.',
'missingarticle-rev' => '(رقم المراجعة: $1)',
'missingarticle-diff' => '(فرق: $1، $2)',
-'readonly_lag' => 'تم إغلاق قاعدة البيانات تلقائيا حتى تستطيع الخواديم التابعة ملاحقة الخادوم الرئيسي',
+'readonly_lag' => 'تم قفل قاعدة البيانات تلقائيا حتى تستطيع الخواديم التابعة ملاحقة الخادوم الرئيسي',
'internalerror' => 'عطل داخلي',
-'internalerror_info' => 'خطأ داخلي: $1',
+'internalerror_info' => 'عطÙ\84 داخلي: $1',
'fileappenderrorread' => 'تعذرت قراءة "$1" أثناء الإضافة.',
'fileappenderror' => 'تعذرت إضافة "$1" إلى "$2".',
-'filecopyerror' => 'لم يمكن نسخ الملف "$1" إلى "$2".',
-'filerenameerror' => 'لم يمكن إعادة تسمية الملف "$1" إلى "$2".',
-'filedeleteerror' => 'لم يمكن حذف الملف "$1".',
-'directorycreateerror' => 'لم يمكن إنشاء المجلد "$1".',
-'filenotfound' => 'لم يمكن إيجاد الملف "$1".',
-'fileexistserror' => 'غÙ\8aر Ù\82ادر عÙ\84Ù\89 اÙ\84Ù\83تابة Ù\84لملف "$1": الملف موجود',
+'filecopyerror' => 'تعذّر نسخ الملف "$1" إلى "$2".',
+'filerenameerror' => 'تعذّر تغيير اسم الملف "$1" إلى "$2".',
+'filedeleteerror' => 'تعذّر حذف الملف "$1".',
+'directorycreateerror' => 'تعذّر إنشاء الدليل "$1".',
+'filenotfound' => 'تعذّر إيجاد الملف "$1".',
+'fileexistserror' => 'تعذÙ\91رت Ù\83تابة الملف "$1": الملف موجود',
'unexpected' => 'قيمة غير متوقعة: "$1"="$2".',
-'formerror' => 'خطأ: Ù\84Ù\85 Ù\8aÙ\85Ù\83Ù\86 تÙ\86Ù\81Ù\8aØ° الاستمارة',
+'formerror' => 'عطÙ\84: تعذÙ\91ر Ø¥Ù\8aداع الاستمارة',
'badarticleerror' => 'لا يمكن إجراء هذا الفعل على هذه الصفحة.',
-'cannotdelete' => 'تعذر حذف الصفحة أو الملف "$1".
-ربÙ\85ا ØØ°Ù\81Ù\87ا Ø´Øص آخر.',
-'cannotdelete-title' => 'لا يمكن حذف الصفحة "$1"',
-'delete-hook-aborted' => 'Ø¥Øباط اÙ\84ØØ°Ù\81 Ù\85Ù\86 Ù\82بÙ\84 Ù\87Ù\88Ù\83.
+'cannotdelete' => 'تعذّر حذف الصفحة أو الملف "$1".
+ربÙ\85ا ØØ°Ù\81Ù\87ا شخص آخر باÙ\84Ù\81عÙ\84.',
+'cannotdelete-title' => 'تعذّر حذف الصفحة "$1"',
+'delete-hook-aborted' => 'أجÙ\87ض خطÙ\91اÙ\81 اÙ\84ØØ°Ù\81.
لم يقدم أي توضيح.',
'badtitle' => 'عنوان سيء',
-'badtitletext' => 'عنوان الصفحة المطلوب إما غير صحيح أو فارغ، وربما الوصلة بين اللغات أو بين المشاريع خاطئة.
-ومن الممكن وجود رموز لا تصلح للاستخدام في العناوين.',
-'perfcached' => 'اÙ\84بÙ\8aاÙ\86ات اÙ\84تاÙ\84Ù\8aØ© Ù\85ختزÙ\86Ø© Ù\88Ù\82د Ù\84ا تÙ\83Ù\88Ù\86 Ù\85Øدثة. {{PLURAL:$1||Ù\86تÙ\8aجة Ù\88اØدة|Ù\86تÙ\8aجتاÙ\86|$1 Ù\86تائج|$1 Ù\86تÙ\8aجة}} عÙ\84Ù\89 اÙ\84Ø£Ù\83ثر {{PLURAL:$1||Ù\85ختزÙ\86Ø©|Ù\85ختزÙ\86تاÙ\86|Ù\85ختزÙ\86ة}}.',
-'perfcachedts' => 'اÙ\84بÙ\8aاÙ\86ات اÙ\84تاÙ\84Ù\8aØ© Ù\85ختزÙ\86Ø© Ù\88Ù\83اÙ\86 آخر تØدÙ\8aØ« Ù\84Ù\87ا Ù\81Ù\8a $1. {{PLURAL:$4||Ù\86تÙ\8aجة Ù\88اØدة|Ù\86تÙ\8aجتاÙ\86|$4 Ù\86تائج|$4 Ù\86تÙ\8aجة}} عÙ\84Ù\89 اÙ\84Ø£Ù\83ثر {{PLURAL:$4||Ù\85ختزÙ\86Ø©|Ù\85ختزÙ\86تاÙ\86|Ù\85ختزÙ\86ة}}.',
-'querypage-no-updates' => 'اÙ\84تØدÙ\8aثات Ù\84هذه الصفحة معطلة حاليا.
+'badtitletext' => 'عنوان الصفحة المطلوب إما غير صحيح أو فارغ، وربما الرابط بين اللغات أو بين المشاريع خاطئ.
+ربما يحوي محارف لا تصلح للاستخدام في العناوين.',
+'perfcached' => 'اÙ\84بÙ\8aاÙ\86ات اÙ\84تاÙ\84Ù\8aØ© Ù\85خبأة Ù\88 Ù\82د Ù\84ا تÙ\83Ù\88Ù\86 Ù\85Øدثة. {{PLURAL:$1||Ù\86تÙ\8aجة Ù\88اØدة|Ù\86تÙ\8aجتاÙ\86|$1 Ù\86تائج|$1 Ù\86تÙ\8aجة}} عÙ\84Ù\89 اÙ\84Ø£Ù\83ثر {{PLURAL:$1||Ù\85خبÙ\91أة|Ù\85خبÙ\91أتاÙ\86|Ù\85خبÙ\91Ø£ة}}.',
+'perfcachedts' => 'اÙ\84بÙ\8aاÙ\86ات اÙ\84تاÙ\84Ù\8aØ© Ù\85خبÙ\91أة Ù\88Ù\83اÙ\86 آخر تØدÙ\8aØ« Ù\84Ù\87ا Ù\81Ù\8a $1. {{PLURAL:$4||Ù\86تÙ\8aجة Ù\88اØدة|Ù\86تÙ\8aجتاÙ\86|$4 Ù\86تائج|$4 Ù\86تÙ\8aجة}} عÙ\84Ù\89 اÙ\84Ø£Ù\83ثر {{PLURAL:$4||Ù\85خبÙ\91أة|Ù\85خبÙ\91أتاÙ\86|Ù\85خبÙ\91Ø£ة}}.',
+'querypage-no-updates' => 'تØدÙ\8aثات هذه الصفحة معطلة حاليا.
البيانات هنا لن يتم تحديثها حاليا.',
-'wrong_wfQuery_params' => 'Ù\85Øددات خاطئة في wfQuery()<br />
+'wrong_wfQuery_params' => 'Ù\85عاÙ\85Ù\84ات خاطئة في wfQuery()<br />
الدالة: $1<br />
الاستعلام: $2',
-'viewsource' => 'اعرض المصدر',
-'viewsource-title' => 'إظÙ\87ار مصدر $1',
-'actionthrottled' => 'لا يمكن عمل المزيد من هذا الفعل',
-'actionthrottledtext' => 'كإجراء ضد السبام، أنت ممنوع من إجراء هذا الفعل عدد كبير من المرات في فترة زمنية قصيرة، ولقد تجاوزت هذا الحد.
-Ù\85Ù\86 Ù\81ضÙ\84Ù\83 ØاÙ\88Ù\84 Ù\85رة ثاÙ\86Ù\8aØ© Ø®Ù\84اÙ\84 عدة دقائق.',
+'viewsource' => 'استعرض اÙ\84Ù\85صدر',
+'viewsource-title' => 'استعرض مصدر $1',
+'actionthrottled' => 'تم كبح الفعل',
+'actionthrottledtext' => 'احترازا من السُّخام، يُحظر إجراء هذا الفعل مرات كثيرة في فترة زمنية قصيرة، و لقد تجاوزت هذا الحد.
+Ù\85Ù\86 Ù\81ضÙ\84Ù\83 ØاÙ\88Ù\84 Ù\85جددا بعد عدة دقائق.',
'protectedpagetext' => 'هذه الصفحة تمت حمايتها لمنع التعديل أو أية عمليات أخرى.',
-'viewsourcetext' => 'يمكنك رؤية ونسخ مصدر هذه الصفحة:',
-'viewyourtext' => "Ù\8aÙ\85Ù\83Ù\86Ù\83 رؤÙ\8aØ© Ù\88نسخ مصدر ''' تعديلاتك ''' في هذه الصفحة:",
+'viewsourcetext' => 'تمكنك مطالعة و نسخ مصدر هذه الصفحة:',
+'viewyourtext' => "Ù\8aÙ\85Ù\83Ù\86Ù\83 استعراض Ù\88 نسخ مصدر ''' تعديلاتك ''' في هذه الصفحة:",
'protectedinterface' => 'توفر هذه الصفحة نص الواجهة للبرنامج على هذا الويكي، وهي محمية لمنع سوء أستخدامها.
لإضافة أو تغيير الترجمات لجميع مشاريع الويكي، رجاءً أستخدم [//translatewiki.net/ translatewiki.net]، مشروع الترجمة الخاص بميدياويكي.',
'editinginterface' => "'''تحذير:''' أنت تقوم بتحرير صفحة تستخدم في الواجهة النصية للبرنامج.
'createacct-reason' => 'السبب',
'createacct-reason-ph' => 'لماذا تقوم بإنشاء حساب آخر',
'createacct-captcha' => 'تحقق أمني',
+'createacct-imgcaptcha-ph' => 'أدخل النص الذي تراه في الأعلى',
'createacct-submit' => 'افتح الحساب',
'createacct-benefit-heading' => 'موقع {{SITENAME}} أنشأه أشخاص مثلك.',
-'createacct-benefit-body1' => 'التعديلات',
-'createacct-benefit-body2' => 'الصفحات',
-'createacct-benefit-body3' => 'اÙ\84Ù\85ساÙ\87Ù\85Ù\8aÙ\86 Ù\81Ù\8a اÙ\84Ø¢Ù\88Ù\86Ø© اÙ\84أخÙ\8aرة',
+'createacct-benefit-body1' => '{{PLURAL:$1|تحريرا|تحريرات}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|صفحة}}',
+'createacct-benefit-body3' => 'آخر {{PLURAL:$1|Ù\85ساÙ\87Ù\85|Ù\85ساÙ\87Ù\85Ù\8aÙ\86}}',
'badretype' => 'كلمات السر التي أدخلتها لا تتطابق.',
'userexists' => 'اسم المستخدم الذي تم إدخاله مستعمل بالفعل.
الرجاء اختيار اسم مختلف.',
'usernamehasherror' => 'لا يمكن أن يحتوي اسم المستخدم على محارف هاش',
'login-throttled' => 'لقد قمت بمحاولات دخول كثيرة جدا مؤخرا.
من فضلك انتظر قبل المحاولة مرة أخرى.',
-'login-abort-generic' => 'Ù\84Ù\85 Ù\8aÙ\86Ø¬Ø Ù\88Ù\84Ù\88جÙ\83 - إجÙ\87اض',
+'login-abort-generic' => 'Ù\84Ù\85 Ù\8aÙ\86Ø¬Ø Ù\88Ù\84Ù\88جÙ\83 - تÙ\85 إجÙ\87اضÙ\87',
'loginlanguagelabel' => 'اللغة: $1',
'suspicious-userlogout' => 'رفض طلب خروجك لأنه يبدو كأنه أرسل عن طريق متصفح معطوب أو وسيط تخزين.',
'resetpass-wrong-oldpass' => 'كلمة سر حالية أو مؤقتة غير صحيحة.
ربما تكون غيرت كلمة السر الخاصة بك بنجاح أو طلبت كلمة سر مؤقتة جديدة.',
'resetpass-temp-password' => 'كلمة سر مؤقتة:',
+'resetpass-abort-generic' => 'منعت مُلحقة إتمام صيرورة تغيير كلمة السّر.',
# Special:PasswordReset
'passwordreset' => 'إعادة ضبط كلمة السر',
-'passwordreset-text' => 'أكمل هذا النموذج لإعادة ضبط كلمة السر الخاصة بك.',
'passwordreset-legend' => 'إعادة تعيين كلمة السر',
'passwordreset-disabled' => 'عُطّلت إعادة تعيين كلمة السر على هذه الويكي.',
'passwordreset-emaildisabled' => 'تم تعطيل ميزات البريد الإلكتروني على هذه الويكي.',
-'passwordreset-pretext' => '{{PLURAL:$1||أدخل أحد أجزاء البيانات أدناه}}',
'passwordreset-username' => 'اسم المستخدم:',
'passwordreset-domain' => 'النطاق:',
'passwordreset-capture' => 'أأعرض البريد الإلكتروني الناتج؟',
كلمة السر المؤقتة: $2',
'passwordreset-emailsent' => 'أُرسل بريد إلكتروني لإعادة ضبط كلمة السر.',
'passwordreset-emailsent-capture' => 'أُرسل بريد إلكتروني لإعادة ضبط كلمة السر، وهو معروض بالأسفل.',
-'passwordreset-emailerror-capture' => 'ولّد بريد إلكتروني لإعادة ضبط كلمة السر وهو معروض بالأسفل لكن فشل إرساله للمستخدم: $1',
+'passwordreset-emailerror-capture' => 'تم توليد رسالة بريد إلكتروني لتصفير كلمة السر نصّه التالي، إلا أنه تعذّر إرسال الرّسالة إلى {{GENDER:$2|المستخدم|المستخدمة}}: $1',
# Special:ChangeEmail
'changeemail' => 'تغيير عنوان البريد الإلكتروني',
يبدو أنه تم حذفها.',
'edit-conflict' => 'تضارب تحريري.',
'edit-no-change' => 'تعديلك تم تجاهله، لأنه لم يحدث أي تعديل للنص.',
+'postedit-confirmation' => 'تعديلك حفظ.',
'edit-already-exists' => 'لم يمكن إنشاء صفحة جديدة.
هي موجودة بالفعل.',
'defaultmessagetext' => 'نص الرسالة الافتراضي',
'searchmenu-legend' => 'خيارات البحث',
'searchmenu-exists' => "*الصفحة '''[[$1]]'''",
'searchmenu-new' => "'''أنشئ الصفحة \"[[:\$1]]\" في هذا الويكي!'''",
-'searchhelp-url' => 'Help:محتويات',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|تصفح الصفحات بهذه البادئة]]',
'searchprofile-articles' => 'صفحات المحتوى',
'searchprofile-project' => 'صفحات المساعدة والمشروع',
'userrights-notallowed' => 'حسابك لا يمتلك إذنا لإضافة أو إزالة صلاحيات المستخدمين.',
'userrights-changeable-col' => 'المجموعات التي يمكنك تغييرها',
'userrights-unchangeable-col' => 'المجموعات التي لا يمكنك تغييرها',
+'userrights-conflict' => 'تضارب في صلاحيات المستخدمين. طبّق تغييراتك مجدّدا',
# Groups
'group' => 'المجموعة:',
'notvisiblerev' => 'المراجعة تم حذفها',
'watchnochange' => 'لم تُعدّل أي صفحة في قائمة مراقبتك خلال الفترة الزمنية المحددة.',
'watchlist-details' => '{{PLURAL:$1||صفحة واحدة|صفحتان|$1 صفحات|$1 صفحة}} في قائمة مراقبتك، بدون عد صفحات النقاش.',
-'wlheader-enotif' => '* الإخطار بالبريد الإلكتروني مفعل.',
-'wlheader-showupdated' => "* الصفحات التي تم تحريرها بعد زيارتك لها لآخر مرة معروضة بالخط '''الغليظ'''",
+'wlheader-enotif' => 'الإخطار بالبريد الإلكتروني مُفعّل.',
+'wlheader-showupdated' => "الصفحات التي تم تحريرها بعد مطالعتك إياها آخر مرة عناوينها بالخط '''الغليظ'''",
'watchmethod-recent' => 'فحص التعديلات الأخيرة للصفحات المراقبة',
'watchmethod-list' => 'فحص الصفحات المراقبة للتعديلات الحديثة',
'watchlistcontains' => 'تحتوي قائمة مراقبتك على {{PLURAL:$1|لا صفحات|صفحة واحدة|صفحتان|$1 صفحات|$1 صفحة}}.',
'sorbsreason' => 'عنوان الأيبي الخاص بك موجود كبروكسي مفتوح في DNSBL المستخدم بواسطة {{SITENAME}}.',
'sorbs_create_account_reason' => 'عنوان الأيبي الخاص بك موجود كبروكسي مفتوح في DNSBL المستخدم بواسطة {{SITENAME}}.
لا يمكنك إنشاء حساب.',
+'xffblockreason' => 'عنوان آيبي مذكور في ترويسة X-Forwarded-For، الذي ربما يخصّك أو يخصّ خادوما وسيطا تستخدمه، قد حُظِر. السبب الأصلي للحظر كان: $1',
'cant-block-while-blocked' => 'أنت لا يمكنك منع المستخدمين الآخرين بينما أنت ممنوع.',
'cant-see-hidden-user' => 'المستخدم الذي تحاول منعه تم منعه سابقاً وإخفاؤه. بما أنك لا تمتلك صلاحية إخفاء المستخدم، لا يمكنك مشاهدة المنع أو تعديله.',
'ipbblocked' => 'لا يمكنك منع أو رفع منع مستخدمين آخرين لأنك ممنوع',
'thumbnail-more' => 'كبّر',
'filemissing' => 'الملف مفقود',
'thumbnail_error' => 'خطأ في إنشاء صورة مصغرة: $1',
+'thumbnail_error_remote' => 'رسالة عطل من $1:
+$2',
'djvu_page_error' => 'صفحة DjVu خارج النطاق',
'djvu_no_xml' => 'لا يمكن جلب XML لملف DjVu',
'thumbnail-temp-create' => 'تعذر إنشاء ملف الصورة المصغرة المؤقت',
'modern.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمي واجهة مودرن */',
'vector.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمي واجهة فكتور */',
'print.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على ناتج الطباعة */',
-'handheld.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على الأجهزة المحمولة بالاعتماد على الواجهة المضبوطة في $wgHandheldStyle */',
'noscript.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على المستخدمين الذين الجافاسكريبت لديهم معطلة */',
'group-autoconfirmed.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على المستخدمين المؤكدين تلقائيا فقط */',
'group-bot.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على البوتات فقط */',
'minutes' => '{{PLURAL:$1||دقيقة واحدة|دقيقتين|$1 دقائق|$1 دقيقة}}',
'hours' => '{{PLURAL:$1||ساعة واحدة|ساعتين|$1 ساعات|$1 ساعة}}',
'days' => '{{PLURAL:$1||يوم واحد|يومين|$1 أيام|$1 يومًا|$1 يوم}}',
+'weeks' => '{{PLURAL:$1|أسبوع|$1 أسابيع}}',
'months' => '{{PLURAL:$1||شهر واحد|شهرين|$1 شهور|$1 شهرا|$1 شهر}}',
'years' => '{{PLURAL:$1||سنة واحدة|سنتين|$1 سنين|$1 سنة}}',
'ago' => 'قبل $1',
'just-now' => 'الآن فقط',
+# Human-readable timestamps
+'hours-ago' => 'منذ {{PLURAL:$1|ساعة|$1 ساعات}}',
+'minutes-ago' => 'منذ {{PLURAL:$1|دقيقة|$1 دقائق}}',
+'seconds-ago' => 'منذ {{PLURAL:$1|ثانية|$1 ثوان}}',
+'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' => 'الصيغة كالتالي:
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath مسار المقالات]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath مسار السكريبت]',
+# Special:Redirect
+'redirect' => 'تحويل باسم ملف أو اسم مستخدم أو رقم مراجعة',
+'redirect-legend' => 'تحويل إلى ملف أو صفحة',
+'redirect-summary' => 'هذه الصفحة الخاصة تحوّل إلى ملف (باسمه) أو صفحة (برقم إحدى مراجعاتها) أو إلى صفحة مستخدم (برقمه التعريفي).',
+'redirect-submit' => 'حوّل',
+'redirect-lookup' => 'ابحث في:',
+'redirect-value' => 'الوجهة',
+'redirect-user' => 'رقم مستخدم',
+'redirect-revision' => 'مراجعة صفحة',
+'redirect-file' => 'اسم ملف',
+'redirect-not-exists' => 'المطلوب غير موجود',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'بحث عن ملفات مكررة',
'fileduplicatesearch-summary' => 'ابحث عن الملفات المكررة بناء على قيم الهاش.',
'htmlform-selectorother-other' => 'أخرى',
'htmlform-no' => 'لا',
'htmlform-yes' => 'نعم',
+'htmlform-chosen-placeholder' => 'اختر',
# SQLite database support
'sqlite-has-fts' => '$1 بدعم البحث في كامل النص',
'logentry-suppress-delete' => '{{GENDER:$2|أخفى|أخفت}} $1 صفحة $3',
'logentry-suppress-event' => 'غيّر{{GENDER:$2||ت}} $1 بسرية إمكانية مشاهدة {{PLURAL:$5||حدث|حدثين|$5 أحداث|$5 حدثًا|$5 حدث}} في سجل $3: $4',
'logentry-suppress-revision' => 'غيّر{{GENDER:$2||ت}} $1 سراً إمكانية مشاهدة {{PLURAL:$5||مراجعة واحدة|مراجعتين|$5 مراجعات|$5 مراجعة}} في صفحة $3: $4',
-'logentry-suppress-event-legacy' => 'غيّر $1 بسرية إمكانية رؤية أحداث سجل $3',
-'logentry-suppress-revision-legacy' => 'غيّر $1 بسرية إمكانية رؤية مراجعات صفحة $3',
+'logentry-suppress-event-legacy' => '{{GENDER:$2|غيّر|غيّرت}} $1 علانية سِجِلّ $3',
+'logentry-suppress-revision-legacy' => '{{GENDER:$2|غيّر|غيّرت}} $1 علانية مراجعات صفحة $3',
'revdelete-content-hid' => 'محتوى مخفي',
'revdelete-summary-hid' => 'ملخص التحرير مخفي',
'revdelete-uname-hid' => 'اسم المستخدم مخفي',
'revdelete-uname-unhid' => 'اسم المستخدم غير مخفي',
'revdelete-restricted' => 'طبق الضوابط لمديري النظام',
'revdelete-unrestricted' => 'أزال الضوابط لمديري النظام',
-'logentry-move-move' => 'نقل $1 صفحة $3 إلى $4',
-'logentry-move-move-noredirect' => 'نقل $1 صفحة $3 إلى $4 دون ترك تحويلة',
-'logentry-move-move_redir' => 'نقل $1 صفحة $3 إلى التحويلة $4',
-'logentry-move-move_redir-noredirect' => 'نقل $1 صفحة $3 إلى التحويلة $4 دون ترك تحويلة',
-'logentry-patrol-patrol' => '$1 مراجعة معلمة $4 للصفحة $3 تم معاينتها',
-'logentry-patrol-patrol-auto' => '$1 مراجعة معلمة تلقائيا $4 للصفحة $3 تم مراجعتها',
-'logentry-newusers-newusers' => 'تم إنشاء الحساب $1',
-'logentry-newusers-create' => 'تم إنشاء الحساب $1',
-'logentry-newusers-create2' => 'Ø£Ù\86شأ $1 اÙ\84Øساب $3',
+'logentry-move-move' => '{{GENDER:$2|نقل|نقلت}} $1 صفحة $3 إلى $4',
+'logentry-move-move-noredirect' => '{{GENDER:$2|نقل|نقلت}} $1 صفحة $3 إلى $4 دون ترك تحويلة',
+'logentry-move-move_redir' => '{{GENDER:$2|نقل|نقلت}} $1 صفحة $3 إلى $4 على تحويلة',
+'logentry-move-move_redir-noredirect' => '{{GENDER:$2|نقل|نقلت}} $1 صفحة $3 إلى $4 على تحويلة دون ترك تحويلة',
+'logentry-patrol-patrol' => '{{GENDER:$2|عاين|عاين}} $1 المراجعة $4 للصفحة $3',
+'logentry-patrol-patrol-auto' => '{{GENDER:$2|عاين|عاينت}} $1 تلقائيا المراجعة $4 للصفحة $3',
+'logentry-newusers-newusers' => 'تم فتح حساب {{GENDER:$2|المستخدم|المستخدمة}} $1',
+'logentry-newusers-create' => 'تم فتح حساب {{GENDER:$2|المستخدم|المستخدمة}} $1',
+'logentry-newusers-create2' => 'Ø£Ù\86شأ $1 Øسابا {{GENDER:$2|Ù\84Ù\84Ù\85ستخدÙ\85|Ù\84Ù\84Ù\85ستخدÙ\85Ø©}} $3',
'logentry-newusers-byemail' => 'ُ{{GENDER:$2|أنشأ|أنشأت}} $1 حساب المستخدم $3 وأُرسلت كلمة السر بالبريد الإلكتروني',
-'logentry-newusers-autocreate' => 'أنشئ حساب $1 تلقائياً',
-'logentry-rights-rights' => 'غير $1 صلاحيات $3 من $4 إلى $5',
-'logentry-rights-rights-legacy' => 'غير $1 صلاحيات $3',
-'logentry-rights-autopromote' => 'تمت ترقية $1 تلقائياً من $4 إلى $5',
+'logentry-newusers-autocreate' => 'أنشئ حساب {{GENDER:$2|المستخدم|المستخدمة}} $1 تلقائيًا',
+'logentry-rights-rights' => '{{GENDER:$2|غيّر|غيّرت}} $1 عضوية $3 من $4 إلى $5',
+'logentry-rights-rights-legacy' => '{{GENDER:$2|غيّر|غيّرت}} $1 عضوية $3',
+'logentry-rights-autopromote' => 'تمت تلقائيا ترقية {{GENDER:$2|المستخدم|المستخدمة}} $1 من $4 إلى $5',
'rightsnone' => '(لا شيء)',
# Feedback
'disclaimers' => 'ܠܐ ܡܫܬܐܠܢܘܬܐ',
'disclaimerpage' => 'Project:ܠܐ ܡܫܬܐܠܢܘܬܐ ܓܘܢܝܬܐ',
'edithelp' => 'ܥܘܕܪܢܐ ܠܫܚܠܦܬܐ',
-'edithelppage' => 'Help:ܫܚܠܦܬܐ',
'helppage' => 'Help:ܚܒܝܫܬ̈ܐ',
'mainpage' => 'ܦܐܬܐ ܪܝܫܝܬܐ',
'mainpage-description' => 'ܦܐܬܐ ܪܝܫܝܬܐ',
ܚܕ ܟܡܐ ܡܢ ܦܐܬܬ̈ܐ ܡܬܚܙܝܢ ܐܝܟ ܕܗܘ ܐܢܬ ܥܠܝܠܐ ܐܝܬܝܟ ܥܕܡܐ ܕܐܣܦܩܬ ܠܦܐܬܬ̈ܐ ܠܒܝܟܬ̈ܐ ܕܡܦܐܬܢܐ ܕܝܠܟ.",
'welcomeuser' => 'ܒܫܝܢܐ $1!',
'yourname' => 'ܫܡܐ ܕܡܦܠܚܢܐ:',
+'userlogin-yourname' => 'ܫܡܐ ܕܡܦܠܚܢܐ',
+'userlogin-yourname-ph' => 'ܐܥܠ ܫܡܐ ܕܡܦܠܚܢܐ ܕܝܠܟ',
'yourpassword' => 'ܡܠܬܐ ܕܥܠܠܐ:',
+'userlogin-yourpassword' => 'ܡܠܬܐ ܕܥܠܠܐ',
+'userlogin-yourpassword-ph' => 'ܐܥܠ ܡܠܬܐ ܕܥܠܠܐ ܕܝܠܟ',
'yourpasswordagain' => 'ܟܬܘܒ ܡܠܬܐ ܕܥܠܠܐ ܙܒܢܬܐ ܐܚܪܬܐ:',
'remembermypassword' => 'ܕܟܘܪ ܥܠܠܬܝ ܥܠ ܡܦܐܬܢܐ ܗܢܐ (ܠܡܬܚܐ ܥܠܝܐ ܕ $1 {{PLURAL:$1|ܝܘܡܐ|ܝܘܡܬ̈ܐ}})',
+'userlogin-remembermypassword' => 'ܫܒܘܩ ܠܝ ܥܠܝܠܐ ܒܚܘܫܒܢܝ',
'login' => 'ܥܘܠ',
'nav-login-createaccount' => 'ܥܘܠ / ܒܪܝ ܚܘܫܒܢܐ',
'loginprompt' => 'ܐܠܨܐ ܠܡܦܐܬܢܐ ܕܝܠܟ ܕܣܡܟ ܠܩܘܩܝܙ (cookies) ܠܥܠܠܬܐ ܒ {{SITENAME}}.',
'logout' => 'ܦܠܘܛ',
'userlogout' => 'ܦܠܘܛ',
'notloggedin' => 'ܠܝܬܝܟ ܥܠܝܠܐ',
+'userlogin-noaccount' => 'ܠܝܬ ܠܟ ܚܘܫܒܢܐ؟',
+'userlogin-joinproject' => 'ܢܩܦ ܥܡ {{SITENAME}}',
'nologin' => "ܠܝܬ ܠܟ ܚܘܫܒܢܐ؟ '''$1'''.",
'nologinlink' => 'ܒܪܝ ܚܘܫܒܢܐ',
'createaccount' => 'ܒܪܝ ܚܘܫܒܢܐ',
'gotaccount' => "ܐܝܬ ܠܟ ܚܘܫܒܢܐ؟ '''$1'''.",
'gotaccountlink' => 'ܥܘܠ',
'userlogin-resetlink' => 'ܐܬܢܫܝܬ ܝܕ̈ܥܬܐ ܕܥܠܠܐ؟',
+'userlogin-resetpassword-link' => 'ܫܚܠܦ ܡܠܬܐ ܕܥܠܠܐ',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|ܥܘܕܪܢܐ ܒܥܠܠܐ ܠܚܘܫܒܢܐ]]',
+'createacct-join' => 'ܐܥܠ ܝܕ̈ܥܬܐ ܕܝܠܟ ܠܬܚܬ',
+'createacct-emailrequired' => 'ܒܝܠܕܪܐ ܐܠܩܛܪܘܢܝܐ',
'createaccountmail' => 'ܐܦܠܚ ܡܠܬܐ ܕܥܠܠܐ ܙܒܢܢܝܬܐ ܘܫܕܪ ܠܗ ܥܠ ܒܝܠܕܪܐ ܐܠܩܛܪܘܢܝܐ ܬܘܚܡܐ ܠܬܚܬ',
'createaccountreason' => 'ܥܠܬܐ',
+'createacct-benefit-heading' => 'ܝܬܒܐ ܕ{{SITENAME}} ܐܣܬܝܡ ܒܝܕ ܐܢܫ̈ܐ ܐܟܘܬܟ.',
'badretype' => 'ܡܠܬܐ ܕܥܠܠܐ ܟܬܒܬ ܐܢܬ ܠܐ ܐܘܝܢܬܐ.',
'userexists' => 'ܫܡܐ ܕܡܦܠܚܢܐ ܕܐܥܠܬ ܫܩܝܠܐ ܐܝܬܘܗܝ.
ܫܦܝܪܐܝܬ ܓܒܝ ܫܡܐ ܐܚܪܢܐ.',
# Special:PasswordReset
'passwordreset' => 'ܣܘܡ ܡܠܬܐ ܕܥܠܠܐ ܙܒܢ ܐܚܪܝܢ',
'passwordreset-legend' => 'ܣܘܡ ܡܠܬܐ ܕܥܠܠܐ ܙܒܢ ܐܚܪܝܢ',
-'passwordreset-pretext' => '{{PLURAL:$1||ܐܥܠ ܚܕ ܡܢ ܡܢܘܬ̈ܐ ܕܝܕ̈ܥܬܐ ܠܬܬܚܬ}}',
'passwordreset-username' => 'ܫܡܐ ܕܡܦܠܚܢܐ:',
'passwordreset-domain' => 'ܪܘܚܬܐ:',
'passwordreset-email' => 'ܡܘܢܥܐ ܕܒܝܠܕܪܐ ܐܠܩܛܪܘܢܝܐ:',
'accmailtitle' => 'ܡܠܬܐ ܕܥܠܠܐ ܫܕܪܬ',
'newarticle' => '(ܚܕܬܐ)',
'newarticletext' => "ܐܬܬ ܒܬܪ ܐܣܪܐ ܕܦܐܬܐ ܕܠܐ ܐܬܬܣܝܡܬ ܥܕܡܫ.
-ܠܣܘܝܡܐ ܕܦܐܬܐ ܗܕܐ, ܫܪܝ ܠܟܬܒܬܐ ܒܣܢܕܘܩܐ ܠܬܚܬ (ܚܙܝ [[{{MediaWiki:Helppage}}|ܦܐܬܐ ܕܥܘܕܪܢܐ]] ܠܐܚܪܢܐ ܝܕ̈ܥܬܐ).
-ܐܢ ܐܬܬ ܠܗܪܟܐ ܦܘܕܐܝܬ, ܕܘܫ ܠܦܪܡܝܬܐ ܕ '''ܠܒܣܬܪ back''' ܒܡܦܐܬܢܐ ܕܝܠܟ.",
+ܠܣܘܝܡܐ ܕܦܐܬܐ ܗܕܐ، ܫܪܝ ܠܟܬܒܬܐ ܒܣܢܕܘܩܐ ܠܬܚܬ (ܚܙܝ [[{{MediaWiki:Helppage}}|ܦܐܬܐ ܕܥܘܕܪܢܐ]] ܠܐܚܪܢܐ ܝܕ̈ܥܬܐ).
+ܐܢ ܐܬܬ ܠܗܪܟܐ ܦܘܕܐܝܬ، ܟܒܘܫ ܥܠ ܦܪܡܝܬܐ ܕ '''ܠܒܣܬܪ back''' ܒܡܦܐܬܢܐ ܕܝܠܟ.",
'updated' => '(ܐܬܚܕܬ)',
'note' => "'''ܡܥܝܪܢܘܬܐ:'''",
'previewnote' => "'''ܕܟܪ ܕܗܢܘ ܚܝܪܐ ܩܕܡܝܐ ܒܠܚܘܕ'''.
'searchmenu-legend' => 'ܓܒܝܬ̈ܐ ܕܒܨܝܐ',
'searchmenu-exists' => "'''ܐܝܬ ܦܐܬܐ ܒܫܡ \"[[:\$1]]\" ܥܠ ܗܢܐ ܘܝܩܝ'''",
'searchmenu-new' => "'''ܒܪܝ ܦܐܬܐ \"[[:\$1]]\" ܥܠ ܗܢܐ ܘܝܩܝ!'''",
-'searchhelp-url' => 'Help:ܚܒܝܫܬ̈ܐ',
'searchprofile-articles' => 'ܦܐܬܬ̈ܐ ܕܚܒܝܫܬ̈ܐ',
'searchprofile-project' => 'ܦܐܬܬ̈ܐ ܕܬܪ̈ܡܝܬܐ ܘܕܥܘܕܪܢܐ',
'searchprofile-images' => 'ܡܝܕ̈ܝܐ ܣܓܝܐ̈ܐ (Multimedia)',
'unwatchthispage' => 'ܟܠܝ ܪܗܝܐ',
'watchnochange' => 'ܐܦܠܐ ܚܕ ܡܢ ܦܐܬܬ̈ܐ ܒܪ̈ܗܝܬܟ ܐܫܬܚܠܦܬ ܒܡܬܚܐ ܕܙܒܢܐ ܓܠܝܚܐ.',
'watchlist-details' => '{{PLURAL:$1|$1 ܦܐܬܐ|$1 ܦܐܬܬ̈ܐ}} ܒܪ̈ܗܝܬܟ, ܫܒܘܩ ܡܢ ܦܐܬܬ̈ܐ ܕܡܡܠܠܐ.',
-'wlheader-showupdated' => "* ܦܐܬܬ̈ܐ ܕܐܫܬܚܠܦܢ ܡܢ ܒܬܪ ܣܘܥܪܢܟ ܐܚܪܝܐ ܡܬܓܠܚܢ ܒܣܪܛܐ '''ܚܠܝܡܐ'''",
+'wlheader-showupdated' => "ܦܐܬܬ̈ܐ ܕܐܫܬܚܠܦܢ ܡܢ ܒܬܪ ܣܘܥܪܢܟ ܐܚܪܝܐ ܡܬܓܠܚܢ ܒܣܪܛܐ '''ܚܠܝܡܐ'''",
'wlnote' => "ܠܬܚܬ {{PLURAL:$1|ܫܘܚܠܦܐ ܐܚܪܝܐ| '''$1''' ܫܘܚܠܦ̈ܐ ܐܚܪ̈ܝܐ}} {{PLURAL:$2|ܒܫܥܬܐ ܐܚܪܝܬܐ|'''$2''' ܒܫܥܬ̈ܐ ܐܚܪ̈ܝܬܐ}}, ܠܦܘܬ $3, $4.",
'wlshowlast' => 'ܚܘܝ $1 ܫܥܬ̈ܐ $2 ܝܘܡܬ̈ܐ ܐܚܪ̈ܝܐ $3',
'watchlist-options' => 'ܨܒܝܢܝܘܬ̈ܐ ܕܪ̈ܗܝܬܐ',
'disclaimers' => 'Tukuldungun ñi pin ley',
'disclaimerpage' => 'Project:Katrütuwün ñi llowdüngun',
'edithelp' => 'Kellü wirin',
-'edithelppage' => 'Help:Chum wiringekey pakina',
'helppage' => 'Help:Trokiñdungu',
'mainpage' => 'Ñidol Wülngiñ',
'mainpage-description' => 'Ñidol Wülngiñ',
'viewprevnext' => 'Pen ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-exists' => "'''Müley kiñe wülngiñ «[[:$1]]» pingelu feychi wiki mew'''",
'searchmenu-new' => "'''¡Llitun pakina «[[:$1]]» tüfachi wiki mew!'''",
-'searchhelp-url' => 'Help:Trokiñdungu',
'searchprofile-articles' => 'Trokiñdungu wülngiñ',
'searchprofile-project' => 'Kellu wülngiñ ka Deumandungu wülngiñ',
'searchprofile-images' => 'Fill dungu (adentun, dungun, fidew)',
# Special:ListGroupRights
'listgrouprights-members' => '(koneltulu kellufe ñi wif)',
-# E-mail user
+# Email user
'emailuser' => 'Amulün werküwe tüfachi kellufe',
'emailsubject' => 'Dungu',
'emailmessage' => 'Dungu',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-artist' => 'Che llitun mew',
'exif-exposuretime-format' => '$1 sek ($2)',
'tog-shownumberswatching' => 'biyn aadad lmostakhdimin lmoraqibin',
'tog-oldsig' => 'moaayana litawqia lmawjod',
'tog-fancysig' => 'aaml nass bhal nass wiki (bla wsla otomatikia)',
-'tog-externaleditor' => 'stakhdm moharrir khariji iftiradiyan(faqat lilkhobaraa, kaybghi iaadadat khassa f lordinator dyalk)',
-'tog-externaldiff' => 'stakhdm farq khariji iftiradiyan(faqat lilkhobaraa, kaybghi iaadadat khassa f lordinator dyalk)',
'tog-showjumplinks' => 'mkkn wassalat "sir l" lmossaaida',
'tog-uselivepreview' => 'staml listiarad saria (khasso javascipt) (tjribi)',
'tog-forceeditsummary' => 'nbhni ila kandkhl molkhass taadil khawi',
'disclaimers' => 'Inḍaraṫ',
'disclaimerpage' => 'Project:Inḍaraṫ ĝammin',
'edithelp' => 'Mosaĝada',
-'edithelppage' => 'Help:Kifaċ tṣayeb ċi ṣ-ṣefḫa',
'helppage' => 'Help:Meḍmon',
'mainpage' => 'Ṣ-Ṣefḫa l-owla',
'mainpage-description' => 'Ṣ-Ṣefḫa l-owla',
# Special:PasswordReset
'passwordreset' => 'ĝawd klmṫ s-srr',
-'passwordreset-text' => 'ĝmmer had l-istimara baċ iwṣlek email ṫaĝ ṫdkir b-ṫṫafaṣil dl-ḫisab ṫaĝk.',
'passwordreset-legend' => 'ĝawd klmṫ s-srr',
'passwordreset-disabled' => 'maymkn-ċ ṫĝawd klmṫ s-srr f-had l-wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||kṫb wḫda mn l-bayanaṫ l-ṫḫṫ}}',
'passwordreset-username' => 'smiṫ l-mosṫĥdim:',
'passwordreset-email' => 'ĝonwan l-email:',
'passwordreset-emailtitle' => 'ṫafaṣil l-ḫisab f-{{SITENAME}}',
'searchmenu-legend' => 'khiyarat lbaht',
'searchmenu-exists' => "'''ḫṫṫa ṣfḫa f-had l-wiki ma smiṫha \"[[:\$1]]\".'''",
'searchmenu-new' => "'''ṣayb f-had l-wiki ṣfḫṫ \"[[:\$1]]\"!'''",
-'searchhelp-url' => 'Help:Meḍmon',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ṫṣffeh ṣfaḫi b-had ṣ-ṣabiqa]]',
'searchprofile-articles' => 'sfht mohtawa',
'searchprofile-project' => 'sfhai dyal lmossada ol mchroa',
Imken lik ṫqeleb fe google.
Laḫed ana imken ikono l-indexaṫ dial {{SITENAME}} qdam o ma bqaoċ ṣalḫin.',
-# Quickbar
-'qbsettings' => "L-lawḫa 's-sariĝa",
-'qbsettings-none' => 'Ma kaynċ',
-'qbsettings-fixedleft' => "Meḫbos fe 'ċ-ċmal",
-'qbsettings-fixedright' => "Meḫbos fe 'l-limin",
-'qbsettings-floatingleft' => "Ḫor fe 'ċ-ċmal",
-'qbsettings-floatingright' => "Ḫor fe 'l-limen",
-'qbsettings-directionality' => 'ṫabṫ, ĝla ḫasab ṫṫijah l-kṫaba b-loġṫk',
-
# Preferences page
'preferences' => 'ṫfḍilaṫ',
'mypreferences' => 'Ḫajaṫ li kanfeḍḍel',
'http-read-error' => "khata' qira'at HTTP.",
'http-timed-out' => 'salat moddat mohlat talab dyal HTTp.',
'http-curl-error' => "khata' f jalb lmassar: $1",
-'http-host-unreachable' => 'manqdroch nwslo l had lmassar.',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'manqdroch nwslo l had lmassar.',
'unwatchthispage' => 'hiyd mn list dyal s-suivi dyali',
'notanarticle' => 'Hadi maċi ṣefḫaṫ meḍmon',
'watchlist-details' => '{{PLURAL:$1|ṣefḫa weḫda|$1 de ṣ-ṣefḫaṫ}} kaynin fe l-lista dyal s-suivi dyalṫek, bla ma nḫesbo ṣ-ṣefḫaṫ dyal n-niqaċ.',
-'wlheader-enotif' => '* l-iĝlam bl-email mtloq.',
-'wlheader-showupdated' => "* ṣ-ṣfaḫi lli ṫġyyeraṫ mn aĥir ẓiyaṛa ṫaĝk mkṫoba b-ĥatt '''ġliḍ'''",
+'wlheader-enotif' => 'l-iĝlam bl-email mtloq.',
+'wlheader-showupdated' => "ṣ-ṣfaḫi lli ṫġyyeraṫ mn aĥir ẓiyaṛa ṫaĝk mkṫoba b-ĥatt '''ġliḍ'''",
'iteminvalidname' => "moċkil mĝa l-madda '$1', smia ma ṣḫiḫa-ċ...",
'wlshowlast' => 'Werri l-$1 de s-swayeĝ o l-$2 iyam l-leĥĥrin, ola werri $3',
'watchlist-options' => 'Lé-Opsyon de l-lista dyal s-suivi',
/*
Short names for language variants used for language conversion links.
-To disable showing a particular link, set it to 'disable', e.g.
-'variantname-zh-sg' => 'disable',
Variants for Chinese language
*/
'variantname-zh-hans' => 'Kṫaba',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'laard',
'exif-imagelength' => 'lirtifaa',
'exif-bitspersample' => 'bit lkol mokawwin',
'version-software-product' => 'lmntoj',
'version-software-version' => 'noskha',
-# Special:FilePath
-'filepath' => 'massar lfichier',
-'filepath-page' => 'mileff:',
-'filepath-submit' => 'Sir',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'qlleb ĝla milffaṫ mḍoḅla',
'fileduplicatesearch-summary' => 'qlleb ĝla milffaṫ mḍoḅla ĝla asas l-qyam dl-haċ.',
'tog-shownumberswatching' => 'بين عدد اليوزرز المراقبين',
'tog-oldsig' => 'الامضا دلوقتى:',
'tog-fancysig' => 'امضا خام (من غير لينك أوتوماتيك)',
-'tog-externaleditor' => 'استخدم محرر خارجى بشكل افتراضى (للخبرا بس، يحتاج إعدادات خاصة على كومبيوترك) ([//www.mediawiki.org/wiki/Manual:External_editors لمزيد من المعلومات].)',
-'tog-externaldiff' => 'استخدم فرق خارجى بشكل افتراضى (للخبرا بس، يحتاج إعدادات خاصة على كومبيوترك) ([//www.mediawiki.org/wiki/Manual:External_editors لمعلومات اكتر].)',
'tog-showjumplinks' => 'خلى وصلات "روح لـ" تكون شغالة.',
'tog-uselivepreview' => 'استخدم البروفة السريعة (جافاسكريبت) (تجريبي)',
'tog-forceeditsummary' => 'نبهنى عند تدخيل ملخص للتعديل فاضي',
'tog-showhiddencats' => 'بين التّصنيفات المستخبية',
'tog-noconvertlink' => 'عطل تحويل عناوين الوصلات',
'tog-norollbackdiff' => 'الغى الاختلافات بعد ما تعمل الرول باك',
+'tog-useeditwarning' => 'حذّرنى لما اسيب صفحة تعديل فيها تغييرات مش متسييڤه',
'underline-always' => 'دايما',
'underline-never' => 'ابدا',
'lastmodifiedat' => 'الصفحه دى اتعدلت اخر مره فى $1, $2.',
'viewcount' => 'الصفحة دى اتدخل عليها{{PLURAL:$1|مرة واحدة|مرتين|$1 مرات|$1 مرة}}.',
'protectedpage' => 'صفحه محميه',
-'jumpto' => 'نُط على:',
+'jumpto' => 'روح على:',
'jumptonavigation' => 'استكشاف',
'jumptosearch' => 'تدوير',
'view-pool-error' => 'متأسفين, السيرفرات عليها حمل كبير دلوقتى.
'disclaimers' => 'تنازل عن مسئوليه',
'disclaimerpage' => 'Project:تنازل عن مسئوليه عمومى',
'edithelp' => 'مساعده فى التعديل',
-'edithelppage' => 'Help:تعديل',
'helppage' => 'Help:محتويات',
'mainpage' => 'الصفحه الرئيسيه',
'mainpage-description' => 'الصفحه الرئيسيه',
'edit-no-change' => 'تعديلك تم تجاهله، لأن ما حصلش أى تعديل للنص.',
'edit-already-exists' => 'لم يمكن إنشاء صفحة جديدة.
هى موجودة بالفعل.',
+'editwarning-warning' => 'لو سيبت الصفحه دى ممكن يخلّيك تضيّع اى تغييرات عملتها.
+لو انت مسجّل دخولك, ممكن تعطّل التحذير ده من الجزء بتاع "تعديل" فى تفضيلاتك.',
# Parser/template warnings
'expensive-parserfunction-warning' => 'تحذير: الصفحه دى فيهااستدعاءات دالة محلل كثيرة مكلفة.
'searchmenu-legend' => 'اختيارات التدوير',
'searchmenu-exists' => "*الصفحة '''[[$1]]'''",
'searchmenu-new' => "'''ابتدى الصفحه \"[[:\$1]]\" ع الويكى دا!'''",
-'searchhelp-url' => 'Help:محتويات',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|استعرض الصفحات اللى بتبتدى بالبريفيكس دا]]',
'searchprofile-articles' => 'صفحات محتوى',
'searchprofile-project' => 'صفحات المساعده و المشروع',
ممكن تدور فى جوجل دلوقتي.
لاحظ أن فهارسه لمحتوى {{SITENAME}} يمكن تكون مش متحدثة.',
-# Quickbar
-'qbsettings' => 'البار السريع',
-'qbsettings-none' => 'ما فى ش',
-'qbsettings-fixedleft' => 'متثبت فى الشمال',
-'qbsettings-fixedright' => 'متثبت فى اليمين',
-'qbsettings-floatingleft' => 'عايم على الشمال',
-'qbsettings-floatingright' => 'عايم على اليمين',
-
# Preferences page
'preferences' => 'تفضيلات',
'mypreferences' => 'تفضيلاتى',
'http-read-error' => 'فى غلط فى قراية ال HTTP',
'http-timed-out' => 'طلب ال HTTP خلص وقته',
'http-curl-error' => 'حصل غلط و احنا بنجيب الURL : $1',
-'http-host-unreachable' => 'ما قدرناش نوصل لل URL.',
'http-bad-status' => 'HTTP : حصلت مشكله وقت طلب ال $1 $2',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'watchnochange' => 'مافيش ولا صفحة اتعدلت فى لستة مراقبتك فى الفترة الزمنية اللى حددتها.',
'watchlist-details' => '{{PLURAL:$1|$1 صفحه|$1 صفحه}} فى قايمه مراقبتك، بدون عد صفحات المناقشه.',
'wlheader-enotif' => '*خاصية الاعلام بالايميل متفعلة',
-'wlheader-showupdated' => "* الصفحات اللى اتغيرت بعد زيارتك ليها اخر مرة معروضة بالخط '''العريض'''",
+'wlheader-showupdated' => "الصفحات اللى اتغيرت بعد زيارتك ليها اخر مرة معروضة بالخط '''العريض'''",
'watchmethod-recent' => 'التشييك على التعديلات الاخيرة للصفحات المتراقبة',
'watchmethod-list' => 'التشييك فى الصفحات المتراقبة على التعديلات الاخيرة',
'watchlistcontains' => 'لستة المراقبة بتاعتك فيها $1 {{PLURAL:$1|صفحة|صفحات}}.',
'blanknamespace' => '(رئيسى)',
# Contributions
-'contributions' => 'تعديلات اليوزر',
+'contributions' => 'تعديلات اليوزر {{GENDER:$1|اليوزر|اليوزره}}',
'contributions-title' => 'مساهمات اليوزر ل$1',
'mycontris' => 'تعديلاتى',
'contribsub2' => 'لليوزر $1 ($2)',
'nocontribs' => 'مالقيناش تغييرات تطابق المحددات دي.',
-'uctop' => '(فوق)',
+'uctop' => '(آخر تعديل)',
'month' => 'من شهر (واللى قبل كده):',
'year' => 'من سنة (واللى قبل كده):',
# Stylesheets
'common.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على كل الواجهات */',
-'standard.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة ستاندرد */',
-'nostalgia.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة نوستالشيا */',
'cologneblue.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة كولون بلو */',
'monobook.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة مونوبوك */',
-'myskin.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة ماى سكين */',
-'chick.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة تشيك */',
-'simple.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة سيمبل */',
'modern.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على مستخدمى واجهة مودرن */',
'vector.css' => '/* CSS اللى هنا حتأثر على اليوزرز اللى بيستخدموا واجهة فكتور */',
'print.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على ناتج الطباعة */',
-'handheld.css' => '/* الأنماط المتراصة CSS المعروضة هنا ستؤثر على الأجهزة المحمولة بالاعتماد على الواجهة المضبوطة فى $wgHandheldStyle */',
# Scripts
'common.js' => '/* أى جافاسكريبت هناح يتحمل لكل اليوزرز مع كل تحميل للصفحة. */',
-'standard.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة ستاندرد */',
-'nostalgia.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة نوستالجيا */',
'cologneblue.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة كولون بلو */',
'monobook.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة مونوبوك */',
-'myskin.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة ماى سكين */',
-'chick.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة تشيك */',
-'simple.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة سيمبل */',
'modern.js' => '/* أى جافاسكريبت هنا ح تتحمل لليوزرز اللى بيستعملو واجهة مودرن */',
'vector.js' => '/* اى جافاسكريبت هنا حتتحمل لكل يوزر بيستخدم واجهة فكتور */',
'spam_blanking' => 'كل النسخ فيها لينكات ل $1، فضيها',
# Skin names
-'skinname-standard' => 'كلاسيك',
-'skinname-nostalgia' => 'نوستالجيا',
'skinname-cologneblue' => 'كولون بلو',
'skinname-monobook' => 'مونوبوك',
-'skinname-myskin' => 'ماى سكين',
-'skinname-chick' => 'تشيك',
-'skinname-simple' => 'سيمبل',
'skinname-modern' => 'مودرن',
# Patrolling
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'العرض',
'exif-imagelength' => 'الطول',
'exif-bitspersample' => 'بتس لكل مكون',
'exif-gpsdatestamp' => 'تاريخ GPS',
'exif-gpsdifferential' => 'تصحيح GPS التفاضلي',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'مش مضغوط',
'exif-compression-6' => 'جيه بى إى جي',
'version-software-product' => 'المنتج',
'version-software-version' => 'النسخه',
-# Special:FilePath
-'filepath' => 'مسار ملف',
-'filepath-page' => 'الملف:',
-'filepath-submit' => 'المسار',
-'filepath-summary' => 'الصفحة المخصوصة دى بتعرض المسار الكامل بتاع ملف.
-الصور بتتعرض بدقة كاملة، أنواع الملفات التانية ح تشتغل فى البرنامج بتاعهم مباشرة.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'دور على الملفات المتكررة',
'fileduplicatesearch-summary' => 'دور على الملفات المتكررة على اساس قيمة الهاش بتاعتها.',
* @file
*
* @author Bishnu Saikia
+ * @author Britul
* @author Chaipau
* @author Gahori
* @author Gitartha.bordoloi
$messages = array(
# User preference toggles
-'tog-underline' => 'সংযোগ সমূহ অধোৰেখিত কৰক:',
+'tog-underline' => 'সংযোগসমূহ অধোৰেখিত কৰক:',
'tog-justify' => 'দফাৰ সীমা সমান কৰাক',
'tog-hideminor' => 'সাম্প্ৰতিক সাল-সলনিত অগুৰুত্বপূৰ্ণ সম্পাদনা নেদেখুৱাব',
'tog-hidepatrolled' => 'সাম্প্ৰতিক সাল-সলনিত তহলদাৰী সম্পাদনা নেদেখুৱাব',
'editfont-serif' => 'চেৰিফ ফন্ট',
# Dates
-'sunday' => 'দà§\87à¦\93à¦\81বাৰ',
+'sunday' => 'দেওবাৰ',
'monday' => 'সোমবাৰ',
'tuesday' => 'মঙ্গলবাৰ',
'wednesday' => 'বুধবাৰ',
'thursday' => 'বৃহস্পতিবাৰ',
'friday' => 'শুক্ৰবাৰ',
'saturday' => 'শণিবাৰ',
-'sun' => 'দেওঁ',
+'sun' => 'দেও',
'mon' => 'সোম',
'tue' => 'মংগল',
'wed' => 'বুধ',
'feb' => 'ফেব্ৰুৱাৰী:',
'mar' => 'মাৰ্চ',
'apr' => 'এপ্ৰিল',
-'may' => 'মে',
+'may' => "মে'",
'jun' => 'জুন',
'jul' => 'জুলাই',
'aug' => 'আগষ্ট',
'oct' => 'অক্টোবৰ:',
'nov' => 'নৱেম্বৰ:',
'dec' => 'ডিচেম্বৰ:',
+'january-date' => 'জানুৱাৰী $1',
+'february-date' => 'ফেব্ৰুৱাৰী $1',
+'march-date' => 'মাৰ্চ $1',
+'april-date' => 'এপ্ৰিল $1',
+'may-date' => "মে' $1",
+'june-date' => 'জুন $1',
+'july-date' => 'জুলাই $1',
+'august-date' => 'আগষ্ট $1',
+'september-date' => 'ছেপ্টেম্বৰ $1',
+'october-date' => 'অক্টোবৰ $1',
+'november-date' => 'নৱেম্বৰ $1',
+'december-date' => 'ডিচেম্বৰ $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|শ্ৰেণী|শ্ৰেণীসমূহ}}',
'searchbutton' => 'সন্ধান কৰক',
'go' => 'যাওক',
'searcharticle' => 'যাওক',
-'history' => 'à¦\96তিয়ান',
-'history_short' => 'à¦\96তিয়ান',
-'updatedmarker' => 'মà§\8bৰ শà§\87হতà§\80য়া à¦\86à¦\97মনৰ পাà¦\9bৰ পৰিৱৰà§\8dতনবিলাà¦\95',
-'printableversion' => 'পà§\8dৰà¦\95াশনযà§\8bà¦\97à§\8dয সà¦\82সà§\8dà¦\95ৰন',
+'history' => 'পà§\83ষà§\8dঠা à¦\87তিহাস',
+'history_short' => 'à¦\87তিহাস',
+'updatedmarker' => 'মà§\8bৰ শà§\87হতà§\80য়া পৰিদৰà§\8dশনৰ পাà¦\9bৰ সালসলনিবà§\8bৰ',
+'printableversion' => 'পà§\8dৰà¦\95াশযà§\8bà¦\97à§\8dয সà¦\82সà§\8dà¦\95ৰণ',
'permalink' => 'স্থায়ী সূত্ৰ (লিংক)',
'print' => 'প্ৰিণ্ট কৰিবলৈ',
'view' => 'দেখুৱাওক',
'edit' => 'সম্পাদনা',
'create' => 'সৃষ্টি কৰক',
-'editthispage' => 'বৰ্তমান পৃষ্ঠাটো সম্পাদন কৰিবলৈ',
+'editthispage' => 'বৰ্তমান পৃষ্ঠাটো সম্পাদনা কৰিবলৈ',
'create-this-page' => 'নতুন পৃষ্ঠা সৃষ্টি কৰক',
'delete' => 'বিলোপ',
'deletethispage' => 'এই পৃষ্ঠাখন বিলোপ কৰক',
+'undeletethispage' => 'এই পৃষ্ঠা পুনৰুদ্ধাৰ কৰক',
'undelete_short' => '{{PLURAL:$1|বিলোপিত পৃষ্ঠাৰ|$1 সংখ্যক বিলোপিত পৃষ্ঠাৰ}} পূৰ্ববৎকৰণ',
'viewdeleted_short' => '{{PLURAL:$1| এটা বিলুপ্ত সম্পাদনা|$1 টা বিলুপ্ত সম্পাদনা}} দেখুৱাওক',
'protect' => 'সুৰক্ষিত কৰক',
'disclaimers' => 'দায়লুপ্তি',
'disclaimerpage' => 'Project:সাধাৰণ দায়লুপ্তি',
'edithelp' => 'সম্পাদনাৰ বাবে সহায়',
-'edithelppage' => 'Help:সম্পাদনা',
'helppage' => 'Help:সমল',
'mainpage' => 'বেটুপাত',
'mainpage-description' => 'বেটুপাত',
'missingarticle-rev' => '(সংস্কৰণ#: $1)',
'missingarticle-diff' => '(তফাৎ: $1, $2)',
'readonly_lag' => 'তথ্যকোষ স্বয়ংক্ৰিয়ভাৱে বন্ধ হৈছে যাতে দ্বিতীয় শ্ৰেণীৰ তথ্যকোষৰ চাৰ্ভাৰ প্ৰধান তথ্যকোষৰ চাৰ্ভাৰৰ অৱস্থালৈ আহিব পাৰে ।',
-'internalerror' => 'à¦\86à¦à§\8dযনà§\8dতৰà§\80ণ à¦\95্ৰুটি',
+'internalerror' => 'à¦\86à¦à§\8dযনà§\8dতৰà§\80ণ ত্ৰুটি',
'internalerror_info' => 'আভ্যন্তৰীণ ত্ৰুটি: $1',
'fileappenderrorread' => 'যোৰা দিয়াৰ সময়ত "$1" পাঠ্য কৰা নহ\'ল ।',
'fileappenderror' => '"$2"ৰ লগত "$1"ৰ সংযোগ কৰা নহ\'ল ।',
'filenotfound' => '"$1" নামৰ ফাইলটো বিচাৰি পোৱা নগ’ল।',
'fileexistserror' => '"$1" ফাইলটোত লিখিব নোৱাৰি: ফাইলটো আগৰ পৰাই আছে',
'unexpected' => 'অনাকাংক্ষিত মূল্য: "$1"="$2".',
-'formerror' => 'à¦à§\81ল: ফৰà§\8dম খন জমা দিব পৰা নগ’ল',
-'badarticleerror' => 'à¦\8fà¦\87 পà§\83ষà§\8dঠাà¦\9fà§\8bত এই কামটো কৰিব নোৱাৰি ।',
+'formerror' => 'তà§\8dৰà§\81à¦\9fি: পà§\8dৰপতà§\8dৰখন জমা দিব পৰা নগ’ল',
+'badarticleerror' => 'à¦\8fà¦\87 পà§\83ষà§\8dঠাà¦\96নত এই কামটো কৰিব নোৱাৰি ।',
'cannotdelete' => '"$1" পৃষ্ঠা বা নথিখন বিলোপ কৰা অসম্ভৱ ।
-সম্ভৱ আনে আগেই বিলোপ কৰিছে ।',
+সমà§\8dà¦à§± à¦\86নà§\87 à¦\86à¦\97তà§\87à¦\87 বিলà§\8bপ à¦\95ৰিà¦\9bà§\87 ।',
'cannotdelete-title' => '"$1" পৃষ্ঠা বিলোপ কৰিব নোৱাৰি',
'delete-hook-aborted' => 'হুকৰ দ্বাৰা সম্পাদনা প্ৰত্যাখ্যান কৰা হৈছে ।
ইয়াৰ কোনো ব্যাখ্যা নাই ।',
'namespaceprotected' => "আপোনাৰ '''$1''' নামস্থানৰ পৃষ্ঠাসমূহ সম্পাদনা কৰাৰ অধিকাৰ নাই।",
'customcssprotected' => 'এই CSS পৃষ্ঠা সম্পাদনা কৰাৰ অধিকাৰ আপোনাৰ নাই, কাৰণ ইয়াত আন সদস্যৰ ব্যক্তিগত পছন্দসমূহত আছে ।',
'customjsprotected' => 'এই জাভালিপিৰ পৃষ্ঠা সম্পাদনা কৰাৰ অধিকাৰ আপোনাৰ নাই, কাৰণ ইয়াত আন সদস্যৰ ব্যক্তিগত পছন্দসমূহত আছে ।',
+'mycustomcssprotected' => 'এই CSS পৃষ্ঠা সম্পাদনা কৰিবলৈ আপোনাৰ অনুমতি নাই।',
+'mycustomjsprotected' => 'এই JavaScript পৃষ্ঠা সম্পাদনা কৰিবলৈ আপোনাৰ অনুমতি নাই।',
'ns-specialprotected' => 'বিশেষ পৃষ্ঠা সম্পাদিত কৰিব নোৱাৰি।',
'titleprotected' => "[[User:$1|$1]] সদস্যজনে এই শিৰোনাণমাৰ লিখনী লিখা ৰোধ কৰিছে ।
ইয়াৰ কাৰণ হৈছে ''$2'' ।",
'gotaccount' => "আপুনি সদস্য হয়নে? '''$1'''",
'gotaccountlink' => 'প্ৰৱেশ',
'userlogin-resetlink' => 'আপোনাৰ প্ৰৱেশ তথ্য পাহৰিছে?',
-'userlogin-resetpassword-link' => 'আপোনাৰ গুপ্তশব্দ ন-কৈ বহাওক',
+'userlogin-resetpassword-link' => 'à¦\86পà§\8bনাৰ à¦\97à§\81পà§\8dতশবà§\8dদ ন-à¦\95à§\88 বহà§\81ৱাà¦\93à¦\95',
'helplogin-url' => 'Help:প্ৰৱেশ/লগ্-ইন',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|প্ৰৱেশ সম্পৰ্কীয় সাহায্য]]',
'createacct-join' => 'আপোনাৰ তথ্যসমূহ তলত লিখক।',
আৰু অন্যান্য ই-মেইল পঠোৱাৰ আগতে, আপোনাৰ সদস্যতাৰ নিশ্চিত কৰিবলৈ সেই ই-মেইলত দিয়া নিৰ্দেশনা আপুনি অনু্সৰণ কৰিব লাগিব।',
'throttled-mailpassword' => "যোৱা {{PLURAL:$1|এঘণ্টাত|$1 ঘণ্টাত}} এখন গুপ্তশব্দ উদ্ধাৰ ইমেইল পঠিওৱা হৈছে।
অবৈধ ব্যৱহাৰ ৰোধ কৰিবলৈ প্ৰতি {{PLURAL:$1|এঘণ্টাত|$1 ঘণ্টাত}} এবাৰহে গুপ্তশব্দ উদ্ধাৰ ইমেইল পঠিওৱা হ'ব।",
-'mailerror' => 'à¦\87-মà§\87à¦\87ল পঠà§\8bৱাত সমস্যা হৈছে: $1',
+'mailerror' => 'à¦\87-মà§\87à¦\87ল পঠিà¦\93ৱাত সমস্যা হৈছে: $1',
'acct_creation_throttle_hit' => 'যোৱা ২৪ ঘন্টাত আপোনাৰ আই-পি ঠিকনাৰ পৰা এই ৱিকিৰ পঢ়োঁতাই {{PLURAL:$1|১-টা একাউন্ট|$1-টা একাউন্ট}} সৃষ্টি কৰিলে, যিটো সৰ্বোচ্চ অনুমোদনকৃত ।
এতেকে, এই আই-পি ঠিকনাৰ পৰা এই মূহুৰ্তত একাউন্ট সৃষ্টি কৰিব নোৱাৰিব ।',
'emailauthenticated' => 'আপোনাৰ ই-মেইল ঠিকনাটো $2 তাৰিখৰ $3 বজাত নিশ্চিত কৰা হৈছিল ।',
'cannotchangeemail' => 'এই ৱিকিত একাউন্ট ই-মেইল ঠিকনা সলনি কৰিব পৰা নাযায়',
'emaildisabled' => 'এই ছাইটে ইমেইল পঠিয়াব নোৱাৰে',
'accountcreated' => "একাউণ্ট সৃষ্টি কৰা হ'ল",
-'accountcreatedtext' => "$1ৰ কাৰণে সদস্য একাউণ্ট সৃষ্টি কৰা হ'ল।",
+'accountcreatedtext' => "[[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]])ৰ কাৰণে সদস্য একাউণ্ট সৃষ্টি কৰা হ'ল।",
'createaccount-title' => '{{SITENAME}}ৰ কাৰণে একাউণ্ট সৃষ্টি কৰক।',
'createaccount-text' => 'আপোনাৰ ই-মেইল ঠিকনাৰ কাৰণে {{SITENAME}} ($4)ত "$2" নামৰ কোনোবাই, "$3" গুপ্তশব্দ দি সদস্যভুক্তি কৰিছে। অনুগ্ৰহ কৰি আপুনি প্ৰৱেশ কৰক আৰু গুপ্তশব্দটো সলনি কৰক।
'oldpassword' => 'পুৰণি গুপ্তশব্দ:',
'newpassword' => 'নতুন গুপ্তশব্দ:',
'retypenew' => 'নতুন গুপ্তশব্দ আকৌ লিখক',
-'resetpass_submit' => 'গুপ্তশব্দ বহাওক আৰু প্ৰৱেশ কৰক',
+'resetpass_submit' => 'à¦\97à§\81পà§\8dতশবà§\8dদ বহà§\81ৱাà¦\93à¦\95 à¦\86ৰà§\81 পà§\8dৰৱà§\87শ à¦\95ৰà¦\95',
'resetpass_success' => 'আপোনাৰ গুপ্তশব্দ সফলতাৰে সলনি কৰা হৈছে, এতিয়া আপুনি প্ৰৱেশ কৰি আছে...',
'resetpass_forbidden' => 'গুপ্তশব্দ সলনি কৰিব নোৱাৰি',
'resetpass-no-info' => 'এই পৃষ্ঠা প্ৰত্যক্ষ ভাৱে ঢুকি পাবলৈ আপুনি প্ৰৱেশ কৰিব লাগিব ।',
'resetpass-abort-generic' => 'এটা এক্সটেন্ছনৰদ্বাৰা গুপ্তশব্দ সলনি কাৰ্য বাতিল কৰা হৈছে।',
# Special:PasswordReset
-'passwordreset' => 'গুপ্তশব্দ ন-কৈ বহাওক',
-'passwordreset-text' => ' আপোনাৰ গুপ্তশব্দ ন-কৈ বহুৱাবলৈ তলৰ প্ৰপত্ৰ সম্পূৰ্ণ কৰক।',
+'passwordreset' => 'à¦\97à§\81পà§\8dতশবà§\8dদ ন-à¦\95à§\88 বহà§\81ৱাà¦\93à¦\95',
+'passwordreset-text-one' => 'আপোনাৰ গুপ্তশব্দ ন-কৈ বহুৱাবলৈ এই প্ৰপত্ৰ পূৰণ কৰক।',
'passwordreset-legend' => 'গুপ্তশব্দ ন-কৈ বহাওক',
'passwordreset-disabled' => 'এই ৱিকিত গুপ্তশব্দ নবীকৰণ নিষ্ক্ৰিয় কৰা হৈছে ।',
'passwordreset-emaildisabled' => 'এই ৱিকিত ই-মেইল বৈশিষ্টসমূহ নিষ্ক্ৰিয় কৰা হৈছে।',
-'passwordreset-pretext' => '{{PLURAL:$1||তলত উল্লেখ কৰা তথ্যৰ কোনো অংশ ভৰাওক}}',
'passwordreset-username' => 'সদস্যনাম',
'passwordreset-domain' => 'ডমেইন :',
-'passwordreset-capture' => 'ফলাফল à¦\87-মà§\87à¦\87লà¦\96ন à¦\9aাà¦\93à¦\95 ?',
-'passwordreset-capture-help' => "à¦\86পà§\81নি à¦\8fà¦\87 à¦\98ৰà¦\9fà§\8b à¦\9aিহà§\8dনিত à¦\95ৰিলà§\87 à¦\8fà¦\87 à¦\87-মà§\87à¦\87ল (à¦\86ৰà§\81 à¦\85সà§\8dথায়à§\80 à¦\97à§\81পà§\8dতশবà§\8dদ) à¦\86পà§\81নি দà§\87à¦\96া পà§\8bৱাৰ লà¦\97তà§\87 সদসà§\8dযà¦\9cনলà§\88à¦\93 পঠà§\8bৱা হ'ব।",
+'passwordreset-capture' => 'ফলাফল à¦\87-মà§\87à¦\87লà¦\96ন à¦\9aাবলà§\88 বিà¦\9aাৰিà¦\9bà§\87 ?',
+'passwordreset-capture-help' => "à¦\86পà§\81নি à¦\8fà¦\87 à¦\98ৰà¦\9fà§\8b à¦\9aিহà§\8dনিত à¦\95ৰিলà§\87 à¦\8fà¦\87 à¦\87-মà§\87à¦\87ল (à¦\86ৰà§\81 à¦\85সà§\8dথায়à§\80 à¦\97à§\81পà§\8dতশবà§\8dদ) à¦\86পà§\81নি দà§\87à¦\96া পà§\8bৱাৰ লà¦\97তà§\87 সদসà§\8dযà¦\9cনলà§\88à¦\93 পঠিà¦\93ৱা হ'ব।",
'passwordreset-email' => 'ই-মেইল ঠিকনা:',
'passwordreset-emailtitle' => '{{SITENAME}}ত একাউণ্টৰ সবিশেষ তথ্য আছে ।',
'passwordreset-emailtext-ip' => 'কোনোবাই (IP ঠিকনা $1 ৰ পৰা সম্ভৱতঃ আপুনিয়েই) {{SITENAME}} ($4) ৰ বাবে আপোনাৰ গুপ্তশব্দ ন-কৈ বহুৱাবলৈ অনুৰোধ জনাইছিল। ইমেইল ঠিকনাটোৰ লগত এই সদস্যৰ {{PLURAL:$3|একাউণ্ট|একাউণ্টবোৰ}} জড়িত হৈ আছে ।
'summary' => 'সাৰাংশ:',
'subject' => 'বিষয় / শীৰ্ষক:',
'minoredit' => 'এইটো এটা অগুৰুত্বপূৰ্ণ সম্পাদনা',
-'watchthis' => 'à¦\8fà¦\87 পà§\83ষà§\8dঠাà¦\9fà§\8b লক্ষ্য কৰক',
+'watchthis' => 'à¦\8fà¦\87 পà§\83ষà§\8dঠাà¦\96ন লক্ষ্য কৰক',
'savearticle' => 'পৃষ্ঠা সাঁচক',
'preview' => 'খচৰা',
'showpreview' => 'খচৰা চাওক',
যদি আকৌ এবাৰ যদি \"{{int:savearticle}}\" টিপে, তেনেহলে সম্পাদনা শিৰোনামা অবিহনে সংৰক্ষিত হব।",
'summary-preview' => 'সাৰাংশৰ খচৰা:',
'subject-preview' => 'বিষয়/শিৰোনামাৰ খচৰা:',
-'blockedtitle' => 'সদসà§\8dযà¦\9cনà¦\95 à¦\85বৰোধ কৰা হৈছে',
+'blockedtitle' => 'সদসà§\8dযà¦\9cনà¦\95 à¦\85ৱৰোধ কৰা হৈছে',
'blockedtext' => "'''আপোনাৰ সদস্যনাম অথবা আই-পি ঠিকনা অৱৰোধ কৰা হৈছে ।'''
$1ৰ দ্বাৰা এই অৱৰোধ কৰা হৈছে ।
'creating' => '$1 পৃষ্ঠাখন আপুনি সৃষ্টি কৰি আছে',
'editingsection' => '$1 (অনুচ্ছেদ) সম্পাদনা কৰি আছে',
'editingcomment' => '$1 (নতুন অনুচ্ছেদ) সম্পাদনা কৰি আছে',
-'editconflict' => 'সম্পাদনা দ্বন্দ: $1',
+'editconflict' => 'সম্পাদনা দ্বন্দ্ব: $1',
'explainconflict' => "আপুনি সম্পাদনা আৰম্ভ কৰাৰ পাছত আন কোনোবাই এই পৃষ্ঠাখন সলনি কৰিলে।
পাঠ্য-স্থানৰ উপৰ ভাগত এই পৃষ্ঠাৰ প্ৰচলিত পাঠ্য দিয়া হৈছে।
আপোনাৰ সলনিসমূহ পাঠ্য-স্থানৰ তলৰ ভাগত দেখুওৱা হৈছে।
ইয়াৰ কোনো ব্যাখ্যা নাই ।',
'edit-gone-missing' => 'পৃষ্ঠাখন নবীকৰণ কৰিব পৰা নগ’ল ।
সম্ভৱতঃ পৃষ্ঠাখন বিলোপ কৰা হৈছে ।',
-'edit-conflict' => 'সম্পাদনা দ্বন্দ ।',
+'edit-conflict' => 'সম্পাদনা দ্বন্দ্ব ।',
'edit-no-change' => 'আপোনাৰ সম্পাদনা আওকাণ কৰা হৈছে, কাৰণ লেখাত কোনো তফাৎ নাই',
+'postedit-confirmation' => "আপোনাৰ সম্পাদনা সংৰক্ষিত কৰা হ'ল ।",
'edit-already-exists' => "নতুন পৃষ্ঠা সৃষ্টি কৰা নহ'ল ।
পৃষ্ঠাখন ইতিমধ্যে আছেই ।",
'defaultmessagetext' => 'সাধাৰণ বাৰ্তা পাঠ্য',
# Content models
'content-model-wikitext' => 'ৱিকিপাঠ্য',
'content-model-text' => 'সাধাৰণ পাঠ্য',
-'content-model-javascript' => 'à¦\9cাà¦à¦¾à¦¸à§\8dà¦\95à§\8dৰà§\80প্ট',
+'content-model-javascript' => 'à¦\9cাà¦à¦¾à¦¸à§\8dà¦\95à§\8dৰিপ্ট',
'content-model-css' => 'চি.এচ.এচ.',
# Parser/template warnings
আপুনি এই পাৰ্থক্য চাব পাৰে; সবিশেষ পাব [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} নিবাৰণ অভিলেখত] ।",
'rev-delundel' => 'দেখুৱাওক/নেদেখুৱাব',
'rev-showdeleted' => 'দেখুৱাওক',
-'revisiondelete' => 'সà¦\82à¦\95লন বিলà§\8bপ à¦\95ৰà¦\95 / পà§\81ণৰ স্থাপন কৰক',
+'revisiondelete' => 'সà¦\82à¦\95লন বিলà§\8bপ à¦\95ৰà¦\95 / পà§\81নৰ স্থাপন কৰক',
'revdelete-nooldid-title' => 'লক্ষ্য সংশোধন যুক্তিসংগত নহয়',
'revdelete-nooldid-text' => 'কামটো কৰাৰ বাবে আপুনি লক্ষ্য সংশোধন নিৰ্বাচন কৰা নাই, নিৰ্বাচিত সংশোধন নাই, অথবা আপুনি বৰ্তমানৰ সংশোধন লুকুৱাব বিচাৰিছে ।',
'revdelete-nologtype-title' => 'কোনো অভিলেখ প্ৰকাৰ দিয়া হোৱা নাই',
'revdelete-hide-text' => 'সংশোধিত পাঠ গোপন কৰক',
'revdelete-hide-image' => 'ফাইলৰ বিষয়বস্তু গোপন কৰক',
'revdelete-hide-name' => 'কাৰ্য আৰু লক্ষ্য গোপন কৰক',
-'revdelete-hide-comment' => 'সমà§\8dপাদনা মনà§\8dতবà§\8dয à¦\86তৰাà¦\87 থà¦\93ক',
+'revdelete-hide-comment' => 'সমà§\8dপাদনা সাৰাà¦\82শ à¦\97à§\8bপন à¦\95ৰক',
'revdelete-hide-user' => 'সম্পাদকৰ সদস্যনাম/আই-পি ঠিকনা গোপন কৰক',
'revdelete-hide-restricted' => 'প্ৰশাসকবৃন্দৰ লগতে আনৰ পৰাও তথ্য ৰোধ কৰক',
'revdelete-radio-same' => '(সলনি নকৰিব)',
# Merge log
'mergelog' => 'অভিলেখ একত্ৰীকৰণ',
'pagemerge-logentry' => "[[$1]] [[$2]]-ত মিলোৱা হ'ল (সংশোধনসমূহ $3-লৈ)",
-'revertmerge' => 'à¦\8fà¦\95তà§\8dৰিকৰণ বাতিল কৰক',
+'revertmerge' => 'à¦\8fà¦\95তà§\8dৰà§\80কৰণ বাতিল কৰক',
'mergelogpagetext' => 'এখন পৃষ্ঠাৰ ইতিহাস আন এখনৰ লগত কৰা একত্ৰীকৰণৰ সকলোতকৈ শেহতীয়া তালিকা তলত দিয়া হ’ল ।',
# Diffs
'searchsubtitleinvalid' => "আপোনাৰ অনুসন্ধান হ'ল '''$1'''",
'toomanymatches' => "বহুত বেছি মিল পোৱা গৈছে, সন্ধান-শব্দ সলনি কৰিবলৈ অনুৰোধ কৰা হ'ল",
'titlematches' => 'পৃষ্ঠাৰ শিৰোনামা মিলিছে',
-'notitlematches' => 'à¦\8fà¦\9fাà¦\93 পà§\83ষà§\8dঠাৰ শিৰোনামা মিলা নাই',
+'notitlematches' => 'à¦\8fà¦\96ন পà§\83ষà§\8dঠাৰà§\8b শিৰোনামা মিলা নাই',
'textmatches' => 'পৃষ্ঠাৰ পাঠ মিলিছে',
'notextmatches' => 'কোনো পৃষ্ঠাৰ পাঠ মিলা নাই',
'prevn' => 'পূৰ্বৱৰ্তী {{PLURAL:$1|$1}}টা',
'searchmenu-legend' => 'সন্ধান বিকল্পসমূহ',
'searchmenu-exists' => 'এই ৱিকিত "[[:$1]]" নামৰ পৃষ্ঠা এখন আছে ।',
'searchmenu-new' => "'''এই ৱিকিত \"[[:\$1]]\" পৃষ্ঠাখন সৃষ্টি কৰক!'''",
-'searchhelp-url' => 'Help:সমল',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|এই উপসৰ্গ থকা পৃষ্ঠাসমূহ ব্ৰাউজ কৰক]]',
'searchprofile-articles' => 'বিষয়বস্তুৰ পৃষ্ঠা',
'searchprofile-project' => 'সহায় আৰু প্ৰকল্প পৃষ্ঠাসমূহ',
'prefsnologin' => 'প্ৰৱেশ কৰা নাই',
'prefsnologintext' => 'আপোনাৰ পছন্দ সলনি কৰিবলৈ হ’লে <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} প্ৰৱেশ]</span> কৰাতো আৱশ্যক।',
'changepassword' => 'গুপ্তশব্দ সলনি কৰক',
-'prefs-skin' => 'à¦\86ৱৰন',
+'prefs-skin' => 'à¦\86ৱৰণ',
'skin-preview' => 'খচৰা',
'datedefault' => 'কোনো পছন্দ নাই',
'prefs-beta' => 'বিটা বৈশিষ্টসমূহ',
'prefs-signature' => 'স্বাক্ষৰ',
'prefs-dateformat' => 'তাৰিখ বিন্যাস',
'prefs-timeoffset' => 'সময় অফচেট',
-'prefs-advancedediting' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ à¦\89পায়ানà§\8dতৰ সমূহ',
-'prefs-advancedrc' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ à¦\89পায়ানà§\8dতৰ সমূহ',
-'prefs-advancedrendering' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ à¦\89পায়ানà§\8dতৰ সমূহ',
-'prefs-advancedsearchoptions' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ à¦\89পায়ানà§\8dতৰ সমূহ',
-'prefs-advancedwatchlist' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ à¦\89পায়ানà§\8dতৰ সমূহ',
-'prefs-displayrc' => 'প্ৰদৰ্শনী উপায়ান্তৰ সমূহ',
-'prefs-displaysearchoptions' => 'বিকল্প প্ৰদৰ্শন কৰক',
-'prefs-displaywatchlist' => 'বিকল্প প্ৰদৰ্শন কৰক',
+'prefs-advancedediting' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ বিà¦\95লà§\8dপসমূহ',
+'prefs-advancedrc' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ বিà¦\95লà§\8dপসমূহ',
+'prefs-advancedrendering' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ বিà¦\95লà§\8dপসমূহ',
+'prefs-advancedsearchoptions' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ বিà¦\95লà§\8dপসমূহ',
+'prefs-advancedwatchlist' => 'à¦\89à¦\9aà§\8dà¦\9aতৰ বিà¦\95লà§\8dপসমূহ',
+'prefs-displayrc' => 'প্ৰদৰ্শন বিকল্পসমূহ',
+'prefs-displaysearchoptions' => 'বিকল্পসমূহ প্ৰদৰ্শন কৰক',
+'prefs-displaywatchlist' => 'বিকল্পসমূহ প্ৰদৰ্শন কৰক',
'prefs-diffs' => 'পাৰ্থক্য',
# User preference: email validation using jQuery
'userrights-changeable-col' => 'আপুনি সলনি কৰিব পৰা গোটসমূহ',
'userrights-unchangeable-col' => 'আপুনি সলনি কৰিব নোৱাৰা গোটসমূহ',
'userrights-conflict' => 'সদস্য অধিকাৰ দ্বন্দ্ব! অনুগ্ৰহ কৰি আপোনাৰ সালসলনি আকৌ এবাৰ প্ৰয়োগ কৰক।',
+'userrights-removed-self' => 'আপুনি সফলতাৰে নিজৰ অধিকাৰসমূহ আঁতৰ কৰিলে। গতিকে আপুনি এতিয়া এই পৃষ্ঠা চাব নোৱাৰে।',
# Groups
'group' => 'গোট:',
'right-upload_by_url' => "ইউ-আৰ-এলৰ পৰা ফাইল আপল'ড কৰক",
'right-purge' => 'চাইট কেচৰ পৰা নিশ্চয়তা নোহোৱা পৃষ্ঠা মচি পেলাওক ।',
'right-autoconfirmed' => 'অৰ্দ্ধ-সুৰক্ষিত পৃষ্ঠা সম্পাদনা কৰক',
-'right-bot' => 'সà§\8dবয়à¦\82à¦\95à§\8dৰিয় পà§\8dৰà¦\95à§\8dৰিয়া হিà¦\9bাপে ব্যৱহৃত হওক',
+'right-bot' => 'সà§\8dবয়à¦\82à¦\95à§\8dৰিয় পà§\8dৰà¦\95à§\8dৰিয়া হিà¦\9aাপে ব্যৱহৃত হওক',
'right-nominornewtalk' => 'আলোচনা পৃষ্ঠাৰ লঘূ সম্পাদনা হওঁতে নতুন সদস্য বাৰ্তা নালাগে',
'right-apihighlimits' => 'API প্ৰশ্নৰ বাবে উচ্চতৰ সীমা ব্যৱহাৰ কৰক',
'right-writeapi' => 'ৰাইট এ.পি.আই.ৰ ব্যৱহাৰ',
'right-editusercssjs' => 'আন সদস্যৰ CSS আৰু JavaScript সম্পাদনা কৰক',
'right-editusercss' => 'আন সদস্যৰ CSS ফাইল সম্পাদনা কৰক',
'right-edituserjs' => 'আন সদস্যৰ JavaScript ফাইল সম্পাদনা কৰক',
+'right-editmyusercss' => 'আপোনাৰ নিজৰ সদস্য CSS ফাইলসমূহ সম্পাদনা কৰক।',
+'right-editmyuserjs' => 'আপোনাৰ নিজৰ সদস্য JavaScript ফাইলসমূহ সম্পাদনা কৰক',
+'right-viewmywatchlist' => 'আপোনাৰ নিজৰ লক্ষ্য-তালিকা চাওক',
'right-rollback' => 'শেষৰজন সদস্যই এখন নিৰ্দিষ্ট পৃষ্টাত কৰা সম্পাদনা পূৰ্বৰ অৱস্থালৈ ঘূৰাই আনক',
'right-markbotedits' => 'ৰ’ল্ড-বেক সম্পাদনাসমূহ বট সম্পাদনা বুলি চিহ্নিত কৰক',
'right-noratelimit' => 'গতি সীমাৰ দ্বাৰা প্ৰভাৱিত নহ’ব',
'listusers-blocked' => '(বাৰণ কৰা)',
# Special:ActiveUsers
-'activeusers' => 'সà¦\95à§\8dৰিয় বà§\8dযবহাৰকাৰীৰ তালিকা',
+'activeusers' => 'সà¦\95à§\8dৰিয় বà§\8dযৱহাৰকাৰীৰ তালিকা',
'activeusers-intro' => 'যোৱা {{PLURAL:$1|দিন|দিন}}ৰ ভিতৰত অৱদান আগবঢ়োৱা ব্যৱহাৰকাৰীৰ তালিকা',
'activeusers-count' => 'যোৱা {{PLURAL:$3|দিনত|$3 দিনত}} সৰ্বমুঠ $1 {{PLURAL:$1|টা কাম}}',
'activeusers-from' => 'ইয়াৰে আৰম্ভ হোৱা ব্যৱহাৰকাৰী সকল দেখুৱাওক:',
'notvisiblerev' => 'অন্য কোনো সদস্যই কৰা সংশোধনী বিলোপ কৰা হৈছে',
'watchnochange' => 'আপুনি চকু ৰখা আইটেমসমূহ প্ৰদৰ্শিত সময়সীমাৰ ভিতৰত সম্পাদনা কৰা হোৱা নাই ।',
'watchlist-details' => 'আলোচনা পৃষ্ঠা সমূহ লেখত নধৰি {{PLURAL:$1|$1 খন পৃষ্ঠা|$1 খন পৃষ্ঠা}} আপোনাৰ লক্ষ্য-তালিকাত আছে ।',
-'wlheader-enotif' => '* ই-পত্ৰ জাননী সক্ৰিয় কৰা হৈছে ।',
-'wlheader-showupdated' => "* আপোনাৰ শেষ পৰিদৰ্শনৰ পিছত হোৱা পৰিৱৰ্তনসমূহ '''গাঢ়''' আখৰত দেখুওৱা হৈছে",
+'wlheader-enotif' => 'ইমেইল জাননী সক্ৰিয় কৰা হৈছে।',
+'wlheader-showupdated' => "আপোনাৰ শেষ পৰিদৰ্শনৰ পিছত সলনি হোৱা পৃষ্ঠাসমূহ '''গাঢ়''' আখৰত দেখুওৱা হৈছে।",
'watchmethod-recent' => 'লক্ষ্য কৰা পৃষ্ঠাসমূহ শেহতীয়া সম্পাদনাৰ বাবে পৰীক্ষা কৰা হৈছে',
'watchmethod-list' => 'লক্ষ্য কৰা পৃষ্ঠাসমূহ শেহতীয়া সম্পাদনাৰ বাবে পৰীক্ষা কৰা হৈছে',
'watchlistcontains' => 'আপোনাৰ লক্ষ্য-তালিকাত $1 খন {{PLURAL:$1|পৃষ্ঠা|পৃষ্ঠা}} আছে ।',
'mycontris' => 'বৰঙণিসমূহ',
'contribsub2' => '$1 ৰ কাৰণে ($2)',
'nocontribs' => 'এই গুণসমূহৰ লগত মিল থকা কোনো সালসলনি পোৱা নগ’ল ।',
-'uctop' => '(à¦\93পৰত)',
+'uctop' => '(বৰà§\8dতমান)',
'month' => 'এই মাহৰ পৰা (আৰু আগৰ):',
'year' => 'এই বছৰৰ পৰা (আৰু আগৰ):',
'thumbnail-more' => 'ডাঙৰকৈ চাওক',
'filemissing' => 'ফাইল বিচাৰি পোৱা নগ’ল',
'thumbnail_error' => 'ক্ষুদ্ৰ প্ৰতিকৃতি সৃষ্টি কৰাত অসুবিধা হৈছে: $1',
+'thumbnail_error_remote' => '$1ৰপৰা ত্ৰুটি বাৰ্তা:
+$2',
'djvu_page_error' => 'DjVu পৃষ্ঠা পৰিসীমাৰ বাহিৰত',
'djvu_no_xml' => "DjVu ফাইলৰ বাবে XML আনিব পৰা নগ'ল",
'thumbnail-temp-create' => 'অস্থায়ী থাম্বনেইল নথিপত্ৰ সৃষ্টি কৰিবলে অক্ষম',
'pageinfo-magic-words' => 'যাদুকৰী {{PLURAL:$1|শব্দ|শব্দবোৰ}} ($1)',
'pageinfo-hidden-categories' => 'অদৃশ্য {{PLURAL:$1|শ্ৰেণী|শ্ৰেণীসমূহ}} ($1)',
'pageinfo-templates' => 'সংযুক্ত {{PLURAL:$1|সাঁচ|সাঁচসমূহ}} ($1)',
+'pageinfo-transclusions' => '{{PLURAL:$1|পৃষ্ঠা|পৃষ্ঠাসমূহ}} ট্রান্সক্লুড কৰাৰ সময় ($1)',
'pageinfo-toolboxlink' => 'পৃষ্ঠাখনৰ বিষয়ে তথ্য',
'pageinfo-redirectsto' => 'পুনৰ্নিৰ্দেশ কৰা হৈছে',
'pageinfo-redirectsto-info' => 'তথ্য',
# Special:Redirect
'redirect' => 'ফাইল, সদস্য, বা সংশোধন আই ডিৰে পুনঃনিৰ্দেশ',
'redirect-legend' => 'এটা ফাইল বা এখন এখন পৃষ্ঠালৈ পুনঃনিৰ্দেশ',
+'redirect-summary' => 'এই বিশেষ পৃষ্ঠাটোৱে আপোনাক পুনঃনির্দেশিত কৰিছে অন্য এটা নথিপত্রলৈ (নথিপত্রৰ নাম), এটা পৃষ্ঠালৈ (পৃষ্ঠাৰ নাম), অথবা অন্য সদস্যৰ পৃষ্ঠালৈ(সংখ্যাৰে লিখা সদস্যৰ আইডি) ।',
'redirect-submit' => 'যাওক',
'redirect-lookup' => 'চাওক:',
'redirect-value' => 'মূল্য:',
*/
$namespaceNames = array(
- NS_MEDIA => 'Media',
+ NS_MEDIA => 'Medios',
NS_SPECIAL => 'Especial',
NS_TALK => 'Alderique',
NS_USER => 'Usuariu',
NS_USER_TALK => 'Usuariu_alderique',
NS_PROJECT_TALK => '$1_alderique',
- NS_FILE => 'Archivu',
- NS_FILE_TALK => 'Archivu_alderique',
+ NS_FILE => 'Ficheru',
+ NS_FILE_TALK => 'Ficheru_alderique',
NS_MEDIAWIKI => 'MediaWiki',
NS_MEDIAWIKI_TALK => 'MediaWiki_alderique',
NS_TEMPLATE => 'Plantía',
NS_TEMPLATE_TALK => 'Plantía_alderique',
- NS_HELP => 'Aida',
- NS_HELP_TALK => 'Aida_alderique',
+ NS_HELP => 'Ayuda',
+ NS_HELP_TALK => 'Ayuda_alderique',
NS_CATEGORY => 'Categoría',
NS_CATEGORY_TALK => 'Categoría_alderique',
);
$namespaceAliases = array(
- 'Imaxe' => NS_FILE,
- 'Imaxe alderique' => NS_FILE_TALK,
+ 'Imaxe' => NS_FILE,
+ 'Imaxe alderique' => NS_FILE_TALK,
'Discusión' => NS_TALK,
'Usuariu_discusión' => NS_USER_TALK,
'$1_discusión' => NS_PROJECT_TALK,
'Imaxen' => NS_FILE,
'Imaxen_discusión' => NS_FILE_TALK,
+ 'Archivu' => NS_FILE,
+ 'Archivu_alderique' => NS_FILE_TALK,
'MediaWiki_discusión' => NS_MEDIAWIKI_TALK,
'Plantilla' => NS_TEMPLATE,
'Plantilla_discusión' => NS_TEMPLATE_TALK,
- 'Ayuda' => NS_HELP,
'Ayuda_discusión' => NS_HELP_TALK,
+ 'Aida' => NS_HELP,
+ 'Aida_alderique' => NS_HELP_TALK,
'Categoría_discusión' => NS_CATEGORY_TALK,
);
'oct' => 'och',
'nov' => 'pay',
'dec' => 'avi',
+'january-date' => '$1 de xineru',
+'february-date' => '$1 de febreru',
+'march-date' => '$1 de marzu',
+'april-date' => "$1 d'abril",
+'may-date' => '$1 de mayu',
+'june-date' => '$1 de xunu',
+'july-date' => '$1 de xunetu',
+'august-date' => "$1 d'agostu",
+'september-date' => '$1 de setiembre',
+'october-date' => "$1 d'ochobre",
+'november-date' => '$1 de payares',
+'december-date' => "$1 d'avientu",
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoría|Categoríes}}',
'vector-action-protect' => 'Protexer',
'vector-action-undelete' => 'Restaurar',
'vector-action-unprotect' => 'Camudar la proteición',
-'vector-simplesearch-preference' => 'Activar la barra de gueta simplificada (namái apariencia Vector)',
+'vector-simplesearch-preference' => 'Activar la barra de búsqueda simplificada (namái tema Vector)',
'vector-view-create' => 'Crear',
'vector-view-edit' => 'Editar',
'vector-view-history' => 'Ver historial',
'returnto' => 'Tornar a $1.',
'tagline' => 'De {{SITENAME}}',
'help' => 'Ayuda',
-'search' => 'Guetar',
-'searchbutton' => 'Guetar',
+'search' => 'Buscar',
+'searchbutton' => 'Buscar',
'go' => 'Dir',
'searcharticle' => 'Dir',
'history' => 'Historial de la páxina',
'create-this-page' => 'Crear esta páxina',
'delete' => 'Desaniciar',
'deletethispage' => 'Desaniciar esta páxina',
+'undeletethispage' => 'Restaurar esta páxina',
'undelete_short' => 'Restaurar {{PLURAL:$1|una edición|$1 ediciones}}',
'viewdeleted_short' => 'Ver {{PLURAL:$1|una edición desaniciada|$1 ediciones desaniciaes}}',
'protect' => 'Protexer',
'protectedpage' => 'Páxina protexida',
'jumpto' => 'Saltar a:',
'jumptonavigation' => 'navegación',
-'jumptosearch' => 'guetar',
+'jumptosearch' => 'buscar',
'view-pool-error' => "Sentímoslo, los sirvidores tán sobrecargaos nestos momentos.
Hai demasiaos usuarios intentando ver esta páxina.
Por favor espera un ratu enantes d'intentar otra vuelta entrar a esta páxina.
# 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) and the disambiguation template definition (see disambiguations).
'aboutsite' => 'Tocante a {{SITENAME}}',
'aboutpage' => 'Project:Tocante a',
-'copyright' => 'El conteníu ta disponible baxo $1.',
+'copyright' => 'El conteníu ta disponible baxo los términos de la $1.',
'copyrightpage' => "{{ns:project}}:Drechos d'autor",
-'currentevents' => 'Actualidá',
-'currentevents-url' => 'Project:Actualidá',
+'currentevents' => 'Fechos actuales',
+'currentevents-url' => 'Project:Fechos actuales',
'disclaimers' => 'Avisu llegal',
'disclaimerpage' => 'Project:Avisu xeneral',
'edithelp' => "Ayuda d'edición",
-'edithelppage' => 'Help:Cómo editar una páxina',
'helppage' => 'Help:Conteníu',
'mainpage' => 'Portada',
'mainpage-description' => 'Portada',
'filerenameerror' => 'Nun se pudo renomar el ficheru «$1» como «$2».',
'filedeleteerror' => 'Nun se pudo desaniciar el ficheru «$1».',
'directorycreateerror' => 'Nun se pudo crear el direutoriu «$1».',
-'filenotfound' => 'Nun se pudo atopar el ficheru «$1».',
+'filenotfound' => "Nun pudo atopase'l ficheru «$1».",
'fileexistserror' => 'Nun se pue escribir nel ficheru «$1»: yá esiste',
'unexpected' => 'Valor inesperáu: «$1»=«$2».',
'formerror' => 'Fallu: Nun se pudo unviar el formulariu.',
Nun conseñó esplicación.',
'badtitle' => 'Títulu incorreutu',
'badtitletext' => 'El títulu de páxina solicitáu nun ye válidu, ta baleru o tien enllaces interllingua o interwiki incorreutos.
-Pue contener un caráuter o más que nun se puen usar nos títulos.',
+Pue contener un caráuter o más que nun puen usase nos títulos.',
'perfcached' => "Los datos siguientes tán na caché y seique nun tean anovaos. Hai un máximu {{PLURAL:$1|d'un resultáu disponible|de $1 resultaos disponibles}} na caché.",
-'perfcachedts' => "Los datos siguientes tán na caché y anováronse per postrer vegada'l $1. Hai un máximu {{PLURAL:$4|d'un resultáu disponible|de $4 resultaos disponibles}} na caché.",
+'perfcachedts' => "Los datos siguientes tán na caché y anovaronse por última vegada'l $1. Hai un máximu {{PLURAL:$4|d'un resultáu disponible|de $4 resultaos disponibles}} na caché.",
'querypage-no-updates' => "Anguaño los anovamientos d'esta páxina tán desactivaos.
Estos datos nun van refrescase nestos momentos.",
'wrong_wfQuery_params' => 'Parámetros incorreutos pa wfQuery()<br />
Los cambeos nesta páxina van afeutar l'apariencia de la interfaz pa otros usuarios d'esta wiki.
P'amestar o camudar traducciones pa toles wikis, por favor, usa [//translatewiki.net/ translatewiki.net], el proyeutu de traducción de MediaWiki.",
'sqlhidden' => '(consulta SQL anubrida)',
-'cascadeprotected' => "Esta páxina ta protexida d'ediciones porque ta enxerta {{PLURAL:$1|na siguiente páxina|nes siguientes páxines}}, que {{PLURAL:$1|ta protexida|tán protexíes}} cola opción «en cascada» activada:
+'cascadeprotected' => "Esta páxina ta protexida d'ediciones porque ta inxerta {{PLURAL:$1|na siguiente páxina, protexida|nes siguientes páxines, protexíes}} cola opción «en cascada» activada:
$2",
'namespaceprotected' => "Nun tienes permisu pa editar páxines nel espaciu de nomes '''$1'''.",
'customcssprotected' => "Nun tienes permisu pa editar esta páxina CSS porque contién preferencies personales d'otru usuariu.",
'customjsprotected' => "Nun tienes permisu pa editar esta páxina de JavaScript porque contién preferencies personales d'otru usuariu.",
+'mycustomcssprotected' => 'Nun tien permisu pa editar esta páxina CSS.',
+'mycustomjsprotected' => 'Nun tien permisu pa editar esta páxina JavaScript.',
'ns-specialprotected' => 'Les páxines especiales nun se puen editar.',
-'titleprotected' => "Esti títulu foi protexíu de la so creación por [[User:$1|$1]].
+'titleprotected' => "Esti títulu ta protexíu escontra creación por [[User:$1|$1]].
El motivu conseñáu ye «''$2''».",
-'filereadonlyerror' => "Nun se pudo camudar el ficheru «$1» porque'l repositoriu de ficheros «$2» ta en mou de namái llectura.
+'filereadonlyerror' => "Nun pudo camudase'l ficheru «$1» porque'l depósitu de ficheros «$2» ta en mou de sólo llectura.
L'alministrador que lu bloquió dio esti motivu: «$3».",
-'invalidtitle-knownnamespace' => 'Títulu non válidu col espaciu de nomes «$2» y el testu «$3»',
-'invalidtitle-unknownnamespace' => "Titulu non válidu col númberu $1 d'espaciu de nomes desconocíu y el testu «$2»",
-'exception-nologin' => 'Non identificáu',
+'invalidtitle-knownnamespace' => "Títulu inválidu col espaciu de nomes «$2» ya'l testu «$3»",
+'invalidtitle-unknownnamespace' => "Títulu inválidu col númberu $1 d'espaciu de nomes desconocíu ya'l testu «$2»",
+'exception-nologin' => 'Nun anició sesión',
'exception-nologin-text' => "Esta páxina o aición necesita qu'anicies sesión nesta wiki.",
# Virus scanner
Ten en cuenta que dalgunes páxines puen siguir apaeciendo como si tovía tuvieres coneutáu, hasta que llimpies la caché del restolador.",
'welcomeuser' => '¡Bienllegáu, $1!',
'welcomecreation-msg' => "Creóse la to cuenta.
-Nun t'escaezas d'escoyer les tos [[Special:Preferences|preferencies de {{SITENAME}}]].",
+Nun t'escaezas de camudar les tos [[Special:Preferences|preferencies de {{SITENAME}}]].",
'yourname' => "Nome d'usuariu:",
'userlogin-yourname' => "Nome d'usuariu",
'userlogin-yourname-ph' => "Escriba'l so nome d'usuariu",
'remembermypassword' => "Recordar la mio identificación nesti restolador (un máximu {{PLURAL:$1|d'un día|de $1 díes}})",
'userlogin-remembermypassword' => 'Caltener abierta la sesión',
'userlogin-signwithsecure' => 'Usar una conexón segura',
-'securelogin-stick-https' => "Siguir coneutáu al HTTPS dempués d'identificase",
+'securelogin-stick-https' => "Siguir coneutáu con HTTPS dempués d'aniciar sesión",
'yourdomainname' => 'El to dominiu:',
'password-change-forbidden' => 'Nun se pueden camudar les contraseñes nesta wiki.',
'externaldberror' => "O hebo un fallu d'autenticación de la base de datos o nun tienes permisu p'anovar la to cuenta esterna.",
-'login' => 'Identificase',
-'nav-login-createaccount' => 'Identificase / crear una cuenta',
-'loginprompt' => 'Has tener les «cookies» activaes pa identificate en {{SITENAME}}.',
-'userlogin' => 'Identificase / crear una cuenta',
-'userloginnocreate' => 'Identificase',
-'logout' => 'Dexar de tar identificáu',
-'userlogout' => 'Colar',
-'notloggedin' => 'Non identificáu',
+'login' => 'Entrar',
+'nav-login-createaccount' => 'Entrar / crear cuenta',
+'loginprompt' => "Ha de tener les «cookies» activaes p'aniciar sesión en {{SITENAME}}.",
+'userlogin' => 'Entrar / crear cuenta',
+'userloginnocreate' => 'Aniciar sesión',
+'logout' => 'Salir',
+'userlogout' => 'Salir',
+'notloggedin' => 'Nun anició sesión',
'userlogin-noaccount' => '¿Nun tien una cuenta?',
'userlogin-joinproject' => 'Xunise a {{SITENAME}}',
'nologin' => '¿Nun tienes una cuenta? $1.',
'nologinlink' => 'Crear una cuenta',
'createaccount' => 'Crear una cuenta',
-'gotaccount' => '¿Ya tienes una cuenta? $1.',
-'gotaccountlink' => 'Identificase',
-'userlogin-resetlink' => "¿Escaecisti los datos d'identificación?",
+'gotaccount' => '¿Yá tienes una cuenta? $1.',
+'gotaccountlink' => 'Entrar',
+'userlogin-resetlink' => "¿Escaeció los datos d'accesu?",
'userlogin-resetpassword-link' => 'Reaniciar la contraseña',
'helplogin-url' => 'Help:Aniciar sesión',
'userlogin-helplink' => "[[{{MediaWiki:helplogin-url}}|Ayuda p'aniciar sesión]]",
'createacct-benefit-body1' => '{{PLURAL:$1|edición|ediciones}}',
'createacct-benefit-body2' => '{{PLURAL:$1|páxina|páxines}}',
'createacct-benefit-body3' => '{{PLURAL:$1|collaborador|collaboradores}} de recién',
-'badretype' => "Les claves qu'escribisti nun concuayen.",
+'badretype' => "Les contraseñes qu'escribisti nun concuayen.",
'userexists' => "El nome d'usuariu conseñáu yá ta usándose.
Por favor escueyi un nome diferente.",
-'loginerror' => "Fallu d'identificación",
+'loginerror' => "Error d'aniciu de sesión",
'createacct-error' => 'Error de creación de cuenta',
'createaccounterror' => 'Nun se pudo crear la cuenta: $1',
-'nocookiesnew' => "La cuenta d'usuariu ta creada, pero nun tas identificáu.
+'nocookiesnew' => "La cuenta d'usuariu ta creada, pero nun anició sesión.
{{SITENAME}} usa «cookies» pa identificar a los usuarios.
-Tienes les «cookies» desactivaes.
-Por favor activales y depués entra col to nome d'usuariu y clave nuevos.",
+Tien les «cookies» desactivaes.
+Por favor activeles y anicie sesión col nuevu nome d'usuariu y contraseña.",
'nocookieslogin' => '{{SITENAME}} usa «cookies» pa identificar a los usuarios.
-Tienes les «cookies» desactivaes.
-Por favor actívales y vuelvi intentalo.',
+Tien les «cookies» desactivaes.
+Por favor activeles y vuelva a intentalo.',
'nocookiesfornew' => "La cuenta nun se creó porque nun pudimos confirmar l'orixe.
-Asegúrate de tener activaes les «cookies», recarga esta páxina y vuelvi intentalo.",
+Comprueba que tienes activaes les «cookies», recarga esta páxina y vuelvi a intentalo.",
'noname' => "Nun conseñasti un nome d'usuariu válidu.",
-'loginsuccesstitle' => 'Identificación correuta',
-'loginsuccess' => "'''Quedasti identificáu en {{SITENAME}} como «$1».'''",
+'loginsuccesstitle' => 'Aniciu de sesión correutu',
+'loginsuccess' => "'''Aniciasti sesión en {{SITENAME}} como «$1».'''",
'nosuchuser' => "Nun hai nengún usuariu col nome «$1».
Los nomes d'usuariu distinguen mayúscules y minúscules.
Mira que tea bien escritu o [[Special:UserLogin/signup|crea una cuenta nueva]].",
'nosuchusershort' => 'Nun hai nengún usuariu col nome «$1».
Mira que tea bien escritu.',
-'nouserspecified' => "Has especificar un nome d'usuariu.",
-'login-userblocked' => 'Esti usuariu ta bloquiáu. Nun se permite la so identificación.',
-'wrongpassword' => 'La clave escrita ye incorreuta.
-Vuelvi intentalo.',
-'wrongpasswordempty' => 'La clave taba en blanco.
-Vuelvi intentalo.',
-'passwordtooshort' => 'Les claves han tener a lo menos {{PLURAL:$1|1 caráuter|$1 carauteres}}.',
-'password-name-match' => "La clave ha ser distinta del nome d'usuariu.",
-'password-login-forbidden' => "Ta torgao usar esti nome d'usuariu y clave.",
+'nouserspecified' => "Has d'especificar un nome d'usuariu.",
+'login-userblocked' => "Esti usuariu ta bloquiáu. Nun se permite l'aniciu de sesión.",
+'wrongpassword' => 'Escribisti una contraseña incorreuta.
+Vuelvi a intentalo.',
+'wrongpasswordempty' => 'La contraseña taba en blanco.
+Vuelvi a intentalo.',
+'passwordtooshort' => 'Les contraseñes han de tener polo menos {{PLURAL:$1|1 caráuter|$1 caráuteres}}.',
+'password-name-match' => "La contraseña tien de ser distinta del nome d'usuariu.",
+'password-login-forbidden' => "Ta torgao usar esti nome d'usuariu y contraseña.",
'mailmypassword' => 'Unviar la clave nueva per corréu',
-'passwordremindertitle' => 'Clave nueva provisional pa {{SITENAME}}',
-'passwordremindertext' => "Daquién (seique tu, dende la direición IP $1) solicitó una clave
-nueva pa {{SITENAME}} ($4). Creóse una clave provisional pal usuariu
-«$2» que ye «$3». Si fuisti tu, necesites identificate y escoyer
-una clave nueva agora. La clave provisional caduca {{PLURAL:$5|nun día|en $5 díes}}.
-
-Si esta solicitú la fizo otra persona, o si recuerdes la clave y
-nun quies volver camudala, pues escaecete d'esti mensaxe y siguir
-usando la clave antigua.",
+'passwordremindertitle' => 'Nueva contraseña provisional pa {{SITENAME}}',
+'passwordremindertext' => "Daquién (seique tu, dende la direición IP $1) solicitó una contraseña
+nueva pa {{SITENAME}} ($4). Creóse una contraseña provisional
+pal usuariu «$2» que ye «$3». Si fuisti tu, necesites aniciar
+sesión y escoyer una contraseña nueva agora.
+La contraseña provisional caducará {{PLURAL:$5|nun día|en $5 díes}}.
+
+Si esta solicitú fizola otra persona, o si recordasti la contraseña,
+y nun quies camudala, pues escaecete d'esti mensaxe y siguir
+usando la contraseña antigua.",
'noemail' => "L'usuariu «$1» nun tien rexistrada nenguna direición de corréu.",
-'noemailcreate' => 'Has conseñar una direición de corréu válida',
-'passwordsent' => 'Univóse una clave nueva a la direición de corréu rexistrada pa «$1».
-Por favor vuelvi identificate depués de recibila.',
-'blocked-mailpassword' => 'Ta bloquiada la edición dende la to direición IP, polo que pa evitar abusos nun se pue usar la función de recuperación de clave.',
+'noemailcreate' => 'Tienes de conseñar una direición de corréu válida.',
+'passwordsent' => 'Unvióse una contraseña nueva a la direición de corréu rexistrada pa «$1».
+Por favor vuelvi a aniciar sesión depués de recibila.',
+'blocked-mailpassword' => 'Ta bloquiada la edición dende la to direición IP, polo que pa evitar abusos nun se pue usar la función de recuperación de contraseña.',
'eauthentsent' => "Unvióse un corréu electrónicu de confirmación a la direición indicada.
-Enantes de que s'unvie nengún otru corréu a la cuenta, has siguir les instrucciones del corréu electrónicu pa confirmar que la cuenta ye de to.",
+Enantes de que s'unvie nengún otru corréu a la cuenta, has de siguir les instrucciones del corréu electrónicu pa confirmar que la cuenta ye de to.",
'throttled-mailpassword' => "Yá s'unvió un corréu de reaniciu la clave {{PLURAL:$1|na postrer hora|nes postreres $1 hores}}.
Pa evitar abusos, namái s'unviará un corréu de reaniciu cada {{PLURAL:$1|hora|$1 hores}}.",
'mailerror' => 'Fallu al unviar el corréu: $1',
'acct_creation_throttle_hit' => "Los visitantes d'esta wiki qu'usen la to direición IP yá crearon güei {{PLURAL:$1|1 cuenta|$1 cuentes}}, que ye'l máximu almitíu nesti periodu de tiempu.
Poro, los visitantes qu'usen esta direición IP nun puen crear más cuentes de momentu.",
'emailauthenticated' => "La to direición de corréu electrónicu confirmóse'l $2 a les $3.",
-'emailnotauthenticated' => 'La to direición de corréu electrónicu nun se comprobó entá.
-Nun va unviase nengún corréu pa nenguna de les funciones siguientes.',
+'emailnotauthenticated' => "La to direición de corréu electrónicu inda nun se comprobó.
+Nun s'unviará corréu pa nenguna de les funciones siguientes.",
'noemailprefs' => 'Conseña una direición de corréu electrónicu nes tos preferencies pa que funcionen eses carauterístiques.',
'emailconfirmlink' => 'Confirmar la direición de corréu electrónicu',
-'invalidemailaddress' => "La direición de corréu electrónicu nun se pue aceutar yá que paez tener un formatu non válidu.
+'invalidemailaddress' => "La direición de corréu electrónicu nun pue aceutase yá que paez tener un formatu inválidu.
Por favor conseña una direición con formatu afayadizu o dexa baleru'l campu.",
'cannotchangeemail' => 'Les direiciones de corréu electrónicu de la cuenta nun puen camudase nesta wiki.',
'emaildisabled' => 'Esti sitiu nun pue unviar correos electrónicos.',
'accountcreated' => 'Cuenta creada',
-'accountcreatedtext' => "Creóse la cuenta d'usuariu de $1.",
+'accountcreatedtext' => "Creóse la cuenta d'usuariu pa [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|alderique]]).",
'createaccount-title' => 'Creación de cuenta pa {{SITENAME}}',
-'createaccount-text' => 'Daquién creó una cuenta cola to direición de corréu electrónicu en {{SITENAME}} ($4) col nome «$2», asociada a la clave «$3».
-Habríes identificte y camudar la clave agora.
+'createaccount-text' => "Daquién creó una cuenta cola to direición de corréu electrónicu en {{SITENAME}} ($4) col nome «$2», y cola contraseña «$3».
+Agora tendríes d'aniciar sesión y camudar la contraseña.
-Pues escaecer esti mensaxe si esta cuenta se creó por error.',
-'usernamehasherror' => "El nome d'usuariu nun pue contener carauteres «hash»",
-'login-throttled' => "Ficisti demasiaos intentos recientes d'identificación.
+Pues escaecer esti mensaxe si esta cuenta creóse por error.",
+'usernamehasherror' => "El nome d'usuariu nun pue contener caráuteres «hash»",
+'login-throttled' => "Ficisti demasiaos intentos d'aniciu de sesión recientes.
Por favor espera enantes d'intentalo otra vuelta.",
-'login-abort-generic' => 'Falló la to identificación - Encaboxao',
+'login-abort-generic' => 'Falló la identificación - Encaboxao',
'loginlanguagelabel' => 'Llingua: $1',
-'suspicious-userlogout' => "Negósete'l pidimientu de desconexón porque paez que vien d'un restolador frañíu o d'un proxy de caché.",
+'suspicious-userlogout' => "La to solicitú de zarrar sesión refugose porque paez qu'unvióla un restolador frañíu o un proxy de caché.",
# Email sending
'php-mail-error-unknown' => 'Fallu desconocíu na función mail() de PHP.',
-'user-mail-no-addy' => 'Intentasti unviar un corréu electrónicu ensin direición.',
+'user-mail-no-addy' => 'Intentasti unviar un corréu electrónicu ensin direición de corréu.',
'user-mail-no-body' => "Trató d'unviar un corréu electrónicu con un cuerpu baleru o curtiu enforma.",
# Change password dialog
-'resetpass' => 'Camudar la clave',
-'resetpass_announce' => "Identificástite con una clave provisional unviada per corréu electrónicu.
-P'acabar d'identificate, has conseñar equí una clave nueva:",
+'resetpass' => 'Camudar la contraseña',
+'resetpass_announce' => "Aniciasti sesión con un códigu provisional unviáu per corréu electrónicu.
+P'acabar d'aniciar sesión, tienes de configurar equí una contraseña nueva:",
'resetpass_text' => '<!-- Amestar testu equí -->',
-'resetpass_header' => 'Camudar la clave de la cuenta',
-'oldpassword' => 'Clave antigua:',
-'newpassword' => 'Clave nueva:',
-'retypenew' => 'Escribi otra vuelta la clave nueva:',
-'resetpass_submit' => 'Conseñar una clave y identificase',
-'resetpass_success' => '¡Camudóse correutamente la to clave!
-Pasando a identificate...',
-'resetpass_forbidden' => 'Les claves nun se puen camudar',
-'resetpass-no-info' => "Has tar identificáu p'acceder direutamente a esta páxina.",
-'resetpass-submit-loggedin' => 'Camudar la clave',
+'resetpass_header' => 'Camudar la contraseña de la cuenta',
+'oldpassword' => 'Contraseña antigua:',
+'newpassword' => 'Contraseña nueva:',
+'retypenew' => 'Vuelvi a escribir la contraseña nueva:',
+'resetpass_submit' => 'Configurar la contraseña y aniciar sesión',
+'resetpass_success' => '¡Camudóse la contraseña correutamente!
+Aniciando sesión agora...',
+'resetpass_forbidden' => 'Nun puen camudase les contraseñes',
+'resetpass-no-info' => "Tienes d'aniciar sesión pa entrar direutamente a esta páxina.",
+'resetpass-submit-loggedin' => 'Camudar la contraseña',
'resetpass-submit-cancel' => 'Encaboxar',
-'resetpass-wrong-oldpass' => 'Clave provisional o actual non válida.
-Seique yá camudaras correutamente la clave o que pidieras una nueva clave provisional.',
-'resetpass-temp-password' => 'Clave provisional:',
+'resetpass-wrong-oldpass' => 'Contraseña temporal o actual inválida.
+Seique yá camudaras correutamente la contraseña o que pidieras una nueva contraseña temporal.',
+'resetpass-temp-password' => 'Contraseña temporal:',
'resetpass-abort-generic' => "Una estensión encaboxó'l cambiu de la contraseña.",
# Special:PasswordReset
-'passwordreset' => 'Reaniciar clave',
-'passwordreset-text' => 'Complete esti formulariu pa reaniciar la contraseña.',
-'passwordreset-legend' => 'Reaniciar clave',
-'passwordreset-disabled' => 'Los reanicios de clave tán desactivaos nesta wiki.',
+'passwordreset' => 'Reaniciar contraseña',
+'passwordreset-text-one' => 'Complete esti formulariu pa reaniciar la contraseña.',
+'passwordreset-text-many' => '{{PLURAL:$1|Escriba una de les partes de los datos pa reaniciar la contraseña.}}',
+'passwordreset-legend' => 'Reaniciar contraseña',
+'passwordreset-disabled' => 'Los reanicios de contraseña tán desactivaos nesta wiki.',
'passwordreset-emaildisabled' => 'Les funciones de corréu electrónicu tan desactivaes nesta wiki.',
-'passwordreset-pretext' => "{{PLURAL:$1||Escribi ún de los elementos de los datos d'abaxo}}",
'passwordreset-username' => "Nome d'usuariu:",
'passwordreset-domain' => 'Dominiu:',
'passwordreset-capture' => '¿Ver el corréu electrónicu resultante?',
-'passwordreset-capture-help' => "Si marques esta caxella, podrás ver el corréu (cola clave provisional) amás d'unvialu al usuariu.",
+'passwordreset-capture-help' => "Si marques esta caxella, podrás ver el corréu (cola contraseña temporal) amás d'unvialu al usuariu.",
'passwordreset-email' => 'Direición de corréu electrónicu:',
'passwordreset-emailtitle' => 'Detalles de la cuenta en {{SITENAME}}',
'passwordreset-emailtext-ip' => "Dalguién (seique vusté, dende la direición IP $1)solicitó'l reaniciu de la so contraseña de {{SITENAME}} ($4).
{{PLURAL:$3|Esta contraseña provisional caduca|Estes contraseñes provisionales caduquen}} {{PLURAL:$5|nun día|en $5 díes}}.
Tendría d'aniciar sesión y escoyer una contraseña nueva agora. Si esta solicitú la fizo otra persona, o si recordó la clave orixinal y yá nun quier camudala, pue escaecer esti mensaxe y siguir usando la contraseña antigua.",
'passwordreset-emailelement' => "Nome d'usuariu: $1
-Clave provisional: $2",
+Contraseña temporal: $2",
'passwordreset-emailsent' => 'Unvióse un corréu electrónicu pa reaniciar la contraseña.',
'passwordreset-emailsent-capture' => "Unvióse un corréu electrónicu pa reaniciar la contraseña, que s'amuesa abaxo.",
'passwordreset-emailerror-capture' => "Unvióse un corréu electrónicu pa reaniciar la contraseña, que s'amuesa abaxo, pero falló l'unviu {{GENDER:$2|al usuariu|a la usuaria}}: $1",
# Special:ChangeEmail
'changeemail' => 'Camudar la direición de corréu electrónicu',
'changeemail-header' => 'Camudar la direición de corréu electrónicu de la cuenta',
-'changeemail-text' => 'Rellena esti formulariu pa camudar la to direición de corréu electrónicu. Habrás escribir la to clave pa confirmar esti cambéu.',
-'changeemail-no-info' => "Has tar identificáu p'acceder direutamente a esta páxina.",
+'changeemail-text' => "Rellena esti formulariu pa camudar la to direición de corréu electrónicu. Tendrás d'escribir la contraseña pa confirmar esti cambéu.",
+'changeemail-no-info' => "Tien d'aniciar sesión pa entrar direutamente a esta páxina.",
'changeemail-oldemail' => 'Direición de corréu electrónicu actual:',
'changeemail-newemail' => 'Direición de corréu electrónicu nueva:',
'changeemail-none' => '(nengún)',
'link_sample' => 'Títulu del enllaz',
'link_tip' => 'Enllaz internu',
'extlink_sample' => 'http://www.example.com títulu del enllaz',
-'extlink_tip' => 'Enllaz esternu (alcuérdate del prefixu http://)',
-'headline_sample' => 'Testu de cabecera',
+'extlink_tip' => "Enllaz esternu (recuerda'l prefixu http://)",
+'headline_sample' => 'Testu del titular',
'headline_tip' => 'Cabecera de nivel 2',
'nowiki_sample' => 'Pon equí testu ensin formatu',
'nowiki_tip' => 'Inorar el formatu wiki',
# Edit pages
'summary' => 'Resume:',
-'subject' => 'Asuntu/cabecera:',
+'subject' => 'Asuntu/titular:',
'minoredit' => 'Esta ye una edición menor',
'watchthis' => 'Vixilar esta páxina',
'savearticle' => 'Guardar la páxina',
'showpreview' => 'Amosar previsualización',
'showlivepreview' => 'Vista rápida',
'showdiff' => 'Amosar cambeos',
-'anoneditwarning' => "'''Avisu:''' Nun tas identificáu.
-La to direición IP va quedar grabada nel historial d'edición d'esta páxina.",
-'anonpreviewwarning' => "''Nun tas identificáu. Al guardar va queda rexistrada la to direición IP nel historial d'edición d'esta páxina.''",
+'anoneditwarning' => "'''Avisu:''' Nun anició sesión.
+La direición IP quedará grabada nel historial d'edición d'esta páxina.",
+'anonpreviewwarning' => "''Nun aniciasti sesión. Al guardar quedará rexistrada la to direición IP nel historial d'edición d'esta páxina.''",
'missingsummary' => "'''Recordatoriu:''' Nun conseñasti un resume d'edición.
-Si vuelves calcar en \"{{int:savearticle}}\", la to edición va guardase ensin nengún resume.",
-'missingcommenttext' => 'Por favor, escribi un comentariu embaxo.',
-'missingcommentheader' => "'''Recordatoriu:''' Nun-y conseñasti asuntu/cabecera a esti comentariu.
-Si vuelves calcar en \"{{int:savearticle}}\", la to edición va guardase ensin nengún comentariu.",
-'summary-preview' => 'Previsualización del resume:',
-'subject-preview' => 'Previsualización del asuntu/cabecera:',
+Si calques nuevamente \"{{int:savearticle}}\", la to edición guardaráse ensin nengún resume.",
+'missingcommenttext' => 'Por favor, escribi un comentariu abaxo.',
+'missingcommentheader' => "'''Recordatoriu:''' Nun conseñasti un asuntu/titular pa esti comentariu.
+Si calques nuevamente \"{{int:savearticle}}\", la to edición guardaráse ensin dengún.",
+'summary-preview' => 'Vista previa del resume:',
+'subject-preview' => 'Vista previa del asuntu/titular:',
'blockedtitle' => "L'usuariu ta bloquiáu",
-'blockedtext' => "'''Bloquióse'l to nome d'usuariu o la to direición IP.'''
+'blockedtext' => "'''El to nome d'usuariu o direición IP ta bloquiáu.'''
-El bloquéu féxolu $1.
+El bloquéu fexolu $1.
El motivu conseñáu ye ''$2''.
-* Entamu del bloquéu: $8
+* Principiu del bloquéu: $8
* Caducidá del bloquéu: $6
* Usuariu a bloquiar: $7
-Pues ponete en contautu con $1 o con cualesquier otru [[{{MediaWiki:Grouppage-sysop}}|alministrador]] p'aldericar sobre'l bloquéu.
-Nun pues usar la funcionalidá 'manda-y un corréu electrónicu a esti usuariu' a nun ser que tea especificada una direición de
-corréu electrónicu válida na to [[Special:Preferences|páxina de preferencies]] y que nun te tengan bloquiao'l so usu.
-La to direición IP actual ye $3, y el númberu d'identificación del bloquéu ye $5.
-Por favor, amiesta tolos detalles nes consultes que faigas.",
-'autoblockedtext' => 'Bloquióse automáticamente la to direición IP porque la usó otru usuariu que foi bloquiáu por $1.
+Pues ponete'n contautu con $1 o con otru [[{{MediaWiki:Grouppage-sysop}}|alministrador]] p'aldericar sobre'l bloquéu.
+Nun pues usar la función 'manda-y un corréu electrónicu a esti usuariu' a nun ser que tea especificada una direición de
+corréu electrónicu válida nes tos [[Special:Preferences|preferencies de cuenta]] y que nun tengas torgao usala.
+La to direición IP actual ye $3, y la ID del bloquéu ye #$5.
+Por favor, incluye tolos detalles anteriores nes consultes que faigas.",
+'autoblockedtext' => "La to direición IP bloquióse automáticamente porque usóla otru usuariu que foi bloquiáu por $1.
El motivu conseñáu ye:
-:\'\'$2\'\'
+:''$2''
-* Entamu del bloquéu: $8
+* Principiu del bloquéu: $8
* Caducidá del bloquéu: $6
* Usuariu a bloquiar: $7
-Pues ponete en contautu con $1 o con cualesquier otru [[{{MediaWiki:Grouppage-sysop}}|alministrador]] p\'aldericar sobre\'l bloquéu.
-
-Fíxate en que nun pues usar la funcionalidá "manda-y un corréu electrónicu a esti usuariu" a nun se que tea rexistrada una direición de corréu electrónicu válida na to [[Special:Preferences|páxina de preferencies]] y que nun te tengan bloquiao\'l so usu.
+Pues ponete'n contautu con $1 o con otru de los [[{{MediaWiki:Grouppage-sysop}}|alministradores]] p'aldericar sobre'l bloquéu.
-La to direición IP actual ye $3, y el númberu d\'identificación del bloquéu ye $5.
-Por favor, amiesta tolos detalles nes consultes que faigas.
+Ten en cuenta que nun pues usar la función «manda-y un corréu electrónicu a esti usuariu» a nun ser que tengas rexistrada una direición de corréu electrónicu válida nes [[Special:Preferences|preferencies d'usuariu]] y que nun tengas torgao usala.
-La to direición IP actual ye $3, y el númberu d\'identificación del bloquéu ye $5.
-Por favor, amiesta tolos detalles nes consultes que faigas.',
+La to direición IP actual ye $3, y la ID del bloquéu ye #$5.
+Por favor, incluye tolos detalles anteriores nes consultes que faigas.",
'blockednoreason' => 'nun se dio nengún motivu',
-'whitelistedittext' => 'Has $1 pa editar páxines.',
-'confirmedittext' => "Has confirmar la to direición de corréu electrónicu enantes d'editar páxines.
-Por favor, defínila y valídala nes tos [[Special:Preferences|preferencies d'usuariu]].",
-'nosuchsectiontitle' => 'Nun se pue atopar la seición',
+'whitelistedittext' => "Tienes d'$1 pa editar páxines.",
+'confirmedittext' => "Tienes de confirmar la direición de corréu electrónicu enantes d'editar páxines.
+Por favor, configura y valida la direición de corréu nes [[Special:Preferences|preferencies d'usuariu]].",
+'nosuchsectiontitle' => 'Nun pue atopase la seición',
'nosuchsectiontext' => 'Intentasti editar una seición que nun esiste.
Seique se treslladara o desaniciara mientres víes la páxina.',
-'loginreqtitle' => 'Necesítase identificación',
-'loginreqlink' => 'identificate',
-'loginreqpagetext' => 'Has $1 pa ver otres páxines.',
+'loginreqtitle' => 'Ye necesario aniciar sesión',
+'loginreqlink' => 'aniciar sesión',
+'loginreqpagetext' => "Tienes d'$1 pa ver otres páxines.",
'accmailtitle' => 'Clave unviada',
-'accmailtext' => "Unvióse a $2 una clave xenerada al debalu pal usuariu [[User talk:$1|$1]].
+'accmailtext' => "Unvióse a $2 una contraseña xenerada al debalu pal usuariu [[User talk:$1|$1]].
-La clave d'esta cuenta nueva pue camudase na páxina ''[[Special:ChangePassword|camudar clave]]'' depués d'identificate.",
+La contraseña d'esta cuenta nueva pue camudase na páxina ''[[Special:ChangePassword|camudar contraseña]]'' depués d'aniciar sesión.",
'newarticle' => '(Nuevu)',
'newarticletext' => "Siguisti un enllaz a un artículu qu'inda nun esiste.
Pa crear la páxina, empecipia a escribir nel cuadru d'embaxo (mira la [[{{MediaWiki:Helppage}}|páxina d'ayuda]] pa más información).
Si llegasti equí por enquivocu, calca nel botón '''atrás''' del to restolador.",
'anontalkpagetext' => "----
-''Esta ye la páxina de'alderique pa un usuariu anónimu qu'inda nun creó una cuenta o que nun la usa.''
-Pola mor d'ello ha usase la direición numbérica IP pa identificalu/la.
-Tala IP pue ser compartida por varios usuarios.
-Si yes un usuariu anónimu y notes qu'hai comentarios irrelevantes empobinaos pa ti, por favor [[Special:UserLogin/signup|crea una cuenta]] o [[Special:UserLogin/signup|identifícate]] pa torgar futures confusiones con otros usuarios anónimos.",
+''Esta ye la páxina d'alderique pa un usuariu anónimu qu'inda nun creó una cuenta o que nun la usa.''
+Poro, tenemos qu'usar la direición numbérica IP pa identificalu/la.
+Esa IP pue tar compartida por varios usuarios.
+Si ye un usuariu anónimu y cree qu'hai comentarios irrelevantes empobinaos a vusté, por favor, [[Special:UserLogin/signup|cree una cuenta]] o [[Special:UserLogin/signup|anicie sesión]] pa torgar futures confusiones con otros usuarios anónimos.",
'noarticletext' => 'Nestos momentos nun hai testu nesta páxina.
-Pues [[Special:Search/{{PAGENAME}}|guetar esti títulu de páxina]] n\'otres páxines,
-<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} guetar los rexistros rellacionaos],
+Pue [[Special:Search/{{PAGENAME}}|buscar esti títulu de páxina]] n\'otres páxines,
+<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} buscar los rexistros rellacionaos],
o [{{fullurl:{{FULLPAGENAME}}|action=edit}} editar esta páxina]</span>.',
'noarticletext-nopermission' => 'Nestos momentos nun hai testu nesta páxina.
-Pues [[Special:Search/{{PAGENAME}}|guetar esti títulu de páxina]] n\'otres páxines o <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} guetar los rexistros rellacionaos]</span>, pero nun tienes permisu pa crear esta páxina.',
+Pue [[Special:Search/{{PAGENAME}}|buscar esti títulu de páxina]] n\'otres páxines o <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} buscar los rexistros rellacionaos]</span>, pero nun tiene permisu pa crear esta páxina.',
'missing-revision' => 'La revisión #$1 de la páxina llamada "{{PAGENAME}}" nun esiste.
De vezu la causa d\'esto ye siguir un enllaz antiguu del historial a una páxina que se desanició.
'userpage-userdoesnotexist' => "La cuenta d'usuariu «$1» nun ta rexistrada.
Por favor comprueba si quies crear/editar esta páxina.",
'userpage-userdoesnotexist-view' => "La cuenta d'usuariu «$1» nun ta rexistrada.",
-'blocked-notice-logextract' => 'Nestos momentos esti usuariu ta bloquiáu.
-La postrer entrada del rexistru de bloqueos úfrese darréu pa referencia:',
+'blocked-notice-logextract' => 'Anguaño esti usuariu ta bloquiáu.
+Más abaxo ufrese la entrada del rexistru de bloqueos pa referencia:',
'clearyourcache' => "'''Nota:''' Llueu de guardar, seique tengas que llimpiar la caché del restolador pa ver los cambeos.
*'''Firefox / Safari:''' Caltén ''Mayús'' mentes calques en ''Recargar'', o calca ''Ctrl-F5'' o ''Ctrl-R'' (''⌘-R'' nun Mac)
* '''Google Chrome:''' Calca ''Ctrl-Mayús-R'' (''⌘-Mayús-R'' nun Mac)
* '''Internet Explorer:''' Caltén ''Ctrl'' mentes calques ''Refrescar'', o calca ''Ctrl-F5''
* '''Opera:''' llimpia la caché en ''Ferramientes → Preferencies''",
-'usercssyoucanpreview' => "'''Conseyu:''' Usa'l botón \"{{int:showpreview}}\" pa probar el to CSS nuevu enantes de guardalu.",
-'userjsyoucanpreview' => "'''Conseyu:''' Usa'l botón \"{{int:showpreview}}\" pa probar el to JavaScript nuevu enantes de guardalu.",
-'usercsspreview' => "'''Recuerda que namái tas previsualizando'l to CSS d'usuariu.'''
-'''¡Tovía nun ta guardáu!'''",
-'userjspreview' => "'''¡Recuerda que namái tas probando/previsualizando'l to JavaScript d'usuariu.'''
-'''¡Tovía nun ta guardáu!'''",
+'usercssyoucanpreview' => "'''Conseyu:''' Usa'l botón \"{{int:showpreview}}\" pa probar el CSS nuevu enantes de guardalu.",
+'userjsyoucanpreview' => "'''Conseyu:''' Usa'l botón \"{{int:showpreview}}\" pa probar el JavaScript nuevu enantes de guardalu.",
+'usercsspreview' => "'''Recuerda que namái ye la vista previa del CSS d'usuariu.'''
+'''¡Inda nun ta guardáu!'''",
+'userjspreview' => "'''Recuerda que namái ye la prueba/vista previa del JavaScript d'usuariu.'''
+'''¡Inda nun ta guardáu!'''",
'sitecsspreview' => "'''Recuerda que namái tas previsualizando esti CSS.'''
'''¡Tovía nun ta guardáu!'''",
-'sitejspreview' => "'''¡Recuerda que namái tas probando esti códigu JavaScript.'''
-'''¡Tovía nun tá guardáu!'''",
-'userinvalidcssjstitle' => "'''Avisu:''' Nun hai apariencia «$1».
-Les páxines personalizaes .css y .js usen un títulu en minúscules, p. ex. {{ns:user}}:Foo/vector.css en cuenta de {{ns:user}}:Foo/Vector.css.",
-'updated' => '(Actualizao)',
+'sitejspreview' => "'''Recuerda que namái tas probando esti códigu JavaScript.'''
+'''¡Inda nun tá guardáu!'''",
+'userinvalidcssjstitle' => "'''Avisu:''' Nun esiste'l tema «$1».
+Les páxines personalizaes de .css y .js usen un títulu en minúscules, p. ex. {{ns:user}}:Foo/vector.css y non {{ns:user}}:Foo/Vector.css.",
+'updated' => '(Anovao)',
'note' => "'''Nota:'''",
'previewnote' => "'''Alcuerdate de qu'esto ye sólo una vista previa.'''
¡Los cambios entá nun se guardaron!",
'continue-editing' => "Dir al área d'edición",
'previewconflict' => "Esta vista previa amuesa'l testu del área d'edición d'arriba tal como apaecerá si escueyes guardar.",
-'session_fail_preview' => "'''¡Sentímoslo muncho! Nun se pudo procesar la to edición porque hebo una perda de datos de la sesión.
-Inténtalo otra vuelta. Si nun se t'arregla, intenta salir y volver a rexistrate.'''",
-'session_fail_preview_html' => "'''¡Sentímoslo! Nun se pudo procesar la to edición pola mor d'una perda de datos de sesión.'''
+'session_fail_preview' => "'''¡Sentímoslo muncho! Nun pudimos procesar la to edición por aciu d'una perda de datos de la sesión.'''
+Por favor, vuelvi a intentalo.
+Si inda nun funciona, intenta [[Special:UserLogout|colar]] y volver a aniciar sesión.",
+'session_fail_preview_html' => "'''¡Sentímoslo! Nun pudo procesase la to edición por aciu d'una perda de datos de la sesión.'''
-''Como {{SITENAME}} tien activáu'l HTML puru, la previsualización nun s'amosará como precaución escontra ataques en JavaScript.''
+''Como {{SITENAME}} tien el HTML puru activáu, la vista previa ta tapecida como precaución escontra ataques en JavaScript.''
-'''Si esti ye un intentu llexítimu d'edición, por favor inténtalo otra vuelta. Si tovía asina nun furrula, intenta [[Special:UserLogout|desconeutate]] y volver a identificate.'''",
+'''Si esti ye un intentu llexítimu d'edición, por favor vuelvi a intentalo.''' Si inda nun funciona, intenta [[Special:UserLogout|colar]] y volver a aniciar sesión.",
'token_suffix_mismatch' => "'''La to edición nun s'aceutó porque'l to navegador mutiló los caráuteres de puntuación nel editor.'''
La edición nun foi aceutada pa prevenir corrupciones na páxina de testu.
Dacuando esto pasa por usar un serviciu proxy anónimu basáu en web que tenga fallos.",
-'edit_form_incomplete' => "'''Delles partes del formulariu d'edición nun llegaron al sirvidor; comprueba que les ediciones tean intactes y vuelve a tentalo.'''",
+'edit_form_incomplete' => "'''Delles partes del formulariu d'edición nun llegaron al sirvidor; comprueba que les ediciones tean intactes y vuelvi a tentalo.'''",
'editing' => 'Editando $1',
'creating' => 'Creando $1',
'editingsection' => 'Editando $1 (seición)',
'''Namái''' va guardase'l testu del área d'arriba cuando calques \"{{int:savearticle}}\".",
'yourtext' => 'El to testu',
'storedversion' => 'Versión almacenada',
-'nonunicodebrowser' => "'''AVISU: El to navegador nun cumple la norma unicode. Hai un sistema alternativu que te permite editar páxines de forma segura: los carauteres non-ASCII apaecerán na caxa d'edición como códigos hexadecimales.'''",
+'nonunicodebrowser' => "'''Avisu: El to navegador nun cumple la norma Unicode.''' Hai un sistema alternativu que te permite editar páxines de forma segura: los caráuteres non-ASCII apaecerán nel cuadru d'edición como códigos hexadecimales.",
'editingold' => "'''AVISU: Tas editando una revisión vieya d'esta páxina. Si la grabes, los cambios que se ficieron dende esta revisión van perdese.'''",
'yourdiff' => 'Diferencies',
-'copyrightwarning' => "Por favor, ten en cuenta que toles contribuciones de {{SITENAME}} se consideren espublizaes baxo la $2 (ver $1 pa más detalles). Si nun quies que'l to trabayu s'edite ensin midida y se distribuya al debalu, nun lu pongas equí.<br />
-Amás tas dexándonos afitao qu'escribisti esto tu mesmu o que lo copiasti d'una fonte llibre de dominiu públicu o asemeyao.
-'''¡NUN PONGAS TRABAYOS CON DERECHOS D'AUTOR ENSIN PERMISU!'''",
+'copyrightwarning' => "Por favor, ten en cuenta que toles collaboraciones de {{SITENAME}} considerense espublizaes baxo la $2 (ver $1 pa más detalles). Si nun quies que'l to trabayu s'edite ensin midida y se distribuya al debalu, nun lu pongas equí.<br />
+Amás tas prometiendonos qu'escribisti esto tu mesmu o que copiastilo d'una fonte llibre de dominiu públicu o asemeyao.
+'''¡Nun unvies obres con drechos d'autor ensin permisu!'''",
'copyrightwarning2' => "Por favor, ten en cuenta que toles contribuciones de {{SITENAME}} se puen editar, alterar o desaniciar por otros usuarios. Si nun quies que'l to trabayu s'edite ensin midida, nun lu pongas equí.<br />
Amás tas dexándonos afitao qu'escribisti esto tu mesmu, o que lo copiasti d'una fonte llibre de dominiu públicu o asemeyao (ver $1 pa más detalles).
'''¡Nun pongas trabayos con drechos d'autor ensin permisu!'''",
La cabera entrada del rexistru s'ufre darréu pa referencia:",
'semiprotectedpagewarning' => "'''Nota:''' Esta páxina ta candada pa que nun puean editala namái que los usuarios rexistraos.
La cabera entrada del rexistru s'ufre darréu pa referencia:",
-'cascadeprotectedwarning' => "'''Avisu:''' Esta páxina ta candada pa que namái los alministradores la puean editar porque ta enxerta {{PLURAL:$1|na siguiente páxina protexida|nes siguientes páxines protexíes}} en cascada:",
+'cascadeprotectedwarning' => "'''Avisu:''' Esta páxina ta candada pa que namái los alministradores puedan editala porque ta incluída {{PLURAL:$1|na siguiente páxina protexida|nes siguientes páxines protexíes}} en cascada:",
'titleprotectedwarning' => "'''Avisu: Esta páxina ta candada pa que necesite [[Special:ListGroupRights|permisos especiales]] pa creala.'''
La cabera entrada del rexistru s'ufre darréu pa referencia:",
'templatesused' => '{{PLURAL:$1|Plantía usada|Plantíes usaes}} nesta páxina:',
'template-semiprotected' => '(semi-protexida)',
'hiddencategories' => 'Esta páxina pertenez a {{PLURAL:$1|una categoría anubrida|$1 categoríes anubríes}}:',
'edittools' => "<!-- Esti testu apaecerá baxo los formularios d'edición y xuba. -->",
-'nocreatetext' => '{{SITENAME}} tien restrinxida la capacidá de crear páxines nueves.
-Pues volver atrás y editar una páxina esistente, o bien [[Special:UserLogin|identificate o crear una cuenta]].',
+'nocreatetext' => '{{SITENAME}} tien torgada la posibilidá de crear páxines nueves.
+Pues volver atrás y editar una páxina esistente, o bien [[Special:UserLogin|aniciar sesión o crear una cuenta]].',
'nocreate-loggedin' => 'Nun tienes permisu pa crear páxines nueves.',
'sectioneditnotsupported-title' => 'Nun hai sofitu pa editar seición',
'sectioneditnotsupported-text' => 'La edición de seición nun tien sofitu nesta páxina.',
Como referencia, embaxo s'ufre'l rexistru de desanicios y tresllaos de la páxina.",
'log-fulllog' => 'Ver el rexistru ensembre',
'edit-hook-aborted' => 'Edición albortada pol hook.
-Nun conseñó esplicación.',
+Nun dio esplicación.',
'edit-gone-missing' => 'Nun se pudo actualizar la páxina.
Paez que se desanició.',
'edit-conflict' => "Conflictu d'edición.",
'edit-no-change' => "S'inoró la to edición, porque nun se fizo nengún cambéu nel testu.",
-'edit-already-exists' => 'Nun se pudo crear una páxina nueva.
-Yá esiste.',
+'postedit-confirmation' => 'Guardose la edición.',
+'edit-already-exists' => 'Nun pudo crease una páxina nueva.
+Esta yá esiste.',
'defaultmessagetext' => 'Testu predetermináu',
'content-failed-to-parse' => 'Fallu al analizar el conteníu $2 pal modelu $1: $3',
'invalid-content-data' => 'Datos del conteníu inválidos',
'content-not-allowed-here' => 'El conteníu «$1» nun se permite na páxina [[$2]]',
-'editwarning-warning' => 'Salir d\'esta páxina pue facer que se pierda cualesquier cambiu fechu.
-Si aniciasti sesión, puedes desactivar esti avisu na seición "Edición" de les tos preferencies.',
+'editwarning-warning' => 'Salir d\'esta páxina pue causar la perda de cualesquier cambiu fechu.
+Si aniciasti sesión, pue desactivase esti avisu na seición "Edición" de les tos preferencies.',
# Content models
'content-model-wikitext' => 'testu wiki',
'expensive-parserfunction-warning' => "'''Avisu:''' Esta páxina contién demasiaes llamaes costoses a funciones d'análisis sintáuticu.
Habría tener menos de $2 {{PLURAL:$2|llamada|llamaes}}, y agora tien $1 {{PLURAL:$1|llamada|llamaes}}.",
-'expensive-parserfunction-category' => "Páxines con demasiaes llamaes costoses a funciones d'análisis sintáuticu",
+'expensive-parserfunction-category' => 'Páxines con demasiaes llamaes costoses a funciones analítiques',
'post-expand-template-inclusion-warning' => "'''Avisu:''' El tamañu de les plantíes incluyíes ye demasiao grande.
Delles plantíes nun se van incluir.",
'post-expand-template-inclusion-category' => "Páxines con escesu d'inclusiones de plantíes",
'post-expand-template-argument-warning' => "'''Avisu:''' Esta páxina contién polo menos un parámetru de plantía que tien un tamañu d'espansión demasiao llargu.
Estos parámetros s'omitieron.",
'post-expand-template-argument-category' => 'Páxines con parámetros de plantía omitíos',
-'parser-template-loop-warning' => 'Hai una rueda de plantíes: [[$1]]',
+'parser-template-loop-warning' => 'Deteutóse un bucle de plantíes: [[$1]]',
'parser-template-recursion-depth-warning' => 'Se pasó la llende de fondura recursiva de les plantíes ($1)',
'language-converter-depth-warning' => 'Se pasó la llende de fondura del convertidor de llingües ($1)',
'node-count-exceeded-category' => 'Páxines onde se pasó la cuenta de nodios',
'expansion-depth-exceeded-category' => "Páxines onde se pasó la fondura d'espansión",
'expansion-depth-exceeded-warning' => "La páxina pasó la fondura d'espansión",
'parser-unstrip-loop-warning' => 'Deteutóse un bucle "unstrip"',
-'parser-unstrip-recursion-limit' => 'Superóse\'l llímite de recursión d\'"unstrip" ($1)',
+'parser-unstrip-recursion-limit' => "Pasóse la llende de recursividá d'unstrip ($1)",
'converter-manual-rule-error' => 'Detectóse un error na regla de conversión manual de llingua',
# "Undo" feature
'undo-success' => "La edición se pue esfacer.
Por favor comprueba la comparanza d'abaxo pa confirmar que ye eso lo que quies facer, y depués guarda los cambios p'acabar d'esfacer la edición.",
-'undo-failure' => "Nun se pudo esfacer la edición pola mor d'ediciones intermedies conflictives.",
+'undo-failure' => "Nun pudo esfacese la edición por aciu d'ediciones intermedies conflictives.",
'undo-norev' => 'Nun se pudo esfacer la edición porque nun esiste o se desanició.',
'undo-summary' => 'Esfacer la revisión $1 de [[Special:Contributions/$2|$2]] ([[User talk:$2|alderique]])',
# Account creation failure
-'cantcreateaccounttitle' => 'Nun se pue crear la cuenta',
+'cantcreateaccounttitle' => 'Nun pue crease la cuenta',
'cantcreateaccount-text' => "La creación de cuentes dende esta direición IP ('''$1''') foi bloquiada por [[User:$3|$3]].
El motivu dau por $3 ye ''$2''",
'nextrevision' => 'Revisión siguiente→',
'currentrevisionlink' => 'Revisión actual',
'cur' => 'act',
-'next' => 'próximu',
+'next' => 'siguiente',
'last' => 'cab',
'page_first' => 'primera',
'page_last' => 'cabera',
'rev-delundel' => 'amosar/anubrir',
'rev-showdeleted' => 'amosar',
'revisiondelete' => 'Desaniciar/restaurar revisiones',
-'revdelete-nooldid-title' => 'Revisión de destín non válida',
+'revdelete-nooldid-title' => 'Revisión de destín inválida',
'revdelete-nooldid-text' => 'Nun especificasti una revisión o revisiones destín sobre les que realizar esta función, la revisión especificada nun esiste, o tas intentando anubrir la revisión actual.',
'revdelete-nologtype-title' => 'Nun se dio la triba de rexistru',
'revdelete-nologtype-text' => 'Nun conseñasti una triba de rexistru nel que facer esta aición.',
'revdelete-show-file-confirm' => '¿Tas seguru de que quies ver una versión desaniciada del ficheru "<nowiki>$1</nowiki>" del $2 a les $3?',
'revdelete-show-file-submit' => 'Sí',
'revdelete-selected' => "'''{{PLURAL:$2|Revisión seleicionada|Revisiones seleicionaes}} de [[:$1]]:'''",
-'logdelete-selected' => "'''{{PLURAL:$1|Seleicionáu un eventu de rexistru|Seleicionaos eventos de rexistru}}:'''",
+'logdelete-selected' => "'''{{PLURAL:$1|Socesu del rexistru seleicionáu|Socesos del rexistru seleicionaos}}:'''",
'revdelete-text' => "'''Les revisiones y socesos desaniciaos van siguir apaeciendo nel historial de la páxina y nos rexistros, pero parte del so conteníu nun va ser accesible pal públicu.'''
Otros alministradores de {{SITENAME}} van siguir pudiendo acceder al conteníu anubríu y puen restauralu de nuevo al traviés d'esta mesma interfaz, a nun ser que s'establezan otres restricciones.",
'revdelete-confirm' => "Confirma que quies facer esto, qu'entiendes les consecuencies, y que vas facer esto d'alcuerdo [[{{MediaWiki:Policy-url}}|cola política]].",
* Información que pudiere ser bilordiosa
* Información personal non apropiada
*: ''direiciones de llares y númberos de teléfonu, númberos de seguridá social, etc.''",
-'revdelete-legend' => 'Establecer restricciones de visibilidá',
-'revdelete-hide-text' => 'Esconder testu de revisión',
-'revdelete-hide-image' => 'Esconder el conteníu del archivu',
-'revdelete-hide-name' => 'Esconder aición y oxetivu',
-'revdelete-hide-comment' => "Esconder comentariu d'edición",
-'revdelete-hide-user' => "Esconder el nome d'usuariu/IP del editor",
+'revdelete-legend' => 'Establecer torgues de visibilidá',
+'revdelete-hide-text' => 'Tapecer testu de la revisión',
+'revdelete-hide-image' => 'Tapecer el conteníu del ficheru',
+'revdelete-hide-name' => 'Tapecer aición y oxetivu',
+'revdelete-hide-comment' => "Tapecer el resume d'edición",
+'revdelete-hide-user' => "Tapecer el nome d'usuariu/IP del editor",
'revdelete-hide-restricted' => "Desaniciar datos de los alministradores y d'otros",
'revdelete-radio-same' => '(ensin cambeos)',
'revdelete-radio-set' => 'Sí',
'revdelete-radio-unset' => 'Non',
-'revdelete-suppress' => 'Eliminar datos de los alministradores lo mesmo que los de los demás',
-'revdelete-unsuppress' => 'Eliminar restricciones de revisiones restauraes',
+'revdelete-suppress' => "Desaniciar datos de los alministradores igual que d'otros",
+'revdelete-unsuppress' => 'Desaniciar les torgues nes revisiones restauraes',
'revdelete-log' => 'Motivu:',
'revdelete-submit' => 'Aplicar a {{PLURAL:$1|la revisión seleicionada|les revisiones seleicionaes}}',
'revdelete-success' => "'''Visibilidá de revisiones anovada correutamente.'''",
Se puen alcontrar más detalles nel [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} rexistru de desanicios].",
# Search results
-'searchresults' => 'Resultaos de la gueta',
-'searchresults-title' => 'Resultaos de guetar "$1"',
+'searchresults' => 'Resultaos de la busca',
+'searchresults-title' => 'Resultaos de buscar "$1"',
'searchresulttext' => 'Pa más información tocante a busques en {{SITENAME}}, vete a [[{{MediaWiki:Helppage}}|{{int:help}}]].',
'searchsubtitle' => 'Buscasti \'\'\'[[:$1]]\'\'\' ([[Special:Prefixindex/$1|toles páxines qu\'emprimen con "$1"]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|toles páxines qu\'enllacien a "$1"]])',
'searchsubtitleinvalid' => "Buscasti '''$1'''",
'searchmenu-legend' => 'Opciones de busca',
'searchmenu-exists' => "'''Hai una páxina nomada \"[[\$1]]\" nesta wiki'''",
'searchmenu-new' => "'''¡Crear la páxina \"[[:\$1]]\" nesta wiki!'''",
-'searchhelp-url' => 'Help:Conteníos',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Restolar páxines con esti prefixu]]',
'searchprofile-articles' => 'Páxines de conteníu',
'searchprofile-project' => 'Páxines de proyeutu y ayuda',
'searchprofile-project-tooltip' => 'Buscar en $1',
'searchprofile-images-tooltip' => 'Buscar ficheros',
'searchprofile-everything-tooltip' => "Buscar tol conteníu (incluyendo páxines d'alderique)",
-'searchprofile-advanced-tooltip' => 'Guetar nos espacios de nomes personalizaos',
+'searchprofile-advanced-tooltip' => 'Buscar nos espacios de nomes personalizaos',
'search-result-size' => '$1 ({{PLURAL:$2|1 pallabra|$2 pallabres}})',
'search-result-category-size' => '{{PLURAL:$1|1 miembru|$1 miembros}} ({{PLURAL:$2|1 subcategoría|$2 subcategories}}, {{PLURAL:$3|1 ficheru|$3 ficheros}})',
'search-result-score' => 'Relevancia: $1%',
'search-interwiki-default' => '$1 resultaos:',
'search-interwiki-more' => '(más)',
'search-relatedarticle' => 'Rellacionáu',
-'mwsuggest-disable' => 'Desactivar les suxerencies de gueta',
+'mwsuggest-disable' => 'Desactivar les suxerencies de busca',
'searcheverything-enable' => 'Buscar en tolos espacios de nome',
'searchrelated' => 'rellacionáu',
'searchall' => 'toos',
'showingresultsheader' => "{{PLURAL:$5|Resultáu '''$1''' de '''$3'''|Resultaos '''$1 - $2''' de '''$3'''}} pa '''$4'''",
'nonefound' => "'''Nota''': De mou predetermináu namái se busca en dellos espacios de nomes. Prueba a poner delantre de la to consulta ''all:'' pa buscar en tol conteníu (inxiriendo páxines d'alderique, plantíes, etc.), o usa como prefixu l'espaciu de nome deseáu.",
'search-nonefound' => 'Nun hebo resultaos que casaren cola consulta.',
-'powersearch' => 'Gueta avanzada',
-'powersearch-legend' => 'Gueta avanzada',
+'powersearch' => 'Busca avanzada',
+'powersearch-legend' => 'Busca avanzada',
'powersearch-ns' => 'Buscar nos espacios de nome:',
'powersearch-redir' => 'Llistar redireiciones',
'powersearch-field' => 'Buscar',
'powersearch-togglenone' => 'Dengún',
'search-external' => 'Busca esterna',
'searchdisabled' => "La busca en {{SITENAME}} ta desactivada. Mentanto, pues buscar en Google. Has fixate en que'l conteníu de los sos índices de {{SITENAME}} pue tar desfasáu.",
-'search-error' => 'Hebo un error al guetar: $1',
+'search-error' => 'Hebo un error al buscar: $1',
# Preferences page
'preferences' => 'Preferencies',
'mypreferences' => 'Preferencies',
'prefs-edits' => "Númberu d'ediciones:",
-'prefsnologin' => 'Non identificáu',
-'prefsnologintext' => 'Necesites tar <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} identificáu]</span> pa camudar les preferencies d\'usuariu.',
+'prefsnologin' => 'Nun anició sesión',
+'prefsnologintext' => 'Necesita <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} aniciar sesión]</span> pa camudar la configuración d\'usuariu.',
'changepassword' => 'Camudar la clave',
'prefs-skin' => 'Apariencia',
'skin-preview' => 'Vista previa',
'prefs-edit-boxsize' => "Tamañu de la ventana d'edición.",
'rows' => 'Fileres:',
'columns' => 'Columnes:',
-'searchresultshead' => 'Guetar',
+'searchresultshead' => 'Buscar',
'resultsperpage' => 'Resultaos por páxina:',
'stub-threshold' => 'Llímite superior pa considerar como <a href="#" class="stub">enllaz a entamu</a> (bytes):',
'stub-threshold-disabled' => 'Desactivao',
'timezoneregion-indian' => 'Océanu Índicu',
'timezoneregion-pacific' => 'Océanu Pacíficu',
'allowemail' => 'Dexar a los otros usuarios mandate correos',
-'prefs-searchoptions' => 'Guetar',
+'prefs-searchoptions' => 'Buscar',
'prefs-namespaces' => 'Espacios de nome',
-'defaultns' => "D'otra miente, guetar nestos espacios de nome:",
+'defaultns' => 'Sinón, buscar nestos espacios de nome:',
'default' => 'predetermináu',
'prefs-files' => 'Ficheros',
'prefs-custom-css' => 'CSS personalizada',
'userrights-reason' => 'Motivu:',
'userrights-no-interwiki' => "Nun tienes permisu pa editar los derechos d'usuariu n'otres wikis.",
'userrights-nodatabase' => 'La base de datos $1 nun esiste o nun ye llocal.',
-'userrights-nologin' => "Has tar [[Special:UserLogin|identificáu]] con una cuenta d'alministrador p'asignar derechos d'usuariu.",
+'userrights-nologin' => "Tien d'[[Special:UserLogin|aniciar sesión]] con una cuenta d'alministrador pa dar permisos d'usuariu.",
'userrights-notallowed' => "La to cuenta nun tien permisu p'amestar o desaniciar permisos d'usuariu.",
'userrights-changeable-col' => 'Grupos que pues camudar',
'userrights-unchangeable-col' => 'Grupos que nun pues camudar',
'userrights-conflict' => "¡Hai un conflictu de permisos d'usuariu! Por favor, vuelva a aplicar los cambios.",
+'userrights-removed-self' => 'Retiró correutamente los sos propios drechos. Poro, yá nun tendrá accesu a esta páxina.',
# Groups
'group' => 'Grupu:',
'right-editusercssjs' => "Editar los archivos CSS y JS d'otros usuarios",
'right-editusercss' => "Editar los archivos CSS d'otros usuarios",
'right-edituserjs' => "Editar los archivos JS d'otros usuarios",
+'right-editmyusercss' => "Editar los propios ficheros CSS d'usuariu",
+'right-editmyuserjs' => "Editar los propios ficheros JavaScript d'usuariu",
+'right-viewmywatchlist' => 'Ver la llista de vixilancia propia',
+'right-editmywatchlist' => 'Editar la llista de vixilancia propia. Tenga en cuenta que dalgunes aiciones amestarán páxines igual, inda ensin esti permisu.',
'right-rollback' => "Revertir rápido a un usuariu qu'editó una páxina determinada",
'right-markbotedits' => 'Marcar les ediciones revertíes como ediciones de bot',
'right-noratelimit' => 'Nun tar afeutáu polos llímites de tasa',
'action-userrights-interwiki' => "editar los drechos d'usuariu d'usuarios d'otres wikis",
'action-siteadmin' => 'candar o descandar la base de datos',
'action-sendemail' => 'unviar correos',
+'action-editmywatchlist' => 'editar la llista de vixilancia',
+'action-viewmywatchlist' => 'ver la llista de vixilancia propia',
# Recent changes
'nchanges' => '{{PLURAL:$1|un cambiu|$1 cambios}}',
'uploadbtn' => 'Xubir ficheru',
'reuploaddesc' => 'Cancelar la xubida y tornar al formulariu de xubíes',
'upload-tryagain' => 'Unviar descripción camudada del ficheru',
-'uploadnologin' => 'Non identificáu',
-'uploadnologintext' => 'Tienes que tar [[Special:UserLogin|identificáu]] pa poder xubir archivos.',
+'uploadnologin' => 'Nun anició sesión',
+'uploadnologintext' => "Tien d'$1 pa xubir ficheros.",
'upload_directory_missing' => 'El direutoriu de xubida ($1) nun esiste y nun pudo ser creáu pol sirvidor de web.',
'upload_directory_read_only' => "El sirvidor nun pue modificar el direutoriu de xubida d'archivos ($1).",
'uploaderror' => 'Error de xubida',
'morelinkstoimage' => 'Ver [[Special:WhatLinksHere/$1|más enllaces]] a esti archivu.',
'linkstoimage-redirect' => '$1 (redireición de ficheru) $2',
'duplicatesoffile' => "{{PLURAL:$1|El siguiente archivu ye un duplicáu|Los siguientes $1 archivos son duplicaos}} d'esti archivu ([[Special:FileDuplicateSearch/$2|más detalles]]):",
-'sharedupload' => "Esti ficheru ye de $1 y se pue usar n'otros proyeutos.",
+'sharedupload' => 'Esti ficheru ye de $1 y puen usalu otros proyeutos.',
'sharedupload-desc-there' => 'Esti ficheru ye de $1 y puen usalu otros proyeutos.
Llea la [páxina de descripción del ficheru $2] pa más información.',
'sharedupload-desc-here' => "Esti ficheru ye de $1 y puen usalu otros proyeutos.
La descripción de la [$2 páxina de descripción del ficheru] s'amuesa darréu.",
-'sharedupload-desc-edit' => "Esti ficheru ye de $1 y se pue usar n'otros proyeutos.
-Seique quieras camudar la descripción de la so [páxina de descripción de ficheru $2] allí.",
-'sharedupload-desc-create' => "Esti ficheru ye de $1 y se pue usar n'otros proyeutos.
-Seique quieras camudar la descripción de la so [páxina de descripción de ficheru $2] allí.",
+'sharedupload-desc-edit' => 'Esti ficheru ye de $1 y puen usalu otros proyeutos.
+Seique quieras camudar la descripción de la so [páxina de descripción de ficheru $2] allí.',
+'sharedupload-desc-create' => 'Esti ficheru ye de $1 y puen usalu otros proyeutos.
+Seique quieras camudar la descripción de la so [páxina de descripción de ficheru $2] allí.',
'filepage-nofile' => 'Nun esiste dengún ficheru con esti nome.',
'filepage-nofile-link' => 'Nun esiste ficheru dalu con esti nome, pero pues [$1 xubilu].',
'uploadnewversion-linktext' => "Xubir una nueva versión d'esta imaxe",
'booksources' => 'Fontes de llibros',
'booksources-search-legend' => 'Busca de fontes de llibros',
'booksources-go' => 'Dir',
-'booksources-text' => "Esta ye una llista d'enllaces a otros sitios que vienden llibros nuevos y usaos, y que puen tener más información sobre llibros que pueas tar guetando:",
+'booksources-text' => "Esta ye una llista d'enllaces a otros sitios que vienden llibros nuevos y usaos, y que puen tener más información sobre los llibros que ta buscando:",
'booksources-invalid-isbn' => 'El códigu ISBN que puxisti nun paez que valga; mira que te vien copiáu de la fonte orixinal.',
# Special:Log
'sp-deletedcontributions-contribs' => 'collaboraciones',
# Special:LinkSearch
-'linksearch' => "Gueta d'enllaces esternos",
+'linksearch' => "Busca d'enllaces esternos",
'linksearch-pat' => 'Patrón de busca:',
'linksearch-ns' => 'Espaciu de nomes:',
-'linksearch-ok' => 'Guetar',
+'linksearch-ok' => 'Buscar',
'linksearch-text' => 'Se puen usar comodinos como "*.wikipedia.org".
Necesita polo menos un dominiu de primer nivel, como "*.org".<br />
{{PLURAL:$2|Protocolu almitíu|Protocolos almitíos}}: <code>$1</code> (el predetermináu ye http:// si nun se conseña dengún protocolu).',
'notvisiblerev' => 'Esborróse la revisión',
'watchnochange' => 'Nenguna de les tos páxines vixilaes foi editada nel periodu escoyíu.',
'watchlist-details' => "{{PLURAL:$1|$1 páxina|$1 páxines}} na to llista de vixilancia ensin cuntar les páxines d'alderique.",
-'wlheader-enotif' => '* La notificación per corréu electrónicu ta activada.',
-'wlheader-showupdated' => "* Les páxines camudaes dende la to última visita amuésense en '''negrina'''",
+'wlheader-enotif' => 'La notificación per corréu electrónicu ta activada.',
+'wlheader-showupdated' => "Les páxines que camudaron dende que les visitasti anteriormente amuesense en '''negrina'''",
'watchmethod-recent' => 'comprobando páxines vixilaes nos cambios recientes',
'watchmethod-list' => 'comprobando ediciones recientes nes páxines vixilaes',
'watchlistcontains' => 'La to llista de vixilancia tien $1 {{PLURAL:$1|páxina|páxines}}.',
'undelete-search-title' => 'Buscar páxines desaniciaes',
'undelete-search-box' => 'Buscar páxines desaniciaes',
'undelete-search-prefix' => "Amosar páxines qu'empecipien por:",
-'undelete-search-submit' => 'Guetar',
+'undelete-search-submit' => 'Buscar',
'undelete-no-results' => "Nun s'atoparon páxines afechisques a la busca nel archivu d'esborraos.",
'undelete-filename-mismatch' => "Nun se pue restaurar la revisión del archivu con fecha $1: el nome d'archivu nun concuaya",
'undelete-bad-store-key' => "Nun se pue restaurar la revisión del archivu con fecha $1: yá nun esistía l'archivu nel momentu d'esborralu.",
'sp-contributions-search' => 'Buscar contribuciones',
'sp-contributions-username' => "Direición IP o nome d'usuariu:",
'sp-contributions-toponly' => 'Amosar namái les ediciones que son les caberes revisiones',
-'sp-contributions-submit' => 'Guetar',
+'sp-contributions-submit' => 'Buscar',
# What links here
'whatlinkshere' => "Lo qu'enllaza equí",
'blocklist-by' => 'Alministración de bloqueos',
'blocklist-params' => 'Parámetros de bloquéu',
'blocklist-reason' => 'Motivu',
-'ipblocklist-submit' => 'Guetar',
+'ipblocklist-submit' => 'Buscar',
'ipblocklist-localblock' => 'Bloquéu llocal',
'ipblocklist-otherblocks' => '{{PLURAL:$1|Otru bloquéu|Otros bloqueos}}',
'infiniteblock' => 'pa siempre',
'allmessagesnotsupportedDB' => "Nun pue usase '''{{ns:special}}:Allmessages''' porque '''\$wgUseDatabaseMessages''' ta deshabilitáu.",
'allmessages-filter-legend' => 'Peñerar',
'allmessages-filter' => 'Peñerar por estáu de personalización:',
-'allmessages-filter-unmodified' => 'Ensin cambéos',
+'allmessages-filter-unmodified' => 'Ensin cambeos',
'allmessages-filter-all' => 'Toos',
'allmessages-filter-modified' => 'Camudaos',
'allmessages-prefix' => 'Peñerar pol prefixu:',
'thumbnail-more' => 'Agrandar',
'filemissing' => 'Falta archivu',
'thumbnail_error' => 'Error al crear la miniatura: $1',
+'thumbnail_error_remote' => "Mensaxe d'error de $1:
+$2",
'djvu_page_error' => 'Páxina DjVu fuera de llímites',
'djvu_no_xml' => 'Nun se pudo obtener el XML pal archivu DjVu',
'thumbnail-temp-create' => 'Nun se pudo crear el ficheru temporal de miniatura',
'tooltip-pt-mycontris' => 'Llista de les tos collaboraciones',
'tooltip-pt-login' => "T'encamentamos que t'identifiques, anque nun ye obligatorio",
'tooltip-pt-anonlogin' => "T'encamentamos que t'identifiques, anque nun ye obligatorio.",
-'tooltip-pt-logout' => 'Colar',
+'tooltip-pt-logout' => 'Salir',
'tooltip-ca-talk' => 'Alderique tocante al conteníu de la páxina',
'tooltip-ca-edit' => "Pues editar esta páxina. Por favor usa'l botón de vista previa enantes de guardar los cambios.",
'tooltip-ca-addsection' => 'Emprima una seición nueva',
'modern.css' => '/* Los CSS allugaos equí afeutarán a los usuarios del aspeutu Modern */',
'vector.css' => '/* Los CSS allugaos equí afeutarán a los usuarios del aspeutu Vector */',
'print.css' => '/* Los CSS allugaos equí afeutarán a la salida pola imprentadora */',
-'handheld.css' => '/* Los CSS allugaos equí afeutarán a los preseos portátiles basaos nel aspeutu configuráu en $wgHandheldStyle */',
'noscript.css' => '/* Los CSS allugaos equí afeutarán a los usuarios col JavaScript desactiváu */',
'group-autoconfirmed.css' => '/* Los CSS allugaos equí afeutarán a los usuarios autoconfirmaos namái */',
'group-bot.css' => '/* Los CSS allugaos equí afeutarán a los bots namái */',
'pageinfo-length' => 'Llonxitú de la páxina (en bytes)',
'pageinfo-article-id' => 'ID de la páxina',
'pageinfo-language' => 'Llingua del conteníu de la páxina',
-'pageinfo-robot-policy' => 'Estáu del motor de gueta',
+'pageinfo-robot-policy' => 'Estáu del motor de busca',
'pageinfo-robot-index' => 'Pue ser índiz',
'pageinfo-robot-noindex' => 'Nun pue ser índiz',
'pageinfo-views' => 'Númberu de visites',
'newimages-label' => "Nome d'archivu (o una parte d'él):",
'showhidebots' => '($1 bots)',
'noimages' => 'Nun hai nada que ver.',
-'ilsubmit' => 'Guetar',
+'ilsubmit' => 'Buscar',
'bydate' => 'por fecha',
'sp-newimages-showfrom' => "Amosar los archivos nuevos emprimando dende'l $1 a les $2",
'table_pager_empty' => 'Nun hai resultaos',
# Auto-summaries
-'autosumm-blank' => 'Páxina dexada en blanco',
+'autosumm-blank' => 'Desaniciáu el conteníu de la páxina',
'autosumm-replace' => "Sustituyendo la páxina por '$1'",
'autoredircomment' => 'Redirixendo a [[$1]]',
'autosumm-new' => "Páxina creada con '$1'",
'fileduplicatesearch-summary' => 'Busca archivos duplicaos basándose nos sos valores fragmentarios.',
'fileduplicatesearch-legend' => 'Buscar duplicaos',
'fileduplicatesearch-filename' => 'Nome del ficheru:',
-'fileduplicatesearch-submit' => 'Guetar',
+'fileduplicatesearch-submit' => 'Buscar',
'fileduplicatesearch-info' => '$1 × $2 píxeles<br />Tamañu del archivu: $3<br />Triba MIME: $4',
'fileduplicatesearch-result-1' => 'L\'archivu "$1" nun tien duplicáu idénticu.',
'fileduplicatesearch-result-n' => 'L\'archivu "$1" tien {{PLURAL:$2|un duplicáu idénticu|$2 duplicaos idénticos}}.',
* <span class="mw-specialpagecached">Páxines especiales en caché (seique nun tean actualizaes).</span>',
'specialpages-group-maintenance' => 'Informes de mantenimientu',
'specialpages-group-other' => 'Otres páxines especiales',
-'specialpages-group-login' => 'Identificase / crear cuenta',
+'specialpages-group-login' => 'Entrar / crear cuenta',
'specialpages-group-changes' => 'Cambeos recientes y rexistros',
'specialpages-group-media' => 'Informes multimedia y xubíes',
'specialpages-group-users' => 'Usuarios y drechos',
'dberr-problems' => '¡Sentímoslo! Esti sitiu ta esperimentando dificultaes téuniques.',
'dberr-again' => 'Tenta esperar dellos minutos y recargar.',
'dberr-info' => '(Nun se pue contautar cola base de datos del sirvidor: $1)',
-'dberr-usegoogle' => 'Pues probar a guetar con Google mentanto.',
+'dberr-usegoogle' => 'Pue probar a buscar con Google mentanto.',
'dberr-outofdate' => 'Atalanta que los sos índices del nuesu conteníu seique nun tean actualizaos.',
'dberr-cachederror' => 'Esta ye una copia na caché de la páxina que se pidiera, y pue que nun tea actualizada.',
'htmlform-chosen-placeholder' => 'Seleicione una opción',
# SQLite database support
-'sqlite-has-fts' => '$1 con sofitu pa gueta en testu completu',
-'sqlite-no-fts' => '$1 ensin sofitu pa gueta en testu completu',
+'sqlite-has-fts' => '$1 con sofitu pa busca de testu completu',
+'sqlite-no-fts' => '$1 ensin sofitu pa busca de testu completu',
# New logging system
'logentry-delete-delete' => '$1 {{GENDER:$2|desanició}} la páxina $3',
'feedback-bugnew' => "Yá lo comprobé. Informar d'esti fallu nuevu",
# Search suggestions
-'searchsuggest-search' => 'Guetar',
+'searchsuggest-search' => 'Buscar',
'searchsuggest-containing' => 'que contién...',
# API errors
'tog-shownumberswatching' => 'Va ota va rupes favesik nedir !',
'tog-oldsig' => 'Tisa sugdara',
'tog-fancysig' => 'Krafiara va sugdaks wetce wikitext (a mivaskafi gluyasiki)',
-'tog-externaleditor' => 'Favera va divefi betasiki (anton gan aptacik, moe vusiko va yona aptafa vertara olegar)',
-'tog-externaldiff' => 'Omavafa favera va divefa "diff" xeka (anton gan aptacik, moe vusiko va yona aptafa vertara olegar)',
'tog-showjumplinks' => 'Tutegirara va "grablera" vansarafi gluyasiki',
'tog-uselivepreview' => 'Favera va abdiwira (JavaScript) (bagalon)',
'tog-forceeditsummary' => 'Zo walzé viele betaravildeks tir vlardaf !',
'disclaimers' => 'Walzera',
'disclaimerpage' => 'Project:Jadif walzereem',
'edithelp' => 'Pomara',
-'edithelppage' => 'Help:Tokinde bubetat',
'helppage' => 'Help:Pomara',
'mainpage' => 'Emudexo',
'mainpage-description' => 'Emudexo',
'viewprevnext' => 'Va ($1 {{int:pipe-separator}} $2) ik ($3) disukel.',
'searchmenu-exists' => "'''Ixam bu yoltkirafu gu \"[[:\$1]]\" dene bati wiki.'''",
'searchmenu-new' => "'''Redura va bu \"[[:\$1]]\" den bati wiki!'''",
-'searchhelp-url' => 'Help:Pomara',
'searchprofile-articles' => 'Teliz',
'searchprofile-project' => 'Pomarabu ik abdumimaksbu',
'searchprofile-images' => 'Jonkanaca',
'search-external' => 'Divafa aneyara',
'searchdisabled' => "<p>La fonction de recherche sur l'intégralité du texte a été temporairement désactivée à cause de la grande charge que cela impose au serveur. Nous espérons la rétablir prochainement lorsque nous disposerons d'un serveur plus puissant. En attendant, vous pouvez faire la recherche avec Google:</p>",
-# Quickbar
-'qbsettings' => 'Tuweltara va xekobla',
-'qbsettings-none' => 'Mek',
-'qbsettings-fixedleft' => 'Roneon titickanaf',
-'qbsettings-fixedright' => 'Talteon titickanaf',
-'qbsettings-floatingleft' => 'Roneon ezas',
-'qbsettings-floatingright' => 'Talteon ezas',
-
# Preferences page
'preferences' => 'Lodamaceem',
'mypreferences' => 'Jinaf lodamaceem',
Rinafe e-mail mane me zo razdar viele ar webesik uzerar.',
'prefs-help-email-required' => 'E-mail mane zo kucilar.',
-# User preference: e-mail validation using jQuery
+# User preference: email validation using jQuery
'email-address-validity-invalid' => 'Va enafe e-mail mane bazel',
# User rights
'listgrouprights-addgroup-all' => 'Va kota lospa roloplekur',
'listgrouprights-removegroup-all' => 'Va kota lospa rosular',
-# E-mail user
+# Email user
'mailnologin' => 'Meke mane',
'mailnologintext' => 'Rin gotil [[Special:UserLogin|dogluyarakiraf]]
is bazeyes va wadafe internetmane ko rinaf [[Special:Preferences|lodamaceem]]
'notvisiblerev' => 'Betaks sulayan',
'watchnochange' => 'Nedoyu rinafu suzdanu bu al zo betar bak bazena rekola',
'watchlist-details' => '{{PLURAL:$1|$1 bu|$1 bu}} koe rinafi suzdasiki rade prilarabueem.',
-'wlheader-enotif' => '* Email walzera tir tegisa.',
-'wlheader-showupdated' => "* Bu betayanu vielu rin ironokon worayal tir '''sulatcalakorafu'''.",
+'wlheader-enotif' => 'Email walzera tir tegisa.',
+'wlheader-showupdated' => "Bu betayanu vielu rin ironokon worayal tir '''sulatcalakorafu'''.",
'watchmethod-recent' => 'ageltara va noeltaf betakseem va suzdan bueem',
'watchmethod-list' => 'ageltara va suzdan bueem icde noeltafa betara',
'watchlistcontains' => 'Rinafi suzdasiki va $1 bu ruldar',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Mantuca',
'exif-imagelength' => 'Ontinuca',
'exif-compression' => 'Raxivaracave',
'exif-gpsdestdistance' => 'Kofa soluma',
'exif-gpsdatestamp' => 'GPS evla',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Raxivariskafa',
'exif-unknowndate' => 'Megrupena evla',
'namespacesall' => 'koto',
'monthsall' => 'kot',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => 'Va e-mail gruyel',
'confirmemail_noemail' => 'Bazene "email" mane koe rinaf [[Special:Preferences|favesikaf lodamaceem]] me tir enafe.',
'confirmemail_text' => "Ce wiki nécessite la vérification de votre adresse email avant de pouvoir utiliser toute fonction de messagerie. Utilisez le bouton ci dessous pour envoyer un email de confirmation à votre adresse. L'email contiendra un lien contenant un code, chargez ce lien dans votre navigateur pour valider votre adresse.",
'version-software-product' => 'Warzeks',
'version-software-version' => 'Siatos',
-# Special:FilePath
-'filepath' => 'Iyeltakkelda',
-'filepath-page' => 'Iyeltak :',
-'filepath-submit' => 'Kelda',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Aneyara va jontolaf iyeltak',
'fileduplicatesearch-legend' => 'Aneyara va jontolaca',
'tog-shownumberswatching' => 'İzləyən istifadəçilərin sayını göstər',
'tog-oldsig' => 'Hazırkı imza:',
'tog-fancysig' => 'Vikimətn şəklində imza (avtomatik keçid yaratmadan)',
-'tog-externaleditor' => 'Susmaya görə xarici müqayisə proqramlarından istifadə et',
-'tog-externaldiff' => 'Susmaya görə xarici müqayisə proqramlarından istifadə et',
'tog-showjumplinks' => '"Keçid et:" linklərini aktivləşdir',
'tog-uselivepreview' => 'Canlı sınaq baxışı xüsusiyyətindən istifadə et (JavaScript tələb edir, sınaq mərhələsindədir)',
'tog-forceeditsummary' => 'Qısa məzmunu boş saxladıqda mənə bildir',
'disclaimers' => 'Məsuliyyətdən imtina',
'disclaimerpage' => 'Project:Məsuliyyətdən imtina',
'edithelp' => 'Redaktə kömək',
-'edithelppage' => 'Help:Redaktə',
'helppage' => 'Help:Mündəricat',
'mainpage' => 'Ana Səhifə',
'mainpage-description' => 'Ana Səhifə',
# Special:PasswordReset
'passwordreset' => 'Parolu yenilə',
-'passwordreset-text' => 'Akkauntunuz haqqında xatırlatmanı elektron poçt vasitəsilə ala bilməniz üçün bu formanı doldurun.',
'passwordreset-legend' => 'Parolu yenilə',
'passwordreset-disabled' => 'Yenidən qurulma parolu bu vikidə işləmir',
-'passwordreset-pretext' => '{{PLURAL:$1||Enter one of the pieces of data below}}',
'passwordreset-username' => 'İstifadəçi adı:',
'passwordreset-domain' => 'Domen:',
'passwordreset-email' => 'E-mail ünvanı:',
Çox güman ki, səhifə silinmişdir.',
'edit-conflict' => 'Düzəlişlər münaqişəsi',
'edit-no-change' => 'Sizin redaktələr qeydə alınmamışdır. Belə ki, mətndə heç bir düzəliş edilməmişdir.',
+'postedit-confirmation' => 'Redaktəniz qeyd edildi.',
'edit-already-exists' => 'Yeni səhifəni yaratmaq mümkün deyil.
Belə ki, bu adda səhifə artıq mövcuddur.',
'searchmenu-legend' => 'Axtarış kriteriyaları',
'searchmenu-exists' => "'''Bu vikidə \"[[:\$1]]\" adında səhifə mövcuddur'''",
'searchmenu-new' => "'''Bu vikidə \"[[:\$1]]\" səhifəsini yarat!'''",
-'searchhelp-url' => 'Help:Mündəricət',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Bu cür prefiksli səhifələri göstər]]',
'searchprofile-articles' => 'Məqalələr',
'searchprofile-project' => 'Kömək və Layihə səhifələri',
'powersearch-togglenone' => 'Heç biri',
'search-external' => 'Xarici axtarış',
-# Quickbar
-'qbsettings' => 'Naviqasiya paneli',
-'qbsettings-none' => 'Heç biri',
-'qbsettings-fixedleft' => 'Sola sabitləndi',
-'qbsettings-fixedright' => 'Sağa sabitləndi',
-'qbsettings-floatingleft' => 'Sola əyilir',
-'qbsettings-floatingright' => 'Sağa əyilir',
-
# Preferences page
'preferences' => 'Nizamlamalar',
'mypreferences' => 'Nizamlamalar',
'http-read-error' => 'HTTP oxuma xətası',
'http-timed-out' => 'HTTP istəyinin vaxtı bitdi.',
'http-curl-error' => 'URL-ə yanlış müraciət: $1',
-'http-host-unreachable' => 'URL-ə çatmaq olmadı.',
'http-bad-status' => 'HTTP müraciətin yoxlanması zamanı problem aşkarlanmışdır: $1 $2',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'notvisiblerev' => 'Başqa istifadıçinin son dəyişikliyi silinib',
'watchnochange' => 'Verilən vaxt ərzində heç bir izlədiyiniz səhifə redaktə edilməmişdir.',
'watchlist-details' => 'Müzakirə səhifələrini çıxmaq şərtilə {{PLURAL:$1|$1 səhifəni|$1 səhifəni}} izləyirsiniz.',
-'wlheader-enotif' => '* E-məktubla bildiriş aktivdir.',
-'wlheader-showupdated' => "* Son ziyarətinizdən sonra edilən dəyişikliklər '''qalın şriftlərlə''' göstərilmişdir.",
+'wlheader-enotif' => ' E-məktubla bildiriş aktivdir.',
+'wlheader-showupdated' => "Son ziyarətinizdən sonra edilən dəyişikliklər '''qalın şriftlərlə''' göstərilmişdir.",
'watchmethod-recent' => 'yeni dəyişikliklər izlənilən səhifələr üçün yoxlanılır',
'watchmethod-list' => 'izlənilən səhifələr yeni dəyişikliklər üçün yoxlanılır',
'watchlistcontains' => 'İzləmə siyahınızda $1 {{PLURAL:$1|səhifə|səhifə}} var.',
# Stylesheets
'common.css' => '/* Burada yerləşən CSS bütün skinlərə tətbiq olunur */',
-'standard.css' => '/* Burada yerləşən CSS Standard skin istifadəçilərinə tətbiq olunur */',
-'nostalgia.css' => '/* Burada yerləşən CSS Nostalgia skin istifadəçilərinə tətbiq olunur */',
'cologneblue.css' => '/* Burada yerləşən CSS Cologne Blue skin istifadəçilərinə tətbiq olunur */',
'monobook.css' => '/* Burada yerləşən CSS Monobook skin istifadəçilərinə tətbiq olunur */',
-'myskin.css' => '/* Burada yerləşən CSS MySkin skin istifadəçilərinə tətbiq olunur */',
-'chick.css' => '/* Burada yerləşən CSS Chick skin istifadəçilərinə tətbiq olunur */',
-'simple.css' => '/* Burada yerləşən CSS Simple skin istifadəçilərinə tətbiq olunur */',
'modern.css' => '/* Burada yerləşən CSS Modern skin istifadəçilərinə tətbiq olunur */',
'vector.css' => '/* Burada yerləşən CSS Vector istifadəçilərinə tətbiq olunur */',
'group-autoconfirmed.css' => '/* Burada yerləşən CSS yalnız avtotəsdiqlənmiş istifadəçilərə şamil olunur */',
# Scripts
'common.js' => '/* Burada istifadəçilərin hamısı üçün bütün səhifələrdə istənilən JavaScript yüklənəcək */',
-'standard.js' => '/* Burada Standard skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
-'nostalgia.js' => '/* Burada Nostalgia skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
'cologneblue.js' => '/* Burada Cologne Blue skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
'monobook.js' => '/* Burada MonoBook skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
-'myskin.js' => '/* Burada MySkin skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
-'chick.js' => '/* Burada Chick skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
-'simple.js' => '/* Burada Simple skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
'modern.js' => '/* Burada Modern skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
'vector.js' => '/* Burada Vector skin istifadəçiləri üçün istənilən JavaScript yüklənəcək */',
'group-autoconfirmed.js' => '/* Burada istənilən JavaScript yalnız avtotəsdiqlənmiş istifadəçilər üçün yüklənəcək */',
'pageinfo-authors' => 'Fərqli müəlliflərin sayı',
# Skin names
-'skinname-standard' => 'Classic',
-'skinname-nostalgia' => 'Nostalgia',
'skinname-cologneblue' => 'Cologne Blue',
'skinname-monobook' => 'MonoBook',
-'skinname-myskin' => 'MySkin',
-'skinname-chick' => 'Chick',
-'skinname-simple' => 'Simple',
'skinname-modern' => 'Modern',
'skinname-vector' => 'Vector',
/*
Short names for language variants used for language conversion links.
-To disable showing a particular link, set it to 'disable', e.g.
-'variantname-zh-sg' => 'disable',
Variants for Chinese language
*/
'variantname-zh-hans' => 'hans',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Genişlik',
'exif-imagelength' => 'Hündürlük',
'exif-compression' => 'Sıxılmamış',
'exif-organisationinimage' => 'Təsvir edilmiş təşkilat',
'exif-personinimage' => 'Təsvir edilmiş şəxs',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Sıxılmış',
'exif-copyrighted-true' => 'Müəlliflik hüququ ilə qorunur',
'version-software-version' => 'Versiya',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Fayl yolu',
-'filepath-page' => 'Fayl:',
-'filepath-submit' => 'Get',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Dublikat fayl axtarışı',
'fileduplicatesearch-legend' => 'Dublikatı axtar',
'disclaimers' => 'رد ائتمک',
'disclaimerpage' => 'Project:عمومی رد ائتمک',
'edithelp' => 'ديَیشیکلیکلر اوچون یاردیم',
-'edithelppage' => 'Help:دَییشدیرمه',
'helppage' => 'Help:ایچیندهکیلر',
'mainpage' => 'آنا صحیفه',
'mainpage-description' => 'آنا صحیفه',
# Special:PasswordReset
'passwordreset' => 'رمزی یئنیله',
-'passwordreset-text' => 'رمزینیزی یئنیلهمک اوچون بو فورمو دولدورون.',
'passwordreset-legend' => 'رمزی یئنیله',
'passwordreset-disabled' => 'بو ویکیده رمزی یئنیلهمک باغلانیبدیر.',
-'passwordreset-pretext' => '{{PLURAL:$1|آشاغیداکی وئری پارچالارینین بیرینی وئرین}}',
'passwordreset-username' => 'ایستیفادهچی آدی:',
'passwordreset-domain' => 'دامنه:',
'passwordreset-capture' => 'سون نتیجه ایمیل گؤستریلسین؟',
'searchmenu-legend' => 'آختارماق تنظیملری',
'searchmenu-exists' => "'''بو ویکیده «[[:$1]]» آدلی صحیفه واردیر.'''",
'searchmenu-new' => "'''بو ویکیده «[[:$1]]» صحیفهسینی يارات!'''",
-'searchhelp-url' => 'Help:ایچیندهکیلر',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1| بو اؤناک ایله اولان صحیفهلری آختار]]',
'searchprofile-articles' => 'مقالهلر',
'searchprofile-project' => 'یاردیم و پروژه صحیفهلری',
'listusers-noresult' => 'هئچ ایستیفادهچی تاپیلمادی.',
'listusers-blocked' => '(باغلانیب)',
+# Special:ActiveUsers
+'activeusers' => 'چالیشان ایستیفادهچیلرین لیستی',
+'activeusers-intro' => 'بوردا سون {{PLURAL:$1|بیر|$1}} گونده بیر ایشلر گؤرن ایستیفادهچیلرین لیستی گؤستریلیر.',
+'activeusers-count' => 'سون {{PLURAL:$3|گون|$3 گون}}ده، {{PLURAL:$1|$1}} چالیشما',
+'activeusers-from' => 'بوندان باشلایاراق ایستیفادهچیلری گؤستر:',
+'activeusers-hidebots' => 'بوتلاری گیزلت',
+'activeusers-hidesysops' => 'ایدارهچیلری گیزلت',
+'activeusers-noresult' => 'هئچ ایستیفادهچی تاپیلمادی.',
+
# Special:ListGroupRights
'listgrouprights' => 'ایستیفادهچی قروپ حاقلاری',
'listgrouprights-summary' => 'آشاغیدا، بو ویکیده تانیلان ایستیفادهچی گروپلاری و اونلارین حاقلاری گؤستریلیر.
'notvisiblerev' => 'باشقا ایستیفادیچینین سون دییشیکلیگی سیلینیب',
'watchnochange' => 'گؤستریلن واختدا هئچ بیر ایزلهدیگینیز صحیفه دَییشدیریلمهییبدیر.',
'watchlist-details' => 'دانیشیق صفحهلرینی سایمایاراق، {{PLURAL:$1|$1 صفحهنی}} ایزلهییرسینیز.',
-'wlheader-enotif' => '* ایمیل مکتوبلا بیلدیریش اولا بیلر.',
-'wlheader-showupdated' => "* سون گؤروشونوزدن سونرا ائدیلن دییشیکلیکلر '''قالین''' گؤستریلیبدیلر.",
+'wlheader-enotif' => 'ایمیل مکتوبلا بیلدیریش اولا بیلر.',
+'wlheader-showupdated' => "سون گؤروشونوزدن سونرا ائدیلن دییشیکلیکلر '''قالین''' گؤستریلیبدیلر.",
'watchmethod-recent' => 'یئنی دییشیکلیکلر ایزلنیلن صحیفهلر اوچون یوخلانیلیر',
'watchmethod-list' => 'ایزلنیلن صحیفهلر یئنی دییشیکلیکلر اوچون یوخلانیلیر',
'watchlistcontains' => 'ایزلمه سیاهینیزدا $1 {{PLURAL:$11|صحیفه}} وار.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'گئنیشلیک',
'exif-imagelength' => 'اوزوناسی',
'exif-bitspersample' => 'هر جز دا نقطه',
'exif-originalimageheight' => 'شکیلین کسیلمه دن اوولکی اوجالیقی',
'exif-originalimagewidth' => 'شکیلین کسیلمه دن اوولکی گئنیشلیگی',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'سیخیلمامیش',
'exif-compression-2' => 'پسوورد قویماق سیسیآیتیتی ۳ گروه دا بیر بعدی هافمن روشی ایله اوزوناسی اوستونده دییشیلیب',
'exif-compression-3' => 'رمز قرار وئرمک سیسیآیتیتی قروپ ۳',
'version-entrypoints-header-entrypoint' => 'گیریش نقطهسی',
'version-entrypoints-header-url' => 'اینترنت آدرسی',
-# Special:FilePath
-'filepath' => 'فايل يولو',
-'filepath-page' => 'فایل:',
-'filepath-submit' => 'گئت',
-'filepath-summary' => 'بو اؤزل صحیفه بیر فايل اوچون تام يولو گتیرر.
-شکیللر تام تصویرین گؤستریلیر، دیگر فايل نؤولری ایله باغلی پروقراملاری بیرباشا ایشه باشلايیر.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'دوبلیکات فايل آختاریشی',
'fileduplicatesearch-summary' => 'تعمین ائتمک ديَری دؤشهمهسینده بنزر فايللاری آختار.',
'oct' => 'окт',
'nov' => 'ноя',
'dec' => 'дек',
+'january-date' => 'Ғинуар $1',
+'february-date' => 'Февраль $1',
+'march-date' => 'Март $1',
+'april-date' => 'Апрель $1',
+'may-date' => 'Май $1',
+'june-date' => 'Июнь $1',
+'july-date' => 'Июль $1',
+'august-date' => 'Август $1',
+'september-date' => 'Сентябрь $1',
+'october-date' => 'Октябрь $1',
+'november-date' => 'Ноябрь $1',
+'december-date' => 'Сентябрь $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категория|Категория}}',
'newwindow' => '(яңы биттә)',
'cancel' => 'Бөтөрөргә',
'moredotdotdot' => 'Дауамы...',
+'morenotlisted' => 'Башҡа бер нимә лә юҡ...',
'mypage' => 'Бит',
'mytalk' => 'Әңгәмә',
'anontalk' => 'Был IP-адресының фекер алышыу бите',
'disclaimers' => 'Яуаплылыҡтан баш тартыу',
'disclaimerpage' => 'Project:Яуаплылыҡтан баш тартыу',
'edithelp' => 'Төҙәтеү белешмәһе',
-'edithelppage' => 'Help:Төҙәтеү белешмәһе',
'helppage' => 'Help:Белешмә',
'mainpage' => 'Баш бит',
'mainpage-description' => 'Баш бит',
'enterlockreason' => 'Ябылыу сәбәбен һәм ваҡытын белдерегеҙ.',
'readonlytext' => 'Яңы мәҡәләләр өҫтәү һәм мәғлүмәттәр базаһындағы башҡа үҙгәртеүҙәр хәҙер ябылған. Был планлы хеҙмәтләндереү сәбәпле булыуы мөмкин, аҙаҡтан нормаль хәлгә ҡайтасаҡ.
-Ябыусы хәким ҡалдырған аңлатма:
+Ябыусы хаким ҡалдырған аңлатма:
$1',
'missing-article' => 'Мәғлүмәттәр базаһында «$1» $2 битенең һоралған тексты табылманы.
Шәхси [[Special:Preferences|{{SITENAME}} көйләүҙәрен]] үҙегеҙгә уңайлы итеп үҙгәртергә онотмағыҙ.',
'yourname' => 'Ҡатнашыусы исеме',
'userlogin-yourname' => 'Ҡулланыусы исеме',
-'yourpassword' => 'Һеҙҙең пароль',
-'userlogin-yourpassword' => 'Ð\9fаÑ\80олÑ\8c',
-'userlogin-yourpassword-ph' => 'Яңы паролде яҙығыҙ',
-'yourpasswordagain' => 'Ð\9fаÑ\80олде ҡабаттан яҙыу',
-'remembermypassword' => 'Был компьютерҙа паролемде иҫләргә ($1 {{PLURAL:$1|көндән|көндән}} күп түгел)',
-'userlogin-remembermypassword' => 'Ð¥Ó\99Ñ\82еÑ\80Ò\99Ó\99 ҡалдÑ\8bÑ\80ырға',
+'yourpassword' => 'Серһүҙ',
+'userlogin-yourpassword' => 'СеÑ\80Ò»Ò¯Ò\99',
+'userlogin-yourpassword-ph' => 'Яңы серһүҙҙе яҙығыҙ',
+'yourpasswordagain' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е ҡабаттан яҙыу',
+'remembermypassword' => 'Был компьютерҙа серһүҙемде иҫләргә ($1 {{PLURAL:$1|көндән|көндән}} күп түгел)',
+'userlogin-remembermypassword' => 'СиÑ\81Ñ\82емала ҡалырға',
'securelogin-stick-https' => 'Танылғандан һуң HTTPS менән бәйләнеште ҡалдырырға',
'yourdomainname' => 'Һеҙҙең домен',
-'password-change-forbidden' => 'Был викила паролегеҙҙе үҙгәртә алмайһығыҙ.',
+'password-change-forbidden' => 'Был викила серһүҙегеҙҙе үҙгәртә алмайһығыҙ.',
'externaldberror' => 'Тышҡы мәғлүмәт базаһы менән танылғанда хата барлыҡҡа килде йәки тышҡы үҙ көйләүҙәрегеҙҙе үҙгәртер өсөн хоҡуҡтарығыҙ етәрле түгел.',
'login' => 'Танышыу йәки теркәлеү',
'nav-login-createaccount' => 'Танышыу йәки теркәлеү',
'userlogin-resetlink' => 'Танылыу мәғлүмәттәрен оноттоғоҙмо?',
'createaccountmail' => 'эл. почта буйынса',
'createaccountreason' => 'Сәбәп:',
-'badretype' => 'Һеҙ кереткән паролдәр тап килмәйҙәр.',
+'badretype' => 'Һеҙ кереткән серһүҙҙәр тап килмәй.',
'userexists' => 'Керетелгән исем ҡулланыла инде.
Зинһар, башҡа исем һайлағыҙ.',
'loginerror' => 'Танылыу хатаһы',
'createaccounterror' => 'Иҫәп яҙыуын яһап булмай: $1',
-'nocookiesnew' => 'Иҫәп яҙыуы яһалды, ләкин һеҙ танылмағанһығыҙ. {{SITENAME}} ҡатнашыусыны таныу өсөн «cookies» ҡуллана. Һеҙҙә «cookies» тыйылған. Зинһар, уларға рөхсәт бирегеҙ, шунан яңы ҡатнашыусы исеме һәм пароль менән танылығыҙ.',
+'nocookiesnew' => 'Иҫәп яҙыуы яһалды, ләкин һеҙ танылмағанһығыҙ. {{SITENAME}} ҡатнашыусыны таныу өсөн «cookies» ҡуллана. Һеҙҙә «cookies» тыйылған. Зинһар, уларға рөхсәт бирегеҙ, шунан яңынан ҡатнашыусы исеме һәм серһүҙ менән танылығыҙ.',
'nocookieslogin' => '{{SITENAME}} ҡатнашыусыны таныу өсөн «cookies» ҡуллана. Һеҙҙә «cookies» тыйылған. Зинһар, уға рөхсәт бирегеҙ һәм яңынан керегеҙ.',
'nocookiesfornew' => 'Иҫәп яҙмаһы булдырылманы, сөнки уның сығанағын тикшереү мөмкин түгел.
"Сookies" эшләй икәнлеген тикшерегеҙ, битте яңыртығыҙ һәм яңынан ҡабатлап ҡарағыҙ.',
'nosuchusershort' => '$1 исемле ҡулланыусы юҡ. Исемде тикшерегеҙ.',
'nouserspecified' => 'Һеҙ ҡатнашыусы исемен күрһәтергә тейеш.',
'login-userblocked' => 'Был ҡатнашыусыға рөхсәт юҡ. Исеме тыйылған.',
-'wrongpassword' => 'Һеҙ ҡулланған пароль ҡабул ителмәй. Яңынан яҙып ҡарағыҙ.',
-'wrongpasswordempty' => 'Зинһар, буш булмаған пароль керетегеҙ.',
-'passwordtooshort' => 'Ð\9fаÑ\80олÑ\8c кәмендә $1 {{PLURAL:$1|символдан}} торорға тейеш.',
-'password-name-match' => 'Керетелгән пароль ҡулланыусы исеменән айырылырға тейеш.',
-'password-login-forbidden' => 'Был ҡатнашыусы исемен һәм паролде ҡулланыу тыйылған',
-'mailmypassword' => 'Яңы пароль ебәрергә',
-'passwordremindertitle' => '{{SITENAME}} өсөн яңы ваҡытлыса пароль',
-'passwordremindertext' => 'Кемдер (бәлки, һеҙ, IP-адресы: $1) {{SITENAME}} ($4) өсөн яңы пароль һоратты. $2 ҡатнашыусыһы өсөн ваҡытлыса яңы пароль яһалды: $3. Әгәр был һеҙ булһағыҙ, системага керегеҙ һәм паролде алмаштырығыҙ. Яңы пароль $5 {{PLURAL:$5|көн}} ғәмәлдә буласаҡ.
-
-Әгәр һеҙ паролде алмаштырыуҙы һоратмаған йәки онотоп кире иҫләгән булһағыҙ һәм үҙгәртергә теләмәһәгеҙ, был хәбәргә иғтибар итмәгеҙ һәм элекке паролегеҙҙе ҡулланыуығыҙҙы дауам итегеҙ.',
+'wrongpassword' => 'Һеҙ ҡулланған серһүҙ ҡабул ителмәй. Яңынан яҙып ҡарағыҙ.',
+'wrongpasswordempty' => 'Зинһар, буш булмаған серһүҙ керетегеҙ.',
+'passwordtooshort' => 'СеÑ\80Ò»Ò¯Ò\99 кәмендә $1 {{PLURAL:$1|символдан}} торорға тейеш.',
+'password-name-match' => 'Керетелгән серһүҙ ҡулланыусы исеменән айырылырға тейеш.',
+'password-login-forbidden' => 'Был ҡатнашыусы исемен һәм серһүҙҙе ҡулланыу тыйылған',
+'mailmypassword' => 'Яңы серһүҙ ебәрергә',
+'passwordremindertitle' => '{{SITENAME}} өсөн яңы ваҡытлыса серһүҙ',
+'passwordremindertext' => 'Кемдер (бәлки, һеҙ, IP-адресы: $1) {{SITENAME}} ($4) өсөн яңы серһүҙ һоратты. $2 ҡатнашыусыһы өсөн ваҡытлыса яңы серһүҙ яһалды: $3. Әгәр был һеҙ булһағыҙ, системага керегеҙ һәм серһүҙ алмаштырығыҙ. Яңы серһүҙ $5 {{PLURAL:$5|көн}} ғәмәлдә буласаҡ.
+
+Әгәр һеҙ серһүҙҙе алмаштырыуҙы һоратмаған йәки онотоп кире иҫләгән булһағыҙ һәм үҙгәртергә теләмәһәгеҙ, был хәбәргә иғтибар итмәгеҙ һәм элекке серһүҙегеҙҙе ҡулланыуығыҙҙы дауам итегеҙ.',
'noemail' => '$1 исемле ҡулланыусы өсөн электрон почта адресы белдерелмәгән.',
'noemailcreate' => 'Дөрөҫ электрон почта адресы күрһәтеү кәрәк',
-'passwordsent' => 'Яңы пароль $1 исемле ҡатнашыусының электрон почта адресына ебәрелде.
+'passwordsent' => 'Яңы серһүҙ $1 исемле ҡатнашыусының электрон почта адресына ебәрелде.
-Зинһар, паролде алғас, системаға яңынан керегеҙ.',
-'blocked-mailpassword' => 'Һеҙҙең IP-адресығыҙҙан мөхәррирләү тыйылған, шул сәбәпле пароль тергеҙеү ғәмәле лә блокланған.',
+Зинһар, серһүҙҙе алғас, системаға яңынан керегеҙ.',
+'blocked-mailpassword' => 'Һеҙҙең IP-адресығыҙҙан мөхәррирләү тыйылған, шул сәбәпле серһүҙ тергеҙеү ғәмәле лә блокланған.',
'eauthentsent' => 'Күрһәтелгән электрон почта адресына адресты үҙгәртеүҙе раҫлауығыҙ өсөн хат ебәрелде. Хатта, был адрес һеҙҙеке булғанын раҫлау өсөн ниндәй ғәмәлдәрҙе үтәү кәрәкле икәне тураһында мәғлүмәт бар.',
-'throttled-mailpassword' => 'Ð\9fаÑ\80олде иҫләтеү ғәмәле {{PLURAL:$1|һуңғы $1 сәғәт}} эсенде ҡулланылды инде.
-Ð\9dаÑ\81аÑ\80 ниÓ\99Ñ\82ле Ò¡Ñ\83лланÑ\8bÑ\83Ò\99аÑ\80Ò\93а ҡаÑ\80Ñ\88Ñ\8b, паÑ\80олде иҫләтеү ғәмәлен {{PLURAL:$1|сәғәт|$1 сәғәт}} эсендә бер тапҡыр ғына ҡулланырға була.',
+'throttled-mailpassword' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е иҫләтеү ғәмәле {{PLURAL:$1|һуңғы $1 сәғәт}} эсенде ҡулланылды инде.
+Ð\9dаÑ\81аÑ\80 ниÓ\99Ñ\82ле Ò¡Ñ\83лланÑ\8bÑ\83Ò\99аÑ\80Ò\93а ҡаÑ\80Ñ\88Ñ\8b, СеÑ\80Ò»Ò¯Ò\99 иҫләтеү ғәмәлен {{PLURAL:$1|сәғәт|$1 сәғәт}} эсендә бер тапҡыр ғына ҡулланырға була.',
'mailerror' => 'Хат ебәреү хатаһы: $1',
'acct_creation_throttle_hit' => 'Һеҙҙең IP-адрестан бер тәүлек эсендә {{PLURAL:$1|$1 иҫәп яҙыуы}} яһалды инде, был һан был ваҡыт аралығы өсөн максимум һан. Шул сәбәпле, был IP-адресына эйә ҡулланыусылар, хәҙерге ваҡытта яңы иҫәп яҙыуы яһай алмайҙар.',
'emailauthenticated' => 'Электрон почта адресығыҙ раҫланды: $3, $2.',
'accountcreated' => 'Иҫәп яҙыуы яһалды',
'accountcreatedtext' => '$1 исемле ҡулланыусы өсөн исәп яҙыуы яһалды.',
'createaccount-title' => '{{SITENAME}}: теркәлеү',
-'createaccount-text' => 'Кемдер, электрон почта адресығыҙҙы күрһәтеп, {{SITENAME}} ($4) проектында «$3» пароле менән «$2» исемле иҫәп яҙыуы теркәне. Һеҙҙең кереүегеҙ һәм паролегеҙҙе алмаштырыуығыҙ кәрәк.
+'createaccount-text' => 'Кемдер, электрон почта адресығыҙҙы күрһәтеп, {{SITENAME}} ($4) проектында «$3» пароле менән «$2» исемле иҫәп яҙыуы теркәне. Һеҙҙең кереүегеҙ һәм серһүҙегеҙҙе алмаштырыуығыҙ кәрәк.
-Иҫәп яҙыуы яңылыш яһалһа был хатҡа иғтибар итмәгеҙ.',
+Иҫәп яҙыуы яңылыш яһалһа, был хатҡа иғтибар итмәгеҙ.',
'usernamehasherror' => 'Ҡулланыусы исемендә "#" символы була алмай',
'login-throttled' => 'Һеҙ системала артыҡ күп танылырға тырыштығыҙ.
Зинһар, ҡабатламаҫтан алда бераҙ көтөгөҙ.',
'user-mail-no-addy' => 'Электрон почта адресы булмайынса электрон хәбәр ебәреп ҡараны',
# Change password dialog
-'resetpass' => 'Ð\9fаÑ\80олде үҙгәртеү',
-'resetpass_announce' => 'Һеҙ системала электрон почта аша алынған ваҡытлыса пароль менән танылдығыҙ. Системаға кереүҙә тамалау өсөн яңы пароль булдырығыҙ.',
-'resetpass_header' => 'Иҫәп яҙыуы паролен үҙгәртеү',
-'oldpassword' => 'Иҫке пароль:',
-'newpassword' => 'Яңы пароль:',
-'retypenew' => 'Ð\9fаÑ\80олде яңынан керетегеҙ:',
-'resetpass_submit' => 'Ð\9fаÑ\80олÑ\8c ҡуйырға һәм танышырға',
-'resetpass_success' => 'Ð\9fаÑ\80олегеҙ уңышлы үҙгәртелде! Системала танышыу бара...',
-'resetpass_forbidden' => 'Ð\9fаÑ\80олде үҙгәртеп булмай',
+'resetpass' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е үҙгәртеү',
+'resetpass_announce' => 'Һеҙ системала электрон почта аша алынған ваҡытлыса серһүҙ менән танылдығыҙ. Системаға кереүҙә тамалау өсөн яңы серһүҙ булдырығыҙ.',
+'resetpass_header' => 'Иҫәп яҙыуы серһүҙен үҙгәртеү',
+'oldpassword' => 'Иҫке серһүҙ:',
+'newpassword' => 'Яңы серһүҙ:',
+'retypenew' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е яңынан керетегеҙ:',
+'resetpass_submit' => 'СеÑ\80Ò»Ò¯Ò\99 ҡуйырға һәм танышырға',
+'resetpass_success' => 'СеÑ\80Ò»Ò¯Ò\99егеҙ уңышлы үҙгәртелде! Системала танышыу бара...',
+'resetpass_forbidden' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е үҙгәртеп булмай',
'resetpass-no-info' => 'Был битте туранан ҡарау өсөн һеҙгә системала танылырға кәрәк.',
-'resetpass-submit-loggedin' => 'Ð\9fаÑ\80олде үҙгәртергә',
+'resetpass-submit-loggedin' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е үҙгәртергә',
'resetpass-submit-cancel' => 'Бөтөрөргә',
-'resetpass-wrong-oldpass' => 'Хаталы ваҡытлыса йәки ағымдағы пароль.
-Һеҙ, бәлки, паролегеҙҙе алмаштырғанһығыҙ йәки яңы пароль һоратҡанһығыҙ.',
-'resetpass-temp-password' => 'Ваҡытлыса пароль',
+'resetpass-wrong-oldpass' => 'Хаталы ваҡытлыса йәки ағымдағы серһүҙ.
+Һеҙ, бәлки, серһүҙегеҙҙе алмаштырғанһығыҙ йәки яңы серһүҙ һоратҡанһығыҙ.',
+'resetpass-temp-password' => 'Ваҡытлыса серһүҙ',
# Special:PasswordReset
-'passwordreset' => 'Паролде ташлатыу',
-'passwordreset-text' => 'Иҫәп яҙыуығыҙ мәғлүмәттәрен хат аша алыу өсөн киләһе форманы тултырығыҙ.',
-'passwordreset-legend' => 'Паролде ташлатыу',
-'passwordreset-disabled' => 'Был викила паролде ташлатыу ғәмәлдә түгел',
-'passwordreset-pretext' => '{{PLURAL:$1||аҫта күрһәтелгән мәғлүмәттәрҙең бер киҫәген керетегеҙ}}',
+'passwordreset' => 'Серһүҙҙе ташлатыу',
+'passwordreset-legend' => 'Серһүҙҙе ташлатыу',
+'passwordreset-disabled' => 'Был викила серһүҙҙе ташлатыу ғәмәлдә түгел',
'passwordreset-username' => 'Ҡулланыусы исеме:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Хәбәрҙең һуңғы хәлен ҡарарғамы?',
-'passwordreset-capture-help' => 'Әгәр был билдәне ҡуйһағыҙ, ҡулланыусыға ебәрелгән ваҡытлыса пароль һеҙгә күрһәтеләсәк.',
+'passwordreset-capture-help' => 'Әгәр был билдәне ҡуйһағыҙ, ҡулланыусыға ебәрелгән ваҡытлыса серһүҙ һеҙгә күрһәтеләсәк.',
'passwordreset-email' => 'Электрон почта адресы:',
'passwordreset-emailtitle' => '{{SITENAME}} иҫәп яҙыуы мәғлүмәттәре',
'passwordreset-emailtext-ip' => 'Берәү (бәлки һәҙ, $1 IP-адресынан ) {{SITENAME}} ($4) проектындағы иҫәп яҙыуығыҙҙы хәтерләтеүҙе һоратты.
$2
-Был ваҡытлыса {{PLURAL:$3|пароль|паролдәр}} {{PLURAL:$5|$5 көн}} ғәмәлдә буласаҡ.
-Һеҙ системала танылырға һәм яңы пароль һайларға тейешһегеҙ.
-Әгәр, һеҙ быны һоратмаған булһағыҙ йәки элекке паролегеҙҙе киренән иҫләһәгеҙ һәм уны үҙгәртергә теләмәһәгеҙ, был хатҡа иғтибар итмәгеҙ һәм элекке паролегеҙҙе ҡулланыуҙы дауам итегеҙ.',
+Был ваҡытлыса {{PLURAL:$3|серһүҙ|серһүҙҙәр}} {{PLURAL:$5|$5 көн}} ғәмәлдә буласаҡ.
+Һеҙ системала танылырға һәм яңы серһүҙ һайларға тейешһегеҙ.
+Әгәр, һеҙ быны һоратмаған булһағыҙ йәки элекке серһүҙегеҙҙе киренән иҫләһәгеҙ һәм уны үҙгәртергә теләмәһәгеҙ, был хатҡа иғтибар итмәгеҙ һәм элекке серһүҙегеҙҙе ҡулланыуҙы дауам итегеҙ.',
'passwordreset-emailtext-user' => '{{SITENAME}} проектындағы $1 ҡулланыусыһы {{SITENAME}} ($4) проектындағы иҫәп яҙыуығыҙҙы хәтерләтеүҙе һоратты. Киләһе ҡулланыусы {{PLURAL:$3|иҫәп яҙыуы|иҫәп яҙыуҙары}} был электрон почта адресы менән бәйле:
$2
-Был ваҡытлыса {{PLURAL:$3|пароль|паролдәр}} {{PLURAL:$5|$5 көн}} ғәмәлдә буласаҡ.
-Һеҙ системала танылырға һәм яңы пароль һайларға тейешһегеҙ.
-Әгәр, һеҙ быны һоратмаған булһағыҙ йәки элекке паролегеҙҙе киренән иҫләһәгеҙ һәм уны үҙгәртергә теләмәһәгеҙ, был хатҡа иғтибар итмәгеҙ һәм элекке паролегеҙҙе ҡулланыуҙы дауам итегеҙ.',
+Был ваҡытлыса {{PLURAL:$3|серһүҙ|серһүҙҙәр}} {{PLURAL:$5|$5 көн}} ғәмәлдә буласаҡ.
+Һеҙ системала танылырға һәм яңы серһүҙ һайларға тейешһегеҙ.
+Әгәр, һеҙ быны һоратмаған булһағыҙ йәки элекке серһүҙегеҙҙе киренән иҫләһәгеҙ һәм уны үҙгәртергә теләмәһәгеҙ, был хатҡа иғтибар итмәгеҙ һәм элекке серһүҙеҙҙе ҡулланыуҙы дауам итегеҙ.',
'passwordreset-emailelement' => 'Ҡулланыусы исеме: $1
-Ваҡытлыса пароль: $2',
+Ваҡытлыса серһүҙ: $2',
'passwordreset-emailsent' => 'Электрон почта аша иҫләтеү хаты ебәрелде.',
'passwordreset-emailsent-capture' => 'Ебәрелгән хәтерләтеү хәбәре түбәндә күрһәлгән.',
'passwordreset-emailerror-capture' => 'Килеп сыҡҡан хәтерләтеү хәбәре түбәндә күрһәтелгән, тик уны ебәреү уңышһыҙ тамамланды. Сәбәбе:$1',
# Special:ChangeEmail
'changeemail' => 'Электрон почта адресын үҙгәртергә',
'changeemail-header' => 'Электрон почта адресын үҙгәртеү',
-'changeemail-text' => 'Электрон почта адресығыҙҙы үҙгәртеү өсөн түбәндәге форманы тултырығыҙ. Үҙгәртеүҙәрҙе раҫлау өсөн паролегеҙҙе керетеү кәрәк буласаҡ.',
+'changeemail-text' => 'Электрон почта адресығыҙҙы үҙгәртеү өсөн түбәндәге форманы тултырығыҙ. Үҙгәртеүҙәрҙе раҫлау өсөн серһүҙегеҙҙе керетеү кәрәк буласаҡ.',
'changeemail-no-info' => 'Был биткә туранан ирешеү өсөн һеҙгә системала танылыу кәрәк.',
'changeemail-oldemail' => 'Хәҙерге электрон почта адресы:',
'changeemail-newemail' => 'Яңы электрон почта адресы:',
'changeemail-none' => '(юҡ)',
-'changeemail-password' => '{{SITENAME}} прокты өсөн паролегеҙ:',
+'changeemail-password' => '{{SITENAME}} прокты өсөн серһүҙегеҙ:',
'changeemail-submit' => 'Адресты үҙгәртергә',
'changeemail-cancel' => 'Кире алырға',
'blockedtitle' => 'Ҡулланыусы блокланған',
'blockedtext' => "'''Иҫәп яҙыуығыҙ йәки IP-адресығыҙ блокланған.'''
-Блоклаусы хәким: $1.
+Блоклаусы хаким: $1.
Белдерелгән сәбәп: ''$2''.
* Блоклау башланған ваҡыт: $8
* Блоклау аҙағы: $6
* Блоклауҙар һаны: $7
-Һеҙ $1 йәки башҡа [[{{MediaWiki:Grouppage-sysop}}|хәкимгә]] блоклау буйынса һорауҙарығыҙҙы ебәрә алаһығыҙ.
-Иҫегеҙҙе тотоғоҙ: әгәр һеҙ теркәлмәгән һәм электрон почта адресығыҙҙы раҫламаған булһағыҙ ([[Special:Preferences|көйләүҙәрем битендә]]), хәкимгә хат ебәрә алмайһығыҙ. Шулай ук блоклау ваҡытында һеҙҙең хат ебәреү мөмкинлегегеҙ сикләгән булырға ла мөмкин.
+Һеҙ $1 йәки башҡа [[{{MediaWiki:Grouppage-sysop}}|хакимгә]] блоклау буйынса һорауҙарығыҙҙы ебәрә алаһығыҙ.
+Иҫегеҙҙе тотоғоҙ: әгәр һеҙ теркәлмәгән һәм электрон почта адресығыҙҙы раҫламаған булһағыҙ ([[Special:Preferences|көйләүҙәрем битендә]]), хакимгә хат ебәрә алмайһығыҙ. Шулай ук блоклау ваҡытында һеҙҙең хат ебәреү мөмкинлегегеҙ сикләгән булырға ла мөмкин.
Һеҙҙең IP-адрес — $3, блоклау идентификаторы — #$5.
Хаттарҙа был мәғлүмәттәрҙе күрһәтергә онотмағыҙ.",
-'autoblockedtext' => "Һеҙҙең IP-адресығыҙ автоматик рәүештә блокланған. Сәбәбе, был адрес элек блокланған ҡулланыусыларҙың береһе тарафынан ҡулланылған. Блоклаусы хәким ($1) киләһе сәбәпте белдергән:
+'autoblockedtext' => "Һеҙҙең IP-адресығыҙ автоматик рәүештә блокланған. Сәбәбе, был адрес элек блокланған ҡулланыусыларҙың береһе тарафынан ҡулланылған. Блоклаусы хаким ($1) киләһе сәбәпте белдергән:
:«$2»
-Блоклаусы хәким: $1.
+Блоклаусы хаким: $1.
Белдерелгән сәбәп: ''$2''.
* Блоклау башланған ваҡыт: $8
* Блоклау аҙағы: $6
* Блоклауҙар һаны: $7
-Һеҙ $1 йәки башҡа [[{{MediaWiki:Grouppage-sysop}}|хәкимгә]] блоклау буйынса һорауҙарығыҙҙы ебәрә алаһығыҙ.
-Иҫегеҙҙе тотоғоҙ: әгәр һеҙ теркәлмәгән һәм электрон почта адресығыҙҙы раҫламаған булһағыҙ ([[Special:Preferences|көйләүҙәрем битендә]]), хәкимгә хат ебәрә алмайһығыҙ. Шулай ук блоклау ваҡытында һеҙҙең хат ебәреү мөмкинлегегеҙ сикләгән булырға ла мөмкин.
+Һеҙ $1 йәки башҡа [[{{MediaWiki:Grouppage-sysop}}|хакимгә]] блоклау буйынса һорауҙарығыҙҙы ебәрә алаһығыҙ.
+Иҫегеҙҙе тотоғоҙ: әгәр һеҙ теркәлмәгән һәм электрон почта адресығыҙҙы раҫламаған булһағыҙ ([[Special:Preferences|көйләүҙәрем битендә]]), хакимгә хат ебәрә алмайһығыҙ. Шулай ук блоклау ваҡытында һеҙҙең хат ебәреү мөмкинлегегеҙ сикләгән булырға ла мөмкин.
Һеҙҙең IP-адрес — $3, блоклау идентификаторы — #$5.
Хаттарҙа был мәғлүмәттәрҙе күрһәтергә онотмағыҙ.",
'blockednoreason' => 'сәбәп белдерелмәгән',
'loginreqtitle' => 'Танылыу кәрәк',
'loginreqlink' => 'танылыу',
'loginreqpagetext' => 'Башҡа биттәрҙе ҡарау өсөн $1 кәрәк.',
-'accmailtitle' => 'Ð\9fаÑ\80олÑ\8c ебәрелде.',
-'accmailtext' => "[[User talk:$1|$1]] ҡулланыусыһы өсөн яһалған пароль $2 адресына ебәрелде.
+'accmailtitle' => 'СеÑ\80Ò»Ò¯Ò\99 ебәрелде.',
+'accmailtext' => "[[User talk:$1|$1]] ҡулланыусыһы өсөн яһалған серһүҙ $2 адресына ебәрелде.
-Системала танылғандан һуң ''[[Special:ChangePassword|паролегеҙҙе үҙгәртә алаһығыҙ]]''.",
+Системала танылғандан һуң ''[[Special:ChangePassword|серһүҙегеҙҙе үҙгәртә алаһығыҙ]]''.",
'newarticle' => '(Яңы)',
'newarticletext' => "Һеҙ һылтанма буйынса әлегә яһалмаған биткә күстегеҙ.
Яңы бит яһар өсөн аҫтағы тәҙрәгә текст керетегеҙ (тулыраҡ мәғлүмәт өсөн [[{{MediaWiki:Helppage}}|ярҙам битен]] ҡарағыҙ).
Мәҡәлә текстын боҙолоуҙан һаҡлау өсөн үҙгәртеүегеҙ кире алынды.
Бындай хәлдәр хаталы аноним web-проксилар ҡулланғанда килеп сығырға мөмкин.",
'edit_form_incomplete' => "'''Мөхәррирләү формаһының ҡайһы өлөштәре серверға барып етмәне. Төҙәтеүҙәрегеҙҙе яҡшы итеп тикшерегеҙ һәм яңынан ҡабатлағыҙ.'''",
-'editing' => 'Мөхәрирләү $1',
+'editing' => 'Мөхәррирләү $1',
'creating' => 'Төҙөү $1',
-'editingsection' => 'Мөхәрирләү $1 (секция)',
+'editingsection' => 'Мөхәррирләү $1 (секция)',
'editingcomment' => '$1 мөхәррирләнә (яңы бүлек)',
'editconflict' => 'Мөхәррирләү конфликты: $1',
'explainconflict' => 'Һеҙ был битте мөхәррирләгән ваҡытта кемдер яңы үҙгәрештәр керетте.
'readonlywarning' => "'''КИҪӘТЕҮ: Техник хеҙмәтләндереү сәбәпле мәғлүмәттәр базаһы блокланған, шунлыҡтан үҙгәртеүҙәрегеҙҙе хәҙер һаҡлай алмайһығыҙ.'''
Тексты аҙаҡтан ҡулланыу өсөн файлда һаҡлап тора алаһығыҙ.
-Хәким белдергән сәбәп: $1",
+Хаким белдергән сәбәп: $1",
'protectedpagewarning' => "'''КИҪӘТЕҮ: Һеҙ был битте үҙгәртә алмайһығыҙ, был хоҡуҡҡа хакимдәр генә эйә.'''
Белешмә өсөн түбәндә һуңғы үҙгәртеү тураһында мәғлүмәт бирелә:",
'semiprotectedpagewarning' => "'''Киҫәтеү:''' был бит һаҡланған. Уны теркәлгән ҡулланыусылар ғына үҙгәртә ала.
Белешмә өсөн түбәндә һуңғы үҙгәртеү тураһында мәғлүмәт бирелә:",
-'cascadeprotectedwarning' => "'''КИҪӘТЕҮ:''' Был битте тик хәкимдәр генә үҙгәртә ала, сөнки ул эҙмә-эҙлекле һаҡлау ҡуйылған {{PLURAL:$1|киләһе биткә|киләһе биттәргә}} керә:",
+'cascadeprotectedwarning' => "'''КИҪӘТЕҮ:''' Был битте тик хакимдәр генә үҙгәртә ала, сөнки ул эҙмә-эҙлекле һаҡлау ҡуйылған {{PLURAL:$1|киләһе биткә|киләһе биттәргә}} керә:",
'titleprotectedwarning' => "'''Киҫәтеү: Бындый исемле бит һаҡланған, уны үҙгәртеү өсөн [[Special:ListGroupRights|тейешле хоҡуҡҡа]] эйә булыу кәрәк.'''
Белешмә өсөн түбәндә һуңғы үҙгәртеү тураһында мәғлүмәт бирелә:",
'templatesused' => 'Был биттә ҡулланылған {{PLURAL:$1|ҡалып|ҡалыптар}}:',
'revdelete-selected' => "'''[[:$1]] битенең {{PLURAL:$2|һайланған версияһы|һайланған версиялары}}:'''",
'logdelete-selected' => "'''Яҙманың {{PLURAL:$1|һайланған яҙыуы|һайланған яҙыуҙары}}:'''",
'revdelete-text' => "'''Биттәрҙең юйылған версиялары һәм ваҡиғалар, бит тарихында һәм яҙмаларҙа күрһәтеләсәк, ләкин уларҙың эстәлектәренең бер өлөшө ябай ҡулланыусыларға асыҡ булмаясаҡ.'''
-{{SITENAME}} проектының хәкимдәре йәшерен эстәлеккә керә һәм өҫтәмә сикләүҙәр ҡуйылған осраҡтарҙан тыш, ошо уҡ арайөҙ аша тергеҙә аласаҡтар.",
+{{SITENAME}} проектының хакимдәре йәшерен эстәлеккә керә һәм өҫтәмә сикләүҙәр ҡуйылған осраҡтарҙан тыш, ошо уҡ арайөҙ аша тергеҙә аласаҡтар.",
'revdelete-confirm' => 'Зинһар, был ғәмәлде үтәргә теләүегеҙҙе, буласаҡ һөҙөмтәләрҙә аңлауығыҙҙы, [[{{MediaWiki:Policy-url}}|ҡағиҙәләр]] буйынса эшләүегеҙҙе раҫлағыҙ.',
'revdelete-suppress-text' => "Йәшереү '''тик''' киләһе осраҡтарҙа ғына башҡарыла:
'revdelete-hide-name' => 'Ғәмәлде һәм маҡсатын йәшерергә',
'revdelete-hide-comment' => 'Үҙгәртеү тасуирламаларын йәшерергә',
'revdelete-hide-user' => 'Мөхәррирләүсенең исемен/IP-адресын йәшерергә',
-'revdelete-hide-restricted' => 'Мәғлүмәттәрҙе хәкимдәрҙән дә йәшерергә',
+'revdelete-hide-restricted' => 'Мәғлүмәттәрҙе хакимдәрҙән дә йәшерергә',
'revdelete-radio-same' => '(үҙгәртмәҫкә)',
'revdelete-radio-set' => 'Эйе',
'revdelete-radio-unset' => 'Юҡ',
-'revdelete-suppress' => 'Мәғлүмәттәрҙе шулай уҡ хәкимдәрҙән дә йәшерергә',
+'revdelete-suppress' => 'Мәғлүмәттәрҙе шулай уҡ хакимдәрҙән дә йәшерергә',
'revdelete-unsuppress' => 'Тергеҙелгән версияларҙан бар сикләүҙәрҙе алырға',
'revdelete-log' => 'Сәбәп:',
'revdelete-submit' => 'Һайланған {{PLURAL:$1|версия|версиялар}} өсөн ҡулланырға',
'revdelete-no-change' => "'''Иғтибар:''' $2 $1 ваҡытлы яҙыу, һоратылған күренеүсәнлек көйләүҙәренә эйә.",
'revdelete-concurrent-change' => '$2, $1 ваҡытлы яҙманы үҙгәртеүҙә хата: һеҙ уны үҙгәртергә тырышҡан ваҡытта уның статусын башҡа берәү үҙгәрткән.
Зинһар, яҙмаларҙы ҡарағыҙ.',
-'revdelete-only-restricted' => '$2, $1 ваҡытлы яҙманы йәшереүҙә хата: башҡа йәшереү көйләүҙәренең береһен һайламайынса яҙманы хәкимдәрҙән йәшерә алмайһығыҙ.',
+'revdelete-only-restricted' => '$2, $1 ваҡытлы яҙманы йәшереүҙә хата: башҡа йәшереү көйләүҙәренең береһен һайламайынса яҙманы хакимдәрҙән йәшерә алмайһығыҙ.',
'revdelete-reason-dropdown' => '* Ғәҙәттәге юйыу сәбәптәре
** Авторлыҡ хоҡуҡтарын боҙоу
** Урынһыҙ комментарий йәки шәхси мәғлүмәт
# History merging
'mergehistory' => 'Үҙгәртеүҙәр тарихын берләштерергә',
-'mergehistory-header' => 'Был бит, ике биттең үҙгәртеүҙәр тарихын берләштерергә мөмкинселек бирә.
-Был үҙгәртеүҙең, бит тарихын, боҙмайынса, дауам иттерәсәген тикшерегеҙ.',
+'mergehistory-header' => 'Был бит, ике биттең үҙгәртеүҙәр тарихын берләштереү мөмкинлеген бирә.
+Берләштереүҙең үҙгәртеүҙәр тарихын боҙмауын тикшерегеҙ.',
'mergehistory-box' => 'Ике биттең үҙгәртеүҙәр тарихын берләштерергә',
'mergehistory-from' => 'Сығанаҡ бит:',
'mergehistory-into' => 'Маҡсат бит:',
'searchmenu-legend' => 'Эҙләү көйләүҙәре',
'searchmenu-exists' => "'''Был вики-проектта «[[:$1]]» бите бар'''",
'searchmenu-new' => "'''Был википроектта \"[[:\$1]]\" бите булдырырға.'''",
-'searchhelp-url' => 'Help:Эстәлек',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Был префикслы биттәрҙе күрһәтергә]]',
'searchprofile-articles' => 'Эстәлек биттәре',
-'searchprofile-project' => 'Ярҙам һәм проект биттәре',
+'searchprofile-project' => 'Ярҙамсы һәм проект биттәре',
'searchprofile-images' => 'Мультимедиа',
'searchprofile-everything' => 'Барыһы',
'searchprofile-advanced' => 'Киңәйтелгән',
'searchprofile-articles-tooltip' => '$1 эсендә эҙлә',
'searchprofile-project-tooltip' => '$1 эсендә эҙлә',
'searchprofile-images-tooltip' => 'Файлдар эҙләү',
-'searchprofile-everything-tooltip' => 'Бар биттәрҙә эҙләү (фекер алышыу биттәрендә лә)',
+'searchprofile-everything-tooltip' => 'Барлыҡ биттәрҙә эҙләү (фекерләшеү биттәрендә лә)',
'searchprofile-advanced-tooltip' => 'Махсус исем арауыҡтарында эҙләргә',
'search-result-size' => '$1 ({{PLURAL:$2|$2 һүҙ|$2 һүҙ}})',
'search-result-category-size' => '{{PLURAL:$1|$1 ағза}} ({{PLURAL:$2|$2 эске категория}}, {{PLURAL:$3|$3 файл}})',
'prefs-edits' => 'Төҙәтеүҙәр һаны:',
'prefsnologin' => 'Танылмағанһығыҙ',
'prefsnologintext' => 'Ҡатнашыусы көйләүҙәрен үҙгәртеү өсөн, һеҙ <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}}танылырға]</span> тейешһегеҙ.',
-'changepassword' => 'Ð\9fаÑ\80олде үҙгәртергә',
+'changepassword' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е үҙгәртергә',
'prefs-skin' => 'Күренеш',
'skin-preview' => 'Алдан байҡау',
'datedefault' => 'Ғәҙәттәге',
'prefs-watchlist-edits-max' => 'Иң күбе: 1000',
'prefs-watchlist-token' => 'Күҙәтеү исемлеге токены:',
'prefs-misc' => 'Башҡа көйләүҙәр',
-'prefs-resetpass' => 'Ð\9fаÑ\80олде үҙгәртергә',
+'prefs-resetpass' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е үҙгәртергә',
'prefs-changeemail' => 'Электрон почта адресын үҙгәртергә',
'prefs-setemail' => 'Электрон почта адресын көйләү',
'prefs-email' => 'Электрон почта көйләүҙәре',
'email' => 'Электрон почта',
'prefs-help-realname' => 'Ысын исемегеҙ (теләк буйынса).
Әгәр уны күрһәтһәгеҙ, битте кемдең төҙәткәнен күрһәткәндә ҡулланыласаҡ.',
-'prefs-help-email' => 'Электрон почта (теләк буйынса). Күрһәтелгән булһа, ғәмәлдә булған паролегеҙҙе онотҡан осраҡта адресығыҙға яңы пароль ебәреләсәк.
-Шулай уҡ башҡа ҡатнашыусылар менән үҙ битегеҙ аша, электрон почтағыҙҙың адресын күрһәтмәйенсә, тура бәйләнешкә инергә мөмкинселек бирә.',
+'prefs-help-email' => 'Электрон почта (теләк буйынса). Күрһәтелгән булһа, ғәмәлдә булған серһүҙегеҙҙе онотҡан осраҡта адресығыҙға яңы серһүҙ ебәреләсәк.
+Шулай уҡ башҡа ҡатнашыусылар менән үҙ битегеҙ аша, электрон почтағыҙҙың адресын күрһәтмәйенсә, тура бәйләнешкә инергә мөмкинлек бирә.',
'prefs-help-email-others' => 'Ул шулай уҡ башҡа ҡулланыусыларға, шәхси битегеҙҙәге һылтанма аша, һеҙҙән менән бәйләнешкә инергә рөхсәт бирәсәк.
Һеҙҙең почта адресығыҙ уларға күрһәтелмәйәсәк.',
'prefs-help-email-required' => 'Электрон почта адресы кәрәк.',
'userrights-reason' => 'Сәбәп:',
'userrights-no-interwiki' => 'Һеҙҙең башҡа вики-проекттарҙа ҡатнашыусыларҙың хоҡуҡтарын үҙгәртергә хоҡуҡтарығыҙ юҡ.',
'userrights-nodatabase' => '$1 базаһы юҡ йәки урындағы (локаль) база түгел.',
-'userrights-nologin' => 'Ҡатнашыусыларҙың хоҡуҡтарын билдәләр өсөн, һеҙ хәким хоҡуҡтары менән [[Special:UserLogin|танылырға]] тейешһегеҙ.',
+'userrights-nologin' => 'Ҡатнашыусыларҙың хоҡуҡтарын билдәләр өсөн, һеҙ хаким хоҡуҡтары менән [[Special:UserLogin|танылырға]] тейешһегеҙ.',
'userrights-notallowed' => 'Һеҙҙең иҫәп яҙыуығыҙҙан ҡатнашыусыларҙың хоҡуҡтарын өҫтәү йәки алыу рөхсәт ителмәгән.',
'userrights-changeable-col' => 'Һеҙ үҙгәртә алған төркөмдәр',
'userrights-unchangeable-col' => 'Һеҙ үҙгәртә алмаған төркөмдәр',
'group-user' => 'Ҡулланыусылар',
'group-autoconfirmed' => 'Автоматик раҫланған ҡулланыусылар',
'group-bot' => 'Боттар',
-'group-sysop' => 'Хәкимдәр',
+'group-sysop' => 'Хакимдәр',
'group-bureaucrat' => 'Бюрократтар',
'group-suppress' => 'Тикшереүселәр',
'group-all' => '(бөтә)',
'right-deletedtext' => 'Биттең юйылған өлгөләре араһындағы юйылған текстты һәм үҙгәртеүҙәрҙе ҡарау',
'right-browsearchive' => 'Юйылған биттәрҙе эҙләү',
'right-undelete' => 'Юйылған биттәрҙе кире ҡайтарыу',
-'right-suppressrevision' => 'Биттәрҙең хәкимдәрҙән йәшерелгән өлгөләрен ҡарау һәм тергеҙеү',
+'right-suppressrevision' => 'Биттәрҙең хакимдәрҙән йәшерелгән өлгөләрен ҡарау һәм тергеҙеү',
'right-suppressionlog' => 'Шәхси журналдарҙы ҡарау',
'right-block' => 'Башҡа ҡатнашыусыларға мөхәррирләүҙе тыйыу',
'right-blockemail' => 'Электрон почтаға хат ебәреүҙе тыйыу',
'right-siteadmin' => 'Мәғлүмәттәр базаһын асыу һәм ябыу',
'right-override-export-depth' => '5-се тәрәнлеккә тиклем бәйле биттәре менән бергә биттәрҙе сығарыу',
'right-sendemail' => 'Башҡа ҡатнашыусыларға электрон почта аша хат ебәреү',
-'right-passwordreset' => 'Ð\9fаÑ\80олде Ñ\8fÒ£Ñ\8bÑ\80Ñ\82Ñ\8bÑ\83 Ñ\85Ó\99бÓ\99Ñ\80Ò\99Ó\99Ñ\80ен ҡарау',
+'right-passwordreset' => 'СеÑ\80Ò»Ò¯Ò\99Ò\99е Ñ\8fÒ£Ñ\8bÑ\80Ñ\82Ñ\8bÑ\83 оÑ\81Ñ\80аҡÑ\82аÑ\80Ñ\8bн ҡарау',
# Special:Log/newusers
'newuserlogpage' => 'Яңы ҡулланыусы яҙмалары',
Бәлки, һеҙгә сайт бушыраҡ саҡта ҡабатлап ҡарарға кәрәктер.',
'license' => 'Рөхсәтнамә:',
-'license-header' => 'Рөхсәтнамә',
+'license-header' => 'Рөхсәтнәмә',
'nolicense' => 'Бер нимә лә һайланмаған',
'license-nopreview' => '(Ҡарап сығыу мөмкин түгел)',
'upload_source_url' => '(Дөрөҫ, дөйөм ҡулланыу өсөн асыҡ URL-адрес)',
'prevpage' => 'Алдағы бит ($1)',
'allpagesfrom' => 'Ошондай хәрефтәрҙән башланған биттәрҙе күрһәтергә:',
'allpagesto' => 'Ошоға бөткән биттәрҙе күрһәтергә:',
-'allarticles' => 'Бөтә мәҡәләләр',
+'allarticles' => 'Барлыҡ мәҡәләләр',
'allinnamespace' => 'Бөтә биттәр (Исемдәре «$1» арауығында)',
'allnotinnamespace' => 'Бөтә биттәр («$1» исемдәр арауығынан башҡа)',
'allpagesprev' => 'Алдағы',
'activeusers-count' => 'һуңғы $3 {{PLURAL:$3|көн}} эсендә $1 {{PLURAL:$1|үҙгәртеү}}',
'activeusers-from' => 'Ошондай хәрефтәрҙән башланған ҡатнашыусыларҙы күрһәтергә:',
'activeusers-hidebots' => 'Боттарҙы йәшерергә',
-'activeusers-hidesysops' => 'Хәкимдәрҙе йәшерергә',
+'activeusers-hidesysops' => 'Хакимдәрҙе йәшерергә',
'activeusers-noresult' => 'Ҡатнашыусылар табылманы',
# Special:ListGroupRights
'notanarticle' => 'Мәҡәлә түгел',
'notvisiblerev' => 'Башҡа ҡатнашыусы тарафынан керетелгән һуңғы өлгө юйылған',
'watchnochange' => 'Күрһәтелгән арауыҡта күҙәтеүҙәр исемлегенән бер ни ҙә үҙгәрмәгән.',
-'watchlist-details' => 'Һеҙҙең күҙәтеү исемлегегеҙҙә, фекер алышыу биттәрен һанамағанда, {{PLURAL:$1|$1 бит|$1 бит}} бар.',
-'wlheader-enotif' => '* Электрон почта аша белдереү һайланған',
-'wlheader-showupdated' => "* Һеҙҙең аҙаҡҡы кереүегеҙҙән һуң үҙгәргән биттәр '''ҡалын''' шрифт менән күрһәтелгән.",
+'watchlist-details' => 'Һеҙҙең күҙәтеү исемлегегеҙҙә, фекерләшеү биттәрен һанамағанда, {{PLURAL:$1|$1 бит|$1 бит}} бар.',
+'wlheader-enotif' => 'Электрон почта аша белдереү һайланған',
+'wlheader-showupdated' => "Һеҙҙең аҙаҡҡы кереүегеҙҙән һуң үҙгәргән биттәр '''ҡалын''' шрифт менән күрһәтелгән.",
'watchmethod-recent' => 'күҙәтелгән биттәр өсөн аҙаҡҡы үҙгәртеүҙәрҙе ҡарау',
'watchmethod-list' => 'аҙаҡҡы үҙгәртеүҙәр өсөн күҙәтелгән биттәрҙе ҡарау',
'watchlistcontains' => 'Һеҙҙең күҙәтеү исемлегендә $1 {{PLURAL:$1|бит|бит}}бар.',
'protect-default' => 'Бар ҡулланыусыларға рөхсәт бирергә',
'protect-fallback' => '«$1» рөхсәте кәрәк',
'protect-level-autoconfirmed' => 'Яңы һәм теркәлмәгән ҡулланыусыларҙан һаҡларға',
-'protect-level-sysop' => 'Хәкимдәр генә',
+'protect-level-sysop' => 'Хакимдәр генә',
'protect-summary-cascade' => 'эҙмә-эҙлекле',
'protect-expiring' => '$1 бөтә (UTC)',
'protect-expiring-local' => '$1 тамамлана',
Бындай ваҡытта һеҙ һуңғы юйылған өлгөләрҙе һайлауҙы алырға йәки күрһәтергә тейешһегеҙ.',
'undeletehistorynoadmin' => 'Мәҡәлә юйылған.
Түбәндә юйыу сәбәптәре һәм мәҡәләне юйғанға тиклем мөхәррирләүсе ҡатнашыусылар исемлеге килтерелгән.
-Юйылған мәҡәләне хәкимдәр генә ҡарай ала.',
+Юйылған мәҡәләне хакимдәр генә ҡарай ала.',
'undelete-revision' => '$1 битенең $3 ҡатнашыусыһының ($4 $5 мөхәррирләгән) юйылған өлгөһө:',
'undeleterevision-missing' => 'Был өлгө дөрөҫ түгел йәки бөтөнләй юҡ.
Һеҙ дөрөҫ булмаған һылтанма аша кергәнһегеҙ йәки был өлгө архивтан юйылған, булырға тейеш.',
'sp-contributions-deleted' => 'ҡулланыусының юйылған өлөшө',
'sp-contributions-uploads' => 'тейәүҙәр',
'sp-contributions-logs' => 'журналдар',
-'sp-contributions-talk' => 'фекер алышыу',
+'sp-contributions-talk' => 'фекерләшеү',
'sp-contributions-userrights' => 'ҡатнашыусы хоҡуҡтарын идаралау',
'sp-contributions-blocked-notice' => 'Әлеге ваҡытта был ҡатнашыусы бикле.
Түбәндә бикләү яҙмаларынан һуңғы ҡатнашыусыны бикләү яҙмаһы килтерелгән:',
'block-log-flags-nousertalk' => 'үҙенең фекер алышыу битен мөхәррирләй алмай',
'block-log-flags-angry-autoblock' => 'киңәйтелгән авто бикләү һайланған',
'block-log-flags-hiddenname' => 'ҡатнашыусы исеме йәшерелгән',
-'range_block_disabled' => 'Хәкимдәргә бикләү арауыҡтарын булдырыу тыйылған.',
+'range_block_disabled' => 'Хакимдәргә бикләү арауыҡтарын булдырыу тыйылған.',
'ipb_expiry_invalid' => 'Тамамланыу ваҡыты дөрөҫ түгел.',
'ipb_expiry_temp' => 'Бикләү ваҡытында ҡатнашыусы исеме йәшерелһә, бикләү ваҡыты сикһеҙ булырға тейеш.',
'ipb_hide_invalid' => 'Иҫәп яҙмаһын йәшереү мөмкин түгел, ул бигерәк күп үҙгәртеүҙәр яһаған, булырға тейеш.',
'imageinvalidfilename' => 'Файл исеме дөрөҫ түгел',
'fix-double-redirects' => 'Элекке исемгә һылтанған йүнәлтеүҙәрҙе төҙәтергә',
'move-leave-redirect' => 'Йүнәлтеүҙе ҡалдырырға',
-'protectedpagemovewarning' => "'''Киҫәтеү: ''' Һеҙ был биттең исемен үҙгәртә алмайһығыҙ, был хоҡуҡҡа хәкимдәр генә эйә.
+'protectedpagemovewarning' => "'''Киҫәтеү: ''' Һеҙ был биттең исемен үҙгәртә алмайһығыҙ, был хоҡуҡҡа хакимдәр генә эйә.
Белешмә өсөн түбәндә журналдағы һуңғы яҙма килтерелгән:",
-'semiprotectedpagemovewarning' => "'''Киҫәтеү: ''' Был бит һаҡланған. Һеҙ уның исемен үҙгәртә алмайһығыҙ, был хоҡуҡҡа хәкимдәр генә эйә.
+'semiprotectedpagemovewarning' => "'''Киҫәтеү: ''' Был бит һаҡланған. Һеҙ уның исемен үҙгәртә алмайһығыҙ, был хоҡуҡҡа хакимдәр генә эйә.
Белешмә өсөн түбәндә журналдағы һуңғы яҙма килтерелгән:",
'move-over-sharedrepo' => '[[:$1]] файлы дөйөм һаҡлағыста бар. Файлдың исемен бындай исемгә үҙгәртеү дөйөм һаҡлағыстағы файлдың өҫтөнә яҙҙырылыуына килтерәсәк.',
'file-exists-sharedrepo' => 'Һайланған файл исеме дөйөм һаҡлағыста ҡулланыла инде.
# Import log
'importlogpage' => 'Тейәү яҙмалары журналы',
-'importlogpagetext' => 'Хәкимдәр тарафынан башҡа вики проекттарҙан биттәрҙе һәм уларҙың үҙгәртеүҙәр тарихын тейәү.',
+'importlogpagetext' => 'Хакимдәр тарафынан башҡа вики проекттарҙан биттәрҙе һәм уларҙың үҙгәртеүҙәр тарихын тейәү.',
'import-logentry-upload' => '[[$1]] битен файлдан тейәгән',
'import-logentry-upload-detail' => '$1 {{PLURAL:$1|өлгө|өлгө}}',
'import-logentry-interwiki' => '$1 битен вики проекттары-ара тейәгән',
# Tooltip help for the actions
'tooltip-pt-userpage' => 'Ҡулланыусы битегеҙ',
'tooltip-pt-anonuserpage' => 'IP адресығыҙ өсөн ҡатнашыусы бите',
-'tooltip-pt-mytalk' => 'Фекер алышыу битегеҙ',
+'tooltip-pt-mytalk' => 'Фекерләшеү битегеҙ',
'tooltip-pt-anontalk' => 'IP адресығыҙ өсөн фекер алышыу бите',
'tooltip-pt-preferences' => 'Көйләүҙәрегеҙ',
'tooltip-pt-watchlist' => 'Һеҙ күҙәткән биттәр исемлеге',
'tooltip-pt-login' => 'Бында теркәлеү үтергә була, әммә был эш мәжбүри түгел.',
'tooltip-pt-anonlogin' => 'Бында танылыу үтергә була, әммә был эш мәжбүри түгел.',
'tooltip-pt-logout' => 'Сығырға',
-'tooltip-ca-talk' => 'Биттең эстәлеге тураһында фекер алышыу',
+'tooltip-ca-talk' => 'Биттең эстәлеге тураһында фекерләшеү',
'tooltip-ca-edit' => 'Һеҙ был битте үҙгәртә алаһығыҙ. Зинһар, яҙып ҡуйыр алдынан ҡарап сығығыҙ',
'tooltip-ca-addsection' => 'Яңы бүлек эшләргә',
'tooltip-ca-viewsource' => 'Был бит үҙгәртеүҙән һаҡланған.
'revdelete-content-unhid' => 'эстәлек күрһәтелде',
'revdelete-summary-unhid' => 'төҙәтеү аңлатмаһы асылды',
'revdelete-uname-unhid' => 'ҡатнашыусы исеме күрһәтелде',
-'revdelete-restricted' => 'хәкимдәргә ҡаршы ҡулланылған сикләүҙәр',
-'revdelete-unrestricted' => 'хәкимдәрҙән алынған сикләүҙәр',
+'revdelete-restricted' => 'хакимдәргә ҡаршы ҡулланылған сикләүҙәр',
+'revdelete-unrestricted' => 'хакимдәрҙән алынған сикләүҙәр',
'logentry-move-move' => '$1 $3 битенең исемен үҙгәртте. Яңы исеме: $4',
'logentry-move-move-noredirect' => '$1 $3 битенең исемен йүнәлтеү ҡуймайынса үҙгәртте. Яңы исеме: $4',
'logentry-move-move_redir' => '$1 $3 битенең исемен йүнәлтеү өҫтөнән үҙгәртте. Яңы исеме: $4',
*
* @author Als-Holder
* @author Bua333
+ * @author Geitost
* @author Malafaya
* @author Man77
* @author Merlissimo
'tog-shownumberswatching' => "D' Åzoi voh dé beówochterden Benutzer åzoang",
'tog-oldsig' => 'Existente Unterschrift',
'tog-fancysig' => 'Unterschrift ois Wikitext bhåndln (óne autómaatische Valinkung)',
-'tog-externaleditor' => "An externen Editor ois Standard bnutzen (netter fyr Experten, braucht spezielle Eihstellungen auf'm eigernen Computer)",
-'tog-externaldiff' => "A externs Programm fyr Versionsunterschiad ois Standard bnutzen (netter fyr Experten, dafordert spezielle Eihstellungen auf'm eiganen Computer)",
'tog-showjumplinks' => '„Wexeln zu“-Links aktivirn',
'tog-uselivepreview' => 'Live-Vurschau nutzen (dodafyr braucht ma JavaScript) (experimentoy)',
'tog-forceeditsummary' => 'Warnen, wånn ban Speichern dé Zåmmerfossung fööd',
'tog-diffonly' => "Zoag beim Versiónsvagleich netter dé Unterschiad und néd d' voiständige Seiten",
'tog-showhiddencats' => 'Vasteckte Kategorien åzoang',
'tog-norollbackdiff' => "Unterschiad noch'm Zrucksetzen unterdrucker",
+'tog-useeditwarning' => ' A Warung geem, sofern a zur da Beorweitung geffnate Seiten valossen werd, de ned gspeicherde Änderrungen enthoit.',
'underline-always' => 'oiwei',
'underline-never' => 'nia',
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Huif fias Werkln',
-'edithelppage' => 'Help:Werkln',
'helppage' => 'Help:Inhoidsvazeichnis',
'mainpage' => 'Hoamseitn',
'mainpage-description' => 'Hoamseitn',
'logout' => 'Obmöden',
'userlogout' => 'Auslogga',
'notloggedin' => 'Ned ågmödt',
-'nologin' => "Du host koa Nutzakonto? '''$1'''.",
+'nologin' => 'Du host koa Nutzakonto? $1.',
'nologinlink' => 'A neichs Nutzakonto olegn',
'createaccount' => 'Nutzakonto olegn',
'gotaccount' => "Hosd scho a Nutzakonto? '''$1'''.",
Des Lesch- und Vaschiab-Logbuach dazua findsd do:",
'moveddeleted-notice' => 'De Seitn do is glescht worn. Es foigt a Auszug ausm Lesch- und Vaschiabungs-Logbuch vo dea Seitn.',
'edit-conflict' => 'Konflikt ban Beorwaten.',
+'editwarning-warning' => "'s Valossen vo derer Seiten kå dodazua fyrn, daas d' Änderrungen valurn geengan.
+Ois ågmödter Benutzer kå's Åzoang vo derer Warnung im \"Beorweiten\"-Bereich vo de Eistellungen obgschoiden wern.",
# Parser/template warnings
'post-expand-template-inclusion-warning' => 'Obocht: De Gress vo eibundne Vorlong is z gross.
'listgrouprights-removegroup-self' => "'s oagerne Benutzerkóntó aus {{PLURAL:$2|derer Gruppm|dé Gruppm}} entferner: $1",
'listgrouprights-addgroup-self-all' => 'Kauh olle Gruppm zum oagern Kóntó dazuadoah',
-# E-mail user
+# Email user
'mailnologin' => 'Du bist néd auhgmödt',
'emailuser' => 'Mail an den Nutza',
'emailpage' => 'E-Mail aun Benutzer',
'notvisiblerev' => 'Versión is gléschd worn',
'watchnochange' => 'Koahne dé voh dir beówochterden Seiten san wärnd dém auhzoagten Zeidraum beorwatt worn.',
'watchlist-details' => 'Du beoochst {{PLURAL:$1|$1 Seitn}}, Dischkriaseitn ned mitgrechnad',
-'wlheader-enotif' => '* Da E-Mail-Benoochrichtigungsdeanst is aktivierd.',
-'wlheader-showupdated' => "* Seiten mid noh néd gseengne Änderrungen wern '''fett''' dorgstöd.",
+'wlheader-enotif' => 'Da E-Mail-Benoochrichtigungsdeanst is aktivierd.',
+'wlheader-showupdated' => "Seiten mid noh néd gseengne Änderrungen wern '''fett''' dorgstöd.",
'watchmethod-recent' => "Ywerpriaff d' létzden Beorwatungen fyr d' Beówochtungslisten",
'watchmethod-list' => 'Ywerpriaffm voh da Beówochtungslisten auf létzde Beorwatungen',
'watchlistcontains' => 'Deih Beówochtungslisten enthoitt $1 {{PLURAL:$1|Seiten|Seiten}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-gpsspeed' => 'Gschwindigkeid vom GPS-Empfänger',
'exif-componentsconfiguration-0' => 'Gibts néd',
'namespacesall' => 'olle',
'monthsall' => 'olle',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => 'E-Post-Adressn bestäting (Authentifiziarung)',
'confirmemail_noemail' => 'Du håst ka güitige E-Post-Adressn in deine [[Special:Preferences|persönlichn Eistellungen]] eitrång.',
'confirmemail_send' => 'Bstätigungscode zuaschicker',
--- /dev/null
+<?php
+/** Batak Toba (Batak Toba)
+ *
+ * See MessagesQqq.php for message documentation incl. usage of parameters
+ * To improve a translation please visit http://translatewiki.net
+ *
+ * @ingroup Language
+ * @file
+ * @comment falls back to Batak Toba (Latin)
+ */
+
+$fallback = 'bbc-latn';
--- /dev/null
+<?php
+/** Batak Toba (Batak Toba)
+ *
+ * See MessagesQqq.php for message documentation incl. usage of parameters
+ * To improve a translation please visit http://translatewiki.net
+ *
+ * @ingroup Language
+ * @file
+ *
+ * @author Daniel Harahap
+ * @author Marvel manalu
+ * @author Naval Scene
+ * @author Stephensuleeman
+ * @author WBT001Erin
+ * @author WBT003Bugari
+ * @author WBT004Togu
+ * @author WBT006Hendra
+ * @author WBT009Anju
+ */
+
+$fallback = 'id';
+
+$messages = array(
+# User preference toggles
+'tog-underline' => 'Ondolhon panait',
+'tog-justify' => 'Padasip paragrap',
+'tog-hideminor' => 'Tabunihon editing na metmet di parubaan na imbaru',
+'tog-hidepatrolled' => 'Bunihon panotaan na metmet di parubaan na imbaru',
+'tog-numberheadings' => 'Bahen nomor judul otomatis',
+'tog-showtoolbar' => 'Pataridahon molo ula-ula haubaon',
+'tog-editondblclick' => 'Klik dua hali laho patotahon alaman (ringkot do JavaScript)',
+'tog-minordefault' => 'Tandai sude panotaan na metmet songon naung dipamasa',
+'tog-previewontop' => 'Patuduon preview andorang so kotak edit',
+'tog-previewonfirst' => 'Patudu pratayang di panotaan na parjolo',
+'tog-enotifwatchlistpages' => 'Tongoshon tu ahu surat elektronik molo muba sada alaman na humanat-manati',
+'tog-enotifusertalkpages' => 'Tongoshon tu ahu surat elektronik molo muba alaman panghataionku',
+'tog-enotifminoredits' => 'Tong ma tongoshon surat elektronik tu ahu diparubaan na metmet',
+'tog-enotifrevealaddr' => 'Papatar alamat surat elektronikku tikki notifikasi surat elektronik',
+'tog-shownumberswatching' => 'Patuduhon godang ni pamareso',
+'tog-oldsig' => 'Tandatangani saonari:',
+'tog-forceeditsummary' => 'Paingot ahu molo bongot tu poti panotaan na rumar',
+'tog-watchlisthideown' => 'Bunihon na hupatota sian pamareso',
+'tog-showhiddencats' => 'Papatar angka kategori na buni',
+
+'underline-always' => 'Tongtong',
+'underline-never' => 'Ndang hea masa',
+
+# Dates
+'sunday' => 'Ari Minggu',
+'monday' => 'Ari Senen',
+'tuesday' => 'Ari Selasa',
+'wednesday' => 'Ari Rabu',
+'thursday' => 'Ari Kamis',
+'friday' => 'Ari Jumat',
+'saturday' => 'Ari Sabtu',
+'sun' => 'Mgg',
+'mon' => 'Snn',
+'tue' => 'Sls',
+'wed' => 'Rb',
+'thu' => 'Kms',
+'fri' => 'Jmt',
+'sat' => 'Sbt',
+'january' => 'Sipaha Sampulu',
+'february' => 'Li',
+'march' => 'Hurung',
+'april' => 'Sipaha Sada',
+'may_long' => 'Sipaha Dua',
+'june' => 'Sipaha Tolu',
+'july' => 'Sipaha Opat',
+'august' => 'Sipaha Lima',
+'september' => 'Sipaha Onom',
+'october' => 'Sipaha Pitu',
+'november' => 'Sipaha Uwalu',
+'december' => 'Sipaha Sia',
+'january-gen' => 'Sipaha Sampulu',
+'february-gen' => 'Li',
+'march-gen' => 'Hurung',
+'april-gen' => 'Sipaha Sada',
+'may-gen' => 'Sipaha Dua',
+'june-gen' => 'Sipaha Tolu',
+'july-gen' => 'Sipaha Opat',
+'august-gen' => 'Sipaha Lima',
+'september-gen' => 'Sipaha Onom',
+'october-gen' => 'Sipaha Pitu',
+'november-gen' => 'Sipaha Uwalu',
+'december-gen' => 'Sipaha Sia',
+'jan' => 'Sipaha Sampulu',
+'feb' => 'Li',
+'mar' => 'Hurung',
+'apr' => 'Sipaha Sada',
+'may' => 'Sipaha Dua',
+'jun' => 'Sipaha Tolu',
+'jul' => 'Sipaha Opat',
+'aug' => 'Sipaha Lima',
+'sep' => 'Sipaha Onom',
+'oct' => 'Sipaha Pitu',
+'nov' => 'Sipaha Uwalu',
+'dec' => 'Sipaha Sia',
+
+# Categories related messages
+'pagecategories' => '{{PLURAL:$1|Horong|Angka horong}}',
+'category_header' => 'Angka alaman di horong "$1"',
+'subcategories' => 'Horong na metmet',
+'category-media-header' => 'Media dibagasan horong "$1"',
+'category-empty' => '"Ndang adong alaman manang media di horong on nuaeng."',
+'hidden-categories' => '{{PLURAL:$1|Horong na buni|Angka horong na buni}}',
+'hidden-category-category' => 'Kategori na buni',
+'category-subcat-count' => '{{PLURAL:$2|Horong on marisi {{PLURAL:$1|$1 horong na metmet}} sian sude $2.}}',
+'category-article-count' => '{{PLURAL:$2|Horong on marisi {{PLURAL:$1|$1 alaman}}, sian sude $2.}}',
+'category-file-count' => '{{PLURAL:$2|Horong on holan marisi berkas{{PLURAL:$1|$1 alaman}}, sian sude $2.}}',
+'listingcontinuesabbrev' => 'udut.',
+'broken-file-category' => 'Alaman dohot gombaran na sega',
+
+'about' => 'Taringot',
+'article' => 'alaman isi',
+'newwindow' => '(ungkap ni pandiloi na imbaru)',
+'cancel' => 'Sundati',
+'moredotdotdot' => 'Tambai',
+'mypage' => 'Alaman',
+'mytalk' => 'Pangkataion',
+'navigation' => 'Angka ula-ula laho patuduhon dalan dohot luat',
+'and' => ' dohot',
+
+# Cologne Blue skin
+'qbfind' => 'Jumpangi',
+'qbedit' => 'Patota',
+'qbpageoptions' => 'Alaman on',
+'qbmyoptions' => 'Alaman niiba',
+'faq' => 'FAQ',
+'faqpage' => 'Project:FAQ',
+
+# Vector skin
+'vector-action-addsection' => 'Bagian na imbaru',
+'vector-action-delete' => 'Sesa',
+'vector-action-move' => 'Pahusor',
+'vector-action-protect' => 'Ramoti',
+'vector-action-undelete' => 'unang sesa',
+'vector-action-unprotect' => 'Uba parlindungan',
+'vector-view-create' => 'Tompa',
+'vector-view-edit' => 'Paubah',
+'vector-view-history' => 'Patudu andorang na',
+'vector-view-view' => 'Jaha',
+'vector-view-viewsource' => 'Ida haroanna',
+'actions' => 'Pangulahonon',
+'namespaces' => 'Inganan ni goar',
+'variants' => 'Angka ragam',
+
+'errorpagetitle' => 'Sega',
+'returnto' => 'Mulak tu $1.',
+'tagline' => 'Sian {{SITENAME}}',
+'help' => 'Urupi',
+'search' => 'Diori',
+'searchbutton' => 'Diori',
+'go' => 'Laho tu',
+'searcharticle' => 'Laho tu',
+'history' => 'Alaman turiturian',
+'history_short' => 'Angka siingoton',
+'printableversion' => 'versi na boi dicetak',
+'permalink' => 'Pangait na togu',
+'view' => 'Ida',
+'edit' => 'Patota',
+'create' => 'Tompa',
+'editthispage' => 'Patota alaman on',
+'create-this-page' => 'Bahen alaman on',
+'delete' => 'Sesa',
+'deletethispage' => 'Sesa alaman on',
+'undelete_short' => 'Sundat sesa $1 {{PLURAL:$1|panotaan|panotaan}}',
+'protect' => 'Ramoti',
+'protect_change' => 'Pauba',
+'newpage' => 'Alaman na imbaru',
+'talkpage' => 'Hatahon alaman on',
+'talkpagelinktext' => 'Pangkataion',
+'personaltools' => 'Ula-ula ni sasahalak',
+'postcomment' => 'Bagian imbaru',
+'talk' => 'Panghataion',
+'views' => 'Hataridaan',
+'toolbox' => 'Poti ulaula',
+'userpage' => 'Ida alaman ni pamangke',
+'viewhelppage' => 'Ida alaman pangurupion',
+'viewtalkpage' => 'Ida alaman panghataion',
+'otherlanguages' => 'Di bagasan parhataan na asing',
+'redirectedfrom' => '(Ulanghon sian $1)',
+'lastmodifiedat' => 'Alaman on parpudi di uba ari $2, topet $1.',
+'viewcount' => 'Alaman on nungga dibongoti {{PLURAL:$1|sahali|$1 hali}}',
+'protectedpage' => 'Alaman na di jaga',
+'jumpto' => 'Manimbung tu:',
+'jumptonavigation' => 'angka ula-ula laho patuduhon dalan dohot luat',
+'jumptosearch' => 'Diori',
+'pool-timeout' => 'Suda tingki paimahon hincu',
+'pool-errorunknown' => 'Hasalaan na so binoto',
+
+# 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) and the disambiguation template definition (see disambiguations).
+'aboutsite' => 'Taringot {{SITENAME}}',
+'aboutpage' => 'Project:Taringot tu',
+'copyright' => 'Sude siguriton rade saguru tu $1.',
+'copyrightpage' => '{{ns:project}}:Hak manopa',
+'currentevents' => 'Na tongon masa',
+'currentevents-url' => 'Project:Na masa nuaeng',
+'disclaimers' => 'Panyakalon',
+'disclaimerpage' => 'Project:Pamorsoon umum',
+'edithelp' => 'Pangurupion laho patotahon',
+'helppage' => 'Help:Isi',
+'mainpage' => 'Pogu ni Alaman',
+'mainpage-description' => 'Pogu ni alaman',
+'portal' => 'Harbangan ni punguan',
+'portal-url' => 'Project:Harbangan ni punguan',
+
+'badaccess-group0' => 'Dang diloas hamu laho mangulahon na pinangidomu',
+
+'ok' => 'OK',
+'retrievedfrom' => 'Dijalo sian "$1"',
+'youhavenewmessages' => 'Adong di ho $1 ($2).',
+'newmessageslink' => 'Tona na imbaru',
+'newmessagesdifflink' => 'Parubaan na parpudi',
+'youhavenewmessagesmulti' => 'Adong tu ho tona na imbaru di $1',
+'editsection' => 'Patota',
+'editold' => 'patota',
+'viewsourceold' => 'Bereng harorona',
+'editlink' => 'Patota',
+'viewsourcelink' => 'Ida ma mual',
+'editsectionhint' => 'Patota ponggol: $1',
+'toc' => 'Isi',
+'showtoc' => 'Papatar',
+'hidetoc' => 'Bunihon',
+'collapsible-collapse' => 'Pagelleng',
+'collapsible-expand' => 'Paherbang',
+'thisisdeleted' => 'Ida manang Paulak $1?',
+'viewdeleted' => 'Ida $1?',
+'page-atom-feed' => 'Pele atom "$1"',
+'red-link-title' => '$1 (alaman naso adong dope)',
+'sort-descending' => 'Pajojor lam toru',
+'sort-ascending' => 'Pajojor lam timbo',
+
+# Short words for each namespace, by default used in the namespace tab in monobook
+'nstab-main' => 'Alaman',
+'nstab-user' => 'Pamangke',
+'nstab-special' => 'Alaman na marhasurungan',
+'nstab-project' => 'Alaman ulaon',
+'nstab-image' => 'Berkas',
+'nstab-mediawiki' => 'Tona',
+'nstab-template' => 'Templat',
+'nstab-help' => 'Alaman pangurupion',
+'nstab-category' => 'Hategori',
+
+# General errors
+'error' => 'Hasesega',
+'fileappenderror' => 'Ndang boi pamasuhon "$1" tu "$2".',
+'badarticleerror' => 'Ulaon on dang boi i ulahon di alaman on',
+'cannotdelete-title' => 'Ndang boi manesa alaman "$1"',
+'badtitle' => 'Ulu ni surat na rumar',
+'viewsource' => 'Ida haroanna',
+'namespaceprotected' => "Ndang diloas hamu laho patotahon alaman di '''$1''' inganan ni goar",
+
+# Virus scanner
+'virus-unknownscanner' => 'Antivirus ndang ditanda:',
+
+# Login and logout pages
+'welcomeuser' => 'Horas, $1 !',
+'yourname' => 'Goar pamangke',
+'userlogin-yourname' => 'Siparhaseang',
+'userlogin-yourname-ph' => 'Pamasuk goarmu',
+'yourpassword' => 'Hata hincu:',
+'userlogin-yourpassword' => 'HAta hinsu',
+'userlogin-yourpassword-ph' => 'Pamasuk hata hinsu',
+'yourpasswordagain' => 'Ulanghon surat hata hincu:',
+'userlogin-remembermypassword' => 'Paingot ahu',
+'password-change-forbidden' => 'Ndang boi ubaonmu hata hincu di wiki on',
+'login' => 'Bongot tu log',
+'nav-login-createaccount' => 'Bongot tu log/ bahen akun',
+'loginprompt' => 'Ikkon dipangolu do "cookies" laho bongot log tu {{SINTENAME}}.',
+'userlogin' => 'Bongot tu log/ bahen akun',
+'userlogout' => 'Haruar log',
+'userlogin-noaccount' => 'Ndang adong akun',
+'userlogin-joinproject' => 'Parsidohot',
+'nologin' => 'Ndang adong akun? $1.',
+'nologinlink' => 'Bahen sada akun',
+'createaccount' => 'Bahen akun na imbaru',
+'gotaccount' => 'Nungga adong akunmu? $1',
+'gotaccountlink' => 'Bongot tu log',
+'helplogin-url' => 'Pangurupion: Masuk tu bagasan',
+'userlogin-helplink' => 'MediaWiki:pangurupion bongot tu bagas',
+'createaccountreason' => 'Alanan',
+'createaccounterror' => 'Ndang boi manopa akun: $1',
+'nouserspecified' => 'Ingkon pamasukonmuna goar ni pamangke',
+'mailmypassword' => 'Tongoshon hata hincu na imbaru',
+'emailnotauthenticated' => 'Alamat ni surat elektronikmuna ndang dope dipareso. Andorang so dipareso ndang boi pangkeonmuna rumang surat elektronik.',
+'emailconfirmlink' => 'Tolopi alamat surat elektronikmuna',
+'emaildisabled' => 'Ndang boi situs on manongos surat elekronik',
+'accountcreated' => 'Akun nunga ditopa',
+'login-abort-generic' => 'Ndang marhasil bongot - Dipaso ma',
+'loginlanguagelabel' => 'Hata: $1',
+
+# Change password dialog
+'resetpass' => 'Pauba hata hinsu',
+'oldpassword' => 'Hata hinsu na leleng',
+'newpassword' => 'Password naimbaru',
+'resetpass-submit-loggedin' => 'Pauba hata hinsu',
+'resetpass-submit-cancel' => 'Sundati',
+'resetpass-temp-password' => 'Hata hinsu parsatongkinan',
+
+# Special:PasswordReset
+'passwordreset-username' => 'Goar pamangke',
+'passwordreset-domain' => 'Domain:',
+
+# Special:ChangeEmail
+'changeemail-none' => '(Ndada)',
+'changeemail-cancel' => 'Sundati',
+
+# Edit page toolbar
+'bold_sample' => 'Surat tobal',
+'bold_tip' => 'Surat na hapal',
+'italic_sample' => 'Guratan Italic',
+'italic_tip' => 'surat teleng',
+'link_sample' => 'Goar ni pangait',
+'link_tip' => 'Pangait di bagasan',
+'extlink_sample' => 'http://www.example.com goar ni pangait',
+'extlink_tip' => 'Pangait parduru (ingot mulai dohot http:// )',
+'headline_sample' => 'Ulu ni surat',
+'nowiki_sample' => 'Pamasuk siguraton na so boi ubaon',
+'media_tip' => 'Pangait ni berkas',
+'sig_tip' => 'Tanda tangan pake pananda tingki',
+'hr_tip' => 'Garis na adar',
+
+# Edit pages
+'minoredit' => 'Panotaan na metmet',
+'watchthis' => 'Parrohahon alaman on',
+'savearticle' => 'Simpan alaman',
+'preview' => 'Andorang pataridahon',
+'showpreview' => 'Patudu pratayang',
+'showdiff' => 'Ida parubahan',
+'anoneditwarning' => "'''Paminsangon:''' Ndang bongot tu log dope hamu.
+Di surathon do alamat IP mu di turiturian ni alaman on.",
+'blockednoreason' => 'ndang adong alana na dilehon',
+'loginreqpagetext' => 'Ingkon $1 do hamu laho mamereng alaman na asing.',
+'accmailtitle' => 'Hata hincu nunga ditongos.',
+'newarticle' => '(Imbaru)',
+'noarticletext' => 'Ndang adong siguriton di alaman on saonari. Parhaseang ma[[Special:Search/{{PAGENAME}}|laho mandiori judul ni alaman on]] di alaman na asing, <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} mandiori log na mardomu], manang [{{fullurl:{{FULLPAGENAME}}|action=edit}} laho manota alaman on]</span>.',
+'noarticletext-nopermission' => 'Ndang adong siguriton di alaman on saonari. Parhaseang ma[[Special:Search/{{PAGENAME}}|laho mandiori goar ni alaman on]] di alaman na asing, manang <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} mandiori angka log na mardomu]</span>, alai dang diloas hamu lahon mamungka alaman on.',
+'previewnote' => "'''Ingot ma holan sada andoramg pataridahon do on.'''
+Parubaan na binahenmu dang di simpan dope!",
+'editing' => 'Manota $1',
+'creating' => 'mambahen',
+'editingsection' => 'Manota $1 (ponggol)',
+'templatesused' => '{{PLURAL:$1|Templat|Angka templat}} na diparhaseang di alaman on:',
+'template-protected' => '(dijaga)',
+'template-semiprotected' => '(ndang apala sude diramoti)',
+'hiddencategories' => 'Alaman on ima sada sian {{PLURAL:$1|1 horong na buni|$1 horong na buni}}:',
+'moveddeleted-notice' => 'Alaman on nungnga disesa.',
+
+# Parser/template warnings
+'post-expand-template-inclusion-warning' => 'Pinsangpinsang: Lobi do balga ni templat on. Pigapiga templat gabe dipasiding.',
+'post-expand-template-inclusion-category' => 'Angka alaman na balgana lobi',
+
+# History pages
+'viewpagelogs' => 'Pataridahon angka log ni alaman on',
+'currentrev-asof' => 'Panotaan parpudi ni $1',
+'revisionasof' => 'Panotaan songon $1',
+'revision-info' => 'Parubaan ni $1; $2',
+'previousrevision' => '←Revisi andorang na',
+'nextrevision' => 'Panotaan na mangihut→',
+'currentrevisionlink' => 'Panotaan na parpudi',
+'cur' => 'nuaeng',
+'next' => 'udutna',
+'last' => 'andorang',
+'page_first' => 'parjolo',
+'page_last' => 'parpudi',
+'history-show-deleted' => 'Holan na disesa',
+'histfirst' => 'Parjolo sahali',
+'histlast' => 'parpudi sahali',
+
+# Revision feed
+'history-feed-item-nocomment' => '$1 di $2',
+
+# Revision deletion
+'rev-delundel' => 'patarida/tabunihon',
+'rev-showdeleted' => 'Paida',
+'revdelete-log' => 'Alana',
+'revdel-restore' => 'Pauba pardompahan',
+'revdel-restore-deleted' => 'Patota naung di sesa',
+'revdel-restore-visible' => 'revisi na tarbereng',
+
+# Merge log
+'revertmerge' => 'Sundati Pardomuan',
+
+# Diffs
+'lineno' => 'Baris $1:',
+'editundo' => 'Paulak',
+
+# Search results
+'searchresults' => 'Hasil na niluluan',
+'searchresults-title' => 'Hasil mandiori tu "$1"',
+'prevn' => 'andorang so {{PLURAL:$1|$1}}',
+'nextn' => 'Ulaon na naen sitoruson {{PLURAL:$1|$1}}',
+'prevn-title' => 'Andorang so $1 {{PLURAL:$1|hasil|angka hasil}}',
+'nextn-title' => 'Ulaon na naen sitoruson tu $1 {{PLURAL:$1|result|results}}',
+'shown-title' => 'Patuduhon $1 {{PLURAL:$1|hasil|angka hasil}} ganup alaman',
+'viewprevnext' => 'Bereng ($1{{int:pipe-separator}}$2)($3)',
+'searchmenu-exists' => "'''Adong sada alaman na digoari \"[[:\$1]]\" di wiki on.'''",
+'searchmenu-new' => "'''Bahen alaman \"[[:\$1]]\" di wiki on!'''",
+'searchprofile-articles' => 'Alaman isi',
+'searchprofile-project' => 'Alaman pangurupion dohot proyek',
+'searchprofile-images' => 'Akat na godang gunana',
+'searchprofile-everything' => 'Sasude',
+'searchprofile-advanced' => 'Timbul',
+'searchprofile-articles-tooltip' => 'Mandiori di $1',
+'searchprofile-project-tooltip' => 'Mandiori di $1',
+'searchprofile-images-tooltip' => 'Mandiori berkas',
+'searchprofile-everything-tooltip' => 'Mandiori di sude inganan (dohot di alaman panghataion)',
+'searchprofile-advanced-tooltip' => 'Mandiori pake inganan ni goar',
+'search-result-size' => '$1 ({{PLURAL:$2|1 hata|$2 hata}})',
+'search-redirect' => '(ualanghon $1)',
+'search-section' => '(ponggol $1)',
+'search-suggest' => 'On do ra maksudmu: $1',
+'searchrelated' => 'marpandomuan',
+'searchall' => 'sude',
+'showingresultsheader' => "{{PLURAL:$5|Hasil '''$1''' sian '''$3'''|Hasil '''$1 - $2''' sian '''$3'''}} tu '''$4'''",
+'search-nonefound' => 'Ndang adong hasil na suman tu pangidoan',
+'powersearch-toggleall' => 'Sude',
+'powersearch-togglenone' => 'Ndang adong',
+
+# Preferences page
+'mypreferences' => 'Preferensi',
+'searchresultshead' => 'diori',
+'youremail' => 'Tongos surel:',
+'yourrealname' => 'Goar na toho',
+'gender-male' => 'Baoa',
+'gender-female' => 'borua',
+
+# Rights
+'right-read' => 'Manjaha alaman',
+
+# Special:Log/newusers
+'newuserlogpage' => 'Log pamarhaseang na imbaru',
+
+# Associated actions - in the sentence "You do not have permission to X"
+'action-edit' => 'Patota alaman on',
+
+# Recent changes
+'nchanges' => '$1 {{PLURAL:$1|parubaan}}',
+'recentchanges' => 'Parubahan naimbaru',
+'recentchanges-legend' => 'sipilliton sian parubaan na imbaru',
+'recentchanges-label-newpage' => 'Panotaan on mamungka alaman na imbaru',
+'recentchanges-label-minor' => 'Sada panotaan na metmet',
+'recentchanges-label-bot' => 'Panotaan on diulahon bot',
+'recentchanges-label-unpatrolled' => 'Panotaan on ndang dipamanat dope',
+'rcnote' => "Na di toru on ima {{PLURAL:$1|'''1'''|'''$1'''}} perubaan di bagasan {{PLURAL:$2|'''1''' ari|'''$2''' ari}} na parpudi, olat ni $4 pukul $5.",
+'rclistfrom' => 'Patuduhon parubaan na imbaru mamungka sian $1',
+'rcshowhideminor' => '$1 panotaan na metmet',
+'rcshowhidebots' => '$1 bot',
+'rcshowhideliu' => '$1 pamarhaseang bongot tu log',
+'rcshowhideanons' => '$1 pamarhaseang ndang margoar',
+'rcshowhidepatr' => '$1 panotaan na dipamanat',
+'rcshowhidemine' => '$1 na hupatota',
+'rclinks' => 'Patuduhon $1 parubaan na imbaru dibagasan na $2 ari on<br />$3',
+'diff' => 'duru',
+'hist' => 'turi',
+'hide' => 'Bunihon',
+'show' => 'Patuduhon',
+'minoreditletter' => 'm',
+'newpageletter' => 'I',
+'boteditletter' => 'b',
+'rc-enhanced-expand' => 'Pataridahon panjamotan (ringkot do JavaScript)',
+'rc-enhanced-hide' => 'Bunihon panjamotan',
+
+# Recent changes linked
+'recentchangeslinked' => 'Angka parubaan na mardomu tu',
+'recentchangeslinked-toolbox' => 'Angka parubaan na mardomu tu',
+'recentchangeslinked-title' => 'Parubaan na mardomu tu "$1"',
+'recentchangeslinked-page' => 'Goar ni alaman:',
+'recentchangeslinked-to' => 'Pataridahon parubaan ni angka alaman na marpandomuan dohot alaman on',
+
+# Upload
+'upload' => 'Tambahon berkas',
+'filedesc' => 'Panimpulan',
+
+'license' => 'Ragam ni lisensi:',
+'license-header' => 'Ragam ni lisensi',
+'nolicense' => 'Ndang adong na i pillit',
+
+# File description page
+'file-anchor-link' => 'Berkas',
+'filehist' => 'Turiturian ni berkas',
+'filehist-help' => 'Piltik di sada tanggal/tingki laho mamereng berkas on di tingki i.',
+'filehist-revert' => 'Sundati',
+'filehist-current' => 'masa nuaeng',
+'filehist-datetime' => 'Pukkul',
+'filehist-thumb' => 'Thumbnail',
+'filehist-thumbtext' => 'Ganaganaan tu versi songon $1',
+'filehist-user' => 'Pamangke',
+'filehist-dimensions' => 'Dimensi',
+'filehist-comment' => 'Hata panambai',
+'imagelinks' => 'Parhaseangon ni berkas',
+'linkstoimage' => '{{PLURAL:$1|alaman pangait|$1 angka alaman na marpangait}} tu berkas on:',
+'nolinkstoimage' => 'Ndang adong alaman na marpangait tu berkas on.',
+'sharedupload-desc-here' => 'Berkas on sian $1 jala olo do diparhaseang angka proyek na asing. Hatorangan na ima [$2 alaman hatoranganna] dipatorang di toru on.',
+
+# Random page
+'randompage' => 'Alaman sursar',
+
+# Statistics
+'statistics' => 'Statistik',
+
+'disambiguationspage' => 'Template:Disambig',
+
+'pageswithprop-submit' => 'Laho tu',
+
+# Miscellaneous special pages
+'nbytes' => '$1 {{PLURAL:$1|byte|bites}}',
+'nmembers' => '$1 {{PLURAL:$1|isi|angka isi}}',
+'usercreated' => '{{GENDER:$3|Dipungka}} ari $1 topet $2',
+'newpages' => 'Angka alaman na imbaru',
+'move' => 'Paorot',
+'pager-newer-n' => '{{PLURAL:$1|na imbaru|na imbaru $1}}',
+'pager-older-n' => '{{PLURAL:$1|na leleng|$1 na lumeleng}}',
+
+# Book sources
+'booksources-go' => 'Torushon',
+
+# Special:Log
+'log' => 'Angka log',
+
+# Special:AllPages
+'allpages' => 'Sude alaman',
+'alphaindexline' => '$1 tu $2',
+'allarticles' => 'Sude alaman',
+'allpagessubmit' => 'Torushon',
+
+# Special:Categories
+'categories' => 'Angka horong',
+
+# Special:LinkSearch
+'linksearch-line' => '$1 marpangait sian $2',
+
+# Special:ListGroupRights
+'listgrouprights-members' => '(daftar ni parsidohot)',
+
+# Email user
+'emailuser' => 'Surel pamarhaseang on',
+'emailfrom' => 'Sian',
+'emailto' => 'Tu',
+
+# Watchlist
+'watchlist' => 'Daftar na pinarrohahon',
+'mywatchlist' => 'Daftar na pinarrohahon',
+'watchlistfor2' => 'Laho tu $1 $2',
+'watch' => 'Parrohahon',
+'unwatch' => 'Sundat mamarrohahon',
+'wlshowlast' => 'Pataridahon $1 jom $2 ari $3 na parpudi',
+
+# Delete
+'actioncomplete' => 'Sae ulaon',
+'actionfailed' => 'Ulaon sundat',
+'dellogpage' => 'Log pasesaan',
+
+# Rollback
+'rollbacklink' => 'Paundur',
+
+# Protect
+'protectlogpage' => 'Log panghokhop',
+'protectedarticle' => 'manjaga "[[$1]]"',
+
+# Undelete
+'undeletelink' => 'Ida/paulak',
+'undeleteviewlink' => 'Ida',
+'undelete-show-file-submit' => 'Olo',
+
+# Namespace form on various pages
+'namespace' => 'Inganan ni goar:',
+'invert' => 'Paulak napinillit',
+'blanknamespace' => '(Rumingkot)',
+
+# Contributions
+'contributions' => 'Na niula {{GENDER:$1|pamarhaseang}}',
+'mycontris' => 'Angka silua',
+'contribsub2' => 'Laho tu $1 ($2)',
+'uctop' => 'di ginjang',
+'month' => 'Sian bulan (dohot andorang na)',
+'year' => 'Sian taon (dohot andorang na):',
+
+'sp-contributions-blocklog' => 'olati log',
+'sp-contributions-logs' => 'log',
+'sp-contributions-talk' => 'Pangkataion',
+'sp-contributions-username' => 'Alamat IP manang goar:',
+'sp-contributions-toponly' => 'Pataridahon holan panotaan parginjang',
+'sp-contributions-submit' => 'Diori',
+
+# What links here
+'whatlinkshere-title' => 'Angka alaman na marpangait tu "$1"',
+'whatlinkshere-page' => 'Alaman:',
+'linkshere' => "Angka alaman on marpangait tu '''[[:$1]]''':",
+'nolinkshere' => "Ndang adong alaman na marpangait tu '''[[:$1]]'''.",
+'isimage' => 'pangait berkas',
+'whatlinkshere-prev' => '{{PLURAL:$1|andorang so $1}}',
+'whatlinkshere-next' => '{{PLURAL:$1|udut na|udut na $1}}',
+'whatlinkshere-links' => '← angka pangait',
+'whatlinkshere-hideredirs' => '$1 manguba dalan',
+'whatlinkshere-hidelinks' => '$1 pangait',
+'whatlinkshere-hideimages' => '$1 pangait berkas',
+'whatlinkshere-filters' => 'Saringan',
+
+# Block/unblock
+'ipboptions' => '2 jom:2 hours,1 ari:1 day,3 ari:3 days,1 minggu:1 week,2 minggu:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 taon:1 year,salelengna:infinite',
+'ipblocklist' => 'Angka pamarhaseang na diolati',
+'blocklink' => 'ambati',
+'unblocklink' => 'Pamago Blokir',
+'change-blocklink' => 'Paubah blokir',
+'contribslink' => 'silehon-lehon',
+'blocklogpage' => 'Olati log',
+'block-log-flags-nocreate' => 'Ndang boi mamungka akun',
+
+# Move page
+'move-page-legend' => 'Papinda alaman',
+'movelogpage' => 'Log paorothon',
+'revertmove' => 'Sundati',
+
+# Export
+'export' => 'Ekspor alaman',
+
+# Namespace 8 related
+'allmessagesname' => 'Goar',
+'allmessages-filter-submit' => 'Laho tu',
+
+# Thumbnails
+'thumbnail-more' => 'Paheba',
+
+# Tooltip help for the actions
+'tooltip-pt-userpage' => 'Alaman ni na marparhaseang',
+'tooltip-pt-mytalk' => 'Alaman Pangkataionmuna',
+'tooltip-pt-preferences' => 'Pinillit ni hamu',
+'tooltip-pt-watchlist' => 'punguan angka goar ni alaman',
+'tooltip-pt-mycontris' => 'Daftar ni silua mu',
+'tooltip-pt-login' => 'Disosoi do hamu asa bongot tu log, alai dang pola di gogohon.',
+'tooltip-pt-logout' => 'Haruar Log',
+'tooltip-ca-talk' => 'Panghataion taringot tu alaman isi',
+'tooltip-ca-edit' => 'Boi do patotaonmu alaman on. Parhaseang tombol pratayang andorang so manimpan.',
+'tooltip-ca-addsection' => 'Mamungka bogas na imbaru',
+'tooltip-ca-viewsource' => 'Alaman on dijaga. Holan haroanna do boi berengon mu',
+'tooltip-ca-history' => 'Parubaan na parpudi di alaman on',
+'tooltip-ca-protect' => 'Hophop alamana on',
+'tooltip-ca-delete' => 'Sesa alaman on',
+'tooltip-ca-move' => 'Pindahon alaman on',
+'tooltip-ca-watch' => 'Tambahon alaman on tu daftar pamberengan hamu',
+'tooltip-ca-unwatch' => 'Sesa alaman on sian daftar na diparrohahon',
+'tooltip-search' => 'lului di bagasan wiki on',
+'tooltip-search-go' => 'Diori alaman na marnampunahon goar na tangkas molo adong',
+'tooltip-search-fulltext' => 'diori alaman na margurithon songonon',
+'tooltip-p-logo' => 'Duloi pogu ni alaman',
+'tooltip-n-mainpage' => 'Duloi pogu ni alaman',
+'tooltip-n-mainpage-description' => 'Duloi pogu ni alaman',
+'tooltip-n-portal' => 'Taringot tu ulaon, aha na boi ulaonmu,ima namandiori na adong',
+'tooltip-n-currentevents' => 'Dapoti informasi taringot tu na masa nuaeng',
+'tooltip-n-recentchanges' => 'Angka parubaan na imbaru di wiki',
+'tooltip-n-randompage' => 'Patudu Alaman na Asing',
+'tooltip-n-help' => 'Inganan mandiori alus',
+'tooltip-t-whatlinkshere' => 'Daftar ni sude alaman wiki na marnampunahon pangait tu alaman on',
+'tooltip-t-recentchangeslinked' => 'Angka parubaan ni alaman na imbaru na marpangait tu alaman on',
+'tooltip-feed-atom' => 'Pele Atom hu alaman on',
+'tooltip-t-contributions' => 'Daftar ni tumpak ni pamarhaseang on',
+'tooltip-t-emailuser' => 'Tongoshon sada surel tu pamarhaseang on',
+'tooltip-t-upload' => 'Tambahaon angka berkas',
+'tooltip-t-specialpages' => 'Sude Alaman na Istimewa',
+'tooltip-t-permalink' => 'Pangait na togu tu parubaan ni alaman on',
+'tooltip-ca-nstab-main' => 'Dulo alaman isi',
+'tooltip-ca-nstab-user' => 'Bereng alaman ni pamarhaseang',
+'tooltip-ca-nstab-special' => 'On alaman na marhasurungan, ndang boi dipatota',
+'tooltip-ca-nstab-project' => 'Bereng alaman proyek',
+'tooltip-ca-nstab-image' => 'Bereng alaman berkas',
+'tooltip-ca-nstab-template' => 'Ida templat',
+'tooltip-ca-nstab-category' => 'Bereng alaman horong',
+'tooltip-minoredit' => 'Tandai on songon sada panotaan na metmet',
+'tooltip-save' => 'Simpan parubaan mu',
+'tooltip-preview' => 'Parrohahon parubaan mu, parhaseang on andorang so manimpan',
+'tooltip-diff' => 'Bereng parubaan na binahenmu tu siguraton',
+'tooltip-compareselectedversions' => 'Bereng aha ubana sian na dua ragam ni alaman na dipillit.',
+'tooltip-watch' => 'Tambahon alaman on tu daftar na diparrohahonmu',
+'tooltip-summary' => 'Pamasuk ringkasan pendek',
+
+# Browsing diffs
+'previousdiff' => '← Panotaan na salpu',
+'nextdiff' => 'Parubaan na imbaru →',
+
+# Media information
+'file-info-size' => '$1 × $2 piksel, balga ni berkas: $3, rumang na MIME: $4',
+'file-nohires' => 'Ndang adong resolusi natumimbo.',
+'svg-long-desc' => 'Berkas SVG, nominal $1 × $2 piksel, balga ni berkas: $3',
+'show-big-image' => 'Resolusi na umbalga',
+
+# Special:NewFiles
+'noimages' => 'Ndang adong na ni ida',
+'ilsubmit' => 'Diori',
+
+# Bad image list
+'bad_image_list' => 'Songon on ma rumangna:
+
+Holan daftar (baris na dimulai dohot tanda *) na masuk etongan. Pangait na parjolo di sada-sada baris ikkon do gabe pangait tu berkas na buruk. Pangait na manghihut di nasabaris i dietong do i pulik,ima alaman na patuduhon berkas i.',
+
+# Metadata
+'metadata' => 'Metadata',
+'metadata-help' => 'Berkas on marnampunahon informasi na asing, olo do sian kamera digital manang sian ula-ula na asing. Molo nungga dipauneune berkas on, hatoranganna olo do ndang apala toho songon informasi siang gombaran naung dipauneune on.',
+'metadata-fields' => 'Angka bidang metadata gombar na dipajojor di bagasan tona on naeng dipamasuk di hataridaan ni alaman gombar tingki tabel metadata dipametmet. Data na asing gabe dibunihon songon naung ditontuhon.
+ * make
+* model
+* datetimeoriginal
+* exposuretime
+* fnumber
+* isospeedratings
+* focallength
+* artist
+* copyright
+* imagedescription
+* gpslatitude
+* gpslongitude
+* gpsaltitude',
+
+# Exif tags
+'exif-imagewidth' => 'Bolak',
+'exif-imagelength' => 'Timbo',
+
+# External editor support
+'edit-externally' => 'Patota berkas on mamarhaseanghon ulaula parduru',
+
+# 'all' in various places, this might be different for inflected languages
+'watchlistall2' => 'Sasude',
+'namespacesall' => 'sude',
+'monthsall' => 'Sasude',
+
+# Watchlist editing tools
+'watchlisttools-edit' => 'Pataridahon jala patota daftar siparrohahonon',
+
+# Special:SpecialPages
+'specialpages' => 'Alaman na marhasurungan',
+
+# Special:Tags
+'tag-filter' => 'Saringan [[Special:Tags|tag]]:',
+
+);
'tog-enotifrevealaddr' => 'منی ایمیل پیش دار ته ایمیل أن هوژاری',
'tog-shownumberswatching' => 'پیش دار تعداد کاربرانی که چارگتن',
'tog-fancysig' => 'امضاءَ په داب ویکی متنی بزان(بی اتوماتیکی لینک)',
-'tog-externaleditor' => 'به طور پیش فرض اصلاح کنوک حارجی استفاده کن',
-'tog-externaldiff' => 'به طور پیش فرض چه حارجی تمایز استفاده کن',
'tog-showjumplinks' => 'فعال کن "jump to" لینکان دست رسی آ',
'tog-uselivepreview' => 'چه زنده این بازبین استفاده کن(جاوا)(تجربی)',
'tog-forceeditsummary' => 'من آ هال دی وهدی وارد کتن یک هالیکین خلاصه ی اصلاح',
'disclaimers' => 'بی میاری گیان',
'disclaimerpage' => 'Project:عمومی بی میاریگان',
'edithelp' => 'کمک اصلاح',
-'edithelppage' => 'Help:اصلاح',
'helppage' => 'Help:محتوا',
'mainpage' => 'صفحه اصلی',
'mainpage-description' => 'صفحه اصلی',
'searchmenu-legend' => 'گزینه یان گردگ',
'searchmenu-exists' => "'''صفحه گون نام \"[[\$1]]\" ته ای ویکی نیستن'''",
'searchmenu-new' => "'''شر کن صفحه ای \"[[:\$1]]\" ته ای ویکی!'''",
-'searchhelp-url' => 'Help:محتوا',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|بروز صفحات گون پیش وند]]',
'searchprofile-articles' => 'صفحات محتوا',
'searchprofile-project' => 'کمک و صفحات پروژه ای',
شما نونیت بگردیت چه طرق گوگل هم زمان.
توجه که اندیکس آن {{SITENAME}} محتوا شاید تاریح گوستگین بنت.',
-# Quickbar
-'qbsettings' => 'میله سریع',
-'qbsettings-none' => 'هچ یک',
-'qbsettings-fixedleft' => 'چپ ثابت',
-'qbsettings-fixedright' => 'راست ثابت',
-'qbsettings-floatingleft' => 'چپ شناور',
-'qbsettings-floatingright' => 'راست شناور',
-
# Preferences page
'preferences' => 'ترجیحات',
'mypreferences' => 'منی ترجیحات',
'notvisiblerev' => 'بازبینی حذف بوتت',
'watchnochange' => 'هچ یک چه شمی چارتگین آیتم اصلاح نه بوتت ته ای دوره زمانی که پیش دارگ بیت.',
'watchlist-details' => '{{PLURAL:$1|$1 صفحه|$1 صفحات}} چارتگ بیت صفحات گپ حساب نه بیگن',
-'wlheader-enotif' => '* اخطار ایمیل فعالنت.',
-'wlheader-showupdated' => "* صفحات که عوض بوتگنت چه شمی آهری چارتن '''پررنگ''' پیش دراگ بنت.",
+'wlheader-enotif' => 'اخطار ایمیل فعالنت.',
+'wlheader-showupdated' => "صفحات که عوض بوتگنت چه شمی آهری چارتن '''پررنگ''' پیش دراگ بنت.",
'watchmethod-recent' => 'کنترل نوکین اصلاحات په صفحاتی که چارگ بنت',
'watchmethod-list' => 'کنترل صفحاتی که چارگ بنت په نوکین اصلاحات',
'watchlistcontains' => 'شمی لیست چارگ شامل $1 {{PLURAL:$1|صفحه|صفحات}}.',
'spam_blanking' => 'کل بازبینی آن شامل لینکان په $1, بوتت هالیکی',
# Skin names
-'skinname-standard' => 'کلاسیک',
-'skinname-nostalgia' => 'نوستالجیک',
'skinname-cologneblue' => 'نیلی کولاجن',
'skinname-monobook' => 'منوبوک',
-'skinname-myskin' => 'منی جلد',
-'skinname-chick' => 'شیک',
-'skinname-simple' => 'ساده',
'skinname-modern' => 'مدرن',
# Patrolling
/*
Short names for language variants used for language conversion links.
-To disable showing a particular link, set it to 'disable', e.g.
-'variantname-zh-sg' => 'disable',
Variants for Chinese language
*/
'variantname-zh-hans' => 'هانس',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'پهنات',
'exif-imagelength' => 'بلندی',
'exif-bitspersample' => 'بیت ته جز',
'exif-gpsdatestamp' => 'تاریح جی پی اس',
'exif-gpsdifferential' => 'اصلاح متفاوت جی پی اس',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'کمپرس نه بوتت',
'exif-compression-6' => 'جیی پی ای جی',
'version-software-product' => 'محصول',
'version-software-version' => 'نسخه',
-# Special:FilePath
-'filepath' => 'مسیر فایل',
-'filepath-page' => 'فایل:',
-'filepath-submit' => 'مسیر',
-'filepath-summary' => 'ای حاصین صفحه مسیر کامل په یک فایل پیش داریت.
-تصاویر گون وضوح کامل پیش دارگ بنت و دگه نوع فایلان گون وتی برنامه یانش مستقیما پچ بنت.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'گردگ په کپی فایلان',
'fileduplicatesearch-summary' => 'گردگ په کپی فایلان په اساس درهمین ارزش.',
'oct' => 'Okt',
'nov' => 'Nob',
'dec' => 'Des',
+'january-date' => 'Enero $1',
+'february-date' => 'Pebrero $1',
+'march-date' => 'Marso $1',
+'april-date' => 'Abril $1',
+'may-date' => 'Mayo $1',
+'june-date' => 'Hunyo $1',
+'july-date' => 'Hulyo $1',
+'august-date' => 'Agosto $1',
+'september-date' => 'Septiyembre $1',
+'october-date' => 'Oktubre $1',
+'november-date' => 'Nobyembre $1',
+'december-date' => 'Disyembre $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorya|Mga kategorya}}',
'create-this-page' => 'Muknaon ining pahina',
'delete' => 'Puraon',
'deletethispage' => 'Puraon ining pahina',
+'undeletethispage' => 'Balikon sa pagkapura ining pahina',
'undelete_short' => 'Bawia an pagpurà kan {{PLURAL:$1|sarong pagliwat|$1 mga pagliwat}}',
'viewdeleted_short' => 'Hilngon {{PLURAL:$1|sarong pinara na pagliwat|$1 mga pinara na pagliwat}}',
'protect' => 'Protektari',
'categorypage' => 'Tanawon an pahina nin kategorya',
'viewtalkpage' => 'Tanawon an orolayan',
'otherlanguages' => 'Sa ibang mga lengguwahe',
-'redirectedfrom' => '(Piglikay halì sa $1)',
-'redirectpagesub' => 'Ilikáy an pahina',
-'lastmodifiedat' => 'Huring pigbàgo an pahinang iní $2 kan $1.',
-'viewcount' => 'Binukasán ining pahina nin {{PLURAL:$1|sarong beses|nin $1 beses}}.',
+'redirectedfrom' => '(Redirektado gikan sa $1)',
+'redirectpagesub' => 'Redirektang pahina',
+'lastmodifiedat' => 'Ining pahina huring pinagbago kan $1, mga alas $2.',
+'viewcount' => 'Ining pahina pinaglaog nin {{PLURAL:$1|sarong beses|nin $1 beses}}.',
'protectedpage' => 'Protektadong pahina',
'jumpto' => 'Magluksó sa:',
-'jumptonavigation' => 'paglibotlibot',
+'jumptonavigation' => 'nabigasyon',
'jumptosearch' => 'hanapon',
'view-pool-error' => 'Sori tabi, an mga server kargado sa oras na ini.
Grabe kadakol an mga paragamit na pinagprubaran mahiling an pahinang ini.
# 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) and the disambiguation template definition (see disambiguations).
'aboutsite' => 'Dapít sa {{SITENAME}}',
-'aboutpage' => 'Project:Manonongód',
-'copyright' => 'Makukua an laog sa $1.',
-'copyrightpage' => '{{ns:project}}:Mga derechos nin parásurat',
-'currentevents' => 'Mga pangyayari sa ngunyán',
+'aboutpage' => 'Project:Mapanonongód',
+'copyright' => 'An kalamnan manunumpungan sa laog kan $1.',
+'copyrightpage' => '{{ns:project}}:Mga Katanosang pansurat',
+'currentevents' => 'Sa ngunyan na mga pangyayari',
'currentevents-url' => 'Project:Mga pangyayari sa ngunyán',
-'disclaimers' => 'Mga pagpabayà',
-'disclaimerpage' => 'Project:Pangkagabsán na pagpabayà',
-'edithelp' => 'Paghirá kan pagtabang',
-'edithelppage' => 'Help:Pagliwát',
-'helppage' => 'Help:Mga laóg',
+'disclaimers' => 'Mga Pangindahan',
+'disclaimerpage' => 'Project:Pangkagabsán na pangindahan',
+'edithelp' => 'Pantabang sa pagliliwat',
+'helppage' => 'Help:Mga Kalamnan',
'mainpage' => 'Panginot na Pahina',
'mainpage-description' => 'Panginot na Pahina',
-'policy-url' => 'Project:Palakáw',
+'policy-url' => 'Project:Kalakawan',
'portal' => 'Portal kan komunidad',
'portal-url' => 'Project:Portal kan Komunidad',
-'privacy' => 'Palakáw nin pribasidad',
-'privacypage' => 'Project:Palakaw nin pribasidad',
+'privacy' => 'Kalakawan nin pribasidad',
+'privacypage' => 'Project:Kalakawan nin Pribasidad',
-'badaccess' => 'Salang permiso',
+'badaccess' => 'Kasalaan sa permiso',
'badaccess-group0' => 'Dai ka tinotogotan na gibohon an aksyon na saimong hinahagad.',
'badaccess-groups' => 'An aksyon na saimong pinaghahagad limitado sa mga parágamit na {{PLURAL:$2|an grupo|saro sa mga grupo}}: $1.',
'editold' => 'Liwatón',
'viewsourceold' => 'hilingón an ginikánan',
'editlink' => 'liwatón',
-'viewsourcelink' => 'hilingón an toltólan',
+'viewsourcelink' => 'tanawon an ginikanan',
'editsectionhint' => 'Liwatón an seksyon: $1',
'toc' => 'Mga laóg',
'showtoc' => 'ipahilíng',
'collapsible-expand' => 'Pinahalawig',
'thisisdeleted' => 'Hilingón o isulít an $1?',
'viewdeleted' => 'Hilingón an $1?',
-'restorelink' => '{{PLURAL:$1|sarong pinarang paghirá|$1 na pinarang paghirá}}',
+'restorelink' => '{{PLURAL:$1|sarong pinagpurang pagliwat|$1 na pinagpurang mga pagliwat}}',
'feedlinks' => 'Hungit:',
-'feed-invalid' => 'Bawal na tipo nin hungit na subkripsyon.',
+'feed-invalid' => 'Imbalidong tipo nin hungit sa subkripsyon.',
'feed-unavailable' => 'Mayò an mga sindikasyon na hungit',
'site-rss-feed' => '$1 Hungit nin RSS',
'site-atom-feed' => '$1 Hungit nin Atomo',
'namespaceprotected' => "Mayô kang permisong maghirá kan mga páhina sa '''$1''' ngaran-espacio.",
'customcssprotected' => 'Ika mayong permiso sa pagliwat kaining pahinang CSS, nin huli ta ini naglalaman kan personal na panuytoy (settings) kan ibang paragamit.',
'customjsprotected' => 'Ika mayong permiso sa pagliwat kaining pahinang JavaScript, nin huli ta ini naglalaman kan personal na panuytoy (settings) kan ibang paragamit.',
+'mycustomcssprotected' => 'Ika mayo nin permiso sa pagliwat kaining CSS na pahina.',
+'mycustomjsprotected' => 'Ika mayo nin permiso sa pagliwat kaining JavaScript na pahina.',
'ns-specialprotected' => 'An mga pahinang nasa {{ns:special}} na liang-liang dai pwedeng hirahón.',
'titleprotected' => 'Ining titulo pinagprotektaran poon pagkamukna ni [[User:$1|$1]].
An rason na pinagtao iyo na "\'\'$2\'\'".',
'createacct-yourpasswordagain' => 'Kumpirmaron an sekretong panlaog',
'createacct-yourpasswordagain-ph' => 'Pakikaag otro an sekretong panlaog',
'remembermypassword' => 'Giromdoma an sakong paglaog sa kilyaw (browser) na ini (para sa maksimum na $1 {{PLURAL:$1|aldaw|mga aldaw}})',
-'userlogin-remembermypassword' => 'Giromdoma ako',
-'userlogin-signwithsecure' => 'Maglaog sa seguradong serbidor',
+'userlogin-remembermypassword' => 'Dagos mo akong giromdomon na nakalaog',
+'userlogin-signwithsecure' => 'Gamiton an seguradong koneksyon',
'securelogin-stick-https' => 'Magpirmeng konektado sa HTTPS matapos kang maglaog',
'yourdomainname' => 'An saimong kasakupan:',
'password-change-forbidden' => 'Ika dae makapagliwat nin sekretong panlaog sa wiking ini.',
'gotaccount' => 'Igwa ka na tabi nin panindog? $1.',
'gotaccountlink' => 'Maglaog',
'userlogin-resetlink' => 'Nakalingaw ka sa panlaog mong detalye?',
+'userlogin-resetpassword-link' => 'Pakibaguha an saimong sekretong panlaog',
'helplogin-url' => 'Help:Paglalaog',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Tabang sa paglalaog]]',
'createacct-join' => 'Pakikaag an saimong impormasyon sa ibaba.',
'createacct-realname' => 'Totoong pangaran (opsyonal)',
'createaccountreason' => 'Rason:',
'createacct-reason' => 'Rason',
+'createacct-reason-ph' => 'Tadaw ta ika magmumukna nin ibang panindog',
'createacct-captcha' => 'Rikisang panseguridad',
'createacct-imgcaptcha-ph' => 'Pakikaag an tekstong nahihiling mo sa ibabaw',
+'createacct-submit' => 'Muknaon an saimong panindog',
'createacct-benefit-heading' => '{{SITENAME}} pinaghimo kan mga tawong siring mo.',
-'createacct-benefit-body1' => 'mga pagliliwat',
-'createacct-benefit-body2' => 'mga pahina',
-'createacct-benefit-body3' => 'pinakahurihang mga paraambag',
+'createacct-benefit-body1' => '{{PLURAL:$1|niliwat|mga niliwat}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|pahina|mga pahina}}',
+'createacct-benefit-body3' => 'pinakahuring {{PLURAL:$1|paraambag|mga paraambag}}',
'badretype' => 'An mga sekretong panlaog mong pinagtatak bakong pareho.',
'userexists' => 'Paragamit na ngarang piglaog may naggagamit na.
Pakipili nin ibang ngaran tabi.',
'cannotchangeemail' => 'An panindog na address sa e-surat dati mariribayan sa Wiki na ini.',
'emaildisabled' => 'Ining sayt dae makakapagpadara nin mga e-surat.',
'accountcreated' => 'Panindog pinagmukna na',
-'accountcreatedtext' => 'An paragamit na panindog para sa $1 pinagmukna na.',
+'accountcreatedtext' => 'An paragamit na panindog para sa [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) pinagmukna na.',
'createaccount-title' => 'Panindog na pagmukna para sa {{SITENAME}}',
'createaccount-text' => 'May tawong nagmukna nin sarong panindog na gamit an saimong address na e-surat sa {{SITENAME}} ($4) na may ngaran na "$2, na may sikretong panlaog na "$3".',
'usernamehasherror' => 'Paragamit na ngaran dae puwede na igwang simbolikong mga kabtang',
# Special:PasswordReset
'passwordreset' => 'Pakibago kan sekretong panlaog',
-'passwordreset-text' => 'Kumpletoha ining porma tangarig liwatong an saimong sekretong panlaog.',
+'passwordreset-text-one' => 'Kumpletuhon ining porma sa pagliwat otro kan saimong pasa-taramon.',
+'passwordreset-text-many' => '{{PLURAL:$1|Ikaag an saro sa mga pedaso nin datos sa pagliwat otro kan saimong pasa-taramon.}}',
'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.',
-'passwordreset-pretext' => '{{PLURAL:$1||Pakilaog kan saro sa mga pedaso nin datos sa ibaba}}',
'passwordreset-username' => 'Paragamit-ngaran:',
'passwordreset-domain' => 'Kasakupan:',
'passwordreset-capture' => 'Hilngon an kinaluwasang e-koreo?',
Ini minapahiwatig tabi na pinagpura na.',
'edit-conflict' => 'Igwang iregularidad sa pagliwat.',
'edit-no-change' => 'An saimong pagliwat pinagbalewala, nin huli ta mayong pagbabago an pinaghimo sa teksto.',
+'postedit-confirmation' => 'An saimong niliwat ipinagtagama na.',
'edit-already-exists' => 'Dai maggibo an bàgong pahina.
Igwa na kaini.',
'defaultmessagetext' => 'Tugmadong mensahe sa teksto',
'searchmenu-legend' => 'Opsyon sa paghahanap',
'searchmenu-exists' => "'''Igwa nin sarong pahina na pinagngaranan na \"[[:\$1]]\" sa wiking ini.'''",
'searchmenu-new' => "'''Muknaon an pahina \"[[:\$1]]\" sa wiking ini!'''",
-'searchhelp-url' => 'Help:Mga laog',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Kilyawon an mga pahina sa paagi kainin enotang panigmit]]',
'searchprofile-articles' => 'Mga pahina nin laog',
'searchprofile-project' => 'Mga pahina nin Tabang asin Proyekto',
'userrights-changeable-col' => 'Mga grupo na mapuwede mong baguhon',
'userrights-unchangeable-col' => 'Mga grupo na dae mo mapuwedeng baguhon',
'userrights-conflict' => 'Kumplikto sa katanosan nin paragamit! Pakigibo giraray kan saimong mga kaliwatan.',
+'userrights-removed-self' => 'Saimong matrayumpong pinagtangkas an sadire mong mga katanosan. Sa siring, ika dae na tabi makakalaog sa pahinang ini.',
# Groups
'group' => 'Grupo:',
'right-editusercssjs' => 'Liwaton an CSS asin JavaScript na mga sagunson kan ibang mga paragamit',
'right-editusercss' => 'Liwaton an CSS na mga sagunson kan ibang mga paragamit',
'right-edituserjs' => 'Liwaton an JavaScript na mga sagunson kan ibang mga paragamit',
+'right-editmyusercss' => 'Liwaton an saimong sadireng paragamit na sagunson sa CSS',
+'right-editmyuserjs' => 'Liwaton an saimong sadireng paragamit na sagunson sa JavaScript',
'right-rollback' => 'Hidaling ibalik an mga niliwat kan huring paragamit na nagliwat nin sarong partikular na pahina',
'right-markbotedits' => 'Markahan an pinagbalik na mga niliwat bilang bot na panliwat',
'right-noratelimit' => 'Dae magin apektado sa paagi kan rata nin mga sagkodan',
'notvisiblerev' => 'An huring rebisyon kan ibang paragamit pinagpura na',
'watchnochange' => 'Mayo sa saimong mga pigbabantayan an nahira sa laog nin pinahiling na pagkalawig.',
'watchlist-details' => '{{PLURAL:$1|$1 pahina|$1 mga pahina}} sa saimong bantay-listahan, dae binibilang an mga pahina nin orolayan.',
-'wlheader-enotif' => "* Nakaandar an paising ''e''-surat.",
-'wlheader-showupdated' => "* An mga páhinang pigbâgo poon kan huri mong bisita nakasurat nin '''mahîbog'''",
+'wlheader-enotif' => 'E-surat na paisi pinagpaandar na.',
+'wlheader-showupdated' => "Mga pahina na pinagriliwat poon kaidtong huri kang nagbisita sainda ipinapatanaw na '''mahîbog'''",
'watchmethod-recent' => 'Pigsososog an mga kaaagi pa sanang hirá sa mga pigbabantayan na páhina',
'watchmethod-list' => 'Pigsososog an mga pigbabantayan na páhina para mahiling an mga kaaagi pa sanan paghirá',
'watchlistcontains' => 'An saimong lista nin pigbabantayan igwang $1 na {{PLURAL:$1|páhina|mga páhina}}.',
'mycontris' => 'Mga Kaarambagan',
'contribsub2' => 'Para sa $1 ($2)',
'nocontribs' => 'Mayong mga pagbabago na nahanap na kapadis sa ining mga criteria.',
-'uctop' => '(alituktok)',
+'uctop' => '(sa ngunyan)',
'month' => 'Poon bulan (asin mas amay):',
'year' => 'Poon taon (asin mas amay):',
'thumbnail-more' => 'Padakuláon',
'filemissing' => "Nawawarâ an ''file''",
'thumbnail_error' => 'Error sa paggigibo kan retratito: $1',
+'thumbnail_error_remote' => 'Mensahe nin kasalaan gikan sa $1:
+$2',
'djvu_page_error' => 'luwas sa serye an páhina kan DjVu',
'djvu_no_xml' => 'Dai makua an XML para sa DjVu file',
'thumbnail-temp-create' => 'Dae nakamukna nin temporaryong sagunson kan retrato',
* @file
*
* @author Cesco
+ * @author Geitost
* @author Jim-by
* @author Kaganer
* @author LexArt
'oct' => 'Кас',
'nov' => 'Ліс',
'dec' => 'Сне',
+'january-date' => '$1 студзеня',
+'february-date' => '$1 лютага',
+'march-date' => '$1 сакавіка',
+'april-date' => '$1 красавіка',
+'may-date' => '$1 мая',
+'june-date' => '$1 чэрвеня',
+'july-date' => '$1 ліпеня',
+'august-date' => '$1 жніўня',
+'september-date' => '$1 верасня',
+'october-date' => '$1 кастрычніка',
+'november-date' => '$1 лістапада',
+'december-date' => '$1 снежня',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Катэгорыя|Катэгорыі}}',
'newwindow' => '(адкрыецца ў новым акне)',
'cancel' => 'Нічога',
'moredotdotdot' => 'Яшчэ...',
+'morenotlisted' => 'Больш нічога няма...',
'mypage' => 'Уласная старонка',
'mytalk' => 'Размовы',
'anontalk' => 'Размова для гэтага IP',
'namespaces' => 'Прасторы імёнаў',
'variants' => 'Варыянты',
+'navigation-heading' => 'Навігацыя',
'errorpagetitle' => 'Памылка',
'returnto' => 'Вярнуцца да $1.',
'tagline' => 'З пляцоўкі {{SITENAME}}.',
'create-this-page' => 'Стварыць старонку',
'delete' => 'сцерці',
'deletethispage' => 'Сцерці гэту старонку',
+'undeletethispage' => 'Аднавіць гэту старонку',
'undelete_short' => 'Аднавіць {{PLURAL:$1|адну праўку|$1 правак}}',
'viewdeleted_short' => 'Паказаць {{PLURAL:$1|адну сцёртую праўку|$1 сцёртыя праўкі}}',
'protect' => 'Ахова',
'disclaimers' => 'Адмова ад адказнасці',
'disclaimerpage' => 'Project:Агульная адмова ад адказнасці',
'edithelp' => 'Даведка рэдактарскага акна',
-'edithelppage' => 'Help:Праўка',
'helppage' => 'Help:Змест',
'mainpage' => 'Галоўная старонка',
'mainpage-description' => 'Першая старонка',
'youhavenewmessages' => 'Вы маеце $1 ($2).',
'newmessageslink' => 'новыя паведамленні',
'newmessagesdifflink' => 'розн. з найноўшай версіяй',
+'youhavenewmessagesfromusers' => 'Вы атрымалі $1 ад {{PLURAL:$3|$3 ўдзельніка|$3 удзельнікаў}} ($2).',
+'youhavenewmessagesmanyusers' => 'Вы атрымалі $1 ад мноства карыстальнікаў ($2).',
'youhavenewmessagesmulti' => 'У вас ёсць новыя паведамленні на $1',
'editsection' => 'правіць',
'editold' => 'правіць',
'welcomecreation-msg' => 'Ваш рахунак быў створаны.
Не забудзьцеся дапасаваць [[Special:Preferences|персанальныя настаўленні]] для {{SITENAME}}.',
'yourname' => 'Імя ўдзельніка',
+'userlogin-yourname' => 'Імя ўліковага запісу',
+'userlogin-yourname-ph' => 'Увядзіце імя вашага ўліковага запісу',
'yourpassword' => 'Пароль',
+'userlogin-yourpassword' => 'Пароль',
+'userlogin-yourpassword-ph' => 'Увядзіце ваш пароль',
+'createacct-yourpassword-ph' => 'Увядзіце пароль',
'yourpasswordagain' => 'Паўтарыце пароль',
+'createacct-yourpasswordagain' => 'Пацвердзіце пароль',
+'createacct-yourpasswordagain-ph' => 'Увядзіце пароль яшчэ раз',
'remembermypassword' => "Памятаць мяне на гэтым камп'ютары (не даўжэй за $1 {{PLURAL:$1|дзень|дзён}})",
+'userlogin-remembermypassword' => 'Заставацца ў сістэме',
+'userlogin-signwithsecure' => 'Выкарыстоўваць абароненае злучэнне',
'securelogin-stick-https' => 'Працягваць злучэнне па HTTPS пасля ўвахода',
'yourdomainname' => 'Ваш дамен',
'externaldberror' => 'Або памылка вонкавай аўтэнтыкацыі ў базе дадзеных, або вам не дазволена абнаўляць свой вонкавы рахунак.',
'logout' => 'Выйсці з сістэмы',
'userlogout' => 'Выйсці з сістэмы',
'notloggedin' => 'Не ўвайшоў',
-'nologin' => "Не маеце рахунку? '''$1'''.",
+'nologin' => 'Не маеце рахунку? $1.',
'nologinlink' => 'Завесці рахунак',
'createaccount' => 'Стварыць рахунак',
'gotaccount' => "Ужо маеце рахунак? '''$1'''.",
# Special:PasswordReset
'passwordreset' => 'Выслаць мне новы пароль',
-'passwordreset-text' => 'Запоўніце гэтую форму, каб атрымаць па электроннай пошце напамін вашага акаўнта.',
'passwordreset-legend' => 'Пераўстанавіць пароль',
'passwordreset-disabled' => 'Функцыя пераўсталёўкі пароля адключаная на гэтай вікі.',
-'passwordreset-pretext' => '{{PLURAL:$1||Калі ласка, увядзіце адзін з фрагментаў дадзеных ніжэй}}',
'passwordreset-username' => 'Імя ўдзельніка',
'passwordreset-domain' => 'Дамен:',
'passwordreset-capture' => 'Праглядзець напісаны ліст?',
'updated' => '(абноўлена)',
'note' => "'''Заўвага:'''",
'previewnote' => "'''Памятайце, гэта папярэдні паказ; праўкі яшчэ не замацаваныя!'''",
+'continue-editing' => 'Працягнуць рэдагаванне',
'previewconflict' => 'Гэта папярэдні паказ магчымага выніку замацоўвання актуальнага стану крынічнага тэксту ў верхнім тэкставым полі.',
'session_fail_preview' => "'''Не ўдалося апрацаваць вашую праўку, таму што сервер згубіў звесткі аб вашым сеансе.
Паспрабуйце, калі ласка, ізноў. Калі і тады не атрымаецца, паспрабуйце [[Special:UserLogout|выйсці з сістэмы]] і зайсці ізноў.'''",
Здаецца, што яна была сцёртая.',
'edit-conflict' => 'Канфлікт правак.',
'edit-no-change' => 'Вашая праўка была праігнараваная, таму што не мяняўся тэкст.',
+'postedit-confirmation' => 'Вашая праўка была захаваная.',
'edit-already-exists' => 'Не ўдалося стварыць новую старонку.
Такая ўжо існуе.',
'editwarning-warning' => 'Выхад з гэтай старонкі прывядзе да страты правак, якія вы зрабілі.
Калі Вы зарэгістраваныя ў сістэме, Вы можаце адключыць гэта папярэджанне ў закладцы "Праца" Вашых настаўленняў.',
+# Content models
+'content-model-wikitext' => 'вікі-тэкст',
+'content-model-text' => 'звычайны тэкст',
+'content-model-javascript' => 'JavaScript',
+'content-model-css' => 'CSS',
+
# Parser/template warnings
'expensive-parserfunction-warning' => "Увага: На старонцы занадта шмат працаёмістых зваротаў да парсера.
'searchmenu-legend' => 'Настаўленні пошуку',
'searchmenu-exists' => "'''На вікі ёсць старонка \"[[:\$1]]\"'''",
'searchmenu-new' => "'''Стварыць на гэтай вікі старонку \"[[:\$1]]\"'''",
-'searchhelp-url' => 'Help:Змест',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Паказаць старонкі з гэтым прэфіксам]]',
'searchprofile-articles' => 'Артыкулы',
'searchprofile-project' => 'Старонкі даведкі і праекта',
'recentchangesdays' => 'За колькі дзён паказваць {{lc:{{:{{ns:mediawiki}}:recentchanges/be}}}}:',
'recentchangesdays-max' => '(найбольш $1 {{PLURAL:$1|дзень|дзён}})',
'recentchangescount' => 'Прадвызначаная колькасць правак дзеля паказу:',
-'prefs-help-recentchangescount' => 'Ð\93Ñ\8dÑ\82а Ñ\9eклÑ\8eÑ\87ае Ñ\9e Ñ\81Ñ\8fбе нÑ\8fдаÑ\9eнÑ\96Ñ\8f змÑ\8fненнÑ\96, гісторыі старонак, журналы.',
+'prefs-help-recentchangescount' => 'Ð\93Ñ\8dÑ\82а Ñ\9eклÑ\8eÑ\87ае Ñ\9e Ñ\81Ñ\8fбе апоÑ\88нÑ\96Ñ\8f зменÑ\8b, гісторыі старонак, журналы.',
'prefs-help-watchlist-token' => 'Упісанне сакрэтнага ключа ў гэтае поле створыць RSS-струмень з вашага спісу назіранага.
Кожны, каму вядомы гэты ключ, зможа чытаць ваш спіс назіранага, таму выбірайце бяспечныя ключы.
Вось аўта-згенераваны ключ, які можна выкарыстаць: $1',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|змена|змены|зменаў}}',
-'recentchanges' => 'Ð\9dÑ\8fдаÑ\9eнÑ\96Ñ\8f змÑ\8fненнÑ\96',
+'recentchanges' => 'Ð\90поÑ\88нÑ\96Ñ\8f зменÑ\8b',
'recentchanges-legend' => 'Магчымасці паказу',
'recentchanges-summary' => 'Гэта апошнія мены на пляцоўцы {{SITENAME}}.',
'recentchanges-feed-description' => 'Сачыць за найбольш актуальнымі змяненнямі ў віксе праз гэты струмень навін.',
'rcshowhideliu' => '$1 пазнаных удзельнікаў',
'rcshowhideanons' => '$1 ананімных удзельнікаў',
'rcshowhidepatr' => '$1 ухваленых правак',
-'rcshowhidemine' => '$1 Ñ\83ласных правак',
+'rcshowhidemine' => '$1 Ñ\9eласных правак',
'rclinks' => 'Паказаць апошнія $1 зменаў за мінулыя $2 дзён<br />$3',
'diff' => 'розн.',
'hist' => 'гіст.',
'upload-proto-error' => 'Няправільны пратакол',
'upload-proto-error-text' => 'Укладанне файла зводдаль патрабуе URL, які пачынаецца з <code>http://</code> або <code>ftp://</code>.',
'upload-file-error' => 'Унутраная памылка',
-'upload-file-error-text' => 'Унутраная памылка пры спробе стварыць на серверы тымчасовы файл. Звярніцеся да аднаго з [[Special:ListUsers/sysop|сістэмных адміністратараў]].',
+'upload-file-error-text' => 'Унутраная памылка пры спробе стварыць на серверы тымчасовы файл. Звярніцеся да аднаго з [[Special:ListUsers/sysop|адміністратараў]].',
'upload-misc-error' => 'Нявызначаная памылка пры ўкладанні',
-'upload-misc-error-text' => 'Нявызначаная памылка пры ўкладанні. Праверце правільнасць і даступнасць URL і паспрабуйце ізноў. Калі праблема трывалая, звярніцеся да аднаго з [[Special:ListUsers/sysop|сістэмных адміністратараў]].',
+'upload-misc-error-text' => 'Нявызначаная памылка пры ўкладанні. Праверце правільнасць і даступнасць URL і паспрабуйце ізноў. Калі праблема трывалая, звярніцеся да аднаго з [[Special:ListUsers/sysop|адміністратараў]].',
'upload-too-many-redirects' => 'Занадта шмат перасылак за гэтым адрасам (URL)',
'upload-unknown-size' => 'Невядомы памер',
'upload-http-error' => 'Памылка HTTP: $1',
'listusers-noresult' => 'Удзельнікі не знойдзеныя.',
'listusers-blocked' => '(Заблакаваны)',
+# Special:ActiveUsers
+'activeusers' => 'Актыўныя ўдзельнікі',
+'activeusers-intro' => 'Гэта пералік удзельнікаў, якія нешта рабілі за апошнія $1 {{PLURAL:$1|дзень|дзён}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|праўка|праўкі|правак}} за апошні{{PLURAL:$3| дзень|я $3 дзён}}',
+'activeusers-from' => 'Паказ, пачынаючы з:',
+'activeusers-hidebots' => 'Без робатаў',
+'activeusers-hidesysops' => 'Без адміністратараў',
+'activeusers-noresult' => 'Няма такіх удзельнікаў.',
+
# Special:ListGroupRights
'listgrouprights' => 'Дазволы для груп удзельнікаў',
'listgrouprights-summary' => 'Гэты пералік вызначаных у гэтай вікі груп удзельнікаў, разам з прыпісанымі ім дазволамі.
'mailnologin' => 'Няма эл.адрасу',
'mailnologintext' => 'Трэба [[Special:UserLogin|ўвайсці ў сістэму]] і мець пацверджаны адрас эл.пошты ў сваіх [[Special:Preferences|настáўленнях]], каб слаць эл.пошту іншым удзельнікам.',
'emailuser' => 'Эл.пошта ўдзельніка',
+'emailuser-title-notarget' => 'Напісанне электроннага ліста ўдзельніку',
'emailpage' => 'Зварот да ўдзельніка праз эл.пошту',
'emailpagetext' => 'Тут можна выслаць эл.пошту гэтаму ўдзельніку.
Адрас эл.пошты, уведзены вамі ў [[Special:Preferences|сваіх настаўленнях]], з\'явіцца ў полі "From" вашага ліста, і атрымальнік зможа адказаць на ваш ліст.',
'notvisiblerev' => 'Версія сцёртая',
'watchnochange' => 'Ніводзін з назіраных складнікаў не быў зменены за паказаны перыяд.',
'watchlist-details' => 'Назіраю {{PLURAL:$1|$1 старонку|$1 старонак}} без уліку размоўных.',
-'wlheader-enotif' => '* Працуе апавяшчанне праз эл.пошту.',
-'wlheader-showupdated' => "* Старонкі, якія былі зменены пасля вашага апошняга іх наведвання, паказаны '''абрысам шрыфту'''.",
+'wlheader-enotif' => 'Працуе апавяшчанне праз эл.пошту.',
+'wlheader-showupdated' => "Старонкі, якія былі зменены пасля вашага апошняга іх наведвання, паказаны '''абрысам шрыфту'''.",
'watchmethod-recent' => 'правяраем нядаўнія праўкі ў назіраных старонках',
'watchmethod-list' => 'правяраем наяўнасць нядаўніх правак ў назіраных старонках',
'watchlistcontains' => 'У вашым спісе назіранага $1 {{PLURAL:$1|старонка|старонак}}.',
'sp-contributions-newbies' => 'Паказваць толькі ўклады з новых рахункаў',
'sp-contributions-newbies-sub' => 'З новых рахункаў',
'sp-contributions-newbies-title' => 'Уклады ўдзельнікаў з новых рахункаў',
-'sp-contributions-blocklog' => 'Ð\96Ñ\83Ñ\80нал забаÑ\80онаÑ\9e',
+'sp-contributions-blocklog' => 'блакÑ\96Ñ\80оÑ\9eкÑ\96',
'sp-contributions-deleted' => 'сцёрты ўклад удзельніка',
'sp-contributions-uploads' => 'Загрузкі',
'sp-contributions-logs' => 'журналы',
# Info page
'pageinfo-title' => 'Інфармацыя для "$1"',
-'pageinfo-header-edits' => 'Змены',
+'pageinfo-header-basic' => 'Агульныя звесткі',
+'pageinfo-header-edits' => 'Гісторыя правак',
+'pageinfo-robot-index' => 'Індэксуюцца',
+'pageinfo-robot-noindex' => 'Не індэксуюцца',
'pageinfo-views' => 'Колькасць праглядаў',
'pageinfo-watchers' => 'Колькасць назіральнікаў',
-'pageinfo-edits' => 'Колькасць правак:',
-'pageinfo-authors' => 'Колькасць розных аўтараў',
+'pageinfo-lastuser' => 'Апошні рэдактар',
+'pageinfo-lasttime' => 'Дата апошняй праўкі',
+'pageinfo-edits' => 'Агульная колькасць правак',
+'pageinfo-authors' => 'Агульная колькасць розных аўтараў',
# Skin names
'skinname-cologneblue' => 'Сіні Кёльн',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Шырыня',
'exif-imagelength' => 'Вышыня',
'exif-bitspersample' => 'Бітаў на кампанент',
'exif-originalimageheight' => 'Вышыня малюнка да кадравання',
'exif-originalimagewidth' => 'Шырыня малюнка да кадравання',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Нясціснута',
'exif-compression-2' => 'CCITT Group 3, 1-мерная мадыфікацыя кадзіравання даўжынь серый Хафмана',
'exif-compression-3' => 'CCITT Group 3, факсавае кадзіраванне',
'version-software' => 'Устаноўленыя праграмныя прадукты',
'version-software-product' => 'Прадукт',
'version-software-version' => 'Версія',
-
-# Special:FilePath
-'filepath' => 'Шлях да файла',
-'filepath-page' => 'Файл:',
-'filepath-submit' => 'Пуск',
-'filepath-summary' => 'Гэтая адмысловая старонка вяртае поўны шлях да файла.
-Выявы паказваюцца ў поўным памеры, іншыя тыпы файлаў адкрываюцца ў прыпісаных да іх праграмах.',
+'version-entrypoints-header-entrypoint' => 'Кропка ўваходу',
+'version-entrypoints-header-url' => 'URL',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Пошук дублікатных файлаў',
'specialpages-group-maintenance' => 'Звесткі аб працы',
'specialpages-group-other' => 'Іншыя адмысловыя старонкі',
'specialpages-group-login' => 'Прадстаўленне / рэгістрацыя',
-'specialpages-group-changes' => 'Ð\9dÑ\8fдаÑ\9eнÑ\96Ñ\8f змÑ\8fненнÑ\96 і журналы',
+'specialpages-group-changes' => 'Ð\90поÑ\88нÑ\96Ñ\8f зменÑ\8b і журналы',
'specialpages-group-media' => 'Укладзеныя файлы і звесткі пра іх',
'specialpages-group-users' => 'Удзельнікі і дазволы',
'specialpages-group-highuse' => 'Старонкі частага карыстання',
* @author Cesco
* @author Crt
* @author EugeneZelenko
+ * @author Geitost
* @author Jim-by
* @author Kaganer
+ * @author Nemo bis
* @author Red Winged Duck
* @author Renessaince
* @author Wizardist
'oct' => 'кас',
'nov' => 'ліс',
'dec' => 'сьн',
+'january-date' => '$1 студзеня',
+'february-date' => '$1 лютага',
+'march-date' => '$1 сакавіка',
+'april-date' => '$1 красавіка',
+'may-date' => '$1 траўня',
+'june-date' => '$1 чэрвеня',
+'july-date' => '$1 ліпеня',
+'august-date' => '$1 жніўня',
+'september-date' => '$1 верасьня',
+'october-date' => '$1 кастрычніка',
+'november-date' => '$1 лістапада',
+'december-date' => '$1 сьнежня',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Катэгорыя|Катэгорыі|Катэгорыі}}',
'create-this-page' => 'Стварыць гэтую старонку',
'delete' => 'Выдаліць',
'deletethispage' => 'Выдаліць гэтую старонку',
+'undeletethispage' => 'Аднавіць гэту старонку',
'undelete_short' => 'Аднавіць $1 {{PLURAL:$1|рэдагаваньне|рэдагаваньні|рэдагаваньняў}}',
'viewdeleted_short' => 'Паказаць $1 {{PLURAL:$1|выдаленае рэдагаваньне|выдаленыя рэдагаваньні|выдаленых рэдагаваньняў}}',
'protect' => 'Абараніць',
'disclaimers' => 'Адмова ад адказнасьці',
'disclaimerpage' => 'Project:Адмова ад адказнасьці',
'edithelp' => 'Дапамога ў рэдагаваньні',
-'edithelppage' => 'Help:Рэдагаваньне',
'helppage' => 'Help:Зьмест',
'mainpage' => 'Галоўная старонка',
'mainpage-description' => 'Галоўная старонка',
'namespaceprotected' => "Вы ня маеце правоў на рэдагаваньне старонак у прасторы назваў '''$1'''.",
'customcssprotected' => 'Вы ня маеце правоў на рэдагаваньне гэтай CSS-старонкі, таму што яна ўтрымлівае пэрсанальныя налады іншага ўдзельніка.',
'customjsprotected' => 'Вы ня маеце правоў на рэдагаваньне гэтай старонкі JavaScript, таму што яна ўтрымлівае пэрсанальныя налады іншага ўдзельніка.',
+'mycustomcssprotected' => 'Вы ня маеце дазволу рэдагаваць гэтую CSS-старонку.',
+'mycustomjsprotected' => 'Вы ня маеце дазволу рэдагаваць гэтую JavaScript-старонку.',
'ns-specialprotected' => 'Немагчыма рэдагаваць спэцыяльныя старонкі.',
'titleprotected' => "Стварэньне старонкі з такой назвай было забароненае ўдзельнікам [[User:$1|$1]].
Прычына забароны: ''$2''.",
'createacct-yourpasswordagain' => 'Пацьвердзіце пароль',
'createacct-yourpasswordagain-ph' => 'Увядзіце пароль зноў',
'remembermypassword' => 'Запомніць мяне на гэтым кампутары (ня больш за $1 {{PLURAL:$1|дзень|дні|дзён}})',
-'userlogin-remembermypassword' => 'Ð\97апамÑ\8fÑ\82аць мяне',
+'userlogin-remembermypassword' => 'Ð\97апомнÑ\96ць мяне',
'userlogin-signwithsecure' => 'Скарыстацца бясьпечным злучэньнем',
'securelogin-stick-https' => 'Утрымліваць злучэньне праз HTTPS пасьля ўваходу ў сыстэму',
'yourdomainname' => 'Ваш дамэн:',
'cannotchangeemail' => 'Электронная пошта рахунку ня можа быць зьмененая ў {{GRAMMAR:месны|{{SITENAME}}}}.',
'emaildisabled' => 'Гэты сайт ня можа адсылаць электронныя лісты.',
'accountcreated' => 'Рахунак створаны',
-'accountcreatedtext' => 'Рахунак удзельніка для $1 быў створаны.',
+'accountcreatedtext' => 'Рахунак {{GENDER:$1|удзельніка|удзельніцы}} [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|гутаркі]]) быў створаны.',
'createaccount-title' => 'Стварэньне рахунку ў {{GRAMMAR:месны|{{SITENAME}}}}',
'createaccount-text' => 'Нехта стварыў рахунак «$2» у {{GRAMMAR:месны|{{SITENAME}}}} ($4) для Вашага адрасу электроннай пошты. Пароль для гэтага рахунку — «$3». Вам трэба ўвайсьці і зьмяніць Ваш пароль зараз.
# Special:PasswordReset
'passwordreset' => 'Ачыстка паролю',
-'passwordreset-text' => 'Запоўніце гэтую форму, каб скінуць пароль.',
+'passwordreset-text-one' => 'Запоўніце гэтую форму, каб скінуць пароль.',
+'passwordreset-text-many' => '{{PLURAL:$1|Увядзіце гэтыя зьвесткі, каб скінуць пароль.}}',
'passwordreset-legend' => 'Ачысьціць пароль',
'passwordreset-disabled' => 'Магчымасьць ачысткі паролю была забароненая ў {{GRAMMAR:месны|{{SITENAME}}}}.',
'passwordreset-emaildisabled' => 'Функцыі e-mail у гэтай вікі былі адключаныя.',
-'passwordreset-pretext' => '{{PLURAL:$1||Увядзіце ніжэй частку зьвестак}}',
'passwordreset-username' => 'Імя ўдзельніка:',
'passwordreset-domain' => 'Дамэн:',
'passwordreset-capture' => 'Паказаць канчатковы электронны ліст?',
Падобна, што яна была выдаленая.',
'edit-conflict' => 'Канфлікт рэдагаваньняў.',
'edit-no-change' => 'Вашае рэдагаваньне было праігнараванае, таму што ў тэкст не былі ўнесеныя зьмены.',
+'postedit-confirmation' => 'Вашая праўка была захаваная.',
'edit-already-exists' => 'Немагчыма стварыць новую старонку.
Яна ўжо існуе.',
'defaultmessagetext' => 'Перадвызначаны тэкст паведамленьня',
'content-failed-to-parse' => 'Зьмест «$2» не адпавядае тыпу $1: $3.',
'invalid-content-data' => 'Няслушныя зьвесткі',
'content-not-allowed-here' => 'Зьмест тыпу «$1» на старонцы [[$2]] не дазволены',
-'editwarning-warning' => 'УÑ\81е зÑ\80обленÑ\8bÑ\8f Ð\92амÑ\96 зÑ\8cменÑ\8b могÑ\83Ñ\86Ñ\8c бÑ\8bÑ\86Ñ\8c Ñ\81Ñ\82Ñ\80аÑ\87анÑ\8bÑ\8f, калÑ\96 Ð\92Ñ\8b пакÑ\96неÑ\86е гÑ\8dÑ\82Ñ\83Ñ\8e Ñ\81Ñ\82аÑ\80онкÑ\83.
-Ð\9aалÑ\96 Ð\92Ñ\8b Ñ\9eвайÑ\88лÑ\96 Ñ\9e Ñ\81Ñ\8bÑ\81Ñ\82Ñ\8dмÑ\83, Ð\92Ñ\8b можаÑ\86е адклÑ\8eÑ\87Ñ\8bÑ\86Ñ\8c гÑ\8dÑ\82ае папÑ\8fÑ\80Ñ\8dджанÑ\8cне Ñ\83 Ñ\81Ñ\8dкÑ\86Ñ\8bÑ\96 «{{int:prefs-editing}}» Ð\92ашых наладаў.',
+'editwarning-warning' => 'Ð\9fакÑ\96нÑ\83Ñ\9eÑ\88Ñ\8b гÑ\8dÑ\82Ñ\83Ñ\8e Ñ\81Ñ\82аÑ\80онкÑ\83, вÑ\8b можаÑ\86е Ñ\81Ñ\82Ñ\80аÑ\86Ñ\96Ñ\86Ñ\8c Ñ\83Ñ\81е Ñ\9eнеÑ\81енÑ\8bÑ\8f зÑ\8cменÑ\8b.
+Ð\9aалÑ\96 вÑ\8b Ñ\9eвайÑ\88лÑ\96 Ñ\9e Ñ\81Ñ\8bÑ\81Ñ\82Ñ\8dмÑ\83, Ð\92Ñ\8b можаÑ\86е адклÑ\8eÑ\87Ñ\8bÑ\86Ñ\8c гÑ\8dÑ\82ае папÑ\8fÑ\80Ñ\8dджанÑ\8cне Ñ\9e Ñ\81Ñ\8dкÑ\86Ñ\8bÑ\96 «РÑ\8dдагаванÑ\8cне» вашых наладаў.',
# Content models
'content-model-wikitext' => 'вікі-тэкст',
'searchmenu-legend' => 'Налады пошуку',
'searchmenu-exists' => "* Старонка '''[[$1]]'''",
'searchmenu-new' => "'''Стварыць старонку «[[:$1|$1]]» у {{GRAMMAR:месны|{{SITENAME}}}}!'''",
-'searchhelp-url' => 'Help:Зьмест',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Праглядзець старонкі з гэтым прэфіксам]]',
'searchprofile-articles' => 'Старонкі са зьместам',
'searchprofile-project' => 'Старонкі дапамогі і праекту',
'userrights-changeable-col' => 'Групы, якія Вы можаце мяняць',
'userrights-unchangeable-col' => 'Групы, якія Вы ня можаце мяняць',
'userrights-conflict' => 'Канфлікт правоў удзельнікаў! Калі ласка, захавайце зьмены яшчэ раз.',
+'userrights-removed-self' => 'Вы пасьпяхова пазбавілі сябе ўласных правоў. З гэтай прычыны вы больш ня маеце доступу да гэтай старонкі.',
# Groups
'group' => 'Група:',
'right-editusercssjs' => 'рэдагаваньне CSS і JS файлаў іншых удзельнікаў',
'right-editusercss' => 'рэдагаваньне CSS файлаў іншых удзельнікаў',
'right-edituserjs' => 'рэдагаваньне JS файлаў іншых удзельнікаў',
+'right-editmyusercss' => 'рэдагаваць уласныя карыстальніцкія CSS-файлы',
+'right-editmyuserjs' => 'рэдагаваць уласныя карыстальніцкія JavaScript-файлы',
+'right-viewmywatchlist' => 'праглядаць уласны сьпіс назіраньня',
+'right-editmywatchlist' => 'рэдагаваць уласны сьпіс назіраньня (некаторыя дзеяньні будуць дадаваць туды старонкі нават бяз гэтага права)',
'right-rollback' => 'хуткі адкат правак апошняга ўдзельніка, які рэдагаваў старонку',
'right-markbotedits' => 'пазначэньне адкатаў як рэдагаваньне робатам',
'right-noratelimit' => 'няма абмежаваньняў па хуткасьці',
'action-userrights-interwiki' => 'рэдагаваньне правоў удзельнікаў у іншых вікі',
'action-siteadmin' => 'блякаваньне і разблякаваньне базы зьвестак',
'action-sendemail' => 'адпраўляць лісты іншым удзельнікам',
+'action-editmywatchlist' => 'рэдагаваць ваш сьпіс назіраньня',
+'action-viewmywatchlist' => 'праглядаць ваш сьпіс назіраньня',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|зьмена|зьмены|зьменаў}}',
'reuploaddesc' => 'Скасаваць загрузку і вярнуцца да формы загрузкі',
'upload-tryagain' => 'Даслаць зьмененае апісаньне файла',
'uploadnologin' => 'Вы не ўвайшлі ў сыстэму',
-'uploadnologintext' => 'Вам трэба [[Special:UserLogin|ўвайсьці ў сыстэму]] для загрузкі файлаў.',
+'uploadnologintext' => 'Вам трэба $1, каб загружаць файлы.',
'upload_directory_missing' => 'Загрузачная дырэкторыя ($1) адсутнічае і ня можа быць створаная сэрвэрам.',
'upload_directory_read_only' => 'Сэрвэр ня мае правоў на запіс у дырэкторыю загружаных файлаў ($1).',
'uploaderror' => 'Памылка загрузкі',
'upload-proto-error-text' => 'Аддаленая загрузка файлаў патрабуе URL-адрас, які пачынаецца з <code>http://</code> альбо <code>ftp://</code>.',
'upload-file-error' => 'Унутраная памылка',
'upload-file-error-text' => 'Адбылася ўнутраная памылка пад час спробы стварыць часовы файл на сэрвэры.
-Калі ласка, зьвярніцеся да [[Special:ListUsers/sysop|сыстэмнага адміністратара]].',
+Калі ласка, зьвярніцеся да [[Special:ListUsers/sysop|адміністратара]].',
'upload-misc-error' => 'Невядомая памылка загрузкі',
'upload-misc-error-text' => 'Адбылася невядомая памылка пад час загрузкі.
Калі ласка, упэўніцеся, што URL-адрас слушны, і паспрабуйце ізноў.
-Калі памылка паўтарыцца, зьвярніцеся да [[Special:ListUsers/sysop|сыстэмнага адміністратара]].',
+Калі памылка паўтарыцца, зьвярніцеся да [[Special:ListUsers/sysop|адміністратара]].',
'upload-too-many-redirects' => 'URL-адрас утрымлівае зашмат перанакіраваньняў',
'upload-unknown-size' => 'Невядомы памер',
'upload-http-error' => 'Узьнікла памылка HTTP: $1',
'notvisiblerev' => 'Вэрсія была выдаленая',
'watchnochange' => 'Нічога з Вашага сьпісу назіраньня не зьмянілася за паказаны пэрыяд.',
'watchlist-details' => 'У Вашым сьпісе назіраньня $1 {{PLURAL:$1|старонка|старонкі|старонак}} за выключэньнем старонак абмеркаваньня.',
-'wlheader-enotif' => '* Дасылка паведамленьняў па электроннай пошце ўключаная.',
-'wlheader-showupdated' => "* Старонкі, якія былі зьмененыя пасьля Вашага апошняга візыту, вылучаныя '''тоўстым''' шрыфтам",
+'wlheader-enotif' => 'Апавяшчэньне па e-mail уключанае.',
+'wlheader-showupdated' => "Старонкі, зьмененыя з часу вашага апошняга візыту, вылучаныя '''тоўстым''' шрыфтам.",
'watchmethod-recent' => 'прагляд апошніх зьменаў у старонках са сьпісу назіраньня',
'watchmethod-list' => 'прагляд старонак са сьпісу назіраньня дзеля апошніх зьменах',
'watchlistcontains' => 'Ваш сьпіс назіраньня зьмяшчае $1 {{PLURAL:$1|старонка|старонкі|старонак}}.',
'mycontris' => 'Унёсак',
'contribsub2' => 'Для $1 ($2)',
'nocontribs' => 'Ня знойдзена зьменаў, якія адпавядаюць гэтым крытэрыям.',
-'uctop' => ' (апошняя)',
+'uctop' => '(апошняя)',
'month' => 'Ад месяца (і раней):',
'year' => 'Ад году (і раней):',
'thumbnail-more' => 'Павялічыць',
'filemissing' => 'Файл адсутны',
'thumbnail_error' => 'Памылка стварэньня мініятуры: $1',
+'thumbnail_error_remote' => 'Паведамленьне пра памылку з {{GRAMMAR:родны|$1}}:
+$2',
'djvu_page_error' => 'Старонка DjVu па-за прамежкам',
'djvu_no_xml' => 'Немагчыма атрымаць XML для DjVu-файла',
'thumbnail-temp-create' => 'Немагчыма стварыць часовы файл мініятуры',
* @author DCLXVI
* @author Daggerstab
* @author Dimi z
+ * @author Geitost
* @author Kaganer
+ * @author Simona
* @author Spiritia
* @author Stanqo
* @author Termininja
'oct' => 'окт',
'nov' => 'ное',
'dec' => 'дек',
+'january-date' => '$1 януари',
+'february-date' => '$1 февруари',
+'march-date' => '$1 март',
+'april-date' => '$1 април',
+'may-date' => '$1 май',
+'june-date' => '$1 юни',
+'july-date' => '$1 юли',
+'august-date' => '$1 август',
+'september-date' => '$1 септември',
+'october-date' => '$1 октомври',
+'november-date' => '$1 ноември',
+'december-date' => '$1 декември',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категория|Категории}}',
'disclaimers' => 'Условия за ползване',
'disclaimerpage' => 'Project:Условия за ползване',
'edithelp' => 'Помощ при редактиране',
-'edithelppage' => 'Help:Редактиране',
'helppage' => 'Help:Съдържание',
'mainpage' => 'Начална страница',
'mainpage-description' => 'Начална страница',
'namespaceprotected' => "Нямате права за редактиране на страници в именно пространство '''$1'''.",
'customcssprotected' => 'Нямате права за редактиране на тази CSS страница, защото тя съдържа чужди потребителски настройки.',
'customjsprotected' => 'Нямате права за редактиране на тази Джаваскрипт страница, защото тя съдържа чужди потребителски настройки.',
+'mycustomcssprotected' => 'Нямате права за редактиране на тази CSS страница.',
+'mycustomjsprotected' => 'Нямате права за редактиране на тази JavaScript страница.',
'ns-specialprotected' => 'Специалните страници не могат да бъдат редактирани.',
'titleprotected' => "Тази страница е била защитена срещу създаване от [[User:$1|$1]].
Посочената причина е ''$2''.",
'logout' => 'Излизане',
'userlogout' => 'Излизане',
'notloggedin' => 'Не сте влезли',
-'nologin' => "Нямате потребителско име? '''$1'''.",
+'userlogin-noaccount' => 'Нямате сметка?',
+'userlogin-joinproject' => 'Присъединяване към {{SITENAME}}',
+'nologin' => 'Нямате потребителско име? $1.',
'nologinlink' => 'Създаване на сметка',
'createaccount' => 'Регистриране',
'gotaccount' => "Имате ли вече сметка? '''$1'''.",
'gotaccountlink' => 'Влизане',
'userlogin-resetlink' => 'Забравени данни за влизане в системата?',
+'userlogin-resetpassword-link' => 'Възстановяване на паролата',
'createacct-emailrequired' => 'Адрес за електронна поща',
+'createacct-emailoptional' => 'Адрес за електронна поща (незадължително)',
'createaccountmail' => 'Използване на временна парола, която се изпраща по електронната поща, посочена по-долу',
'createaccountreason' => 'Причина:',
'createacct-reason' => 'Причина',
'createacct-imgcaptcha-ph' => 'Въведете текста, който виждате по-горе',
+'createacct-submit' => 'Създаване на сметката',
+'createacct-benefit-heading' => '{{SITENAME}} се създава от хора като вас.',
+'createacct-benefit-body2' => '{{PLURAL:$1|страница|страници}}',
'badretype' => 'Въведените пароли не съвпадат.',
'userexists' => 'Въведеното потребителско име вече се използва.
Изберете друго име.',
'cannotchangeemail' => 'Адресите за електронна поща на сметките не могат да бъдат променяни в това уики.',
'emaildisabled' => 'Този сайт не може да изпраща е-поща.',
'accountcreated' => 'Потребителската сметка беше създадена',
-'accountcreatedtext' => 'Потребителската сметка за $1 беше създадена.',
+'accountcreatedtext' => 'Потребителската сметка [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|беседа]]) беше създадена.',
'createaccount-title' => 'Създаване на сметка за {{SITENAME}}',
'createaccount-text' => 'Някой е създал сметка за $2 в {{SITENAME}} ($4) и е посочил този адрес за електронна поща. Паролата за „$2“ е „$3“. Необходимо е да влезете в системата и да смените паролата си.
# Special:PasswordReset
'passwordreset' => 'Възстановяване на парола',
-'passwordreset-text' => 'Попълването на формуляра ще доведе до възстановяване на паролата.',
'passwordreset-legend' => 'Възстановяване на парола',
'passwordreset-disabled' => 'Възстановяването на паролата е изключено в това уики.',
-'passwordreset-pretext' => '{{PLURAL:$1||Въведете някоя от информациите по-долу}}',
'passwordreset-username' => 'Потребителско име:',
'passwordreset-domain' => 'Домейн:',
'passwordreset-capture' => 'Преглеждане на електронното писмо?',
Вероятно междувременно е била изтрита.',
'edit-conflict' => 'Редакционен конфликт.',
'edit-no-change' => 'Вашата редакция беше игнорирана, тъй като не съдържа промени по текста.',
+'postedit-confirmation' => 'Вашата редакция беше съхранена',
'edit-already-exists' => 'Не можа да се създаде нова страница.
Такава вече съществува.',
'defaultmessagetext' => 'Текст на съобщението по подразбиране',
'searchmenu-legend' => 'Настройки на търсенето',
'searchmenu-exists' => "'''Съществува страница с името „[[:$1]]“ в това уики.'''",
'searchmenu-new' => "'''Създаване на страницата „[[:$1]]“ в това уики!'''",
-'searchhelp-url' => 'Help:Съдържание',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Преглеждане на страниците с тази представка]]',
'searchprofile-articles' => 'Съдържателни страници',
'searchprofile-project' => 'Помощни и проектни страници',
'notvisiblerev' => 'Версията беше изтрита',
'watchnochange' => 'Никоя от наблюдаваните страници не е била редактирана в показаното време.',
'watchlist-details' => '{{PLURAL:$1|Една наблюдавана страница|$1 наблюдавани страници}} от списъка ви за наблюдение (без беседи).',
-'wlheader-enotif' => '* Известяването по електронна поща е включено.',
-'wlheader-showupdated' => "* Страниците, които са били променени след последния път, когато сте ги посетили, са показани с '''получер''' шрифт.",
+'wlheader-enotif' => 'Известяването по електронна поща е включено.',
+'wlheader-showupdated' => "Страниците, които са били променени след последния път, когато сте ги посетили, са показани с '''получер''' шрифт.",
'watchmethod-recent' => 'проверка на последните редакции за наблюдавани страници',
'watchmethod-list' => 'проверка на наблюдаваните страници за скорошни редакции',
'watchlistcontains' => 'Списъкът ви за наблюдение съдържа {{PLURAL:$1|една страница|$1 страници}}.',
'disclaimers' => 'अस्विकरण',
'disclaimerpage' => 'Project:सामान्य अस्विकरण',
'edithelp' => 'मदद सम्पादन',
-'edithelppage' => 'Help:सम्पादन',
'helppage' => 'Help:सामग्री',
'mainpage' => 'मुख्य पन्ना',
'mainpage-description' => 'पहिलका पन्ना',
'searchmenu-legend' => 'खोज विकल्प',
'searchmenu-exists' => "'''इ विकि पर ''[[:$1]]'' नाम से एगो पन्ना उपलब्ध बा'''",
'searchmenu-new' => "'''इ विकि पर ''[[:$1]]'' नाम से पन्ना बनाईं'''",
-'searchhelp-url' => 'Help:सामग्री',
'searchmenu-prefix' => '[[विशेष:उपसर्ग सूची/$1|इ उपसर्ग साथे पन्ना ब्राउज करीं]]',
'searchprofile-articles' => 'सामग्री पन्ना',
'searchprofile-project' => 'मदद आ परियोजना पन्ना',
'disclaimers' => 'Panyangkalan',
'disclaimerpage' => 'Project:Panyangkalan umum',
'edithelp' => 'Patulung mambabak',
-'edithelppage' => 'Help:Pambabakan',
'helppage' => 'Help:Isi',
'mainpage' => 'Tungkaran Tatambaian',
'mainpage-description' => 'Tungkaran Tatambaian',
# Special:PasswordReset
'passwordreset' => 'Bulikakan setelan katasunduk',
-'passwordreset-text' => 'Tuntungakan purmulir ngini gasan manarima sabuting suril pangingat rarincian akun Pian.',
'passwordreset-legend' => 'Bulikakan setelan katasunduk',
'passwordreset-disabled' => 'Mambulikakan setelan katasunduk dipajahakan hagan wiki ngini.',
-'passwordreset-pretext' => '{{PLURAL:$1||Buati asa data di bawah ngini}}',
'passwordreset-username' => 'Ngaran pamakai:',
'passwordreset-domain' => 'Dumain:',
'passwordreset-capture' => 'Tiringikah kulihan suril?',
'searchmenu-legend' => 'Papilihan manggagai',
'searchmenu-exists' => "'''Ada tungkaran bangaran \"[[:\$1]]\" dalam wiki ini.'''",
'searchmenu-new' => "'''Maulah tungkaran \"[[:\$1]]\" dalam wiki ngini!'''",
-'searchhelp-url' => 'Help:Isi',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Janaki daptar tungkaran lawan awalan ngini]]',
'searchprofile-articles' => 'Tungkaran isi',
'searchprofile-project' => 'Tutungkaran Patulung wan Rangka gawian',
'listusers-noresult' => 'Kadada pamuruk tatamu.',
'listusers-blocked' => '(diblukir)',
+# Special:ActiveUsers
+'activeusers' => 'Daptar pamuruk aktip',
+'activeusers-intro' => 'Ngini adalah sabuah daptar papamuruk sabuah bantuk kagiatan dalam tauncit $1 {{PLURAL:$1|hari|hahari}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|babak|babakan}} dalam tauncit {{PLURAL:$3|hari|$3 hahari}}',
+'activeusers-from' => 'Manampaiakan papamuruk mulai matan:',
+'activeusers-hidebots' => 'Sungkupakan bot',
+'activeusers-hidesysops' => 'Sungkupakan pambakal',
+'activeusers-noresult' => 'Kadada papamuruk tatamu.',
+
# Special:ListGroupRights
'listgrouprights' => 'Galambang hak pamuruk',
'listgrouprights-summary' => 'Barikut adalah sabuah daptar matan galambang pamuruk nang ada di wiki ngini, lawan hak ungkai masing-masing.
'watchnochange' => 'Kadada nang Pian itihi dibabak parhatan jangka wayah ngitu.',
'watchlist-details' => '{{PLURAL:$1|$1 tungkaran|$1 tungkaran}} dalam daptar itihan Pian, kada mahitung tungkaran pamandiran.',
'wlheader-enotif' => 'Suril pamadahan dipajahi.',
-'wlheader-showupdated' => "* Tutungkaran nang ba-ubah tumatan ilangan tauncit Pian ditampaiakan dalam '''hurup kandal'''",
+'wlheader-showupdated' => "Tutungkaran nang ba-ubah tumatan ilangan tauncit Pian ditampaiakan dalam '''hurup kandal'''",
'watchmethod-recent' => 'pariksa bababakan pahanyarnya gasan tungkaran nang diitihi.',
'watchmethod-list' => 'pariksa tutungkaran nang diitihi gasan bababakan pahanyarnya',
'watchlistcontains' => 'Paitihan Pian mangandung $1 {{PLURAL:$1|tungkaran|tutungkaran}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Libar',
'exif-imagelength' => 'Pancau',
'exif-bitspersample' => 'Bit par kumpunin',
'exif-originalimageheight' => 'Pancau gambar sabalum dihandapi',
'exif-originalimagewidth' => 'Lingai gambar sabalum dihandapi',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Kada dikumpris',
'exif-compression-2' => 'Galambang CCITT 3 1-Dimensional Modified Huffman manjalankan panjang encoding',
'exif-compression-3' => 'Galambang CCITT 3 paks encoding',
'version-software-version' => 'Virsi',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Wadah barakas',
-'filepath-page' => 'Barakas:',
-'filepath-submit' => 'Gagai',
-'filepath-summary' => 'Tungkaran istimiwa ngini mambulikakan jalur panuntungan sabuah barakas.
-Gambar ditampaiakan dalam risulusi hibak, janis barakas lain dimula lawan prugram taraitnya langsung.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Gagai gasan babarakas baganda',
'fileduplicatesearch-summary' => 'Gagai gasan babarakas baganda bapandal nilai hash.',
'tog-newpageshidepatrolled' => 'পরীক্ষিত পাতা গুলো নতুন পাতার তালিকায় আড়াল করো',
'tog-extendwatchlist' => 'শুধু সাম্প্রতিক পরিবর্তনই নয়, সকল পরিবর্তন দেখতে নজর তালিকা সম্প্রসারণ করুন।',
'tog-usenewrc' => 'সাম্প্রতিক পরিবর্তনসমূহ এবং নজরতালিকা পাতায় পরিবর্তনগুলো একত্রে প্রদর্শন (জাভাস্ক্রিপ্ট প্রয়োজন)',
-'tog-numberheadings' => 'শিরà§\8bনামà¦\97à§\81লà§\8bà¦\95à§\87 সà§\8dবয়à¦\82à¦\95à§\8dরিয়à¦à¦¾à¦¬à§\87 à¦\95à§\8dরমাà¦\99à§\8dà¦\95িত à¦\95রা হà§\8bà¦\95',
-'tog-showtoolbar' => 'সমà§\8dপাদনা à¦\9fà§\81লবার দà§\87à¦\96ানà§\8b হà§\8bà¦\95 (à¦\9cাà¦à¦¾à¦¸à§\8dà¦\95à§\8dরিপà§\8dà¦\9fà§\87র মাধà§\8dযমà§\87)',
-'tog-editondblclick' => 'দুইবার ক্লিক করে পাতা সম্পাদনা করার ক্ষমতা দেয়া হোক (জাভাস্ক্রিপ্টের মাধ্যমে)',
+'tog-numberheadings' => 'শিরà§\8bনামà¦\97à§\81লà§\8bà¦\95à§\87 সà§\8dবয়à¦\82à¦\95à§\8dরিয়à¦à¦¾à¦¬à§\87 à¦\95à§\8dরমিà¦\95 নমà§\8dবর দাà¦\93',
+'tog-showtoolbar' => 'সমà§\8dপাদনা à¦\9fà§\81লবার দà§\87à¦\96াà¦\93 (à¦\9cাà¦à¦¾à¦¸à§\8dà¦\95à§\8dরিপà§\8dà¦\9f পà§\8dরয়à§\8bà¦\9cন)',
+'tog-editondblclick' => 'দুইবার ক্লিক করে পাতা সম্পাদনা (জাভাস্ক্রিপ্ট প্রয়োজন)',
'tog-editsection' => '[সম্পাদনা] সংযোগের সাহায্যে পরিচ্ছেদ সম্পাদনা করার ক্ষমতা দেয়া হোক',
-'tog-editsectiononrightclick' => 'পরিচ্ছেদের শিরোনামে ডান ক্লিকের মাধ্যমে <br />পরিচ্ছেদ সম্পাদনা করার ক্ষমতা দেয়া হোক (জাভাস্ক্রিপ্ট)',
+'tog-editsectiononrightclick' => 'পরিচ্ছেদের শিরোনামে ডান ক্লিকের মাধ্যমে সম্পাদনা করার ক্ষমতা দেয়া হোক (জাভাস্ক্রিপ্ট)',
'tog-showtoc' => 'সূচিপত্র দেখানো হোক (৩টির বেশি পরিচ্ছেদের শিরোনামবিশিষ্ট পাতার জন্য)',
'tog-rememberpassword' => 'এই ব্রাউজারে আমার লগ ইন তথ্য (শব্দচাবি) মনে রাখো (সর্বোচ্চ $1 {{PLURAL:$1|দিনের|দিনের}} জন্য)',
'tog-watchcreations' => 'আমার তৈরি পাতা এবং আপলোড করা ফাইলগুললো আমার নজরতালিকায় যোগ করা হোক',
'thursday' => 'বৃহস্পতিবার',
'friday' => 'শুক্রবার',
'saturday' => 'শনিবার',
-'sun' => 'রবিবার',
-'mon' => 'সোমবার',
-'tue' => 'মঙ্গলবার',
-'wed' => 'বুধবার',
-'thu' => 'বৃহস্পতিবার',
-'fri' => 'শুক্রবার',
-'sat' => 'শনিবার',
+'sun' => 'রবি',
+'mon' => 'সোম',
+'tue' => 'মঙ্গল',
+'wed' => 'বুধ',
+'thu' => 'বৃহস্পতি',
+'fri' => 'শুক্র',
+'sat' => 'শনি',
'january' => 'জানুয়ারি',
'february' => 'ফেব্রুয়ারি',
'march' => 'মার্চ',
'october-gen' => 'অক্টোবর',
'november-gen' => 'নভেম্বর',
'december-gen' => 'ডিসেম্বর',
-'jan' => 'জানুয়ারি',
-'feb' => 'ফেব্রুয়ারি',
+'jan' => 'জানু',
+'feb' => 'ফেব্রু',
'mar' => 'মার্চ',
'apr' => 'এপ্রিল',
'may' => 'মে',
'jun' => 'জুন',
'jul' => 'জুলাই',
'aug' => 'আগস্ট',
-'sep' => 'সেপ্টেম্বর',
-'oct' => 'অক্টোবর',
-'nov' => 'নভেম্বর',
-'dec' => 'ডিসেম্বর',
+'sep' => 'সেপ্টে',
+'oct' => 'অক্টো',
+'nov' => 'নভে',
+'dec' => 'ডিসে',
+'january-date' => 'জানুয়ারি $1',
+'february-date' => 'ফেব্রুয়ারি $1',
+'march-date' => 'মার্চ $1',
+'april-date' => 'এপ্রিল $1',
+'may-date' => 'মে $1',
+'june-date' => 'জুন $1',
+'july-date' => 'জুলাই $1',
+'august-date' => 'আগস্ট $1',
+'september-date' => 'সেপ্টেম্বর $1',
+'october-date' => 'অক্টোবর $1',
+'november-date' => 'নভেম্বর $1',
+'december-date' => 'ডিসেম্বর $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|বিষয়শ্রেণী|বিষয়শ্রেণীসমূহ}}',
'and' => ' এবং',
# Cologne Blue skin
-'qbfind' => 'অনুসন্ধান করুন',
+'qbfind' => 'অনুসন্ধান',
'qbbrowse' => 'ব্রাউজ',
'qbedit' => 'সম্পাদনা',
-'qbpageoptions' => 'এ পাতার বিকল্পসমূহ',
-'qbmyoptions' => 'à¦\86মার পà¦\9bনà§\8dদ',
+'qbpageoptions' => 'এই পাতা',
+'qbmyoptions' => 'à¦\86মার পাতাসমà§\82হ',
'qbspecialpages' => 'বিশেষ পাতাসমূহ',
'faq' => 'সম্ভাব্য প্রশ্নসমূহ',
'faqpage' => 'Project:প্রাজিপ্র',
'vector-action-undelete' => 'পুনরুদ্ধার',
'vector-action-unprotect' => 'সুরক্ষা পরিবর্তন',
'vector-simplesearch-preference' => 'সরল অনুসন্ধান সক্রিয় করুন (শুধুমাত্র ভেক্টর স্কিনের জন্য)',
-'vector-view-create' => 'তৈরি করুন',
+'vector-view-create' => 'তৈরি',
'vector-view-edit' => 'সম্পাদনা',
'vector-view-history' => 'ইতিহাস',
'vector-view-view' => 'পড়ুন',
'navigation-heading' => 'পরিভ্রমণ মেনু',
'errorpagetitle' => 'ত্রুটি',
-'returnto' => '$1 শিরà§\8bনামà§\87র পাতায় ফà§\87রত যান।',
+'returnto' => '$1 পাতায় ফেরত যান।',
'tagline' => '{{SITENAME}} থেকে',
'help' => 'সাহায্য',
'search' => 'অনুসন্ধান',
'print' => 'মুদ্রণ',
'view' => 'দেখাও',
'edit' => 'সম্পাদনা',
-'create' => 'তৈরি করো',
+'create' => 'তৈরি',
'editthispage' => 'সম্পাদনা করুন',
'create-this-page' => 'পাতাটি তৈরি করো',
'delete' => 'অপসারণ',
'deletethispage' => 'এই পাতাটি মুছে ফেলুন',
+'undeletethispage' => 'এই পাতাটি মুছো না',
'undelete_short' => 'পুনঃস্থাপন {{PLURAL:$1|১টি সম্পাদনা|$1টি সম্পাদনাসমূহ}}',
'viewdeleted_short' => '{{PLURAL:$1| টি অপসারিত সম্পাদনা|$1 টি অপসারিত সম্পাদনা}} দেখাও',
'protect' => 'সুরক্ষা',
'talkpage' => 'আলোচনা করুন',
'talkpagelinktext' => 'আলোচনা',
'specialpage' => 'বিশেষ পাতা',
-'personaltools' => 'নিà¦\9cসà§\8dব হাতিয়ারসমূহ',
+'personaltools' => 'নিà¦\9cসà§\8dব সরà¦\9eà§\8dà¦\9cামসমূহ',
'postcomment' => 'নতুন অনুচ্ছেদ',
'articlepage' => 'নিবন্ধ দেখুন',
'talk' => 'আলোচনা',
'disclaimers' => 'দাবিত্যাগ',
'disclaimerpage' => 'Project:সাধারণ দাবিত্যাগ',
'edithelp' => 'সম্পাদনা সহায়িকা',
-'edithelppage' => 'Help:কিভাবে একটি পাতা সম্পাদনা করবেন',
'helppage' => 'Help:সূচী',
'mainpage' => 'প্রধান পাতা',
'mainpage-description' => 'প্রধান পাতা',
'namespaceprotected' => "'''$1''' নামস্থানে কোন পাতা আপনার সম্পাদনা করার অনুমতি নেই।",
'customcssprotected' => 'আপনার এই সিএসএস পাতাটি সম্পাদনা করার অনুমতি নেই, কারণ এ পাতায় অন্য ব্যবহারকারীর নিজস্ব সেটিংস রয়েছে।',
'customjsprotected' => 'আপনার এই জাভাস্ক্রিপ্ট পাতাটি সম্পাদনা করার অনুমতি নেই, কারণ এ পাতায় অন্য ব্যবহারকারীর নিজস্ব সেটিংস রয়েছে।',
+'mycustomcssprotected' => 'আপনার এই সিএসএস পাতাটি সম্পাদনা করার অনুমতি নেই।',
+'mycustomjsprotected' => 'আপনার এই জাভাস্ক্রিপ্ট পাতাটি সম্পাদনা করার অনুমতি নেই।',
'ns-specialprotected' => '{{ns:special}} নামস্থানে পাতাসমূহ সম্পাদনা করা যাবে না।',
'titleprotected' => "[[User:$1|$1]]-কে এই শিরোনামের পাতা সৃষ্টি করতে বাধা দেয়া হচ্ছে। কারণ: ''$2''।",
'filereadonlyerror' => '"$1" ফাইলটিকে পরিবর্তন করা সম্ভব হচ্ছে না কারন "$2" ফাইল রিপোসিটোরি রিড-অনলি-মোডে আছে।
'createacct-yourpasswordagain-ph' => 'আবারও শব্দচাবি প্রদান করুন',
'remembermypassword' => 'একাধিক সেশনের জন্য শব্দচাবি মনে রাখা হোক (সর্বোচ্চ $1 {{PLURAL:$1|দিনের|দিনের}} জন্য)',
'userlogin-remembermypassword' => 'আমাকে প্রবেশ অবস্থায় রাখো',
-'userlogin-signwithsecure' => 'নিরাপদ সারà§\8dà¦à¦¾à¦°à§\87র ব্যবহার করুন',
+'userlogin-signwithsecure' => 'নিরাপদ সà¦\82যà§\8bà¦\97 ব্যবহার করুন',
'securelogin-stick-https' => 'লগইনের পর এইচটিটিপিএস-এর সাথে সংযোগকৃত থাকুন',
'yourdomainname' => 'আপনার ডোমেইন',
'password-change-forbidden' => 'আপনি এই উইকিতে পাসওয়ার্ড পরিবর্তন করতে পারবেন না।',
'userlogout' => 'প্রস্থান',
'notloggedin' => 'আপনি সংযুক্ত নন',
'userlogin-noaccount' => 'কোনও অ্যাকাউন্ট নেই?',
-'userlogin-joinproject' => '{{SITENAME}}-à¦\8f à¦\85à¦\82শà¦\97à§\8dরহন à¦\95রà§\81ন',
+'userlogin-joinproject' => '{{SITENAME}}-à¦\8f যà§\8bà¦\97 দিন',
'nologin' => "আপনার কি উইকিপিডিয়াতে অ্যাকাউন্ট নেই? তাহলে '''$1'''।",
'nologinlink' => 'অ্যাকাউন্ট তৈরি করুন',
'createaccount' => 'নতুন অ্যাকাউন্ট খুলুন',
'gotaccount' => "আপনার কি ইতিমধ্যে একটি অ্যাকাউন্ট তৈরি করা আছে? '''$1''' করুন।",
'gotaccountlink' => 'প্রবেশ',
'userlogin-resetlink' => 'আপনার লগইনের বিস্তারিত তথ্যাদি ভুলে গেছেন?',
-'userlogin-resetpassword-link' => 'পাসà¦\93য়ারà§\8dড রিসà§\87à¦\9f করুন',
+'userlogin-resetpassword-link' => 'শবà§\8dদà¦\9aাবি পà§\81নরায় ধারà§\8dয করুন',
'helplogin-url' => 'Help:প্রবেশ',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|লগইন সংক্রান্ত সাহায্য]]',
'createacct-join' => 'আপনার সম্পর্কিত তথ্য নিচে যোগ করুন।',
'createacct-imgcaptcha-ph' => 'উপরে যে লেখা দেখতে পাচ্ছেন তা লিখুন',
'createacct-submit' => 'আপনার অ্যাকাউন্ট তৈরি করুন',
'createacct-benefit-heading' => '{{SITENAME}} আপনার মত লোকেরই তৈরি।',
-'createacct-benefit-body1' => '{{PLURAL:$1|সম্পাদনা}}',
-'createacct-benefit-body2' => '{{PLURAL:$1|পাতা|পাতাসমà§\82হ}}',
-'createacct-benefit-body3' => 'সাম্প্রতিক {{PLURAL:$1|অবদানকারী|অবদানকারীগণ}}',
+'createacct-benefit-body1' => '{{PLURAL:$1|à¦\9fি সমà§\8dপাদনা}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|à¦\9fি পাতা}}',
+'createacct-benefit-body3' => 'সাম্প্রতিক {{PLURAL:$1|অবদানকারী}}',
'badretype' => "আপনার প্রবেশ করানো শব্দচাবি'টি মিলছেনা।",
'userexists' => 'এই ব্যবহারকারী নামটি ইতমধ্যে ব্যবহার করা হয়েছে।
অনুগ্রহ করে অন্য নাম বেছে নিন।',
'cannotchangeemail' => 'একাউন্ট ইমেইল ঠিকানা এই উইকিতে পরিবর্তন করা যাবে না।',
'emaildisabled' => 'এই সাইটটিতে ই-মেইল প্রদানের সুবিধা নেই।',
'accountcreated' => 'অ্যাকাউন্ট তৈরি করা হয়েছে',
-'accountcreatedtext' => '$1 এর জন্য ব্যবহারকারী অ্যাকাউন্ট তৈরি করা হয়েছে।',
+'accountcreatedtext' => '[[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|আলাপ]]) এর জন্য ব্যবহারকারী অ্যাকাউন্ট তৈরি করা হয়েছে।',
'createaccount-title' => '{{SITENAME}}-এর জন্য অ্যাকাউন্ট সৃষ্টি',
'createaccount-text' => 'কেউ $2-এর জন্য {{SITENAME}}-এ একটি অ্যাকাউন্ট সৃষ্টি করেছেন ($4)। "$2"-এর জন্য শব্দচাবি হল "$3"। আপনার এখন অ্যাকাউন্টে প্রবেশ করে শব্দচাবি পরিবর্তন করা উচিত।
# Special:PasswordReset
'passwordreset' => 'শব্দচাবি রিসেট',
-'passwordreset-text' => 'আপনার শব্দচাবি বদলের জন্য নিচের ফর্মটি পূরণ করুন।',
+'passwordreset-text-one' => 'আপনার পাসওয়ার্ড পুনরায় সেট করতে এই ফর্মটি পূরণ করুন।',
+'passwordreset-text-many' => '{{PLURAL:$1|আপনার পাসওয়ার্ড রিসেট করতে এই তথ্যগুলোর যেকোন একটা প্রবেশ করান।}}',
'passwordreset-legend' => 'শব্দচাবি রিসেট',
'passwordreset-disabled' => 'এই উইকিতে শব্দচাবি রিসেটের সুবিধা নিষ্ক্রিয় রয়েছে।',
'passwordreset-emaildisabled' => 'এই উইকিতে ইমেইল অপশনটি বন্ধ করা হয়েছে।',
-'passwordreset-pretext' => '{{PLURAL:$1||নিচে উল্লেখিত ডেটাগুলোর কোনো একটি প্রবেশ করান}}',
'passwordreset-username' => 'ব্যবহারকারী নাম:',
'passwordreset-domain' => 'ডোমেইন:',
'passwordreset-capture' => 'অনুসন্ধানের ফলাফলের ইমেইল দেখুন?',
একাধিক ব্যবহারকারী এরকম একটি আইপি ঠিকানা ব্যবহার করতে পারেন।
আপনি যদি একজন বেনামী ব্যবহারকারী হয়ে থাকেন এবং যদি অনুভব করেন যে আপনার প্রতি অপ্রাসঙ্গিক মন্তব্য করা হয়েছে, তাহলে অন্যান্য বেনামী ব্যবহারকারীর সাথে ভবিষ্যতে বিভ্রান্তি এড়াতে অনুগ্রহ করে [[Special:UserLogin/signup|একটি অ্যাকাউন্ট তৈরি করুন]] অথবা [[Special:UserLogin|অ্যাকাউন্টে প্রবেশ করুন]]।''",
'noarticletext' => 'বর্তমানে এই পাতায় কোন লেখা নেই।
-আপনি চাইলে অন্যান্য পাতায় [[Special:Search/{{PAGENAME}}| এই শিরোনামটি অনুসন্ধান করতে পারেন]], <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} এ সম্পর্কিত লগ অনুসন্ধান করতে পারেন], কিংবা [{{fullurl:{{FULLPAGENAME}}|action=edit}} এই পাতাটি সম্পাদনা করতে পারেন]</span>।',
+আপনি চাইলে অন্যান্য পাতায় [[Special:Search/{{PAGENAME}}| এই শিরোনামটি অনুসন্ধান করতে পারেন]],
+<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} এ সম্পর্কিত লগ অনুসন্ধান করতে পারেন],
+কিংবা [{{fullurl:{{FULLPAGENAME}}|action=edit}} এই পাতাটি সম্পাদনা করতে পারেন]</span>।',
'noarticletext-nopermission' => 'বর্তমানে এই পাতায় কোন লেখা নেই।
আপনি চাইলে অন্য পাতায় [[Special:Search/{{PAGENAME}}| শিরোনামটি অনুসন্ধান করতে পারেন]], অথবা <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} সম্পর্কিত লগ অনুসন্ধান করতে পারেন]</span>, কিন্তু আপনার এই পাতাটি তৈরী করার অনুমতি নেই।',
'missing-revision' => '"{{PAGENAME}}" এর #$1তম সংস্করণটি প্রদর্শন সম্ভব নয়।
'cascadeprotectedwarning' => "'''সতর্কীকরণ:''' এই পাতাটি বন্ধ করা হয়েছে, যাতে কেবল প্রশাসকের ক্ষমতাবিশিষ্ট ব্যবহারকারীরা এটি সম্পাদনা করতে পারেন, কারণ এই পাতাটি নিচের প্রপাতাকারে সুরক্ষিত (cascade-protected) {{PLURAL:$1|টি পাতায়|টি পাতায়}} অন্তর্ভুক্ত আছে:",
'titleprotectedwarning' => "'''সতর্কীকরণ: এই পাতাটির ব্যবহার সীমিত করা হয়েছে, যাতে কেবলমাত্র [[Special:ListGroupRights|এই নির্দিষ্ট অনুমতিপ্রাপ্ত]] ব্যবহারকারী এটি তৈরি করতে পারেন।'''
আপনার সুবিধার্থে পাতাটির সাম্প্রতিক সংরক্ষণ লগের বিবরণ নিচে দেওয়া হলো।",
-'templatesused' => 'à¦\8fà¦\87 পাতায় বà§\8dযবহà§\83ত {{PLURAL:$1|à¦\9fà§\87মà§\8dপলà§\87à¦\9f|à¦\9fà§\87মà§\8dপলেটসমূহ}}:',
+'templatesused' => 'à¦\8fà¦\87 পাতায় বà§\8dযবহà§\83ত {{PLURAL:$1|à¦\9fà§\87মপà§\8dলà§\87à¦\9f|à¦\9fà§\87মপà§\8dলেটসমূহ}}:',
'templatesusedpreview' => 'এই প্রাকদর্শনে ব্যবহৃত {{PLURAL:$1|টেম্পলেট| টেম্পলেটসমূহ}}:',
-'templatesusedsection' => 'à¦\8fà¦\87 à¦\85নà§\81à¦\9aà§\8dà¦\9bà§\87দà§\87 বà§\8dযবহà§\83ত {{PLURAL:$1|à¦\9fà§\87মà§\8dপলà§\87à¦\9f|à¦\9fà§\87মà§\8dপলেটসমূহ}}:',
+'templatesusedsection' => 'à¦\8fà¦\87 à¦\85নà§\81à¦\9aà§\8dà¦\9bà§\87দà§\87 বà§\8dযবহà§\83ত {{PLURAL:$1|à¦\9fà§\87মপà§\8dলà§\87à¦\9f|à¦\9fà§\87মপà§\8dলেটসমূহ}}:',
'template-protected' => '(সুরক্ষিত)',
'template-semiprotected' => '(অর্ধ-সুরক্ষিত)',
'hiddencategories' => 'এ পাতাটি যে {{PLURAL:$1|1 লুকায়িত বিষয়শ্রেণীর|$1 লুকায়িত বিষয়শ্রেণীসমূহের}} সদস্য:',
সম্ভবতঃ পাতাটি মুছে ফেলা হয়েছে।',
'edit-conflict' => 'সম্পাদনা সংঘাত।',
'edit-no-change' => 'আপনার সম্পাদনাটি উপেক্ষা করা হয়েছে, কারণ লেখাতে কোনো পরিবর্তন করা হয়নি।',
+'postedit-confirmation' => 'আপনার সম্পাদনা সংরক্ষিত হয়েছে।',
'edit-already-exists' => 'নতুন পাতা সৃষ্টি করা যায়নি।
পাতাটি ইতিমধ্যেই বিদ্যমান।',
'defaultmessagetext' => 'আদি টেক্সট',
'invalid-content-data' => 'ভুল কন্টেন্ট ডাটা',
'content-not-allowed-here' => '"$1" কন্টেন্টটি [[$2]] পাতায় অনুমোদিত নয়',
'editwarning-warning' => 'এই পাতাটি ত্যাগ করলে আপনার আপনার করা পরিবর্তনগুলো হারিয়ে যেতে পারে।
-আপনি যদি লগইন করা থাকেন, আপনি এই সতর্কীকরণ বার্তাটি আপনার পছন্দের "{{int:prefs-editing}}" অনুচ্ছেদ থেকে নিস্ক্রিয় করতে পারেন।',
+আপনি যদি লগইন করা থাকেন, আপনি এই সতর্কীকরণ বার্তাটি আপনার পছন্দের "সম্পাদনা" অনুচ্ছেদ থেকে নিস্ক্রিয় করতে পারেন।',
# Content models
'content-model-wikitext' => 'উইকিটেক্সট',
'searchmenu-legend' => 'অনুসন্ধান অপশন',
'searchmenu-exists' => "'''এই উইকিতে \"[[:\$1]]\" নামে একটি পাতা রয়েছে'''",
'searchmenu-new' => "'''\"[[:\$1]]\" পাতাটি এই উইকিতে তৈরি করুন!'''",
-'searchhelp-url' => 'Help:সহায়িকা',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|এই প্রিফিক্স রয়েছে এমন পাতা দেখুন]]',
'searchprofile-articles' => 'বিষয়বস্তুর পাতা',
'searchprofile-project' => 'সহায়িকা এবং প্রকল্প পাতা',
'yourrealname' => 'আসল নাম *',
'yourlanguage' => 'ভাষা:',
'yourvariant' => 'বিষয়বস্তুর ভাষার বিকল্প:',
+'prefs-help-variant' => 'উইকিতে কন্টেন্ট পাতা দেখার জন্য আপনার পছন্দের বৈশিষ্ট।',
'yournick' => 'স্বাক্ষর:',
'prefs-help-signature' => 'আলাপ পাতায় আপনার মন্তব্য অবশ্যই "<nowiki>~~~~</nowiki>" চিহ্ন দ্বারা স্বাক্ষরিত হতে হবে, যা স্বয়ংক্রিয়ভাবে আপনার স্বাক্ষর ও সময় সংযুক্ত করবে।',
'badsig' => 'অবৈধ স্বাক্ষর; এইচটিএমএল ট্যাগ পরীক্ষা করুন।',
'userrights-notallowed' => 'আপনার অ্যাকাউন্ট থেকে ব্যবহারকারী অধিকার যুক্ত বা অপসারণ করার অনুমতি নেই।',
'userrights-changeable-col' => 'দল যা আপনি পরিবর্তন করতে পারেন',
'userrights-unchangeable-col' => 'দল যা আপনি পরিবর্তন করতে পারবেন না',
-'userrights-conflict' => 'বà§\8dযবহারà¦\95ারà§\80 à¦\85ধিà¦\95ার বিরà§\8bধ! অনুগ্রহ করে পুনরায় চেষ্টা করুন।',
+'userrights-conflict' => 'বà§\8dযবহারà¦\95ারà§\80 à¦\85ধিà¦\95ার দà§\8dবনà§\8dদà§\8dব! অনুগ্রহ করে পুনরায় চেষ্টা করুন।',
# Groups
'group' => 'দল:',
'right-purge' => 'নিশ্চিতকরণ ছাড়াই সাইটের ক্যাশ পার্জ করুন',
'right-autoconfirmed' => 'অর্ধ-সুরক্ষিত পাতা সম্পাদনা',
'right-bot' => 'সয়ংক্রিয় পদ্ধতি হিসাবে চিহ্নিত করণ',
+'right-nominornewtalk' => 'বার্তা লেখার মত আলাপ পাতায় কোনো অনুল্লেখ্য সম্পাদনা নেই',
'right-apihighlimits' => 'API কোয়েরি হিসাবে আরও উচ্চ লিমিট ব্যবহার করুন',
'right-writeapi' => 'write API এর ব্যবহার',
'right-delete' => 'পাতা মুছে ফেলুন',
'right-editusercssjs' => 'অন্য ব্যবহারকারীগণের CSS এবং JS ফাইল সম্পাদনা',
'right-editusercss' => 'অন্য ব্যবহারকারীগণের CSS ফাইল সম্পাদনা',
'right-edituserjs' => 'অন্য ব্যবহারকারীগণের JS ফাইল সম্পাদনা',
+'right-editmyusercss' => 'আপনার নিজস্ব ব্যবহারকারী সিএসএস ফাইল সম্পাদনা করুন',
+'right-editmyuserjs' => 'আপনার নিজস্ব ব্যবহারকারী জাভাস্ক্রিপ্ট ফাইল সম্পাদনা করুন',
'right-rollback' => 'একটি নির্দিষ্ট পাতার সর্বশেষ ব্যবহারকারীর সম্পদনা পূর্বাবস্থায় ফিরিয়ে আনুন',
'right-markbotedits' => 'রোলড-ব্যাক সম্পাদনাসমূহকে বট সম্পাদনা হিসেবে চিহ্নিত করো',
'right-noratelimit' => 'রেট লিমিটের ভিত্তিতে পরিবর্তন হবে না',
'uploadnewversion-linktext' => 'এই ফাইলটির একটি নতুন সংস্করণ আপলোড করুন',
'shared-repo-from' => '$1 থেকে',
'shared-repo' => 'শেয়ার্ড রিপোজিটরী',
+'shared-repo-name-wikimediacommons' => 'উইকিমিডিয়া কমন্স',
'upload-disallowed-here' => 'আপনি এই ফাইলটি প্রতিস্থাপন করতে পারবেন না।',
# File reversion
# Special:ActiveUsers
'activeusers' => 'সক্রিয় ব্যবহারকারী তালিকা',
'activeusers-intro' => 'এটি ব্যবহারকারী তালিকা যাদের $1 {{PLURAL:$1|দিনে|দিনে}} যেকোন কর্মকান্ড রয়েছে।',
-'activeusers-count' => 'গত {{PLURAL:$3|দিনে|$3 দিনে}} সর্বমোট {{PLURAL:$1|কর্মকাণ্ডের}} সংখ্যা $1',
+'activeusers-count' => 'গত {{PLURAL:$3|দিনে}} সর্বমোট {{PLURAL:$1|পদ}} সংখ্যা $1',
'activeusers-from' => 'ব্যবহারকারী দেখাও যাদের নাম এই অক্ষর দিয়ে শুরু:',
'activeusers-hidebots' => 'বট লুকাও',
'activeusers-hidesysops' => 'প্রশাসক লুকাও',
'notvisiblerev' => 'অপর একজন ব্যবহারকারী কর্তৃক প্রণীত সর্বশেষ সংস্করণটি অপসারিত হয়েছে',
'watchnochange' => 'প্রদর্শিত সময়সীমার মধ্যে আপনার নজরতালিকায় রাখা কোন পাতায় কোন রকম সম্পাদনা ঘটেনি।',
'watchlist-details' => 'নজরতালিকাতে {{PLURAL:$1|$1টি পাতা|$1টি পাতা}} আছে (আলাপ পাতাগুলি গণনায় না ধরে)।',
-'wlheader-enotif' => '* ই-মেইল এর মাধমে নির্দেশনার ব্যবস্থা চালু করা আছে।',
-'wlheader-showupdated' => "* আপনার শেষ আগমনের পর থেকে যেসব পাতায় পরিবর্তন হয়েছে সেগুলি '''গাঢ়''' করে দেখানো হয়েছে",
+'wlheader-enotif' => 'ইমেল বিজ্ঞপ্তি সক্রিয় করা আছে।',
+'wlheader-showupdated' => "আপনার শেষ আগমনের পর থেকে যেসব পাতায় পরিবর্তন হয়েছে সেগুলি '''গাঢ়''' করে দেখানো হয়েছে।",
'watchmethod-recent' => 'নজরে রাখা পাতাগুলিতে সাম্প্রতিক পরিবর্তন পরীক্ষা করা হচ্ছে',
'watchmethod-list' => 'নজরে রাখা পাতাগুলিতে সাম্প্রতিক পরিবর্তন পরীক্ষা করা হচ্ছে',
'watchlistcontains' => 'আপনার নজরতালিকায় $1 টি {{PLURAL:$1|পাতা|পাতা}} রয়েছে।',
'mycontris' => 'অবদান',
'contribsub2' => '$1 ($2)-এর জন্য',
'nocontribs' => 'এই শর্তগুলির সাথে মিলে যায়, এমন কোন পরিবর্তন খুঁজে পাওয়া যায়নি।',
-'uctop' => '(শà§\80রà§\8dষ)',
+'uctop' => '(বরà§\8dতমান)',
'month' => 'এই মাস (বা তার আগে) থেকে:',
'year' => 'এই বছর (এবং তার আগে) থেকে:',
'proxyblocksuccess' => 'নিষ্পন্ন হয়েছে।',
'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' => 'আপনি নিজেকে আনব্লক করতে পারবেন না',
'immobile-target-namespace-iw' => 'পাতা স্থানান্তরের ক্ষেত্রে ইন্টারউইকি লিংক ব্যবহার করা যাবে না।',
'immobile-source-page' => 'এই পাতাটির স্থানান্তর সম্ভব নয়।',
'immobile-target-page' => 'গন্তব্য শিরোনামে স্থানান্তর করা যাবে না।',
+'bad-target-model' => 'আপনার উল্লেখিত কন্টেন্ট মডেলটি আলাদা। $1 থেকে $2 কনভার্ট করা যাচ্ছে না।',
'imagenocrossnamespace' => 'কোনো ফাইল ফাইলনয় এমন নামস্থানে স্থানান্তর সম্ভব নয়',
'nonfile-cannot-move-to-file' => 'কোনো ফাইলনয় এমন কোনো পাতা ফাইল নামস্থানে স্থানান্তর সম্ভব নয়',
'imagetypemismatch' => 'নতুন ফাইল এক্সটেনশনটি ফাইলের ধরনের সাথে মিলছে না',
'export-addnstext' => 'নামস্থান থেকে পাতা যুক্ত করুন:',
'export-addns' => 'যোগ',
'export-download' => 'ফাইল হিসেবে সংরক্ষণ করা হোক',
-'export-templates' => 'টেম্পলেট অন্তর্ভুক্তি',
+'export-templates' => 'টেমপ্লেট অন্তর্ভুক্তি',
+'export-pagelinks' => 'সম্পর্কিত পাতাগুলো এই ধাপ পর্যন্ত যুক্ত করো:',
# Namespace 8 related
'allmessages' => 'সিস্টেম বার্তাসমূহ',
আপনি যদি সাধারণ মিডিয়াউইকির স্থানীয়করণে অবদান রাখতে আগ্রহী হন, অনুগ্রহ করে [//www.mediawiki.org/wiki/Localisation মিডিয়াউইকি স্থানীয়করণ] এবং [//translatewiki.net translatewiki.net] দেখুন।',
'allmessagesnotsupportedDB' => "এই পাতা ব্যবহার করা যাবে না কারণ '''\$wgUseDatabaseMessages''' বন্ধ করে রাখা আছে।",
'allmessages-filter-legend' => 'ছাকনী',
-'allmessages-filter' => 'পরিবর্তের ধাপ অনুযায়ী ফিল্টার:',
+'allmessages-filter' => 'Filter by customization state:',
'allmessages-filter-unmodified' => 'অপরিবর্তিত',
'allmessages-filter-all' => 'সমস্ত',
'allmessages-filter-modified' => 'পরিবর্তিত',
'thumbnail-more' => 'বড় করো',
'filemissing' => 'ফাইল হারিয়ে গেছে',
'thumbnail_error' => 'থাম্বনেইল সৃষ্টি করতে গিয়ে ত্রুটি: $1',
+'thumbnail_error_remote' => '$1 থেকে ত্রুটির বার্তা:
+$2',
'djvu_page_error' => 'DjVu পাতা সীমার বাইরে',
'djvu_no_xml' => 'DjVu ফাইলের জন্য XML আনতে পারা যায়নি।',
'thumbnail-temp-create' => 'অস্থায়ী থাম্বনেইল ফাইল তৈরী করা সম্ভব নয়',
'import-interwiki-templates' => 'সকল টেম্পলেট অন্তর্ভুক্ত',
'import-interwiki-submit' => 'আমদানি',
'import-interwiki-namespace' => 'গন্তব্য নামস্থান:',
+'import-interwiki-rootpage' => 'মূল পাতা (ঐচ্ছিক):',
'import-upload-filename' => 'ফাইলনাম:',
'import-comment' => 'মন্তব্য:',
'importtext' => 'অনুগ্রহ করে ফাইলটি উৎস উইকি থেকে [[Special:Export|এক্সপোর্ট ইউটিলিটি]] ব্যবহার করে এক্সপোর্ট করুন।
'import-error-interwiki' => '"$1" পাতাটি ইম্পোর্ট করা যায়নি কারণ এই নামটি বহিঃসংযোগর জন্য নির্ধারিত (ইন্টারউইকি)।',
'import-error-special' => '"$1" পাতাটি ইম্পোর্ট করা যায়নি কারণ এটি একটি বিশেষ নামস্থানকে নির্দেশ করে যেটি সম্পাদনার জন্য অনুমোদিত নয়।',
'import-error-invalid' => '"$1" পাতাটি ইম্পোর্ট করা যায়নি কারণ নামটি সঠিক নয়।',
+'import-error-unserialize' => '$1 পাতার $2 সংস্করণটি সিরিয়ালাইজ করা যাচ্ছে না। এই রিভিশনে $4 হিসাবে $3 কন্টেন্ট মডেলে সিরিয়ালাইজ করা আছে।',
'import-options-wrong' => 'ভুল {{PLURAL:$2|অপশন|অপশনসমূহ}}: <nowiki>$1</nowiki>',
'import-rootpage-invalid' => 'মূল পাতার ভুল শিরনাম দেয়া হয়েছে।',
'import-rootpage-nosubpage' => 'মূল পাতার "$1" নামস্থানে উপপাতা তৈরী অনুমোদিত নয়।',
'pageinfo-robot-noindex' => 'ইনডেক্সের অনুপযোগী',
'pageinfo-views' => 'পরিদর্শন সংখ্যা',
'pageinfo-watchers' => 'পাতাটি প্রদর্শনের সংখ্যা',
-'pageinfo-few-watchers' => '$1 {{PLURAL:$1|নজরের}} কম',
+'pageinfo-few-watchers' => '$1 জন {{PLURAL:$1|নজরকারীও}} কম',
'pageinfo-redirects-name' => 'এই পাতার রিডাইরেক্ট সমূহ',
'pageinfo-subpages-name' => 'এই পাতার উপপাতাসমূহ',
'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|পুনর্নির্দেশ|পুনর্নির্দেশসমূহ}}; $3 {{PLURAL:$3|পুনর্নির্দেশ নেই|পুনর্নির্দেশ নেই}})',
'pageinfo-magic-words' => 'ম্যাজিক {{PLURAL:$1|শব্দ|শব্দসমূহ}} ($1)',
'pageinfo-hidden-categories' => 'লুকানো {{PLURAL:$1|বিষয়শ্রেণী|বিষয়শ্রেণীসমূহ}} ($1)',
'pageinfo-templates' => 'সংযুক্ত {{PLURAL:$1|টেমপ্লেট|টেমপ্লেটসমূহ}} ($1)',
+'pageinfo-transclusions' => '{{PLURAL:$1|পাতা|পাতাসমূহ}} ট্রান্সক্লুড করার সময় ($1)',
'pageinfo-toolboxlink' => 'পাতার তথ্য',
'pageinfo-redirectsto' => 'পুননির্দেশিত হয়েছে',
'pageinfo-redirectsto-info' => 'তথ্য',
'pageinfo-contentpage' => 'তথ্য পাতা হিসাবে বিবেচিত হয়েছে',
'pageinfo-contentpage-yes' => 'হ্যাঁ',
+'pageinfo-protect-cascading' => 'ক্যাসকেডিং সুরক্ষা পদ্ধতি চালু রয়েছে',
'pageinfo-protect-cascading-yes' => 'হ্যাঁ',
+'pageinfo-protect-cascading-from' => 'ক্যাসকেডিং সুরক্ষা পদ্ধতি',
'pageinfo-category-info' => 'বিষয়শ্রেণী তথ্য',
'pageinfo-category-pages' => 'পাতার সংখ্যা',
'pageinfo-category-subcats' => 'উপবিষয়শ্রেণীর সংখ্যা',
'pageinfo-category-files' => 'ফাইলের সংখ্যা',
# Skin names
+'skinname-cologneblue' => 'কলোন ব্লু',
+'skinname-monobook' => 'মনোবুক',
+'skinname-modern' => 'মডার্ন',
'skinname-vector' => 'ভেক্টর',
# Patrolling
'markedaspatrollederror' => 'পরীক্ষিত বলে চিহ্নিত করা যাবে না',
'markedaspatrollederrortext' => 'পরীক্ষিত বলে চিহ্নিত করতে আপনাকে একটি সংস্করণ নির্দিষ্ট করতে হবে।',
'markedaspatrollederror-noautopatrol' => 'আপনার নিজের পাতাকে পরীক্ষিত বলে চিহ্নিত করার অনুমতি আপনার নেই।',
+'markedaspatrollednotify' => '$1 এর পরিবর্তন পরীক্ষিত হিসাবে চিহ্নিত করা হয়েছে।',
+'markedaspatrollederrornotify' => 'পরীক্ষিত হিসাবে চিহ্নিত করতে ব্যর্থ।',
# Patrol log
'patrol-log-page' => 'পরীক্ষণ লগ',
# Exif attributes
'exif-compression-1' => 'অসংকুচিত',
+'exif-compression-2' => 'সিসিআইটিটি গ্রুপ ৩ ১-ডাইমেনশনাম মডিফাইড হাফম্যান রান লেংক্থ এনকোডিং',
+'exif-compression-3' => 'সিসিআইটিটি গ্রুপ ৩ ফ্যাক্স এনকোডিং',
+'exif-compression-4' => 'সিসিআইটিটি গ্রুপ ৪ ফ্যাক্স এনকোডিং',
'exif-copyrighted-true' => 'কপিরাইটকৃত',
'exif-copyrighted-false' => 'পাবলিক ডোমেইন',
'exif-flash-return-2' => 'স্ট্রোবের আলো চিহ্নিত করা যায়নি',
'exif-flash-return-3' => 'স্ট্রোবের আলো চিহ্নিত হয়েছে',
'exif-flash-mode-1' => 'বাধ্যতামূলকভাবে ফ্ল্যাশ ব্যবহৃত হয়েছে',
+'exif-flash-mode-2' => 'বাধ্যতামূলক ফ্ল্যাশ নিষ্ক্রিয়',
'exif-flash-mode-3' => 'স্বয়ংক্রিয় মোড',
'exif-flash-function-1' => 'ফ্ল্যাশ ব্যবহৃত হয়নি',
'exif-flash-redeye-1' => 'রেড-আই হ্রাস মোড',
'exif-ycbcrpositioning-2' => 'কো-সাইটেড',
'exif-dc-contributor' => 'অবদানকারী',
+'exif-dc-coverage' => 'মিডিয়া ফাইলের বিশেষ অথবা অস্থায়ী ক্ষেত্র',
'exif-dc-date' => 'তারিখ',
'exif-dc-publisher' => 'প্রকাশক',
'exif-dc-relation' => 'সম্পর্কিত মিডিয়া',
$5
+$4-এ নিশ্চিতকরণ কোডটি মেয়াদোত্তীর্ণ হয়ে যাবে।',
+'confirmemail_body_changed' => 'কেউ একজন, সম্ভবত আপনি, $1 আইপি ঠিকানা থেকে,
+{{SITENAME}}-এ "$2" নামে অ্যাকাউন্টের ইমেরইল ঠিকানা পরিবর্তন করেছেন।
+
+এই অ্যাকাউন্টটি যে আসলেই আপনার তা নিশ্চিত করার জন্য এবং {{SITENAME}}-এ ই-মেইল বৈশিষ্ট্যগুলো সক্রিয় করার জন্য আপনার ব্রাউজারে এই সংযোগটি খুলুন:
+
+$3
+
+যদি আপনি এই ব্যক্তি *না* হন, তাহলে ইমেইল ঠিকানা নিশ্চিতকরণ বাতিল করতে এই লিঙ্কটি অনুসরণ করুন"
+
+$5
+
+$4-এ নিশ্চিতকরণ কোডটি মেয়াদোত্তীর্ণ হয়ে যাবে।',
+'confirmemail_body_set' => 'কেউ একজন, সম্ভবত আপনি, $1 আইপি ঠিকানা থেকে,
+{{SITENAME}}-এ "$2" অ্যকাউন্টের ইমেইল ঠিকানা নির্ধারণ করেছেন।
+
+এই অ্যাকাউন্টটি যে আসলেই আপনার তা নিশ্চিত করার জন্য এবং {{SITENAME}}-এ ই-মেইল বৈশিষ্ট্যগুলো সক্রিয় করার জন্য আপনার ব্রাউজারে এই সংযোগটি খুলুন:
+
+$3
+
+যদি আপনি এই ব্যক্তি *না* হন, তাহলে ইমেইল ঠিকানা নিশ্চিতকরণ বাতিল করতে এই লিঙ্কটি অনুসরণ করুন"
+
+$5
+
$4-এ নিশ্চিতকরণ কোডটি মেয়াদোত্তীর্ণ হয়ে যাবে।',
'confirmemail_invalidated' => 'ইমেইল ঠিকানা নিশ্চিতকরণ বাতিল হয়েছে',
'invalidateemail' => 'ইমেইল নিশ্চিতকরণ বাতিল করুন',
'size-megabytes' => '$1 মেগাবাইট',
'size-gigabytes' => '$1 গিগাবাইট',
+# Bitrate units
+'bitrate-kilobits' => '$1 কেবিপিএস',
+'bitrate-megabits' => '$1 এমবিপিএস',
+'bitrate-gigabits' => '$1 জিবিপিএস',
+'bitrate-terabits' => '$1 টিবিপিএস',
+'bitrate-petabits' => '$1 পিবিপিএস',
+'bitrate-exabits' => '$1 ইবিপিএস',
+
# Live preview
'livepreview-loading' => 'লোডিং...',
'livepreview-ready' => 'লোডিং… প্রস্তুত!',
'watchlisttools-edit' => 'নজর তালিকা দেখুন এবং সম্পাদনা করুন',
'watchlisttools-raw' => 'অশোধিত নজরতালিকা সম্পাদনা করুন',
+# Iranian month names
+'iranian-calendar-m1' => 'ফারওয়ারদিন',
+'iranian-calendar-m2' => 'অর্দিবেহেশ্ত',
+'iranian-calendar-m3' => 'খোরদাদ',
+'iranian-calendar-m4' => 'তির',
+'iranian-calendar-m5' => 'মোরদাদ',
+'iranian-calendar-m6' => 'শাহ্রিওয়ার',
+'iranian-calendar-m7' => 'মেহ্র',
+'iranian-calendar-m8' => 'আবান',
+'iranian-calendar-m9' => 'আজার',
+'iranian-calendar-m10' => 'দেই',
+'iranian-calendar-m11' => 'বাহ্মান',
+'iranian-calendar-m12' => 'এসফান্দ',
+
+# Hijri month names
+'hijri-calendar-m1' => 'মুহররম',
+'hijri-calendar-m2' => 'সফর',
+'hijri-calendar-m3' => 'রবিউল আউয়াল',
+'hijri-calendar-m4' => 'রবিউস সানি',
+'hijri-calendar-m5' => 'জমাদিউল আউয়াল',
+'hijri-calendar-m6' => 'জমাদিউস সানি',
+'hijri-calendar-m7' => 'রজব',
+'hijri-calendar-m8' => "শা'বান",
+'hijri-calendar-m9' => 'রমজান',
+'hijri-calendar-m10' => 'শাওয়াল',
+'hijri-calendar-m11' => 'জ্বিলকদ',
+'hijri-calendar-m12' => 'জ্বিলহজ্জ',
+
+# Hebrew month names
+'hebrew-calendar-m10' => 'তামুয',
+'hebrew-calendar-m11' => 'আভ',
+'hebrew-calendar-m12' => 'এলুল',
+
# Signatures
'signature' => '[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|আলাপ]])',
+'timezone-utc' => 'ইউটিসি',
# Core parser functions
'unknown_extension_tag' => 'অজানা এক্সটেনশন ট্যাগ "$1"',
'version-license' => 'লাইসেন্স',
'version-poweredby-credits' => "এইক উইকিটি পরিচালিত হচ্ছে '''[//www.mediawiki.org/ মিডিয়াউইকি]'''-এর মাধ্যমে, কপিরাইট © ২০০১-$1 $2।",
'version-poweredby-others' => 'অন্যান্য',
+'version-credits-summary' => '[[Special:Version|মিডিয়াউইকি]] সফটওয়্যারে অবদানের জন্য আমরা এই ব্যক্তিকে স্বীকৃতি দিতে চাই।',
+'version-license-info' => 'মিডিয়াউইকি এ++++কটি ফ্রি সফটওয়্যার, আপনি এটি বিতরণ করতে পারবেন এবং/অথবা সম্পদানা করতে পারবেন, এক্ষেত্রে ফ্রি সফটওয়্যার ফাউন্ডেশনের প্রকাশিত গনু জেনারেল পাবলিক লাইসেন্সের ২য় অথবা সাম্প্রতিকতম কোনো সংস্করণ মেনে চলতে হবে।
+
+সকলের উপকারের লক্ষ্যে এটি বিতরণ করা হয়ে থাকে, কিন্তু এক্ষেত্রে কোনো ওয়ারেন্টি দেয়া হয় না, এমনকি বিশেষ কোনো কার্যক্ষেত্রে ব্যবহারের জন্যও তথাকথিত ওয়ারেন্টি দেয়া হয় না। বিস্তারিত জানতে দেখুন গনু জেনারেল পাবলিক লাইসেন্স।
+
+এই সফটওয়্যারের সাথে [{{SERVER}}{{SCRIPTPATH}}/COPYING গনু জেনারেল পাবলিক লাইসেন্সের একটি কপি] থাকার কথা; যদি আপনি না পেয়ে থাকেন তাহলে অনুগ্রহ করে ফ্রি সফটওয়্যার ফাউন্ডেশনকে জানান এই ঠিকানায়, Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA অথবা [//www.gnu.org/licenses/old-licenses/gpl-2.0.html অনলাইনে দেখুন]।',
'version-software' => 'ইনস্টলকৃত সফটওয়্যার',
'version-software-product' => 'পণ্য',
'version-software-version' => 'সংস্করণ',
'version-entrypoints-header-url' => 'ইউআরএল',
# Special:Redirect
+'redirect' => 'ফাইল, ব্যবহারকরী, অথবা রিভিশন আইডি দ্বারা পুনঃনির্দেশ করা হয়েছে',
+'redirect-legend' => 'একটি ফাইল অথবা পাতায় পুনঃনির্দেশ করা হয়েছে',
+'redirect-summary' => 'এই বিশেষ পাতাটি পুনঃনির্দেশিত হয়েছে একটি ফাইলে (ফাইলের নাম), একটি পাতা (রিভিশন আইডি), অথবা একটি ব্যবহারকরী পাতায় (সংখ্যায় লেখা ব্যবহারকারী আইডি)।',
'redirect-submit' => 'যাও',
'redirect-lookup' => 'দেখুন:',
'redirect-value' => 'মান:',
'redirect-user' => 'ব্যবহারকারী আইডি',
+'redirect-revision' => 'পাতা সংস্করণ',
'redirect-file' => 'ফাইলের নাম',
'redirect-not-exists' => 'মান পাওয়া যায়নি',
'tag-filter' => '[[Special:Tags|ট্যাগ]] ছাকনী:',
'tag-filter-submit' => 'ছাকনী',
'tags-title' => 'ট্যাগসমূহ',
+'tags-intro' => 'এই পাতায় সফটওয়্যারটি একটি সম্পাদনা চিহ্নিত করার জন্য যে সকল ট্যাগ ব্যবহার করে তার তালিকা ও বর্ণনা রয়েছে।',
'tags-tag' => 'ট্যাগ নাম',
+'tags-display-header' => 'পরিনর্তন পাতার বৈশিষ্ট',
'tags-description-header' => 'অর্থের পূর্ণ বণনা',
'tags-hitcount-header' => 'ট্যাগকৃত পরিবর্সতনমূহ',
'tags-edit' => 'সম্পাদনা',
'logentry-newusers-byemail' => '$1, $3 ব্যবহারকরী অ্যাকাউন্টটি {{GENDER:$2|তৈরী করেছেন}} এবং পাসওয়ার্ড ইমেইলের মাধ্যমে পাঠানো হয়েছে',
'logentry-newusers-autocreate' => '$1 অ্যাকাউন্টটি স্বয়ংক্রিয়ভাবে {{GENDER:$2|তৈরি}} হয়েছে',
'logentry-rights-rights' => '$1 ব্যবহারকারী, $3 এর দলগত সদস্যপদ $4 থেকে $5 এ {{GENDER:$2|পরিবর্তন}} করেছেন',
+'logentry-rights-rights-legacy' => '$1 দলের সদস্যপদ পরিবর্তন করেছেন {{GENDER:$2|changed}} এর জন্য $3',
'logentry-rights-autopromote' => '$1 সয়ংক্রিয়ভাবে $4 থেকে $5 এ {{GENDER:$2|উন্নীত}} হয়েছে',
'rightsnone' => '(কিছু নাই)',
# Feedback
+'feedback-bugornote' => 'কারিগরী ত্রুটির বিস্তারিত বর্ণনা জানতে [$1 বাগ রিপোর্ট করুন]।
+অথবা নিচের এই সরল ফর্মটি ব্যবহার করতে পারেন। "[$3 $2]" পাতায় আপনার ব্যবহারকারী নাম সহ মন্তব্যটি প্রকাশিত হবে।',
'feedback-subject' => 'বিষয়:',
'feedback-message' => 'বার্তা:',
'feedback-cancel' => 'বাতিল',
# Special:ListGroupRights
'listgrouprights-members' => 'ཁོངས་མིའི་ཐོ་ཡིག',
-# E-mail user
+# Email user
'emailuser' => 'སྤྱོད་མི་འདིར་གློག་འཕྲིན་སྐུར་བ།',
'emailmessage' => 'སྐད་ཆ།',
'tog-shownumberswatching' => 'চাকুরার সংখ্যাহান দেহাদে',
'tog-oldsig' => 'আগেত্তর আসে স্বাক্ষররহান:',
'tog-fancysig' => 'স্বাক্ষরহানরে উইকিটেক্সট বুলিয়া নিংকর (নিজেত্ত লিঙ্ক নেইকরিয়া)',
-'tog-externaleditor' => 'অকরাতই বারেদের সম্পাদক ব্যবহার কর (হুদ্দা দক্ষ ব্যবহারকারীরকা, কম্পিউটারর মা বিশেষ সেটিংস দরকার। [//www.mediawiki.org/wiki/Manual:External_editors বিস্তারিত পৌ।])',
-'tog-externaldiff' => 'অকরাতই বারেদের সম্পাদক ব্যবহার কর (হুদ্দা দক্ষ ব্যবহারকারীরকা, কম্পিউটারর মা বিশেষ সেটিংস দরকার। [//www.mediawiki.org/wiki/Manual:External_editors বিস্তারিত পৌ।])',
'tog-showjumplinks' => '"চঙদে" বুলতারা মিলাপর য়্যাথাঙদে',
'tog-uselivepreview' => 'লগে লগে মিল্লেঙ আহান দেহাদে (জাভাস্ক্রিপ্ট) (লইনাসে)',
'tog-forceeditsummary' => 'খালি পতা সারমর্ম হমিলে মরে হারপুৱাদে',
'tog-diffonly' => 'ফারাকর তলে পাতাহানর বিষয়বস্তু নাদেখাদি',
'tog-showhiddencats' => 'আরুমে আসে থাকহানি ফংকর',
'tog-norollbackdiff' => 'রোলব্যাকর পিসে ফারাক না দেখাদি',
+'tog-useeditwarning' => 'পতানির সময় ইতু নাকরিয়া বেলিয়া গেলেগা মরে সিঙকরেদিস',
'underline-always' => 'হারি সময়',
'underline-never' => 'সুপৌনা',
'disclaimers' => 'দাবি বেলানি',
'disclaimerpage' => 'Project:ইজ্জু দাবি বেলানি',
'edithelp' => 'পতানি পাংলাক',
-'edithelppage' => 'Help:কিসাদে_পাতা_আহান_পতানি',
'helppage' => 'Help:পাংলাক',
'mainpage' => 'পয়লা পাতা',
'mainpage-description' => 'পয়লা পাতা',
'edit-conflict' => 'পতানিত বেসেপ ইসে',
'edit-already-exists' => 'নুৱা পাতাহান হঙকরানি নাইল।
পাতাএহান আগেত্তর আসে।',
+'editwarning-warning' => 'পাতা এহান বেলিয়া গেলেগা তি সিলকরিসত অতা মাঙুইতে পারে।
+তি লগইন করিসতগ ইলে, এরে সিঙকরানির পৌ এহান তর "পতানি" থাকেত্ত আরুম করানি পারর।',
# Parser/template warnings
'post-expand-template-inclusion-warning' => "'''সিঙুইস:''' টেমপ্লেটের ইনক্লুড অংতাহান ডাঙর অসে। টেমপ্লেট কতহান তিলকরানি নুওয়ারতে পারে।",
'searchmenu-legend' => 'বিসারানির অপশনহানি',
'searchmenu-exists' => "'''উইকি এহাত \"[[:\$1]]\" নাঙে পাতা আহান আসে'''",
'searchmenu-new' => "'''\"[[:\$1]]\" নাঙর পাতাহান এরে উইকিত হঙকর!'''",
-'searchhelp-url' => 'Help:পাংলাক',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|এরে prefix এতাল আসে পাতাহানি]]',
'searchprofile-articles' => 'কন্টেন্টর পাতাহানি',
'searchprofile-project' => 'পাঙলাক বারো প্রকল্পর পাতা',
'powersearch-togglenone' => 'কিত্তাউ নেই',
'search-external' => 'বারেদে বিসারা',
-# Quickbar
-'qbsettings' => 'কুইকবার',
-'qbsettings-none' => 'কিত্তাউ নেই',
-'qbsettings-fixedleft' => 'লেপ্পা বিঙ',
-'qbsettings-fixedright' => 'লেপ্পা বাত',
-'qbsettings-floatingleft' => 'বাহের বিঙ',
-'qbsettings-floatingright' => 'বাহের বাত',
-
# Preferences page
'preferences' => 'পছনহানি',
'mypreferences' => 'মর পছন',
'version-software-product' => 'পণ্য',
'version-software-version' => 'সংস্করণ',
-# Special:FilePath
-'filepath' => 'ফাইলর পথহান:',
-'filepath-page' => 'ফাইল:',
-'filepath-submit' => 'পথ',
-
# Special:SpecialPages
'specialpages' => 'বিশেষ পাতাহানি',
'specialpages-group-login' => 'একাউন্টহাত হমানি/মিহানি',
'tog-enotifrevealaddr' => 'نشودادن امیل مو درامیلهای آگاهی-خبری',
'tog-shownumberswatching' => 'نشودادن شماره کاربران درحال کار یاتماشا',
'tog-fancysig' => 'امضاهای ناتمام - بدون لینکهای اتوماتیک',
-'tog-externaleditor' => 'بی دقتی در استفاده از اصلاح کننده های خارجی',
-'tog-externaldiff' => 'استفاده زه برنامه های مختلف خارجی بوسیله پیش نمایش(سی تجربه کردن فقط نیاز به تنظیم خاص کامپیوترتان دارین)',
'tog-showjumplinks' => 'قادر ساختن "پرش به" لینکهای دردسترس',
'tog-uselivepreview' => 'استفاده زه پیش نمایش زنده(جاوااسکریپ) (تجربی )',
'tog-forceeditsummary' => 'یادآوری سریع به مو هنگام اصلاح عقیم وخلاصه',
# Special:Categories
'categories' => 'دسته ها',
-# E-mail user
+# Email user
'emailuser' => 'امیل ای کاربر',
# Watchlist
* @author Candalua
* @author Fohanno
* @author Fulup
+ * @author Geitost
* @author Gwendal
* @author Gwenn-Ael
* @author Kaganer
* @author Malafaya
+ * @author Nemo bis
* @author VIGNERON
* @author Y-M D
* @author לערי ריינהארט
'disclaimers' => 'Kemennoù',
'disclaimerpage' => 'Project:Kemenn hollek',
'edithelp' => 'Skoazell',
-'edithelppage' => 'Help:Penaos kemmañ traoù er pennadoù',
'helppage' => 'Help:Skoazell',
'mainpage' => 'Degemer',
'mainpage-description' => 'Degemer',
'notloggedin' => 'Digevreet',
'userlogin-noaccount' => "Kont ebet ganeoc'h c'hoazh ?",
'userlogin-joinproject' => 'Kemer perzh e {{SITENAME}}',
-'nologin' => "N'hoc'h eus kont ebet ? '''$1'''.",
+'nologin' => "N'hoc'h eus kont ebet ? $1.",
'nologinlink' => 'Krouiñ ur gont',
'createaccount' => 'Krouiñ ur gont nevez',
'gotaccount' => "Ur gont zo ganeoc'h dija ? '''$1'''.",
# Special:PasswordReset
'passwordreset' => 'Adderaouekaat ar ger-tremen',
-'passwordreset-text' => "Leuniañ ar furmskrid-mañ da resev ur postel da zegas soñj deoc'h eus titouroù ho kont.",
'passwordreset-legend' => 'Adsevel ar ger-tremen',
'passwordreset-disabled' => 'Diweredekaet eo bet an adsevel gerioù-tremen war ar wiki-mañ.',
-'passwordreset-pretext' => '{{PLURAL:$1||Merkit unan eus an tammoù roadennoù dindan}}',
'passwordreset-username' => 'Anv implijer :',
'passwordreset-domain' => 'Domani :',
'passwordreset-capture' => 'Gwelet ar postel ?',
Diverket eo bet evit doare.',
'edit-conflict' => 'Tabut kemmañ.',
'edit-no-change' => "N'eo ket bet kemeret ho tegasadenn e kont rak ne oa ket bet kemmet netra en destenn.",
+'postedit-confirmation' => 'Enrollet eo bet ho kemmoù.',
'edit-already-exists' => "N'eus ket bet gallet krouiñ ur bajenn nevez.
Krouet e oa bet c'hoazh.",
'defaultmessagetext' => 'Testenn dre ziouer',
'searchmenu-legend' => 'Dibarzhioù klask',
'searchmenu-exists' => "'''Ur bajenn anvet\"[[:\$1]]\" zo war ar wiki-mañ'''",
'searchmenu-new' => "'''Krouiñ ar bajenn \"[[:\$1]]\" war ar wiki-mañ !'''",
-'searchhelp-url' => 'Help:Skoazell',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Furchal er pajennoù a grog gant ar rakger-mañ]]',
'searchprofile-articles' => 'Pajennoù gant boued',
'searchprofile-project' => 'Pajennoù skoazell ha pajennoù ar raktres',
'reuploaddesc' => "Distreiñ d'ar furmskrid.",
'upload-tryagain' => 'Kas deskrivadur ar restr kemmet',
'uploadnologin' => 'Digevreet',
-'uploadnologintext' => "Ret eo deoc'h bezañ [[Special:UserLogin|kevreetet]] a-benn gellout enporzhiañ restroù war ar servijer.",
+'uploadnologintext' => "Ret eo deoc'h bezañ [[Special:UserLogin|kevreet]] evit gallout enporzhiañ restroù war ar servijer.",
'upload_directory_missing' => "Mankout a ra ar c'havlec'h enporzhiañ ($1) ha n'eo ket bet ar servijer Web evit e grouiñ.",
'upload_directory_read_only' => "N'hall ket ar servijer skrivañ e renkell ar c'hargadennoù ($1).",
'uploaderror' => 'Fazi enporzhiañ',
'upload-proto-error-text' => 'Rekis eo an URLoù a grog gant <code>http://</code> pe <code>ftp://</code> evit enporzhiañ.',
'upload-file-error' => 'Fazi diabarzh',
'upload-file-error-text' => "Ur fazi diabarzh zo c'hoarvezet en ur grouiñ ur restr da c'hortoz war ar servijer.
-Kit e darempred gant [[Special:ListUsers/sysop|unan eus merourien ar reizhiad]].",
+Kit e darempred gant [[Special:ListUsers/sysop|unan eus merourien]].",
'upload-misc-error' => 'Fazi kargañ dianav',
'upload-misc-error-text' => "Ur fazi dianav zo bet e-ser kargañ.
Gwiriit eo reizh an URL hag e c'hall bezañ tizhet ha klaskit en-dro.
-Ma talc'h ar gudenn, kit e darempred gant [[Special:ListUsers/sysop|merourien ar reizhiad]].",
+Ma talc'h ar gudenn, kit e darempred gant [[Special:ListUsers/sysop|merourien]].",
'upload-too-many-redirects' => 'Re a adkasoù zo en URL-mañ.',
'upload-unknown-size' => 'Ment dianav',
'upload-http-error' => 'Ur fazi HTTP zo bet : $1',
'notvisiblerev' => 'Stumm diverket',
'watchnochange' => "N'ez eus elfenn ebet eus ar re evezhiet ganeoc'h a zo bet kemmet e-pad ar prantad spisaet",
'watchlist-details' => "Lakaet hoc'h eus {{PLURAL:$1|$1 bajenn|$1 pajenn}} dindan evezh, anez kontañ ar pajennoù kaozeal.",
-'wlheader-enotif' => "* War enaou emañ ar c'has posteloù.",
-'wlheader-showupdated' => "* E '''tev''' emañ merket ar pajennoù bet kemmet abaoe ar wezh ziwezhañ hoc'h eus sellet outo",
+'wlheader-enotif' => "War enaou emañ ar c'has posteloù.",
+'wlheader-showupdated' => "E '''tev''' emañ merket ar pajennoù bet kemmet abaoe ar wezh ziwezhañ hoc'h eus sellet outo",
'watchmethod-recent' => "Gwiriañ ar c'hemmoù diwezhañ er pajennoù dindan evezh",
'watchmethod-list' => "Gwiriañ ar c'hemmoù diwezhañ evit ar pajennoù evezhiet",
'watchlistcontains' => '$1 {{PLURAL:$1|pajenn|pajenn}} zo en ho rollad evezhiañ',
'modern.css' => '/* Talvezout a raio ar CSS lakaet amañ evit implijerien ar gwiskadur Modern */',
'vector.css' => '/* Talvezout a raio ar CSS lakaet amañ evit implijerien ar gwiskadur Vektor */',
'print.css' => '/* Talvezout a raio ar CSS lakaet amañ evit ar moullañ */',
-'handheld.css' => '/* Talvezout a raio ar CSS lakaet amañ evit an ardivinkoù hezoug diouzh ar gwiskadur kefluniet e $wgHandheldStyle */',
'noscript.css' => '/* Talvezout a raio ar CSS lakaet amañ evit an implijerien o deus diweredekaet JavaScript */',
'group-autoconfirmed.css' => '/* Talvezout a raio ar CSS lakaet amañ evit an impjerien bet kadarnaet ent emgefre hepken */',
'group-bot.css' => '/* Talvezout a raio ar CSS lakaet amañ evit ar robotoù hepken */',
'grouppage-sysop' => '{{ns:project}}:Amaldár ák',
+# Special:Log/newusers
+'newuserlogpage' => 'Kárband joŕ kanning ná hisáb',
+
# User rights log
'rightslog' => 'Kárband hakk hisáb',
# Special:LinkSearch
'linksearch' => 'Darí gańđ',
-# Special:Log/newusers
-'newuserlogpage' => 'Kárband joŕ kanning ná hisáb',
-
# Special:ListGroupRights
'listgrouprights-members' => '(básk átá ridoband)',
-# E-mail user
+# Email user
'emailuser' => 'Dá kárband e girokŧapál as mon et',
# Watchlist
* @author DzWiki
* @author Edinwiki
* @author Fulup
+ * @author Geitost
* @author Kaganer
* @author Kal-El
* @author Malafaya
+ * @author Nemo bis
* @author Palapa
* @author Seha
* @author Smooth O
# Font style option in Special:Preferences
'editfont-style' => 'Stil slova područja uređivanja:',
-'editfont-default' => 'Po podešavanjima preglednika',
+'editfont-default' => 'Po postavkama preglednika',
'editfont-monospace' => 'Slova sa jednostrukim razmakom',
'editfont-sansserif' => 'Slova bez serifa',
'editfont-serif' => 'Slova serif',
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1. januar',
+'february-date' => '$1. februar',
+'march-date' => '$1. mart',
+'april-date' => '$1. april',
+'may-date' => '$1. maj',
+'june-date' => '$1. juni',
+'july-date' => '$1. juli',
+'august-date' => '$1. august',
+'september-date' => '$1. septembar',
+'october-date' => '$1. oktobar',
+'november-date' => '$1. novembar',
+'december-date' => '$1. decembar',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorija|Kategorije}}',
'newwindow' => '(otvara se u novom prozoru)',
'cancel' => 'Poništite',
'moredotdotdot' => 'Još...',
+'morenotlisted' => 'Više nije prikazano...',
'mypage' => 'Korisnička stranica',
'mytalk' => 'Razgovor',
'anontalk' => 'Razgovor za ovu IP adresu',
'viewhelppage' => 'Pogledajte stranicu za pomoć',
'categorypage' => 'Pogledaj stranicu kategorije',
'viewtalkpage' => 'Pogledaj raspravu',
-'otherlanguages' => 'Ostali jezici',
+'otherlanguages' => 'Na drugim jezicima',
'redirectedfrom' => '(Preusmjereno sa $1)',
'redirectpagesub' => 'Preusmjeri stranicu',
'lastmodifiedat' => 'Ova stranica je posljednji put izmijenjena $2, $1',
'disclaimers' => 'Odricanje odgovornosti',
'disclaimerpage' => 'Project:Uslovi korištenja, pravne napomene i odricanje odgovornosti',
'edithelp' => 'Pomoć pri uređivanju stranice',
-'edithelppage' => 'Help:Uređivanje',
'helppage' => 'Help:Sadržaj',
'mainpage' => 'Početna strana',
'mainpage-description' => 'Početna strana',
'wrong_wfQuery_params' => 'Netačni parametri za wfQuery()<br />
Funkcija: $1<br />
Pretraga: $2',
-'viewsource' => 'pogledaj kod',
+'viewsource' => 'Pogledaj izvor',
'viewsource-title' => 'Prikaz izvora stranice $1',
'actionthrottled' => 'Akcija je usporena',
'actionthrottledtext' => 'Kao anti-spam mjera, ograničene su vam izmjene u određenom vremenu, i trenutačno ste dostigli to ograničenje. Pokušajte ponovo poslije nekoliko minuta.',
'welcomecreation-msg' => 'Vaš nalog je napravljen.
Ne zaboravite da prilagodite sebi svoja [[Special:Preferences|{{SITENAME}} podešavanja]].',
'yourname' => 'Korisničko ime:',
+'userlogin-yourname' => 'Korisničko ime',
+'userlogin-yourname-ph' => 'Unesite Vaše korisničko ime',
'yourpassword' => 'Šifra:',
+'userlogin-yourpassword' => 'Šifra',
+'userlogin-yourpassword-ph' => 'Unesite Vašu šifru/lozinku',
+'createacct-yourpassword-ph' => 'Unesite šifru/lozinku',
'yourpasswordagain' => 'Ponovite šifru:',
+'createacct-yourpasswordagain' => 'Potvrdite šifru/lozinku',
+'createacct-yourpasswordagain-ph' => 'Unesite šifru/lozinku opet',
'remembermypassword' => 'Zapamti moju šifru na ovom računaru (najviše $1 {{PLURAL:$1|dan|dana|dana}})',
+'userlogin-remembermypassword' => 'Ostavi me prijavljen',
+'userlogin-signwithsecure' => 'Koristite sigurnu konekciju',
'securelogin-stick-https' => 'Ostani povezan na HTTPS nakon prijave',
'yourdomainname' => 'Vaš domen:',
'password-change-forbidden' => 'Ne možete da promjenite lozinku na ovom wikiju.',
'logout' => 'Odjavi me',
'userlogout' => 'Odjavi me',
'notloggedin' => 'Niste prijavljeni',
-'nologin' => "Nemate korisničko ime? '''$1'''.",
+'userlogin-noaccount' => 'Nemate korisnički račun?',
+'userlogin-joinproject' => 'Pridružite se {{SITENAME}}',
+'nologin' => 'Nemate korisničko ime? $1.',
'nologinlink' => 'Napravite nalog',
-'createaccount' => 'Napravi nalog',
+'createaccount' => 'Napravi korisnički račun',
'gotaccount' => "Imate nalog? '''$1'''.",
'gotaccountlink' => 'Prijavi se',
'userlogin-resetlink' => 'Zaboravili ste detalje vaše prijave?',
-'createaccountmail' => 'e-poštom',
+'userlogin-resetpassword-link' => 'Resetirajte svoju šifru/lozinku',
+'helplogin-url' => 'Help:Prijavljivanje',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Pomoć pri prijavljivanju]]',
+'createacct-join' => 'Unesite svoje podatke ispod.',
+'createacct-emailrequired' => 'Adresa e-pošte',
+'createacct-emailoptional' => 'Adresa e-pošte (opcionalno)',
+'createacct-email-ph' => 'Unesite Vašu adresu e-pоšte',
+'createaccountmail' => 'Koristite privremenu, slučajno stvorenu šifru/lozinku i pošaljite na dole navedenu adrеsu e-pošte',
+'createacct-realname' => 'Pravo ime (opcionalno)',
'createaccountreason' => 'Razlog:',
+'createacct-reason' => 'Razlog',
+'createacct-reason-ph' => 'Zašto pravite još jedan korisnički račun?',
+'createacct-captcha' => 'Sigurnosna provjera',
+'createacct-imgcaptcha-ph' => 'Unesite tekst koji vidite iznad',
+'createacct-submit' => 'Napravite svoj korisnički račun',
+'createacct-benefit-heading' => '{{SITENAME}} je napravljen od strane ljudi kao što ste Vi.',
+'createacct-benefit-body1' => '{{PLURAL:$1|izmjena|izmjene}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|stranica|stranice|stranica}}',
+'createacct-benefit-body3' => 'nedavni {{PLURAL:$1|doprinosa}}',
'badretype' => 'Šifre koje ste unijeli se ne poklapaju.',
'userexists' => 'Korisničko ime koje ste unijeli je već u upotrebi.
Molimo Vas da izaberete drugo ime.',
'cannotchangeemail' => 'Na ovom wikiju ne možete promijeniti e-mail adresu računa.',
'emaildisabled' => 'Ova web-stranica ne može da šalje e-poruke.',
'accountcreated' => 'Korisnički račun je napravljen',
-'accountcreatedtext' => 'Korisnički račun za $1 je napravljen.',
+'accountcreatedtext' => 'Korisnički račun za [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|razgovor]]) je napravljen.',
'createaccount-title' => 'Pravljenje korisničkog računa za {{SITENAME}}',
'createaccount-text' => 'Neko je napravio korisnički račun za vašu e-mail adresu na {{SITENAME}} ($4) sa imenom "$2", i sa šifrom "$3".
Trebali biste se prijaviti i promjeniti šifru.
'resetpass_header' => 'Obnovi šifru za račun',
'oldpassword' => 'Stara šifra:',
'newpassword' => 'Nova šifra:',
-'retypenew' => 'Ukucajte ponovo novu šifru:',
+'retypenew' => 'Unesite ponovo novu šifru:',
'resetpass_submit' => 'Odredi šifru i prijavi se',
'resetpass_success' => 'Vaša šifra je uspiješno promjenjena! Prijava u toku...',
'resetpass_forbidden' => 'Šifre ne mogu biti promjenjene',
# Special:PasswordReset
'passwordreset' => 'Poništavanje šifre',
-'passwordreset-text' => 'Ispunite ovaj obrazac da biste dobili e-mail podsjetnik o vašim detaljima računa.',
+'passwordreset-text-one' => 'Ispunite ovaj obrazac da biste resetovali Vašu šifru/lozinku.',
'passwordreset-legend' => 'Poništi šifru',
'passwordreset-disabled' => 'Poništavanje šifre je onemogućeno na ovoj wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Unesite jedan dio podataka ispod}}',
'passwordreset-username' => 'Korisničko ime:',
'passwordreset-domain' => 'Domen:',
'passwordreset-capture' => 'Pogledati krajnji e-mail?',
'passwordreset-capture-help' => 'Ako označite ovu kućicu, e-poruka (s privremenom lozinkom) će biti prikazana i poslata korisniku.',
-'passwordreset-email' => 'E-mail adresa:',
+'passwordreset-email' => 'Adresa e-pošte:',
'passwordreset-emailtitle' => 'Detalji računa na {{SITENAME}}',
-'passwordreset-emailtext-ip' => 'Neto (vjerovatno Vi, s IP adrese $1) je zatražio podsjetnik Vaših detalja računa
-za {{SITENAME}} ($4). Sljedeći {{PLURAL:$3|račun korisnika je|računi korisnika su}}
-povezani s ovom e-mail adresom:
+'passwordreset-emailtext-ip' => 'Neko (vjerovatno Vi, s IP adrese $1) je zatražio podsjetnik Vaših detalja računa za {{SITENAME}} ($4). Sljedeći {{PLURAL:$3|račun korisnika je|računi korisnika su}} povezani s ovom e-mail adresom:
$2
{{PLURAL:$3|Ova privremena šifra|Ove privremene šifre}} će isteći za {{PLURAL:$5|jedan dan|$5 dana}}.
-Trebate se prijaviti i odabrati novu šifru. Ako je neko drugi napravio ovaj
-zahtjev, ili ako ste se sjetili Vaše početne šifre, a ne želite je promijeniti,
-možete zanemariti ovu poruku i nastaviti koristiti staru šifru.',
-'passwordreset-emailtext-user' => 'Korisnik $1 na {{SITENAME}} je zatražio podsjetnik o detaljima Vašeg računa za {{SITENAME}}
-($4). Sljedeći {{PLURAL:$3|korisnički račun je|korisnički računi su}} povezani s ovom e-mail adresom:
+Trebate se prijaviti i odabrati novu šifru. Ako je neko drugi napravio ovaj zahtjev, ili ako ste se sjetili Vaše početne šifre, a ne želite je promijeniti, možete zanemariti ovu poruku i nastaviti koristiti staru šifru.',
+'passwordreset-emailtext-user' => 'Korisnik $1 na {{SITENAME}} je zatražio podsjetnik o detaljima Vašeg računa za {{SITENAME}} ($4). Sljedeći {{PLURAL:$3|korisnički račun je|korisnički računi su}} povezani s ovom e-mail adresom:
$2
{{PLURAL:$3|Ova privremena šifra|Ove privremene šifre}} će isteći za {{PLURAL:$5|jedan dan|$5 dana}}.
-Trebate se prijaviti i odabrati novu šifru. Ako je neko drugi napravio ovaj
-zahtjev, ili ako ste se sjetili Vaše originalne šifre, a ne želite je više promijeniti,
-možete zanemariti ovu poruku i nastaviti koristiti staru šifru.',
+Trebate se prijaviti i odabrati novu šifru. Ako je neko drugi napravio ovaj zahtjev, ili ako ste se sjetili Vaše originalne šifre, a ne želite je više promijeniti, možete zanemariti ovu poruku i nastaviti koristiti staru šifru.',
'passwordreset-emailelement' => 'Korisničko ime: $1
Privremena šifra: $2',
'passwordreset-emailsent' => 'E-mail podsjetnik je poslan.',
Izgleda da je obrisana.',
'edit-conflict' => 'Sukob izmjena.',
'edit-no-change' => 'Vaša izmjena je ignorirana, jer nije bilo promjena teksta stranice.',
+'postedit-confirmation' => 'Vaša izmjena je sačuvana.',
'edit-already-exists' => 'Stranica nije mogla biti kreirana.
Izgleda da već postoji.',
'defaultmessagetext' => 'Uobičajeni tekst poruke',
+'content-not-allowed-here' => 'Sadržaj napisan u obliku "$1" nije dozvoljen na stranici [[$2]]',
'editwarning-warning' => 'Napuštanje ove stranice može dovesti do gubitka svih promjena koje ste načinili.
Ako ste prijavljeni, možete isključiti ovo upozorenje u "{{int:prefs-editing}}" dijelu vaših opcija.',
# Content models
'content-model-wikitext' => 'wikitekst',
+'content-model-text' => 'obični tekst',
'content-model-javascript' => 'JavaScript',
'content-model-css' => 'CSS',
'editundo' => 'ukloni ovu izmjenu',
'diff-multi' => '({{plural:$1|Nije prikazana jedna međurevizija|Nisu prikazane $1 međurevizije|Nije prikazano $1 međurevizija}} od {{PLURAL:$2|jednog korisnika|$2 korisnika}})',
'diff-multi-manyusers' => '({{PLURAL:$1|Jedna međurevizija|$1 međurevizije|$1 međurevizija}} od više od $2 {{PLURAL:$2|korisnika|korisnika}} {{PLURAL:$1|nije prikazana|nisu prikazane}})',
+'difference-missing-revision' => '{{PLURAL:$2|Jedna izmjena|$2 izmjene}} od ove razlike ($1) ne {{PLURAL:$2|postoji|postoje}}.
+
+Ovo se obično dešava kada pratite zastarjelu vezu na stranice koja je obrisana.
+Više informacija možete pronaći u [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} protokol brisanja].',
# Search results
'searchresults' => 'Rezultati pretrage',
'searchmenu-legend' => 'Opcije pretrage',
'searchmenu-exists' => "'''Postoji stranica pod nazivom \"[[:\$1]]\" na ovoj wiki'''",
'searchmenu-new' => "'''Napravi stranicu \"[[:\$1|\$1]]\" na ovoj wiki!'''",
-'searchhelp-url' => 'Help:Sadržaj',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Pregledaj stranice sa ovim prefiksom]]',
'searchprofile-articles' => 'Stranice sadržaja',
'searchprofile-project' => 'Stranice pomoći i projekta',
'searchdisabled' => '<p>Izvinjavamo se! Puno pretraga teksta je privremeno onemogućena. U međuvremenu, možete koristiti Google za pretragu. Indeks može biti stariji.',
# Preferences page
-'preferences' => 'Podešavanja',
+'preferences' => 'Postavke',
'mypreferences' => 'Postavke',
'prefs-edits' => 'Broj izmjena:',
'prefsnologin' => 'Niste prijavljeni',
-'prefsnologintext' => 'Da biste mogli podešavati korisnička podešavanja, morate <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} biti prijavljeni]</span>.',
+'prefsnologintext' => 'Da biste mogli podešavati korisničke postavke, morate <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} biti prijavljeni]</span>.',
'changepassword' => 'Promijeni šifru',
'prefs-skin' => 'Koža',
'skin-preview' => 'Pregled',
'prefs-setemail' => 'Postavite e-mail adresu',
'prefs-email' => 'E-mail opcije',
'prefs-rendering' => 'Izgled',
-'saveprefs' => 'Sačuvajte podešavanja',
+'saveprefs' => 'Sačuvaj',
'resetprefs' => 'Vrati podešavanja',
'restoreprefs' => 'Vrati sve pretpostavljene postavke',
'prefs-editing' => 'Veličine tekstualnog polja',
'prefs-help-watchlist-token' => 'Popunjavanjem ovog polja tajnim ključem će generisati RSS fid za Vaš spisak praćenja.
Svako ko zna ključ u ovom polju će biti u mogućnosti da pročita Vaš spisak praćenja, tako da trebate izabrati sigurnu vrijednost.
Ovdje su navedene neke nasumično odabrane vrijednosti koje možete koristiti: $1',
-'savedprefs' => 'Vaša podešavanja su sačuvana.',
+'savedprefs' => 'Vaše postavke su sačuvane.',
'timezonelegend' => 'Vremenska zona:',
'localtime' => 'Lokalno vrijeme:',
'timezoneuseserverdefault' => 'Koristi postavke wikija ($1)',
'userrights-notallowed' => 'Vaš račun nema privilegije da dodaje ili oduzima prava korisnika.',
'userrights-changeable-col' => 'Grupe koje možete mijenjati',
'userrights-unchangeable-col' => 'Grupe koje ne možete mijenjati',
+'userrights-conflict' => 'Sukob u korisničkim pravima! Molimo pošaljite Vaše promjene ponovno.',
# Groups
'group' => 'Grupa:',
'backend-fail-closetemp' => 'Ne mogu zatvoriti privremenu datoteku.',
'backend-fail-read' => 'Ne mogu čitati datoteku $1.',
'backend-fail-create' => 'Ne mogu napraviti datoteku $1.',
+'backend-fail-readonly' => 'Skladišna osnova "$1" je trenutno samo za čitanje. Navedeni razlog je: "$2"',
+'backend-fail-synced' => 'Datoteka "$1" je u nekonzistentnom stanju u internom skladištu',
+'backend-fail-internal' => 'Došlo je do nepoznate greške u skladišnoj osnovi "$1".',
'backend-fail-contenttype' => 'Ne mogu da utvrdim kakav sadržaj ima datoteka koju treba da smjestim u "$1".',
# Lock manager
# Special:ActiveUsers
'activeusers' => 'Spisak aktivnih korisnika',
'activeusers-intro' => 'Ovo je spisak korisnika koji su napravili neku aktivnost u {{PLURAL:$1|zadnji $1 dan|zadnja $1 dana|zadnjih $1 dana}}.',
-'activeusers-count' => '{{PLURAL:$1|nedavna $1 izmjena|nedavne $1 izmjene|nedavnih $1 izmjena}} u {{PLURAL:$3|posljednji $3 dan|posljednja $3 dana|posljednjih $3 dana}}',
+'activeusers-count' => '$1 {{PLURAL:$1|izmjena|izmjene|izmjena}} u {{PLURAL:$3|posljednji $3 dan|posljednja $3 dana|posljednjih $3 dana}}',
'activeusers-from' => 'Prikaži korisnike koji počinju sa:',
'activeusers-hidebots' => 'Sakrij botove',
'activeusers-hidesysops' => 'Sakrij administratore',
'notvisiblerev' => 'Revizija je obrisana',
'watchnochange' => 'Ništa što pratite nije promjenjeno u prikazanom vremenu.',
'watchlist-details' => '{{PLURAL:$1|$1 stranica praćena|$1 stranice praćene|$1 stranica praćeno}} ne računajući stranice za razgovor.',
-'wlheader-enotif' => '* Obavještavanje e-poštom je omogućeno.',
-'wlheader-showupdated' => "* Stranice koje su izmijenjene od kad ste ih posljednji put posjetili su prikazane '''podebljanim slovima'''",
+'wlheader-enotif' => 'Obavještavanje e-poštom je omogućeno.',
+'wlheader-showupdated' => "Stranice koje su izmijenjene od kad ste ih posljednji put posjetili su prikazane '''podebljanim slovima'''",
'watchmethod-recent' => 'provjerava se da li ima praćenih stranica u nedavnim izmjenama',
'watchmethod-list' => 'provjerava se da li ima nedavnih izmjena u praćenim stranicama',
'watchlistcontains' => 'Vaš spisak praćenih članaka sadrži $1 {{PLURAL:$1|stranicu|stranica}}.',
'protect-cascadeon' => 'Ova stranica je tenutno zaštićena jer je uključena u {{PLURAL:$1|stranicu, koja ima|stranice, koje imaju|stranice, koje imaju}} uključenu prenosnu zaštitu.
Možete promijeniti stepen zaštite ove stranice, ali to neće uticati na prenosnu zaštitu.',
'protect-default' => 'Dopusti svim korisnicima',
-'protect-fallback' => 'Potrebno je imati "$1" ovlasti',
-'protect-level-autoconfirmed' => 'Blokiraj nove i neregistrovane korisnike',
+'protect-fallback' => 'Dozvolite samo korisnicima sa "$1" ovlastima/privilegijama',
+'protect-level-autoconfirmed' => 'Dopustite samo automatski potvrđenim korisnicima',
'protect-level-sysop' => 'Dozvoli samo administratorima',
'protect-summary-cascade' => 'prenosna zaštita',
'protect-expiring' => 'ističe $1 (UTC)',
'tooltip-pt-anonuserpage' => 'Korisnička stranica za ip koju Vi uređujete kao',
'tooltip-pt-mytalk' => 'Vaša stranica za razgovor',
'tooltip-pt-anontalk' => 'Razgovor o doprinosu sa ove IP adrese',
-'tooltip-pt-preferences' => 'Moja podešavanja',
+'tooltip-pt-preferences' => 'Vaše postavke',
'tooltip-pt-watchlist' => 'Spisak članaka koje pratite.',
'tooltip-pt-mycontris' => 'Spisak vašeg doprinosa',
'tooltip-pt-login' => 'Predlažemo da se prijavite, ali nije obvezno.',
'monobook.css' => '/* CSS umetnut ovdje uticat će na korisnike koji koriste Monobook skin */',
'modern.css' => '/* CSS umetnut ovdje uticat će na korisnike koji koriste Modern skin */',
'print.css' => '/* CSS umetnut ovdje uticat će na izgled isprintane stranice */',
-'handheld.css' => '/* CSS umetnut ovdje uticat će na ručne sprave koji rade na skinu konfigurisanom u $wgHandheldStyle */',
# Scripts
'common.js' => '/* Bilo koja JavaScript će biti učitana za sve korisnike pri svakom učitavanju stranice. */',
'pageinfo-language' => 'Jezik sadržaja stranice',
'pageinfo-views' => 'Broj pogleda',
'pageinfo-watchers' => 'Broj pratitelja stranice',
+'pageinfo-few-watchers' => 'Manje od $1 {{PLURAL:$1|pratioca|pratilaca}}',
'pageinfo-redirects-name' => 'Preusmjeravanja na ovu stranicu',
'pageinfo-subpages-name' => 'Podstranice ove stranice',
'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|preusmjerenje|preusmjerenja}}; $3 {{PLURAL:$3|nepreusmjerenje|nepreusmjerenja}})',
'pageinfo-contentpage' => 'Broji se kao stranica sa sadržajem',
'pageinfo-contentpage-yes' => 'Da',
'pageinfo-protect-cascading-yes' => 'Da',
+'pageinfo-category-info' => 'Informacije o kategoriji',
'pageinfo-category-pages' => 'Broj stranica',
+'pageinfo-category-subcats' => 'Broj podkategorija',
'pageinfo-category-files' => 'Broj datoteka',
# Skin names
'file-nohires' => 'Veća rezolucija nije dostupna.',
'svg-long-desc' => 'SVG fajl, dozvoljeno $1 × $2 piksela, veličina fajla: $3',
'svg-long-desc-animated' => 'Animirana SVG datoteka, nominalno: $1 × $2 piksela, veličina datoteke: $3',
+'svg-long-error' => 'Nevaljana SVG datoteka: $1',
'show-big-image' => 'Vidi sliku u punoj veličini (rezoluciji)',
'show-big-image-preview' => 'Veličina ovog prikaza: $1.',
'show-big-image-other' => '{{PLURAL:$2|Druga rezolucija|Ostale rezolucije}}: $1.',
'minutes' => '{{PLURAL:$1|$1 minuta|$1 minute|$1 minuta}}',
'hours' => '{{PLURAL:$1|$1 sat|$1 sata|$1 sati}}',
'days' => '{{PLURAL:$1|$1 dan|$1 dana|$1 dana}}',
+'weeks' => '{{PLURAL:$1|$1 sedmica}}',
'months' => '{{PLURAL:$1|$1 mjesec|$1 mjeseci}}',
'years' => '{{PLURAL:$1|$1 godina|$1 godine|$1 godina}}',
'ago' => 'prije $1',
+'just-now' => 'upravo sad',
+
+# Human-readable timestamps
+'hours-ago' => 'prije $1 {{PLURAL:$1|sat|sata|sati}}',
+'minutes-ago' => 'prije $1 {{PLURAL:$1|minute|minute|minuta}}',
+'seconds-ago' => 'prije $1 {{PLURAL:$1|sekunde|sekunde|sekundi}}',
+'monday-at' => 'Ponedeljak u $1',
+'tuesday-at' => 'Utorak u $1',
+'wednesday-at' => 'Srijeda u $1',
+'thursday-at' => 'Četvrtak u $1',
+'friday-at' => 'Petak u $1',
+'saturday-at' => 'Subota u $1',
+'sunday-at' => 'Nedjelja u $1',
+'yesterday-at' => 'Jučer u $1',
# Bad image list
'bad_image_list' => "Koristi se sljedeći format:
# Scary transclusion
'scarytranscludedisabled' => '[Međuwiki umetanje je isključeno]',
'scarytranscludefailed' => '[Neuspješno preusmjerenje šablona na $1]',
+'scarytranscludefailed-httpstatus' => '[Preuzimanje šablona nije uspjelo za $1: HTTP $2]',
'scarytranscludetoolong' => '[URL je predugačak]',
# Delete conflict
'version-license' => 'Licenca',
'version-poweredby-credits' => "Ova wiki je zasnovana na '''[//www.mediawiki.org/ MediaWiki]''', autorska prava zadržana © 2001-$1 $2.",
'version-poweredby-others' => 'ostali',
+'version-credits-summary' => 'Željeli bismo se zahvaliti sljedećim ljudima na njihovom doprinosu [[Special:Version|MediaWikiju]].',
'version-license-info' => 'Mediawiki je slobodni softver, možete ga redistribuirati i/ili mijenjati pod uslovima GNU opće javne licence kao što je objavljeno od strane Fondacije Slobodnog Softvera, bilo u verziji 2 licence, ili (po vašoj volji) nekoj od kasniji verzija.
Mediawiki se distriburia u nadi da će biti korisna, ali BEZ IKAKVIH GARANCIJA, čak i bez ikakvih posrednih garancija o KOMERCIJALNOSTI ili DOSTUPNOSTI ZA ODREĐENU SVRHU. Pogledajte GNU opću javnu licencu za više detalja.
'version-entrypoints-header-entrypoint' => 'Ulazna tačka',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect-submit' => 'Idi',
+'redirect-value' => 'Vrijednost:',
+'redirect-user' => 'Korisnički ID',
+'redirect-revision' => 'Verzija stranice',
+'redirect-file' => 'Naziv datoteke',
+'redirect-not-exists' => 'Vrijednost nije pronađena',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Pretraga za duplim datotekama',
'fileduplicatesearch-summary' => 'Pretraga za duplim datotekama na bazi njihove haš vrijednosti.',
'htmlform-submit' => 'Pošalji',
'htmlform-reset' => 'Vrati izmjene',
'htmlform-selectorother-other' => 'Ostalo',
+'htmlform-no' => 'Ne',
+'htmlform-yes' => 'Da',
+'htmlform-chosen-placeholder' => 'Izaberite opciju',
# SQLite database support
'sqlite-has-fts' => '$1 sa podrškom pretrage cijelog teksta',
'logentry-patrol-patrol-auto' => '$1 je automatski {{GENDER:$2|označio|označila}} izmjenu $4 stranice $3 pregledanim',
'logentry-newusers-newusers' => 'Korisnički račun $1 je {{GENDER:$2|napravljen}}',
'logentry-newusers-create' => 'Korisnički račun $1 je {{GENDER:$2|napravljen}}',
-'logentry-newusers-create2' => '$3 je {{GENDER:$2|napravio|napravila}} korisnički račun $1',
+'logentry-newusers-create2' => '$1 je {{GENDER:$2|napravio|napravila}} korisnički račun $3',
'logentry-newusers-byemail' => 'Korisnički račun $3 je {{GENDER:$2|napravio|napravila}} $1 i lozinka/šifra je poslana putem e-maila',
'logentry-newusers-autocreate' => 'Korisnički račun $1 je automatski {{GENDER:$2|napravljen}}',
'logentry-rights-rights' => '$1 je {{GENDER:$2|promijenio|promijenila|promijenio}} članstvo grupe za $3 iz $4 u $5',
'duration-centuries' => '$1 {{PLURAL:$1|vijek|vijeka|vijekova}}',
'duration-millennia' => '$1 {{PLURAL:$1|milenij|milenija}}',
+# Image rotation
+'rotate-comment' => 'Slika rotirana za $1 {{PLURAL:$1|stepen|stepeni}} u smjeru kazaljke na satu',
+
);
'qbbrowse' => 'Berowoso',
'qbedit' => 'Padécéŋ',
'qbpageoptions' => 'Édé leppa',
-'qbpageinfo' => 'Konteks',
'qbmyoptions' => "Leppana iya'",
'qbspecialpages' => 'Leppa spésiala',
'faq' => 'FAQ',
'search-result-size' => '$1 ({{PLURAL:$2|1 ada|$2 ada}})',
'search-redirect' => '(redirect $1)',
-# Quickbar
-'qbsettings-none' => 'Dégaga',
-
# Preferences page
'mypreferences' => 'Bérékkeŋeŋna iyya',
'prefsnologin' => "Déppa ma'log attama'",
*
*/
-$fallback = 'ru';
\ No newline at end of file
+$fallback = 'ru';
+
+$namespaceNames = array(
+ NS_MEDIA => 'Меди',
+ NS_SPECIAL => 'Тусхай',
+ NS_TALK => 'Хэлэлсэхэ',
+ NS_USER => 'Хэрэглэгшэ',
+ NS_USER_TALK => 'Хэрэглэгшые_хэлэлсэхэ',
+ NS_PROJECT_TALK => '$1_тухай_хэлэлсэхэ',
+ NS_FILE => 'Файл',
+ NS_FILE_TALK => 'Файл_хэлэлсэхэ',
+ NS_MEDIAWIKI_TALK => 'MediaWiki_хэлэлсэхэ',
+ NS_TEMPLATE => 'Загбар',
+ NS_TEMPLATE_TALK => 'Загбар_хэлэлсэхэ',
+ NS_HELP => 'Туһаламжа',
+ NS_HELP_TALK => 'Туһаламжа_хэлэлсэл',
+ NS_CATEGORY => 'Категори',
+ NS_CATEGORY_TALK => 'Категори_хэлэлсэхэ',
+);
+
+$namespaceAliases = array(
+ # Russian namespaces
+ 'Обсуждение' => NS_TALK,
+ 'Участник' => NS_USER,
+ 'Обсуждение_участника' => NS_USER_TALK,
+ 'Обсуждение_{{GRAMMAR:genitive|$1}}' => NS_PROJECT_TALK,
+ 'Обсуждение_файла' => NS_FILE_TALK,
+ 'Обсуждение_MediaWiki' => NS_MEDIAWIKI_TALK,
+ 'Обсуждение_шаблона' => NS_TEMPLATE_TALK,
+ 'Справка' => NS_HELP,
+ 'Обсуждение_справки' => NS_HELP_TALK,
+ 'Категория' => NS_CATEGORY,
+ 'Обсуждение_категории' => NS_CATEGORY_TALK,
+);
+
+// Remove Russian gender aliases
+$namespaceGenderAliases = array();
+
* @author Marcmpujol
* @author Martorell
* @author McDutchie
+ * @author Nemo bis
* @author Pasqual (ca)
* @author Paucabot
* @author PerroVerd
* @author Pitort
* @author Pérez
* @author Qllach
+ * @author QuimGil
* @author SMP
* @author Smeira
* @author Solde
'disclaimers' => 'Avís general',
'disclaimerpage' => 'Project:Avís general',
'edithelp' => 'Ajuda',
-'edithelppage' => "Help:Com s'edita una pàgina",
-'helppage' => 'Help:Ajuda',
+'helppage' => 'Help:Índex',
'mainpage' => 'Pàgina principal',
'mainpage-description' => 'Pàgina principal',
'policy-url' => 'Project:Polítiques',
-'portal' => 'Portal comunitari',
-'portal-url' => 'Project:Portal',
+'portal' => 'Portal de la comunitat',
+'portal-url' => 'Project:Portal de la comunitat',
'privacy' => 'Política de privadesa',
'privacypage' => 'Project:Política de privadesa',
'welcomecreation-msg' => 'El vostre compte ha estat creat.
No oblideu de canviar les vostres [[Special:Preferences|preferències de {{SITENAME}}]].',
'yourname' => "Nom d'usuari",
-'userlogin-yourname' => "Nom d'usuari",
+'userlogin-yourname' => 'Usuari',
'userlogin-yourname-ph' => "Introduïu el vostre nom d'usuari",
'yourpassword' => 'Contrasenya',
'userlogin-yourpassword' => 'Contrasenya',
'createacct-yourpasswordagain' => 'Confirmeu la contrasenya',
'createacct-yourpasswordagain-ph' => 'Introduïu de nou la contrasenya',
'remembermypassword' => 'Recorda la contrasenya entre sessions (per un màxim de $1 {{PLURAL:$1|dia|dies}})',
-'userlogin-remembermypassword' => "Recorda'm",
-'userlogin-signwithsecure' => 'Inicia la sessió amb un servidor segur',
+'userlogin-remembermypassword' => 'Mantén-me connectat',
+'userlogin-signwithsecure' => 'Connexió segura',
'securelogin-stick-https' => "Roman connectat via HTTPS desprès d'autenticar-se",
'yourdomainname' => 'El vostre domini',
'password-change-forbidden' => 'No podeu canviar les contrasenyes en aquest wiki.',
'gotaccount' => 'Ja teniu un compte? $1.',
'gotaccountlink' => 'Inicia una sessió',
'userlogin-resetlink' => "Heu oblidat les vostres dades d'accés?",
+'userlogin-resetpassword-link' => 'Reinicia la contrasenya',
'helplogin-url' => 'Help:Registrar-se',
-'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ajuda per registrar-se]]',
-'createacct-join' => 'Introduïu les dades a continuació.',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ajuda]]',
+'createacct-join' => 'Introduïu les vostres dades.',
'createacct-emailrequired' => 'Adreça de correu electrònic',
'createacct-emailoptional' => 'Adreça de correu electrònic (opcional)',
'createacct-email-ph' => 'Introduïu la vostra adreça de correu electrònic',
-'createaccountmail' => "Utilitza una contrasenya aleatòria temporal i envia-la a l'adreça de correu electrònic especificat a continuació",
+'createaccountmail' => "Utilitza una contrasenya aleatòria temporal i envia-la a l'adreça de correu especificada a continuació.",
'createacct-realname' => 'Nom real (opcional)',
'createaccountreason' => 'Motiu:',
'createacct-reason' => 'Motiu',
+'createacct-reason-ph' => 'Per què creeu un altre compte',
'createacct-captcha' => 'Control de seguretat',
'createacct-imgcaptcha-ph' => 'Introduïu el text que apareix a dalt',
+'createacct-submit' => 'Crea el meu compte',
'createacct-benefit-heading' => '{{SITENAME}} és feta per gent com tu.',
-'createacct-benefit-body1' => 'edicions',
-'createacct-benefit-body2' => 'pàgines',
-'createacct-benefit-body3' => 'col·laboradors aquest mes',
+'createacct-benefit-body1' => '{{PLURAL:$1|edició|edicions}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|pàgina|pàgines}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|col·laborador recent|col·laboradors recents}}',
'badretype' => 'Les contrasenyes que heu introduït no coincideixen.',
'userexists' => 'El nom que heu entrat ja és en ús.
Escolliu-ne un de diferent.',
'cannotchangeemail' => 'No podeu canviar adreces de correu electrònic en aquest wiki.',
'emaildisabled' => 'El lloc no pot enviar correus electrònics.',
'accountcreated' => "S'ha creat el compte",
-'accountcreatedtext' => "S'ha creat el compte d'usuari de $1.",
+'accountcreatedtext' => "S'ha creat el compte d'usuari de [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|discussió]]).",
'createaccount-title' => "Creació d'un compte a {{SITENAME}}",
'createaccount-text' => "Algú ha creat un compte d'usuari anomenat $2 al projecte {{SITENAME}}
($4) amb la vostra adreça de correu electrònic. La contrasenya per a l'usuari «$2» és «$3». Hauríeu d'accedir al compte i canviar-vos aquesta contrasenya quan abans millor.
'resetpass-wrong-oldpass' => 'Contrasenya actual o temporal no vàlida.
Deveu haver canviat la vostra contrasenya o demanat una nova contrasenya temporal.',
'resetpass-temp-password' => 'Contrasenya temporal:',
+'resetpass-abort-generic' => 'Una extensió ha interromput el canvi de contrasenya.',
# Special:PasswordReset
'passwordreset' => 'Restablir contrasenya',
-'passwordreset-text' => 'Completeu el següent formulari per reinicialitzar la vostra contrasenya',
'passwordreset-legend' => 'Restablir contrasenya',
'passwordreset-disabled' => "S'ha desactivat el restabliment de contranyes en aquest wiki.",
'passwordreset-emaildisabled' => 'Les opcions de correu electrònic no estan habilitades en aquest wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Introduïu un dels elements de dades següents}}',
'passwordreset-username' => "Nom d'usuari:",
'passwordreset-domain' => 'Domini',
'passwordreset-capture' => 'Veure el missatge de correu electrònic?',
Sembla haver estat esborrada.",
'edit-conflict' => "Conflicte d'edició.",
'edit-no-change' => 'La vostra modificació ha estat ignorada perquè no feia cap canvi al text.',
+'postedit-confirmation' => 'La modificació ha estat desada.',
'edit-already-exists' => "No s'ha pogut crear una pàgina.
Ja existeix.",
'defaultmessagetext' => 'Missatge per defecte',
'invalid-content-data' => 'Dades de contingut no vàlides',
'content-not-allowed-here' => 'No és permés el contingut "$1" a la pàgina [[$2]]',
'editwarning-warning' => "Si sortiu d'aquesta pàgina perdreu tots els canvis que hàgiu fet.
-Si teniu un compte d'usuari, podeu eliminar aquest avís a la secció «{{int:prefs-editing}}» de les vostres preferències.",
+Si teniu un compte d'usuari, podeu eliminar aquest avís a la secció «Caixa d'edició» de les vostres preferències.",
# Content models
'content-model-wikitext' => 'wikitext',
'searchmenu-legend' => 'Opcions de cerca',
'searchmenu-exists' => "'''Hi ha una pàgina anomenada «[[:$1]]» en aquest wiki'''",
'searchmenu-new' => "'''Creeu la pàgina «[[:$1]]» en aquest wiki!'''",
-'searchhelp-url' => 'Help:Ajuda',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Mostra pàgines amb aquest prefix]]',
'searchprofile-articles' => 'Pàgines de contingut',
'searchprofile-project' => "Pàgines d'ajuda i de projecte",
'reuploaddesc' => 'Torna al formulari per apujar.',
'upload-tryagain' => 'Envia la descripció del fitxer modificat',
'uploadnologin' => 'No heu iniciat una sessió',
-'uploadnologintext' => "Heu d'[[Special:UserLogin|iniciar una sessió]]
-per a penjar-hi fitxers.",
+'uploadnologintext' => 'Heu de $1 per a penjar-hi fitxers.',
'upload_directory_missing' => "No s'ha trobat el directori de càrrega ($1) i tampoc no ha pogut ser creat pel servidor web.",
'upload_directory_read_only' => 'El servidor web no pot escriure al directori de càrrega ($1)',
'uploaderror' => "S'ha produït un error en l'intent de carregar",
# Special:ActiveUsers
'activeusers' => "Llista d'usuaris actius",
'activeusers-intro' => "Aquí hi ha una llista d'usuaris que han tingut algun tipus d'activitat en {{PLURAL:$1|el darrer dia|els darrers $1 dies}}.",
-'activeusers-count' => '$1 {{PLURAL:$1|modificació|modificacions}} en {{PLURAL:$3|el darrer dia|els $3 darrers dies}}',
+'activeusers-count' => '$1 {{PLURAL:$1|acció|accions}} en {{PLURAL:$3|el darrer dia|els $3 darrers dies}}',
'activeusers-from' => 'Mostra els usuaris començant per:',
'activeusers-hidebots' => 'Amaga bots',
'activeusers-hidesysops' => 'Amaga administradors',
'notvisiblerev' => 'La versió ha estat esborrada',
'watchnochange' => "No s'ha editat cap dels elements que vigileu en el període de temps que es mostra.",
'watchlist-details' => 'Teniu $1 {{PLURAL:$1|pàgina vigilada|pàgines vigilades}}, sense comptar les pàgines de discussió.',
-'wlheader-enotif' => "* S'ha habilitat la notificació per correu electrònic.",
-'wlheader-showupdated' => "* Les pàgines que s'han canviat des de la vostra darrera visita es mostren '''en negreta'''",
+'wlheader-enotif' => 'La notificació per correu electrònic està habilitada.',
+'wlheader-showupdated' => "Les pàgines que s'han canviat des de la vostra darrera visita es mostren en '''negreta'''.",
'watchmethod-recent' => "s'està comprovant si hi ha pàgines vigilades en les edicions recents",
'watchmethod-list' => "s'està comprovant si hi ha edicions recents en les pàgines vigilades",
'watchlistcontains' => 'La vostra llista de seguiment conté {{PLURAL:$1|una única pàgina|$1 pàgines}}.',
La darrera modificació ha estat feta per l'usuari [[User:$3|$3]] ([[User talk:$3|Discussió]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).",
'editcomment' => "El resum d'edició ha estat: «$1».",
-'revertpage' => "Revertides les edicions de [[Special:Contributions/$2|$2]] ([[User talk:$2|discussió]]). S'ha recuperat la darrera versió de l'usuari [[User:$1|$1]]",
+'revertpage' => "Revertides les edicions de [[Special:Contributions/$2|$2]] ([[User talk:$2|discussió]]) a l'última versió de [[User:$1|$1]]",
'revertpage-nouser' => "Desfetes les edicions de (nom d'usuari eliminat) a l'última revisió feta per [[User:$1|$1]]",
'rollback-success' => "Edicions revertides de $1; s'ha canviat a la darrera versió de $2.",
'tooltip-pt-preferences' => 'Les vostres preferències.',
'tooltip-pt-watchlist' => 'La llista de pàgines de les que estau vigilant els canvis.',
'tooltip-pt-mycontris' => 'Llista de les vostres contribucions.',
-'tooltip-pt-login' => 'Us animem a registrar-vos, però no és obligatori.',
+'tooltip-pt-login' => 'Us animem a registrar-vos, però no és obligatori',
'tooltip-pt-anonlogin' => 'Us animem a registrar-vos, però no és obligatori.',
'tooltip-pt-logout' => "Finalitza la sessió d'usuari",
-'tooltip-ca-talk' => "Discussió sobre el contingut d'aquesta pàgina.",
+'tooltip-ca-talk' => "Discussió sobre el contingut d'aquesta pàgina",
'tooltip-ca-edit' => 'Podeu modificar aquesta pàgina. Si us plau, previsualitzeu-la abans de desar.',
'tooltip-ca-addsection' => 'Comença una nova secció',
'tooltip-ca-viewsource' => 'Aquesta pàgina està protegida. Podeu veure el seu codi font.',
'tooltip-ca-unwatch' => 'Suprimiu aquesta pàgina de la vostra llista de seguiment',
'tooltip-search' => 'Cerca a {{SITENAME}}',
'tooltip-search-go' => 'Vés a una pàgina amb aquest nom exacte si existeix',
-'tooltip-search-fulltext' => 'Cerca a les pàgines aquest text',
-'tooltip-p-logo' => 'Pàgina principal',
+'tooltip-search-fulltext' => 'Cerca aquest text a les pàgines',
+'tooltip-p-logo' => 'Visiteu la pàgina principal',
'tooltip-n-mainpage' => 'Visiteu la pàgina principal.',
'tooltip-n-mainpage-description' => 'Vegeu la pàgina principal',
-'tooltip-n-portal' => 'Sobre el projecte, què podeu fer, on podeu trobar coses.',
+'tooltip-n-portal' => 'Sobre el projecte, què podeu fer, on podeu trobar coses',
'tooltip-n-currentevents' => "Per trobar informació general sobre l'actualitat.",
-'tooltip-n-recentchanges' => 'La llista de canvis recents a la wiki.',
-'tooltip-n-randompage' => 'Vés a una pàgina aleatòria.',
-'tooltip-n-help' => 'El lloc per esbrinar.',
-'tooltip-t-whatlinkshere' => 'Llista de totes les pàgines viqui que enllacen ací.',
+'tooltip-n-recentchanges' => 'Llista de canvis recents al wiki',
+'tooltip-n-randompage' => "Pàgina a l'atzar",
+'tooltip-n-help' => 'El lloc per saber més coses',
+'tooltip-t-whatlinkshere' => 'Llista de totes les pàgines wiki que enllacen aquí',
'tooltip-t-recentchangeslinked' => 'Canvis recents a pàgines que enllacen amb aquesta pàgina.',
'tooltip-feed-rss' => "Canal RSS d'aquesta pàgina",
'tooltip-feed-atom' => "Canal Atom d'aquesta pàgina",
# New logging system
'logentry-delete-delete' => '$1 ha esborrat $3',
'logentry-delete-restore' => '$1 ha restaurat $3',
-'logentry-delete-event' => "$1 ha canviat la visibilitat {{PLURAL:$5|d'un esdeveniment al registre|de $5 esdeveniments al registre}} de $3: $4",
-'logentry-delete-revision' => "$1 ha canviat la visibilitat {{PLURAL:$5|d'una revisió|de $5 revisions}} a la pàgina $3: $4",
-'logentry-delete-event-legacy' => "$1 ha canviat la visibilitat d'esdeveniments al registre de $3",
-'logentry-delete-revision-legacy' => '$1 ha canviat la visibilitat de revisions a la pàgina $3',
+'logentry-delete-event' => "$1 {{GENDER:$2|ha canviat}} la visibilitat {{PLURAL:$5|d'un esdeveniment al registre|de $5 esdeveniments al registre}} de $3: $4",
+'logentry-delete-revision' => "$1 {{GENDER:$2|ha canviat}} la visibilitat {{PLURAL:$5|d'una revisió|de $5 revisions}} a la pàgina $3: $4",
+'logentry-delete-event-legacy' => "$1 {{GENDER:$2|ha canviat}} la visibilitat d'esdeveniments al registre de $3",
+'logentry-delete-revision-legacy' => '$1 {{GENDER:$2|ha canviat}} la visibilitat de revisions a la pàgina $3',
'logentry-suppress-delete' => '$1 {{GENDER:$2|ha suprimit}} la pàgina $3',
-'logentry-suppress-event' => "$1 secretament ha canviat la visibilitat {{PLURAL:$5|d'un esdeveniment al registre|de $5 esdeveniments al registre}} de $3: $4",
-'logentry-suppress-revision' => "$1 secretament ha canviat la visibilitat {{PLURAL:$5|d'una revisió|de $5 revisions}} a la pàgina $3: $4",
-'logentry-suppress-event-legacy' => "$1 secretament ha canviat la visibilitat d'esdeveniments al registre de $3",
-'logentry-suppress-revision-legacy' => '$1 secretament ha canviat la visibilitat de revisions a la pàgina $3',
+'logentry-suppress-event' => "$1 secretament {{GENDER:$2|ha canviat}} la visibilitat {{PLURAL:$5|d'un esdeveniment al registre|de $5 esdeveniments al registre}} de $3: $4",
+'logentry-suppress-revision' => "$1 secretament {{GENDER:$2|ha canviat}} la visibilitat {{PLURAL:$5|d'una revisió|de $5 revisions}} a la pàgina $3: $4",
+'logentry-suppress-event-legacy' => "$1 secretament {{GENDER:$2|ha canviat}} la visibilitat d'esdeveniments al registre de $3",
+'logentry-suppress-revision-legacy' => '$1 secretament {{GENDER:$2|ha canviat}} la visibilitat de revisions a la pàgina $3',
'revdelete-content-hid' => 'ha ocultat contingut',
'revdelete-summary-hid' => "ha ocultat el resum d'edició",
'revdelete-uname-hid' => "ha ocultat el nom d'usuari",
'logentry-move-move' => '$1 ha mogut $3 a $4',
'logentry-move-move-noredirect' => '$1 ha mogut $3 a $4 sense deixar una redirecció',
'logentry-move-move_redir' => '$1 ha mogut $3 a $4 sobre una redirecció',
-'logentry-move-move_redir-noredirect' => '$1 ha desplaçat la pàgina $3 a $4 on hi havia una redirecció i sense crear una nova redirecció',
-'logentry-patrol-patrol' => '1 $ va marcar la revisió $ 4 de "$ 3" com a supervisada',
-'logentry-patrol-patrol-auto' => '$1 ha marcat automàticament la versió $4 de la pàgina $3 com a patrullada',
+'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2|ha desplaçat}} la pàgina $3 a $4 on hi havia una redirecció i sense crear una nova redirecció',
+'logentry-patrol-patrol' => '$1 {{GENDER:$2|ha marcat}} la revisió $4 de la pàgina «$3» com a patrullada',
+'logentry-patrol-patrol-auto' => '$1 {{GENDER:$2|ha marcat}} automàticament la versió $4 de la pàgina $3 com a patrullada',
'logentry-newusers-newusers' => "El compte d'usuari $1 {{GENDER:$2|ha estat creat}}",
'logentry-newusers-create' => "El compte d'usuari $1 {{GENDER:$2|ha estat creat}}",
'logentry-newusers-create2' => "El compte d'usuari $3 {{GENDER:$2|ha estat creat}} per $1",
'duration-centuries' => '$1 {{PLURAL:$1|segle|segles}}',
'duration-millennia' => '$1 {{PLURAL:$1|mil·leni|mil·lenis}}',
+# Image rotation
+'rotate-comment' => 'Imatge girada $1 {{PLURAL:$1|grau|graus}} en el sentit de les agulles del rellotge',
+
);
'disclaimers' => 'Mò̤ hô-cáik sĭng-mìng',
'disclaimerpage' => 'Project:Mò̤ hô-cáik sĭng-mìng',
'edithelp' => 'Siŭ-gāi bŏng-cô',
-'edithelppage' => 'Help:Siŭ-gāi',
'helppage' => 'Help:Mŭk-liŏh',
'mainpage' => 'Tàu Hiĕk',
'mainpage-description' => 'Tàu Hiĕk',
'prevn' => 'sèng {{PLURAL:$1|$1}} hâung',
'nextn' => 'â {{PLURAL:$1|$1}} hâung',
'viewprevnext' => 'Káng ($1 {{int:pipe-separator}} $2) ($3).',
-'searchhelp-url' => 'Help:Mŭk-liŏh',
'showingresults' => "Hiēng-sê téng #<b>$2</b> kăi-sṳ̄ gì {{PLURAL:$1|'''1'''|'''$1'''}} bĭk giék-guō.",
'showingresultsnum' => "Hiēng-sê téng #<b>$2</b> kăi-sṳ̄ gì {{PLURAL:$3|'''1'''|'''$3'''}} bĭk giék-guō.",
# Special:LinkSearch
'linksearch-ok' => 'Sìng-tō̤',
-# E-mail user
+# Email user
'emailuser' => 'Gié diêng-piĕ ké̤ṳk ĭ',
'emailpage' => 'Gié diêng-piĕ ké̤ṳk ĭ',
'defemailsubject' => '{{SITENAME}} diêng-piĕ',
'namespacesall' => 'sū-iū',
'monthsall' => 'gó̤-lòng nièng',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => 'Káuk-nêng diêng-piĕ dê-cī',
'confirmemail_invalid' => 'Káuk-nêng mā mò̤-hâu, kō̤-nèng ī-gĭng guó-gĭ lāu.',
'confirmemail_needlogin' => 'Chiāng nṳ̄ sĕng $1 nṳ̄ gì diêng-piĕ dê-cī.',
'watchlisttools-edit' => 'Káng gâe̤ng siŭ-gāi gáng-sê-dăng',
'watchlisttools-raw' => 'Siŭ-gāi nguòng-sṳ̄ gáng-sê-dăng',
-# Special:FilePath
-'filepath-page' => 'Ùng-giông:',
-
# Special:SpecialPages
'specialpages' => 'Dĕk-sṳ̀ hiĕk',
NS_USER => 'Декъашхо',
NS_USER_TALK => 'Декъашхон_дийцаре',
NS_PROJECT_TALK => '{{GRAMMAR:genitive|$1}}_дийцаре',
- NS_FILE => 'Ð¥lÑ\83м',
- NS_FILE_TALK => 'Ð¥lÑ\83ман_дийцаре',
+ NS_FILE => 'Файл',
+ NS_FILE_TALK => 'Файлан_дийцаре',
NS_MEDIAWIKI => 'MediaWiki',
NS_MEDIAWIKI_TALK => 'MediaWiki_дийцаре',
- NS_TEMPLATE => 'Куцкеп',
- NS_TEMPLATE_TALK => 'Куцкеп_дийцаре',
- NS_HELP => 'Гlо',
- NS_HELP_TALK => 'Гlон_дийцаре',
- NS_CATEGORY => 'Кадегар',
- NS_CATEGORY_TALK => 'Кадегар_дийцаре',
+ NS_TEMPLATE => 'Кеп',
+ NS_TEMPLATE_TALK => 'Кепан_дийцаре',
+ NS_HELP => 'ГӀо',
+ NS_HELP_TALK => 'ГӀо_дийцаре',
+ NS_CATEGORY => 'Категори',
+ NS_CATEGORY_TALK => 'Категорин_дийцаре',
);
$namespaceAliases = array(
'Дийцаре_{{GRAMMAR:genitive|$1}}' => NS_PROJECT_TALK,
'Сурт' => NS_FILE,
'Сурти_дийца' => NS_FILE_TALK,
+ 'Хlум' => NS_FILE,
+ 'Хlуман_дийцаре' => NS_FILE_TALK,
'Дийцаре_хlуман' => NS_FILE_TALK,
'МедйаВики' => NS_MEDIAWIKI,
'МедйаВики_дийца' => NS_MEDIAWIKI_TALK,
'MediaWiki_Дийцаре' => NS_MEDIAWIKI_TALK,
'Дакъан' => NS_TEMPLATE,
'Дакъан_дийца' => NS_TEMPLATE_TALK,
+ 'Куцкеп' => NS_TEMPLATE,
+ 'Куцкеп_дийцаре' => NS_TEMPLATE_TALK,
'ГІо' => NS_HELP,
'ГІодан_дийца' => NS_HELP_TALK,
+ 'Гlо' => NS_HELP,
+ 'Гlон_дийцаре' => NS_HELP_TALK,
'Тоба' => NS_CATEGORY,
- 'Тобан_дийца' => NS_CATEGORY_TALK
+ 'Тобан_дийца' => NS_CATEGORY_TALK,
+ 'Кадегар' => NS_CATEGORY,
+ 'Кадегар_дийцаре' => NS_CATEGORY_TALK,
);
// Remove Russian aliases
'tog-editsection' => 'Гайта хьажориг «нисйе» аьлла хlора агlона',
'tog-editsectiononrightclick' => 'Нисде дакъа шозза бакъехьар дахка тlетаlийча оцу кортан (JavaScript)',
'tog-showtoc' => 'Гойти коьртнаш (оцу агlонашна лаххара 3 коьртнашца)',
-'tog-rememberpassword' => 'Даглаца сан дlавазвалар хlокху гlулкхдечу гlирса тlяхь (цхьан $1 {{PLURAL:$1|де|ден|динахь}})',
+'tog-rememberpassword' => 'Даглаца сан дlавазвалар/ялар хlокху гlулкхдечу гlирса тlяхь (цхьан $1 {{PLURAL:$1|де|ден|динахь}})',
'tog-watchcreations' => 'Тlетоха ас кхоллина агlонаш тергаме могlам чу',
'tog-watchdefault' => 'Тlетоха ас нисйина агlонаш тергаме могlам чу',
'tog-watchmoves' => 'Тlетоха ас цlераш хийцина агlонаш тергаме могlам чу',
-'tog-watchdeletion' => 'Тlетоха ас дlайайина агlонаш тергаме могlам чу',
+'tog-watchdeletion' => 'Тlетоха ас дӀаяхина агlонаш тергаме могlам чу',
'tog-minordefault' => 'Къастам бе нисйиначарн хlумцадеш кегийра долушсанна',
'tog-previewontop' => 'Чуяккха хьалххьажар рéдоккхучу кора хьалха',
'tog-previewonfirst' => 'Гайта хьалххьажар рéдоккхуче дехьа волуш',
'tog-watchlisthidepatrolled' => 'Къайладаха хьаьжина волу нисдарш оцу тергаме могlам чура',
'tog-ccmeonemails' => 'Дlадахьийта суна исанна кехат, аса дохьуьйтуш долу кхечу декъашхошна.',
'tog-diffonly' => 'Ма гайта агlон чулацам шина башхонца цхьатерра йолуш',
-'tog-showhiddencats' => 'Гайта къайлаха йолу кадегарш',
+'tog-showhiddencats' => 'Гайта къайлаха йолу категореш',
'tog-noconvertlink' => 'Хааман хьажориг кхуллу гlирс дlабайа',
'tog-norollbackdiff' => 'Йух яккхиначул тlаьхьа ма гайта къастаман башхо',
'tog-useeditwarning' => 'Хаамбе бина хийцамаш дӀаязцабеш ара волучу хенахь',
'underline-always' => 'Даимна',
'underline-never' => 'Цкъа а',
-'underline-default' => 'Лелайа хьажгlодириг нисйарца',
+'underline-default' => 'Лелайа браузеран нисйарца',
# Font style option in Special:Preferences
'editfont-style' => 'Тадар чохь долу йозан тайп:',
'oct' => 'октябрь',
'nov' => 'ноябрь',
'dec' => 'декабрь',
+'january-date' => 'Январь $1',
+'february-date' => 'Февраль $1',
+'march-date' => 'Март $1',
+'april-date' => 'Апрель $1',
+'may-date' => 'Май $1',
+'june-date' => 'Июнь $1',
+'july-date' => 'Июль $1',
+'august-date' => 'Август $1',
+'september-date' => 'Сентябрь $1',
+'october-date' => 'Октябрь $1',
+'november-date' => 'Ноябрь $1',
+'december-date' => 'Декабрь $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категори|Категореш}}',
'category_header' => 'Агlонаш оц категоречохь «$1»',
'subcategories' => 'Бухаркатегореш',
-'category-media-header' => 'Ð¥Ó\80Ñ\83мнаш оцу категори чохь «$1»',
+'category-media-header' => 'Файлаш оцу категори чохь «$1»',
'category-empty' => "''ХӀара категори хӀинца йаьсса ю.''",
'hidden-categories' => '{{PLURAL:$1|Къайлаха категори|Къайлаха йолу категореш}}',
'hidden-category-category' => 'Къайлаха йолу категореш',
'category-article-count' => '{{PLURAL:$2|ХӀокх категори чохь яц цхьа агӀо бе.|{{PLURAL:$1|Гойташ $1 агӀо|Гойту $1 агӀонаш|Гойту $1 агӀонаш}} хӀокх категорешца кху $2.}}',
'category-article-count-limited' => 'Хlокх категори чохь {{PLURAL:$1|$1 агlо|$1 агlонаш|$1 агlонаш}}.',
'category-file-count' => '{{PLURAL:$2|ХӀокх категори чохь цхьа файл бе яц.|{{PLURAL:$1|Гойта $1 файл|Гойту $1 файл|Гойту $1 файлаш}} хӀокх категорешца кху $2.}}',
-'category-file-count-limited' => 'Ð¥Ó\80окÑ\85 каÑ\82егоÑ\80и Ñ\87оÑ\85Ñ\8c {{PLURAL:$1|$1 Ñ\84айл|$1 Ñ\85Ó\80Ñ\83ма|$1 файлаш}}.',
+'category-file-count-limited' => 'Ð¥Ó\80окÑ\85 каÑ\82егоÑ\80и Ñ\87оÑ\85Ñ\8c {{PLURAL:$1|$1 Ñ\84айл|$1 Ñ\84айл|$1 файлаш}}.',
'listingcontinuesabbrev' => '(кхин дlа)',
'index-category' => 'Меттигтерахьйо агlонаш',
'noindex-category' => 'ДӀахьушйоцу агӀонаш',
+'broken-file-category' => '{{#switch:{{NAMESPACE}}
+ |{{ns:0}}=Болх цабеш файланши хьажоригаш йолу агӀонаш}}',
'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
'errorpagetitle' => 'Гlалат',
'returnto' => 'Юхагlо оцу агlоне $1.',
'tagline' => 'Гlирс хlокхуьна бу {{grammar:genitive|{{SITENAME}}}}',
-'help' => 'Нисвохаам',
+'help' => 'Нийсвохаам',
'search' => 'Лаха',
'searchbutton' => 'Лаха',
'go' => 'Дехьа вала',
'create-this-page' => 'Кхолла хlара агlо',
'delete' => 'ДӀаяккха',
'deletethispage' => 'ДӀаяккха хӀара агӀо',
+'undeletethispage' => 'ХӀара агӀо меттахӀоттор',
'undelete_short' => 'Меттахlоттайé $1 {{PLURAL:$1|нисйинарг|нисйинарш|нисйинарш}}',
'viewdeleted_short' => 'Хьажар {{PLURAL:$1|$1 дlадаьккхина нийсдар|$1 дlадаьхна нийсдарш|$1 дlадаьхна нийсдарш}}',
'protect' => 'Гlаролла дé',
'toolbox' => 'Гlирсаш',
'userpage' => 'Хьажа декъашхочуьна агlоне',
'projectpage' => 'Хьажа кхолламан агlоне',
-'imagepage' => 'Ð¥Ñ\8cажа Ñ\85lÑ\83ман агlоне',
+'imagepage' => 'Ð¥Ñ\8cажа Ñ\84айлан агlоне',
'mediawikipage' => 'Хьагайта хааман агlо',
'templatepage' => 'Хьажа куцкепа агlоне',
-'viewhelppage' => 'Схьаэца нисвохаам',
-'categorypage' => 'Хьажа кадегарши агlоне',
+'viewhelppage' => 'Схьаэца нийсвохаам',
+'categorypage' => 'Хьажа категореши агӀоне',
'viewtalkpage' => 'Хьажа дийцаре',
'otherlanguages' => 'Кхечу маттахь дерш',
'redirectedfrom' => '(Дlасахьажийна кху $1)',
'lastmodifiedat' => 'Хlокху агlон тlаьххьаралера хийцам: $2, $1.',
'viewcount' => 'Хlокху агlонга хьойсина $1 {{PLURAL:$1|за|за|за}}.',
'protectedpage' => 'Гlароллийца йолу агlо',
-'jumpto' => 'Дехьавала оцу:',
+'jumpto' => 'Дехьавала/яла оцу:',
'jumptonavigation' => 'навигаци',
'jumptosearch' => 'лаха',
'view-pool-error' => 'Бехк цабиллар доьха, хlинц гlулкхдириг йоьттина йу.
Дехар до, собардеш а йуха хьажа хlокху агlонтlе жим тlаьхьо.
$1',
-'pool-timeout' => 'СаÑ\86о веза хан тlех йаьлла',
+'pool-timeout' => 'Ð\91локÑ\82оÑ\85а еза хан тlех йаьлла',
'pool-queuefull' => 'Дехаршан чоь йуззина йу',
'pool-errorunknown' => 'Дойзаш доцу гlалат',
'disclaimers' => 'Бехк тlе ца эцар',
'disclaimerpage' => 'Project:Бяхк тlецалацар',
'edithelp' => 'Нийсвохаам оцу тадарна',
-'edithelppage' => '{{ns:project}}:Нийсвохаам_оцу_тадарна',
'helppage' => 'Help:Чулацам',
'mainpage' => 'Коьрта агӀо',
'mainpage-description' => 'Коьрта агlо',
'policy-url' => 'Project:Бакъо',
-'portal' => 'ЮкÑ\8aаÑ\80алла',
+'portal' => 'ЮкÑ\8aаÑ\80аллин ков',
'portal-url' => 'Project:Юкъараллин ков',
-'privacy' => 'Ð\91алалÑ\8eÑ\82Ñ\82а къайлаха',
-'privacypage' => 'Project:Ð\91алалÑ\8eÑ\82Ñ\82а къайлаха',
+'privacy' => 'Ð\9fолиÑ\82ика къайлаха',
+'privacypage' => 'Project:Ð\9fолиÑ\82ика къайлаха',
'badaccess' => 'Тlекхачарехь гlалат',
'badaccess-group0' => 'Шуьга кхочуш далур дац дехарца деш дерг',
'newmessageslink' => 'керла хаамаш',
'newmessagesdifflink' => 'тlаьххьара хийцамаш',
'youhavenewmessagesfromusers' => 'Хьуна кхачанна $1 {{PLURAL:$3|$3 декъашхочунгара|$3 декъашхошкара|$3 декъашхошкара}} ($2).',
+'newmessageslinkplural' => '{{PLURAL:$1|керла хаам}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|тӀаьхьара бина хийцамаш}}',
'youhavenewmessagesmulti' => 'Хьуна кхаьчна керла хаам оцу $1',
'editsection' => 'нисйé',
'editsection-brackets' => '[$1]',
'collapsible-expand' => 'хьайаста',
'thisisdeleted' => 'Хьажа йа меттахlоттайé $1?',
'viewdeleted' => 'Хьалххьожи $1?',
-'restorelink' => '{{PLURAL:$1|$1 дӀадаьккхина нийсдар|$1 дӀадаьхна нийсдарш|$1 дӀадаьхна нийсдарш}}',
+'restorelink' => '{{PLURAL:$1|$1 дӀадяккхина нийсдар|$1 дӀадяхна нийсдарш|$1 дӀадяхна нийсдарш}}',
'feedlinks' => 'Оцу хатlаьхь:',
'feed-invalid' => 'Тайпан нийсадоцу талол оцу куьгтаlорна.',
'feed-unavailable' => 'Хаитарца йолу асанаш тlекхочучехь яц',
'feed-atom' => 'Атом',
'feed-rss' => 'RSS',
'red-link-title' => '$1 (ишта агlо йоцуш йу)',
+'sort-descending' => 'Ма хийла нисяр',
+'sort-ascending' => 'Ма хила нисяр',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'Яззам',
'nstab-image' => 'Файл',
'nstab-mediawiki' => 'Хаам',
'nstab-template' => 'Кеп',
-'nstab-help' => 'Нисвохаам',
+'nstab-help' => 'Нийсвохаам',
'nstab-category' => 'Категори',
# Main script and global functions
'nosuchaction' => 'Ишта дийриг дац',
'nosuchspecialpage' => 'Ишта белха агlо йац',
+'nospecialpagetext' => '<strong>Ишта белхан агӀо яц.</strong>
+
+Белхан агӀонашан могӀам: [[Special:SpecialPages|{{int:specialpages}}]].',
# General errors
'error' => 'Гlалат',
'databaseerror' => 'Гlалат хаамийн бухера',
-'readonly' => 'Сацийна дlайаздар хаамийн бухе',
+'laggedslavemode' => 'Тергам бе: агӀона чохь керла йаьхинарш ца хила мега.',
+'readonly' => 'Блоктоьхна дӀайаздар хаамийн бухе',
+'enterlockreason' => 'Билгал де блоктохаран бахьна а и чекх йолу хан а.',
'missing-article' => 'Хlокху чохь кароезаш йолу хьан дехарца йозан агlонаш цакарийна «$1» $2.
Иштнарг наггахь хуьлу хьажориг дlайаьккхина йалхь йа хийцам бина тиша хьажоригца дехьа вала гlоьртича.
Нагахьсан гlулкх цуьнах доьзна дацахь, хьуна карийна гlирс латточехь гlалат.
-Ð\94еÑ\85аÑ\80 до, Ñ\85аам бе оÑ\86Ñ\83Ñ\8cнаÑ\85 [[Special:ListUsers/sysop|адаманкÑ\83Ñ\8cйгалÑ\85ога]], гойÑ\82Ñ\83Ñ\88 URL.',
+Дехар до, хаам бе оцуьнах [[Special:ListUsers/sysop|куьйгалхога]], гойтуш URL.',
'missingarticle-rev' => '(верси № $1)',
'missingarticle-diff' => '(тейп тайпнара: $1, $2)',
'internalerror' => 'Чоьхьара гlалат',
'internalerror_info' => 'Чоьхьара гlалат: $1',
+'fileappenderrorread' => 'Тар ца дели еша «$1» тӀетухучу хенахь.',
+'fileappenderror' => 'Тар ца дели тӀетоха «$1» оцунах «$2».',
+'filerenameerror' => 'Файлан «$1» цӀе хийца «$2» йиш яц.',
'filedeleteerror' => 'ДӀаяккха цатарло файл «$1».',
+'filenotfound' => 'Файл «$1» каро йиш яц.',
+'fileexistserror' => 'Файл «$1» дӀаязяан йиш яц: файл йолуш ю.',
+'cannotdelete' => 'Цатарло дӀаяккха я цӀе хийца «$1».
+АгӀо хьалхо дӀаяккхина хила тарло',
+'cannotdelete-title' => 'Цатарло агӀо дӀаяккха «$1»',
'badtitle' => 'Цамегаш йолу цlе',
'badtitletext' => 'Дехарца йолу агlонан цlе нийса яц, йаьсса ю, хила мега нийса ца хlоттийна меттаюкъар йа юкъарвики цlе. Хила мега, цlарца цамагош йолу саберг.',
'perfcachedts' => 'Лахара хаам схьаэца кэша чура иза тӀаьхьара цӀинялла $1. Кэша чохь латтаё оцул $4 кӀезиг {{PLURAL:$4|дӀаяздарш|дӀаяздарш|дӀаяздарш}}.',
'viewsource' => 'Хьажар',
+'viewsource-title' => 'Агӏона $1 дуьххьарлера йозане хьажар',
'protectedpagetext' => 'ХӀара агӀо дӀакъойлина йу рé цадаккхийта.',
'viewsourcetext' => 'Хьоьга далундерг хьажар а дезахь хlокху агlон чура йоза хьаэцар:',
-'protectedinterface' => 'ХӀара схьгайтарна гӀирса хаамаш латтош йолу агӀо йу. Адаманкуьйгалхошна бен иза хийца цало.',
-'exception-nologin' => 'Ахьа хӀой вовзийтина вац',
+'protectedinterface' => 'ХӀара схьгайтарна гӀирса хаамаш латтош йолу агӀо ю. Куьйгалхошна бен иза хийца цало.',
+'exception-nologin' => 'Ахьа хӀой вовзийтина/йовзийтина вац/яц',
+
+# Virus scanner
+'virus-unknownscanner' => 'йозуш йоцу антивирус:',
# Login and logout pages
+'logouttext' => "'''Хьо аравела/ела.'''
+Хьан йиш ю {{grammar:genitive|{{SITENAME}}}} чохь хьой ца вовзийташ/йовзийташ болх бан я <span class='plainlinks'>[$1 кхин чувала/яла ]</span> хьой чохь хила цӀарца я кхин цӀарца.
+Цхьа йолу агӀонаш чохь хьо хьай цӀарца болх беш сана хила тарло ишта ца хилийта керлаякха браузеран кэш.",
'welcomeuser' => 'Марша ДогӀийла, $1!',
'yourname' => 'Декъашхон цlе:',
'userlogin-yourname' => 'Декъашхон цӀе',
'yourpasswordagain' => 'Юха язъйе ишар:',
'createacct-yourpasswordagain' => 'Бакъе ишар',
'createacct-yourpasswordagain-ph' => 'Кхин цкъа язъе ишар',
-'remembermypassword' => 'Даглаца сан дlавазвалар хlокху гlулкхдечу гlирса тlяхь (цхьан $1 {{PLURAL:$1|ден|динахь|динахь}})',
-'userlogin-remembermypassword' => 'Дагахь латт ве со',
+'remembermypassword' => 'Даглаца сан дlавазвалар/ялар хlокху гlулкхдечу гlирса тlяхь (цхьан $1 {{PLURAL:$1|ден|динахь|динахь}})',
+'userlogin-remembermypassword' => 'Дагахь латт ве/е со',
+'userlogin-signwithsecure' => 'Ларийна цхьаьнакхетар',
'yourdomainname' => 'Хьан машан меттиг:',
-'login' => 'Ð\92овзийÑ\82а Ñ\85Ñ\8cой гlиÑ\80Ñ\81ан',
-'nav-login-createaccount' => 'Вовзийта хьой / дlавазло',
+'login' => 'ЧÑ\83валаÑ\80/Ñ\8fлаÑ\80',
+'nav-login-createaccount' => 'Вовзийта/Йовзийта хьой / дӀавазло/дӀаязло',
'loginprompt' => 'Ахьа бакъо йала йеза оцу «cookies» хьайна вовзийта лаахь гlирсан.',
-'userlogin' => 'Чу вала йа дlавазло',
-'userloginnocreate' => 'Вовзийта хьой',
-'logout' => 'Ара валар',
-'userlogout' => 'Ара валар',
-'notloggedin' => 'Хьо вовзита веза гlирсан',
-'nologin' => "Хlинца дlа вазвин вац? '''$1'''.",
-'nologinlink' => 'Кхолла керла дlавазвалар',
-'createaccount' => 'Дlавазве керла декъашхо',
+'userlogin' => 'Чувалар/ялар я декъашхон дӀаяздар кхоллар',
+'userloginnocreate' => 'Чувалар/ялар',
+'logout' => 'Аравалар/ялар',
+'userlogout' => 'Аравалар/ялар',
+'notloggedin' => 'Хьо вовзийта/йовзийта гlирсан',
+'userlogin-noaccount' => 'Хlинца дlа вазвина/язйина вац/яц?',
+'nologin' => "Хlинца дlа вазвина/язйина вац/яц? '''$1'''.",
+'nologinlink' => 'Кхолла декъашхон дӀаяздар',
+'createaccount' => 'Кхолла декъашхон дӀаяздар',
'gotaccount' => "Дlавазвелла вуй хьо? '''$1'''.",
-'gotaccountlink' => 'Вовзийта хьой',
+'gotaccountlink' => 'Чувалар/ялар',
+'userlogin-resetlink' => 'Чуволу/йолу хаам биц бела?',
+'helplogin-url' => 'Help:Чувалар/ялар',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Чувала/яла гӀодар]]',
+'createacct-join' => 'ДӀаязбе лахахь хай хаам.',
+'createacct-emailrequired' => 'Электронни почтан адрес',
+'createacct-emailoptional' => 'Электронни почтан адрес (ца яздича мега)',
+'createacct-email-ph' => 'ДӀаязде электронни почтан адрес',
'createaccountmail' => 'хааман зlене хула',
+'createacct-realname' => 'Хьан цӀе (ца язйича мега)',
'createaccountreason' => 'Бахьан:',
'createacct-reason' => 'Бахьна',
'createacct-reason-ph' => '{{PLURAL:$1|агӀо|агӀонаш}}',
-'loginerror' => 'Гlалат ду декъашхо вовзарехь',
+'createacct-captcha' => 'Кхерамзалла хьажар',
+'createacct-imgcaptcha-ph' => 'ДӀаязде хьайна лакхахь гуш долу йоза',
+'createacct-submit' => 'Кхолла декъашхон дӀаяздар',
+'createacct-benefit-heading' => '{{SITENAME}} кхолийна хьо санначу наха.',
+'createacct-benefit-body1' => '{{PLURAL:$1|нисдар|нисдарш}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|яззам|яззамаш}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|декъашхо|декъашхой}} тӀаьхьарачу хенахь',
+'loginerror' => 'Гlалат ду декъашхо вовзарехь/йовзарехь',
+'createaccounterror' => 'Декъашхон дӀаяздар кхолла йиш яц: $1',
'nocookiesforlogin' => '{{int:nocookieslogin}}',
-'loginsuccesstitle' => 'Хьо вовзар хаз чакхдели',
+'loginsuccesstitle' => 'Хьо вовзар/йовзар хаз чакхдели',
'loginsuccess' => 'Хlинца ахьа болх бó оцу цlарца $1.',
-'nosuchuser' => 'Ð\94екÑ\8aаÑ\88Ñ\85о Ñ\86lаÑ\80Ñ\86а $1 воÑ\86аÑ\88 вÑ\83.
-Декъашхой цlераш хаалуш йу дlайазвалрца элраш.
-Нийса юьй хьажа цlе йа [[Special:UserLogin/signup|дlайазвалар кхолла керла]].',
+'nosuchuser' => 'ЦlаÑ\80Ñ\86а $1 декÑ\8aаÑ\88Ñ\85о ваÑ\86/Ñ\8fÑ\86.
+Декъашхой цlераш хаалуш йу дlайазвалрца/яларца элраш.
+Нийса юьй хьажа цlе йа [[Special:UserLogin/signup|дlаяздар кхолла керла]].',
'wrongpassword' => 'Ахьа язъйина йолу ишар нийса яц. Хьажа йуху цхьаъз.',
'mailmypassword' => 'Схьаэца керла ишар',
'emailauthenticated' => 'Хьан почтан адрес бакъдина $2 $3.',
'showdiff' => 'Хlоттина болу хийцам',
'anoneditwarning' => "'''Тергам бе''': Ахьа хьо вовзитина вац гlирсан. Хьан IP-долу меттиг дlаязйина хира ю хlокху агlон истори чу.",
'summary-preview' => 'Цуьнах лаьцна хирду:',
-'blockedtitle' => 'Декъашхо сацийна',
+'blockedtitle' => 'Декъашхон блоктоьхана',
'loginreqlink' => 'Логин',
'accmailtitle' => 'Ишар дlаяхьийтина.',
'accmailtext' => "Ишар декъашхочуьна [[User talk:$1|$1]], йина ша шех хитта делла чу элпашах, дlаяхийтина хьокху хааман зlен чу $2.
'newarticletext' => "Хьо веана хьажоригци хlокху агlон тlе, хlара агlо хlинца йоцаш ю.
Нагахь иза кхолла лаахь, хlотта де лахо гуш долу корехь йоза (мадарра хьажа. [[{{MediaWiki:Helppage}}|гlон агlон чу]]).
Нагахь гlалат даьлла нисвелляхь кхузе, атта тlе тlаlа йе '''юха йоккхуриг''' хьай гlирса тlяхь.",
-'anontalkpagetext' => "----''Хlара дийцаре агIо къайлаха волу декъашхочуьна ю, хlинца дlавазвина воцуш, йа лелош воцуш.
-Цундела иза вовзийта лелош ду терахьца IP-долу метаг.
+'anontalkpagetext' => "----''Хlара дийцаре агIо къайлаха волу декъашхочуьна ю, хlинца дӀавазвина/дӀаязйина воцуш/йоцуш, я лелош воцуш/йоцуш.
+Цундела иза вовзийта/йовзийта лелош ду терахьца IP-долу метаг.
Иза терахь долу меттиг хила мега кхечу декъашхойчух терра.
-Нагахь хьо къайлах волу декъашхо валахь хьайна хаам кхаьчна аьлла хеташн, хьуна хьажийна доцуш, дехар до, кхолла хьай меттиг кху чохь[[Special:UserLogin/signup|дlавазло]] йа [[Special:UserLogin|хьой вовзийта]],",
+Нагахь хьо къайлах волу декъашхо валахь хьайна хаам кхаьчна аьлла хеташн, хьуна хьажийна доцуш, дехар до, кхолла хьай меттиг кху чохь[[Special:UserLogin/signup|дlавазло]] йа [[Special:UserLogin|хьой вовзийта/йовзийта]],",
'noarticletext' => "Хlокх хан чохь кху агlонца йоза дац.
Шуьга далундерг [[Special:Search/{{PAGENAME}}|лахар ишта хьехош йолу цlе]] кхечу яззамашкахь,
<span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} лахар кхечу тептаршкахь],
Шуьга далундерг [[Special:Search/{{PAGENAME}}|лахар ишта хьехош йолу цӀе]] кхечу яззамашкахь,
йа <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} лаха оцуьнах терадерг кхечу тептаршкахь].</span>',
'userpage-userdoesnotexist' => 'Ишта дlайазвар «<nowiki>$1</nowiki>» хlинца дац. Хьажа билгал, хьуна бакъалла лаьи кхолла йа хийцам ба хlокху агlон.',
+'sitecsspreview' => "'''ХӀара хьалх хьажар ду, хӀара CSS.'''
+'''хӀинца Ӏалашдина дац!'''",
+'sitejspreview' => "'''ХӀара хьалх хьажар ду, хӀара JavaScript-ишар.'''
+'''хӀинца Ӏалашдина дац!'''",
'updated' => '(Карла йаькхина)',
'note' => "'''Билгалдаккхар:'''",
'previewnote' => "'''Хlара хьалх хьажар ду, йоза хlинца язданза ду!'''",
'continue-editing' => 'Кхин дӀа тадар',
+'session_fail_preview' => 'Сервер лара ца йира ахьа бина хийцамаш дӀаязба. Кхиъ цкъа а гӀортахь.
+Нагахь санна хӀара гӀалат юха а далахь, [[Special:UserLogout|сеанс дӀа а къоьвлин]], юха а системин чувала/яла хьажа.',
'editing' => 'Тадар: $1',
'creating' => 'АгӀо кхоллар «$1»',
'editingsection' => 'Тадар $1 (даакъа)',
'editingcomment' => 'Тадар $1 (керла даакъа)',
-'editconflict' => 'Редаккхарна дойнаш: $1',
+'editconflict' => 'Тадарна дойнаш: $1',
+'explainconflict' => 'Хьо хӏара агӏо тоеш волчу хенахь, цхьам хийцамаш бина.
+Лакхарчу таяран корехь хьона гуш ду хӏинца агӏона чохь долу йоза.
+Лахарчу корехь ахь бина хийцам бу.
+Хьой бина хийцам лахарчу корера лакхарчу коре баккха.
+Кнопкан «{{int:savearticle}}» тӏетаӏича лакхара корера йоза дӏаязлурду.',
'yourtext' => 'Хьан йоза',
'yourdiff' => 'Башхаллаш',
'copyrightwarning' => "Тергаме хьажа, массо яззаман чутухуш долу йозан хийцам хьажарехь бу, арахоьцушсанна оцу бакъойалар хьоляхь $2 (хьаж. $1).
Ишта чlагlо йой ахьа, айхьа далош долучуьн хьо куьг да ву аьлла, йа хьаэцна цхьан
хьостера, хийцам ба а дlаса даржада а чулацам болуш.<br />
'''МАТОХИЙШ БАКЪО ЙОЦУ ГlИРСАШ КХУ ЧУ, КУЬГ ДЕ БАКЪО ЛАР ЙЕШ ЙОЛУ!'''",
-'readonlywarning' => "'''ДlАХЬЕДО. Гlирса бух сацийна оьшуш долучу хьаштан, цундера хlинц хьоьга дlа ца йазло хийцам.
-Хила мега, ахьа lалаш дан дезаш хьайн йоза, йуха тlаьхьо леладан иза йоза.'''
+'readonlywarning' => "'''ДӀАХЬЕДО. ГӀирса бух блоктоьхна оьшуш долучу хьаштан, цундера хӀинц хьоьга дӀа ца йазло хийцам.
+Хила мега, ахьа Ӏалаш дан дезаш хьайн йоза, йуха тӀаьхьо леладан иза йоза.'''
-Ð\90даманкÑ\83Ñ\8cйгалÑ\85оÑ\87о Ñ\81аÑ\86ийна гlиÑ\80Ñ\81а бÑ\83Ñ\85, Ñ\86о биÑ\82ина кÑ\85еÑ\82оÑ\88 Ñ\85lара хаам: $1",
+Ð\9aÑ\83Ñ\8cйгалÑ\85оÑ\87о блокÑ\82оÑ\8cÑ\85на гÓ\80иÑ\80Ñ\81а бÑ\83Ñ\85, Ñ\86о биÑ\82ина кÑ\85еÑ\82оÑ\88 Ñ\85Ó\80ара хаам: $1",
'protectedpagewarning' => "'''Дlахьедар. Хlара агlо гlаролла дина ю хийцам цабайта, иза хийца йа нисйа а бакъо йолуш адаманкуьйгалла лелош болу декъашхой бе бац.'''
Лахахьа гойту хаамаш тlаьхьара бина болу хийцамна тептар чура:",
'cascadeprotectedwarning' => '<div id="cascadeprotectedwarning" style="border:1px solid #ee0; padding:10px; background:#ffa; margin-bottom:1em">[[file:Padlock.svg|left|25px|ДовгӀа|link=]]
'edittools' => '<!-- Кхузе буха диллина йоза гуш хир ду редоккхуче бухахь а хlума чуйоккхуче бухахь. -->',
'permissionserrorstext' => 'Хьан бакъо яц кхочуш хилийта хийцам оцу {{PLURAL:$1|шолгlа бахьанца|шолгlа бахьанашца}}:',
'permissionserrorstext-withaction' => "Хьан бакъо яц хlумда «'''$2'''» оцу {{PLURAL:$1|шолгlа бахьанца|шолгlа бахьанашца}}:",
-'recreate-moveddeleted-warn' => "'''Тидам бе. Хьо ву (ле йу) йуха кхолла гlерташ яззам, хьалхо дlадайина долу.'''
+'recreate-moveddeleted-warn' => "'''Тидам бе. Хьо ву (ле йу) йуха кхолла гӀерташ агӀо, хьалхо дӀаяккхина йолу.'''
-Хьажа, билгалла оьши хьуна хlара яззам йуха кхолла.
-Лахахь далина ду дlадайарш тlяхь долу тептарш а хlокх яззам цlера бина хийцамаш.",
+Хьажа, билгалла оьши хьуна хӀара яззам йуха кхолла.
+Лахахь далина ду дӀаяхарш тӀяхь долу тептарш а хӀокх яззам цӀера бина хийцамаш.",
'moveddeleted-notice' => 'Иза агlо дlайайина йара.
Хаийтарна лахахьа гойту, цуьнца долу дlаяздарш кху дlадайина тептар чура а цlе хийцарш а.',
'log-fulllog' => 'Хьажа деригге тептаре',
+'postedit-confirmation' => 'Хьан нисдар дӏайазъдина.',
# Content models
'content-model-javascript' => 'JavaScript',
'content-model-css' => 'CSS',
# Parser/template warnings
-'parser-template-loop-warning' => 'Карийна куцкепаш юкъахь хилла шад: [[$1]]',
+'parser-template-loop-warning' => 'Карийна кепаш юкъахь хилла шад: [[$1]]',
'parser-template-recursion-depth-warning' => 'Дозанал хьалаваьлла кlоргенца йух йуха дина кеп ($1)',
# "Undo" feature
'history-feed-item-nocomment' => '$1 оцу $2',
# Revision deletion
+'rev-deleted-user' => '(авторан цӏе дӏаяйина)',
'rev-delundel' => 'гайта/къайла',
'rev-showdeleted' => 'гайта',
'revdelete-show-file-submit' => 'Хlаъ',
'revdelete-reasonotherlist' => 'Кхин бахьан',
# History merging
+'mergehistory-from' => 'Дуьххьарлера агӀоно',
'mergehistory-reason' => 'Бахьан:',
# Merge log
# Diffs
'history-title' => '$1 — хийцаман истори',
+'difference-title' => '$1 — Версешан башхалла',
'lineno' => 'Могlа $1:',
'compareselectedversions' => 'Хаьржиначуьна башхо муха ю хьажа',
'showhideselectedversions' => 'Гайта/къайлайаха хаьржина башхонаш',
'searchmenu-legend' => 'Лахарна гlирс нисба',
'searchmenu-exists' => "'''Хlокху вики-кхолламашца йолуш ю ишта агlо «[[:$1]]»'''",
'searchmenu-new' => "'''Кхолла ишта агlо «[[:$1]]» хlокху вики-кхолламашчохь!'''",
-'searchhelp-url' => 'Help:Чулацам',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Гайта агlонаш ишта хlоттам болуш]]',
'searchprofile-articles' => 'Къаьстина агlонаш',
'searchprofile-project' => 'Нисвохааман агlонаш а кхолламаш',
-'searchprofile-images' => 'Ð\9cÑ\8fлÑ\82омÑ\88Ñ\85гl',
+'searchprofile-images' => 'Ð\9cÑ\83лÑ\8cÑ\82имедиа',
'searchprofile-everything' => 'Массанхьа',
'searchprofile-advanced' => 'Шуьйра',
'searchprofile-articles-tooltip' => 'Лаха оцу $1',
'search-interwiki-caption' => 'Гергара кхолламаш',
'search-interwiki-default' => '$1 хилам.:',
'search-interwiki-more' => '(кхин)',
+'mwsuggest-disable' => 'ДӀабайа лахаран хьехам',
'searcheverything-enable' => 'Массо цIера анахь лахар',
'searchrelated' => 'хlоттаделларг',
'searchall' => 'массо',
'showingresults' => 'Лахахьа {{PLURAL:$1|гойта|гойту|гойту}} <strong>$1</strong> {{PLURAL:$1|хилам|хиламаш|хиламаш}}, дlаболало кху № <strong>$2</strong>.',
'showingresultsheader' => "{{PLURAL:$5|Хилам '''$1''' кху '''$3'''|Хиламаш '''$1 — $2''' кху '''$3'''}} оцун '''$4'''",
-'nonefound' => "'''Билгалдаккхар.''' Хlумма цадеш lад йитича массо цlеран энахь цалоху. Лела йе тlехуттург ''all:'', лахийта массо цlеран энахь (юкъадалош декъашхойн дийцарш а куцкепаш а кхин дерг.), йа хlотта йе оьшуш йолу цlеран эна.",
+'nonefound' => "'''Билгалдаккхар.''' ХӀумма цадеш Ӏад йитича массо цӀеран энахь цалоху. Лела йе тӀехуттург ''all:'', лахийта массо цӀеран энахь (юкъадалош декъашхойн дийцарш а кепаш а кхин дерг.), йа хӀотта йе оьшуш йолу цӀеран эна.",
'search-nonefound' => 'Дехарар терра цхьа хlума цакарийна.',
'powersearch' => 'Шуьйра лахар',
'powersearch-legend' => 'Шуьро лахар',
'powersearch-ns' => 'Цlераши анахь лахар:',
'powersearch-redir' => 'Схьагайта дlасахьажийнарш',
'powersearch-field' => 'Лаха',
+'powersearch-togglelabel' => 'Билгалдан:',
'powersearch-toggleall' => 'Массо',
'powersearch-togglenone' => 'Хlумма цаоьшу',
+'search-external' => 'Арахула лахар',
# Preferences page
'preferences' => 'Гlирс нисбан',
'mypreferences' => 'ГӀирс нисбан',
'prefs-edits' => 'Нисдарши дукхалла:',
'changepassword' => 'Хийцамба ишарна',
+'prefs-skin' => 'Кечяран тема',
'skin-preview' => 'Хьалха муха ю хьажа',
+'datedefault' => 'Iад йитарца',
'prefs-beta' => 'Гlоле таронаш',
-'prefs-datetime' => 'Терахь а хан',
+'prefs-datetime' => 'Терахь а хан а',
'prefs-labs' => 'Муха ю хьажарна таронаш',
'prefs-user-pages' => 'Декъашхочун агӀо',
'prefs-personal' => 'Долахь болу хаамаш',
'prefs-rc' => 'Керла нисдарш',
'prefs-watchlist' => 'Тергаме могlам',
+'prefs-watchlist-days' => 'Денойн дукхалла:',
+'prefs-watchlist-days-max' => 'Къезиг $1 {{PLURAL:$1|дена}}',
+'prefs-watchlist-edits' => 'Тергаме могӀам чохь гойтучу нисдаршан максимальни дукхалла:',
+'prefs-watchlist-edits-max' => 'Уггар дукха: 1000',
+'prefs-watchlist-token' => 'Тергаме могӀанан токен:',
'prefs-misc' => 'Кхин гlирсаш',
'prefs-resetpass' => 'Хийца ишар',
'prefs-changeemail' => 'Хийца электрони почт',
'restoreprefs' => 'МеттахӀоттабе гӀирс дуьхӀар сана',
'prefs-editing' => 'Тадар',
'rows' => 'МогӀанаш:',
+'columns' => 'БӀогӀамаш:',
'searchresultshead' => 'Лаха',
+'resultsperpage' => 'Карийначу дӀаяздаршан дукхалла:',
+'stub-threshold' => 'Кеч яран доза <a href="#" class="stub">коьртамогӀамна хьажоригаш</a> (байташках):',
+'recentchangesdays' => 'Керла нисдар гайта динахь:',
+'recentchangesdays-max' => 'Къезиг $1 {{PLURAL:$1|дена}}',
+'recentchangescount' => 'Iад йитарца гойтуш долу нисдаршан дукхалла',
+'prefs-help-recentchangescount' => 'Гойту керла нисдарш, аӀонашан истори, тептарш.',
+'prefs-help-watchlist-token' => 'Кхуза къайлах догӀа яздича хьан тергаме спискан RSS-трансляци кхуллур ю.
+Массо а догӀа хууш верг трансляци еша йиш йолуш ву.
+Цундела цхьанне а ца хуу догӀа харжа деза. Хьан йиш ю ца хууш кхоьллина догӀа лелада: $1',
+'savedprefs' => 'Хьан гӀирс Ӏалашбина.',
'timezonelegend' => 'Сахьатан аса:',
'localtime' => 'Меттигера хан:',
'servertime' => 'Сервера хан:',
+'timezoneregion-asia' => 'Ази',
+'timezoneregion-australia' => 'Австрали',
+'timezoneregion-indian' => 'Индин океан',
+'timezoneregion-pacific' => 'Тийна океан',
'allowemail' => 'Магийта декъашхошна хьайга электрони почтехула кехат кхехьийта',
'prefs-searchoptions' => 'Лаха',
+'defaultns' => 'Я лаха лахахь гайтинчу аннашкахь:',
+'default' => 'Iад йитарца',
'prefs-files' => 'Файлаш',
+'prefs-custom-css' => 'Долахь йолу CSS',
+'prefs-custom-js' => 'Долахь йолу JS',
+'prefs-common-css-js' => 'Юкъара CSS/JS массо кеч даран темашан:',
'prefs-emailconfirm-label' => 'Бакъ яр электрони почт:',
'prefs-textboxsize' => 'Тадаран коран барам',
'youremail' => 'Кехат яздо зlе цlе:',
-'username' => 'Дlаязвиначуьна цlе:',
+'username' => 'Декъашхон цlе:',
'uid' => 'Декъашхочун {{GENDER:$1|код}}:',
'prefs-memberingroups' => '{{GENDER:$2|Тобана|Тобана}} {{PLURAL:$1|декъашхо|декъашхо}}:',
'prefs-registration' => '{{GENDER:$2|ДӀавазвелла|ДӀаязелла}} хан:',
'yourlanguage' => 'Мотт:',
'yourvariant' => 'Метта башхо',
'yournick' => 'Керла куьгтаӀор:',
+'prefs-help-signature' => 'Дийцаре агӀонаш чохь къуьгтаӀо деза символшца «<nowiki>~~~~</nowiki>», цара гойтур ду хьан къуьгтаӀор а хан а.',
'yourgender' => 'Ву/Йу:',
'gender-unknown' => 'хlоттийна яц',
'gender-male' => 'борша',
'gender-female' => 'сте',
+'prefs-help-gender' => 'ТӀехь доцург: и хаам лелош бу цхьайолу хаамаш чохь декъашхочун пол гучуйоккхуш.
+И хаам массарна гуш хир бу.',
'email' => 'Email',
'prefs-help-email' => 'Кехат яздо зlен цlе цахlоттийча аъ хlумма дац, амма иза оьшар ю, нагахь хьуна хьай ишар йицлахь.',
+'prefs-help-email-others' => 'Кхин дӀа цо кхечу декъашхошна йиш хуьлуьйту хьога электронни кехат даийта хьан агӀона чохь йолу хьажориган гӀонца.',
'prefs-info' => 'Коьрта хаам',
'prefs-i18n' => 'Юкъардекъа мотт',
'prefs-signature' => 'КуьгтаӀор',
+'prefs-dateformat' => 'Терахьан формат',
+'prefs-timeoffset' => 'Хенан гӀирс',
'prefs-advancedediting' => 'Кхин гӀирс нисбар',
'prefs-advancedrc' => 'Кхин гӀирс нисбар',
'prefs-advancedrendering' => 'Кхин гӀирс нисбар',
# User rights
'userrights' => 'Декъашхочуьн бакъона урхалладар',
+'userrights-lookup-user' => 'Декъашхошан бакъонашан урхалладар',
+'userrights-user-editname' => 'Язъе цӀе:',
+'editusergroup' => 'Хийца декъашхон бакъо',
'editinguser' => "Хийца декъашхочуьна бакъо '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]]{{int:pipe-separator}}[[Special:Contributions/$1|{{int:contribslink}}]])",
+'userrights-editusergroup' => 'Хийца декъашхон бакъо',
+'saveusergroups' => 'Декъашхон бакъонаш ӏалашян',
'userrights-groupsmember' => 'Декъашхо:',
+'userrights-groupsmember-auto' => 'Бакъонашан тоба:',
+'userrights-groups-help' => 'Хьона хийца ло декъашхочуьн бакъонаш.
+* Бакъона цӏера юххехь билгало елахь, цуна и бакъо йолуш ю.
+* Билгало яцахь — декъашхон и бакъо яц.
+* Знако * билгала до ахьа бакъо еллачул тӏхьа хьона и дӏаяккха лур цахилар.',
'userrights-reason' => 'Бахьан:',
+'userrights-no-interwiki' => 'Хьан бакъо яц декъашхой бакъо хийца кхечу википеди чохь.',
+'userrights-nologin' => 'Куьйгалхочунна бакъо йолу [[Special:UserLogin|д1аяздарца]] ло декъашхон бакъо.',
+'userrights-notallowed' => 'Хьан дӀаяздарца магийна дац декъашхошна бакъо яла а дӀаяккха а.',
+'userrights-changeable-col' => 'Хьона хийца луш йолу бакъонаш',
+'userrights-unchangeable-col' => 'Хьона хийца луш йоцу бакъонаш',
# Groups
'group' => 'Тоба:',
'grouppage-suppress' => '{{ns:project}}:Левисорхой',
# Rights
+'right-edit' => 'АгӀоаш нисяр',
+'right-createpage' => 'АгӀонаш кхоллар (дийцарш дац)',
+'right-createtalk' => 'Дийцаре агӀонаш кхоллар',
+'right-createaccount' => 'декъашхошна керла дӀаяздарш кхоллар',
+'right-move' => 'АгӀонашан цӀераш хийцар',
+'right-move-subpages' => 'АгӀонашан цӀераш хийцар цера бухара агӀонашцан',
+'right-movefile' => 'Файланши цӀе хийцар',
+'right-upload' => 'Файлаш чуйаьхар',
'right-delete' => 'агӀош дӀаяхар',
+'right-bigdelete' => 'еха хийцаман истори йолу агӀонаш дӀаяхар',
+'right-browsearchive' => 'ДӀаяхна агӀонаш лахар',
+'right-undelete' => 'АгӀонаш меттахӀоттор',
+'right-blockemail' => 'Цамагдо декъашхошка хааман кехаташ кхехьийта',
+'right-unblockself' => 'Ша шин блокдӀаяккхар',
+'right-protect' => 'АгӀона гӀоралла хийцар а гӀоралла дина агӀо нисяр а',
# Special:Log/newusers
'newuserlogpage' => 'Декъашхой дlабазбина тептар',
'rclistfrom' => 'Гайта хийцам оцу $1.',
'rcshowhideminor' => '$1 кегийра нисдарш',
'rcshowhidebots' => '$1 шабелхалой',
-'rcshowhideliu' => '$1 вовзитар долу декъашхой',
+'rcshowhideliu' => '$1 шайн цӀершца болу декъашхой',
'rcshowhideanons' => '$1 хьулбелларш',
'rcshowhidepatr' => '$1 хьажжина нисдарш',
'rcshowhidemine' => '$1 айхьа нисдинарш',
'recentchangeslinked-to' => 'Кхечу агlор, гайта хийцамаш агlонашца, хlоттийначу агlонтlе хьажориг йолуш',
# Upload
-'upload' => 'ЧÑ\83йаккÑ\85а Ñ\84айл',
-'uploadbtn' => 'ЧÑ\83йаккÑ\85а Ñ\84айл',
+'upload' => 'Файл Ñ\87Ñ\83Ñ\8fккÑ\85аÑ\80',
+'uploadbtn' => 'Файл Ñ\87Ñ\83Ñ\8fккÑ\85аÑ\80',
'uploadlogpage' => 'Чуйахаран тéптар',
'uploadlogpagetext' => 'Лахахьа гойтуш бу могlам тlаьххьара чуяхна файлаши. Ишта хьажа. [[Special:ImageList|файлаши могlам]] йа [[Special:NewImages|галеларе файлаши]].',
'filename' => 'Файлан цӀе',
+'filedesc' => 'Файлах лаьцна',
+'fileuploadsummary' => 'Файлах лаьцна:',
'filereuploadsummary' => 'Файлан хийцамаш:',
+'filesource' => 'Хьост:',
+'ignorewarnings' => 'ДӀахедар тергал ца дан',
'uploadwarning' => 'Дlахьедар',
'uploadedimage' => 'чуяккхина «[[$1]]»',
+'overwroteimage' => 'Чуяккхина файлан керла верси «[[$1]]»',
+'upload-source' => 'ДIайолалун файл',
+'sourcefilename' => 'ДIайолалун файл:',
+'destfilename' => 'Файлан керла цӀе:',
+'upload-description' => 'Файлах лаьцна',
+'upload-options' => 'Чуякхаран параметраш',
+'watchthisupload' => 'Латайе хlара файл тергаме могlам юкъа',
'filename-prefix-blacklist' => '#<!-- битийша хlара могlа ша мабарра --> <pre>
# Бухасиз шолгlа:
# * Массо, саболчунтlийра йуьлалуш ерш «#» хуьлу хетаме дерг (могlа чекх балац)
#</pre> <!-- битийша хlара могlа ша мабарра -->',
'license' => 'Бакъойалар:',
+'license-header' => 'Бакъойалар',
+'nolicense' => 'Яц',
# Special:ListFiles
'listfiles-summary' => 'Лахахь гойтуш ю ерриг файлаш.
'listfiles_search_for' => 'Лаха хIуман цIарца:',
'imgfile' => 'файл',
'listfiles' => 'Файлаши могӀам',
+'listfiles_date' => 'Терахь',
'listfiles_name' => 'Файлан цӀе',
'listfiles_user' => 'Декъашхо',
'listfiles_size' => 'Барам',
'filehist-help' => 'Тlетаlаде терахь/хан, муха хилла хьажарна и файл.',
'filehist-deleteall' => 'массо дӀаяккха',
'filehist-deleteone' => 'дӀаяккха',
+'filehist-revert' => 'файл юхаерзо',
'filehist-current' => 'карара',
'filehist-datetime' => 'Терахь/Хан',
'filehist-thumb' => 'Жима',
'filehist-thumbtext' => 'Жимо башхо оцу $1',
'filehist-user' => 'Декъашхо',
'filehist-dimensions' => 'Файлан барам',
+'filehist-filesize' => 'Файлан барам',
'filehist-comment' => 'Билгалдаккхар',
'imagelinks' => 'Хьажоригаш оцу файлан',
-'linkstoimage' => '{{PLURAL:$1|ТlаÑ\8cÑ\85Ñ\8cайогlÑ\83 $1 агlо Ñ\82lеÑ\82ойжина|ТlаÑ\8cÑ\85Ñ\8cайогlÑ\83 $1 агlонаÑ\88 Ñ\82lеÑ\82ойжина|ТlаÑ\8cÑ\85Ñ\8cайогlÑ\83 $1 агlонаÑ\88 Ñ\82lеÑ\82ойжина}} Ñ\85lокÑ\85Ñ\83 Ñ\85lÑ\83ман:',
+'linkstoimage' => '{{PLURAL:$1|ТlаÑ\8cÑ\85Ñ\8cайогlÑ\83 $1 агlо Ñ\82lеÑ\82ойжина|ТlаÑ\8cÑ\85Ñ\8cайогlÑ\83 $1 агlонаÑ\88 Ñ\82lеÑ\82ойжина|ТlаÑ\8cÑ\85Ñ\8cайогlÑ\83 $1 агlонаÑ\88 Ñ\82lеÑ\82ойжина}} Ñ\85lокÑ\85Ñ\83 Ñ\84айлан:',
'nolinkstoimage' => 'АгӀонашчохь файл лелош яц.',
'sharedupload' => 'Хlара хlума оцун $1 чура ю иза хила мега лелош кхечу кхолламашкахь.',
-'uploadnewversion-linktext' => 'Чуяккха керла башхо хlокху хlуман',
+'sharedupload-desc-here' => 'ХӀара файл $1 чура ю и лело йиш ю массо проекташкахь.
+Цунна хаам гайтина лахахь. [$2 Файл ВикидӀайуьллучехь]',
+'uploadnewversion-linktext' => 'Чуяккха керла верси хӀокху файлан',
'shared-repo-name-wikimediacommons' => 'Викидlайуллуче',
# File reversion
+'filerevert' => 'Тохарлера верси юхаерзор $1',
+'filerevert-legend' => 'Файлан верси юхаерзо',
+'filerevert-intro' => '<span class="plainlinks">Файл юхаерзош ю \'\'\'[[Media:$1|$1]]\'\'\' оцу [$4 верси $3, $2].</span>',
'filerevert-comment' => 'Бахьан:',
+'filerevert-defaultcomment' => 'Юхаерзош ю оцу $2, $1 хенахь хила верси',
'filerevert-submit' => 'Юхаяккха',
+'filerevert-success' => "Юхаерзина файл '''[[Media:$1|$1]]''' оцу [$4 верси $3, $2].",
# File deletion
'filedelete-legend' => 'ДӀаяккха и файл',
'filedelete-success' => '$1 дӀаяккхи.',
'filedelete-otherreason' => 'Кхин бахьан:',
'filedelete-reason-otherlist' => 'Кхин бахьан',
+'filedelete-reason-dropdown' => '* Даржина долу дӀаяккхаран баьхьанаш
+** Авторан бакъонаш талхор
+** ЦхӀатера файлаш хилар',
+'filedelete-edit-reasonlist' => 'Бахьанин список нисяр',
# MIME search
'mimesearch' => 'MIME хула лаха',
'listredirects' => 'ДIасахьажоран могIам',
# Unused templates
-'unusedtemplates' => 'Лелош доцу куцкепаш',
+'unusedtemplates' => 'Лелош доцу кепаш',
# Random page
-'randompage' => 'Цахуаш нисйелла агlо',
+'randompage' => 'Цахууш нисйелла агӀо',
# Random redirect
-'randomredirect' => 'Ца хууш нисделла дIасахьажор',
+'randomredirect' => 'Цахууш нисделла дIасахьажор',
# Statistics
'statistics' => 'Бухехьдерг',
'statistics-users-active-desc' => 'Декъашхой, муьлха цхьа хlум дина болу, кху {{PLURAL:$1|тlаьххьара $1 динахь|тlаьххьара $1 дийнахь}}',
'disambiguations' => 'Дуккха маьIнаш долу хьажорца йолу агIонаш',
-'disambiguationspage' => 'Куцкеп:цхьатера маьӀна доцуш',
+'disambiguationspage' => 'Кеп:цхьатера маьӀна доцуш',
'doubleredirects' => 'ШалгIа дIасахьажийнарш',
'double-redirect-fixed-move' => 'Агlон [[$1]] цlе хийцна, хlинца иза дlахьажийна оцу [[$2]]',
# Miscellaneous special pages
'nbytes' => '$1 {{PLURAL:$1|байт|байташ|байт}}',
'ncategories' => '$1 {{PLURAL:$1|категори|категореш|категореш}}',
-'nmembers' => '$1 {{PLURAL:$1|файл|файл|файлаш}}',
+'nmembers' => '$1 {{PLURAL:$1|хӀума|хӀумнаш}}',
+'nimagelinks' => 'Лелош ю $1 {{PLURAL:$1|агӀоначохь|агӀонашкахь|агӀонашкахь}}',
+'ntransclusions' => 'лелош ю $1 {{PLURAL:$1|агӀоначохь|агӀонашкахь|агӀонашкахь}}',
'specialpage-empty' => 'Дехаро хlумма ца елла.',
'lonelypages' => 'Байлахь йисина агIонаш',
-'uncategorizedpages' => 'Категори йоцу агIонаш',
-'uncategorizedcategories' => 'Категори йоцу категореш',
-'uncategorizedimages' => 'Категори йоцу хIумнаш',
-'uncategorizedtemplates' => 'Категори йоцу кепаш',
-'unusedcategories' => 'Йаьсса кадегарш',
-'wantedcategories' => 'Оьшуш йолу кадегарш',
+'uncategorizedpages' => 'Категореш йоцу агIонаш',
+'uncategorizedcategories' => 'Категореш йоцу категореш',
+'uncategorizedimages' => 'Категореш йоцу файлаш',
+'uncategorizedtemplates' => 'Категореш йоцу кепаш',
+'unusedcategories' => 'Йаьсса категореш',
+'unusedimages' => 'Лелош доцу файлаш',
+'wantedcategories' => 'Оьшуш йолу категореш',
'wantedpages' => 'Оьшуш йолу агIонаш',
-'wantedfiles' => 'Ð\9eÑ\8cÑ\88Ñ\83Ñ\88 йолÑ\83 Ñ\85IÑ\83мнаш',
-'wantedtemplates' => 'Оьшуш долу куцкепаш',
+'wantedfiles' => 'Ð\9eÑ\8cÑ\88Ñ\83Ñ\88 йолÑ\83 Ñ\84айлаш',
+'wantedtemplates' => 'Оьшуш долу кепаш',
'mostlinked' => 'Дуккха хьажоригаш тIе тоьхна йолу агIонаш',
-'mostlinkedcategories' => 'Дуккха тIе хьажораш йолу кадегарш',
-'mostlinkedtemplates' => 'Массарел дуккха а леладо куцкепаш',
-'mostcategories' => 'Дуккха кадегарш тIе тоьхна йолу агIонаш',
+'mostlinkedcategories' => 'Дуккха тӀе хьажораш йолу категореш',
+'mostlinkedtemplates' => 'Массарел дуккха а леладо кепаш',
+'mostcategories' => 'Дуккха категореш тӀе тоьхна йолу агӀонаш',
'mostimages' => 'Массарел дуккха лелайо файлаш',
'mostrevisions' => 'Сих сиха нисйина йолу агIонаш',
'prefixindex' => 'Хьалха агlонашан цlераш хlотто йеза',
'longpages' => 'Беха яззамаш',
'deadendpages' => 'Дика йоцу агIонаш',
'protectedpages' => 'ГIаролла дина агIонаш',
-'protectedtitles' => 'Ца магийна йолÑ\83 цIераш',
+'protectedtitles' => 'Ð\93IаÑ\80олла дина цIераш',
'listusers' => 'Декъашхой могlам',
'listusers-editsonly' => 'Цхаъ мукъане а хийцам бина декъашхой гайта',
'listusers-creationsort' => 'Кхолларан хене хьаьжна нисъяр',
'move' => 'Цlе хийца',
'movethispage' => 'Хlокху агlон цlе хийца',
'unusedimagestext' => 'Дехар до, тидаме эца, кхин йолу дуьнана машан-меттигаш а лелош хила мега нисса йогlу хьажориг (URL) хlокху хlуман, хlокху могlаме йогlуш ялахь яцахь а иза хила мега жигара лелош.',
+'notargettitle' => 'Ӏалашо билгал йина яц',
'nopagetitle' => 'Ишта агӀо яц',
'nopagetext' => 'Ишта агӀо яц.',
'pager-newer-n' => '{{PLURAL:$1|алсамо керла|алсамо керланаш|алсамо керлачарех}} $1',
# Special:Log
'specialloguserlabel' => 'Декъашхо:',
-'speciallogtitlelabel' => 'Корта:',
+'speciallogtitlelabel' => 'Ӏалашо (цӀе я декъашхо):',
'log' => 'Тéптарш',
'all-logs-page' => 'Деригге тléкхочучéхь долу тéптарш',
'alllogstext' => 'Массо тéптар могlам. {{SITENAME}}.
# Special:AllPages
'allpages' => 'Массо агlонаш',
'alphaindexline' => 'оцу $1 кху $2',
+'nextpage' => 'Тlаьхьа йогlу агlо ($1)',
'prevpage' => 'Хьалхалера агlо ($1)',
'allpagesfrom' => 'Гучé яха агlонаш, йуьлалуш йолу оцу:',
'allpagesto' => 'Арайахар сацадé оцу:',
'allpages-hide-redirects' => 'Къайлаяха дӀасахьажийнарш',
# Special:Categories
-'categories' => 'Кадегарш',
+'categories' => 'Категореш',
+'categoriespagetext' => '{{PLURAL:$1|Лахара категореш чохь ю|Лахара категореш чохь ю}} агӀонаш я медиа-файлаш.
+Кхузахь гойтуш яц [[Special:UnusedCategories|лелош йоцу категореш]].
+Кхин дӀа [[Special:WantedCategories| хийла еза категореш]].',
+'categoriesfrom' => 'Гучé яха категореш, оцу:',
# Special:DeletedContributions
'deletedcontributions' => 'Декъашхочуьн дlабайина къинхьегам',
# Special:ListUsers
'listusersfrom' => 'ТӀера волавелла декъашхой гайта:',
'listusers-submit' => 'Гайта',
+'listusers-noresult' => 'Декъашхой цакарий.',
# Special:ActiveUsers
'activeusers' => 'Жигар декъашхой могlам',
-'activeusers-from' => 'ТӀера волавелла декъашхой гайта:',
+'activeusers-from' => 'Гучé баха декъашхой, болалуш болу оцу:',
+'activeusers-noresult' => 'Декъашхой цакарий.',
# Special:ListGroupRights
'listgrouprights' => 'Декъашхойн тобанаши бакъонаш',
# Email user
'emailuser' => 'Декъашхочун хааман кехат',
+'emailuser-title-target' => 'Декъашхочунга кехат яздар',
+'emailuser-title-notarget' => 'Декъашхочунга кехат яздар',
'defemailsubject' => 'Хаам {{grammar:genitive|{{SITENAME}}}} чура бу',
+'emailusernamesubmit' => 'ДӀадахьийта',
+'email-legend' => '{{grammar:genitive|{{SITENAME}}}} кхечу декъашхочунга кехат дахьийтар',
+'emailfrom' => 'Хьаьнгара',
+'emailto' => 'Хьаьнга:',
'emailmessage' => 'Хаам:',
+'emailsent' => 'Кехат дӏадахьийтина',
+'emailsenttext' => 'Хьан электроннан хаам дӏабахьийтина.',
# Watchlist
'watchlist' => 'Тергаме могlам',
'mywatchlist' => 'Тергаме могӀам',
-'watchnologin' => 'Хьо вовзита веза гlирсан',
+'watchnologin' => 'Хьо вовзийта/йовзийта гlирсан',
'addedwatchtext' => 'Хlар агlо «[[:$1]]» тlетоьхна хьан [[Special:Watchlist|тидаме могlам чу]].
Тlаьхьабогlу хийцамаш хlокх агlонна а кхунца дозуш долу дийцаре агlо а дlаяздийра ду кху могlамашкахь, ишта къастина хирду уьш шуьрочу элпашца хlокх агlон чохь [[Special:RecentChanges|керла хийцаме могlамашкахь]], бгlаьран га атту болуш.',
'removedwatchtext' => 'Агlо «[[:$1]]» дlаяккхина йара хьан [[Special:Watchlist|тергаме могlам юкъар]].',
'unwatch' => 'Тергамах къаста',
'notanarticle' => 'Бац яззам',
'watchlist-details' => 'Хьан тергаме могlамца $1 {{PLURAL:$1|агlо|агlонаш|агlонаш}} ю, дийцаре агlонаша йоцуш.',
-'wlheader-showupdated' => "* Хийцам бина агӀонаш '''Ӏаьржа''' шрифтцан билгальяха ю.",
+'wlheader-showupdated' => "Хийцам бина агӀонаш '''Ӏаьржа''' шрифтцан билгальяха ю.",
'wlnote' => 'Лахахьа {{PLURAL:$1|тlаьхьа богlу $1 хийцам|тlаьхьа богlу $1 хийцамаш|тlаьхьа богlу $1 хийцамаш}} хlокху {{PLURAL:$2|тlаьхьар|тlаьхьара|тlаьхьара}} <strong>$2</strong> {{plural:$2|сохьт|сохьатехь|сохьташкахь}}.',
'wlshowlast' => 'Гайта тlаьххьара $1 сахьташ $2 денош $3',
'watchlist-options' => 'Тергаме могlаман гlирс нисбар',
# Delete
'deletepage' => 'ДӀаяккха агӀо',
-'confirm' => 'Ð\9aÑ\8aобалде',
+'confirm' => 'Ð\91акÑ\8aдан',
'excontent' => 'чуьраниг: «$1»',
'excontentauthor' => 'чуьраниг: «$1» (дуьххьара кхоллина да вара иза [[Special:Contributions/$2|$2]])',
'exbeforeblank' => 'чуьраниг дlацlанйале хьалха: «$1»',
'exblank' => 'агlо йаьсса йара',
'delete-confirm' => '$1 — дӀаяккхар',
-'delete-legend' => 'Дlадайáр',
+'delete-legend' => 'ДӀаяккхар',
'historywarning' => "'''Тергам:''' хӀокху агӀона герггарчу хьесапехь $1 {{PLURAL:$1|версеш|верси|верси}} ю:",
'confirmdeletetext' => 'Хьан дехар ду хlара агlо ше бухци дlабайа аьлла (йа сурт) а массо цуьнан истори оцу бух чура. Дехар до, бакъде, билгала хьайна иза лаахь, кхеташ хира ву хьо тlаьхьа хир долу чун, иза деш ду ахьа бакъонца догlуш, вахьа дехкина долучу дакъанца [[{{MediaWiki:Policy-url}}]].',
'actioncomplete' => 'Дешдерг кхочушди',
-'deletedtext' => '«$1» дlаяккхина йара.
-Хьажа. $2 хьажарна оцу тlаьхьара дlадайаран могlаме.',
-'dellogpage' => 'ДӀадаьхнарш долу тéптар',
-'deletionlog' => 'дӀадаьхнарш долу тéптар',
+'deletedtext' => '«$1» дӀаяккхина яра.
+Хьажа. $2 хьажарна оцу тӀаьхьара дӀаяхначара могӀаме.',
+'dellogpage' => 'ДӀадяхнарш долу тéптар',
+'deletionlog' => 'дӀадяхнарш долу тéптар',
'deletecomment' => 'Бахьан:',
'deleteotherreason' => 'Кхин бахьан/тlетохар:',
'deletereasonotherlist' => 'Кхин бахьан',
+'deletereason-dropdown' => '* Даржина долу дӀаяккхаран баьхьанаш
+** зулма
+** авторан лаамца
+** авторан бакъонаш талхор',
+'delete-edit-reasonlist' => 'Бахьанин список нисяр',
# Rollback
'rollback' => 'Юхабаккха хийцам',
'rollbacklinkcount' => 'юхадаккха $1 {{PLURAL:$1|нисдар|нисдарш}}',
'rollbacklinkcount-morethan' => 'Юхадаккха $1 дукха {{PLURAL:$1|нисдар|нисдарш|нисдарш}}',
'revertpage' => 'Нисдарш [[Special:Contributions/$2|$2]] ([[User talk:$2|дийцаре]]) йуха йаьхна башхаллийн [[User:$1|$1]]',
+'rollback-success' => 'Юха даьхна $1; нисдарш, $2 версен.',
# Protect
'protectlogpage' => 'Гlаролли тептар',
'protect-level-sysop' => 'Куьйгалхошна бé цамагдо',
'protect-summary-cascade' => 'чахчареца',
'protect-expiring' => 'чакхйолу $1 (UTC)',
+'protect-expiring-local' => 'чекхйолу $1',
'protect-expiry-indefinite' => 'хан чаккхе йоцуш',
'protect-cascade' => 'Гlаролла йé агlонаш, хlокху агlонца хlоттайелларш (чахчарé гlаролла)',
'protect-cantedit' => 'Хьéга хийцам цабало хlокху агlон гlаролли локхалан, хlуд аьлча хьан бакъо яц оцун рéдаккха.',
'protect-othertime-op' => 'кхин хан',
'protect-otherreason' => 'Кхин бахьна/тӀетохар:',
'protect-otherreason-op' => 'Кхин бахьан',
+'protect-dropdown' => '* ГӀоралла дарна баьхьаш
+** сих-сиха зулам дар
+** дуккха спам хилар
+** нисдаршан тӀом
+** гӀараялл агӀо',
+'protect-edit-reasonlist' => 'Бахьанин список нисяр',
+'protect-expiry-options' => '1 сахьт:1 hour,1 де:1 day,1 кӀиран:1 week,2 кӀиран:2 weeks,1 бутт:1 month,3 бутт:3 months,6 бутт:6 months,1 шо:1 year,цlкъа:infinite',
'restriction-type' => 'Бакъо:',
-'restriction-level' => 'Тlевитарна локхалла:',
+'restriction-level' => 'ТӀекхочаран локхалла:',
# Restrictions (nouns)
+'restriction-edit' => 'Тадар',
+'restriction-move' => 'ЦӀе хийцар',
'restriction-upload' => 'Чуйолуш',
# Restriction levels
+'restriction-level-autoconfirmed' => 'дуьззина доцуш гӀаролла',
'restriction-level-all' => 'массо барам',
# Undelete
'undelete-fieldset-title' => 'МеттахӀоттае версеш',
'undeleteextrahelp' => "Ерриге агӀонан истори меттахӀоттая массо а билгалонаш еса а йити '''«{{int:undeletebtn}}»''' тӀетаӀае.
ЦхӀайолу агӀонан версиш меттахӀоттая цкъахьалха меттахӀоттош йолу версиш билгалъяхна тӀетагӀе '''«{{int:undeletebtn}}»'''.",
+'undeletehistory' => 'Агӏо меттахӏотта йича цуьнан хийцаман истори меттахӏотта ло.
+Агӏо дӏаяккхинчул тӏяха юху кхолийна елахь меттахӏоттина йолу версеш гучуер ю керлачу версешна хьалха',
'undeleterevdel' => 'Метта хlоттор хира дац, нагахь иза дакъошкахь дlадайина далахь а тlаьххьара кисак башхо йа хlума.
Иштнарг хилча ахьа дlабаккха беза хlоттийна болу къастам йа хьагайта тlаьххьара дlайайина башхо.',
'undeletebtn' => 'МеттахӀоттае',
'undeletedfiles' => '$1 {{PLURAL:$1|файл меттахӀоттайина|файлаш меттахӀоттайина|файлаш меттахӀоттайина}}',
'undeletedpage' => "'''МеттахӀоттайина агӀо «$1».'''
-ДӀадаьхнарш долу могӀане [[Special:Log/delete|тéптаре хьажа]].",
+ДӀадяхнарш долу могӀане [[Special:Log/delete|тéптаре хьажа]].",
'undelete-search-submit' => 'Лаха',
# Namespace form on various pages
# Contributions
'contributions' => 'Декъашхон къинхьегам',
-'contributions-title' => 'Декъашхочуьна къинхьегам $1',
+'contributions-title' => 'Декъашхон къинхьегам $1',
'mycontris' => 'Сан къинхьегам',
'contribsub2' => 'Къинхьегам $1 ($2)',
'uctop' => ' (тlаьхьара)',
'year' => 'Шерачохь (йа хьалхе):',
'sp-contributions-newbies' => 'Гайта бекъ къинхьегам, керла дlабазбиначара бина болу',
-'sp-contributions-blocklog' => 'сацораш',
-'sp-contributions-deleted' => 'дӀадаьхна нийсдарш',
-'sp-contributions-uploads' => 'тӀетохар',
+'sp-contributions-blocklog' => 'блоктоьхарш',
+'sp-contributions-deleted' => 'дӀадяхна нийсдарш',
+'sp-contributions-uploads' => 'Файлаш',
'sp-contributions-logs' => 'тéптарш',
'sp-contributions-talk' => 'дийцаре',
'sp-contributions-userrights' => 'декъашхочуьн бакъона урхалладар',
'whatlinkshere-page' => 'Агlо:',
'linkshere' => "Тlаьхьайогlу агlонаш хьажоригца ю оцу '''[[:$1]]''':",
'nolinkshere' => "ХӀокху '''[[:$1]]''' агӀона тӀе кхечу агӀонашчохь хьажоригаш яц",
+'nolinkshere-ns' => "Хаьржинчу анахь яц '''[[:$1]]''' цӀе йолу агӀонаш",
'isredirect' => 'агlо-дlасахьажайар',
'istemplate' => 'лата йe',
'isimage' => 'Оцу суьртан хьажориг',
'whatlinkshere-filters' => 'Литтарш',
# Block/unblock
-'block' => 'Декъашхо сацавар',
-'blockip' => 'Сацаве',
-'blockip-legend' => 'Декъашхо сацавар',
+'block' => 'Декъашхон блоктохар',
+'blockip' => 'Блоктоха',
+'blockip-legend' => 'Декъашхон блоктохар',
+'blockiptext' => 'Бухахь йолу форманца блоктоха IP-адресна цунтӏера дӏаяздарш ца дайта.
+Блоктоха магийна цо зенаш деш делахь кхин хӏокху [[{{MediaWiki:Policy-url}}|низам ца]].
+Лахахь билгалде блоктохарна бахьна.',
'ipadressorusername' => 'IP-долу меттиг йа декъашхон цlе:',
'ipbexpiry' => 'Хан чекхйолу:',
'ipbreason' => 'Бахьан:',
'ipbreasonotherlist' => 'Кхин бахьан',
-'ipbreason-dropdown' => '* Гуттар хуьлу бахьанца сацийна
-** Харц хаамаш дӀаязбеш ву
-** АгӀонашчур яззамаш дӀабохуш ву
-** Спам-хьажоригаш кхечу сайташ тӀе
-** МаьӀнадоцу йозанаш яздеш ву
-** Декъашхошна кхерам туьйсуш тӀехьавелла ву
-** Массийта цӀерашца зулам деш ву (ю)
-** Декъашхочун цӀе тӀеэца йиш йоцуш ю',
-'ipbcreateaccount' => 'Цамагдо дӀаязвалар',
+'ipbreason-dropdown' => '* Белхан некъ дӀакъовлар бахьанаш:
+** Харца хаам бар
+** АгӀонан чураниг дӀаяккхар
+** Спам-хьажорагаш арахьара сайташна
+** МаьӀна доцу текст тӀетохар
+** Декъашхой хьийзабар, кхерамаш тиссар
+** Масийтта лараман яздар зуламан лелаяр
+** Магитина йоцу декъашхон цӀе',
+'ipb-hardblock' => 'Шаш довзийтина болу декъашхошна бехкам бе хӀокху IP-адресца тадарш дан',
+'ipbcreateaccount' => 'Цамагдо дӀаязвалар/ялар',
'ipbemailban' => 'Цамагдо декъашхошка хааман кехаташ кхехьийта',
-'ipbenableautoblock' => 'СаÑ\86ае декÑ\8aаÑ\88Ñ\85оÑ\87о лелоÑ\88 йолÑ\83 IP-адÑ\80еÑ\81аÑ\88',
-'ipbsubmit' => 'СаÑ\86аве декÑ\8aаÑ\88Ñ\85о',
+'ipbenableautoblock' => 'Ð\91локÑ\82оÑ\85а декÑ\8aаÑ\88Ñ\85оÑ\87о лелоÑ\88 йолÑ\83 IP-адÑ\80еÑ\81аÑ\88на',
+'ipbsubmit' => 'Ð\91локÑ\82оÑ\85а декÑ\8aаÑ\88Ñ\85он',
'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',
'ipbwatchuser' => 'ТӀетоха тергаме могӀам юкъа цуьнан долахь йолу агӀо а цуьнан дийцаре агӀо а',
-'ipb-disableusertalk' => 'Цамагдо шин дийцаре агӀо та я сацийна волучу хенахь',
-'ipb-confirm' => 'Бакъде сацавар',
-'blockipsuccesssub' => 'Сацавар чакхдели',
-'blockipsuccesstext' => '[[Special:Contributions/$1|«$1»]] сацийна ву.<br />
-Хьажа. [[Special:BlockList|могlам сацийна IP-долу меттигаш]].',
+'ipb-disableusertalk' => 'Цамагдо шин дийцаре агӀо та я блоктоьхна волучу хенахь',
+'ipb-change-block' => 'Юхаблоктоха декъашхон оьцу хийцамашца',
+'ipb-confirm' => 'Бакъде блоктохар',
+'blockipsuccesssub' => 'Блоктохар чакхдели',
+'blockipsuccesstext' => '[[Special:Contributions/$1|«$1»]] {{GENDER:$1|блоктоьхна ву|блоктоьхна ю}}.<br />
+Хьажа. [[Special:BlockList|блоктоьхна IP-адресашан могӀам]].',
+'ipb-blockingself' => 'Хьо хьайна блоктухуш ву/ю! Лууш вуй/юй хьо и кхочушдан?',
+'ipb-edit-dropdown' => 'Бахьанин список нисяр',
+'ipb-unblock-addr' => 'ДӀаякхаблок $1',
+'ipb-unblock' => 'дӀаякхаблок декъашхонтӀера я IP-адрес тӀера',
+'ipb-blocklist' => 'Блоктоьхнарш',
'ipb-blocklist-contribs' => 'Декъашхон къинхьегам $1',
+'unblockip' => 'ДӀаякхаблок декъашхонтӀера',
'unblocked' => '[[User:$1|$1]] хьайаьстина.',
-'ipblocklist' => 'Сацийна IP-долу меттиг а дlалаьрра язбаларш',
+'ipblocklist' => 'Блоктоьхна декъашхой',
+'ipblocklist-legend' => 'Блоктоьхна декъашхо лахар',
+'blocklist-userblocks' => 'ДӀахьулян дӀаяздаршан блоктохарш',
+'blocklist-tempblocks' => 'ДӀахьулян цхьан ханна йолу блоктохарш',
+'blocklist-addressblocks' => 'ДӀахулдан цхьайолу IP адресан блоктохарш',
+'blocklist-rangeblocks' => 'ДӀахьулян блоктоьхна йолу диапазонаш',
+'blocklist-timestamp' => 'Терахь/хан',
+'blocklist-target' => 'Ӏалашо',
+'blocklist-expiry' => 'Чекхйолу',
+'blocklist-by' => 'Цунна блоктоьхана куьйгалхо',
+'blocklist-params' => 'Блоктохаран параметрш',
'blocklist-reason' => 'Бахьан:',
'ipblocklist-submit' => 'Лаха',
'infiniteblock' => 'хан чаккхе йоцуш',
-'blocklink' => 'сацаве',
-'unblocklink' => 'хьаваста',
-'change-blocklink' => 'хийцам бе сацорна',
+'noautoblockblock' => 'ша блоктухарг дӏаяйина',
+'blocklink' => 'блоктоха',
+'unblocklink' => 'дӀаякхаблок',
+'change-blocklink' => 'хийцам бе блоктохарна',
'contribslink' => 'къинхьегам',
-'blocklogpage' => 'Сацораш долу тептар',
-'blocklogentry' => 'сацийна [[$1]] цхьана ханна $2 $3',
-'unblocklogentry' => 'схьаваьстина $1',
-'block-log-flags-nocreate' => 'цамагдо дlаязвалар дlаязбаларшца',
+'blocklogpage' => 'Блоктоьхарш болу тептар',
+'blocklog-showlog' => '{{GENDER:$1|ХӀокху декъашхон хьалхо блоктоьхна хила}}.
+Лахахь гойту блоктохарш долу тептар:',
+'blocklogentry' => 'блоктоьхна [[$1]] цхьана ханна $2 $3',
+'reblock-logentry' => 'Хийцина блоктоьхна хан [[$1]] $2 $3',
+'blocklogtext' => 'Блоктохаршна а блокдӀаякхаршна а тептар. Ша блоккхеташ долу IP-адресаш кхузахь гойтуш дац. Кхин. [[Special:BlockList|хӀийнца блоктоьха берш]].',
+'unblocklogentry' => 'дӀаякхинаблок $1',
+'block-log-flags-nocreate' => 'цамагдо керла дӏаяздарш кхоллар',
+'block-log-flags-noautoblock' => 'ша блоктухарг дӏаяйина',
+'ipb-needreblock' => 'ХӀара $1 {{GENDER:$1|блоктоьхна ву|блоктоьхна ю}}. Лаьий хьуна блоктохаран параметрш хийца?',
# Move page
'move-page' => '$1 — цlе хийцар',
Шу жоьпехь ду хьажорагаш нийса некъ гойтуш хиларан.
-Тидам бе Ñ\85Ñ\8cалÑ\85алеÑ\80а агÓ\80он Ñ\86Ó\80е â\80\98â\80\99â\80\99Ñ\85ийÑ\86алÑ\83Ñ\80 Ñ\8fÑ\86â\80\99â\80\99â\80\99 иÑ\88Ñ\82Ñ\82а Ñ\86Ó\80е йолÑ\83 агÓ\80о йолÑ\83Ñ\88 елаÑ\85Ñ\8c. ЮкÑ\8aаÑ\80даккÑ\85аÑ\80: йолÑ\83Ñ\88 йолÑ\83 агÓ\80а кхоьчухьа хьажораг елахь, я еса елахь а, цуьна хьийцаме истори яцахь а.
+Тидам бе Ñ\85Ñ\8cалÑ\85алеÑ\80а агÓ\80он Ñ\86Ó\80е â\80\98â\80\99â\80\99Ñ\85ийÑ\86алÑ\83Ñ\80 Ñ\8fÑ\86â\80\99â\80\99â\80\99 иÑ\88Ñ\82Ñ\82а Ñ\86Ó\80е йолÑ\83 агÓ\80о йолÑ\83Ñ\88 елаÑ\85Ñ\8c. ЮкÑ\8aаÑ\80даккÑ\85аÑ\80: йолÑ\83Ñ\88 йолÑ\83 агÓ\80о кхоьчухьа хьажораг елахь, я еса елахь а, цуьна хьийцаме истори яцахь а.
И бохург ду шун агӀонан цӀе юха а хьалха хилларгчунтӀе хийца йиш ю, амма йолуш йолу агӀо дӀаяккха йиш яц.
'movedto' => 'цlе хийцина оцу',
'movetalk' => 'Цуьнца йогlуш йолу дийцаре агlон цlе хийцар',
'move-subpages' => 'ЦӀeрш хийцае бухара агӀонаши ($1 кхаччалц)',
+'move-talk-subpages' => 'ЦӀе хийца бухара агӀонаши а агӀонашан дийцаре а ($1 кхаччалц)',
+'movepage-page-exists' => 'Агӏо $1 йолуш ю цундела и ша юху дӏаязъян йиш яц.',
'movepage-page-moved' => 'АгӀона $1 цӀе хийцина оцу $2.',
'movelogpage' => 'Цlераш хийцаран тептар',
'movesubpage' => '{{PLURAL:$1|Бухара агӀо|Бухара агӀонаш}}',
Лаьий хьуна и дӀаяккха, цӀе хийца таро хилийта?',
'delete_and_move_confirm' => 'Хlаъ, дӀаяккха хlара агlо',
'delete_and_move_reason' => 'ДӀаяккхина цӀе хийца я таро хилийта «[[$1]]»',
+'selfmove' => 'АгӀона цӏе хийца йиш яц: и цӏе хӏокху агӏона йолуш ю.',
+'immobile-source-page' => 'ХӀокху агӏона цӏе хийца йиш яц.',
'move-leave-redirect' => 'Ӏадйита дӀасахьажориг',
'protectedpagemovewarning' => "'''Дlахьедар.''' Хlара агlо гlаролла йина йу; цlе хийца йа нисйа а бакъо йолуш адаманкуьйгалхой бе бац.
Лахахьа тептаро балийна тlаьхьаралера дlаязбина хаам:",
Кхечу меттера яззамаш чуйаха, чуязйе цlе редокхчу метте, цlхьа могlан цlе могlаршкахь, йуха харжа лаьи шуна Кхечу меттер чуйаха массо яззамашна истори хийцамбарш йа тlяхьаралера яззамна башхо.
Шуьга кхи даландерг, лелаеш йолу меттиг къастаман машан хьажориг кхечу меттер чудаха тlяхьарлера башхон яззамаш. Массала оцу яззамна [[{{MediaWiki:Mainpage}}]] хlара хира йу хьажориг [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]].',
-'export-templates' => 'Латадé куцкепаш',
+'export-templates' => 'Латадé кепаш',
# Namespace 8 related
'allmessages' => 'Гlирса хаамаш',
# Special:Import
'import' => 'Кхин яззам агlонаш чуяхар',
'import-interwiki-source' => 'Вики-хьост/агlо:',
-'import-interwiki-templates' => 'Лата де массо куцкепаш',
+'import-interwiki-templates' => 'Лата де массо кепаш',
'import-upload-filename' => 'Файлан цӀе:',
# Tooltip help for the actions
'tooltip-pt-preferences' => 'Хьан гlирс нисбар',
'tooltip-pt-watchlist' => 'Ахьа тергам бо агlонаши хийцаман могlам',
'tooltip-pt-mycontris' => 'Хьан нисдаран могlам',
-'tooltip-pt-login' => 'Хlокху гlирса чохь дlавазвала мега, амма иза тlедожош дац.',
+'tooltip-pt-login' => 'Хlокху гlирса чохь дlавазвала/яла мега, амма иза тlедожош дац.',
'tooltip-pt-logout' => 'Дlадерзадо болх бар',
'tooltip-ca-talk' => 'Дийцаре агlон чулацам',
'tooltip-ca-edit' => 'Хlара агlо хийцалур ю. Лелайе, дехар до, хьалххьажар айхьа чутохале lалашан',
'tooltip-ca-nstab-image' => 'Хlуман агlо',
'tooltip-ca-nstab-mediawiki' => 'Хааман агlо MediaWiki',
'tooltip-ca-nstab-template' => 'Куцкепа агlо',
-'tooltip-ca-nstab-category' => 'Кадегарши агlо',
+'tooltip-ca-nstab-category' => 'Категореши агӀо',
'tooltip-minoredit' => 'Къастам бé хlокху хийцамна кlеззиг боуш санна',
'tooltip-save' => 'Хьан хийцамаш lалашбой',
'tooltip-preview' => 'Дехар до, агlо lалаш йарал хьалха хьажа муха йу яз!',
'common.css' => '/** Чуйиллина йолу кхузе CSS хир йу лелош масхьа кечйечу чохь */',
'monobook.css' => '/* Чуйиллина йолу кхузе CSS хир йу лелош масхьа Monobook чохь */',
'print.css' => '/* Чуйиллина йолу кхузе CSS хир йу лелош масхьа зорба тухучуче чохь */',
-'handheld.css' => '/* Чуйиллина йолу кхузе CSS хир йу лелош масхьа койнаш чохь, дукхах ерг хатl нисдеш оцу $wgHandheldStyle */',
# Scripts
'common.js' => '/* Чуйиллина йолу кхузе JavaScript ишар гучу ерайу массо декъашхошна оцара схьаелларца хlора агlо */',
'spamprotectiontitle' => 'Совбиларна литтар',
# Info page
+'pageinfo-language' => 'АгӀона мотт',
'pageinfo-toolboxlink' => 'Агlонах болу бовзам',
+# Skin names
+'skinname-modern' => 'Кхузаманан',
+'skinname-vector' => 'Векторни',
+
+# Patrolling
+'markaspatrolledtext' => 'Пайден агӏо хилар билгало ян',
+'markedaspatrollednotify' => 'АгӀо «$1» пайдане хилар билгалдина',
+
# Browsing diffs
'previousdiff' => '← Хьалхдоьда нисдинарг',
'nextdiff' => 'Тlяхьа догlа нисдинарг →',
'imagemaxsize' => "Суьртан бараман доза тохар:<br />''(Файла агӀона куц дийцар)''",
'thumbsize' => 'Жима дина суьртан барам:',
'widthheightpage' => '$1 × $2, $3 {{PLURAL:$3|агlо|агlонаш|агlонаш}}',
+'file-info' => 'файлан барам: $1, MIME-тайп: $2',
'file-info-size' => '$1 × $2 {{PLURAL:$2|пиксель|пикселш|пикселш}}, файлан барам: $3, MIME-тайп: $4',
+'file-info-size-pages' => '$1 × $2 пикселш, файлан барам: $3, MIME-тайп: $4, $5 {{PLURAL:$5|агӀо|агӀонаш}}',
'file-nohires' => 'Кхи йоккха гlоле башхо яц.',
'svg-long-desc' => 'SVG-файл, лартӀахь ю $1 × $2 {{PLURAL:$2|пиксель|пикселш|пикселш}}, файлан барам: $3',
+'svg-long-desc-animated' => 'Анимироват йина SVG-файл, номинальни $1 × $2 {{PLURAL:$2|пиксель|пикселш}}, файлан барам: $3',
'show-big-image' => 'Сурт цlанал лаккхара бакъонца',
+'show-big-image-preview' => 'Барам хьажале: $1.',
+'show-big-image-other' => '{{PLURAL:$2|Кхин шоралла|Кхин шоралла}}: $1.',
+'show-big-image-size' => '$1 × $2 пикселш',
# Special:NewFiles
-'newimages' => 'Ð\9aеÑ\80лаÑ\87Ñ\83 Ñ\85lÑ\83мни галелаÑ\80е',
+'newimages' => 'Ð\9aеÑ\80лаÑ\87Ñ\83 Ñ\84айланÑ\88ан галеÑ\80ий',
'newimages-legend' => 'Литтар',
'ilsubmit' => 'Лаха',
* gpsaltitude',
# Exif tags
-'exif-datetime' => 'Хlума хийцина терахь а хан',
+'exif-imagewidth' => 'Шоралла',
+'exif-imagelength' => 'Локхалла',
+'exif-orientation' => 'Суьртан хьал',
+'exif-xresolution' => 'Шоралла',
+'exif-yresolution' => 'Локхалла',
+'exif-datetime' => 'Файл хийцина терахь а хан',
+'exif-imagedescription' => 'Суьртан цӏе',
+'exif-software' => 'Лелина программа',
+'exif-colorspace' => 'Беснашан хьал',
+'exif-pixelxdimension' => 'Суьртан локхалла',
'exif-datetimeoriginal' => 'Дуьххьарлера терахь а хан',
+'exif-datetimedigitized' => 'Оцифровк йина терахь а хан а',
+'exif-gpsaltitude' => 'Локхалла',
+'exif-gpsdestlatitude' => 'Объектан дохалла',
+'exif-gpsdatestamp' => 'Терахь',
+'exif-source' => 'Хьост',
+'exif-languagecode' => 'Мотт',
+
+'exif-orientation-1' => 'Лартӏахь',
+
+'exif-xyresolution-i' => '$1 тӏадамаш дюйман',
'exif-scenetype-1' => 'Сурт даьккхина нис дуьххьал',
+'exif-contrast-0' => 'Лартӏахь',
+
+'exif-saturation-0' => 'Лартӏахь',
+
+'exif-sharpness-0' => 'Лартӏахь',
+
+'exif-dc-date' => 'Терахь(ш)',
+
# External editor support
'edit-externally' => 'Рéдаккха хlокху хlуман, арахьара диллагlарам лелош',
'edit-externally-help' => '(мадарра хьажа. оцу [//www.mediawiki.org/wiki/Manual:External_editors куьйгалийца дlахlотторе])',
'table_pager_empty' => 'Цакарийна',
# Auto-summaries
-'autosumm-blank' => 'Агlон чулацам дlабайина',
+'autosumm-blank' => 'Агӏон чулацам дӏабяккхина',
+'autosumm-replace' => 'АгӀона чуьраниг хийцина оцу «$1»',
+'autoredircomment' => 'ДӀасахьажийна цуна [[$1]] тӏе',
'autosumm-new' => 'Керла агlо: «$1»',
# Live preview
# Special:Version
'version' => 'Верси MediaWiki',
'version-other' => 'Кхин',
+'version-license' => 'Бакъо',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Лаха цхьатера йолу хIумнаш',
+'fileduplicatesearch-filename' => 'Файлан цӀе:',
'fileduplicatesearch-submit' => 'Лаха',
+'fileduplicatesearch-info' => '$1 × $2 {{PLURAL:$2|пиксель|пикселш|пикселш}}<br />Файлан барам: $3<br />MIME-тайп: $4',
# Special:SpecialPages
'specialpages' => 'Леррина агlонаш',
* <strong class="mw-specialpagerestricted">Кlеззиг таронаш йолу леррина агlонаш.</strong>',
'specialpages-group-maintenance' => 'Жамlаш гlирса хьашташ кхочушдар',
'specialpages-group-other' => 'Кхин гlуллакхан агlонаш',
-'specialpages-group-login' => 'Хьой вовзийта / Дlавазло',
+'specialpages-group-login' => 'Хьой вовзийта/йовзийта / дӀавазло/дӀаязло',
'specialpages-group-changes' => 'Керла нисдарш а тéптарш',
'specialpages-group-media' => 'Жамlаш оцу медиа-гlирсашан а чуяхарш',
'specialpages-group-users' => 'Декъашхой а бакъонаш',
'dberr-outofdate' => 'Хьуна хаалахь, цуьна йолу меттиг хила мега тишйелла черахь.',
# HTML forms
+'htmlform-submit' => 'ДӀадахьийта',
'htmlform-selectorother-other' => 'Кхин',
# New logging system
'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2|цӀе хийцина|цӀе хийцина}} $3 оцу $4 дӀасахьажоран тӀохул а дӀасахьажийнарг цаюьтуш а',
'logentry-newusers-newusers' => '{{GENDER:$2|ДӀавазвелла|ДӀаязелла}} керла декъашхо $1',
'logentry-newusers-create' => '{{GENDER:$2|ДӀавазвелла|ДӀаязелла}} керла декъашхо $1',
+'logentry-rights-rights-legacy' => '$1 {{GENDER:$2|хийцина}} хӏокхуна $3 бакъо',
+
+# Feedback
+'feedback-cancel' => 'Цаоьшу',
# Search suggestions
'searchsuggest-search' => 'Лаха',
'tog-shownumberswatching' => 'Ipakita ang gidaghanon sa mga gumagamit nga nagbantay usab',
'tog-oldsig' => 'Paunang tan-aw sa eksisting nga pirma:',
'tog-fancysig' => 'Hilaw nga pirma (walay awtomatikong sumpay)',
-'tog-externaleditor' => 'Gamita ang eksternal nga editor isip default (para sa mga eksperto lamang, kinahanglan og espesyal nga setting sa imong kompyuter)',
-'tog-externaldiff' => 'Gamita ang eksternal nga diff isip default (para sa mga eksperto lamang, kinahanglan og espesyal nga setting sa imong kompyuter)',
'tog-showjumplinks' => 'I-enable ang "ambak sa" nga sumpay sa aksesibilidad',
'tog-uselivepreview' => 'Gamita ang live nga paunang tan-aw (JavaScript kinahanglan) (Eksperimental)',
'tog-forceeditsummary' => 'Pahibaloi ako kon blangko ang mubong sugid alang sa pag-usab',
'disclaimers' => 'Mga pagpasabot',
'disclaimerpage' => 'Project:Mga pagpasabot',
'edithelp' => 'Tabang sa pag-usab',
-'edithelppage' => 'Help:Pag-usab',
'helppage' => 'Help:Mga sulod',
'mainpage' => 'Unang Panid',
'mainpage-description' => 'Unang Panid',
'prevn' => 'miaging {{PLURAL:$1|$1}}',
'nextn' => 'sunod {{PLURAL:$1|$1}}',
'viewprevnext' => 'Tan-awa sa ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Mga sulod',
'searchprofile-everything' => 'Tanan ng bagay',
'search-result-size' => '$1 ({{PLURAL:$2|1 pulong|$2 ka mga pulong}})',
'search-redirect' => '(redirek $1)',
Puyde ka mangita gamit ang Google sa kasamtangan.
Hinumdomi nga ang ilang indeks sa sulod sa {{SITENAME}} mahimong dugay-dugay na.',
-# Quickbar
-'qbsettings' => 'Quickbar',
-'qbsettings-none' => 'Wala',
-'qbsettings-fixedleft' => 'Naka-fix sa wala',
-'qbsettings-fixedright' => 'Naka-fix sa tuo',
-'qbsettings-floatingleft' => 'Floating sa wala',
-'qbsettings-floatingright' => 'Floating sa tuo',
-
# Preferences page
'preferences' => 'Mga preperensiya',
'mypreferences' => 'Akong preperensiya',
# Special:ListGroupRights
'listgrouprights-members' => '(talaan sa mga miyembro)',
-# E-mail user
+# Email user
'emailuser' => 'I-email kaning gumagamit',
# Watchlist
'disclaimers' => 'Diklarasion Inadahi',
'disclaimerpage' => 'Project:Diklarasion inadahi henerat',
'edithelp' => 'Ayudo tumulaika',
-'edithelppage' => 'Help:Tumulaika',
'helppage' => 'Help:Guinaha',
'mainpage' => 'Fanhaluman',
'mainpage-description' => 'Fanhaluman',
'prevn' => "{{PLURAL:$1|$1}} ni manmå'pos",
'nextn' => "{{PLURAL:$1|$1}} ni manmamaila'",
'viewprevnext' => 'Atan i ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Guinaha',
'search-result-size' => '$1 ({{PLURAL:$2|1 na palabra|$2 na palabra siha}})',
'search-result-score' => 'Prinisisu: $1%',
'search-redirect' => "(na'dirihi $1)",
Siña hao manaligao gi Google gi entretanto.
Fanapunta na fana'an ti gus nuebu i listan-ñiha i guinahan {{SITENAME}}.",
-# Quickbar
-'qbsettings-none' => "Tåya'",
-'qbsettings-fixedleft' => 'Maplanta gi akague',
-'qbsettings-fixedright' => "Maplanta gi agapa'",
-'qbsettings-floatingleft' => "Mamå'ya gi akague",
-'qbsettings-floatingright' => "Mamå'ya gi agapa'",
-
# Preferences page
'preferences' => "I ga'ña-mu",
'mypreferences' => "I ga'ña-hu",
# Special:LinkSearch
'linksearch-ok' => 'Aligao',
-# E-mail user
+# Email user
'emailuser' => "Na'e-mail i muna'sesetbi este",
# Watchlist
'tog-newpageshidepatrolled' => 'لە پێرستی پەڕە نوێکاندا پەڕە پاس دراوەکان بشارەوە',
'tog-extendwatchlist' => 'لیستی چاودێری درێژبکەرەوە بۆ نیشان دانی ھەموو گۆڕانکارییەکان، نەک تەنھا دوایینەکان.',
'tog-usenewrc' => 'گۆڕانکارییەکان لە دوایین گۆڕانکارییەکان و لیستی چاودێریدا بە پێی پەڕە پۆلێن بکە (پێویستی بە جاڤاسکریپتە)',
-'tog-numberheadings' => 'Ú\98Ù\85ارÛ\95کردÙ\86Û\8c Ø®Û\86کاری سەردێڕەکان',
+'tog-numberheadings' => 'Ú\98Ù\85ارÛ\95کردÙ\86Û\8c Ø®Û\86Ú¯Û\95Ú\95ی سەردێڕەکان',
'tog-showtoolbar' => 'شریتی ئامرازەکانی دەستکاری نیشان بدە (JavaScript پێویستە)',
'tog-editondblclick' => 'دەستکاریی پەڕە بە دووکلیک لەسەر دەق (JavaScript پێویستە)',
'tog-editsection' => 'ڕێگە بدە بۆ دەستکاری کردنی بەشەکان لە ڕێگەی بەستەرەکانی [دەستکاری]',
'tog-watchlisthidepatrolled' => 'لە پێرستی چاودێرییەکاندا دەستکارییە پاس دراوەکان بشارەوە',
'tog-ccmeonemails' => 'کۆپییەک لەو ئیمەیلانە کە بۆ بەکارھێنەرانی تر دەنێرم بۆ خۆشم بنێرە',
'tog-diffonly' => 'ناوەرۆکی پەڕە لە ژێرەوەی جیاوازییەکاندا نیشان مەدە',
-'tog-showhiddencats' => 'ھاوپۆلە شاراوەکان نیشان بدە',
+'tog-showhiddencats' => 'پۆلە شاردراوەکان نیشان بدە',
'tog-noconvertlink' => 'لەکارخستنی ئاڵوگۆڕی سەرناوی بەستەر',
'tog-norollbackdiff' => 'لە دوای گەڕاندنەوە جیاوازی نیشان مەدە',
'tog-useeditwarning' => 'ھۆشیارم بکەوە کاتێک لە پەڕەیەکی دەستکاری بە گۆڕانکاریی پاشەکەوتنەکراو دەردەچم',
'category-media-header' => 'میدیای پۆلی «$1»',
'category-empty' => "''ئەم پۆلە ھەنووکە ھیچ پەڕە یان پەڕگەیەک لە خۆ ناگرێت.''",
'hidden-categories' => '{{PLURAL:$1|پۆلی شاراوە|پۆلی شاراوە}}',
-'hidden-category-category' => 'پۆلە شاراوەکان',
+'hidden-category-category' => 'Ù¾Û\86Ù\84Û\95 شاردراÙ\88Û\95کاÙ\86',
'category-subcat-count' => '{{PLURAL:$2|ئەم پۆلە تەنھا ژێرپۆلی خوارەوەی تێدایە.| ئەم پۆلە ئەم {{PLURAL:$1|ژێرپۆلەی|$1 ژێرپۆلانەی}} خوارەوەی تێدایە، لە کۆی سەرجەم $2 دانە.}}',
'category-subcat-count-limited' => 'ئەم هاوپۆلە {{PLURAL:$1|ژێرهاوپۆلی}} لەخۆ گرتووە.',
'category-article-count' => '{{PLURAL:$2|ئەم پۆلە تەنھا ئەم پەڕەی لەخۆگرتووە.|{{PLURAL:$1|پەڕە|$1 پەڕە}} لەم پۆلەدا، لە سەرجەم $2 پەڕە.}}',
'disclaimers' => 'نابەرپرسییەکان',
'disclaimerpage' => 'Project:بەرپرسنەبوون',
'edithelp' => 'ڕێنوێنیی دەستکاریکردن',
-'edithelppage' => 'Help:دەستکاریکردن',
'helppage' => 'Help:ناوەرۆک',
'mainpage' => 'دەستپێک',
'mainpage-description' => 'دەستپێک',
'welcomecreation-msg' => 'ھەژمارەکەت دروست کرا.
لە بیرت نەچێت [[Special:Preferences|ھەڵبژاردەکانی {{SITENAME}}]]ت بگۆڕی.',
'yourname' => 'ناوی بەکارھێنەری:',
+'userlogin-yourname' => 'ناوی بەکارھێنەر',
+'userlogin-yourname-ph' => 'ناوی بەکارھێنەریت بنووسە',
'yourpassword' => 'تێپەڕوشە:',
+'userlogin-yourpassword' => 'تێپەڕوشە',
+'userlogin-yourpassword-ph' => 'تێپەڕوشەکەت بنووسە',
+'createacct-yourpassword-ph' => 'تێپەروشەیەک بنووسە',
'yourpasswordagain' => 'دیسان تێپەڕوشەکە بنووسەوە:',
+'createacct-yourpasswordagain' => 'تێپەروشە پشتڕاست بکەرەوە',
+'createacct-yourpasswordagain-ph' => 'تێپەروشە دیسان بنووسەوە',
'remembermypassword' => 'چوونە ژوورەوەم لەسەر ئەم کۆمپیوتەرە پاشەکەوت بکە (ئەو پەڕی $1 {{PLURAL:$1|ڕۆژ}}ە)',
-'yourdomainname' => 'ناوی دۆمهینی خۆت',
+'userlogin-remembermypassword' => 'چوونەژوورەوەکەم ڕابگرە',
+'userlogin-signwithsecure' => 'پەیوەندیی دڵنیا بەکاربھێنە',
+'securelogin-stick-https' => 'پاش چوونەژوورەوە پەیوەندیی لەگەڵ HTTPS بھێڵەوە',
+'yourdomainname' => 'دۆمەینەکەت:',
'password-change-forbidden' => 'ناتوانیت تێپەڕوشەکانت لەم ویکییەدا بگۆڕیت.',
'externaldberror' => 'یان هەڵەی ڕێگەپێدانی بنکەدراو هەیە یان ڕێگات پێ نادرێت بۆ نوێ کردنی هەژماری دەرەکیت.',
'login' => 'بچۆ ژوورەوە',
'userloginnocreate' => 'بچۆ ژوورەوە',
'logout' => 'بچۆ دەرەوە',
'userlogout' => 'بچۆ دەرەوە',
-'notloggedin' => 'له ژوورهوه نیت',
-'nologin' => "ھەژمارت نییە؟ '''$1'''.",
+'notloggedin' => 'لە ژوورەوە نیت',
+'userlogin-noaccount' => 'ھەژمارت نییە؟',
+'userlogin-joinproject' => 'ڕەگەڵ {{SITENAME}} کەون',
+'nologin' => 'ھەژمارت نییە؟ $1.',
'nologinlink' => 'ھەژمارێک دروست بکە',
'createaccount' => 'ھەژمار دروست بکە',
'gotaccount' => 'ھەژمارت ھەیە لێرە؟ $1.',
'gotaccountlink' => 'بچۆ ژوورەوە',
'userlogin-resetlink' => 'وردەکارییەکانی چوونەژوورەوەتت لە بیر کردووە؟',
-'createaccountmail' => 'بە ئیمەیل',
+'userlogin-resetpassword-link' => 'تێپەڕوشە ڕیسێت بکەوە',
+'helplogin-url' => 'Help:چوونەژوورەوە',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|یارمەتی بۆ چوونەژوورەوە]]',
+'createacct-join' => 'زانیارییەکت لە ژێرەوە بنووسە.',
+'createacct-emailrequired' => 'ناونیشانی ئیمەیل',
+'createacct-emailoptional' => 'ناونیشانی ئیمەیل (دڵخوازانە)',
+'createacct-email-ph' => 'ناونیشانی ئیمەیلەکەت بنووسە',
+'createaccountmail' => 'تێپەڕوشەیەکی ڕەمەکیی کاتی بەکاربھێنە و بینێرە بۆ ناونیشانی ئیمەیلی دیاریکراوی ژێرەوە',
+'createacct-realname' => 'ناوی ڕاستی (دڵخوازانە)',
'createaccountreason' => 'هۆکار:',
+'createacct-reason' => 'ھۆکار',
+'createacct-reason-ph' => 'بۆ ھەژمارێکی تر دروست دەکەی',
+'createacct-captcha' => 'تاوتوێی ئاسایشی',
+'createacct-imgcaptcha-ph' => 'دەقەکەی لە ژێرەوە دەیبینی بینووسە',
+'createacct-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}} بۆ چوونەوە ژوورەوەی بەکارھێنەر لە شەکرۆکە کەڵک وەردەگرێت.
'nocookieslogin' => '{{SITENAME}} بۆ چوونەژوورەوە لە کووکییەکان کەڵک وەرئەگرێت.
ڕێگەت نەداوە بە کووکییەکان.
ڕێگەیان پێ بدەو و دیسان تێبکۆشە.',
+'nocookiesfornew' => 'ھەژماری بەکارھێنەری دروست نەکرا، چون ناتوانین سەرچاوەکەی پشتڕاست بکەینەوە.
+دڵنیا بە کوکییەکانت چالاک کردووە، پەڕەکە بار بکەوە و دیسان ھەوڵ بدە.',
'noname' => 'ناوی بەکارهێنەرییەکی گۆنجاوت دیاری نەکردووه.',
'loginsuccesstitle' => 'سەرکەوتی بۆ چوونە ژوورەوە',
'loginsuccess' => "'''ئێستا بە ناوی «$1»ەوە لە {{SITENAME}} چوویتەتەژوورەوە.'''",
# Special:PasswordReset
'passwordreset' => 'دووبارە ڕێکخستنەوەی تێپەڕوشە',
-'passwordreset-text' => 'ئەم فۆرمە پڕ بکەوە بۆ گرتنی ئیمەیلێکی بیرخەرەوەی وردەکارییەکانی ھەژمارەکەت.',
'passwordreset-legend' => 'دووبارە ڕێکخستنەوەی تێپەڕوشە',
'passwordreset-username' => 'ناوی بەکارھێنەری:',
'passwordreset-domain' => 'پاوان:',
لەوە دەچی سڕدرابێتەوه.',
'edit-conflict' => 'کێشەی دەستکاری.',
'edit-no-change' => 'دەستکاریەکەت بەرچاو نەخرا، لەبەر ئەوەی هیچ گۆڕانکارییەکت لەسەر دەقەکە نەکردووە.',
+'postedit-confirmation' => 'دەستکارییەکەت پاشەکەوت کرا.',
'edit-already-exists' => 'تواناییی دروستکردنی پەڕەی نوێ نییە.
ئەمە پەڕەیە پێشتر هەبووە.',
'defaultmessagetext' => 'دەقی پەیامی هەمیشەیی',
'searchmenu-legend' => 'ھەڵبژاردەکانی گەڕان',
'searchmenu-exists' => "'''پەڕەیەک بە ناوی «[[:$1]]» لەم ویکییەدا ھەیە.'''",
'searchmenu-new' => "'''لەم ویکییەدا پەڕەی « [[:$1]] » دروست بکە!'''",
-'searchhelp-url' => 'Help:پێرست',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|گەڕیان لە پەڕەکانی بەم پێشگرەوە]]',
'searchprofile-articles' => 'پەڕە بە ناوەڕۆکەکان',
'searchprofile-project' => 'پەڕەکانی یارمەتی و پڕۆژە',
'brokenredirects-edit' => 'دەستکاری',
'brokenredirects-delete' => 'سڕینەوە',
-'withoutinterwiki' => 'پەڕەکانی بێ بەستەرەکانی زمان',
+'withoutinterwiki' => 'پەڕەکان بەبێ بەستەرەکانی زمان',
'withoutinterwiki-summary' => 'ئەم پەڕانە بەستەریان بۆ وەشانەکانی زمانەکانی تر نیە.',
'withoutinterwiki-legend' => 'پێشگر',
'withoutinterwiki-submit' => 'پیشاندان',
'notvisiblerev' => 'پیاچوونەوە سڕاوەتەوە',
'watchnochange' => 'ھیچکام لەو بابەتانە چاودێڕییان دەکەیت، لە ماوەی نیشاندراودا دەستکاری نەکراون.',
'watchlist-details' => '{{PLURAL:$1|$1 پەڕە|$1 پەڕە}} لە لیستی چاودێریەکەتدایە، بێجگە پەڕەکانی لێدوان.',
-'wlheader-enotif' => '* ئەکرێ بە E-mail ئاگاداری بدەی',
-'wlheader-showupdated' => "* ئەو پەڕانە کە لە پاش دواین سەردانت دەستکاری کراون بە '''ئەستوور''' نیشان دراون",
+'wlheader-enotif' => 'ئەکرێ بە E-mail ئاگاداری بدەی',
+'wlheader-showupdated' => "ئەو پەڕانە کە لە پاش دواین سەردانت دەستکاری کراون بە '''ئەستوور''' نیشان دراون",
'watchmethod-recent' => 'سەرنجدانی دوایین دەستکاریەکان بۆ لاپەڕە چاودێریکراوەکان',
'watchmethod-list' => 'سەرنجدانی لاپەڕە چاودێریکراوەکان بۆ دوایین دەستکاریەکان',
'watchlistcontains' => 'لیستی چاودێڕییەکانت $1 {{PLURAL:$1|پەڕە|پەڕە}}ی تێدایە.',
'ipb-change-block' => 'دیسان بەربەستکردنەوەی ئەم بەکارهێنەرە بەم هەڵبژاردانە',
'badipaddress' => 'ناونیشانی ئایپی نەگونجاو',
'blockipsuccesssub' => 'بەربەست کردن سەرکەوتوو بوو',
-'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] بەربەستکراوە.<br />
-سÛ\95Û\8cرÛ\8c [[Special:BlockList|Ù\84Û\8cستÛ\8c بÛ\95ربÛ\95ستÙ\86]] بکÛ\95 بÛ\86 بÛ\8cÙ\86Û\8cنەوەی بەربەستنەکان.',
+'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] بەربەست کرا.<br />
+بÚ\95Ù\88اÙ\86Û\95 [[Special:BlockList|Ù¾Û\8eرستÛ\8c بÛ\95ربÛ\95ستÙ\86]] بÛ\86 بÛ\95سÛ\95رداÚ\86Ù\88Ù\88نەوەی بەربەستنەکان.',
'ipb-edit-dropdown' => 'دەستکاری هۆکارەکانی بەربەست',
'ipb-unblock-addr' => 'لە بەربەستدەرهێنانی $1',
'ipb-unblock' => 'لە بەربەستدەرهێنانی ناوی بەکارهێنەریەک یا ناونیشانێکی ئایپی',
'pageinfo-contentpage' => 'ھەژمارکراو وەک پەڕەی بەناوەرۆک',
'pageinfo-contentpage-yes' => 'بەڵێ',
'pageinfo-protect-cascading-yes' => 'بەڵێ',
+'pageinfo-category-info' => 'زانیاریی پۆل',
'pageinfo-category-pages' => 'ژمارەی پەڕەکان',
'pageinfo-category-subcats' => 'ژمارەی ژێرپەڕەکان',
'pageinfo-category-files' => 'ژمارەی پەڕگەکان',
# Cologne Blue skin
'qbpageoptions' => 'Issa pagina',
-'qbpageinfo' => 'Cuntestu',
'qbmyoptions' => 'E mo pagine',
'qbspecialpages' => 'Pagine spiciale',
'yourdiff' => 'Differenze',
'template-protected' => '(prutettu)',
'template-semiprotected' => '(mezu prutettu)',
-'nocreatetitle' => 'Creazione di pagina limitata',
# Account creation failure
'cantcreateaccounttitle' => 'Registramentu micca pussibile',
# Special:ListUsers
'listusers-submit' => 'Mustrà',
-# E-mail user
+# Email user
'emailto' => 'À:',
'emailsubject' => 'Sughjettu:',
'emailmessage' => 'Messaghju:',
'watch' => 'Seguità',
'enotif_reset' => 'Marcà tutte e pagine visitate',
-'enotif_newpagetext' => 'Ista hè una pagina nova.',
-'changed' => 'cambiatu',
'created' => 'creatu',
+'changed' => 'cambiatu',
# Delete
'deletepage' => 'Supprimà a pagina',
'ilsubmit' => 'Ricerca',
'bydate' => 'per data',
-# EXIF tags
+# Exif tags
'exif-orientation' => 'Orientazione',
'exif-imagedescription' => "Titulu di l'imagine",
'exif-artist' => 'Autore',
# Special:Version
'version' => 'Versione',
-# Special:FilePath
-'filepath-page' => 'Schedariu:',
-
# Special:SpecialPages
'specialpages' => 'Pagine spiciale',
'tog-shownumberswatching' => 'Ipakita ang mga numero sang mga gatan-aw nga manug-usar',
'tog-oldsig' => 'Nagkayara nga pirma:',
'tog-fancysig' => 'Ituring ang pirma bilang teksto sang wiki (wala sang automatik nga link)',
-'tog-externaleditor' => 'Maggamit sang panggwa nga manug-ilis paagi sa default ( para sa mga ekspeto lang, kinanglan ang espesyal nga mga setting sa imo kompyuter)',
-'tog-externaldiff' => 'Maggamit sang panggwa nga kinala-in paagi sa default ( para sa mga ekspeto lang, kinanglan ang espesyal nga setting sa imo kumpyuter.
-[//www.mediawiki.org/wiki/Manual:External_editors Mas madamu pa nga impormasyon.])',
'tog-showjumplinks' => 'Pasugtan ang mga "tumbo sa" kadali-an nga mga link',
'tog-uselivepreview' => 'Maggamit sang buhi nga prebyu (kinanglan ang Javascript) (Eksperimental)',
'tog-forceeditsummary' => 'Hambalan ako kung nagapasulod sang wala unod nga pag-ilis kabilugan',
'disclaimers' => 'Mga pagpangindi',
'disclaimerpage' => 'Project:Pangkabilugan nga pagpangindi',
'edithelp' => 'Bulig sa pag-ilis',
-'edithelppage' => 'Help:Pag-ilis',
'helppage' => 'Help:Mga ka-undan',
'mainpage' => 'Panguna nga pahina',
'mainpage-description' => 'Panguna nga pahina',
# Special:ListGroupRights
'listgrouprights-members' => '(lista sang mga myembro)',
-# E-mail user
+# Email user
'emailuser' => 'I-email mini nga naga-usar',
# Watchlist
'tog-shownumberswatching' => 'Козеткен къулланыджы сайысыны косьтер',
'tog-oldsig' => 'Шимдики имза:',
'tog-fancysig' => 'Имза викиметин киби олсун (автоматик багъланты олмаз)',
-'tog-externaleditor' => 'Тыш тюрлендиргич (редактор) къуллан (теджрибели къулланыджылар ичюн; компьютеринъизни махсус сазламакъ керек. [ //www.mediawiki.org/wiki/Manual:External_editors тафсилятлы малюмат мында])',
-'tog-externaldiff' => 'Тенъештирмек ичюн тыш бир программа къуллан (теджрибели къулланыджылар ичюн; компьютеринъизни махсус сазламакъ керек. [ //www.mediawiki.org/wiki/Manual:External_editors тафсилятлы малюмат мында])',
'tog-showjumplinks' => '«Бар» багълантысыны фааллештир',
'tog-uselivepreview' => 'Джанлы бакъып чыкъув хусусиетини къуллан (JavaScript) (даа денъеме алында)',
'tog-forceeditsummary' => 'Денъиштирменинъ къыскъа тарифини бош ташласам мени тенбиле',
'disclaimers' => 'Джевапкярлыкъ реди',
'disclaimerpage' => 'Project:Умумий Малюмат Мукъавелеси',
'edithelp' => 'Саифелер насыл денъиштирилир?',
-'edithelppage' => 'Help:Саифе насыл денъиштирилир',
'helppage' => 'Help:Мундеридже',
'mainpage' => 'Баш Саифе',
'mainpage-description' => 'Баш Саифе',
'searchmenu-legend' => 'Къыдырув сазламалары',
'searchmenu-exists' => "'''Бу викиде \"[[:\$1]]\" адлы бир саифе бар'''",
'searchmenu-new' => "'''Бу викиде \"[[:\$1]]\" саифесини ярат!'''",
-'searchhelp-url' => 'Help:Мундеридже',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Бу префиксли саифелерни косьтер]]',
'searchprofile-articles' => 'Малюмат саифелери',
'searchprofile-project' => 'Ярдым ве лейха саифелери',
'search-external' => 'Тыш къыдырув',
'searchdisabled' => '{{SITENAME}} сайтында къыдырув япма вакътынджа токътатылды. Бу арада Google къулланып {{SITENAME}} ичинде къыдырув япып оласынъыз. Къыдырув сайтларында индекслемелерининъ бираз эски къалгъан ола биледжегини козь огюне алынъыз.',
-# Quickbar
-'qbsettings' => 'Вызлы иришим сутун сазламалары',
-
# Preferences page
'preferences' => 'Сазламалар',
'mypreferences' => 'Сазламалар',
'notanarticle' => 'Малюмат саифеси дегиль',
'watchnochange' => 'Косьтерильген заман аралыгъында козетюв джедвелинъиздеки саифелернинъ ич бири денъиштирильмеген.',
'watchlist-details' => 'Музакере саифелерини эсапкъа алмайып, козетюв джедвелинъизде {{PLURAL:$1|1|$1}} саифе бар.',
-'wlheader-enotif' => '* E-mail иле хабер берюв ачылды.',
-'wlheader-showupdated' => "* Сонъки зияретинъизден сонъ денъиштирильген саифелер '''къалын арифлернен''' косьтерильди.",
+'wlheader-enotif' => 'E-mail иле хабер берюв ачылды.',
+'wlheader-showupdated' => "Сонъки зияретинъизден сонъ денъиштирильген саифелер '''къалын арифлернен''' косьтерильди.",
'watchmethod-recent' => 'сонъки денъиштирмелер арасында козеткен саифелеринъиз къыдырыла',
'watchmethod-list' => 'козетюв джедвелиндеки саифелер тешкериле',
'watchlistcontains' => 'Сизинъ козетюв джедвелинъизде {{PLURAL:$1|1|$1}} саифе бар.',
'spam_blanking' => 'Бар олгъан версияларда $1 сайтына багълантылар бар, темизлев',
# Skin names
-'skinname-standard' => 'Стандарт',
-'skinname-nostalgia' => 'Ностальгия',
'skinname-cologneblue' => 'Кёльн асретлиги',
'skinname-monobook' => 'MonoBook',
-'skinname-myskin' => 'Озь ресимлеме',
-'skinname-chick' => 'Чипче',
-'skinname-simple' => 'Адий',
# Patrol log
'patrol-log-page' => 'Тешкерюв журналы',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-make' => 'Камера маркасы',
'exif-model' => 'Камера модели',
'exif-artist' => 'Яратыджысы',
'exif-gpstimestamp' => 'GPS сааты (атом сааты)',
'exif-gpssatellites' => 'Ольчемек ичюн къуллангъаны спутниклер',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Сыкъыштырылмагъан',
'exif-orientation-3' => '180° айландырылгъан',
'disclaimers' => 'Cevapkârlıq redi',
'disclaimerpage' => 'Project:Umumiy Malümat Muqavelesi',
'edithelp' => 'Saifeler nasıl deñiştirilir?',
-'edithelppage' => 'Help:Saife nasıl deñiştirilir',
'helppage' => 'Help:Münderice',
'mainpage' => 'Baş Saife',
'mainpage-description' => 'Baş Saife',
'searchmenu-legend' => 'Qıdıruv sazlamaları',
'searchmenu-exists' => "'''Bu vikide \"[[:\$1]]\" adlı bir saife bar'''",
'searchmenu-new' => "'''Bu vikide \"[[:\$1]]\" saifesini yarat!'''",
-'searchhelp-url' => 'Help:Münderice',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Bu prefiksli saifelerni köster]]',
'searchprofile-articles' => 'Malümat saifeleri',
'searchprofile-project' => 'Yardım ve leyha saifeleri',
'notanarticle' => 'Malümat saifesi degil',
'watchnochange' => 'Kösterilgen zaman aralığında közetüv cedveliñizdeki saifelerniñ iç biri deñiştirilmegen.',
'watchlist-details' => 'Muzakere saifelerini esapqa almayıp, közetüv cedveliñizde {{PLURAL:$1|1|$1}} saife bar.',
-'wlheader-enotif' => '* E-mail ile haber berüv açıldı.',
-'wlheader-showupdated' => "* Soñki ziyaretiñizden soñ deñiştirilgen saifeler '''qalın ariflernen''' kösterildi.",
+'wlheader-enotif' => 'E-mail ile haber berüv açıldı.',
+'wlheader-showupdated' => "Soñki ziyaretiñizden soñ deñiştirilgen saifeler '''qalın ariflernen''' kösterildi.",
'watchmethod-recent' => 'soñki deñiştirmeler arasında közetken saifeleriñiz qıdırıla',
'watchmethod-list' => 'közetüv cedvelindeki saifeler teşkerile',
'watchlistcontains' => 'Siziñ közetüv cedveliñizde {{PLURAL:$1|1|$1}} saife bar.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-make' => 'Kamera markası',
'exif-model' => 'Kamera modeli',
'exif-artist' => 'Yaratıcısı',
'exif-gpstimestamp' => 'GPS saatı (atom saatı)',
'exif-gpssatellites' => 'Ölçemek içün qullanğanı sputnikler',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Sıqıştırılmağan',
'exif-orientation-3' => '180° aylandırılğan',
* @author Chmee2
* @author Danny B.
* @author Dontlietome7
+ * @author Geitost
* @author Helix84
* @author Jachym
* @author Jezevec
'oct' => '10.',
'nov' => '11.',
'dec' => '12.',
+'january-date' => '$1. ledna',
+'february-date' => '$1. února',
+'march-date' => '$1. března',
+'april-date' => '$1. dubna',
+'may-date' => '$1. května',
+'june-date' => '$1. června',
+'july-date' => '$1. července',
+'august-date' => '$1. srpna',
+'september-date' => '$1. září',
+'october-date' => '$1. října',
+'november-date' => '$1. listopadu',
+'december-date' => '$1. prosince',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorie|Kategorie|Kategorie}}',
'create-this-page' => 'Vytvořit tuto stránku',
'delete' => 'Smazat',
'deletethispage' => 'Smazat stránku',
+'undeletethispage' => 'Obnovit tuto stránku',
'undelete_short' => 'Obnovit $1 {{PLURAL:$1|verzi|verze|verzí}}',
'viewdeleted_short' => 'Zobrazit {{PLURAL:$1|smazanou editaci|$1 smazané editace|$1 smazaných editací}}',
'protect' => 'Zamknout',
'disclaimers' => 'Vyloučení odpovědnosti',
'disclaimerpage' => 'Project:Vyloučení odpovědnosti',
'edithelp' => 'Pomoc při editování',
-'edithelppage' => 'Help:Jak editovat stránku',
'helppage' => 'Help:Obsah',
'mainpage' => 'Hlavní strana',
'mainpage-description' => 'Hlavní strana',
'namespaceprotected' => "Nemáte povoleno editovat stránky ve jmenném prostoru '''$1'''.",
'customcssprotected' => 'Nemáte povoleno editovat tuto stránku s CSS, protože obsahuje osobní nastavení jiného uživatele.',
'customjsprotected' => 'Nemáte povoleno editovat tuto stránku s JavaScriptem, protože obsahuje osobní nastavení jiného uživatele.',
+'mycustomcssprotected' => 'Nemáte oprávnění editovat tuto stránku s CSS.',
+'mycustomjsprotected' => 'Nemáte oprávnění editovat tuto stránku s JavaScriptem.',
'ns-specialprotected' => 'Stránky ve jmenném prostoru {{ns:special}} nelze editovat.',
'titleprotected' => "Stránku s tímto názvem nelze založit, protože název zamknul uživatel [[User:$1|$1]] s odůvodněním: ''$2''.",
'filereadonlyerror' => "Nelze změnit soubor „$1“, protože úložiště souborů „$2“ je momentálně pouze pro čtení.
'notloggedin' => 'Nejste přihlášen(a)',
'userlogin-noaccount' => 'Nemáte účet?',
'userlogin-joinproject' => 'Přidejte se k {{grammar:3sg|{{SITENAME}}}}',
-'nologin' => "Dosud nemáte účet? '''$1'''.",
+'nologin' => 'Dosud nemáte účet? $1.',
'nologinlink' => 'Zaregistrujte se',
'createaccount' => 'Vytvořit účet',
'gotaccount' => "Už jste registrováni? '''$1'''.",
'nocookiesfornew' => 'Uživatelský účet nebyl založen, neboť jsme nebyli schopni potvrdit jeho původ.
Ujistěte se, že máte povoleny cookies, obnovte tuto stránku a zkuste to znovu.',
'noname' => 'Musíte uvést jméno svého účtu.',
-'loginsuccesstitle' => 'Přihlášení uspělo',
+'loginsuccesstitle' => 'Přihlášení bylo úspěšné',
'loginsuccess' => 'Nyní jste přihlášen na {{grammar:6sg|{{SITENAME}}}} jako uživatel „$1“.',
'nosuchuser' => 'Neexistuje uživatel se jménem „$1“. U uživatelských jmen se rozlišují malá/velká písmena. Zkontrolujte zápis, nebo si [[Special:UserLogin/signup|vytvořte nový účet]].',
'nosuchusershort' => 'Neexistuje uživatel se jménem „$1“. Zkontrolujte zápis.',
'cannotchangeemail' => 'U uživatelských účtů na této wiki nelze měnit e-mailové adresy.',
'emaildisabled' => 'Tento server nemůže odesílat e-maily.',
'accountcreated' => 'Účet vytvořen',
-'accountcreatedtext' => 'Uživatelský účet $1 byl vytvořen.',
+'accountcreatedtext' => 'Uživatelský účet [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|diskuse]]) byl vytvořen.',
'createaccount-title' => 'Vytvoření účtu na {{grammar:6sg|{{SITENAME}}}}',
'createaccount-text' => 'Někdo vytvořil na {{grammar:6sg|{{SITENAME}}}} ($4) účet s vaší e-mailovou adresou.
Jméno účtu: „$2“
# Special:PasswordReset
'passwordreset' => 'Reset hesla',
-'passwordreset-text' => 'Pro získání nového hesla vyplňte tento formulář.',
+'passwordreset-text-one' => 'Pro získání nového hesla vyplňte tento formulář.',
+'passwordreset-text-many' => '{{PLURAL:$1|Pro získání nového hesla zadejte jeden z údajů.}}',
'passwordreset-legend' => 'Znovu nastavit heslo',
'passwordreset-disabled' => 'Znovunastavení hesla je na této wiki zakázáno.',
'passwordreset-emaildisabled' => 'E-mailové funkce byly na této wiki vypnuty.',
-'passwordreset-pretext' => '{{PLURAL:$1||Zadejte jeden z údajů níže}}',
'passwordreset-username' => 'Uživatelské jméno:',
'passwordreset-domain' => 'Doména:',
'passwordreset-capture' => 'Prohlédnout si výsledný e-mail?',
Zřejmě byla smazána.',
'edit-conflict' => 'Editační konflikt.',
'edit-no-change' => 'Vaše editace byla ignorována, protože nedošlo k žádné změně textu.',
+'postedit-confirmation' => 'Vaše změny byly uloženy.',
'edit-already-exists' => 'Nepodařilo se vytvořit novou stránku, protože již existuje.',
'defaultmessagetext' => 'Výchozí text hlášení',
'content-failed-to-parse' => 'Nepodařilo se zpracovat data $2 do modelu $1: $3',
'invalid-content-data' => 'Obsažená data jsou chybná',
'content-not-allowed-here' => 'Obsah typu $1 není na stránce [[$2]] dovolen.',
'editwarning-warning' => 'Opuštěním této stránky se mohou veškeré provedené změny ztratit.
-Pokud jste {{GENDER:|přihlášen|přihlášena|přihlášeni}}, můžete si toto varování vypnout na záložce „{{int:prefs-editing}}“ v uživatelském nastavení.',
+Přihlášení uživatelé si mohou toto varování vypnout na záložce „Editace“ v uživatelském nastavení.',
# Content models
'content-model-wikitext' => 'wikitext',
'searchmenu-legend' => 'Možnosti hledání',
'searchmenu-exists' => "'''Na této wiki existuje stránka nazvaná „[[:$1]]“.'''",
'searchmenu-new' => "'''Vytvořte na této wiki stránku „[[:$1]]“!'''",
-'searchhelp-url' => 'Help:Obsah',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Zobrazit stránky, jejichž název začíná „$1“]]',
'searchprofile-articles' => 'Články',
'searchprofile-project' => 'Nápověda a projektové stránky',
'userrights-changeable-col' => 'Skupiny, které můžete měnit',
'userrights-unchangeable-col' => 'Skupiny, které nemůžete měnit',
'userrights-conflict' => 'Konflikt uživatelských práv! Proveďte požadované změny ještě jednou.',
+'userrights-removed-self' => 'Úspěšně jste si odebrali vlastní práva. Tudíž už nemáte k této stránce přístup.',
# Groups
'group' => 'Skupina:',
'right-editinterface' => 'Editace zpráv uživatelského rozhraní',
'right-editusercssjs' => 'Editace CSS a JS souborů jiných uživatelů',
'right-editusercss' => 'Editace CSS souborů jiných uživatelů',
-'right-edituserjs' => 'Editace JS souborů jiných uživatelů',
+'right-edituserjs' => 'Editace JavaScriptových souborů jiných uživatelů',
+'right-editmyusercss' => 'Editace vašich uživatelských CSS souborů',
+'right-editmyuserjs' => 'Editace vašich uživatelských JavaScriptových souborů',
+'right-viewmywatchlist' => 'Prohlížení vlastního seznamu sledovaných stránek',
+'right-editmywatchlist' => 'Editace vlastního seznamu sledovaných stránek. Uvědomte si, že některé akce do něj mohou přidat stránky i bez tohoto oprávnění.',
'right-rollback' => 'Rychlý revert úprav posledního uživatele editujícího danou stránku',
'right-markbotedits' => 'Označování revertů jako editace bota',
'right-noratelimit' => 'Imunita vůči rychlostním limitům',
'action-userrights-interwiki' => 'upravovat práva uživatelů na jiných wiki',
'action-siteadmin' => 'zamykat nebo odemykat databázi',
'action-sendemail' => 'posílat e-maily',
+'action-editmywatchlist' => 'upravovat vlastní seznam sledovaných stránek',
+'action-viewmywatchlist' => 'prohlížet vlastní seznam sledovaných stránek',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|změna|změny|změn}}',
'reuploaddesc' => 'Zrušit načítání a vrátit se do formuláře.',
'upload-tryagain' => 'Uložit upravený popis souboru',
'uploadnologin' => 'Nejste přihlášen(a)',
-'uploadnologintext' => 'Pro načtení souboru se musíte [[Special:UserLogin|přihlásit]].',
+'uploadnologintext' => 'Pro načtení souboru se musíte $1.',
'upload_directory_missing' => 'Adresář pro nahrávání souborů ($1) chybí a webový server ho nedokáže vytvořit.',
'upload_directory_read_only' => 'Do adresáře pro načítané soubory ($1) nemá webserver právo zápisu.',
'uploaderror' => 'Při načítání došlo k chybě',
'upload-file-error-text' => 'Při vytváření dočasného souboru na serveru nastala vnitřní chyba.
Kontaktuje prosím [[Special:ListUsers/sysop|správce]].',
'upload-misc-error' => 'Neznámá chyba',
-'upload-misc-error-text' => 'Neznámá chyba se vyskytla během nahrávání souboru. Zkontrolujte zda je URL platná a přístupné a zkuste to znovu. Pokud se chyba znovu objeví, kontaktuje administrátora systému.',
+'upload-misc-error-text' => 'Neznámá chyba se vyskytla během nahrávání souboru. Zkontrolujte zda je URL platná a přístupné a zkuste to znovu. Pokud se chyba znovu objeví, kontaktuje [[Special:ListUsers/sysop|správce]].',
'upload-too-many-redirects' => 'URL obsahovalo příliš mnoho přesměrování',
'upload-unknown-size' => 'Neznámá velikost',
'upload-http-error' => 'Došlo k chybě HTTP: $1',
'notvisiblerev' => 'Verze byla smazána',
'watchnochange' => 'Žádná ze sledovaných položek nebyla editována v době, která je zobrazena.',
'watchlist-details' => 'Na svém seznamu sledovaných stránek máte $1 {{PLURAL:$1|stránku|stránky|stránek}}, nepočítají se diskusní stránky.',
-'wlheader-enotif' => '* Upozorňování e-mailem je zapnuto.',
-'wlheader-showupdated' => "* Stránky, které se změnily od vaší poslední návštěvy, jsou zobrazeny '''tučně'''",
+'wlheader-enotif' => 'Upozorňování e-mailem je zapnuto.',
+'wlheader-showupdated' => "Stránky, které se změnily od vaší poslední návštěvy, jsou zobrazeny '''tučně'''.",
'watchmethod-recent' => 'hledají se sledované stránky mezi posledními změnami',
'watchmethod-list' => 'hledají se nejnovější editace sledovaných stránek',
'watchlistcontains' => 'Na svém seznamu sledovaných stránek máte $1 {{PLURAL:$1|položku|položky|položek}}.',
'mycontris' => 'Příspěvky',
'contribsub2' => '$1 ($2)',
'nocontribs' => 'Nenalezeny žádné změny vyhovující kritériím.',
-'uctop' => ' (aktuální)',
+'uctop' => '(aktuální)',
'month' => 'Do měsíce:',
'year' => 'Do roku:',
'thumbnail-more' => 'Zvětšit',
'filemissing' => 'Chybějící soubor',
'thumbnail_error' => 'Chyba při vytváření náhledu: $1',
+'thumbnail_error_remote' => 'Chybové hlášení z {{grammar:2sg|$1}}:
+$2',
'djvu_page_error' => 'Stránka DjVu mimo rozsah',
'djvu_no_xml' => 'Vytvoření XML pro soubor DjVu se nezdařilo.',
'thumbnail-temp-create' => 'Dočasný soubor náhledu nelze vytvořit.',
'modern.css' => '/* Zde uvedené CSS bude ovlivňovat pouze styl „Moderní“ */',
'vector.css' => '/* Zde uvedené CSS bude ovlivňovat pouze styl „Vektor“ */',
'print.css' => '/* Zde uvedené CSS bude ovlivňovat tiskový výstup */',
-'handheld.css' => '/* Zde uvedené CSS bude ovlivňovat přenosná zařízení vycházející ze stylu nastaveného v proměnné $wgHandheldStyle */',
'noscript.css' => '/* Zde uvedené CSS bude ovlivňovat uživatele s vypnutým JavaScriptem */',
'group-autoconfirmed.css' => '/* Zde uvedené CSS bude ovlivňovat pouze automaticky schválené uživatele */',
'group-bot.css' => '/* Zde uvedené CSS bude ovlivňovat pouze boty */',
'hours' => '{{PLURAL:$1|$1 hodina|$1 hodiny|$1 hodin}}',
'days' => '{{PLURAL:$1|$1 den|$1 dny|$1 dní}}',
'weeks' => '{{PLURAL:$1|$1 týden|$1 týdny|$1 týdnů}}',
-'months' => '{{PLURAL:$1|$1 měsícem|$1 měsíci}}',
-'years' => '{{PLURAL:$1|$1 rokem|$1 roky}}',
+'months' => '{{PLURAL:$1|$1 měsíc|$1 měsíce|$1 měsíců}}',
+'years' => '{{PLURAL:$1|$1 rok|$1 roky|$1 let}}',
'ago' => 'před $1',
'just-now' => 'právě teď',
'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 registroval účet se jménem "$2" a touto e-mailovou adresou na {{grammar:6sg|{{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.
-Pokud si přejete aktivovat e-mailové funkce na {{grammar:6sg|{{SITENAME}}}}, tak pro potvrzení, že tato adresa opravdu patří vám, přejděte svým internetovým prohlížečem na následující adresu:
+Pokud si přejete aktivovat e-mailové funkce na {{grammar:6sg|{{SITENAME}}}},
+tak pro potvrzení, že tato adresa opravdu patří vám, přejděte svým internetovým
+prohlížečem na následující adresu:
$3
-Pokud jste o toto potvrzení *nežádali*, klikněte na následující odkaz, čímž potvrzení zrušíte:
+Pokud jste si tento účet *neregistrovali*, klikněte na následující odkaz,
+čímž potvrzení zrušíte:
$5
Platnost tohoto potvrzovacího kódu vyprší $4.',
-'confirmemail_body_changed' => 'Někdo (patrně vy, z IP adresy $1)
-změnil e-mailovou adresu k účtu "$2" na {{grammar:6sg|{{SITENAME}}}} na tuto adresu.
+'confirmemail_body_changed' => 'Někdo (patrně vy, z IP adresy $1) změnil e-mailovou adresu
+k účtu „$2“ na {{grammar:6sg|{{SITENAME}}}} na tuto adresu.
Pokud si přejete aktivovat e-mailové funkce na {{grammar:6sg|{{SITENAME}}}},
tak pro potvrzení, že tato adresa opravdu patří vám, přejděte svým
$3
-Pokud jste o toto potvrzení *nežádali*, klikněte na následující odkaz,
+Pokud jste si tento účet *neregistrovali*, klikněte na následující odkaz,
čímž potvrzení zrušíte:
$5
'tog-shownumberswatching' => 'Pòkażë lëczba ùzérającëch brëkòwników',
'tog-oldsig' => 'Pòdzérk wëzdrzatkù twòjegò pòdpisënka',
'tog-fancysig' => 'Wzérôj na pòdpisënk jakno na wikikòd (bez aùtomatnych lënków)',
-'tog-externaleditor' => 'Brëkùjë domëslno bùtnowégò editora (blós dlô ekspertów, je nót ekstra nastôwów w twòjim kòmpùtrze)',
-'tog-externaldiff' => 'Brëkùjë domëslno bùtnowégò nôrzãdza diff (blós dlô ekspertów.je nót ekstra nastôwów w twòjim kòmpùtrze)',
'tog-showjumplinks' => 'Włączë lënczi przëstãpù "òbaczë téż"',
'tog-uselivepreview' => 'Brëkùjë wtimczasnegò pòdzérkù (JavaScript) (eksperimentalné)',
'tog-forceeditsummary' => 'Pëtôj przed wéńdzenim do pùstégò pòdrechòwania edicëji',
'disclaimers' => 'Prawné zastrzedżi',
'disclaimerpage' => 'Project:Prawné zastrzedżi',
'edithelp' => 'Pòmòc do edicëji',
-'edithelppage' => 'Help:Editowanié starnë',
'helppage' => 'Help:Spisënk zamkłoscë',
'mainpage' => 'Przédnô starna',
'mainpage-description' => 'Przédnô starna',
'powersearch-redir' => 'Lësta przeczerowaniów',
'powersearch-field' => 'Szëkba za',
-# Quickbar
-'qbsettings' => 'Sztrépk chùtczégò przistãpù',
-
# Preferences page
'preferences' => 'Preferencëje',
'mypreferences' => 'Mòje nastôwë',
# Special:ListGroupRights
'listgrouprights-members' => '(lësta nôlëżników karna)',
-# E-mail user
+# Email user
'emailuser' => 'Wëslë e-maila do negò brëkòwnika',
'emailpage' => 'Sélajë e-mail do brëkòwnika',
'defemailsubject' => 'E-mail òd {{SITENAME}}',
'unwatchthispage' => 'Òprzestôj ùzerac ną starnã',
'notanarticle' => 'To nie je artikel',
'watchlist-details' => 'Ùzérôsz {{PLURAL:$1|$1 artikel|$1 artikle/-ów}}, nie rechùjąc diskùsëjów.',
-'wlheader-showupdated' => "* Artiklë jakczé òsta zmienioné òd Twòji slédny wizytë są wëapratnioné '''pògrëbieniém'''",
+'wlheader-showupdated' => "Artiklë jakczé òsta zmienioné òd Twòji slédny wizytë są wëapratnioné '''pògrëbieniém'''",
'watchmethod-list' => 'szëkba ùzérónëch artiklów westrzód pòslédnëch edicëjów',
'watchlistcontains' => 'Na twòji lësce ùzérónëch artiklów {{PLURAL:$1|je 1 strana|są $1 starnë|je $1 starnów}}.',
'wlnote' => "Niżi môsz wëskrzënioné {{PLURAL:$1|slédną zmianã|'''$1''' slédnëch zmianów}} zrobioné òb {{PLURAL:$2|gòdzënã|'''$2''' gòdzënë/gòdzënów}}.",
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-source' => 'Zdrój',
'exif-languagecode' => 'Jãzëk',
'monthsall' => 'wszëtczé',
'limitall' => 'wszëtczé',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail_loggedin' => 'Twòjô adresa e-mail òsta pòcwierdzona.',
# action=purge
# Special:NewFiles
'ilsubmit' => 'ищи',
-# EXIF tags
+# Exif tags
'exif-artist' => 'творьць',
# 'all' in various places, this might be different for inflected languages
'version-license' => 'прощєниѥ',
'version-software-version' => 'обраꙁъ',
-# Special:FilePath
-'filepath-page' => 'дѣло :',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'ищи',
'tog-shownumberswatching' => 'Страницăна миçе хутшăнакан сăнав списокне кĕртнине кăтартмалла',
'tog-oldsig' => 'Хальхи алӑ пусни:',
'tog-fancysig' => 'Хăвăр тунă алă пуснин вики-паллисем',
-'tog-externaleditor' => 'Палăртман чухне тулашри редактора усă курмалла',
-'tog-externaldiff' => 'Палăртман чухне версисене танлаштарма тулашри программăна усă курмалла',
'tog-showjumplinks' => '«... патне куç» хушма каçăсене усă курмалла',
'tog-uselivepreview' => 'Хăвăрт кăтартакан малтанхи курăнăва усă курмалла (JavaScript, экспериментлă)',
'tog-forceeditsummary' => 'Тӳрлетӳсен кĕске ăнлантарăвне кăтартман чухне асăрхаттармалла',
'disclaimers' => 'Яваплăха тивĕçтерменни',
'disclaimerpage' => 'Project:Яваплăха тивĕçтерменни',
'edithelp' => 'Улшăнусене кĕртме пулăшакан пулăшу',
-'edithelppage' => 'Help:Улшăнусене кĕртме пулăшакан пулăшу',
'helppage' => 'Help:Пулăшу',
'mainpage' => 'Тĕп страница',
'mainpage-description' => 'Тĕп страницă',
'textmatches' => 'Статьясенчи текст пĕрпеклĕхĕ',
'prevn' => 'малтанхи {{PLURAL:$1|$1}}',
'nextn' => 'малалли {{PLURAL:$1|$1}}',
-'searchhelp-url' => 'Help:Пулăшу',
'search-result-size' => '$1 ({{PLURAL:$2|1 сăмах|$2 сăмах}})',
'showingresults' => 'Аяларах эсир <b>#$2</b> пуçласа кăтартнă <b>$1</b> йĕркене куратăр.',
'showingresultsheader' => "{{PLURAL:$5|Результат '''$1''' '''$3''' хушшинчен|Результатсем'''$1 - $2''' '''$3''' хушшинчен}} '''$4''' валли",
'powersearch' => 'Анлă шырав',
'powersearch-legend' => 'Анлă шырав',
-# Quickbar
-'qbsettings' => 'Навигаци хăми',
-
# Preferences page
'preferences' => 'Ĕнерлевсем',
'mypreferences' => 'Ман ĕнерлевсем',
'listgrouprights-group' => 'Ушкăн',
'listgrouprights-helppage' => 'Help:Ушкăн прависем',
-# E-mail user
+# Email user
'emailuser' => 'Хутшăнакана çыру яр... (Письмо участнику)',
'usermailererror' => 'Электронлă почта урлă пĕлтерӳ янă чухне йăнăш тухрĕ:',
'noemailtitle' => 'Электронлă почта адресĕ çук',
# Metadata
'metadata' => 'Метаданнăйсем:',
-# EXIF tags
+# Exif tags
'exif-exifversion' => 'Exif версийĕ',
'exif-flashpixversion' => 'Ĕçлеме пултаракан FlashPix версийĕ',
'exif-gpsversionid' => 'GPS-информаци блокĕн версийĕ',
'watchlistall2' => 'пурте',
'namespacesall' => 'пурте',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail_sent' => 'Çирĕплетмелли ыйтуллă çырăва ятăмăр.',
'confirmemail_success' => 'Сирĕн электронлă почтăн адресне çирĕплентĕ.',
'confirmemail_loggedin' => 'Сирĕн электронлă почтăн адресне çирĕплетрĕмĕр.',
# Special:Version
'version' => 'MediaWiki версийĕ',
-# Special:FilePath
-'filepath' => 'Файл çулĕ',
-'filepath-submit' => 'Çул',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Пĕр пек файлсен шыравĕ',
'fileduplicatesearch-legend' => 'Дубликатсен шыравĕ',
'oct' => 'Hyd',
'nov' => 'Tach',
'dec' => 'Rhag',
+'january-date' => '$1 Ionawr',
+'february-date' => '$1 Chwefror',
+'march-date' => '$1 Mawrth',
+'april-date' => '$1 Ebrill',
+'may-date' => '$1 Mai',
+'june-date' => '$1 Mehefin',
+'july-date' => '$1 Gorffennaf',
+'august-date' => '$1 Awst',
+'september-date' => '$1 Medi',
+'october-date' => '$1 Hydref',
+'november-date' => '$1 Tachwedd',
+'december-date' => '$1 Rhagfyr',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categori|Categori|Categorïau|Categorïau|Categorïau|Categorïau}}',
'create-this-page' => "Creu'r dudalen",
'delete' => 'Dileu',
'deletethispage' => 'Dileer y dudalen hon',
+'undeletethispage' => 'Adfer y dudalen hon',
'undelete_short' => 'Adfer $1 {{PLURAL:$1|golygiad|golygiad|olygiad|golygiad}}',
'viewdeleted_short' => "Edrych ar y {{PLURAL:$1|golygiad sydd wedi'i ddileu|golygiad sydd wedi'i ddileu|$1 olygiad sydd wedi'u dileu|$1 golygiad sydd wedi'u dileu|$1 golygiad sydd wedi'u dileu|$1 golygiad sydd wedi'u dileu}}",
'protect' => 'Diogelu',
'disclaimers' => 'Gwadiadau',
'disclaimerpage' => 'Project:Gwadiad Cyffredinol',
'edithelp' => 'Help gyda golygu',
-'edithelppage' => 'Help:Golygu',
'helppage' => 'Help:Cymorth',
'mainpage' => 'Hafan',
'mainpage-description' => 'Hafan',
'namespaceprotected' => "Nid oes caniatâd gennych i olygu tudalennau yn y parth '''$1'''.",
'customcssprotected' => "Nid oes caniatâd ganddoch i olygu'r dudalen CSS hon oherwydd bod gosodiadau personol defnyddiwr arall arno.",
'customjsprotected' => "Nid oes caniatâd ganddoch i olygu'r dudalen JavaScript hon oherwydd bod gosodiadau personol defnyddiwr arall arno.",
+'mycustomcssprotected' => "Does dim caniatad gennych i olygu'r dudalen CSS hon.",
+'mycustomjsprotected' => "Does dim caniatad gennych i olygu'r dudalen JavaScript hon.",
'ns-specialprotected' => 'Ni ellir golygu tudalennau arbennig.',
'titleprotected' => "Diogelwyd y teitl hwn rhag ei greu gan [[User:$1|$1]].
Rhoddwyd y rheswm hwn - ''$2''.",
'cannotchangeemail' => 'Ni ellir newid cyfeiriadau e-bost i gyfrifon ar y wici hwn.',
'emaildisabled' => 'Ni all y wefan hon anfon e-byst.',
'accountcreated' => 'Crëwyd y cyfrif',
-'accountcreatedtext' => 'Crëwyd cyfrif defnyddiwr ar gyfer $1.',
+'accountcreatedtext' => 'Gosodwyd cyfrif defnyddiwr ar gyfer [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|sgwrs]]).',
'createaccount-title' => 'Creu cyfrif ar {{SITENAME}}',
'createaccount-text' => 'Creodd rhywun gyfrif o\'r enw $2 ar {{SITENAME}} ($4) ar gyfer y cyfeiriad e-bost hwn. "$3" yw\'r cyfrinair ar gyfer "$2". Dylech fewngofnodi a newid eich cyfrinair yn syth.
# Special:PasswordReset
'passwordreset' => 'Ailosod cyfrinair',
-'passwordreset-text' => 'Cwblhewch y ffurflen hon er mwyn ailosod eich cyfrinair.',
+'passwordreset-text-one' => 'Cwblhewch y ffurflen hon er mwyn ailosod eich cyfrinair.',
+'passwordreset-text-many' => "{{PLURAL:$1|Rhowch un o'r dewis o fanylion derbyniol er mwyn ailosod eich cyfrinair.}}",
'passwordreset-legend' => 'Ailosod y cyfrinair',
'passwordreset-disabled' => 'Analluogwyd ailosod cyfrineiriau ar y wici hwn.',
'passwordreset-emaildisabled' => 'Analluogwyd offer e-bost ar y wici hwn.',
-'passwordreset-pretext' => "{{PLURAL:$1|||Rhowch un o'r darnau o ddata isod|Rhowch un o'r darnau o ddata isod|Rhowch un o'r darnau o ddata isod|Rhowch un o'r darnau o ddata isod|Rhowch un o'r darnau o ddata isod}}",
'passwordreset-username' => 'Eich enw defnyddiwr:',
'passwordreset-domain' => 'Parth:',
'passwordreset-capture' => 'Gweld yr e-bost a gaiff ei anfon?',
Ymddengys iddi gael ei dileu.",
'edit-conflict' => 'Cyd-ddigwyddiad golygu.',
'edit-no-change' => 'Anwybyddwyd eich golygiad, gan na newidiwyd y testun.',
+'postedit-confirmation' => 'Rhoddwyd eich golygiad ar gadw.',
'edit-already-exists' => 'Ni ellid creu tudalen newydd.
Mae ar gael yn barod.',
'defaultmessagetext' => 'Y testun rhagosodedig',
'invalid-content-data' => "Data annilys i'r cynnwys",
'content-not-allowed-here' => 'Nid yw cynnwys ar ffurf "$1" yn cael ei ganiatau ar y dudalen [[$2]]',
'editwarning-warning' => 'Os y gadewch y dudalen hon mae\'n bosib y collwch eich newidiadau iddi.
-Gallwch ddiddymu\'r rhybudd hwn yn yr adran "{{int:prefs-editing}}" yn eich dewisiadau.',
+Os ydych wedi mewngofnodi gallwch ddiddymu\'r rhybudd hwn yn yr adran "Golygu" yn eich dewisiadau.',
# Content models
'content-model-wikitext' => 'cystrawen wici',
'searchmenu-legend' => 'Dewisiadau chwilio',
'searchmenu-exists' => "'''Mae tudalen o'r enw \"[[\$1]]\" ar y wici hwn'''",
'searchmenu-new' => "'''Creu'r dudalen \"[[:\$1]]\" ar y wici hwn!'''",
-'searchhelp-url' => 'Help:Cymorth',
'searchmenu-prefix' => "[[Special:PrefixIndex/$1|Chwilio drwy tudalennau gyda'r rhagddodiad hwn]]",
'searchprofile-articles' => 'Tudalennau pwnc (erthyglau/ffeiliau)',
'searchprofile-project' => 'Tudalennau Cymorth a Phrosiect',
'userrights-changeable-col' => 'Grwpiau y gallwch eu newid',
'userrights-unchangeable-col' => 'Grwpiau na allwch eu newid',
'userrights-conflict' => 'Gwrthdaro gyda hawliau defnyddiwr! Gwnewch eich newidiadau eto.',
+'userrights-removed-self' => "Rydych wedi llwyddo rhoi'r gorau i'ch galluoedd. Gan hynny, nid ydych yn cael myned i'r dudalen hon bellach.",
# Groups
'group' => 'Grŵp:',
'right-editusercssjs' => 'Golygu ffeiliau CSS a JS yn perthyn i ddefnyddwyr eraill',
'right-editusercss' => 'Golygu ffeiliau CSS yn perthyn i ddefnyddwyr eraill',
'right-edituserjs' => 'Golygu ffeiliau JS yn perthyn i ddefnyddwyr eraill',
+'right-editmyusercss' => 'Golygu eich ffeiliau defnyddiwr CSS eich hunan.',
+'right-editmyuserjs' => 'Golygu eich ffeiliau defnyddiwr JavaScript eich hunan.',
+'right-viewmywatchlist' => 'Gweld eich rhestr wylio',
+'right-editmywatchlist' => 'Golygu eich rhestr wylio. Sylwer bod rhai gweithredoedd yn arwain at ychwanegu tudalennau hyd yn oed heb yr hawl hon.',
'right-rollback' => 'Gwrthdroi golygiadau defnyddiwr diwethaf rhyw dudalen yn sydyn',
'right-markbotedits' => 'Marcio golygiadau wedi eu gwrthdroi yn olygiadau bot',
'right-noratelimit' => 'Bod heb gyfyngiad ar gyflymder eich gweithredoedd',
'action-userrights-interwiki' => 'golygu galluoedd y defnyddwyr ar wicïau eraill',
'action-siteadmin' => "cloi neu ddatgloi'r databas",
'action-sendemail' => 'anfon e-bost',
+'action-editmywatchlist' => 'golygu eich rhestr wylio',
+'action-viewmywatchlist' => 'gweld eich rhestr wylio',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|newid|newid|newid|newid|newid|o newidiadau}}',
'reuploaddesc' => "Dileu'r uwchlwytho a dychwelyd i'r ffurflen uwchlwytho",
'upload-tryagain' => "Uwchlwyther disgrifiad newydd o'r ffeil",
'uploadnologin' => 'Nid ydych wedi mewngofnodi',
-'uploadnologintext' => "Mae'n rhaid i chi [[Special:UserLogin|fewngofnodi]] er mwyn uwchlwytho ffeiliau.",
+'uploadnologintext' => "Mae'n rhaid $1 er mwyn uwchlwytho ffeiliau.",
'upload_directory_missing' => "Mae'r cyfeiriadur uwchlwytho ($1) yn eisiau, ac ni allai'r gweinydd gwe ei greu.",
'upload_directory_read_only' => "Ni all y gweinydd ysgrifennu i'r cyfeiriadur uwchlwytho ($1).",
'uploaderror' => "Gwall tra'n uwchlwytho ffeil",
'notvisiblerev' => 'Y diwygiad wedi cael ei ddileu',
'watchnochange' => "Ni olygwyd dim o'r erthyglau yr ydych yn cadw golwg arnynt yn ystod y cyfnod uchod.",
'watchlist-details' => '{{PLURAL:$1|Nid oes dim tudalennau|Mae $1 dudalen|Mae $1 dudalen|Mae $1 tudalen|Mae $1 thudalen|Mae $1 o dudalennau}} ar eich rhestr wylio, heb gynnwys tudalennau sgwrs.',
-'wlheader-enotif' => '* Galluogwyd hysbysiadau trwy e-bost.',
-'wlheader-showupdated' => "* Mae tudalennau sydd wedi newid ers i chi ymweld ddiwethaf wedi'u '''hamlygu'''.",
+'wlheader-enotif' => 'Galluogwyd hysbysiadau trwy e-bost.',
+'wlheader-showupdated' => "Mae tudalennau sydd wedi newid ers i chi eu gweld ddiwethaf wedi'u '''hamlygu'''.",
'watchmethod-recent' => "yn chwilio'r diwygiadau diweddar am dudalennau ar y rhestr wylio",
'watchmethod-list' => "yn chwilio'r tudalennau ar y rhestr wylio am ddiwygiadau diweddar",
'watchlistcontains' => '{{PLURAL:$1|Nid oes dim tudalennau|Mae $1 dudalen|Mae $1 dudalen|Mae $1 tudalen|Mae $1 thudalen|Mae $1 o dudalennau}} ar eich rhestr wylio.',
'thumbnail-more' => 'Chwyddo',
'filemissing' => 'Ffeil yn eisiau',
'thumbnail_error' => "Cafwyd gwall wrth greu'r mân-lun: $1",
+'thumbnail_error_remote' => 'Neges am y gwall o $1:
+$2',
'djvu_page_error' => 'Y dudalen DjVu allan o amrediad',
'djvu_no_xml' => 'Ddim yn gallu mofyn XML ar gyfer ffeil DjVu',
'thumbnail-temp-create' => 'Wedi methu gwneud ffeil mân-lun dros dro',
* @author EPO
* @author Emilkris33
* @author Froztbyte
+ * @author Geitost
* @author Gorbi
* @author H92
* @author HenrikKbh
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1. januar',
+'february-date' => '$1. februar',
+'march-date' => '$1. marts',
+'april-date' => '$1. april',
+'may-date' => '$1. maj',
+'june-date' => '$1. juni',
+'july-date' => '$1. juli',
+'august-date' => '$1. august',
+'september-date' => '$1. september',
+'october-date' => '$1. oktober',
+'november-date' => '$1. november',
+'december-date' => '$1. december',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori|Kategorier}}',
'create-this-page' => 'Opret denne side',
'delete' => 'Slet',
'deletethispage' => 'Slet side',
+'undeletethispage' => 'Gendan denne side',
'undelete_short' => 'Fortryd sletning af {{PLURAL:$1|én version|$1 versioner}}',
'viewdeleted_short' => 'Vis {{PLURAL:$1|en slettet redigering|$1 slettede redigeringer}}',
'protect' => 'Beskyt',
'disclaimers' => 'Forbehold',
'disclaimerpage' => 'Project:Generelle forbehold',
'edithelp' => 'Hjælp til redigering',
-'edithelppage' => 'Help:Hvordan redigerer jeg en side',
'helppage' => 'Help:Hjælp',
'mainpage' => 'Forside',
'mainpage-description' => 'Forside',
'namespaceprotected' => 'Du har ikke rettigheder til at redigere sider i $1-navnerummet.',
'customcssprotected' => 'Du har ikke tilladelse til at redigere denne CSS-side, da den indeholder en anden brugers personlige indstillinger.',
'customjsprotected' => 'Du har ikke tilladelse til at redigere denne JavaScript-side, da den indeholder en anden brugers personlige indstillinger.',
+'mycustomcssprotected' => 'Du har ikke rettigheder til at redigere denne CSS-side.',
+'mycustomjsprotected' => 'Du har ikke rettigheder til at redigere denne JavaScript-side.',
'ns-specialprotected' => 'Sider i navnerummet {{ns:special}} kan ikke redigeres.',
'titleprotected' => "Dette sidenavn er beskyttet mod oprettelse af [[User:$1|$1]]. Begrundelsen for beskyttelsen er ''$2''.",
'filereadonlyerror' => 'Ude af stand til at redigere filen "$1", fordi fildatabasen "$2" er skrivebeskyttet.
'createacct-yourpasswordagain-ph' => 'Indtast kodeord igen',
'remembermypassword' => 'Husk mit brugernavn i denne browser (højst $1 {{PLURAL:$1|dag|dage}})',
'userlogin-remembermypassword' => 'Husk mig',
-'userlogin-signwithsecure' => 'Log på med sikker server',
+'userlogin-signwithsecure' => 'Brug sikker forbindelse',
'securelogin-stick-https' => 'Behold forbindelsen til HTTPS efter login',
'yourdomainname' => 'Dit domænenavn:',
'password-change-forbidden' => 'Du kan ikke ændre adgangskoder på denne wiki.',
'gotaccount' => 'Har du allerede en konto? $1.',
'gotaccountlink' => 'Log på',
'userlogin-resetlink' => 'Har du glemt dine login oplysninger?',
+'userlogin-resetpassword-link' => 'Nulstil din adgangskode',
'helplogin-url' => 'Help:Logge på',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hjælp til at logge på]]',
'createacct-join' => 'Indtast dine oplysninger nedenfor.',
'createacct-imgcaptcha-ph' => 'Indtast venligst ovenstående tekst',
'createacct-submit' => 'Opret din konto',
'createacct-benefit-heading' => '{{SITENAME}} laves af mennesker som dig.',
-'createacct-benefit-body1' => 'rettelser',
-'createacct-benefit-body2' => 'sider',
-'createacct-benefit-body3' => 'seneste bidragydere',
+'createacct-benefit-body1' => '{{PLURAL:$1|redigering|redigeringer}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|side|sider}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|nylig bidragyder|nylige bidragydere}}',
'badretype' => 'De indtastede adgangskoder er ikke ens.',
'userexists' => 'Det brugernavn, du har valgt, er allerede i brug.
Vælg venligst et andet brugernavn.',
'cannotchangeemail' => 'De email-adresser, der er tilknyttet brugerkontoer, kan ikke ændres på denne wiki.',
'emaildisabled' => 'Denne hjemmeside kan ikke sende emails.',
'accountcreated' => 'Brugerkonto oprettet',
-'accountcreatedtext' => 'Brugerkontoen $1 er oprettet.',
+'accountcreatedtext' => 'Brugerkontoen for [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|diskussion]]) er oprettet.',
'createaccount-title' => 'Opret brugerkonto på {{SITENAME}}',
'createaccount-text' => 'Nogen har oprettet en konto for din e-post-adresse på {{SITENAME}} ($4) med navnet "$2". Adgangskoden er "$3".
Du opfordres til at logge ind og ændre adgangskoden med det samme.
# Special:PasswordReset
'passwordreset' => 'Nulstil adgangskode',
-'passwordreset-text' => 'Udfyld denne formular for at nulstille din adgangskode.',
+'passwordreset-text-one' => 'Udfyld denne formular for at nulstille din adgangskode.',
+'passwordreset-text-many' => '{{PLURAL:$1|Udfyld en af oplysningerne nedenfor for at nulstille din adgangskode.}}',
'passwordreset-legend' => 'Nulstil adgangskode',
'passwordreset-disabled' => 'Nulstilling af kodeord er slået fra på denne wiki.',
'passwordreset-emaildisabled' => 'E-mailfunktioner er slået fra på denne wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Indtast en af de nedenstående oplysninger}}',
'passwordreset-username' => 'Brugernavn:',
'passwordreset-domain' => 'Domæne:',
'passwordreset-capture' => 'Se den resulterende email?',
Den ser du til at være slettet.',
'edit-conflict' => 'Redigeringskonflikt.',
'edit-no-change' => 'Din ændring ignoreredes, fordi der ikke var ændring af teksten.',
+'postedit-confirmation' => 'Din redigering er gemt.',
'edit-already-exists' => 'En ny side kunne ikke oprettes, fordi den allerede findes.',
'defaultmessagetext' => 'Standardtekst',
'content-failed-to-parse' => 'Kunne ikke fortolke $2-indholdet af $1-modellen: $3',
'searchmenu-legend' => 'Søgemuligheder',
'searchmenu-exists' => "'''Der er en side med navnet \"[[:\$1]]\" på denne wiki'''",
'searchmenu-new' => "'''Opret siden \"[[:\$1]]\" i denne wiki'''",
-'searchhelp-url' => 'Help:Hjælp',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Vis alle sider som begynder med dette præfiks]]',
'searchprofile-articles' => 'Indholdssider',
'searchprofile-project' => 'Hjælpe- og projektsider',
'saveusergroups' => 'Gem brugergrupper',
'userrights-groupsmember' => 'Medlem af:',
'userrights-groupsmember-auto' => 'Implicit medlem af:',
-'userrights-groups-help' => 'Du kan ændre denne brugers gruppermedlemsskaber:
-* Et markeret afkrydsningsfelt betyder at brugeren er medlen af den pågældende gruppe..
+'userrights-groups-help' => 'Du kan ændre denne brugers gruppemedlemsskaber:
+* Et markeret afkrydsningsfelt betyder at brugeren er medlen af den pågældende gruppe.
* Et umarkeret felt betyder at brugeren ikke er medlem af gruppen.
* En * betyder at du ikke kan fravælge gruppen, når den først er tilføjet og omvendt.',
'userrights-reason' => 'Årsag:',
'userrights-changeable-col' => 'Redigerbare grupper',
'userrights-unchangeable-col' => 'Uredigerbare grupper',
'userrights-conflict' => 'Brugerrettighedskonflikt. Tilføj venligst dine ændringer påny.',
+'userrights-removed-self' => 'Du har fjernet dine egne rettigheder. Du har derfor ikke længere adgang til denne side.',
# Groups
'group' => 'Gruppe:',
'right-editusercssjs' => 'Ændre andre brugeres JS og CSS filer',
'right-editusercss' => 'Ændre andre brugeres CSS filer',
'right-edituserjs' => 'Ændre andre brugeres JS filer',
+'right-editmyusercss' => 'Redigere dine egne CSS-filer',
+'right-editmyuserjs' => 'Redigere dine egne JavaScript-filer',
'right-rollback' => 'Hurtig gendannelse af alle redigeringer foretaget af den seneste bruger',
'right-markbotedits' => 'Markere gendannelser som ændringer foretaget af en robot',
'right-noratelimit' => 'Upåvirket af hastighedsgrænser',
'upload-proto-error-text' => 'Adressen skal begynde med <code>http://</code> eller <code>ftp://</code>.',
'upload-file-error' => 'Intern fejl',
'upload-file-error-text' => 'Ved oprettelse af en midlertidig fil på serveren, er der sket en fejl.
-Informer venligst en [[Special:ListUsers/sysop|systemadministrator]].',
+Informer venligst en [[Special:ListUsers/sysop|administrator]].',
'upload-misc-error' => 'Ukendt fejl ved upload',
-'upload-misc-error-text' => 'Ved upload er der sket en ukendt fejl. Kontroller adressen for fejl, sidens onlinestatus og forsøg igen. Hvis problemet fortsætter, informeres en system-administrator.',
+'upload-misc-error-text' => 'Ved upload er der sket en ukendt fejl. Kontroller adressen for fejl, sidens onlinestatus og forsøg igen. Hvis problemet fortsætter, informeres en [[Special:ListUsers/sysop|administrator]].',
'upload-too-many-redirects' => "URL'en indeholdt for mange omdirigeringer",
'upload-unknown-size' => 'Ukendt størrelse',
'upload-http-error' => 'Der opstod en HTTP-fejl: $1',
'special-categories-sort-abc' => 'sorter alfabetisk',
# Special:DeletedContributions
-'deletedcontributions' => 'slettede brugerbidrag',
+'deletedcontributions' => 'Slettede brugerbidrag',
'deletedcontributions-title' => 'Slettede brugerbidrag',
'sp-deletedcontributions-contribs' => 'bidrag',
'notvisiblerev' => 'Versionen er blevet slettet',
'watchnochange' => 'Ingen af siderne i din overvågningsliste er ændret i den valgte periode.',
'watchlist-details' => 'Du har $1 {{PLURAL:$1|side|sider}} på din overvågningsliste (ekskl. diskussionssider).',
-'wlheader-enotif' => '* E-mail-underretning er slået til.',
-'wlheader-showupdated' => "* Sider der er ændret siden dit sidste besøg, er '''fremhævet'''",
+'wlheader-enotif' => 'E-mail-underretning er slået til.',
+'wlheader-showupdated' => "Sider, der er ændret siden dit sidste besøg, er vist med '''fed skrift'''.",
'watchmethod-recent' => 'Tjekker seneste ændringer for sider i din overvågningsliste',
'watchmethod-list' => 'Tjekker seneste ændringer for sider i din overvågningsliste',
'watchlistcontains' => 'Din overvågningsliste indeholder $1 {{PLURAL:$1|side|sider}}.',
'mycontris' => 'Bidrag',
'contribsub2' => 'For $1 ($2)',
'nocontribs' => 'Ingen ændringer er fundet som opfylder disse kriterier.',
-'uctop' => ' (seneste)',
+'uctop' => '(seneste)',
'month' => 'Måned:',
'year' => 'År:',
'thumbnail-more' => 'Forstør',
'filemissing' => 'Filen mangler',
'thumbnail_error' => 'Fejl ved oprettelse af thumbnail: $1',
+'thumbnail_error_remote' => 'Fejlbesked fra $1:
+$2',
'djvu_page_error' => 'DjVu-side udenfor sideområdet',
'djvu_no_xml' => 'XML-data kan ikke hentes til DjVu-filen',
'thumbnail-temp-create' => 'Kunne ikke oprette midlertidig miniaturefil',
* @author MichaelFrey
* @author MtaÄ
* @author Omnipaedista
+ * @author Patrick87
* @author Pill
* @author Purodha
* @author Raimond Spekking (Raymond) <raimond.spekking@gmail.com> since January 2007
'oct' => 'Okt.',
'nov' => 'Nov.',
'dec' => 'Dez.',
+'january-date' => '$1. Januar',
+'february-date' => '$1. Februar',
+'march-date' => '$1. März',
+'april-date' => '$1. April',
+'may-date' => '$1. Mai',
+'june-date' => '$1. Juni',
+'july-date' => '$1. Juli',
+'august-date' => '$1. August',
+'september-date' => '$1. September',
+'october-date' => '$1. Oktober',
+'november-date' => '$1. November',
+'december-date' => '$1. Dezember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorie|Kategorien}}',
'category-file-count' => '{{PLURAL:$2|Diese Kategorie enthält folgende Datei:|{{PLURAL:$1|Folgende Datei ist eine von insgesamt $2 Dateien in dieser Kategorie:|Es werden $1 von insgesamt $2 Dateien in dieser Kategorie angezeigt:}}}}',
'category-file-count-limited' => 'Folgende {{PLURAL:$1|Datei ist|$1 Dateien sind}} in dieser Kategorie enthalten:',
'listingcontinuesabbrev' => '(Fortsetzung)',
-'index-category' => 'Indizierte Seiten',
-'noindex-category' => 'Nichtindizierte Seiten',
+'index-category' => 'Indexierte Seiten',
+'noindex-category' => 'Nichtindexierte Seiten',
'broken-file-category' => 'Seiten mit defekten Dateilinks',
'about' => 'Über',
'go' => 'Ausführen',
'searcharticle' => 'Seite',
'history' => 'Versionen',
-'history_short' => 'Versionen/Autoren',
+'history_short' => 'Versionsgeschichte',
'updatedmarker' => 'Änderung seit meinem letzten Besuch',
'printableversion' => 'Druckversion',
'permalink' => 'Permanenter Link',
'create-this-page' => 'Seite erstellen',
'delete' => 'Löschen',
'deletethispage' => 'Diese Seite löschen',
+'undeletethispage' => 'Diese Seite wiederherstellen',
'undelete_short' => '{{PLURAL:$1|1 Version|$1 Versionen}} wiederherstellen',
'viewdeleted_short' => '{{PLURAL:$1|Eine gelöschte Version|$1 gelöschte Versionen}} ansehen',
'protect' => 'Schützen',
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Bearbeitungshilfe',
-'edithelppage' => 'Help:Bearbeiten',
'helppage' => 'Help:Inhaltsverzeichnis',
'mainpage' => 'Hauptseite',
'mainpage-description' => 'Hauptseite',
'namespaceprotected' => "Du hast nicht die erforderliche Berechtigung, um Seiten im Namensraum '''$1''' bearbeiten zu können.",
'customcssprotected' => 'Du hast nicht die Berechtigung, diese CSS enthaltende Seite zu bearbeiten, da sie die persönlichen Einstellungen eines anderen Benutzers enthält.',
'customjsprotected' => 'Du hast nicht die Berechtigung, diese JavaScript enthaltende Seite zu bearbeiten, da es sich hierbei um die persönlichen Einstellungen eines anderen Benutzers handelt.',
+'mycustomcssprotected' => 'Du hast keine Berechtigung, diese CSS-Seite zu bearbeiten.',
+'mycustomjsprotected' => 'Du hast keine Berechtigung, diese JavaScript-Seite zu bearbeiten.',
'ns-specialprotected' => 'Spezialseiten können nicht bearbeitet werden.',
'titleprotected' => "Eine Seite mit diesem Namen kann nicht angelegt werden.
Die Sperre wurde durch [[User:$1|$1]] mit der Begründung ''„$2“'' eingerichtet.",
'notloggedin' => 'Nicht angemeldet',
'userlogin-noaccount' => 'Du hast noch kein Benutzerkonto?',
'userlogin-joinproject' => '{{SITENAME}} beitreten',
-'nologin' => "Du hast kein Benutzerkonto? '''$1'''.",
+'nologin' => 'Du hast kein Benutzerkonto? $1.',
'nologinlink' => 'Neues Benutzerkonto anlegen',
'createaccount' => 'Benutzerkonto anlegen',
'gotaccount' => "Du hast bereits ein Benutzerkonto? '''$1'''.",
'createacct-realname' => 'Bürgerlicher Name (optional)',
'createaccountreason' => 'Grund:',
'createacct-reason' => 'Begründung',
-'createacct-reason-ph' => 'Warum du ein anderes Benutzerkonto erstellst',
+'createacct-reason-ph' => 'Warum erstellst du ein anderes Benutzerkonto?',
'createacct-captcha' => 'Sicherheitsprüfung',
'createacct-imgcaptcha-ph' => 'Gib den Text ein, den du oben siehst.',
'createacct-submit' => 'Dein Benutzerkonto erstellen',
'cannotchangeemail' => 'E-Mail-Adressen können in diesem Wiki nicht geändert werden.',
'emaildisabled' => 'Über diese Website können keine E-Mails versandt werden.',
'accountcreated' => 'Benutzerkonto erstellt',
-'accountcreatedtext' => 'Das Benutzerkonto $1 wurde eingerichtet.',
+'accountcreatedtext' => 'Das Benutzerkonto für [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|Diskussion]]) wurde eingerichtet.',
'createaccount-title' => 'Erstellung eines Benutzerkontos für {{SITENAME}}',
'createaccount-text' => 'Es wurde für dich ein Benutzerkonto „$2“ auf {{SITENAME}} ($4) erstellt. Das automatisch generierte Passwort für „$2“ ist „$3“. Du solltest dich nun anmelden und das Passwort ändern.
# Special:PasswordReset
'passwordreset' => 'Passwort zurücksetzen',
-'passwordreset-text' => 'Bitte dieses Formular ausfüllen, um dein Passwort zurückzusetzen.',
+'passwordreset-text-one' => 'Fülle dieses Formular aus, um dein Passwort zurückzusetzen.',
+'passwordreset-text-many' => '{{PLURAL:$1|Gib eines der Daten ein, um dein Passwort zurückzusetzen.}}',
'passwordreset-legend' => 'Passwort zurücksetzen',
'passwordreset-disabled' => 'Das Zurücksetzen von Passwörtern wurde in diesem Wiki deaktiviert.',
'passwordreset-emaildisabled' => 'Die E-Mail-Funktionen wurden auf diesem Wiki deaktiviert.',
-'passwordreset-pretext' => '{{PLURAL:$1||Gib eines der folgenden Daten ein.}}',
'passwordreset-username' => 'Benutzername:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Die E-Mail-Nachricht ansehen?',
Das Passwort für dieses neue Benutzerkonto kann auf der Spezialseite „[[Special:ChangePassword|Passwort ändern]]“ geändert werden.',
'newarticle' => '(Neu)',
'newarticletext' => "Du bist einem Link zu einer Seite gefolgt, die nicht vorhanden ist.
-Um diese Seite anzulegen, trage deinen Text in das untenstehende Bearbeitungsfeld ein (siehe die [[{{MediaWiki:Helppage}}|Hilfeseite]] für weitere Informationen).
+Um diese Seite anzulegen, trage deinen Text in das untenstehende Bearbeitungsfeld ein (weitere Informationen auf der [[{{MediaWiki:Helppage}}|Hilfeseite]]).
Sofern du fälschlicherweise hier bist, klicke auf die Schaltfläche '''Zurück''' deines Browsers.",
'anontalkpagetext' => "----''Diese Seite dient dazu, einem nicht angemeldeten Benutzer Nachrichten zu hinterlassen. Es wird seine IP-Adresse zur Identifizierung verwendet. IP-Adressen können von mehreren Benutzern gemeinsam verwendet werden. Wenn du mit den Kommentaren auf dieser Seite nichts anfangen kannst, richten sie sich vermutlich an einen früheren Inhaber deiner IP-Adresse und du kannst sie ignorieren. Du kannst dir auch ein [[Special:UserLogin/signup|Benutzerkonto erstellen]] oder dich [[Special:UserLogin|anmelden]], um künftig Verwechslungen mit anderen anonymen Benutzern zu vermeiden.''",
'noarticletext' => 'Diese Seite enthält momentan noch keinen Text.
'userjsyoucanpreview' => "'''Tipp:''' Benutze den „{{int:showpreview}}“-Button, um dein neues JavaScript vor dem Speichern zu testen.",
'usercsspreview' => "'''Beachte, dass du nur eine Vorschau deines Benutzer-CSS betrachtest.'''
'''Es wurde noch nicht gespeichert!'''",
-'userjspreview' => "'''Beachte, dass du nur eine Vorschau deines Benutzer-JavaScript betrachtest.'''
+'userjspreview' => "'''Beachte, dass du nur eine Vorschau deines Benutzer-JavaScripts betrachtest.'''
'''Es wurde noch nicht gespeichert!'''",
'sitecsspreview' => "'''Beachte, dass du nur eine Vorschau dieses CSS betrachtest.'''
'''Es wurde noch nicht gespeichert!'''",
'''Nur''' der Inhalt des oberen Textfeldes wird gespeichert, wenn du auf „{{int:savearticle}}“ klickst.",
'yourtext' => 'Dein Text',
'storedversion' => 'Gespeicherte Version',
-'nonunicodebrowser' => "'''Achtung:''' Dein Browser kann Unicode-Zeichen nicht richtig verarbeiten. Bitte verwende einen anderen Browser um Seiten zu bearbeiten.",
+'nonunicodebrowser' => "'''Achtung: Dein Browser kann Unicode-Zeichen nicht richtig verarbeiten.''' Es wird eine Hilfsroutine eingesetzt, um dir zu erlauben, Seiten sicher zu bearbeiten: Nicht-ASCII-Zeichen werden dabei im Bearbeitungsfenster als hexadezimale Codes angezeigt.",
'editingold' => "'''Achtung: Du bearbeitest eine alte Version dieser Seite. Sofern du sie speicherst, werden alle neueren Versionen überschrieben.'''",
'yourdiff' => 'Unterschiede',
'copyrightwarning' => "'''Bitte kopiere keine Webseiten, die nicht deine eigenen sind, benutze keine urheberrechtlich geschützten Werke ohne Erlaubnis des Urhebers!'''<br />
Reiche hier keine Texte ein, falls du nicht willst, dass diese ohne Einschränkung geändert werden können.
Du bestätigst hiermit auch, dass du diese Texte selbst geschrieben hast oder diese von einer gemeinfreien Quelle kopiert hast
-(siehe $1 für weitere Einzelheiten). '''ÜBERTRAGE OHNE GENEHMIGUNG KEINE URHEBERRECHTLICH GESCHÜTZTEN INHALTE!'''",
+(weitere Einzelheiten unter $1). '''ÜBERTRAGE OHNE GENEHMIGUNG KEINE URHEBERRECHTLICH GESCHÜTZTEN INHALTE!'''",
'longpageerror' => "'''Fehler: Der Text, den du zu speichern versuchst, ist {{PLURAL:$1|ein Kilobyte|$1 Kilobyte}} groß. Dies ist größer als das erlaubte Maximum von {{PLURAL:$2|ein Kilobyte|$2 Kilobyte}}.'''
Er kann nicht gespeichert werden.",
'readonlywarning' => "'''Achtung: Die Datenbank wurde für Wartungsarbeiten gesperrt, so dass deine Änderungen derzeit nicht gespeichert werden können.
Sie wurde anscheinend gelöscht.',
'edit-conflict' => 'Bearbeitungskonflikt.',
'edit-no-change' => 'Deine Bearbeitung wurde ignoriert, da keine Änderung an dem Text vorgenommen wurde.',
+'postedit-confirmation' => 'Deine Bearbeitung wurde gespeichert.',
'edit-already-exists' => 'Die neue Seite konnte nicht erstellt werden, da sie bereits vorhanden ist.',
'defaultmessagetext' => 'Standardtext',
'content-failed-to-parse' => 'Parsen des Inhalts $2 für Modell $1 fehlgeschlagen: $3',
'invalid-content-data' => 'Ungültige Inhaltsdaten',
'content-not-allowed-here' => 'Der Inhalt „$1“ ist auf der Seite [[$2]] nicht erlaubt',
'editwarning-warning' => 'Das Verlassen dieser Seite kann dazu führen, dass deine Änderungen verloren gehen.
-Wenn du angemeldet bist, kannst du das Anzeigen dieser Warnung im „{{int:prefs-editing}}“-Bereich deiner Einstellungen abschalten.',
+Wenn du angemeldet bist, kannst du das Anzeigen dieser Warnung im Bereich „Bearbeiten“ deiner Einstellungen abschalten.',
# Content models
'content-model-wikitext' => 'Wikitext',
# Search results
'searchresults' => 'Suchergebnisse',
'searchresults-title' => 'Suchergebnisse für „$1“',
-'searchresulttext' => 'Für mehr Informationen zur Suche siehe die [[{{MediaWiki:Helppage}}|Hilfeseite]].',
-'searchsubtitle' => 'Deine Suchanfrage: „[[:$1]]“ ([[Special:Prefixindex/$1|alle mit „$1“ beginnenden Seiten]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|alle Seiten, die nach „$1“ verlinken]])',
+'searchresulttext' => 'Mehr Informationen zur Suche sind auf der [[{{MediaWiki:Helppage}}|Hilfeseite]] zu finden.',
+'searchsubtitle' => 'Du hast nach „[[:$1]]“ gesucht ([[Special:Prefixindex/$1|alle mit „$1“ beginnenden Seiten]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|alle Seiten, die nach „$1“ verlinken]])',
'searchsubtitleinvalid' => 'Deine Suchanfrage: „$1“.',
'toomanymatches' => 'Die Anzahl der Suchergebnisse ist zu groß, bitte versuche eine andere Abfrage.',
'titlematches' => 'Übereinstimmungen mit Seitentiteln',
'searchmenu-legend' => 'Suchoptionen',
'searchmenu-exists' => "'''Es gibt eine Seite, die den Namen „[[:$1]]“ hat.'''",
'searchmenu-new' => "'''Erstelle die Seite „[[:$1]]“ in diesem Wiki.'''",
-'searchhelp-url' => 'Help:Hilfe',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Zeige alle Seiten, die mit dem Suchbegriff anfangen]]',
'searchprofile-articles' => 'Inhaltsseiten',
'searchprofile-project' => 'Hilfe- und Projektseiten',
'showingresultsnum' => "Hier {{PLURAL:$3|ist '''1''' Ergebnis|sind '''$3''' Ergebnisse}}, beginnend mit Nummer '''$2.'''",
'showingresultsheader' => "{{PLURAL:$5|Ergebnis '''$1''' von '''$3'''|Ergebnisse '''$1–$2''' von '''$3'''}} für '''$4'''",
'nonefound' => "'''Hinweis:''' Es werden standardmäßig nur einige Namensräume durchsucht. Setze ''all:'' vor deinen Suchbegriff, um alle Seiten (inkl. Diskussionsseiten, Vorlagen usw.) zu durchsuchen oder gezielt den Namen des zu durchsuchenden Namensraumes.",
-'search-nonefound' => 'Für deine Suchanfrage wurden keine Ergebnisse gefunden.',
+'search-nonefound' => 'Zu deiner Suchanfrage wurden keine Ergebnisse gefunden.',
'powersearch' => 'Erweiterte Suche',
'powersearch-legend' => 'Erweiterte Suche',
'powersearch-ns' => 'Suche in Namensräumen:',
'userrights-changeable-col' => 'Gruppenzugehörigkeit, die du ändern kannst',
'userrights-unchangeable-col' => 'Gruppenzugehörigkeit, die du nicht ändern kannst',
'userrights-conflict' => 'Benutzerrechtekonflikt! Bitte führe deine Änderungen erneut durch.',
+'userrights-removed-self' => 'Du hast deine eigenen Rechte erfolgreich entfernt. Du kannst nicht länger auf diese Seite zugreifen.',
# Groups
'group' => 'Gruppe:',
'right-editusercssjs' => 'Fremde CSS- und JavaScript-Dateien bearbeiten',
'right-editusercss' => 'Fremde CSS-Dateien bearbeiten',
'right-edituserjs' => 'Fremde JavaScript-Dateien bearbeiten',
+'right-editmyusercss' => 'Eigene Benutzer-CSS-Dateien bearbeiten',
+'right-editmyuserjs' => 'Eigene Benutzer-JavaScript-Dateien bearbeiten',
+'right-viewmywatchlist' => 'Eigene Beobachtungsliste ansehen',
+'right-editmywatchlist' => 'Eigene Beobachtungsliste bearbeiten. Einige Aktionen ermöglichen das Hinzufügen von Seiten ohne dieses Recht.',
'right-rollback' => 'Schnelles Zurücksetzen',
'right-markbotedits' => 'Schnell zurückgesetzte Bearbeitungen als Bot-Bearbeitung markieren',
'right-noratelimit' => 'Keine Beschränkung durch Limits',
'action-userrights-interwiki' => 'die Rechte von Benutzern in anderen Wikis zu ändern',
'action-siteadmin' => 'die Datenbank zu sperren oder freizugeben',
'action-sendemail' => 'E-Mails zu senden',
+'action-editmywatchlist' => 'deine Beobachtungsliste zu bearbeiten',
+'action-viewmywatchlist' => 'deine Beobachtungsliste anzusehen',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|Änderung|Änderungen}}',
'reuploaddesc' => 'Abbrechen und zurück zur Hochladen-Seite',
'upload-tryagain' => 'Geänderte Dateibeschreibung abschicken',
'uploadnologin' => 'Nicht angemeldet',
-'uploadnologintext' => 'Du musst [[Special:UserLogin|angemeldet sein]], um Dateien hochladen zu können.',
+'uploadnologintext' => 'Du musst dich $1, um Dateien hochladen zu können.',
'upload_directory_missing' => 'Das Upload-Verzeichnis ($1) fehlt und konnte durch den Webserver auch nicht erstellt werden.',
'upload_directory_read_only' => 'Der Webserver hat keine Schreibrechte für das Upload-Verzeichnis ($1).',
'uploaderror' => 'Fehler beim Hochladen',
'upload-proto-error-text' => 'Die URL muss mit <code>http://</code> oder <code>ftp://</code> beginnen.',
'upload-file-error' => 'Interner Fehler',
'upload-file-error-text' => 'Bei der Erstellung einer temporären Datei auf dem Server ist ein interner Fehler aufgetreten.
-Bitte informiere einen [[Special:ListUsers/sysop|System-Administrator]].',
+Bitte informiere einen [[Special:ListUsers/sysop|Administrator]].',
'upload-misc-error' => 'Unbekannter Fehler beim Hochladen',
'upload-misc-error-text' => 'Beim Hochladen ist ein unbekannter Fehler aufgetreten.
Prüfe die URL auf Fehler, den Online-Status der Seite und versuche es erneut.
-Wenn das Problem weiter besteht, informiere einen [[Special:ListUsers/sysop|System-Administrator]].',
+Wenn das Problem weiter besteht, informiere einen [[Special:ListUsers/sysop|Administrator]].',
'upload-too-many-redirects' => 'Die URL beinhaltete zu viele Weiterleitungen',
'upload-unknown-size' => 'Unbekannte Größe',
'upload-http-error' => 'Ein HTTP-Fehler ist aufgetreten: $1',
'img-auth-nopathinfo' => 'Die Angabe PATH_INFO fehlt.
Der Server ist nicht dafür eingerichtet, diese Information weiterzugeben.
Sie könnte CGI-gestützt sein und kann daher „img_auth“ (Authentifizierung des Dateiaufrufs) nicht unterstützen.
-Siehe hierzu die Seite https://www.mediawiki.org/wiki/Manual:Image_Authorization (englisch) für weitere Informationen.',
+Siehe auch https://www.mediawiki.org/wiki/Manual:Image_Authorization (englisch).',
'img-auth-notindir' => 'Der gewünschte Pfad ist nicht im konfigurierten Uploadverzeichnis.',
'img-auth-badtitle' => 'Aus „$1“ kann kein gültiger Titel erstellt werden.',
'img-auth-nologinnWL' => 'Du bist nicht angemeldet und „$1“ ist nicht in der weißen Liste.',
'notvisiblerev' => 'Version wurde gelöscht',
'watchnochange' => 'Keine der von dir beobachteten Seiten wurde während des angezeigten Zeitraums bearbeitet.',
'watchlist-details' => 'Du beobachtest {{PLURAL:$1|eine Seite|$1 Seiten}}, ohne dass Diskussionsseiten gezählt werden.',
-'wlheader-enotif' => '* Der E-Mail-Benachrichtigungsdienst ist aktiviert.',
-'wlheader-showupdated' => "* Seiten mit noch nicht gesehenen Änderungen werden '''fett''' dargestellt.",
+'wlheader-enotif' => 'Der E-Mail-Benachrichtigungsdienst ist aktiviert.',
+'wlheader-showupdated' => "Seiten mit noch nicht gesehenen Änderungen werden '''fett''' dargestellt.",
'watchmethod-recent' => 'Überprüfen der letzten Bearbeitungen für die Beobachtungsliste',
'watchmethod-list' => 'Überprüfen der Beobachtungsliste nach letzten Bearbeitungen',
'watchlistcontains' => 'Deine Beobachtungsliste enthält $1 {{PLURAL:$1|Seite|Seiten}}.',
'exportall' => 'Alle Seiten exportieren',
'exportcuronly' => 'Nur die aktuelle Version der Seite exportieren',
'exportnohistory' => "----
-'''Hinweis:''' Der Export kompletter Versionsgeschichten ist aus Performancegründen bis auf weiteres nicht möglich.",
+'''Hinweis:''' Der Export kompletter Versionsgeschichten ist aus Gründen der Systemleistung bis auf Weiteres nicht möglich.",
'exportlistauthors' => 'Für jede Seite die jeweils vollständige Liste der Bearbeiter einbeziehen',
'export-submit' => 'Seiten exportieren',
'export-addcattext' => 'Seiten aus folgender Kategorie hinzufügen:',
'thumbnail-more' => 'vergrößern',
'filemissing' => 'Datei fehlt',
'thumbnail_error' => 'Fehler beim Erstellen des Vorschaubildes: $1',
+'thumbnail_error_remote' => 'Fehlermeldung von $1:
+$2',
'djvu_page_error' => 'DjVu-Seite außerhalb des Seitenbereichs',
'djvu_no_xml' => 'XML-Daten können für die DjVu-Datei nicht abgerufen werden',
'thumbnail-temp-create' => 'Die Datei für die temporäre Miniaturansicht konnte nicht erstellt werden',
'modern.css' => '/* Das folgende CSS wird für Benutzer der Modern-Benutzeroberfläche geladen. Für allgemeingültige Benutzeroberflächen-Anpassungen bitte MediaWiki:Common.css bearbeiten. */',
'vector.css' => '/* Das folgende CSS wird für Benutzer der Vector-Benutzeroberfläche geladen. Für allgemeingültige Benutzeroberflächen-Anpassungen bitte [[MediaWiki:Common.css]] bearbeiten. */',
'print.css' => '/* Das folgende CSS wird in der Druckausgabe geladen. */',
-'handheld.css' => '/* Das folgende CSS wird für Handheld-Geräte, basierend auf der in $wgHandheldStyle konfigurierten Benutzeroberfläche, 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-bot.css' => '/* CSS an dieser Stelle wirkt sich nur auf Bots aus */',
# Scripts
'common.js' => '/* Das folgende JavaScript wird für alle Benutzer geladen. */',
'cologneblue.js' => '/* Das folgende JavaScript wird für Benutzer der Kölnisch-Blau-Benutzeroberfläche geladen. Allgemeingültiges JavaScript bitte in [[MediaWiki:Common.js]] eintragen. */',
-'monobook.js' => '/* Das folgende JavaScript wird für Benutzer der MonoBook-Benutzeroberfläche geladen */',
+'monobook.js' => '/* Das folgende JavaScript wird für Benutzer der Monobook-Benutzeroberfläche 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. */',
# External editor support
'edit-externally' => 'Diese Datei mit einem externen Programm bearbeiten',
-'edit-externally-help' => '(Siehe die [//www.mediawiki.org/wiki/Manual:External_editors Installationsanweisungen] für weitere Informationen)',
+'edit-externally-help' => '(weitere Informationen in den [//www.mediawiki.org/wiki/Manual:External_editors Installationsanweisungen])',
# 'all' in various places, this might be different for inflected languages
'watchlistall2' => 'alle',
'logentry-newusers-newusers' => 'Benutzerkonto $1 wurde {{GENDER:$2|erstellt}}',
'logentry-newusers-create' => 'Benutzerkonto $1 wurde {{GENDER:$2|erstellt}}',
'logentry-newusers-create2' => 'Benutzerkonto $3 wurde von $1 {{GENDER:$2|erstellt}}',
-'logentry-newusers-byemail' => 'Das Benutzerkonto $3 wurde von $1 {{GENDER:$2|erstellt}} und das Passwort wurde per E-Mail zugesandt',
+'logentry-newusers-byemail' => 'Benutzerkonto $3 wurde von $1 {{GENDER:$2|erstellt}} und das Passwort wurde per E-Mail zugesandt',
'logentry-newusers-autocreate' => 'Benutzerkonto $1 wurde automatisch {{GENDER:$2|erstellt}}',
'logentry-rights-rights' => '$1 {{GENDER:$2|änderte}} die Gruppenzugehörigkeit für $3 von $4 zu $5',
'logentry-rights-rights-legacy' => '$1 {{GENDER:$2|änderte}} die Gruppenzugehörigkeit für $3',
* @author Kaganer
* @author Mirzali
* @author Nemo bis
+ * @author Neribij
* @author Olvörg
* @author Reedy
* @author Sahim
$namespaceNames = array(
NS_MEDIA => 'Medya',
NS_SPECIAL => 'Xısusi',
- NS_TALK => 'Werênayış',
+ NS_TALK => 'Mesac',
NS_USER => 'Karber',
- NS_USER_TALK => 'Karber_werênayış',
- NS_PROJECT_TALK => '$1_werênayış',
+ NS_USER_TALK => 'Karber_mesac',
+ NS_PROJECT_TALK => '$1_mesac',
NS_FILE => 'Dosya',
- NS_FILE_TALK => 'Dosya_werênayış',
+ NS_FILE_TALK => 'Dosya_mesac',
NS_MEDIAWIKI => 'MediaWiki',
- NS_MEDIAWIKI_TALK => 'MediaWiki_werênayış',
+ NS_MEDIAWIKI_TALK => 'MediaWiki_mesac',
NS_TEMPLATE => 'Şablon',
- NS_TEMPLATE_TALK => 'Şablon_werênayış',
+ NS_TEMPLATE_TALK => 'Şablon_mesac',
NS_HELP => 'Peşti',
- NS_HELP_TALK => 'Peşti_werênayış',
+ NS_HELP_TALK => 'Peşti_mesac',
NS_CATEGORY => 'Kategoriye',
- NS_CATEGORY_TALK => 'Kategoriye_werênayış',
+ NS_CATEGORY_TALK => 'Kategoriye_mesac',
);
$namespaceAliases = array(
- 'Karber_mesac' => NS_USER_TALK,
- 'Desteg' => NS_HELP,
- 'Desteg_werênayış' => NS_HELP_TALK,
- 'Kategori' => NS_CATEGORY,
- 'Kategori_werênayış' => NS_CATEGORY_TALK,
+ 'Werênayış' => NS_TALK,
+ 'Karber_werênayış' => NS_USER_TALK,
+ '$1_werênayış' => NS_PROJECT_TALK,
+ 'Dosya_werênayış' => NS_FILE_TALK,
+ 'MediaWiki_werênayış' => NS_MEDIAWIKI_TALK,
+ 'Şablon_werênayış' => NS_TEMPLATE_TALK,
+ 'Desteg' => NS_HELP,
+ 'Desteg_werênayış' => NS_HELP_TALK,
+ 'Peşti_werênayış' => NS_HELP_TALK,
+ 'Kategori' => NS_CATEGORY,
+ 'Kategori_werênayış' => NS_CATEGORY_TALK,
+ 'Kategoriye_werênayış' => NS_CATEGORY_TALK,
);
$specialPageAliases = array(
'oct' => 'Tşv',
'nov' => 'Tşp',
'dec' => 'Kan',
+'january-date' => 'Çele $1',
+'february-date' => 'Şıbate $1',
+'march-date' => 'Adar $1',
+'april-date' => 'Nisane $1',
+'may-date' => 'Gulane $1',
+'june-date' => 'Hezirane $1',
+'july-date' => 'Temuze $1',
+'august-date' => 'Tebaxe $1',
+'september-date' => 'Keşkelun $1',
+'december-date' => 'Kanun $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategoriye|Kategoriy}}',
'category-empty' => "''Ena kategoriye de hewna qet nuştey ya zi medya çıniyê.''",
'hidden-categories' => '{{PLURAL:$1|Kategoriya nımıtiye|Kategoriyê nımıtey}}',
'hidden-category-category' => 'Kategoriyê nımıtey',
-'category-subcat-count' => '{{PLURAL:$2|Na kategoriya de tenya ena kategoriya bınêne esta.|Na kategoriye de {{PLURAL:$1|ena kategoriye esta|$1 enê kategoriy estê}}, be $2 ra pêro piya.}}',
+'category-subcat-count' => '{{PLURAL:$2|Na kategoriya de $1 bınkategoriyay estê.|$2 kategoriyan ra $1 bınkategoriyay asenê.}}',
'category-subcat-count-limited' => 'Na kategoriye de {{PLURAL:$1|ena kategoriya bınêne esta|enê $1 kategoriyê bınêni estê}}.',
'category-article-count' => '{{PLURAL:$2|Na kategoriye de teyna ena pele esta.|Na kategoriye de $2 ra pêro pia, {{PLURAL:$1|ena pele esta|enê $1 peli estê.}}, be $2 ra pêro pia}}',
'category-article-count-limited' => '{{PLURAL:$1|Pela cêrêne|$1 Pelê cêrêni}} na kategoriye derê.',
'create-this-page' => 'Na pele bınuse',
'delete' => 'Bestere',
'deletethispage' => 'Ena perer besternê',
+'undeletethispage' => 'Na perer mebesterne',
'undelete_short' => '{{PLURAL:$1|Yew vurnayışi|$1 Vurnayışan}} mestere',
'viewdeleted_short' => '{{PLURAL:$1|Yew vurnayışo esterıte|$1 Vurnayışanê esterıtan}} bımocne',
'protect' => 'Bıpawe',
'disclaimers' => 'Redê mesuliyeti',
'disclaimerpage' => 'Project:Reddê mesuliyetê bıngey',
'edithelp' => 'Peştdariya vurnayışi',
-'edithelppage' => 'Help:Vurnayış',
'helppage' => 'Help:Estêni',
-'mainpage' => 'Pera Seri',
+'mainpage' => 'Pela Seri',
'mainpage-description' => 'Pela Seri',
'policy-url' => 'Project:Terzê hereketi',
'portal' => 'Portalê cemaeti',
'collapsible-expand' => 'Hera ke',
'thisisdeleted' => 'Bıvêne ya zi $1 peyser bia?',
'viewdeleted' => '$1 bıvêne?',
-'restorelink' => '{{PLURAL:$1|yew vurnayışo esterıte|$1 vurnayışê esterıtey}}',
+'restorelink' => '{{PLURAL:$1|jew vurnayış besteriya|$1 vurnayışi besteriyaye}}',
'feedlinks' => 'Warikerdış:',
'feed-invalid' => 'Qeydey cıresnayışê beğşi nêvêreno.',
'feed-unavailable' => 'Cıresnayışê şebekey çıniyê',
'namespaceprotected' => "No '''$1''' ca de icazetê şıma çino şıma pel rêz keri.",
'customcssprotected' => 'Mısadeyê şıma çıniyo ke na pela CSSi bıvurnên, çıke na pela xısusiye eyaranê karberan muhtewa kena.',
'customjsprotected' => 'Mısadeyê şıma çıniyo ke na pela Java Scripti bıvurnên, çıke na pela xısusiye eyaranê karberan muhtewa kena.',
+'mycustomcssprotected' => "Na pera CSS'i re tenya idarekari şene bıvurne",
+'mycustomjsprotected' => "Na pera JavaScript'i re tenya idarekari şene bıvurne",
'ns-specialprotected' => 'Pelê xısusiy nênê vurnayış.',
'titleprotected' => 'Eno [[User:$1|$1]] zerreyê ena peli nişeno vuriye.
Sebeb: "\'\'$2\'\'".',
'createacct-captcha' => 'Qontrolê asayişi',
'createacct-imgcaptcha-ph' => 'Nuşteyo ke cor aseno ey cı ke',
'createacct-submit' => 'Hesabê xo vıraze',
+'createacct-benefit-heading' => '{{SITENAME}} meş de merduman şi',
'createacct-benefit-body1' => '{{PLURAL:$1|vurnayış|vurnayışi}}',
'createacct-benefit-body2' => '{{PLURAL:$1|pele|peli}}',
'createacct-benefit-body3' => '{{PLURAL:$1|iştıraqkerdoğo nıkayên|iştıraqkerdoğê nıkayêni}}',
'cannotchangeemail' => 'E-postay hesabi ena wiki sera nêvurneyêno.',
'emaildisabled' => 'Na site ra e-posta nêrışêno.',
'accountcreated' => 'Hesab vıraciya',
-'accountcreatedtext' => 'Qandê $1 hesabê karberi vıraziyayo.',
+'accountcreatedtext' => 'Qandê [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) hesabê karberi vıraziyayo.',
'createaccount-title' => 'Qey {{SITENAME}} newe yew heab vıraştış',
'createaccount-text' => 'Kesê, be e-posteyê şıma ra {{SITENAME}} ($4) de, ebe nameyê "$2" u parola "$3" ra yew hesab vıraşto.
Şıma gani cı kewê u parola xo nıka bıvurnê.',
'resetpass-wrong-oldpass' => 'parolayo parola maqbul niyo.
şıma ya parolaye xo vurnayo ya zi parolayo muwaqqat waşto.',
'resetpass-temp-password' => 'parolayo muweqet:',
+'resetpass-abort-generic' => 'Parola vurnayış jew derganey ra tepya ibtal biyo',
# Special:PasswordReset
'passwordreset' => 'Parola reset ke',
-'passwordreset-text' => 'Seba eyarkerdışê parolaya xo ra nê formi pır kerê.',
+'passwordreset-text-one' => 'Na form de parola reset kerdış temamiye',
'passwordreset-legend' => 'Parola reset ke',
'passwordreset-disabled' => 'Parola reset kerdış ena viki sera qefılneyayo.',
-'passwordreset-pretext' => '{{PLURAL:$1||Enê cerenan ra jeweri defiye de}}',
'passwordreset-username' => 'Nameyê karberi:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'neticey e-postay bımocne?',
Hewna kerde aseno.',
'edit-conflict' => 'Vurnayişê pêverdiyaye .',
'edit-no-change' => 'Vurnayişê şıma qebul nêbı, çunke nuşte de yew vurnayiş n3evıraziya.',
+'postedit-confirmation' => 'Vurnayış qeyd be',
'edit-already-exists' => 'Pelo newe nêvıraziyeno.
Pel ca ra esto.',
'defaultmessagetext' => 'Hesıbyaye metne mesaci',
'searchmenu-legend' => 'bıgeyre tercihan (sae bıke)',
'searchmenu-exists' => "''Ena 'Wikipediya de ser \"[[:\$1]]\" yew pel esto'''",
'searchmenu-new' => "''Na Wiki de pelay \"[[:\$1]]\" vıraze!'''",
-'searchhelp-url' => 'Help:Tedeestey',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|pê eno prefix ser pelan de bigêre]]',
'searchprofile-articles' => 'Pelê tedeestey',
'searchprofile-project' => 'Pelê yardım u procey',
'notvisiblerev' => 'Revizyon esteriyayo',
'watchnochange' => 'pelê listeya temaşakerdışê şıma ye wextê nişane biyaye de rocane nêbiyo.',
'watchlist-details' => '{{PLURAL:$1|$1 pele|$1 peleyan}} listeyê seyr-kerdışi şıma dı, peleyanê vurnayışi dahil niyo.',
-'wlheader-enotif' => 'pê * E-mail xeber dayiş biyo a.',
-'wlheader-showupdated' => "* ziyaretê şıma ye peyini de vuryayişê peli pê '''nuşteyo qalıni''' mocyayo.",
+'wlheader-enotif' => 'E-mail xeber dayiş abiyo.',
+'wlheader-showupdated' => "ziyaretê şıma ye peyini de vuryayişê peli pê '''nuşteyo qalıni''' mocyayo.",
'watchmethod-recent' => 'pel ê ke şıma temaşa kenî vuryayişê peyinê ey konrol beno',
'watchmethod-list' => 'pel ê ke şıma temaşa kenî vuryayişê peyinê ey konrol beno',
'watchlistcontains' => 'listeya seyrkerdışê şıma de $1 tene {{PLURAL:$1|peli|peli}} estî.',
'enotif_impersonal_salutation' => '{{SITENAME}} karber',
'enotif_subject_deleted' => '{{SITENAME}} de pera $1 {{gender:$2|$2}} esterıt.',
'enotif_subject_created' => '{{SITENAME}} de pera $1 {{gender:$2|$2}} vıraşt',
-'enotif_subject_moved' => '{{SITENAME}} de pera $1 {{gender:$2|$2}} berde',
+'enotif_subject_moved' => '{{SITENAME}} de pera $1 {{gender:$2|$2}} berd',
'enotif_subject_restored' => '{{SITENAME}} de pera $1 {{gender:$2|$2}} timar ke',
'enotif_subject_changed' => '{{SITENAME}} de pera $1 {{gender:$2|$2}} vurne',
'enotif_body_intro_deleted' => 'Pela {{SITENAME}} terefê $1, $2 ra roca $PAGEEDITDATE de {{GENDER:$2|esteriye}}, bıvênên: $3.',
# Delete
'deletepage' => 'Pele bestere',
'confirm' => 'Testiq ke',
-'excontent' => "behso kêm: '$1'",
-'excontentauthor' => "behso kêm: '$1' no/na ('[[Special:Contributions/$2|$2]]' teyna iştıraq kerdo)",
+'excontent' => "Zerrey cı: '$1'",
+'excontentauthor' => "Zerrey cı: '$1' no/na ('[[Special:Contributions/$2|$2]]' teyna iştıraq kerdo)",
'exbeforeblank' => "behsê verê esteriyayişi: '$1'",
'exblank' => 'zerreyê peli vengo',
'delete-confirm' => '"$1" bestere',
" no [[:$1]]" name de yew pel ca ra esto. şıma wazeni pê hewn a kerdışê ey peli vurnayişê nameyi bıkeri?',
'delete_and_move_confirm' => 'Eya, na pele bestere',
-'delete_and_move_reason' => '"[[$1]]" qey vurnayişê nameyi esteriya',
+'delete_and_move_reason' => '"[[$1]]" qande nami re ca akerdışi re besteriyaye',
'selfmove' => 'name yo ke şıma wazeni bıbo, ın name û name yo ke ca ra esto eyni yê /zepê yê. vurnayiş mumkin niyo.',
'immobile-source-namespace' => '"$1" pelê cayi de nameyi nêkırışyenî',
'immobile-target-namespace' => 'peli nêkırışiyeni "$1" cayê nameyan',
'confirmemail_needlogin' => ' $1 lazimo ke ti adresê emaîl ê xo konfirme bike.',
'confirmemail_success' => 'Email adresê tu konfirme biy.
Ti eşkeno [[Special:UserLogin|ci kewt]].',
-'confirmemail_loggedin' => 'Eka email adresê tu konfirme biy.',
+'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,
'sqlite-no-fts' => '$1 tam-metn bê destegê cı geyrayışi',
# New logging system
-'logentry-delete-delete' => '$1 pela $3 {{GENDER:$2|esterıte}}',
+'logentry-delete-delete' => '$1 pera $3 {{GENDER:$2|besternê}}',
'logentry-delete-restore' => '$1 pela $3 {{GENDER:$2|peyser arde}}',
'logentry-delete-event' => '$1 $3: $4 de asayışê {{PLURAL:$5|cıkerdışi|cıkerdışan}} {{GENDER:$2|vurna}}',
'logentry-delete-revision' => '$1 pela $3: $4 de asayışê {{PLURAL:$5|yew revizyoni|$5 revizyonan}} {{GENDER:$2|vurna}}',
'revdelete-uname-unhid' => 'nameyê karberi nênımıteyo',
'revdelete-restricted' => 'vergırewtışê ke xızmekaran rê biye',
'revdelete-unrestricted' => 'vergırewtışê ke xızmekaran rê dariyê we',
-'logentry-move-move' => '$1 pela $3 {{GENDER:$2|berde}} $4',
+'logentry-move-move' => '$1 pela $3 {{GENDER:$2|berd}} $4',
'logentry-move-move-noredirect' => 'Hetenayışi sera pela $3 ra $1 {{GENDER:$2|berd}} pela $4',
'logentry-move-move_redir' => 'Hetenayışi sera pela $3 ra $1 {{GENDER:$2|berd}} pela $4',
'logentry-move-move_redir-noredirect' => 'Hetenayışi sera pela $3 ra $1 {{GENDER:$2|berd}} pela $4',
* @author Derbeth
* @author Dunak
* @author Dundak
+ * @author Geitost
* @author Kaganer
* @author Michawiki
* @author Murjarik
+ * @author Nemo bis
* @author Nepl1
* @author Pe7er
* @author Qualia
'disclaimers' => 'Impresum',
'disclaimerpage' => 'Project:impresum',
'edithelp' => 'Pomoc pśi wobźěłanju',
-'edithelppage' => 'Help:Pomoc pśi wobźěłanju',
'helppage' => 'Help:Pomoc',
'mainpage' => 'Głowny bok',
'mainpage-description' => 'Głowny bok',
'welcomeuser' => 'Witaj $1',
'welcomecreation-msg' => 'Twójo konto jo se załožyło. Njezabydni změniś swóje [[Special:Preferences|nastajenja za {{SITENAME}}]].',
'yourname' => 'mě wužywarja',
+'userlogin-yourname' => 'Wužywarske mě',
+'userlogin-yourname-ph' => 'Zapódaj swójo wužywarske mě',
'yourpassword' => 'šćitne gronidło:',
+'userlogin-yourpassword' => 'Gronidło',
+'userlogin-yourpassword-ph' => 'Zapódaj swójo gronidło',
+'createacct-yourpassword-ph' => 'Zapódaj gronidło',
'yourpasswordagain' => 'Šćitne gronidło hyšći raz zapódaś:',
+'createacct-yourpasswordagain' => 'Gronidło wobkšuśiś',
+'createacct-yourpasswordagain-ph' => 'Zapódaj gronidło hyšći raz',
'remembermypassword' => 'Na toś tom licadle pśizjawjony wóstaś (za maksimalnje $1 {{PLURAL:$1|źeń|dnja|dny|dnjow}})',
+'userlogin-remembermypassword' => 'Pśizjawjony wóstaś',
+'userlogin-signwithsecure' => 'Wěsty zwisk wužywaś',
'securelogin-stick-https' => 'Pó pśizjawjenju z HTTPS zwězany wóstaś',
'yourdomainname' => 'Twója domejna',
'password-change-forbidden' => 'Njamóžoš gronidła w toś tom wikiju změniś.',
'logout' => 'wótzjawiś se',
'userlogout' => 'wótzjawiś se',
'notloggedin' => 'Njepśizjawjony(a)',
-'nologin' => "Njamaš wužywarske konto? '''$1'''.",
+'userlogin-noaccount' => 'Njamaš wužywarske konto?',
+'userlogin-joinproject' => 'Konto za {{GRAMMAR:akuzatiw|{{SITENAME}}}} załožyś',
+'nologin' => 'Njamaš wužywarske konto? $1.',
'nologinlink' => 'Nowe wužywarske konto załožyś',
'createaccount' => 'Wužywarske konto załožyś',
'gotaccount' => "Maš južo wužywarske konto? '''$1'''.",
'gotaccountlink' => 'Pśizjawiś se',
'userlogin-resetlink' => 'Sy pśizjawjeńske daty zabył?',
+'userlogin-resetpassword-link' => 'Gronidło anulěrowaś',
+'helplogin-url' => 'Help:Pśizjawiś',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Pomoc za pśizjawjenje]]',
'createaccountmail' => 'Nachylne pśidatne gronidło wužywaś a jo na slědujucu e-mailowu adresu pósłaś',
'createaccountreason' => 'Pśicyna:',
'badretype' => 'Šćitnej gronidle, kótarejž sy zapódał, se njemakajotej.',
'cannotchangeemail' => 'Kontowe e-mailowe adrese njedaju se změniś na toś tom wikiju.',
'emaildisabled' => 'Toś to sedło njamóžo e-maile pósłaś.',
'accountcreated' => 'Wužywarske konto jo se wutwóriło.',
-'accountcreatedtext' => 'Wužywarske konto $1 jo se wutwóriło.',
+'accountcreatedtext' => 'Wužywarske konto [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|diskusiju]]) jo se załožyło.',
'createaccount-title' => 'Wužywarske konto za {{SITENAME}} nawarjone',
'createaccount-text' => 'Něchten jo konto za twóje e-mailowu adresu na {{GRAMMAR:lokatiw|{{SITENAME}}}} ($4) z mjenim "$2", z pótajmnym słowom "$3", wutwórił. Dejš se pśizjawiś a swóje pótajmne słowo něnt změniś.
# Special:PasswordReset
'passwordreset' => 'Gronidło slědk stajiś',
-'passwordreset-text' => 'Wupołni toś ten formular, aby swójo gronidło anulěrował.',
'passwordreset-legend' => 'Gronidło slědk stajiś',
'passwordreset-disabled' => 'Slědkstajenja gronidłow su se znjemóžnili na toś tom wikiju.',
-'passwordreset-pretext' => '{{PLURAL:$1||Zapódaj dołojce jadne ze slědujucych datowych podaśow}}',
'passwordreset-username' => 'Wužywarske mě:',
'passwordreset-domain' => 'Domena:',
'passwordreset-capture' => 'E-mail se woglědaś?',
Zda sem až jo wulašowany.',
'edit-conflict' => 'Wobźěłański konflikt.',
'edit-no-change' => 'Wašo wobźěłanje jo se ignorěrowało, dokulaž tekst njejo se změnił.',
+'postedit-confirmation' => 'Twója změna jo se składła.',
'edit-already-exists' => 'Njejo móžno było nowy bok napóraś.
Eksistěrujo južo.',
'defaultmessagetext' => 'Standardny tekst powěźeńki',
'searchmenu-legend' => 'Pytańske opcije',
'searchmenu-exists' => "'''Jo bok z mjenim \"[[\$1]]\" na toś tom wikiju'''",
'searchmenu-new' => "'''Napóraj bok \"[[:\$1|\$1]]\" na toś tom wikiju!'''",
-'searchhelp-url' => 'Help:Pomoc',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Boki z toś tym prefiksom pśepytaś]]',
'searchprofile-articles' => 'Wopśimjeśowe boki',
'searchprofile-project' => 'Pomoc a projektowe boki',
'reuploaddesc' => 'Nagraśe pśetergnuś a slědk k nagrawańskemu formularoju',
'upload-tryagain' => 'Změnjone datajowe wopisanje wótpósłaś',
'uploadnologin' => 'Njepśizjawjony',
-'uploadnologintext' => 'Dejš se [[Special:UserLogin|pśizjawiś]], aby mógał dataje nagraś.',
+'uploadnologintext' => 'Dejš se $1, aby mógał dataje nagraś.',
'upload_directory_missing' => 'Nagrawański zapis ($1) felujo a njejo se pśez webserwer napóraś dał.',
'upload_directory_read_only' => 'Nagrawański zapisk ($1) njedajo se pśez webserwer pisaś.',
'uploaderror' => 'Nagrawańska zmólka',
'upload-proto-error' => 'Njekorektny protokol',
'upload-proto-error-text' => 'URL musy zachopiś z <code>http://</code> abo <code>ftp://</code>.',
'upload-file-error' => 'Interna zmólka',
-'upload-file-error-text' => 'Pśi napóranju temporarneje dataje na serwerje jo nastała interna zmólka. Pšosym staj se ze [[Special:ListUsers/sysop|systemowym administratorom]] do zwiska.',
+'upload-file-error-text' => 'Pśi napóranju temporarneje dataje na serwerje jo nastała interna zmólka. Pšosym staj se ze [[Special:ListUsers/sysop|administratorom]] do zwiska.',
'upload-misc-error' => 'Njeznata zmólka pśi nagrawanju.',
'upload-misc-error-text' => 'Pśi nagrawanju jo nastała njeznata zmólka. Kontrolěruj pšosym, lěc URL jo płaśiwy a pśistupny a wopytaj hyšći raz. Jolic problem dalej eksistěrujo, staj se z [[Special:ListUsers/sysop|administratorom]] do zwiska.',
'upload-too-many-redirects' => 'URL jo pśewjele dalejpósrědnjenja wopśimjeł',
'listusers-noresult' => 'Žeden wužywaŕ njejo se namakał.',
'listusers-blocked' => '(blokěrowany)',
+# Special:ActiveUsers
+'activeusers' => 'Lisćina aktiwnych wužywarjow',
+'activeusers-intro' => 'To jo lisćina wužywarjow, kotrež su byli aktiwne za {{PLURAL:$1|slědny źeń|slědnej $1 dnja|slědne $1 dny|slědnych $1 dnjow}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|akcija|akciji|akcije|akcijow}} w {{PLURAL:$3|slědnem dnju|slědnyma $3 dnjoma|slědnych $3 dnjach}}',
+'activeusers-from' => 'Wužywarjow zwobrazniś, zachopinajucy z:',
+'activeusers-hidebots' => 'Boty schowaś',
+'activeusers-hidesysops' => 'Administratorow schowaś',
+'activeusers-noresult' => 'Žedne wužywarje namakane.',
+
# Special:ListGroupRights
'listgrouprights' => 'Pšawa wužywarskeje kupki',
'listgrouprights-summary' => 'To jo lisćina wužywarskich kupkow definěrowanych w toś tom wikiju z jich zwězanymi pśistupnymi pšawami. Móžo [[{{MediaWiki:Listgrouprights-helppage}}|pśidatne informacije]] wó jadnotliwych pšawach daś.',
'notvisiblerev' => 'Wersija bu wulašowana',
'watchnochange' => 'Žeden wót tebje wobglědowany bok njejo se we wótpowědujucem casu wobźěłał.',
'watchlist-details' => 'Wobglědujoš {{PLURAL:$1|$1 bok|$1 boka|$1 boki|$1 bokow}}, bźez diskusijnych bokow.',
-'wlheader-enotif' => '* E-mailowe powěsće su aktiwizěrowane.',
-'wlheader-showupdated' => "* Boki, kótarež su wót twójogo slědnego woglěda se změnili, pokazuju se '''tucnje'''.",
+'wlheader-enotif' => 'E-mailowe powěsće su aktiwizěrowane.',
+'wlheader-showupdated' => "Boki, kótarež su wót twójogo slědnego woglěda se změnili, pokazuju se '''tucnje'''.",
'watchmethod-recent' => 'Kontrolěrowanje aktualnych změnow we wobglědowańce',
'watchmethod-list' => 'Pśepytanje wobglědowanych bokow za aktualnymi změnami',
'watchlistcontains' => 'Twója wobglědowańka wopśimujo $1 {{PLURAL:$1|bok|boka|boki|bokow}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Šyrokosć',
'exif-imagelength' => 'Wusokosć',
'exif-bitspersample' => 'Bity na komponentu',
'exif-originalimageheight' => 'Wusokosć wobraza pśed pśirězowanim',
'exif-originalimagewidth' => 'Šyrokosć wobraza pśed pśirězowanim',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Njekompriměrowany',
'exif-compression-2' => 'CCITT kupka 3 jadnodimensionalne modificěrowane koděrowanje Huffman běgoweje dłujkosći',
'exif-compression-3' => 'CCITT kupka 3 faksowe koděrowanje',
'version-entrypoints-header-entrypoint' => 'Zastupny dypk',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Datajowa droga',
-'filepath-page' => 'Dataja:',
-'filepath-submit' => 'Pytaś',
-'filepath-summary' => 'Toś ten specialny bok wróśa dopołnu drogu za dataju.
-Wobraze se w połnym wótgranicowanju pokazuju, druge datajowe typy se ze zwězanym programom direktnje startuju.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Za duplikatnymi datajami pytaś',
'fileduplicatesearch-summary' => 'Za datajowymi duplikatami na zakłaźe gótnoty hash pytaś.',
'disclaimers' => 'Pogoliman',
'disclaimerpage' => 'Project:Pogoliman kosoruan',
'edithelp' => 'Sokodung mongidit',
-'edithelppage' => 'Help:Mongidit',
'helppage' => 'Help:Susuang',
'mainpage' => 'Natad tagayo',
'mainpage-description' => 'Natad tagayo',
# Special:PasswordReset
'passwordreset' => 'Pudoliai kawagu kaatalib',
-'passwordreset-text' => 'Gonopo poom diti do mangaramit tongosurat-i ponorou do nokomoi id akaun.',
'passwordreset-legend' => 'Pudoliai kawagu kaatalib',
'passwordreset-disabled' => 'Pomudolian kawagu do kaatalib kitaantob id wiki diti.',
-'passwordreset-pretext' => '{{PLURAL:$1||Posuango iso data id siriba}}',
'passwordreset-username' => 'Ngarandait:',
'passwordreset-domain' => 'Sumanganu:',
'passwordreset-capture' => 'Intaai surat-i dii nowonsoi?',
'searchmenu-legend' => 'Pilion ihum-ihumon',
'searchmenu-exists' => "'''Haro no bolikon pinungaranan do \"[[:\$1]]\" hiti id wiki.'''",
'searchmenu-new' => "'''Pomonsoi do bolikon \"[[:\$1]]\"hiti id wiki!'''",
-'searchhelp-url' => 'Help:Susuang',
'searchprofile-articles' => 'Suang bobolikon',
'searchprofile-project' => 'Tatabang om Tongobolikon purujik',
'searchprofile-images' => 'Multimodia',
$namespaceNames = array(
NS_MEDIA => 'މީޑިއާ',
- NS_SPECIAL => 'Þ\80Þ§Þ\87Þ°Þ\9eަ',
+ NS_SPECIAL => 'Þ\9aÞ§Þ\87Þ°Þ\90ަ',
NS_MAIN => '',
NS_TALK => 'ޚިޔާލު',
NS_USER => 'މެމްބަރު',
NS_USER_TALK => 'މެމްބަރުގެ_ވާހަކަ',
- NS_FILE => 'ފައިލް',
- NS_FILE_TALK => 'ފައިލް_ޚިޔާލު',
+ NS_PROJECT_TALK => '$1ގެ_ވާހަކަ',
+ NS_FILE => 'ފައިލު',
+ NS_FILE_TALK => 'ފައިލުގެ_ޚިޔާލު',
NS_MEDIAWIKI => 'މީޑިއާވިކީ',
- NS_MEDIAWIKI_TALK => 'Þ\89Þ©Þ\91Þ¨Þ\94Þ§Þ\88Þ¨Þ\86Þ¨_ޚިޔާލު',
+ NS_MEDIAWIKI_TALK => 'Þ\89Þ¨Þ\91Þ¨Þ\87Þ§Þ\88Þ¨Þ\86Þ©_ޚިޔާލު',
NS_TEMPLATE => 'ފަންވަތް',
- NS_TEMPLATE_TALK => 'Þ\8aÞ¦Þ\82Þ°Þ\88Þ¦Þ\8cÞ°_ޚިޔާލު',
+ NS_TEMPLATE_TALK => 'Þ\8aÞ¦Þ\82Þ°Þ\88Þ¦Þ\8cÞªÞ\8eÞ¬_ޚިޔާލު',
NS_HELP => 'އެހީ',
- NS_HELP_TALK => 'އެހީ_ޚިޔާލު',
+ NS_HELP_TALK => 'އެހީގެ_ޚިޔާލު',
NS_CATEGORY => 'ޤިސްމު',
- NS_CATEGORY_TALK => 'ޤިސްމު_ޚިޔާލު',
+ NS_CATEGORY_TALK => 'ޤިސްމުގެ_ޚިޔާލު',
+);
+
+$namespaceAliases = array(
+ 'ހާއްޞަ' => NS_SPECIAL,
+ 'ފައިލް' => NS_FILE,
+ 'ފައިލް_ޚިޔާލު' => NS_FILE_TALK,
+ 'މީޑިޔާވިކި_ޚިޔާލު' => NS_MEDIAWIKI_TALK,
+ 'ފަންވަތް_ޚިޔާލު' => NS_TEMPLATE_TALK,
+ 'އެހީ_ޚިޔާލު' => NS_HELP_TALK,
+ 'ޤިސްމު_ޚިޔާލު' => NS_CATEGORY_TALK,
);
$specialPageAliases = array(
[[Special:UnusedCategories|Unused categories]] are not shown here.
Also see [[Special:WantedCategories|wanted categories]].',
+# Special:ActiveUsers
+'activeusers' => 'ހަރަކާތްތެރި މެމްބަރުންގެ ލިސްޓު',
+'activeusers-hidebots' => 'ބޮޓް ފޮރުއްވާ',
+'activeusers-hidesysops' => 'އެޑްމިނިސްޓްރޭޓަރުން ފޮރުއްވާ',
+
# Special:ListGroupRights
'listgrouprights-members' => '(މެމްބަރުންގެ ލިސްޓު)',
# Metadata
'metadata' => 'މެޓަޑޭޓާ',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'ފުޅާމިން',
'exif-imagelength' => 'އުސްމިން',
'exif-imagedescription' => 'ތަސްވީރުގެ ސުރުހީ',
# Special:Categories
'categories' => 'དབྱེ་རིམ།',
-# E-mail user
+# Email user
'emailuser' => 'ལག་ལེན་པ་ལུ་ གློག་འཕྲིན་གཏང་',
# Watchlist
'group-sysop' => 'Dɔdzikpɔlawo',
'group-all' => '(wokatã)',
+# Special:Log/newusers
+'newuserlogpage' => 'Ŋkɔŋlɔla yeyewo ƒe xexlẽme',
+
# Associated actions - in the sentence "You do not have permission to X"
'action-read' => 'xlẽ axa sia',
'action-edit' => 'trɔ asi le axa sia ŋu',
# Special:LinkSearch
'linksearch-ok' => 'Dii',
-# Special:Log/newusers
-'newuserlogpage' => 'Ŋkɔŋlɔla yeyewo ƒe xexlẽme',
-
# Special:ListGroupRights
'listgrouprights-group' => 'Hame',
# Special:Version
'version' => 'Tata',
-# Special:FilePath
-'filepath-submit' => 'Yi',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Dii',
'powersearch-toggleall' => 'Tütt',
'powersearch-togglenone' => 'Ansöin',
-# Quickbar
-'qbsettings' => 'Quickbar',
-'qbsettings-none' => 'Ansöin',
-'qbsettings-fixedleft' => 'Fiss a sinistar',
-'qbsettings-fixedright' => 'Fiss a destar',
-'qbsettings-floatingleft' => 'Fluttuant a sinistar',
-'qbsettings-floatingright' => 'Fluttuant a destar',
-
# Preferences page
'preferences' => 'Prefereinz',
'mypreferences' => 'Al me prefereinz',
'right-read' => "Legg' pàgin",
'right-edit' => 'Mudifich pàgin',
-# User rights log
-'rightsnone' => '(ansöin)',
-
# Associated actions - in the sentence "You do not have permission to X"
'action-read' => "legg' custa pàgina ché",
'action-edit' => 'mudifch custa pàgina ché',
# Special:ListGroupRights
'listgrouprights-group' => 'Grüpp',
-# E-mail user
+# Email user
'emailfrom' => 'Da:',
'emailto' => 'A:',
'emailsubject' => 'Uggett:',
'watchthispage' => 'Vadä custa pàgina ché',
'unwatch' => "N'la vadär piö",
-'changed' => 'mudifegat',
'created' => 'creät',
+'changed' => 'mudifegat',
# Delete
'delete-confirm' => 'Cancellä "$1"',
# Metadata
'metadata' => 'Metadat',
-# EXIF tags
+# Exif tags
'exif-exposuretime-format' => '$1 s ($2)',
'exif-gpsareainformation' => "Nom d'la zona GPS",
'exif-gpsdatestamp' => 'Data GPS',
'version-license' => 'Licinza',
'version-poweredby-others' => 'ätar',
-# Special:FilePath
-'filepath-page' => 'Immàgin:',
-'filepath-submit' => 'Vé',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Nom dal file:',
'fileduplicatesearch-submit' => 'Cercä',
'htmlform-reset' => 'Turna indré cul la mudifich',
'htmlform-selectorother-other' => 'Ätar',
+# New logging system
+'rightsnone' => '(ansöin)',
+
# Feedback
'feedback-subject' => 'Uggett:',
'feedback-message' => "Messagg':",
* @author Lou
* @author MF-Warburg
* @author Malafaya
+ * @author Nikosguard
* @author Omnipaedista
* @author Protnet
* @author Reedy
# User preference toggles
'tog-underline' => 'Υπογράμμιση συνδέσμων:',
'tog-justify' => 'Στοίχιση παραγράφων',
-'tog-hideminor' => 'Î\91Ï\80Ï\8cκÏ\81Ï\85Ï\88η αλλαγÏ\8eν μικÏ\81ήÏ\82 κλίμακας',
+'tog-hideminor' => 'Î\91Ï\80Ï\8cκÏ\81Ï\85Ï\88η μικÏ\81οεÏ\80εξεÏ\81γαÏ\83ιÏ\8eν Ï\83Ï\84ιÏ\82 Ï\80Ï\81Ï\8cÏ\83Ï\86αÏ\84εÏ\82 αλλαγÎς',
'tog-hidepatrolled' => 'Απόκρυψη ελεγμένων επεξεργασιών στις πρόσφατες αλλαγές',
'tog-newpageshidepatrolled' => 'Απόκρυψη ελεγμένων σελίδων από τον κατάλογο νέων σελίδων',
'tog-extendwatchlist' => 'Επέκταση της λίστας παρακολούθησης ώστε να δείχνει όλες τις αλλαγές, όχι μόνο τις πιο πρόσφατες',
'tog-watchmoves' => 'Προσθήκη σελίδων που μετακινώ στη λίστα παρακολούθησής μου',
'tog-watchdeletion' => 'Προσθήκη σελίδων και αρχείων που διαγράφω στη λίστα παρακολούθησής μου',
'tog-minordefault' => 'Σήμανση εκ προεπιλογής όλων των αλλαγών ως μικρής κλίμακας',
-'tog-previewontop' => 'Εμφάνιση προεπισκόπησης πριν από το πλαίσιο επεξεργασίας και όχι μετά',
+'tog-previewontop' => 'Εμφάνιση προεπισκόπησης πριν από το πλαίσιο επεξεργασίας',
'tog-previewonfirst' => 'Εμφάνιση προεπισκόπησης κατά την πρώτη επεξεργασία',
'tog-nocache' => 'Απενεργοποίηση κρυφής μνήμης',
'tog-enotifwatchlistpages' => 'Να μου αποστέλλεται μήνυμα ηλεκτρονικού ταχυδρομείου όταν αλλάζει μια σελίδα ή ένα αρχείο που βρίσκεται στη λίστα παρακολούθησής μου',
'tog-shownumberswatching' => 'Εμφάνιση του αριθμού των συνδεδεμένων χρηστών',
'tog-oldsig' => 'Υπάρχουσα υπογραφή:',
'tog-fancysig' => 'Μεταχείριση υπογραφής ως κώδικα wiki (χωρίς αυτόματο σύνδεσμο)',
-'tog-showjumplinks' => 'Î\95νεÏ\81γοÏ\80οίηÏ\83ε Ï\84οÏ\85Ï\82 Ï\83Ï\85νδÎÏ\83μοÏ\85Ï\82 Ï\80Ï\81οÏ\83βαÏ\83ιμÏ\8cÏ\84ηÏ\84αÏ\82 Ï\84οÏ\85 Ï\84Ï\8dÏ\80οÏ\85 "μεÏ\84άβαÏ\83η Ï\83ε"',
+'tog-showjumplinks' => 'Î\95νεÏ\81γοÏ\80οίηÏ\83η Ï\84Ï\89ν Ï\83Ï\85νδÎÏ\83μÏ\89ν Ï\80Ï\81οÏ\83βαÏ\83ιμÏ\8cÏ\84ηÏ\84αÏ\82 Ï\84οÏ\85 Ï\84Ï\8dÏ\80οÏ\85 «μεÏ\84άβαÏ\83η Ï\83ε»',
'tog-uselivepreview' => 'Χρήση ζωντανής προεπισκόπησης (απαιτεί JavaScript) (πειραματικό)',
'tog-forceeditsummary' => 'Να ειδοποιούμαι κατά την εισαγωγή κενής σύνοψης επεξεργασίας',
'tog-watchlisthideown' => 'Απόκρυψη των επεξεργασιών μου από τη λίστα παρακολούθησης',
'underline-always' => 'Πάντα',
'underline-never' => 'Ποτέ',
-'underline-default' => 'Î Ï\81οεÏ\80ιλεγμÎνο Ï\80Ï\81Ï\8cγÏ\81αμμα Ï\80εÏ\81ιήγηÏ\83ηÏ\82',
+'underline-default' => 'Î Ï\81οεÏ\80ιλογή αÏ\80Ï\8c Ï\84ο skin ή αÏ\80Ï\8c Ï\84ον Ï\80εÏ\81ιηγηÏ\84ή',
# Font style option in Special:Preferences
'editfont-style' => 'Τύπος γραμματοσειράς της περιοχής επεξεργασίας:',
'oct' => 'Οκτ',
'nov' => 'Νοε',
'dec' => 'Δεκ',
+'january-date' => 'Ιανουάριος $1',
+'february-date' => 'Φεβρουάριος $1',
+'march-date' => 'Μάρτιος $1',
+'april-date' => 'Απρίλιος $1',
+'may-date' => 'Μαΐος $1',
+'june-date' => 'Ιούνιος $1',
+'july-date' => 'Ιούλιος $1',
+'august-date' => 'Αύγουστος $1',
+'september-date' => 'Σεπτέμβριος $1',
+'october-date' => 'Οκτώβριος $1',
+'november-date' => 'Νοέμβριος $1',
+'december-date' => 'Δεκέμβριος $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Κατηγορία|Κατηγορίες}}',
'disclaimers' => 'Αποποίηση ευθυνών',
'disclaimerpage' => 'Project:Γενική αποποίηση',
'edithelp' => 'Βοήθεια σχετικά με την επεξεργασία',
-'edithelppage' => 'Help:Επεξεργασία',
'helppage' => 'Help:Περιεχόμενα',
'mainpage' => 'Αρχική σελίδα',
'mainpage-description' => 'Αρχική σελίδα',
'createacct-yourpasswordagain' => 'Επιβεβαίωση κωδικού',
'createacct-yourpasswordagain-ph' => 'Εισαγωγή κωδικού ξανά',
'remembermypassword' => 'Διατήρηση του κωδικού πρόσβασης σε αυτόν τον υπολογιστή (για μέγιστο $1 {{PLURAL:$1|ημέρα|ημέρες}})',
-'userlogin-remembermypassword' => 'Î\9dα με θÏ\85μάÏ\83Ï\84ε',
-'userlogin-signwithsecure' => 'ΣÏ\85νδεθείÏ\84ε με αÏ\83Ï\86αλή διακομιÏ\83Ï\84ή',
+'userlogin-remembermypassword' => 'Î\94ιαÏ\84ηÏ\81ήÏ\83Ï\84ε με Ï\83ε Ï\83Ï\8dνδεÏ\83η',
+'userlogin-signwithsecure' => 'ΧÏ\81ηÏ\83ιμοÏ\80οιείÏ\83Ï\84ε αÏ\83Ï\86αλή Ï\83Ï\8dνδεÏ\83η',
'securelogin-stick-https' => 'Μείνετε συνδεδεμένοι με HTTPS μετά την είσοδο',
'yourdomainname' => 'Το domain σας:',
'password-change-forbidden' => 'Δεν μπορείτε να αλλάξετε τους κωδικούς πρόσβασης σε αυτό το βίκι.',
'gotaccountlink' => 'Είσοδος',
'userlogin-resetlink' => 'Ξεχάσατε τα στοιχεία σύνδεσής σας;',
'userlogin-resetpassword-link' => 'Έκδοση νέου κωδικού πρόσβασης',
-'helplogin-url' => 'Βοήθεια:Σύνδεση',
+'helplogin-url' => 'Help:Σύνδεση',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Βοήθεια για τη σύνδεσή σας]]',
'createacct-join' => 'Εισάγετε τα στοιχεία σας παρακάτω.',
'createacct-emailrequired' => 'Διεύθυνση ηλεκτρονικού ταχυδρομείου',
'createacct-reason-ph' => 'Γιατί δημιουργείτε έναν άλλο λογαριασμό',
'createacct-captcha' => 'Έλεγχος ασφαλείας',
'createacct-imgcaptcha-ph' => 'Εισαγωγή του κειμένου που βλέπετε παραπάνω',
-'createacct-benefit-body1' => 'επεξεργασίες',
-'createacct-benefit-body2' => 'σελίδες',
+'createacct-submit' => 'Δημιουργία λογαριασμού χρήστη',
+'createacct-benefit-heading' => '{{SITENAME}} έχει γίνει από ανθρώπους όπως εσύ.',
+'createacct-benefit-body1' => '{{PLURAL:$1|επεξεργασία|επεξεργασίες}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|σελίδα|σελίδες}}',
+'createacct-benefit-body3' => 'πρόσφατοι {{PLURAL:$1|συνεισφέρων|συνεισφέροντες}}',
'badretype' => 'Οι κωδικοί που έχετε δηλώσει δεν συμφωνούν μεταξύ τους.',
'userexists' => 'Το όνομα χρήστη που εισαγάγατε βρίσκεται ήδη σε χρήση.
Παρακαλούμε, διαλέξτε ένα διαφορετικό.',
'cannotchangeemail' => "Οι διευθύνσεις ηλεκτρονικού ταχυδρομείου του λογαριασμού δεν μπορούν να αλλάξουν σ' αυτό το wiki.",
'emaildisabled' => 'Αυτός ο ιστότοπος δεν μπορεί να στείλει μηνύματα ηλεκτρονικού ταχυδρομείου.',
'accountcreated' => 'Ο λογαριασμός δημιουργήθηκε',
-'accountcreatedtext' => 'Ο λογαριασμός χρήστη για τον/την $1 έχει δημιουργηθεί.',
+'accountcreatedtext' => 'Ο λογαριασμός χρήστη για τον/την [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|συζήτηση]]) έχει δημιουργηθεί.',
'createaccount-title' => 'Δημιουργία λογαριασμού για {{SITENAME}}',
'createaccount-text' => 'Κάποιος δημιούργησε έναν λογαριασμό για τη διεύθυνση email σας στο {{SITENAME}} ($4) με το όνομα "$2", με κωδικό πρόσβασης "$3". Θα πρέπει να συνδεθείτε και να αλλάξετε τον κωδικό πρόσβασής σας τώρα.
'resetpass-wrong-oldpass' => 'Λάθος προσωρινός ή κανονικός κωδικός.
Μπορεί να έχετε ήδη αλλάξει επιτυχώς τον κωδικό σας ή να έχετε ζητήσει έναν νέο προσωρινό κωδικό.',
'resetpass-temp-password' => 'Προσωρινός κωδικός:',
+'resetpass-abort-generic' => 'Η αλλαγή του κωδικού έχει απορριφθεί από μια προέκταση.',
# Special:PasswordReset
'passwordreset' => 'Κωδικός επαναφοράς',
-'passwordreset-text' => 'Συμπληρώστε αυτή τη φόρμα για να επαναφέρετε τον κωδικό σας.',
+'passwordreset-text-one' => 'Συμπληρώστε την παρακάτω φόρμα για να επαναφέρετε τον κωδικό πρόσβασής σας.',
+'passwordreset-text-many' => '{{PLURAL:$1|Εισαγάγετε ένα από τα κομμάτια των δεδομένων για να επαναφέρετε τον κωδικό πρόσβασής σας.}}',
'passwordreset-legend' => 'Επαναφορά κωδικού πρόσβασης',
'passwordreset-disabled' => 'Η επαναφορά κωδικού πρόσβασης έχει απενεργοποιηθεί σε αυτό το wiki',
'passwordreset-emaildisabled' => "Τα χαρακτηριστικά ηλεκτρονικού ταχυδρομείου έχουν απενεργοποιηθεί σ' αυτό το wiki.",
-'passwordreset-pretext' => '{{PLURAL:$1||Εισάγεται ένα από τα στοιχεία δεδομένων που βλέπετε παρακάτω}}',
'passwordreset-username' => 'Όνομα χρήστη:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Προβολή του μηνύματος ηλεκτρονικού ταχυδρομείου που δημιουργήθηκε;',
Φαίνεται πως έχει διαγραφεί.',
'edit-conflict' => 'Σύγκρουση επεξεργασιών.',
'edit-no-change' => 'Η επεξεργασία σας αγνοήθηκε, επειδή δεν έγινε καμία αλλαγή στο κείμενο.',
+'postedit-confirmation' => 'H επεξεργασία σας αποθηκεύτηκε.',
'edit-already-exists' => 'Δεν ήταν εφικτό να δημιουργηθεί η νέα σελίδα.
Υπάρχει ήδη.',
'defaultmessagetext' => 'Προεπιλεγμένο κείμενο μηνύματος',
'invalid-content-data' => 'Μη έγκυρα δεδομένα περιεχομένου',
'content-not-allowed-here' => 'Το περιεχόμενο «$1» δεν επιτρέπεται στη σελίδα [[$2]]',
'editwarning-warning' => 'Αφήνοντας αυτή τη σελίδα μπορεί να σας κάνει να χάσετε κάποιες αλλαγές που έχετε κάνει.
-Î\91ν ÎÏ\87εÏ\84ε Ï\83Ï\85νδεθεί, μÏ\80οÏ\81είÏ\84ε να αÏ\80ενεÏ\81γοÏ\80οιήÏ\83εÏ\84ε αÏ\85Ï\84ή Ï\84ην Ï\80Ï\81οειδοÏ\80οίηÏ\83η Ï\83Ï\84ο Ï\84μήμα "{{int:prefs-editing}}" των προτιμήσεών σας.',
+Î\91ν ÎÏ\87εÏ\84ε Ï\83Ï\85νδεθεί, μÏ\80οÏ\81είÏ\84ε να αÏ\80ενεÏ\81γοÏ\80οιήÏ\83εÏ\84ε αÏ\85Ï\84ή Ï\84ην Ï\80Ï\81οειδοÏ\80οίηÏ\83η Ï\83Ï\84ην ενÏ\8cÏ\84ηÏ\84α "Î\95Ï\80εξεÏ\81γαÏ\83ία" των προτιμήσεών σας.',
# Content models
'content-model-wikitext' => 'βικικείμενο',
'searchmenu-legend' => 'Επιλογές αναζήτησης',
'searchmenu-exists' => "'''Υπάρχει μια σελίδα που ονομάζεται \"[[:\$1]]\" σε αυτό το wiki'''",
'searchmenu-new' => "'''Δημιουργήστε τη σελίδα «[[:$1]]» σε αυτό το wiki!'''",
-'searchhelp-url' => 'Help:Περιεχόμενα',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Πλοηγηθείτε σε σελίδες με αυτό το πρόθεμα]]',
'searchprofile-articles' => 'Σελίδες περιεχομένων',
'searchprofile-project' => 'Βοήθεια και σελίδες εγχειρημάτων',
'userrights-notallowed' => 'Ο λογαριασμός σας δεν έχει άδεια για να προσθέσει ή να αφαιρέσει δικαιώματα χρηστών.',
'userrights-changeable-col' => 'Ομάδες που μπορείτε να αλλάξετε',
'userrights-unchangeable-col' => 'Ομάδες που δεν μπορείτε να αλλάξετε',
+'userrights-conflict' => 'Σύγκρουση δικαιωμάτων χρήστη! Παρακαλώ κάντε πάλι εφαρμογή των αλλαγών σας.',
# Groups
'group' => 'Ομάδα:',
Αντιθέτως θα έπρεπε να κατευθύνουν στο κατάλληλο θέμα.<br />
Μια σελίδα αντιμετωπίζεται ως σελίδα αποσαφήνισης αν χρησιμοποιεί ένα πρότυπο το οποίο συνδέεται από το [[MediaWiki:Disambiguationspage]]",
+'pageswithprop' => 'Σελίδες με ιδιότητα σελίδας',
+'pageswithprop-legend' => 'Σελίδες με ιδιότητα σελίδας',
+'pageswithprop-text' => 'Αυτή η σελίδα ταξινομεί σελίδες που χρησιμοποιούν μια συγκεκριμένη ιδιότητα σελίδας.',
'pageswithprop-prop' => 'Όνομα ιδιότητας:',
'pageswithprop-submit' => 'Μετάβαση',
'notvisiblerev' => 'Η έκδοση έχει διαγραφεί',
'watchnochange' => 'Δεν υπήρξε δραστηριότητα επεξεργασίας στις σελίδες που παρακολουθείτε κατά την εμφανιζόμενη χρονική περίοδο.',
'watchlist-details' => '{{PLURAL:$1|$1 σελίδα|$1 σελίδες}} είναι στη λίστα παρακολούθησης σας, χωρίς τις σελίδες συζήτησης.',
-'wlheader-enotif' => '* Η ειδοποίηση με ηλεκτρονικό ταχυδρομείο έχει ενεργοποιηθεί.',
-'wlheader-showupdated' => "* Σελίδες που έχουν υποστεί αλλαγές από την τελευταία φορά που τις επισκεφθήκατε εμφανίζονται με '''έντονους χαρακτήρες'''.",
+'wlheader-enotif' => 'Η ειδοποίηση ηλεκτρονικού ταχυδρομείου ενεργοποιήθηκε.',
+'wlheader-showupdated' => "Σελίδες που έχουν υποστεί αλλαγές από την τελευταία φορά που τις επισκεφθήκατε εμφανίζονται με '''έντονους χαρακτήρες'''.",
'watchmethod-recent' => 'Έλεγχος πρόσφατων αλλαγών σε σελίδες υπό παρακολούθηση',
'watchmethod-list' => 'Έλεγχος σελίδων υπό παρακολούθηση για πρόσφατες αλλαγές',
'watchlistcontains' => 'Η λίστα παρακολούθησής σας περιέχει $1 {{PLURAL:$1|σελίδα|σελίδες}}.',
'mycontris' => 'Συνεισφορές',
'contribsub2' => 'Για τον/την $1 ($2)',
'nocontribs' => 'Δεν βρέθηκαν αλλαγές με αυτά τα κριτήρια.',
-'uctop' => '(τελευταία)',
+'uctop' => '(κορυφή)',
'month' => 'Από τον μήνα (και νωρίτερα):',
'year' => 'Από τη χρονιά (και νωρίτερα):',
'thumbnail-more' => 'Μεγέθυνση',
'filemissing' => 'Αγνοούμενο αρχείο',
'thumbnail_error' => 'Σφάλμα στη δημιουργία μικρογραφίας: $1',
+'thumbnail_error_remote' => 'Μήνυμα σφάλματος από $1:
+$2',
'djvu_page_error' => 'Σελίδα DjVu εκτός ορίων',
'djvu_no_xml' => 'Αδυναμία προσκόμισης XML για το αρχείο DjVu',
'thumbnail-temp-create' => 'Αδύνατη η δημιουργία προσωρινού αρχείου μικρογραφίας',
'modern.css' => '/* Το τοποθετημένο εδώ CSS θα επηρεάσει χρήστες του Modern skin */',
'vector.css' => '/* Το τοποθετημένο εδώ CSS θα επηρεάσει χρήστες του Vector skin */',
'print.css' => '/* Το τοποθετημένο εδώ CSS θα επηρεάσει το αποτέλεσμα της εκτύπωσης */',
-'handheld.css' => '/* Το τοποθετημένο εδώ CSS θα επηρεάσει συσκευές χειρός βάση του skin ρυθμισμένου στο $wgHandheldStyle */',
# Scripts
'common.js' => '/* Οποιοσδήποτε κώδικας JavaScript εδώ θα φορτωθεί για όλους τους χρήστες σε κάθε φόρτωση σελίδας. */',
'minutes' => '{{PLURAL:$1|$1 λεπτό|$1 λεπτά}}',
'hours' => '{{PLURAL:$1|$1 ώρα|$1 ώρες}}',
'days' => '{{PLURAL:$1|$1 μέρα|$1 μέρες}}',
+'weeks' => '{{PLURAL:$1|$1 εβδομάδα|$1 εβδομάδες}}',
'months' => '{{PLURAL:$1|$1 μήνας|$1 μήνες}}',
'years' => '{{PLURAL:$1|$1 έτος|$1 έτη}}',
'ago' => '$1 πριν',
'just-now' => 'μόλις τώρα',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|ώρα|ώρες}} πριν',
+'minutes-ago' => '$1 {{PLURAL:$1|λεπτό|λεπτά}} πριν',
+'seconds-ago' => '$1 {{PLURAL:$1|δευτερόλεπτο|δευτερόλεπτα}} πριν',
+'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' => 'Η σύνταξη είναι ως εξής:
'version-entrypoints-header-entrypoint' => 'Σημείο εισόδου',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect-legend' => 'Ανακατεύθυνση σε ένα αρχείο ή μια σελίδα',
+'redirect-submit' => 'Μετάβαση',
+'redirect-lookup' => 'Αναζήτηση:',
+'redirect-value' => 'Τιμή:',
+'redirect-user' => 'Αναγνωριστικό χρήση',
+'redirect-revision' => 'Αναθεώρηση σελίδας',
+'redirect-file' => 'Όνομα αρχείου',
+'redirect-not-exists' => 'Η τιμή δε βρέθηκε',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Αναζήτηση για διπλά αρχεία',
'fileduplicatesearch-summary' => 'Αναζήτηση για διπλά αρχεία με βάση την τιμή hash του αρχείου.',
'htmlform-selectorother-other' => 'Άλλο',
'htmlform-no' => 'Όχι',
'htmlform-yes' => 'Ναι',
+'htmlform-chosen-placeholder' => 'Κάντε μια επιλογή',
# SQLite database support
'sqlite-has-fts' => '$1 με υποστήριξη αναζήτησης πλήρους κειμένου',
# New logging system
'logentry-delete-delete' => '{{GENDER:$1|Ο|Η}} $1 διέγραψε τη σελίδα $3',
'logentry-delete-restore' => 'Ο/Η $1 αποκατέστησε τη σελίδα $3',
-'logentry-delete-event' => '{{GENDER:$1|Ο|Η}} $1 άλλαξε την ορατότητα σε {{PLURAL:$5|ένα γεγονός καταγραφής|$5 log events}} στο $3: $4',
-'logentry-delete-revision' => '{{GENDER:$1|Ο|Η}} $1 άλλαξε την ορατότητα {{PLURAL:$5|μιας έκδοσης|$5 εκδόσεων}} στη σελίδα $3: $4',
+'logentry-delete-event' => ' $1 {{GENDER:$1|άλλαξε}} την ορατότητα σε {{PLURAL:$5|ένα γεγονός καταγραφής|$5 γεγονότα καταγραφής}} στο $3: $4',
+'logentry-delete-revision' => '$1 {{GENDER:$2|άλλαξε}} άλλαξε την ορατότητα {{PLURAL:$5|μια έκδοση|$5 εκδόσεις}} στη σελίδα $3: $4',
'logentry-delete-event-legacy' => '{{GENDER:$2|Ο|Η}} $1 άλλαξε την ορατότητα των καταγραφόμενων συμβάντων στη σελίδα $3',
-'logentry-delete-revision-legacy' => '{{GENDER:$1|Ο|Η}} $1 άλλαξε την ορατότητα των αναθεωρήσεων στη σελίδα $3',
-'logentry-suppress-delete' => '{{GENDER:$1|Ο|Η}} $1 διέγραψε τη σελίδα $3',
+'logentry-delete-revision-legacy' => '$1 {{GENDER:$2|άλλαξε}} την ορατότητα των αναθεωρήσεων στη σελίδα $3',
+'logentry-suppress-delete' => '$1 {{GENDER:$2|διέγραψε}} τη σελίδα $3',
'logentry-suppress-event' => '{{Gender:$2|Ο|Η}} $1 άλλαξε μυστικά την ορατότητα {{PLURAL:$5|ενός καταγραφόμενου συμβάντος|$5 καταγραφόμενων συμβάντων}} στη σελίδα $3: $4',
'logentry-suppress-revision' => '{{Gender:$2|Ο|Η}} $1 άλλαξε μυστικά την ορατότητα {{PLURAL:$5|μίας αναθεώρησης|$5 αναθεωρήσεων}} στη σελίδα $3: $4',
'logentry-suppress-event-legacy' => '{{Gender:$2|Ο|Η}} $1 άλλαξε μυστικά την ορατότητα των καταγραφόμενων συμβάντων στη σελίδα $3',
-'logentry-suppress-revision-legacy' => '$1 κρυφά άλλαξαν την ορατότητα των αναθεωρήσεων στη σελίδα $3',
+'logentry-suppress-revision-legacy' => '{{Gender:$2|Ο|Η}} $1 άλλαξε μυστικά την ορατότητα των αναθεωρήσεων στη σελίδα $3',
'revdelete-content-hid' => 'το περιεχόμενο αποκρύφθηκε',
'revdelete-summary-hid' => 'Η σύνοψη επεξεργασίας αποκρύφθηκε',
'revdelete-uname-hid' => 'Το όνομα χρήστη αποκρύφθηκε',
'revdelete-uname-unhid' => 'το όνομα χρήστη έπαψε να είναι κρυφό',
'revdelete-restricted' => 'εφάρμοσε περιορισμούς στους sysops',
'revdelete-unrestricted' => 'αφαίρεσε περιορισμούς στους sysops',
-'logentry-move-move' => '{{GENDER:$1|Ο|Η}} $1 μετακίνησε τη σελίδα $3 στη $4',
+'logentry-move-move' => '{{GENDER:$2|Ο|Η}} $1 μετακίνησε τη σελίδα $3 στη $4',
'logentry-move-move-noredirect' => '{{GENDER:$1|Ο|Η}} $1 μετακίνησε τη σελίδα $3 στη $4 χωρίς να αφήσει ανακατεύθυνση',
'logentry-move-move_redir' => '{{GENDER:$1|Ο|Η}} $1 μετακίνησε τη σελίδα $3 στη $4 πάνω από την ανανακατεύθυνση',
'logentry-move-move_redir-noredirect' => '{{GENDER:$2|Ο|Η}} $1 μετακίνησε την σελίδα $3 στην $4 πάνω από μια ανακατεύθυνση χωρίς να αφήσει ανακατεύθυνση',
'logentry-newusers-newusers' => 'Ο λογαριασμός χρήστη $1 {{GENDER:$2|δημιουργήθηκε}}',
'logentry-newusers-create' => 'Ο λογαριασμός χρήστη $1 {{GENDER:$2|δημιουργήθηκε}}',
'logentry-newusers-create2' => 'Ο λογαριασμός χρήστη $3 δημιουργήθηκε από {{GENDER:$2|τον|την}} $1',
-'logentry-newusers-byemail' => 'Ο λογαριασμός χρήστη $3 δημιουργήθηκε από τον $1 και ο κωδικός πρόσβασης εστάλη μέσω ηλεκτρονικού ταχυδρομείου',
-'logentry-newusers-autocreate' => 'Ο λογαριασμός $1 δημιουργήθηκε αυτόματα',
+'logentry-newusers-byemail' => 'Ο λογαριασμός χρήστη $3 δημιουργήθηκε από {{GENDER:$2|τον|την}} $1 και ο κωδικός πρόσβασης εστάλη μέσω ηλεκτρονικού ταχυδρομείου',
+'logentry-newusers-autocreate' => 'Ο λογαριασμός χρήστη $1 δημιουργήθηκε αυτόματα',
'logentry-rights-rights' => '{{GENDER:$1|Ο|Η}} $1 άλλαξε την ιδιότητα μέλους ομάδας για {{GENDER:$3|τον|την}} $3 από $4 σε $5',
'logentry-rights-rights-legacy' => '{{GENDER:$1|Ο|Η}} $1 άλλαξε την ιδιότητα μέλους ομάδας {{GENDER:$1|του|της}} $3',
-'logentry-rights-autopromote' => '$1 προωθήθηκε αυτόματα από το $4 στο $5',
+'logentry-rights-autopromote' => '$1 {{GENDER:$2|προωθήθηκε}} αυτόματα από το $4 στο $5',
'rightsnone' => '(κανένα)',
# Feedback
'img_center' => array( 1, 'center', 'centre' ),
'img_framed' => array( 1, 'framed', 'enframed', 'frame' ),
'img_frameless' => array( 1, 'frameless' ),
+ 'img_lang' => array( 1, 'lang=$1' ),
'img_page' => array( 1, 'page=$1', 'page $1' ),
'img_upright' => array( 1, 'upright', 'upright=$1', 'upright $1' ),
'img_border' => array( 1, 'border' ),
'editfont-serif' => 'Serif font',
# Dates
-'sunday' => 'Sunday',
-'monday' => 'Monday',
-'tuesday' => 'Tuesday',
-'wednesday' => 'Wednesday',
-'thursday' => 'Thursday',
-'friday' => 'Friday',
-'saturday' => 'Saturday',
-'sun' => 'Sun',
-'mon' => 'Mon',
-'tue' => 'Tue',
-'wed' => 'Wed',
-'thu' => 'Thu',
-'fri' => 'Fri',
-'sat' => 'Sat',
-'january' => 'January',
-'february' => 'February',
-'march' => 'March',
-'april' => 'April',
-'may_long' => 'May',
-'june' => 'June',
-'july' => 'July',
-'august' => 'August',
-'september' => 'September',
-'october' => 'October',
-'november' => 'November',
-'december' => 'December',
-'january-gen' => 'January',
-'february-gen' => 'February',
-'march-gen' => 'March',
-'april-gen' => 'April',
-'may-gen' => 'May',
-'june-gen' => 'June',
-'july-gen' => 'July',
-'august-gen' => 'August',
-'september-gen' => 'September',
-'october-gen' => 'October',
-'november-gen' => 'November',
-'december-gen' => 'December',
-'jan' => 'Jan',
-'feb' => 'Feb',
-'mar' => 'Mar',
-'apr' => 'Apr',
-'may' => 'May',
-'jun' => 'Jun',
-'jul' => 'Jul',
-'aug' => 'Aug',
-'sep' => 'Sep',
-'oct' => 'Oct',
-'nov' => 'Nov',
-'dec' => 'Dec',
+'sunday' => 'Sunday',
+'monday' => 'Monday',
+'tuesday' => 'Tuesday',
+'wednesday' => 'Wednesday',
+'thursday' => 'Thursday',
+'friday' => 'Friday',
+'saturday' => 'Saturday',
+'sun' => 'Sun',
+'mon' => 'Mon',
+'tue' => 'Tue',
+'wed' => 'Wed',
+'thu' => 'Thu',
+'fri' => 'Fri',
+'sat' => 'Sat',
+'january' => 'January',
+'february' => 'February',
+'march' => 'March',
+'april' => 'April',
+'may_long' => 'May',
+'june' => 'June',
+'july' => 'July',
+'august' => 'August',
+'september' => 'September',
+'october' => 'October',
+'november' => 'November',
+'december' => 'December',
+'january-gen' => 'January',
+'february-gen' => 'February',
+'march-gen' => 'March',
+'april-gen' => 'April',
+'may-gen' => 'May',
+'june-gen' => 'June',
+'july-gen' => 'July',
+'august-gen' => 'August',
+'september-gen' => 'September',
+'october-gen' => 'October',
+'november-gen' => 'November',
+'december-gen' => 'December',
+'jan' => 'Jan',
+'feb' => 'Feb',
+'mar' => 'Mar',
+'apr' => 'Apr',
+'may' => 'May',
+'jun' => 'Jun',
+'jul' => 'Jul',
+'aug' => 'Aug',
+'sep' => 'Sep',
+'oct' => 'Oct',
+'nov' => 'Nov',
+'dec' => 'Dec',
+'january-date' => 'January $1',
+'february-date' => 'February $1',
+'march-date' => 'March $1',
+'april-date' => 'April $1',
+'may-date' => 'May $1',
+'june-date' => 'June $1',
+'july-date' => 'July $1',
+'august-date' => 'August $1',
+'september-date' => 'September $1',
+'october-date' => 'October $1',
+'november-date' => 'November $1',
+'december-date' => 'December $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Category|Categories}}',
'create-this-page' => 'Create this page',
'delete' => 'Delete',
'deletethispage' => 'Delete this page',
+'undeletethispage' => 'Undelete this page',
'undelete_short' => 'Undelete {{PLURAL:$1|one edit|$1 edits}}',
'viewdeleted_short' => 'View {{PLURAL:$1|one deleted edit|$1 deleted edits}}',
'protect' => 'Protect',
'disclaimers' => 'Disclaimers',
'disclaimerpage' => 'Project:General disclaimer',
'edithelp' => 'Editing help',
-'edithelppage' => 'Help:Editing',
+'edithelppage' => '//www.mediawiki.org/wiki/Special:MyLanguage/Help:Editing_pages', # do not translate or duplicate this message to other languages
'helppage' => 'Help:Contents',
'mainpage' => 'Main Page',
'mainpage-description' => 'Main page',
'namespaceprotected' => "You do not have permission to edit pages in the '''$1''' namespace.",
'customcssprotected' => "You do not have permission to edit this CSS page because it contains another user's personal settings.",
'customjsprotected' => "You do not have permission to edit this JavaScript page because it contains another user's personal settings.",
+'mycustomcssprotected' => 'You do not have permission to edit this CSS page.',
+'mycustomjsprotected' => 'You do not have permission to edit this JavaScript page.',
'ns-specialprotected' => 'Special pages cannot be edited.',
'titleprotected' => 'This title has been protected from creation by [[User:$1|$1]].
The reason given is "\'\'$2\'\'".',
'yourname' => 'Username:',
'userlogin-yourname' => 'Username',
'userlogin-yourname-ph' => 'Enter your username',
-'createacct-helpusername' => '', # do not translate or duplicate this message to other languages
+'createacct-helpusername' => '', # do not translate or duplicate this message to other languages
'yourpassword' => 'Password:',
'userlogin-yourpassword' => 'Password',
'userlogin-yourpassword-ph' => 'Enter your password',
'cannotchangeemail' => 'Account email addresses cannot be changed on this wiki.',
'emaildisabled' => 'This site cannot send emails.',
'accountcreated' => 'Account created',
-'accountcreatedtext' => 'The user account for $1 has been created.',
+'accountcreatedtext' => 'The user account for [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) has been created.',
'createaccount-title' => 'Account creation for {{SITENAME}}',
'createaccount-text' => 'Someone created an account for your email address on {{SITENAME}} ($4) named "$2", with password "$3".
You should log in and change your password now.
# Special:PasswordReset
'passwordreset' => 'Reset password',
-'passwordreset-text' => 'Complete this form to reset your password.',
+'passwordreset-text-one' => 'Complete this form to reset your password.',
+'passwordreset-text-many' => '{{PLURAL:$1|Enter one of the pieces of data to reset your password.}}',
'passwordreset-legend' => 'Reset password',
'passwordreset-disabled' => 'Password resets have been disabled on this wiki.',
'passwordreset-emaildisabled' => 'Email features have been disabled on this wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Enter one of the pieces of data below}}',
'passwordreset-username' => 'Username:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'View the resulting email?',
It appears to have been deleted.',
'edit-conflict' => 'Edit conflict.',
'edit-no-change' => 'Your edit was ignored because no change was made to the text.',
+'postedit-confirmation' => 'Your edit was saved.',
'edit-already-exists' => 'Could not create a new page.
It already exists.',
'addsection-preload' => '', # do not translate or duplicate this message to other languages
'searchmenu-exists' => "'''There is a page named \"[[:\$1]]\" on this wiki.'''",
'searchmenu-new' => "'''Create the page \"[[:\$1]]\" on this wiki!'''",
'searchmenu-new-nocreate' => '', # do not translate or duplicate this message to other languages
-'searchhelp-url' => 'Help:Contents',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Browse pages with this prefix]]',
-'searchmenu-help' => '[[{{MediaWiki:Searchhelp-url}}|{{int:help}}]]?', # do not translate or duplicate this message to other languages
'searchprofile-articles' => 'Content pages',
'searchprofile-project' => 'Help and Project pages',
'searchprofile-images' => 'Multimedia',
'userrights-unchangeable-col' => 'Groups you cannot change',
'userrights-irreversible-marker' => '$1*', # only translate this message to other languages if you have to change it
'userrights-conflict' => 'User rights conflict! Please apply your changes again.',
+'userrights-removed-self' => 'You successfully removed your own rights. As such, you are no longer able to access this page.',
# Groups
'group' => 'Group:',
'right-editusercssjs' => "Edit other users' CSS and JavaScript files",
'right-editusercss' => "Edit other users' CSS files",
'right-edituserjs' => "Edit other users' JavaScript files",
+'right-editmyusercss' => 'Edit your own user CSS files',
+'right-editmyuserjs' => 'Edit your own user JavaScript files',
+'right-viewmywatchlist' => 'View your own watchlist',
+'right-editmywatchlist' => 'Edit your own watchlist. Note some actions will still add pages even without this right.',
'right-rollback' => 'Quickly rollback the edits of the last user who edited a particular page',
'right-markbotedits' => 'Mark rolled-back edits as bot edits',
'right-noratelimit' => 'Not be affected by rate limits',
'action-userrights-interwiki' => 'edit user rights of users on other wikis',
'action-siteadmin' => 'lock or unlock the database',
'action-sendemail' => 'send emails',
+'action-viewmywatchlist' => 'view your watchlist',
+'action-editmywatchlist' => 'edit your watchlist',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|change|changes}}',
'reuploaddesc' => 'Cancel upload and return to the upload form',
'upload-tryagain' => 'Submit modified file description',
'uploadnologin' => 'Not logged in',
-'uploadnologintext' => 'You must be [[Special:UserLogin|logged in]] to upload files.',
+'uploadnologintext' => 'You must $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',
'notvisiblerev' => 'The last revision by a different user has been deleted',
'watchnochange' => 'None of your watched items were edited in the time period displayed.',
'watchlist-details' => '{{PLURAL:$1|$1 page|$1 pages}} on your watchlist, not counting talk pages.',
-'wlheader-enotif' => '* Email notification is enabled.',
-'wlheader-showupdated' => "* Pages that have been changed since you last visited them are shown in '''bold'''",
+'wlheader-enotif' => 'Email notification is enabled.',
+'wlheader-showupdated' => "Pages that have been changed since you last visited them are shown in '''bold'''.",
'watchmethod-recent' => 'checking recent edits for watched pages',
'watchmethod-list' => 'checking watched pages for recent edits',
'watchlistcontains' => 'Your watchlist contains $1 {{PLURAL:$1|page|pages}}.',
'mycontris' => 'Contributions',
'contribsub2' => 'For $1 ($2)',
'nocontribs' => 'No changes were found matching these criteria.',
-'uctop' => '(top)',
+'uctop' => '(current)',
'month' => 'From month (and earlier):',
'year' => 'From year (and earlier):',
'modern.css' => '/* CSS placed here will affect users of the Modern skin */', # only translate this message to other languages if you have to change it
'vector.css' => '/* CSS placed here will affect users of the Vector skin */', # only translate this message to other languages if you have to change it
'print.css' => '/* CSS placed here will affect the print output */', # only translate this message to other languages if you have to change it
-'handheld.css' => '/* CSS placed here will affect handheld devices based on the skin configured in $wgHandheldStyle */', # only translate this message to other languages if you have to change it
'noscript.css' => '/* CSS placed here will affect users with JavaScript disabled */', # only translate this message to other languages if you have to change it
'group-autoconfirmed.css' => '/* CSS placed here will affect autoconfirmed users only */', # only translate this message to other languages if you have to change it
'group-bot.css' => '/* CSS placed here will affect bots only */', # only translate this message to other languages if you have to change it
'semicolon-separator' => '; ', # only translate this message to other languages if you have to change it
'comma-separator' => ', ', # only translate this message to other languages if you have to change it
'colon-separator' => ': ', # only translate this message to other languages if you have to change it
-'autocomment-prefix' => '- ', # only translate this message to other languages if you have to change it
+'autocomment-prefix' => '', # only translate this message to other languages if you have to change it
'pipe-separator' => ' | ', # only translate this message to other languages if you have to change it
'word-separator' => ' ', # only translate this message to other languages if you have to change it
'ellipsis' => '...', # only translate this message to other languages if you have to change it
* @author Blahma
* @author Castelobranco
* @author Eliovir
+ * @author Geitost
* @author Iketsi
* @author Jens Liebenau
* @author Kaganer
* @author Michawiki
* @author Mihxil
* @author MinuteElectron
+ * @author Nemo bis
* @author Objectivesea
* @author Omnipaedista
* @author Pedroca cerebral
'Kategoria_diskuto' => NS_CATEGORY_TALK,
);
+$namespaceGenderAliases = array(
+ NS_USER => array( 'male' => 'Uzanto', 'female' => 'Uzantino' ),
+ NS_USER_TALK => array( 'male' => 'Uzanto-Diskuto', 'female' => 'Uzantino-Diskuto' ),
+);
+
$specialPageAliases = array(
'Activeusers' => array( 'Aktivaj_uzantoj' ),
'Allmessages' => array( 'Ĉiuj_mesaĝoj' ),
'create-this-page' => 'Krei ĉi tiun paĝon',
'delete' => 'Forigi',
'deletethispage' => 'Forigi ĉi tiun paĝon',
+'undeletethispage' => 'Restarigi tiun ĉi paĝon',
'undelete_short' => 'Malforigi {{PLURAL:$1|redakton|$1 redaktojn}}',
'viewdeleted_short' => 'Vidi {{PLURAL:$1|unu forigitan redakton|$1 forigitajn redaktojn}}',
'protect' => 'Protekti',
'disclaimers' => 'Malgarantio',
'disclaimerpage' => 'Project:Malgarantia paĝo',
'edithelp' => 'Helpo pri redaktado',
-'edithelppage' => 'Help:Kiel redakti paĝon',
'helppage' => 'Help:Enhavo',
'mainpage' => 'Ĉefpaĝo',
'mainpage-description' => 'Ĉefpaĝo',
'namespaceprotected' => "Vi ne rajtas redakti paĝojn en la '''$1''' nomspaco.",
'customcssprotected' => 'Vi ne rajtas redakti ĉi tiun CSS-paĝon, ĉar ĝi enhavas personajn alĝustigojn de alia uzanto.',
'customjsprotected' => 'Vi ne rajtas redakti ĉi tiun JavaScript-paĝon, ĉar ĝi enhavas personajn alĝustigojn de alia uzanto.',
+'mycustomcssprotected' => 'Vi ne havas la rajton redakti tiun ĉi CSS-paĝon.',
+'mycustomjsprotected' => 'Vi ne havas la rajton redakti tiun ĉi JavaScript-paĝon.',
'ns-specialprotected' => 'Paĝoj en la {{ns:special}} nomspaco ne povas esti redaktataj.',
'titleprotected' => "Ĉi titolo estas protektita de kreado de [[User:$1|$1]].
La kialo donata estis ''$2''.",
'userlogin-yourpassword' => 'Pasvorto',
'userlogin-yourpassword-ph' => 'Enigu vian pasvorton',
'yourpasswordagain' => 'Retajpu pasvorton',
+'createacct-yourpasswordagain' => 'Konfirmu pasvorton',
'remembermypassword' => 'Memori mian ensalutadon ĉe ĉi tiu komputilo (daŭrante maksimume $1 {{PLURAL:$1|tagon|tagojn}})',
'userlogin-remembermypassword' => 'Memoru mian ensaluton',
+'userlogin-signwithsecure' => 'Uzu sekurigitan konekton',
'securelogin-stick-https' => 'Resti konektita al HTTPS post ensalutado',
'yourdomainname' => 'Via domajno',
'password-change-forbidden' => 'Ve ne povas ŝanĝi pasvortojn en ĉi tiu vikio.',
'userlogout' => 'Elsaluti',
'notloggedin' => 'Ne ensalutinta',
'userlogin-noaccount' => 'Ĉu vi ne havas konton?',
-'nologin' => "Ĉu vi ne havas konton? '''$1'''.",
+'userlogin-joinproject' => 'Aliĝu al {{SITENAME}}',
+'nologin' => 'Ĉu vi ne havas konton? $1.',
'nologinlink' => 'Krei konton',
'createaccount' => 'Krei novan konton',
'gotaccount' => "Ĉu vi jam havas konton? '''$1'''.",
'gotaccountlink' => 'Ensaluti',
'userlogin-resetlink' => 'Ĉu vi forgesis ensalutajn detalojn?',
+'helplogin-url' => 'Help:Ensalutado',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Helpo pri ensalutado]]',
+'createacct-join' => 'Suben enigu informojn pri vi',
+'createacct-emailrequired' => 'Retpoŝta adreso',
+'createacct-emailoptional' => 'Retpoŝta adreso (nedeviga)',
+'createacct-email-ph' => 'Enigu vian retpoŝtan adreson',
'createaccountmail' => 'Uzi provizoran hazardsignan pasvorton kaj sendi ĝin al la retpoŝto suben',
+'createacct-realname' => 'Vera nomo (nedeviga)',
'createaccountreason' => 'Kialo:',
+'createacct-reason' => 'Kialo',
+'createacct-reason-ph' => 'Kial vi kreas plian konton',
+'createacct-captcha' => 'Sekureca kontrolo',
+'createacct-imgcaptcha-ph' => 'Entajpu la supran tekston',
+'createacct-submit' => 'Krei konton',
+'createacct-benefit-heading' => '{{SITENAME}} estas kreata de homoj kiel vi.',
+'createacct-benefit-body1' => '{{PLURAL:$1|redakto|redaktoj}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|paĝo|paĝoj}}',
'badretype' => 'La pasvortojn kiujn vi tajpis ne egalas.',
'userexists' => 'Salutnomo enigita jam estas uzata.
Bonvolu elekti alian nomon.',
'blocked-mailpassword' => 'Via IP adreso estas forbarita de redaktado, kaj tial
ne rajtas uzi la pasvorto-rekovran funkcion por malebligi misuzon.',
'eauthentsent' => 'Konfirma retmesaĝo estas sendita al la nomita retadreso. Antaŭ ol iu ajn alia mesaĝo estos sendita al la konto, vi devos sekvi la instrukciojn en la mesaĝo por konfirmi ke la konto ja estas la via.',
-'throttled-mailpassword' => 'Pasvorta rememorigilo estis jam sendita, ene de la {{PLURAL:$1|lasta $1 horo|lastaj $1 horoj}}. Por preventi misuzo, nur unu pasvorto-rememorigilo estos sendita po {{PLURAL:$1|$1 horo|$1 horoj}}.',
+'throttled-mailpassword' => 'Retpoŝto kun reŝargita pasvorto estis jam sendita ene de la {{PLURAL:$1|lasta horo|lastaj $1 horoj}}.
+Por preventi misuzon, nur unu reŝargita pasvorto estos sendita dum {{PLURAL:$1|horo|$1 horoj}}.',
'mailerror' => 'Okazis eraro sendante retpoŝtaĵon: $1',
'acct_creation_throttle_hit' => 'Vizitintoj al ĉi tiu vikio uzintaj vian IP-adreson kreis {{PLURAL:$1|1 konton|$1 kontojn}} dum la lasta tago, kiu estas la maksimume permesita en ĉi tiu tempoperiodo.
Tial, vizitantoj kun ĉi tiu IP-adreso ne povas krei pluajn kontojn ĉi-momente.',
# Special:PasswordReset
'passwordreset' => 'Restarigo de pasvorto',
-'passwordreset-text' => 'Plenigu ĉi tiun formularon por renovigi vian pasvorton.',
'passwordreset-legend' => 'Refari pasvorton',
'passwordreset-disabled' => 'Pasvortaj restarigoj estis malŝaltitaj en ĉi tiu vikio.',
'passwordreset-emaildisabled' => 'Retpoŝtaj funkcioj estas malfunkciigitaj en tiu ĉi vikio.',
-'passwordreset-pretext' => '{{PLURAL:$1||Enigi unu el la jenaj datenoj}}',
'passwordreset-username' => 'Salutnomo:',
'passwordreset-domain' => 'Domajno:',
'passwordreset-capture' => 'Vidi la rezultan retpoŝton?',
Via nuna IP-adreso estas $3, kaj la forbaro-identigo estas $5.
Bonvolu inkluzivi tiujn detalojn en iuj ajn demandoj kiun vi farus.',
-'blockednoreason' => 'nenia kialo donata',
+'blockednoreason' => 'neniu kialo estis donita',
'whitelistedittext' => 'Vi devas $1 por redakti paĝojn.',
'confirmedittext' => 'Vi devas konfirmi vian retpoŝtan adreson antaŭ ol redakti paĝojn. Bonvolu agordi kaj validigi vian retadreson per viaj [[Special:Preferences|preferoj]].',
'nosuchsectiontitle' => 'Ne povas trovi sekcion',
'loginreqtitle' => 'Nepre ensaluti',
'loginreqlink' => 'ensaluti',
'loginreqpagetext' => 'Vi devas $1 por rigardi aliajn paĝojn.',
-'accmailtitle' => 'Pasvorto sendita.',
+'accmailtitle' => 'La pasvorto estas sendita.',
'accmailtext' => "Hazarde generita pasvorto por [[User talk:$1|$1]] estis sendita al $2.
La pasvorto por ĉi tiu nova konto povas esti ŝanĝita en la paĝo ''[[Special:ChangePassword|ŝanĝi pasvorton]]'' dum ensalutado.",
Verŝajne ĝi estis forigita.',
'edit-conflict' => 'Redakto-konflikto.',
'edit-no-change' => 'Via redakto estis ignorita, ĉar neniu ŝanĝo estis farita al la teksto.',
+'postedit-confirmation' => 'Via redakto estis konservita.',
'edit-already-exists' => 'Ne eblis krei novan paĝon.
Ĝi jam ekzistas.',
'defaultmessagetext' => 'Defaŭlta teksto',
'searchmenu-legend' => 'Serĉaj opcioj',
'searchmenu-exists' => "'''Estas paĝo nomita \"[[:\$1]]\" en ĉi tiu vikio'''",
'searchmenu-new' => "'''Krei la paĝon \"[[:\$1]]\" en ĉi tiu vikio!'''",
-'searchhelp-url' => 'Help:Enhavo',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Traserĉi paĝojn kun ĉi tiu prefikso]]',
'searchprofile-articles' => 'Enhavaj paĝoj',
'searchprofile-project' => 'Paĝoj pri Helpo kaj Projektoj',
'upload-proto-error' => 'Malvalida protokolo',
'upload-proto-error-text' => 'Fora alŝuto devas URL-on komence de <code>http://</code> aŭ <code>ftp://</code>.',
'upload-file-error' => 'Interna eraro',
-'upload-file-error-text' => 'Interna eraro okazis provante krei labordosieron ĉe la servilo. Bonvolu kontakti [[Special:ListUsers/sysop|sistem-administranton]].',
+'upload-file-error-text' => 'Interna eraro okazis provante krei labordosieron ĉe la servilo. Bonvolu kontakti [[Special:ListUsers/sysop|administranton]].',
'upload-misc-error' => 'Nekonata eraro pri alŝutado.',
'upload-misc-error-text' => 'Nekonata eraro okazis dum la alŝuto.
Bonvolu kontroli ke la URL-o estas valida kaj atingebla tiam reprovu.
-Se la problemo kontinuas, kontaku [[Special:ListUsers/sysop|sisteman administranton]].',
+Se la problemo kontinuas, kontaku [[Special:ListUsers/sysop|administranton]].',
'upload-too-many-redirects' => 'La URL-o enhavis tro multajn alidirektilojn',
'upload-unknown-size' => 'Nekonata grandeco',
'upload-http-error' => 'HTTP-eraro okazis: $1',
Ili devus anstataŭe alligi la ĝustan temon.<br />
Paĝo estas traktata kiel apartigilo se ĝi uzas ŝablonon kiu estas ligita de [[MediaWiki:Disambiguationspage]]",
+'pageswithprop' => 'Paĝoj kun paĝa atributo',
+'pageswithprop-legend' => 'Paĝoj kun paĝa atributo',
'pageswithprop-prop' => 'Nomo de la atributo:',
'pageswithprop-submit' => 'Ek',
kaj/aŭ informumos pri la libro ligita.
La {{SITENAME}} ne estas komerce ligita al tiuj vendejoj, kaj la listo ne estu
komprenata kiel rekomendo aŭ reklamo.',
-'booksources-invalid-isbn' => 'La donata ISBN verŝajne esats nevalida; kontroli por eraroj kopiitaj el la originala fonto.',
+'booksources-invalid-isbn' => 'La donata ISBN verŝajne estas nevalida; kontrolu pri erara kopiado el la originala fonto.',
# Special:Log
'specialloguserlabel' => 'Faranto:',
'notvisiblerev' => 'Versio estis forigita',
'watchnochange' => 'Neniu artikolo en via atentaro redaktiĝis dum la prispektita tempoperiodo.',
'watchlist-details' => '{{PLURAL:$1|$1 paĝon|$1 paĝojn}} en via atentaro, krom diskutpaĝoj.',
-'wlheader-enotif' => '* Retpoŝta sciigo estas ebligita',
-'wlheader-showupdated' => "* Montriĝas per '''dikaj literoj''' tiuj paĝoj, kiujn oni ŝanĝis ekde kiam vi laste vizitis ilin",
+'wlheader-enotif' => 'Retpoŝta sciigo estas ebligita',
+'wlheader-showupdated' => "Montriĝas per '''dikaj literoj''' tiuj paĝoj, kiujn oni ŝanĝis ekde kiam vi laste vizitis ilin",
'watchmethod-recent' => 'traserĉas lastajn redaktojn',
'watchmethod-list' => 'traserĉas priatentitajn',
'watchlistcontains' => 'Via atentaro enhavas $1 {{PLURAL:$1|paĝon|paĝojn}}.',
'sp-contributions-blocked-notice-anon' => 'Ĉi tiu IP-adreso estas nune forbarita.
Jen la lasta ero de la forbara protokolo:',
'sp-contributions-search' => 'Serĉado de kontribuoj',
-'sp-contributions-username' => 'IP-adreso aŭ salutnomo:',
+'sp-contributions-username' => 'IP-adreso aŭ uzantonomo:',
'sp-contributions-toponly' => 'Montru nur ŝanĝojn kiuj estas la plej lastaj revizioj',
'sp-contributions-submit' => 'Serĉi',
'modern.css' => '/* La jena CSS influos la paĝaspekton por uzantoj de la Moderna temo. */',
'vector.css' => '/* La jena CSS influos la paĝaspekton por uzantoj de la Vektora temo. */',
'print.css' => '/* La jena CSS influos la prezentadon de la presaĵo. */',
-'handheld.css' => '/* La jena CSS influos manpremitajn komputilojn sur bazo de la temo kiu arangiĝis en $wgHandheldStyle. */',
'noscript.css' => '/* La jena CSS influos uzantojn, kiuj desebligis Ĝavaskripton. */',
'group-autoconfirmed.css' => '/* La jena CSS sole influos auxtokonfirmatajn uzantojn. */',
'group-bot.css' => '/* La jena CSS sole influos robotojn. */',
'table_pager_empty' => 'Neniaj rezultoj',
# Auto-summaries
-'autosumm-blank' => 'Forviŝis la paĝon',
-'autosumm-replace' => "Anstataŭigante paĝojn kun '$1'",
+'autosumm-blank' => 'Forviŝis la tutan enhavon el la paĝo',
+'autosumm-replace' => "Anstataŭigis paĝon per '$1'",
'autoredircomment' => 'Alidirektigis al [[$1]]',
'autosumm-new' => "Nova paĝo kun '$1'",
* @author Fitoschido
* @author Fluence
* @author Fortega
+ * @author Geitost
* @author Gustronico
* @author Gwickwire
* @author Hahc21
* @author Maor X
* @author MarcoAurelio
* @author McDutchie
+ * @author Miguel2706
* @author Muro de Aguas
* @author Omnipaedista
* @author Orgullomoore
* @author Piolinfax
* @author Platonides
* @author PoLuX124
+ * @author QuimGil
* @author Ralgis
* @author Remember the dot
* @author Remux
'feb' => 'feb',
'mar' => 'mar',
'apr' => 'abr',
-'may' => 'may',
+'may' => 'mayo',
'jun' => 'jun',
'jul' => 'jul',
'aug' => 'ago',
'oct' => 'oct',
'nov' => 'nov',
'dec' => 'dic',
+'january-date' => '$1 de enero',
+'february-date' => '$1 de febrero',
+'march-date' => '$1 de marzo',
+'april-date' => '$1 de abril',
+'may-date' => '$1 de mayo',
+'june-date' => '$1 de junio',
+'july-date' => '$1 de julio',
+'august-date' => '$1 de agosto',
+'september-date' => '$1 de septiembre',
+'october-date' => '$1 de octubre',
+'november-date' => '$1 de noviembre',
+'december-date' => '$1 de diciembre',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoría|Categorías}}',
'create-this-page' => 'Crear esta página',
'delete' => 'Borrar',
'deletethispage' => 'Borrar esta página',
+'undeletethispage' => 'Restaurar esta página',
'undelete_short' => 'Restaurar {{PLURAL:$1|una edición|$1 ediciones}}',
'viewdeleted_short' => 'Ver {{PLURAL:$1|una edición borrada|$1 ediciones borradas}}',
'protect' => 'Proteger',
'disclaimers' => 'Aviso legal',
'disclaimerpage' => 'Project:Limitación general de responsabilidad',
'edithelp' => 'Ayuda de edición',
-'edithelppage' => 'Help:Cómo se edita una página',
'helppage' => 'Help:Contenidos',
'mainpage' => 'Página principal',
'mainpage-description' => 'Página principal',
'namespaceprotected' => "No tienes permiso para editar las páginas del espacio de nombres '''$1'''.",
'customcssprotected' => 'No tienes permiso para editar esta página CSS, porque contiene configuraciones personales de otro usuario.',
'customjsprotected' => 'No tienes permiso para editar esta página JavaScript, porque contiene configuraciones personales de otro usuario.',
+'mycustomcssprotected' => 'No tienes permiso para editar esta página CSS.',
+'mycustomjsprotected' => 'No tienes permiso para editar esta página JavaScript.',
'ns-specialprotected' => 'Las páginas especiales no se pueden editar',
'titleprotected' => 'Esta página ha sido protegida contra creación por [[User:$1|$1]].
El motivo dado fue: "\'\'$2\'\'".',
'welcomecreation-msg' => 'Tu cuenta ha sido creada.
No olvides cambiar tus [[Special:Preferences|preferencias de {{SITENAME}} ]].',
'yourname' => 'Nombre de usuario:',
-'userlogin-yourname' => 'Nombre de usuario',
+'userlogin-yourname' => 'Usuario',
'userlogin-yourname-ph' => 'Escribe tu nombre de usuario',
'yourpassword' => 'Contraseña:',
'userlogin-yourpassword' => 'Contraseña',
'createacct-yourpasswordagain' => 'Confirma la contraseña',
'createacct-yourpasswordagain-ph' => 'Repite la contraseña',
'remembermypassword' => 'Mantenerme conectado en este navegador (hasta $1 {{PLURAL:$1|día|días}})',
-'userlogin-remembermypassword' => 'Mantener mi sesión iniciada',
-'userlogin-signwithsecure' => 'Idetificarse mediante servidor seguro',
+'userlogin-remembermypassword' => 'Mantener mi sesión',
+'userlogin-signwithsecure' => 'Usar conexión segura',
'securelogin-stick-https' => 'Permanecer conectado a HTTPS después de iniciar sesión',
'yourdomainname' => 'Dominio',
'password-change-forbidden' => 'No puedes cambiar las contraseñas de este wiki.',
'userlogout' => 'Cerrar sesión',
'notloggedin' => 'No has iniciado sesión',
'userlogin-noaccount' => '¿No tienes una cuenta?',
-'userlogin-joinproject' => 'Unirse a {{SITENAME}}',
+'userlogin-joinproject' => 'Únete a {{SITENAME}}',
'nologin' => '¿No tienes una cuenta? $1.',
'nologinlink' => 'Crear una cuenta',
'createaccount' => 'Crear una cuenta',
'gotaccount' => '¿Ya tienes una cuenta? $1.',
'gotaccountlink' => 'Entrar',
'userlogin-resetlink' => '¿Olvidaste tus datos de acceso?',
+'userlogin-resetpassword-link' => 'Restablecer la contraseña',
'helplogin-url' => 'Help:Inicio de sesión',
-'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ayuda para identificarse]]',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ayuda]]',
'createacct-join' => 'Introduce tus datos debajo.',
'createacct-emailrequired' => 'Dirección de correo electrónico',
'createacct-emailoptional' => 'Dirección de correo electrónico (opcional)',
'cannotchangeemail' => 'Las direcciones de la correo electrónico de las cuentas de usuario no puedes cambiarse en esta wiki.',
'emaildisabled' => 'Este sitio no puede enviar mensajes de correo electrónico.',
'accountcreated' => 'Cuenta creada',
-'accountcreatedtext' => 'La cuenta de usuario para $1 ha sido creada.',
+'accountcreatedtext' => 'La cuenta de usuario de [[{{ns:User}}: $1 | $1 ]] ([[{{ns:User talk}}: $1 |talk]]) ha sido creada.',
'createaccount-title' => 'Creación de cuenta para {{SITENAME}}',
'createaccount-text' => 'Alguien creó en {{SITENAME}} ($4) una cuenta asociada a este correo electrónico con el nombre «$2».
La contraseña asignada automáticamente es «$3». Por favor entra ahora y cambia tu contraseña.
# Special:PasswordReset
'passwordreset' => 'Restablecimiento de contraseña',
-'passwordreset-text' => 'Completa este formulario para restablecer la contraseña.',
+'passwordreset-text-one' => 'Completa este formulario para restablecer tu contraseña.',
+'passwordreset-text-many' => '{{PLURAL:$1|Introducir uno de los datos para restablecer la contraseña.}}',
'passwordreset-legend' => 'Restablecer contraseña',
'passwordreset-disabled' => 'Se ha desactivado el restablecimiento de contraseñas en este wiki.',
'passwordreset-emaildisabled' => 'Las funciones de correo electrónico han sido desactivadas en esta wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Introduce uno de los elementos de datos siguientes}}',
'passwordreset-username' => 'Nombre de usuario:',
'passwordreset-domain' => 'Dominio:',
'passwordreset-capture' => '¿Ver el mensaje resultante?',
Parece que ha sido borrada.',
'edit-conflict' => 'Conflicto de edición.',
'edit-no-change' => 'Se ignoró tu revisión, porque no se hizo ningún cambio al texto.',
+'postedit-confirmation' => 'Se ha guardado tu edición.',
'edit-already-exists' => 'No se pudo crear una página nueva.
Ya existe.',
'defaultmessagetext' => 'Texto de mensaje predeterminado',
'content-failed-to-parse' => 'No se pudo analizar el contenido $2 del modelo $1: $3',
'invalid-content-data' => 'Datos de contenido inválidos',
'content-not-allowed-here' => 'El contenido "$1" no está permitido en la página [[$2]]',
-'editwarning-warning' => 'Dejar esta página le causará la pérdida de cualquier cambio que haya hecho.
-Si está "logueado", puede deshabilitar esta advertencia en la sección "{{int:prefs-editing}}" de sus preferencias.',
+'editwarning-warning' => 'Si abandonas esta página perderás tus cambios.
+Si estás identificado, puedes deshabilitar esta advertencia en la sección "Edición" de tus preferencias.',
# Content models
'content-model-wikitext' => 'texto wiki',
'searchmenu-legend' => 'Opciones de búsqueda',
'searchmenu-exists' => "'''Hay una página llamada \"[[:\$1]]\" en esta wiki.'''",
'searchmenu-new' => "'''¡Crea la página «[[:$1]]» en este wiki!'''",
-'searchhelp-url' => 'Help:Ayuda',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Otras páginas con este prefijo]]',
'searchprofile-articles' => 'Páginas de contenido',
'searchprofile-project' => 'Páginas de ayuda y de proyecto',
'userrights-changeable-col' => 'Grupos que puedes cambiar',
'userrights-unchangeable-col' => 'Grupos que no puedes cambiar',
'userrights-conflict' => 'Hay un conflicto de permisos de usuario. Aplica tus cambios de nuevo.',
+'userrights-removed-self' => 'Usted eliminado con éxito sus propios derechos. Por lo tanto, usted ya no es capaz de acceder a esta página.',
# Groups
'group' => 'Grupo:',
'right-editusercssjs' => 'Editar las páginas de CSS y JS de otros usuarios',
'right-editusercss' => 'Editar las páginas de CSS de otros usuarios',
'right-edituserjs' => 'Editar las páginas de JS de otros usuarios',
+'right-editmyusercss' => 'Editar tus archivos de usuario CSS',
+'right-editmyuserjs' => 'Editar tus propios archivos JavaScript de usuario',
'right-rollback' => 'Revertir rápidamente las ediciones del último usuario que modificó una página en particular',
'right-markbotedits' => 'Marcar ediciones deshechas como ediciones de un bot',
'right-noratelimit' => 'No afectado por límites de frecuencia',
'upload-proto-error' => 'Protocolo incorrecto',
'upload-proto-error-text' => 'Para subir archivos desde otra página la URL debe comenzar por <code>http://</code> o <code>ftp://</code>.',
'upload-file-error' => 'Error interno al subir el archivo',
-'upload-file-error-text' => 'Ha ocurrido un error interno mientras se intentaba crear un fichero temporal en el servidor. Por favor, contacta con un [[Special:ListUsers/sysop|administrador del sistema]].',
+'upload-file-error-text' => 'Ha ocurrido un error interno mientras se intentaba crear un fichero temporal en el servidor. Por favor, contacta con un [[Special:ListUsers/sysop|administrador]].',
'upload-misc-error' => 'Error desconocido en la subida',
-'upload-misc-error-text' => 'Ha ocurrido un error durante la subida. Por favor verifica que la URL es válida y accesible e inténtalo de nuevo. Si el problema persiste, contacta con un [[Special:ListUsers/sysop|administrador del sistema]].',
+'upload-misc-error-text' => 'Ha ocurrido un error durante la subida. Por favor verifica que la URL es válida y accesible e inténtalo de nuevo. Si el problema persiste, contacta con un [[Special:ListUsers/sysop|administrador]].',
'upload-too-many-redirects' => 'La URL contenía demasiadas redirecciones',
'upload-unknown-size' => 'Tamaño desconocido',
'upload-http-error' => 'Ha ocurrido un error HTTP: $1',
'notvisiblerev' => 'La última revisión de un usuario diferente ha sido borrada',
'watchnochange' => 'Ninguno de los artículos de tu lista de seguimiento fue editado en el periodo de tiempo mostrado.',
'watchlist-details' => '{{PLURAL:$1|$1 página|$1 páginas}} en su lista de seguimiento, sin contar las de discusión.',
-'wlheader-enotif' => '* La notificación por correo electrónico está activada.',
-'wlheader-showupdated' => "* Las páginas modificadas desde su última visita aparecen en '''negrita'''",
+'wlheader-enotif' => 'La notificación por correo está activada.',
+'wlheader-showupdated' => "Las páginas modificadas desde su última visita aparecen en '''negrita'''.",
'watchmethod-recent' => 'revisando cambios recientes en páginas vigiladas',
'watchmethod-list' => 'revisando las páginas vigiladas en busca de cambios recientes',
'watchlistcontains' => 'Tu lista de seguimiento posee $1 {{PLURAL:$1|página|páginas}}.',
'mycontris' => 'Contribuciones',
'contribsub2' => '$1 ($2)',
'nocontribs' => 'No se encontraron cambios que cumplieran estos criterios.',
-'uctop' => '(última edición)',
+'uctop' => '(Edición actual)',
'month' => 'Desde el mes (y anteriores):',
'year' => 'Desde el año (y anteriores):',
'thumbnail-more' => 'Aumentar',
'filemissing' => 'Falta archivo',
'thumbnail_error' => 'Error al crear miniatura: $1',
+'thumbnail_error_remote' => 'Mensaje de error de $1 :
+$2',
'djvu_page_error' => 'Página DjVu fuera de rango',
'djvu_no_xml' => 'Imposible obtener XML para el archivo DjVu',
'thumbnail-temp-create' => 'No se ha podido crear el archivo temporal de la miniatura',
'modern.css' => '/* El CSS colocado en esta página afectará a los usuarios que usen la piel "Modern" */',
'vector.css' => '/* El CSS colocado en esta página afectará a los usuarios que usen la piel "Vector" */',
'print.css' => '/* Los estilos CSS colocados aquí afectarán la impresión */',
-'handheld.css' => '/* Los estilos CSS colocados aquí afectarán a los dispositivos móviles basados en las pieles configuradas en $wgHandheldStyle */',
'noscript.css' => '/* Los estilos CSS colocados aquí se aplicarán a los usuarios que hayan desactivado el JavaScript en su navegador */',
'group-autoconfirmed.css' => '/* Los estilos CSS colocados aquí se aplicarán para todos los usuarios del grupo Usuarios autoconfirmados */',
'group-bot.css' => '/* Los estilos CSS colocados aquí se aplicarán para todos los usuarios del grupo Bots */',
'logentry-delete-delete' => '$1 {{GENDER:$2|borró}} la página «$3»',
'logentry-delete-restore' => '$1 restauró la página «$3»',
'logentry-delete-event' => '$1 {{GENDER:$2|modificó}} la visibilidad de {{PLURAL:$5|un evento|$5 eventos}} del registro en $3: $4',
-'logentry-delete-revision' => '$1 modificó la visibilidad de {{PLURAL:$5|una edición|$5 ediciones}} en la página $3: $4',
-'logentry-delete-event-legacy' => '$1 modificó la visibilidad de los eventos del registro en $3',
-'logentry-delete-revision-legacy' => '$1 modificó la visibilidad de varias ediciones en la página $3',
+'logentry-delete-revision' => '$1 {{GENDER:$2|modificó}} la visibilidad de {{PLURAL:$5|una revisión |$5 revisiones}} en la página $3: $4',
+'logentry-delete-event-legacy' => '$1 ha {{GENDER:$2|cambiado}} la visibilidad de registro de eventos en $3',
+'logentry-delete-revision-legacy' => '$1 ha {{GENDER:$2|cambiado}} la visibilidad de las revisiones en la página $3',
'logentry-suppress-delete' => '$1 {{GENDER:$2|borró}}, con restricciones para administradores aplicadas, la página $3',
-'logentry-suppress-event' => '$1 modificó secretamente la visibilidad de {{PLURAL:$5|un evento del registro|$5 eventos del registro}} en $3: $4',
+'logentry-suppress-event' => '$1 {{GENDER:$2|modificó}} secretamente la visibilidad de {{PLURAL:$5|una edición|$5 ediciones}} en la página $3: $4',
'logentry-suppress-revision' => '$1 modificó secretamente la visibilidad de {{PLURAL:$5|una edición|$5 ediciones}} en la página $3: $4',
-'logentry-suppress-event-legacy' => '$1 modificó secretamente la visibilidad de los eventos del registro en $3',
-'logentry-suppress-revision-legacy' => '$1 modificó secretamente la visibilidad de varias ediciones en la página $3',
+'logentry-suppress-event-legacy' => '$1 {{GENDER:$2|modificó}} secretamente la visibilidad de los eventos del registro en $3',
+'logentry-suppress-revision-legacy' => '$1 {{GENDER:$2|modificó}} secretamente la visibilidad de varias ediciones en la página $3',
'revdelete-content-hid' => 'contenido ocultado',
'revdelete-summary-hid' => 'resumen de edición oculto',
'revdelete-uname-hid' => 'nombre de usuario ocultado',
'logentry-move-move-noredirect' => '$1 movió la página $3 a $4 sin dejar una redirección',
'logentry-move-move_redir' => '$1 movió la página $3 a $4 sobre una redirección',
'logentry-move-move_redir-noredirect' => '$1 movió la página $3 a $4 sobre una redirección y sin dejar una redirección',
-'logentry-patrol-patrol' => '$1 marcó como patrullada la edición $4 de la página $3',
-'logentry-patrol-patrol-auto' => '$1 marcó automáticamente la edición $4 de la página $3 como patrullada',
-'logentry-newusers-newusers' => 'La cuenta de usuario $1 ha sido creada',
+'logentry-patrol-patrol' => '$1 {{GENDER:$2|marcó}} como patrullada la edición $4 de la página $3',
+'logentry-patrol-patrol-auto' => '$1 {{GENDER:$2|marcó}} automáticamente la edición $4 de la página $3 como patrullada',
+'logentry-newusers-newusers' => 'La cuenta de usuario $1 ha sido {{GENDER:$2|creada}}',
'logentry-newusers-create' => 'La cuenta de usuario $1 ha sido creada',
'logentry-newusers-create2' => 'La cuenta de usuario $3 ha sido creada por $1',
'logentry-newusers-byemail' => 'la cuenta de usuario $3 ha sido creada por $1 y la contraseña ha sido enviada por correo',
*
* @author Avjoska
* @author Cylly1512
+ * @author Geitost
* @author Hendrik
* @author Hendrix
* @author Jaan513
* @author Ker
* @author Kyng
* @author Morel
+ * @author Nemo bis
* @author Oop
* @author Pikne
* @author Silvar
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dets',
+'january-date' => '$1. jaanuar',
+'february-date' => '$1. veebruar',
+'march-date' => '$1. märts',
+'april-date' => '$1. aprill',
+'may-date' => '$1. mai',
+'june-date' => '$1. juuni',
+'july-date' => '$1. juuli',
+'august-date' => '$1. august',
+'september-date' => '$1. september',
+'october-date' => '$1. oktoober',
+'november-date' => '$1. november',
+'december-date' => '$1. detsember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategooria|Kategooriad}}',
'create-this-page' => 'Loo see lehekülg',
'delete' => 'Kustuta',
'deletethispage' => 'Kustuta see lehekülg',
+'undeletethispage' => 'Taasta see lehekülg',
'undelete_short' => 'Taasta {{PLURAL:$1|üks muudatus|$1 muudatust}}',
'viewdeleted_short' => 'Vaata {{PLURAL:$1|üht|$1}} kustutatud redaktsiooni',
'protect' => 'Kaitse',
'disclaimers' => 'Hoiatused',
'disclaimerpage' => 'Project:Hoiatused',
'edithelp' => 'Redigeerimisjuhend',
-'edithelppage' => 'Help:Kuidas_lehte_redigeerida',
'helppage' => 'Help:Sisukord',
'mainpage' => 'Esileht',
'mainpage-description' => 'Esileht',
'namespaceprotected' => "Sul pole õigust redigeerida lehekülgi nimeruumis '''$1'''.",
'customcssprotected' => 'Sul pole õigust seda CSS-lehekülge redigeerida, sest see sisaldab teise kasutaja isiklikke sätteid.',
'customjsprotected' => 'Sul pole õigust seda JavaScripti lehekülge redigeerida, sest see sisaldab teise kasutaja isiklikke sätteid.',
+'mycustomcssprotected' => 'Sul pole õigust redigeerida seda CSS-lehekülge.',
+'mycustomjsprotected' => 'Sul pole õigust redigeerida seda JavaScript-lehekülge.',
'ns-specialprotected' => 'Erilehekülgi ei saa redigeerida.',
'titleprotected' => "Kasutaja [[User:$1|$1]] on selle pealkirjaga lehe loomise keelanud esitades järgmise põhjenduse: ''$2''.",
'filereadonlyerror' => 'Faili "$1" ei saa muuta, sest hoidla "$2" on kirjutuskaitstud.
'createacct-yourpasswordagain-ph' => 'Sisesta uuesti parool',
'remembermypassword' => 'Jäta parool meelde (kuni $1 {{PLURAL:$1|päevaks|päevaks}})',
'userlogin-remembermypassword' => 'Jää sisseloginuks',
-'userlogin-signwithsecure' => 'Logi sisse turvaserveri kaudu',
+'userlogin-signwithsecure' => 'Kasuta turvalist ühendust',
'securelogin-stick-https' => 'Jätka pärast sisselogimist HTTPS-ühenduse kasutamist',
'yourdomainname' => 'Sinu domeen:',
'password-change-forbidden' => 'Selles vikis ei saa paroole muuta.',
'notloggedin' => 'Sisse logimata',
'userlogin-noaccount' => 'Kas sul pole kontot?',
'userlogin-joinproject' => 'Ühine projektiga {{SITENAME}}',
-'nologin' => "Sul pole kontot? '''$1'''.",
+'nologin' => 'Sul pole kontot? $1.',
'nologinlink' => 'Registreeru siin',
'createaccount' => 'Loo uus konto',
'gotaccount' => "Kui sul on juba konto, '''$1'''.",
'gotaccountlink' => 'logi sisse',
'userlogin-resetlink' => 'Kas oled unustanud oma sisselogimisandmed?',
+'userlogin-resetpassword-link' => 'Lähtesta oma parool',
'helplogin-url' => 'Help:Sisselogimine',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Sisselogimisabi]]',
'createacct-join' => 'Sisesta allapoole oma andmed.',
'createacct-imgcaptcha-ph' => 'Sisesta ülalnähtav tekst',
'createacct-submit' => 'Loo oma konto',
'createacct-benefit-heading' => '{{SITENAME}} on sinusuguste inimeste tehtud.',
-'createacct-benefit-body1' => 'muudatust',
-'createacct-benefit-body2' => 'lehekülge',
-'createacct-benefit-body3' => 'hiljutist kaastöölist',
+'createacct-benefit-body1' => '{{PLURAL:$1|muudatus|muudatust}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|lehekülg|lehekülge}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|hiljutine kaastööline|hiljutist kaastöölist}}',
'badretype' => 'Sisestatud paroolid ei lange kokku.',
'userexists' => 'Sisestatud kasutajanimi on juba kasutusel.
Palun valige uus nimi.',
'cannotchangeemail' => 'Selles vikis ei saa konto e-posti aadressi muuta.',
'emaildisabled' => 'Selle võrgukoha kaudu ei saa e-kirju saata.',
'accountcreated' => 'Konto loodud',
-'accountcreatedtext' => 'Kasutajakonto kasutajatunnusele $1 loodud.',
+'accountcreatedtext' => 'Kasutaja [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) konto on loodud.',
'createaccount-title' => '{{GRAMMAR:illative|{{SITENAME}}}} konto loomine',
'createaccount-text' => 'Keegi on loonud {{GRAMMAR:illative|{{SITENAME}}}} ($4) sinu e-posti aadressile vastava kasutajatunnuse "$2". Parooliks seati "$3". Logi sisse ja muuda oma parool.
# Email sending
'php-mail-error-unknown' => 'Tundmatu tõrge PHP funktsioonis mail().',
-'user-mail-no-addy' => 'Püüdsid saata e-kirja ilma meiliaadressita.',
+'user-mail-no-addy' => 'Püüdsid saata e-kirja ilma e-posti aadressita.',
'user-mail-no-body' => 'Püüti saata tühja või ebamõistlikult lühikese sisuosaga e-kirja.',
# Change password dialog
# Special:PasswordReset
'passwordreset' => 'Parooli lähtestamine',
-'passwordreset-text' => 'Täida see vorm, et oma parool lähtestada.',
+'passwordreset-text-one' => 'Täida see vorm, et oma parool lähtestada.',
+'passwordreset-text-many' => '{{PLURAL:$1|Sisesta üks andmeüksus, et oma parool lähtestada.}}',
'passwordreset-legend' => 'Parooli lähtestamine',
'passwordreset-disabled' => 'Selles vikis on paroolide lähtestamine keelatud.',
'passwordreset-emaildisabled' => 'E-posti funktsioonid on selles vikis keelatud.',
-'passwordreset-pretext' => '{{PLURAL:$1||Sisesta üks järgmistest andmeüksustest.}}',
'passwordreset-username' => 'Kasutajanimi:',
'passwordreset-domain' => 'Domeen:',
'passwordreset-capture' => 'Näita lähetatavat e-kirja?',
Tundub, et see on kustutatud.',
'edit-conflict' => 'Redigeerimiskonflikt.',
'edit-no-change' => 'Sinu redigeerimist ignoreeriti, sest tekstile ei olnud tehtud muudatusi.',
+'postedit-confirmation' => 'Sinu muudatus on salvestatud.',
'edit-already-exists' => 'Ei saanud alustada uut lehekülge.
See on juba olemas.',
'defaultmessagetext' => 'Sõnumi vaiketekst',
'invalid-content-data' => 'Vigased sisuandmed',
'content-not-allowed-here' => 'Lehekülg [[$2]] ei või sisaldada $1.',
'editwarning-warning' => 'Sellelt leheküljelt lahkumise tõttu võivad tehtud muudatused kaotsi minna.
-Kui oled sisse loginud, saad selle hoiatuse eelistuste alaosas "{{int:prefs-editing}}" keelata.',
+Kui oled sisse loginud, saad selle hoiatuse eelistuste alaosas "Toimetamine" keelata.',
# Content models
'content-model-wikitext' => 'vikiteksti',
'difference-title' => 'Erinevus lehekülje "$1" redaktsioonide vahel',
'difference-title-multipage' => 'Erinevus lehekülgede "$1" ja "$2" vahel',
'difference-multipage' => '(Lehekülgede erinevus)',
-'lineno' => 'Rida $1:',
+'lineno' => '$1. rida:',
'compareselectedversions' => 'Võrdle valitud redaktsioone',
'showhideselectedversions' => 'Näita/peida valitud versioonid',
'editundo' => 'eemalda',
'searchmenu-legend' => 'Otsingu sätted',
'searchmenu-exists' => "'''Lehekülg pealkirjaga \"[[:\$1]]\" on olemas.'''",
'searchmenu-new' => "'''Loo lehekülg pealkirjaga \"[[:\$1]]\".'''",
-'searchhelp-url' => 'Help:Sisukord',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Sirvi selle eesliitega lehekülgi]]',
'searchprofile-articles' => 'Sisuleheküljed',
'searchprofile-project' => 'Abi- ja projektilehed',
'searchdisabled' => "Otsimine on preagu keelatud.
Vahepeal saad otsimiseks Google'it kasutada.
Pane tähele, et Google'is talletatud {{GRAMMAR:genitive|{{SITENAME}}}} sisu võib olla iganenud.",
+'search-error' => 'Otsimise ajal ilmnes tõrge: $1',
# Preferences page
'preferences' => 'Eelistused',
'userrights-changeable-col' => 'Rühmad, mida sa saad muuta',
'userrights-unchangeable-col' => 'Rühmad, mida sa ei saa muuta',
'userrights-conflict' => 'Kasutajaõiguste konflikt! Palun tee muudatused uuesti.',
+'userrights-removed-self' => 'Võtsid edukalt endalt õigused. Seetõttu sellele leheküljele sa enam ligi ei pääse.',
# Groups
'group' => 'Rühm:',
'right-editusercssjs' => 'Redigeerida teiste kasutajate CSS- ja JS-faile',
'right-editusercss' => 'Redigeerida teiste kasutajate CSS-faile',
'right-edituserjs' => 'Redigeerida teiste kasutajate JS-faile',
+'right-editmyusercss' => 'Redigeerida oma CSS-kasutajafaile',
+'right-editmyuserjs' => 'Redigeerida oma JavaScript-kasutajafaile',
'right-rollback' => 'Tühistada otsekohe lehekülje viimase redigeerija muudatused',
'right-markbotedits' => 'Märkida muudatuse tühistamine robotimuudatusena',
'right-noratelimit' => 'Mööduda toimingumäära limiitidest',
'notvisiblerev' => 'Redaktsioon on kustutatud',
'watchnochange' => 'Valitud ajavahemiku jooksul pole ühelgi jälgitaval leheküljel muudatusi tehtud.',
'watchlist-details' => 'Jälgimisloendis on {{PLURAL:$1|$1 lehekülg|$1 lehekülge}} (ei arvestata arutelulehekülgi).',
-'wlheader-enotif' => '* E-posti teel teavitamine on aktiveeritud.',
-'wlheader-showupdated' => "* Leheküljed, mida on muudetud peale sinu viimast külastust, on '''rasvases kirjas'''.",
+'wlheader-enotif' => 'E-posti teel teavitamine on lubatud.',
+'wlheader-showupdated' => "Leheküljed, mida on muudetud peale sinu viimast külastust, on '''rasvases kirjas'''.",
'watchmethod-recent' => 'jälgitud lehekülgedel tehtud viimaste muudatuste läbivaatamine',
'watchmethod-list' => 'jälgitavate lehekülgede viimased muudatused',
'watchlistcontains' => 'Sinu jälgimisloendis on $1 {{PLURAL:$1|lehekülg|lehekülge}}.',
'mycontris' => 'Kaastöö',
'contribsub2' => 'Kasutaja $1 ($2) jaoks',
'nocontribs' => 'Antud kriteeriumitele vastavaid muudatusi ei leitud.',
-'uctop' => ' (uusim)',
+'uctop' => '(praegune)',
'month' => 'Alates kuust (ja varasemad):',
'year' => 'Alates aastast (ja varasemad):',
'thumbnail-more' => 'Suurenda',
'filemissing' => 'Fail puudub',
'thumbnail_error' => 'Viga pisipildi loomisel: $1',
+'thumbnail_error_remote' => 'Tõrketeade asukohast $1:
+$2',
'djvu_page_error' => 'DjVu-failis ei ole sellist lehekülge',
'djvu_no_xml' => 'DjVu failist XML-i lugemine ebaõnnestus.',
'thumbnail-temp-create' => 'Ajutist pisipildifaili ei õnnestu luua.',
'hours-ago' => '$1 {{PLURAL:$1|tund|tundi}} tagasi',
'minutes-ago' => '$1 {{PLURAL:$1|minut|minutit}} tagasi',
'seconds-ago' => '$1 {{PLURAL:$1|sekund|sekundit}} tagasi',
+'monday-at' => 'Esmaspäeval kell $1',
+'tuesday-at' => 'Teisipäeval kell $1',
+'wednesday-at' => 'Kolmapäeval kell $1',
+'thursday-at' => 'Neljapäeval kell $1',
+'friday-at' => 'Reedel kell $1',
+'saturday-at' => 'Laupäeval kell $1',
+'sunday-at' => 'Pühapäeval kell $1',
+'yesterday-at' => 'Eile kell $1',
# Bad image list
'bad_image_list' => 'Arvesse võetakse ainult nimekirja ühikud (read, mis algavad sümboliga *).
* @author Kaustubh
* @author Kobazulo
* @author Malafaya
+ * @author Nemo bis
* @author Reedy
* @author Theklan
* @author Unai Fdz. de Betoño
'oct' => 'Urr',
'nov' => 'Aza',
'dec' => 'Abe',
+'january-date' => 'Urtarrilaren $1',
+'february-date' => 'Otsailaren $1',
+'march-date' => 'Martxoaren $1',
+'april-date' => 'Apirilaren $1',
+'may-date' => 'Maiatzaren $1',
+'june-date' => 'Ekainaren $1',
+'july-date' => 'Uztailaren $1',
+'august-date' => 'Abuztuaren $1',
+'september-date' => 'Irailaren $1',
+'october-date' => 'Urriaren $1',
+'november-date' => 'Azaroaren $1',
+'december-date' => 'Abenduaren $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategoria|Kategoriak}}',
'hidden-category-category' => 'Kategoria ezkutuak',
'category-subcat-count' => '{{PLURAL:$2|Kategoria honek beste honako azpikategoria baino ez du.|Kategoria honek honako {{PLURAL:$1|azpikategoria du|$1 azpikategoriak ditu}}, guztira dauden $2tik.}}',
'category-subcat-count-limited' => 'Kategoria honek {{PLURAL:$1|azpikategoria hau du|$1 azpikategoria hauek ditu}}.',
-'category-article-count' => '{{PLURAL:$2|Kategoria honek ondorengo orri hau baino ez du.|Ondorengo {{PLURAL:$1|orri hau kategoria honetan dago|$1 orriak kategoria honetan daude}}, eta guztira $2 orri dira kategoria honetan.}}',
+'category-article-count' => '{{PLURAL:$2|Kategoria honek orrialde hau bakarrik du.|Honako {{PLURAL:$1|orrialdea kategoria honetan dago|$1 orrialdeak kategoria honetan daude}}, guztira dauden $2 orrialdetatik.}}',
'category-article-count-limited' => 'Ondorengo {{PLURAL:$1|orri hau kategoria honetan dago.|$1 orri hauek kategoria honetan daude.}}',
'category-file-count' => '{{PLURAL:$2|Kategoria honek ondorengo fitxategi hau baino ez du.|Ondorengo {{PLURAL:$1|fitxategi hau kategoria honetan dago|$1 fitxategiak kategoria honetan daude}}, eta guztira $2 fitxategi dira kategoria honetan.}}',
'category-file-count-limited' => 'Ondorengo {{PLURAL:$1|fitxategia kategoria honetan dago.|$1 fitxategiak kategoria honetan daude.}}',
'create-this-page' => 'Orrialde hau sortu',
'delete' => 'Ezabatu',
'deletethispage' => 'Ezabatu orri hau',
+'undeletethispage' => 'Orrialde hau bergaitu',
'undelete_short' => 'Berreskuratu {{PLURAL:$1|aldaketa bat|$1 aldaketa}}',
'viewdeleted_short' => 'Ikusi ezabatutako {{PLURAL:$1|bidalketa bat|$1 bidalketa}}',
'protect' => 'Babestu',
'disclaimers' => 'Mugaketak',
'disclaimerpage' => 'Project:Erantzukizunen mugaketa orokorra',
'edithelp' => 'Aldaketak egiteko laguntza',
-'edithelppage' => 'Help:Aldaketak egiteko laguntza',
'helppage' => 'Help:Laguntza',
'mainpage' => 'Azala',
'mainpage-description' => 'Azala',
'namespaceprotected' => "Ez daukazu '''$1''' izen-tarteko orrialdeak aldatzeko baimenik.",
'customcssprotected' => 'Ez duzu baimenik CSS orrialde hau aldatzeko beste erabiltzaile baten hobespen pertsonalak dituelako.',
'customjsprotected' => 'Ez duzu baimenik JavaScript orrialde hau aldatzeko beste erabiltzaile baten hobespen pertsonalak dituelako.',
+'mycustomcssprotected' => 'Ez duzu baimenik CSS orrialde hau aldatzeko.',
+'mycustomjsprotected' => 'Ez duzu baimentik JavaScript orrialdea aldatzeko.',
'ns-specialprotected' => 'Ezin dira {{ns:special}} izen-tarteko orrialdeak editatu.',
'titleprotected' => "[[User:$1|$1]]ek izenburu hau sortzea ekidin zuen.
Emandako arrazoia ''$2'' izan zen.",
'invalidtitle-knownnamespace' => 'Izenburua gaizki dago "$2" izen eremuan eta "$3" testuan',
'invalidtitle-unknownnamespace' => 'Izenburua gaizki dago "$1" izen eremuan ezezagunean eta "$2" testuan',
'exception-nologin' => 'Saioa hasi gabe',
+'exception-nologin-text' => 'Ekintza edo orrialde honek wiki honetan sartzea eskatzen du.',
# Virus scanner
'virus-badscanner' => "Ezarpen txarrak: antibirus ezezaguna: ''$1''",
Erabiltzaile anonimo bezala jarrai dezakezu {{SITENAME}} erabiltzen, edo <span class='plainlinks'>[$1 saioa has dezakezu berriz]</span> erabiltzaile berdinarekin edo ezberdin batekin.
Kontuan izan orrialde batzuk saioa hasita bazenu bezala ikus ditzakezula nabigatzailearen katxea garbitu arte.",
'welcomeuser' => 'Ongi etorri, $1!',
+'welcomecreation-msg' => 'Zure kontua sortua izan da.
+Ez ezazu ahaztu zure [[Special:Preferences|{{SITENAME}} hobespenak]] aldatzea.',
'yourname' => 'Erabiltzaile izena',
+'userlogin-yourname' => 'Erabiltzale izena',
+'userlogin-yourname-ph' => 'Sartu zure erabiltzaile izena',
'yourpassword' => 'Pasahitza:',
+'userlogin-yourpassword' => 'Pasahitza',
+'userlogin-yourpassword-ph' => 'Sartu zuren pasahitza',
+'createacct-yourpassword-ph' => 'Sartu pasahitza',
'yourpasswordagain' => 'Pasahitza berriz',
+'createacct-yourpasswordagain' => 'Pasahitza berridatzi',
+'createacct-yourpasswordagain-ph' => 'Sartu pasahitza berriro ere',
'remembermypassword' => 'Nire saioa ordenagailu honetan gogoratu ({{PLURAL:$1|egun baterako|$1 egunetarako }} gehienez)',
+'userlogin-remembermypassword' => 'Manten nazazu barruan',
+'userlogin-signwithsecure' => 'Erabili konexio ziurra',
'securelogin-stick-https' => 'Mantendu konektatua HTTPSra sartu ondoren',
'yourdomainname' => 'Zure domeinua',
+'password-change-forbidden' => 'Ezin duzu pasahitzarik aldatu wiki honetan.',
'externaldberror' => 'Kanpoko datu-base autentifikazio errorea gertatu da edo ez duzu zure kanpo kontua eguneratzeko baimenik.',
'login' => 'Saioa hasi',
'nav-login-createaccount' => 'Saioa hasi / kontua sortu',
'logout' => 'Saioa itxi',
'userlogout' => 'Saioa itxi',
'notloggedin' => 'Saioa hasi gabe',
+'userlogin-noaccount' => 'Ez al duzu konturik?',
+'userlogin-joinproject' => 'Batu {{SITENAME}}(r)ekin',
'nologin' => "Ez duzu erabiltzaile konturik? '''$1'''.",
'nologinlink' => 'Kontua sortu',
'createaccount' => 'Kontua sortu',
'gotaccount' => "Baduzu erabiltzaile kontua? '''$1'''.",
'gotaccountlink' => 'Saioa hasi',
'userlogin-resetlink' => 'Saioa hasteko datuak ahaztu dituzu?',
+'userlogin-resetpassword-link' => 'Zure pasahitza berrezarri',
+'helplogin-url' => 'Help:Sarrera',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Barrura sartzeko laguntza]]',
+'createacct-join' => 'Sartu zure informazioa azpian.',
+'createacct-emailrequired' => 'E-posta helbidea',
+'createacct-emailoptional' => 'E-posta helbidea (hautazkoa)',
+'createacct-email-ph' => 'Sartu zure e-posta helbidea',
'createaccountmail' => 'Erabili behin-behineko pasahitz ausazko bat eta bidali behean agertzeko den e-posta helbidera',
+'createacct-realname' => 'Benetako izena (hautazkoa)',
'createaccountreason' => 'Arrazoia:',
+'createacct-reason' => 'Arrazoia',
+'createacct-reason-ph' => 'Zergatik ari zaren beste erabiltzaile kontu bat',
+'createacct-captcha' => 'Segurtasun froga',
+'createacct-imgcaptcha-ph' => 'Sartu gainean ikusten duzun testua',
+'createacct-submit' => 'Kontua sortu',
+'createacct-benefit-heading' => '{{SITENAME}} zu bezalako pertsonek egiten dute.',
+'createacct-benefit-body1' => '{{PLURAL:$1|edizio bat|$1 edizio}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|Orrialde 1|$1 orrialde}}',
+'createacct-benefit-body3' => 'azkeneko {{PLURAL:$1|egilea|egileak}}',
'badretype' => 'Idatzitako pasahitzak ez dira berdinak.',
'userexists' => 'Aukeratutako erabiltzaile izena hartuta dago.
Mesedez beste bat aukeratu.',
'loginerror' => 'Errorea saioa hastean',
+'createacct-error' => 'Kontua sortzerakoan arazoa',
'createaccounterror' => 'Ezin izan da kontua sortu: $1',
'nocookiesnew' => 'Erabiltzaile kontua sortu da, baina ez da saioa hasi. {{SITENAME}}(e)k cookieak erabiltzen ditu saioekin eta ezgaituta dauzkazu. Gaitu itzazu mesedez, eta ondoren saiatu saioa hasten zure erabiltzaile izen eta pasahitz berriak erabiliz.',
'nocookieslogin' => '{{SITENAME}}(e)k cookieak erabiltzen ditu saioekin eta ezgaituta dauzkazu. Gaitu itzazu mesedez, eta saiatu berriz.',
'eauthentsent' => 'Egiaztapen mezu bat bidali da zehaztutako e-posta helbidera.
Helbide horretara beste edozein mezu bidali aurretik, bertan azaltzen diren argibideak jarraitu behar dituzu, e-posta hori zurea dela egiaztatzeko.',
'throttled-mailpassword' => 'Pasahitz gogorarazle bat bidali da jada azken {{PLURAL:$1|orduan|$1 orduetan}}.
-Bandalismoa saihesteko pasahitz eskaera bat baino ezin da egin {{PLURAL:$1|orduan|$1 orduan}} behin.',
+Bandalismoa sahiesteko pasahitz eskaera bat baino ezin da egin {{PLURAL:$1|orduan|$1 orduan}} behin.',
'mailerror' => 'Errorea mezua bidaltzerakoan: $1',
'acct_creation_throttle_hit' => 'Sentitzen dugu, {{PLURAL:$1|erabiltzaile kontu bat sortu duzu|$1 erabiltzaile kontu sortu dituzu}} dagoeneko.
Ondorioz, ezin duzu kontu gehiago sortu.',
'invalidemailaddress' => 'Ezin da e-posta helbide hori ontzat eman baliogabeko formatua duela dirudielako.
Mesedez, formatu egokia duen helbide bat zehaztu, edo hutsik utzi.',
+'cannotchangeemail' => 'Kontuen e-posta helbideak ezin dira aldatu wiki honetan.',
'emaildisabled' => 'Gune honek ezin du e-postarik bidali.',
'accountcreated' => 'Kontua sortuta',
-'accountcreatedtext' => '$1 erabiltzaile kontua sortu egin da.',
+'accountcreatedtext' => '[[{{ns:User}}:$1|$1]] lankidearentzat ([[{{ns:User talk}}:$1|eztabaida]]) kontua sortu da.',
'createaccount-title' => '{{SITENAME}}-rako kontua sortu',
'createaccount-text' => 'Norbaitek zure e-postarekin kontu bat sortu du {{SITENAME}}(e)n ($4) "$2" izenarekin eta "$3" pasahitzarekin.
Orain bertan sar zaitezke eta zure pasahitza aldatu.
'usernamehasherror' => 'Erabiltzaile-izenak ezin du kuxin-karaktererik eduki',
'login-throttled' => 'Saioa hasteko saiakera gehiegi egin berri dituzu.
Berriro saiatu aurretik itxaron ezazu, mesedez.',
+'login-abort-generic' => 'Zure sarrera ez da arrakastatsua izan - Abortatua',
'loginlanguagelabel' => 'Hizkuntza: $1',
'suspicious-userlogout' => 'Saioa amaitzeko egin duzun eskaria ukatu da. Izan ere, ematen du eskari hori gaizki dabilen nabigatzaile edo cache proxy batek bidali duela.',
# Email sending
'php-mail-error-unknown' => 'PHPren mail() funtzioan arazo ezezagun bat egon da.',
+'user-mail-no-addy' => 'E-posta bidaltzen saiatu zara e-posta helbiderik gabe.',
+'user-mail-no-body' => 'E-posta bidaltzen saiatu zara testu gorputzik gabe edo laburregiarekin.',
# Change password dialog
'resetpass' => 'Pasahitza aldatu',
'resetpass-wrong-oldpass' => 'Behin-behineko edo oraintxuko pasahitza ez da baliagarria.
Agian dagoeneko ondo aldatu duzu zure pasahitza edo behin-behineko pasahitza bat eskatu duzu.',
'resetpass-temp-password' => 'Behin-behineko pasahitza:',
+'resetpass-abort-generic' => 'Estentsio batek pasahitza aldatzea ekidin du.',
# Special:PasswordReset
'passwordreset' => 'Pasahitzaren berrezarpena',
+'passwordreset-text-one' => 'Bete formulario hau zure pasahitza berrezartzeko.',
+'passwordreset-text-many' => '{{PLURAL:$1|Sartu datuetako bat zure pasahitza berrezartzeko.}}',
'passwordreset-legend' => 'Pasahitza berrezarri',
+'passwordreset-disabled' => 'Pasahitza berrezartzea ez da posible wiki honetan.',
+'passwordreset-emaildisabled' => 'E-posta aukerak ez daude eskuragarri wiki honetan.',
'passwordreset-username' => 'Lankide izena:',
'passwordreset-domain' => 'Domeinua:',
+'passwordreset-capture' => 'Bidaliko den e-posta ikusi nahi?',
+'passwordreset-capture-help' => 'Kutxa hau hautatzen baduzu behin-behineko pasahitza duen e-posta erakutsiko zatzaizu, eta erabiltzaileari bidaliko zaio.',
'passwordreset-email' => 'E-mail helbidea:',
+'passwordreset-emailtitle' => '{{SITENAME}}-rako kontuaren xehetasunak',
'passwordreset-emailelement' => 'Erabiltzaile izena: $1
Behin-behineko pasahitza: $2',
-'passwordreset-emailsent' => 'Gogorarazteko e-posta bidali da.',
+'passwordreset-emailsent' => 'Pasahitza berrezartzeko e-posta bidali da.',
# Special:ChangeEmail
'changeemail' => 'Aldatu e-mail helbidea',
+'changeemail-header' => 'Aldatu kontuko e-posta helbidea',
+'changeemail-text' => 'Bete ezazu formulario hau e-posta helbidea aldatzeko. Zure pasahitza sartu beharko duzu aldaketa hau baieztatzeko.',
+'changeemail-no-info' => 'Orrialde honetara zuzenean sartzeko izena eman behar duzu.',
'changeemail-oldemail' => 'Egungo e-mail helbidea:',
'changeemail-newemail' => 'E-posta helbide berria:',
'changeemail-none' => '(bat ere ez)',
+'changeemail-password' => 'Zure {{SITENAME}}ko pasahitza:',
'changeemail-submit' => 'E-posta aldatu',
'changeemail-cancel' => 'Utzi',
'edit-gone-missing' => 'Ezin da orria eguneratu. Ezabatu omen dute.',
'edit-conflict' => 'Aldaketa gatazka.',
'edit-no-change' => 'Zure edizioa baztertu da testua aldatu ez duzulako.',
+'postedit-confirmation' => 'Zure aldaketa gorde da.',
'edit-already-exists' => 'Ezin izan da orri berria sortu.
Jada existitzen da.',
+'defaultmessagetext' => 'Testu lehenetsia',
+'content-failed-to-parse' => 'Ezin izan da $2(r)en edukia parseatu $1 modeloarentzat: $3',
+'invalid-content-data' => 'Eduki datu baliogabea',
+'content-not-allowed-here' => '"$1" edukia ez dago baimendua [[$2]] orrialdean',
'editwarning-warning' => 'Orrialde honetatik irteten bazara, egindako aldaketak galdu egingo dira.
-Saioa hasi baduzu, mezu hau kendu dezakezu zure hobespenen orrialdeko "{{int:prefs-editing}}" atalean.',
+Saioa hasi baduzu, mezu hau kendu dezakezu zure hobespenen orrialdeko "Aldatzen" atalean.',
# Content models
'content-model-wikitext' => 'wikitestua',
'parser-template-loop-warning' => 'Txantiloiaren itzul-biraketa aurkitu da: [[$1]]',
'parser-template-recursion-depth-warning' => 'Txantiloaren rekurtsio sakoneraren muga gainditu da ($1)',
'language-converter-depth-warning' => 'Hizkuntza-bihurgailuaren sakonerak ($1) muga gainditu du',
+'node-count-exceeded-category' => 'Nodo-zenbaketa gainditu den orrialdeak',
+'node-count-exceeded-warning' => 'Orrialdeak nodo-zenbaketa gainditu du',
+'expansion-depth-exceeded-category' => 'Orrialdearen espantsio sakonera gainditu da',
+'expansion-depth-exceeded-warning' => 'Espantsio sakonera gainditu duten orrialdeak',
+'parser-unstrip-loop-warning' => 'Loop unstrip bat aurkitu da',
+'parser-unstrip-recursion-limit' => 'Unstrip errekurtsio limitea gainditu da ($1)',
# "Undo" feature
'undo-success' => 'Aldaketa desegin daiteke.
'revdelete-legend' => 'Berrikuspen mugapenak ezarri:',
'revdelete-hide-text' => 'Berrikuspenaren testua ezkutatu',
'revdelete-hide-image' => 'Fitxategiaren edukia ezkutatu',
-'revdelete-hide-name' => 'Helburua eta ekintza izkutatu',
+'revdelete-hide-name' => 'Ezkutatu ekintza eta helburua',
'revdelete-hide-comment' => 'Aldaketaren iruzkina ezkutatu',
'revdelete-hide-user' => 'Egilearen erabiltzaile izena/IPa ezkutatu',
'revdelete-hide-restricted' => 'Mugapen hauek administratzaileei zein besteei aplikatu',
# Diffs
'history-title' => '"$1" orrialdearen historia berrikuspena',
'difference-title' => '"$1"-en berrikuspenen arteko aldaketa',
+'difference-title-multipage' => '"$1" eta "$2" orrialdeen arteko ezberditasunak',
'difference-multipage' => '(Orrialdeen arteko ezberdintasunak)',
'lineno' => '$1. lerroa:',
'compareselectedversions' => 'Hautatutako bertsioak alderatu',
-'showhideselectedversions' => 'Erakutsi/izkutatu aukeratutako berrikuspenak',
+'showhideselectedversions' => 'Erakutsi/ezkutatu aukeratutako berrikuspenak',
'editundo' => 'desegin',
'diff-multi' => '({{PLURAL:$1|Ez da tarteko berrikuspen bat|Ez dira tarteko $1 berrikuspen}} erakusten {{PLURAL:$2|lankide batena|$2 lankiderena}}.)',
'searchmenu-legend' => 'Bilaketa aukerak',
'searchmenu-exists' => "'''\"[[:\$1]]\" izena duen orrialde bat badago wiki honetan'''",
'searchmenu-new' => "'''\"[[:\$1]]\" orrialde sortu wiki honetan!'''",
-'searchhelp-url' => 'Help:Laguntza',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Aurrizki hau duten orrialdeetatik nabigatu]]',
'searchprofile-articles' => 'Eduki-orriak',
'searchprofile-project' => 'Laguntza eta Proiektu-orriak',
'right-editusercssjs' => 'Beste lankideen CSS eta JS fitxategiak aldatu',
'right-editusercss' => 'Beste lankideen CSS fitxategiak aldatu',
'right-edituserjs' => 'Beste lankideen JS fitxategiak aldatu',
+'right-editmyusercss' => 'Aldatu zure CSS fitxategi propioak',
+'right-editmyuserjs' => 'Aldatu zure JavaScript fitxategi propioak',
'right-rollback' => 'Orrialde zehatz bat aldatu zuen azken lankidearen aldaketak modu azkar batean leheneratu',
'right-markbotedits' => 'Atzera bueltan eginiko aldaketak bot baten aldaketak balira markatu',
'right-noratelimit' => 'Ez dio eragiten erlazio mugak',
'right-siteadmin' => 'Databasea blokeatu eta desblokeatu',
'right-override-export-depth' => '5eko sakonerararteko loturiko orrialdeak barne esportatu',
'right-sendemail' => 'Beste erabiltzaileei e-posta bidali',
+'right-passwordreset' => 'Ikusi pasahitza berrezartze e-postak',
# Special:Log/newusers
'newuserlogpage' => 'Erabiltzaile erregistroa',
'newsectionsummary' => '/* $1 */ atal berria',
'rc-enhanced-expand' => 'Erakutsi xehetasunak (JavaScript beharrezkoa da)',
'rc-enhanced-hide' => 'Xehetasunak ezkutatu',
+'rc-old-title' => 'hasiera batean "$1" gisa sortua',
# Recent changes linked
'recentchangeslinked' => 'Lotutako orrietako aldaketak',
'ignorewarnings' => 'Edozein ohar ezikusi.',
'minlength1' => 'Fitxategi izenek letra bat izan behar dute gutxienez.',
'illegalfilename' => '"$1" fitxategiaren izenak orrialdeen izenburuetan erabili ezin diren karaktereak ditu. Mesedez, fitxategiari izena aldatu eta saiatu berriz igotzen.',
+'filename-toolong' => 'Fitxategi izenak ezin dira izan 240 byte baino luzeagoak.',
'badfilename' => 'Irudiaren izena aldatu da: "$1".',
'filetype-badmime' => 'Ezin dira "$1" MIME motako fitxategiak igo.',
'filetype-bad-ie-mime' => 'Ezin da fitxategia igo, Internet Explorerek "$1" bezala detektatuko lukeelako, zein fitxategi mota ez onartua eta arriskutsua den.',
'upload-unknown-size' => 'Tamaina ezezaguna',
'upload-http-error' => 'HTTP errorea gertatu da: $1',
+# File backend
+'backend-fail-stream' => 'Ezin izan da "$1" fitxategiaren stream egin.',
+'backend-fail-backup' => 'Ezin izan da "$1" fitxategiaren backup egin.',
+'backend-fail-notexists' => '$1 fitxategia ez da existitzen.',
+'backend-fail-hashes' => 'Ezin izan da fitxategien hashak eskuratu konparatzeko.',
+'backend-fail-notsame' => 'Berdina ez den beste fitxategi bat dago "$1"n',
+'backend-fail-invalidpath' => '"$1" ez da gordetzeko helbide baliagarria.',
+'backend-fail-delete' => 'Ezin izan da ezabatu "$1" fitxategia.',
+'backend-fail-alreadyexists' => '"$1" fitxategia jadanik badago.',
+'backend-fail-store' => 'Ezin izan da gorde "$1" fitxategia "$2" helbidean.',
+'backend-fail-copy' => 'Ezin izan da kopiatu "$1" fitxategia "$2" helbidean.',
+'backend-fail-move' => 'Ezin izan da mugitu "$1" fitxategia "$2" helbidean.',
+'backend-fail-opentemp' => 'Ezin izan da behin behineko fitxategia ireki.',
+'backend-fail-writetemp' => 'Ezin da behin behineko fitxategia idatzi.',
+'backend-fail-closetemp' => 'Ezin izan da behin behineko fitxategia itxi.',
+'backend-fail-read' => 'Ezin izan da "$1" fitxategia irakurri.',
+'backend-fail-create' => 'Ezin izan da "$1" fitxategia idatzi.',
+'backend-fail-maxsize' => 'Ezin izan da idatzi "$1" fitxategia {{PLURAL:$2|byte bat|$2 byte}} baino handiagoa delako.',
+
# ZipDirectoryReader
'zip-wrong-format' => 'Zehaztutako fitxategia ez zen ZIP motakoa.',
Fitxategien sarbidea baino ez da onartzen.',
'img-auth-streaming' => '"$1" sekuentziatzen.',
'img-auth-noread' => 'Erabiltzaileak ez du "$1" irakurtzeko sarbiderik.',
+'img-auth-bad-query-string' => 'URLan query esaldi baliogabea dago.',
# HTTP errors
'http-invalid-url' => 'URL baliogabea: $1',
+'http-invalid-scheme' => '"$1" eskema duten URLak ez dira baliagarriak.',
+'http-request-error' => 'HTTP eskariak akatsa izan du errore ezezagun bat dela eta.',
'http-read-error' => 'HTTP irakurketa-akatsa.',
'http-timed-out' => 'HTTP eskaera iraungi da.',
'http-curl-error' => 'Errorea URLa bilatzerakoan: $1',
'uploadnewversion-linktext' => 'Fitxategi honen bertsio berri bat igo',
'shared-repo-from' => '$1-tik',
'shared-repo' => 'elkarbanatutako biltegia',
+'upload-disallowed-here' => 'Ezin duzu fitxategi hau gain-idatzi.',
# File reversion
'filerevert' => '$1 leheneratu',
Kasu bakoitzean dagokion artikulu zuzenarekin izan beharko lukete lotura.<br />
Orrialde bat argipen motakoa dela antzeman ohi da [[MediaWiki:Disambiguationspage]] orrialdean agertzen den txantiloietako bat duenean.",
+'pageswithprop' => 'Orrialde propietatea duten orrialdeak',
+'pageswithprop-legend' => 'Orrialde propietatea duten orrialdeak',
+'pageswithprop-prop' => 'Ezaugarriaren izena:',
+'pageswithprop-submit' => 'Joan',
+
'doubleredirects' => 'Birzuzenketa bikoitzak',
'doubleredirectstext' => 'Lerro bakoitzean lehen eta bigarren birzuzenketetarako loturak ikus daitezke, eta baita edukia daukan edo eduki beharko lukeen orrialderako lotura ere. Lehen birzuzenketak azken honetara <del>zuzendu</del> beharko luke.',
'double-redirect-fixed-move' => '[[$1]] mugitu da eta orain [[$2]](e)ra birzuzenketa bat da',
# Miscellaneous special pages
'nbytes' => '{{PLURAL:$1|byte 1|$1 byte}}',
'ncategories' => '{{PLURAL:$1|kategoria 1|$1 kategoria}}',
+'ninterwikis' => '{{PLURAL:$1|Interwiki $1|$1 interwiki}}',
'nlinks' => '{{PLURAL:$1|lotura 1|$1 lotura}}',
'nmembers' => '{{PLURAL:$1|partaide 1|$1 partaide}}',
'nrevisions' => '{{PLURAL:$1|berrikuspen 1|$1 berrikuspen}}',
'nviews' => '{{PLURAL:$1|ikusketa 1|$1 ikusketa}}',
+'nimagelinks' => '{{PLURAL:$1|Orrialde batean erabilia|$1 orrialdetan erabilia}}',
+'ntransclusions' => '{{PLURAL:$1|orrialde batean erabilia|$1 orrialdetan erabilia}}',
'specialpage-empty' => 'Ez dago emaitzarik bilaketa honetarako.',
'lonelypages' => 'Orrialde umezurtzak',
'lonelypagestext' => 'Jarraian zerrendatutako orrialdeek ez daukate {{SITENAME}}(e)n beste orrialdeetatik loturarik.',
'mostlinkedtemplates' => 'Txantiloi erabilienak',
'mostcategories' => 'Sailkapenean kategoria gehien dituzten orrialdeak',
'mostimages' => 'Gehien lotutako irudiak',
+'mostinterwikis' => 'Interwiki gehien dituzten orrialdeak',
'mostrevisions' => 'Berrikuspen gehien dituzten orrialdeak',
'prefixindex' => 'Orri guztiak aurrizkiekin',
+'prefixindex-namespace' => '$1 izentartean honako aurrizkia duten orrialde guztiak:',
'shortpages' => 'Orrialde laburrak',
'longpages' => 'Orrialde luzeak',
'deadendpages' => 'Orrialde itsuak',
'listusers' => 'Erabiltzaileen zerrenda',
'listusers-editsonly' => 'Aldaketak egin dituzten erabiltzaileak soilik erakutsi',
'listusers-creationsort' => 'Sorrera dataren arabera sailkatu',
-'usereditcount' => '{{PLURAL:$1|aldaketa $1|$1 aldaketa}}',
+'usereditcount' => '{{PLURAL:$1|edizio bat|$1 edizio}}',
'usercreated' => '{{GENDER:$3|Sortze data}}: $1, $2',
'newpages' => 'Orrialde berriak',
'newpages-username' => 'Erabiltzaile izena:',
'pager-newer-n' => '{{PLURAL:$1|berriago den 1|berriagoak diren $1}}',
'pager-older-n' => '{{PLURAL:$1|zaharragoa den 1|zaharragoak diren $1}}',
'suppress' => 'Gain-ikuspena',
+'querypage-disabled' => 'Orrialde berezi hau desgaituta dago funtzionamendu arrazoiengatik.',
# Book sources
'booksources' => 'Iturri liburuak',
Erregistro mota, erabiltzailearen izena edota orrialdearen izena iragaziz bistaratu daiteke. Letra larriak eta xeheak bereizten dira.',
'logempty' => 'Ez dago emaitzarik erregistroan.',
'log-title-wildcard' => 'Testu honekin hasten diren izenburuak bilatu',
+'showhideselectedlogentries' => 'Erakutsi/izkutatu aukeratutako log sarrerak',
# Special:AllPages
'allpages' => 'Orri guztiak',
'linksearch-ok' => 'Bilatu',
'linksearch-text' => '"*.wikipedia.org" bezalako izartxoak erabil daitezke.
Gutxienez goi mailako domeinua behar du, adibidez "*.org".<br />
-Baimendutako protokoloak: <code>$1</code> (protokoloa zehazten ez bada http:// hartzen da lehenetsitzat).',
+Baimendutako {{PLURAL:$2|protokoloa|protokoloak}}: <code>$1</code> (protokoloa zehazten ez bada http:// hartzen da lehenetsitzat).',
'linksearch-line' => '$1, $2(e)tik lotuta',
'linksearch-error' => 'Komodinak izenaren hasieran bakarrik agertu beharko lirateke.',
'listusers-noresult' => 'Ez da erabiltzailerik aurkitu.',
'listusers-blocked' => '(blokeatua)',
+# Special:ActiveUsers
+'activeusers' => 'Lankide aktiboen zerrenda',
+'activeusers-count' => '{{PLURAL:$1|Ekintza berri bat|$1 ekintza berri}} azken {{PLURAL:$3|egunean|$3 egunetan}}',
+'activeusers-from' => 'Bilatu honela hasten diren lankideak:',
+'activeusers-hidebots' => 'Ezkutatu bot-ak',
+'activeusers-hidesysops' => 'Ezkutatu administratzaileak',
+'activeusers-noresult' => 'Ez da lankiderik aurkitu.',
+
# Special:ListGroupRights
'listgrouprights' => 'Erabiltzaile talde eskumenak',
'listgrouprights-summary' => 'Ondorengo zerrendak wikian dauden lankide taldeak agertzen dira, beraien eskubideekin.
'mailnologin' => 'Bidalketa helbiderik ez',
'mailnologintext' => 'Beste erabiltzaileei e-posta mezuak bidaltzeko [[Special:UserLogin|saioa hasi]] eta baliozko e-posta helbidea behar duzu izan zure [[Special:Preferences|hobespenetan]].',
'emailuser' => 'Erabiltzaile honi e-posta bidali',
+'emailuser-title-target' => '{{GENDER:$1|Erabiltzale}} honi e-posta bidali',
'emailuser-title-notarget' => 'Erabiltzaileari e-maila bidali',
'emailpage' => 'Erabiltzaileari e-posta bidali',
-'emailpagetext' => 'Erabiltzaile honek baliozko e-posta helbide bat ezarri badu bere hobespenetan, beheko formularioa erabiliz mezu bat bidal dakioke.
+'emailpagetext' => '{{GENDER:$1|Erabiltzaile}} honek baliozko e-posta helbide bat ezarri badu bere hobespenetan, beheko formularioa erabiliz mezu bat bidal dakioke.
[[Special:Preferences|Hobespenetan]] daukazun e-posta helbidea azalduko da mezuaren bidaltzaile bezala eta beraz erantzun ahal izango dizu.',
'usermailererror' => 'Mail objektuak errore hau itzuli du:',
'defemailsubject' => '{{SITENAME}} e-posta "$1" lankideak',
'noemailtext' => 'Erabiltzaile honek ez du baliozko e-posta helbiderik zehaztu.',
'nowikiemailtitle' => 'Ezin da e-postarik bidali',
'nowikiemailtext' => 'Erabiltzaile honek beste erabiltzaileengandik e-postak ez jasotzea hautatu du.',
+'emailtarget' => 'Sartu jasolearen erabiltzaile izena',
'emailusername' => 'Lankide izena:',
'emailusernamesubmit' => 'Bidali',
'email-legend' => 'Bidali e-posta bat {{SITENAME}}(e)ko beste lankide bati',
'emailuserfooter' => 'E-posta hau $1(e)k bidali dio $2(r)i {{SITENAME}}ko "E-posta bidali" funtzioa erabiliz.',
# User Messenger
+'usermessage-summary' => 'Sistema mezua uzten.',
'usermessage-editor' => 'Sistemako mezularia',
# Watchlist
'watchlistanontext' => 'Mesedez $1 zure jarraipen zerrendako orrialdeak ikusi eta aldatu ahal izateko.',
'watchnologin' => 'Saioa hasi gabe',
'watchnologintext' => '[[Special:UserLogin|Saioa hasi]] behar duzu zure jarraipen zerrenda aldatzeko.',
-'addedwatchtext' => "\"<nowiki>\$1</nowiki>\" orrialdea zure [[Special:Watchlist|jarraipen edo zelatatuen zerrendara]] erantsi da. Orrialde honen hurrengo aldaketak zerrenda horretan ageriko dira aurrerantzean, eta gainera [[Special:RecentChanges|aldaketa berrien zerrendan]] beltzez ageriko da, erraztasunez antzeman ahal izateko.
+'addwatch' => 'Jarraipen zerrendara gehitu',
+'addedwatchtext' => '"[[:$1]]" orrialdea zure [[Special:Watchlist|jarraipen edo zelatatuen zerrendara]] erantsi da.
-Jarraipen zerrendatik artikulua kentzeko, artikuluan ''ez jarraitu''ri eman.",
+Orrialde honen hurrengo aldaketak zerrenda horretan ageriko dira aurrerantzean.',
+'removewatch' => 'Kendu zure jarraipen zerrendatik',
'removedwatchtext' => '"[[:$1]]" orrialdea zure [[Special:Watchlist|jarraipen zerrendatik]] kendu da.',
'watch' => 'Jarraitu',
'watchthispage' => 'Orrialde hau jarraitu',
'notvisiblerev' => 'Berrikusketa desegin da',
'watchnochange' => 'Hautatutako denbora tartean ez da aldaketarik izan zure jarraipen zerrendako orrialdeetan.',
'watchlist-details' => '{{PLURAL:$1|Orrialde $1|$1 orrialde}} jarraitzen, eztabaida orrialdeak kontuan hartu gabe.',
-'wlheader-enotif' => '* Posta bidezko ohartarazpena gaituta dago.',
-'wlheader-showupdated' => "* Bisitatu zenituen azken alditik aldaketak izan dituzten orrialdeak '''beltzez''' nabarmenduta daude",
+'wlheader-enotif' => 'Posta bidezko ohartarazpena gaituta dago.',
+'wlheader-showupdated' => "Bisitatu zenituen azken alditik aldaketak izan dituzten orrialdeak '''beltzez''' nabarmenduta daude.",
'watchmethod-recent' => 'Aldaketa berriak aztertzen jarraipen zerrendako orrialdeen bila',
'watchmethod-list' => 'jarraipen zerrendako orrialdeak aldaketa berrien bila aztertzen',
'watchlistcontains' => 'Zure jarraipen zerrendak {{PLURAL:$1|orrialde $1 du|$1 orrialde ditu}}.',
'rollback_short' => 'Desegin',
'rollbacklink' => 'desegin',
'rollbacklinkcount' => 'desegin {{PLURAL:$1|edizio bat|$1 edizio}}',
+'rollbacklinkcount-morethan' => 'desegin {{PLURAL:$1|edizio bat|$1 edizio}} baino gehiago',
'rollbackfailed' => 'Desegiteak huts egin dud',
'cantrollback' => 'Ezin da aldaketa desegin; erabiltzaile bakarrak hartu du parte.',
'alreadyrolled' => 'Ezin da [[User:$2|$2]](e)k ([[User talk:$2|Eztabaida]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]) [[$1]](e)n egindako azken aldaketa desegin;
'unprotectedarticle' => '"[[$1]]"-(r)i babesa kendu zaio',
'movedarticleprotection' => 'babes hobespenak "[[$2]]"tik "[[$1]]"(e)ra mugitu dira',
'protect-title' => '"$1" babesten',
+'protect-title-notallowed' => '"$1"en babes maila ikusi',
'prot_1movedto2' => '$1 izenburua $2(r)engatik aldatu da',
+'protect-badnamespace-title' => 'Izen-tarte ez babesgarria',
+'protect-badnamespace-text' => 'Izen-tarte honetako orrialdeak ezin dira babestu.',
+'protect-norestrictiontypes-text' => 'Orrialde hau ezin da babestu ez daudelako mugapen mota eskuragarririk.',
+'protect-norestrictiontypes-title' => 'Izen-tarte ez babesgarria',
'protect-legend' => 'Babesa baieztatu',
'protectcomment' => 'Arrazoia:',
'protectexpiry' => 'Iraungipena:',
'protect-cascadeon' => 'Orrialde hau babestuta dago orain, ondorengo orrialde {{PLURAL:$1|honek kaskada bidezko babesa aktibatua duelako|hauek kaskada bidezko babesa aktibatua dutelako}}.
Orrialde honen babes maila alda dezakezu, baina ez du eraginik izango kaskada bidezko babesean.',
'protect-default' => 'Lankide guztiak baimendu',
-'protect-fallback' => '"$1" baimena eskatu',
-'protect-level-autoconfirmed' => 'Lankide berri eta erregistratu gabekoak blokeatu',
-'protect-level-sysop' => 'Administratzaileak bakarrik',
+'protect-fallback' => '"$1" baimena duten erabiltzaileak bakarrik baimendu',
+'protect-level-autoconfirmed' => 'Baimendu lankide autokonfirmatuei bakarrik',
+'protect-level-sysop' => 'Administratzaileak bakarrik baimendu',
'protect-summary-cascade' => 'jauzian',
'protect-expiring' => 'babesaldiaren bukaera: $1 (UTC)',
+'protect-expiring-local' => 'iraungitze data: $1',
'protect-expiry-indefinite' => 'mugagabea',
'protect-cascade' => 'Babes masiboa - orrialde honen barneko orrialde guztiak blokeatu.',
'protect-cantedit' => 'Ezin duzu orrialde honetako babes-maila aldatu, ez duzulako berau aldatzeko eskumenik.',
'undeletedrevisions' => '{{PLURAL:$1|Berrikuspen 1 leheneratu da|$1 berrikuspen leheneratu dira}}',
'undeletedrevisions-files' => '{{PLURAL:$1|berrikuspen|berrikuspen}} eta {{PLURAL:$2|fitxategi|fitxategi}} leheneratu dira',
'undeletedfiles' => '{{PLURAL:$1|fitxategi|fitxategi}} leheneratu dira',
-'cannotundelete' => 'Errorea birsortzerakoan; baliteke beste norbaitek lehenago birsortu izana.',
+'cannotundelete' => 'Ezabatutako birgaitzean akatsa: $1',
'undeletedpage' => "'''$1 leheneratu egin da'''
[[Special:Log/delete|Ezabaketa erregistrora]] jo azken ezabaketa eta leheneraketak ikusteko.",
'undelete-cleanup-error' => 'Erabiltzen ez den "$1" fitxategia ezabatzen arazoa egon da.',
'undelete-missing-filearchive' => 'Fitxategiaren $1 IDa ezin da leheneratu, ez baitago datu-basean.
Aurretik ez luke ezabatua izan behar.',
+'undelete-error' => 'Akatsa orrialde ezabatua birgaitzen',
'undelete-error-short' => 'Errorea fitxategia berreskuratzerakoan: $1',
'undelete-error-long' => 'Errorea gertatu da hurrengo orrialdea berreskuratzerakoan:
'mycontris' => 'Ekarpenak',
'contribsub2' => '$1 ($2)',
'nocontribs' => 'Ez da ezaugarri horiekin bat datorren aldaketarik aurkitu.',
-'uctop' => ' (Azken aldaketa)',
+'uctop' => '(azken aldaketa)',
'month' => 'Hilabetea (eta lehenagokoak):',
'year' => 'Urtea (eta lehenagokoak):',
'unblockiptext' => 'Erabili beheko formularioa lehenago blokeatutako IP helbide edo erabiltzaile baten idazketa baimenak leheneratzeko.',
'ipusubmit' => 'Blokeoa ezabatu',
'unblocked' => '[[User:$1|$1]] desblokeatu egin da',
+'unblocked-range' => '$1 desblokeatuta izan da.',
'unblocked-id' => '$1 blokeaketa ezabatu da',
'blocklist' => 'Blokeatutako erabiltzaileak',
'ipblocklist' => 'Blokeatutako erabiltzaileak',
'ipblocklist-legend' => 'Blokeatutako erabiltzaile bat bilatu',
+'blocklist-userblocks' => 'Izkutatu kontuaren blokeak',
+'blocklist-tempblocks' => 'Izkutatu behin-behineko blokeoak',
+'blocklist-addressblocks' => 'Izkutatu IP bakarretako blokeoak',
'blocklist-timestamp' => 'Eguna eta ordua',
'blocklist-target' => 'Helburua',
+'blocklist-expiry' => 'Epemuga:',
'blocklist-by' => 'Blokeoa ezarri duen administratzailea',
+'blocklist-params' => 'Blokeo parametroak',
'blocklist-reason' => 'Arrazoia',
'ipblocklist-submit' => 'Bilatu',
'ipblocklist-localblock' => 'Tokiko blokeoa',
'unlockdbsuccesstext' => 'Datu-basea desblokeatu egin da.',
'lockfilenotwritable' => 'Ezin da datu-baseko blokeo fitxategian idatzi. Datu-basea blokeatu edo desblokeatzeko, zerbitzariak idazteko aukera izan beharra dauka.',
'databasenotlocked' => 'Datu-basea ez dago blokeatuta.',
+'lockedbyandtime' => '({{GENDER:$1|$1}}k egina $2ko $3(e)tan)',
# Move page
'move-page' => '$1 mugitu',
'thumbnail_error' => 'Errorea irudi txikia sortzerakoan: $1',
'djvu_page_error' => 'DjVu orrialdea eremuz kanpo',
'djvu_no_xml' => 'Ezinezkoa izan da DjVu fitxategiaren XML lortzea',
+'thumbnail-dest-create' => 'Ezin izan da iruditxoa gorde helburuan',
'thumbnail_invalid_params' => 'Irudi txikiaren ezarpenak ez dira baliagarriak',
'thumbnail_dest_directory' => 'Ezinezkoa izan da helburu direktorioa sortu',
'thumbnail_image-type' => 'Irudi mota ez babestua',
'import-interwiki-templates' => 'Txantiloi guztiak sartu',
'import-interwiki-submit' => 'Inportatu',
'import-interwiki-namespace' => 'Helburuko izen-tartea:',
+'import-interwiki-rootpage' => 'Helburuko oinarri orrialdea (aukerazkoa):',
'import-upload-filename' => 'Fitxategiaren izena:',
'import-comment' => 'Iruzkina:',
'importtext' => 'Mesedez, jatorrizko wikitik orrialdea esportatzeko [[Special:Export|esportazio tresna]] erabil ezazu, zure diskoan gorde eta jarraian hona igo.',
'importstart' => 'Orrialdeak inportatzen...',
'import-revision-count' => '{{PLURAL:$1|berrikuspen 1|$1 berrikuspen}}',
'importnopages' => 'Ez dago orrialderik inportatzeko.',
+'imported-log-entries' => '{{PLURAL:$1|Log sarrera bat|$1 log sarrera}} inportatu dira.',
'importfailed' => 'Inportazioak huts egin du: $1',
'importunknownsource' => 'Inportazio iturri mota ezezaguna',
'importcantopen' => 'Ezin izan da inportazio fitxategia ireki',
'import-logentry-interwiki' => '$1 wiki artean mugitu da',
'import-logentry-interwiki-detail' => '$1 {{PLURAL:$1|berrikuspen|berrikuspen}} $2-(e)tik',
+# JavaScriptTest
+'javascripttest' => 'JavaScript frogatzen',
+'javascripttest-title' => '$1 frogak egiten',
+
# Tooltip help for the actions
'tooltip-pt-userpage' => 'Nire lankide orria',
'tooltip-pt-anonuserpage' => 'Zure IParen lankide orrialdea',
'tooltip-diff' => 'Testuari egindako aldaketak erakutsi.',
'tooltip-compareselectedversions' => 'Orrialde honen bi hautatutako bertsioen arteko ezberdintasunak ikusi.',
'tooltip-watch' => 'Orrialde hau zure segimendu zerrendan gehitu',
+'tooltip-watchlistedit-normal-submit' => 'Izenburuak kendu',
+'tooltip-watchlistedit-raw-submit' => 'Jarraipen zerrenda gaurkotu',
'tooltip-recreate' => 'Orrialdea birsortu ezabatu egin den arren',
'tooltip-upload' => 'Igoera hasi',
'tooltip-rollback' => '"Desegin" ekintzak orriaren azken egilearen ekarpena ezabatzen du klik batean',
'spam_blanking' => 'Berrikuspen guztiek $1(e)rako lotura zeukaten, husten',
# Info page
+'pageinfo-title' => '"$1"(r)entzako informazioa',
+'pageinfo-not-current' => 'Barkatu, errebisio zaharretako informazioa eskaintzea ezinezkoa da.',
'pageinfo-header-basic' => 'Oinarrizko informazioa',
'pageinfo-header-edits' => 'Aldaketen historia',
'pageinfo-header-restrictions' => 'Orriaren babesa',
'pageinfo-robot-noindex' => 'Indexaezina',
'pageinfo-views' => 'Bistaratze-kopurua',
'pageinfo-watchers' => 'Orriaren jarraitzaileen kopurua',
+'pageinfo-few-watchers' => '{{PLURAL:$1|Ikusle bat|$1 ikusle}} baino gutxiago',
'pageinfo-redirects-name' => 'Orri honetara dakarten birzuzenketak',
'pageinfo-subpages-name' => 'Orri honen azpiorriak',
'pageinfo-firstuser' => 'Orriaren sortzailea',
'pageinfo-hidden-categories' => 'Ezkutuko {{PLURAL:$1|kategoria|kategoriak}} ($1)',
'pageinfo-templates' => 'Txertatutako {{PLURAL:$1|txantiloia|txantiloiak}} ($1)',
'pageinfo-toolboxlink' => 'Orri honen datuak',
+'pageinfo-redirectsto' => 'Hona birzuzentzen du',
'pageinfo-redirectsto-info' => 'Informazioa',
'pageinfo-contentpage' => 'Eduki-orritzat zenbatua',
'pageinfo-contentpage-yes' => 'Bai',
'pageinfo-protect-cascading' => 'Serieko babesa, orri honetatik',
'pageinfo-protect-cascading-yes' => 'Bai',
'pageinfo-protect-cascading-from' => 'Serieko babesak aktibatuta. Sorburua:',
+'pageinfo-category-info' => 'Kategoria informazioa',
+'pageinfo-category-pages' => 'Orrialde kopurua',
+'pageinfo-category-subcats' => 'Azpikategorien zenbakia',
+'pageinfo-category-files' => 'Fitxategi kopurua',
# Skin names
'skinname-cologneblue' => 'Cologne Blue',
'markedaspatrollederror' => 'Ezin da patruilatutzat markatu',
'markedaspatrollederrortext' => 'Patruilatutzat markatzeko berrikuspen bat hautatu behar duzu.',
'markedaspatrollederror-noautopatrol' => 'Ez daukazu zeure aldaketak patruilatutzat markatzeko baimenik.',
+'markedaspatrollednotify' => '$1 orrialdeari egindako aldaketa patruilatu moduan markatua izan da.',
+'markedaspatrollederrornotify' => 'Patruilatu gisa markatzean akatsa egon da.',
# Patrol log
'patrol-log-page' => 'Patrullatze loga',
'widthheightpage' => '$1 × $2, $3 {{PLURAL:$3|orri|orri}}',
'file-info' => 'fitxategiaren tamaina: $1, MIME mota: $2',
'file-info-size' => '$1 × $2 pixel, fitxategiaren tamaina: $3, MIME mota: $4',
+'file-info-size-pages' => '$1 × $2 pixel, fitxategi tamaina: $3, MIME mota: $4, {{PLURAL:$5|orrialde $5|$5 orrialde}}',
'file-nohires' => 'Ez dago bereizmen handiagorik.',
'svg-long-desc' => 'SVG fitxategia, nominaldi $1 × $2 pixel, fitxategiaren tamaina: $3',
+'svg-long-error' => 'SVG fitxategi ez baliagarria: $1',
'show-big-image' => 'Bereizmen handikoa',
'show-big-image-preview' => 'Aurreikuspen honen neurria: $1.',
'show-big-image-other' => 'Bestelako {{PLURAL:$2|bereizmena|bereizmenak}}: $1.',
'file-info-gif-looped' => 'kiribildua',
'file-info-gif-frames' => '{{PLURAL:$1|Irudi $1|$1 irudi}}',
'file-info-png-looped' => 'begiztatua',
+'file-info-png-repeat' => '{{PLURAL:$1|Behin|$1 aldiz}} ikusia',
'file-info-png-frames' => '{{PLURAL:$1|Frame bat|$1 frame}}',
# Special:NewFiles
'minutes' => '{{PLURAL:$1|minutu $1|$1 minutu}}',
'hours' => '{{PLURAL:$1|ordu $1|$1 ordu}}',
'days' => '{{PLURAL:$1|egun $1|$1 egun}}',
+'weeks' => '{{PLURAL: $1|aste $1|$1 aste}}',
+'months' => '{{PLURAL: $1|hilabete $1|$1 hilabete}}',
+'years' => '{{PLURAL: $1|urte $1|$1 urte}}',
'ago' => 'Duela $1',
+'just-now' => 'orain',
+
+# Human-readable timestamps
+'hours-ago' => 'Orain dela {{PLURAL:$1|ordu bat|$1 ordu}}',
+'minutes-ago' => 'Orain dela {{PLURAL:$1|minutu bat|$1 minutu}}',
+'seconds-ago' => 'Orain dela {{PLURAL:$1|segundu bat|$1 segundu}}',
+'monday-at' => 'Astelehena $1(e)tan',
+'tuesday-at' => 'Asteartea $1(e)tan',
+'wednesday-at' => 'Asteazkena $1(e)tan',
+'thursday-at' => 'Osteguna $1(e)tan',
+'friday-at' => 'Ostirala $1(e)tan',
+'saturday-at' => 'Larunbata $1(e)tan',
+'sunday-at' => 'Igandea $1(e)tan',
+'yesterday-at' => 'Atzo $1(e)tan',
# Bad image list
'bad_image_list' => 'Formatua hurrengoa da:
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Zabalera',
'exif-imagelength' => 'Altuera',
'exif-bitspersample' => 'Bit osagaiko',
'exif-headline' => 'Goiburua',
'exif-credit' => 'Kreditua/Emalea',
'exif-source' => 'Jatorria',
+'exif-editstatus' => 'Irudiaren egoera editoriala',
'exif-urgency' => 'Larrialdia',
+'exif-locationdest' => 'Agertzen den lekua',
+'exif-locationdestcode' => 'Agertzen den lekuaren kodea',
+'exif-objectcycle' => 'Media hau baliagarria den egunaren ordua',
+'exif-contact' => 'Kontratuaren informazioa',
'exif-writer' => 'Idazlea',
'exif-languagecode' => 'Hizkuntza',
'exif-iimversion' => 'IIM bertsioa',
'exif-iimcategory' => 'Kategoria',
+'exif-iimsupplementalcategory' => 'Kategoria gehigarriak',
+'exif-datetimeexpires' => 'Ez erabili data hau pasata:',
+'exif-datetimereleased' => 'Ekoizpen data:',
+'exif-identifier' => 'Identifikatzailea',
+'exif-lens' => 'Erabilitako lentea',
'exif-serialnumber' => 'Kameraren serie-zenbakia',
'exif-cameraownername' => 'Kameraren jabea',
'exif-label' => 'Etiketa',
+'exif-rating' => 'Balorazioa (5 arte)',
+'exif-rightscertificate' => 'Eskubideen kudeaketa ziurtagiria',
+'exif-copyrighted' => 'Copyright egoera',
'exif-copyrightowner' => 'Copyright-aren jabea',
'exif-usageterms' => 'Erabilera baldintzak',
-
-# EXIF attributes
+'exif-webstatement' => 'Copyright azapena sarean',
+'exif-originaldocumentid' => 'Jatorrizko dokumentuaren ID bakarra',
+'exif-licenseurl' => 'Copyright lizentziaren URLa',
+'exif-morepermissionsurl' => 'Lizentziaren informazio alternatiboa',
+'exif-attributionurl' => 'Lan hau berrerabiltzean, mesedez lotura hau erabili',
+'exif-preferredattributionname' => 'Lan hau berrerabiltzean, mesedez aipatu',
+'exif-pngfilecomment' => 'PNG fitxategiaren iruzkina',
+'exif-disclaimer' => 'Mugaketak',
+'exif-contentwarning' => 'Edukiarekin adi',
+'exif-giffilecomment' => 'GIF fitxategiaren iruzkina',
+'exif-intellectualgenre' => 'Elementu mota',
+'exif-subjectnewscode' => 'Gaiaren kodea',
+'exif-scenecode' => 'IPTC eskena kodea',
+'exif-event' => 'Agertzen den ebentoa',
+'exif-organisationinimage' => 'Agertzen den antolakundea',
+'exif-personinimage' => 'Agertzen den pertsona',
+'exif-originalimageheight' => 'Irudiaren altuera moztu aurretik',
+'exif-originalimagewidth' => 'Irudiaren zabalera moztu aurretik',
+
+# Exif attributes
'exif-compression-1' => 'Konprimatu gabe',
'exif-compression-6' => 'JPEG',
'exif-gpsdop-excellent' => 'Bikaina ($1)',
'exif-gpsdop-good' => 'Ona ($1)',
+'exif-gpsdop-moderate' => 'Moderatua ($1)',
+'exif-gpsdop-fair' => 'Justua ($1)',
+'exif-gpsdop-poor' => 'Pobrea ($1)',
+
+'exif-objectcycle-a' => 'Goizetan bakarrik',
+'exif-objectcycle-p' => 'Arratsaldetan bakarrik',
+'exif-objectcycle-b' => 'Goiz zein arratsalde',
# Pseudotags used for GPSTrackRef, GPSImgDirectionRef and GPSDestBearingRef
'exif-gpsdirection-t' => 'Benetako norabidea',
'exif-gpsdirection-m' => 'Norabide magnetikoa',
+'exif-ycbcrpositioning-1' => 'Zentratua',
+
+'exif-dc-contributor' => 'Egileak',
+'exif-dc-date' => 'Data(k)',
'exif-dc-publisher' => 'Argitaratzailea',
+'exif-dc-relation' => 'Harremana duen media',
'exif-dc-rights' => 'Eskubideak',
+'exif-dc-source' => 'Jatorrizko media',
+'exif-dc-type' => 'Media mota',
+
+'exif-rating-rejected' => 'Ukatua',
+
+'exif-isospeedratings-overflow' => '65535 baino handiago',
'exif-iimcategory-ace' => 'Arteak, kultura eta aisia',
'exif-iimcategory-clj' => 'Krimena eta zuzenbidea',
'exif-iimcategory-edu' => 'Hezkuntza',
'exif-iimcategory-evn' => 'Ingurumena',
'exif-iimcategory-hth' => 'Osasuna',
+'exif-iimcategory-hum' => 'Gizakientzako interesa',
'exif-iimcategory-lab' => 'Lana',
+'exif-iimcategory-lif' => 'Bizimoduak eta denborapasak',
'exif-iimcategory-pol' => 'Politika',
'exif-iimcategory-rel' => 'Erlijioa eta sinesmenak',
'exif-iimcategory-sci' => 'Zientzia eta teknologia',
'version-specialpages' => 'Aparteko orrialdeak',
'version-parserhooks' => 'Parser estentsioak',
'version-variables' => 'Aldagaiak',
+'version-antispam' => 'Spam ekiditea',
+'version-skins' => 'Itxurak',
'version-other' => 'Bestelakoak',
'version-mediahandlers' => 'Media gordailuak',
'version-hooks' => 'Estentsioak',
'version-software' => 'Instalatutako softwarea',
'version-software-product' => 'Produktua',
'version-software-version' => 'Bertsioa',
+'version-entrypoints' => 'Sarrera puntuko URLa',
+'version-entrypoints-header-entrypoint' => 'Sarrera puntua',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Fitxategi bidea',
-'filepath-page' => 'Fitxategia:',
-'filepath-submit' => 'Joan',
-'filepath-summary' => 'Orri berezi honek fitxategiaren ibilbidea itzultzen du.
-Irudiak bereizmen handienean daude, bestelako fitxategi motak beraiei esleitutako programarekin hasiko dira zuzenean.',
+# Special:Redirect
+'redirect' => 'Birzuzendu fitxategi, lankide edo berrikuspen IDaren arabera',
+'redirect-legend' => 'Orrialde edo fitxategi batera birzuzendu',
+'redirect-submit' => 'Joan',
+'redirect-lookup' => 'Ikuskatu:',
+'redirect-value' => 'Balioa:',
+'redirect-user' => 'Erabiltzailearen identifikazioa (ID):',
+'redirect-revision' => 'Orrialdearen berrikuspena',
+'redirect-file' => 'Fitxategiaren izena',
+'redirect-not-exists' => 'Ez da baliorik aurkitu',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Artxibo bikoiztuen bilaketa',
'htmlform-submit' => 'Bidali',
'htmlform-reset' => 'Aldaketak desegin',
'htmlform-selectorother-other' => 'Beste bat',
+'htmlform-no' => 'Ez',
+'htmlform-yes' => 'Bai',
+'htmlform-chosen-placeholder' => 'Aukeratu',
+
+# SQLite database support
+'sqlite-has-fts' => '$1 testu osoan bilatzeko laguntzarekin',
# New logging system
-'logentry-delete-delete' => '$1 wikilariak «$3» orria ezabatu du',
+'logentry-delete-delete' => '$1 wikilariak $3 orria {{GENDER:$2|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-suppress-event' => '$1 wikilariak ezkutuan ikusgaitasuna aldatu {{PLURAL:$5|dio erregistroko sarrera bati|die erregistroko $5 sarrerari}}, $3 orrian: $4',
+'revdelete-content-hid' => 'edukia izkutatua',
+'revdelete-summary-hid' => 'aldaketa laburpena izkutatua',
+'revdelete-uname-hid' => 'lankide izena ezkutatua',
+'revdelete-content-unhid' => 'eduki ezkutua erakutsi',
+'revdelete-summary-unhid' => 'aldaketa laburpen izkutua erakutsi',
+'revdelete-uname-unhid' => 'lankide ezkutua erakutsi',
'revdelete-restricted' => 'administratzaileentzako mugak ezarri dira',
'revdelete-unrestricted' => 'administratzaileentzako mugak kendu dira',
-'logentry-move-move' => '$1 wikilariak «$3» orria «$4» izenera aldatu du',
-'logentry-move-move-noredirect' => '$1 wikilariak «$3» orria «$4» izenera aldatu du, birzuzenketarik utzi gabe',
-'logentry-move-move_redir' => '$1 wikilariak «$3» orria «$4» izenera aldatu du, birzuzenketaren gainetik',
-'logentry-move-move_redir-noredirect' => '$1 wikilariak «$3» orria «$4» izenera aldatu du, birzuzenketa bat gainidatzita, birzuzenketarik utzi gabe',
+'logentry-move-move' => '$1 {{GENDER:$2|wikilariak}} $3 orria $4 izenera aldatu du',
+'logentry-move-move-noredirect' => '$1 {{GENDER:$2|wikilariak}} $3 orria $4 izenera aldatu du, birzuzenketarik utzi gabe',
+'logentry-move-move_redir' => '$1 {{GENDER:wikilariak}} «$3» orria «$4» izenera aldatu du, birzuzenketaren gainetik',
+'logentry-move-move_redir-noredirect' => '$1 {{GENDER:wikilariak}} «$3» orria «$4» izenera aldatu du, birzuzenketa bat gainidatzita, birzuzenketarik utzi gabe',
+'logentry-patrol-patrol' => '$1(e)k $3 orrialdearen $4 berrikuzpena patruilatutzat {{GENDER:$2|markatu}} du',
'logentry-newusers-newusers' => '$1 erabiltzaile kontua sortu da',
'logentry-newusers-create' => '$1 erabiltzaile kontua sortu da',
'logentry-newusers-create2' => '$1 wikilariak $3 erabiltzaile kontua sortu du',
'feedback-message' => 'Mezua:',
'feedback-cancel' => 'Utzi',
'feedback-submit' => 'Feedbacka bidali',
+'feedback-error2' => 'Akatsa: Aldaketa ez da egin',
+'feedback-close' => 'Egina',
+'feedback-bugnew' => 'Txekeatu dut. Bug berria bidaliko',
# Search suggestions
'searchsuggest-search' => 'Bilatu',
'searchsuggest-containing' => 'edukian...',
+# API errors
+'api-error-badaccess-groups' => 'Ez duzu baimendik fitxategi hauek wiki honetara igotzeko.',
+'api-error-badtoken' => 'Barne akatsa: token okerra.',
+'api-error-unclassified' => 'Ezezaguna den errorea gertatu da.',
+'api-error-unknown-code' => 'Akats ezezaguna: "$1".',
+
+# Durations
+'duration-seconds' => '{{PLURAL:$1|Segundu $1|$1 segundu}}',
+'duration-minutes' => '{{PLURAL:$1|Minutu $1|$1 minutu}}',
+'duration-hours' => '{{PLURAL:$1|Ordu $1|$1 ordu}}',
+'duration-days' => '{{PLURAL:$1|Egun $1|$1 egun}}',
+'duration-weeks' => '{{PLURAL:$1|Aste $1|$1 aste}}',
+'duration-years' => '{{PLURAL:$1|Urte $1|$1 urte}}',
+'duration-decades' => '{{PLURAL:$1|Hamarkada $1|$1 hamarkada}}',
+'duration-centuries' => '{{PLURAL:$1|Mende $1|$1 mende}}',
+'duration-millennia' => '{{PLURAL:$1|Milurteko $1|$1 milurteko}}',
+
);
'tog-shownumberswatching' => "Muestral el númeru d'usuárius que la vehilan",
'tog-oldsig' => 'Firma dessistenti:',
'tog-fancysig' => 'Tratal la firma cumu testu wiki (sin atiju automáticu)',
-'tog-externaleditor' => 'Gastal eitol esternu pol defeutu (solu pa sabihondus, es mestel una configuración especial nel ordinaol)',
-'tog-externaldiff' => 'Gastal def esternu pol defeutu (solu pa sabihondus, es mestel una configuración especial nel ordinaol)',
'tog-showjumplinks' => 'Premitil los atihus d\'acesibiliá "sartal a"',
'tog-uselivepreview' => 'Gastal "live preview" (JavaScript) (en prebas)',
'tog-forceeditsummary' => 'Avisalmi cuandu nu escreba una síntesis dun chambu',
'disclaimers' => 'Avissu legal',
'disclaimerpage' => 'Project:Arrayu heneral de responsabiliá',
'edithelp' => "Ayua d'eición",
-'edithelppage' => 'Help:Eitandu',
'helppage' => 'Help:Continius',
'mainpage' => 'Página prencipal',
'mainpage-description' => 'Páhina prencipal',
'viewprevnext' => 'Vel ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-legend' => 'Ocionis de landeu',
'searchmenu-new' => "'''Crial el artículu \"[[:\$1]]\"'''",
-'searchhelp-url' => 'Help:Continius',
'searchprofile-images' => 'Murtimeya',
'searchprofile-everything' => 'Tó',
'searchprofile-advanced' => 'Avançau',
'search-external' => 'Landeu estelnu',
'searchdisabled' => 'Los landeus en {{SITENAME}} están temporalmenti desativaus. Mentris tantu, pueis landeal meyanti landerus esternus, inque ten en cuenta que los sus éndicis concernientis a {{SITENAME}} puein nu estal atualizaus.',
-# Quickbar
-'qbsettings' => 'Preferéncias la "Quickbar"',
-'qbsettings-none' => 'Dengunu',
-'qbsettings-fixedleft' => 'Asiahau a la gocha',
-'qbsettings-fixedright' => 'Asiahau a la derecha',
-'qbsettings-floatingleft' => 'Frotanti ena gocha',
-'qbsettings-floatingright' => 'Frotanti ena derecha',
-
# Preferences page
'preferences' => 'Preferéncias',
'mypreferences' => 'Las mis preferéncias',
'notvisiblerev' => 'La revisión á siu esborrá',
'watchnochange' => 'Nu s´eitó denguna e las tus páhinas vehilás nel períu lihiu.',
'watchlist-details' => '{{PLURAL:$1|$1 artículu|$1 artículus}} vehilaus (sin contal las carabas).',
-'wlheader-enotif' => '* Se premitin notificacionis pol email.',
-'wlheader-showupdated' => "* Las páhinas que s'án emburacau dendi la úrtima vezi que las visoreasti son muestrás en '''negrina'''",
+'wlheader-enotif' => 'Se premitin notificacionis pol email.',
+'wlheader-showupdated' => "Las páhinas que s'án emburacau dendi la úrtima vezi que las visoreasti son muestrás en '''negrina'''",
'watchmethod-recent' => 'comprebandu las úrtimas eicionis en páhinas vehilás',
'watchmethod-list' => 'Revisandu las páhinas vehilás en cata los úrtimus chambus',
'watchlistcontains' => 'Ai $1 {{PLURAL:$1|páhina|páhinas}} ena tu lista e seguimientu.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Anchón',
'exif-imagelength' => 'Artura',
'exif-bitspersample' => 'Bits pol componenti',
'exif-gpsdatestamp' => 'Fecha el GPS',
'exif-gpsdifferential' => 'Correción diferencial de GPS',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Descomprimiu',
'exif-unknowndate' => 'Fecha andarria',
'version-software-product' => 'Proutu',
'version-software-version' => 'Velsión',
-# Special:FilePath
-'filepath' => "Ruta d'archivu",
-'filepath-page' => 'Archivu:',
-'filepath-submit' => 'Ruta',
-'filepath-summary' => "Esta páhina especial degüervi la ruta compreta dun archivu.
-Las imahin se muestran a resolución compreta; las demas crasis d'archivu s'ehecutan diretamenti con el su pograma asociau.",
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Landeal archivus dupricaus',
'fileduplicatesearch-legend' => 'Landeal dupricaus',
* @author ZxxZxxZ
* @author לערי ריינהארט
* @author جواد
+ * @author درفش کاویانی
* @author محک
*/
'oct' => 'اکتبر',
'nov' => 'نوامبر',
'dec' => 'دسامبر',
-
-'monday-at' => 'دوشنبهٔ $1',
-'tuesday-at' => 'سهشنبهٔ $1',
-'wednesday-at' => 'چهارشنبهٔ $1',
-'thursday-at' => 'پنجشنبهٔ $1',
-'friday-at' => 'جمعهٔ $1',
-'saturday-at' => 'شنبهٔ $1',
-'sunday-at' => 'یکشنبهٔ $1',
-'today-at' => '$1',
-'yesterday-at' => 'دیروز $1',
+'january-date' => '$1 ژانویه',
+'february-date' => '$1 فوریه',
+'march-date' => '$1 مارس',
+'april-date' => '$1 آوریل',
+'may-date' => '$1 مه',
+'june-date' => '$1 ژوئن',
+'july-date' => '$1 ژوئیه',
+'august-date' => '$1 اوت',
+'september-date' => '$1 سپتامبر',
+'october-date' => '$1 اکتبر',
+'november-date' => '$1 نوامبر',
+'december-date' => '$1 دسامبر',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|رده|ردهها}}',
'disclaimers' => 'تکذیبنامهها',
'disclaimerpage' => 'Project:تکذیبنامهٔ عمومی',
'edithelp' => 'راهنمای ویرایشکردن',
-'edithelppage' => 'Help:ویرایش',
'helppage' => 'Help:محتوا',
'mainpage' => 'صفحهٔ اصلی',
'mainpage-description' => 'صفحهٔ اصلی',
'privacypage' => 'Project:سیاست محرمانگی',
'badaccess' => 'خطای دسترسی',
-'badaccess-group0' => 'شما اجازهٔ اجرای عملی را که درخواست کردهاید ندارید.',
+'badaccess-group0' => 'شما اجازهٔ اجرای عملی که درخواست کردهاید را ندارید.',
'badaccess-groups' => 'عملی که درخواست کردهاید منحصر به کاربران {{PLURAL:$2|این گروه|این گروهها}} است: $1.',
'versionrequired' => 'نسخهٔ $1 از نرمافزار مدیاویکی لازم است',
'welcomecreation-msg' => 'حساب کاربری شما ایجاد شده است.
فراموش نکنید که [[Special:Preferences|ترجیحات {{SITENAME}}]] خود را تغییر دهید.',
'yourname' => 'نام کاربری:',
+'userlogin-yourname' => 'نام کاربری',
+'userlogin-yourname-ph' => 'نام کاربریتان را وارد کنید',
'yourpassword' => 'گذرواژه:',
+'userlogin-yourpassword' => 'گذرواژه',
+'userlogin-yourpassword-ph' => 'گذرواژه را وارد کنید',
+'createacct-yourpassword-ph' => 'یک گذرواژه وارد کنید',
'yourpasswordagain' => 'تکرار گذرواژه:',
+'createacct-yourpasswordagain' => 'گذرواژه را دوباره وارد کنید',
+'createacct-yourpasswordagain-ph' => 'گذرواژه را وارد کنید برای بار دوم',
'remembermypassword' => 'گذرواژه را (تا حداکثر $1 {{PLURAL:$1|روز|روز}}) در این رایانه به خاطر بسپار',
+'userlogin-remembermypassword' => 'من را واردشده نگهدار',
+'userlogin-signwithsecure' => 'از ورود امن استفاده کنید',
'securelogin-stick-https' => 'پس از ورود به سامانه به HTTPS متصل بمان',
'yourdomainname' => 'دامنهٔ شما:',
'password-change-forbidden' => 'شما نمیتوانید گذرواژهها را در این ویکی تغییر دهید.',
'logout' => 'خروج از سامانه',
'userlogout' => 'خروج از سامانه',
'notloggedin' => 'به سامانه وارد نشدهاید',
+'userlogin-noaccount' => 'حساب کاربری ندارید؟',
+'userlogin-joinproject' => 'در {{SITENAME}} نامنویسی کنید!',
'nologin' => 'حساب کاربری ندارید؟ $1.',
'nologinlink' => 'یک حساب کاربری جدید بسازید',
'createaccount' => 'ایجاد حساب کاربری',
'gotaccount' => 'حساب کاربری دارید؟ $1.',
'gotaccountlink' => 'به سامانه وارد شوید',
'userlogin-resetlink' => 'جزئیات ورود را فراموش کردهاید؟',
+'userlogin-resetpassword-link' => 'گذرواژهتان را فراموش کردید؟',
+'helplogin-url' => 'Help:ورود به سامانه',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|راهنمای ورود به سامانه]]',
+'createacct-join' => 'اطلاعاتتان را در زیر وارد کنید',
+'createacct-emailrequired' => 'آدرس رایانامه',
+'createacct-emailoptional' => 'آدرس رایانامه (اختیاری)',
+'createacct-email-ph' => 'آدرس رایانامه را وارد کنید',
'createaccountmail' => 'استفاده از رمز عبور موقت تصادفی و ارسال آن به آدرس ایمیل مشخص شده در زیر',
+'createacct-realname' => 'نام واقعی (اختیاری)',
'createaccountreason' => 'دلیل:',
+'createacct-reason' => 'دلیل',
+'createacct-reason-ph' => 'چرا شما حساب دیگری میسازید؟',
+'createacct-captcha' => 'بررسی امنیتی',
+'createacct-imgcaptcha-ph' => 'متن تصویری که در بالا میبینید، وارد کنید',
+'createacct-submit' => 'حسابتان را بسازید',
+'createacct-benefit-heading' => '{{SITENAME}} توسط افرادی مانند شما ساخته شدهاست',
+'createacct-benefit-body1' => '{{PLURAL:$1|ویرایش|ویرایشها}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|صفحه|صفحهها}}',
'badretype' => 'گذرواژههایی که وارد کردهاید یکسان نیستند.',
'userexists' => 'نام کاربریای که وارد کردید قبلاً استفاده شدهاست.
لطفاً یک نام دیگر انتخاب کنید.',
# Special:PasswordReset
'passwordreset' => 'بازنشانی گذرواژه',
-'passwordreset-text' => 'این فرم را برای دریافت نامهٔ یادآور جزئیات حسابتان کامل کنید.',
'passwordreset-legend' => 'بازنشانی گذرواژه',
'passwordreset-disabled' => 'بازنشانی گذرواژه در این ویکی غیرفعال شده است.',
-'passwordreset-pretext' => '{{PLURAL:$1||یکی از قطعههای داده را در زیر وارد کنید}}',
'passwordreset-username' => 'نام کاربری:',
'passwordreset-domain' => 'دامنه:',
'passwordreset-capture' => 'رایانامهٔ نهایی نشان داده شود؟',
به نظرمیرسد که صفحه حذف شده باشد.',
'edit-conflict' => 'تعارض ویرایشی.',
'edit-no-change' => 'ویرایش شما نادیده گرفته شد، زیرا تغییری در متن داده نشده بود.',
+'postedit-confirmation' => 'ویرایش شما ذخیره شد.',
'edit-already-exists' => 'امکان ساختن صفحهٔ جدید وجود ندارد.
این صفحه از قبل وجود داشتهاست.',
'defaultmessagetext' => 'متن پیشفرض پیغام',
'searchmenu-legend' => 'گزینههای جستجو',
'searchmenu-exists' => "'''صفحهای با عنوان \"[[:\$1]]\" در این ویکی وجود دارد.'''",
'searchmenu-new' => "'''صفحهٔ «[[:$1]]» را در این ویکی بسازید!'''",
-'searchhelp-url' => 'Help:محتوا',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|مرور صفحههای با این پیشوند]]',
'searchprofile-articles' => 'صفحههای محتوایی',
'searchprofile-project' => 'صفحههای راهنما و پروژه',
'prefs-diffs' => 'تفاوتها',
# User preference: email validation using jQuery
-'email-address-validity-valid' => 'نشانی رایانامه معتبر به نظر می رسد',
+'email-address-validity-valid' => 'نشانی رایانامه معتبر به نظر میرسد',
'email-address-validity-invalid' => 'نشانی رایانامهٔ معتبر وارد کنید',
# User rights
'listusers-noresult' => 'هیچ کاربری یافت نشد.',
'listusers-blocked' => '(بسته شده)',
+# Special:ActiveUsers
+'activeusers' => 'فهرست کاربران فعال',
+'activeusers-intro' => 'در زیر فهرستی از کاربرانی را میبینید که در $1 {{PLURAL:$1|روز|روز}} گذشته فعالیتی داشتهاند.',
+'activeusers-count' => '$1 {{PLURAL:$1|فعالیت|فعالیت}} در {{PLURAL:$3|روز|$3 روز}} اخیر',
+'activeusers-from' => 'نمایش کاربران با آغاز از:',
+'activeusers-hidebots' => 'نهفتن رباتها',
+'activeusers-hidesysops' => 'نهفتن مدیران',
+'activeusers-noresult' => 'کاربری پیدا نشد.',
+
# Special:ListGroupRights
'listgrouprights' => 'اختیارات گروههای کاربری',
'listgrouprights-summary' => 'فهرست زیر شامل گروههای کاربری تعریف شده در این ویکی و اختیارات داده شده به آنها است.
'tooltip-n-mainpage' => 'مشاهدهٔ صفحهٔ اصلی',
'tooltip-n-mainpage-description' => 'مشاهدهٔ صفحهٔ اصلی',
'tooltip-n-portal' => 'پیرامون پروژه، آنچه میتوانید انجام دهید و اینکه چه چیز را کجا پیدا کنید',
-'tooltip-n-currentevents' => 'یافتن اطلاعات پیشزمینه پیرامون رویدادهای کنونی',
+'tooltip-n-currentevents' => 'یافتن اطلاعات پسزمینه پیرامون رویدادهای کنونی',
'tooltip-n-recentchanges' => 'فهرستی از تغییرات اخیر ویکی',
'tooltip-n-randompage' => 'آوردن یک صفحهٔ تصادفی',
'tooltip-n-help' => 'مکانی برای دریافتن',
'ago' => '$1 پیش',
'just-now' => 'هماکنون',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|ساعت|ساعت}} قبل',
+'minutes-ago' => '$1 {{PLURAL:$1|دقیقه|دقیقه}} قبل',
+'seconds-ago' => '$1 {{PLURAL:$1|ثانیه|ثانیه}} قبل',
+'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' => 'اطلاعات را باید اینگونه وارد کنید:
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'عرض',
'exif-imagelength' => 'طول',
'exif-bitspersample' => 'نقطه در هر جزء',
'exif-originalimageheight' => 'بلندی تصویر قبل از برش دادن',
'exif-originalimagewidth' => 'پهنای تصویر قبل از برش دادن',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'غیرفشرده',
'exif-compression-2' => 'رمزگذاری سیسیآیتیتی گروه ۳ یک بعدی به روش هافمن تغییریافته روی طول',
'exif-compression-3' => 'رمزگذاری نمابر سیسیآیتیتی گروه ۳',
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath مسیر مقاله]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath مسیر اسکریپت]',
-# Special:FilePath
-'filepath' => 'مسیر پرونده',
-'filepath-page' => 'پرونده:',
-'filepath-submit' => 'برو',
-'filepath-summary' => 'این صفحهٔ ویژه نشانی کامل برای یک پرونده را نشان میدهد. تصاویر با کیفیت وضوح کامل نشان داده میشوند، سایر انواع پرونده با برنامه مخصوص به خودشان باز میشوند.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'جستجو برای پروندههای تکراری',
'fileduplicatesearch-summary' => 'جستجو برای پروندههای تکراری بر اساس مقدار درهمشدهٔ آنها صورت میگیرد.',
# Image rotation
'rotate-comment' => 'تصویر به دست $1 {{PLURAL:$1|درجهٔ|درجهٔ}} ساعتگرد چرخانده شد',
-# Unknown messages
-'hours-ago' => '$1 {{PLURAL:$1|ساعت|ساعت}} قبل',
-'minutes-ago' => '$1 {{PLURAL:$1|دقیقه|دقیقه}} قبل',
-'seconds-ago' => '$1 {{PLURAL:$1|ثانیه|ثانیه}} قبل',
);
'listingcontinuesabbrev' => 'jokku',
'noindex-category' => 'Kello njoopaaka',
-'mytalk' => 'kaldigal am',
+'newwindow' => '(udditata e henorde hesere)',
+'cancel' => 'Haaytu',
+'mytalk' => 'Yeewtere',
'navigation' => 'Peeragol',
+# Cologne Blue skin
+'faq' => 'FAQ',
+
# Vector skin
'vector-action-addsection' => 'Ɓeydi toɓɓere',
'vector-action-move' => 'Dirtin',
+'vector-view-create' => 'Sos',
'vector-view-edit' => 'Taƴto',
'vector-view-history' => 'Yiyto aslol',
'vector-view-view' => 'Tar',
+'vector-view-viewsource' => 'Yiyto ɗaɗol',
'actions' => 'Baɗe',
'namespaces' => 'Boowal inɗe',
'variants' => 'Lomtooɗe',
Tiiɗno jaŋto ɗum to [[Special:ListUsers/sysop|jiiloowo]] mbaasaa yejjitde URL jokkol ngol.',
'badtitle' => 'Tiitoonde moƴƴaani',
'badtitletext' => 'Tiitoonde ello ɗaɓɓitaango ngoo moƴƴaani, ko mehre, walla ko hakkude-ɗemɗe jokkoraade no feewaani walla tiitoonde hakkude-wiki',
+'viewsource' => 'Yiyto ɗaɗol',
# Login and logout pages
'yourname' => 'Innde Kuutoro',
'nav-login-createaccount' => 'Seŋo / uddit konte',
'loginprompt' => 'Alaa e sago kurminaa kukiije ngam seŋaade e {{SITENAME}}.',
'userlogin' => 'Seŋo / uddit konte',
+'userlogout' => 'Seŋto',
'nologin' => 'A alaa konte tawo? $1.',
'nologinlink' => 'Uddit konte',
'mailmypassword' => 'Neldu finnde hesere e iimeel',
'loginlanguagelabel' => 'Ɗemngal: $1',
+# Edit page toolbar
+'bold_sample' => 'Binndol ɓuutol',
+'italic_sample' => 'Binndol italic',
+'italic_tip' => 'Binndol italic',
+'extlink_sample' => 'http://www.yeru.com tiitoonde jokkol',
+'extlink_tip' => 'Jokkol boowbowal (siiftor puɗɗol http://)',
+'headline_sample' => 'Binndol tiitoonde',
+'nowiki_sample' => 'Naatnu binndol ngol mbaydinaaka',
+'nowiki_tip' => 'Faalkiso mbaydingol wiki',
+'image_tip' => 'Fiilde soomtoraande',
+'sig_tip' => 'Ciifol maa kañum e ñalngu',
+'hr_tip' => 'Diidol lelingol (huutoro seeɗa)',
+
# Edit pages
+'minoredit' => 'Ɗuum ko taƴtol pamarol',
+'watchthis' => 'Rewindo ngoo hello',
+'savearticle' => 'Danndu hello',
'preview' => 'Yiytindo',
+'showpreview' => 'Hollu jiytol',
+'showdiff' => 'Hollu bayle',
'newarticle' => '(Kesi)',
'newarticletext' => 'A rewii e jokkol feewde e hello ngo woodaani tawo.
Ngam sosde hello ngoo, fuɗɗo tappude e gallol les ngol (Yah to [[{{MediaWiki:Helppage}}|help page]] ngam ɓeydude humpito).',
'hiddencategories' => 'Ngoo hello jeyaa ko e {{PLURAL:$1|1 fedde suuɗiinde|$1 pelle cuuɗiiɗe}}:',
# Parser/template warnings
+'post-expand-template-inclusion-warning' => '""Reentino"."" Ɓetol tuugnorde ɓurtii.',
+'post-expand-template-inclusion-category' => 'Kelle baɗɗe tuugnorɗe ɓurtuɗe',
'post-expand-template-argument-warning' => "'''Warning:''' Ngoo hello ena jogii daliilu tiimtorde jogiiɗo ɓetol layo mawngol haa ɓurti.
Ɗiin dalillaaji nduulaama.",
'post-expand-template-argument-category' => 'Kelle jogiiɗe dalillaaji tiimtorde jejjitaaɗe',
# History pages
'viewpagelogs' => 'Yiyto loge ngoo hello',
+'currentrev-asof' => 'Yamre sakkitiinde nde $1',
'revisionasof' => 'Waylitannde $1',
+'previousrevision' => '← Baylital ɓennungal',
+'cur' => 'gon',
+'last' => 'ɓenn',
'histlegend' => 'Cifol : ({{int:cur}}) = ko seerti e yamre wonaande ndee, ({{int:last}}) = ko seerti e yamre ɓennunde ndee, <b>{{int:minoreditletter}}</b> = baylital pamaral',
'history-fieldset-title' => 'Feero e aslol',
'history-show-deleted' => 'Momtaaɗi tan',
# Revision deletion
'revdel-restore' => 'waylu jiyagol',
+'revdel-restore-deleted' => 'baylitte momtaaɗe',
'revdel-restore-visible' => 'baylitte jiyotooɗe',
# Merge log
'shown-title' => 'Hollu $1 {{PLURAL:$1|njaltudi|jaltuɗe}} e hello fof',
'viewprevnext' => 'Yiyto ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''Ena woodi hello ena wiyee \"[[:\$1]]\" e oo wiki.'''",
+'searchmenu-new' => "'''Sos hello \"[[:\$1]]\" e oo wiki!'''",
'searchprofile-articles' => 'Kello loowdi',
'searchprofile-project' => 'Hello ballal e Eɓɓoore',
'searchprofile-images' => 'Sawmejaajo',
'search-result-size' => '$1 ({{PLURAL:$2|helmere 1|kelme$ 2}})',
'search-redirect' => '(yiiltu $1)',
'search-section' => '(taƴre $1)',
+'search-suggest' => 'Maa taw njiɗ-ɗaa wiyde ko: $1',
'searchall' => 'fof',
'showingresultsheader' => "{{PLURAL:$5|Njaltudi'''$1''' of '''$3'''|Jaltuɗe'''$1 - $2''' of '''$3'''}} for '''$4'''",
+'search-nonefound' => 'Alaa njaltudi arti e ndee ɗaɓɓitannde.',
+
+# Preferences page
+'mypreferences' => 'Cuɓoraade',
# Recent changes
'recentchanges' => 'Wailitooji kesi',
'rclinks' => 'Hollu bayle $1 cakkitiiɗe baɗaaɗe e balɗe $2 ɓannuɗe ɗee<br />$3',
'diff' => 'ceer',
'hist' => 'aslol',
+'hide' => 'Suuɗ',
+'show' => 'Hollu',
'rc-enhanced-expand' => 'Hollu cariiɗe (ena naamnii JavaScript)',
'rc-enhanced-hide' => 'Suuɗ cariiɗe',
'recentchangeslinked-toolbox' => 'Bayle toɗɗiiɗe ɗee',
'recentchangeslinked-title' => 'Bayle toɗɗiiɗe "$1"',
'recentchangeslinked-noresult' => 'Alaa bayle ngoni e hello jokkiingo ngoo e dumunna joopaaɗo oo.',
+'recentchangeslinked-summary' => 'Ɗuum ko doggol bayle baɗaaɗe sakket e kelle jokkiiɗe e hello heeriingo (walla e terɗe fedde heeriinde).
+Kelle e [[Special:Watchlist|your watchlist]] ko ngoni ko e ""ɓuutol"".',
'recentchangeslinked-page' => 'Innde hello:',
'recentchangeslinked-to' => 'Hollu bayle kelle jokkaaɗe e hello toɗɗaango ngoo kisa',
'filedesc' => 'Tonngol',
# File description page
+'file-anchor-link' => 'Fiilde',
'filehist' => 'Aslol fiilde',
+'filehist-help' => 'Dobo e ñalngu/waktu ngam yiyde fiilde ndee no nde yaltirta e oon waktu nih.',
+'filehist-current' => 'gonaaɗo',
+'filehist-datetime' => 'Ñalngu/Waktu',
+'filehist-thumb' => 'Dooɓre',
+'filehist-thumbtext' => 'Dooɓre yamre $1',
+'filehist-user' => 'Kuutoro',
+'filehist-dimensions' => 'Ɓete',
+'filehist-comment' => 'Yowre',
'imagelinks' => 'Kuutorgol fiilde',
+'linkstoimage' => '{{PLURAL:$1|page links|$1 pages link}} dewɗe e ngoo hello:',
'nolinkstoimage' => 'Alaa kelle jokkiiɗe e ndee fiilde.',
+'sharedupload-desc-here' => 'Ndee fiilde ummii ko e $1 tee ena waawi huutoreede e eɓɓooje koɗe.
+Cifol gonngol e [$2 file description page] makko ena holliraa les ɗoo.',
# Random page
'randompage' => 'Ɗerewol kawral',
'log' => 'Loge',
# Special:AllPages
+'alphaindexline' => '$1 haa $2',
'allarticles' => 'Winndannde hesere',
+'allpagessubmit' => 'Yah',
# Special:LinkSearch
'linksearch-line' => '$1 ko-ko jokkaa e $2',
# Watchlist
'watchlist' => 'Doggol ndeenka am',
+'mywatchlist' => 'Doggol rewindo',
'watch' => 'Rewindaande',
'unwatch' => 'Darin rewindo',
# Undelete
'undeletelink' => 'yiyto/artir',
+'undeleteviewlink' => 'yiyto',
# Namespace form on various pages
+'namespace' => 'Boowal inɗe',
'blanknamespace' => '(Dowrowo)',
# Contributions
'contributions' => 'Ballitte kuutoro',
+'mycontris' => 'Ballitte',
'month' => 'Tuggi nduu lewru (e ɓennuɗi):',
'year' => 'Tuggi ndee hitaande (e ɓennuɗe):',
'whatlinkshere-filters' => 'Ceɗe',
# Block/unblock
+'ipboptions' => 'waktuuji 2:waktuuji 2,ñalawma 1:ñalawma 1,balɗe 3:balɗe 3,yontere 1:yontere 1,jonte 2:jonte 2,lewru 1:lewru 1,lebbi 3:lebbi 3,lebbi 6:lebbi 6,hitaande 1:hitaande 1,gasataa:haa badaa',
'blocklink' => 'daaƴ',
'unblocklink' => 'daaƴtu',
'change-blocklink' => 'wayli daaƴo',
'movelogpage' => 'Dirtin loge',
'revertmove' => 'firlit',
+# Export
+'export' => 'Jiggito kello',
+
# Namespace 8 related
'allmessagesname' => 'Innde',
'allmessagesdefault' => 'Binndo ɓatakuru goowangol',
'tooltip-pt-logout' => 'Seŋto',
'tooltip-ca-talk' => 'Yeewtere baɗte hello loowdi ngoo',
'tooltip-ca-edit' => 'Aɗa waawi taƴtaade ngoo hello. Tiiɗno huutoro butoŋ yiytindo oo hade maa danndude',
+'tooltip-ca-addsection' => 'Fuɗɗo taƴre hesere',
'tooltip-ca-viewsource' => 'Ngoo hello ko hisnaango.
Aɗa waawi yiytaade ɗaɗol maggo.',
'tooltip-ca-history' => 'Baylitte ɓennuɗe e ngoo hello',
'tooltip-ca-protect' => 'Hisnu ngoo hello',
'tooltip-ca-delete' => 'Momtu ngoo hello',
+'tooltip-ca-move' => 'Dirtin ngoo hello',
+'tooltip-ca-watch' => 'Ɓeydu ngoo hello e dewindaaɗe maa',
'tooltip-ca-unwatch' => 'Momtu ngoo hello e doggol ndeenka maa',
'tooltip-search' => 'Yiylo e {{SITENAME}}',
'tooltip-search-fulltext' => 'Yiylo ndii loowdi e kelle ɗee',
'tooltip-n-help' => 'Ko ɗoo yiytetee',
'tooltip-t-whatlinkshere' => 'Doggol kelle Wiki jokkaaɗe ɗoo ɗee fof',
'tooltip-t-recentchangeslinked' => 'Bayle cakkitiiɗe e kelle jokkaaɗe e ngoo hello',
+'tooltip-feed-atom' => 'Balal Atom ngoo hello',
'tooltip-t-contributions' => 'Doggol ballitte oo kuutoro',
'tooltip-t-upload' => 'Yollu piille',
'tooltip-t-specialpages' => 'Doggol kelle keeriiɗe fof',
'tooltip-ca-nstab-user' => 'Yiyto hello kuutoro',
'tooltip-ca-nstab-project' => 'Yiyto hello eɓɓoore ngoo',
'tooltip-ca-nstab-image' => 'Yiyto hello fiilde ngoo',
+'tooltip-ca-nstab-template' => 'Yiyto tuugnorde ndee',
+'tooltip-ca-nstab-category' => 'Yiyto hello fedde ndee',
'tooltip-minoredit' => 'Maanto ɗum ko taƴto famaro',
+'tooltip-save' => 'Danndu bayle maa',
+'tooltip-preview' => 'Yiytindo bayle maa, tiiɗno huutoro ɗuum hade maa danndude!',
'tooltip-compareselectedversions' => 'Ƴeew ko seerndi hakkunde baylitte ɗiɗi ngoo hello labaaɗe ɗee',
'tooltip-watch' => 'Ɓeydu ngoo hello e doggol ndeenka maa',
'tooltip-rollback' => '"Riiwtude" firlittu taƴte ngoo hello ruttoo to battindiiɗo waylude ngo e dobannde wootere',
'tooltip-undo' => '"Firtu" artirtu ngol taƴtol tee uddita gallol taƴto ngol e mbaydi yiytindo. Nafata ko ɓeydude daliilu e tonngol ngol.',
+'tooltip-summary' => 'Naatnu tonngol daɓɓol',
# Browsing diffs
'previousdiff' => 'Taƴte ɓennungol',
# Media information
+'file-info-size' => '$1 × $2 piksele, ɓetol fiilde: $3, mbaydi MIME: $4',
'file-nohires' => 'Werngo ɓurngo ɗoo toowde alaa.',
'svg-long-desc' => 'Fiilde SVG, werngo mum ko $1 × $2 pikelle, ɓetol fiildee: $3',
Kala jokkol dewngol e ngool gorol nanngiraa ko paltooje, wano kelle ɗo fiilde ndee waawi yaltude.',
# Metadata
+'metadata' => 'Metaakeɓe',
'metadata-help' => 'Ngoo hello ena waɗi humpito woɗngo, tawata ko ummii ko e kameraa numerik walla niiwtorde huutoraande ngam sosde walla ngaanndinde nde.',
'metadata-fields' => 'Galli metaakeɓe natal gongal nde nduu ɓaakuru maa naatine e jaytinol hello natal tuma nde haatumeere metaakeɓe ndee taggitaa.
Goɗɗe maa cuuɗe e sahaa kala.
'edit-externally-help' => '(Yah to [//www.mediawiki.org/wiki/Manual:External_editors/ff tinndinoore teelto] ngam ɓeydude humpito)',
# 'all' in various places, this might be different for inflected languages
+'namespacesall' => 'fof',
'monthsall' => 'fof',
# Special:SpecialPages
* @author Cimon Avaro
* @author Crt
* @author ElmA
+ * @author Geitost
* @author Harriv
* @author Hyperborean
* @author Jaakonam
$messages = array(
# User preference toggles
-'tog-underline' => 'Linkkien alleviivaus',
+'tog-underline' => 'Linkkien alleviivaus:',
'tog-justify' => 'Tasaa kappaleet',
'tog-hideminor' => 'Piilota pienet muutokset tuoreet muutokset -listasta',
'tog-hidepatrolled' => 'Piilota tarkastetut muutokset tuoreet muutokset -listasta',
'oct' => 'lokakuu',
'nov' => 'marraskuu',
'dec' => 'joulukuu',
+'january-date' => '$1. tammikuuta',
+'february-date' => '$1. helmikuuta',
+'march-date' => '$1. maaliskuuta',
+'april-date' => '$1. huhtikuuta',
+'may-date' => '$1. toukokuuta',
+'june-date' => '$1. kesäkuuta',
+'july-date' => '$1. heinäkuuta',
+'august-date' => '$1. elokuuta',
+'september-date' => '$1. syyskuuta',
+'october-date' => '$1. lokakuuta',
+'november-date' => '$1. marraskuuta',
+'december-date' => '$1. joulukuuta',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Luokka|Luokat}}',
'create-this-page' => 'Luo tämä sivu',
'delete' => 'Poista',
'deletethispage' => 'Poista tämä sivu',
+'undeletethispage' => 'Palauta tämä sivu',
'undelete_short' => 'Palauta {{PLURAL:$1|yksi muokkaus|$1 muokkausta}}',
'viewdeleted_short' => 'Näytä {{PLURAL:$1|poistettu muokkaus|$1 poistettua muokkausta}}',
'protect' => 'Suojaa',
'disclaimers' => 'Vastuuvapaus',
'disclaimerpage' => 'Project:Vastuuvapaus',
'edithelp' => 'Muokkausohjeet',
-'edithelppage' => 'Help:Kuinka sivuja muokataan',
'helppage' => 'Help:Sisällys',
'mainpage' => 'Etusivu',
'mainpage-description' => 'Etusivu',
'namespaceprotected' => "Et voi muokata sivuja nimiavaruudessa '''$1'''.",
'customcssprotected' => 'Sinulla ei ole oikeutta muuttaa tätä CSS-sivua, koska se sisältää toisen käyttäjän henkilökohtaisia asetuksia.',
'customjsprotected' => 'Sinulla ei ole oikeutta muuttaa tätä JavaScript-sivua, koska se sisältää toisen käyttäjän henkilökohtaisia asetuksia.',
+'mycustomcssprotected' => 'Sinulla ei ole oikeutta muokata tätä CSS-sivua.',
+'mycustomjsprotected' => 'Sinulla ei ole oikeutta muokata tätä JavaScript-sivua.',
'ns-specialprotected' => 'Toimintosivuja ei voi muokata.',
'titleprotected' => "Käyttäjä [[User:$1|$1]] on suojannut tämän sivunimen, ja sivua ei voi luoda.
Syynä on: ''$2''.",
'notloggedin' => 'Et ole kirjautunut',
'userlogin-noaccount' => 'Eikö sinulla vielä ole käyttäjätunnusta?',
'userlogin-joinproject' => 'Liity {{GRAMMAR:illative|{{SITENAME}}}}',
-'nologin' => "Jos sinulla ei ole vielä käyttäjätunnusta, '''$1'''.",
+'nologin' => 'Jos sinulla ei ole vielä käyttäjätunnusta, $1.',
'nologinlink' => 'voit luoda sellaisen',
'createaccount' => 'Luo uusi käyttäjätunnus',
'gotaccount' => "Jos sinulla on jo tunnus, voit '''$1'''.",
'gotaccountlink' => 'kirjautua sisään',
'userlogin-resetlink' => 'Unohditko salasanasi?',
'userlogin-resetpassword-link' => 'Salasanan alustus',
+'helplogin-url' => 'Help:Sisäänkirjautuminen',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Auta sisäänkirjautumisessa]]',
'createacct-join' => 'Kirjoita tietosi alle.',
'createacct-emailrequired' => 'Sähköpostiosoite',
'cannotchangeemail' => 'Tunnusten sähköpostiosoitteita ei voi muuttaa tässä wikissä.',
'emaildisabled' => 'Tältä sivustolta ei voi lähettää sähköpostia.',
'accountcreated' => 'Käyttäjätunnus luotiin',
-'accountcreatedtext' => 'Käyttäjän $1 käyttäjätunnus luotiin.',
+'accountcreatedtext' => 'Käyttäjätunnus [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|keskustelu]]) luotiin.',
'createaccount-title' => 'Tunnuksen luominen {{GRAMMAR:illative|{{SITENAME}}}}',
'createaccount-text' => 'Joku on luonut tunnuksen $2 {{GRAMMAR:illative|{{SITENAME}}}} ($4).
Tunnuksen $2 salasana on $3. Kirjaudu sisään ja vaihda salasanasi.
'resetpass-wrong-oldpass' => 'Virheellinen väliaikainen tai nykyinen salasana.
Olet saattanut jo onnistuneesti vaihtaa salasanasi tai pyytää uutta väliaikaista salasanaa.',
'resetpass-temp-password' => 'Väliaikainen salasana:',
+'resetpass-abort-generic' => 'Lisäosa hylkäsi salasanan vaihdon.',
# Special:PasswordReset
'passwordreset' => 'Salasanan alustus',
-'passwordreset-text' => 'Täytä tämä lomake vaihtaaksesi salasanasi.',
+'passwordreset-text-one' => 'Täytä tämä lomake vaihtaaksesi salasanasi.',
+'passwordreset-text-many' => '{{PLURAL:$1|Täytä yksi datakentistä alustaaksesi salasanasi.}}',
'passwordreset-legend' => 'Salasanan vaihto',
'passwordreset-disabled' => 'Salasanojen alustus ei ole mahdollista tässä wikissä.',
'passwordreset-emaildisabled' => 'Sähköpostitoiminnot on poistettu käytöstä tässä wikissä.',
-'passwordreset-pretext' => '{{PLURAL:$1||Kirjoita jokin jäljempänä pyydetty tieto}}',
'passwordreset-username' => 'Käyttäjätunnus',
'passwordreset-domain' => 'Verkkotunnus',
'passwordreset-capture' => 'Näytä lähetettävä sähköpostiviesti',
'passwordreset-capture-help' => 'Jos valitset tämän, sähköposti (tilapäisellä salasanalla) näytetään sinulle sekä lähetetään käyttäjälle.',
'passwordreset-email' => 'Sähköpostiosoite',
'passwordreset-emailtitle' => 'Tunnuksen tiedot {{GRAMMAR:inessive|{{SITENAME}}}}',
-'passwordreset-emailtext-ip' => 'Joku (todennäköisesti sinä, IP-osoitteesta $1) pyysi muistutusta tunnuksesi tiedoista sivustolla {{SITENAME}} ($4).
-{{PLURAL:$3|Seuraava käyttäjätunnus on|Seuraavat käyttäjätunnukset ovat}} liitetty tähän sähköpostiosoitteeseen:
+'passwordreset-emailtext-ip' => 'Joku (todennäköisesti sinä, IP-osoitteesta $1) pyysi salasanasi
+palautusta sivustolla {{SITENAME}} ($4). {{PLURAL:$3|Seuraava käyttäjätili on|Seuraavat käyttäjätilit ovat}}
+yhdistettynä tähän sähköpostiosoitteeseen:
$2
-{{PLURAL:$3|Tämä väliaikainen salasana vanhentuu|Nämä väliaikaiset salasanat vanhentuvat}} {{PLURAL:$5|yhden päivän|$5 päivän}} kuluttua.
-Sinun kannattaa kirjautua sisään ja valita uusi salasana. Jos joku toinen teki tämän
-pyynnön, tai muistat sittenkin vanhan salasanasi, etkä halua muuttaa sitä,
+{{PLURAL:$3|Tämä väliaikainen salasana vanhenee|Nämä väliaikaiset salasanat vanhenevat}} {{PLURAL:$5|yhden päivän|$5 päivän}} kuluttua.
+Ole hyvä ja kirjaudu sisään nyt ja valitse uusi salasana. Jos joku toinen pyysi tätä,
+tai jos muistit jo vanhan salasanasi, etkä halua enää muuttaa sitä
voit jättää tämän viestin huomiotta ja jatkaa vanhan salasanan käyttöä.',
'passwordreset-emailtext-user' => 'Käyttäjä $1 pyysi muistutusta tunnuksesi tiedoista sivustolla {{SITENAME}} ($4).
{{PLURAL:$3|Seuraava käyttäjätunnus on|Seuraavat käyttäjätunnukset ovat}} liitetty tähän sähköpostiosoitteeseen:
voit jättää tämän viestin huomiotta ja jatkaa vanhan salasanan käyttöä.',
'passwordreset-emailelement' => 'Käyttäjätunnus: $1
Väliaikainen salasana: $2',
-'passwordreset-emailsent' => 'Sähköpostimuistutus on lähetetty.',
-'passwordreset-emailsent-capture' => 'Muistutussähköposti on lähetetty. Se näkyy myös alla.',
-'passwordreset-emailerror-capture' => 'Alla näytettävä sähköpostiviesti luotiin, mutta sen lähettäminen käyttäjälle epäonnistui: $1',
+'passwordreset-emailsent' => 'Salasananpalautusviesti on lähetetty.',
+'passwordreset-emailsent-capture' => 'Salasananpalautusviesti on lähetetty, se näkyy myös alla.',
+'passwordreset-emailerror-capture' => 'Allaoleva sähköpostiviesti luotiin, mutta sen lähettäminen {{GENDER:$2|käyttäjälle}} epäonnistui: $1',
# Special:ChangeEmail
'changeemail' => 'Muuta sähköpostiosoitetta',
Se on ilmeisesti poistettu.',
'edit-conflict' => 'Päällekkäinen muokkaus.',
'edit-no-change' => 'Muokkauksesi sivuutettiin, koska tekstiin ei tehty mitään muutoksia.',
+'postedit-confirmation' => 'Muokkauksesi on tallennettu.',
'edit-already-exists' => 'Uuden sivun luominen ei onnistunut.
Se on jo olemassa.',
'defaultmessagetext' => 'Viestin oletusteksti',
'invalid-content-data' => 'Virheellinen sisältö',
'content-not-allowed-here' => 'Sivun [[$2]] sisältö ei voi olla tyyppiä $1.',
'editwarning-warning' => 'Tältä sivulta poistuminen saattaa aiheuttaa kaikkien tekemiesi muutosten katoamisen.
-Jos olet kirjautuneena sisään, voit poistaa tämän varoituksen käytöstä asetuksissa osiossa ”{{int:prefs-editing}}”.',
+Jos olet kirjautuneena sisään, voit poistaa tämän varoituksen käytöstä asetuksissa osiossa »Muokkaus».',
# Content models
'content-model-wikitext' => 'wikiteksti',
'searchmenu-legend' => 'Hakuasetukset',
'searchmenu-exists' => "'''Tässä wikissä on sivu nimellä [[:$1]].'''",
'searchmenu-new' => "'''Luo sivu ''[[:$1]]'' tähän wikiin.'''",
-'searchhelp-url' => 'Help:Sisällys',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Selaa sivuja tällä etuliitteellä]]',
'searchprofile-articles' => 'Sisältösivut',
'searchprofile-project' => 'Ohje- ja projektisivut',
'powersearch-togglenone' => 'Poista valinnat',
'search-external' => 'Ulkoinen haku',
'searchdisabled' => 'Tekstihaku on poistettu toistaiseksi käytöstä suuren kuorman vuoksi. Voit käyttää alla olevaa Googlen hakukenttää sivujen etsimiseen, kunnes haku tulee taas käyttöön. <small>Huomaa, että ulkopuoliset kopiot {{GRAMMAR:genitive|{{SITENAME}}}} sisällöstä eivät välttämättä ole ajan tasalla.</small>',
+'search-error' => 'Virhe ilmaantui haettaessa: $1',
# Preferences page
'preferences' => 'Asetukset',
'userrights-notallowed' => 'Tunnuksellasi ei ole lupaa lisätä tai poistaa käyttöoikeuksia.',
'userrights-changeable-col' => 'Ryhmät, joita voit muuttaa',
'userrights-unchangeable-col' => 'Ryhmät, joita et voi muuttaa',
+'userrights-conflict' => 'Päällekkäinen käyttöoikeuksien muutos! Ole hyvä ja tee muutoksesi uudestaan.',
+'userrights-removed-self' => 'Poistit onnistuneesti omat oikeutesi. Tämän myötä sinulla ei ole enää oikeutta käyttää tätä sivua.',
# Groups
'group' => 'Ryhmä',
'right-editusercssjs' => 'Muokata toisten käyttäjien CSS- ja JavaScript-tiedostoja',
'right-editusercss' => 'Muokata toisten käyttäjien CSS-tiedostoja',
'right-edituserjs' => 'Muokata toisten käyttäjien JavaScript-tiedostoja',
+'right-editmyusercss' => 'Muokata omia CSS-tiedostojaan',
+'right-editmyuserjs' => 'Muokata omia JavaScript-tiedostojaan',
+'right-viewmywatchlist' => 'Katsoa tarkkailulistaasi',
+'right-editmywatchlist' => 'Muokata tarkkailulistaasi. Huomaa, että jotkin toiminnot lisäävät yhä sivuja listallesi riippumatta tästä oikeudesta.',
'right-rollback' => 'Palauttaa nopeasti käyttäjän viimeisimmät muokkaukset sivuun',
'right-markbotedits' => 'Kumota muokkauksia bottimerkinnällä',
'right-noratelimit' => 'Ohittaa nopeusrajoitukset',
'action-userrights-interwiki' => 'muokata muiden wikien käyttäjien käyttöoikeuksia',
'action-siteadmin' => 'lukita tai avata tietokantaa',
'action-sendemail' => 'lähettää sähköpostia',
+'action-editmywatchlist' => 'muokata tarkkailulistaasi',
+'action-viewmywatchlist' => 'katsoa tarkkailulistaasi',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|muutos|muutosta}}',
'reuploaddesc' => 'Peruuta tallennus ja palaa tallennuslomakkeelle.',
'upload-tryagain' => 'Lähetä muutettu tiedostokuvaus',
'uploadnologin' => 'Et ole kirjautunut sisään',
-'uploadnologintext' => 'Sinun pitää olla [[Special:UserLogin|kirjautuneena sisään]], jotta voisit tallentaa tiedostoja.',
+'uploadnologintext' => 'Sinun pitää $1 tallentaaksesi tiedostoja.',
'upload_directory_missing' => 'Tallennushakemisto $1 puuttuu, eikä palvelin pysty luomaan sitä.',
'upload_directory_read_only' => 'Palvelimella ei ole kirjoitusoikeuksia tallennushakemistoon $1.',
'uploaderror' => 'Tallennusvirhe',
'upload-file-error' => 'Sisäinen virhe',
'upload-file-error-text' => 'Väliaikaistiedoston luominen epäonnistui. Ota yhteyttä sivuston [[Special:ListUsers/sysop|ylläpitäjään]].',
'upload-misc-error' => 'Virhe',
-'upload-misc-error-text' => 'Tiedoston etälähetys ei onnistunut. Varmista, että antamasi osoite on oikein ja toimiva. Jos virhe ei katoa, ota yhteyttä sivuston ylläpitäjään.',
+'upload-misc-error-text' => 'Tiedoston etälähetys ei onnistunut. Varmista, että antamasi osoite on oikein ja toimiva. Jos virhe ei katoa, ota yhteyttä sivuston [[Special:ListUsers/sysop|ylläpitäjään]].',
'upload-too-many-redirects' => 'URL sisälsi liian monta ohjausta',
'upload-unknown-size' => 'Tuntematon koko',
'upload-http-error' => 'HTTP-virhe: $1',
'notvisiblerev' => 'Versio on poistettu',
'watchnochange' => 'Valittuna ajanjaksona yhtäkään tarkkailemistasi sivuista ei muokattu.',
'watchlist-details' => 'Tarkkailulistalla on {{PLURAL:$1|$1 sivu|$1 sivua}} keskustelusivuja mukaan laskematta.',
-'wlheader-enotif' => '* Sähköposti-ilmoitukset ovat käytössä.',
-'wlheader-showupdated' => "* Sivut, joita on muokattu viimeisen käyntisi jälkeen, on '''lihavoitu'''.",
+'wlheader-enotif' => 'Sähköposti-ilmoitus on käytössä.',
+'wlheader-showupdated' => "Sivut, joita on muokattu viimeisen käyntisi jälkeen, on '''lihavoitu'''.",
'watchmethod-recent' => 'tarkistetaan tuoreimpia muutoksia tarkkailluille sivuille',
'watchmethod-list' => 'tarkistetaan tarkkailtujen sivujen tuoreimmat muutokset',
'watchlistcontains' => 'Tarkkailulistallasi on {{PLURAL:$1|yksi sivu|$1 sivua}}.',
'mycontris' => 'Omat muokkaukset',
'contribsub2' => 'Käyttäjän $1 ($2) muokkaukset',
'nocontribs' => 'Näihin ehtoihin sopivia muokkauksia ei löytynyt.',
-'uctop' => ' (uusin)',
+'uctop' => '(uusin)',
'month' => 'Kuukausi',
'year' => 'Vuosi',
'sp-contributions-newbies' => 'Näytä uusien tulokkaiden muutokset',
-'sp-contributions-newbies-sub' => 'Uusien tulokkaiden muokkaukset',
-'sp-contributions-newbies-title' => 'Uusien tulokkaiden muokkaukset',
+'sp-contributions-newbies-sub' => 'Uusien käyttäjien muokkaukset',
+'sp-contributions-newbies-title' => 'Uusien käyttäjien muokkaukset',
'sp-contributions-blocklog' => 'estot',
'sp-contributions-deleted' => 'poistetut muokkaukset',
'sp-contributions-uploads' => 'tallennukset',
'thumbnail-more' => 'Suurenna',
'filemissing' => 'Tiedosto puuttuu',
'thumbnail_error' => 'Pienoiskuvan luominen epäonnistui: $1',
+'thumbnail_error_remote' => 'Virheilmoitus kohteesta $1:
+$2',
'djvu_page_error' => 'DjVu-tiedostossa ei ole pyydettyä sivua',
'djvu_no_xml' => 'DjVu-tiedoston XML-vienti epäonnistui',
'thumbnail-temp-create' => 'Väliaikaisen esikatselukuvan luonti epäonnistui',
'pageinfo-robot-noindex' => 'Ei indeksoitava',
'pageinfo-views' => 'Katselukertojen määrä',
'pageinfo-watchers' => 'Sivun tarkkailijoiden lukumäärä',
+'pageinfo-few-watchers' => 'Vähemmän kuin $1 {{PLURAL:$1|tarkkailija|tarkkailijaa}}',
'pageinfo-redirects-name' => 'Sivulle johtavat ohjaukset',
'pageinfo-subpages-name' => 'Sivun alasivut',
'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|ohjaus|ohjausta}}; $3 {{PLURAL:$3|ei-ohjausta}})',
'pageinfo-redirectsto-info' => 'tiedot',
'pageinfo-contentpage' => 'Lasketaan sisältösivuksi',
'pageinfo-contentpage-yes' => 'Kyllä',
+'pageinfo-protect-cascading' => 'Tämä on laajennetun suojauksen lähdesivu',
'pageinfo-protect-cascading-yes' => 'Kyllä',
+'pageinfo-protect-cascading-from' => 'Laajennettu suojaus tulee sivulta',
'pageinfo-category-info' => 'Luokkatiedot',
'pageinfo-category-pages' => 'Sivujen määrä',
'pageinfo-category-subcats' => 'Alaluokkien määrä',
'minutes' => '{{PLURAL:$1|$1 minuutti|$1 minuuttia}}',
'hours' => '{{PLURAL:$1|$1 tunti|$1 tuntia}}',
'days' => '{{PLURAL:$1|$1 päivä|$1 päivää}}',
+'weeks' => '{{PLURAL:$1|viikko|$1 viikkoa}}',
'months' => '{{PLURAL:$1|$1 kuukausi|$1 kuukautta}}',
'years' => '{{PLURAL:$1|$1 vuosi|$1 vuotta}}',
'ago' => '$1 sitten',
'just-now' => 'juuri nyt',
+# Human-readable timestamps
+'hours-ago' => '{{PLURAL:$1|tunti|$1 tuntia}} sitten',
+'minutes-ago' => '{{PLURAL:$1|minuutti|$1 minuuttia}} sitten',
+'seconds-ago' => '{{PLURAL:$1|sekunti|$1 sekuntia}} sitten',
+'monday-at' => 'Maanantaina klo $1',
+'tuesday-at' => 'Tiistaina klo $1',
+'wednesday-at' => 'Keskiviikkona klo $1',
+'thursday-at' => 'Torstaina klo $1',
+'friday-at' => 'Perjantaina klo $1',
+'saturday-at' => 'Lauantaina klo $1',
+'sunday-at' => 'Sunnuntaina klo $1',
+'yesterday-at' => 'Eilen klo $1',
+
# Bad image list
'bad_image_list' => 'Listan muoto on seuraava:
'version-entrypoints-header-url' => 'URL',
# Special:Redirect
+'redirect' => 'Ohjaus tiedostonimen, käyttäjänumeron tai versionumeron mukaan',
+'redirect-legend' => 'Uudelleenohjaa tiedostoon tai sivulle',
+'redirect-summary' => 'Tämä toimintosivu ohjaa tiedostoon (tiedoston nimen mukaan), sivulle (sivun versionumeron mukaan) tai käyttäjäsivulle (käyttäjätunnuksen numeron mukaan).',
'redirect-submit' => 'Siirry',
+'redirect-lookup' => 'Hae:',
+'redirect-value' => 'Arvo:',
+'redirect-user' => 'Käyttäjän tunnusnumero',
+'redirect-revision' => 'Sivun versio',
'redirect-file' => 'Tiedostonimi',
+'redirect-not-exists' => 'Arvoa ei löytynyt',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Kaksoiskappaleiden haku',
'htmlform-selectorother-other' => 'Muu',
'htmlform-no' => 'Ei',
'htmlform-yes' => 'Kyllä',
+'htmlform-chosen-placeholder' => 'Valitse vaihtoehto',
# SQLite database support
'sqlite-has-fts' => '$1, jossa on tuki kokotekstihaulle',
'duration-centuries' => '$1 {{PLURAL:$1|vuosisata|vuosisataa}}',
'duration-millennia' => '$1 {{PLURAL:$1|vuosituhat|vuosituhatta}}',
+# Image rotation
+'rotate-comment' => 'Kuvaa käännettiin $1 aste{{PLURAL:$1||tta}} myötäpäivään',
+
);
'tog-shownumberswatching' => 'Näytä kuinka moni käyttäjä valvoo sivua',
'tog-oldsig' => 'Nykynen allekirjotus',
'tog-fancysig' => 'Mookkaamaton allekirjotus ilman auttomaattista linkkiä',
-'tog-externaleditor' => 'Käytä ekterniä tekstiedituuria stantartina. Vain kokenheile käyttäjile, vaatii taattorin asetuksitten muuttamista. Käytä eksterniä tekstiedituuria oletuksena. Vain kokeneille käyttäjille, vaatii selaimen asetusten muuttamista. ([//www.mediawiki.org/wiki/Manual:External_editors Ohje])',
# Dates
'sunday' => 'pyhä',
'prefs-help-email' => 'E-postin atressi on vapa, mutta tekkee maholiseks ette lähättää sulle salasanan meilissä, jos unhoutat sen.',
'prefs-help-email-others' => 'Saatat kans antaa muitten käyttäjitten ottaa ottaa yhteyttä sinhuun sähköpostila. Sin atressi ei näy toisen käyttäjän ottaessa sinhuun yhteyttä.',
+# Special:Log/newusers
+'newuserlogpage' => 'Uuitten käyttäjitten loki',
+
# Associated actions - in the sentence "You do not have permission to X"
'action-edit' => 'mookkaa tätä sivua',
# Special:LinkSearch
'linksearch-line' => '$1 on linkattu sivulta $2',
-# Special:Log/newusers
-'newuserlogpage' => 'Uuitten käyttäjitten loki',
-
# Special:ListGroupRights
'listgrouprights-members' => '(jäsenlista)',
-# E-mail user
+# Email user
'emailuser' => 'Lähätä e-posti tälle käyttäjälle',
# Watchlist
*
* @author Diupwijk
* @author EileenSanda
+ * @author Geitost
* @author Krun
* @author Quackor
* @author S.Örvarr.S
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'des',
+'january-date' => 'Januar $1',
+'february-date' => 'Februar $1',
+'march-date' => 'Mars $1',
+'april-date' => 'Apríl $1',
+'may-date' => 'Maj $1',
+'june-date' => 'Juni $1',
+'july-date' => 'Juli $1',
+'august-date' => 'August $1',
+'september-date' => 'September $1',
+'october-date' => 'Oktober $1',
+'november-date' => 'November $1',
+'december-date' => 'Desember $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Bólkur|Bólkar}}',
'create-this-page' => 'Stovna hesa síðuna',
'delete' => 'Strika',
'deletethispage' => 'Strika hesa síðuna',
+'undeletethispage' => 'Endurskapað hesa síðuna',
'undelete_short' => 'Ógilda striking av {{PLURAL:$1|einari rætting|$1 broytingum}}',
'viewdeleted_short' => 'Vís {{PLURAL:$1|eina strikaða broyting|$1 strikaðar broytingar}}',
'protect' => 'Friða',
'disclaimers' => 'Fyrivarni',
'disclaimerpage' => 'Project:Generelt fyrivarni',
'edithelp' => 'Rættingarhjálp',
-'edithelppage' => 'Help:Rætting',
'helppage' => 'Help:Innihald',
'mainpage' => 'Forsíða',
'mainpage-description' => 'Forsíða',
'namespaceprotected' => 'Tú hevur ikki loyvi til at rætta síður í $1 navnateiginum.',
'customcssprotected' => 'Tú hevur ikki loyvi til at rætta hesa CSS síðuna, tí hon inniheldur persónligar innstillingar hjá øðrum brúkara.',
'customjsprotected' => 'Tú hevur ikki loyvir til at rætta hesa JavaScript síðuna, tí hon inniheldur persónligar innstillingar hjá øðrum brúkara.',
+'mycustomcssprotected' => 'Tú hevur ikki loyvi til at rætta hesa CSS síðuna.',
+'mycustomjsprotected' => 'Tú hevur ikki loyvi til at rætta hesa JavaScript síðuna.',
'ns-specialprotected' => 'Serstakar síður kunnu ikki rættast.',
'titleprotected' => '[[User:$1|$1]] hevur vart hetta heitið frá skapan.
Givin orsøk er "\'\'$2\'\'".',
'createacct-yourpasswordagain' => 'Váttað loyniorðið',
'createacct-yourpasswordagain-ph' => 'Skrivað loyniorðið enn einaferð',
'remembermypassword' => 'Minst til logg inn hjá mær á hesum kaganum (í mesta lagi í $1 {{PLURAL:$1|dag|dagar}})',
-'userlogin-remembermypassword' => 'Minst til mín',
-'userlogin-signwithsecure' => 'Rita inn við tryggum ambætara',
+'userlogin-remembermypassword' => 'Lat meg vera innritaðan',
+'userlogin-signwithsecure' => 'Nýt trygt samband',
'securelogin-stick-https' => 'Varðveit sambandið við HTTPS eftir logg inn',
'yourdomainname' => 'Títt domene:',
'password-change-forbidden' => 'Tú kanst ikki broyta loyniorð á hesi wiki.',
'notloggedin' => 'Ikki ritað inn',
'userlogin-noaccount' => 'Hevur tú ikki nakra kontu?',
'userlogin-joinproject' => 'Meldað teg til {{SITENAME}}',
-'nologin' => "Hevur tú ikki eina kontu? '''$1'''.",
+'nologin' => 'Hevur tú ikki eina kontu? $1.',
'nologinlink' => 'Stovna eina kontu',
'createaccount' => 'Stovna nýggja kontu',
'gotaccount' => "Hevur tú longu eina kontu? '''$1'''.",
'gotaccountlink' => 'Rita inn',
'userlogin-resetlink' => 'Hevur tú gloymt tínar logg inn upplýsingar',
+'userlogin-resetpassword-link' => 'Nullstilla títt loyniorð',
'helplogin-url' => 'Help:Innritan',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hjálp til innritan]]',
'createacct-join' => 'Skrivað tínar upplýsingar niðanfyri.',
'createacct-realname' => 'Veruligt navn (valfrítt)',
'createaccountreason' => 'Orsøk:',
'createacct-reason' => 'Orsøk',
+'createacct-reason-ph' => 'Hví upprættar tú eina nýggja kontu',
'createacct-captcha' => 'Trygdarkekk',
'createacct-imgcaptcha-ph' => 'Skriva tekstin ið tú sært omanfyri',
+'createacct-submit' => 'Upprætta tína kontu',
'createacct-benefit-heading' => '{{SITENAME}} er gjørd av fólki sum tær.',
-'createacct-benefit-body1' => 'rættingar',
-'createacct-benefit-body2' => 'síður',
-'createacct-benefit-body3' => 'seinastu høvundar',
+'createacct-benefit-body1' => '{{PLURAL:$1|rætting|rættingar}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|síða|síður}}',
+'createacct-benefit-body3' => 'seinasti/u {{PLURAL:$1|høvundur|høvundar}}',
'badretype' => 'Loyniorðið tú hevur skriva er ikki rætt.',
'userexists' => 'Brúkaranavnið sum tú valdi er longu í nýtslu.
Vinarliga vel eitt annað navn.',
'cannotchangeemail' => 'T-post adressur, sum eru knýttar at brúkarakontum, kunnu ikki broytast á hesi wiki.',
'emaildisabled' => 'Henda heimasíðan kann ikki senda teldupostar.',
'accountcreated' => 'Konto upprættað',
-'accountcreatedtext' => 'Brúkarakontan hjá $1 er nú upprættað.',
+'accountcreatedtext' => 'Henda brúkarakontan fyri [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|kjak]]) er nú upprættað.',
'createaccount-title' => 'Upprætta brúkarakonto á {{SITENAME}}',
'createaccount-text' => 'Onkur hevur stovnað eina konto fyri tína teldupost adressu á {{SITENAME}} ($4) nevnd "$2", við loyniorðinum "$3".
Tú eigur at innrita og broyta loyniorðið nú.
'resetpass-wrong-oldpass' => 'Ógyldug fyribils ella verandi loyniorð.
Møguliga hevur tú longu broytt títt loyniorð ella biðið um eitt nýtt fyribils loyniorð.',
'resetpass-temp-password' => 'Fyribils loyniorð',
+'resetpass-abort-generic' => 'Broyting av loyniorði bleiv avbrotin av einari víðkan.',
# Special:PasswordReset
'passwordreset' => 'Nullstilla loyniorðið',
-'passwordreset-text' => 'Útfyll hetta skjalið fyri at nullstilla títt loyniorð.',
+'passwordreset-text-one' => 'Útfyll henda teigin fyri at nullstilla títt loyniorð.',
+'passwordreset-text-many' => '{{PLURAL:$1|Skriva eitt av pettunum av dáta fyri at nullstilla títt loyniorð.}}',
'passwordreset-legend' => 'Nulstilla loyniorðið',
'passwordreset-disabled' => 'Tað ber ikki til at nullstilla loyniorðið á hesi wiki.',
'passwordreset-emaildisabled' => 'Teldupost funksjónir eru óvirknar á hesi wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Skriva ein av upplýsingunum niðanfyri}}',
'passwordreset-username' => 'Brúkaranavn:',
'passwordreset-domain' => 'Umdømi (domain):',
'passwordreset-capture' => 'Sí tann endaliga t-postin?',
Tað sær út til at hon er blivin strikað.',
'edit-conflict' => 'Rættingar trupulleiki (konflikt).',
'edit-no-change' => 'Tín rætting var sæð burtur frá, tí ongin broyting varð gjørd í tekstinum.',
+'postedit-confirmation' => 'Tín rætting varð goymd.',
'edit-already-exists' => 'Tað var ikki møguligt at upprætta nýggja síðu.
Síðan er longu til.',
'defaultmessagetext' => 'Standard boðtekstur',
'content-model-css' => 'CSS',
# Parser/template warnings
+'expensive-parserfunction-warning' => "'''Ávaring:''' Henda síðan inniheldur ov nógvar útrokningstungar parsara-funksjónskall.
+
+Hon eigur at hava minni enn $2 {{PLURAL:$2|kall}}, tað {{PLURAL:$1|er nú $1|eru nú $1 kall}}.",
'expensive-parserfunction-category' => 'Síður við ov nógvum dýrum parsara funktiónskallum',
'post-expand-template-inclusion-warning' => "'''Ávaring:''' Tað eru ov nógvar skabilónir á hesi síðu.
Nakrar skabilónir vera ikki vístar.",
Hetta parametur er tí ikki tikið við.",
'post-expand-template-argument-category' => 'Síður har skabilón parametur (template arguments) ikki eru tikin við',
'parser-template-loop-warning' => 'Skapilónssloyfa funnin: [[$1]]',
+'language-converter-depth-warning' => 'Markið fyri dýpd á málkonverteraranum er farið út um mark ($1)',
'node-count-exceeded-category' => 'Síður har talið av notum (node) er ov høgt',
'node-count-exceeded-warning' => 'Síðan hevur og høgt tal av notum (node-count)',
'expansion-depth-exceeded-category' => 'Síður ið fara yvir loyvdu víðkanar-dýpdina',
Hon kann ikki fjalast.',
'revdelete-show-no-access' => 'Feilur tá hesin lutur dagfestur $1 klokkan $2 skuldi vísast:Hesin lutur er blivin markeraður sum "avmarkaður".
Tú hevur ikki atgongd til hann.',
+'revdelete-modify-no-access' => 'Feilur tá hesin lutur dagfestur $1 klokkan $2 skuldi broytast:Hesin lutur er blivin markeraður sum "avmarkaður".
+Tú hevur ikki atgongd til hann.',
+'revdelete-modify-missing' => 'Feilur hendi undir broytan av luti ID $1: Hann er ikki at finna í dátabasuni!',
'revdelete-no-change' => "'''Ávaring:''' Pettið ið er dagfest $1, kl. $2 hevði longu tær umbidnu innstillingar fyri sjónligheit.",
'revdelete-concurrent-change' => 'Ein feilur hendi, meðan tú dagførdi tekstin frá $1, kl. $2: Teksturin sær út til at vera blivin broyttur av onkrum øðrum, meðan tú royndi at rætta hann.',
'revdelete-otherreason' => 'Onnur orsøk',
'revdelete-edit-reasonlist' => 'Rætta strikingar orsøkir',
'revdelete-offender' => 'Høvundurin av hesi endurskoðan:',
+# Suppression log
+'suppressionlog' => 'Samanpressingarloggur',
+'suppressionlogtext' => 'Niðanfyri sæst eitt yvirlit yvir slettingar og sperringar, sum fevnir um innihald, sum er fjalt fyri administratorum.
+Hygg at [[Special:BlockList|sperringslistanum]] fyri at síggja listan yvir verandi bann og sperringar.',
+
# History merging
'mergehistory' => 'Samantvinna søgurnar hjá síðunum',
'mergehistory-header' => 'Henda síðan letur teg samanflætta versjónirnar frá søguni av einari síðu til eina nýggjari síðu.
Tryggja tær, at henda broyting fer at varðveita framhaldssøguna hjá síðuni.',
'mergehistory-box' => 'Samantvinna versjónirnar av tveimum síðum:',
'mergehistory-from' => 'Keldusíða:',
+'mergehistory-into' => 'Komusíða:',
+'mergehistory-list' => 'Rættingarsøgur, sum kunnu samanflættast',
+'mergehistory-go' => 'Vís rættingar ið kunnu samantvinnast',
+'mergehistory-submit' => 'Samanflætta versjónirnar',
+'mergehistory-empty' => 'Ongar versjónir kunnu samanflættast.',
+'mergehistory-success' => '$3 {{PLURAL:$3|versjón|versjónir}} av [[:$1]] er samanflættað við [[:$2]].',
'mergehistory-no-source' => 'Keldu síðan $1 er ikki til.',
'mergehistory-no-destination' => 'Destinatiónssíðan $1 er ikki til.',
'mergehistory-invalid-source' => 'Keldusíðan má hava eitt gyldugt heiti.',
'searchmenu-legend' => 'Leiti møguleikar',
'searchmenu-exists' => "'''Tað er longu ein síða sum eitur \"[[:\$1]]\" á hesi wiki.'''",
'searchmenu-new' => "'''Stovna síðuna \"[[:\$1]]\" á hesi wiki!'''",
-'searchhelp-url' => 'Help:Innihald',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Leita í síðum við hesum prefiksinum (byrjan av orðinum)]]',
'searchprofile-articles' => 'Innihaldssíður',
'searchprofile-project' => 'Hjálpar og verkætlanar síður',
'searchdisabled' => '{{SITENAME}} leitan er sett úr gildi.
Tú kanst leita via Google ímeðan.
Legg til merkis, at teirra innihaldsyvirlit av {{SITENAME}} kann vera gamalt og ikki dagført.',
+'search-error' => 'Ein feilur hendi undir leitanini: $1',
# Preferences page
'preferences' => 'Innstillingar',
'mypreferences' => 'Innstillingar',
'prefs-edits' => 'Tal av rættingum:',
'prefsnologin' => 'Tú hevur ikki ritað inn',
+'prefsnologintext' => 'Tú mást vera <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} innritað/ur]</span> fyri at broyta brúkarainnstillingar.',
'changepassword' => 'Broyt loyniorð',
'prefs-skin' => 'Hamur',
'skin-preview' => 'Forskoðan',
'recentchangesdays-max' => 'Í mesta lagi $1 {{PLURAL:$1|dagur|dagar}}',
'recentchangescount' => 'Tal av rættingum at vísa í standard:',
'prefs-help-recentchangescount' => 'Íroknað seinastu broytingar, søgur hjá síðum og loggar.',
+'prefs-help-watchlist-token' => 'Um tú fyllir út henda teigin við einum tryggum lykli, so verður ein RSS feed upprættaður til tín eftirlitslista.
+Ein og hvør ið kennir lykilin í hesum teiginum, hevur møguleika fyri at lesa tín eftirlitslista, so vel ein trygt virði.
+Her er eitt tilvildarliga valdt virði, sum tú kanst brúka: $1',
'savedprefs' => 'Tínar innstillingar eru goymdar.',
'timezonelegend' => 'Tíðar sona:',
'localtime' => 'Lokal tíð:',
'prefs-registration' => 'Skrásett tíðspunkt:',
'yourrealname' => 'Títt navn*:',
'yourlanguage' => 'Mál til brúkaraflatu:',
+'yourvariant' => 'Málvariantur fyri innihald:',
'yournick' => 'Nýggj undirskrift:',
'prefs-help-signature' => 'Viðmerkingar á kjaksíðum eiga at vera undirskrivaðar við "<nowiki>~~~~</nowiki>", sum verður gjørt um til tína undirskrift og eitt dagfestingarmerki.',
'badsig' => 'Ógyldug ráð undirskrift.
'right-autoconfirmed' => 'Rætta hálvt-vardar síður (semi-protected)',
'right-delete' => 'Strika síður',
'right-bigdelete' => 'Strika síður við nógvum versjónum',
+'right-deletedtext' => 'Sí strikaðan tekst og broytingar ímillum strikaðar endurskoðanir',
'right-browsearchive' => 'Leita í strikaðum síðum',
'right-undelete' => 'Endurstovnað eina síðu',
+'right-suppressrevision' => 'Endurskoða og endurstovna versjónir sum eru fjaldar fyri administratorum',
'right-suppressionlog' => 'Vís privatar loggar',
'right-block' => 'Nokta øðrum brúkarum at rætta (blokka)',
'right-blockemail' => 'Nokta einum brúkara at senda teldupost',
'right-unblockself' => 'Taka burtur sperring av sær sjálvum',
'right-protect' => 'Broyt verjustøður og rætta vardar síður',
'right-editprotected' => 'Rætta vardar síður (uttan niðurarvaða verju)',
+'right-editinterface' => 'Rætta brúkaramarkamótið',
'right-editusercssjs' => 'Rætta CSS og JavaScript fílur hjá øðrum brúkarum',
'right-editusercss' => 'Rætta CSS fílur hjá øðrum brúkarum',
'right-edituserjs' => 'Rætta JavaScript fílur hjá øðrum brúkarum',
+'right-editmyusercss' => 'Rætta tínar egnu brúkara CSS fílur',
+'right-editmyuserjs' => 'Rætta tínar egnu brúkara JavaScript fílur',
+'right-viewmywatchlist' => 'Síggj tín egna eftirlitslista',
+'right-rollback' => 'Rulla skjótt aftur (tak burtur) rættingarnar hjá tí seinasta brúkaranum á einari ávísari síðu',
+'right-markbotedits' => 'Markera afturrullaðar rættingar sum rættingar frá einum botti',
+'right-noratelimit' => 'Ikki ávirkað av hámarksferð',
'right-import' => 'Innflyt síður frá øðrum wikium',
+'right-importupload' => 'Innflyt síður frá frá einari fílu sum er løgd út',
'right-patrol' => 'Marka broytingar hjá øðrum sum eftirkannaðar',
+'right-autopatrol' => 'Hava eins egnu rættingar sjálvvirkamdi vístar sum eftirkannaðar',
'right-unwatchedpages' => 'Sí lista við síðum sum ikki eru eftiransaðar',
'right-mergehistory' => 'Samanflætta søguna hjá hesum síðum',
'right-userrights' => 'Rætta øll brúkaraloyvir',
'right-userrights-interwiki' => 'Broyt brúkara rættindi hjá brúkarum á øðrum wikium',
+'right-siteadmin' => 'Stong og læs upp dátugrunnin',
+'right-override-export-depth' => 'Útflyt síður, eisini slóðaðar síður upp til eina dýpd á 5',
'right-sendemail' => 'Send t-post til aðrir brúkarar',
'right-passwordreset' => 'Sí teldupostar til nullstilling av loyniorði',
'action-move-rootuserpages' => 'flyt høvuðs brúkarasíður',
'action-movefile' => 'flyt hesa fílu',
'action-upload' => 'send hesa fílu upp',
+'action-reupload' => 'yvirskriva hesa verandi fíluna',
'action-upload_by_url' => 'legg henda fílin upp frá einari URL-adressu',
'action-delete' => 'Strika hesa síðu',
+'action-deleterevision' => 'sletta hesa versjónina',
'action-deletedhistory' => 'hygg at strikingar søguni hjá hesi síðu',
'action-browsearchive' => 'leita eftir strikaðum síðum',
'action-undelete' => 'endurstovnað hesa síðu',
+'action-suppressrevision' => 'endurskoða og endurstovna hesa fjaldu versjónina',
+'action-suppressionlog' => 'sí henda privata loggin',
'action-block' => 'noktað hesum brúkara at rætta',
'action-protect' => 'broyt verjustøðuna hjá hesi síðu',
+'action-rollback' => 'rulla skjótt aftur rættingarnar hjá tí seinasta brúkaranum, sum rættaði eina ávísa síðu',
+'action-import' => 'innflyt hesa síðu frá aðrari wiki',
'action-patrol' => 'markað rætting hjá øðrum sum eftirhugda',
'action-autopatrol' => 'fá tina rætting merkta sum eftirhugda',
'action-unwatchedpages' => 'Síggj listan yvir síður sum ikki eru eftiransaðar',
'action-userrights-interwiki' => 'broyt brúkararættindi hjá brúkarum á øðrum wikium',
'action-siteadmin' => 'stong ella læs upp dátugrunnin',
'action-sendemail' => 'send teldupostar',
+'action-editmywatchlist' => 'rætta tín eftirlitslista',
+'action-viewmywatchlist' => 'síggja tín eftirlitslista',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|broyting|broytingar}}',
'newpageletter' => 'N',
'boteditletter' => 'b',
'number_of_watching_users_pageview' => '[$1 ansar eftir {{PLURAL:$1|brúkara|brúkarum}}]',
+'rc_categories' => 'Avmarkað til síður frá bólkunum (skil sundur við "|")',
'rc_categories_any' => 'Nakar',
'rc-change-size-new' => '$1 {{PLURAL:$1|byte|bytes}} eftir broyting',
'newsectionsummary' => '/* $1 */ nýtt innlegg',
'reuploaddesc' => 'Angra uppløðu og far aftur til upload formin',
'upload-tryagain' => 'Goym broytta fílu frágreiðing',
'uploadnologin' => 'Ikki ritað inn',
-'uploadnologintext' => 'Tú mást hava [[Special:UserLogin|ritað inn]]
-fyri at leggja fílur upp.',
+'uploadnologintext' => 'Tú mást $1 fyri at leggja fílur út.',
'upload-recreate-warning' => "'''Ávaring: Ein fíla við hasum navninum er blivin strikað ella flutt.'''
Strikingar og flytingar loggurin (søgan) fyri ta síðuna verður vístur her niðanfyri fyri at gera tað lættari hjá tær:",
'filename-toolong' => 'Fílunøvn mugu ikki vera longri enn 240 bytes.',
'badfilename' => 'Myndin er umnevnd til "$1".',
'filetype-badmime' => 'Fílur av slagnum MIME "$1" eru ikki loyvd at verða send up (uploada).',
+'filetype-banned-type' => '\'\'\'".$1"\'\'\' {{PLURAL:$4|er ikki eitt loyvt fíluslag|eru ikki loyvd fílusløg}}.
+Loyvt/loyvd {{PLURAL:$3|fíluslag er|fílusløg eru}} $2.',
'filetype-missing' => 'Fílan hevur ongan enda (sum t.d. ".jpg").',
'empty-file' => 'Fílan sum tú sendi upp var tóm.',
'file-too-large' => 'Fílan sum tú sendi inn var ov stór.',
'filename-tooshort' => 'Fílunavnið er ov stutt.',
'filetype-banned' => 'Hetta slagi av fílum er bannað.',
+'verification-error' => 'Henda fílan varð ikki góðkend av fílugóðkenningini.',
+'hookaborted' => 'Broytingin ið tú royndi at gera var tikin burtur av einari leingjan (extension).',
'illegal-filename' => 'Hetta fílunavnið er ikki loyvt.',
'overwrite' => 'Tað er ikki loyvi til at yvirskriva eina verandi fílu.',
'unknown-error' => 'Ein ókend villa kom fyri.',
'large-file' => 'Tað verður viðmælt, at fílur ikki eru størri enn $1;
henda fílin er $2.',
'largefileserver' => 'Henda fílan er størri enn servarin er innstillaður til at loyva.',
+'emptyfile' => 'Fílan ið tú legði út sær út til at vera tóm.
+Hetta kann skyldast ein sláfeil í fílunavninum.
+Vinarliga eftirkanna um tú veruliga ynskir at leggja hesa fíluna út.',
'windows-nonascii-filename' => "Henda wiki'in stuðlar ikki fílunøvn við serstøkum bókstavum/teknum.",
'fileexists' => 'Ein fíla við hesum navninum er longu til, vinarliga kanna eftir <strong>[[:$1]]</strong> um tú ivast í, um tú ynskir at broyta tað.
[[$1|thumb]]',
* Heitið á fíluni tú leggur út: <strong>[[:$1]]</strong>
* Heitið á fílu ið longu finst: <strong>[[:$2]]</strong>
Vinarliga vel eitt annað navn.',
+'fileexists-thumbnail-yes' => "Fílan sær út til at vera ein minka stødd ''(thumbnail)''.
+[[$1|thumb]]
+Vinarliga kanna fíluna <strong>[[:$1]]</strong>.
+Um tann kannað fílan er tann sama myndin av einari uppruna stødd, so er tað ikki neyðugt at leggja út ein eyka thumbnail.",
+'file-thumbnail-no' => "Fílunavnið byrjar við <strong>$1</strong>.
+Tað sær út til at vera ein mynd av einari minkaðari stødd ''(thumbnail)''.
+Um tú hevur hesa myndina í fullari upploysn, legg so hesa út, um ikki broyt so vinarliga fílunavnið.",
+'fileexists-forbidden' => 'Ein fíla við hesum navninum finst longu og kann ikki verða yvirskivað.
+Um tú álíkavæl ynskir at leggja út tína fílu, vinarliga far so aftur og vel eitt annað navn.
+[[File:$1|thumb|center|$1]]',
+'fileexists-shared-forbidden' => 'Ein fíla við tí sama navninum finst longu í felags fílusavninum.
+Um tú enn ynskir at leggja út tína fílu, vinarliga far so aftur og vel eitt annað navn.
+[[File:$1|thumb|center|$1]]',
'file-deleted-duplicate' => 'Ein fíla, sum er líka sum henda ([[:$1]]) er fyrr blivin strikað.
Tú eigur at kanna eftir strikingarsøguna hjá hesi fílu, áðrenn tú heldur áframm við at leggja hana út enn einaferð.',
'uploadwarning' => 'Ávaring',
'savefile' => 'Goym fílu',
'uploadedimage' => 'sent "[[$1]]" upp',
+'overwroteimage' => 'legði út eina nýggja versjón av "[[$1]]"',
+'uploadfromurl-queued' => 'Tín útlegging er komin í bíðirøð.',
'uploadvirus' => 'Fílan inniheldur ein virus!
Smálutir: $1',
'upload-source' => 'Keldufíla',
'backend-fail-backup' => 'Tað bar ikki til at taka backup av fílu "$1".',
'backend-fail-notexists' => 'Fílan $1 er ikki til.',
'backend-fail-notsame' => 'Ein ikki-eins fíla finst longu á "$1".',
+'backend-fail-invalidpath' => '"$1" er ikki ein loyvd goymsluslóð.',
+'backend-fail-delete' => 'Tað bar ikki til at sletta fílu "$1".',
+'backend-fail-describe' => 'Tað bar ikki til at broyta metadáta fyri fílu "$1".',
'backend-fail-alreadyexists' => 'Fílan "$1" finst longu.',
'backend-fail-store' => 'Kundi ikki goyma fílu $1 á $2.',
'backend-fail-copy' => 'Kundi ikki avrita fílu $1 til $2.',
'backend-fail-read' => 'Kundi ikki lesa fílu $1.',
'backend-fail-create' => 'Kundi ikki skriva fílu $1.',
'backend-fail-maxsize' => 'Tað bar ikki til at lesa fíluna "$1" tí hon er størri enn {{PLURAL:$2|eitt byte|$2 bytes}}.',
+'backend-fail-readonly' => 'Goymslu backend "$1" er í løtuni í "bara-lesa" støðu. Orsøkin til hetta er: "\'\'$2\'\'"',
+'backend-fail-connect' => 'Tað bar ikki til at fáa samband við goymslu-backend "$1".',
+'backend-fail-internal' => 'Ein ókendur feilur hendi í goymsluskipanini (backend) "$1".',
# Lock manager
'lockmanager-notlocked' => 'Kundi ikki lata upp "$1"; hon er ikki stongd.',
# img_auth script messages
'img-auth-accessdenied' => 'Atgongd noktað',
+'img-auth-badtitle' => 'Tað bar ikki til at gera eitt heiti útfrá "$1".',
'img-auth-nologinnWL' => 'Tú ert ikki ritað/ur inn, og "$1" er ikki á hvítalista.',
'img-auth-nofile' => 'Fílan "$1" er ikki til',
'img-auth-isdir' => 'Tú roynir at fáa atgongd til mappuna "$1".
Vinarliga hygg at [$2 fílu frágreiðingarsíðu] fyri nærri kunning.',
'sharedupload-desc-here' => 'Henda fíla er frá $1 og kann verða brúka í øðrum verkætlanum.
Frágreiðingin á [$2 fílu frágreiðingar síðu] er víst her niðanfyri.',
+'sharedupload-desc-edit' => 'Henda fílan er frá $1 og kann vera brúkt av øðrum verkætlanum.
+Kanska ynskir tú at rætta frágreiðingina hjá fíluni á [$2 fílu frágreiðingarsíðuni] her.',
+'sharedupload-desc-create' => 'Henda fílan er frá $1 og kann vera brúkt av øðrum verkætlanum.
+Kanska ynskir tú at rætta frágreiðingina til fíluna á [$2 fílu frágreiðingarsíðuni] her.',
'filepage-nofile' => 'Ongin fíla við hesum navninum finst.',
'filepage-nofile-link' => 'Ongin fíla við hesum navninum finst, men tú kanst [$1 leggja hana út].',
'uploadnewversion-linktext' => 'Legg eina nýggja versjón av hesi fílu út',
'upload-disallowed-here' => 'Tú kanst ikki yvirskriva hesa fílu.',
# File reversion
+'filerevert' => 'Endurstovna $1',
+'filerevert-legend' => 'Endurstovna fílu',
+'filerevert-intro' => "Tú ert í ferð við at endurstovna fílu '''[[Media:$1|$1]]''' til [$4 verssjónina sum hon sá út kl. $3, hin $2].",
'filerevert-comment' => 'Orsøk:',
+'filerevert-defaultcomment' => 'Endurstovanð til versjón frá kl. $2, hin $1',
+'filerevert-submit' => 'Endurstovna',
+'filerevert-success' => "'''[[Media:$1|$1]]''' er blivið endurstovna til [$4 versjónina frá $2, kl. $3].",
# File deletion
'filedelete' => 'Strika $1',
'filedelete-success' => "'''$1''' er blivin strikað.",
'filedelete-success-old' => "Versjónin av '''[[Media:$1|$1]]''' frá kl. $3, hin $2 er blivið strikað.",
'filedelete-nofile' => "'''$1''' er ikki til.",
+'filedelete-otherreason' => 'Onnur/aðrar orsøkir:',
+'filedelete-reason-otherlist' => 'Onnur orsøk',
+'filedelete-reason-dropdown' => '*Vanligar orsøkir til sletting
+** Brot á upphavsrættin
+** Fílan kemur fyri tvær ferðir',
+'filedelete-edit-reasonlist' => 'Rætta orsøkina til striking',
'filedelete-maintenance-title' => 'Ógjørligt at sletta fílu',
# MIME search
'mimesearch' => 'MIME-leit',
+'mimetype' => 'MIME slag:',
+'download' => 'tak niður',
+
+# Unwatched pages
+'unwatchedpages' => 'Ikki eftiransaðar síður',
# List redirects
'listredirects' => 'Sýn ávísingar',
'disambiguations' => 'Síður sum vísa til síður við fleirfaldum týdningi',
'disambiguationspage' => 'Template:fleiri týdningar',
+'pageswithprop-submit' => 'Far',
+
'doubleredirects' => 'Tvífaldað ávísing',
'doubleredirectstext' => 'Henda síða gevur yvirlit yvir síður, sum vísa víðari til aðrar víðaristillaðar síður.
Hvør linja inniheldur leinkjur til ta fyrstu og næstu víðaristillingina, eins væl og málið fyri tað næstu víðaristillingina, sum vanliga er tann "veruliga" endamáls síðan, sum tann fyrsta víðaristillingin átti at peika móti.
<del>Útkrossaðir</del> postar eru loystir.',
'double-redirect-fixed-move' => '[[$1]] er blivin flutt.
Víðaristilling verður nú gjørd til [[$2]].',
+'double-redirect-fixed-maintenance' => 'Rætta dupulta umstýring frá [[$1]] til [[$2]].',
+'double-redirect-fixer' => 'Umstýringsrættari',
'brokenredirects' => 'Brotnar ávísingar',
'brokenredirectstext' => 'Hesar víðaristillingar slóða til síður, ið ikki eru til:',
# Miscellaneous special pages
'nbytes' => '$1 {{PLURAL:$1|beit}}',
'ncategories' => '$1 {{PLURAL:$1|bólkur|bólkar}}',
+'ninterwikis' => '$1 {{PLURAL:$1|interwiki|interwikiir}}',
'nlinks' => '$1 {{PLURAL:$1|slóð|slóðir}}',
'nmembers' => '$1 {{PLURAL:$1|limur|limir}}',
'nviews' => '$1 {{PLURAL:$1|skoðan|skoðanir}}',
+'nimagelinks' => 'Brúkt á $1 {{PLURAL:$1|síðu|síðum}}',
+'ntransclusions' => 'brúkt á $1 {{PLURAL:$1|síðu|síðum}}',
+'specialpage-empty' => 'Tað eru ongi úrslit fyri hesa rapportina.',
'lonelypages' => 'Foreldraleysar síður',
+'lonelypagestext' => 'Hesar síður slóða ikki frá ella eru ikki tiknar við á aðrar síður á {{SITENAME}}.',
'uncategorizedpages' => 'Óbólkaðar síður',
'uncategorizedcategories' => 'Óbólkaðir bólkar',
'uncategorizedimages' => 'Fílir sum ikki eru bólkaðar',
'wantedtemplates' => 'Ynsktar fyrimyndir',
'mostlinked' => 'Síður við flest ávísingum',
'mostlinkedcategories' => 'Bólkar við flestum ávísandi slóðum',
+'mostlinkedtemplates' => 'Mest slóðaðar-til fyrimyndir',
'mostcategories' => 'Greinir við flest bólkum',
+'mostimages' => 'Mest leinkjaðar-til fílur',
+'mostinterwikis' => 'Síður við flestum interwiki-slóðum',
'mostrevisions' => 'Greinir við flestum útgávum',
'prefixindex' => 'Allar síður við forskoyti (prefiks)',
'shortpages' => 'Stuttar síður',
'longpages' => 'Langar síður',
'deadendpages' => 'Gøtubotnssíður',
+'deadendpagestext' => 'Hesar síðurnar slóða ikki til aðrar síður í {{SITENAME}}.',
'protectedpages' => 'Friðaðar síður',
+'protectedpagestext' => 'Hesar síður eru vardar móti flyting ella rætting',
+'protectedpagesempty' => 'Ongar síður eru í løtuni vardar á henda hátt.',
+'protectedtitles' => 'Vard heiti',
+'protectedtitlestext' => 'Hesi heiti er vard móti upprættan',
+'protectedtitlesempty' => 'Ongi heiti eru í løtuni vard á henda hátt.',
'listusers' => 'Brúkaralisti',
'listusers-editsonly' => 'Vís bara brúkarar sum hava gjørt rættingar',
'listusers-creationsort' => 'Bólkað eftir stovningardegnum',
'unusedimagestext' => 'Fylgjandi fílur eru til, men eru ikki lagdar inn á nakra síðu.
Vinarliga legg merki til, at vevsíður kunnu slóða til eina fílu við beinleiðis URL, og tí kann hon enn síggjast her, hóast at hon er í regluligari nýtslu.',
'notargettitle' => 'Onki mál',
+'nopagetext' => 'Síðan ið tú leitar eftir er ikki til.',
'pager-newer-n' => '{{PLURAL:$1|nýggjari 1|nýggjari $1}}',
'pager-older-n' => '{{PLURAL:$1|eldri 1|eldri $1}}',
'suppress' => 'Yvirlit',
'listusers-noresult' => 'Ongin brúkari var funnin.',
# Special:ActiveUsers
+'activeusers' => 'Listi yvir aktivar brúkarar',
+'activeusers-intro' => 'Hetta er ein listi yvir brúkarar, ið høvdu okkurt slag av aktiviteti tann seinasta/teir seinastu $1 {{PLURAL:$1|dagin|dagarnar}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|handling|handlingar}} tann seinasta/teir seinastu {{PLURAL:$3|dagin|$3 dagarnar}}',
+'activeusers-from' => 'Vís brúkarar, ið byrja við:',
'activeusers-hidebots' => 'Fjal bottar',
'activeusers-hidesysops' => 'Fjal umboðsstjórar (administratorar)',
'activeusers-noresult' => 'Ongir brúkarar funnir.',
'listgrouprights-rights' => 'Rættindi',
'listgrouprights-helppage' => 'Help:Bólka rættindi',
'listgrouprights-members' => '(limalisti)',
+'listgrouprights-addgroup' => 'Legg afturat {{PLURAL:$2|bólk|bólkar}}: $1',
'listgrouprights-removegroup' => 'Tak burtur {{PLURAL:$2|bólk|bólkar}}: $1',
'listgrouprights-addgroup-all' => 'Legg til allir bólkar',
'listgrouprights-removegroup-all' => 'Tak burtur allir bólkar',
og hava virkandi teldupostadressu í [[Special:Preferences|innstillingum]] tínum
fyri at senda teldupost til aðrar brúkarar.',
'emailuser' => 'Send t-post til brúkara',
+'emailuser-title-target' => 'Send teldupost til henda {{GENDER:$1|brúkaran}}',
+'emailuser-title-notarget' => 'Send t-post til brúkara',
'emailpage' => 'Send t-post til brúkara',
'emailpagetext' => 'Tú kanst brúka skjalið niðanfyri til at senda ein teldupost til henda {{GENDER:$1|brúkara}}.
Teldupost adressan sum tú skrivaði í [[Special:Preferences|tíni brúkara ynskir]] kemur síðan fram sum "Frá" adressan í teldupostinum, soleiðis at móttakarin kann svara beinleiðis til tín.',
'noemailtitle' => 'Ongin t-post adressa',
'noemailtext' => 'Hesin brúkarin hevur ikki upplýst eina gylduga t-post-adressu.',
'nowikiemailtitle' => 'Ongin t-postur er loyvdur',
+'nowikiemailtext' => 'Hesin brúkarin hevur valt ikki at móttaka teldupost frá øðrum brúkarum.',
+'emailnotarget' => 'Ikki-eksisterandi ella ógyldugt brúkaranavn fyri móttakaran.',
+'emailtarget' => 'Skriva brúkaranavnið hjá móttakaranum',
'emailusername' => 'Brúkaranavn:',
+'emailusernamesubmit' => 'Send',
+'email-legend' => 'Send eitt teldubræv til ein annan {{SITENAME}} brúkara',
'emailfrom' => 'Frá:',
'emailto' => 'Til:',
'emailsubject' => 'Evni:',
'emailccsubject' => 'Avrit av tínum boðum til $1: $2',
'emailsent' => 'T-postur sendur',
'emailsenttext' => 'Títt t-post boð er sent.',
+'emailuserfooter' => 'Hesin teldupostur var sendur av $1 til $2 við "Send teldupost" funksjónini á {{SITENAME}}.',
# Watchlist
'watchlist' => 'Eftirlitslisti',
'watchlistfor2' => 'Fyri $1 $2',
'nowatchlist' => 'Tú hevur ongar lutir í eftirlitinum.',
'watchnologin' => 'Tú hevur ikki ritað inn',
+'addwatch' => 'Legg til eftirlitslista',
'addedwatchtext' => 'Síðan "[[:$1]]" er løgd undir [[Special:Watchlist|eftirlitslistan]] hjá tær.
Framtíðar broytingar á hesi síðu og tilknýttu kjaksíðuni verða at síggja har.',
+'removewatch' => 'Tak burtur frá eftirlistslistanum',
'removedwatchtext' => 'Síðan "[[:$1]]" er strikað úr [[Special:Watchlist|tínum eftirliti]].',
'watch' => 'Eygleið',
'watchthispage' => 'Hav eftirlit við hesi síðuni',
'unwatch' => 'strika eftirlit',
+'unwatchthispage' => 'Halt uppat við at hava eftirlit',
'notanarticle' => 'Ongin innihaldssíða',
'watchnochange' => 'Ongin grein í tínum eftirliti er rætta innanfyri hetta tíðarskeiði.',
'watchlist-details' => '{{PLURAL:$1|$1 síða|$1 síður}} á tínum vaktarlista, kjaksíður ikki íroknaðar.',
'watching' => 'Eftirlitir...',
'unwatching' => 'Strikar eftirlit...',
+'enotif_reset' => 'Markera allar síður sum vitjaðar',
'enotif_impersonal_salutation' => '{{SITENAME}}brúkari',
+'enotif_subject_deleted' => '{{SITENAME}} síðan $1 er blivin {{GENDER:$2|slettað}} av $2',
+'enotif_subject_created' => '{{SITENAME}} síðan $1 er blivin {{GENDER:$2|upprættað}} av $2',
+'enotif_subject_moved' => '{{SITENAME}} síðan $1 er blivin {{GENDER:$2|flutt}} av $2',
+'enotif_subject_restored' => '{{SITENAME}} síðan $1 er blivin {{GENDER:$2|endurupprættað}} av $2',
+'enotif_subject_changed' => '{{SITENAME}} síðan $1 er blivin {{GENDER:$2|broytt}} av $2',
+'enotif_body_intro_deleted' => '{{SITENAME}} síðan $1 er blivin {{GENDER:$2|slettað}} $PAGEEDITDATE av $2, sí $3.',
+'enotif_lastvisited' => 'Sí $1 fyri allar broytingar síðan tína seinastu vitjan.',
+'enotif_lastdiff' => 'Sí $1 fyri at síggja hesa broyting.',
+'enotif_anon_editor' => 'dulnevndur brúkari $1',
'created' => 'stovnað',
# Delete
'rollback' => 'Rulla broytingar aftur',
'rollback_short' => 'Rulla aftur',
'rollbacklink' => 'afturrulling',
+'rollbacklinkcount' => 'rulla aftur $1 {{PLURAL:$1|rætting|rættingar}}',
+'rollbacklinkcount-morethan' => 'rulla aftur meira enn $1 {{PLURAL:$1|rætting|rættingar}}',
'rollbackfailed' => 'Afturrulling miseydnað',
+'cantrollback' => 'Tað ber ikki til at afturstilla rættingina;
+tann seinasti ið skrivaði her er eisini tann einasti høvundurin á hesi síðu.',
+'alreadyrolled' => 'Tað ber ikki til at rulla aftur seinastu rætting av [[:$1]] hjá [[User:$2|$2]] ([[User talk:$2|talk]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]);
+onkur annar hevur longu rættað ella rullað síðuna aftur.
+
+Seinasta broytingin á síðuni var av [[User:$3|$3]] ([[User talk:$3|kjak]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).',
+'editcomment' => "Rættingarfrágreiðingin var: \"''\$1''\".",
'revertpage' => 'Tók burtur rættingar hjá [[Special:Contributions/$2|$2]] ([[User talk:$2|kjak]]) til seinastu versjón hjá [[User:$1|$1]]',
'revertpage-nouser' => 'Tók burtur rættingar hjá (brúkaranavn tikið vekk) til seinastu versjón hjá [[User:$1|$1]]',
'rollback-success' => 'Tók burtur rættingar hjá $1;
'contributions-title' => 'Brúkaraíkøst fyri $1',
'mycontris' => 'Íkøst',
'contribsub2' => 'Eftir $1 ($2)',
-'uctop' => '(ovast)',
+'uctop' => '(verandi)',
'month' => 'Frá mánaði (og áðrenn):',
'year' => 'Frá ár (og áðrenn):',
* @author Agzennay
* @author Amqui
* @author Arkanosis
+ * @author Ayack
* @author Boniface
* @author Brunoperel
* @author Cedric31
'oct' => 'oct',
'nov' => 'nov',
'dec' => 'déc',
+'january-date' => '$1 janvier',
+'february-date' => '$1 février',
+'march-date' => '$1 mars',
+'april-date' => '$1 avril',
+'may-date' => '$1 mai',
+'june-date' => '$1 juin',
+'july-date' => '$1 juillet',
+'august-date' => '$1 août',
+'september-date' => '$1 septembre',
+'october-date' => '$1 octobre',
+'november-date' => '$1 novembre',
+'december-date' => '$1 décembre',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Catégorie|Catégories}}',
'create-this-page' => 'Créer cette page',
'delete' => 'Supprimer',
'deletethispage' => 'Supprimer cette page',
+'undeletethispage' => 'Annuler la suppression de cette page',
'undelete_short' => 'Restaurer $1 modification{{PLURAL:$1||s}}',
'viewdeleted_short' => 'Voir {{PLURAL:$1|une modification supprimée|$1 modifications supprimées}}',
'protect' => 'Protéger',
'disclaimers' => 'Avertissements',
'disclaimerpage' => 'Project:Avertissements généraux',
'edithelp' => 'Aide',
-'edithelppage' => 'Help:Comment modifier une page',
'helppage' => 'Help:Accueil',
'mainpage' => 'Accueil',
'mainpage-description' => 'Accueil',
'namespaceprotected' => "Vous n'avez pas la permission de modifier les pages de l'espace de noms « '''$1''' ».",
'customcssprotected' => "Vous n'avez pas la permission de modifier cette page de CSS, car elle contient les paramètres personnels d'un autre utilisateur.",
'customjsprotected' => "Vous n'avez pas la permission de modifier cette page de JavaScript, car elle contient les paramètres personnels d'un autre utilisateur.",
+'mycustomcssprotected' => 'Vous n’avez pas le droit de modifier cette page CSS.',
+'mycustomjsprotected' => 'Vous n’avez pas le droit de modifier cette page JavaScript.',
'ns-specialprotected' => "Les pages dans l'espace de noms « {{ns:special}} » ne peuvent pas être modifiées.",
'titleprotected' => "Ce titre a été protégé à la création par [[User:$1|$1]].
Le motif avancé est « ''$2'' ».",
'cannotchangeemail' => 'Les adresses de courriel des comptes ne peuvent pas être modifiées sur ce wiki.',
'emaildisabled' => 'Ce site ne peut pas envoyer de courriels.',
'accountcreated' => 'Compte créé',
-'accountcreatedtext' => 'Le compte utilisateur pour $1 a été créé.',
+'accountcreatedtext' => 'Le compte utilisateur pour [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|discussion]]) a été créé.',
'createaccount-title' => "Création d'un compte pour {{SITENAME}}",
'createaccount-text' => "Quelqu'un a créé un compte pour votre adresse de courriel sur {{SITENAME}} ($4) intitulé « $2 », avec le mot de passe « $3 ».
Vous devriez ouvrir une session et modifier dès à présent votre mot de passe.
# Special:PasswordReset
'passwordreset' => 'Remise à zéro du mot de passe',
-'passwordreset-text' => 'Remplissez ce formulaire pour réinitialiser votre mot de passe.',
+'passwordreset-text-one' => 'Remplissez ce formulaire pour réinitialiser votre mot de passe.',
+'passwordreset-text-many' => '{{PLURAL:$1|Entrez une de ces données pour réinitialiser votre mot de passe.}}',
'passwordreset-legend' => 'Remise à zéro du mot de passe',
'passwordreset-disabled' => 'La réinitialisation des mots de passe a été désactivée sur ce wiki.',
'passwordreset-emaildisabled' => 'Les fonctionnalités e-mail ont été désactivées sur ce wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Entrez un élément de données ci-dessous}}',
'passwordreset-username' => "Nom d'utilisateur :",
'passwordreset-domain' => 'Domaine :',
'passwordreset-capture' => 'Voir le courriel résultant?',
Il semble qu'elle ait été supprimée.",
'edit-conflict' => 'Conflit de modification.',
'edit-no-change' => "Votre modification a été ignorée car aucun changement n'a été fait au texte.",
+'postedit-confirmation' => 'Votre modification a été sauvegardée.',
'edit-already-exists' => "La nouvelle page n'a pas pu être créée.
Elle existe déjà.",
'defaultmessagetext' => 'Message par défaut',
'invalid-content-data' => 'Données du contenu non valides',
'content-not-allowed-here' => 'Le contenu "$1" n\'est pas autorisé sur la page [[$2]]',
'editwarning-warning' => 'Quitter cette page vous fera perdre toutes les modifications que vous avez faites.
-Si vous êtes connecté avec votre compte, vous pouvez retirer cet avertissement dans la section « {{int:prefs-editing}} » de vos préférences.',
+Si vous êtes connecté, vous pouvez désactiver cet avertissement dans la section « Modification » de vos préférences.',
# Content models
'content-model-wikitext' => 'wikitexte',
'searchmenu-legend' => 'Options de recherche',
'searchmenu-exists' => "'''Il existe une page nommée « [[:$1]] » sur ce wiki'''",
'searchmenu-new' => "'''Créer la page « [[:$1|$1]] » sur ce wiki !'''",
-'searchhelp-url' => 'Help:Accueil',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Rechercher les pages commençant par ce préfixe]]',
'searchprofile-articles' => 'Pages de contenu',
'searchprofile-project' => "Pages d'aide et de projet",
'userrights-changeable-col' => 'Les groupes que vous pouvez modifier',
'userrights-unchangeable-col' => 'Les groupes que vous ne pouvez pas modifier',
'userrights-conflict' => 'Conflit de droits utilisateur ! Veuillez appliquer de nouveau vos modifications.',
+'userrights-removed-self' => 'Vous avez bien supprimé vos propres droits. Du coup, vous ne pouvez plus accéder à cette page.',
# Groups
'group' => 'Groupe :',
'right-editusercssjs' => "Modifier les fichiers CSS et JavaScript d'autres utilisateurs",
'right-editusercss' => "Modifier les fichiers CSS d'autres utilisateurs",
'right-edituserjs' => "Modifier les fichiers JavaScript d'autres utilisateurs",
+'right-editmyusercss' => 'Modifier vos propres fichiers CSS utilisateur',
+'right-editmyuserjs' => 'Modifier vos propres fichiers JavaScript utilisateur',
+'right-viewmywatchlist' => 'Afficher votre propre liste de suivi',
+'right-editmywatchlist' => 'Modifier votre propre liste de suivi. Remarquez que certaines actions ajouteront encore des pages sans ce droit.',
'right-rollback' => "Révoquer rapidement les modifications du dernier contributeur d'une page particulière",
'right-markbotedits' => 'Marquer des modifications révoquées comme ayant été faites par un robot.',
'right-noratelimit' => 'Ne pas être affecté par les limites de taux',
'action-userrights-interwiki' => "modifier les droits des utilisateurs sur d'autres wikis",
'action-siteadmin' => 'verrouiller ou déverrouiller la base de données',
'action-sendemail' => 'envoyer des courriels',
+'action-editmywatchlist' => 'modifier votre liste de suivi',
+'action-viewmywatchlist' => 'afficher votre liste de suivi',
# Recent changes
'nchanges' => '$1 modification{{PLURAL:$1||s}}',
'reuploaddesc' => "Annuler et retourner au formulaire d'import",
'upload-tryagain' => 'Envoyer la description du fichier modifiée',
'uploadnologin' => 'Non connecté(e)',
-'uploadnologintext' => 'Vous devez être [[Special:UserLogin|connecté(e)]] pour importer des fichiers sur le serveur.',
+'uploadnologintext' => 'Vous devez $1 pour importer des fichiers.',
'upload_directory_missing' => "Le répertoire d'import de fichier ($1) est introuvable et n'a pas pu être créé par le serveur web.",
'upload_directory_read_only' => "Le répertoire d'import de fichier ($1) n'est pas accessible en écriture depuis le serveur web.",
'uploaderror' => "Erreur lors de l'import",
'wantedpages' => 'Pages les plus demandées',
'wantedpages-badtitle' => 'Titre invalide dans les résultats : $1',
'wantedfiles' => 'Fichiers les plus demandés',
-'wantedfiletext-cat' => "Les fichiers suivants sont utilisés, mais n'existent pas. Les fichiers d'autres dépôts peuvent être listés malgré qu'ils existent. Tous ces faux positifs seront <del>barrés</del>. En outre, les pages qui intègrent des fichiers qui n'existent pas sont répertoriées dans [[:$1]].",
-'wantedfiletext-nocat' => "Les fichiers suivants sont utilisés, mais n'existent pas. Les fichiers d'autres dépôts peuvent être listés malgré qu'ils existent. Tous ces faux positifs seront <del>barrés</del>.",
+'wantedfiletext-cat' => "Les fichiers suivants sont utilisés, mais n'existent pas localement. S'ils se trouvent sur un dépôt partagé, ils peuvent être listés ici, bien qu'ils soient, de fait, déjà disponibles. Tous ces faux positifs seront <del>barrés</del>. En outre, les pages qui intègrent des fichiers qui n'existent pas sont répertoriées dans [[:$1]].",
+'wantedfiletext-nocat' => "Les fichiers suivants sont utilisés, mais n'existent pas localement. S'ils se trouvent sur un dépôt partagé, ils peuvent être listés ici, bien qu'ils soient, de fait, déjà disponibles. Tous ces faux positifs seront <del>barrés</del>.",
'wantedtemplates' => 'Modèles demandés',
'mostlinked' => 'Pages les plus liées',
'mostlinkedcategories' => 'Catégories les plus utilisées',
'notvisiblerev' => 'La version a été supprimée',
'watchnochange' => "Aucun des éléments que vous suivez n'a été modifié durant la période affichée.",
'watchlist-details' => 'Votre liste de suivi référence $1 page{{PLURAL:$1||s}}, sans compter les pages de discussion.',
-'wlheader-enotif' => '* La notification par courriel est activée.',
-'wlheader-showupdated' => "* Les pages qui ont été modifiées depuis votre dernière visite sont affichées en '''gras'''.",
+'wlheader-enotif' => 'La notification par courriel est activée.',
+'wlheader-showupdated' => "Les pages qui ont été modifiées depuis votre dernière visite sont affichées en '''gras'''.",
'watchmethod-recent' => 'vérification des modifications récentes pour y trouver des pages suivies',
'watchmethod-list' => 'vérification des pages suivies pour y trouver des modifications récentes',
'watchlistcontains' => 'Votre liste de suivi référence $1 page{{PLURAL:$1||s}}.',
'mycontris' => 'Contributions',
'contribsub2' => 'Pour $1 ($2)',
'nocontribs' => "Aucune modification correspondant à ces critères n'a été trouvée.",
-'uctop' => '(dernière)',
+'uctop' => '(actuel)',
'month' => 'À partir du mois (et précédents) :',
'year' => "À partir de l'année (et précédentes) :",
'thumbnail-more' => 'Agrandir',
'filemissing' => 'Fichier manquant',
'thumbnail_error' => 'Erreur lors de la création de la miniature : $1',
+'thumbnail_error_remote' => "Message d'erreur de $1 :
+$2",
'djvu_page_error' => 'Page DjVu hors limites',
'djvu_no_xml' => 'Impossible de récupérer le XML pour le fichier DjVu',
'thumbnail-temp-create' => 'Impossible de créer le fichier de vignette temporaire',
'modern.css' => '/* Le CSS placé ici affectera les utilisateurs de l’habillage Modern. */',
'vector.css' => '/* Le CSS placé ici affectera les utilisateurs de l’habillage Vector. */',
'print.css' => '/* Le CSS placé ici affectera les impressions */',
-'handheld.css' => '/* Le CSS placé ici affectera les appareils mobiles en fonction de l\'habillage configuré $wgHandheldStyle */',
'noscript.css' => '/* Le CSS placé ici affectera les utilisateurs ayant désactivé Javascript. */',
'group-autoconfirmed.css' => '/* Le CSS placé ici affectera les utilisateurs auto-confirmés seulement. */',
'group-bot.css' => '/* Le CSS placé ici affectera les robots seulement. */',
# Spam protection
'spamprotectiontitle' => 'Filtre de protection anti-pollution',
-'spamprotectiontext' => "La page que vous avez voulu sauvegarder a été bloquée par le filtre anti-pollution. Ceci est probablement dû à l'introduction d'un lien vers un site externe apparaissant sur la liste noire. Cette dernière utilise les expressions rationnelles suivantes :",
+'spamprotectiontext' => "La page que vous avez voulu sauvegarder a été bloquée par le filtre anti-pollution. Ceci est probablement dû à l'introduction d'un lien vers un site externe apparaissant sur la liste noire.",
'spamprotectionmatch' => "La chaîne de caractères « '''$1''' » a déclenché le détecteur de spam.",
'spambot_username' => 'Nettoyage de spams par MediaWiki',
'spam_reverting' => 'Rétablissement de la dernière version ne contenant pas de lien vers $1',
'tog-shownumberswatching' => 'Montrer le montant de guetteurs',
'tog-oldsig' => '↓ Preview du signature existant:',
'tog-fancysig' => 'Signature brute (sans liens préparés)',
-'tog-externaleditor' => 'Utiliser par défaut un éditeur de texte externe (pour les utilisateurs avancés, nécessite des réglages spécifiques sur votre ordinateur)',
-'tog-externaldiff' => 'User un autre comparateur comme réglage ordinaire',
'tog-showjumplinks' => 'Mettre les "liens vites" en haut de la page',
'tog-uselivepreview' => "User la vue d'avance vite (JavaScript) (En assai)",
'tog-forceeditsummary' => "M'avertir quand j'ai laissé la boëte de commentaires vide",
'qbbrowse' => 'Regarder',
'qbedit' => 'Changer',
'qbpageoptions' => 'Page de choix',
-'qbpageinfo' => "Page d'information",
'qbmyoptions' => 'Mes options',
'qbspecialpages' => 'Pages espéciales',
'faq' => 'Questions Communes',
Vous pouvez continuer à user {{SITENAME}} sans nom ou vous pouvez connecter encore une fois avec le même nom ou un autre nom.
Notez: certaines pages pourriont être vues comme si vous êtes connecté, jusqu'à vous videz l'information de votre navigateur.",
-'welcomecreation' => '== Bonjour, $1! ==
-
-Votre compte a été créé. Oubliez pas de changer votre réglage sus {{SITENAME}}.',
'yourname' => "Nom d'useur:",
'yourpassword' => 'Mot de passe:',
'yourpasswordagain' => 'Mot de passe encore:',
'template-protected' => '(protégé)',
'template-semiprotected' => '(demi-protégé)',
'edittools' => "<!-- Le texte que vous mettez ici va être montré sous les boëttes de changements ou d'import de dossier. -->",
-'nocreatetitle' => 'Création de page limitée',
'nocreatetext' => "La création des pages est limitée. Vous pouvez changer une page qu'a été déjà créée ou [[Special:UserLogin|connecter ou créer un compte]].",
'nocreate-loggedin' => 'Vous avez pas la permission de créer des nouvelles pages.',
'permissionserrors' => 'Erreur de permissions',
# Special:Categories
'categories' => 'Classes',
-# E-mail user
+# Email user
'emailuser' => 'E-mail cet useur',
# Watchlist
'disclaimers' => 'Semonces',
'disclaimerpage' => 'Project:Semonces g·ènèrales',
'edithelp' => 'Éde',
-'edithelppage' => 'Help:Coment changiér na pâge',
'helppage' => 'Help:Somèro',
'mainpage' => 'Reçua',
'mainpage-description' => 'Reçua',
# Special:PasswordReset
'passwordreset' => 'Remês’a zérô du contresegno',
-'passwordreset-text' => 'Rempléd ceti formulèro por rebetar a zérô voutron contresegno.',
'passwordreset-legend' => 'Rebetar a zérô lo contresegno',
'passwordreset-disabled' => 'La remês’a zérô des contresegnos est étâye dèsactivâye sur ceti vouiqui.',
-'passwordreset-pretext' => '{{PLURAL:$1||Buchiéd yona de les piéces de balyês ce-desot}}',
'passwordreset-username' => 'Nom d’utilisator :',
'passwordreset-domain' => 'Domêno :',
'passwordreset-capture' => 'Est-o que vos voléd vêre lo mèssâjo que rèsulte ?',
'searchmenu-legend' => 'Chouèx de rechèrche',
'searchmenu-exists' => "'''Y at na pâge apelâye « [[:$1]] » sur ceti vouiqui.'''",
'searchmenu-new' => "'''Fâre la pâge « [[:$1|$1]] » sur ceti vouiqui !'''",
-'searchhelp-url' => 'Help:Somèro',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Fâre dèfelar les pâges que començont per ceti prèfixo]]',
'searchprofile-articles' => 'Pâges de contegnu',
'searchprofile-project' => 'Pâges d’éde et pâges projèt',
'listusers-noresult' => 'Nion utilisator trovâ.',
'listusers-blocked' => '(blocâ{{GENDER:$1||ye|(ye)}})',
+# Special:ActiveUsers
+'activeusers' => 'Lista des utilisators actifs',
+'activeusers-intro' => 'O est na lista des utilisators qu’ant ègzèrciê un’activitât la quinta que seye pendent {{PLURAL:$1|lo jorn passâ|los $1 jorns passâs}}.',
+'activeusers-count' => '$1 accion{{PLURAL:$1||s}} pendent {{PLURAL:$3|lo jorn passâ|los $3 jorns passâs}}',
+'activeusers-from' => 'Fâre vêre los utilisators dês :',
+'activeusers-hidebots' => 'Cachiér los robots',
+'activeusers-hidesysops' => 'Cachiér los administrators',
+'activeusers-noresult' => 'Nion utilisator trovâ.',
+
# Special:ListGroupRights
'listgrouprights' => 'Drêts de les tropes d’utilisators',
'listgrouprights-summary' => 'Vê-que na lista de les tropes d’utilisators dèfenies sur ceti vouiqui et pués los sins drêts d’accès.
'notvisiblerev' => 'La dèrriére vèrsion per un ôtr’utilisator est étâye suprimâye',
'watchnochange' => 'Pas yona de les piéces que vos siude est étâye changiêe pendent lo temps fêt vêre.',
'watchlist-details' => 'Y at $1 pâge{{PLURAL:$1||s}} dedens voutra lista de siuvu, sen comptar les pâges de discussion.',
-'wlheader-enotif' => '* La notificacion per mèssageria èlèctronica est activâye.',
-'wlheader-showupdated' => "* Les pâges que sont étâyes changiêes dês voutra dèrriére visita sont montrâyes en '''grâs'''.",
+'wlheader-enotif' => 'La notificacion per mèssageria èlèctronica est activâye.',
+'wlheader-showupdated' => "Les pâges que sont étâyes changiêes dês voutra dèrriére visita sont montrâyes en '''grâs'''.",
'watchmethod-recent' => 'contrôlo des novéls changements por y trovar des pâges siuvues',
'watchmethod-list' => 'contrôlo de les pâges siuvues por y trovar des novéls changements',
'watchlistcontains' => 'Voutra lista de siuvu contint $1 pâge{{PLURAL:$1||s}}.',
'modern.css' => '/* Lo code CSS betâ ique afècterat los usanciérs de l’habelyâjo « Modèrno ». */',
'vector.css' => '/* Lo code CSS betâ ique afècterat los usanciérs de l’habelyâjo « Vèctor ». */',
'print.css' => '/* Lo code CSS betâ ique afècterat les emprèssions. */',
-'handheld.css' => '/* Lo code CSS betâ ique afècterat los aparèlys mobilos d’aprés l’habelyâjo configurâ dedens « $wgHandheldStyle ». */',
'noscript.css' => '/* Lo code CSS betâ ique afècterat los usanciérs qu’ont dèsactivâ lo code JavaScript. */',
'group-autoconfirmed.css' => '/* Lo code CSS betâ ique afècterat ren que los usanciérs encartâs. */',
'group-bot.css' => '/* Lo code CSS betâ ique afècterat ren que los bots. */',
* gpsaltitude',
'metadata-langitem' => "'''$2 :''' $1",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Largior',
'exif-imagelength' => 'Hôtior',
'exif-bitspersample' => 'Bits per composenta',
'exif-originalimageheight' => 'Hôtior de l’émâge devant qu’el èye étâ tornâ cadrar',
'exif-originalimagewidth' => 'Largior de l’émâge devant qu’el èye étâ tornâ cadrar',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Pas comprèssâ',
'exif-compression-2' => 'CCITT tropa 3 longior du codâjo Huffman changiê de dimension 1',
'exif-compression-3' => 'CCITT tropa 3 codâjo du faxe',
'version-entrypoints-header-entrypoint' => 'Pouent d’entrâ',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Chemin d’accès du fichiér',
-'filepath-page' => 'Fichiér :',
-'filepath-submit' => 'Alar trovar',
-'filepath-summary' => 'Ceta pâge spèciâla montre lo chemin d’accès complèt d’un fichiér.
-Les émâges sont montrâs dens lor plêna rèsolucion, los ôtros fichiérs sont chargiês et dèmarrâs tot drêt avouéc lor programo associyê.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Rechèrche des fichiérs en doblo',
'fileduplicatesearch-summary' => 'Rechèrche des fichiérs en doblo d’aprés lor mârca de chaplâjo.',
* @ingroup Language
* @file
*
+ * @author Geitost
* @author Inkowik
* @author Maartenvdbent
* @author Merlissimo
$messages = array(
# User preference toggles
-'tog-underline' => 'Linke unerstrike:',
-'tog-justify' => 'Täkst ås blokseeting',
-'tog-hideminor' => 'Latje änringe fersteege',
-'tog-hidepatrolled' => 'Latje änringe fersteege',
-'tog-newpageshidepatrolled' => 'Kontroliirde side aw e list "Naie side" fersteege',
-'tog-extendwatchlist' => 'Ütwidede wåchelist tun wisen foon åle änringe',
-'tog-usenewrc' => "Ütwidede deerstaling foon da ''Leeste Änringe'' än aw da ''Eefterkiikliste'' (brükt JavaScript)",
-'tog-numberheadings' => 'Ouerschrafte automatisch numeriire',
-'tog-showtoolbar' => 'Beårbe-wärktjüch wise',
-'tog-editondblclick' => 'Side ma dööweltklik beårbe (brükt JavaScript)',
-'tog-editsection' => 'Ferbininge tun wisen foon änkelte oufsnaase',
-'tog-editsectiononrightclick' => 'Änkelte stöögne ma ruchts kliken beårbe (brükt JavaScript)',
-'tog-showtoc' => 'Wis en inhåltsferteeknis for side ma mäs ås trii ouerschrafte',
-'tog-rememberpassword' => 'Aw diheere komputer foon duur önjmälde (maksimool for $1 {{PLURAL:$1|däi|deege}})',
-'tog-watchcreations' => "Salew maaget sidjen an huuchlooset dateien leewen uun't uug behual",
-'tog-watchdefault' => "Salew feranert sidjen an dateien leewen uun't uug behual",
-'tog-watchmoves' => "Salew fersköwen sidjen an dateien leewen uun't uug behual",
-'tog-watchdeletion' => "Salew stregen sidjen an dateien leewen uun't uug behual",
-'tog-minordefault' => 'Äine änringe gewöönlik ås latj mårkiire',
-'tog-previewontop' => 'Forbekiiken boowen dåt beårbingswaning wise',
-'tog-previewonfirst' => 'Bai dåt jarst beårben åltens dåt forbekiiken wise',
-'tog-nocache' => 'Sidecache foon e browser deaktiwiire',
-'tog-enotifwatchlistpages' => "Sjüür mi en E-Mail, wan sidjen of dateien feranert wurd, diar ik uun't uug behual wal",
-'tog-enotifusertalkpages' => 'Bai änringe tu min brüker-diskusjoonssid E-Maile siinje',
-'tog-enotifminoredits' => 'Sjüür mi uk bi letj feranrangen faan sidjen an dateien en E-Mail',
-'tog-enotifrevealaddr' => 'Min E-mail-adräs önj tising-E-maile wise',
-'tog-shownumberswatching' => 'Wis di tål foon wåchende brükere',
+'tog-underline' => 'Ferwisangen onerstrik:',
+'tog-justify' => 'Tekst üs blook saat',
+'tog-hideminor' => 'Letj anrangen fersteeg',
+'tog-hidepatrolled' => 'Letj anrangen fersteeg',
+'tog-newpageshidepatrolled' => 'Kontroliaret sidjen bi a "Nei sidjen" fersteeg',
+'tog-extendwatchlist' => "Ütjwidjet list faan sidjen, diar dü uun't uug behual wel",
+'tog-usenewrc' => "Ütjwidjet uunwisin faan a ''Leetst feranrangen'' an bi a sidjen, diar dü ''Uun't uug behual'' wel (brükt JavaScript)",
+'tog-numberheadings' => 'Auerskraften automaatisk numeriare',
+'tog-showtoolbar' => 'Werktjüch tu bewerkin wise (brükt JavaScript)',
+'tog-editondblclick' => 'Sidjen mä dobelklik bewerke (brükt JavaScript)',
+'tog-editsection' => "Ferwisangen tu't bewerkin faan enkelt kirwer",
+'tog-editsectiononrightclick' => 'Enkelt kirwer mä rochtsklik bewerke (brükt JavaScript)',
+'tog-showtoc' => 'Üüb sidjen mä muar üs trii auerskraften en indeks uunwise',
+'tog-rememberpassword' => 'Üüb diheer reegner üüb düür uunmelde (maksimaal för $1 {{PLURAL:$1|dai|daar}})',
+'tog-watchcreations' => "Salew maaget sidjen an huuchlooset datein leewen uun't uug behual",
+'tog-watchdefault' => "Salew feranert sidjen an datein leewen uun't uug behual",
+'tog-watchmoves' => "Salew fersköwen sidjen an datein leewen uun't uug behual",
+'tog-watchdeletion' => "Salew stregen sidjen an datein leewen uun't uug behual",
+'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',
+'tog-enotifrevealaddr' => 'Min e-mail adres uun e-mail noorachten uunwise',
+'tog-shownumberswatching' => "Taal faan brükern uunwise, diar det sidj uun't uug haa",
'tog-oldsig' => 'Aktuel signatuur:',
-'tog-fancysig' => 'Signatuur behoonle ås wikitäkst',
-'tog-showjumplinks' => '"Schafte tu"-ferbininge aktiwiire',
-'tog-uselivepreview' => 'Live-forbekiik ferwiinje (brükt JavaScript) (äksperimentäl)',
-'tog-forceeditsummary' => 'Woorschoue, wan bai dåt spiikern jü tuhuupefooting breecht',
-'tog-watchlisthideown' => 'Äine beårbinge önj e bekiiklist fersteege',
-'tog-watchlisthidebots' => 'Beårbinge döör bots önj e bekiiklist fersteege',
-'tog-watchlisthideminor' => 'Latje beårbinge önj e bekiiklist fersteege',
-'tog-watchlisthideliu' => 'Beårbinge foon önjmäldede brükere önj e bekiikliste fersteege',
-'tog-watchlisthideanons' => 'Beårbinge foon ai önjmäldede brükere önj e bekiikliste fersteege',
-'tog-watchlisthidepatrolled' => 'Eefterkiikede beårbinge önj e bekiiklist fersteege',
-'tog-ccmeonemails' => 'Siinje me kopiie foon e-maile, da ik tu oudere brükere siinje',
-'tog-diffonly' => 'Wis bai di fersjoonsferglik bloot da unerschiise, ai jü hiilj sid',
-'tog-showhiddencats' => 'Wis ferstäägene kategoriie',
-'tog-norollbackdiff' => 'Unerschiis eefter dåt tübäägseeten unerdrüke',
+'tog-fancysig' => 'Signatuur üs wikitekst uunsä (saner ferwisangen)',
+'tog-showjumplinks' => '"Waksle tu"-ferwisangen aktiwiare',
+'tog-uselivepreview' => 'Live-"iarst ans luke" funktjuun brük (brükt JavaScript, eksperimentel)',
+'tog-forceeditsummary' => "Wäärne, wan bi't seekrin nian tuupfaadang uunden woort",
+'tog-watchlisthideown' => "Aanj feranrangen bi a sidjen, diar ik uun't uug behual wal, fersteeg",
+'tog-watchlisthidebots' => "Feranrangen faan bots bi a sidjen, diar ik uun't uug behual wal, fersteeg",
+'tog-watchlisthideminor' => "Letj feranrangen bi a sidjen, diar ik uun't uug behual wal, fersteeg",
+'tog-watchlisthideliu' => "Feranrangen faan uunmeldet brükern bi sidjen, diar ik uun't uug behual wal, fersteeg",
+'tog-watchlisthideanons' => "Feranrangen faan anonüüm brükern (IPs) bi sidjen, diar ik uun't uug behual wal, fersteeg",
+'tog-watchlisthidepatrolled' => "Kontroliaret feranrangen bi a sidjen, diar ik uun't uug behual wal, fersteeg",
+'tog-ccmeonemails' => 'Schüür mi kopiin faan e-mails, diar ik tu ööder brükern schüür',
+'tog-diffonly' => 'Bi en werjuunsferglik bluas di ferskeel uunwise, ei det hialer sidj',
+'tog-showhiddencats' => 'Ferbürgen kategoriin uunwise',
+'tog-norollbackdiff' => "Ferskeel efter't turagsaaten fersteeg",
'tog-useeditwarning' => 'Waarskaue mi, wan en sidj slööden woort, huar noch ünseekert feranrangen maaget wurden san',
-'underline-always' => 'Åltens',
-'underline-never' => 'uler',
+'underline-always' => 'Leewen',
+'underline-never' => 'Nimer',
'underline-default' => 'Komt üüb dan browser uun',
# Font style option in Special:Preferences
-'editfont-style' => 'Schraftfamiili for di takst onj dåt beårbingswaning:',
-'editfont-default' => 'oufhingi foon browser-önjstaling',
-'editfont-monospace' => 'Schraft ma fååst tiikenbrååtj',
-'editfont-sansserif' => 'Seriifen-lüüse grotäskschraft',
-'editfont-serif' => 'Schraft ma seriife',
+'editfont-style' => "Skraftoort för di tekst uun't werkfial:",
+'editfont-default' => 'Hinget faan browser-iinstelangen uf',
+'editfont-monospace' => 'Skraft mä en fääst tiakenbreetje',
+'editfont-sansserif' => 'Skraft saner seriifen (fiin onerstreger)',
+'editfont-serif' => 'Skraft mä seriifen (fiin onerstreger)',
# Dates
'sunday' => 'Saandi',
'oct' => 'Okt.',
'nov' => 'Now.',
'dec' => 'Det.',
+'january-date' => '$1. Janewoore',
+'february-date' => '$1. Febrewoore',
+'march-date' => '$1. Maarts',
+'april-date' => '$1. April',
+'may-date' => '$1. Mei',
+'june-date' => '$1. Jüüne',
+'july-date' => '$1. Jüüle',
+'august-date' => '$1. August',
+'september-date' => '$1. September',
+'october-date' => '$1. Oktuuber',
+'november-date' => '$1. Nofember',
+'december-date' => '$1. Detsember',
# Categories related messages
-'pagecategories' => '{{PLURAL:$1|Kategorii|Kategoriie}}',
-'category_header' => 'Side önj e kategorii "$1"',
-'subcategories' => 'Unerkategoriie',
-'category-media-header' => 'Meedia önj e kategorii "$1"',
-'category-empty' => '"Jüdeer kategorii önjhüült nütutids niinj side unti meedie."',
-'hidden-categories' => '{{PLURAL:$1|Ferstäägen Kategorii|Ferstäägene Kategoriie}}',
-'hidden-category-category' => 'Ferstäägene kategoriie',
-'category-subcat-count' => '{{PLURAL:$2|Jüdeer kategorii önjthålt füliend unerkategorii:|{{PLURAL:$1|Füliend unerkategorii as iinj foon inåål $2 unerkategoriie önj jüdeer kategorii:|Deer wårde $1 foon inåål $2 unerkategoriie önj jüdeer kategorii wised:}}}}',
-'category-subcat-count-limited' => 'Jüdeer kategorii önjthålt füliende {{PLURAL:$1|unerkategorii|$1 unerkategoriie}}:',
-'category-article-count' => '{{PLURAL:$2|Jüdeer kategorii önjthålt füliende sid:|{{PLURAL:$1|Füliende sid as iinj foon inåål $2 side önj jüdeer kategorii:|Deer wårde $1 foon inåål $2 side önj jüdeer kategorii wised:}}}}',
-'category-article-count-limited' => 'Füliende {{PLURAL:$1|sid as|$1 side san}} önj jüheer kategorii önjthülen:',
-'category-file-count' => '{{PLURAL:$2|Jüdeer kategorii önjthålt füliende dootäi:|{{PLURAL:$1|Füliende dootäi as iinj foon inåål $2 side önj jüdeer kategorii:|Deer wårde $1 foon inåål $2 dootäie önj jüdeer kategorii wised:}}}}',
-'category-file-count-limited' => 'Füliende {{PLURAL:$1|Dootäi as|$1 Dootäie san}} önj jüdeer kategorii önjthülen:',
-'listingcontinuesabbrev' => '(fortseeting)',
-'index-category' => 'Indisiirde side',
-'noindex-category' => 'Ai indisiirde side',
+'pagecategories' => '{{PLURAL:$1|Kategorii|Kategoriin}}',
+'category_header' => 'Sidjen uun kategorii "$1"',
+'subcategories' => 'Onerkategoriin',
+'category-media-header' => 'Meedien uun kategorii "$1"',
+'category-empty' => '"Uun detdiar kategorii san uun uugenblak nian sidjen of meedien."',
+'hidden-categories' => '{{PLURAL:$1|Ferbürgen kategorii|Ferbürgen kategoriin}}',
+'hidden-category-category' => 'Ferbürgen kategoriin',
+'category-subcat-count' => "{{PLURAL:$2|Detdiar kategorii hää ian onerkategorii.|Uun detdiar kategorii {{PLURAL:$1|stäänt ian onerkategorii|stun $1 onerkategoriin}} faan $2 uun't gehial.}}",
+'category-subcat-count-limited' => 'Detdiar kategorii hää {{PLURAL:$1|ian onerkategorii|$1 onerkategoriin}}:',
+'category-article-count' => "{{PLURAL:$2|Uun detdiar kategorii stäänt ian sidj.|Uun detdiar kategorii {{PLURAL:$1|stäänt ian sidj|stun jodiar $1 sidjen}} faan $2 uun't gehial.}}",
+'category-article-count-limited' => '{{PLURAL:$1|Detdiar sidj stäänt|Jodiar $1 sidjen stun}} uun detdiar kategorii.',
+'category-file-count' => "{{PLURAL:$2|Uun detdiar kategorii stäänt ian datei.|Uun detdiar kategorii {{PLURAL:$1|stäänt ian datei|stun jodiar $1 datein}} faan $2 uun't gehial.}}",
+'category-file-count-limited' => '{{PLURAL:$1|Detdiar datei stäänt|Jodiar $1 datein stun}} uun detdiar kategorii.',
+'listingcontinuesabbrev' => '(gongt widjer)',
+'index-category' => 'Indisiaret sidjen',
+'noindex-category' => 'Ei indisiaret sidjen',
'broken-file-category' => 'Sid ma önjstöögne ferwisinge',
-'about' => 'Ouer',
-'article' => 'Sid',
-'newwindow' => '(wårt önj en nai waning ääm mååged)',
-'cancel' => 'Oufbreege',
-'moredotdotdot' => 'Mör ...',
+'about' => 'Auer',
+'article' => 'Artiikel',
+'newwindow' => '(woort uun en nei wönang eeben maaget)',
+'cancel' => 'Ufbreeg',
+'moredotdotdot' => 'Muar ...',
'morenotlisted' => 'Öödern, ei apfeerd ...',
'mypage' => 'Sidj',
'mytalk' => 'Diskusjuun',
-'anontalk' => 'Diskusjoonssid foon jüdeer IP',
-'navigation' => 'Navigasjoon',
-'and' => ' än',
+'anontalk' => 'Diskusjuunssidj faan detdiar IP',
+'navigation' => 'Nawigatjuun',
+'and' => ' an',
# Cologne Blue skin
-'qbfind' => 'Fine',
-'qbbrowse' => 'Bleese',
-'qbedit' => 'Änre',
-'qbpageoptions' => 'Jüdeer sid',
-'qbmyoptions' => 'Min side',
-'qbspecialpages' => 'Spetsjåålside',
+'qbfind' => 'Finj',
+'qbbrowse' => 'Schük',
+'qbedit' => 'Bewerke',
+'qbpageoptions' => 'Detdiar sidj',
+'qbmyoptions' => 'Min sidjen',
+'qbspecialpages' => 'Spezial-sidjen',
'faq' => 'FAQ',
'faqpage' => 'Project:FAQ',
# Vector skin
-'vector-action-addsection' => 'Stuk haanetufoue',
-'vector-action-delete' => 'Strike',
-'vector-action-move' => 'Ferschüwe',
-'vector-action-protect' => 'Sääkere',
-'vector-action-undelete' => 'Wi mååge',
-'vector-action-unprotect' => 'Frijeewe unti späre',
-'vector-simplesearch-preference' => 'Ianfacher sjüklist iinstel (bluas bi Vector)',
-'vector-view-create' => 'Mååge',
-'vector-view-edit' => 'Beårbe',
-'vector-view-history' => 'Dootäifärsjoone',
+'vector-action-addsection' => 'Nei kirew began',
+'vector-action-delete' => 'Strik',
+'vector-action-move' => 'Fersküüw',
+'vector-action-protect' => 'Seekre',
+'vector-action-undelete' => 'Weder iinstel',
+'vector-action-unprotect' => 'Sidjenseekerhaid',
+'vector-simplesearch-preference' => 'Ianfacher schüklist iinstel (bluas bi Vector)',
+'vector-view-create' => 'Maage',
+'vector-view-edit' => 'Bewerke',
+'vector-view-history' => 'Ferluup uunluke',
'vector-view-view' => 'Lees',
-'vector-view-viewsource' => 'Kwältäkst önjkiike',
-'actions' => 'Aksjoone',
-'namespaces' => 'Noomerüme',
-'variants' => 'Fariante',
+'vector-view-viewsource' => 'Kweltekst uunluke',
+'actions' => 'Aktjuunen',
+'namespaces' => 'Nöömrümer',
+'variants' => 'Warianten',
'navigation-heading' => 'Nawigatsjuun',
-'errorpagetitle' => 'Fäägel',
-'returnto' => 'Tubääg tu jü side $1.',
-'tagline' => 'Üt {{SITENAME}}',
-'help' => 'Heelp',
-'search' => 'Säk',
-'searchbutton' => 'Säke',
-'go' => 'Ütfääre',
-'searcharticle' => 'Sid',
-'history' => 'Färsjoone',
-'history_short' => 'Färsjoone/autoore',
-'updatedmarker' => 'änred sunt man leest besäk',
-'printableversion' => 'Prantfärsjoon',
-'permalink' => 'Permanänten link',
-'print' => 'Prante',
+'errorpagetitle' => 'Diar as wat skiaf gingen',
+'returnto' => 'Turag tu sidj $1.',
+'tagline' => 'Faan {{SITENAME}}',
+'help' => 'Halep',
+'search' => 'Schük',
+'searchbutton' => 'Schük',
+'go' => 'Widjer',
+'searcharticle' => 'Sidj',
+'history' => 'Werjuunen',
+'history_short' => 'Ferluup',
+'updatedmarker' => 'feranert sant man leetst beschük',
+'printableversion' => 'Ütjdrük maage',
+'permalink' => 'Permanent link',
+'print' => 'Drük',
'view' => 'Lees',
-'edit' => 'Beårbe',
-'create' => 'Mååge',
-'editthispage' => 'Sid beårbe',
-'create-this-page' => 'Sid mååge',
-'delete' => 'Strike',
-'deletethispage' => 'Jüdeer sid strike',
-'undelete_short' => '{{PLURAL:$1|1 färsjoon|$1 färsjoone}} widermååge',
-'viewdeleted_short' => '$1 {{PLURAL:$1|iinj sträägen färsjoon|$1 sträägene färsjoone}} önjkiike',
-'protect' => 'Sääkere',
-'protect_change' => 'änre',
-'protectthispage' => 'Sid önj ferbading hüülje',
-'unprotect' => 'Frijeewe unti späre',
+'edit' => 'Bewerke',
+'create' => 'Maage',
+'editthispage' => 'Sidj bewerke',
+'create-this-page' => 'Nei sidj maage',
+'delete' => 'Strik',
+'deletethispage' => 'Detdiar sidj strik',
+'undeletethispage' => 'Detdiar stregen sidj turaghaale',
+'undelete_short' => '{{PLURAL:$1|1 werjuun|$1 werjuunen}} weder iinstel',
+'viewdeleted_short' => '{{PLURAL:$1|Ian stregen werjuun|$1 stregen werjuunen}} uunluke',
+'protect' => 'Seekre',
+'protect_change' => 'feranre',
+'protectthispage' => 'Sidj seekre',
+'unprotect' => 'Sidjenseekerhaid',
'unprotectthispage' => 'Sääkering aphääwe',
-'newpage' => 'Nai sid',
-'talkpage' => 'Jüdeer sid diskutiire',
-'talkpagelinktext' => 'diskusjoon',
-'specialpage' => 'Spetsjåålsid',
-'personaltools' => 'Persöönlike räischupe',
-'postcomment' => 'Nai oufsnaas',
-'articlepage' => 'Inhåltsid wise',
-'talk' => 'Diskusjoon',
-'views' => 'Önjsichte',
-'toolbox' => 'Räischape',
-'userpage' => 'Brükersid wise',
-'projectpage' => 'Prujäktsid wise',
-'imagepage' => 'Dååtäisid wise',
-'mediawikipage' => 'Mäldingssid wise',
-'templatepage' => 'Forlåågesid wise',
-'viewhelppage' => 'Heelpsid wise',
-'categorypage' => 'Kategoriisid wise',
-'viewtalkpage' => 'Diskusjoon',
-'otherlanguages' => 'Önj oudere spräke',
-'redirectedfrom' => '(Widerliidjet foon $1)',
-'redirectpagesub' => 'Widerliidjing',
-'lastmodifiedat' => 'Jüdeer sid wörd tuleest aw $1 am jü klook $2 änred.',
+'newpage' => 'Nei sidj',
+'talkpage' => 'Detdiar sidj diskutiare',
+'talkpagelinktext' => 'Diskusjuun',
+'specialpage' => 'Spezial-sidj',
+'personaltools' => 'Min werktjüügen',
+'postcomment' => 'Nei kirew',
+'articlepage' => 'Artiikel wise',
+'talk' => 'Diskusjuun',
+'views' => 'Uunsichten',
+'toolbox' => 'Werktjüügen',
+'userpage' => 'Brükersidj uunwise',
+'projectpage' => 'Projektsidj wise',
+'imagepage' => 'Dateisidj uunwise',
+'mediawikipage' => 'Mädialangssidj uunwise',
+'templatepage' => 'Föörlaagensidj uunwise',
+'viewhelppage' => 'Halepsidj uunwise',
+'categorypage' => 'Kategoriisidj uunwise',
+'viewtalkpage' => 'Diskusjuun uunluke',
+'otherlanguages' => 'Uun ööder spriaken',
+'redirectedfrom' => '(Widjerfeerd faan $1)',
+'redirectpagesub' => 'Widjerfeerang',
+'lastmodifiedat' => 'Detdiar sidj as tuleetst di $1, am a klook $2 anert wurden.',
'viewcount' => 'Aw jüdeer sid as {{PLURAL:$1|iinjsen|$1 tunge}} tugram wörden.',
'protectedpage' => 'Sääkerd sid',
-'jumpto' => 'Schaft tu:',
-'jumptonavigation' => 'Navigasjoon',
-'jumptosearch' => 'säk',
-'view-pool-error' => 'Önjschüliing, da särwere san nütutids ouerlååsted.
-Tufoole brükere fersäke, jüdeer sid tu besäken.
-Wees sü gödj än täiw hu minuute, iir dü dåt nuch iinjsen ferseechst.
+'jumpto' => 'Waksle tu:',
+'jumptonavigation' => 'Navigatsjuun',
+'jumptosearch' => 'Schük',
+'view-pool-error' => 'Det dää üs iarag, a servers san auerläästet.
+Tuföl brükern ferschük, det sidj tu beschüken.
+Wees so gud an teew en uugenblak, iar dü det noch ans ferschükst.
$1',
'pool-timeout' => "Tidj uflepen bi't teewen üüb't sperang",
'pool-errorunknown' => 'Ünbekäänd feeler',
# 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) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'Ouer {{SITENAME}}',
-'aboutpage' => 'Project:Ouer',
-'copyright' => 'Inhålt stoont tu rädj uner jü $1.',
-'copyrightpage' => '{{ns:project}}:Uurhiiwerruchte',
-'currentevents' => 'Aktuäle schaiinge',
-'currentevents-url' => 'Project:Aktuäle schaiinge',
-'disclaimers' => 'Impressum',
-'disclaimerpage' => 'Project:Impressum',
-'edithelp' => 'Beårbingsheelp',
-'edithelppage' => 'Help:Beårbe',
-'helppage' => 'Help:Inhåltsfertiiknis',
-'mainpage' => 'Hoodsid',
-'mainpage-description' => 'Hoodsid',
-'policy-url' => 'Project:Ruchtliinje',
-'portal' => 'Gemiinschaps-portåål',
-'portal-url' => 'Project:Gemiinschaps-portåål',
-'privacy' => 'Dootenschuts',
-'privacypage' => 'Project:Dootenschuts',
-
-'badaccess' => 'Niinj tulingende ruchte',
-'badaccess-group0' => 'Dü hääst ai jü nüsie beruchtiging for jüdeer aksjoon',
-'badaccess-groups' => 'Jüdeer aksjoon as begränsed aw brükere, da tu {{PLURAL:$2|di grupe|åån foon da grupe}} „$1“ hiire.',
-
-'versionrequired' => 'Färsjoon $1 foon MediaWiki as nüsi.',
-'versionrequiredtext' => 'Färsjoon $1 foon MediaWiki as nüsi, am jüdeer sid tu brüken.
-Sii jü [[Special:Version|Färsjoonssid]]',
+'aboutsite' => 'Auer {{SITENAME}}',
+'aboutpage' => 'Project:Auer',
+'copyright' => 'Det stäänt oner det lisens $1.',
+'copyrightpage' => '{{ns:project}}:Copyrights',
+'currentevents' => 'Aktuels',
+'currentevents-url' => 'Project:Aktuels',
+'disclaimers' => 'Disclaimers',
+'disclaimerpage' => 'Project:Disclaimers',
+'edithelp' => "Halep bi't bewerkin",
+'helppage' => 'Help:Auersicht',
+'mainpage' => 'Hoodsidj',
+'mainpage-description' => 'Hoodsidj',
+'policy-url' => 'Project:Reegeln',
+'portal' => 'Gemianskap',
+'portal-url' => 'Project:Gemianskap',
+'privacy' => 'Persöönelk dooten',
+'privacypage' => 'Project:Persöönelk dooten',
+
+'badaccess' => 'Brükerrochten ling ei',
+'badaccess-group0' => 'För detdiar aktjuun heest dü ei nooch brükerrochten.',
+'badaccess-groups' => 'Detdiar aktjuun mut bluas faan brükern uun {{PLURAL:$2|det skööl|ian faan jodiar sköölen}} „$1“ ütjfeerd wurd.',
+
+'versionrequired' => 'Werjuun $1 faan MediaWiki woort brükt.',
+'versionrequiredtext' => "Werjuun $1 faan MediaWiki woort brükt, am detdiar sidj tu brüken.
+Luke efter bi't [[Special:Version|werjuunssidj]]",
'ok' => 'OK',
'pagetitle' => '$1 – {{SITENAME}}',
'pagetitle-view-mainpage' => '{{SITENAME}}',
'backlinksubtitle' => '← $1',
-'retrievedfrom' => 'Foon „$1“',
-'youhavenewmessages' => 'Dü hääst $1 aw din diskusjoonssid ($2).',
-'newmessageslink' => 'naie tisinge',
+'retrievedfrom' => 'Faan „$1“',
+'youhavenewmessages' => 'Dü heest $1 ($2).',
+'newmessageslink' => 'nei bööd',
'newmessagesdifflink' => 'Leest änring',
'youhavenewmessagesfromusers' => 'Dü heest $1 faan {{PLURAL:$3|en öödern brüker|$3 ööder brükern}} ($2).',
'youhavenewmessagesmanyusers' => 'Dü heest $1 faan flook ööder brükern ($2).',
'newmessageslinkplural' => '{{PLURAL:$1|ian nei nooracht|nei noorachten}}',
'newmessagesdifflinkplural' => 'leetst {{PLURAL:$1|feranrang|feranrangen}}',
-'youhavenewmessagesmulti' => 'Dü hääst nai tisinge aw $1',
-'editsection' => 'Beårbe',
+'youhavenewmessagesmulti' => 'Dü heest nei bööd üüb $1',
+'editsection' => 'Bewerke',
'editsection-brackets' => '[$1]',
-'editold' => 'Beårbe',
-'viewsourceold' => 'kwältakst wise',
-'editlink' => 'beårbe',
-'viewsourcelink' => 'kwältakst wise',
-'editsectionhint' => 'Säksjoon beårbe: $1',
-'toc' => 'Inhåltsfertiiknis',
+'editold' => 'Bewerke',
+'viewsourceold' => 'kweltekst uunwise',
+'editlink' => 'bewerke',
+'viewsourcelink' => 'kweltekst uunwise',
+'editsectionhint' => 'Kirew bewerke: $1',
+'toc' => 'Auersicht',
'showtoc' => 'Wise',
-'hidetoc' => 'Ferbärje',
+'hidetoc' => 'Fersteeg',
'collapsible-collapse' => 'Tuupdoble',
-'collapsible-expand' => 'Ütjenööderdoble',
-'thisisdeleted' => '$1 önjkiike unti widermååge?',
-'viewdeleted' => '$1 wise?',
-'restorelink' => '$1 {{PLURAL:$1|sträägen Färsjoon|sträägene Färsjoone}}',
+'collapsible-expand' => 'Wise',
+'thisisdeleted' => '$1 uunluke of weder iinstel',
+'viewdeleted' => '$1 uunluke?',
+'restorelink' => '$1 {{PLURAL:$1|stregen werjuun|stregen werjuunen}}',
'feedlinks' => 'Feed:',
-'feed-invalid' => 'Üngülti feed-abonemänt-typ.',
-'feed-unavailable' => 'Deer stönje niinj feeds tu rädj.',
-'site-rss-feed' => 'RSS-feed for $1',
-'site-atom-feed' => 'Atom-feed for $1',
-'page-rss-feed' => 'RSS-feed for „$1“',
-'page-atom-feed' => 'Atom-feed for „$1“',
+'feed-invalid' => 'Feed-abonement-typ as ferkiard.',
+'feed-unavailable' => 'Diar san nian feeds.',
+'site-rss-feed' => 'RSS-feed för $1',
+'site-atom-feed' => 'Atom-feed för $1',
+'page-rss-feed' => 'RSS-feed för „$1“',
+'page-atom-feed' => 'Atom-feed för „$1“',
'feed-atom' => 'Atom',
'feed-rss' => 'RSS',
-'red-link-title' => '$1 (sid ai deer)',
+'red-link-title' => '$1 (sidj ei diar)',
'sort-descending' => 'Sortiare faan boowen tu onern',
'sort-ascending' => 'Sortiare faan onern tu boowen',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'Sid',
-'nstab-user' => 'Brükersid',
-'nstab-media' => 'Meediesid',
-'nstab-special' => 'Spetsjåålsid',
-'nstab-project' => 'Prujäktsid',
-'nstab-image' => 'Dååtäi',
-'nstab-mediawiki' => 'Berucht',
-'nstab-template' => 'Forlååge',
-'nstab-help' => 'Heelpsid',
+'nstab-user' => 'Brükersidj',
+'nstab-media' => 'Meediensidj',
+'nstab-special' => 'Spezial-sidj',
+'nstab-project' => 'Projektsidj',
+'nstab-image' => 'Datei',
+'nstab-mediawiki' => 'Bööd',
+'nstab-template' => 'Föörlaag',
+'nstab-help' => 'Halepsidj',
'nstab-category' => 'Kategorii',
# Main script and global functions
-'nosuchaction' => "Ai sü'n aksjoon",
-'nosuchactiontext' => 'Jü aksjoon spesifisiird döör di URL jült ai.
-Dü koost di URL ferkiird tipt hääwe, unti dü hääst en ferkiirden link fülied.
-Dåt koon uk en fäägel önjjeewe önj e software, jü {{SITENAME}} brúkt.',
-'nosuchspecialpage' => "Ai sü'n spetsjäl sid",
-'nospecialpagetext' => '<strong>Jü önjfrååged spetsjåålsid as ai deer.</strong>
+'nosuchaction' => 'Son aktjuun jaft at ei',
+'nosuchactiontext' => 'Son aktjuun jaft at üüb MediaWiki ei.
+Ferlicht heest dü det URL ferkiard apskrewen, of dü beest en ferkiard ferwisang fulagt.
+Ferlicht as det uk en feeler uun det software faan {{SITENAME}}.',
+'nosuchspecialpage' => 'Son spezial-sidj jaft at ei.',
+'nospecialpagetext' => '<strong>Son spezial-sidj jaft at ei.</strong>
-Åle ferfäigboore spetsjåålside san önj e [[Special:SpecialPages|List foon da spetsjåålside]] tu finen.',
+En list mä aal a spezial-sidjen fanjst dü üüb [[Special:SpecialPages|{{int:specialpages}}]].',
# General errors
-'error' => 'Fäägel',
-'databaseerror' => 'Dootebånkfäägel',
+'error' => 'Feeler',
+'databaseerror' => 'Dootenbeenkfeeler',
'dberrortext' => 'Diar as wat skiaf gingen mä det dootenbeenk.
Ferlicht as det software ei bi a rä.
Det leetst uunfraag tu\'t dootenbeenk wiar:
<blockquote><code>$1</code></blockquote>
faan det funktsjuun "<code>$2</code>".
Det dootenbeenk swaaret mä "<samp>$3: $4</samp>".',
-'dberrortextcl' => 'Dåt jäif en süntaksfäägel önj e dootebånk-ouffrååch.
-Jü leest dootebånkouffrååch wus „$1“ üt e funksjoon „<tt>$2</tt>“.
-Jü dootebånk mälded jü fäägel: „<tt>$3: $4</tt>“.',
-'laggedslavemode' => "''''Woarschauing:''' Jü wised sid köö uner amstånde ai da leeste beåarbinge önjthüülje.",
-'readonly' => 'Dootebånk späred',
-'enterlockreason' => 'Wees swü gödj än jeew en grün önj, weeram jü dootebånk späred wårde schal än en schåting ouer e duur foon jü späre',
-'readonlytext' => 'Jü dootebånk as forluupi späred for naie önjdreege än änringe. Wees sü gödj än fersäk dåt lääser nuch iinjsen.
-
-Grün foon e späre: $1',
-'missing-article' => 'Di täkst for „$1“ $2 wörd ai önj e dååtenbånk fünen.
-
-Jü sid as möölikerwise tuninte mååged unti ferschääwen wörden.
-
-Wan dåt ai di fål as, hääst dü eewäntuäl en fäägel önj e software fünen. Mäld dåt hål en [[Special:ListUsers/sysop|administrator]] unner nååming foon jü URL.',
-'missingarticle-rev' => '(Färsjoonsnumer: $1)',
-'missingarticle-diff' => '(Ferschääl twasche färsjoone: $1, $2)',
-'readonly_lag' => 'Jü dootebånk wörd automaatisch for schriwtugraawe späred, deerma da ferdiiljde dootebånke (slaves) jam ma di hooddootebånksärwer (master) oufglike koone.',
-'internalerror' => 'Intärn fäägel',
-'internalerror_info' => 'Intärne fäägel: $1',
-'fileappenderrorread' => '"$1" köö wilert dåt baitufäigen ai leesen wårde.',
-'fileappenderror' => 'Köö ai "$1" tu "$2" önjhinge.',
-'filecopyerror' => 'Jü dootäi "$1" köö ai eefter "$2" kopiiird wårde.',
-'filerenameerror' => 'Jü dootäi "$1" köö ai eefter "$2" amnååmd wårde.',
-'filedeleteerror' => 'Jü dootäi "$1" köö ai straagen wårde.',
-'directorycreateerror' => 'Dåt fertiiknis "$1" köö ai mååged wårde.',
-'filenotfound' => 'Köö dootäi "$1" ai fine.',
-'fileexistserror' => 'Ai möölik, eefter dootäi "$1" tu schriwen: dootäi bestoont ål',
-'unexpected' => 'Ünfermousene wjart: "$1"="$2".',
-'formerror' => 'Fäägel: köö jü form ai lääwere',
-'badarticleerror' => 'Jüdeer aksjoon koon ai aw jüdeer sid mååged wårde.',
-'cannotdelete' => 'Jü sid unti dootäi "$1" köö ai straagen wårde.
-Dåt as flicht ål straagen foon huum ouders.',
+'dberrortextcl' => "Bi't uffraagin faan a dootenbeenk as wat skiaf gingen. Det leetst uffraag wiar:
+„$1“
+ütj det funktjuun „$2“.
+At dootebeenk swaaret: „$3: $4“.",
+'laggedslavemode' => "'''Paase üüb:''' Ferlicht wiset detdiar sidj ei a leetst stant.",
+'readonly' => 'Dootenbeenk speret.',
+'enterlockreason' => 'Wees so gud an du en grünj uun, huaram det dootenbeenk speret wurd skal, an hü loong det (amanbi) speret wurd skal.',
+'readonlytext' => "Det dootenbeenk as iarst ans speret för nei iindracher an feranrangen, woorskiinelk, auer diar jüst apredet woort. Ferschük det leeder man noch ans.
+
+Grünj för't sperin: $1",
+'missing-article' => "Di tekst för „$1“ $2 as ei fünjen wurden uun't dootenbeenk.
+
+Ferlicht as det sidj stregen of fersköwen wurden.
+
+Wan't det ei as, do heest dü ferlicht en feeler uun't software fünjen. Wees so gud an skriiw det tu en [[Special:ListUsers/sysop|administraator]] an fertel ham, am hün URL det gongt.",
+'missingarticle-rev' => '(Werjuunsnumer: $1)',
+'missingarticle-diff' => '(Ferskeel tesken $1 an $2)',
+'readonly_lag' => 'Det dootenbeenk as speret wurden, amdat jo ferdiald dootenbeenken (slaves) jo mä di hoodserver (master) ufglik kön.',
+'internalerror' => 'Süsteemfeeler',
+'internalerror_info' => 'Süsteemfeeler: $1',
+'fileappenderrorread' => '"$1" küd ei leesen wurd, auer diar jüst üüb skrewen woort.',
+'fileappenderror' => '"$1" küd ei bi "$2" bihinget wurd.',
+'filecopyerror' => 'Det datei $1 küd ei efter $2 kopiaret wurd.',
+'filerenameerror' => 'Det datei $1 küd ei efter $2 amnäämd wurd.',
+'filedeleteerror' => 'Det datei $1 küd ei stregen wurd.',
+'directorycreateerror' => 'Det fertiaknis "$1" küd ei iinracht wurd.',
+'filenotfound' => 'Det datei $1 küd ei fünjen wurd.',
+'fileexistserror' => 'Uun det datei "$1" küd ei skrewen wurd: Hat as al diar.',
+'unexpected' => 'Mä di wäärs stemet wat ei: "$1"="$2".',
+'formerror' => 'Feeler: Di iindrach küd ei ferwerket wurd.',
+'badarticleerror' => 'Son aktjuun koon üüb detdiar sidj ei föörnimen wurd.',
+'cannotdelete' => 'Det sidj of datei "$1" küd ei stregen wurd.
+Det as ferlicht al faan hoker ööders stregen wurden.',
'cannotdelete-title' => 'Sidj „$1“ koon ei stregen wurd.',
-'delete-hook-aborted' => 'Det striken as faan en software-feranerang faan MediaWiki ferhanert wurden. Di grünj as ei bekäänd.',
-'badtitle' => 'Ferkiirde tiitel',
-'badtitletext' => 'Di tiitel foon jü anfrååged sid as üngülti, lääsi unti n üngültigen spräklink foon en ouder wiki.',
-'perfcached' => 'Jodiar dooten kem faan a cache an san ferlicht ei muar aktuel. Huuchstens {{PLURAL:$1|ian resultoot as|$1 resultooten san}} uun a cache.',
-'perfcachedts' => 'Jodiar dooten kem faan a cache, leetst tooch nei: $1. Huuchstens {{PLURAL:$4|ian resultoot as|$4 resultooten san}} uun a cache.',
-'querypage-no-updates' => "'''Jü aktualisiiringsfunksjoon for jüdeer sid as nütutids deaktiwiird. Da doote wårde tujarst ai fernaierd.'''",
-'wrong_wfQuery_params' => 'Ferkiirde parameetere for wfQuery()<br />
-Funksjoon: $1<br />
-Ouffrååch: $2',
-'viewsource' => 'Kwältäkst önjkiike',
+'delete-hook-aborted' => 'Det striken as faan en software-feranrang faan MediaWiki ferhanert wurden. Di grünj as ei bekäänd.',
+'badtitle' => 'Ferkiard tiitel',
+'badtitletext' => 'Didiar sidjennööm gongt ei. Hi as ferlicht leesag of as en ferkiard ferwisang faan en ööder projekt.',
+'perfcached' => 'Jodiar dooten kem faan a cache an san ferlicht ei muar aktuel. Ei muar üs {{PLURAL:$1|ian resultoot as|$1 resultooten san}} uun a cache.',
+'perfcachedts' => 'Jodiar dooten kem faan a cache, leetst tooch nei: $1. Ei muar üs {{PLURAL:$4|ian resultoot as|$4 resultooten san}} uun a cache.',
+'querypage-no-updates' => 'Dü könst detdiar sidj uun uugenblak ei aktualisiare. A dooten wurd iarst ans ei iinsteld.',
+'wrong_wfQuery_params' => 'Ferkiard dooten för wfQuery()<br />
+Funktjuun: $1<br />
+Uffraag: $2',
+'viewsource' => 'Kweltekst uunluke',
'viewsource-title' => 'Code faan sidj $1 uunluke',
-'actionthrottled' => 'Aksjoonstål limitiird',
-'actionthrottledtext' => 'Dü hääst jüdeer aksjoon tu oofding bane en kort tidrüm ütfjard. Wees sü gödj än täiw en påår minuute än fersäk dåt et dan foon naien.',
+'actionthrottled' => 'Taal faan aktjuunen limitiaret',
+'actionthrottledtext' => 'Dü heest detdiar aktjuun tufölsis uun en kurten tidjrüm ütjfeerd.
+Wees so gud an ferschük det glik noch ans weder.',
'protectedpagetext' => 'Detdiar sidj as seekert wurden, am dat diar näämen wat feranert.',
-'viewsourcetext' => 'Dü koost jü kwäle foon jüdeer sid bekiike än kopiire.',
+'viewsourcetext' => 'Dü könst di kweltekst faan det sidj uunluke an ham uk kopiare:',
'viewyourtext' => "Dü könst di code faan '''din feranrang''' faan detdiar sidj uunluke an kopiare:",
'protectedinterface' => 'Üüb detdiar sidj stäänt tekst för det software faan detheer wiki an as seekert wurden, am dat näämen diar wat feranert.
Dü könst [//translatewiki.net/ translatewiki.net] faan MediaWiki brük, am auersaatangen för ale wiki projekten tu maagin.',
'editinginterface' => "'''Paase üüb:''' Üüb detdiar sidj stäänt tekst, diar faan't MediaWiki software brükt woort. Wan dü diar wat feranerst, feranerst dü di skak faan't Nuurdfresk Wikipedia.
Wan dü wat auersaat wel, maage det mä [//translatewiki.net/ translatewiki.net], det as det MediaWiki lokalisiarangsprojekt.",
-'sqlhidden' => 'SCL-ouffrååg ferstäägen',
-'cascadeprotected' => 'Jüdeer sid as for beårbing spärd. Jü as önj {{PLURAL:$1|e füliende sid|da füliende side}}
-önjbünen, {{PLURAL:$1|jü|da}} madels e kaskaadespäropsjoon önj febading hüüljen {{PLURAL:$1|as|san}}:
+'sqlhidden' => 'SQL-uffraag as ferbürgen',
+'cascadeprotected' => 'Detdiar sidj koon ei bewerket wurd. Hat as uun {{PLURAL:$1|detdiar sidj|jodiar sidjen}}
+iinbünjen, diar auer kaskaadenseekerhaid seekert {{PLURAL:$1|as|san}}:
$2',
-'namespaceprotected' => "Dü hääst niinj beruchtiging, jü sid önj di '''$1'''-noomerüm tu beårben.",
+'namespaceprotected' => "Dü heest ei det brükerrocht, am sidjen uun di nöömrüm '''$1''' tu bewerkin.",
'customcssprotected' => 'Dü mutst detheer CSS sidj ei bewerke, auer det hoker ööders hiart.',
'customjsprotected' => 'Dü mutst detheer JavaScript sidj ei bewerke, auer det hoker ööders hiart.',
-'ns-specialprotected' => 'Spetsjåålside koone ai beårbed wårde.',
-'titleprotected' => 'En sid ma dideer noome koon ai önjläid wårde.
-Jü späre wörd döör [[User:$1|$1]] ma grün "$2" inruchted.',
+'mycustomcssprotected' => 'Dü mutst detdiar CSS-sidj ei bewerke.',
+'mycustomjsprotected' => 'Dü mutst detdiar JavaScript-sidj ei bewerke.',
+'ns-specialprotected' => 'Spezial-sidjen kön ei bewerket wurd.',
+'titleprotected' => 'En sidj mä didiar nööm koon ei uunlaanj wurd.
+Di brüker [[User:$1|$1]] hää det sidj speret, an di grünj as: "\'\'$2\'\'".',
'filereadonlyerror' => 'Det datei „$1“ koon ei feranert wurd, auer uun det fertiaknis „$2“ bluas leesen wurd koon.
Di grünj faan di administraator as: „$3“.',
'invalidtitle-knownnamespace' => 'Ferkiard auerskraft uun di nöömrüm „$2“ an tekst „$3“',
'exception-nologin-text' => 'Det könst dü bluas bewerke, wan dü uunmeldet beest.',
# Virus scanner
-'virus-badscanner' => "Hiinje konfigurasjoon: ünbekånde fiirusscanner: ''$1''",
-'virus-scanfailed' => 'scan fäägelsloin (code $1)',
-'virus-unknownscanner' => 'Ã\9cnbekÃ¥nde fiirusscanner:',
+'virus-badscanner' => "Ferkiard iinstelang: Ünbekäänd wiirenscanner: ''$1''",
+'virus-scanfailed' => 'scan ging skiaf (code $1)',
+'virus-unknownscanner' => 'Ã\9cnbekäänd wiirenscanner:',
# Login and logout pages
-'logouttext' => "'''Dü bast nü oufmälded.'''
+'logouttext' => "'''Dü beest nü ufmeldet.'''
-Dü koost {{SITENAME}} nü anonüüm widerbrüke, unti de wider uner diseelew unti en oudern brükernoome <span class='plainlinks'>[$1 önjmälde]</span>.
-Påås aw, dåt hu side nuch wise koone, dåt dü önjmälded bast, sülung dü ai dan browsercache lääsimååged heest.",
+Dü könst {{SITENAME}} nü anonüüm widjerbrük, of di weder <span class='plainlinks'>[$1 uunmelde]</span>.
+Enkelt sidjen wise ferlicht noch uun, dat dü uunmeldet beest, so loong dü dan browser-cache ei leesag maaget heest.",
'welcomeuser' => 'Welkimen, $1!',
'welcomecreation-msg' => 'Din brükerkonto as iinracht wurden.
Ferjid det ei, an aachte üüb din [[Special:Preferences|{{SITENAME}} iinstelangen]].',
-'yourname' => 'Brükernoome:',
+'yourname' => 'Brükernööm:',
'userlogin-yourname' => 'Brükernööm',
'userlogin-yourname-ph' => 'Du dan Brükernööm iin',
-'yourpassword' => 'Pååsuurd:',
+'yourpassword' => 'Paaswurd:',
'userlogin-yourpassword' => 'Paaswurd',
'userlogin-yourpassword-ph' => 'Paaswurd iindu',
'createacct-yourpassword-ph' => 'Paaswurd iindu',
-'yourpasswordagain' => 'Schriw pååsuurd nuch iinjsen:',
+'yourpasswordagain' => 'Skriiw det paaswurd noch ans weder hen:',
'createacct-yourpasswordagain' => 'Paaswurd gudkään',
'createacct-yourpasswordagain-ph' => 'Du det paaswurd noch ans iin',
-'remembermypassword' => 'Aw diheere komputer foon duur önjmälde (maksimool for $1 {{PLURAL:$1|däi|deege}})',
+'remembermypassword' => 'Üüb diheer reegner üüb düür uunmelde (maksimaal för $1 {{PLURAL:$1|dai|daar}})',
'userlogin-remembermypassword' => 'Uunmeldet bliiw',
-'userlogin-signwithsecure' => 'Auer di seeker server uunmelde',
-'securelogin-stick-https' => 'Eefter önjmälding ma HTTPS ferbünen bliwe',
+'userlogin-signwithsecure' => 'Seeker ferbinjang brük',
+'securelogin-stick-https' => "Efter't uunmeldin auer HTTPS ferbünjen bliiw",
'yourdomainname' => 'Din domain:',
'password-change-forbidden' => 'Üüb detheer wiki könst dü nian paaswurden feranre.',
'externaldberror' => 'Deer läit en fäägel bai jü äkstärn autentifisiiring for, unti dü möist din äkstärn brükerkonto äi aktualisiire.',
-'login' => 'Önjmälde',
-'nav-login-createaccount' => 'Önjmälde',
-'loginprompt' => 'For jü önjmälding monje cookies aktiwiird weese.',
-'userlogin' => 'Önjmälde / brükerkonte mååge',
-'userloginnocreate' => 'Önjmälde',
-'logout' => 'Oufmälde',
-'userlogout' => 'Oufmälde',
-'notloggedin' => 'Ai önjmälded',
-'userlogin-noaccount' => 'Dü heest noch nään brükerkonto ?',
+'login' => 'Uunmelde',
+'nav-login-createaccount' => 'Melde di uun of skriiw di iin',
+'loginprompt' => "För't uunmeldin tu {{SITENAME}} skel bi dan browser cookies aktiwiaret wees.",
+'userlogin' => 'Melde di uun of skriiw di iin',
+'userloginnocreate' => 'Uunmelde',
+'logout' => 'Ufmelde',
+'userlogout' => 'Ufmelde',
+'notloggedin' => 'Ei uunmeldet',
+'userlogin-noaccount' => 'Dü heest noch nian brükerkonto ?',
'userlogin-joinproject' => 'Bi {{SITENAME}} mämaage',
-'nologin' => "Dü hääst niinj brükerkonto? '''$1'''.",
-'nologinlink' => 'Nai brükerkonto inruchte',
-'createaccount' => 'Brükerkonto inruchte',
+'nologin' => 'Dü heest nian brükerkonto? $1.',
+'nologinlink' => 'Nei brükerkonto iinracht',
+'createaccount' => 'Brükerkonto iinracht',
'gotaccount' => "Dü hääst ål en brükerkonto? '''$1'''.",
-'gotaccountlink' => 'Önjmälde',
+'gotaccountlink' => 'Uunmelde',
'userlogin-resetlink' => 'Heest dü din login dooten ferjiden?',
+'userlogin-resetpassword-link' => 'Paaswurd turagsaat',
'helplogin-url' => 'Help:Uunmelde',
'userlogin-helplink' => "[[{{MediaWiki:helplogin-url}}|Halep bi't uunmeldin]]",
'createacct-join' => 'Du oner din dooten iin.',
'createacct-emailrequired' => 'E-mail adres',
'createacct-emailoptional' => 'E-mail adres (optional)',
-'createacct-email-ph' => 'Du din E-mail adres iin',
-'createaccountmail' => 'E-mail tu det adres oner fersjüür mä en tufelag paaswurd',
+'createacct-email-ph' => 'Du din e-mail adres iin',
+'createaccountmail' => 'E-mail tu det adres oner ferschüür mä en tufelag paaswurd',
'createacct-realname' => 'Rocht nööm (optional)',
-'createaccountreason' => 'Grün:',
+'createaccountreason' => 'Grünj:',
'createacct-reason' => 'Grünj',
'createacct-reason-ph' => 'Huaram dü en ööder brükerkonto iinrachtst',
'createacct-captcha' => 'Seekerhaidspreew',
'createacct-benefit-body1' => '{{PLURAL:$1|feranrang|feranrangen}}',
'createacct-benefit-body2' => '{{PLURAL:$1|sidj|sidjen}}',
'createacct-benefit-body3' => 'aktiif {{PLURAL:$1|skriiwer|skriiwern}}',
-'badretype' => 'Da biise pååsuurde stime ai oueriinj.',
+'badretype' => 'Jo tau paaswurden san ei likedenang.',
'userexists' => 'Dideer brükernoome as ål ferjääwen.
Wees sü gödj en kiis en ouderen.',
-'loginerror' => 'Fäägel bai önjmälding',
+'loginerror' => "Bi't uunmeldin as wat skiaf gingen",
'createacct-error' => "Bi't iinrachten faan det brükerkonto as wat skiaf gingen",
-'createaccounterror' => 'Brükerkonto köö ai mååged wårde: $1',
-'nocookiesnew' => 'Di benjütertugung wörd mååged, ouers dü bast ai önjmälded. {{SITENAME}} brükt for jüdeer funksjoon cookies.
-Wees sü gödj än aktiwiir da än mäld de dan ma dan naien benjüternoome än dåt tuhiirend pååsuurd önj.',
-'nocookieslogin' => '{{SITENAME}} benjütet cookies tu e önjmälding foon da benjütere. Dü heest Cookis deaktiwiird.
-Wees sü gödj än aktiwiir da än fersäk dåt wider.',
+'createaccounterror' => 'Brükerkonto küd ei iinracht wurd: $1',
+'nocookiesnew' => 'Det brükerkonto as iinracht wurden, oober dü beest ei uunmeldet.
+{{SITENAME}} brükt cookies för detdiar aktjuun.
+Wees so gud an aktiwiare jo uun dan browser, an do melde di mä dan nei brükernööm an det nei paaswurd uun.',
+'nocookieslogin' => "{{SITENAME}} brükt cookies för't uunmeldin faan brükern.
+Dü heest cookies deaktiwiaret.
+Wees so gud an aktiwiare jo uun dan browser, an do ferschük det noch ans.",
'nocookiesfornew' => 'Det brükerkonto as ei iinracht wurden, auer wi ei witj, huar a dooten faan kem.
Üüb dan kompjuuter skel cookies aktiwiaret wees. Do rep detheer sidj noch ans nei ap.',
-'noname' => 'Dü möist en gültigen brükernooem önjjeewe.',
-'loginsuccesstitle' => 'Önjmälding erfolchrik',
-'loginsuccess' => "'''Dü bast nü ås „$1“ bai {{SITENAME}} önjmälded.'''",
-'nosuchuser' => 'Di brükernoome „$1“ bestoont ai.
-Präiw jü schriwwise (grut-/latjschriwing beåchte) unti [[Special:UserLogin/signup|mäld de ås naie brüker önj]].',
-'nosuchusershort' => 'Deer as nåån brüker ma noome "$1".
-Präiw din ruchtschriwing.',
-'nouserspecified' => 'Dü schäät en brükernoome spesifisiire.',
-'login-userblocked' => 'Dideer brüker as spärd. Niinj ferloof tu önjmälding.',
-'wrongpassword' => 'Ferkiird pååsuurd önjjeewen.
-Wees sü gödje än fersäk dåt nuch iinjsen.',
-'wrongpasswordempty' => 'Deer wörd niinj pååsuurd önjjääwen. Fersäk dåt foon naien.',
-'passwordtooshort' => 'Pååsuurde mönje tu t manst {{PLURAL:$1|1 tiiken|$1 tiikne}} lung weese.',
-'password-name-match' => 'Din pååsuurd mätj ferschääle foon dan brükernoome.',
+'noname' => 'Dü skel en rochten brükernööm uundu.',
+'loginsuccesstitle' => 'Uunmeldin hää loket.',
+'loginsuccess' => "'''Dü beest nü üs „$1“ bi {{SITENAME}} uunmeldet.'''",
+'nosuchuser' => 'Di brükernööm „$1“ jaft at ei. Aachte üüb det skriiwwiis (an uk üüb grat- an letjskriiwang), an do [[Special:UserLogin/signup|melde di nei uun]].',
+'nosuchusershort' => 'Diar as nään brüker mä di nööm "$1".
+Heest dü ham uk rocht skrewen?',
+'nouserspecified' => 'Dü skel en brükernööm uundu.',
+'login-userblocked' => 'Didiar brüker as speret wurden. Hi mut ham ei uunmelde.',
+'wrongpassword' => 'Det paaswurd as ferkiard.
+Wees so gud an ferschük det noch ans.',
+'wrongpasswordempty' => 'Dü heest nian paaswurd iinden.
+Ferschük det man noch ans.',
+'passwordtooshort' => 'Paaswurden skel tumanst {{PLURAL:$1|1 tiaken|$1 tiakens}} lung wees.',
+'password-name-match' => 'Dü könst dan brükernööm ei üs paaswurd nem.',
'password-login-forbidden' => 'Jüdeer brükernoome än paasuurd as ferbin.',
-'mailmypassword' => 'Nai pååsuurd tusiinje',
-'passwordremindertitle' => 'Nai tidwise pååsuurd for {{SITENAME}}',
+'mailmypassword' => 'Schüür mi en nei paaswurd.',
+'passwordremindertitle' => 'Nei tidjwiis paaswurd för {{SITENAME}}',
'passwordremindertext' => 'En brüker (woorskiinelk dü, faan IP adres $1) hää am en nei paaswurd för {{SITENAME}} ($4) fraaget.
En nei paaswurd för di brüker "$2" as maaget wurden an het nü "$3".
Wan dü det würelk so haa wel, do melde di nü uun an feranere det paaswurd. Det nei paaswurd täält för {{PLURAL:$5|ään dai|$5 daar}}.
Wan dü ei salew am en nei paaswurd fraaget heest, do säärst dü di am niks widjer komre. Do könst dü din ual paaswurd widjer brük.',
-'noemail' => 'Deer as niinj E-mail-adräs bekånd for brüker "$1".',
-'noemailcreate' => 'Dü möist en gülti E-mail-adräs önjjeewe',
-'passwordsent' => 'En nai pååsuurd as sånd tu jü E-mail-adräs registriird for "$1".
-Mälde wi önj eefter dü jü füngen heest.',
-'blocked-mailpassword' => 'Jü foon de ferwånde IP-adräs as for dåt änren foon side späred. Am en masbrük tu ferhanern, wórd jü möölikhäid tu dåt önjfråågen foon en nai pååsuurd uk späred.',
-'eauthentsent' => 'En bestääsiings-E-mail wörd önj jü önjjääwen adräs sånd.
-
-Iir en E-mail foon oudere brükere ouer jü E-mail-funksjoon emfångd wårde koon, mötj jü adräs än har wörklike tuhiirihäid tu dåtheer brükerkonto jarst bestääsied wårde. Wees sü gödj än befülie da haanewisinge önj di bestääsiings-E-mail.',
-'throttled-mailpassword' => 'Deer wörd önj da leeste {{PLURAL:$1|stün|$1 stüne}} ål en nai pååsuurd önjfrååged. Am en masbrük foon jüdeer funksjoon tu ferhanren, koon bloot {{PLURAL:$1|iinjsen pro stün|åle $1 stüne}} en nai pååsuurd önjfrååged wårde.',
-'mailerror' => 'Fäägel bai dåt siinjen foon e E-mail: $1',
-'acct_creation_throttle_hit' => 'Besäkere foon jüheer Wiki, da din IP-adräse brüke, heewe önj e leeste däi {{PLURAL:$1|1 brükerkonto|$1 brükerkontos}} mååged, wat jü maksimool tuleet tål önj jüdeer tidperioode as.
-
-Besäkere, da jüheer IP-adräse brüke, koone tutids niinj brükerkonto mör inruchte.',
-'emailauthenticated' => 'Din E-mail-adräs word di $2 am e klook $3 bestääsied.',
-'emailnotauthenticated' => 'Din E-mail-adräs as nuch ai bestääsied. Da füliende E-mail-funksjoone stönje jarst eefter erfolchrike bestääsiing tu ferfäiging.',
-'noemailprefs' => 'Jeew en E-mail-adräs önj da önjstalinge önj, deerma da füliende funksjoone tu ferfäiging stönje.',
-'emailconfirmlink' => 'E-mail-adräs bestääsie (autäntifisiire).',
+'noemail' => 'Diar as nian e-mail adres bekäänd för di brüker "$1".',
+'noemailcreate' => 'Dü skel en rocht e-mail adres uundu.',
+'passwordsent' => 'En nei tidjwiis paaswurd as tu det e-mail-adres faan di brüker "$1" schüürd wurden.
+Melde di diarmä uun, wan dü det füngen heest. Det ual paaswurd blaft iarst ans bestunen.',
+'blocked-mailpassword' => 'Det IP-adres, wat dü brükst, as speret wurden. Am dat diar nian dom tjüch mä maaget woort, as uk det uffraagin faan paaswurden speret wurden.',
+'eauthentsent' => 'Diar as en e-mail tu det uunjiwen adres schüürd wurden.
+
+Iar en e-mail faan ööder brükern auer det e-mail-funktjuun uunnimen wurd koon, skal seeker steld wurd, dat det e-mail-adres uk würelk tu di brüker hiart. Wees so gud an befulge jo uunwisangen uun det e-mail, wat dü jüst füngen heest.',
+'throttled-mailpassword' => 'Diar as uun a leetst {{PLURAL:$1|stünj|$1 stünj}} al ans am en nei paaswurd uunfraaget wurden. Am dat diar nään masbrük mä drewen woort, koon bluas {{PLURAL:$1|iansis per stünj|iansis per $1 stünj}} am en nei paaswurd uunfraaget wurd.',
+'mailerror' => 'Fäägel bai dåt siinjen foon e e-mail: $1',
+'acct_creation_throttle_hit' => 'Beschükern faan detheer wiki mä din IP-adres haa di leetst dai {{PLURAL:$1|1 brükerkonto|$1 brükerkontos}} iinracht. Muar san ei tuläät.
+
+Beschükern mä detdiar IP-adres kön daalang nian brükerkontos muar iinracht.',
+'emailauthenticated' => 'Din e-mail-adres as di $2 am a klook $3 gudkäänd wurden.',
+'emailnotauthenticated' => 'Din e-mail-adres as noch ei gudkäänd. Jodiar e-mail-funktjuunen kön iarst brükt wurd, wan det adres gudkäänd wurden as.',
+'noemailprefs' => 'Du en e-mail-adres uun din iinstelangen iin, amdat dü jodiar funktjuunen brük könst.',
+'emailconfirmlink' => 'E-mail-adres gudkään',
'invalidemailaddress' => 'Jü E-mail adräs wörd ai aksäptiird, ouerdåt jü en üngülti formoot (ewentuäl üngültie tiikne) tu heewen scheent.
Wees sü gödj än jeef en koräkt adräs önj unti mäág dåt fäalj lääsi.',
'cannotchangeemail' => 'E-mail-adresen kön uun detheer wiki ei feranert wurd.',
'emaildisabled' => 'Fann detdiar sidj kön nian E-Mails fersjüürd wurd',
-'accountcreated' => 'Benjüterkonto mååged',
-'accountcreatedtext' => 'Dåt benjüteraccount for $1 as mååged wörden.',
-'createaccount-title' => 'Måågen foon en benjüterkonto for {{SITENAME}}',
-'createaccount-text' => 'Deer wörd for de en benjüterkonto "$2" aw {{SITENAME}} ($4) mååged. Dåt automaatisch generiird pååsuurd for "$2" as "$3".
-Dü schöist de nü önjmälde än dåt pååsuurd änre.
-
-Fåls dåt benjüterkonto üt fersiinj önjläid wörd, koost dü jüdeer tising ignoriire.',
-'usernamehasherror' => 'Benjüternoome mötje niinj rütetiikne önjthüulje',
-'login-throttled' => 'Dü heest tu oofding fersoocht, di önjtumälden.
-Wees sü gödj än täif, bit dü wider ferseechst.',
-'login-abort-generic' => 'Din önjmälding wus ei erfolchrik - Oufbräägen',
-'loginlanguagelabel' => 'Spräke: $1',
-'suspicious-userlogout' => 'Dan Oufmäldönjfrååge wörd ferwaigred, deer ja fermouslik foon en defäkte browser unti en cache-proxy sånd wörd.',
+'accountcreated' => 'Brükerkonto as iinracht wurden',
+'accountcreatedtext' => 'Det brükerkonto för [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) as iinracht wurden.',
+'createaccount-title' => 'En brükerkonto üüb {{SITENAME}} iinracht',
+'createaccount-text' => 'Diar as mä din e-mail adres för di en brükerkonto "$2" üüb {{SITENAME}} ($4) maaget wurden. För "$2" as automaatisk det paaswurd "$3" iinracht wurden.
+Dü skulst di nü uunmelde an det paaswurd anre.
+
+Wan det brükerkonto ütj fersen uunlaanj wurden as, säärst dü niks widjer onernem.',
+'usernamehasherror' => 'Uun brükernöömer mut nian rütjen föörkem.',
+'login-throttled' => 'Dü heest tufölsis fersoocht, di uuntumeldin.
+Wees so gud an teew en uugenblak, iar dü det noch ans ferschükst.',
+'login-abort-generic' => 'Det uunmeldin hää ei loket - Ufbreegen',
+'loginlanguagelabel' => 'Spriak: $1',
+'suspicious-userlogout' => 'Din ufmeldang as ei föörnimen wurden, auer det uunfraag ferlicht faan en uunstakenen browser of faan en cache-proxy kaam.',
# Email sending
'php-mail-error-unknown' => 'Ünbekäänd feeler mä det funktsjuun mail() faan PHP.',
-'user-mail-no-addy' => 'Köö niinj e-mail schake suner e-mail-adres.',
+'user-mail-no-addy' => 'Küd nian e-mail schüür saner e-mail-adres.',
'user-mail-no-body' => 'Dü wulst en e-mail saner tekst wechsjüür.',
# Change password dialog
-'resetpass' => 'Pååsuurd änre',
-'resetpass_announce' => 'Önjmälding ma di ouer E-mail tusånde kode. Am e önjmälding ouftusliten, möist dü en nai pååsuurd kiise.',
-'resetpass_header' => 'Account pååsuurd änre',
-'oldpassword' => 'Üülj pååsuurd:',
-'newpassword' => 'Nai pååsuurd:',
-'retypenew' => 'Tip nai pååsuurd nuch iinjsen:',
-'resetpass_submit' => 'Seet pååsuurd än mäld önj',
-'resetpass_success' => 'Din pååsuurd as ma resultoot änred!
-Nü wårst dü önjmälded...',
-'resetpass_forbidden' => 'Pååsuurde koone ai änred wårde',
-'resetpass-no-info' => 'Dü möist önjmälded weese am ju sid diräkt tu tu gripen.',
-'resetpass-submit-loggedin' => 'Pååsuurd änre',
-'resetpass-submit-cancel' => 'Oufbreege',
-'resetpass-wrong-oldpass' => 'Üngülti tämporäär unti antuäl pååsuurd.
-Möölikerwise heest dü din pååsuurd ål ma erfolch änred heest unti en nai tämporäär pååsuurd beönjdräägen.',
-'resetpass-temp-password' => 'Tidwise pååsuurd:',
+'resetpass' => 'Paaswurd feranre',
+'resetpass_announce' => 'Dü heest di mä di code uunmeldet, di dü per e-mail tuschüürd füngen heest.
+Am det uunmeldin uftuslütjen, skel dü en nei paaswurd iindu.',
+'resetpass_header' => 'Paaswurd feranre',
+'oldpassword' => 'Ual paaswurd:',
+'newpassword' => 'Nei paaswurd:',
+'retypenew' => 'Skriiw det paaswurd noch ans weder hen:',
+'resetpass_submit' => 'Paaswurd saat an uunmelde',
+'resetpass_success' => 'Din paaswurd as feranert wurden!
+Dü woorst nü uunmeldet ...',
+'resetpass_forbidden' => 'Det paaswurd koon ei feranert wurd.',
+'resetpass-no-info' => 'Dü skel di uunmelde, am üüb det sidj tutugripen.',
+'resetpass-submit-loggedin' => 'Paaswurd feranre',
+'resetpass-submit-cancel' => 'Ufbreeg',
+'resetpass-wrong-oldpass' => 'Detdiar paaswurd docht niks.
+Ferlicht heest dü jüst din paaswurd feranert
+of am en nei paaswurd uunfraaget.',
+'resetpass-temp-password' => 'Tidjwiis paaswurd:',
'resetpass-abort-generic' => 'Det paaswurd-anerang as ferhanert wurden.',
# Special:PasswordReset
-'passwordreset' => 'Paasuurd tubääg seete',
-'passwordreset-text' => 'Fal detheer formulaar ütj, am din paaswurd turag tu saaten.',
-'passwordreset-legend' => 'Paasuurd tubääg seete',
-'passwordreset-disabled' => 'Dü koost din paasuurd aw jüdeer wiki ai tubääg seete',
+'passwordreset' => 'Paaswurd turagsaat',
+'passwordreset-text-one' => 'Fal detheer formulaar ütj, am din paaswurd turag tu saaten.',
+'passwordreset-text-many' => '{{PLURAL:$1|Du ian stak faan a dooten iin, am din paaswurd turag tu saaten.}}',
+'passwordreset-legend' => 'Paaswurd turagsaat',
+'passwordreset-disabled' => 'Dü könst din paaswurd uun detdiar wiki ei turagsaat.',
'passwordreset-emaildisabled' => 'E-mail as üüb detheer Wiki ufknipset wurden.',
-'passwordreset-pretext' => '{{PLURAL:$1||Du ian faan jo dooten oner iin}}',
'passwordreset-username' => 'Brükernoome:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Wel dü det e-mail nooracht uunluke?',
'changeemail-cancel' => 'Ufbreeg',
# Edit page toolbar
-'bold_sample' => 'Fåten täkst',
-'bold_tip' => 'Fåten täkst',
-'italic_sample' => 'Kursiiwen täkst',
-'italic_tip' => 'Kursiiwen täkst',
-'link_sample' => 'Link-täkst',
-'link_tip' => 'Intärnen link',
-'extlink_sample' => 'http://www.example.com link-täkst',
-'extlink_tip' => 'Äkstärnen link (http:// beåchte)',
-'headline_sample' => 'Schuchte 2 ouerschraft',
-'headline_tip' => 'Schuchte 2 ouerschraft',
-'nowiki_sample' => 'Ünformatiirden täkst heer önjfäige',
-'nowiki_tip' => 'Ünformatiirden täkst',
-'image_tip' => 'Dååtäilink',
-'media_tip' => 'Meediendååtäi-link',
-'sig_tip' => 'Din signatuur ma tidståmp',
-'hr_tip' => 'Horizontool liinje (spårsoom ferwiinje)',
+'bold_sample' => 'Fäät buksteewen',
+'bold_tip' => 'Fäät buksteewen',
+'italic_sample' => 'Kursiif buksteewen',
+'italic_tip' => 'Kursiif buksteewen',
+'link_sample' => 'Link-tekst',
+'link_tip' => 'Intern ferwisang',
+'extlink_sample' => 'http://www.example.com link-tekst',
+'extlink_tip' => 'Ekstern ferwisang (seenk am http:// prefix)',
+'headline_sample' => 'Auerskraft (grate 2)',
+'headline_tip' => 'Auerskraft (grate 2)',
+'nowiki_sample' => 'Ünformatiaret tekst diar tusaat.',
+'nowiki_tip' => 'Ünformatiaret tekst',
+'image_tip' => 'Iinbünjen datei',
+'media_tip' => 'Meediendatei-link',
+'sig_tip' => 'Din onerskraft mä tidjstempel',
+'hr_tip' => 'Horisontaal streg (ei auerdriiw diarmä)',
# Edit pages
-'summary' => 'Tuhuupefooting:',
-'subject' => 'Bedrååwet:',
-'minoredit' => 'Bloot kleenihäide wörden feränred',
-'watchthis' => 'Kiike eefter jüdeer sid',
+'summary' => 'Tuupfaadet:',
+'subject' => 'Auerskraft:',
+'minoredit' => 'Det as man en letj feranrang',
+'watchthis' => "Detdiar sidj uun't uug behual",
'savearticle' => 'Sidj seekre',
'preview' => 'Iarst ans luke',
'showpreview' => 'Iarst ans luke',
'showlivepreview' => 'Glik uunluke',
'showdiff' => 'Feranrangen wise',
-'anoneditwarning' => "Dü beårbest jüdeer sid ünönjmälded. Wan dü spikerst, wård din aktuäle IP-adräs önj e fesjoonshistoori aptiikned än as deerma for åltens '''ålgemiin''' sichtboor.",
-'anonpreviewwarning' => "''Dü bast ai önjmälded. Bai t spiikern wårt din IP-adräs önj e fersjoonshistoori awtiikned.''",
-'missingsummary' => "'''Haanewising:\"' Dü heest niinj tuhuupefooting önjjääwen.
-Wan dü wider aw \"Sid spiikre\" klikst, wårt din änring suner tuhuupefooting ouernümen.",
-'missingcommenttext' => 'Jeew en tuhuupefooting önj.',
-'missingcommentheader' => "'''PÅÅS AW:''' dü heest niinj keer/ouerschraft önjjääwen.
-Wan dü wider aw \"{{int:savearticle}}\" klakst, wårt din beårbing suner ouerschaft spiikerd.",
-'summary-preview' => 'Forlök foon jü tuhuupfootingssid:',
-'subject-preview' => 'Forkiik foon dåt subjäkt:',
-'blockedtitle' => 'Brüker as späred',
+'anoneditwarning' => "'''Paase üüb:''' Dü bewerkest detdiar sidj anonüüm. Wan dü det seekerst, woort din aktuel IP-adres uun a ferluup aptiakent, an as diarmä '''för arken''' iintusen.",
+'anonpreviewwarning' => '"Dü beest ei uunmeldet. Bi\'t seekrin woort din IP-adres uun a ferluup faan werjuunen aptiakent."',
+'missingsummary' => "'''Paase üüb:''' Dü heest det ei tuupfaadet.
+Wan dü det sidj seekerst, woort det saner en kurtfaadet beskriiwang auernimen.",
+'missingcommenttext' => 'Faade det oner tuup.',
+'missingcommentheader' => "'''Paase üüb:''' Dü heest nian auerskraft uunden.
+Wan dü det sidj seekerst, woort det saner auerskraft auernimen.",
+'summary-preview' => 'Föörskau faan det tuupfaadang:',
+'subject-preview' => 'Föörskau faan det auerskraft:',
+'blockedtitle' => 'Brüker as speret',
'blockedtext' => "'''Dan brükernööm of IP adres as speret wurden.'''
Det as maaget wurden faan $1.
Uugenblakelk as din IP addres $3, an det sper ID as #$5.
För arke uunfraag wurd aal jo informatsjuunen boowen brükt.",
-'blockednoreason' => 'niinj grün önjjääwen',
-'whitelistedittext' => 'Dü möist de $1, am side beårbe tu koonen.',
-'confirmedittext' => 'Dü möist din E-mail-adräs jarst bestääsie, iir dü beårbinge döörfääre koost. Mååg din årbe radi än bestääsie din E-mail önj da [[Special:Preferences|önjstalinge]].',
-'nosuchsectiontitle' => 'Stuk ai fünen',
-'nosuchsectiontext' => 'Dü fersoochst en stuk tu änren, dåt dåt ai jeeft.
-Dåt koon ferschääwen unti wächhååld weese, wilt dü jü sid bekiikedest.',
-'loginreqtitle' => 'Önjmälden nüsi.',
-'loginreqlink' => 'Önjmälde',
-'loginreqpagetext' => 'Dü möist $1 am oudere side tu bekiiken.',
-'accmailtitle' => 'Pååsuurd sånd.',
-'accmailtext' => "En tufäli generiird pååsuurd for [[User talk:$1|$1]] wörd tu $2 fersånd.
-
-Dåt pååsuurd for jüdeer nai benjüterkonto koon aw e spetsjoolsid ''[[Special:ChangePassword|Pååsuurd änre]]'' änred wårde.",
-'newarticle' => '(Nai)',
-'newarticletext' => "Dü bast en link tu en sid fülied, jü nuch ai bestoont.
-Am jü sid tu måågen, dreeg dan täkst önj e unerstönjene box in (sii jü
-[[{{MediaWiki:Helppage}}|heelpsid]] for mör informasjoon).
-Bast üt fersiien heer, klik di '''tubääg'''-klänkfläche foon dan browser.",
+'blockednoreason' => 'nään grünj uunden',
+'whitelistedittext' => 'Dü skel di $1, am sidjen tu bewerkin.',
+'confirmedittext' => 'Dü skel iarst din e-mail-adres gudkään, iar dü began könst tu werkin. Maage det üüb det sidj mä din persöönelk [[Special:Preferences|iinstelangen]].',
+'nosuchsectiontitle' => 'Kirew ei fünjen',
+'nosuchsectiontext' => "Dü wulst en kirew feranre, diar't goorei jaft.
+Ferlicht as det stregen of fersköwen wurden, jüst üs dü det sidj bewerke wulst.",
+'loginreqtitle' => 'Dü skel di uunmelde.',
+'loginreqlink' => 'Uunmelde',
+'loginreqpagetext' => 'Dü skel di $1, am ööder sidjen uuntulukin.',
+'accmailtitle' => 'Paaswurd as ferschüürd wurden.',
+'accmailtext' => "En tufelag iinracht paaswurd för [[User talk:$1|$1]] as tu $2 ferschüürd wurden.
+
+Det paaswurd för det nei brükerkonto koon üüb det spezial-sidj ''[[Special:ChangePassword|Paaswurd anre]]'' feranert wurd.",
+'newarticle' => '(Nei)',
+'newarticletext' => "Dü beest en ferwisang tu en sidj fulagt, diar't noch ei jaft.
+Am det sidj iinturachten, skriiw dan tekst uun det fial för't bewerkin iin.
+Üüb det [[{{MediaWiki:Helppage}}|halepsidj]] fanjst dü halep.
+Wan dü ütj fersen heer beest, trak ianfach üüb di '''turag'''-knoop faan dan browser.",
'anontalkpagetext' => "----''Üüb detheer sidj könst dü en ünbekäänden brüker en nooracht du. Det lääpt auer sin IP adres. IP adresen kön faan flook brükern brükt wurd. Wan dü mä detheer nooracht niks began könst, do as det ferlicht för hoker ööders mend weesen. Dü säärst niks widjer onernem. Wan dü en aanj [[Special:UserLogin/signup|brükerkonto iinrachst]] of di [[Special:UserLogin|uunmeldest]], komt sowat ei weder föör.",
-'noarticletext' => 'Jüdeer sid önjhålt uugenblaklik nuch nån täkst.
-Dü koost dideere tiitel aw da ouder side [[Special:Search/{{PAGENAME}}|säke]],
-<span class="plainlinks">önj da deertuhiirende [{{fullurl:{{#special:Log}}|page={{FULLPAGENAMEE}}}} logböke säke] unti jüdeer sid [{{fullurl:{{FULLPAGENAME}}|action=edit}} beårbe]</span>.',
+'noarticletext' => 'Üüb detdiar sidj stäänt noch niks.
+Dü könst didiar tiitel üüb ööder sidjen [[Special:Search/{{PAGENAME}}|schük]],
+<span class="plainlinks">uun [{{fullurl:{{#special:Log}}|page={{FULLPAGENAMEE}}}} logbuken schük] of detdiar sidj [{{fullurl:{{FULLPAGENAME}}|action=edit}} bewerke]</span>.',
'noarticletext-nopermission' => 'Üüb detdiar sidj stäänt noch niks, oober dü mutst diar uk niks iinskriiw.
-Dü könst diar üüb ööder sidjen efter [[Special:Search/{{PAGENAME}}|sjük]] of a <span class="plainlinks">[{{fullurl:{{#special:Log}}|page={{FULLPAGENAME}}}} logbuken uunluke].</span>',
+Dü könst diar üüb ööder sidjen efter [[Special:Search/{{PAGENAME}}|schük]] of a <span class="plainlinks">[{{fullurl:{{#special:Log}}|page={{FULLPAGENAME}}}} logbuken uunluke].</span>',
'missing-revision' => 'Det werjuun #$1 faan det sidj "{{PAGENAME}}" jaft at ei.
Det komt diar miast faan, dat en ual ferwisang stregen wurden as.
Dü könst det uun\'t [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} logbuk faan stregen sidjen] efterlees.',
'userpage-userdoesnotexist' => "Det brükerkonto ''$1'' as ei diar.
Wel dü detdiar sidj würelk maage/bewerke?",
-'userpage-userdoesnotexist-view' => 'Benjüterkonto "$1" bestoont ai.',
-'blocked-notice-logextract' => 'Dideer benjüter as tutids spärd.
-For informasjoon füliet di leeste üttooch üt dåt benjüterspär-logbök:',
+'userpage-userdoesnotexist-view' => 'Son brükerkonto "$1" jaft at ei.',
+'blocked-notice-logextract' => "Didiar brüker as speret. Det stäänt uun't sper-logbuk:",
'clearyourcache' => "'''Beaachte:''' Maage di cache faan dan browser leesag, wan dü a feranrangen sä wel.
* '''Firefox / Safari:''' Hual ''Shift'' bi't aktualisiarin, of trak ''Strg an F5'' of ''Strg an R'' (''⌘an R'' üüb en Mac)
* '''Google Chrome:''' Trak ''Strg an Shift an R'' (''⌘an Shift an R'' üüb en Mac)
* '''Internet Explorer:''' Hual ''Strg'' bi't aktualisiarin, of trak ''Strg an F5''
* '''Opera:''' ''Extras - Internetspuren löschen - Individuelle Auswahl - Den kompletten Cache löschen''",
-'usercssyoucanpreview' => "'''Tip:''' Brük di „{{int:showpreview}}“-knoop, am din nai CSS for dåt spiikern tu tästen.",
-'userjsyoucanpreview' => "'''Tip:''' Brük di „{{int:showpreview}}“-knoop, am din nai JavaScript for dåt spiikern tu tästen.",
-'usercsspreview' => "'''Påås aw dåt dü bloot din brüker CSS forbekiikest.'''
-'''Dåt as nuch ai spiikerd!'''",
-'userjspreview' => "'''Påås aw dåt dü bloot din brüker JavaScript präiwest/forbekiikest.'''
-'''Dåt as nuch ai spiikerd!'''",
+'usercssyoucanpreview' => "'''Tip:''' Brük di „{{int:showpreview}}“-knoop, am din nei CSS föör det seekrin tu testin.",
+'userjsyoucanpreview' => "'''Tip:''' Brük di „{{int:showpreview}}“-knoop, am din nei JavaScript föör det seekrin tu testin.",
+'usercsspreview' => "'''Seenk diaram, dat det bluas en föörskau faan din CSS as.'''
+'''Det as noch ei seekert wurden!'''",
+'userjspreview' => "'''Seenk diaram, dat det bluas en föörskau faan din JavaScript as.'''
+'''Det as noch ei seekert wurden!'''",
'sitecsspreview' => "'''Påås aw dåt dü jüdeer CSS bloot forbekiikest.'''
'''Dåt as nuch ai spiikerd!'''",
'sitejspreview' => "'''Påås aw dåt dü jüdeer JavaScript code bloot forbekiikest.'''
'''Dåt as nuch ai spiikerd!'''",
-'userinvalidcssjstitle' => "''Woorschauing:''' Skin \"\$1\"jeeft dåt ai. Betånk, dåt brükerspetsiifische .css- än .js-side ma en latj bökstääw önjfånge mönje, ålsü biispelswise ''{{ns:user}}:Münsterkjarl/vector.css'' önj stää foon ''{{ns:user}}:Münsterkjarl/Vector.css''.",
-'updated' => '(Änred)',
-'note' => "'''Påås aw:'''",
+'userinvalidcssjstitle' => "''Paase üüb:''' Skak \"\$1\" jaft at ei.
+Seenk diaram, dat faan en brüker iinracht .css- an .js-sidjen mä en letjen buksteew began skel. Bispal:
+''{{ns:user}}:Münsterkjarl/vector.css'' uunsteed faan ''{{ns:user}}:Münsterkjarl/Vector.css''.",
+'updated' => '(Feranert)',
+'note' => "'''Paase üüb:'''",
'previewnote' => "'''Heer könst dü sä, hü det sidj wurd skal.'''
Det sidj as oober noch ei seekert!",
'continue-editing' => "Gung tu't fial för't bewerkin",
-'previewconflict' => 'Dideer forbekiik jeeft di inhålt foon dåt boowerst takstfälj wider. Sü wårt jü sid ütsiinj, wan dü nü spiikerst.',
+'previewconflict' => 'Detdiar föörskau wiset di boowenst dial faan dan tekst. So schocht hi ütj, wan dü ham nü seekerst.',
'session_fail_preview' => "'''Din werk küd ei ufseekert wurd, diar as wat skiaf gingen.'''
Fersjük det man noch ans an trak do üüb ''Sid spiikre''.
Wan't do imer noch ei loket, [[Special:UserLogout|melde di uf]] an weder uun.",
Det komt flooksis föör, wan Dan anonym Proxy-siinst ei rocht werket.",
'edit_form_incomplete' => "'''Enkelt dialen faan det formulaar san ei rocht uunkimen.'''
Wees so gud an kontroliare ales noch ans.",
-'editing' => 'Beårbe foon $1',
+'editing' => 'Bewerkin faan $1',
'creating' => 'Maage $1',
-'editingsection' => 'Beårben foon $1 (oufsnaas)',
-'editingcomment' => 'Beårben foon $1 (naien oufsnaas)',
-'editconflict' => 'Beårbingskonflikt: $1',
+'editingsection' => 'Bewerke $1 (kirew)',
+'editingcomment' => 'Bewerke $1 (nei kirew)',
+'editconflict' => "Konflikt bi't bewerkin (BK): $1",
'explainconflict' => "Hoker ööders hää detheer sidj feranert, üs dü jüst diarmä uun a gang wiarst.
Boowen könst dü di aktuel stant sä. Oner stun din fernanrangen.
Bluas wat '''boowen''' stäänt, woort seekert. Diaram kopiare din feranrangen boowen iin.
An do trak „{{int:savearticle}}“.",
-'yourtext' => 'Din täkst',
-'storedversion' => 'Spiikerd färsjoon',
-'nonunicodebrowser' => "'''Påås aw:''' Dan browser koon unicode-tiikne ai rucht ferårbe. Brük hål en oudern browser am side tu ferårben.",
-'editingold' => "'''PÅÅS AW: Dü beårbest en üülj färsjoon foon jüdeer sid. \"
-Wan dü spiikerst, wårde åle naiere färsjoone ouerschraawen.",
-'yourdiff' => 'Ferschääle',
-'copyrightwarning' => "''' Hål kopiir niinj webside, da ai din äine san, brük niinj uurhääwerruchtlik schütsede wärke suner ferloof foon di uurhääwer!'''<br />
-Dü jeefst üs heerma dan tusååge, dåt dü di täkst '''seelew ferfooted''' hääst, dåt di täkst ålgemiingödj '''(public domain)''' as, unti dåt di '''uurhääwer''' sin '''tustiming''' jääwen heet. For di fål jüdeer täkst ål ouersweer ütdänj wörd, wis hål aw jü diskusjoonssid deeraw haane. <i>Beåcht hål, dåt åle {{SITENAME}}-tujeefte automaatisch uner jü „$2“ stönje (sii $1 for detaile). For di fål dü ai mååst, dåt diin årbe heer foon oudere feränred än språåt wårt, dan kröög ai aw „sid spikre“.</i>",
+'yourtext' => 'Dan tekst',
+'storedversion' => 'Seekert werjuun',
+'nonunicodebrowser' => "'''Paase üüb:''' Dan browser komt ei mä unicode-tiakens turocht. Wees so gud an brük en öödern browser.",
+'editingold' => "'''Paase üüb: Dü bewerkest en ual werjuun faan detdiar sidj.
+Wan dü det seekerst, wurd aal a nei werjuunen auerskrewen.'''",
+'yourdiff' => 'Ferskeeler',
+'copyrightwarning' => "Seenk diaram, dat bidracher tu {{SITENAME}} oner det \$1 ütjden wurd (muar stäänt bi \$2).
+Wan dü ei wel, dat öödern dan bidrach widjer bewerke, do trak ei üüb \"Seekre\".<br />
+Dü ferspräächst, dat dü di tekst salew skrewen heest of dat diar nian kopiarrochten üüb lei.
+'''Dü mutst nian werk mä kopiarrochten saner ferloof heer iinstel!'''",
'copyrightwarning2' => "Seenk diaram, dat det sidj {{SITENAME}} faan öödern bewerket, feranert of uk stregen wurd koon. Wan dü det ei wel, do skriiw heer niks iin!
Wan dü heer wat iinskrafst, do beest dü diarmä iinferstenen an seekerst tu, dat dü det '''salew skrewen''' heest of faan en steed auernimen heest, huar '''nian rochten''' üüb lei. (Luke bi $1, wan dü muar wed wel.)
'''Auerdreeg nään frääm teksten an bilen saner ferloof!'''",
'longpageerror' => "'''Error: Dan tekst as {{PLURAL:$1|ian kilobyte|$1 kilobytes}} lung, hi mut oober ei linger wees üs {{PLURAL:$2|ian kilobyte|$2 kilobytes}}.'''Hi koon ei ufspiikerd wurd.",
-'readonlywarning' => "'''PÅÅS AW: Jü dootenbånk wörd for unerhult spärd, sü dåt din änringe tutids ai spiikerd wårde koone.
-Wees sü gödj än sääkre di täkst lokool aw din kompjuuter än fersäk tun lääsern tidpunkt, da änringe tu ouerdreegen.'''.
+'readonlywarning' => "'''Paase üüb: Dü könst uun uugenblak ei üüb det dootenbeenk tugrip. Din dooten kön ei seekert wurd.''' Wees so gud an seekre dan tekst iarst ans üüb dan reegner, an ferschük leederhen, ham tu auerdreegen.
-Grün for jü späre: $1",
+Grünj för det sperin: $1",
'protectedpagewarning' => "'''Paase üüb: Detdiar sidj as speret wurden. Bluas administratooren kön det bewerke.'''
Uun't logbuk stäänt muar diartu:",
'semiprotectedpagewarning' => "'''Paase üüb: Detdiar sidj as dialwiis tu't bewerkin speret wurden. Bluas gudkäänd brükern kön det bewerke.'''
'cascadeprotectedwarning' => "'''Paase üüb:''' Detdiar sidj koon bluas faan administratooren bewerket wurd. Hat as uun {{PLURAL:$1|detdiar ööder sidj|jodiar ööder sidjen}} iinbünjen, diar troch en kaskaaden-optsjuun seekert {{PLURAL:$1|as|san}}:",
'titleprotectedwarning' => "'''Paase üüb: \"Detdiar sidj mä didiar nööm koon ei faan arken bewerket wurd. Bluas enkelt brükern mä [[Special:ListGroupRights|was brükerrochten]] kön detdiar sidj nei maage of bewerke.'''
Uun't logbuk stäänt muar diartu:",
-'templatesused' => '{{PLURAL:$1|Jü füliend forlååg wårt|Da füliende forlååge wårde}} foon jüdeer sid ferwånd:',
-'templatesusedpreview' => '{{PLURAL:$1|Jü füliend forlååg wårt|Da füliende forlååge wårde}} foon diheere sideforlök ferwånd:',
-'templatesusedsection' => '{{PLURAL:$1|Jü füliend forlååg wårt|Da füliende forlååge wårde}} foon dideer oufsnaas ferwånd:',
+'templatesused' => '{{PLURAL:$1|Detdiar föörlaag woort|Jodiar föörlaagen wurd}} üüb detdiar sidj brükt:',
+'templatesusedpreview' => '{{PLURAL:$1|Detdiar föörlaag woort|Jodiar föörlaagen wurd}} uun detdiar sidjenföörskau brükt:',
+'templatesusedsection' => '{{PLURAL:$1|Detdiar föörlaag woort|Jodiar föörlaagen wurd}} uun didiar kirew brükt:',
'template-protected' => '(seekert)',
'template-semiprotected' => '(hualew-seekert)',
-'hiddencategories' => 'Jüdeer sid as lasmoot foon {{PLURAL:$1|1 ferstäägen kategorii|$1 ferstäägene kategoriie}}:',
-'nocreatetext' => 'Aw {{SITENAME}} wörd dåt måågen foon naie side begränsed.
-Dü koost bestönjene side änre unti de [[Special:UserLogin|önjmälde unti mååg en account]].',
-'nocreate-loggedin' => 'Dü heest niinj beruchtiging, naie side tu måågen.',
-'sectioneditnotsupported-title' => 'Jü beårbing foon oufsnaase wårt ai unerstüted',
-'sectioneditnotsupported-text' => 'Jü beårbing foon oufsnaase wårt aw jüdeer beårbingssid ai stiped.',
-'permissionserrors' => 'Beruchtigingsfäägel',
-'permissionserrorstext' => 'Dü bast ai beruchted, jü aksjoon üttufäären. {{PLURAL:$1|grün|grüne}}:',
+'hiddencategories' => 'Detdiar sidj hiart tu {{PLURAL:$1|1 ferbürgen kategorii|$1 ferbürgen kategoriin}}:',
+'nocreatetext' => 'Üüb {{SITENAME}} könst dü nian nei sidjen maage, oober dü könst sidjen feranre. [[Special:UserLogin|Melde di uun of racht en brükerkonto iin]].',
+'nocreate-loggedin' => 'Dü mutst nian nei sidjen maage.',
+'sectioneditnotsupported-title' => 'Det bewerkin faan enkelt kirwer as ei mögelk.',
+'sectioneditnotsupported-text' => 'Det bewerkin faan enkelt kirwer gongt üüb detdiar sidj ei.',
+'permissionserrors' => 'Brükerrochten ling ei',
+'permissionserrorstext' => 'Dü heest diar ei a brükerrochten för. {{PLURAL:$1|Grünj|Grünjer}}:',
'permissionserrorstext-withaction' => 'Dü heest ei det rocht, $2.
{{PLURAL:$1|Grünj|Grünjer}}:',
'recreate-moveddeleted-warn' => "'''Paase üüb: Dü wel en artiikel maage, diar iar al ans stregen wurden as.'''
Auerlei di det gud, amdat dü niks ferkiard maagest.
Uun't logbuk stäänt muar diartu:",
-'moveddeleted-notice' => 'Jüheer sid wörd sleeked. Deer füliet en üttooch üt dåt sleek- än ferschüwingslogbök for jüheer sid.',
-'log-fulllog' => 'Åle logbük-önjdrååge önjkiike',
-'edit-hook-aborted' => 'Jü beårbing wörd suner ferklååring döör en snaasstää oufbräägen.',
-'edit-gone-missing' => 'Jü sid köö ai aktualisiird wårde.
-Jü wörd önjscheened sleeked.',
-'edit-conflict' => 'Beårbingskonflikt.',
-'edit-no-change' => 'Din beårbing wörd ignoriird, deer niinj änring an e täkst fornümen wörd.',
-'edit-already-exists' => 'Köö niinj nai sid mååge.
-Dåt bestöö ål.',
+'moveddeleted-notice' => "Detdiar sidj as stregen wurden.
+Uun't strik- an fersküüw-logbuk oner stäänt muar diartu.",
+'log-fulllog' => 'Logbuk-iindracher uunluke',
+'edit-hook-aborted' => "Det bewerkin as faan't software ufbreegen wurden. Di grünj as ei bekäänd.",
+'edit-gone-missing' => 'Detdiar sidj küd ei aktualisiaret wurd. Ferlicht as det stregen wurden.',
+'edit-conflict' => "Konflikt bi't bewerkin (BK).",
+'edit-no-change' => 'Din feranrang woort ei seekert, auer dü di tekst ei feranert heest.',
+'postedit-confirmation' => 'Din feranrang as seekert wurden.',
+'edit-already-exists' => 'Det nei sidj küd ei iinracht wurd. Son sidj as al diar.',
'defaultmessagetext' => 'Standard tekst',
'content-failed-to-parse' => "Parsing faan $2 för't model $1 ging skiaf: $3",
'invalid-content-data' => 'Diar stäänt wat uun, wat diar ei hen hiart',
'content-model-css' => 'CSS',
# Parser/template warnings
-'expensive-parserfunction-warning' => 'Woorschauing: Jüdeer sid önjthålt tu fool apteele foon widluftie parserfunksjoone.
-
-Deer {{PLURAL:$2|mötj ai mör ås 1 apteel|mönje ai mör ås $1 apteele}} weese.',
-'expensive-parserfunction-category' => 'Side, da widluftie parserfunksjoone tu oofding apteele',
-'post-expand-template-inclusion-warning' => "'''Woorschauing:''' Jü grutelse foon da önjbünene forlååge as tu grut, hu forlååge koone ai önjbünen wårde.",
-'post-expand-template-inclusion-category' => 'Side, önj da jü maksimoole grutelse foon önjbünene forlååge ouerschran as',
-'post-expand-template-argument-warning' => 'Påås aw: Jüdeer sid enthålt tumanst en argumänt önj en forlååge, dåt äkspandiird tu grut as. Dadeere argumänte wårde ignoriird.',
-'post-expand-template-argument-category' => 'Side, da ignoriirde forlååge-argumänte önjthüülje',
-'parser-template-loop-warning' => 'Forlåågesloif önjtdäkt: [[$1]]',
-'parser-template-recursion-depth-warning' => 'Forloagerekursjoonsdiipgränse ouerschran ($1)',
-'language-converter-depth-warning' => 'Spräkekonwärsjoonsdiipdegränse ouerschren ($1)',
+'expensive-parserfunction-warning' => "'''Paase üüb:''' Detdiar sidj brükt tuföl widjloftag server-funktjuunen.
+
+Diar mut ei muar üs {{PLURAL:$2|1|$2}} brükt wurd. Nü {{PLURAL:$1|woort diar 1|wurd diar $1}} brükt.",
+'expensive-parserfunction-category' => 'Sidjen mä tuföl parser-funktjuunen.',
+'post-expand-template-inclusion-warning' => "'''Paase üüb:''' Enkelt föörlaagen san tu grat, jo kön ei uun det sidj iinbünjen wurd.",
+'post-expand-template-inclusion-category' => 'Sidjen mä muar üs det maksimaal taal faan iinbünjen föörlaagen.',
+'post-expand-template-argument-warning' => "'''Paase üüb:''' Üüb detdiar sidj stäänt tumanst ään iindrach för en föörlaag, diar tu grat as. Sok iindracher wurd ei ferwerket.",
+'post-expand-template-argument-category' => 'Sidjen mä föörlaagen, huar ei arke iindrach brükt wurd koon.',
+'parser-template-loop-warning' => 'Diar as en föörlaagensleuf: [[$1]]',
+'parser-template-recursion-depth-warning' => 'Tuföl föörlaagen uun föörlaagen ($1)',
+'language-converter-depth-warning' => 'Spriakenkonwerter auerläästet ($1)',
'node-count-exceeded-category' => 'Jodiar sidjen haa tuföl ferbinjangen (nodes)',
'node-count-exceeded-warning' => 'Detdiar sidj hää tuföl ferbinjangen (nodes)',
'expansion-depth-exceeded-category' => 'Jodiar sidjen haa tuföl ütjwidjangen (expansion)',
# "Undo" feature
'undo-success' => 'Detdiar feranrang koon turag nimen wurd.
Luke oner, of dü det uk würelk du wel, an do seekre din feranrangen.',
-'undo-failure' => 'Jü änring köö ai tunintemååged wårde, deer di bedrååwede oufsnaas intwasche feränred wörd.',
-'undo-norev' => 'Jü beårbing köö ai tunintemååged wårde, deer jü ai bestoont unti sleeked wörd.',
-'undo-summary' => 'Änring $1 foon [[Special:Contributions/$2|$2]] ([[User talk:$2|Diskusjoon]]) tunintemååged.',
+'undo-failure' => 'Det feranrang küd ei stregen wurd, auer di kirew uuntesken feranert wurden as.',
+'undo-norev' => 'Det feranrang küd ei turagsaat wurd, auer diar niks as of auer det sidj stregen wurden as.',
+'undo-summary' => 'Feranrang $1 faan [[Special:Contributions/$2|$2]] ([[User talk:$2|Diskusjuun]]) turagsaat.',
# Account creation failure
-'cantcreateaccounttitle' => 'Benjüterkonto köö ai mååged wårde',
-'cantcreateaccount-text' => "Dår måågen foon en brükerkonto foon jü IP-adräs '''($1)''' üt wörd döör [[User:$3|$3]] späred.
+'cantcreateaccounttitle' => 'Det brükerkonto koon ei iinracht wurd',
+'cantcreateaccount-text' => "Det iinrachten faan en brükerkonto faan det IP-adres '''($1)''' as faan [[User:$3|$3]] speret wurden.
-Grün foon jü späre: ''$2''",
+Grünj för det sper: ''$2''",
# History pages
-'viewpagelogs' => 'Logböke for jüdeer sid wise',
-'nohistory' => 'Deer as niinj beårbingshistoori for jüdeer sid.',
-'currentrev' => 'Aktäle färsjoon.',
-'currentrev-asof' => 'Aktuäl färsjoon foon $2 am e klook $3',
-'revisionasof' => 'Färsjoon foon e klook $2, $3',
-'revision-info' => 'Färsjoon foon di $4 am e klook $5 foon $2',
-'previousrevision' => '← Näistålere färsjoon',
-'nextrevision' => 'Näistjunger färsjoon →',
-'currentrevisionlink' => 'Aktuäle färsjoon',
-'cur' => 'aktuäl',
-'next' => 'näist',
-'last' => 'leest',
+'viewpagelogs' => 'Logbuken faan detdiar sidj uunwise',
+'nohistory' => 'Detdiar sidj hää nään ferluup faan werjuunen.',
+'currentrev' => 'Leetst werjuun',
+'currentrev-asof' => 'Leetst werjuun faan di $2, am a klook $3',
+'revisionasof' => 'Werjuun faan $2, klook $3',
+'revision-info' => 'Werjuun faan di $4 am a klook $5 faan $2',
+'previousrevision' => '← Naistääler werjuun',
+'nextrevision' => 'Naistjonger werjuun →',
+'currentrevisionlink' => 'Leetst werjuun',
+'cur' => 'Aktuel',
+'next' => 'Naist',
+'last' => 'Leetst',
'page_first' => 'Began',
-'page_last' => 'Iinje',
-'histlegend' => 'Tu wising foon da änringe iinjfåch da tu ferglikene Färsjoone ütwääle än di klänkfläche „{{int:compareselectedversions}}“ klikke.<br />
-* (Aktuäl) = unerschiis tu e aktuäle färsjoon, (Leeste) = unerschiis tu e leeste färsjoon
-* Klook/dootem = färsjoon tu jüdeer tid, brükernoome/IP-adräs foon di beårber, L = latje änring.',
-'history-fieldset-title' => 'Säk önj e färsjoonshistoori',
-'history-show-deleted' => 'bloot straagene färsjoone',
-'histfirst' => 'Ålste',
-'histlast' => 'Naiste',
-'historysize' => '({{PLURAL:$1|1 Byte|$1 Bytes}})',
-'historyempty' => '(lääsi)',
+'page_last' => 'Aanj',
+'histlegend' => "Am a feranrangen uuntuwisin, schük tau werjuunen ütj an trak üüb „{{int:compareselectedversions}}“.<br />
+* '''({{int:cur}})''' = ferskeel tu't aktuel werjuun, '''({{int:last}})''' = ferskeel tu't leetst werjuun, '''{{int:minoreditletter}}''' = letj feranrang.",
+'history-fieldset-title' => 'Schük uun a ferluup',
+'history-show-deleted' => 'Bluas stregen werjuunen',
+'histfirst' => 'Äälst',
+'histlast' => 'Neist',
+'historysize' => '({{PLURAL:$1|1 byte|$1 bytes}})',
+'historyempty' => '(leesag)',
# Revision feed
-'history-feed-title' => 'Färsjoonshistoori',
-'history-feed-description' => 'Färsjoonshistoori for jüdeer sid önj {{SITENAME}}',
-'history-feed-item-nocomment' => '$1 bit $2',
-'history-feed-empty' => 'Jü önjfordied sid bestoont ai. Flicht wörd jü sleeked unti ferschääwen. [[Special:Search|Döörsäk]] {{SITENAME}} aw pååsende naie side.',
+'history-feed-title' => 'Ferluup faan werjuunen',
+'history-feed-description' => 'Ferluup faan werjuunen faan detdiar sidj uun {{SITENAME}}',
+'history-feed-item-nocomment' => '$1 di $3 am a klook $4',
+'history-feed-empty' => 'Son sidj jaft at ei. Ferlicht as det stregen of fersköwen wurden. [[Special:Search|Schük]] üüb {{SITENAME}} efter nei sidjen, diar diartu paase.',
# Revision deletion
-'rev-deleted-comment' => '(Tuhuupefooting wächnümen)',
-'rev-deleted-user' => '(Brükernoome wächhååld)',
-'rev-deleted-event' => '(Logbökaksjoon wächhååld)',
-'rev-deleted-user-contribs' => '[Benjüternoome unti IP-adräs wächhååld - beårbing üt baidråge ferstäägen]',
-'rev-deleted-text-permission' => "Judeer Färsjoon wörd '''straagen'''.
-Näre önjgoowen tu di strikforgung ås uk en begrüning fant huum önj dåt [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbök].",
-'rev-deleted-text-unhide' => "Jüdeer färsjoon as '''straagen''' wörden.
-Ainkelthäide fant huum önj dåt [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbök].
-Dü koost nuch [$1 jüdeer färsjoon bekiike], wan dü wider gunge mååst.",
-'rev-suppressed-text-unhide' => "Jüdeer färsjoon as '''unerdrükt''' wörden.
-Ainkelthäide fant huum önj dåt [{{fullurl:{{#special:Log}}/suppress|page={{FULLPAGENAMEE}}}} strik-logbök].
-Dü koost nuch [$1 jüdeer färsjoon bekiike], wan dü wider gunge mååst.",
-'rev-deleted-text-view' => "Jüdeer Färsjoon as '''straagen''' wörden.
-Dü koost da wider önjkiike. Näre önjgoowen tu di sleekforgung ås uk en begrüning fant huum önj dåt [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbök].",
-'rev-suppressed-text-view' => "Jüdeer färsjoon as '''unerdrükd''' wörden.
-Dü koost da önjkiike. Ainkelthäide stönje önj dåt [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} unerdrukings-logbök].",
-'rev-deleted-no-diff' => "Dü koost jüdeer ferschääl ai bekiike, dan iinj foon da änringe wörd '''straagen'''. Näre önjgoowen tu di strikforgung ås uk en begrüning fant huum önj dåt [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbök].",
-'rev-suppressed-no-diff' => "Dü koost jüdeer ferschääl ai bekiike, dan iinj foon da änringe wörd '''straagen'''.",
-'rev-deleted-unhide-diff' => "Iinj foon da änringe doon jüdeer ferschääl as '''straagen''' wörden.
-Ainkelthäide fant huum önj dåt [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbök].
-Dü koost nuch [$1 jüdeer färsjoon bekiike], wan dü wider gunge mååst.",
-'rev-suppressed-unhide-diff' => "Iinj foon da färsjoone foon dåtdeer ferschääl wörd '''unerdrükd'''.
-Ainkelthäide fant huum önj dåt [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} unerdruk-logbök].
-Dü koost nuch [$1 dåtdeer ferschääl bekiike], wan dü wider gunge mååst.",
-'rev-deleted-diff-view' => "En Färsjoon foon dåtdeer färsjoonsferschääl wörd '''straagen'''.
-Dü koost dåt färsjoonsferschääl siinj.
-Näre önjgoowen fant huum önj dåt [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbök].",
-'rev-suppressed-diff-view' => "Iinj foon da färsjoone foon dåtdeer färsjoonsferschääl wörd '''unerdrükd'''.
-Dü koost dåtheer färsjoonsferschääl siinj. Ainkelthäide stönje önj dåt [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} unerdrukings-logbök].",
-'rev-delundel' => 'wis/fersteeg',
+'rev-deleted-comment' => '(Tuupfaadet beskriiwang wechnimen)',
+'rev-deleted-user' => '(Brükernööm stregen)',
+'rev-deleted-event' => '(Logbuk-iindrach stregen)',
+'rev-deleted-user-contribs' => '[Brükernööm of IP-adres wechnimen - Feranrangen uun bidracher ferbürgen]',
+'rev-deleted-text-permission' => "Detdiar werjuun as '''stregen''' wurden.
+Uun't [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbuk] stäänt muar diartu.",
+'rev-deleted-text-unhide' => "Detdiar werjuun as '''stregen''' wurden.
+Uun't [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbuk] stäänt muar diartu.
+Dü könst [$1 detdiar werjuun uunluke], wan dü wel.",
+'rev-suppressed-text-unhide' => "Detdiar werjuun as '''ferbürgen''' wurden.
+Uun't [{{fullurl:{{#special:Log}}/suppress|page={{FULLPAGENAMEE}}}} fersteeg-logbuk] stäänt muar diartu.
+Dü könst [$1 detdiar werjuun uunluke], wan dü wel.",
+'rev-deleted-text-view' => "Detdiar werjuun as '''stregen''' wurden.
+Dü könst det noch uunluke. Uun't [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbuk] stäänt muar diartu.",
+'rev-suppressed-text-view' => "Detdiar werjuun as '''ferbürgen''' wurden.
+Dü könst det noch uunluke. Uun't [{{fullurl:{{#special:Log}}/suppress|page={{FULLPAGENAMEE}}}} fersteeg-logbuk] stäänt muar diartu.",
+'rev-deleted-no-diff' => "Dü könst di ferskeel ei uunluke, auer ian werjuun '''stregen''' wurden as.
+Wan dü muar wed wel, luke iin uun't [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbuk].",
+'rev-suppressed-no-diff' => "Dü könst di ferskeel ei uunluke, auer ian werjuun '''stregen''' wurden as.",
+'rev-deleted-unhide-diff' => "Ian faan jodiar werjuunen as '''stregen''' wurden. Wan dü muar wed wel, luke iin uun't [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbuk].
+Dü könst [$1 di ferskeel uunluke], wan dü wel.",
+'rev-suppressed-unhide-diff' => "Ian faan jodiar werjuunen as '''ferbürgen''' wurden. Wan dü muar wed wel, luke iin uun't [{{fullurl:{{#special:Log}}/delete|page={{FULLPAGENAMEE}}}} fersteeg-logbuk].
+Dü könst [$1 di ferskeel uunluke], wan dü wel.",
+'rev-deleted-diff-view' => "Ian faan jodiar werjuunen as '''stregen''' wurden.
+Dü könst di ferskeel uunluke. Wan dü muar wed wel, luke iin uun't [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} strik-logbuk].",
+'rev-suppressed-diff-view' => "Ian faan jodiar werjuunen as '''ferbürgen''' wurden. Dü könst di ferskeel uunluke. Wan dü muar wed wel, luke iin uun't [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} fersteeg-logbuk].",
+'rev-delundel' => 'wise/fersteeg',
'rev-showdeleted' => 'wise',
-'revisiondelete' => 'Färsjoone strike/wider mååge',
-'revdelete-nooldid-title' => 'Niinj färsjoon önjjääwen',
-'revdelete-nooldid-text' => 'Dü heest nian wersjuun för detheer aktsjuun uunden, of det wersjuun jaft at ei, of dü fersjükst, en aktuel wersjuun tu striken.',
-'revdelete-nologtype-title' => 'Niinj logtüüp önjjääwen',
-'revdelete-nologtype-text' => 'Deer wörd niinj logtüüp for jüheer aksjoon önjjääwen.',
-'revdelete-nologid-title' => 'Üngülti logönjdråch',
-'revdelete-nologid-text' => 'Deer wör niinj logtüüp ütkiisd unti di kiisde logtüüp bestoont ai.',
-'revdelete-no-file' => 'Jü önjjääwen dootäi bestoont ai.',
-'revdelete-show-file-confirm' => 'Bast dü sääker, dåt de jü sleeked färsjoon foon e dootäi „<nowiki>$1</nowiki>“ foon e $2 am e klook $3 önjsiinj wäät?',
-'revdelete-show-file-submit' => 'Jåå',
-'revdelete-selected' => "'''{{PLURAL:$2|Ütjsoocht wersjuun|Ütjsoocht wersjuunen}} faan [[:$1]]:'''",
+'revisiondelete' => 'Werjuunen strik of weder iinstel',
+'revdelete-nooldid-title' => 'Nian werjuun uunden',
+'revdelete-nooldid-text' => 'Dü heest nian werjuun för detheer aktjuun uunden, of det werjuun jaft at ei, of dü ferschükst, en aktuel werjuun tu striken.',
+'revdelete-nologtype-title' => 'Nian log-typ uunden',
+'revdelete-nologtype-text' => 'Dü heest nään log-typ för detdiar aktjuun uunden.',
+'revdelete-nologid-title' => 'Ferkiard log-iindrach',
+'revdelete-nologid-text' => 'Dü heest nään log-typ uunden of di log-typ as ferkiard.',
+'revdelete-no-file' => 'Son dateinööm as ei diar.',
+'revdelete-show-file-confirm' => 'Wel dü würelk det stregen werjuun faan det datei „<nowiki>$1</nowiki>“ faan di $2, am a klook $3 uunluke?',
+'revdelete-show-file-submit' => 'Ja',
+'revdelete-selected' => "'''{{PLURAL:$2|Ütjsoocht werjuun|Ütjsoocht werjuunen}} faan [[:$1]]:'''",
'logdelete-selected' => "'''{{PLURAL:$1|Ütjsoocht logbukiindrach|Ütjsoocht logbukiindracher}}:'''",
-'revdelete-text' => "'''Stregen wersjuunen an aktsjuunen bliiw uun det wersjuunshistoore an uun a logbuken, man det koon ei arken efterlees.'''
+'revdelete-text' => "'''Stregen werjuunen an aktjuunen bliiw uun di ferluup an uun a logbuken, man det koon ei arken efterlees.'''
-Ööder administratooren üüb {{SITENAME}} kön oober üüb det ferstäächt histoore tugrip an tu nuad en ual wersjuun weder iinstel.",
+Ööder administratooren üüb {{SITENAME}} kön oober üüb di ferbürgen ferluup tugrip an tu nuad en ual werjuun weder iinstel.",
'revdelete-confirm' => 'Ferseekre noch ans, dat dü det würelk du wel, dat dü witjst, wat dü dääst, an dat det mä a [[{{MediaWiki:Policy-url}}|bestemangen]] auerian stemet.',
'revdelete-suppress-text' => "Det skul '''bluas''' onertrakt wurd bi:
* Persöönelk informatsjuunen, diar näämen wat uungung
*: ''Adresen, Tilefoonnumern, Ferseekerangsnumern an sowat''",
-'revdelete-legend' => 'Seeten foon da sachtboorhäids-gränse',
-'revdelete-hide-text' => 'Täkst foon e färsjoon fersteege',
-'revdelete-hide-image' => 'Fersteege wat önj e Dootäi stoont',
-'revdelete-hide-name' => 'Logbök-aksjoon fersteege',
-'revdelete-hide-comment' => 'Beårbingskomäntoor fersteege',
-'revdelete-hide-user' => 'Benjüternoome//IP-adräse foon e beårber fersteege',
-'revdelete-hide-restricted' => 'Doote uk for administratoore än oudere unerdrüke',
-'revdelete-radio-same' => '(ai änre)',
-'revdelete-radio-set' => 'Jåå',
-'revdelete-radio-unset' => 'Nåån',
-'revdelete-suppress' => 'Grün foon dåt striken uk for administratoore fersteege',
-'revdelete-unsuppress' => 'Gränse for wi måågede färsjoone wächnaame',
-'revdelete-log' => 'Begrüning:',
-'revdelete-submit' => 'Aw {{PLURAL:$1|kiisd färsjoon|kiisde färsjoone}} önjwiinje',
-'revdelete-success' => "'''Jü färsjoonsönjsicht wörd aktualisiird.'''",
+'revdelete-legend' => 'Iinstelangen, hüföl tu sen wees skal',
+'revdelete-hide-text' => 'Tekst faan det werjuun fersteeg',
+'revdelete-hide-image' => 'Fersteeg, wat uun det datei stäänt',
+'revdelete-hide-name' => 'Logbuk-aktjuun fersteeg',
+'revdelete-hide-comment' => 'Tuupfaadet beskriiwang fersteeg',
+'revdelete-hide-user' => 'Brükernööm/IP-adres faan di brüker fersteeg',
+'revdelete-hide-restricted' => 'Dooten uk för administratooren an öödern fersteeg',
+'revdelete-radio-same' => '(ei feranre)',
+'revdelete-radio-set' => 'Ja',
+'revdelete-radio-unset' => 'Naan',
+'revdelete-suppress' => "Grünj för't striken uk för administratooren an öödern fersteeg",
+'revdelete-unsuppress' => 'Weder iinsteld werjuunen luasmaage',
+'revdelete-log' => 'Grünj:',
+'revdelete-submit' => 'Widjer för {{PLURAL:$1|ütjsoocht werjuun|ütjsoocht werjuunen}}',
+'revdelete-success' => "'''Det werjuunsuunsicht as aktualisiaret wurden.'''",
'revdelete-failure' => "'''Jü färsjoonsönjsicht köö ai aktualisiird wårde:'''
$1",
-'logdelete-success' => "'''Logbökönjsicht ma erfolch aktualisiird.'''",
-'logdelete-failure' => "'''Logböksachtboorhäid köö ai änred wårde:'''
+'logdelete-success' => "'''Logbukuunsicht as aktualisiaret wurden.'''",
+'logdelete-failure' => "'''Det logbukuunsicht küd ei feranert wurd:'''
$1",
-'revdel-restore' => 'sichtboorhäid änre',
-'revdel-restore-deleted' => 'sleekede färsjoone',
-'revdel-restore-visible' => 'sachtboore färsjoone',
-'pagehist' => 'Färsjoonshistoori',
-'deletedhist' => 'Straagene färsjoone',
-'revdelete-hide-current' => 'Fäägel bai t fersteegen foon di önjdråch foon e klook $1, $2; ditheer as jü aktuäl färsjoon,
-jü koon ai ferstäägen wårde.',
-'revdelete-show-no-access' => 'Fäägel bai t wisen foon di önjdråch foon $1, e klook $2: diheer önjdråch wörd ås "begränsed" markiird.
-Dü heest deeraw nåån tugraawe.',
+'revdel-restore' => 'Feranre, wat tu sen wees skal',
+'revdel-restore-deleted' => 'stregen werjuunen',
+'revdel-restore-visible' => 'sichtboor werjuunen',
+'pagehist' => 'Ferluup faan werjuunen',
+'deletedhist' => 'Stregen werjuunen',
+'revdelete-hide-current' => 'Di iindrach faan $1, klook $2 koon ei ferbürgen wurd. Det as det aktuel werjuun.',
+'revdelete-show-no-access' => 'Bi\'t bewerkin di $1, am a klook $2 as wat skiaf gingen: Didiar iindrach as üs "hualew klaar" markiaret.
+Dü könst diar ei üüb tugrip.',
'revdelete-modify-no-access' => 'Bi\'t bewerkin di $1, am a klook $2 as wat skiaf gingen: Diheer iindrach as üs "hualew klaar" markiaret. Dü könst diar ei üüb tugrip.',
'revdelete-modify-missing' => "Bi't bewerkin faan ID $1 as wat skiaf gingen: At waant uun a dootenbeenk!",
'revdelete-no-change' => "'''Waarskau:''' Di iindrach faan di $1, am a klook $2 hää al jodiar iinstelangen.",
-'revdelete-concurrent-change' => "Bi't bewerkin faan di iindrach di $1, am a klook $2 as wat skiaf gingen: At sjocht so ütj, üs wan hoker ööders det bewerket hää, iar dü det bewerke wulst. Luke iin uun a logbuken.",
+'revdelete-concurrent-change' => "Bi't bewerkin faan di iindrach di $1, am a klook $2 as wat skiaf gingen: At schocht so ütj, üs wan hoker ööders det bewerket hää, iar dü det bewerke wulst. Luke iin uun a logbuken.",
'revdelete-only-restricted' => "Bi't fersteegen faan di iindrach di $1, am a klook $2 as wat skiaf gingen: Dü könst di iindrach ei föör administratooren fersteeg, saner ööder iinstelangen tu feranrin.",
'revdelete-reason-dropdown' => "*Grünjer för't striken san miast
** Copyright woort ei iinhäälen
** Persöönelk informatsjuunen, diar näämen wat uungung
** Brükernööm as ei tuläät
** Fülk informatsjuunen",
-'revdelete-otherreason' => 'Ouderen/tubaikaamenden grün:',
-'revdelete-reasonotherlist' => 'Ouderen grün',
-'revdelete-edit-reasonlist' => 'Strikgrüne beårbe',
-'revdelete-offender' => 'Autoor foon jüdeer färsjoon:',
+'revdelete-otherreason' => 'Ööder/noch en grünj:',
+'revdelete-reasonotherlist' => 'Ööder grünj',
+'revdelete-edit-reasonlist' => "Grünjer för't striken bewerke",
+'revdelete-offender' => 'Skriiwer faan detdiar werjuun:',
# Suppression log
-'suppressionlog' => 'Oversight-logbök',
+'suppressionlog' => 'Oversight-logbuk',
'suppressionlogtext' => 'Detheer as det logbuk faan oversighter aktsjuunen.
Luke bi [[Special:BlockList|List faan speret IP-adresen an brükernöömer]] för aktuel sperangen.',
# History merging
-'mergehistory' => 'Fersjoonshistoorie feriine',
-'mergehistory-header' => 'Ma jüdeer spetsjåålsid koost dü jü färsjoonshistoori foon en jurtkamstsid ma jü färsjoonshistoori foon en müüljsid feriine.
-Stal sääker, dåt jü färsjoonshistoori foon en sid histoorisch koräkt as.',
-'mergehistory-box' => 'Rewisjoone foon tou side feriine:',
-'mergehistory-from' => 'Jurtkamstsid:',
-'mergehistory-into' => 'Müüljsid:',
-'mergehistory-list' => 'Färsjoone, da feriind wårde koone',
-'mergehistory-merge' => 'Jodiar wersjuunen faan „[[:$1]]“ kön efter „[[:$2]]“ auerdraanj wurd.
-Markiare det wersjuun, wat üs leetst mä auerdraanj wurd skal.
-A nawigatsjuun links saat ales weder turag üüb di ual stant.',
-'mergehistory-go' => 'Wis färsjoone da feriind wårde koone',
-'mergehistory-submit' => 'Feriinde färsjoone',
-'mergehistory-empty' => 'Niinj färsjoone koone feriind wårde.',
-'mergehistory-success' => '$3 {{PLURAL:$3|färsjoon|färsjoone}} foon [[:$1]] ma erfolch feriind tu [[:$2]].',
-'mergehistory-fail' => 'Färsjoone koone ai feriind wårde, wees sü gödj än kontroliir jü sid än da tidönjgoowe.',
-'mergehistory-no-source' => 'Jurtkamstsid "$1" as ai deer.',
-'mergehistory-no-destination' => 'Müüljsid „$1“ bestoont ai.',
+'mergehistory' => 'Ferluup faan werjuunen tuupfeer',
+'mergehistory-header' => 'Mä detdiar spezial-sidj könst dü di werjuunsferluup faan ian sidj mä di ferluup faan en ööder sidj tuupfeer.
+Aachte diarüüb, dat di ferluup faan det sidj uk rocht as.',
+'mergehistory-box' => 'Ferluup faan tau sidjen tuupfeer:',
+'mergehistory-from' => 'Iarst sidj:',
+'mergehistory-into' => 'Ööder sidj:',
+'mergehistory-list' => 'Werjuunen, diar tuupfeerd wurd kön.',
+'mergehistory-merge' => 'Jodiar werjuunen faan „[[:$1]]“ kön efter „[[:$2]]“ auerdraanj wurd.
+Kääntiakne det wersjuun, wat üs leetst mä auerdraanj wurd skal.
+A nawigatjuun links saat ales weder turag üüb di ual stant.',
+'mergehistory-go' => 'Wise werjuunen, diar tuupfeerd wurd kön.',
+'mergehistory-submit' => 'Werjuunen tuupfeer',
+'mergehistory-empty' => 'Nian werjuunen kön tuupfeerd wurd.',
+'mergehistory-success' => '$3 {{PLURAL:$3|werjuun|werjuunen}} faan [[:$1]] tuupfeerd tu [[:$2]].',
+'mergehistory-fail' => 'Werjuunen kön ei tuupfeerd wurd. Luke noch ans efter at sidj an a tidjen.',
+'mergehistory-no-source' => 'Det iarst sidj "$1" as ai diar.',
+'mergehistory-no-destination' => 'Det ööder sidj „$1“ as ei diar.',
'mergehistory-invalid-source' => 'Jurtkamstsid mötj en gülti sidnoome heewe.',
'mergehistory-invalid-destination' => 'Müüljsid mötj en gülti sidnoome weese.',
'mergehistory-autocomment' => '„[[:$1]]“ feriind eefter „[[:$2]]“',
-'mergehistory-comment' => '„[[:$1]]“ feriind eefter „[[:$2]]“: $3',
-'mergehistory-same-destination' => 'Jurtkamst- än müüljsid mönje ai idäntisch weese',
-'mergehistory-reason' => 'Grün:',
+'mergehistory-comment' => '„[[:$1]]“ tuupfeerd tu „[[:$2]]“: $3',
+'mergehistory-same-destination' => 'Det iarst an det ööder sidj mut ei detsalew wees',
+'mergehistory-reason' => 'Grünj:',
# Merge log
'mergelog' => 'Feriin-logbök',
-'pagemerge-logentry' => 'feriind [[$1]] eefter [[$2]] (färsjoonen bit $3)',
-'revertmerge' => 'Feriining tuninte mååge',
-'mergelogpagetext' => 'Dåtheer as dåt logbök foon da feriinde färsjoonshistoorie.',
+'pagemerge-logentry' => '[[$1]] efter [[$2]] tuupfeerd (werjuunen bit $3)',
+'revertmerge' => 'Det tuupfeeren turagsaat',
+'mergelogpagetext' => 'Diar as det logbuk faan a tuupfeerd sidjen.',
# Diffs
-'history-title' => '$1: Ferluup faan a wersjuunen',
-'difference-title' => 'Ferskeel tesken a wersjuunen faan "$1"',
+'history-title' => '$1: Ferluup faan a werjuunen',
+'difference-title' => 'Ferskeel tesken a werjuunen faan "$1"',
'difference-title-multipage' => 'Ferskeel tesken a sidjen "$1" an "$2"',
-'difference-multipage' => '(Ferschääl twasche side)',
-'lineno' => 'Ra $1:',
-'compareselectedversions' => 'Wäälde färsjoone ferglike',
-'showhideselectedversions' => 'Wäälde färsjoone wise/fersteege',
-'editundo' => 'tunintemååge',
-'diff-multi' => '({{PLURAL:$1|Ian wersjuun diartesken|$1 wersjuunen diartesken}} faan {{PLURAL:$2|ään brüker|$2 brükern}} {{PLURAL:$1|woort|wurd}} ei uunwiset)',
-'diff-multi-manyusers' => '({{PLURAL:$1|Ian wersjuun diartesken|$1 wersjuunen diartesken}} faan muar üs $2 {{PLURAL:$2|brüker|brükern}} wurd ei uunwiset)',
+'difference-multipage' => '(Ferskeel tesken sidjen)',
+'lineno' => 'Rä $1:',
+'compareselectedversions' => 'Werjuunen ferglik',
+'showhideselectedversions' => 'Werjuunen wise of fersteeg',
+'editundo' => 'turagsaat',
+'diff-multi' => '({{PLURAL:$1|Ian werjuun diartesken|$1 werjuunen diartesken}} faan {{PLURAL:$2|ään brüker|$2 brükern}} {{PLURAL:$1|woort|wurd}} ei uunwiset)',
+'diff-multi-manyusers' => '({{PLURAL:$1|Ian werjuun diartesken|$1 werjuunen diartesken}} faan muar üs $2 {{PLURAL:$2|brüker|brükern}} wurd ei uunwiset)',
'difference-missing-revision' => "{{PLURAL:$2|Ian werjuun|$2 werjuunen}} faan di ferskeel ($1) {{PLURAL:$2|as|san}} ei fünjen wurden.
Det komt diar miast faan, dat en ual ferwisang stregen wurden as.
Dü könst det uun't [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} logbuk faan stregen sidjen] efterlees.",
# Search results
-'searchresults' => 'Säkjresultoote',
-'searchresults-title' => 'Säkjresultoote for „$1“',
-'searchresulttext' => 'For mör informasjoon tu jü säkj sii jü [[{{MediaWiki:Helppage}}|heelpsid]].',
-'searchsubtitle' => 'Din säkönjfrååg: „[[:$1|$1]]“ ([[Special:Prefixindex/$1|åle ma „$1“ beganende side]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|åle side, da eefter „$1“ ferlinke]])',
-'searchsubtitleinvalid' => 'Din säkönjfrååg: "$1".',
+'searchresults' => 'Fünjen sidjen',
+'searchresults-title' => 'Fünjen sidjen för „$1“',
+'searchresulttext' => "Wan dü muar auer't schüken uun {{SITENAME}} wed wel, luke efter bi [[{{MediaWiki:Helppage}}|{{int:help}}]].",
+'searchsubtitle' => 'Din uunfraag: „[[:$1|$1]]“ ([[Special:Prefixindex/$1|sidjen, diar mä „$1“ began]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|sidjen, diar efter „$1“ ferwise]])',
+'searchsubtitleinvalid' => 'Din uunfraag: "$1".',
'toomanymatches' => 'Diar kaam tuföl resultooten üüb din uunfraag. Fersjük det ööders.',
-'titlematches' => 'Oueriinjstiminge ma sidetiitle',
-'notitlematches' => 'Niinj oueriinjstiming ma sidetiitle',
-'textmatches' => 'Oueriinjstiminge ma inhålte',
-'notextmatches' => 'Niinj oueriinjstiming ma inhålte',
-'prevn' => '{{PLURAL:$1|leesten|leeste $1}}',
-'nextn' => '{{PLURAL:$1|näisten|näiste $1}}',
-'prevn-title' => 'Leeste $1 {{PLURAL:$1|resultoot|resultoote}}',
-'nextn-title' => 'Näiste $1 {{PLURAL:$1|resultoot|resultoote}}',
-'shown-title' => 'Wis $1 {{PLURAL:$1|resultoot|resultoote}} pro sid',
-'viewprevnext' => 'Wis ($1 {{int:pipe-separator}} $2) ($3)',
+'titlematches' => 'Auerianstemangen mä sidjennöömer',
+'notitlematches' => 'Nian auerianstemangen mä sidjennöömer',
+'textmatches' => 'Auerianstemangen mä teksten',
+'notextmatches' => 'Nian auerianstemangen mä teksten',
+'prevn' => '{{PLURAL:$1|leetst|leetst $1}}',
+'nextn' => '{{PLURAL:$1|naist|naist $1}}',
+'prevn-title' => 'Leetst $1 {{PLURAL:$1|resultaat|resultaaten}}',
+'nextn-title' => 'Naist $1 {{PLURAL:$1|resultaat|resultaaten}}',
+'shown-title' => 'Wise $1 {{PLURAL:$1|resultaat|resultaaten}} per sidj',
+'viewprevnext' => 'Wise ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-legend' => 'Säkmöölikhäide',
'searchmenu-exists' => "'''Deer as en sid nååmd \"[[:\$1]]\" önj jüdeer Wiki'''",
-'searchmenu-new' => "'''Mååg jü sid „[[:$1|$1]]“ önj jüdeer Wiki.'''",
-'searchhelp-url' => 'Help:Inhåltsfertiiknis',
+'searchmenu-new' => "'''Maage det sidj „[[:$1]]“ uun detheer wiki.'''",
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Wise aal jo sidjen, diar so began]]',
-'searchprofile-articles' => 'Artiikle',
-'searchprofile-project' => 'Heelp än Prujäktside',
+'searchprofile-articles' => 'Artiikler',
+'searchprofile-project' => 'Halep- an Projektsidjen',
'searchprofile-images' => 'Multimedia',
'searchprofile-everything' => 'Ales',
-'searchprofile-advanced' => 'Ütwided',
-'searchprofile-articles-tooltip' => 'Säk önj $1',
-'searchprofile-project-tooltip' => 'Säk önj $1',
-'searchprofile-images-tooltip' => 'Bilen sjük',
-'searchprofile-everything-tooltip' => 'Sjük aueraal (uk diskusjuunssidjen)',
-'searchprofile-advanced-tooltip' => 'Onj mör noomerüme säke',
-'search-result-size' => '$1 ({{PLURAL:$2|1 uurd|$2 uurde}})',
-'search-result-category-size' => '{{PLURAL:$1|1 sidj|$1 sidjen}} ({{PLURAL:$2|1 onerkategorii|$2 onerkategoriin}}, {{PLURAL:$3|1 datei|$3 dateien}})',
-'search-result-score' => 'Relevans: $1 %',
-'search-redirect' => '(widerliidjing foon „$1“)',
-'search-section' => '(oufsnaas $1)',
-'search-suggest' => 'Miinjdst dü „$1“?',
-'search-interwiki-caption' => 'Süsterprujäkte',
-'search-interwiki-default' => '$1 resultoote:',
-'search-interwiki-more' => '(widere)',
-'search-relatedarticle' => 'früne',
-'mwsuggest-disable' => "Föörslacher för't sjüken deaktiwiare",
-'searcheverything-enable' => 'Onj ål noomerüme säke',
-'searchrelated' => 'früne',
-'searchall' => 'åle',
-'showingresults' => "Heer {{PLURAL:$1|as '''1''' resultoot|san '''$1''' resultoote}}, beganend ma numer '''$2.'''",
-'showingresultsnum' => "Heer {{PLURAL:$3|as '''1''' resultoot|san '''$3''' resultoote}}, beganend ma numer '''$2.'''",
-'showingresultsheader' => "{{PLURAL:$5|resultoot '''$1''' foon '''$3'''|resultoote '''$1-$2''' foon '''$3'''}}, for '''$4.'''",
-'nonefound' => "'''Haanewising:''' Deer wårde ståndardmääsi man ainkelde noomerüme döörsoocht. Seet ''all:'' for din Säkbegrip, am åle side (inkl. diskusjoonside, forlååge, äsw.) tu döörsäken unti gesiilt di noome foon di tu döörsäkende noomerüm.",
-'search-nonefound' => 'For din säkanfrååg würden niinj resultoote fünen.',
-'powersearch' => 'ütwided säkj',
-'powersearch-legend' => 'ütwided säkj',
-'powersearch-ns' => 'Säkj önj noomerüme:',
-'powersearch-redir' => 'Widerliidjinge anwise',
-'powersearch-field' => 'Säk eefter:',
-'powersearch-togglelabel' => 'Wääl üt:',
-'powersearch-toggleall' => 'Åle',
-'powersearch-togglenone' => 'Niinj',
-'search-external' => 'Extern säkj',
-'searchdisabled' => 'Jü {{SITENAME}}-säkj as deaktiviird. Dü koost intwasche ma Google säke. Betånk, dåt di säkindäks for {{SITENAME}} ferüüljet weese koon.',
+'searchprofile-advanced' => 'Ütjwidjet',
+'searchprofile-articles-tooltip' => 'Schük uun $1',
+'searchprofile-project-tooltip' => 'Schük uun $1',
+'searchprofile-images-tooltip' => 'Bilen schük',
+'searchprofile-everything-tooltip' => 'Schük aueraal (uk diskusjuunssidjen)',
+'searchprofile-advanced-tooltip' => 'Uun ööder nöömrümer schük',
+'search-result-size' => '$1 ({{PLURAL:$2|1 wurd|$2 wurden}})',
+'search-result-category-size' => '{{PLURAL:$1|1 sidj|$1 sidjen}} ({{PLURAL:$2|1 onerkategorii|$2 onerkategoriin}}, {{PLURAL:$3|1 datei|$3 datein}})',
+'search-result-score' => 'Relewans: $1 %',
+'search-redirect' => '(widjerfeerd faan „$1“)',
+'search-section' => '(kirew $1)',
+'search-suggest' => 'Mendst dü „$1“?',
+'search-interwiki-caption' => 'Saster-projekten',
+'search-interwiki-default' => '$1 resultaaten:',
+'search-interwiki-more' => '(muar)',
+'search-relatedarticle' => 'Ferbünjen',
+'mwsuggest-disable' => "Föörslacher för't schüken deaktiwiare",
+'searcheverything-enable' => 'Uun arke nöömrüm schük',
+'searchrelated' => 'ferbünjen',
+'searchall' => 'aaltumaal',
+'showingresults' => "Heer {{PLURAL:$1|as '''1''' resultaat|san '''$1''' resultaaten}}, jo began mä numer '''$2.'''",
+'showingresultsnum' => "Heer {{PLURAL:$3|as '''1''' resultaat|san '''$3''' resultaaten}}, jo began mä numer '''$2.'''",
+'showingresultsheader' => "{{PLURAL:$5|resultaat '''$1''' faan '''$3'''|resultaaten '''$1-$2''' faan '''$3'''}}, för '''$4.'''",
+'nonefound' => "'''Paase üüb:''' Diar wurd man enkelt nöömrümer trochsoocht. Wan dü ''all:'' föör din wurd skraft, do woort uk uun aal a nöömrümer (datein, kategoriin, föörlaagen asw.) soocht. Dü könst uk en wasen nöömrüm föörwechstel.",
+'search-nonefound' => 'För din uunfraag san nian resultaaten fünjen wurden.',
+'powersearch' => 'Ã\9ctjwidjet schüken',
+'powersearch-legend' => 'Ã\9ctjwidjet schüken',
+'powersearch-ns' => 'Schük uun nöömrümer:',
+'powersearch-redir' => 'Widjerfeerangen uunwise',
+'powersearch-field' => 'Schük efter:',
+'powersearch-togglelabel' => 'Schük uun:',
+'powersearch-toggleall' => 'Aaltumaal',
+'powersearch-togglenone' => 'Nianen',
+'search-external' => 'Schük ekstern',
+'searchdisabled' => 'Det schüken üüb {{SITENAME}} as ei aktiif. Dü könst uuntesken mä Google schük. Seenk diaram, dat Google sin steegwurden miast ei üüb a leetst stant san.',
'search-error' => "Diar as wat skiaf gingen bi't schüken: $1",
# Preferences page
-'preferences' => 'Önjstalinge',
+'preferences' => 'Iinstelangen',
'mypreferences' => 'Iinstelangen',
'prefs-edits' => 'Taal faan feranrangen:',
-'prefsnologin' => 'Ai önjmälded',
+'prefsnologin' => 'Ei uunmeldet',
'prefsnologintext' => 'Dü skel <span class="plainlinks">[{{fullurl:{{#special:UserLogin}}|returnto=$1}} uunmeldet]</span> wees, am din iinstelangen tu feranrin.',
-'changepassword' => 'Pååsuurd änre',
+'changepassword' => 'Paaswurd feranre',
'prefs-skin' => 'Skak',
-'skin-preview' => 'Forlök',
-'datedefault' => 'Foor-önjstaling',
+'skin-preview' => 'Föörskau',
+'datedefault' => 'Föör-iinstelang',
'prefs-beta' => 'Beta mögelkhaiden',
'prefs-datetime' => 'Dai an klooktidj',
'prefs-labs' => 'Alpha mögelkhaiden',
'prefs-user-pages' => 'Brükersidjen',
'prefs-personal' => 'Brüker dooten',
-'prefs-rc' => 'Leeste änringe',
+'prefs-rc' => 'Leetst feranrangen',
'prefs-watchlist' => "Uun't uug behual",
'prefs-watchlist-days' => "So föl daar uun't uug behual:",
'prefs-watchlist-days-max' => 'Ei muar üs {{PLURAL:$1|ään dai|$1 daar}}',
'prefs-watchlist-edits' => 'Ei muar feranrangen üs:',
'prefs-watchlist-edits-max' => 'Ai mör as 1000',
'prefs-watchlist-token' => "Token för uun't uug behualen:",
-'prefs-misc' => 'Dit än dat',
-'prefs-resetpass' => 'Pååsuurd änre',
+'prefs-misc' => 'Dit an dat',
+'prefs-resetpass' => 'Paaswurd feranre',
'prefs-changeemail' => 'Feranre det E-Mail-adres',
'prefs-setemail' => 'E-Mail-adres fäästlei:',
'prefs-email' => 'E-Mail iinstelangen',
'prefs-rendering' => 'Skak',
-'saveprefs' => 'Önjstalinge sääkere',
+'saveprefs' => 'Iinstelangen seekre',
'resetprefs' => 'Wech diarmä',
'restoreprefs' => 'Normool iinstelangen weder haale',
'prefs-editing' => 'Bewerke',
'prefs-edit-boxsize' => "Grate faan't wönang tu't bewerkin:",
'rows' => 'Räen:',
'columns' => 'Spleder:',
-'searchresultshead' => 'Sjük',
+'searchresultshead' => 'Schük',
'resultsperpage' => 'So fölsis komt det föör per sidj:',
'stub-threshold' => 'Formatiarang faan links <a href="#" class="stub">för letj sidjen</a> (uun Byte):',
'stub-threshold-disabled' => 'Ufsteld',
'recentchangesdays' => 'Soföl daar skel a „leetst feranrangen“ uunwise:',
'recentchangesdays-max' => 'Ei muar üs {{PLURAL:$1|ään dai|$1 daar}}',
'recentchangescount' => 'Soföl feranrangen skel uunwiset wurd:',
-'prefs-help-recentchangescount' => 'Det san a leetst feranrangen, wersjuunen an logbuken.',
+'prefs-help-recentchangescount' => 'Det san a leetst feranrangen, werjuunen an logbuken.',
'prefs-help-watchlist-token' => "Wan dü detdiar fial mä en hiamelken code ütjfalst, woort en RSS-feed iinracht. Arken mä didiar code koon do sä, wat dü uun't uug behual wel. Diaram skul hi ei so ianfach wees, nem dach didiar: $1",
'savedprefs' => 'Din iinstelangen san seekert wurden.',
'timezonelegend' => 'Tidjsoon:',
-'localtime' => 'lokaal tid',
+'localtime' => 'Lokaal tidj:',
'timezoneuseserverdefault' => 'Wiki standard tidj brük ($1)',
'timezoneuseoffset' => 'Öödern (ferskeel uundu)',
'timezoneoffset' => 'Ferskeel¹:',
'timezoneregion-europe' => 'Euroopa',
'timezoneregion-indian' => 'Indik',
'timezoneregion-pacific' => 'Pasiifik',
-'allowemail' => 'E-Mail foon oudere brükere tulätje',
-'prefs-searchoptions' => 'Sjük',
-'prefs-namespaces' => 'Noomerüme',
-'defaultns' => 'Ouers säk önj jüheer noomerüme:',
-'default' => 'Forinstaling',
-'prefs-files' => 'Dååtäie',
+'allowemail' => 'E-mail faan ööder brükern tuläät',
+'prefs-searchoptions' => 'Schük',
+'prefs-namespaces' => 'Nöömrümer',
+'defaultns' => 'Ööders schük uun jodiar nöömrümer:',
+'default' => 'Fööriinstelang',
+'prefs-files' => 'Datein',
'prefs-custom-css' => 'Salew maaget CSS',
'prefs-custom-js' => 'Salew maaget JavaScript',
'prefs-common-css-js' => 'CSS / JavaScript för arke skak:',
'prefs-memberingroups' => '{{GENDER:$2|Lasmoot}} faan {{PLURAL:$1|brükerskööl|brükersköölen}}:',
'prefs-registration' => 'Uunmelde-tidj',
'yourrealname' => 'Rocht nööm:',
-'yourlanguage' => 'Spräke:',
+'yourlanguage' => 'Spriak:',
'yourvariant' => 'Spriak:',
'prefs-help-variant' => 'Uun hün skriiwwiis skel a sidjen uunwiset wurd:',
-'yournick' => 'Nai signatuur:',
+'yournick' => 'Nei signatuur:',
'prefs-help-signature' => 'Wees so gud an onerskriiw üüb diskusjuunssidjen mä „<nowiki>~~~~</nowiki>“. Diar komt do dan brükernööm an det klooktidj bi ütj.',
'badsig' => "Diar stemet wat ei mä't signatuur. Preewe at HTML.",
'badsiglength' => 'Din signatuur mut ei muar üs $1 {{PLURAL:$1|tiaken|tiakens}} haa.',
'gender-female' => 'Wüf',
'prefs-help-gender' => "Stäänt tu wool: Det woort brükt för't paasin uunspreegen faan maaner an wüfen. Arken koon det lees.",
'email' => 'E-mail',
-'prefs-help-realname' => 'Stäänt tu wool. Wan dü dan rochten nööm uundääst, koon hi mä din bewerkangen ferbünjen wurd.',
+'prefs-help-realname' => 'Stäänt tu wool. Wan dü dan rochten nööm uundääst, koon hi mä din feranrangen ferbünjen wurd.',
'prefs-help-email' => 'Dü säärst din e-mail-adres ei uundu, oober do könst dü uk nian mädialangen fu, wan dü ans din paaswurd ferjiden heest.',
'prefs-help-email-others' => 'Mä ööder brükern könst dü uk auer hör an din brükersidj kontakt apnem. Diarför woort din e-mail-adres ei brükt.',
'prefs-help-email-required' => 'Du en rocht E-Mail-adres uun.',
'prefs-signature' => 'Signatuur',
'prefs-dateformat' => "Formaat faan't dootem",
'prefs-timeoffset' => 'Ferskeel faan a klooktidj',
-'prefs-advancedediting' => 'Ütwided möölikhäide',
-'prefs-advancedrc' => 'Ütwided möölikhäide',
-'prefs-advancedrendering' => 'Ütwided möölikhäide',
-'prefs-advancedsearchoptions' => 'Ütwided möölikhäide',
-'prefs-advancedwatchlist' => 'Ütwided möölikhäide',
+'prefs-advancedediting' => 'Ütjwidjet mögelkhaiden',
+'prefs-advancedrc' => 'Ütjwidjet mögelkhaiden',
+'prefs-advancedrendering' => 'Ütjwidjet mögelkhaiden',
+'prefs-advancedsearchoptions' => 'Ütjwidjet mögelkhaiden',
+'prefs-advancedwatchlist' => 'Ütjwidjet mögelkhaiden',
'prefs-displayrc' => "Mögelkhaiden för't uunwisin",
'prefs-displaysearchoptions' => "Mögelkhaiden för't uunwisin",
'prefs-displaywatchlist' => "Mögelkhaiden för't uunwisin",
'userrights-changeable-col' => 'Lasmootskapen, diar dü feranre könst',
'userrights-unchangeable-col' => 'Lasmootskapen, diar dü ei feranre könst',
'userrights-conflict' => 'Brükerrochten konflikt! Du din feranrangen noch ans iin.',
+'userrights-removed-self' => 'Dü heest din aanj brükerrochtem stregen. Dü könst nü ei muar üüb det sidj tugrip.',
# Groups
'group' => 'Skööl:',
'right-move' => 'Sidjen fersküüw',
'right-move-subpages' => 'Sidjen mä onersidjen fersküüw',
'right-move-rootuserpages' => 'Hood-brükersidj fersküüw',
-'right-movefile' => 'Dateien fersküüw',
+'right-movefile' => 'Datein fersküüw',
'right-suppressredirect' => "Bi't fersküüwen nian widjerfeerang iinracht",
-'right-upload' => 'Dateien huuchsjüür',
-'right-reupload' => 'Dateien auerskriiw',
-'right-reupload-own' => 'En datei auerskriiw, diar dü salew huuchsjüürd heest',
+'right-upload' => 'Datein huuchschüür',
+'right-reupload' => 'Datein auerskriiw',
+'right-reupload-own' => 'En datei auerskriiw, diar dü salew huuchschüürd heest',
'right-reupload-shared' => 'En datei auerskriiw, diar uun en gemiansoom archiif leit',
-'right-upload_by_url' => 'Dateien faan en URL-adres huuchsjüür',
+'right-upload_by_url' => 'Datein faan en URL-adres huuchschüür',
'right-purge' => 'Sidjen-cache leesag maage saner efterfraagin',
'right-autoconfirmed' => 'Hualew-seekert sidjen bewerke',
'right-bot' => 'Automatisiaret bewerke',
'right-apihighlimits' => 'Huuger taalen für API-uunfraagen brük',
'right-writeapi' => 'Write-API brük',
'right-delete' => 'Sidjen strik',
-'right-bigdelete' => 'Sidjen mä föl wersjuunen strik',
-'right-deletelogentry' => 'Enkelt wersjuunen faan en logbuk-iindrach strik of turaghaale',
-'right-deleterevision' => 'Enkelt wersjuunen faan en sidj strik of turaghaale',
+'right-bigdelete' => 'Sidjen mä föl werjuunen strik',
+'right-deletelogentry' => 'Enkelt werjuunen faan en logbuk-iindrach strik of turaghaale',
+'right-deleterevision' => 'Enkelt werjuunen faan en sidj strik of turaghaale',
'right-deletedhistory' => 'Stregen iindracher uun a ferluup uunluke, saner di tekst, di diartu hiart',
-'right-deletedtext' => 'Stregen tekst an feranerangen tesken stregen wersjuunen uunluke',
-'right-browsearchive' => 'Sjük stregen sidjen',
+'right-deletedtext' => 'Stregen tekst an feranrangen tesken stregen werjuunen uunluke',
+'right-browsearchive' => 'Schük stregen sidjen',
'right-undelete' => 'Stregen sidjen turaghaale',
-'right-suppressrevision' => 'Wersjuunen uunluke an turaghaale, diar uk för administratooren ei tu sen san',
+'right-suppressrevision' => 'Werjuunen uunluke an turaghaale, diar uk för administratooren ei tu sen san',
'right-suppressionlog' => 'Priwoot logbuken uunluke',
'right-block' => "Brükern spere (för't skriiwen)",
'right-blockemail' => "Brüker spere för't E-Mail sjüüren",
'right-protect' => 'Det seekerhaid faan sidjen feranre an seekerd sidjen bewerke',
'right-editprotected' => 'Seekerd sidjen bewerke (saner kaskaaden-seekerhaid)',
'right-editinterface' => 'Brüker-skak bewerke',
-'right-editusercssjs' => 'CSS- an JavaScript-dateien faan ööder brükern bewerke',
-'right-editusercss' => 'CSS-dateien faan ööder brükern bewerke',
-'right-edituserjs' => 'JavaScript-dateien faan ööder brükern bewerke',
-'right-rollback' => 'Feranerangen faan di leetst brüker gau turagsaat',
+'right-editusercssjs' => 'CSS- an JavaScript-datein faan ööder brükern bewerke',
+'right-editusercss' => 'CSS-datein faan ööder brükern bewerke',
+'right-edituserjs' => 'JavaScript-datein faan ööder brükern bewerke',
+'right-editmyusercss' => 'Aanj CSS-datein bewerke',
+'right-editmyuserjs' => 'Aanj JavaScript-datein bewerke',
+'right-viewmywatchlist' => "Sidjen uunluke, diar ik uun't uug behual wal",
+'right-editmywatchlist' => "Sidjen bewerke, diar dü uun't uug behual wel. Enkelt aktjuunen kön diar wat saner din dun feranre.",
+'right-rollback' => 'Feranrangen faan di leetst brüker gau turagsaat',
'right-markbotedits' => 'Gau turagsaatangen üs bot-iindracher kääntiakne',
'right-noratelimit' => 'Ei troch limits beskäären',
'right-import' => 'Bilen faan ööder Wikis importiare',
-'right-importupload' => 'Sidjen auer det huuchsjüüren faan dateien importiare',
+'right-importupload' => 'Sidjen auer det huuchschüüren faan datein importiare',
'right-patrol' => 'Werk faan ööder brükern üs kontroliaret kääntiakne',
'right-autopatrol' => 'Aanj werk aleewen üs kontroliaret kääntiakne',
'right-patrolmarks' => 'Kontrolkääntiaken uun a leetst feranrangen uunwise',
'right-unwatchedpages' => 'List faan sidjen uunluke, diar näämen üüb aachtet',
-'right-mergehistory' => 'Wersjuunshistoore faan sidjen tuupfeer',
+'right-mergehistory' => 'Ferluup faan sidjen tuupfeer',
'right-userrights' => 'Brükerrochten bewerke',
'right-userrights-interwiki' => 'Brükerrochten uun ööder Wikis bewerke',
'right-siteadmin' => 'Dootenbeenk spere an eebenmaage',
'right-override-export-depth' => 'Sidjen an onersidjen bit tu en jipde faan 5 eksportiare',
-'right-sendemail' => 'E-mails tu oudere brükere schake',
-'right-passwordreset' => 'Paaswurd faan en brüker turagsaat an det E-Mail diartu uunluke',
+'right-sendemail' => 'E-mails tu ööder brükern schüür',
+'right-passwordreset' => 'Paaswurd faan en brüker turagsaat an det e-mail diartu uunluke',
# Special:Log/newusers
-'newuserlogpage' => 'Nai-önjmäldings-logbök',
+'newuserlogpage' => 'Neiuunmeldangs-logbuk',
'newuserlogpagetext' => 'Detheer as en logbuk faan nei iinracht brükerkonten.',
# User rights log
-'rightslog' => 'Ruchte-logbök',
-'rightslogtext' => 'Det as det logbuk auer feranerangen faan brükerrochten.',
+'rightslog' => 'Brükerrochten-logbuk',
+'rightslogtext' => 'Det as det logbuk auer feranrangen faan brükerrochten.',
# Associated actions - in the sentence "You do not have permission to X"
'action-read' => 'jüdeer sid leese',
-'action-edit' => 'jüdeer sid beårbe',
-'action-createpage' => 'side mååge',
-'action-createtalk' => 'diskusjoonside mååge',
+'action-edit' => 'detdiar sidj tu bewerkin',
+'action-createpage' => 'nei sidjen tu maagin',
+'action-createtalk' => 'diskusjuunssidjen maage',
'action-createaccount' => 'jüdeer brükerkonto mååge',
'action-minoredit' => 'detdiar feranrang üs letj kääntiakne',
'action-move' => 'jüdeer sid ferschüwe',
'action-move-subpages' => 'jüdeer sid än unerside ferschüwe',
'action-move-rootuserpages' => 'hood-brükersidj fersküüw',
'action-movefile' => 'jüdeer sid ferschüwe',
-'action-upload' => 'Dateien huuchsjüür',
+'action-upload' => 'Datein huuchschüür',
'action-reupload' => 'det datei auerskriiw',
'action-reupload-shared' => 'det datei auerskriiw, diar uun en gemiansoom archiif leit',
'action-upload_by_url' => 'detdiar datei faan en URL-adres huuchtusjüüren',
'action-writeapi' => 'iin uun det API tu skriiwen',
'action-delete' => 'detdiar sidj strik',
-'action-deleterevision' => 'wersjuunen tu striken',
-'action-deletedhistory' => 'det list mä stregen wersjuunen uuntulukin',
-'action-browsearchive' => 'sjük stregen sidjen',
+'action-deleterevision' => 'werjuunen tu striken',
+'action-deletedhistory' => 'det list mä stregen werjuunen uuntulukin',
+'action-browsearchive' => 'schük stregen sidjen',
'action-undelete' => 'detdiar sidj weder iinstel',
-'action-suppressrevision' => 'det ferbürgen wersjuun uuntulukin an weder turagtuhaalin',
+'action-suppressrevision' => 'det ferbürgen werjuun uuntulukin an weder turagtuhaalin',
'action-suppressionlog' => 'iin uun det priwoot logbuk tu lukin',
'action-block' => 'di brüker tu sperin',
'action-protect' => 'det seekerhaid faan sidjen tu feranrin',
-'action-rollback' => 'feranerangen faan di leetst brüker gau turagtusaaten',
+'action-rollback' => 'feranrangen faan di leetst brüker gau turagtusaaten',
'action-import' => 'sidjen faan en ööder Wiki tu importiarin',
-'action-importupload' => 'sidjen auer det huuchsjüüren faan dateien tu importiarin',
+'action-importupload' => 'sidjen auer det huuchschüüren faan datein tu importiarin',
'action-patrol' => 'det werk faan ööder brükern üs kontroliaret tu kääntiaknin',
-'action-autopatrol' => 'aanj feranerangen üs kontroliaret tu kääntiaknin',
+'action-autopatrol' => 'aanj feranrangen üs kontroliaret tu kääntiaknin',
'action-unwatchedpages' => 'det list faan sidjen uuntulukin, diar näämen üüb aachtet',
-'action-mergehistory' => 'wersjuunshistoorin faan sidjen tuuptufeeren',
+'action-mergehistory' => 'werjuunshistoorin faan sidjen tuuptufeeren',
'action-userrights' => 'brükerrochten tu bewerkin',
'action-userrights-interwiki' => 'brükerrochten uun ööder Wikis tu bewerkin',
'action-siteadmin' => 'det dootenbeenk tu sperin an eebentumaagin',
-'action-sendemail' => 'e-mails sjüür',
+'action-sendemail' => 'e-mails tu schüüren',
+'action-editmywatchlist' => "sidjen, diar dü uun't uug behual wel, tu bewerkin",
+'action-viewmywatchlist' => "sidjen uuntulukin, diar dü uun't uug behual wel",
# Recent changes
-'nchanges' => '$1 {{PLURAL:$1|änring|änringe}}',
-'recentchanges' => 'Leeste änringe',
-'recentchanges-legend' => 'Wis-opsjoone',
+'nchanges' => '$1 {{PLURAL:$1|feranrang|feranrangen}}',
+'recentchanges' => 'Leetst feranrangen',
+'recentchanges-legend' => "Iinstelangen för't uunwisin",
'recentchanges-summary' => "Üüb detdiar sidj könst dü a leetst feranrangen faan't Nuurdfresk Wikipedia ferfulge.",
-'recentchanges-feed-description' => 'Ferfülie ma dåtheer feed da leeste änringe önj {{SITENAME}}.',
+'recentchanges-feed-description' => 'Mä didiar feed könst dü a leetst feranrangen faan {{SITENAME}} ferfulge.',
'recentchanges-label-newpage' => 'Nei sidj uunlaanj',
'recentchanges-label-minor' => 'Letj feranrang',
'recentchanges-label-bot' => 'Feranrang faan en bot',
'recentchanges-label-unpatrolled' => 'Detdiar feranrang as noch ei efterluket wurden',
-'rcnote' => "Wised {{PLURAL:\$1|wård '''1''' änring|wårde da leeste '''\$''' änringe}} {{PLURAL:\$2|foon e leest däi|foon da leeste '''\$2''' deege}}. Stånd: \$4, am e klook \$5.",
+'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' => 'Bloot änringe sunt $1 wise.',
-'rcshowhideminor' => 'Latje änringe $1',
-'rcshowhidebots' => 'Bots $1',
-'rcshowhideliu' => 'Önjmäldede brükere $1',
-'rcshowhideanons' => 'Anonymen brüker $1',
-'rcshowhidepatr' => '$1 efterluket feranrangen',
-'rcshowhidemine' => 'Äine tujeefte $1',
-'rclinks' => 'Wis da leeste $1 änringe foon da leeste $2 deege.<br />$3',
-'diff' => 'ferschääl',
-'hist' => 'färsjoone',
-'hide' => 'ütbläne',
-'show' => 'önjbläne',
+'rclistfrom' => 'Bluas feranrangen sant $1 wise.',
+'rcshowhideminor' => '$1 letj feranrangen',
+'rcshowhidebots' => '$1 bots',
+'rcshowhideliu' => '$1 uunmeldet brükern',
+'rcshowhideanons' => '$1 anonüüm brükern',
+'rcshowhidepatr' => 'Efterluket feranrangen $1',
+'rcshowhidemine' => '$1 min bidracher',
+'rclinks' => 'Wise a leetst $1 feranrangen faan a leetst $2 daar.<br />$3',
+'diff' => 'ferskeel',
+'hist' => 'werjuunen',
+'hide' => 'Fersteeg',
+'show' => 'Wise',
'minoreditletter' => 'L',
'newpageletter' => 'N',
'boteditletter' => 'B',
'rc_categories' => 'Bluas sidjen ütj jo kategoriin (apdiald mä „|“):',
'rc_categories_any' => 'Arke',
'rc-change-size-new' => "$1 {{PLURAL:$1|byte|bytes}} efter't feranrin",
-'newsectionsummary' => 'Nei ufdialang /* $1 */',
-'rc-enhanced-expand' => 'Detaile wise (JavaScript as nüsi)',
-'rc-enhanced-hide' => 'Detaile fersteege',
+'newsectionsummary' => 'Nei kirew /* $1 */',
+'rc-enhanced-expand' => 'Enkelthaiden wise (brükt JavaScript)',
+'rc-enhanced-hide' => 'Enkelthaiden fersteeg',
'rc-old-title' => 'tuiarst maaget üs „$1“',
# Recent changes linked
'recentchangeslinked' => 'Feranrangen bi ferlinket sidjen',
'recentchangeslinked-feed' => 'Feranrangen bi ferlinket sidjen',
'recentchangeslinked-toolbox' => 'Feranrangen bi ferlinket sidjen',
-'recentchangeslinked-title' => 'Feranrangen bi sidjen, diar faan "$1" ferlinket san',
+'recentchangeslinked-title' => 'Feranrangen bi sidjen, huar faan "$1" üüb ferwiset woort',
'recentchangeslinked-noresult' => 'Uun detdiar tidj san jo ferlinket sidjen ei feranert wurden.',
-'recentchangeslinked-summary' => "Jüdeer speetsjoolsid listet da leeste änringe bai da ferlinked side ap (btw. bai kategoriie tu da lasmoote foon jüdeer kategorii). Side aw din [[Special:Watchlist|eefterkiikliste]] san '''fåt''' deerstald.",
-'recentchangeslinked-page' => 'Sid:',
-'recentchangeslinked-to' => 'Wis änringe aw side, da heerjurt ferlinke',
+'recentchangeslinked-summary' => "Detdiar spezial-sidj wiset a leetst feranrangen faan ferwiset sidjen (of faan sidjen uun en was kategorii). Sidjen, diar dü [[Special:Watchlist|uun't uug behual]] wel, san '''fäät''' skrewen.",
+'recentchangeslinked-page' => 'Sidjennööm:',
+'recentchangeslinked-to' => 'Wise feranrangen üüb sidjen, diar heerhen ferwise.',
# Upload
-'upload' => 'Huuchschake',
+'upload' => 'Datei huuchschüür',
'uploadbtn' => 'Datei huuchsjüür',
'reuploaddesc' => "Ufbreeg an turag tu't sidj för't huuchsjüüren",
'upload-tryagain' => 'Feranert dateibeskriiwang ufsjüür',
-'uploadnologin' => 'Ai önjmälded',
-'uploadnologintext' => 'Dü möist [[Special:UserLogin|önjmälded weese]], am dat dü dootäie huuchsiinje koost.',
-'upload_directory_missing' => 'Dåt aplees-fertiiknis ($1) breecht än köö ai foon di wäbsärwer mååged wårde.',
-'upload_directory_read_only' => 'Dåt aplees-fertiiknis ($1) koon ai foon e wäbsärver beschraawen wårde.',
-'uploaderror' => 'Aplees-fäägel',
+'uploadnologin' => 'Ei uunmeldet',
+'uploadnologintext' => 'Dü skel di $1, amdat dü datein huuchschüür könst.',
+'upload_directory_missing' => 'Det archiif-fertiaknis ($1) as ei diar, an küd faan di webserver uk ei iinracht wurd.',
+'upload_directory_read_only' => 'Uun det archiif-fertiaknis ($1) küd faan di webserver ei skrewen wurd.',
+'uploaderror' => "Bi't huuchschüüren as wat skiaf gingen",
'upload-recreate-warning' => "'''Paase üüb: En datei mä didiar nööm as al ans stregen of fersköwen wurden.'''
Wat nü komt, as ütj det logbuk för't striken an fersküüwen faan detdiar datei.",
-'uploadtext' => "Brük detdiar formulaar, am nei dateien huuchtusjüüren.
+'uploadtext' => "Brük detdiar formulaar, am nei datein huuchtuschüüren.
-Gung tu det [[Special:FileList|list faan huuchsjüürd dateien]], am dateien tu sjüken of uuntuwisin. Luke uk iin uun't logbuk för't [[Special:Log/upload|huuchsjüüren]] of [[Special:Log/delete|striken]] faan dateien.
+Gung tu det [[Special:FileList|list faan huuchschüürd datein]], am datein tu schüken of uuntuwisin. Luke uk iin uun't logbuk för't [[Special:Log/upload|huuchschüüren]] of [[Special:Log/delete|striken]] faan datein.
Am en '''bil''' uun en artiikel tu brüken, brük en link faan det furem:
* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Datei.jpg]]</nowiki></code>''' – för en grat bil
* '''<code><nowiki>[[</nowiki>{{ns:file}}<nowiki>:Datei.png|200px|thumb|left|alternatiif tekst]]</nowiki></code>''' – för en 200px briad bil uun en box, mä „alternatiif tekst“ üs beskriiwang faan det bil
*'''<code><nowiki>[[</nowiki>{{ns:media}}<nowiki>:Datei.ogg]]</nowiki></code>''' – för en direkt ferwisang üüb det datei, saner det datei uuntuwisin",
-'upload-permitted' => 'Tuläät slacher faan dateien: $1.',
-'upload-preferred' => 'Slacher faan dateien, diar dü brük skulst: $1.',
-'upload-prohibited' => 'Ei tuläät slacher faan dateien: $1.',
+'upload-permitted' => 'Tuläät slacher faan datein: $1.',
+'upload-preferred' => 'Slacher faan datein, diar dü brük skulst: $1.',
+'upload-prohibited' => 'Ei tuläät slacher faan datein: $1.',
'uploadlog' => 'datei logbuk',
-'uploadlogpage' => 'Dåtäi-logbök',
-'uploadlogpagetext' => 'Detheer as det logbuk för huuchsjüürd dateien. Dü könst uk det [[Special:NewFiles|galerii faan nei dateien]] uunluke.',
+'uploadlogpage' => 'Datei-logbuk',
+'uploadlogpagetext' => 'Detheer as det logbuk för huuchschüürd datein. Dü könst uk det [[Special:NewFiles|galerii faan nei datein]] uunluke.',
'filename' => 'Dateinööm',
'filedesc' => 'Beskriiwang',
'fileuploadsummary' => 'Beskriiwang',
-'filereuploadsummary' => 'Feranerangen faan det datei:',
+'filereuploadsummary' => 'Feranrangen faan det datei:',
'filestatus' => 'Copyright-Status:',
'filesource' => 'Kwel',
-'uploadedfiles' => 'Huuchsjüürd dateien',
+'uploadedfiles' => 'Huuchschüürd datein',
'ignorewarning' => 'Ei üüb wäärnangen aachte an det datei seekre',
'ignorewarnings' => 'Ei am wäärnangen komre',
'minlength1' => 'Dateinöömer skel tumanst ään buksteew lung wees.',
'filename-toolong' => 'Dateinöömer mut ei linger üs 240 bytes wees.',
'badfilename' => 'Det datei hää en neien nööm füngen an het nü „$1“.',
'filetype-mime-mismatch' => 'Det dateiaanj „.$1“ paaset ei tu di MIME-Typ ($2).',
-'filetype-badmime' => 'Dateien faan di MIME-Typ „$1“ mut ei huuchsjüürd wurd.',
+'filetype-badmime' => 'Datein faan di MIME-Typ „$1“ mut ei huuchschüürd wurd.',
'filetype-bad-ie-mime' => 'Detdiar datei koon ei huuchsjüürd wurd, auer di Internet Explorer det för en „$1“ häält, an di slach as ei tuläät, auer hi gefeerelk wees küd.',
'filetype-unwanted-type' => "'''„.$1“''' as üs dateiformaat ei tuläät. Tuläät {{PLURAL:$3|as detdiar formaat|san jodiar formaaten}}: $2.",
-'filetype-banned-type' => "'''„.$1“''' {{PLURAL:$4|as nään tuläät slach faan dateien|san nian tuläät slacher faan dateien}}.
+'filetype-banned-type' => "'''„.$1“''' {{PLURAL:$4|as nään tuläät slach faan datein|san nian tuläät slacher faan datein}}.
{{PLURAL:$3|En tuläät slach as|Tuläät slacher san}} $2.",
'filetype-missing' => 'Det datei, wat dü huuchsjüür wel, hää nian aanj (t.b. „.jpg“).',
'empty-file' => 'Det datei, wat dü huuchsjüürd heest, as leesag.',
'filename-tooshort' => 'Di dateinööm as tu kurt.',
'filetype-banned' => 'Son slach faan datei as ei tuläät.',
'verification-error' => 'Det datei hää det seekerhaidspreew ei bestenen.',
-'hookaborted' => 'Det feranerang, wat dü maage wulst, as ufbreegen wurden.',
+'hookaborted' => 'Det feranrang, wat dü maage wulst, as faan en ütjwidjet software-funktjuun ufbreegen wurden.',
'illegal-filename' => 'Didiar dateinööm as ei tuläät.',
'overwrite' => 'Dü könst nian datei auerskriiw, wat al diar as.',
'unknown-error' => 'Diar as irgentwat skiaf gingen.',
'tmp-create-error' => 'Det tidjwiis datei küd ei maaget wurd.',
'tmp-write-error' => "Bi't skriiwen faan det tidjwiis datei as wat skiaf gingen.",
-'large-file' => 'Dateien skul ei grater wees üs $1, wan mögelk. Detdiar datei as $2 grat.',
+'large-file' => 'Datein skul ei grater wees üs $1, wan mögelk. Detdiar datei as $2 grat.',
'largefileserver' => 'Detdiar datei as grater, üs di server üüb iinsteld as.',
'emptyfile' => 'Det datei, wat dü huuchsjüürd heest, as leesag. Ferlicht heest dü di ferskrewen. Luke noch ans, of dü würelk detdiar datei huuchsjüür wel.',
'windows-nonascii-filename' => 'Detheer Wiki läät nian dateinöömer mä sondertiaken tu.',
Luke di det datei <strong>[[:$1]]</strong> noch ans uun.
Wan det det originaal bil as, säärst dü nään letjer maaget bil huuchsjüür.",
'file-thumbnail-no' => "Di dateinööm begant mä <strong>$1</strong>. Det as was en letjer maaget bil ''(thumbnail)''.
-Luke noch ans efter, of dü det bil uun fol grate diar heest, an do sjüür det huuch.",
-'fileexists-forbidden' => 'En datei mä didiar nööm jaft at al an koon ei auerskrewen wurd. Gung noch ans turag an sjüür det datei mä en öödern nööm huuch. [[File:$1|thumb|center|$1]]',
+Luke noch ans efter, of dü det bil uun fol grate diar heest, an do schüür det huuch.",
+'fileexists-forbidden' => 'En datei mä didiar nööm jaft at al an koon ei auerskrewen wurd.
+Gung noch ans turag an schüür det datei mä en öödern nööm huuch.
+[[File:$1|thumb|center|$1]]',
'fileexists-shared-forbidden' => "En datei mä didiar nööm stäänt al uun't gemiansoom archiif. Wan dü det bil likes huuchsjüür wel, gung turag nem en öödern nööm.
[[File:$1|thumb|center|$1]]",
-'file-exists-duplicate' => 'Detdiar datei as en duplikaat faan {{PLURAL:$1|detdiar datei|$1 dateien}}:',
+'file-exists-duplicate' => 'Detdiar datei as en duplikaat faan {{PLURAL:$1|detdiar datei|$1 datein}}:',
'file-deleted-duplicate' => "En duplikaat faan detdiar datei ([[:$1]]) as al ans stregen wurden. Luke iin uun logbuk för't striken, iar dü det noch ans huuchsjüürst.",
'uploadwarning' => 'Wäärnang',
'uploadwarning-text' => 'Feranre det datei-beskriiwang an fersjük det noch ans nei.',
'savefile' => 'Datei seekre',
-'uploadedimage' => 'heet "[[$1]]" huuchsånd',
-'overwroteimage' => 'hää en nei wersjuun faan „[[$1]]“ huuchsjüürd',
+'uploadedimage' => 'hää "[[$1]]" huuchschüürd',
+'overwroteimage' => 'hää en nei werjuun faan „[[$1]]“ huuchsjüürd',
'uploaddisabled' => 'Huuchsjüüren as ei aktiwiaret',
'copyuploaddisabled' => 'Huuchsjüüren faan URLs as ei aktiwiaret.',
'uploadfromurl-queued' => 'Din huuchsjüürd datei teewt.',
-'uploaddisabledtext' => 'Det huuchsjüüren faan dateien as ei aktiwiaret.',
-'php-uploaddisabledtext' => 'Det huuchsjüüren faan dateien as uun PHP ei aktiwiaret.
+'uploaddisabledtext' => 'Det huuchschüüren faan datein as ei aktiwiaret.',
+'php-uploaddisabledtext' => 'Det huuchschüüren faan datein as uun PHP ei aktiwiaret.
Luke di det iinstelang faan <code>file_uploads</code> uun.',
'uploadscripted' => 'Uun detdiar datei stäänt HTML- of Scriptcode, an küd ütj fersen faan en browser ütjfeerd wurd.',
'uploadvirus' => 'Uun detdiar datei as en wiirus! Details: $1',
'uploadjava' => 'Detdiar as en ZIP-datei mä en CLASS-datei faan Java.
-Java-dateien kön ei tuläät wurd, auer jo det seekerhaid uun fraag stel küd.',
+Java-datein kön ei tuläät wurd, auer jo det seekerhaid uun fraag stel küd.',
'upload-source' => 'Kweldatei',
'sourcefilename' => 'Kweldateinööm:',
'sourceurl' => 'Kwel-URL:',
'upload-too-many-redirects' => 'Det URL hää tuföl widjerfeerangen.',
'upload-unknown-size' => 'Ünbekäänd grate',
'upload-http-error' => 'Diar as en HTTP-feeler mä: $1',
-'upload-copy-upload-invalid-domain' => 'Kopiin faan dateien kön faan detdiar domeen ei huuchsjüürd wurd.',
+'upload-copy-upload-invalid-domain' => 'Kopiin faan datein kön faan detdiar domeen ei huuchschüürd wurd.',
# File backend
'backend-fail-stream' => 'Det datei $1 küd ei auerdraanj wurd.',
# Special:UploadStash
'uploadstash' => "Teskenseekerang bi't huuchsjüüren",
-'uploadstash-summary' => 'Üüb detdiar sidj kem dateien föör, diar man jüst huuchsjüürd wurden san. Bluas, hoker jo huuchsjüürd hää, koon jo sä.',
-'uploadstash-clear' => 'Teskenseekert dateien wechnem',
-'uploadstash-nofiles' => 'Diar san nian teskenseekert dateien.',
-'uploadstash-badtoken' => 'Teskenseekert dateien küd ei wechnimen wurd. Ferlicht beest dü ei muar uunmeldet. Fersjük det man noch ans.',
-'uploadstash-errclear' => 'Teskenseekert dateien küd ei wechnimen wurd.',
-'uploadstash-refresh' => 'List mä dateien aktualisiare.',
+'uploadstash-summary' => 'Üüb detdiar sidj kem datein föör, diar man jüst huuchschüürd wurden san. Bluas, hoker jo huuchschüürd hää, koon jo sä.',
+'uploadstash-clear' => 'Teskenseekert datein wechnem',
+'uploadstash-nofiles' => 'Diar san nian teskenseekert datein.',
+'uploadstash-badtoken' => 'Teskenseekert datein küd ei wechnimen wurd. Ferlicht beest dü ei muar uunmeldet. Ferschük det man noch ans.',
+'uploadstash-errclear' => 'Teskenseekert datein küd ei wechnimen wurd.',
+'uploadstash-refresh' => 'List mä datein aktualisiare.',
'invalid-chunk-offset' => 'Di began as diar ei tuläät.',
# img_auth script messages
'img-auth-accessdenied' => 'Tugrip ei mögelk',
'img-auth-nopathinfo' => 'Diar as nään PATH_INFO.
-Di server koon detdiar informatsjuun ei widjerdu.
+Di server koon detdiar informatjuun ei widjerdu.
Ferlicht as det uun CGI iinbünjen an komt diaram uk ei mä „img_auth“ turocht.
Üüb det sidj https://www.mediawiki.org/wiki/Manual:Image_Authorization (ingelsk) stäänt diar muar auer.',
'img-auth-notindir' => 'Detdiar fertiaknis as ei föörsen tu huuchsjüüren.',
'img-auth-badtitle' => 'Mä „$1“ küd nään tiitel maaget wurd.',
'img-auth-nologinnWL' => "Dü beest ei uunmeldet, an „$1“ stäänt ei uun't whitelist.",
'img-auth-nofile' => 'Diar as nään datei „$1“.',
-'img-auth-isdir' => 'Dü wel üüb en fertiaknis „$1“ tugrip. Dü mutst bluas üüb dateien tugrip.',
+'img-auth-isdir' => 'Dü wel üüb en fertiaknis „$1“ tugrip. Dü mutst bluas üüb datein tugrip.',
'img-auth-streaming' => '„$1“ woort iinleesen.',
-'img-auth-public' => 'Mä img_auth.php wurd dateien faan en priwoot Wiki ütjden.
+'img-auth-public' => 'Mä img_auth.php wurd datein faan en priwoot Wiki ütjden.
Detheer as oober en öfentelk Wiki.
För a seekerhaid as img_auth.php ei aktiwiaret.',
'img-auth-noread' => 'Di brüker hää nian rocht, „$1“ tu leesen.',
'upload_source_file' => '(en datei üüb dan computer)',
# Special:ListFiles
-'listfiles-summary' => 'Üüb detdiar spezialsidj wurd aal a huuchsjüürd dateien uunwiset. Dü könst uk efter brükern filtre, diar dateien tuleetst bewerket haa.',
-'listfiles_search_for' => 'Sjük efter det datei:',
+'listfiles-summary' => 'Üüb detdiar spezialsidj wurd aal a huuchschüürd datein uunwiset. Dü könst uk efter brükern filtre, diar datein tuleetst bewerket haa.',
+'listfiles_search_for' => 'Schük efter det datei:',
'imgfile' => 'datei',
-'listfiles' => 'List faan dateien',
+'listfiles' => 'List faan datein',
'listfiles_thumb' => 'Letjer bil',
'listfiles_date' => 'Dootem',
'listfiles_name' => 'Nööm',
'listfiles_user' => 'Brüker',
'listfiles_size' => 'Grate',
'listfiles_description' => 'Beskriiwang',
-'listfiles_count' => 'Wersjuunen',
+'listfiles_count' => 'Werjuunen',
# File description page
'file-anchor-link' => 'Datei',
-'filehist' => 'Dååtäifärsjoone',
-'filehist-help' => 'Klik aw en tidpunkt, am jüdeer färsjoon önjiinjtunaamen.',
-'filehist-deleteall' => 'åle färsjoone strike',
-'filehist-deleteone' => 'jüdeer färsjoon strike',
-'filehist-revert' => 'tubääg seete',
-'filehist-current' => 'aktuäl',
-'filehist-datetime' => 'Färsjoon foon e',
-'filehist-thumb' => 'Forlökbil',
-'filehist-thumbtext' => 'Forlökbil for Färsjoon foon $2, am e klook $3',
-'filehist-nothumb' => 'Niinj forlökbil deer',
-'filehist-user' => 'brüker',
-'filehist-dimensions' => 'Mätje',
+'filehist' => 'Dateiwerjuunen',
+'filehist-help' => 'Klike üüb en tidjponkt, am detdiar werjuun uuntulukin.',
+'filehist-deleteall' => 'aal a werjuunen strik',
+'filehist-deleteone' => 'detdiar werjuun strik',
+'filehist-revert' => 'turagsaat',
+'filehist-current' => 'aktuel',
+'filehist-datetime' => 'Werjuun faan',
+'filehist-thumb' => 'Föörskaubil',
+'filehist-thumbtext' => 'Föörskau för det werjuun faan $2, klook $3',
+'filehist-nothumb' => 'Diar as nian föörskaubil',
+'filehist-user' => 'Brüker',
+'filehist-dimensions' => 'Miaten',
'filehist-filesize' => 'Dateigrate',
-'filehist-comment' => 'Komentoor',
+'filehist-comment' => 'Komentaar',
'filehist-missing' => 'Datei ei diar',
'imagelinks' => 'Hü det datei brükt woort',
-'linkstoimage' => '{{PLURAL:$1|Jü füliend sid ferwånt|Da füliende $1 side ferwiinje}} jüdeer dååtäi:',
+'linkstoimage' => '{{PLURAL:$1|Detdiar sidj brükt|Jodiar $1 sidjen brük}} detdiar datei:',
+'linkstoimage-more' => 'Muar üs $1 {{PLURAL:$1|sidj ferwiset|sidjen ferwise}} üüb detdiar datei.
+Det list wiset {{PLURAL:$1|at iarst ferwisang|a iarst $1 ferwisangen}} üüb detdiar datei.
+Dü könst uk det [[Special:WhatLinksHere/$2|hial list]] uunluke.',
'nolinkstoimage' => 'Nään artiikel brükt detheer datei',
-'sharedupload' => 'Jüdeer dååtäi ståmt üt $1 än mötj foon ouder prujäkte brükt wårde.',
+'morelinkstoimage' => 'Dü könst [[Special:WhatLinksHere/$1|muar ferwisangen]] üüb detdiar datei uunwise läät.',
+'linkstoimage-redirect' => '$1 (widjerfeerang) $2',
+'duplicatesoffile' => '{{PLURAL:$1|Detdiar datei as en kopii|$1 datein san kopiin}} faan det datei ([[Special:FileDuplicateSearch/$2|muar diartu]]):',
+'sharedupload' => 'Detdiar datei komt faan $1 an mut uk för ööder projekten brükt wurd.',
+'sharedupload-desc-there' => 'Detdiar datei as faan $1 an koon faan ööder projekten brükt wurd.
+Üüb det [$2 beskriiwangssidj] stäänt muar diartu.',
'sharedupload-desc-here' => "Detheer bil as faan $1 an koon faan ööder projekten brükt wurd.
Det beskriiwang faan't [$2 beskriiwangssidj] woort oner uunwiset.",
-'uploadnewversion-linktext' => 'En nai färsjoon foon jüdeer dåtäi huuchsiinje',
+'sharedupload-desc-edit' => 'Detdiar datei as faan $1 an koon faan ööder projekten brükt wurd.
+Ferlicht wel dü det [$2 beskriiwangssidj] feranre.',
+'sharedupload-desc-create' => 'Detdiar datei as faan $1 an koon faan ööder projekten brükt wurd.
+Ferlicht wel dü det [$2 beskriiwangssidj] feranre.',
+'filepage-nofile' => 'En datei mä didiar nööm jaft at ei.',
+'filepage-nofile-link' => 'En datei mä didiar nööm jaft at ei, man dü könst det [$1 huuchsjüür].',
+'uploadnewversion-linktext' => 'En nei werjuun faan detdiar datei huuchschüür',
'shared-repo-from' => 'foon $1',
+'shared-repo' => 'en gemiansoom archiif',
+'upload-disallowed-here' => 'Dü könst detdiar datei ei auerskriiw.',
+
+# File reversion
+'filerevert' => '"$1" turagsaat',
+'filerevert-legend' => 'Datei turagsaat',
+'filerevert-intro' => "Dü saatst det datei '''[[Media:$1|$1]]''' üüb det [$4 werjuun faan $2, klook $3] turag.",
+'filerevert-comment' => 'Grünj:',
+'filerevert-defaultcomment' => 'Turagsaat üüb det werjuun faan $1, klook $2',
+'filerevert-submit' => 'Turagsaat',
+'filerevert-success' => "'''[[Media:$1|$1]]''' as üüb det [$4 werjuun faan $3, klook $2] turagsaat wurden.",
+'filerevert-badversion' => 'Diar as nään werjuun faan detdiar datei tu didiar tidjponkt.',
+
+# File deletion
+'filedelete' => 'Strik "$1"',
+'filedelete-legend' => 'Strik datei',
+'filedelete-intro' => "Dü strikst det datei '''„[[Media:$1|$1]]“''' an uk aal a werjuunen.",
+'filedelete-intro-old' => "Dü strikst faan det datei '''[[Media:$1|$1]]''' det [$4 werjuun faan $2, klook $3].",
+'filedelete-comment' => 'Grünj:',
+'filedelete-submit' => 'Strik',
+'filedelete-success' => "'''„$1“''' as stregen wurden.",
+'filedelete-success-old' => "Faan det datei '''„[[Media:$1|$1]]“''' as det werjuun faan $2, klook $3 stregen wurden.",
+'filedelete-nofile' => "'''$1''' jaft at ei.",
+'filedelete-nofile-old' => "Diar as nian werjuun faan '''$1''' mä sok kääntiaken uun't archiif.",
+'filedelete-otherreason' => 'Ööder/noch en grünj:',
+'filedelete-reason-otherlist' => 'Ööder grünj:',
+'filedelete-reason-dropdown' => "*Grünjer för't striken
+** Kopiarrochten ei beaachtet
+** Kopii faan en datei",
+'filedelete-edit-reasonlist' => "Grünjer för't striken bewerke",
+'filedelete-maintenance' => 'Det striken of turaghaalin faan datein gongt uun uugenblak ei.',
+'filedelete-maintenance-title' => 'Det datei koon ei stregen wurd',
+
+# MIME search
+'mimesearch' => 'Efter MIME-Typ schük',
+'mimesearch-summary' => 'Üüb detheer sidj könst dü datein efter hör MIME-Typ filtre.
+Det formoot as leewen slach/onerslach üs uun det bispal: <code>image/jpeg</code>.',
+'mimetype' => 'MIME-Typ:',
+'download' => 'Deelloose',
+
+# Unwatched pages
+'unwatchedpages' => "Sidjen, diar näämen uun't uug hää",
+
+# List redirects
+'listredirects' => 'Widjerfeerangen',
+
+# Unused templates
+'unusedtemplates' => 'Ei iinbünjen föörlaagen',
+'unusedtemplatestext' => 'Sidjen uun a {{ns:template}}-nöömrüm, diar ei uun ööder sidjen iinbünjen san.
+Iar dü ian strikst, stel seeker, dat diar nian ferwisangen üüb detdetdiar föörlag saan.',
+'unusedtemplateswlh' => 'Ööder ferwisangen',
# Random page
-'randompage' => 'Tufali sid',
+'randompage' => 'Tufelag sidj',
+'randompage-nopages' => 'Diar san nian sidjen uun {{PLURAL:$2|nöömrüm|nöömrümer}}: $1.',
+
+# Random redirect
+'randomredirect' => 'Tufelag widjerfeerang',
+'randomredirect-nopages' => 'Uun di nöömrüm „$1“ san nian widjerfeerangen.',
# Statistics
'statistics' => 'Statistik',
-
+'statistics-header-pages' => 'Sidjenstatistik',
+'statistics-header-edits' => 'Statistik faan feranrangen',
+'statistics-header-views' => 'Statistik faan kliks üüb sidjen',
+'statistics-header-users' => 'Brükerstatistik',
+'statistics-header-hooks' => 'Ööder statistiken',
+'statistics-articles' => 'Artiikler',
+'statistics-pages' => 'Sidjen',
+'statistics-pages-desc' => 'Aal a sidjen uun det wiki, mä diskusjuunssidjen, widjerfeerangen asw.',
+'statistics-files' => 'Huuchschüürd datein',
+'statistics-edits' => 'Feranrangen, sant {{SITENAME}} maaget wurden as',
+'statistics-edits-average' => "Feranrangen per sidj uun't madel",
+'statistics-views-total' => 'Kliks üüb det sidj',
+'statistics-views-total-desc' => 'Kliks üüb sidjen, diar\'t goorei jaft of "Spezial-"sidjen wurd ei mätääld.',
+'statistics-views-peredit' => 'Kliks per feranrang',
+'statistics-users' => 'Registriaret [[Special:ListUsers|brükern]]',
+'statistics-users-active' => 'Aktiif brükern',
+'statistics-users-active-desc' => 'Brükern, diar wat bewerket haa uun a leetst {{PLURAL:$1|dai|$1 daar}}',
+'statistics-mostpopular' => 'Sidjen mä a miast kliks',
+
+'disambiguations' => 'Sidjen, diar üüb muardüüdag artiikler ferwise',
'disambiguationspage' => 'Template:Muardüüdag artiikel',
+'disambiguations-text' => "Jodiar sidjen haa tumanst ian ferwisang üüb en '''muardüüdagen artiikel'''. Ferlicht skul jo beeder direkt üüb det mend sidj ferwise.
+
+En sidj täält üs '''muardüüdag artiikel''', wan hat tumanst ian föörlaag faan det [[MediaWiki:Disambiguationspage|Disambiguationspage]] häält.",
+
+'pageswithprop' => 'Sidjen mä en sidjeneegenoort',
+'pageswithprop-legend' => 'Sidjen mä en sidjeneegenoort',
+'pageswithprop-text' => 'Detheer Spezial-sidj feert sidjen mä was sidjeneegenoorten ap.',
+'pageswithprop-prop' => 'Sidjeneegenoort:',
+'pageswithprop-submit' => 'Widjer',
+
+'doubleredirects' => 'Dobelt widjerfeerangen',
+'doubleredirectstext' => "Detheer list feert widjerfeerangen ap, diar üüb widjerfeerangen widjer feer.
+Uun arke rä stun ferwisangen tu't iarst an ööder widjerfeerang an uk tu det sidj, huar det ööder widjerfeerang üüb ferwiset. <del>Trochstregen</del> iindracher san al bewerket wurden.",
+'double-redirect-fixed-move' => '[[$1]] as fersköwen wurden an feert nü widjer tu [[$2]].',
+'double-redirect-fixed-maintenance' => 'Dobelt widjerfeerang faan [[$1]] tu [[$2]] as apredet wurden.',
+'double-redirect-fixer' => 'Bot för widjerfeerangen',
+
+'brokenredirects' => 'Uunstaken widjerfeerangen',
+'brokenredirectstext' => "Jodiar widjerfeerangen ferwise üüb en sidj, diar't goorei jaft:",
+'brokenredirects-edit' => 'bewerke',
+'brokenredirects-delete' => 'strik',
+
+'withoutinterwiki' => 'Sidjen saner ferwisangen tu ööder spriaken',
+'withoutinterwiki-summary' => 'Jodiar sidjen haa nian ferwisangen tu ööder spriaken.',
+'withoutinterwiki-legend' => 'Prefix',
+'withoutinterwiki-submit' => 'Wise',
+
+'fewestrevisions' => 'Sidjen mä manst feranrangen',
# Miscellaneous special pages
'nbytes' => '$1 {{PLURAL:$1|byte|bytes}}',
'ncategories' => '{{PLURAL:$1|kategorii|kategoriie}}',
+'ninterwikis' => '$1 {{PLURAL:$1|interwiki|interwikis}}',
'nlinks' => '$1 {{PLURAL:$1|link|links}}',
-'nmembers' => '{{PLURAL:$1|1 önjdraag|$1 önjdraage}}',
-'prefixindex' => 'Åle side (ma prefiks)',
+'nmembers' => '{{PLURAL:$1|1 iindrach|$1 iindracher}}',
+'nrevisions' => '$1 {{PLURAL:$1|feranrang|feranrangen}}',
+'nviews' => '$1 {{PLURAL:$1|klik|kliks}}',
+'nimagelinks' => 'Brükt üüb $1 {{PLURAL:$1|sidj|sidjen}}',
+'ntransclusions' => 'brükt üüb $1 {{PLURAL:$1|sidj|sidjen}}',
+'specialpage-empty' => 'Diar san tu tidj nian iindracher.',
+'lonelypages' => 'Sidjen, diar ei üüb ferwiset woort',
+'lonelypagestext' => 'Jodiar sidjen san ei uun ööder sidjen iinbünjen an diar woort uun {{SITENAME}} uk ei üüb ferwiset.',
+'uncategorizedpages' => 'Sidjen saner kategorii',
+'uncategorizedcategories' => 'Kategoriin saner kategorii',
+'uncategorizedimages' => 'Datein saner kategorii',
+'uncategorizedtemplates' => 'Föörlaagen saner kategorii',
+'unusedcategories' => 'Kategoriin, diar ei brükt wurd',
+'unusedimages' => 'Datein, diar ei brükt wurd',
+'popularpages' => 'Miats uunluket sidjen',
+'wantedcategories' => 'Kategoriin, diar brükt wurd',
+'wantedpages' => 'Sidjen, diar brükt wurd',
+'wantedpages-badtitle' => 'Diar as en artiikelnööm ei tuläät uun: $1',
+'wantedfiles' => 'Datein, diar brükt wurd',
+'wantedfiletext-cat' => 'Jodiar datein wurd brükt, oober san ei diar. Datein faan ööder archiiwen wurd apfeerd, san oober <del>trochstregen</del>. An jo sidjen, diar sok datein brük, stun uun [[:$1]].',
+'wantedfiletext-nocat' => 'Jodiar datein wurd brükt, oober san ei diar. Datein faan ööder archiiwen wurd apfeerd, san oober <del>trochstregen</del>.',
+'wantedtemplates' => 'Föörlaagen, diar brükt wurd',
+'mostlinked' => 'Sidjen, huar a miast ööder sidjen üüb ferwise',
+'mostlinkedcategories' => 'Miast brükt kategoriin',
+'mostlinkedtemplates' => 'Miast brükt föörlaagen',
+'mostcategories' => 'Sidjen mä a miast kategoriin',
+'mostimages' => 'Datein, huar a miast sidjen üüb ferwise',
+'mostinterwikis' => 'Sidjen mä a miast ferwisangen tu ööder spriaken',
+'mostrevisions' => 'Sidjen mä miast feranrangen',
+'prefixindex' => 'Aal a sidjen (mä prefix)',
+'prefixindex-namespace' => 'Aal a sidjen mä prefix (nöömrüm $1)',
+'shortpages' => 'Kurt sidjen',
+'longpages' => 'Lung sidjen',
+'deadendpages' => 'Sidjen saner ferwisangen',
+'deadendpagestext' => 'Jodiar sidjen ferwise ei üüb ööder sidjen uun {{SITENAME}}.',
+'protectedpages' => 'Seekert sidjen',
+'protectedpages-indef' => 'Bluas permanent seekert sidjen uunwise',
+'protectedpages-cascade' => 'Bluas sidjen mä kaskaaden-seekerhaid',
+'protectedpagestext' => 'Jodiar spezial-sidjen san jin feranrin an fersküüwen seekert.',
+'protectedpagesempty' => 'Uun uugenblak san sok sidjen ei seekert.',
+'protectedtitles' => 'Seekert sidjennöömer',
+'protectedtitlestext' => 'Jodiar sidjennöömer kön ei brükt wurd.',
+'protectedtitlesempty' => 'Uun uugenblak san sok sidjen ei speret.',
+'listusers' => 'Brükerfertiaknis',
+'listusers-editsonly' => 'Wise bluas aktiif brükern',
+'listusers-creationsort' => 'Sortiare efter dootem',
+'usereditcount' => '{{PLURAL:$1|feranrang|$1 feranrangen}}',
'usercreated' => '{{GENDER:$3|Maaget}} di $1 am a klook $2',
-'newpages' => 'Naie side',
+'newpages' => 'Nei sidjen',
'newpages-username' => 'Brükernoome:',
-'move' => 'Ferschüwe',
-'movethispage' => 'Sid ferschüwe',
-'pager-newer-n' => '{{PLURAL:$1|näisten|näiste $1}}',
-'pager-older-n' => '{{PLURAL:$1|åleren|ålere $1}}',
+'ancientpages' => 'Al loong ei muar bewerket sidjen',
+'move' => 'Fersküüw',
+'movethispage' => 'Detdiar sidj fersküüw',
+'unusedimagestext' => "Jodiar datein san uun nään artiikel iinbünjen. Det koon oober lacht wees, dat ööder wääbsidjen diarüüb ferwise. Sodenang wurd jo heer apfeerd, uk wan's huarööders brükt wurd.",
+'unusedcategoriestext' => "Jodiar kategorii-sidjen san diar, likes dat's leesag san an uun uugenblak ei brükt wurd.",
+'notargettitle' => 'Nian sidj uunden',
+'notargettext' => 'Dü heest nian sidj uunden, huar det funktjuun werke skal.',
+'nopagetitle' => 'Kwelsidj as ei diar',
+'nopagetext' => 'Det sidj, wat fersköwen wurd skal, as ei diar.',
+'pager-newer-n' => '{{PLURAL:$1|1 neier|$1 neier}}',
+'pager-older-n' => '{{PLURAL:$1|1 ääler|$1 ääler}}',
'suppress' => 'Oversight',
+'querypage-disabled' => 'Detdiar spezial-sidj as ei aktiif, am det süsteem ei tu auerläästin.',
# Book sources
-'booksources' => 'ISBN-säkj',
-'booksources-search-legend' => 'Säk eefter betii-kwäle for böke',
-'booksources-go' => 'Säke',
+'booksources' => 'Schük efter ISBN-numer',
+'booksources-search-legend' => 'Schük efter bukloodens',
+'booksources-go' => 'Widjer',
+'booksources-text' => 'Detdiar list ferwiset üüb wääbsteeden, diar nei an brükt buken ferkuupe. Diar feist dü uk muar tu weden. {{SITENAME}} hää mo jodiar kuuplidj oober niks tu dun.',
+'booksources-invalid-isbn' => 'Detdiar ISBN as woorskiinelk ferkiard. Luke noch ans efter, of det rocht auerdraanj wurden as.',
# Special:Log
'specialloguserlabel' => 'Brüker:',
-'log' => 'Logböke',
+'speciallogtitlelabel' => 'Mual (sidjennööm of brüker):',
+'log' => 'Logbuken',
+'all-logs-page' => 'Aal a öfentelk logbuken',
+'alllogstext' => 'Diar wurd aal a logbuken faan {{SITENAME}} uunwiset.
+Det woort efter logbukslach, brüker of sidjennööm uunwiset. Grat- an letjskriiwang skel beaachtet wurd.',
+'logempty' => 'Diar as niks uun.',
+'log-title-wildcard' => 'Sidjennööm begant mä ...',
+'showhideselectedlogentries' => 'Wise/fersteeg jodiar logbukiindracher',
# Special:AllPages
-'allpages' => 'Åle side',
+'allpages' => 'Aal a sidjen',
'alphaindexline' => '$1 bit $2',
'nextpage' => 'Näist sid ($1)',
-'prevpage' => 'Leest sid ($1)',
-'allpagesfrom' => 'Side wise sunt:',
-'allpagesto' => 'Side wise bit:',
-'allarticles' => 'Åle side',
+'prevpage' => 'Leetst sidj ($1)',
+'allpagesfrom' => 'Sidjen wise sant:',
+'allpagesto' => 'Sidjen wise bit:',
+'allarticles' => 'Aal a sidjen',
+'allinnamespace' => 'Aal a sidjen (nöömrüm: $1)',
+'allnotinnamespace' => 'Aal a sidjen (saner nöömrüm $1)',
'allpagesprev' => 'Leest',
'allpagesnext' => 'Näist',
-'allpagessubmit' => 'Önjwiinje',
+'allpagessubmit' => 'Widjer',
+'allpagesprefix' => 'Sidjen uunwise mä prefix:',
+'allpagesbadtitle' => 'Didiar sidjennööm gongt ei. Hi hed ferlicht en spriak-prefix of diar san ei tuläät tiakens uun.',
+'allpages-bad-ns' => 'Di nöömrüm „$1“ komt uun {{SITENAME}} ei föör.',
+'allpages-hide-redirects' => 'Widjerfeerangen fersteeg',
+
+# SpecialCachedPage
+'cachedspecial-viewing-cached-ttl' => 'Dü lukest en werjuun uun a cache uun. Det koon al $1 ual wees.',
+'cachedspecial-viewing-cached-ts' => 'Dü lukest en werjuun uun a cache uun. Det as ferlicht ei üüb a leetst stant.',
+'cachedspecial-refresh-now' => 'Neist werjuun uunluke.',
# Special:Categories
'categories' => 'Kategoriin',
+'categoriespagetext' => '{{PLURAL:$1|Detdiar kategorii häält|Jodiar kategoriin hual}} sidjen of datein.
+[[Special:UnusedCategories|Leesag kategoriin]] wurd heer ei uunwiset.
+Luke uk bi det list faan [[Special:WantedCategories|nuadag kategoriin]].',
+'categoriesfrom' => 'Wise kategoriin mä began üüb:',
+'special-categories-sort-count' => 'Efter taalen sortiaret',
+'special-categories-sort-abc' => "Efter't alfabeet sortiaret",
+
+# Special:DeletedContributions
+'deletedcontributions' => 'Stregen bidracher',
+'deletedcontributions-title' => 'Stregen bidracher',
+'sp-deletedcontributions-contribs' => 'Bidracher',
# Special:LinkSearch
-'linksearch' => "Sjük efter ferwisangen uun't näät",
-'linksearch-ns' => 'Noomerüm:',
-'linksearch-ok' => 'Säk',
+'linksearch' => "Schük efter ferwisangen uun't näät",
+'linksearch-pat' => 'Schükmünster:',
+'linksearch-ns' => 'Nöömrüm:',
+'linksearch-ok' => 'Schük',
+'linksearch-text' => 'Diar kön wariaabeln üs t.b. "*.bispal.de" brükt wurd. Tumanst ian TLD üs t.b. "*.org" skal uunden wurd.<br />{{PLURAL:$2|Protokol|Protokolen}}: <code>$1</code> (Diar woort http nimen, wan niks ööders uunden as.)',
'linksearch-line' => '$2 ferwiset üüb $1',
+'linksearch-error' => 'Wariaabeln ("*") mut bluas bi a began faan en URL uunden wurd.',
+
+# Special:ListUsers
+'listusersfrom' => 'Wise brükern mä began üüb:',
+'listusers-submit' => 'Wise',
+'listusers-noresult' => 'Nään brüker fünjen.',
+'listusers-blocked' => '(speret)',
+
+# Special:ActiveUsers
+'activeusers' => 'Aktiif brükern',
+'activeusers-intro' => 'Jodiar brükern wiar {{PLURAL:$1|di leetst dai| a leetst $1 daar}} aktiif.',
+'activeusers-count' => '$1 {{PLURAL:$1|aktjuun|aktjuunen}} uun a {{PLURAL:$3|leetst 24 stünj|leetst $3 daar}}',
+'activeusers-from' => 'Wise brükern mä began üüb:',
+'activeusers-hidebots' => 'Bots fersteeg',
+'activeusers-hidesysops' => 'Administratooren fersteeg',
+'activeusers-noresult' => 'Nään brükern fünjen.',
# Special:ListGroupRights
-'listgrouprights-members' => '(lasmoote-list)',
+'listgrouprights' => 'Brükersköölrochten',
+'listgrouprights-summary' => 'Jodiar brükersköölen an hör rochten san uun detheer Wiki fäästlaanj wurden.
+Muar diartu fanjst dü üüb [[{{MediaWiki:Listgrouprights-helppage}}|detdiar sidj]].',
+'listgrouprights-key' => '* <span class="listgrouprights-granted">Tugestenen rocht</span>
+* <span class="listgrouprights-revoked">Wechnimen rocht</span>',
+'listgrouprights-group' => 'Skööl',
+'listgrouprights-rights' => 'Rochten',
+'listgrouprights-helppage' => 'Help:Brükersköölrochten',
+'listgrouprights-members' => '(lasmooten)',
+'listgrouprights-addgroup' => 'Brüker tu {{PLURAL:$2|detdiar skööl|jodiar sköölen}} tuwise: $1',
+'listgrouprights-removegroup' => 'Brüker ütj {{PLURAL:$2|detdiar skööl|jodiar sköölen}} ütjnem: $1',
+'listgrouprights-addgroup-all' => 'Brüker tu aal a sköölen tuwise',
+'listgrouprights-removegroup-all' => 'Brüker ütj aal a sköölen wechnem',
+'listgrouprights-addgroup-self' => 'Aanj brükerkonto tu {{PLURAL:$2|detdiar skööl|jodiar sköölen}} tuwise: $1',
+'listgrouprights-removegroup-self' => 'Aanj brükerkonto faan {{PLURAL:$2|detdiar skööl|jodiar sköölen}} wechnem: $1',
+'listgrouprights-addgroup-self-all' => "Koon aal a sköölen tu't aanj brükerkonto tuwise",
+'listgrouprights-removegroup-self-all' => "Koon aal a sköölen faan't aanj brükerkonto wechnem",
# Email user
-'emailuser' => 'E-mail tu dideere brüker',
+'mailnologin' => "Bi't e-mail ferschüüren as wat skiaf gingen",
+'mailnologintext' => 'Dü skel [[Special:UserLogin|uunmeldet wees]] an en gudkäänd e-mail-adres uun din [[Special:Preferences|iinstelangen]] haa, am dat dü ööder brükern en e-mail schüür könst.',
+'emailuser' => 'E-mail tu didiar brüker',
+'emailuser-title-target' => 'E-mail tu {{GENDER:$1|didiar brüker|detdiar brükerin}} schüür',
+'emailuser-title-notarget' => 'E-mail tu brüker',
+'emailpage' => 'E-mail tu brüker',
+'emailpagetext' => 'Dü könst {{GENDER:$1|di brüker|det brükerin}} mä det formulaar en e-mail schüür.
+Din aanj e-mail adres faan din [[Special:Preferences|iinstelangen]] woort uunwiset, so dat {{GENDER:$1|di brüker|det brükerin}} di saner amwai swaare koon.',
+'usermailererror' => 'Det e-mail objekt wiset en feeler uun.',
+'defemailsubject' => '{{SITENAME}} e-mail faan brüker „$1“',
+'usermaildisabled' => 'E-mail fun as ei aktiif',
+'usermaildisabledtext' => 'Dü könst nian e-mail tu ööder brükern schüür.',
+'noemailtitle' => 'Nian e-mail adres',
+'noemailtext' => 'Didiar brüker hää nian gudkäänd e-mail adres uunden.',
+'nowikiemailtitle' => 'E-mail koon ei sjüürd wurd',
+'nowikiemailtext' => 'Didiar brüker maad nian e-mails faan ööder brükern fu.',
+'emailnotarget' => 'Didiar brükernööm as ei bekäänd of ei gudkäänd, am ham en e-mail tu schüüren',
+'emailtarget' => 'Brükernööm faan di ööder brüker iindu',
+'emailusername' => 'Brükernööm:',
+'emailusernamesubmit' => 'Widjer',
+'email-legend' => 'E-mail tu en öödern {{SITENAME}}-brüker schüür',
+'emailfrom' => 'Faan:',
+'emailto' => 'Tu:',
+'emailsubject' => 'Teemo:',
+'emailmessage' => 'Mädialang:',
+'emailsend' => 'Schüür',
+'emailccme' => 'Schüür mi en kopii faan det e-mail.',
+'emailccsubject' => 'Kopii faan din mädialang tu $1: $2',
+'emailsent' => 'E-mail as wechschüürd wurden',
+'emailsenttext' => 'Din e-mail as wechsjüürd wurden.',
+'emailuserfooter' => 'Detdiar e-mail as faan di {{SITENAME}}-brüker „$1“ tu „$2“ schüürd wurden.',
+
+# User Messenger
+'usermessage-summary' => 'Süsteemnooracht seekert.',
+'usermessage-editor' => 'Süsteemnoorachten siinst',
# Watchlist
'watchlist' => "Uun't uug behual",
'mywatchlist' => "Uun't uug behual",
'watchlistfor2' => 'Foon $1 $2',
+'nowatchlist' => "Diar as nään iindrach, diar dü uun't uug behual wel.",
+'watchlistanontext' => "Dü skel di $1, am iindracher tu leesen of tu bewerkin, diar dü uun't uug behual wel.",
+'watchnologin' => 'Ei uunmeldet',
+'watchnologintext' => "Dü skel [[Special:UserLogin|uunmeldet]] wees, am iindracher tu bewerkin, diar dü uun't uug behual wel.",
+'addwatch' => "Uk uun't uug behual",
'addedwatchtext' => "Det sidj „[[:$1]]“ wel dü [[Special:Watchlist|uun't uug behual]].
-Feranerangen faan detdiar sidj wurd üüb detdiar list fäästhäälen.",
-'removedwatchtext' => 'Jü sid „[[:$1]]“ wörd foon din [[Special:Watchlist|eefterkiiklist]] wächhååld.',
-'watch' => 'Kiike eefter',
-'watchthispage' => 'Side eefterkiike',
-'unwatch' => 'ai mör eefter kiike',
-'watchlist-details' => 'Dü kiikst eefter {{PLURAL:$1|1 sid|$1 side}}.',
-'wlshowlast' => 'Wis da änringe foon da leeste $1 stüne, $2 deege unti $3.',
-'watchlist-options' => 'Wis-opsjoone',
+Feranrangen faan detdiar sidj wurd üüb detdiar list fäästhäälen.",
+'removewatch' => "Ei muar uun't uug behual",
+'removedwatchtext' => "Det sidj „[[:$1]]“ as faan a sidjen, diar dü [[Special:Watchlist|uun't uug behual]] wel, wechnimen wurden.",
+'watch' => "Uun't uug behual",
+'watchthispage' => "Detdiar sidj uun't uug behual",
+'unwatch' => "Ei muar uun't uug behual",
+'unwatchthispage' => "Ei muar uun't uug behual",
+'notanarticle' => 'Nään artiikel',
+'notvisiblerev' => 'Det werjuun faan en öödern brüker as stregen wurden.',
+'watchnochange' => "A sidjen, diar dü uun't uug heest, san uun di uunwiset tidjrüm ei bewerket wurden.",
+'watchlist-details' => "Dü heest {{PLURAL:$1|1 sidj|$1 sidjen}} uun't uug.",
+'wlheader-enotif' => 'Di e-mail siinst as aktiif.',
+'wlheader-showupdated' => "Nei feranert sidjen wurd '''fäät''' uunwiset.",
+'watchmethod-recent' => "Leetst feranrangen faan sidjen, diar dü uun't uug heest",
+'watchmethod-list' => "Sidjen, diar dü uun't uug heest, am a leetst feranrangen beluke",
+'watchlistcontains' => "Dü häälst $1 {{PLURAL:$1|sidj|sidjen}} uun't uug.",
+'iteminvalidname' => 'Mä di iindrach „$1“ stemet wat ei, di nööm as ferkiard.',
+'wlnote' => "Diar {{PLURAL:$1|stäänt det leetst feranrang|stun a leetst '''$1''' feranrangen}} faan a leetst {{PLURAL:$2|stünj|'''$2''' stünjen}}. Stant: $3, klook $4.",
+'wlshowlast' => 'Wise a feranrangen faan leetst $1 stünjen, $2 daar of $3.',
+'watchlist-options' => "Iinstelangen för't uunwisin",
# Displayed when you click the "watch" button and it is in the process of watching
-'watching' => 'Eefter kiike...',
-'unwatching' => 'Ai eefter kiike...',
+'watching' => "Uun't uug behual ...",
+'unwatching' => "Ei uun't uug behual ...",
+'watcherrortext' => "Bi't anrin faan iinstelangen för „$1“ as wat skiaf gingen.",
+
+'enotif_mailer' => '{{SITENAME}}-e-mail-noorachten siinst',
+'enotif_reset' => 'Aal a sidjen üs besoocht kääntiakne',
+'enotif_impersonal_salutation' => '{{SITENAME}}-brüker',
+'enotif_subject_deleted' => '{{SITENAME}}-sidj $1 as faan {{GENDER:$2|$2}} stregen wurden.',
+'enotif_subject_created' => '{{SITENAME}}-sidj $1 as faan {{GENDER:$2|$2}} nei maaget wurden',
+'enotif_subject_moved' => '{{SITENAME}}-sidj $1 as faan {{GENDER:$2|$2}} fersköwen wurden.',
+'enotif_subject_restored' => '{{SITENAME}}-sidj $1 as faan {{GENDER:$2|$2}} turaghaalet wurden',
+'enotif_subject_changed' => '{{SITENAME}}-sidj $1 as faan {{GENDER:$2|$2}} feranert wurden',
+'enotif_body_intro_deleted' => 'Det {{SITENAME}}-sidj $1 as di $PAGEEDITDATE faan {{GENDER:$2|$2}} stregen wurden. Luke uk bi $3.',
+'enotif_body_intro_created' => 'Det {{SITENAME}}-sidj $1 as di $PAGEEDITDATE faan {{GENDER:$2|$2}} nei maaget wurden. Luke uk bi $3 am en nei werjuun.',
+'enotif_body_intro_moved' => 'Det {{SITENAME}}-sidj $1 as di $PAGEEDITDATE faan {{GENDER:$2|$2}} fersköwen wurden. Luke uk bi $3 am en nei werjuun.',
+'enotif_body_intro_restored' => 'Det {{SITENAME}}-sidj $1 as di $PAGEEDITDATE faan {{GENDER:$2|$2}} turaghaalet wurden. Luke uk bi $3 am en nei werjuun.',
+'enotif_body_intro_changed' => 'Det {{SITENAME}}-sidj $1 as di $PAGEEDITDATE faan {{GENDER:$2|$2}} feranert wurden. Luke uk bi $3 am en nei werjuun.',
+'enotif_lastvisited' => 'Luke bi $1 am aal a feranrangen sant dan leetst beschük.',
+'enotif_lastdiff' => 'Luke bi $1 am det feranrang.',
+'enotif_anon_editor' => 'Anonüüm brüker $1',
+'enotif_body' => 'Gud dai $WATCHINGUSERNAME,
+
+$PAGEINTRO $NEWPAGE
+
+Tuupfaadet faan: $PAGESUMMARY $PAGEMINOREDIT
+
+Kontakt tu di bewerker:
+E-mail: $PAGEEDITOR_EMAIL
+Wiki: $PAGEEDITOR_WIKI
+
+Di wurd iarst ans nian e-mails muar tu detdiar sidj schüürd, bit dü det sidj weder beschükst. Üüb din list faan sidjen, diar dü uun\'t uug behual wel, könst dü a noorachtenkääntiaken weder turagsaat.
+
+Dan frinjelk {{SITENAME}}-noorachten siinst
+
+--
+Am iinstelangen tu e-mail noorachten tu feranrin, gung tu {{canonicalurl:{{#special:Preferences}}}}.
+
+Am iinstelangen am sidjen, diar dü uun\'t uug behual wel, gung tu {{canonicalurl:{{#special:EditWatchlist}}}}.
+
+Am det sidj ei linger uun\'t uug tu behualen, gung tu $UNWATCHURL.
+
+Halep an muar diartu: {{canonicalurl:{{MediaWiki:Helppage}}}}',
+'created' => 'maaget',
+'changed' => 'feranert',
# Delete
-'deletepage' => 'Sid tunintemååge',
+'deletepage' => 'Sidj strik',
+'confirm' => 'Gudkään',
+'excontent' => 'diar sted: „$1“',
+'excontentauthor' => 'diar sted: „$1“ (iansagst bewerker: [[Special:Contributions/$2|$2]])',
+'exbeforeblank' => "diar sted föör't leesag maagin: „$1“",
'exblank' => 'sidj wiar leesag',
'delete-confirm' => 'Strik "$1"',
'delete-legend' => 'Strike',
-'historywarning' => "'''Paase üüb:''' Det sidj, wat dü strik wel, hää amanbi $1 {{PLURAL:$1|wersjuun|wersjuunen}}:",
-'confirmdeletetext' => 'Dü bast deerbai, en sid ma åle tuhiirende ålere färsjoone tuninte tu måågen. Bestääsie hål deertu, dåt dü de foon da konsekwänse bewust bast, än dåt dü önj oueriinjstiming ma da [[{{MediaWiki:Policy-url}}|ruchtliinjen]] hoonelst.',
-'actioncomplete' => 'Aksjoon beånd',
+'historywarning' => "'''Paase üüb:''' Det sidj, wat dü strik wel, hää amanbi $1 {{PLURAL:$1|werjuun|werjuunen}}:",
+'confirmdeletetext' => 'Dü wel en sidj mä aal sin werjuunen strik. Dü skel gudkään, dat dü witjst, wat dü dääst an dat din dun mä a [[{{MediaWiki:Policy-url}}|brükerreegeln]] auerian stemet.',
+'actioncomplete' => 'Klaar',
'actionfailed' => 'Diar ging wat skiaf',
-'deletedtext' => '„$1“ wörd tunintemååged. In e $2 fanst dü en list foon da tuleest tunintemåågede side.',
-'dellogpage' => 'Tunintemååg-Logbök',
+'deletedtext' => "„$1“ as stregen wurden. Uun't $2 fanjst dü a sidjen, diar tuleetst stregen wurden san.",
+'dellogpage' => 'Strik-logbuk',
'dellogpagetext' => 'Diar stun a leetst stregen sidjen an datein.',
'deletionlog' => "logbuk faan't striken",
-'reverted' => 'Tu en ual wersjuun turagsaat',
-'deletecomment' => 'Grün:',
-'deleteotherreason' => 'Ouderen/tubaikaamenden grün:',
-'deletereasonotherlist' => 'Ouderen grün',
+'reverted' => 'Üüb en ual werjuun turagsaat',
+'deletecomment' => 'Grünj:',
+'deleteotherreason' => 'Ööder/noch en grünj:',
+'deletereasonotherlist' => 'Ööder grünj',
'deletereason-dropdown' => "*Algemian grünjer för't striken
** Di skriiwer wul det so
** Copyright as ei beaachtet
** Wandaalen onerwais",
'delete-edit-reasonlist' => "Grünjer för't striken bewerke",
-'delete-toobig' => 'Detdiar sidj hää muar üs $1 {{PLURAL:$1|wersjuun|wersjuunen}} . Sok sidjen kön ei so gau stregen wurd, ööders san a servers plaat.',
-'delete-warning-toobig' => "Detdiar sidj hää muar üs $1 {{PLURAL:$1|wersjuun|wersjuunen}} . Det striken koon komer maage bi't dootenbeenk.",
+'delete-toobig' => 'Detdiar sidj hää muar üs $1 {{PLURAL:$1|werjuun|werjuunen}} . Sok sidjen kön ei so gau stregen wurd, ööders san a servers plaat.',
+'delete-warning-toobig' => "Detdiar sidj hää muar üs $1 {{PLURAL:$1|werjuun|werjuunen}} . Det striken koon komer maage bi't dootenbeenk.",
# Rollback
-'rollbacklink' => 'tubäägseete',
+'rollback' => 'Feranrangen turagsaat',
+'rollback_short' => 'Turagsaat',
+'rollbacklink' => 'turagsaat',
+'rollbacklinkcount' => '$1 {{PLURAL:$1|feranrang|feranrangen}} turagsaat',
+'rollbacklinkcount-morethan' => 'Muar üs $1 {{PLURAL:$1|werjuun|werjuunen}} turagsaat',
+'rollbackfailed' => "Bi't turagsaaten as wat skiaf gingen.",
+'cantrollback' => 'Det feranrang koon ei turagsaat wurd, diar san nian ööder skriiwern weesen.',
+'alreadyrolled' => 'A anrangen faan [[User:$2|$2]] ([[User talk:$2|Diskusjuun]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]) bi [[:$1]] kön ei turagsaat wurd. Diar hää uuntesken en öödern brüker det sidj feranert.
+
+Det leetst feranrang as faan [[User:$3|$3]] ([[User talk:$3|Diskusjuun]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).',
+'editcomment' => "Tuupfaadet feranrang: ''„$1“''.",
+'revertpage' => 'Feranrangen faan [[Special:Contributions/$2|$2]] ([[User talk:$2|Diskusjuun]]) san üüb di leetst stant faan [[User:$1|$1]] turagsaat wurden.',
+'revertpage-nouser' => 'Feranrangen faan (brükernööm wechnimen) turagsaat an leetst werjuun faan [[User:$1|$1]] weder iinsteld.',
+'rollback-success' => 'Feranrangen faan $1 turagsaat an det leetst werjuun faan $2 weder iinsteld.',
+
+# Edit tokens
+'sessionfailure-title' => 'session feeler',
+'sessionfailure' => "Diar as wat skiaf gingen bi't auerdreegen faan din brükerdooten.
+Am dat diar ei noch muar skiaf gongt, as det aktjuun ufbreegen wurden.
+Gung turag, an began faan föören.",
# Protect
-'protectlogpage' => 'Sideschütse-logbök',
-'protectedarticle' => 'schütsed „[[$1]]“',
-'modifiedarticleprotection' => 'änred e schüts for "[[$1]]"',
+'protectlogpage' => 'Sidjenseekerangs-logbuk',
+'protectlogtext' => 'Detheer as det logbuk mä seekert sidjen.
+Üüb [[Special:ProtectedPages|detdiar list]] stun a seekert sidjen.',
+'protectedarticle' => 'hää „[[$1]]“ seekert.',
+'modifiedarticleprotection' => 'hää det seekerhaid faan "[[$1]]" feranert',
+'unprotectedarticle' => 'Seekerang faan „[[$1]]“ apheewen',
+'movedarticleprotection' => 'hää det seekerang faan „[[$2]]“ üüb „[[$1]]“ auerdraanj',
+'protect-title' => 'Seekerang feranre för „$1“',
+'protect-title-notallowed' => 'Seekerang uunluke för „$1“',
'prot_1movedto2' => 'hää „[[$1]]“ efter „[[$2]]“ fersköwen',
-'protectcomment' => 'Grün:',
-'protectexpiry' => 'Spärduur:',
-'protect_expiry_invalid' => 'Jü önjjääwen duur as üngülti.',
-'protect_expiry_old' => 'Jü spärtid lait in jü jütid.',
-'protect-text' => 'Heer koost dü e schütsstatus for jü sid "$1" önjkiike än änre.',
-'protect-locked-access' => "Din brükerkonto ferfäiget ai ouer da nüsie ruchte tu jü änring foon e sideschüts. Heer san da aktuäle sideschütsönjstalinge fon jü sid '''„$1“:'''",
-'protect-cascadeon' => 'Jüdeer sid as nütutids diilj foon e kaskaadenspäre. Jü as önj {{PLURAL:$1|jü füliende sid|da füliende side}} önjbünen, huk döör jü kaskaadenspäropsjoon schütsed {{PLURAL:$1|as|san}}. Di sideschütsstatus koon for jüdeer sid änred wårde, dåtdeer heet ouers nån influs aw jü kaskaadenspäre:',
-'protect-default' => 'Åle brükere',
+'protect-badnamespace-title' => 'Nöömrüm koon ei seekert wurd',
+'protect-badnamespace-text' => 'Sidjen uun didiar nöömrüm kön ei seekert wurd.',
+'protect-norestrictiontypes-text' => 'Detdiar sidj koon ei seekert wurd, auer diar nian mögelkhaiden san.',
+'protect-norestrictiontypes-title' => 'Sidj koon ei seekert wurd',
+'protect-legend' => 'Sidjenseekerang feranre',
+'protectcomment' => 'Grünj:',
+'protectexpiry' => 'Sperdüür:',
+'protect_expiry_invalid' => 'Didiar tidjrüm gongt ei.',
+'protect_expiry_old' => 'Det spertidj leit uun a jütidj.',
+'protect-unchain-permissions' => 'Separaat speren aktiwiare',
+'protect-text' => 'Heer könst dü det seekerhaid faan "$1" uunluke an feranre.',
+'protect-locked-blocked' => "Dü könst det sidjenseekerang ei feranre, auer din brükerkonto speret as. So as det sidj '''„$1“:''' seekert wurden.",
+'protect-locked-dblock' => "Det dootenbeenk as speret, det sidjenseekerang koon ei feranert wurd. So as det sidj '''„$1“:''' seekert wurden.",
+'protect-locked-access' => "Dü heest ei det brükerrocht, am det sidjenseekerhaid tu feranrin.
+Det sidj '''„$1“:''' as sodenang seekert wurden:",
+'protect-cascadeon' => 'Detdiar sidj as auer en kaskaadensper seekert wurden. Hat as uun {{PLURAL:$1|detdiar seekert sidj|jodiar seekert sidjen}} iinbünjen.
+Dü könst det seekerhaid feranre, det feranert oober ei det seekerhaid faan jo ööder sidjen.',
+'protect-default' => 'Arke brüker',
'protect-fallback' => 'Ferloof bluas för brükern mä "$1"-rochten.',
'protect-level-autoconfirmed' => 'Ferloof bluas för registriaret brükern.',
'protect-level-sysop' => 'Ferloof bluas för administratooren.',
-'protect-summary-cascade' => 'kaskadiirend',
-'protect-expiring' => 'bit $2, am e klook $3 (UTC)',
-'protect-cascade' => 'Kaskadiirende späre - åle önj jüdeer sid önjbünene forlååge wårde uk spärd.',
-'protect-cantedit' => 'Dü koost jü späre foon jüheer sid ai änre, deer dü niinj beruchtiging tu beårben foon jü sid hääst.',
-'restriction-type' => 'Schütsstatus',
-'restriction-level' => 'Schütshöögde',
+'protect-summary-cascade' => 'kaskadiirin',
+'protect-expiring' => 'bit $2, am a klook $3 (UTC)',
+'protect-expiring-local' => 'bit $1',
+'protect-expiry-indefinite' => 'saner aanj',
+'protect-cascade' => 'Kaskaadensper - aal a föörlaagen faan detdiar sidj wurd uk speret',
+'protect-cantedit' => 'Dü könst det sper faan detdiar sidj ei feranre, auer dü det sidj ei bewerke mutst.',
+'protect-othertime' => 'Ööder sperdüür:',
+'protect-othertime-op' => 'ööder sperdüür',
+'protect-existing-expiry' => 'Sidjenseekerang lääpt uf: $2, klook $3',
+'protect-otherreason' => 'Ööder/noch en grünj:',
+'protect-otherreason-op' => 'Ööder grünj:',
+'protect-dropdown' => '* Miast brükt grünjer
+** Edit-War
+** Wandaalen onerwais
+** Tuföl rekloome
+** Flooksis brükt föörlaag
+** Sidj mä föl beschük',
+'protect-edit-reasonlist' => "Grünjer för't seekrin bewerke",
+'protect-expiry-options' => '1 stünj:1 hour,1 dai:1 day,1 weg:1 week,2 wegen:2 weeks,1 muun:1 month,3 muuner:3 months,6 muuner:6 months,1 juar:1 year,saner aanj:infinite',
+'restriction-type' => 'Seekerhaidsiinstelangen:',
+'restriction-level' => 'Seekerhaidspeegel:',
'minimum-size' => 'Minimaal grate:',
'maximum-size' => 'Maksimaal grate:',
'pagesize' => '(bytes)',
# Undelete
'undelete' => 'Stregen sidjen uunwise',
'undeletepage' => 'Stregen sidjen uunwise an weder iinstel',
-'undeletepagetitle' => "'''Detdiar wiset a stregen wersjuunen faan [[:$1|$1]]'''.",
+'undeletepagetitle' => "'''Detdiar wiset a stregen werjuunen faan [[:$1|$1]]'''.",
'viewdeletedpage' => 'Stregen sidjen uunwise',
'undeletepagetext' => "{{PLURAL:$1|Detdiar sidj as stregen wurden, oober koon|Jodiar $1 sidjen san stregen wurden, oober kön}} faan administratooren weder iinsteld wurd, wan jo noch uun't archiif san.",
'undelete-fieldset-title' => 'Weder iinstel',
-'undeleteextrahelp' => '* Am det sidj mä aal jo wersjuunen weder iintustelen, sjük nian enkelt wersjuun ütj, du en grünj uun an trak do üüb „{{int:undeletebtn}}“.*
-* Am en was wersjuun weder iintustelen, sjük det wersjuun ütj, du en grünj uun an trak do üüb „{{int:undeletebtn}}“.',
-'undeleterevisions' => '{{PLURAL:$1|1 wersjuun|$1 wersjuunen}} archiwiaret',
-'undeletehistory' => 'Wan dü detdiar sidj weder iinstelst, wurd uk jo ual wersjuunen weder iinsteld.
-Wan sant det striken en nei sidj mä di salew nööm iinsteld wurden as, wurd jo ual wersjuunen bi det nei sidj mä iinwerket.',
-'undeleterevdel' => 'Det weder iinstelen woort ei maaget, wan det leetst wersjuun ferstäächt as.
-Wan det so as, skal det leetst wersjuun iarst weder üüb normool steld wurd.',
+'undeleteextrahelp' => '* Am det sidj mä aal jo werjuunen weder iintustelen, schük nian enkelt werjuun ütj, du en grünj uun an trak do üüb „{{int:undeletebtn}}“.*
+* Am en was werjuun weder iintustelen, schük det werjuun ütj, du en grünj uun an trak do üüb „{{int:undeletebtn}}“.',
+'undeleterevisions' => '{{PLURAL:$1|1 werjuun|$1 werjuunen}} archiwiaret',
+'undeletehistory' => 'Wan dü detdiar sidj weder iinstelst, wurd uk jo ual werjuunen weder iinsteld.
+Wan sant det striken en nei sidj mä di salew nööm iinsteld wurden as, wurd jo ual werjuunen bi det nei sidj mä iinwerket.',
+'undeleterevdel' => 'Det woort ei weder iinsteld, wan det leetst werjuun ferbürgen as.
+Wan det so as, skal det leetst werjuun iarst weder üüb normool steld wurd.',
'undeletehistorynoadmin' => 'Detdiar sidj as stregen wurden.
Oner könst dü sä, hoker det maaget hää an huaram.
Di tekst faan det stregen sidj fu bluas administratooren uunwiset.',
-'undelete-revision' => 'Stregen wersjuun faan $1 (di $4 am a klook $5 ), $3:',
-'undeleterevision-missing' => 'Mä detdiar wersjuun stemet wat ei. Ferlicht as di link ferkiard of det wersjuun as ei muar diar.',
-'undelete-nodiff' => 'Nian föörgunger wersjuun diar.',
+'undelete-revision' => 'Stregen werjuun faan $1 (di $4 am a klook $5 ), $3:',
+'undeleterevision-missing' => 'Mä detdiar werjuun stemet wat ei. Ferlicht as di link ferkiard of det werjuun as ei muar diar.',
+'undelete-nodiff' => 'Nian föörgunger-werjuun diar.',
'undeletebtn' => 'Weder iinstel',
-'undeletelink' => 'wise/widermååge',
+'undeletelink' => 'wise / weder iinstel',
'undeleteviewlink' => 'Uunluke',
-'undeletereset' => 'Turag saat',
+'undeletereset' => 'Turagsaat',
'undeleteinvert' => 'Ütjwool amdrei',
'undeletecomment' => 'Grünj:',
-'undeletedrevisions' => '{{PLURAL:$1|1 wersjuun|$1 wersjuunen}} weder iinsteld',
-'undeletedrevisions-files' => '{{PLURAL:$1|1 wersjuun|$1 wersjuunen}} an {{PLURAL:$2|1 datei|$2 datein}} weder iinsteld',
+'undeletedrevisions' => '{{PLURAL:$1|1 werjuun|$1 werjuunen}} weder iinsteld',
+'undeletedrevisions-files' => '{{PLURAL:$1|1 werjuun|$1 werjuunen}} an {{PLURAL:$2|1 datei|$2 datein}} weder iinsteld',
'undeletedfiles' => '{{PLURAL:$1|1 datei|$1 datein }} weder iinsteld',
'cannotundelete' => 'Weder iinstelen hää ei loket:
$1',
'undeletedpage' => "'''„$1“''' as weder iinsteld wurden.
Uun't [[Special:Log/delete|logbuk faan stregen sidjen]] stun a stregen an weder iinsteld sidjen.",
'undelete-header' => "Luke uun't [[Special:Log/delete|logbuk för stregen sidjen]] efter stregen sidjen faan a leetst tidj.",
-'undelete-search-title' => 'Sjük stregen sidjen',
-'undelete-search-box' => 'Sjük stregen sidjen',
-'undelete-search-prefix' => 'Sjük sidjen, diar began mä:',
-'undelete-search-submit' => 'Sjük',
+'undelete-search-title' => 'Schük stregen sidjen',
+'undelete-search-box' => 'Schük stregen sidjen',
+'undelete-search-prefix' => 'Schük sidjen, diar began mä:',
+'undelete-search-submit' => 'Schük',
'undelete-no-results' => "Uun't archiif wiar nian paasen sidjen.",
-'undelete-filename-mismatch' => 'Det wersjuun faan $1 koon ei weder iinsteld wurd. Di dateinööm paaset ei.',
+'undelete-filename-mismatch' => 'Det werjuun faan $1 koon ei weder iinsteld wurd. Di dateinööm paaset ei.',
'undelete-bad-store-key' => "Det dateiwersjuun faan $1 koon ei weder iinsteld wurd. Det datei wiar al föör't striken ei muar diar.",
+'undelete-cleanup-error' => 'Det ei brükt archiif-werjuun $1 küd ei stregen wurd.',
+'undelete-missing-filearchive' => "Det datei mä det archiif-ID $1 koon ei weder iinsteld wurd, auer hat ei uun't dootenbeenk as. Ferlicht as't al ans weder iinsteld wurden?",
'undelete-error' => "Bi't weder iinstelen faan det sidj as wat skiaf gingen.",
'undelete-error-short' => "Bi't weder iinstelen faan det datei $1 as wat skiaf gingen.",
'undelete-error-long' => "Bi't weder iinstelen faan en datei as wat skiaf gingen:
$1",
-'undelete-show-file-confirm' => 'Wel dü würelk det stregen wersjuun faan det datei „<nowiki>$1</nowiki>“ faan di $2, am a klook $3 uunluke?',
+'undelete-show-file-confirm' => 'Wel dü würelk det stregen werjuun faan det datei „<nowiki>$1</nowiki>“ faan di $2, am a klook $3 uunluke?',
'undelete-show-file-submit' => 'Ja',
# Namespace form on various pages
-'namespace' => 'Noomerüm:',
-'invert' => 'Ütwool amkiire',
-'blanknamespace' => '(Side)',
+'namespace' => 'Nöömrüm:',
+'invert' => 'Ütjwool amkiir',
+'tooltip-invert' => 'Saat diar en tiaken, am feranrangen faan sidjen uun didiar nöömrüm ei uuntuwisin.',
+'namespace_association' => 'Ferbünjen nöömrüm',
+'tooltip-namespace_association' => 'Saat diar en tiaken, am di ferbünjen nöömrüm of diskusjuunsnöömrüm mä iintubetjin.',
+'blanknamespace' => '(Sidjen)',
# Contributions
'contributions' => '{{GENDER:$1|Brüker}} bidracher',
-'contributions-title' => 'Brükertujeefte foon "$1"',
+'contributions-title' => 'Brükerbidracher för "$1"',
'mycontris' => 'Bidracher',
-'contribsub2' => 'For $1 ($2)',
-'uctop' => '(aktuäl)',
-'month' => 'än moune:',
-'year' => 'bit iir:',
-
-'sp-contributions-newbies' => 'Wis bloot tujeefte foon naie brükere',
-'sp-contributions-blocklog' => 'Spär-logbök',
-'sp-contributions-uploads' => 'Huuchsjüürd bilen',
-'sp-contributions-logs' => 'logbuken',
-'sp-contributions-talk' => 'diskusjuun',
-'sp-contributions-search' => 'Säkj eefter brükertujeefte',
-'sp-contributions-username' => 'IP-adräs unti brükernoome',
-'sp-contributions-toponly' => 'Bluas aktuel wersjuunen wise',
-'sp-contributions-submit' => 'Säike',
+'contribsub2' => 'För $1 ($2)',
+'nocontribs' => 'Diar wiar nian paasin brükerbidracher',
+'uctop' => '(aktuel)',
+'month' => 'faan muun (of iarer):',
+'year' => 'faan juar (of iarer):',
+
+'sp-contributions-newbies' => 'Wise bluas bidracher faan nei brükern',
+'sp-contributions-newbies-sub' => 'Faan nei brükern',
+'sp-contributions-newbies-title' => 'Brükerbidracher faan nei brükern',
+'sp-contributions-blocklog' => 'Sper-logbuk',
+'sp-contributions-deleted' => 'Stregen bidracher',
+'sp-contributions-uploads' => 'Huuchschüürd bilen',
+'sp-contributions-logs' => 'Logbuken',
+'sp-contributions-talk' => 'Diskusjuun',
+'sp-contributions-userrights' => 'Brükerrochten',
+'sp-contributions-blocked-notice' => "Didiar brüker as speret. Det stäänt uun't sperlogbuk:",
+'sp-contributions-blocked-notice-anon' => "Detdiar IP-adres as speret. Det stäänt uun't sperlogbuk:",
+'sp-contributions-search' => 'Schük efter brükerbidracher',
+'sp-contributions-username' => 'IP-adres of brükernööm:',
+'sp-contributions-toponly' => 'Bluas aktuel werjuunen wise',
+'sp-contributions-submit' => 'Schük',
# What links here
-'whatlinkshere' => 'Links aw jüdeer sid',
-'whatlinkshere-title' => 'Side, da aw "$1" ferlinke',
-'whatlinkshere-page' => 'sid:',
-'linkshere' => "Da füliende side ferlinke aw '''„[[:$1]]“''':",
+'whatlinkshere' => 'Ferwisangen üüb detdiar sidj',
+'whatlinkshere-title' => 'Sidjen, diar üüb "$1" ferwise',
+'whatlinkshere-page' => 'Sidj:',
+'linkshere' => "Jodiar sidjen ferwise üüb '''„[[:$1]]“''':",
'nolinkshere' => 'Nian sidj ferwiset üüb [[:$1]]',
-'isredirect' => 'widerliidjingssid',
-'istemplate' => 'forlåågeninbining',
-'isimage' => 'Dåtäilink',
-'whatlinkshere-prev' => '{{PLURAL:$1|leesten|leeste $1}}',
-'whatlinkshere-next' => '{{PLURAL:$1|näisten|näiste $1}}',
-'whatlinkshere-links' => '← links',
-'whatlinkshere-hideredirs' => 'Widerliidjinge $1',
-'whatlinkshere-hidetrans' => 'Forlåågenönjbininge $1',
-'whatlinkshere-hidelinks' => 'Links $1',
-'whatlinkshere-hideimages' => 'Ferwisangen tu dateien $1',
+'nolinkshere-ns' => "Nian sidj ferwiset üüb '''„[[:$1]]“''' uun di ütjsoocht nöömrüm.",
+'isredirect' => 'widjerfeerang',
+'istemplate' => 'iinbünjen föörlaagen',
+'isimage' => 'Dateilink',
+'whatlinkshere-prev' => '{{PLURAL:$1|leetst|leetst $1}}',
+'whatlinkshere-next' => '{{PLURAL:$1|naist|naist $1}}',
+'whatlinkshere-links' => '← ferwisangen',
+'whatlinkshere-hideredirs' => '$1 widjerfeerangen',
+'whatlinkshere-hidetrans' => '$1 iinbünjen föörlaagen',
+'whatlinkshere-hidelinks' => '$1 ferwisangen',
+'whatlinkshere-hideimages' => 'Ferwisangen tu datein $1',
'whatlinkshere-filters' => 'Filtere',
# Block/unblock
-'blockip' => 'IP-adräs/brüker späre',
-'ipboptions' => '2 stüne:2 hours,1 däi:1 day,3 deege:3 days,1 wääg:1 week,2 wääge:2 weeks,1 moune:1 month,3 moune:3 months,6 moune:6 months,1 iir:1 year,suner iinje:infinite',
+'autoblockid' => 'Automaatisk sper #$1',
+'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]].
+Skriiw en guden grünj för det sper ap.',
+'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
+** Maaget tuföl ferwisangen üüb frääm sidjen
+** Maaget dom tschüch
+** Koon ham ei skake
+** Masbrükt brükerkontos
+** Hää en brükernööm, diar ei tuläät as',
+'ipb-hardblock' => 'Ferhanre, dat en uunmeldeten brüker mä detdiar IP-adres sidjen feranre koon.',
+'ipbcreateaccount' => 'Ferhanre, dat en brükerkonto iinracht woort.',
+'ipbemailban' => 'Ferhanre, dat e-mails ferschüürd wurd',
+'ipbenableautoblock' => 'Spere det IP-adres faan di brüker, an automaatisk uk aal a öödern, huar di brüker mä werket.',
+'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.',
+'ipb-change-block' => 'Mä jodiar iinstelangen widjer spere',
+'ipb-confirm' => 'Sper gudkään',
+'badipaddress' => 'Det IP-adres as ferkiard.',
+'blockipsuccesssub' => 'Det sper hää loket.',
+'blockipsuccesstext' => "Di brüker/det IP-adres [[Special:Contributions/$1|$1]] as speret wurden.<br />
+Am det aptuheewen, gung tu't [[Special:BlockList|sperlist]].",
+'ipb-blockingself' => 'Wel dü würelk di salew spere?',
+'ipb-confirmhideuser' => 'Dü beest diarbi, en brüker uun det muude „brüker fersteeg“ tu sperin. Do woort di brükernööm uun aal a logbuken an listen ferbürgen. Wel dü det würelk du?',
+'ipb-edit-dropdown' => "Grünjer för't sperin bewerke",
+'ipb-unblock-addr' => '„$1“ ei muar spere',
+'ipb-unblock' => 'IP-adres/brüker ei muar spere',
+'ipb-blocklist' => 'Speren uunwise',
+'ipb-blocklist-contribs' => 'Bidracher faan „$1“',
+'unblockip' => 'Brüker ei muar spere',
+'unblockiptext' => 'Mä detdiar formulaar könst dü det sper faan en IP-adres of en brüker apheew.',
+'ipusubmit' => 'Ei muar spere',
+'unblocked' => '[[User:$1|$1]] woort ei muar speret.',
+'unblocked-range' => 'Sper för $1 as apheewen wurden.',
'unblocked-id' => 'Sperang $1 as apheewen',
'blocklist' => 'Spärd brükere',
-'ipblocklist' => 'Spärd brükere',
+'ipblocklist' => 'Speret brükern',
'ipblocklist-legend' => 'Spärd brükere fine',
-'ipblocklist-submit' => 'Sjük',
-'expiringblock' => 'iinjet aw e $1 am e klook $2',
-'blocklink' => 'späre',
-'unblocklink' => 'frijeewe',
+'blocklist-userblocks' => 'Brükersperen ei uunwise',
+'blocklist-tempblocks' => 'Tidjwiis speren ei uunwise',
+'blocklist-addressblocks' => 'Speren faan enkelt IP-adresen ei uunwise',
+'blocklist-rangeblocks' => 'Widjloftag speren ei uunwise',
+'blocklist-timestamp' => 'Tidjstempel',
+'blocklist-target' => 'IP of brüker',
+'blocklist-expiry' => 'Sperdüür bit',
+'blocklist-by' => 'Speret faan',
+'blocklist-params' => 'Speriinstelangen',
+'blocklist-reason' => 'Grünj',
+'ipblocklist-submit' => 'Schük',
+'ipblocklist-localblock' => 'Lokaal sper',
+'ipblocklist-otherblocks' => 'Ööder {{PLURAL:$1|sper|speren}}',
+'infiniteblock' => 'saner aanj',
+'expiringblock' => 'lääpt di $1 am a klook $2 uf',
+'anononlyblock' => 'bluas anonüümen',
+'noautoblockblock' => 'autoblock ei aktiif',
+'createaccountblock' => 'brükerkontos kön ei iinracht wurd.',
+'emailblock' => 'e-mail fersjüüren ufsteld',
+'blocklist-nousertalk' => 'koon sin aanj diskusjuunssidj ei bewerke',
+'ipblocklist-empty' => 'Det sperlist as leesag',
+'ipblocklist-no-results' => 'Detdiar IP-adres/di brükernööm as ei speret.',
+'blocklink' => 'Spere',
+'unblocklink' => 'Ei muar spere',
'change-blocklink' => 'Späring änre',
-'contribslink' => 'tujeefte',
-'emaillink' => 'e-mail schake',
-'autoblocker' => 'Automatische spär, deer dü en gemiinsoom IP-adräs ma [[User:$1|brüker:$1]] brükst. Grün foon brükerspär: „$2“.',
-'blocklogpage' => 'Brükerspär-logbök',
-'blocklogentry' => 'spärd „[[$1]]“ for di tidrüm: $2 $3',
-'reblock-logentry' => 'änerd jü spär for „[[$1]]“ for di tidrüm: $2 $3',
+'contribslink' => 'Bidracher',
+'emaillink' => 'E-mail schüür',
+'autoblocker' => 'Automaatisk speret, auer dü en gemiansoom IP-adres mä [[User:$1|brüker:$1]] brükst. Grünj för det brükersper: „$2“.',
+'blocklogpage' => 'Brükersper-logbuk',
+'blocklog-showlog' => "Didiar brüker as al ans speret wurden.
+Uun't sperlogbuk stäänt:",
+'blocklog-showsuppresslog' => "Didiar brüker as al ans speret an ferbürgen wurden.
+Uun't logbuk stäänt:",
+'blocklogentry' => 'hää „[[$1]]“ speret för di tidjrüm: $2 $3',
+'reblock-logentry' => 'hää det sper för „[[$1]]“ anert för di tidjrüm: $2 $3',
'blocklogtext' => "Detdiar as det logbuk auer sperangen an apheewen sperangen faan brükernöömer an IP-adresen.
Automaatisk sperd IP-adresen wurd ei uunwiset.
Luke bi't [[Special:BlockList|sperlist]] för aal jo aktuel speren.",
-'unblocklogentry' => 'heet jü späre foon „$1“ aphääwen',
-'block-log-flags-anononly' => 'bloot anonyme',
-'block-log-flags-nocreate' => 'Måågen foon brükerkonte spärd',
-'block-log-flags-noautoblock' => 'autoblock deaktiviird',
-'block-log-flags-noemail' => 'e-mail-fersiinjing spärd',
-'block-log-flags-nousertalk' => 'mötj äine diskusjoonssid ai beårbe',
-'block-log-flags-angry-autoblock' => 'ütbrååt autoblock aktiviird',
-'block-log-flags-hiddenname' => 'brükernoome ferstäägen',
-'range_block_disabled' => 'Jü möölikhäid, hiilj adräsrüme tu spären, as ai aktiviird.',
-'ipb_expiry_invalid' => 'Jü önjjääwen duur as üngülti.',
-'ipb_expiry_temp' => 'Ferstäägen brükernoome-späre schan pärmanänt weese.',
-'ipb_hide_invalid' => 'Ditheer konto koon ai unerdrükd wårde, deer dåt tufoole beårbinge apwist.',
+'unblocklogentry' => 'hää det sper faan „$1“ apheewen',
+'block-log-flags-anononly' => 'bluas IPs/anonüümen',
+'block-log-flags-nocreate' => 'brükerkontos kön ei iinracht wurd.',
+'block-log-flags-noautoblock' => 'autoblock ei aktiif',
+'block-log-flags-noemail' => 'e-mail fersjüüren ufsteld',
+'block-log-flags-nousertalk' => 'koon sin aanj diskusjuunssidj ei bewerke',
+'block-log-flags-angry-autoblock' => 'ütjwidjet autoblock aktiwiaret',
+'block-log-flags-hiddenname' => 'brükernööm ferbürgen',
+'range_block_disabled' => 'Det mögelkhaid, hialer adresrümer tu sperin, as ei aktiif.',
+'ipb_expiry_invalid' => 'Didiar tidjrüm gongt ei.',
+'ipb_expiry_temp' => 'Ferbürgen brükernööm-speren skel permanent wees.',
+'ipb_hide_invalid' => 'Detdiar brükerkonto koon ei ferbürgen wurd, auer diar tuföl feranrangen uun a ferluup stun.',
+'ipb_already_blocked' => '„$1“ as al speret',
+'ipb-needreblock' => '$1 as al speret. Wel dü a speriinstelangen feranre?',
+'ipb-otherblocks-header' => 'Ööder {{PLURAL:$1|sper|speren}}',
+'unblock-hideuser' => 'Det sper faan didiar brüker koon ei apheewen wurd, auer san brükernööm ferbürgen wurden as.',
+'ipb_cant_unblock' => 'Feeler: Sper-ID $1 küd ei fünjen wurd. Det sper as al apheewen.',
+'ipb_blocked_as_range' => 'Feeler: Det IP-adres $1 as auer det widjloftag sper $2 speret. Det sper faan $1 alian koon ei apheewen wurd.',
+'ip_range_invalid' => 'Ferkiard IP-adresrüm',
+'ip_range_toolarge' => 'Adresrümen mut ei grater üs /$1 wees.',
+'blockme' => 'Spere mi',
+'proxyblocker' => 'Proxy blocker',
+'proxyblocker-disabled' => 'Detdiar funktjuun as ei aktiif',
+'proxyblockreason' => 'Din IP-adres as speret wurden, auer det tu en eebenen proxy hiart.
+Fertel det dan ISP of dan süsteemsiinst. Eeben proxys stel det seekerhaid uun fraag.',
+'proxyblocksuccess' => 'Klaar.',
+'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.',
+
+# Developer tools
+'lockdb' => 'Dootenbeenk spere',
+'unlockdb' => 'Dootenbeenk ei muar spere',
+'lockdbtext' => 'Wan det dootenbeenk speret as, koon rian goor niks muar maaget wurd. Wees so gud an kään det sper gud.',
+'unlockdbtext' => 'Wan det sper faan det dootenbeenk apheewen woort, koon weder ales bewerket wurd. Wees so gud an kään det apheewen gud.',
+'lockconfirm' => 'Ja, ik wal det dootenbeenk würelk spere.',
+'unlockconfirm' => 'Ja, det dootenbeenk skal ei muar speret wees.',
+'lockbtn' => 'Dootenbeenk spere',
+'unlockbtn' => 'Dootenbeenk ei muar spere',
+'locknoconfirm' => 'Dü heest det ei gudkäänd.',
+'lockdbsuccesssub' => 'Det dootenbeenk as nü speret.',
+'unlockdbsuccesssub' => 'Det dootenbeenk as nü ei muar speret.',
+'lockdbsuccesstext' => 'Det {{SITENAME}}-dootenbeenk as speret wurden.<br />Heew det sper [[Special:UnlockDB|weder ap]], wan dü mä din werk klaar beest.',
+'unlockdbsuccesstext' => 'Det {{SITENAME}}-dootenbeenk as ei muar speret.',
+'lockfilenotwritable' => 'Uun det dootenbeenk-sperdatei koon ei skrewen wurd. Am en dootenbeenk tu sperin of en sper aptuheewen, skal det sperdatei för di webserver tu beskriiwen wees.',
+'databasenotlocked' => 'Det dootenbeenk as ei speret.',
+'lockedbyandtime' => '(faan $1 di $2 am a klook $3)',
# Move page
-'move-page' => 'Ferschüw $1',
+'move-page' => 'Fersküüw $1',
'move-page-legend' => 'Sid ferschüwe',
-'movepagetext' => "Ma dideere formulaar koost de en sid ambenååme (masamt åle färsjoone).
-Di üülje tiitel wårt tu di naie widerliidje.
-Dü koost widerliidjinge, da ap e originooltiitel ferlinke, automatisch korrigiire lätje.
-For di fål dåt dü dåt ai dääst, präiw aw [[Special:DoubleRedirects|dööwelte]] unti [[Special:BrokenRedirects|önjstööge widerliidjinge]].
-Dü bast deerfor feroontuurdlik, dåt links fortönj ap dåt koräkt muul wise.
-
-Jü sid wårt '''ai''' ferschääwen, wan dåt ål en sid ma di seelew noome jeeft,
-süwid jüdeer ai bloots en widerliidjing suner färsjoonshistoori as. Dåtdeer bedjüset,
-dåt dü jü sid tubääg ferschüwe koost, wan dü en fäägel mååged heest. Dü koost
-deeriinj niinj sid ouerschriwe.
-
-'''Woorschouing!'''
-Jü ferschüwing koon widlingende än ünfermousene fülie for beliifte side heewe.
-Dü schöist deerfor da konsekwänse ferstönjen heewe, iir dü baiblafst.",
-'movepagetalktext' => "Jü deertu hiirende diskusjoonssid wård, süwid deer, maferschääwen, '''unti dåt moost weese:'''
-*Deer bestoont ål en diskusjoonssid ma dideere noome, unti
-*dü wäälst jü uner stönjene opsjoon ouf.
-
-Önj dadeere fåle möist dü, wan wansched, di önjhålt foon jü sid foon hönj ferschüwe unti tuhuupefääre.
-
-Hål di '''naie''' tiitel uner '''muul''' önjdreege, deeruner jü ambenååming hål '''begrüne.'''",
-'movearticle' => 'Sid ferschüwe:',
+'movepagetext' => "Mä detdiar formulaar könst dü en sidj mä aal sin werjuunen amnääm.
+Di ual tiitel woort üüb di nei widjerfeerd.
+Dü könst widjerfeerangen, diar üüb di ual tiitel wise, automaatisk üüb di nei tiitel widjerfeer läät.
+Wan dü det oober ei dääst, paase üüb, dat dü aal a [[Special:DoubleRedirects|dobelt]] of [[Special:BrokenRedirects|breegen]] widjerfeerangen noch ans efterlukest.
+Bluas dü könst diarför surge, dat ferwisangen widjerhen rocht werke.
+
+Det sidj woort '''ei''' fersköwen, wan't al en sidj mä di nei nööm jaft. Det loket bluas do, wan di nei nööm salew en widjerfeerang as. Det ment, dat dü det amnäämen turagsaat könst, wan dü niks ferkiard maaget heest. Dü könst oober nian sidj, diar't al jaft, auerskriiw.
+
+'''Paase üüb!'''
+Det fersküüwen hää widjloftag fulgen för ööder sidjen. Dü skulst begreben haa, wat dü diar maage wel.",
+'movepagetext-noredirectfixer' => "Mä detdiar formulaar könst dü en sidj mä aal sin werjuunen amnääm.
+Di ual tiitel woort üüb di nei widjerfeerd.
+Dü könst widjerfeerangen, diar üüb di ual tiitel wise, automaatisk üüb di nei tiitel widjer feer läät.
+Wan dü det oober ei dääst, paase üüb, dat dü aal a [[Special:DoubleRedirects|dobelt]] of [[Special:BrokenRedirects|breegen]] widjerfeerangen noch ans efterlukest.
+Bluas dü könst diarför surge, dat ferwisangen widjerhen rocht werke.
+
+Det sidj woort '''ei''' fersköwen, wan't al en sidj mä di nei nööm jaft. Det loket bluas do, wan di nei nööm salew en widjerfeerang as. Det ment, dat dü det amnäämen turagsaat könst, wan dü niks ferkiard maaget heest. Dü könst oober nian sidj, diar't al jaft, auerskriiw.
+
+'''Paase üüb!'''
+Det fersküüwen hää widjloftag fulgen för ööder sidjen. Dü skulst begreben haa, wat dü diar maage wel.",
+'movepagetalktext' => "Uk det diskusjuunssidj woort fersköwen, wan det diar as, '''oober ei, wan:'''
+*Diar al en diskusjuunssidj mä didiar nööm as, of
+*Dü detdiar mögelkhaid ütjslotst.
+
+Uun didiar faal skel dü a diskusjuunssidjen faan hun tuupfeer.
+
+Dreeg di '''nei''' tiitel bi '''ööder sidj''' iin, an diaroner '''en grünj''' för't amnäämen.",
+'movearticle' => 'Sidj fersküüw:',
+'moveuserpage-warning' => "'''Paase üüb:''' Dü wel en brükersidj fersküüw. Seenk diaram, dat bluas det brükersidj amnäämd woort, oober '''ei''' di brüker. Hi behäält san ual nööm.",
+'movenologin' => 'Ei uunmeldet',
+'movenologintext' => 'Dü skel registriaret an [[Special:UserLogin|uunmeldet]] wees, am en sidj tu fersküüwen.',
+'movenotallowed' => 'Dü mutst nian sidjen fersküüw.',
+'movenotallowedfile' => 'Dü mutst nian datein fersküüw.',
+'cant-move-user-page' => 'Dü mutst nian brükersidjen fersküüw (bluas onersidjen).',
+'cant-move-to-user-page' => 'Dü mutst nian sidjen üüb en brükersidj fersküüw (bluas üüb onersidjen).',
'newtitle' => 'Müülj:',
-'move-watch' => 'Lök eefter jüdeer sid',
-'movepagebtn' => 'Sid ferschüwe',
+'move-watch' => "Jodiar sidjen uun't uug behual",
+'movepagebtn' => 'Sidj fersküüw',
'pagemovedsub' => 'Ferschüwing luket',
-'movepage-moved' => "'''Jü sid „$1“ wörd eefter „$2“ ferschääwen.'''",
-'articleexists' => 'Uner dideere noome bestoont ål en sid. Wääl hål en nai noome.',
-'talkexists' => 'Jü sid seelew wörd erfolchrik ferschääwen, ouers jü deertu hiirende diskusjoonssid ai, deer ål iinj ma di nai tiitel bestoont. Glik hål da önjhålte foon hönj ouf.',
-'movedto' => 'ferschääwen eefter',
-'movetalk' => 'Jü diskusjoonssid maferschüwe, wan möölik',
+'movepage-moved' => "'''Det sidj „$1“ as efter „$2“ fersköwen wurden.'''",
+'movepage-moved-redirect' => 'En widjerfeerang as iinracht wurden.',
+'movepage-moved-noredirect' => 'Det maagin faan en widjerfeerang as ferhanert wurden.',
+'articleexists' => 'En sidj mä didiar nööm jaft at al. Wees so gud an nem en öödern nööm.',
+'cantmove-titleprotected' => 'Dü könst det sidj ei so fersküüw, auer di nei nööm speret as.',
+'talkexists' => 'Detdiar sidj as fersköwen wurden, oober det diskusjuunssidj ei, auer diar al son diskusjuunssidj wiar. Fal det salew mä bidracher faan det ual sidj ap.',
+'movedto' => 'fersköwen efter',
+'movetalk' => "Uk det diskusjuunssidj fersküüw, wan't gongt",
+'move-subpages' => 'Onersidjen fersküüw (bit $1)',
+'move-talk-subpages' => "Onersidjen faan't diskusjuunssidj fersküüw (bit $1)",
+'movepage-page-exists' => 'Det sidj „$1“ as al diar an koon ei automaatisk auerskrewen wurd.',
'movepage-page-moved' => 'Det sidj $1 as efter $2 fersköwen wurden.',
'movepage-page-unmoved' => 'Det sidj $1 küd ei efter $2 fersköwen wurd.',
'movepage-max-pages' => 'Diar kön ei muar üs {{PLURAL:$1|sidj|sidjen}} fersköwen wurd. Muar sidjen kön ei automaatisk fersköwen wurd.',
-'movelogpage' => 'Ferschüwingslogbök',
-'movereason' => 'Begrüning:',
-'revertmove' => 'tubääg ferschüwe',
+'movelogpage' => 'Fersküüw-logbuk',
+'movelogpagetext' => 'Det as en list mä fersköwen sidjen.',
+'movesubpage' => '{{PLURAL:$1|Onersidj|Onersidjen}}',
+'movesubpagetext' => 'Det sidj hää {{PLURAL:$1|detdiar $1 onersidj|jodiar $1 onersidjen}}.',
+'movenosubpage' => 'Det sidj hää nian onersidjen.',
+'movereason' => 'Grünj:',
+'revertmove' => 'turag fersküüw',
+'delete_and_move' => 'Strik an fersküüw',
+'delete_and_move_text' => '== Striken nuadag ==
+
+Det sidj „[[:$1]]“ as al diar. Wel dü det strik, am det sidj tu fersküüwen?',
+'delete_and_move_confirm' => 'Ja, sidj strik',
+'delete_and_move_reason' => 'Stregen, am steeds för det fersküüwen faan „[[$1]]“ tu maagin.',
+'selfmove' => 'A nöömer san likedenang. Dü könst nian sidj üüb ham salew fersküüw.',
+'immobile-source-namespace' => 'Sidjen uun di nöömrüm "$1" kön ei fersköwen wurd.',
+'immobile-target-namespace' => 'Sidjen kön ei iin uun di nöömrüm "$1" fersköwen wurd.',
+'immobile-target-namespace-iw' => 'Dü könst nian sidj üüb en interwiki-link fersküüw.',
+'immobile-source-page' => 'Detdiar sidj koon ei fersköwen wurd.',
+'immobile-target-page' => 'Üüb detdiar sidj koon ei fersköwen wurd.',
+'bad-target-model' => 'Det nei sidj hää en ööder münster üs det ual. Det münster faan $1 koon ei tu det münster faan $2 feranert wurd.',
+'imagenocrossnamespace' => 'Datein kön ei ütj di {{ns:file}}-nöömrüm ütj fersköwen wurd.',
+'nonfile-cannot-move-to-file' => 'Det as nian datei, wat dü iin uun di {{ns:file}}-nöönmrüm fersküüw wel. Det gongt ei.',
+'imagetypemismatch' => 'Det nei dateiaanj as ei detsalew üs det ual.',
+'imageinvalidfilename' => 'Didiar dateinööm gongt ei.',
+'fix-double-redirects' => "Efter't fersküüwen aal a widjerfeerangen hen tu det ual sidj ferbeedre",
+'move-leave-redirect' => 'Widjerfeerang iinracht',
+'protectedpagemovewarning' => "'''Paase üüb: Detdiar sidj as speret wurden. Bluas administratooren kön det fersküüw.'''
+Uun't logbuk stäänt muar diartu:",
+'semiprotectedpagemovewarning' => "'''Paase üüb:''' Detdiar sidj as dialwiis tu't bewerkin speret wurden. Bluas gudkäänd brükern kön det fersküüw.
+Uun't logbuk stäänt muar diartu:",
+'move-over-sharedrepo' => '== Datei as al diar ==
+[[:$1]] stäänt uun en gemiansoom brükt archiif. Det fersküüwen üüb didiar nööm auerskraft det gemiansoom brükt datei.',
+'file-exists-sharedrepo' => 'Didiar dateinööm woort al uun en gemiansoom archiif brükt. Wees so gud, an nem en öödern nööm.',
# Export
-'export' => 'Side äksportiire',
+'export' => 'Sidjen eksportiare',
+'exporttext' => 'Mä detdiar spezial-sidj könst dü di tekst mä aal sin werjuunen tu en XML-datei eksportiare. Det nei datei koon do faan en ööder MediaWiki-Wiki [[Special:Import|importiaret]] wurd.
+
+Skriiw a sidjennöömer iin uun det tekstfial (man bluas ään noom uun arke rä).
+
+Di eksport as uk mä [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]] mögelk, tun bispal för det [[{{MediaWiki:Mainpage}}]].',
+'exportall' => 'Aal a sidjen eksportiare',
+'exportcuronly' => 'Bluas det aktuel werjuun eksportiare, ei jo ual werjuunen',
+'exportnohistory' => "----
+'''Paase üüb:''' Di eksport faan di hial ferluup as uun uugenblak ei mögelk.",
+'exportlistauthors' => 'För arke sidj det hial list faan bewerkern mänem',
+'export-submit' => 'Eksport',
+'export-addcattext' => 'Sidjen faan detdiar kategorii diartunem:',
+'export-addcat' => 'Diartunem',
+'export-addnstext' => 'Sidjen faan didiar nöömrüm diartunem:',
+'export-addns' => 'Diartunem',
+'export-download' => 'Üs XML-datei seekre',
+'export-templates' => 'Mä föörlaagen',
+'export-pagelinks' => 'Ferwiset sidjen mänem bit tu en jipde faan:',
# Namespace 8 related
+'allmessages' => 'MediaWiki-Süsteemnoorachten',
'allmessagesname' => 'Nööm',
'allmessagesdefault' => 'Standard tekst',
+'allmessagescurrent' => 'Aktuel tekst',
+'allmessagestext' => "Det as en list mä MediaWiki-süsteemteksten.
+Wees so gud an beschük a sidjen [//www.mediawiki.org/wiki/Localisation MediaWiki-auersaatang] an [//translatewiki.net translatewiki.net], wan dü bi't auersaaten mähalep meest.",
+'allmessagesnotsupportedDB' => 'Detdiar spezial-sidj koon ei brükt wurd, auer <tt>$wgUseDatabaseMessages</tt> ei aktiif as.',
+'allmessages-filter-legend' => 'Filter',
+'allmessages-filter' => 'Filter för di uunpaaset stant:',
+'allmessages-filter-unmodified' => 'Ünferanert',
+'allmessages-filter-all' => 'Aaltumaal',
+'allmessages-filter-modified' => 'Feranert',
+'allmessages-prefix' => 'Filter mä prefix:',
+'allmessages-language' => 'Spriak:',
+'allmessages-filter-submit' => 'Widjer',
# Thumbnails
-'thumbnail-more' => 'fergrutre',
-'thumbnail_error' => "Bi't maagin faan't sümnaielbil ging wat skiaf: $1",
+'thumbnail-more' => 'Fergratre',
+'filemissing' => 'Datei ei diar',
+'thumbnail_error' => "Bi't skriiwen faan det föörskaubil as wat skiaf gingen: $1",
+'thumbnail_error_remote' => 'Feeler faan $1:
+$2',
+'djvu_page_error' => 'DjVu-sidj as bütjen faan a sidjenrüm',
+'djvu_no_xml' => 'XML-dooten för det DjVu-datei kön ei ufrepen wurd',
+'thumbnail-temp-create' => 'Det datei för det tidjwiis sümnaielbil küd ei skrewen wurd',
+'thumbnail-dest-create' => 'Det föörskaubil küd diar ei seekert wurd.',
+'thumbnail_invalid_params' => 'Sümnaieldooten steme ei',
+'thumbnail_dest_directory' => 'Det fertiaknis koon ei skrewen wurd.',
+'thumbnail_image-type' => 'Sok bilen kön ei brükt wurd',
+'thumbnail_gd-library' => 'GD-bibleteek ei gans diar: Det funktjuun $1 waant',
+'thumbnail_image-missing' => 'Det datei as wel ei diar: $1',
# Special:Import
-'import' => 'Side importiire',
+'import' => 'Sidjen importiare',
'importinterwiki' => 'Transwiki import',
+'import-interwiki-text' => "Schük en Wiki an en sidj tu importiarin ütj. A werjuunen an brükernöömer bliiw erhäälen.
+Transwiki-import-aktjuunen wurd uun't [[Special:Log/import|Import-logbuk]] fäästhäälen.",
+'import-interwiki-source' => 'Faan hün Wiki/sidj:',
+'import-interwiki-history' => 'Aal a werjuunen faan det sidj importiare',
+'import-interwiki-templates' => 'Mä aal a föörlaagen',
'import-interwiki-submit' => 'Import',
+'import-interwiki-namespace' => 'Tu hün nöömrüm:',
+'import-interwiki-rootpage' => 'Tu hün sidj (optional):',
+'import-upload-filename' => 'Dateinööm:',
+'import-comment' => 'Komentaar:',
+'importtext' => 'Wees so gud an eksportiare det datei mä det spezial-sidj [[Special:Export|Eksport]] ütj det ööder Wiki. Det seekerst dü üüb dan reegner an schüürst det do heer huuch.',
+'importstart' => 'Importiare sidjen ...',
+'import-revision-count' => '$1 {{PLURAL:$1|werjuun|werjuunen}}',
+'importnopages' => 'Diar san nian sidjen tu importiarin.',
+'imported-log-entries' => '$1 {{PLURAL:$1|logbukiindrach|logbukiindracher}} importiaret.',
+'importfailed' => 'Import as skiaf gingen: <nowiki>$1</nowiki>',
+'importunknownsource' => 'Ünbekäänd importkwel',
+'importcantopen' => 'Det import-datei küd ei eeben maaget wurd.',
+'importbadinterwiki' => 'Ferkiard interwiki-link',
+'importnotext' => 'Leesag of nään tekst',
+'importsuccess' => 'Import klaar!',
+'importhistoryconflict' => 'Diar san al ääler werjuunen diar. Ferlicht as det sidj al ans importiaret wurden.',
+'importnosources' => 'För di transwiki-import san nian kwelen uunden. Dü könst werjuunen ei direkt huuchschüür.',
+'importnofile' => 'Diar as nian importdatei bestemet wurden.',
+'importuploaderrorsize' => "Bi't huuchschüüren faan det importdatei as wat skiaf gingen. Det datei as tu grat.",
+'importuploaderrorpartial' => "Bi't huuchschüüren faan det importdatei as wat skiaf gingen. Det datei as bluas dialwiis huuchschüürd wurden.",
+'importuploaderrortemp' => "Bi't huuchschüüren faan det importdatei as wat skiaf gingen. Diar as nian tidjwiis fertiaknis.",
+'import-parse-failure' => "Bi't importiarin faan det XML-datei as wat skiaf gingen.",
+'import-noarticle' => 'Diar as nian sidj tu importiarin bestemet wurden.',
+'import-nonewrevisions' => 'Aal jodiar werjuunen san al ans importiaret wurden.',
+'xml-error-string' => '$1 uun rä $2, türn $3 (byte $4): $5',
+'import-upload' => 'XML-datein importiare',
+'import-token-mismatch' => 'Session dooten san wech. Ferschük det noch ans weder.',
+'import-invalid-interwiki' => 'Faan detdiar Wiki koon ik ei importiare.',
+'import-error-edit' => 'Det sidj „$1“ as ei importiaret wurden, auer dü det ei bewerke mutst.',
+'import-error-create' => 'Det sidj „$1“ as ei importiaret wurden, auer dü det ei maage mutst.',
+'import-error-interwiki' => 'Det sidj „$1“ as ei importiaret wurden, auer di nööm för ferwisangen (interwiki) föörsen as.',
+'import-error-special' => 'Det sidj „$1“ as ei importiaret wurden, auer hat tu en nöömrüm hiart, huar nian sidjen mögelk san.',
+'import-error-invalid' => 'Det sidj „$1“ as ei importiaret wurden, auer di nööm ei stemet.',
+'import-error-unserialize' => 'Det werjuun $2 faan det sidj „$1“ küd ei deserialisiaret wurd. Det werjuun woort mä det münster $3 brükt, an det as mä $4 serialisiaret.',
+'import-options-wrong' => 'Ferkiard {{PLURAL:$2|iinstelang|iinstelangen}}: <nowiki>$1</nowiki>',
+'import-rootpage-invalid' => 'Didiar sidjennööm as ferkiard.',
+'import-rootpage-nosubpage' => 'Uun di nöömrüm „$1“ jaft at nian onersidjen.',
+
+# Import log
+'importlogpage' => 'Import-logbuk',
+'importlogpagetext' => 'Administratiif import faan sidjen mä aal a werjuunen faan ööder Wikis.',
+'import-logentry-upload' => '„[[$1]]“ faan en datei importiaret',
+'import-logentry-upload-detail' => '$1 {{PLURAL:$1|werjuun|werjuunen}}',
+'import-logentry-interwiki' => '„$1“ mä transwiki importiaret',
+'import-logentry-interwiki-detail' => '$1 {{PLURAL:$1|werjuun|werjuunen}} faan $2',
+
+# JavaScriptTest
+'javascripttest' => 'JavaScript-test',
+'javascripttest-title' => '$1-tests wurd ütjfeerd.',
+'javascripttest-pagetext-noframework' => 'Detdiar sidj as för JavaScript-tests föörsen.',
+'javascripttest-pagetext-unknownframework' => 'Ünbekäänd test-framework „$1“.',
+'javascripttest-pagetext-frameworks' => 'Schük ian faan jodiar test-frameworks ütj: $1',
+'javascripttest-pagetext-skins' => 'Schük en brüker-skak ütj, am di test ütjtufeeren:',
+'javascripttest-qunit-intro' => 'Luke efter bi [$1 test dokumentatjuun] üüb mediawiki.org',
+'javascripttest-qunit-heading' => 'JavaScript-QUnit-tester faan MediaWiki',
# Tooltip help for the actions
-'tooltip-pt-userpage' => 'Din brükersid',
-'tooltip-pt-mytalk' => 'Din diskusjoonssid',
-'tooltip-pt-preferences' => 'Äine önjstalinge',
-'tooltip-pt-watchlist' => 'List foon eefterkiikede side',
-'tooltip-pt-mycontris' => 'List foon din tujeefte',
-'tooltip-pt-login' => 'Ham önjmälde wårt wälj hål sänj, ouers as niinj plächt.',
-'tooltip-pt-anonlogin' => 'Ham önjmälde wårt wälj hål sänj, ouers as niinj plächt.',
-'tooltip-pt-logout' => 'Oufmälde',
-'tooltip-ca-talk' => 'Diskusjoon ouer jü sidinhålt',
-'tooltip-ca-edit' => 'Sid beårbe. Hål for dåt spikern jü forlökfunksjoon brüke.',
-'tooltip-ca-addsection' => 'Nai oufsnaas begane',
-'tooltip-ca-viewsource' => 'Jüdeer sid wårt uner ferbading hülen. Di kwältäkst koon önjkiiked wårde.',
-'tooltip-ca-history' => 'Iire färsjoone foon jüdeer sid',
-'tooltip-ca-protect' => 'Jüdeer sid schütse',
+'tooltip-pt-userpage' => 'Din brükersidj',
+'tooltip-pt-anonuserpage' => 'Brükersidj faan det IP-adres, faan huar ütj dü werkest',
+'tooltip-pt-mytalk' => 'Din diskusjuunssidj',
+'tooltip-pt-anontalk' => 'Diskusjuun auer feranrangen faan detdiar IP-adres',
+'tooltip-pt-preferences' => 'Min iinstelangen',
+'tooltip-pt-watchlist' => "Sidjen, diar dü uun't uug behual wel",
+'tooltip-pt-mycontris' => 'List mä aanj bidracher',
+'tooltip-pt-login' => 'Wan dü di uunmeldest, heest dü muar mögelkhaiden. Dü säärst det oober ei.',
+'tooltip-pt-anonlogin' => 'Wan dü di uunmeldest, heest dü muar mögelkhaiden. Dü säärst det oober ei.',
+'tooltip-pt-logout' => 'Ufmelde',
+'tooltip-ca-talk' => 'Diskusjuun auer di artiikel',
+'tooltip-ca-edit' => 'Sidj bewerke. Luke di det iarst ans uun, iar dü det seekerst.',
+'tooltip-ca-addsection' => 'Nei kirew began',
+'tooltip-ca-viewsource' => 'Detdiar sidj as seekert wurden.
+Dü könst di kweltekst uunluke.',
+'tooltip-ca-history' => 'Ääler werjuunen faan detdiar sidj',
+'tooltip-ca-protect' => 'Detdiar sidj seekre',
'tooltip-ca-unprotect' => 'Seekerang feranere',
-'tooltip-ca-delete' => 'Jüdeer sid tunintemååge',
-'tooltip-ca-move' => 'Jüdeer sid ferschüwe',
-'tooltip-ca-watch' => 'Jüdeer sid tu jü persöönlike eefterkiiksid baitufäige',
-'tooltip-ca-unwatch' => 'Jüdeer sid foon jü persöönlike eefterkiikliste wächnaame',
-'tooltip-search' => '{{SITENAME}} döörsäke',
-'tooltip-search-go' => 'Gung matiinjs tu jü sid, jü äksakt di injääwen noome önjtspreecht.',
-'tooltip-search-fulltext' => 'Säk eefter side, da dideere täkst öjnthüülje',
-'tooltip-p-logo' => 'Besäk jü hoodsid',
-'tooltip-n-mainpage' => 'Hoodsid wise',
-'tooltip-n-mainpage-description' => 'Hoodsid besäke',
-'tooltip-n-portal' => 'Ouer dåt portåål, wat dü düünj koost, weer wat tu finen as',
-'tooltip-n-currentevents' => 'Äädergrüninformasjoone tu aktuäle schaiinge',
-'tooltip-n-recentchanges' => 'List foon da leeste änringe önj {{SITENAME}}',
-'tooltip-n-randompage' => 'Tufali sid',
-'tooltip-n-help' => 'Heelpsid wise',
-'tooltip-t-whatlinkshere' => 'List foon ål da side, da heer jurt wise',
-'tooltip-t-recentchangeslinked' => 'Leest änringen bai side, da foon heer ferlinkd san',
-'tooltip-feed-rss' => 'RSS-feed for jüdeer sid',
-'tooltip-feed-atom' => 'Atom-feed for jüdeer sid',
-'tooltip-t-contributions' => 'List foon tujeefte foon dideere brüker önjkiike',
-'tooltip-t-emailuser' => 'En e-mail tu dideere brüker siinje',
-'tooltip-t-upload' => 'Bile huuchschake',
-'tooltip-t-specialpages' => 'List foon ål da spesjåålside',
-'tooltip-t-print' => 'Prantönjsacht foon jüdeer sid',
-'tooltip-t-permalink' => 'Wååri link tu jüdeer sidfärsjoon',
-'tooltip-ca-nstab-main' => 'Sidinhålt wise',
-'tooltip-ca-nstab-user' => 'Brükersid wise',
-'tooltip-ca-nstab-special' => 'Jüdeer sid as en spetsjåålsid. Jü koon ai beåarbed wårde.',
-'tooltip-ca-nstab-project' => 'Portoolsid wise',
-'tooltip-ca-nstab-image' => 'Dååtäisid wise',
-'tooltip-ca-nstab-template' => 'Forlååge wise',
+'tooltip-ca-delete' => 'Detdiar sidj strik',
+'tooltip-ca-undelete' => 'Iindracher faan det sidj turaghaale, iar det stregen wurden as.',
+'tooltip-ca-move' => 'Detdiar sidj fersküüw',
+'tooltip-ca-watch' => "Detdiar sidj uk uun't uug behual",
+'tooltip-ca-unwatch' => "Detdiar sidj ei muar uun't uug behual",
+'tooltip-search' => 'Schük uun {{SITENAME}}',
+'tooltip-search-go' => 'Gung tu det sidj, diar jüst so het.',
+'tooltip-search-fulltext' => 'Schük efter sidjen mä didiar tekst',
+'tooltip-p-logo' => 'Hoodsidj beschük',
+'tooltip-n-mainpage' => 'Hoodsidj wise',
+'tooltip-n-mainpage-description' => 'Hoodsidj beschük',
+'tooltip-n-portal' => 'Auer det projekt, wat dü maage könst, an huar dü wat fanjst.',
+'tooltip-n-currentevents' => 'Muar auer a "miilstianer", diar det wurden an waaksen faan\'t Nuurdfresk Wikipedia eftertiakne',
+'tooltip-n-recentchanges' => 'Leetst feranrangen faan {{SITENAME}}',
+'tooltip-n-randompage' => 'Tufelag sidj',
+'tooltip-n-help' => 'Halepsidj uunwise',
+'tooltip-t-whatlinkshere' => 'Aal a sidjen, diar heerhen ferwise',
+'tooltip-t-recentchangeslinked' => 'Leetst feranrangen faan sidjen, huar faan heer üüb ferwiset woort',
+'tooltip-feed-rss' => 'RSS-feed för detdiar sidj',
+'tooltip-feed-atom' => 'Atom-feed för detdiar sidj',
+'tooltip-t-contributions' => 'List mä bidracher faan didiar brüker uunluke',
+'tooltip-t-emailuser' => 'En e-mail tu didiar brüker schüür',
+'tooltip-t-upload' => 'Datein huuchschüür',
+'tooltip-t-specialpages' => 'Auersicht auer aal a spezial-sidjen',
+'tooltip-t-print' => 'Drükföörskau',
+'tooltip-t-permalink' => 'Permanent ferwisang tu detdiar werjuun faan det sidj.',
+'tooltip-ca-nstab-main' => 'Sidj uunluke',
+'tooltip-ca-nstab-user' => 'Brükersidj uunluke',
+'tooltip-ca-nstab-media' => 'Mediendateisidj uunwise',
+'tooltip-ca-nstab-special' => 'Det as en spezial-sidj. Hat koon ei bewerket wurd.',
+'tooltip-ca-nstab-project' => 'Projektsidj uunluke',
+'tooltip-ca-nstab-image' => 'Dateisidj uunluke',
+'tooltip-ca-nstab-mediawiki' => 'MediaWiki-süsteemtekst uunwise',
+'tooltip-ca-nstab-template' => 'Föörlaag uunluke',
'tooltip-ca-nstab-help' => 'Heelpsid wise',
-'tooltip-ca-nstab-category' => 'Kategoriisid wise',
-'tooltip-minoredit' => 'Jüdeer änring as latj markiire.',
-'tooltip-save' => 'Feranerangen seekre',
-'tooltip-preview' => 'Forlök foon da änringe bai jüdeer sid. Hål for dåt spikern brüke!',
-'tooltip-diff' => 'Änringe bai di täkst wise',
-'tooltip-compareselectedversions' => 'Ferschääl twasche tou ütwäälde färsjoone foon jüdeer sid wise.',
-'tooltip-watch' => 'Fäig jüdeer sid foon din eefterkiikliste tubai',
-'tooltip-rollback' => 'Mååget åle leeste änringe foon jü sid, da foon di lik brüker fornümen wörden san, döör iinj klik tuninte.',
-'tooltip-undo' => 'Mååget bloot jüdeer iinje änring tuninte än wist dåt resultoot önj e forlöksid önj, deerma önj e tukuupefootingssid en begrüning önjjääwen wårde koon.',
+'tooltip-ca-nstab-category' => 'Kategoriisidj uunluke',
+'tooltip-minoredit' => 'Detdiar feranrang üs letj kääntiakne.',
+'tooltip-save' => 'Feranrangen seekre',
+'tooltip-preview' => 'Föörskau faan feranrangen üüb detdiar sidj. Iarst noch ans luke, iar dü det sidj seekerst!',
+'tooltip-diff' => 'Feranrangen bi a tekst wise',
+'tooltip-compareselectedversions' => 'Ferskeel tesken tau werjuunen faan detdiar sidj uunwise.',
+'tooltip-watch' => "Detdiar sidj uk uun't uug behual",
+'tooltip-watchlistedit-normal-submit' => 'Iindracher wechnem',
+'tooltip-watchlistedit-raw-submit' => "List mä sidjen, diar dü uun't uug behual wel, aktualisiare",
+'tooltip-recreate' => 'Sidj nei maage, likes dat det al ans stregen wurden as',
+'tooltip-upload' => 'Huuchsjüüren began',
+'tooltip-rollback' => 'Saat aal a leetst feranrangen faan disalew brüker mä ään klik turag.',
+'tooltip-undo' => 'Saat bluas det leetst feranrang turag an wiset det resultoot uun en föörskau uun. Uun det tuupfaadet beskriiwang skul en grünj för det turagsaaten uunden wurd.',
+'tooltip-preferences-save' => 'Iinstelangen seekre',
'tooltip-summary' => 'Faade det kurt tuup',
+# Metadata
+'notacceptable' => 'Di Wiki-server koon a dooten ei för dan aperoot apwerke.',
+
+# Attribution
+'anonymous' => '{{PLURAL:$1|anonüümen brüker|anonüüm brükern}} üüb {{SITENAME}}',
+'siteuser' => '{{SITENAME}}-brüker $1',
+'anonuser' => 'Anonüüm {{SITENAME}}-brüker $1',
+'lastmodifiedatby' => 'Det sidj as tuleetst di $1 am a klook $2 faan $3 feranert wurden.',
+'othercontribs' => 'Üüb grünjlaag faan det werk faan $1.',
+'others' => 'öödern',
+'siteusers' => '{{SITENAME}} {{PLURAL:$2|brüker|brükern}} $1',
+'anonusers' => '{{PLURAL:$2|anonüümen|anonüüm}} {{SITENAME}}-{{PLURAL:$2|brüker|brükern}} $1',
+'creditspage' => 'Sidjeninformatsjuunen',
+'nocredits' => 'Diar san nian sidjeninformatsjuunen',
+
+# Spam protection
+'spamprotectiontitle' => 'Spam-filter',
+'spamprotectiontext' => 'Di tekst, diar dü seekre wulst, as ei troch a spam-filter kimen. Det leit was uun en ferwisang üüb en sidj efter bütjen.',
+'spamprotectionmatch' => "'''Didiar tekst as faan a spam-filter fünjen wurden: ''$1'''''",
+'spambot_username' => 'MediaWiki-spam apklaarin',
+'spam_reverting' => 'Leetst werjuun saner ferwisangen tu $1 weder iinsteld.',
+'spam_blanking' => 'Aal a werjuunen mä en ferwisang tu $1 san apklaaret wurden.',
+'spam_deleting' => 'Aal a werjuunen mä en ferwisung tu $1 san stregen wurden.',
+
+# Info page
+'pageinfo-title' => 'Informatjuun tu „$1“',
+'pageinfo-not-current' => 'Det informatjuun jaft at ei för ual werjuunen.',
+'pageinfo-header-basic' => 'Grünjdooten',
+'pageinfo-header-edits' => 'Ferluup bewerke',
+'pageinfo-header-restrictions' => 'Sidjenseekerhaid',
+'pageinfo-header-properties' => 'Sidjeniinstelangen',
+'pageinfo-display-title' => 'Uunwiset sidjennööm',
+'pageinfo-default-sort' => 'Normool sortiariinstelang',
+'pageinfo-length' => 'Sidjenlengde (uun bytes)',
+'pageinfo-article-id' => 'Sidjenkäännumer (ID)',
+'pageinfo-language' => 'Sidjenspriak',
+'pageinfo-robot-policy' => 'Schükmaskiin-stant',
+'pageinfo-robot-index' => 'Koon indisiaret wurd',
+'pageinfo-robot-noindex' => 'Koon ei indisiaret wurd',
+'pageinfo-views' => 'Taal faan kliks üüb det sidj',
+'pageinfo-watchers' => "Taal faan brükern, diar det sidj uun't uug haa",
+'pageinfo-few-watchers' => "Maner üs {{PLURAL:$1|ään brüker|$1 brükern}}, diar det sidj uun't uug haa",
+'pageinfo-redirects-name' => 'Widjerfeerangen tu detdiar sidj',
+'pageinfo-subpages-name' => 'Onersidjen faan detdiar sidj',
+'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|widjerfeerang|widjerfeerangen}}; $3 {{PLURAL:$3|onersidj|onersidjen}})',
+'pageinfo-firstuser' => 'Hoker det sidj maaget hää',
+'pageinfo-firsttime' => 'Wan det sidj maaget wurden as',
+'pageinfo-lastuser' => 'Leetst skriiwer',
+'pageinfo-lasttime' => "Dootem faan't leetst feranrang",
+'pageinfo-edits' => 'Taal faan feranrangen',
+'pageinfo-authors' => 'Taal faan skriiwern',
+'pageinfo-recent-edits' => 'Taal faan a leetst feranrangen (uun a leetst $1)',
+'pageinfo-recent-authors' => 'Taal faan skriiwern',
+'pageinfo-magic-words' => 'Maagisk {{PLURAL:$1|wurd|wurden}} ($1)',
+'pageinfo-hidden-categories' => 'Ferbürgen {{PLURAL:$1|kategorii|kategoriin}} ($1)',
+'pageinfo-templates' => 'Iinbünjen {{PLURAL:$1|föörlaag|föörlaagen}} ($1)',
+'pageinfo-transclusions' => 'Iinbünjen uun {{PLURAL:$1|1 sidj|$1 sidjen}}',
+'pageinfo-toolboxlink' => 'Sidjendooten',
+'pageinfo-redirectsto' => 'Widjerfeerangen tu',
+'pageinfo-redirectsto-info' => 'Informatjuun',
+'pageinfo-contentpage' => 'Üs artiikel tääld',
+'pageinfo-contentpage-yes' => 'Ja',
+'pageinfo-protect-cascading' => 'Sidjen mä kaskaadenseekerhaid faan heer',
+'pageinfo-protect-cascading-yes' => 'Ja',
+'pageinfo-protect-cascading-from' => 'Sidjen mä kaskaadenseekerhaid faan',
+'pageinfo-category-info' => 'Kategorii-informatjuun',
+'pageinfo-category-pages' => 'Taal faan sidjen',
+'pageinfo-category-subcats' => 'Taal faan onerkategoriin',
+'pageinfo-category-files' => 'Taal faan datein',
+
+# Patrolling
+'markaspatrolleddiff' => 'Üs kontroliaret kääntiakne',
+'markaspatrolledtext' => 'Sidj üs kontroliaret kääntiakne',
+'markedaspatrolled' => 'Üs kontroliaret kääntiakne',
+'markedaspatrolledtext' => 'Detdiar werjuun faan [[:$1]] as üs kontroliaret kääntiakent wurden.',
+'rcpatroldisabled' => 'A leetst feranrangen kön ei kontroliaret wurd.',
+'rcpatroldisabledtext' => 'A leetst feranrangen kön tu tidj ei kontroliaret wurd.',
+'markedaspatrollederror' => "Koon ei üs '''kontroliaret''' kääntiakent wurd.",
+'markedaspatrollederrortext' => 'Dü mutst en werjuun besteme, diar dü üs köntroliaret kääntiakne wel.',
+'markedaspatrollederror-noautopatrol' => 'Dü könst ei din aanj feranrangen üs kontroliaret kääntiakne.',
+'markedaspatrollednotify' => 'Det feranrang faan $1 as üs kontroliaret kääntiakent wurden.',
+'markedaspatrollederrornotify' => 'Det werjuun küd ei üs kontroliaret kääntiakent wurd.',
+
+# Patrol log
+'patrol-log-page' => 'Kontrol-logbuk',
+'patrol-log-header' => 'Det as det kontrol-logbuk.',
+'log-show-hide-patrol' => 'Kontrol-logbuk $1',
+
+# Image deletion
+'deletedrevision' => 'Ual werjuun $1 stregen',
+'filedeleteerror-short' => "Bi't striken faan det datei $1 as wat skiaf gingen.",
+'filedeleteerror-long' => "Bi't striken faan det datei as wat skiaf gingen:
+
+$1",
+'filedelete-missing' => 'Det datei „$1“ koon ei stregen wurd, auer hat goorei diar as.',
+'filedelete-old-unregistered' => 'Det datei-werjuun „$1“ as ei diar uun a dootenbeenk.',
+'filedelete-current-unregistered' => 'Det datei „$1“ as ei diar uun a dootenbeenk.',
+'filedelete-archive-read-only' => 'Det archiif-fertiaknis "$1" koon faan a webserver ei beskrewen wurd.',
+
# Browsing diffs
-'previousdiff' => '← Tu di leest färsjoonsferschääl',
+'previousdiff' => '← Leetst feranrang',
'nextdiff' => 'Tu di näist färsjoonsferschääl →',
# Media information
-'file-info-size' => '$1 × $2 pixele, dååtäigrutelse: $3, MIME-typ: $4',
-'file-nohires' => 'Niinj huuger apliising as deer.',
-'svg-long-desc' => 'SVG-dåtäi, basisgrutelse: $1 × $2 pixel, dåtäigrutelse: $3',
-'show-big-image' => 'Färsjon önj huuger apliising',
+'mediawarning' => "'''Paase üüb:''' Son datei koon fülk programcode haa. Bi't deelloosin an eeben maagin koon dan reegner komer fu.",
+'imagemaxsize' => "Bil mut ei grater wees üs:<br />''(för datei-beskriiwangen)''",
+'thumbsize' => 'Grate faan sümnaielbilen:',
+'widthheightpage' => '$1 × $2, {{PLURAL:$3|1 sidj|$3 sidjen}}',
+'file-info' => 'Dateigrate: $1, MIME-typ: $2',
+'file-info-size' => '$1 × $2 pixels, dateigrate: $3, MIME-typ: $4',
+'file-info-size-pages' => '$1 × $2 pixel, dateigrate: $3, MIME-typ: $4, $5 {{PLURAL:$5|sidj|sidjen}}',
+'file-nohires' => 'Diar as nian huuger apliasang diar.',
+'svg-long-desc' => 'SVG-datei, grate: $1 × $2 pixel, dateigrate: $3',
+'svg-long-desc-animated' => 'Animiaret SVG-datei, grate $1 × $2 pixel, dateigrate: $3',
+'svg-long-error' => 'Ferkiard SVG-datei: $1',
+'show-big-image' => 'Huuger apliasang',
+'show-big-image-preview' => 'Grate faan detdiar föörskaubil: $1.',
+'show-big-image-other' => 'Ööder {{PLURAL:$2|apliasang|apliasangen}}: $1.',
+'show-big-image-size' => '$1 × $2 pixel',
+'file-info-gif-looped' => 'sleuf saner aanj',
+'file-info-gif-frames' => '$1 {{PLURAL:$1|bil|bilen}}',
+'file-info-png-looped' => 'sleuf saner aanj',
+'file-info-png-repeat' => '$1 {{PLURAL:$1|-sis}} ufspelet',
+'file-info-png-frames' => '$1 {{PLURAL:$1|bil|bilen}}',
+'file-no-thumb-animation' => "'''Paase üüb: Ütj technisk grünjer wurd sümnaielbilen ei animiaret uunwiset.'''",
+'file-no-thumb-animation-gif' => "'''Paase üüb: Ütj technisk grünjer wurd sümnaielbilen faan huuchapliasin GIF-datein ei animiaret uunwiset.'''",
# Special:NewFiles
-'ilsubmit' => 'Sjük',
+'newimages' => 'Nei datein',
+'imagelisttext' => "Diar as en list faan '''$1''' {{PLURAL:$1|datei|datein}}, sortiaret $2.",
+'newimages-summary' => 'Detdiar spezial-sidj wiset a tuleetst huuchsjüürd datein uun.',
+'newimages-legend' => 'Filter',
+'newimages-label' => 'Dateinööm (of en dial diarfaan):',
+'showhidebots' => '(Bots $1)',
+'noimages' => 'Niks tu sen.',
+'ilsubmit' => 'Schük',
+'bydate' => 'efter dootem',
+'sp-newimages-showfrom' => 'Wise nei datein efter $1, klook $2',
+
+# Video information, used by Language::formatTimePeriod() to format lengths in the above messages
+'seconds' => '{{PLURAL:$1|$1 sekund|$1 sekunden}}',
+'minutes' => '{{PLURAL:$1|$1 minüüt|$1 minüüten}}',
+'hours' => '{{PLURAL:$1|$1 stünj|$1 stünjen}}',
+'days' => '{{PLURAL:$1|$1 dai|$1 daar}}',
+'weeks' => '{{PLURAL:$1|$1 weg|$1 wegen}}',
+'months' => '{{PLURAL:$1|$1 muun|$1 muuner}}',
+'years' => '{{PLURAL:$1|$1 juar|$1 juaren}}',
+'ago' => 'föör $1',
+'just-now' => 'jüst nü',
+
+# Human-readable timestamps
+'hours-ago' => 'föör {{PLURAL:$1|ian stünj|$1 stünjen}}',
+'minutes-ago' => 'föör {{PLURAL:$1|ian minüüt|$1 minüüten}}',
+'seconds-ago' => 'föör {{PLURAL:$1|ian sekund|$1 sekunden}}',
+'monday-at' => 'Mundai am a klook $1',
+'tuesday-at' => 'Teisdai am a klook $1',
+'wednesday-at' => 'Wäärnsdai am a klook $1',
+'thursday-at' => 'Süürsdai am a klook $1',
+'friday-at' => 'Freidai am a klook $1',
+'saturday-at' => 'Saninj am a klook $1',
+'sunday-at' => 'Söndai am a klook $1',
+'yesterday-at' => 'Jister am a klook $1',
# Bad image list
-'bad_image_list' => 'Formååt:
+'bad_image_list' => 'Formaat:
-Bloot rae, da ma en * begane, wårde ütwjarted. As jarste eefter dåt * mötj en link aw en ai wansched dååtäi stönje.
-Deeraw föliende sidelinke önj dåtseelwi ra definiire ütnååme, önj di kontäkst weerfoon jü dååtäi duch tu schüns kaame mötj.',
+Bluas räen, diar mä en * began, wurd mätääld.
+Det skal bääft di * began mä en ferwisang üüb en ferkiard datei.
+Ferwisangen uun det salew rä wurd üs ütjnoomen uunsen, huar det datei dach uunwiset wurd mut.',
# Metadata
-'metadata' => 'Metadååte',
-'metadata-help' => 'Jüdeer dåtäi önjthålt widere informasjoon, jü önj e räigel foon jü digitoolamera unti di ferwånd scanner ståme. Döör eefterdräägen beårbing foon jü originooldåtäi koone hu detaile feränret wörden weese.',
-'metadata-expand' => 'Ütbriidede detaile wise',
-'metadata-collapse' => 'Ütbriidede detaile fersteege',
-'metadata-fields' => 'Da füliende fälje foon da EXIF-metadååte, da önj dideere MediaWiki-systeemtäkst önjjääwen san, wårde aw bilbeschriwingsside ma inklapede metadååtetabäle wist. Widere wårde standardmääsi ai wised.
+'metadata' => 'Metadooten',
+'metadata-help' => 'Uun detdiar datei stun muar dooten, jo kem miast faan en digitaal knipskasche of faan en scanner. Ferlicht san hög dooten uk leederhen feranert wurden.',
+'metadata-expand' => 'Ütjwidjet dooten wise',
+'metadata-collapse' => 'Ütjwidjet dooten fersteeg',
+'metadata-fields' => 'Jodiar EXIF-metadooten wurd uunwiset, wan det metadootentabel ferbürgen as. Jo öödern san iarst ans ferbürgen.
* make
* model
* datetimeoriginal
* gpslongitude
* gpsaltitude',
+# Exif tags
+'exif-imagewidth' => 'Breetje',
+'exif-imagelength' => 'Hööchde',
+'exif-bitspersample' => 'Bits per klöör',
+'exif-compression' => 'Komprimiarang',
+'exif-photometricinterpretation' => 'Pixel bonk',
+'exif-orientation' => 'Perspektiiw',
+'exif-samplesperpixel' => 'Taal faan komponenten',
+'exif-planarconfiguration' => 'Dooten skak',
+'exif-ycbcrsubsampling' => 'subsampling rate faan Y bit C',
+'exif-ycbcrpositioning' => 'Y an C positjuun',
+'exif-xresolution' => 'Wairocht apliasang',
+'exif-yresolution' => 'Luadrocht apliasang',
+'exif-stripoffsets' => 'Image data location',
+'exif-rowsperstrip' => 'Taal faan rän per strimel',
+'exif-stripbytecounts' => 'Bytes per komprimiaret strimel',
+'exif-jpeginterchangeformat' => 'Offset tu JPEG SOI',
+'exif-jpeginterchangeformatlength' => 'Bytes faan JPEG-dooten',
+'exif-whitepoint' => 'White point chromaticity',
+'exif-primarychromaticities' => 'Chromaticities of primarities',
+'exif-ycbcrcoefficients' => 'Color space transformation matrix coefficients',
+'exif-referenceblackwhite' => 'Suart/witj referens ponkter',
+'exif-datetime' => "Dootem an klooktidj faan't seekrin",
+'exif-imagedescription' => "Nööm faan't bil",
+'exif-make' => 'Knipser onernemen',
+'exif-model' => 'Knipser marke/model',
+'exif-software' => 'Software',
+'exif-artist' => 'Fotogroof',
+'exif-copyright' => 'Bilrochten',
+'exif-exifversion' => 'Stant faan Exif',
+'exif-flashpixversion' => 'Flashpix-werjuun',
+'exif-colorspace' => 'Klöörenrüm',
+'exif-componentsconfiguration' => 'Enkelt komponenten',
+'exif-compressedbitsperpixel' => 'Komprimiaret bits per pixel',
+'exif-pixelydimension' => 'Bilbreetje',
+'exif-pixelxdimension' => 'Bilhööchde',
+'exif-usercomment' => 'Brüker komentaaren',
+'exif-relatedsoundfile' => 'Ferbünjen tuundatei',
+'exif-datetimeoriginal' => "Dootem an klooktidj faan't knipsin",
+'exif-datetimedigitized' => "Dootem an klooktidj faan't digitalisiarin",
+'exif-subsectime' => 'Tidjponkt faan seekrin (1/100 s)',
+'exif-subsectimeoriginal' => "Tidjponkt faan't knipsin (1/100 s)",
+'exif-subsectimedigitized' => "Tidjponkt faan't digitalisiarin (1/100 s)",
+'exif-exposuretime' => 'Belaachtangstidj',
+'exif-exposuretime-format' => '$1 sekunden ($2)',
+'exif-fnumber' => 'F numer (blend)',
+'exif-exposureprogram' => 'Belaachtangsprogram',
+'exif-spectralsensitivity' => 'Spectral sensitivity',
+'exif-isospeedratings' => 'ISO emfintelkhaid',
+'exif-shutterspeedvalue' => 'APEX shutter speed',
+'exif-aperturevalue' => 'APEX aperture',
+'exif-brightnessvalue' => 'APEX brightness',
+'exif-exposurebiasvalue' => 'APEX exposure bias',
+'exif-maxaperturevalue' => 'Gratst blend',
+'exif-subjectdistance' => "Wai tu't subjekt",
+'exif-meteringmode' => 'Meed muude',
+'exif-lightsource' => 'Laachtkwel',
+'exif-flash' => 'Laid',
+'exif-focallength' => 'Braanwidjens',
+'exif-subjectarea' => 'Rüm',
+'exif-flashenergy' => 'Laidmäächt',
+'exif-focalplanexresolution' => 'Focal plane X resolution',
+'exif-focalplaneyresolution' => 'Focal plane Y resolution',
+'exif-focalplaneresolutionunit' => 'Focal plane resolution unit',
+'exif-subjectlocation' => "Steed faan't motiif",
+'exif-exposureindex' => 'Belaachtangsindex',
+'exif-sensingmethod' => 'Meed muude',
+'exif-filesource' => 'Dateikwel',
+'exif-scenetype' => 'Scene type',
+'exif-customrendered' => 'Custom image processing',
+'exif-exposuremode' => 'Belaachtangsmuude',
+'exif-whitebalance' => 'Witjufglik',
+'exif-digitalzoomratio' => 'Digital zoom ratio',
+'exif-focallengthin35mmfilm' => 'Braanwidjens bi en 35 mm film',
+'exif-scenecapturetype' => 'Scene capture type',
+'exif-gaincontrol' => 'Scene control',
+'exif-contrast' => 'Kontrast',
+'exif-saturation' => 'Intensiteet faan klöören',
+'exif-sharpness' => 'Skarepens',
+'exif-devicesettingdescription' => 'Iinstelangen',
+'exif-subjectdistancerange' => "Wai uf faan't motiif",
+'exif-imageuniqueid' => 'Bil-ID',
+'exif-gpsversionid' => 'GPS tag werjuun',
+'exif-gpslatituderef' => 'Nuurdelk of süüdelk breetje',
+'exif-gpslatitude' => 'Geograafisk Breetje',
+'exif-gpslongituderef' => 'Uastelk of waastelk lengde',
+'exif-gpslongitude' => 'Geograafisk lengde',
+'exif-gpsaltituderef' => 'Hööchde uun ferglik mä',
+'exif-gpsaltitude' => 'Hööchde',
+'exif-gpstimestamp' => 'GPS-tidj',
+'exif-gpssatellites' => "För't meeden brükt sateliten",
+'exif-gpsstatus' => 'Receiver status',
+'exif-gpsmeasuremode' => "Muude för't meeden",
+'exif-gpsdop' => "Nauhaid faan't meeden",
+'exif-gpsspeedref' => "Ianhaid faan't faard",
+'exif-gpsspeed' => 'Faard faan a GPS-aperoot',
+'exif-gpstrackref' => "Referens för di kurs faan't faard",
+'exif-gpstrack' => "Kurs faan't faard",
+'exif-gpsimgdirectionref' => "Referens för't ütjrachtang",
+'exif-gpsimgdirection' => "Ütjrachtang faan't bil",
+'exif-gpsmapdatum' => 'Geodeetisk referens-süsteem',
+'exif-gpsdestlatituderef' => "Referens för't geograafisk breetje",
+'exif-gpsdestlatitude' => "Geograafisk breetje faan't aanj",
+'exif-gpsdestlongituderef' => "Referens för't geograafisk lengde",
+'exif-gpsdestlongitude' => "Geograafisk lengde faan't aanj",
+'exif-gpsdestbearingref' => "Referens för di kurs faan't aanj",
+'exif-gpsdestbearing' => "Kurs faan't aanj",
+'exif-gpsdestdistanceref' => "Referens för di wai tu't motiif",
+'exif-gpsdestdistance' => "Wai tu't motiif",
+'exif-gpsprocessingmethod' => 'GPS muude',
+'exif-gpsareainformation' => 'GPS rüm',
+'exif-gpsdatestamp' => 'GPS dootem',
+'exif-gpsdifferential' => 'GPS diferential korektuur',
+'exif-jpegfilecomment' => 'JPEG dateikomentaar',
+'exif-keywords' => 'Steegwurden',
+'exif-worldregioncreated' => 'Weltregiuun, huar det bil apnimen wurden as',
+'exif-countrycreated' => 'Lun, huar det bil apnimen wurden as',
+'exif-countrycodecreated' => 'ISO-code faan det lun',
+'exif-provinceorstatecreated' => 'Prowins of federaalstoot, huar det bil aonimen wurden as',
+'exif-citycreated' => 'Stääd, huar det bil apnimen wurden as',
+'exif-sublocationcreated' => 'Stäädregiuun, huar det bil apnimen wurden as',
+'exif-worldregiondest' => 'Uunwiset weltregiuun',
+'exif-countrydest' => 'Uunwiset lun',
+'exif-countrycodedest' => 'ISO-code för det uunwiset lun',
+'exif-provinceorstatedest' => 'Prowins of federaalstoot',
+'exif-citydest' => 'Uunwiset stääd',
+'exif-sublocationdest' => 'Uunwiset stäädregiuun',
+'exif-objectname' => 'Kurt tiitel',
+'exif-specialinstructions' => 'Ekstra uunwisangen',
+'exif-headline' => 'Auerskraft',
+'exif-credit' => 'Faan hoker',
+'exif-source' => 'Faan huar',
+'exif-editstatus' => 'Hüwidj bewerket',
+'exif-urgency' => 'Hü nuadag',
+'exif-fixtureidentifier' => 'Ööders wat',
+'exif-locationdest' => 'Steed üüb det bil',
+'exif-locationdestcode' => "ISO-code faan det steed üüb't bil",
+'exif-objectcycle' => "Tidj üüb a dai för't iinstelen",
+'exif-contact' => 'Kontaktdooten',
+'exif-writer' => 'Skriiwer',
+'exif-languagecode' => 'Spriak',
+'exif-iimversion' => 'IIM werjuun',
+'exif-iimcategory' => 'Kategorii',
+'exif-iimsupplementalcategory' => 'Muar kategooriin',
+'exif-datetimeexpires' => 'Ei muar tu brüken efter',
+'exif-datetimereleased' => 'Ütjden di',
+'exif-originaltransmissionref' => 'ISO-code faan det steed, huar det bil auerdraanj wurden as',
+'exif-identifier' => 'Käänang',
+'exif-lens' => 'Hün objektiif',
+'exif-serialnumber' => 'Luupen numer faan a knipser',
+'exif-cameraownername' => 'Hoker di knipser hiart',
+'exif-label' => 'Betiaknang',
+'exif-datetimemetadata' => 'Leetst feranrang faan meta-dooten',
+'exif-nickname' => 'Nööm för det bil',
+'exif-rating' => 'Wäärdaghaid (1 tu 5, 5 as best)',
+'exif-rightscertificate' => 'Rights management certificate',
+'exif-copyrighted' => 'Copyright-Status:',
+'exif-copyrightowner' => 'Bilrochten lei bi',
+'exif-usageterms' => 'Brükerreegeln',
+'exif-webstatement' => 'Online copyright statement',
+'exif-originaldocumentid' => "Iandüüdag käänang (ID) faan't dokument",
+'exif-licenseurl' => 'URL for copyright license',
+'exif-morepermissionsurl' => 'Muar lisensen',
+'exif-attributionurl' => 'Wan dü det bil brük wel, saat en ferwisang üüb:',
+'exif-preferredattributionname' => 'Wan dü det bil brük wel, nääm:',
+'exif-pngfilecomment' => 'PNG dateikomentaar',
+'exif-disclaimer' => 'Disclaimer',
+'exif-contentwarning' => 'Wäärnang',
+'exif-giffilecomment' => 'GIF dateikomentaar',
+'exif-intellectualgenre' => 'Slach faan bil',
+'exif-subjectnewscode' => 'Motiif-code',
+'exif-scenecode' => 'IPTC-code',
+'exif-event' => 'Begeebenhaid',
+'exif-organisationinimage' => 'Organisatjuun',
+'exif-personinimage' => 'Persuun',
+'exif-originalimageheight' => "Hööchde faan't bil föör't beklapen",
+'exif-originalimagewidth' => "Breetje faan't bil föör't beklapen",
+
+# Exif attributes
+'exif-compression-1' => 'Ünkomprimiaret',
+'exif-compression-2' => 'CCITT Group 3 1-Dimensional Modified Huffman run length encoding',
+'exif-compression-3' => 'CCITT Group 3 fax encoding',
+'exif-compression-4' => 'CCITT Group 4 fax encoding',
+
+'exif-copyrighted-true' => 'Mä kopiarrocht',
+'exif-copyrighted-false' => 'Saner kopiarrocht',
+
+'exif-unknowndate' => 'Ünbekäänd dootem',
+
+'exif-orientation-1' => 'Normool',
+'exif-orientation-2' => 'Wairocht speegelt',
+'exif-orientation-3' => 'Am 180° dreid',
+'exif-orientation-4' => 'Luadrocht speegelt',
+'exif-orientation-5' => 'Jin a klook am 90° dreid an luadrocht speegelt.',
+'exif-orientation-6' => 'Jin a klook am 90° dreid',
+'exif-orientation-7' => 'Mä a klook am 90° dreid an luadrocht speegelt.',
+'exif-orientation-8' => 'Mä a klook am 90° dreid',
+
+'exif-planarconfiguration-1' => 'Grööw formaat',
+'exif-planarconfiguration-2' => 'Planaar formaat',
+
+'exif-colorspace-65535' => 'Ei kalibriaret',
+
+'exif-componentsconfiguration-0' => 'as ei diar',
+
+'exif-exposureprogram-0' => 'ei bekäänd',
+'exif-exposureprogram-1' => 'Manuel',
+'exif-exposureprogram-2' => 'Normool program',
+'exif-exposureprogram-3' => 'Tidjautomaatik',
+'exif-exposureprogram-4' => 'Blendenautomaatik',
+'exif-exposureprogram-5' => 'Kreatiifprogram mä jip skarepens',
+'exif-exposureprogram-6' => 'Aktjuunsprogram mä kurt belaachtangstidj',
+'exif-exposureprogram-7' => 'Portree-muude mä skarepen föörgrünj',
+'exif-exposureprogram-8' => 'Loonskap-muude mä skarepen bääftgrünj',
+
+'exif-subjectdistance-value' => '$1 meetern',
+
+'exif-meteringmode-0' => 'Ünbekäänd',
+'exif-meteringmode-1' => 'Madel',
+'exif-meteringmode-2' => 'Skarep maden',
+'exif-meteringmode-3' => 'Spot',
+'exif-meteringmode-4' => 'Multi-Spot',
+'exif-meteringmode-5' => 'Münster',
+'exif-meteringmode-6' => 'Bil-dial',
+'exif-meteringmode-255' => 'Ööder',
+
+'exif-lightsource-0' => 'Ünbekäänd',
+'exif-lightsource-1' => 'Dailaacht',
+'exif-lightsource-2' => 'Fluorescent',
+'exif-lightsource-3' => 'Konstlaacht',
+'exif-lightsource-4' => 'Laid',
+'exif-lightsource-9' => 'Smok weder',
+'exif-lightsource-10' => 'Betaanj',
+'exif-lightsource-11' => 'Skaad',
+'exif-lightsource-12' => 'Daylight fluorescent (D 5700 – 7100K)',
+'exif-lightsource-13' => 'Day white fluorescent (N 4600 – 5400K)',
+'exif-lightsource-14' => 'Cool white fluorescent (W 3900 – 4500K)',
+'exif-lightsource-15' => 'White fluorescent (WW 3200 – 3700K)',
+'exif-lightsource-17' => 'Standard light A',
+'exif-lightsource-18' => 'Standard light B',
+'exif-lightsource-19' => 'Standard light C',
+'exif-lightsource-24' => 'ISO studio konstlaacht',
+'exif-lightsource-255' => 'Ööder laacht',
+
+# Flash modes
+'exif-flash-fired-0' => 'Nään laid',
+'exif-flash-fired-1' => 'Laid ütjliaset',
+'exif-flash-return-0' => 'Laid schüürt nian dooten',
+'exif-flash-return-2' => 'Nään laid tu sen',
+'exif-flash-return-3' => 'Laid wiar tu sen',
+'exif-flash-mode-1' => 'Mä twüngen laid',
+'exif-flash-mode-2' => 'Laid ufsteld',
+'exif-flash-mode-3' => 'Automaatik',
+'exif-flash-function-1' => 'Nään laid mögelk',
+'exif-flash-redeye-1' => 'Nian ruad uugen muude',
+
+'exif-focalplaneresolutionunit-2' => 'tol',
+
+'exif-sensingmethod-1' => 'Ei bekäänd',
+'exif-sensingmethod-2' => 'One-chip color area sensor',
+'exif-sensingmethod-3' => 'Two-chip color area sensor',
+'exif-sensingmethod-4' => 'Three-chip color area sensor',
+'exif-sensingmethod-5' => 'Color sequential area sensor',
+'exif-sensingmethod-7' => 'Trilinear sensor',
+'exif-sensingmethod-8' => 'Color sequential linear sensor',
+
+'exif-filesource-3' => 'Digitaal stunbilknipser',
+
+'exif-scenetype-1' => 'Normool',
+
+'exif-customrendered-0' => 'Normool',
+'exif-customrendered-1' => 'Brüker-iinsteld',
+
+'exif-exposuremode-0' => 'Automaatisk belaachtang',
+'exif-exposuremode-1' => 'Manuel belaachtang',
+'exif-exposuremode-2' => 'Belaachtangsrä',
+
+'exif-whitebalance-0' => 'Automaatisk',
+'exif-whitebalance-1' => 'Manuel',
+
+'exif-scenecapturetype-0' => 'Normool',
+'exif-scenecapturetype-1' => 'Loonskap',
+'exif-scenecapturetype-2' => 'Portree',
+'exif-scenecapturetype-3' => 'Naacht',
+
+'exif-gaincontrol-0' => 'Nian',
+'exif-gaincontrol-1' => 'Letjet ap',
+'exif-gaincontrol-2' => 'Föl ap',
+'exif-gaincontrol-3' => 'Letjet deel',
+'exif-gaincontrol-4' => 'Föl deel',
+
+'exif-contrast-0' => 'Normool',
+'exif-contrast-1' => 'Swaak',
+'exif-contrast-2' => 'Stark',
+
+'exif-saturation-0' => 'Normool',
+'exif-saturation-1' => 'Letjet',
+'exif-saturation-2' => 'Huuch',
+
+'exif-sharpness-0' => 'Normool',
+'exif-sharpness-1' => 'Swaak',
+'exif-sharpness-2' => 'Stark',
+
+'exif-subjectdistancerange-0' => 'Ünbekäänd',
+'exif-subjectdistancerange-1' => 'Makro',
+'exif-subjectdistancerange-2' => 'Nai bi',
+'exif-subjectdistancerange-3' => 'Widj wech',
+
+# Pseudotags used for GPSLatitudeRef and GPSDestLatitudeRef
+'exif-gpslatitude-n' => 'Nuurdelk breetje',
+'exif-gpslatitude-s' => 'Süüdelk breetje',
+
+# Pseudotags used for GPSLongitudeRef and GPSDestLongitudeRef
+'exif-gpslongitude-e' => 'Uastelk lengde',
+'exif-gpslongitude-w' => 'Waastelk lengde',
+
+# Pseudotags used for GPSAltitudeRef
+'exif-gpsaltitude-above-sealevel' => '{{PLURAL:$1|Ään meeter|$1 meetern}} auer siapeegel',
+'exif-gpsaltitude-below-sealevel' => '{{PLURAL:$1|Ään meeter|$1 meetern}} oner siapeegel',
+
+'exif-gpsstatus-a' => 'Measurement in progress',
+'exif-gpsstatus-v' => 'Measurement interoperability',
+
+'exif-gpsmeasuremode-2' => '2-dimensional measurement',
+'exif-gpsmeasuremode-3' => '3-dimensional measurement',
+
+# Pseudotags used for GPSSpeedRef
+'exif-gpsspeed-k' => 'km/h',
+'exif-gpsspeed-m' => 'mph',
+'exif-gpsspeed-n' => 'kn',
+
+# Pseudotags used for GPSDestDistanceRef
+'exif-gpsdestdistance-k' => 'Kilomeetern',
+'exif-gpsdestdistance-m' => 'Miilen',
+'exif-gpsdestdistance-n' => 'Siamiilen',
+
+'exif-gpsdop-excellent' => 'Auer a miaten ($1)',
+'exif-gpsdop-good' => 'Gud ($1)',
+'exif-gpsdop-moderate' => 'Madel ($1)',
+'exif-gpsdop-fair' => 'Gongt so ($1)',
+'exif-gpsdop-poor' => 'Ei so dol ($1)',
+
+'exif-objectcycle-a' => 'Bluas am maarlem',
+'exif-objectcycle-p' => 'Bluas am injem',
+'exif-objectcycle-b' => 'Eder am maarlam an am injem',
+
+# Pseudotags used for GPSTrackRef, GPSImgDirectionRef and GPSDestBearingRef
+'exif-gpsdirection-t' => 'Rochtwisin kurs',
+'exif-gpsdirection-m' => 'Magneetisk kurs',
+
+'exif-ycbcrpositioning-1' => 'Sentriaret',
+'exif-ycbcrpositioning-2' => 'Uun naiberskap',
+
+'exif-dc-contributor' => 'Bidracher faan',
+'exif-dc-coverage' => 'Spatial or temporal scope of media',
+'exif-dc-date' => 'Dootem',
+'exif-dc-publisher' => 'Ütjden faan',
+'exif-dc-relation' => 'Ferbünjen meedien',
+'exif-dc-rights' => 'Rochten',
+'exif-dc-source' => 'Meeedienkwel',
+'exif-dc-type' => 'Meedienslach',
+
+'exif-rating-rejected' => 'Turagwiset',
+
+'exif-isospeedratings-overflow' => 'Grater üs 65535',
+
+'exif-iimcategory-ace' => 'Konst, kultüür an onerhualang',
+'exif-iimcategory-clj' => 'Rocht an ferbreegen',
+'exif-iimcategory-dis' => 'Katastroofen an ünfaaler',
+'exif-iimcategory-fin' => 'Wiartskap an bedriiwer',
+'exif-iimcategory-edu' => 'Onerracht',
+'exif-iimcategory-evn' => 'Natüür an amwelt',
+'exif-iimcategory-hth' => 'Sünjhaid',
+'exif-iimcategory-hum' => 'Persöönelk intresen',
+'exif-iimcategory-lab' => 'Werk',
+'exif-iimcategory-lif' => 'Freitidj an muude',
+'exif-iimcategory-pol' => 'Politik',
+'exif-iimcategory-rel' => 'Religioon an gluuw',
+'exif-iimcategory-sci' => 'Wedenskap an technologii',
+'exif-iimcategory-soi' => 'Mäenööder',
+'exif-iimcategory-spo' => 'Sport',
+'exif-iimcategory-war' => 'Kriich, stridj an ünrau',
+'exif-iimcategory-wea' => 'Weder',
+
+'exif-urgency-normal' => 'Normool ($1)',
+'exif-urgency-low' => 'Liach ($1)',
+'exif-urgency-high' => 'Huuch ($1)',
+'exif-urgency-other' => 'Faan a brüker fäästlaanj prioriteet ($1)',
+
# External editor support
-'edit-externally' => 'Jüdeer dåtäi ma en äkstärn prugram beårbe',
-'edit-externally-help' => '(Sii da [//www.mediawiki.org/wiki/Manual:External_editors Installationsanweisungen] for widere Informasjoon)',
+'edit-externally' => 'Detdiar datei mä en ekstern program bewerke',
+'edit-externally-help' => "(Luk efter uun't [//www.mediawiki.org/wiki/Manual:External_editors hoonbuk] am muar diartu)",
# 'all' in various places, this might be different for inflected languages
-'watchlistall2' => 'åle',
-'namespacesall' => 'åle',
-'monthsall' => 'åle',
+'watchlistall2' => 'aaltumaal',
+'namespacesall' => 'aaltumaal',
+'monthsall' => 'aaltumaal',
'limitall' => 'åle',
+# Email address confirmation
+'confirmemail' => 'E-mail-adres gudkään',
+'confirmemail_noemail' => 'Dü heest nian gud e-mail-adres uun din [[Special:Preferences|persöönelk iinstelangen]] iindraanj.',
+'confirmemail_text' => '{{SITENAME}} ferlangt, dat dü din e-mail-adres gudkäänst, iar dü a ütjwidjet e-mail-funktjuunen brük könst. Trak üüb det fial „E-mail-code tusjüür“, am dat dü en e-mail tuschüürd feist, huar di code uun stäänt an en URL, am din adres gudtukäänen.',
+'confirmemail_pending' => 'Dü heest al en e-mail mä di e-mail-code tuschüürd füngen. Teew noch en uugenblak, det komt wel noch. Bluas wan det goorei loket, ferlang efter en neien code.',
+'confirmemail_send' => 'E-mail-code tuschüür',
+'confirmemail_sent' => 'E-mail-code as wechschüürd wurden.',
+'confirmemail_oncreate' => "En e-mail mä di e-mail-code as tu din e-mail-adres schüürd wurden. Hi as ei nuadag tu uunmeldin, oober hi woort brükt för ütjwidjet e-mail-funktjuunen uun't Wiki.",
+'confirmemail_sendfailed' => '{{SITENAME}} küd det e-mail mä di e-mail-code ei wechschüür.
+Luke noch ans, of dü det e-mail-adres rocht apskrewen heest.
+
+Di mail-server swaaret: $1',
+'confirmemail_invalid' => 'Di e-mail-code as ei gud. Ferlicht as hi tu ual.
+Ferschük det man noch ans.',
+'confirmemail_needlogin' => 'Dü skel di $1, am din e-mail-adres gudtukäänen.',
+'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,
+
+hoker mä det IP-adres $1 (woorskiinelk dü salew) hää det brükerkonto „$2“ bi {{SITENAME}} iinracht.
+
+Am a e-mail-funktjuunen faan {{SITENAME}} (weder) aktiif tu fun, an am seeker tu stelen, dat det brükerkonto uk würelk mä din e-mail-adres tuuphiart, gung tu detdiar ferwisang:
+
+$3
+
+Wan dü det brükerkonto *ei* iinracht hast, do gung tu detdiar ferwisang, am det gudkäänen uftubreegen:
+
+$5
+
+Didiar code täält bit $6, am a klook $7.',
+'confirmemail_body_changed' => 'Hoker mä det IP-adres $1 (woorskiinelk dü salew) hää det e-mail-adres faan det brükerkonto „$2“ bi {{SITENAME}} feranert.
+
+Am seeker tu stelen, dat det brükerkonto uk würelk di hiart, an am a e-mail-funktjuunen bi {{SITENAME}} weder uun a gang tu fun, gung tu detdiar ferwisang:
+
+$3
+
+Wan det *ei* din brükerkonto as, do gung tu detdiar ferwisang, am det gudkäänen uftubreegen:
+
+$5
+
+Didiar code täält bit $4.',
+'confirmemail_body_set' => "Hoker mä det IP-adres $1 (woorskiinelk dü salew) hää det e-mail-adres faan't brükerkonto „$2“ üüb {{SITENAME}} tu detdiar e-mail-adres amanert.
+
+Am seeker tu stelen, dat det brükerkonto würelk di hiart, an am a e-mail-funktjuunen üüb {{SITENAME}} weder uun a gang tu fun, gung tu detdiar ferwisang:
+
+$3
+
+Wan det *ei* din konto as, do gung tu detdiar ferwisang, am det gudkäänen uftubreegen:
+
+$5
+
+Didiar code täält bit $4.",
+'confirmemail_invalidated' => "Det gudkäänen faan't e-mail-adres as ufbreegen wurden.",
+'invalidateemail' => "Breeg gudkäänen faan't e-mail-adres uf",
+
+# Scary transclusion
+'scarytranscludedisabled' => '[Iinbinjen faan interwikis as ei aktiif]',
+'scarytranscludefailed' => '[Iinbinjen faan föörlaagen för $1 as skiaf gingen]',
+'scarytranscludefailed-httpstatus' => '[Ufrepen faan föörlaagen för $1 as skiaf gingen: HTTP $2]',
+'scarytranscludetoolong' => '[URL as tu lung]',
+
+# Delete conflict
+'deletedwhileediting' => "'''Paase üüb:''' Det sidj as stregen wurden, üs dü diar jüst bi werket heest!
+Uun't [{{fullurl:{{#special:Log}}|type=delete&page={{FULLPAGENAMEE}}}} Strik-logbuk] fanjst dü di grünj för't striken. Wan dü det sidj seekerst, woort det nei uunlaanj.",
+'confirmrecreate' => "Di brüker [[User:$1|$1]] ([[User talk:$1|Diskusjuun]]) hää det sidj stregen, üs dü diar jüst bi werket heest. Di grünj wiar:
+:''$2''
+Ferseekre, dat dü det sidj würelk nei maage wel.",
+'confirmrecreate-noreason' => 'Di brüker [[User:$1|$1 ]] ([[User talk:$1|Diskusjuun]]) hää det sidj stregen, huar dü jüst bi werket heest. Ferseekre, dat dü det sidj würelk nei maage wel.',
+'recreate' => 'Nei maage',
+
+# action=purge
+'confirm_purge_button' => 'OK',
+'confirm-purge-top' => 'Det sidj ütj a cache strik?',
+'confirm-purge-bottom' => 'Maaget di cache leesag an wiset det neist werjuun uun.',
+
+# action=watch/unwatch
+'confirm-watch-button' => 'OK',
+'confirm-watch-top' => "Wel dü detdiar sidj uun't uug behual?",
+'confirm-unwatch-button' => 'OK',
+'confirm-unwatch-top' => "Wel dü detdiar sidj ei muar uun't uug behual?",
+
+# Multipage image navigation
+'imgmultipageprev' => '← leetst sidj (turag)',
+'imgmultipagenext' => 'naist sidj →',
+'imgmultigo' => 'Widjer',
+'imgmultigoto' => 'Gung tu sidj $1',
+
# Table pager
'ascending_abbrev' => 'ap',
'descending_abbrev' => 'deel',
+'table_pager_next' => 'Naist sidj',
+'table_pager_prev' => 'Leetst sidj (turag)',
+'table_pager_first' => 'Iarst sidj',
+'table_pager_last' => 'Leetst sidj',
+'table_pager_limit' => 'Wise $1 iindracher per sidj',
+'table_pager_limit_label' => 'Iindracher per sidj:',
+'table_pager_limit_submit' => 'Widjer',
+'table_pager_empty' => 'Diar wiar niks',
# Auto-summaries
'autosumm-blank' => 'Det sidj as leesag maaget wurden.',
'autoredircomment' => 'Sidj tu [[$1]] widjerfeerd',
'autosumm-new' => 'Det sidj as nei uunlaanj wurden: "$1"',
+# Live preview
+'livepreview-loading' => 'Loose ...',
+'livepreview-ready' => 'Loosin ... Klaar!',
+'livepreview-failed' => 'Live-preview wul ei!
+Ferschük det üüb di normool wai.',
+'livepreview-error' => 'Küd ei ferbinj: $1 "$2".
+Ferschük det üüb di normool wai.',
+
+# Friendlier slave lag warnings
+'lag-warn-normal' => 'Feranrangen faan {{PLURAL:$1|at leetst sekund|a leetst $1 sekunden}} kön noch ei uunwiset wurd.',
+'lag-warn-high' => 'Auer det huuch dootenbeenklääst kön a feranrangen faan {{PLURAL:$1|at leetst sekund|a leetst $1 sekunden}} noch ei uunwiset wurd.',
+
+# Watchlist editor
+'watchlistedit-numitems' => "Dü heest {{PLURAL:$1|ian sidj|$1 sidjen}} uun't uug. A diskusjuunssidjen wurd ei mätääld.",
+'watchlistedit-noitems' => "Dü heest nian sidjen, diar dü uun't uug behual wel.",
+'watchlistedit-normal-title' => "List mä sidjen, diar dü uun't uug behual wel, bewerke",
+'watchlistedit-normal-legend' => "Ei muar uun't uug behual",
+'watchlistedit-normal-explain' => "Jodiar sidjen wel dü uun't uug behual. Am iindracher tu striken, kääntiakne a kaschin üüb sidj faan di iindrach an trak oner üüb „{{int:Watchlistedit-normal-submit}}“. Dü könst det list uk uun't [[Special:EditWatchlist/raw|listenformoot]] bewerke.",
+'watchlistedit-normal-submit' => 'Iindracher wechnem',
+'watchlistedit-normal-done' => '{{PLURAL:$1|Ään iindrach as|$1 iindracher san}} faan det list wechnimen wurden:',
+'watchlistedit-raw-title' => "Uun't listenformoot bewerke",
+'watchlistedit-raw-legend' => "Uun't listenformoot bewerke",
+'watchlistedit-raw-explain' => "Jodiar sidjen, diar dü uun't uug behual wel, san uun't listenformoot apskrewen. A iindracher kön räwiis stregen of ütjwidjet wurd.
+Uun arke rä mut ään iindrach stun. Wan dü klaar beest, trak oner üüb „{{int:Watchlistedit-raw-submit}}“.
+Dü könst uk det [[Special:EditWatchlist|normool sidj]] tu bewerkin nem.",
+'watchlistedit-raw-titles' => 'Iindracher:',
+'watchlistedit-raw-submit' => "List mä sidjen, diar dü uun't uug behual wel, aktualisiare",
+'watchlistedit-raw-done' => "Det list mä sidjen, diar dü uun't uug behual wel, as nü üüb di neist stant.",
+'watchlistedit-raw-added' => '{{PLURAL:$1|Ään iindrach as|$1 iindracher san}} diartu skrewen wurden:',
+'watchlistedit-raw-removed' => '{{PLURAL:$1|Ään iindrach as|$1 iindracher san}} wechnimen wurden:',
+
# Watchlist editing tools
-'watchlisttools-view' => 'Eefterkiiklist: änringe',
-'watchlisttools-edit' => 'normåål beårbe',
-'watchlisttools-raw' => 'Listeformoot beårbe (import/äksport)',
+'watchlisttools-view' => "Uun't uug behual: Feranrangen",
+'watchlisttools-edit' => 'Normool bewerke',
+'watchlisttools-raw' => "Uun't listenformoot bewerke",
+
+# Signatures
+'signature' => '[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|Diskusjuun]])',
# Core parser functions
+'unknown_extension_tag' => "Ünbekäänd ''tag'' „$1“",
'duplicate-defaultsort' => '\'\'\'Paase üüb:\'\'\' Di sortiarkai "$2" auerskraft di ual sortiarkai "$1"',
# Special:Version
+'version' => 'Werjuun',
+'version-extensions' => 'Instaliaret ütjwidjangen',
+'version-specialpages' => 'Spezial-sidjen',
+'version-parserhooks' => 'Ütjwidjet parserfunktjuunen',
+'version-variables' => 'Wariaabeln',
+'version-antispam' => "''Spam''seekerangen",
+'version-skins' => 'Brükerskaker',
+'version-other' => 'Ööders wat',
+'version-mediahandlers' => 'Ütjwidjet medien-funktjuunen',
+'version-hooks' => 'Hooks',
+'version-extension-functions' => 'Ütjwidjet funktjuunen',
+'version-parser-extensiontags' => 'Parser extension tags',
+'version-parser-function-hooks' => 'Parser function hooks',
+'version-hook-name' => 'Hook nööm',
+'version-hook-subscribedby' => 'Aprepen faan',
+'version-version' => '(Werjuun $1)',
+'version-license' => 'Lisens',
+'version-poweredby-credits' => "Detheer wääbsteed werket mä '''[//www.mediawiki.org/wiki/MediaWiki/de MediaWiki]''', Copyright © 2001–$1 $2.",
+'version-poweredby-others' => 'öödern',
+'version-credits-summary' => 'Wi besoonke üs bi jodiar persuunen för hör bidracher tu [[Special:Version|MediaWiki]].',
+'version-license-info' => 'MediaWiki 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.
+
+MediaWiki 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 [{{SERVER}}{{SCRIPTPATH}}/COPYING 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 or [//www.gnu.org/licenses/old-licenses/gpl-2.0.html read it online].',
'version-software' => 'Instaliird software',
'version-software-product' => 'Produkt',
-'version-software-version' => 'Färsjoon',
+'version-software-version' => 'Werjuun',
+'version-entrypoints' => 'URLs faan hüsdörsidjen',
+'version-entrypoints-header-entrypoint' => 'Hüsdörsidj',
+'version-entrypoints-header-url' => 'URL',
+
+# Special:Redirect
+'redirect' => 'Widjerfeerang üüb en brükersidj, sidjenwerjuun of datei.',
+'redirect-legend' => 'Widjerfeerang üüb en sidjenwerjuun of datei.',
+'redirect-summary' => 'Det spezial-sidj feert widjer üüb en brükersidj, sidjenwerjuun of datei.',
+'redirect-submit' => 'Widjer',
+'redirect-lookup' => 'Schük:',
+'redirect-value' => 'Käänang of dateinööm:',
+'redirect-user' => 'Brüker-ID',
+'redirect-revision' => 'Sidjenwerjuun',
+'redirect-file' => 'Dateinööm',
+'redirect-not-exists' => 'Wäärs ei fünjen',
# Special:FileDuplicateSearch
-'fileduplicatesearch-submit' => 'Sjük',
+'fileduplicatesearch' => 'Schük dobelt datein',
+'fileduplicatesearch-summary' => 'Dobelt datein schük üüb grünjlaag faan hör hash-wäärs',
+'fileduplicatesearch-legend' => 'Dobelt datein schük',
+'fileduplicatesearch-filename' => 'Dateinööm:',
+'fileduplicatesearch-submit' => 'Schük',
+'fileduplicatesearch-info' => '$1 × $2 pixel<br />Dateigrate: $3<br />MIME-typ: $4',
+'fileduplicatesearch-result-1' => 'Diar san nian dobelt datein faan „$1“.',
+'fileduplicatesearch-result-n' => 'Det datei „$1“ hää {{PLURAL:$2|1 dobelt ütjfeerang|$2 dobelt ütjfeerangen}}.',
+'fileduplicatesearch-noresults' => 'Nian datei mä di nööm „$1“ fünjen.',
# Special:SpecialPages
-'specialpages' => 'Spetsjåålside',
+'specialpages' => 'Spezial-sidjen',
+'specialpages-note' => '----
+* Normool spezial-sidjen
+* <span class="mw-specialpagerestricted">Spezial-sidjen mä tugripsrochten</span>
+* <span class="mw-specialpagecached">Spezial-sidjen uun a cache (As ferlicht ei muar aktuel.)</span>',
+'specialpages-group-maintenance' => 'Werksteedsidjen',
+'specialpages-group-other' => 'Ööder spezial-sidjen',
'specialpages-group-login' => 'Melde di uun of skriiw di iin',
+'specialpages-group-changes' => 'Leetst feranrangen an logbuken',
+'specialpages-group-media' => 'Medien',
+'specialpages-group-users' => 'Brükern an rochten',
+'specialpages-group-highuse' => 'Flooksis brükt sidjen',
+'specialpages-group-pages' => 'Sidjen',
+'specialpages-group-pagetools' => 'Sidjenwerktjüch',
+'specialpages-group-wiki' => 'Dooten an werktjüch',
+'specialpages-group-redirects' => 'Spezial-sidjen, diar widjer feer',
+'specialpages-group-spam' => "''Spam'' werktjüch",
+
+# Special:BlankPage
+'blankpage' => 'Leesag sidj',
+'intentionallyblankpage' => 'Det sidj as mä walem leesag. Hat woort för benchmarks brükt.',
# External image whitelist
'external_image_whitelist' => " #Feranere detheer rä ei<pre>
#Skriiw dialen faan reguleer ütjdrüker auer detheer rä. Feranere detheer rä ei</pre>",
# Special:Tags
+'tags' => 'Feranrangskääntiaken',
'tag-filter' => '[[Special:Tags|Kääntiaken]] filter:',
+'tag-filter-submit' => 'Filter',
+'tags-title' => 'Kääntiaken',
+'tags-intro' => "Det sidj wiset kääntiaken, diar för't bewerkin brükt wurd, an wat jo men.",
+'tags-tag' => 'Kääntiaken-nööm',
+'tags-display-header' => 'Nööm üüb feranrangslisten',
+'tags-description-header' => 'Widjloftag beskriiwang',
+'tags-hitcount-header' => 'Kääntiakent feranrangen',
+'tags-edit' => 'bewerke',
+'tags-hitcount' => '$1 {{PLURAL:$1|feranrang|feranrangen}}',
+
+# Special:ComparePages
+'comparepages' => 'Sidjen ferglik',
+'compare-selector' => 'Sidjenwerjuunen ferglik',
+'compare-page1' => 'Sidj 1',
+'compare-page2' => 'Sidj 2',
+'compare-rev1' => 'Werjuun 1',
+'compare-rev2' => 'Werjuun 2',
+'compare-submit' => 'Ferglik',
+'compare-invalid-title' => 'Didiar sidjennööm gongt ei.',
+'compare-title-not-exists' => 'Son sidjennööm as diar ei.',
+'compare-revision-not-exists' => 'Son werjuun as diar ei.',
+
+# Database error messages
+'dberr-header' => 'Det Wiki hää komer.',
+'dberr-problems' => 'Dää mi iarag! Det sidj hää technisk komer.',
+'dberr-again' => 'Teew en uugenblak an ferschük det noch ans.',
+'dberr-info' => '(Koon ei mä a dootenbeenk-server ferbinj: $1)',
+'dberr-usegoogle' => 'Uun a teskentidj küdst dü det mä Google ferschük.',
+'dberr-outofdate' => 'Seenk diaram, dat Google ferlicht ual dooten uunwiset.',
+'dberr-cachederror' => 'Detheer komt ütj en cache an as ferlicht ei muar aktuel.',
# HTML forms
-'htmlform-selectorother-other' => 'Oudere',
+'htmlform-invalid-input' => 'Diar as wat skiaf gingen mä din uunfraag.',
+'htmlform-select-badoption' => 'Didiar wäärs as ei tuläät.',
+'htmlform-int-invalid' => 'Didiar wäärs as nian hial taal.',
+'htmlform-float-invalid' => 'Didiar wäärs as nian taal.',
+'htmlform-int-toolow' => 'Didiar wäärs as letjer üs det minimum faan $1.',
+'htmlform-int-toohigh' => 'Didiar wäärs as grater üs det maximum faan $1.',
+'htmlform-required' => 'Di wäärs woort brükt.',
+'htmlform-submit' => 'Auerdreeg',
+'htmlform-reset' => 'Feranrangen turagsaat.',
+'htmlform-selectorother-other' => 'Öödern',
+'htmlform-no' => 'Naan',
+'htmlform-yes' => 'Ja',
+'htmlform-chosen-placeholder' => 'Schük ütj',
+
+# SQLite database support
+'sqlite-has-fts' => "Werjuun $1 mä halep för't schüken uun di hialer tekst.",
+'sqlite-no-fts' => "Werjuun $1 saner halep för't schüken uun di hialer tekst.",
# New logging system
'logentry-delete-delete' => '$1 {{Gender:$2}} hää det sidj $3 stregen',
'logentry-delete-restore' => '$1 {{GENDER:$2}} hää det sidj $3 weder iinsteld',
'logentry-delete-event' => '$1 {{GENDER:$2}} hää det uunsicht feranert faan {{PLURAL:$5|en logbuk iindrach|$5 logbuk iindracher}} üüb $3: $4',
-'logentry-delete-revision' => '$1 {{GENDER:$2}} hää det uunsicht feranert faan {{PLURAL:$5|ian wersjuun|$5 wersjuunen}} faan det sidj $3: $4',
+'logentry-delete-revision' => '$1 {{GENDER:$2}} hää det uunsicht feranert faan {{PLURAL:$5|ian werjuun|$5 werjuunen}} faan det sidj $3: $4',
'logentry-delete-event-legacy' => '$1 {{GENDER:$2}} hää det uunsicht feranert faan logbuk iindracher üüb $3',
-'logentry-delete-revision-legacy' => '$1 {{GENDER:$2}} hää det uunsicht feranert faan wersjuunen faan det sidj $3',
+'logentry-delete-revision-legacy' => '$1 {{GENDER:$2}} hää det uunsicht feranert faan werjuunen faan det sidj $3',
'logentry-suppress-delete' => '$1 {{GENDER:$2}} hää det sidj $3 wechtrakt',
'logentry-suppress-event' => '$1 {{GENDER:$2}} hää stalswigin det uunsicht feranert faan {{PLURAL:$5|en logbuk iindrach|$5 logbuk iindracher}} üüb $3: $4',
-'logentry-suppress-revision' => '$1 {{GENDER:$2}} hää stalswigin det uunsicht feranert faan {{PLURAL:$5|ian wersjuun|$5 wersjuunen}} faan det sidj $3: $4',
+'logentry-suppress-revision' => '$1 {{GENDER:$2}} hää stalswigin det uunsicht feranert faan {{PLURAL:$5|ian werjuun|$5 werjuunen}} faan det sidj $3: $4',
'logentry-suppress-event-legacy' => '$1 {{GENDER:$2}} hää stalswigin det uunsicht feranert faan logbuk iindracher üüb $3',
-'logentry-suppress-revision-legacy' => '$1 {{GENDER:$2}} hää stalswigin det uunlukin feranert faan wersjuunen faan det sidj $3',
+'logentry-suppress-revision-legacy' => '$1 {{GENDER:$2}} hää stalswigin det uunlukin feranert faan werjuunen faan det sidj $3',
+'revdelete-content-hid' => 'Ferbürgen',
+'revdelete-summary-hid' => 'Ferbürgen tuupfaadang',
'revdelete-uname-hid' => 'brükernoome ferstäägen',
+'revdelete-content-unhid' => 'Ei muar ferberag',
+'revdelete-summary-unhid' => 'Tuupfaadang ei muar ferberag',
'revdelete-uname-unhid' => 'brükernoome frijääwen',
-'revdelete-restricted' => 'gränse jüle uk for administratoore',
-'revdelete-unrestricted' => 'gränse for administratoore wächnümen',
+'revdelete-restricted' => 'mögelkhaiden för administratooren wechnimen',
+'revdelete-unrestricted' => 'mögelkhaiden för administratooren ütjwidjet',
'logentry-move-move' => '$1 {{GENDER:$2}} hää det sidj $3 efter $4 fersköwen.',
'logentry-move-move-noredirect' => '$1 {{GENDER:$2}} hää det sidj $3 efter $4 saner widjerfeerang fersköwen.',
'logentry-move-move_redir' => '$1 {{GENDER:$2}} hää det sidj $3 efter $4 fersköwen an diarbi en widjerfeerang auerskrewen.',
'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2}} hää det sidj $3 efter $4 fersköwen an diarbi en widjerfeerang auerskrewen saner salew en widjerfeerang uuntuleien.',
+'logentry-patrol-patrol' => '$1 {{GENDER:$2|hää}} det werjuun $4 faan sidj $3 üs kontroliaret kääntiakent.',
+'logentry-patrol-patrol-auto' => '$1 {{GENDER:$2|hää}} det werjuun $4 faan sidj $3 automaatisk üs kontroliaret kääntiakent.',
'logentry-newusers-newusers' => 'Brükerkonto $1 as {{GENDER:$2|iinracht}} wurden',
+'logentry-newusers-create' => 'Brükerkonto as faan $1 {{GENDER:$2|iinracht}} wurden.',
'logentry-newusers-create2' => 'Brükerkonto $3 as faan $1 {{GENDER:$2|iinracht}} wurden',
+'logentry-newusers-byemail' => 'Brükerkonto $3 as faan $1 {{GENDER:$2|iinracht}} wurden, an det paaswurd as per e-mail tuschüürd wurden.',
'logentry-newusers-autocreate' => 'Brükerkonto $1 as automaatisk {{GENDER:$2|iinracht}} wurden',
+'logentry-rights-rights' => '$1 {{GENDER:$2|hää}} det brükerskööl för $3 faan $4 tu $5 feranert.',
+'logentry-rights-rights-legacy' => '$1 {{GENDER:$2|hää}} det brükerskööl för $3 feranert.',
+'logentry-rights-autopromote' => '$1 as automaatisk faan $4 tu $5 {{GENDER:$2|tuwiset}} wurden.',
'rightsnone' => '(-)',
+# Feedback
+'feedback-bugornote' => 'Wan dü en technisk probleem beskriiw wel, wees so gud an skriiw [$1 am di feeler].
+Ööders könst dü uk det formulaar oner brük. Dan komentaar woort tuup mä dan brükernööm an det werjuun faan dan browser üüb det sidj „[$3 $2]“ skrewen.',
+'feedback-subject' => 'Teemo:',
+'feedback-message' => 'Mädialang:',
+'feedback-cancel' => 'Ufbreeg',
+'feedback-submit' => 'Komentaar ufsjüür',
+'feedback-adding' => 'Komentaar woort tu det sidj skrewen ...',
+'feedback-error1' => 'Feeler: Ünbekäänd API-bööd',
+'feedback-error2' => 'Feeler: Bewerkin as skiaf gingen.',
+'feedback-error3' => 'Feeler: Nian API-oonswaar',
+'feedback-thanks' => 'Föl soonk. Dan komentaar as üüb det sidj „[$2 $1]“ skrewen wurden.',
+'feedback-close' => 'Klaar',
+'feedback-bugcheck' => 'Gud! Luke noch ans efter, of det ei ferlicht en [$1 bekäänden feeler] as.',
+'feedback-bugnew' => 'Haa ik efterluket. Nei feeler melde.',
+
# Search suggestions
-'searchsuggest-search' => 'Sjük',
+'searchsuggest-search' => 'Schük',
+'searchsuggest-containing' => 'diar banen as ...',
+
+# API errors
+'api-error-badaccess-groups' => 'Dü mutst nian datein tu detdiar Wiki huuchschüür.',
+'api-error-badtoken' => 'Intern feeler: Token as ferkiard.',
+'api-error-copyuploaddisabled' => 'Det huuchschüüren auer URL as üüb didiar server ei aktiif.',
+'api-error-duplicate' => 'Uun det Wiki {{PLURAL:$1|as al [$2 en ööder datei]|san al [$2 muar datein]}} mä detsalew banen.',
+'api-error-duplicate-archive' => 'Diar wiar al {{PLURAL:$1|[$2 ööder datei]|[$2 ööder datein]}} mä detsalew banen. {{PLURAL:$1|Hat as |Jo san}} oober stregen wurden.',
+'api-error-duplicate-archive-popup-title' => 'Dobelt {{PLURAL:$1|datei, diar al stregen wurden as|datein, diar al stregen wurden san}}.',
+'api-error-duplicate-popup-title' => 'Dobelt {{PLURAL:$1|datei|datein}}',
+'api-error-empty-file' => 'Det datei, wat dü huuchsjüürd heest, as leesag.',
+'api-error-emptypage' => 'Dü mutst nian leesag sidjen nei iinstel.',
+'api-error-fetchfileerror' => "Intern feeler: Bi't ufrepen faan det datei as wat skiaf gingen.",
+'api-error-fileexists-forbidden' => 'En datei mä di nööm „$1“ as al diar. Hat koon ei auerskrewen wurd.',
+'api-error-fileexists-shared-forbidden' => "En date mä di nööm „$1“ as al uun't gemiansoom archiif an koon ei auerskrewen wurd.",
+'api-error-file-too-large' => 'Det datei, wat dü huuchsjüürd heest, as tu grat.',
+'api-error-filename-tooshort' => 'Di dateinööm as tu kurt.',
+'api-error-filetype-banned' => 'Son slach faan datei as ei tuläät.',
+'api-error-filetype-banned-type' => '$1 {{PLURAL:$4|as nään tuläät slach faan datein|san nian tuläät slacher faan datein}}.
+{{PLURAL:$3|En tuläät slach as|Tuläät slacher san}} $2.',
+'api-error-filetype-missing' => 'Det datei, wat dü huuchschüür wel, hää nian dateiaanj.',
+'api-error-hookaborted' => 'Det feranrang, wat dü maage wulst, as faan en ütjwidjet software-funktjuun ufbreegen wurden.',
+'api-error-http' => 'Intern feeler: Ferbinjang tu a server as skiaf gingen.',
+'api-error-illegal-filename' => 'Didiar dateinööm as ei tuläät.',
+'api-error-internal-error' => "Intern feeler: diar as wat skiaf gingen bi't huuchschüüren faan det datei tu det Wiki.",
+'api-error-invalid-file-key' => 'Intern feeler: Det datei as uun det tidjwiis archiif ei fünjen wurden.',
+'api-error-missingparam' => 'Intern feeler: Det uunfraag as ei hial uunkimen.',
+'api-error-missingresult' => 'Intern feeler: Küd ei luke, of det kopiarin loket hää.',
+'api-error-mustbeloggedin' => 'Dü skel di uunmelde, am datein huuchtuschüüren.',
+'api-error-mustbeposted' => 'Intern feeler: Ferkiard HTTP-muude.',
+'api-error-noimageinfo' => 'Det huuchschüüren hää loket, oober di server hää nian datei-dooten.',
+'api-error-nomodule' => 'Intern feeler: Diar as nian modul tu huuchsjüüren fäästlaanj wurden.',
+'api-error-ok-but-empty' => 'Intern feeler: Di server sait niks.',
+'api-error-overwrite' => 'Dü könst nian datei auerskriiw, wat al diar as.',
+'api-error-stashfailed' => 'Intern feeler: Di server küd nian tidjwiis datei seekre.',
+'api-error-publishfailed' => 'Intern feeler: Di server küd det tidjwiis datei ei widjer schüür.',
+'api-error-timeout' => 'Di server hää ei rochttidjag swaaret (time-out).',
+'api-error-unclassified' => 'Diar as irgentwat skiaf gingen.',
+'api-error-unknown-code' => 'Ünbekäänd feeler: „$1“',
+'api-error-unknown-error' => "Intern feeler: Bi't huuchschüüren faan det datei as wat skiaf gingen.",
+'api-error-unknown-warning' => 'Ünbekäänd wäärnang: $1',
+'api-error-unknownerror' => 'Ünbekäänd feeler: „$1“',
+'api-error-uploaddisabled' => 'Uun detdiar Wiki könst dü niks huuchschüür.',
+'api-error-verification-error' => 'Det datei, wat dü huuchschüür wel, as uunstaken of hää en ferkiard dateiaanj.',
# Durations
'duration-seconds' => '$1 {{PLURAL:$1|sekund|sekunden}}',
'duration-centuries' => '$1 {{PLURAL:$1|juarhunert|juarhunerten}}',
'duration-millennia' => '$1 {{PLURAL:$1|juardüüsen|juardüüsenen}}',
+# Image rotation
+'rotate-comment' => 'Bil am $1 {{PLURAL:$1|graad}} mä a klook dreid.',
+
);
'disclaimers' => 'Avîs legâi',
'disclaimerpage' => 'Project:Avîs gjenerâi',
'edithelp' => 'Jutori pai cambiaments',
-'edithelppage' => 'Help:Cambiaments',
'helppage' => 'Help:Contignûts',
'mainpage' => 'Pagjine principâl',
'mainpage-description' => 'Pagjine principâl',
'searchmenu-legend' => 'Opzions de ricercje',
'searchmenu-exists' => "'''E je une pagjine di non \"[[:\$1]]\" su cheste wiki'''",
'searchmenu-new' => "'''Cree la pagjine \"[[:\$1]]\" su cheste wiki!'''",
-'searchhelp-url' => 'Help:Contignûts',
'searchprofile-articles' => 'Pagjinis di contignûts',
'searchprofile-project' => 'Pagjinis di jutori e sul progjet',
'searchprofile-images' => 'Multimedia',
'listusers-noresult' => 'Nissun utent cjatât.',
'listusers-blocked' => '({{GENDER:$1|blocât|blocade}})',
+# Special:ActiveUsers
+'activeusers' => 'Liste dai utents atîfs',
+'activeusers-intro' => 'Cheste e je une liste dai utents che a àn vût cualchi gjenar di ativitât {{PLURAL:$1|te ultime dì|tai ultins $1 diis}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|cambiament|cambiaments}} {{PLURAL:$3|te ultime dì|tai ultins $3 diis}}',
+'activeusers-from' => 'Mostre i utents scomençant di:',
+'activeusers-hidebots' => 'Plate i bots',
+'activeusers-hidesysops' => 'Plate i aministradôrs',
+'activeusers-noresult' => 'Nissun utent cjatât.',
+
# Special:ListGroupRights
'listgrouprights' => 'Dirits dai grups di utents',
'listgrouprights-group' => 'Grup',
'notanarticle' => 'Cheste pagjine no je une vôs',
'watchnochange' => 'Nissun element di chei tignûts di voli al è stât cambiât tal periodi mostrât.',
'watchlist-details' => '{{PLURAL:$1|E je $1 pagjine tignude|A son $1 pagjinis tignudis}} di voli, cence contâ lis pagjinis di discussion.',
-'wlheader-enotif' => '* Notifiche par pueste eletroniche ativade.',
-'wlheader-showupdated' => "* Lis pagjinis gambiadis de ultime volte che tu lis âs cjaladis a son mostradis in '''gruessut'''",
+'wlheader-enotif' => 'Notifiche par pueste eletroniche ativade.',
+'wlheader-showupdated' => "Lis pagjinis gambiadis de ultime volte che tu lis âs cjaladis a son mostradis in '''gruessut'''",
'watchlistcontains' => 'Tu stâs tignint di voli $1 {{PLURAL:$1|pagjine|pagjinis}}.',
'wlnote' => "Ca sot {{PLURAL:$1|al è il cambiament plui recent|a son i '''$1''' cambiaments plui recents}} {{PLURAL:$2|inte ultime ore|intes '''$2''' oris passadis}}.",
'wlshowlast' => 'Mostre ultimis $1 oris $2 zornadis $3',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Largjece',
'exif-imagelength' => 'Altece',
'exif-orientation' => 'Orientament',
'exif-contrast' => 'Control contrast',
'exif-gpsaltitude' => 'Altitudin',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Cence compression',
'exif-unknowndate' => 'Date no cognossude',
'version-license' => 'Licence',
'version-software-version' => 'Version',
-# Special:FilePath
-'filepath-page' => 'Non dal file:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Non dal file:',
'fileduplicatesearch-submit' => 'Cîr',
* @ingroup Language
* @file
*
+ * @author Geitost
* @author Maartenvdbent
* @author Purodha
* @author Pyt
'tog-shownumberswatching' => 'It tal brûkers sjen litte dat dizze side folget',
'tog-oldsig' => 'Hûdige sinjatuerprintallyk:',
'tog-fancysig' => 'Sinjatuer as wikitekst behannelje (sûnder automatyske keppeling)',
-'tog-externaleditor' => 'Standert in eksterne tekstbewurker brûke (allinne foar experts - foar dizze funksje binne spesjale ynstellings nedich)',
-'tog-externaldiff' => 'Standert in ekstern ferlikingsprogramma brûke (allinne foar experts - foar dizze funksje binne spesjale ynstellings nedich)',
'tog-showjumplinks' => '"gean nei"-tapaslikens-links ynskeakelje',
'tog-uselivepreview' => '"live proefbyld" brûke (JavaScript nedich - eksperimenteel)',
'tog-forceeditsummary' => 'Warskôgje at ik de gearfetting leech lit.',
'disclaimers' => 'Foarbehâld',
'disclaimerpage' => 'Project:Algemien foarbehâld',
'edithelp' => 'Bewurk-help',
-'edithelppage' => 'Help:Bewurk-rie',
'helppage' => 'Help:Help',
'mainpage' => 'Haadside',
'mainpage-description' => 'Haadside',
'logout' => 'Ofmelde',
'userlogout' => 'Ofmelde',
'notloggedin' => 'Net oanmelde',
-'nologin' => "Noch net oanmelden as meidogger? '''$1'''.",
+'nologin' => 'Noch net oanmelden as meidogger? $1.',
'nologinlink' => 'Meitsje in brûker oan',
'createaccount' => 'Nije ynstellings oanmeitsje',
'gotaccount' => "Hawwe jo jo al as meidogger oanmelde? '''$1'''.",
'searchmenu-legend' => 'Sykopsjes',
'searchmenu-exists' => "'''Der is in side mei namme \"[[:\$1]]\" yn dizze wiki'''",
'searchmenu-new' => "'''Meitsje de side \"[[:\$1]]\" yn dizze wiki!'''",
-'searchhelp-url' => 'Help:Help',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Sidenammen mei dit foarheaksel werjaan]]',
'searchprofile-articles' => 'Ynhâldlike siden',
'searchprofile-project' => 'Projektsiden',
'search-external' => 'Utwindich sykje',
'searchdisabled' => '<p>Op it stuit stiet it trochsykjen fan tekst út omdat dizze funksje tefolle kompjûterkapasiteit ferget. As we nije apparatuer krije, en dy is ûnderweis, dan wurdt dizze funksje wer aktyf. Oant salang kinne jo sykje fia Google:</p>',
-# Quickbar
-'qbsettings' => 'Menu',
-'qbsettings-none' => 'Ut',
-'qbsettings-fixedleft' => 'Lofts fêst',
-'qbsettings-fixedright' => 'Rjochts fêst',
-'qbsettings-floatingleft' => 'Lofts sweevjend',
-'qbsettings-floatingright' => 'Rjochts sweevjend',
-
# Preferences page
'preferences' => 'Ynstellings',
'mypreferences' => 'Myn foarkarynstellings',
'upload-proto-error-text' => "Oanbieden mei dizze metoade freget URL's dy't begjinne mei <code>http://</code> of <code>ftp://</code>.",
'upload-file-error' => 'Ynterne fout',
'upload-file-error-text' => "Der wie in ynterne fout doe't in tydlike triem op'e server oanmakke waard.
-Nim kontakt op mei in [[Special:ListUsers/sysop|systeembehearder]].",
+Nim kontakt op mei in [[Special:ListUsers/sysop|behearder]].",
'upload-misc-error' => 'Unbekende oanbiedfout',
'upload-misc-error-text' => 'Der is by it oanbieden in ûnbekende fout optreden.
Kontrolearje of de URL krekt en beskikber is en besykje it nochris.
As it probleem oanhâldt, nim dan kontakt op mei in
-[[Special:ListUsers/sysop|systeembehearder]].',
+[[Special:ListUsers/sysop|behearder]].',
'upload-unknown-size' => 'Unbekinde grutte',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'spamprotectiontext' => "De side dy't jo fêstlizze woene is blokkearre troch in spam filter. Dit wurdt wierskynlik feroarsake troch in ferwizing nei in ekstern webstee.",
'spamprotectionmatch' => 'De neikommende tekst hat it spam filter aktivearre: $1',
-# Skin names
-'skinname-standard' => 'Standert',
-'skinname-nostalgia' => 'Nostalgy',
-
# Patrolling
'markaspatrolleddiff' => 'Markearje as kontroleare',
'markaspatrolledtext' => 'Markearje dizze side as kontrolearre',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-samplesperpixel' => 'Oantal komponinten',
'exif-xresolution' => 'Horizontale resolúsje',
'exif-yresolution' => 'Fertikale resolúsje',
'version-software-product' => 'Produkt',
'version-software-version' => 'Ferzje',
-# Special:FilePath
-'filepath' => 'Triempad',
-'filepath-page' => 'Triem:',
-'filepath-submit' => 'Pad',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Sykje op duplikaten',
'fileduplicatesearch-legend' => 'Sykje op duplikaten',
'tog-shownumberswatching' => 'Taispeán an méid úsáideoirí atá ag faire',
'tog-oldsig' => 'Réamhamharc ar an síniú atá ann:',
'tog-fancysig' => 'Sínithe bunúsacha mar vicítéacs (gan nasc uathoibríoch)',
-'tog-externaleditor' => 'Bain úsáid as eagarthóir seachtrach mar réamhshocrú (saineolaithe amháin, tá socrú speisialta de dhíth ort. [//www.mediawiki.org/wiki/Manual:External_editors Tuilleadh eolais.])',
-'tog-externaldiff' => 'Bain úsáid as difríocht sheachtrach mar réamhshocrú (saineolaithe amháin, tá socrú speisialta de dhíth ort. [//www.mediawiki.org/wiki/Manual:External_editors Tuilleadh eolais.])',
'tog-showjumplinks' => 'Cumasaigh naisc insroichteachta “léim go dtí”',
'tog-uselivepreview' => 'Bain úsáid as réamhamharc beo (JavaScript) (Turgnamhach)',
'tog-forceeditsummary' => 'Cuir in iúl dom nuair a chuirim isteach achoimre eagair folamh',
'disclaimers' => 'Séanadh',
'disclaimerpage' => 'Project:Séanadh_ginearálta',
'edithelp' => 'Cabhair eagarthóireachta',
-'edithelppage' => 'Help:Eagarthóireacht',
'helppage' => 'Help:Clár_ábhair',
'mainpage' => 'Príomhleathanach',
'mainpage-description' => 'Príomhleathanach',
'viewprevnext' => 'Taispeáin ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-legend' => 'Sainroghanna cuardaithe',
'searchmenu-new' => "'''Cruthaigh an leathanach \"[[:\$1]]\" ar an vicí seo!'''",
-'searchhelp-url' => 'Help:Clár_ábhair',
'searchprofile-articles' => 'Leathanaigh ábhair',
'searchprofile-project' => 'Leathanaigh thionscadail agus cabhair',
'searchprofile-images' => 'Ilmheáin',
'powersearch-togglenone' => 'Tada',
'searchdisabled' => "Tá brón orainn! Mhíchumasaíodh an cuardach téacs iomlán go sealadach chun luas an tsuímh a chosaint. Idir an dá linn, is féidir leat an cuardach Google anseo thíos a úsáid - b'fhéidir go bhfuil sé as dáta.",
-# Quickbar
-'qbsettings' => 'Sainroghanna an bosca uirlisí',
-'qbsettings-none' => 'Faic',
-'qbsettings-fixedleft' => 'Greamaithe ar chlé',
-'qbsettings-fixedright' => 'Greamaithe ar dheis',
-'qbsettings-floatingleft' => 'Ag faoileáil ar chlé',
-'qbsettings-floatingright' => 'Ag faoileáil ar dheis',
-
# Preferences page
'preferences' => 'Sainroghanna',
'mypreferences' => 'Sainroghanna',
'watchnochange' => 'Níor athraíodh ceann ar bith de na leathanaigh atá ar do liosta faire,
taobh istigh den tréimhse atá roghnaithe agat.',
'watchlist-details' => 'Tá tú ag faire ar {{PLURAL:$1|leathanach amháin|$1 leathanaigh}}, gan leathanaigh phlé a chur san áireamh.',
-'wlheader-enotif' => '* Cumasaíodh fógraí riomhphoist.',
-'wlheader-showupdated' => "* Tá '''cló trom''' ar leathanaigh a athraíodh ón uair is deireanaí a d'fhéach tú orthu.",
+'wlheader-enotif' => 'Cumasaíodh fógraí riomhphoist.',
+'wlheader-showupdated' => "Tá '''cló trom''' ar leathanaigh a athraíodh ón uair is deireanaí a d'fhéach tú orthu.",
'watchmethod-recent' => 'ag seiceáil na athruithe deireanacha ar do chuid leathanaigh faire',
'watchmethod-list' => 'ag seiceáil na leathanaigh faire ar do chuid athruithe deireanacha',
'watchlistcontains' => 'Tá {{PLURAL:$1|leathanach amháin|$1 leathanaigh}} ar do liosta faire.',
'spambot_username' => 'MediaWiki turscar glanadh',
# Skin names
-'skinname-standard' => 'Clasaiceach',
-'skinname-nostalgia' => 'Sean-nós',
'skinname-cologneblue' => 'Gorm Köln',
'skinname-monobook' => 'MonoBook',
-'skinname-myskin' => 'MoChraiceann',
-'skinname-chick' => 'Sicín',
-'skinname-simple' => 'Simplí',
'skinname-modern' => 'Nua-aimseartha',
'skinname-vector' => 'Veicteoir',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Leithead',
'exif-imagelength' => 'Airde',
'exif-bitspersample' => 'Gíotáin sa chomhpháirt',
'exif-languagecode' => 'Teanga',
'exif-iimcategory' => 'Catagóir',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Neamh-chomhbhrúite',
'exif-unknowndate' => 'Dáta anaithnid',
'version-software-version' => 'Leagan',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Cosán comhaid',
-'filepath-page' => 'Comhad:',
-'filepath-submit' => 'Gabh',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Ainm comhaid:',
'fileduplicatesearch-submit' => 'Cuardaigh',
'tog-enotifrevealaddr' => 'Bildirmää maillerinde e-mail adresimi göster.',
'tog-shownumberswatching' => 'İzlään kullanıcı sayısın göster',
'tog-fancysig' => 'Çii imza (İmzanız görüner nesoy onu yukarda belirttiniz. Sayfanıza avtomatik baalantı yaratılmaycêk)',
-'tog-externaleditor' => 'Düzmää başka editor programmasılan yap',
-'tog-externaldiff' => 'Karşılaştırmakları dış programmalan yap.',
'tog-showjumplinks' => '"Git" baalantısın işlet',
'tog-uselivepreview' => 'Tez cannı ön siiri kullan (JavaScript) (êksperimental)',
'tog-forceeditsummary' => 'Bana haber ver ne zaman ani kısa annatmanı boş braacam',
'disclaimers' => 'Cuvapçılık reti',
'disclaimerpage' => 'Project:Genel cuvapçılık reti',
'edithelp' => 'Nesoy var nicä diiştirmää?',
-'edithelppage' => 'Help:Nesoy var nicä sayfa diiştirmää',
'helppage' => 'Help:İçindekilär',
'mainpage' => 'Baş yaprak',
'mainpage-description' => 'Baş yaprak',
'prevn' => 'ilerki {{PLURAL:$1|$1}}',
'nextn' => 'geeriki {{PLURAL:$1|$1}}',
'viewprevnext' => '($1 {{int:pipe-separator}} $2) ($3).',
-'searchhelp-url' => 'Help:İçindekilär',
'search-result-size' => '$1 ({{PLURAL:$2|1 laf|$2 laf}})',
'search-redirect' => '(göndermää $1)',
'search-section' => '(bölüm $1)',
# Special:ListGroupRights
'listgrouprights-members' => '(azaların listası)',
-# E-mail user
+# Email user
'emailuser' => 'Gönder bu kullanıcıya bir e-mail',
# Watchlist
'tog-shownumberswatching' => '显示有几多人监视',
'tog-oldsig' => '现有𠮶签名:',
'tog-fancysig' => '搦签名以维基字对待(冇自动连结)',
-'tog-externaleditor' => '默认用外部编辑器(专家用𠮶功能,要到倷𠮶电脑上头特别𠮶设置一下)',
-'tog-externaldiff' => '默认用外部差异比较器(专家用𠮶功能,要到汝𠮶电脑上头特别𠮶设置下。[//www.mediawiki.org/wiki/Manual:External_editors 别𠮶信息])',
'tog-showjumplinks' => '启用“跳到”访问链接',
'tog-uselivepreview' => '使用即时预览(JavaScript)(实验中)',
'tog-forceeditsummary' => '冇改动注解时要同偶话',
'disclaimers' => '免责声明',
'disclaimerpage' => 'Project:免责声明',
'edithelp' => '编写帮助',
-'edithelppage' => 'Help:啷编写文章',
'helppage' => 'Help:说明',
'mainpage' => '封面',
'mainpage-description' => '封面',
'viewprevnext' => '眵吖($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''个只wiki已有一只叫「[[:$1]]」𠮶页。'''",
'searchmenu-new' => "'''嘚个只wiki上建立「[[:$1]]」页!'''",
-'searchhelp-url' => 'Help:说明',
'searchprofile-articles' => '内容页',
'searchprofile-project' => '帮助同得计划页',
'searchprofile-images' => '多媒体',
'powersearch-field' => '寻',
'searchdisabled' => '{{SITENAME}}𠮶搜索功能已经关闭。倷可以用Google寻吖。但系佢𠮶索引可能系早先𠮶。',
-# Quickbar
-'qbsettings' => '快捷导航条',
-'qbsettings-none' => '冇',
-'qbsettings-fixedleft' => '左首固定',
-'qbsettings-fixedright' => '右首固定',
-'qbsettings-floatingleft' => '左首漂移',
-'qbsettings-floatingright' => '左首漂移',
-
# Preferences page
'preferences' => '参数设置',
'mypreferences' => '偶𠮶参数设置',
'notanarticle' => '伓系文章',
'watchnochange' => '一径到显示𠮶时间之内,倷眏到𠮶页面冇改动。',
'watchlist-details' => '$1只页面(伓算讨论页) 拖眏到哩',
-'wlheader-enotif' => '* 启动嘞email通知功能。',
-'wlheader-showupdated' => "* 上回倷眵𠮶页面改动𠮶部分用'''粗体'''显到",
+'wlheader-enotif' => '启动嘞email通知功能。',
+'wlheader-showupdated' => "上回倷眵𠮶页面改动𠮶部分用'''粗体'''显到",
'watchmethod-recent' => '眵吖拖眏到𠮶页面𠮶最近编辑',
'watchmethod-list' => '望吖监视页里头最晏𠮶改动',
'watchlistcontains' => '倷𠮶监视列表包含$1只页面。',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => '阔',
'exif-imagelength' => '高',
'exif-bitspersample' => '每像素byte数',
'exif-gpsdatestamp' => 'GPS日期',
'exif-gpsdifferential' => 'GPS差动修正',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => '冇压缩',
'exif-unknowndate' => '未知𠮶日期',
'version-software' => '装正𠮶软件',
'version-software-version' => '版本',
-# Special:FilePath
-'filepath' => '文件路径',
-'filepath-page' => '文件:',
-'filepath-submit' => '路径',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => '文件名:',
'fileduplicatesearch-submit' => '寻',
'disclaimers' => '免責聲明',
'disclaimerpage' => 'Project:免責聲明',
'edithelp' => '編寫幫助',
-'edithelppage' => 'Help:啷編寫文章',
'helppage' => 'Help:説明',
'mainpage' => '封面',
'mainpage-description' => '封面',
'viewprevnext' => '望下($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''箇隻wiki已有一隻叫「[[:$1]]」嗰頁。'''",
'searchmenu-new' => "'''到箇隻wiki上建立「[[:$1]]」頁!'''",
-'searchhelp-url' => 'Help:説明',
'searchprofile-articles' => '內容頁',
'searchprofile-project' => '幫助同得計劃頁',
'searchprofile-images' => '多媒體',
'notanarticle' => '伓係文章',
'watchnochange' => '一徑到顯示嗰時間之內,倷眏到嗰頁面冇改動。',
'watchlist-details' => '$1隻頁面(伓算討論頁) 拕眏到哩',
-'wlheader-enotif' => '* 啟動哩email通知功能。',
-'wlheader-showupdated' => "* 上回倷眵嗰頁面改動嗰部分用'''粗體'''顯到",
+'wlheader-enotif' => '啟動哩email通知功能。',
+'wlheader-showupdated' => "上回倷眵嗰頁面改動嗰部分用'''粗體'''顯到",
'watchmethod-recent' => '眵吖拕眏到嗰頁面嗰頂晏嗰編輯',
'watchmethod-list' => '望吖監視頁裡頭頂晏嗰改動',
'watchlistcontains' => '倷嗰監視列表包含$1隻頁面。',
'disclaimers' => 'Aithrisean-àichidh',
'disclaimerpage' => 'Project:Aithris-àichidh choitcheann',
'edithelp' => 'Cobhair deasachaidh',
-'edithelppage' => 'Help:Deasachadh',
'helppage' => 'Help:Susbaint',
'mainpage' => 'Prìomh dhuilleag',
'mainpage-description' => 'Prìomh dhuilleag',
# Special:PasswordReset
'passwordreset' => 'Ath-shuidhich am facal-faire',
-'passwordreset-text' => 'Lìon am foirm seo gus am facal-faire agad ath-shuidheachadh.',
'passwordreset-legend' => 'Ath-shuidhich am facal-faire',
'passwordreset-disabled' => 'Chaidh ath-shuidheachadh nam faclan-faire a chur à comas air an uicipeid seo.',
-'passwordreset-pretext' => '{{PLURAL:$1||Cuir a-steach aon dhe na pìosan dàta gu h-ìosal}}',
'passwordreset-username' => 'Ainm-cleachdaiche:',
'passwordreset-domain' => 'Àrainn-lìn:',
'passwordreset-capture' => "A bheil thu airson coimhead air a' phost-d?",
'searchmenu-legend' => 'Roghainnean luirg',
'searchmenu-exists' => "'''Tha duilleag air a bheil \"[[:\$1]]\" air an uicipeid seo.'''",
'searchmenu-new' => "'''Cruthaich an duilleag \"[[:\$1]]\" air an uicipeid seo!'''",
-'searchhelp-url' => 'Help:Cuideachadh',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Rùraich duilleagan aig a bheil an ro-leasachan seo]]',
'searchprofile-articles' => 'Duilleagan susbainte',
'searchprofile-project' => "Duilleagan nan cobharach 's nam pròiseactan",
'notanarticle' => 'Chan e duilleag susbaint a tha ann',
'watchnochange' => "Cha deach na duilleagan air d' fhaire a dheasachadh anns a' chuairt ùine taisbeanta.",
'watchlist-details' => 'Tha {{PLURAL:$1|$1 duilleag|$1 dhuilleag|$1 duilleagan|$1 duilleag}} air do chlàr-faire, gun luaidh air na duilleagan deasbaireachd.',
-'wlheader-showupdated' => "* Tha clò '''trom''' air duilleagan a chaidh atharrachadh on turas mu dheireadh a thadhail thu orra.",
+'wlheader-showupdated' => "Tha clò '''trom''' air duilleagan a chaidh atharrachadh on turas mu dheireadh a thadhail thu orra.",
'watchmethod-recent' => "A' sgrùdadh deasachaidhean ùra airson duilleagan air d' fhaire",
'watchmethod-list' => "A' sgrùdadh duilleagan air d' fhaire airson deasachaidhean ùra",
'watchlistcontains' => 'Tha $1 {{PLURAL:$1|duilleag|dhuilleag|duilleagan|duilleag}} air do chlàr-faire.',
* @author Dferg
* @author Elisardojm
* @author Gallaecio
+ * @author Geitost
* @author Gustronico
* @author Kaganer
* @author Lameiro
'oct' => 'out',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1 de xaneiro',
+'february-date' => '$1 de febreiro',
+'march-date' => '$1 de marzo',
+'april-date' => '$1 de abril',
+'may-date' => '$1 de maio',
+'june-date' => '$1 de xuño',
+'july-date' => '$1 de xullo',
+'august-date' => '$1 de agosto',
+'september-date' => '$1 de setembro',
+'october-date' => '$1 de outubro',
+'november-date' => '$1 de novembro',
+'december-date' => '$1 de decembro',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoría|Categorías}}',
'create-this-page' => 'Crear esta páxina',
'delete' => 'Borrar',
'deletethispage' => 'Borrar esta páxina',
+'undeletethispage' => 'Restaurar esta páxina',
'undelete_short' => 'Restaurar {{PLURAL:$1|unha edición|$1 edicións}}',
'viewdeleted_short' => 'Ver {{PLURAL:$1|unha edición borrada|$1 edicións borradas}}',
'protect' => 'Protexer',
'disclaimers' => 'Advertencias',
'disclaimerpage' => 'Project:Advertencia xeral',
'edithelp' => 'Axuda de edición',
-'edithelppage' => 'Help:Como editar unha páxina',
'helppage' => 'Help:Axuda',
'mainpage' => 'Portada',
'mainpage-description' => 'Portada',
'namespaceprotected' => "Non dispón de permisos para modificar páxinas no espazo de nomes '''$1'''.",
'customcssprotected' => 'Non dispón de permisos para modificar esta páxina de CSS, dado que contén a configuración persoal doutro usuario.',
'customjsprotected' => 'Non dispón de permisos para modificar esta páxina de JavaScript, dado que contén a configuración persoal doutro usuario.',
+'mycustomcssprotected' => 'Non ten permiso para editar esta páxina de CSS.',
+'mycustomjsprotected' => 'Non ten permiso para editar esta páxina de JavaScript.',
'ns-specialprotected' => 'Non se poden editar as páxinas no espazo de nomes "{{ns:special}}".',
'titleprotected' => "Este título foi protexido da creación por [[User:$1|$1]].
O motivo achegado é ''$2''.",
'createacct-yourpasswordagain-ph' => 'Insira o contrasinal outra vez',
'remembermypassword' => 'Lembrar o meu contrasinal neste ordenador (ata $1 {{PLURAL:$1|día|días}})',
'userlogin-remembermypassword' => 'Manter a miña conexión',
-'userlogin-signwithsecure' => 'Acceder ao sistema no servidor seguro',
+'userlogin-signwithsecure' => 'Utilizar a conexión segura',
'securelogin-stick-https' => 'Permanecer conectado mediante as HTTPS despois de acceder',
'yourdomainname' => 'O seu dominio:',
'password-change-forbidden' => 'Non pode mudar os contrasinais neste wiki.',
'gotaccount' => 'Xa ten unha conta? $1.',
'gotaccountlink' => 'Acceda ao sistema',
'userlogin-resetlink' => 'Esqueceu os seus datos de rexistro?',
+'userlogin-resetpassword-link' => 'Restablecer o seu contrasinal',
'helplogin-url' => 'Help:Rexistro',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Axuda co rexistro]]',
'createacct-join' => 'Insira a súa información embaixo.',
'cannotchangeemail' => 'Neste wiki non se poden mudar os enderezos de correo electrónico asociados a unha conta.',
'emaildisabled' => 'Este sitio non pode enviar correos electrónicos.',
'accountcreated' => 'Conta creada',
-'accountcreatedtext' => 'Creouse a conta de usuario para "$1".',
+'accountcreatedtext' => 'Creouse a conta de usuario para [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|conversa]]).',
'createaccount-title' => 'Creación dunha conta para {{SITENAME}}',
'createaccount-text' => 'Alguén creou unha conta chamada "$2" para o seu enderezo de correo electrónico en {{SITENAME}} ($4), e con contrasinal "$3".
Debe acceder ao sistema e mudar o contrasinal agora.
# Special:PasswordReset
'passwordreset' => 'Restablecer o contrasinal',
-'passwordreset-text' => 'Encha este formulario para restablecer o seu contrasinal.',
+'passwordreset-text-one' => 'Encha este formulario para restablecer o seu contrasinal.',
+'passwordreset-text-many' => '{{PLURAL:$1|Insira un dos datos para restablecer o seu contrasinal.}}',
'passwordreset-legend' => 'Restablecer o contrasinal',
'passwordreset-disabled' => 'O restablecemento de contrasinais está desactivado neste wiki.',
'passwordreset-emaildisabled' => 'As funcións do correo electrónico están desactivadas neste wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Introduza un dos datos a continuación}}',
'passwordreset-username' => 'Nome de usuario:',
'passwordreset-domain' => 'Dominio:',
'passwordreset-capture' => 'Quere ollar o correo electrónico?',
O seu enderezo IP actual é $3 e o ID do bloqueo é #$5.
Por favor, inclúa eses datos nas consultas que faga.',
'blockednoreason' => 'non se deu ningunha razón',
-'whitelistedittext' => 'Ten que $1 para poder editar páxinas.',
+'whitelistedittext' => 'Debe $1 para poder editar páxinas.',
'confirmedittext' => 'Debe confirmar o correo electrónico antes de comezar a editar. Por favor, configure e dea validez ao correo mediante as súas [[Special:Preferences|preferencias de usuario]].',
'nosuchsectiontitle' => 'Non se pode atopar a sección',
'nosuchsectiontext' => 'Intentou editar unha sección que non existe.
Poida que a movesen ou borrasen mentres ollaba a páxina.',
'loginreqtitle' => 'Cómpre acceder ao sistema',
'loginreqlink' => 'acceder ao sistema',
-'loginreqpagetext' => 'Debe $1 para ver outras páxinas.',
+'loginreqpagetext' => 'Debe $1 para poder ver outras páxinas.',
'accmailtitle' => 'Enviouse o contrasinal',
'accmailtext' => 'Un contrasinal xerado ao chou para "[[User talk:$1|$1]]" foi enviado a "$2".
'blocked-notice-logextract' => 'Este usuario está bloqueado.
Velaquí está a última entrada do rexistro de bloqueos, por se quere consultala:',
'clearyourcache' => "'''Nota:''' Despois de gardar, cómpre limpar a memoria caché do seu navegador para ver os cambios.
-* '''Firefox / Safari:''' Prema ''Maiúsculas'' á vez que en ''Recargar'', ou prema en ''Ctrl-F5'' ou ''Ctrl-R'' (''⌘-R'' nos Mac)
-* '''Google Chrome:''' Prema en ''Ctrl-Shift-R'' (''⌘-Shift-R'' nos Mac)
+* '''Firefox/Safari:''' Prema ''Maiúsculas'' á vez que en ''Recargar'', ou prema en ''Ctrl-F5'' ou ''Ctrl-R'' (''⌘-R'' nos Mac)
+* '''Google Chrome:''' Prema en ''Ctrl-Maiús-R'' (''⌘-Maiús-R'' nos Mac)
* '''Internet Explorer:''' Prema ''Ctrl'' ao tempo que fai clic en ''Refrescar'', ou prema en ''Ctrl-F5''
* '''Opera:''' Limpe a súa memoria caché en ''Ferramentas → Preferencias''",
'usercssyoucanpreview' => "'''Nota:''' Use o botón \"{{int:showpreview}}\" para verificar o novo CSS antes de gardalo.",
Semella que foi borrada.',
'edit-conflict' => 'Conflito de edición.',
'edit-no-change' => 'A súa edición foi ignorada dado que non fixo ningún cambio no texto.',
+'postedit-confirmation' => 'Gardouse a súa edición.',
'edit-already-exists' => 'Non se pode crear a nova páxina.
Esta xa existe.',
'defaultmessagetext' => 'Texto predeterminado',
'searchmenu-legend' => 'Opcións de busca',
'searchmenu-exists' => "* Páxina \"'''[[\$1]]'''\"",
'searchmenu-new' => "'''Crear a páxina \"[[:\$1]]\" neste wiki!'''",
-'searchhelp-url' => 'Help:Contidos',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Navegue polas páxinas que comezan coas mesmas iniciais]]',
'searchprofile-articles' => 'Páxinas de contido',
'searchprofile-project' => 'Páxinas do proxecto e de axuda',
'userrights-changeable-col' => 'Os grupos que pode cambiar',
'userrights-unchangeable-col' => 'Os grupos que non pode cambiar',
'userrights-conflict' => 'Hai un conflito cos dereitos de usuario! Aplique de novo os seus cambios.',
+'userrights-removed-self' => 'Retirou correctamente os seus propios dereitos. Polo tanto, xa non ten acceso a esta páxina.',
# Groups
'group' => 'Grupo:',
'right-protect' => 'Trocar os niveis de protección e editar páxinas protexidas',
'right-editprotected' => 'Editar páxinas protexidas (que non teñan protección en serie)',
'right-editinterface' => 'Editar a interface de usuario',
-'right-editusercssjs' => 'Editar os ficheiros CSS e JS doutros usuarios',
+'right-editusercssjs' => 'Editar os ficheiros CSS e JavaScript doutros usuarios',
'right-editusercss' => 'Editar os ficheiros CSS doutros usuarios',
-'right-edituserjs' => 'Editar os ficheiros JS doutros usuarios',
+'right-edituserjs' => 'Editar os ficheiros JavaScript doutros usuarios',
+'right-editmyusercss' => 'Editar os ficheiros CSS propios',
+'right-editmyuserjs' => 'Editar os ficheiros JavaScript propios',
+'right-viewmywatchlist' => 'Ver a lista de vixilancia propia',
+'right-editmywatchlist' => 'Editar a lista de vixilancia propia. Teña en conta que algunhas accións engadirán páxinas igualmente mesmo sen este dereito.',
'right-rollback' => 'Reverter rapidamente as edicións do último usuario que editou unha páxina en particular',
'right-markbotedits' => 'Marcar as edicións desfeitas como edicións dun bot',
'right-noratelimit' => 'Non lle afectan os límites de frecuencia',
'action-userrights-interwiki' => 'editar os permisos de usuario dos usuarios doutros wikis',
'action-siteadmin' => 'bloquear ou desbloquear a base de datos',
'action-sendemail' => 'enviar correos electrónicos',
+'action-editmywatchlist' => 'editar a súa lista de vixilancia',
+'action-viewmywatchlist' => 'ver a súa lista de vixilancia',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|modificación|modificacións}}',
'reuploaddesc' => 'Cancelar a carga e volver ao formulario de carga',
'upload-tryagain' => 'Enviar a descrición do ficheiro modificada',
'uploadnologin' => 'Non accedeu ao sistema',
-'uploadnologintext' => 'Debe [[Special:UserLogin|acceder ao sistema]] para poder cargar ficheiros.',
+'uploadnologintext' => 'Debe $1 para poder cargar ficheiros.',
'upload_directory_missing' => 'Falta o directorio de carga ($1) e non pode ser creado polo servidor da páxina web.',
'upload_directory_read_only' => 'O servidor web non pode escribir no directorio de carga ($1).',
'uploaderror' => 'Erro ao cargar',
'upload-proto-error-text' => 'A carga remota require enderezos URL que comecen por <code>http://</code> ou <code>ftp://</code>.',
'upload-file-error' => 'Erro interno',
'upload-file-error-text' => 'Produciuse un erro interno ao intentar crear un ficheiro temporal no servidor.
-Por favor, contacte cun [[Special:ListUsers/sysop|administrador]] do sistema.',
+Por favor, póñase en contacto cun [[Special:ListUsers/sysop|administrador]].',
'upload-misc-error' => 'Erro de carga descoñecido',
'upload-misc-error-text' => 'Ocorreu un erro descoñecido durante a carga.
Comprobe que o enderezo URL é válido e accesible e, despois, inténteo de novo.
-Se o problema persiste, póñase en contacto cun [[Special:ListUsers/sysop|administrador]] do sistema.',
+Se o problema persiste, póñase en contacto cun [[Special:ListUsers/sysop|administrador]].',
'upload-too-many-redirects' => 'O enderezo URL contiña moitas redireccións',
'upload-unknown-size' => 'Tamaño descoñecido',
'upload-http-error' => 'Produciuse un erro HTTP: $1',
'notvisiblerev' => 'A revisión foi borrada',
'watchnochange' => 'Ningún dos elementos baixo vixilancia foi editado no período de tempo indicado.',
'watchlist-details' => 'Hai {{PLURAL:$1|unha páxina|$1 páxinas}} na súa lista de vixilancia, sen contar as de conversa.',
-'wlheader-enotif' => '* A notificación por correo electrónico está activada.',
-'wlheader-showupdated' => "* As páxinas que cambiaron desde a súa última visita móstranse en '''negra'''",
+'wlheader-enotif' => 'A notificación por correo electrónico está activada.',
+'wlheader-showupdated' => "As páxinas que cambiaron desde a súa última visita móstranse en '''negra'''.",
'watchmethod-recent' => 'comprobando as edicións recentes na procura de páxinas vixiadas',
'watchmethod-list' => 'comprobando as páxinas vixiadas na procura de edicións recentes',
'watchlistcontains' => 'A súa lista de vixilancia ten $1 {{PLURAL:$1|páxina|páxinas}}.',
'thumbnail-more' => 'Ampliar',
'filemissing' => 'O ficheiro non se dá atopado',
'thumbnail_error' => 'Erro ao crear a miniatura: $1',
+'thumbnail_error_remote' => 'Mensaxe de erro de $1:
+$2',
'djvu_page_error' => 'A páxina DjVu está fóra do rango',
'djvu_no_xml' => 'Non se puido obter o XML para o ficheiro DjVu',
'thumbnail-temp-create' => 'Non se puido crear o ficheiro de miniatura temporal',
'modern.css' => '/* O CSS que se coloque aquí afectará a quen use a aparencia Moderna */',
'vector.css' => '/* O CSS que se coloque aquí afectará a quen use a aparencia Vector */',
'print.css' => '/* O CSS que se coloque aquí afectará ás impresións */',
-'handheld.css' => '/* O CSS que se coloque aquí afectará aos dispositivos móbiles baseados na aparencia configurada en $wgHandheldStyle */',
'noscript.css' => '/* O CSS que se coloque aquí afectará aos usuarios co JavaScript desactivado */',
'group-autoconfirmed.css' => '/* O CSS que se coloque aquí afectará soamente aos usuarios autoconfirmados */',
'group-bot.css' => '/* O CSS que se coloque aquí afectará soamente aos bots */',
# Special:ListUsers
'listusers-submit' => 'Hechauka',
-# E-mail user
+# Email user
'emailuser' => "Tojeguerahauka ñe'ẽveve ko puruhárape",
'emailpage' => 'Pareha eleytrónico',
'emailmessage' => 'Marandu',
# Special:Version
'version' => "Mba'ereko",
-# Special:FilePath
-'filepath' => 'Ruta de archivo',
-'filepath-page' => 'Archivo:',
-'filepath-submit' => 'Ruta',
-
# Special:SpecialPages
'specialpages' => 'Kuatiarogue hekochĩchĩva',
'tog-shownumberswatching' => 'Δεικνύναι τὸν ἀριθμὸν τῶν παρακολουθούντων χρωμένων',
'tog-oldsig' => 'Προθεώρησις τῆς ὑπαρχούσης ὑπογραφῆς:',
'tog-fancysig' => 'Ἀκατέργασται ὑπογραφαί ἐν εἴδει βικι-κειμένου (ἄνευ αὐτομάτου συνδέσμου)',
-'tog-externaleditor' => 'Χρῆσθαι ἐξωτέρῳ προγράμματι ἐπεξεργασίας κειμένων κατὰ προεπιλογήν (πρὸς εἰδικοὺς μόνον· ἀπαραίτητοι εἰσὶν εἰδικαὶ ῥυθμίσεις τινὲς ἐν τῇ σῇ ὑπολογιστικῇ μηχανῇ)',
-'tog-externaldiff' => 'Χρῆσθαι ἐξωτέρῳ λογισμικῷ ἀντιπαραβολῆς κατὰ προεπιλογὴν (πρὸς εἰδικοὺς μόνον· ἀπαραίτητοι εἰσὶν εἰδικαὶ ῥυθμίσεις τινες ἐν τῇ σῇ ὑπολογιστικῇ μηχανῇ)',
'tog-showjumplinks' => 'Ἐνεργοποιεῖν τοὺς "ἅλμα πρὸς" συνδέσμους προσβασιμότητος',
'tog-uselivepreview' => 'Χρῆσθαι ἀμέσῳ προθεωρήσει (JavaScript) (Πειραστικόν)',
'tog-forceeditsummary' => 'Προμήνυσόν με εἰ εἰσάγω κενὴν σύνοψιν μεταγραφῆς',
'disclaimers' => 'Ἀποποιήσεις',
'disclaimerpage' => 'Project:Γενικὴ ἀποποίησις',
'edithelp' => 'Βοήθεια περὶ τοῦ μεταγράφειν',
-'edithelppage' => 'Help:Βοήθεια περὶ τοῦ μεταγράφειν',
'helppage' => 'Help:Περιεχόμενα',
'mainpage' => 'Κυρία Δέλτος',
'mainpage-description' => 'Κυρία Δέλτος',
'searchmenu-legend' => 'Ἐπιλογαὶ ζητήσεως',
'searchmenu-exists' => "'''Ὑπάρχει δέλτος τις ὀνόματι \"[[:\$1]]\" ἐν τῷδε τῷ βίκι'''",
'searchmenu-new' => "'''Ποιεῖν τὴν δέλτον \"[[:\$1]]\" ἐν τῷδε τῷ βίκι'''",
-'searchhelp-url' => 'Help:Περιεχόμενα',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ζήτησις δέλτων ἐχουσῶν τόδε τὸ πρόθεμα]]',
'searchprofile-articles' => 'Δέλτοι περιεχομένων',
'searchprofile-project' => 'Βοήθεια καὶ δέλτοι ἐγχειρήματος',
'powersearch-togglenone' => 'Οὐδέν',
'search-external' => 'Ἐξωτέρα ἀναζήτησις',
-# Quickbar
-'qbsettings' => 'Ταχεῖα πρόσβασις',
-'qbsettings-none' => 'Οὐδέν',
-'qbsettings-fixedleft' => 'Σταθερὰ ἀριστερώς',
-'qbsettings-fixedright' => 'Σταθερὰ δεξιώς',
-'qbsettings-floatingleft' => 'Πλανώμενα αριστερώς',
-'qbsettings-floatingright' => 'Πλανώμενα δεξιώς',
-
# Preferences page
'preferences' => 'Προαιρέσεις',
'mypreferences' => 'Αἱ προαιρέσεις μου',
'notvisiblerev' => 'Ἀναθεώρησις διαγεγραμμένη',
'watchnochange' => 'Οὐδὲν ἐκ τῶν ἐφορωμένων τεμαχίων σου μετεγράφη τῷ δεικνυμένῳ χρόνῳ.',
'watchlist-details' => '{{PLURAL:$1|$1 δέλτος|$1 δέλτοι}} ἐφορωμέναι, ἄνευ τῶν δέλτων διαλέξεως περιλαμβανομένων.',
-'wlheader-enotif' => '* Σύστημα εἰδήσεως μέσῳ ἠλ-ἐπιστολῶν ἐνεργόν.',
+'wlheader-enotif' => 'Σύστημα εἰδήσεως μέσῳ ἠλ-ἐπιστολῶν ἐνεργόν.',
'watchmethod-recent' => 'ἐλέγχειν προσφάτους μεταγραφὰς περὶ ἐφορωμένων δέλτων',
'watchmethod-list' => 'ἐλέγχειν ἐφορωμένας δέλτους περὶ μεταγραφὰς προσφάτους',
'watchlistcontains' => 'Ἡ ἐφοροδιαλογὴ σου περιέχει $1 {{PLURAL:$1|δέλτον|δέλτους}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Πλάτος',
'exif-imagelength' => 'Ὕψος',
'exif-bitspersample' => 'Δυφία ἀνὰ συνιστῶσαν',
'exif-label' => 'Ἐπιγραφή',
'exif-disclaimer' => 'Ἀποποίησις εὐθύνης',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Ἀσυμπίεστος',
'exif-copyrighted-true' => 'Ὑποκείμενον έν δικαιώμασιν',
'version-software-product' => 'Προϊόν',
'version-software-version' => 'Ἔκδοσις',
-# Special:FilePath
-'filepath' => 'Διαδρομὴ ἀρχείου',
-'filepath-page' => 'Ἀρχεῖον:',
-'filepath-submit' => 'Ἰέναι',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Ζήτησις διπλότυπων ἀρχείων',
'fileduplicatesearch-summary' => 'Ζητεῖν διπλότυπα ἀρχεῖα βάσει κερματιζομένων τιμῶν.',
* @author MaxSem
* @author Melancholie
* @author MichaelFrey
+ * @author Nemo bis
* @author Purodha
* @author Remember the dot
* @author Spacebirdy
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Rotschläg fir s Bearbeite',
-'edithelppage' => 'Help:Ändere',
'helppage' => 'Help:Hilf',
'mainpage' => 'Houptsyte',
'mainpage-description' => 'Houptsyte',
'logout' => 'Abmälde',
'userlogout' => 'Abmälde',
'notloggedin' => 'Nit aagmäldet',
-'nologin' => "No kei Benutzerkonto? '''$1'''.",
+'nologin' => 'No kei Benutzerkonto? $1.',
'nologinlink' => '»Konto aaleege«',
'createaccount' => 'Nöis Benutzerkonto aalege',
'gotaccount' => "Du häsch scho a Konto? '''$1'''",
# Special:PasswordReset
'passwordreset' => 'Passwort zruggsetze',
-'passwordreset-text' => 'Bitte des Formular uusfille, ass De E-Mail e Erinnerig zue dr Aamäldeinformatione vu Dyym Benutzerkonto iberchunnsch.',
'passwordreset-legend' => 'Passwort zrucksetze',
'passwordreset-disabled' => 'S Zrucksetze vu Passwerter isch in däm Wiki deaktiviert wore.',
-'passwordreset-pretext' => '{{PLURAL:$1||Gib eis vu däne Daten aa}}',
'passwordreset-username' => 'Benutzername:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Die E-Mail aaluege?',
'searchmenu-legend' => 'Suechoptione',
'searchmenu-exists' => "* Syte '''[[$1]]'''",
'searchmenu-new' => "'''[[:$1|Leg d Syte ''$1'' in dem Wiki aa!]]'''",
-'searchhelp-url' => 'Help:Hilf',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Zeige alli Syte, wu mit dem Suechbegriff aafange]]',
'searchprofile-articles' => 'Inhaltssyte',
'searchprofile-project' => 'Hilf- un Projäktsyte',
'listusers-noresult' => 'Kei Benutzer gfunde.',
'listusers-blocked' => '(gsperrt)',
+# Special:ActiveUsers
+'activeusers' => 'Lischt vu dr aktive Benutzer',
+'activeusers-intro' => 'Des isch e Lischt vu Benutzer, wu irgedebis bearbeitet hän {{PLURAL:$1|am letschte Tag|in dr letschte $1 Täg}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|Bearbeitig|Bearbeitige}} {{PLURAL:$3|am letschte Tag|in dr letschte $3 Täg}}',
+'activeusers-from' => 'Zeig Benutzer ab:',
+'activeusers-hidebots' => 'Bötli uusblände',
+'activeusers-hidesysops' => 'Ammanne (Administratore) uusblände',
+'activeusers-noresult' => 'Kei Benutzer gfunde.',
+
# Special:ListGroupRights
'listgrouprights' => 'Benutzergruppe-Rächt',
'listgrouprights-summary' => 'Des isch e Liste vu dr Benutzergruppe, wu in däm Wiki definiert sin, un dr Rächt, wu dermit verbunde sin.
'notvisiblerev' => 'Version isch glescht wore',
'watchnochange' => 'Vo den Artikle, wo du beobachtisch, isch im aazeigte Zytruum kene veränderet worde.',
'watchlist-details' => '{{PLURAL:$1|1 Syte wird|$1 Sytene wärde}} beobachtet (Diskussionssyte nid zelt, aber ou beobachtet).',
-'wlheader-enotif' => '* Dr E-Mail-Benochrichtigungsdienscht isch aktiviert.',
-'wlheader-showupdated' => "* Syte mit Anderige, wu no nit aagluegt sin, sin '''fett''' dargstellt.",
+'wlheader-enotif' => 'Dr E-Mail-Benochrichtigungsdienscht isch aktiviert.',
+'wlheader-showupdated' => "Syte mit Anderige, wu no nit aagluegt sin, sin '''fett''' dargstellt.",
'watchmethod-recent' => 'Iberpriefe vu dr letschte Bearbeitige fir d Beobachtigslischt',
'watchmethod-list' => 'Iberpriefe vu dr Beobachtigslischt no letschte Bearbeitige',
'watchlistcontains' => 'In Dyynere Beobachtigslischt het s $1 {{PLURAL:$1|Syte|Syte}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Breiti',
'exif-imagelength' => 'Längi',
'exif-bitspersample' => 'Bit pro Farbkomponente',
'exif-originalimageheight' => 'Bildhechi vor em Zueschnyde',
'exif-originalimagewidth' => 'Bildbreiti vor em Zueschnyde',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Uukomprimiert',
'exif-compression-2' => 'CCITT Gruppe 3 1-dimensionali modifizierti Huffman-Lauflengekodierig',
'exif-compression-3' => 'CCITT Gruppe 3 Faxkodierig',
'version-entrypoints-header-entrypoint' => 'Yygangspunkt',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Dateipfad',
-'filepath-page' => 'Datei:',
-'filepath-submit' => 'Gang',
-'filepath-summary' => 'Mit däre Spezialsyte losst sich dr komplett Pfad vu dr aktuälle Version vun ere Datei ohni Umwäg abfroge.
-Di aagfrogt Datei wird diräkt dargstellt bzw. mit dr verchnipfte Aawändig gstartet.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Datei-Duplikat sueche',
'fileduplicatesearch-summary' => 'Suech no Datei-Duplikat uf dr Grundlag vu ihrem Hash-Wärt.',
$digitGroupingPattern = "##,##,###";
+$linkTrail = '/^((?:[a-z]|ક્|ખ્|ગ્|ઘ્|ચ્|છ્|જ્|ઝ્|ટ્|ઠ્|ડ્|ઢ્|ણ્|ત્|થ્|દ્|ધ્|ન્|પ્|ફ્|બ્|ભ્|મ્|ય્|ર્|લ્|વ્|સ્|શ્|ષ્|હ્|ળ્|ક્ષ્|જ્ઞ્|અ|આ|ઇ|ઈ|ઉ|ઊ|એ|ઐ|ઓ|ઔ|અં|અઃ|અઁ|ઍ|ઑ|ઋ|ઁ|઼|।|્|ા|િ|ી|ુ|ૂ|ે|ૈ|ો|ૌ|ં|ઃ|ઁ|ૅ|ૉ|ૃ)+)(.*)$/sDu';
+
$messages = array(
# User preference toggles
'tog-underline' => 'કડીઓની નીચે લીટી (અંડરલાઇન) ઉમેરો:',
'tog-hidepatrolled' => 'હાલના સલામતી માટે કરવામાં આવેલાં થયેલા ફેરફારો છુપાવો.',
'tog-newpageshidepatrolled' => 'નવાં પાનાંની યાદીમાંથી દેખરેખ હેઠળનાં પાનાં છુપાવો',
'tog-extendwatchlist' => 'ધ્યાનસૂચિને વિસ્તૃત કરો જેથી,ફક્ત તાજેતરનાજ નહીં, બધા આનુષાંગિક ફેરફારો જોઇ શકાય',
-'tog-usenewrc' => 'તાàª\9cà«\87તરનાàª\82 વરà«\8dધિત ફà«\87રફારà«\8b વાપરà«\8b(જાવાસ્ક્રીપ્ટ જરૂરી)',
+'tog-usenewrc' => 'તાàª\9cા ફà«\87રફારà«\8bમાàª\82 àª\85નà«\87 ધà«\8dયાનસà«\82àª\9aિમાàª\82 ફà«\87રફારà«\8bનà«\87 પાનાàª\82 àª\85નà«\81સાર àª\9cà«\82થમાàª\82 àª\97à«\8bઠવà«\8b (જાવાસ્ક્રીપ્ટ જરૂરી)',
'tog-numberheadings' => 'મથાળાંઓને આપો-આપ ક્રમ (ઑટો નંબર) આપો',
'tog-showtoolbar' => 'ફેરફારો માટેનો ટૂલબાર બતાવો (જાવા સ્ક્રિપ્ટ)',
'tog-editondblclick' => 'ડબલ ક્લિક દ્વારા ફેરફાર કરો (જાવાસ્ક્રિપ્ટ જરૂરી)',
'tog-editsectiononrightclick' => 'વિભાગના મથાળાં ને રાઇટ ક્લિક દ્વારા ફેરફાર કરવાની રીત અપનાવો. (જાવાસ્ક્રિપ્ટ જરૂરી)',
'tog-showtoc' => 'અનુક્રમણિકા દર્શાવો (૩થી વધુ પેટા-મથાળા વાળા લેખો માટે)',
'tog-rememberpassword' => 'આ કમ્પ્યૂટર પર મારી લોગ-ઇન વિગતો યાદ રાખો (મહત્તમ $1 {{PLURAL:$1|દિવસ|દિવસ}} માટે)',
-'tog-watchcreations' => 'મà«\87àª\82 àª\89મà«\87રà«\87લા પાનાàª\82àª\93 àª\85નà«\87 àª\85પલà«\8bડ àª\95રà«\87લ ફાàª\87લà«\8dસ મારી ધ્યાનસૂચિમાં ઉમેરો',
+'tog-watchcreations' => 'મà«\87àª\82 બનાવà«\87લાàª\82 પાનાàª\82 àª\85નà«\87 àª\85પલà«\8bડ àª\95રà«\87લà«\80 ફાàª\87લà«\8b મારી ધ્યાનસૂચિમાં ઉમેરો',
'tog-watchdefault' => 'હું ફેરફાર કરૂં તે પાનાં અને ફાઇલ્સ મારી ધ્યાનસૂચિમાં ઉમેરો',
'tog-watchmoves' => 'હું ખસેડું તે પાનાં અને ફાઇલ્સ મારી ધ્યાનસૂચિમાં ઉમેરો',
'tog-watchdeletion' => 'હું દૂર કરું તે પાનાં અને ફાઇલ્સ મારી ધ્યાનસૂચિમાં ઉમેરો',
'oct' => 'ઓકટો',
'nov' => 'નવે',
'dec' => 'ડિસે',
+'january-date' => 'જાન્યુઆરી $1',
+'february-date' => 'ફેબ્રુઆરી $1',
+'march-date' => 'માર્ચ $1',
+'april-date' => 'એપ્રિલ $1',
+'may-date' => 'મે $1',
+'june-date' => 'જુન $1',
+'july-date' => 'જુલાઈ $1',
+'august-date' => 'ઓગસ્ટ $1',
+'september-date' => 'સપ્ટેમ્બર $1',
+'october-date' => 'ઓક્ટોબર $1',
+'november-date' => 'નવેમ્બર $1',
+'december-date' => 'ડિસેમ્બર $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|શ્રેણી|શ્રેણીઓ}}',
'noindex-category' => 'અનુક્રમણિકા નહી બનાવેલા પાનાં',
'broken-file-category' => 'ફાઇલોની ત્રૂટક કડીઓવાળાં પાનાં',
-'linkprefix' => '/^(.*?)([a-zA-Z\\x80-\\xff]+)$/sD',
+'linkprefix' => '/^(.*?)((?:[a-zA-Z\\x80-\\xff]|ક્|ખ્|ગ્|ઘ્|ચ્|છ્|જ્|ઝ્|ટ્|ઠ્|ડ્|ઢ્|ણ્|ત્|થ્|દ્|ધ્|ન્|પ્|ફ્|બ્|ભ્|મ્|ય્|ર્|લ્|વ્|સ્|શ્|ષ્|હ્|ળ્|ક્ષ્|જ્ઞ્|અ|આ|ઇ|ઈ|ઉ|ઊ|એ|ઐ|ઓ|ઔ|અં|અઃ|અઁ|ઍ|ઑ|ઋ|ઁ|઼|।|્|ા|િ|ી|ુ|ૂ|ે|ૈ|ો|ૌ|ં|ઃ|ૅ|ૉ|ૃ)+)$/sD',
'about' => 'વિષે',
'article' => 'લેખનું પાનું',
'disclaimers' => 'જાહેર ઇનકાર',
'disclaimerpage' => 'Project:સામાન્ય જાહેર ઇનકાર',
'edithelp' => 'ફેરફારો માટે મદદ',
-'edithelppage' => 'Help:ફેરફાર',
'helppage' => 'Help:સૂચિ',
'mainpage' => 'મુખપૃષ્ઠ',
'mainpage-description' => 'મુખપૃષ્ઠ',
'gotaccount' => "પહેલેથી ખાતું ખોલેલું છે? '''$1'''.",
'gotaccountlink' => 'પ્રવેશ કરો',
'userlogin-resetlink' => 'પોતાની પ્રવેશ માહિતી ભૂલી ગયા છો?',
-'userlogin-resetpassword-link' => 'તમારà«\8b પાસવરà«\8dડ બદલો',
+'userlogin-resetpassword-link' => 'તમારà«\80 àª\97à«\81પà«\8dતસàª\82àª\9cà«\8dàª\9eા બદલો',
'helplogin-url' => 'Help:પ્રવેશ માટે',
-'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|પ્વેશવા માટેની મદદ]]',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|પà«\8dરવà«\87શવા માàª\9fà«\87નà«\80 મદદ]]',
'createacct-join' => 'તમારી માહિતી નીચે દાખલ કરો.',
'createacct-emailrequired' => 'ઇમેલ સરનામું',
'createacct-emailoptional' => 'ઇમેલ સરનામું (વૈકલ્પિક)',
'createacct-submit' => 'તમારું ખાતું બનાવો',
'createacct-benefit-heading' => '{{SITENAME}} એ તમારા જેવા લોકો વડે બનાવેલ છે.',
'createacct-benefit-body1' => '{{PLURAL:$1|ફેરફાર|ફેરફારો}}',
-'createacct-benefit-body2' => '{{PLURAL:$1|પાનું|પાનાંઓ}}',
-'createacct-benefit-body3' => 'તાજેતરનાં {{PLURAL:$1|યોગદાનકર્તા|યોગદાનકર્તાઓ}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|પાનું|પાનાં}}',
+'createacct-benefit-body3' => 'તાજેતરના {{PLURAL:$1|યોગદાનકર્તા|યોગદાનકર્તાઓ}}',
'badretype' => 'તમે દાખલ કરેલ ગુપ્તસંજ્ઞા મળતી આવતી નથી.',
-'userexists' => 'દાખલ કરેલું સભ્ય નુ નામ વપરાશમાં છે.</br>
+'userexists' => 'દાખલ કરેલું સભ્યનામ વપરાશમાં છે.</br>
કૃપયા અન્ય નામ પસંદ કરો.',
'loginerror' => 'પ્રવેશ ત્રુટિ',
'createacct-error' => 'ખાતું બનાવવામાં ક્ષતિ આવી',
# Special:PasswordReset
'passwordreset' => 'પાસવર્ડ રીસેટ કરો',
-'passwordreset-text' => 'તમારો પાસવર્ડ બદલવા માટે આ ફોર્મ પૂરુ કરો.',
'passwordreset-legend' => 'પાસવર્ડ રીસેટ કરો',
'passwordreset-disabled' => 'આ વિકી પર પાસવર્ડ રીસેટ કરવા પર પ્રતિબંધ છે.',
'passwordreset-emaildisabled' => 'આ વિકિ પર ઇમેઇલ સગવડ બંધ છે.',
-'passwordreset-pretext' => '{{PLURAL: $1| | એક નીચે માહિતીના ટુકડાઓ દાખલ}}',
'passwordreset-username' => 'સભ્ય નામ:',
'passwordreset-domain' => 'ડોમેઈન:',
'passwordreset-capture' => 'પરિણામી ઈ મેલ જોવો છે ?',
'searchmenu-legend' => 'શોધ વિકલ્પો',
'searchmenu-exists' => "''' આ વિકિ પર \"[[:\$1]]\" નામે પાનું પહેલેથી અસ્તિત્વમાં છે.'''",
'searchmenu-new' => "'''આ વિકિ પર \"[[:\$1]]\" નામે પાનું બનાવો!'''",
-'searchhelp-url' => 'Help:સૂચિ',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|આ પૂર્વાક્ષર વાળા પાનાં જુઓ]]',
'searchprofile-articles' => 'લેખનું પાનું',
'searchprofile-project' => 'મદદ અને યોજના પાનું',
'prefs-emailconfirm-label' => 'ઇ-મેલ પુષ્ટી',
'prefs-textboxsize' => 'ફેરફાર ફલકનું માપ',
'youremail' => 'ઇ-મેઇલ:',
-'username' => '{{GENDER:$1|સભ્ય નામ}}:',
+'username' => '{{GENDER:$1|સભ્યનામ}}:',
'uid' => '{{GENDER:$1|સભ્ય}} ઓળખ:',
'prefs-memberingroups' => '{{PLURAL:$1|સમુહ|સમુહો}}ના {{GENDER:$2|સભ્ય}}:',
'prefs-registration' => 'નોંધણી સમય',
'usereditcount' => '$1 {{PLURAL:$1|ફેરફાર|ફેરફારો}}',
'usercreated' => '$1 તારીખે $2 વાગ્યે {{GENDER:$3|બનાવ્યું}}',
'newpages' => 'નવાં પાનાં',
-'newpages-username' => 'સભ્ય નામ:',
+'newpages-username' => 'સભ્યનામ:',
'ancientpages' => 'સૌથી જૂનાં પાનાં',
'move' => 'નામ બદલો',
'movethispage' => 'આ પાનું ખસેડો',
'notvisiblerev' => 'અન્ય સભ્ય દ્વારા થયેલું સંપાદન ભૂંસી નખાયું છે.',
'watchnochange' => 'તમારા દ્વારા નિરીક્ષિત પાના આપેલ સમય ગાળામાં ફેરફારીત થયા',
'watchlist-details' => 'ચર્ચાનાં પાનાં ન ગણતા {{PLURAL:$1|$1 પાનું|$1 પાનાં}} ધ્યાનસૂચીમાં છે.',
-'wlheader-enotif' => '*ઈ-મેલ સૂચના પદ્ધતિ સક્રીય કરાઈ.',
-'wlheader-showupdated' => "*તમારી મુલાકાત લીધા પછી બદલાયેલા પાના '''ઘાટા''' અક્ષરો વડે દર્શાવ્યાં છે",
+'wlheader-enotif' => 'ઈમેલ સૂચના પદ્ધતિ સક્રીય કરાઈ.',
+'wlheader-showupdated' => "તમારી છેલ્લી મુલાકાત પછી બદલાયેલાં પાના '''ઘાટા''' અક્ષરો વડે દર્શાવ્યાં છે.",
'watchmethod-recent' => 'હાલમાં ફેરફાર થયેલ પાનાની ચકાસણી જારી',
'watchmethod-list' => 'હાલમાં થયેલ ફેરફાર માટે નીરીક્ષીત પાના તપાસાય છે',
'watchlistcontains' => 'તમારી ધ્યાનસૂચીમાં $1 {{PLURAL:$1|પાનું|પાનાં}} છે.',
'logentry-delete-delete' => '$1 દ્વારા પાનું $3 {{GENDER:$2|દૂર કરવામાં આવ્યું}}',
'logentry-delete-restore' => '$1 {{GENDER:$2|પુનઃસંગ્રહ}} પાનું $3',
'logentry-delete-event' => '$1 એ {{PLURAL:$5|લૉગ ઘટના|$5 લૉગ ઘટનાઓ}} ની દ્રશ્યતા $3 પર {{GENDER:$2|બદલેલ}} છે: $4',
-'logentry-delete-revision' => '$1 બદલાઈ ના દૃશ્યતા {{PLURAL: $5 | સુધારણા | $5 આવૃત્તિઓ}} $3 પાનાં પર: $4',
-'logentry-delete-event-legacy' => '$1 બદલાઈ $3 પર લોગ ઘટનાઓ દૃશ્યતા',
-'logentry-delete-revision-legacy' => '$1 બદલાઈ પાનાં પર આવૃત્તિઓની દૃશ્યતા $3',
+'logentry-delete-revision' => '$1 {{GENDER:$2|બદલેલ}} બદલાઈ ના દૃશ્યતા {{PLURAL: $5 | સુધારણા | $5 આવૃત્તિઓ}} $3 પાનાં પર: $4',
+'logentry-delete-event-legacy' => '$1 {{GENDER:$2|બદલેલ}} બદલાઈ $3 પર લોગ ઘટનાઓ દૃશ્યતા',
+'logentry-delete-revision-legacy' => '$1 {{GENDER:$2|બદલેલ}} બદલાઈ પાનાં પર આવૃત્તિઓની દૃશ્યતા $3',
'logentry-suppress-delete' => '$1 એ $3 પાનું {{GENDER:$2|દબાવ્યું}}',
-'logentry-suppress-event' => '$1 (છાની માહિતી) બદલાઈ {{PLURAL: $5 | લોગ ઘટના | $5 લોગ}} ની દ્રશ્યતા $3 : $4',
-'logentry-suppress-revision' => '$1 બદલાઈ ના દૃશ્યતા {{PLURAL: $5 | આવૃત્તિ એ | $5 આવૃત્તિઓ}}: $4 $3 પાનાં પર',
-'logentry-suppress-event-legacy' => '$1 ગુપ્ત બદલો $3 પર લોગ ઘટનાઓ દૃશ્યતા',
-'logentry-suppress-revision-legacy' => '$1 ગુપ્ત બદલાઈ પાનાં પર આવૃત્તિઓની દૃશ્યતા $3',
+'logentry-suppress-event' => '$1 (છાની માહિતી) {{GENDER:$2|બદલેલ}} બદલાઈ {{PLURAL: $5 | લોગ ઘટના | $5 લોગ}} ની દ્રશ્યતા $3 : $4',
+'logentry-suppress-revision' => '$1 àª\9bાનà«\80 માહિતà«\80 {{GENDER:$2|બદલà«\87લ}} બદલાàª\88 ના દà«\83શà«\8dયતા {{PLURAL: $5 | àª\86વà«\83તà«\8dતિ àª\8f | $5 àª\86વà«\83તà«\8dતિàª\93}}: $4 $3 પાનાàª\82 પર',
+'logentry-suppress-event-legacy' => '$1 ગુપ્ત {{GENDER:$2|બદલેલ}} બદલો $3 પર લોગ ઘટનાઓ દૃશ્યતા',
+'logentry-suppress-revision-legacy' => '$1 ગુપ્ત {{GENDER:$2|બદલેલ}} બદલાઈ પાનાં પર આવૃત્તિઓની દૃશ્યતા $3',
'revdelete-content-hid' => 'સામગ્રી છુપાયેલા',
'revdelete-summary-hid' => 'ફેરફાર સાર છુપાયેલા',
'revdelete-uname-hid' => 'વપરાશકર્તા નામ છુપાયેલા',
'revdelete-uname-unhid' => 'વપરાશકર્તા નામ છુપાવેલ નથીં',
'revdelete-restricted' => 'પ્રબઁધકોના ફેરફાર કરવા પર પ્રતિબંધ મુકાયો',
'revdelete-unrestricted' => 'પ્રબંધકોના ફેરફાર કરવા પર પ્રતિબંધ હટાવાયો.',
-'logentry-move-move' => '$1એ પાના $3ને $4 પર ખસેડ્યું',
+'logentry-move-move' => '$1એ {{GENDER:$2|ખસેડાયું }} પાના $3ને $4 પર ખસેડ્યું',
'logentry-move-move-noredirect' => '$1એ દિશાનિર્દેશન છોડ્યા વગર પાના $3ને $4 પર વાળ્યું',
'logentry-move-move_redir' => '$1એ દિશાનિર્દેશન કરીને પાના $3ને $4 પર ખસેડ્યું',
'logentry-move-move_redir-noredirect' => '$1એ દિશાનિર્દેશન કરીને પાના $3ને $4 પર વાળ્યું પણ પાછળ દિશાનિર્દેશન છોડ્યું નહી',
'disclaimers' => 'Jiooldeyderyn',
'disclaimerpage' => 'Project:Obbalys cadjin',
'edithelp' => 'Cooney reaghee',
-'edithelppage' => 'Help:Reaghey',
'helppage' => 'Help:Cummal',
'mainpage' => 'Ard-ghuillag',
'mainpage-description' => 'Ard-ghuillag',
'prevn' => '{{PLURAL:$1|$1}} roish shoh',
'nextn' => 'nah {{PLURAL:$1|$1}}',
'viewprevnext' => 'Jeeagh er ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Cummal',
'searchprofile-project' => 'Duillagyn Coonee as Shalee',
'search-result-size' => "$1 ({{PLURAL:$2|1 fockle|$2 'ockle|$2 'ockle|$2 focklyn}})",
'search-result-score' => 'Bentynys: $1%',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Lheead',
'exif-imagelength' => 'Yrjid',
'exif-ycbcrpositioning' => 'Soie Y as C',
'version-license' => 'Kiedoonys',
'version-software-version' => 'Lhieggan',
-# Special:FilePath
-'filepath-page' => 'Coadan:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Ennym y choadan:',
'fileduplicatesearch-submit' => 'Ronsee',
'tog-shownumberswatching' => "A nuna adadin ma'aikata masu bin sawun wannan shafi",
'tog-oldsig' => 'Rigya-ganin sa-hannu da ake da shi',
'tog-fancysig' => 'A ɗauki matanin sa-hannu a matsayin matanin Wiki (ba tare da mahaɗin otomatik ba)',
-'tog-externaleditor' => 'Bisa manufa, a yi amfani da editan matani daban (zuwa ga ƙwararri: kuna buƙatar sauya saitin kwamfyutarku)',
-'tog-externaldiff' => 'Bisa manufa, a yi amfani da kwatantau daban (zuwa ga ƙwararri: kuna buƙatar sauya saitin kwamfyutarku)',
'tog-showjumplinks' => 'A lamunta mahaɗan "a tsallaka zuwa"',
'tog-uselivepreview' => 'A yi amfani da rigya-gani mai sauƙi (ana buƙatar JavaScript) (hajar gwaji)',
'tog-forceeditsummary' => 'A gargaɗe ni idan na ajiye kangon fili na taƙaitawa',
# Special:ListGroupRights
'listgrouprights-members' => '(jerin mambobi)',
-# E-mail user
+# Email user
'emailuser' => "Aika wa wannan ma'aikaci imel",
# Watchlist
'tog-ccmeonemails' => '當亻厓寄電子郵件分其他用戶時,也寄一份副本到亻厓嘅信箱',
'tog-diffonly' => '對比版本毋同時下背毋展示頁面內容',
'tog-showhiddencats' => '展示隱藏分類',
-'tog-norollbackdiff' => '执行回退後毋顯示差異',
+'tog-norollbackdiff' => '执行回退後毋顯示差別',
'tog-useeditwarning' => '當離開頁面之時變更還吂儲存,請提醒𠊎',
'underline-always' => '總係使用',
'category-empty' => "''邇隻分類目前還吂包含頁面或者媒體文件。''",
'hidden-categories' => '$1隻隱藏分類',
'hidden-category-category' => '隱藏分類',
-'category-subcat-count' => '{{PLURAL:$2|é\82\87é\9a»å\88\86é¡\9eæ\9c\89以ä¸\8bä¸\80é\9a»å\90å\88\86é¡\9eã\80\82|é\82\87é\9a»å\88\86é¡\9eæ\9c\89$2é\9a»å\90å\88\86é¡\9eï¼\8c以ä¸\8b列出矣$1隻。}}',
-'category-subcat-count-limited' => 'é\82\87é\9a»å\88\86é¡\9eæ\9c\89以ä¸\8b $1 隻子分類。',
-'category-article-count' => '{{PLURAL:$2|æ\9c¬å\88\86é¡\9eæ\9c\89以ä¸\8bä¸\80é\9a»é \81é\9d¢ã\80\82|æ\9c¬å\88\86é¡\9eæ\9c\89$2é\9a»é \81é\9d¢ï¼\8c以ä¸\8b列出矣$1隻。}}',
-'category-article-count-limited' => 'é\82\87é\9a»å\88\86é¡\9eæ\9c\89以ä¸\8b $1 隻頁面。',
-'category-file-count' => '{{PLURAL:$2|é\82\87é\9a»å\88\86é¡\9eæ\9c\89以ä¸\8bä¸\80é\9a»æ\96\87件ã\80\82|é\82\87é\9a»å\88\86é¡\9eæ\9c\89$2é\9a»æ\96\87件ï¼\8c以ä¸\8b列出矣$1隻。}}',
-'category-file-count-limited' => '邇隻分類有 $1 隻文件。',
+'category-subcat-count' => '{{PLURAL:$2|é\82\87é\9a»å\88\86é¡\9eæ\9c\89ä¸\8bè\83\8cä¸\80é\9a»å\90å\88\86é¡\9eã\80\82|é\82\87é\9a»å\88\86é¡\9eæ\9c\89$2é\9a»å\90å\88\86é¡\9eï¼\8cä¸\8bè\83\8c列出矣$1隻。}}',
+'category-subcat-count-limited' => 'é\82\87é\9a»å\88\86é¡\9eæ\9c\89ä¸\8bè\83\8c$1隻子分類。',
+'category-article-count' => '{{PLURAL:$2|æ\9c¬å\88\86é¡\9eæ\9c\89ä¸\8bè\83\8cä¸\80é\9a»é \81é\9d¢ã\80\82|æ\9c¬å\88\86é¡\9eæ\9c\89$2é\9a»é \81é\9d¢ï¼\8cä¸\8bè\83\8c列出矣$1隻。}}',
+'category-article-count-limited' => 'é\82\87é\9a»å\88\86é¡\9eæ\9c\89ä¸\8bè\83\8c$1隻頁面。',
+'category-file-count' => '{{PLURAL:$2|é\82\87é\9a»å\88\86é¡\9eæ\9c\89ä¸\8bè\83\8cä¸\80é\9a»æ\96\87件ã\80\82|é\82\87é\9a»å\88\86é¡\9eæ\9c\89$2é\9a»æ\96\87件ï¼\8cä¸\8bè\83\8c列出矣$1隻。}}',
+'category-file-count-limited' => '邇隻分類有$1隻文件。',
'listingcontinuesabbrev' => '續',
'index-category' => '既索引嘅頁面',
'noindex-category' => '還無索引嘅頁面',
'jumpto' => '跳轉到:',
'jumptonavigation' => '導航',
'jumptosearch' => '搜尋',
-'view-pool-error' => '毋好意思,太多用戶嘗試緊流覽邇頁,使服務器超出負擔。請等多一刻再嘗試。
+'view-pool-error' => '好抱歉,太多用戶嘗試緊流覽邇頁,使服務器超出負擔。請等多一刻再嘗試。
$1',
'pool-timeout' => '等待鎖定超時',
'disclaimers' => '免責聲明',
'disclaimerpage' => 'Project:一般免責聲明',
'edithelp' => '編寫幫手',
-'edithelppage' => 'Help:編寫',
'helppage' => 'Help:目錄',
'mainpage' => '頭頁',
'mainpage-description' => '頭頁',
請在數分鐘後再嘗試。',
'protectedpagetext' => '邇隻頁面已經分人保護以防止編輯或其他操作。',
'viewsourcetext' => '汝做得查看並複製本頁面嘅源碼:',
-'viewyourtext' => "汝可以查看並複製'''汝對邇隻頁面作出編輯後'''嘅源代碼:",
+'viewyourtext' => "汝可以查看並複製'''汝對邇隻頁面作出編寫後'''嘅源代碼:",
'protectedinterface' => '邇頁提供此wiki軟體嘅介面文字,其已畀保護以防止惡意修改。
假使想修改所有wiki嘅翻譯,請到[//translatewiki.net/ translatewiki.net]上嘅MediaWiki本地化計畫。',
-'editinginterface' => "'''警告:'''汝今下編寫緊嘅頁面係用於提供軟體嘅介面文字。
-改變此頁將影響其他在邇隻wiki上嘅用戶介面外觀。
-å¦\82欲修æ\94¹æ\89\80æ\9c\89wikiå\98\85ç¿»è¯ï¼\8cè«\8bå\88°[//translatewiki.net/ translatewiki.net]ä¸\8aç\9a\84MediaWikiæ\9c¬å\9c°å\8c\96è¨\88ç\95«。",
+'editinginterface' => "'''警告:'''汝今下編寫緊嘅頁面係用於提供軟件嘅界面文字。
+改變邇頁將影響其他在邇隻wiki上嘅用戶界面外觀。
+å\81\87使æ\84\9bä¿®æ\94¹æ\89\80æ\9c\89wikiå\98\85ç¿»è¯ï¼\8cè«\8bå\88°[//translatewiki.net/ translatewiki.net]ä¸\8aå\98\85MediaWikiæ\9c¬å\9c°å\8c\96è¨\88å\8a\83。",
'sqlhidden' => '(隱藏SQL查詢)',
'cascadeprotected' => '邇隻頁面已經畀保護,因為邇隻頁面被以下已標註"聯鎖保護"嘅{{PLURAL:$1|一個|多個}}畀保護頁面包含:
$2',
'invalidtitle-knownnamespace' => '使用名字空間「$2」與文本「$3」嘅無效標題',
'invalidtitle-unknownnamespace' => '使用未知名字空間編號$1與文本“$2”嘅無效標題',
'exception-nologin' => '還吂登入',
-'exception-nologin-text' => '你愛登錄本wiki正做得查閲邇頁或進行操作。',
+'exception-nologin-text' => '你愛登入本wiki正做得查閲邇頁或進行操作。',
# Virus scanner
'virus-badscanner' => "損壞設定: 未知嘅病毒掃瞄器: ''$1''",
'createacct-benefit-body1' => '$1次編寫',
'createacct-benefit-body2' => '$1頁',
'createacct-benefit-body3' => '近期$1隻貢獻人',
-'badretype' => '汝所撳入嘅密碼並無相同',
+'badretype' => '汝所撳入嘅密碼並毋相同',
'userexists' => '汝所填入嘅用戶名稱已經存在。
請另選一隻名稱。',
'loginerror' => '登入差錯',
'nocookieslogin' => '{{SITENAME}}用cookie登入。汝已停用cookie。請啓用cookie後再試一擺。',
'nocookiesfornew' => '邇隻用戶嘅賬戶未建立,亻厓兜無法度確認其嘅來源。
請確定汝已經開啟cookies,重新載入後再試一擺。',
-'noname' => '汝還無輸入一隻有效嘅用戶名。',
+'noname' => '汝還吂輸入一隻有效嘅用戶名。',
'loginsuccesstitle' => '登入成功',
'loginsuccess' => '汝今下以"$1"嘅身份在{{SITENAME}}登入。',
'nosuchuser' => '尋毋到用戶 "$1"。
檢查汝嘅拼寫,或者用下面嘅表格[[Special:UserLogin/signup|建立一隻新賬號]]。',
'nosuchusershort' => '無有喊做“$1”嘅用戶。請檢查汝輸入嘅文字係毋係有差錯。',
'nouserspecified' => '汝愛指定一隻用戶名。',
-'login-userblocked' => '邇隻用戶已畀封鎖。毋做得登入。',
+'login-userblocked' => '邇隻用戶已分封鎖。毋做得登入。',
'wrongpassword' => '汝輸入嘅密碼有錯,請再試一擺。',
-'wrongpasswordempty' => '還無輸入密碼!請重試。',
+'wrongpasswordempty' => '還吂輸入密碼!請重試。',
'passwordtooshort' => '汝嘅密碼毋得少過$1隻字符。',
'password-name-match' => '汝嘅密碼必須撈汝嘅用戶名毋相同。',
-'password-login-forbidden' => '邇隻用戶名稱及密碼嘅使用係畀禁止嘅。',
+'password-login-forbidden' => '邇隻用戶名稱及密碼嘅使用係分禁止嘅。',
'mailmypassword' => '用電郵寄新密碼分亻厓',
'passwordremindertitle' => '{{SITENAME}}嘅新臨時密碼',
'passwordremindertext' => '有人(可能係汝本人,來自IP地址$1)已請求{{SITENAME}}嘅新密碼 ($4)。
係話邇隻動作係汝所指示嘅,汝就愛立即登入並選擇一隻新嘅密碼。
汝嘅臨時密碼將於{{PLURAL:$5|一|$5}}日之內過期。
-å¦\82æ\9e\9c係其他人發出邇隻請求,或者汝已經回想起汝嘅密碼,故所毋準備改變其,
+å\81\87使係其他人發出邇隻請求,或者汝已經回想起汝嘅密碼,故所毋準備改變其,
汝可以忽略略邇條消息並且繼續使用汝嘅舊密碼。',
'noemail' => '用戶“$1”無登記電子郵件地址。',
'noemailcreate' => '汝愛提供一隻有效嘅電子郵件地址。',
# Special:PasswordReset
'passwordreset' => '重設密碼',
-'passwordreset-text' => '完成邇隻表格以重置汝嘅密碼。',
'passwordreset-legend' => '重置密码',
'passwordreset-disabled' => '邇隻維基上已禁止矣重設密碼。',
'passwordreset-emaildisabled' => '電子郵件功能在此 wiki 上已禁用。',
-'passwordreset-pretext' => '{{PLURAL:$1||輸入下列其中一隻}}',
'passwordreset-username' => '用戶名:',
'passwordreset-domain' => '域名:',
'passwordreset-capture' => '查看生成嘅電子郵件係無?',
'template-protected' => '(保護)',
'template-semiprotected' => '(半保護)',
'hiddencategories' => '邇頁屬於$1隻隱藏分類嘅成員:',
-'edittools' => '<!-- 邇肚嘅文字將分展示在編輯和上傳表單以下。 -->',
+'edittools' => '<!-- 邇肚嘅文字將分展示在編寫撈上傳表單以下。 -->',
'nocreatetext' => 'Chhṳ́ mióng-chham han-chṳ chhóng-chho sîn hong-mien ke kûng-yung. ngì khó-yî fán-fì pin phiên-cho yí-kîn yû ke hong-mien, fe̍t-chá [[Special:UserLogin|tên-liu̍k fe̍t-he chhóng-kien sîn chong-fu]].',
'nocreate-loggedin' => '汝並無權限去創建新頁面。',
'permissionserrors' => '權限差錯',
'viewprevnext' => '查看($1 {{int:pipe-separator}} $2)($3)',
'searchmenu-exists' => "'''在邇隻wiki上已經有一頁喊做“[[:$1]]”。'''",
'searchmenu-new' => "'''在本wiki上建立邇隻頁面“[[:$1]]”!'''",
-'searchhelp-url' => 'Help:目錄',
'searchprofile-articles' => '內容頁面',
'searchprofile-project' => '幫助撈計劃頁面',
'searchprofile-images' => '多媒體',
'filetype-badmime' => 'MIME類別“$1”毋係准許嘅文件格式。',
'filetype-missing' => '邇隻文件名並無擴展名(像“.jpg”)。',
'large-file' => '建議文件大細毋超過$1;本文件大細係$2。',
-'largefileserver' => 'Liá-ke tóng-on ke thai-séu fu̍k-chhiùng-hi fûn-phi yún-chún ke thai-séu hàn-yeu thai.',
-'emptyfile' => 'Ngì só song-chhòn ke tóng-on put chhùn-chhai. Liá khó-nèn he chhut-yì tóng-on miàng chho-ngu. Chhiáng kiám-chhà ngì he-feu chṳ̂n yeu song-chhòn chhṳ́ tóng-on.',
-'fileexists' => 'Yí-kîn chhùn-chhai siông-thùng miàng-chhṳ̂n ke tóng-on, kó-yèn ngì mò-fap khok-thin ngì he-feu yeu kói-pien kì, chhiáng kiám-chhà <strong>[[:$1]]</strong>.
-[[$1|thumb]]',
-'fileexists-extension' => 'Yit-ke siông-sṳ tóng-miàng ke tóng-on yí-kîn chhùn-chhai: [[$2|thumb]]
-* Song-chhòn tóng-on ke tóng-miàng: <strong>[[:$1]]</strong>
-* Hien-chhai yû tóng-on ke tóng-miàng: <strong>[[:$2]]</strong>
-Chhiáng sién-chet yit-ke put-thùng ke miàng-sṳ.',
-'fileexists-thumbnail-yes' => "Liá-ke tóng-on chhin-chhiong he yit-pu thù-hìn ke suk-thù pán-pún ''(suk-thù)''. [[$1|thumb]]
-Chhiáng kiám-chhà chhîn-chhú ke tóng-on <strong>[[:$1]]</strong>.
-Kó-yèn kiám-chhà heu ke tóng-on he khiung-thùng ngièn-pún thù-hiong ke thai-séu he yit-yong, chhiu put-yung song-chhòn tô yit-puk suk-thù.",
-'file-thumbnail-no' => "Ke tóng-on he yî <strong>$1</strong> khôi-sṳ́.
-Hó-chhiong yit-puk thù-hìn ke suk-thù pán-pún ''(thù-hìn)''.
-Kó-yèn ngì yû liá-ke thù-hìn ke vàn-cháng thai-séu.",
-'fileexists-forbidden' => '既存在相同名稱个檔案,且毋可以覆蓋;請返回並用一隻新名稱來上傳邇隻檔案。[[File:$1|thumb|center|$1]]',
-'fileexists-shared-forbidden' => '在共享檔案庫中既存在同名檔案。
-係話汝仍然想愛上載其个話,請返回並用一隻新个名稱來上傳邇隻檔案。[[File:$1|thumb|center|$1]]',
-'uploadwarning' => 'Sông-chai kín-ko',
-'savefile' => 'Pó-chhùn vùn-khien',
+'largefileserver' => '邇隻文件大細比服務器配置允許嘅大細還愛大。',
+'emptyfile' => '汝所上傳嘅文件毋存在。邇可能係由於文件名鍵入錯誤。請檢查汝係毋係真嘅愛上傳邇隻文件。',
+'fileexists' => '已存在同名嘅文件,假使汝無法確定汝係毋係愛改變其,請檢查<strong>[[:$1]]</strong>。 [[$1|thumb]]',
+'fileexists-extension' => '一隻相似名稱嘅文件已經存在: [[$2|thumb]]
+* 上傳文件嘅名: <strong>[[:$1]]</strong>
+* 現有文件嘅名: <strong>[[:$2]]</strong>
+請選擇一隻毋同嘅名。',
+'fileexists-thumbnail-yes' => "邇隻文件好像係一張圖片嘅縮圖版本''(縮圖)''。 [[$1|thumb]]
+請檢查清楚邇文件<strong>[[:$1]]</strong>。
+假使檢查後嘅文件係撈原本圖片嘅大細係共樣嘅話,就毋用再上傳多一張縮圖。",
+'file-thumbnail-no' => "文件名以<strong>$1</strong>開始。其好像某張圖片嘅縮細版本''(縮圖)''。
+假使汝有邇圖片嘅完整大細版本,請上傳其;否則請修改文件名。",
+'fileexists-forbidden' => '既存在同名嘅文件,且毋可以覆蓋;請返回並用一隻新名來上傳邇隻文件。[[File:$1|thumb|center|$1]]',
+'fileexists-shared-forbidden' => '在共享文件庫中既存在同名文件。
+係話汝仍然想愛上載其嘅話,請返回並用一隻新名來上傳邇隻文件。[[File:$1|thumb|center|$1]]',
+'uploadwarning' => '上傳警告',
+'savefile' => '保存文件',
'uploadedimage' => '已上傳“[[$1]]”',
-'uploaddisabled' => 'Mò-fap song-chhòn',
+'uploaddisabled' => '上傳己停用。',
'uploaddisabledtext' => 'Tóng-on song-chhòn chhai chhṳ́ miong-chham put hí-khó yung.',
-'php-uploaddisabledtext' => 'PHP 文件上載已經停用。請檢查 file_uploads 設定。',
-'uploadscripted' => 'Ke tóng-on pâu-hàm khó-nèn pûn mióng-lu-hi chho-ngu kié-sṳt ke HTML fe̍t-chá kiok-pún thoi-me̍t.',
-'uploadvirus' => 'Ke-tóng-on yû pâu-hàm phiang-thu̍k! Siòng-se chhìn-khóng: $1',
+'php-uploaddisabledtext' => 'PHP文件上傳已經停用。請檢查file_uploads設定。',
+'uploadscripted' => '邇文件包含可能分網絡瀏覽器錯誤解釋嘅HTML或腳本代碼。',
+'uploadvirus' => '邇文件包含有病毒!
+詳情:$1',
'sourcefilename' => '來源文件名',
'destfilename' => '目標文件名',
'watchthisupload' => '監視本文件',
-'filewasdeleted' => 'Chṳ̂-chhièn yí-kîn yû yit-ke thùng-miàng tóng-on pûn song-chhòn heu yu-pûn chhù-thet. Chhai song-chhòn chhṳ́ tóng-on chṳ̂-chhièn sî-yeu kiám-chhà $1.',
-'upload-success-subj' => 'Sông-chhòn sṳ̀n-kûng',
+'filewasdeleted' => '早先已經有一隻同名文件分上傳後又分刪除矣。在上傳邇文件之前汝愛檢查$1。',
+'upload-success-subj' => '上傳成功',
-'upload-proto-error' => 'Hia̍p-ngi chho-ngu',
-'upload-proto-error-text' => 'Yén-chhàng song-chhòn yêu-khiù URL yung <code>http://</code> fe̍t-chá <code>ftp://</code> khôi-thèu.',
-'upload-file-error' => 'Nui-phu chho-ngu',
+'upload-proto-error' => '協議毋著',
+'upload-proto-error-text' => '遠程上傳要求URL以<code>http://</code>或 <code>ftp://</code>開頭。',
+'upload-file-error' => '內部差錯',
'upload-file-error-text' => '當嘗試在服務器上建立臨時檔案時發生內部差錯。請撈[[Special:ListUsers/sysop|管理員]]聯繫。',
-'upload-misc-error' => 'Vù-tî ke song-chhòn chho-ngu',
+'upload-misc-error' => '吂知嘅上傳差錯',
'upload-misc-error-text' => '在上傳時發生還吂知嘅錯誤。請驗証使用矣正確並可訪問嘅 URL,然後重新嘗試。假使問題還係存在,請撈[[Special:ListUsers/sysop|管理員]]聯繫。',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
-'upload-curl-error6' => 'Mò-fap fóng-mun URL',
-'upload-curl-error6-text' => 'Mò-fap fóng-mun só thì-kiûng ke URL. Chhiáng chai-chhṳ kiám-chhà ke-URL he-féu chṳn-khok, pin mióng-chham ke fóng-mun he-féu chṳn-sòng.',
-'upload-curl-error28' => 'Sông-chhòn chhêu-ko sṳ̀-kiên',
-'upload-curl-error28-text' => 'Mióng-chham fì-yin sṳ̀-kiên ko-chhòng. Chhiáng kiám-chhà chhṳ́ mióng-chham ke fóng-mun he-feu chṳn-sòng, chai chin-hàng sòng-chhṳ. Ngì khó-nèn sî-yeu chhai mióng-lu fóng-mun khûng-hàn sṳ̀-kiên chai-lòi chin-hàng sòng-chhṳ.',
+'upload-curl-error6' => '無法訪問URL',
+'upload-curl-error6-text' => '無法訪問所提供嘅URL。請再次檢查邇URL係毋係正確,並且網站嘅訪問係毋係正常。',
+'upload-curl-error28' => '上傳超時',
+'upload-curl-error28-text' => '網站回應時間過長。請檢查邇網站嘅訪問係毋係正常,過一陣再試。汝可能愛在網路訪問有閒時節再試。',
'license' => '授權:',
'license-header' => '授權',
-'nolicense' => 'Mò-yû sién-thin',
-'upload_source_url' => '(Yit-ke yû-háu ke, hí-khó kûng-khôi fóng-mun ke URL)',
-'upload_source_file' => '(ngì thien-nó chûng ke tóng-on)',
+'nolicense' => '無有選定',
+'upload_source_url' => ' (一隻有效、做得公開訪問嘅URL)',
+'upload_source_file' => ' (在汝電腦上嘅一隻文件)',
# Special:ListFiles
-'listfiles_search_for' => 'On-cheu thù-chhiong miàng-chhṳ̂n sêu-chhà:',
-'imgfile' => 'tóng-on',
-'listfiles' => 'Tóng-on lie̍t-péu',
-'listfiles_date' => 'Ngit-khì',
-'listfiles_name' => 'Miàng-chhṳ̂n',
-'listfiles_user' => 'Yung-fu',
-'listfiles_size' => 'Thai-séu',
-'listfiles_description' => 'Mèu-sut',
+'listfiles_search_for' => '按媒體名搜尋:',
+'imgfile' => '文件',
+'listfiles' => '文件列表',
+'listfiles_date' => '日期',
+'listfiles_name' => '名',
+'listfiles_user' => '用戶',
+'listfiles_size' => '大細',
+'listfiles_description' => '描述',
# File description page
'file-anchor-link' => '文件',
'filehist' => '文件歷史',
'filehist-help' => '點撳日期/時間來查看當時出現過嘅文件。',
-'filehist-deleteone' => 'chhù-thet',
+'filehist-deleteone' => '刪除',
'filehist-revert' => '恢復',
'filehist-current' => '當前',
'filehist-datetime' => '日期/時間',
'nolinkstoimage' => '無頁面鏈接到本文件。',
'sharedupload' => '本檔案來自於$1,渠可能在其它計劃項目肚分人應用。',
'sharedupload-desc-here' => '邇文件來自於$1,其可能在其它計劃項目肚分應用。
-其在[$2文件描述頁面]遐片上嘅描述在下背展示。',
-'uploadnewversion-linktext' => 'Song-chhòn tóng-on ke sîn pán-pún',
+其在[$2文件描述頁面]介片上嘅描述在下背展示。',
+'uploadnewversion-linktext' => '上傳邇隻文件嘅新版本',
# File deletion
-'filedelete-submit' => 'Chhù-thet',
+'filedelete-submit' => '刪除',
# MIME search
-'mimesearch' => 'MIME chhà-chhìm',
-'mimesearch-summary' => 'Pún vùn-chông sṳ-yung tóng-on MIME lui-hìn ko-li-hi. Sû-ngi̍p: nui-yùng lui-hìn yì-yi <code>image/jpeg</code>.',
-'mimetype' => 'MIME lui-hìn:',
-'download' => 'hâ-chai',
+'mimesearch' => 'MIME搜尋',
+'mimesearch-summary' => '本頁面啟用文件MIME類型過濾器。撳入︰內容類型/子類型,如 <code>image/jpeg</code>。',
+'mimetype' => 'MIME 類型:',
+'download' => '下載',
# Unwatched pages
-'unwatchedpages' => 'Hàn-mò pûn kam-sṳ ke vùn-chông',
+'unwatchedpages' => '吂分監視嘅頁面',
# List redirects
-'listredirects' => 'Chhùng-thin hiong-mien chhîn-tân',
+'listredirects' => '重定向頁面清單',
# Unused templates
-'unusedtemplates' => 'Hàn-mò sṳ́-yung ke mù-pán',
+'unusedtemplates' => '吂使用嘅模板',
'unusedtemplatestext' => '<p>Chhiáng chu-yi khì-thâ mióng-chham khó-nèn chhṳ̍t-chiap theu-ko URL lièn-chiap chhṳ́ thù-hìn, só-yî liá-piên clie̍t-chhut ke thù-hìn yû khó-nèn pûn sṳ́-yung.</p>',
-'unusedtemplateswlh' => 'Khì-thâ lièn-kiet',
+'unusedtemplateswlh' => '其他鏈接',
# Random page
'randompage' => '隨機頁面',
'randompage-nopages' => 'Chhai liá-ke miàng-sṳ khûng-kiên chûng mò-yû hong-mien.',
# Random redirect
-'randomredirect' => 'Sùi-kî chhùng-thin hong-mien',
+'randomredirect' => '隨機重定向頁',
'randomredirect-nopages' => 'Chhai liá-ke miàng-sṳ khûng-kiên mò-yû chhùng-thin hong-mien.',
# Statistics
'statistics' => '統計',
-'statistics-header-users' => 'Yung-fu thúng-kie',
-'statistics-mostpopular' => 'Pûn-ngìn chhà-khon chhṳ-su chui-tô ke vùn-chông',
+'statistics-header-users' => '用戶統計',
+'statistics-mostpopular' => '分查閱次數最多嘅頁面',
'disambiguations' => 'Sêu-hàm fù-chông',
'disambiguationspage' => 'Template:消歧義',
'disambiguations-text' => 'Yî-ha ke hong-mien tû-yû to <b> sêu-hàm fù-chông </b> ke lièn-chiap, than yin-kôi he lièn-to sṳt-tông ke phêu-thì. <br /> Yit-ke hong-mien chiông-voi pûn-ngìn sṳ-vi Sêu-hàm fù-chông kó-yèn kí he lièn-chhṳ [[MediaWiki:disambiguationspage]].',
-'doubleredirects' => 'Sûng chhûng-chhûng thin-hiong',
+'doubleredirects' => '雙重重定向頁',
'doubleredirectstext' => 'Mî yit-hàng pâu-hàm to thi-yit lâu thi-ngi-ke chhûng-thin hong-mien ke lièn-chiap, yî-khi̍p thi-ngi ke chhûng-thin hong-mien ke thi-yit-hàng vùn-sṳ, thûng-sòng hién-sṳ ke he "chṳ̂n-chṳn" ke muk-phêu vùn-chông, ye-he thi-yit-ke chhûng-thin hong-mien yin-kôi chṳ́-hiong ke vùn-chông.',
-'brokenredirects' => 'Sún-fái ke chhûng-thin hiong-hong',
+'brokenredirects' => '損壞嘅重定向頁',
'brokenredirectstext' => 'Yî-ha ke chhûng-thin hiong-hong chṳ́-hiong-ke he mò chhùn-chhai ke hong-mien:',
'brokenredirects-edit' => '編寫',
-'brokenredirects-delete' => 'Chhù-thet',
+'brokenredirects-delete' => '刪除',
-'withoutinterwiki' => 'Mò-yû ngî-ngièn lièn-chiap ke vùn-chông',
-'withoutinterwiki-summary' => 'Yî-ha ke vùn-chông he hàn-mò ngî-ngièn lièn-chiap to khì-thâ ngî-ngièn pán-pún:',
+'withoutinterwiki' => '無有語言鏈接頁面',
+'withoutinterwiki-summary' => '下背嘅頁面還吂有語言鏈接到其它語言版本。',
-'fewestrevisions' => 'Chui-séu siù-chho ke vùn-chông',
+'fewestrevisions' => '最少修訂嘅頁面',
# Miscellaneous special pages
'nbytes' => '$1字節',
-'ncategories' => '$1-ke fûn-lui',
-'nlinks' => '$1-ke lièn-kiet',
+'ncategories' => '$1隻分類',
+'nlinks' => '$1隻鏈接',
'nmembers' => '$1隻成員',
-'nrevisions' => '$1-ke siù-chho',
-'nviews' => '$1-chhṳ khon-kien',
-'specialpage-empty' => 'Pún hong-mien mò-yû nui-yùng .',
-'lonelypages' => 'Kû-yì vùn-chông',
+'nrevisions' => '$1隻修訂版本',
+'nviews' => '$1次瀏覽',
+'specialpage-empty' => '本報告無結果。',
+'lonelypages' => '孤立頁面',
'lonelypagestext' => 'Yî-ha vùn-chông mò-yû lièn-kiet liá-ke wiki chûng ke khì-thâ vùn-chông.',
-'uncategorizedpages' => 'Thai fûn-lui vùn-chông',
-'uncategorizedcategories' => 'Thai fûn-lui lui-phe̍t',
+'uncategorizedpages' => '吂分類頁面',
+'uncategorizedcategories' => '吂歸類分類',
'uncategorizedimages' => 'Thai fûn-lui thù-phién',
-'unusedcategories' => 'Hàn-mò sṳ́-yung ke fûn-lui',
-'unusedimages' => 'Hàn-mò sṳ́-yung thù-hìn',
-'popularpages' => 'Ngie̍t-tiám vùn-chông',
-'wantedcategories' => 'Sî-yeu ke fûn-lui',
-'wantedpages' => 'Thai-yeu hong-mien',
-'mostlinked' => 'Chui-tô lièn-kiet hong-mien',
-'mostlinkedcategories' => 'Chui-tô lièn-kiet fûn-lui',
-'mostcategories' => 'Chui-tô fûn-lui vùn-chông',
+'unusedcategories' => '吂用分類',
+'unusedimages' => '吂用圖片',
+'popularpages' => '熱點頁面',
+'wantedcategories' => '想愛嘅分類',
+'wantedpages' => '等寫頁面',
+'mostlinked' => '最多鏈接頁面',
+'mostlinkedcategories' => '最多鏈接分類',
+'mostcategories' => '最多分類頁面',
'mostimages' => 'Chui-tô lièn-kiet thù-chhiong',
-'mostrevisions' => 'Chui-tô siû-thin vùn-chông',
+'mostrevisions' => '最多修訂版本頁面',
'prefixindex' => '全部有前綴嘅頁面',
-'shortpages' => 'Tón vùn-chông',
-'longpages' => 'Chhòng vùn-chông',
-'deadendpages' => 'Thôn-lièn vùn-chông',
+'shortpages' => '短頁面',
+'longpages' => '長頁面',
+'deadendpages' => '斷鏈頁面',
'deadendpagestext' => 'Yî-ha vùn-chông mò-yû pûn lièn-kiet to liá-ke wiki chûng ke khì-thâ vùn-chông:',
-'protectedpages' => 'Pûn pó-fu ke vùn-chông',
-'protectedpagestext' => 'Yî-ha vùn-chông yí-kîn Pûn pó-fu yî fòng-chṳ́ yì-thung fe̍t-chá sîn-phiên',
-'protectedpagesempty' => 'Chhai liá-ke chhâm-su hâ mò-yû vùn-chông chang-chhai pó-fu.',
-'listusers' => 'Yung-fu lie̍t-péu',
+'protectedpages' => '受保護頁面',
+'protectedpagestext' => '以下頁面已經受保護以防止移動或編寫',
+'protectedpagesempty' => '在邇兜參數下無頁面保護緊。',
+'listusers' => '用戶列表',
'usercreated' => '$1 $2{{GENDER:$3|建立}}',
'newpages' => '新頁面',
-'newpages-username' => 'Yung-fu-miàng:',
-'ancientpages' => 'Chui-khiu ke hong-mien',
+'newpages-username' => '用戶名:',
+'ancientpages' => '最舊頁面',
'move' => '移動',
-'movethispage' => 'Yì-thung pún-chông',
+'movethispage' => '移動本頁',
'unusedimagestext' => 'Chhiáng chu-yi khì-thâ mióng-chham khó-nèn chhṳ̍t-chiap theu-ko URL lièn-chiap thù-chhiong, só-yî liá-piên lie̍t-chhut ke thù-chhiong khó-nèn pûn-ngìn sṳ́-yung.',
-'unusedcategoriestext' => 'Sûi-yèn mò-yû pûn khì-thâ vùn-chông fe̍t-chá fûn-lui só chhái-yung, than lie̍t-péu chûng ke fûn-lui chông chhùn-chhai.',
-'notargettitle' => 'Mò muk-phêu',
-'notargettext' => 'Ngì hàn-mò chṳ́-thin yit-ke muk-phêu vùn-chông fe̍t-chá yung-fu chin-hàng chhṳ́-hong chhâu-chok.',
+'unusedcategoriestext' => '雖然無分其他頁面或者分類所採用,毋過列表肚嘅分類頁依然存在。',
+'notargettitle' => '無目標',
+'notargettext' => '汝還吂指定一隻目標頁面或用戶來進行邇項操作。',
'pager-newer-n' => '新$1次',
'pager-older-n' => '舊$1次',
'booksources' => '網絡書源',
'booksources-search-legend' => '尋找網絡書源',
'booksources-go' => '送出',
-'booksources-text' => 'Yî-ha he yit-fun sîn-sû fe̍t-chá ngi-sú-sû ke lie̍t-péu, pin khó-nèn yû ngì chang-hó chhìm-cháu ke sû ke chin-yit-phu sêu-sit:',
+'booksources-text' => '下背係一份銷售新書或二手書嘅列表,並可能有汝尋找緊嘅書嘅進一步信息:',
# Special:Log
'specialloguserlabel' => 'Yung-fu:',
'speciallogtitlelabel' => 'Phêu-thì:',
'log' => '日誌',
'alllogstext' => 'Lièn-ha̍p hién-sṳ song-chhòn, chhù-chhiang, pó-fu, chhà-fûng yî-khi̍p chham-vu',
-'logempty' => 'Mò-yû siông-thùng ki-liu̍k.',
-'log-title-wildcard' => 'Chhà-chhìm liá-ke vùn-sṳ khôi-sṳ́ ke phêu-thì',
+'logempty' => '在日誌肚無匹配項。',
+'log-title-wildcard' => '搜尋以邇隻文字開頭嘅標題',
# Special:AllPages
'allpages' => '全部頁面',
'alphaindexline' => '$1到$2',
-'nextpage' => 'Hâ yit-chông ($1)',
-'prevpage' => 'Song yit-chông ($1)',
-'allpagesfrom' => 'Hién-sṳ chhiùng chhṳ́-chhu khôi-sṳ́ ke hong-mien:',
-'allpagesto' => 'Hién-sṳ chhiùng-chhṳ́ kiet-suk ke ya̍p:',
+'nextpage' => '下一頁($1)',
+'prevpage' => '上一頁($1)',
+'allpagesfrom' => '顯示從邇處開始嘅頁面:',
+'allpagesto' => '顯示從邇位結束嘅頁面:',
'allarticles' => '全部頁面',
-'allinnamespace' => 'Só-yû ke hong-mien (su̍k-yî $1 miàng-sṳ khûng-kiên)',
-'allnotinnamespace' => 'Só-yû ke hong-mien (put su̍k-yî $1 miàng-sṳ khûng-kiên)',
-'allpagesprev' => 'Chhièn',
-'allpagesnext' => 'Heu',
+'allinnamespace' => '所有頁面(屬於$1名字空間)',
+'allnotinnamespace' => '所有頁面(毋屬於$1名字空間)',
+'allpagesprev' => '前',
+'allpagesnext' => '後',
'allpagessubmit' => '提交',
-'allpagesprefix' => 'Hién-sṳ khí--yû chhṳ́ miàng-sṳ khûng-kiên ke hong-mien:',
-'allpagesbadtitle' => 'Pûn-thin ke hong-mien phêu-thì he fî-fap ke, fe̍t-chá yung-khí yû yit-ke nui-phu ngî-ngièn fe̍t-he nui-phu wiki. Kí khó-nèn pâu-hàm yit-ke fe̍t kien-tô ke put-nèn yung chhai-yî phêu-thì ke sṳ-ngièn.',
+'allpagesprefix' => '顯示有邇前綴(名字空間)嘅頁面:',
+'allpagesbadtitle' => '分定嘅頁面標題係非法嘅,或者有一隻內部語言或內部wiki嘅前綴。其可能包含一隻或還較多毋做得用於標題嘅字符。',
# Special:Categories
'categories' => '分類',
# Special:LinkSearch
'linksearch' => 'Ngoi-phu lièn-chiap',
-'linksearch-ok' => 'Chhìm-cháu',
-'linksearch-line' => '$1 連自 $2',
+'linksearch-ok' => '搜尋',
+'linksearch-line' => '$1連自$2',
# Special:ListUsers
-'listusersfrom' => 'Hién-sṳ yung-fu lie̍t-péu chhiùng:',
-'listusers-submit' => 'Hién-sṳ',
-'listusers-noresult' => 'Cháu put-to yung-fu.',
+'listusersfrom' => '顯示用戶列表從:',
+'listusers-submit' => '展示',
+'listusers-noresult' => '尋毋到用戶',
# Special:ListGroupRights
'listgrouprights-members' => '(成員列表)',
# Email user
-'mailnologin' => 'Mò email thi-tiám',
-'mailnologintext' => 'Ngì pit-sî siên [[Special:UserLogin|tên-ngi̍p]] pin-chhai [[Special:Preferences|chhâm-su sat-chṳ]] chûng yû yit-ke yû-háu ke e-mail thi-tiám chhòi-nèn email khì-thâ yung-fu.',
+'mailnologin' => '無電郵地址',
+'mailnologintext' => '汝必須先[[Special:UserLogin|登入]]
+並在[[Special:Preferences|偏好設定]]
+肚有一隻有效嘅電郵地址正做得發郵件分其他用戶。',
'emailuser' => '電郵聯繫邇隻用戶',
-'emailpage' => 'Email yung-fu',
+'emailpage' => '電郵聯繫用戶',
'emailpagetext' => 'Kó-yèn ke-yung-fu yí-kîn chhai chhâm-su sat-chṳ chông chûng sû-ngi̍p yû-háu ke e-mail thi-tiám, yî-ha ke péu-kak chiông-ki yit-ke sêu-sit pûn ke-yung-fu. Ngì chhai chhâm-su sat-chṳ chûng só sû-ngi̍p ke e-mail thi-tiám chiông chhut-hien chhai email "fat-khien-ngìn" yit-làn-chûng, liá-yong ke-yung-fu chhiu khó-yî fì-fu̍k.',
-'usermailererror' => 'Muk-phêu e-mail thi-tiám fán-fì chho-ngu:',
+'usermailererror' => '目標郵件地址轉頭差錯:',
'defemailsubject' => '{{SITENAME}} Email',
-'noemailtitle' => 'Mò e-mail thi-tiám',
+'noemailtitle' => '電郵地址:',
'noemailtext' => 'Ke-yung-fu hàn-mò chṳ́-thin yit-ke yû-háu ke e-mail thi-tiám, fe̍t-chá sién-chet put chiap-su chhṳ̀-lòi khì-thâ yung-fu ke e-mail.',
'emailfrom' => 'Fat-khien-ngìn',
'emailto' => 'Sû-khien-ngìn',
'emailsubject' => 'Chú-thì',
-'emailmessage' => 'Sin-sit',
-'emailsend' => 'Fat-sung',
-'emailccme' => 'Chiông sêu-sit fat-sung yit-fun to ngô-ke email sin-siông.',
-'emailccsubject' => 'Chiông ngì-ke sêu-sit fu̍k-chṳ to $1: $2',
-'emailsent' => 'Email yí-kîn fat-sung',
-'emailsenttext' => 'Ngì-ke email yí-kîn fat-chhut.',
+'emailmessage' => '消息',
+'emailsend' => '發送',
+'emailccme' => '發送吾消息嘅一份副本到吾電郵信箱。',
+'emailccsubject' => '汝發送分$1嘅消息副本:$2',
+'emailsent' => '電子郵件已發送',
+'emailsenttext' => '汝嘅電子郵件已經發出。',
# Watchlist
'watchlist' => '監視列表',
'mywatchlist' => '監視列表',
'watchlistfor2' => '$1嘅監視列表$2',
-'nowatchlist' => 'Ngì ke kam-sṳ lie̍t-péu he khûng-hî.',
-'watchlistanontext' => 'Chhiáng $1 yî kiám-sṳ fe̍t-chá phiên-chho ngì-ke kam-sṳ lie̍t-péu.',
-'watchnologin' => 'Hàn-mò tên-ngi̍p',
-'watchnologintext' => 'Ngì pit-sî siên [[Special:UserLogin|tên-ngi̍p]] chhòi-nèn kiên-kói ngì-ke kam-sṳ lie̍t-péu.',
+'nowatchlist' => '汝嘅監視列表係空嘅。',
+'watchlistanontext' => '請$1來查看或編寫汝嘅監視列表。',
+'watchnologin' => '還吂登入',
+'watchnologintext' => '汝必須先[[Special:UserLogin|登入]],正做得更改汝嘅監視列表。',
'addedwatchtext' => "Hong-mien \"[[:\$1]]\" yí-kîn pûn kâ-ngi̍p to ngì-ke [[Special:Watchlist|Kam-sṳ chhîn-tân]] chûng. Chiông-lòi yû-kôan chhṳ́ hong-mien khi̍p khì-thâ thó-lun-hong ke ngim-hò siû-cháng chiông-voi chhai hong-mien lie̍t-chhut, song-chhiá hàn-voi chhai [[Special:RecentChanges|Chui-khiûn ke kiên-kói]] chûng ke '''chhû-thí''' hìn-sṳt lie̍t-chhut. Kó-yèn ngì heu-lòi sióng chhiùng hong-mien kam-sṳ chhîn-tân chûng chhîn-chhù, hí-khó tiám-kit thô-hòng thiàu-chûng \"thìn-chṳ́ kam-sṳ\" ke lièn-kiet。",
'removedwatchtext' => 'Vùn-chông "[[:$1]]" yí-kîn chhiùng Ngì kekam-sṳ lie̍t-péu mien-chûng yì-chhù.',
'watch' => '監視',
-'watchthispage' => 'Kam-sṳ pún-chông',
+'watchthispage' => '監視本頁',
'unwatch' => '取消監視',
-'unwatchthispage' => 'Thìn-chṳ́ kam-sṳ',
-'notanarticle' => 'Put-he vùn-chông',
-'watchnochange' => 'Chhai hién-sṳ ke sṳ̀-kiên thon-nui ngì só kam-sṳ ke vùn-chông mò-yû kiên-kói.',
-'watchlist-details' => '毋包含討論頁,汝嘅監視列表上有$1隻頁面。',
-'wlheader-enotif' => '* Yí-kîn khí-thung email thûng-tî kûng-nèn.',
-'wlheader-showupdated' => "* Chhai ngì song-chhṳ kiám-sṳ heu yû pûn chhùng-siû ko ke vùn-chông chiông-voi hién-sṳ vi '''chhû-thí'''.",
-'watchmethod-recent' => 'Kiám-chhà pûn kam-sṳ hong-mien ke chui-khiûn phiên-cho',
-'watchmethod-list' => 'Kiám-chhà chui-khiûn phiên-cho ke pûn kam-sṳ hong-mien.',
-'watchlistcontains' => 'Ngì-ke kam-sṳ lie̍t-péu pâu-hàm $1-ke hong-mien.',
-'iteminvalidname' => "Hong-mien '$1' chho-ngu, mò-háu min-miàng...",
+'unwatchthispage' => '停止監視',
+'notanarticle' => '毋係內容頁面',
+'watchnochange' => '在顯示嘅時間段內汝所監視嘅頁面無更改。',
+'watchlist-details' => '毋包含交流頁,汝嘅監視列表上有$1隻頁面。',
+'wlheader-enotif' => 'Yí-kîn khí-thung email thûng-tî kûng-nèn.',
+'wlheader-showupdated' => "Chhai ngì song-chhṳ kiám-sṳ heu yû pûn chhùng-siû ko ke vùn-chông chiông-voi hién-sṳ vi '''chhû-thí'''.",
+'watchmethod-recent' => '檢查分監視頁面嘅最近編寫',
+'watchmethod-list' => '檢查最近編寫嘅分監視頁面',
+'watchlistcontains' => '汝嘅監視列表包含$1隻頁面。',
+'iteminvalidname' => "頁面'$1'錯誤,無效命名...",
'wlnote' => 'Yî-ha he chui-khiûn <b>$2</b> séu-sṳ̀ nui-ke chui-heu $1-chhṳ chin-siû.',
'wlshowlast' => '展示最近$1隻鐘頭,$2日或$3嘅更改。',
'watchlist-options' => '監視列表選項',
# Displayed when you click the "watch" button and it is in the process of watching
-'watching' => 'Chang-chhai kam-sṳ...',
-'unwatching' => 'Chang-chhai thìn-chṳ́ kam-sṳ',
+'watching' => '監視中...',
+'unwatching' => '停止監視中...',
'watcherrortext' => '更改“$1”嘅監視列表設定時出現差錯。',
-'enotif_mailer' => '{{SITENAME}} email thûng-tî-hi',
-'enotif_reset' => 'Chiông só-yû hong-mien phêu-vi yí-kîn thu̍k-ko.',
-'enotif_impersonal_salutation' => '{{SITENAME}} yung-fu',
-'enotif_lastvisited' => 'Kiám-sṳ ngì song-chhṳ fóng-mun heu ke só-yû kiên-kói chhián chhâm-siòng $1.',
-'enotif_lastdiff' => 'Kiám-chhà kiên-kói chhiáng chhâm-siòng $1.',
-'enotif_anon_editor' => 'ngia̍k-miàng yung-fu $1',
+'enotif_mailer' => '{{SITENAME}}郵件通知器',
+'enotif_reset' => '標記所有頁面做已探訪',
+'enotif_impersonal_salutation' => '{{SITENAME}}用戶',
+'enotif_lastvisited' => '請參詳$1查看汝上次訪問後嘅所有更改。',
+'enotif_lastdiff' => '請參詳$1查看邇次更改。',
+'enotif_anon_editor' => '匿名用戶$1',
'enotif_body' => 'Chhîn-oi ke $WATCHINGUSERNAME, $PAGEEDITOR yí-kîn chhai $PAGEEDITDATE $CHANGEDORCREATED{{SITENAME}} ke $PAGETITLE vùn-chông, chhiáng-to $PAGETITLE_URL kiám-sṳ siên-chhièn pán-pún. $NEWPAGE phiên-si̍p chak-yeu: $PAGESUMMARY $PAGEMINOREDIT lièn-kiê chhṳ́ phiên-si̍p-chá: email: $PAGEEDITOR_EMAIL pún-chham: $PAGEEDITOR_WIKI chhai ngì fóng-mun chhṳ́-chông chṳ̂-chhièn, chiông-lòi ke kiên-kói vù-nèn hiong ngì thûng-tî. Ngì khó-yî chhûng-sat ngì só-yû kam-sṳ vùn-chông ke thûng-tî phêu-ki. {{SITENAME}} thûng-tî ne-thúng -- yeu kói-pien ngì-ke kam-sṳ lie̍t-péu sat-thin, chhiáng chhâm-siòng {{canonicalurl:{{#special:EditWatchlist}}}} chin-yit-phu ke pông-chhu: {{canonicalurl:{{MediaWiki:Helppage}}}}',
-'created' => 'Yí-kîn kien-li̍p',
-'changed' => 'siû-kói liáu',
+'created' => '建立矣',
+'changed' => '更改矣',
# Delete
-'deletepage' => 'Chhù-thet hong-mien',
-'confirm' => 'Khok-ngin',
-'excontent' => 'Nui-yùng pún-lòi he: "$1"',
+'deletepage' => '刪除頁面',
+'confirm' => '確認',
+'excontent' => '內容係:“$1”',
'excontentauthor' => 'Nui-yùng he: "$1" (song-chhiá vì-thu̍k kung-hien-chá he "$2")',
-'exbeforeblank' => 'Pûn chhîn-khûng chhièn ke nui-yùng he: "$1"',
-'exblank' => 'Vùn-chông he hî-khûng',
-'delete-legend' => 'Chhù-thet',
+'exbeforeblank' => '分清空前嘅內容係:“$1”',
+'exblank' => '頁面係空嘅',
+'delete-legend' => '刪除',
'historywarning' => 'Kín-ko: Ngì chiông-yeu chhù-hi ke chông-nui hàm-yû li̍t-sṳ́:',
-'confirmdeletetext' => 'Ngì chiông-voi chhiùng chṳ̂-liau-khu chûng yún-yén chhù-thet yit-ke vùn-chông fe̍t-chá thù-chhiong yî-khi̍p li̍t-sṳ́. Chhiáng khok-thin ngì-yeu chin-hàng chhâu-chok, pin liáu-kié heu-kó, thùng-sṳ̀ ngì-ke hàng-vì fù-ha̍p [[{{MediaWiki:Policy-url}}]].',
+'confirmdeletetext' => '汝即將刪除一隻頁面或圖片撈其嘅歷史。
+請確定汝愛進行邇項操作,並且了解其嘅後果,同時汝嘅行為符合[[{{MediaWiki:Policy-url}}]]。',
'actioncomplete' => '操作完成',
'actionfailed' => '操作失敗',
-'deletedtext' => '"$1" yí-kîn pûn chhù-thet. Chui-khiûn chhù-hi ke ki-liu̍k chhiáng chhâm-siòng $2.',
+'deletedtext' => '“$1”已經分刪除。最近刪除嘅記錄請參見$2。',
'dellogpage' => '刪除日誌',
-'dellogpagetext' => 'Yî-ha he chui-khiûn chhù-thet ke ki-liu̍k lie̍t-péu.',
-'deletionlog' => 'Chhù-chhiang ki-liu̍k',
-'reverted' => 'Fî-fu̍k to chó-khì pán-pún',
-'deletecomment' => 'Ngièn-yîn:',
-'deleteotherreason' => 'Khì-thâ/fu-kâ ke lî-yù:',
-'deletereasonotherlist' => 'Khì-thâ lî-yù',
+'dellogpagetext' => '下背係最近刪除嘅列表。',
+'deletionlog' => '刪除日誌',
+'reverted' => '恢復到早期版本',
+'deletecomment' => '理由:',
+'deleteotherreason' => '其它/附加理由:',
+'deletereasonotherlist' => '其它理由',
# Rollback
-'rollback' => 'Fî-fu̍k',
-'rollback_short' => 'Fî-fu̍k',
+'rollback' => '編寫倒轉頭',
+'rollback_short' => '倒轉頭',
'rollbacklink' => '打轉頭',
-'rollbackfailed' => 'Mò-fap fî-fu̍k',
-'cantrollback' => 'Vù-fap fî-fu̍k phiên-cho; chui-heu ke kung-hien-chá he pún vùn-chông ke vì-thu̍k chok-chá.',
+'rollbackfailed' => '無法倒轉頭',
+'cantrollback' => '編寫無法打轉頭;最後嘅貢獻者人本文嘅唯一作者。',
'alreadyrolled' => 'Mò-fap fî-fu̍k yù [[User:$2|$2]] ([[User talk:$2|thó-lun]]) chin-hàng ke [[$1]] ke chui-heu phiên-si̍p; khì-thâ ngìn yí-kîn phiên-siá fe̍t-he fî-fu̍k liáu ke-hong. Chui-heu phiên-si̍p-chá: [[User:$3|$3]] ([[User talk:$3|Thó-lun]])。',
'editcomment' => "Phiên-siá sot-mìn he: \"''\$1''\"。",
'revertpage' => 'Fî-fu̍k yù [[Special:Contributions/$2|$2]] ([[User talk:$2|tui-fa]]) ke phiên-cho; kiên-kói fì-fu̍k [[User:$1|$1]] ke chui-heu yit-ke pán-pún',
# Edit tokens
-'sessionfailure' => 'Ngì-ke tên-ngi̍p sṳ-fû yû mun-thì, vi-liáu fòng-chṳ́ sêu-sit pûn làn-chiet, pún-chhṳ chhâu-chok yí-kîn chhí-sêu, chhiáng-on "song-yit-chông" chhùng-sîn chai-ngi̍p.',
+'sessionfailure' => '汝嘅登入會話好像有問題;
+為到防止會話劫持,邇次操作已經畀取消。
+請轉到先前嘅頁面,重新載入邇頁面,然後重試。',
# Protect
'protectlogpage' => '保護日誌',
'protectlogtext' => 'Ha-mien he vùn-chông só-thin lâu chhí-sêu só-thin ke lie̍t-péu. Chhiáng chhâm-kháu [[Special:ProtectedPages|Pó-fu vùn-chông chhîn-tân]] yî-khi̍p kiám-sṳ tông-chhièn chin-hàng ke vùn-chông pó-fu.',
'protectedarticle' => '已保護“[[$1]]”',
-'modifiedarticleprotection' => 'yí-kîn kiên-kói "[[$1]]" ke pó-fu tén-kip',
+'modifiedarticleprotection' => '已經更改“[[$1]]”嘅保護等級',
'unprotectedarticle' => 'yí-kîn kié-chhù pó-fu "[[$1]]"',
-'protect-title' => 'Chang-chhai pó-fu "$1"',
-'prot_1movedto2' => '[[$1]] yì-thung to [[$2]]',
-'protect-legend' => 'Khok-ngin pó-fu',
-'protectcomment' => 'Ngièn-yîn:',
-'protectexpiry' => 'Chûng-chṳ́ sṳ̀-kiên',
-'protect_expiry_invalid' => 'Sû-ngi̍p ke chûng-chṳ́ sṳ̀-kiên mò-háu.',
-'protect_expiry_old' => 'Chûng-chṳ́ sṳ̀-kiên yí-kîn ko-hi.',
-'protect-text' => "Ngì khó-yî chhai liá-piên chhùng-siû tui vùn-chông '''$1''' ke pó-fu kip-phe̍t.",
-'protect-locked-blocked' => "Ngì put-nèn chhai pûn chhà-fûng sṳ̀ kiên-kói pó-fu khi̍p-phe̍t. Yî-ha he '''$1''' hien-sṳ̀ ke pó-fu khi̍p-phe̍t:",
-'protect-locked-dblock' => "Chhai chṳ̂-liau-khu só-thin sṳ̀ mò-fap kiên-kói pó-fu khi̍p-phe̍t.
-Yî-ha he '''$1''' hien-sṳ̀ ke pó-fu khi̍p-phe̍t:",
-'protect-locked-access' => "Ngì-ke chong-fu khièn-han put-nèn kói-chho pó-fu khi̍p-phe̍t, Yî-ha he '''$1''' hien-sṳ̀ ke pó-fu khi̍p-phe̍t:",
-'protect-cascadeon' => 'Yî-ha ke {{PLURAL:$1|yit-ke|tô-ke}} hong-mien pâu-hàm pún vùn-chông ke thùng-sṳ̀, khí-thung liáu lièn-só pó-fu, só-yî pún vùn-chông muk-chhièn ya-he pûn pó-fu, vù-nèn phiên-siá. Ngì hí-khó sat-thin pún hong-mien ke pó-fu khi̍p-phe̍t, than liá put tui lièn-só pó-fu yû yáng-hióng.',
-'protect-default' => 'Yùng-chún só-yû yung-fu',
+'protect-title' => '更改“$1”嘅保護等級',
+'prot_1movedto2' => '[[$1]]移動到[[$2]]',
+'protect-legend' => '確認保護',
+'protectcomment' => '理由:',
+'protectexpiry' => '到期:',
+'protect_expiry_invalid' => '輸入嘅終止時間無效。',
+'protect_expiry_old' => '終止時間既經過去。',
+'protect-text' => "汝做得在邇位瀏覽同修改對頁面'''$1'''嘅保護級別。",
+'protect-locked-blocked' => "汝做毋得在分查封時更改保護級別。
+下背係'''$1'''今下嘅保護級別:",
+'protect-locked-dblock' => "在數據庫鎖定時無法更改保護級別。
+下背係'''$1'''今下嘅保護級別:",
+'protect-locked-access' => "汝嘅賬戶權限做毋得修改保護級別。
+下背係'''$1'''今下嘅保護級別:",
+'protect-cascadeon' => '下背嘅{{PLURAL:$1|一個|多個}}頁面包含緊本頁面嘅同時,啟動矣連鎖保護,故所本頁面目前也分保護,還吂做得編寫。汝做得設定本頁面嘅保護級別,毋過邇並不會對連鎖保護有所影響。',
+'protect-default' => '容許所有用戶',
'protect-fallback' => 'Sî-yeu "$1" ke hí-khó',
'protect-level-autoconfirmed' => 'Kim-chṳ́ sîn-ke lâu hàn-mò chu-chhak ke yung-fu',
'protect-level-sysop' => 'Kón-lî-yèn chôn-cho',
-'protect-summary-cascade' => 'Lièn-só',
-'protect-expiring' => 'Chûng-chṳ́ chhai-yî $1 (UTC)',
-'protect-cascade' => 'Lièn-só pó-fu - pún-chông pâu-hàm ke só-yû hong-mien kiûn yit-phîn pó-fu.',
-'protect-cantedit' => 'Ngì mò-fap kiên-kói liá-ya̍p ke pó-fu tén-kip, yîn-vi ngì mò khièn-han phiên-sip kì.',
-'protect-expiry-options' => '1 séu-sṳ̀:1 hour, 1 thiên:1 day,1 chû:1 week,2 chû:2 weeks,1-ke ngie̍t:1 month,3-ke ngie̍t:3 months,6-ke ngie̍t:6 months,1-ngièn:1 year, yún-kiú:infinite',
-'restriction-type' => 'Khièn-han:',
-'restriction-level' => 'Han-chṳ khi̍p-phe̍t:',
-'minimum-size' => 'Chui-séu thai-séu',
-'maximum-size' => 'Chui-thai thai-séu:',
-'pagesize' => '(Vi-ngièn-chû)',
+'protect-summary-cascade' => '連鎖',
+'protect-expiring' => '終止於$1(UTC)',
+'protect-cascade' => '保護本頁中包含嘅頁面(連鎖保護)',
+'protect-cantedit' => '汝無法更改邇隻頁面嘅保護等級,因為汝無權限去編寫其。',
+'protect-expiry-options' => '1小時:1 hour,1天:1 day,1周:1 week,2周:2 weeks,1隻月:1 month,3隻月:3 months,6隻月:6 months,1年:1 year,永久:infinite',
+'restriction-type' => '權限:',
+'restriction-level' => '限制級別:',
+'minimum-size' => '最細大細',
+'maximum-size' => '最大大細:',
+'pagesize' => '(字節)',
# Restrictions (nouns)
'restriction-edit' => '編寫',
-'restriction-move' => 'Yì-thung',
-'restriction-create' => 'Tshóng-kien',
+'restriction-move' => '移動',
+'restriction-create' => '建立',
# Restriction levels
-'restriction-level-sysop' => 'Chhiòn pó-fu',
-'restriction-level-autoconfirmed' => 'Pan pó-fu',
-'restriction-level-all' => 'Ngim-hò khi̍p-phe̍t',
+'restriction-level-sysop' => '全保護',
+'restriction-level-autoconfirmed' => '半保護',
+'restriction-level-all' => '任何級別',
# Undelete
-'undelete' => 'Fî-fu̍k pûn chhù-hi vùn-chông',
-'undeletepage' => 'Fî-fu̍k pûn chhù-thet vùn-chông',
-'viewdeletedpage' => 'Kiám-sṳ pûn chhù-thet ke vùn-chông',
+'undelete' => '恢復分刪頁面',
+'undeletepage' => '瀏覽及恢復分刪頁面',
+'viewdeletedpage' => '查看分刪除嘅頁面',
'undeletepagetext' => 'Yî-ha vùn-chông yí-kîn pûn chhù-thet, than yî-yèn chhai tóng-on chûng pin khó-yî pûn fî-fu̍k. Tóng-on-khu khó-nèn pûn thin-sṳ̀ chhîn-lî.',
'undeleteextrahelp' => "Fî-fu̍k cháng-ke vùn-chông sṳ̀, chhiáng chhîn-chhù só-yû fu̍k-sién khiông-heu on '''''fî-fu̍k'''''. Fî-fu̍k thi̍t-thin pán-pún sṳ̀, chhiáng sién-chet siông-yin pán-pún chhièn-ke fu̍k-sién khiông-heu on '''''fî-fu̍k'''''. On '''''chhûng-sat''''' chiông chhîn-chhù phìn-lun nui-yùng khi̍p só-yû fu̍k-sién khiông.",
-'undeleterevisions' => '$1 pán-pún chhùn-tong',
+'undeleterevisions' => '$1版本存檔',
'undeletehistory' => 'Kó-yèn ngì fî-fu̍k liáu ke-vùn-chông, só-yû pán-pún chiông-voi pûn fî-fu̍k to siû-thin li̍t-sṳ́ chûng. Kó-yèn pún-chông chhù-hi heu yû yit-ke thùng-miàng ke sîn vùn-chông kien-li̍p, pûn fî-fu̍k ke pán-pún chiông-voi chhṳ̂n-vi kha-sîn ke li̍t-sṳ́, sîn vùn-chông ke tong-chhièn pán-pún chiông mò-fap pûn chhṳ-thung fu̍k-ngièn.',
'undeleterevdel' => 'Kó-yèn pá chui-sîn siû-thin phu-fun chhù-thet, fán chhù-hi phien mò-fap chin-hàng. Kó-yèn ngi-to liá-chúng chhìn-khóng, ngì pit-sî fán-sién fe̍t-chá fán-chhòng chui-sîn yí-kîn chhù-hi ke siû-thin. Tui-yî ngì mò-yû khièn-han hi kiám-sṳ ke siû-thin he mò-fap fî-fu̍k ke.',
-'undeletehistorynoadmin' => 'Liá-ke vùn-chông yí-kîn pûn chhù-thet, chhù-hi ngièn-yîn hién-sṳ chhai hâ-fông phiên-si̍p chak-yeu chûng.
-Pûn chhù-thet chhièn ke só-yû siû-thin pán-pún, lièn-thùng chhù-thet chhièn kung-hien yung-fu tén-tén se-chiet chṳ́-yû kón-lî-yèn khó-yî khon-kien.',
+'undeletehistorynoadmin' => '邇隻頁面已經分刪除,刪除原因顯示在下方編寫摘要肚。分刪除前嘅所有修訂版本,連同刪除前貢獻用戶等等細節單淨管理員做得看見。',
'undelete-revision' => 'Chhù-thet pán-pún $1 chhṳ $2:',
-'undeleterevision-missing' => 'Chhṳ́ pán-pún ke nui-yùng put chṳn-khok fe̍t-chá yí-kîn yì-sṳt. Khó-nèn lièn-kiet chho-ngu, pûn yì-chhù fe̍t-he yí-kîn pûn fî-fu̍k.',
-'undeletebtn' => 'Fî-fu̍k',
+'undeleterevision-missing' => '無效或者丟失嘅修訂版本。汝可能使用矣有差錯嘅鏈接,或者本修訂版本既經分從存檔肚恢復或移除。',
+'undeletebtn' => '恢復',
'undeletelink' => '查看/恢復',
'undeleteviewlink' => '查看',
-'undeletereset' => 'Chhùng-sat',
+'undeletereset' => '重設',
'undeletecomment' => 'Ngièn-yîn:',
-'undeletedrevisions' => '$1-ke siû-thin pán-pún yí-kîn fî-fu̍k',
-'undeletedrevisions-files' => '$1-ke pán-pún lâu $2-ke vùn-khien pûn fî-fu̍k',
-'undeletedfiles' => '$1-ke vùn-khien pûn fî-fu̍k',
+'undeletedrevisions' => '$1隻修訂版本已經恢復',
+'undeletedrevisions-files' => '$1隻版本撈$2隻文件分恢復',
+'undeletedfiles' => '$1隻文件分恢復',
'cannotundelete' => 'Fî-fu̍k sṳt-phai; khó-nèn chṳ̂-chhièn yí-kîn pûn khì-thâ-ngìn fî-fu̍k.',
-'undeletedpage' => "'''$1 yí-kîn pûn fî-fu̍k '''
-
-Chhiáng chhâm-kháu [[Special:Log/delete|chhù-hi ngit-ki]] lòi chhà-chhut chhù-thet khi̍p fî-fu̍k ki-liu̍k.",
-'undelete-header' => 'Kó-yèn yeu chhà-chhut chui-khiûn ke ki-liu̍k chhiáng chhâm-siòng [[Special:Log/delete|Chhù-thet ngit-ki]].',
-'undelete-search-box' => 'Chhìm-cháu yí-kîn chhù-hi vùn-chông',
-'undelete-search-prefix' => 'Hién-sṳ vùn-chông chhṳ:',
-'undelete-search-submit' => 'Chhìm-cháu',
-'undelete-no-results' => 'Chhù-thet ki-liu̍k lî mò-yû fù-ha̍p ke kiet-kó.',
+'undeletedpage' => "'''$1已經分恢復''' 請參考[[Special:Log/delete|刪除日誌]]來查詢刪除撈恢復記錄。",
+'undelete-header' => '假使愛查詢最近嘅記錄請參看[[Special:Log/delete|刪除日誌]]。',
+'undelete-search-box' => '搜尋已刪除頁面',
+'undelete-search-prefix' => '展示頁面自:',
+'undelete-search-submit' => '搜尋',
+'undelete-no-results' => '刪除記錄肚無符合嘅結果。',
# Namespace form on various pages
'namespace' => '名字空間:',
'contributions-title' => '$1嘅用戶貢獻',
'mycontris' => '貢獻',
'contribsub2' => '$1嘅貢獻($2)',
-'nocontribs' => 'Mò-yû chhìm-cháu to fù-ha̍p thi̍t-chṳ̂n ke kiên-kói.',
+'nocontribs' => '毋尋到符合特徵嘅更改。',
'uctop' => '(最新修改)',
'month' => '從邇月(或還較早):',
'year' => '從邇年(或還較早):',
'sp-contributions-newbies' => '單淨展示新建用戶嘅貢獻',
-'sp-contributions-newbies-sub' => 'Sîn-sú',
+'sp-contributions-newbies-sub' => '新手',
'sp-contributions-blocklog' => '封禁日誌',
'sp-contributions-uploads' => '上傳',
'sp-contributions-logs' => '日誌',
'whatlinkshere-page' => '頁面:',
'linkshere' => '下背頁面鏈接到[[:$1]]:',
'nolinkshere' => "無頁面鏈接到'''[[:$1]]'''。",
-'nolinkshere-ns' => 'Chhai só-sién ke miàng-sṳ khûng-kiên nui mò-yû vùn-chông lièn-kiet to[[:$1]].',
+'nolinkshere-ns' => '在所選嘅名字空間肚無頁面連接到[[:$1]]。',
'isredirect' => '重定向頁',
'istemplate' => '包含',
'isimage' => '文件鏈接',
'whatlinkshere-filters' => '過濾器',
# Block/unblock
-'blockip' => 'chhà-fûng IP thi-tiám',
-'blockiptext' => 'Yung ha-mien ke péu-tân kim-chṳ́ lòi-chhṳ mêu-yit thi̍t-thin IP thi-tiám ke kiên-kói hí-khó-khièn. Chṳ́-yû chhai-vi fòng-chṳ́ pho-fái, khi̍p fù-ha̍p [[{{MediaWiki:Policy-url}}|Sú-chet]] ke chhìn-khóng hâ chhòi khó chhái-chhí chhṳ́ hàng-thung. Chhiáng chhai ha-mien sû-ngi̍p yit-ke khí-thí ke lî-yù (chhiong-he yîn-sut yit-ke pûn-ngìn pho-fái ke hong-mien).',
-'ipadressorusername' => 'IP thi-tiám fe̍t-he yung-fu-miàng',
-'ipbexpiry' => 'Khì-han:',
-'ipbreason' => 'Ngièn-yîn:',
-'ipbreasonotherlist' => 'Khì-thâ ngièn-yîn',
-'ipbreason-dropdown' => '*Yit-pân ke fûng-kim lî-yù
-** Su-chhṳ chen-kâ put-sṳ̍t chṳ̂-liau
-** Chhù-thet vùn-chông nui-yùng
-** Ngoi-phu lièn-kiet kóng-ko
-** Chhai vùn-chông chûng chen-kâ mò yi-ngi vùn-sṳ
-** Mò-lî ke hàng-vì, kûng-kit/sâu-yéu phe̍t-ngìn
-** Lam-yung tô-ke chong-ho
-** Put-nèn chiap-su ke yung-fu-miàng',
-'ipbcreateaccount' => 'Chú-chṳ́ chhóng-li̍p sîn chong-ho',
-'ipbenableautoblock' => 'Chhṳ-thung chhà-fûng ke-yung-fu sṳ́-yung-ko ke IP thi-tiám',
-'ipbsubmit' => 'Chhà-fûng ke-yung-fu',
-'ipbother' => 'Khì-thâ sṳ̀-kiên:',
+'blockip' => '封禁用戶',
+'blockiptext' => '用下背嘅表單來禁止來自某一特定IP地址嘅修改許可權。
+單淨在為防止破壞,撈符合[[{{MediaWiki:Policy-url}}|守則]]嘅情況下正做得採取邇行動。
+請在下背輸入一隻具體嘅理由(例如引述一隻分破壞嘅頁面)。',
+'ipadressorusername' => 'IP地址或用戶名:',
+'ipbexpiry' => '期限:',
+'ipbreason' => '原因:',
+'ipbreasonotherlist' => '其他理由',
+'ipbreason-dropdown' => '*一般嘅封禁理由
+** 多次加入虛假資料
+** 刪除頁面內容
+** 外部鏈接廣告
+** 在頁面肚增加無意義文字
+** 無禮嘅行為、攻擊/騷擾別儕
+** 濫用多隻賬號
+** 做毋得接受嘅用戶名',
+'ipbcreateaccount' => '阻止創建新賬號',
+'ipbenableautoblock' => '自動查封邇用戶最後所用嘅IP地址,撈後來試圖編寫所用嘅所有地址',
+'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' => 'khì-thâ',
-'ipbotherreason' => 'Khì-thâ lî-yù:',
+'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-ke thi-tiám mò chṳn-khok.',
-'blockipsuccesssub' => 'chhà-fûng sṳ̀n-kûng',
+'badipaddress' => '無效IP地址',
+'blockipsuccesssub' => '查封成功',
'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] yí-kîn pûn chhà-fûng. <br />Chhâm-siòng [[Special:BlockList|pûn-fûng IP thi-tiám lie̍t-péu]] yî fu̍k-sṳ́m chhà-fûng.',
-'ipb-edit-dropdown' => 'Phiên-siá chhà-fûng ngièn-yîn',
-'ipb-unblock-addr' => 'Kié-chhù fûng-kim $1',
-'ipb-unblock' => 'Kié-chhù kim-fûng yung-fu miàng fe̍t-chá IP thi-tiám',
-'ipb-blocklist' => 'Kiám-sṳ fûng-kim lie̍t-péu',
-'unblockip' => 'Kié-chhù kim-fûng IP thi-tiám',
-'unblockiptext' => 'Yung ha-mien ke péu-tân lòi fî-fu̍k siên-chhièn pûn kim-fûng ke IP thi-tiám ke siá-sû-khièn.',
+'ipb-edit-dropdown' => '編寫查封原因',
+'ipb-unblock-addr' => '解封$1',
+'ipb-unblock' => '解封用戶名或IP地址',
+'ipb-blocklist' => '查看今下嘅封禁',
+'unblockip' => '解封用戶',
+'unblockiptext' => '用下背嘅表單來恢復先前分查封嘅IP地址或用戶嘅寫權限。',
'ipusubmit' => 'Kié-chhù kim-fûng',
-'unblocked' => '[[User:$1|$1]]-ke fûng-kim yí-kîn kié-chhù',
-'unblocked-id' => 'Fûng-kim $1 yí-kîn pûn yì-chhù',
+'unblocked' => '[[User:$1|$1]]已經分解封。',
+'unblocked-id' => '封禁$1已經分移除',
'ipblocklist' => '分封用戶列表',
-'ipblocklist-submit' => 'Chhìm-cháu',
-'infiniteblock' => 'yún-kiú',
+'ipblocklist-submit' => '搜尋',
+'infiniteblock' => '無限期',
'expiringblock' => '$1 $2 to-khì',
-'anononlyblock' => 'Han-chṳ ngia̍k-miàng yung-fu.',
-'noautoblockblock' => 'Kim-yung chhṳ-thung chhà-fûng',
-'createaccountblock' => 'Kim-chṳ́ chhóng-kien chong-ho',
-'ipblocklist-empty' => 'Chhà-fûng lie̍t-péu he khûng-hî.',
-'ipblocklist-no-results' => 'Só yêu-khiù ke IP thi-tiám/yung-fu-miàng mò-yû pûn chhà-fûng.',
+'anononlyblock' => '單淨匿名用戶',
+'noautoblockblock' => '禁用自動查封',
+'createaccountblock' => '禁止創建賬戶',
+'ipblocklist-empty' => '查封列表係空嘅。',
+'ipblocklist-no-results' => '所請求嘅IP地址/用戶名無分查封。',
'blocklink' => '查封',
'unblocklink' => '解封',
'change-blocklink' => '更改封禁',
'blocklogpage' => '查封日誌',
'blocklogentry' => '封禁[[$1]],到期時間係$2$3',
'blocklogtext' => 'Liá-he kôan-yî yung-fu fûng-kim lâu kié-chhù fûng-kim chhâu-chok ke ki-liu̍k. Pûn chhṳ-thung fûng-kim ke IP thi-tiám mò-yû lie̍t-chhut. Chhiáng chhâm-kháu [[Special:BlockList|Pûn chhà-fûng ke IP thi-tiám lâu yung-fu lie̍t-péu]].',
-'unblocklogentry' => '"$1" yí-kîn pûn kié-fûng',
-'block-log-flags-anononly' => 'Han-chṳ ngia̍k-miàng ke yung-fu',
+'unblocklogentry' => '$1已分解封',
+'block-log-flags-anononly' => '單淨匿名用戶',
'block-log-flags-nocreate' => '帳號建立已禁',
-'block-log-flags-noautoblock' => 'Thìn-chṳ́ yung chhṳ-thung fûng-kim',
-'range_block_disabled' => 'Chṳ́-yû kón-lî-yèn chhòi-nèn kien-chho kim-chṳ́ chhà-fûng ke fam-vì.',
-'ipb_expiry_invalid' => 'Mò-háu ke chûng-chṳ́ sṳ̀-kiên.',
+'block-log-flags-noautoblock' => '禁用自動查封',
+'range_block_disabled' => '單淨管理員正做得創建禁止查封嘅範圍。',
+'ipb_expiry_invalid' => '無效嘅終止時間。',
'ipb_already_blocked' => 'Yí-kîn fûng-só "$1"',
-'ipb_cant_unblock' => 'Chho-ngu: Mò-yû fat-hien Block ID $1. Ke-IP khó-nèn yí-kîn pûn kié-fûng.',
-'ip_range_invalid' => 'Mò-háu ke IP fam-vì.',
-'proxyblocker' => 'Thoi-lî fûng-só hi-khí',
-'proxyblockreason' => 'Ngì-ke IP thi-tiám he yit-ke khôi-fong ke thoi-lî, kì yí-kîn pûn fûng-só. Chhiáng lièn-kiê Ngì-ke mióng-chi mióng-lu fu̍k-vu thì-kiûng-sông fe̍t-he kî-su̍t kî-yèn-chá pin lo-tî ke-ngiàm-chhung ke ôn-chhiòn mun-thì.',
-'proxyblocksuccess' => 'Vàn-sṳ̀n.',
+'ipb_cant_unblock' => '差錯: 尋毋到查封ID$1。可能已經解除封禁。',
+'ip_range_invalid' => '無效嘅IP範圍。',
+'proxyblocker' => '代理封鎖器',
+'proxyblockreason' => '汝嘅IP地址係一隻開放嘅代理,其已經分封鎖。請聯繫汝嘅網際網路服務提供商或技術支援者並講佢兜聽邇隻嚴重嘅安全問題。',
+'proxyblocksuccess' => '完成。',
'sorbsreason' => 'Ngì-ke IP chhô-vi pûn DNSBL lie̍t-vi su̍k-yî khôi-fong thoi-lî fu̍k-vu-khí.',
'sorbs_create_account_reason' => 'Ngì-ke IP chhô-vi pûn DNSBL lie̍t-vi su̍k-yî khôi-fong thoi-lî fu̍k-vu-khí. Só-yî ngì mò-fap kien-li̍p chong-ho.',
# Developer tools
-'lockdb' => 'Kim-chṳ́ kiên-kói chṳ̂-liau-khu',
-'unlockdb' => 'Khôi-fong kiên-kói chṳ̂-liau-khu',
+'lockdb' => '鎖定數據庫',
+'unlockdb' => '開數據庫鎖',
'lockdbtext' => 'Só-he̍t chṳ̂-liau-khu chiông-voi kim-chṳ́ só-yû yung-fu chin-hàng phiên-siá vùn-chông, kiên-kói chhâm-su, phiên-cho kam-sṳ lie̍t-péu yî-khi̍p khì-thâ sî-yeu kiên-kói chṳ̂-liau-khu ke chhâu-chok. Chhiáng khok-ngin ngì-ke kiet-thin, pin pó-chṳn ngì-chhai vì-fu kûng-chok kiet-suk heu chiông-voi chhùng-sîn khôi-fong chṳ̂-liau-khu.',
'unlockdbtext' => 'Khôi-fong chṳ̂-liau-khu chiông-voi fî-fu̍k só-yû yung-fu chin-hàng phiên-siá vùn-chông, siû-thin chhâm-su, phiên-siá kam-sṳ lie̍t-péu yî-khi̍p khì-thâ sî-yeu kiên-kói chṳ̂-liau-khu ke chhâu-chok. Chhiáng khok-ngin ngì-ke kiet-thin.',
'lockconfirm' => 'Chṳ̂n-ke, Ngô khok-sṳ̍t chhin-sióng fûng-só chṳ̂-liau-khu.',
'movearticle' => 'Yì-thung vùn-chông',
'movenologin' => 'Hàn-mò tên-ngi̍p',
'movenologintext' => 'Ngì pit-sî he yit-miàng tên-ki yung-fu pin-chhiâ [[Special:UserLogin|tên-ngi̍p]] heu chhòi-nèn Yì-thung yit-ke vùn-chông.',
-'newtitle' => 'Sîn phêu-thì',
+'newtitle' => '新標題:',
'move-watch' => 'Kam-sṳ chhṳ́-chông',
'movepagebtn' => 'Yì-thung vùn-chông',
'pagemovedsub' => 'Yì-thung sṳ̀n-kûng',
'movepage-moved' => '\'\'\'"$1" yí-kîn pûn yì-thung to "$2"\'\'\'',
'articleexists' => 'Ke miàng-sṳ ke hong-mien yí-kîn chhùn-chhai, fe̍t-chá ngì sién-chet ke miàng-sṳ mò-háu. Chhiáng chai-hi sién yit-ke miàng-sṳ.',
-'talkexists' => "'''Hong-mien pún-sṳ̂n yì-thung sṳ̀n-kûng, than-he yù-yî sîn phêu-thì hâ yí-kîn yû tui-fa-hong chhùn-chhai, só-yî tui-fa-hong vù-fap yì-thung. Chhiáng sú-kûng ha̍p-phîn lióng-ke hong-mien'''.",
+'talkexists' => '頁面本身移動成功,參過由於新標題下已經有交流頁存在,故所對話交流頁無法移動。請手工合併兩隻頁面。',
'movedto' => 'yì-thung to',
'movetalk' => 'Chhiáng thùng-sṳ̀ yì-thung tui-fa-chông',
'movelogpage' => '移動日誌',
'movelogpagetext' => 'Yî-ha he yí-kîn yì-thung ke vùn-chông chhîn-tân.',
-'movereason' => 'Ngièn-yîn:',
+'movereason' => '原因:',
'revertmove' => '恢復',
-'delete_and_move' => 'Chhù-chhîn lâu yì-thung',
-'delete_and_move_text' => '==Sî-yeu chhù-thet==
+'delete_and_move' => '刪除並移動',
+'delete_and_move_text' => '==愛刪除==
-Muk-phêu vùn-chông "[[:$1]]" yí-kîn chhùn-chhai.
-Ngì khok-ngin sî-yeu chhù-thet ngièn hong-mien khi̍p chin-hàng yì-thung mâ?',
-'delete_and_move_confirm' => 'Chhie̍t-tui, chhù-thet chhṳ́ hong-mien',
+目標頁面"[[:$1]]"已經存在。汝確認愛刪除原頁面並進行移動係無?',
+'delete_and_move_confirm' => '著,刪除邇頁',
'delete_and_move_reason' => 'Chhù-thet yî-phien yì-thung',
'selfmove' => 'Ngièn-sṳ́ phêu-thì khi̍p muk-phêu phêu-thì siông-thùng, vù-nèn yì-thung yit-chông fu̍k-koi pún-sṳ̂n.',
'thumbnail-more' => '放大',
'filemissing' => 'Mò-fap cháu-to tóng-on',
'thumbnail_error' => '建立縮略圖差錯:$1',
-'djvu_page_error' => 'DjVu hong-mien chhêu-chhut fam-vì',
+'djvu_page_error' => 'DjVu頁面超出範圍',
'djvu_no_xml' => 'Mò-fap chhai DjVu tóng-on chûng chên-chhí XML',
'thumbnail_invalid_params' => 'Put chṳn-khok ke suk-thù chhâm-su',
'thumbnail_dest_directory' => 'Vù-fap kien-li̍p muk-phêu muk-liu̍k',
'tooltip-pt-mytalk' => '汝嘅交流頁',
'tooltip-pt-anontalk' => 'Tui-yî lòi-chhṳ chhṳ́IP thi-tiám phiên-siá ke tui-fa',
'tooltip-pt-preferences' => '汝嘅偏好設定',
-'tooltip-pt-watchlist' => '汝監視頁面緊嘅更改列表',
+'tooltip-pt-watchlist' => '汝監視中頁面嘅更改列表',
'tooltip-pt-mycontris' => '汝嘅貢獻列表',
'tooltip-pt-login' => '建議汝登入,但係並非必須嘅',
'tooltip-pt-anonlogin' => 'Kien-ngi ngì tên-ki, than-he pin-fî pit-sî.',
'othercontribs' => 'Chhai $1-ke kûng-chok kî-chhú song.',
'others' => 'khì-thâ',
'siteusers' => '{{SITENAME}} Yung-fu-chá $1',
-'creditspage' => 'Hong-mien chṳ-chhia',
+'creditspage' => '頁面編寫人名單',
'nocredits' => 'Ke-chông mò-yû chṳ-chhia miàng-tân sêu-sit.',
# Spam protection
'patrol-log-page' => 'Sùn-chhà ki-liu̍k',
# Image deletion
-'deletedrevision' => 'Yí-kîn chhù-thet khiu-ke pán-pún $1.',
+'deletedrevision' => '已刪除舊版本$1',
# Browsing diffs
'previousdiff' => '←上隻版本',
# Auto-summaries
'autosumm-blank' => 'Chhù-chhîn só-yû ke hong-mien nui-yùng',
-'autosumm-replace' => "Chang-chhai chiông hong-mien thi-von sṳ̀n-vì '$1'",
+'autosumm-replace' => '用“$1”替換內容',
'autoredircomment' => 'Chang-chhai chhûng-thin hiong to [[$1]]',
'autosumm-new' => 'Sîn hong-mien: $1',
'disclaimers' => 'Palapala hoʻokuʻu kuleana',
'disclaimerpage' => 'Project:Palapala hoʻokuʻu kuleana',
'edithelp' => 'Kōkua me ka ho‘ololi ‘ana',
-'edithelppage' => 'Help:Ho‘ololi',
'helppage' => 'Help:Papa kuhikuhi',
'mainpage' => "Kahua pa'a",
'mainpage-description' => 'Ka papa kinohi',
'prevn' => '{{PLURAL:$1|$1}} ma mua',
'nextn' => '{{PLURAL:$1|$1}} ma hope',
'viewprevnext' => 'Nānā i nā ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Papa kuhikuhi',
'search-result-size' => '$1 ({{PLURAL:$2|1 huaʻōlelo|$2 huaʻōlelo}})',
'search-section' => '(māhele $1)',
'search-suggest' => 'ʻO kēia paha kou manaʻo: $1',
# Special:ListGroupRights
'listgrouprights-members' => '(papa o nā lālā)',
-# E-mail user
+# Email user
'emailuser' => 'E leka uila i kēia mea ho‘ohana',
'emailmessage' => 'Memo:',
* @author Rotemliss
* @author YaronSh
* @author ערן
+ * @author פדיחה
* @author שומבלע
* @author תומר ט
*/
'oct' => "אוק'",
'nov' => "נוב'",
'dec' => "דצמ'",
+'january-date' => '$1 בינואר',
+'february-date' => '$1 בפברואר',
+'march-date' => '$1 במרץ',
+'april-date' => '$1 באפריל',
+'may-date' => '$1 במאי',
+'june-date' => '$1 ביוני',
+'july-date' => '$1 ביולי',
+'august-date' => '$1 באוגוסט',
+'september-date' => '$1 בספטמבר',
+'october-date' => '$1 באוקטובר',
+'november-date' => '$1 בנובמבר',
+'december-date' => '$1 בדצמבר',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|קטגוריה|קטגוריות}}',
'create-this-page' => 'יצירת דף זה',
'delete' => 'מחיקה',
'deletethispage' => 'מחיקת דף זה',
+'undeletethispage' => 'שחזור דף זה',
'undelete_short' => 'שחזור {{PLURAL:$1|עריכה אחת|$1 עריכות}}',
'viewdeleted_short' => 'צפייה ב{{PLURAL:$1|עריכה מחוקה אחת|־$1 עריכות מחוקות}}',
'protect' => 'הגנה',
'disclaimers' => 'הבהרה משפטית',
'disclaimerpage' => 'Project:הבהרה משפטית',
'edithelp' => 'עזרה לעריכה',
-'edithelppage' => 'Help:עריכת דף',
'helppage' => 'Help:תפריט ראשי',
'mainpage' => 'עמוד ראשי',
'mainpage-description' => 'עמוד ראשי',
'namespaceprotected' => "אינכם מורשים לערוך דפים במרחב השם '''$1'''.",
'customcssprotected' => 'אינכם מורשים לערוך דף CSS זה, כיוון שהוא כולל את ההגדרות האישיות של משתמש אחר.',
'customjsprotected' => 'אינכם מורשים לערוך דף JavaScript זה, כיוון שהוא כולל את ההגדרות האישיות של משתמש אחר.',
+'mycustomcssprotected' => 'אינכם מורשים לערוך דף CSS זה.',
+'mycustomjsprotected' => 'אינכם מורשים לערוך דף JavaScript זה.',
'ns-specialprotected' => 'לא ניתן לערוך דפים מיוחדים.',
'titleprotected' => 'לא ניתן ליצור דף זה, כיוון שהמשתמש [[User:$1|$1]] הגן עליו מפני יצירה.
הסיבה שניתנה לכך היא "$2".',
'createacct-yourpasswordagain' => 'אימות הסיסמה',
'createacct-yourpasswordagain-ph' => 'יש להקליד את הסיסמה שנית',
'remembermypassword' => 'שמירת הכניסה שלי בדפדפן הזה (ל{{PLURAL:$1|יום אחד|יומיים|־$1 ימים}} לכל היותר)',
-'userlogin-remembermypassword' => '×\9c×\94ש×\90×\99ר ×\90×\95ת×\99 ×\9e×\97×\95×\91ר',
+'userlogin-remembermypassword' => '×\9c×\96×\9b×\95ר ×©× ×\9b× ×¡×ª×\99',
'userlogin-signwithsecure' => 'שימוש בחיבור מאובטח',
'securelogin-stick-https' => 'המשך שימוש ב־HTTPS אחרי הכניסה',
'yourdomainname' => 'המתחם שלך:',
'createacct-captcha' => 'בדיקת אבטחה',
'createacct-imgcaptcha-ph' => 'יש להקליד את הטקסט המופיע למעלה',
'createacct-submit' => 'יצירת החשבון',
-'createacct-benefit-heading' => '×\90ת ×\94×\90תר {{SITENAME}} ×\99×\95צר×\99×\9d ×\90× ×©×\99×\9d ×\9b×\9e×\95×\9a.',
+'createacct-benefit-heading' => '×\90× ×©×\99×\9d ×\9b×\9e×\95×\9a ×\99×\95צר×\99×\9d ×\90ת {{SITENAME}}.',
'createacct-benefit-body1' => '{{PLURAL:$1|עריכה|עריכות}}',
'createacct-benefit-body2' => '{{PLURAL:$1|דף|דפים}}',
'createacct-benefit-body3' => '{{PLURAL:$1|תורם|תורמים}} לאחרונה',
'cannotchangeemail' => 'לא ניתן לשנות את כתובות הדוא"ל של חשבונות באתר ויקי זה.',
'emaildisabled' => 'אתר זה לא יכול לשלוח דואר אלקטרוני.',
'accountcreated' => 'החשבון נוצר',
-'accountcreatedtext' => 'חשבון המשתמש $1 נוצר.',
+'accountcreatedtext' => 'חשבון המשתמש [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|שיחה]]) נוצר.',
'createaccount-title' => 'יצירת חשבון ב{{grammar:תחילית|{{SITENAME}}}}',
'createaccount-text' => 'מישהו יצר חשבון בשם $2 ב{{grammar:תחילית|{{SITENAME}}}} ($4), והסיסמה הזמנית של החשבון היא "$3". עליכם להיכנס ולשנות עכשיו את הסיסמה.
# Special:PasswordReset
'passwordreset' => 'איפוס סיסמה',
-'passwordreset-text' => 'מלאו טופס זה כדי לאפס את הסיסמה.',
+'passwordreset-text-one' => 'מלאו טופס זה כדי לאפס את הסיסמה.',
+'passwordreset-text-many' => '{{PLURAL:$1||הקלידו אחד מפריטי המידע כדי לאפס את הסיסמה.}}',
'passwordreset-legend' => 'איפוס סיסמה',
'passwordreset-disabled' => 'איפוסי סיסמה בוטלו באתר ויקי זה.',
'passwordreset-emaildisabled' => 'שירותי הדוא"ל בוטלו באתר ויקי זה.',
-'passwordreset-pretext' => '{{PLURAL:$1||הקלידו אחד מפריטי המידע למטה}}',
'passwordreset-username' => 'שם משתמש:',
'passwordreset-domain' => 'תחום:',
'passwordreset-capture' => 'לצפות בדוא"ל הנשלח?',
'confirmedittext' => 'עליכם לאמת את כתובת הדוא"ל שלכם לפני שתוכלו לערוך דפים. אנא הגדירו ואמתו את כתובת הדוא"ל שלכם באמצעות [[Special:Preferences|העדפות המשתמש]] שלכם.',
'nosuchsectiontitle' => 'הפסקה לא נמצאה',
'nosuchsectiontext' => 'ניסיתם לערוך פסקה שאינה קיימת. ייתכן שהיא הועברה או נמחקה בעת שצפיתם בדף.',
-'loginreqtitle' => '×\9b× ×\99ס×\94 ×\9c×\97ש×\91×\95×\9f × ×\93רשת',
+'loginreqtitle' => '× ×\93רשת ×\9b× ×\99ס×\94 ×\9c×\97ש×\91×\95×\9f',
'loginreqlink' => 'להיכנס לחשבון',
'loginreqpagetext' => 'עליכם $1 כדי לצפות בדפים אחרים.',
'accmailtitle' => 'הסיסמה נשלחה',
נראה שהוא נמחק.',
'edit-conflict' => 'התנגשות עריכה.',
'edit-no-change' => 'המערכת התעלמה מעריכתכם, כיוון שלא נעשה שינוי בטקסט.',
+'postedit-confirmation' => 'עריכתך נשמרה.',
'edit-already-exists' => 'לא ניתן ליצור דף חדש.
הוא כבר קיים.',
'defaultmessagetext' => 'טקסט ההודעה המקורי',
'searchmenu-legend' => 'אפשרויות חיפוש',
'searchmenu-exists' => "'''קיים דף בשם \"[[:\$1]]\" באתר זה.'''",
'searchmenu-new' => "'''יצירת הדף \"[[:\$1]]\" באתר זה.'''",
-'searchhelp-url' => 'Help:תפריט ראשי',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|מציאת דפים עם קידומת זו]]',
'searchprofile-articles' => 'דפי תוכן',
'searchprofile-project' => 'עזרה ודפי המיזם',
'userrights-changeable-col' => 'קבוצות שבאפשרותכם לשנות',
'userrights-unchangeable-col' => 'קבוצות שאין באפשרותכם לשנות',
'userrights-conflict' => 'התנגשות הרשאות משתמש! אנא בצעו את השינויים שלכם שוב.',
+'userrights-removed-self' => 'הסרת בהצלחה את הרשאות המשתמש שלך. לכן אין לך כעת אפשרות לגשת לדף זה.',
# Groups
'group' => 'קבוצה:',
'right-editusercssjs' => 'עריכת דפי CSS ו־JavaScript של משתמשים אחרים',
'right-editusercss' => 'עריכת דפי CSS של משתמשים אחרים',
'right-edituserjs' => 'עריכת דפי JavaScript של משתמשים אחרים',
+'right-editmyusercss' => 'עריכת דפי CSS של עצמך',
+'right-editmyuserjs' => 'עריכת דפי JavaScript של עצמך',
+'right-viewmywatchlist' => 'צפייה ברשימת המעקב של עצמך',
+'right-editmywatchlist' => 'עריכת רשימת המעקב של עצמך. יצוין שמספר פעולות עדיין יוסיפו דפים גם ללא הרשאה זו.',
'right-rollback' => 'שחזור מהיר של עריכות המשתמש האחרון שערך דף מסוים',
'right-markbotedits' => 'סימון עריכות משוחזרות כעריכות של בוט',
'right-noratelimit' => 'עקיפת הגבלת קצב העריכות',
'action-userrights-interwiki' => 'לערוך את ההרשאות של משתמשים באתרי ויקי אחרים',
'action-siteadmin' => 'לנעול או לבטל את נעילת בסיס הנתונים',
'action-sendemail' => 'לשלוח דואר אלקטרוני',
+'action-editmywatchlist' => 'לערוך את רשימת המעקב שלך',
+'action-viewmywatchlist' => 'לצפות ברשימת המעקב שלך',
# Recent changes
'nchanges' => '{{PLURAL:$1|שינוי אחד|$1 שינויים}}',
'reuploaddesc' => 'ביטול ההעלאה וחזרה לטופס העלאת קבצים לשרת',
'upload-tryagain' => 'שליחת התיאור החדש של הקובץ',
'uploadnologin' => 'לא נכנסתם לחשבון',
-'uploadnologintext' => 'עליכם [[Special:UserLogin|להיכנס לחשבון]] כדי להעלות קבצים.',
+'uploadnologintext' => 'עליכם $1 כדי להעלות קבצים.',
'upload_directory_missing' => 'שרת האינטרנט אינו יכול ליצור את תיקיית ההעלאות ($1) החסרה.',
'upload_directory_read_only' => 'שרת האינטרנט אינו יכול לכתוב בתיקיית ההעלאות ($1).',
'uploaderror' => 'שגיאה בהעלאת הקובץ',
'notvisiblerev' => 'הגרסה האחרונה שנוצרה על ידי משתמש אחר נמחקה',
'watchnochange' => 'אף אחד מהדפים ברשימת המעקב לא עודכן בפרק הזמן המצוין למעלה.',
'watchlist-details' => 'ברשימת המעקב יש {{PLURAL:$1|דף אחד|$1 דפים}} (לא כולל דפי שיחה).',
-'wlheader-enotif' => '* הודעות דוא"ל מאופשרות.',
-'wlheader-showupdated' => "* דפים שהשתנו מאז ביקורכם האחרון בהם מוצגים ב'''הדגשה'''.",
+'wlheader-enotif' => 'הודעות דוא"ל מאופשרות.',
+'wlheader-showupdated' => "דפים שהשתנו מאז ביקורכם האחרון בהם מוצגים ב'''הדגשה'''.",
'watchmethod-recent' => 'בודק את הדפים שברשימת המעקב לשינויים אחרונים.',
'watchmethod-list' => 'בודק את העריכות האחרונות בדפים שברשימת המעקב',
'watchlistcontains' => 'רשימת המעקב כוללת {{PLURAL:$1|דף אחד|$1 דפים}}.',
'mycontris' => 'תרומות',
'contribsub2' => 'עבור $1 ($2)',
'nocontribs' => 'לא נמצאו שינויים המתאימים לקריטריונים אלו.',
-'uctop' => '(×\90×\97ר×\95×\9f)',
+'uctop' => '(× ×\95×\9b×\97×\99)',
'month' => 'עד החודש:',
'year' => 'עד השנה:',
'thumbnail-more' => 'הגדלה',
'filemissing' => 'קובץ חסר',
'thumbnail_error' => 'שגיאה ביצירת תמונה ממוזערת: $1',
+'thumbnail_error_remote' => 'הודעת שגיאה של $1:
+$2',
'djvu_page_error' => 'דף ה־DjVu מחוץ לטווח',
'djvu_no_xml' => 'לא ניתן היה לקבל את ה־XML עבור קובץ ה־DjVu',
'thumbnail-temp-create' => 'לא הצליחה יצירת קובץ תמונה ממוזערת זמני',
'modern.css' => '/* הסגנונות הנכתבים כאן ישפיעו על העיצוב Modern בלבד */',
'vector.css' => '/* הסגנונות הנכתבים כאן ישפיעו על העיצוב Vector בלבד */',
'print.css' => '/* הסגנונות הנכתבים כאן ישפיעו על הפלט בהדפסה בלבד */',
-'handheld.css' => '/* הסגנונות הנכתבים כאן ישפיעו על מכשירים ניידים המבוססים על העיצוב שבהגדרה $wgHandheldStyle בלבד */',
'noscript.css' => '/* הסגנונות הנכתבים כאן ישפיעו על משתמשים עם JavaScript מבוטל */',
'group-autoconfirmed.css' => '/* הסגנונות הנכתבים כאן ישפיעו על משתמשים ותיקים בלבד */',
'group-bot.css' => '/* הסגנונות הנכתבים כאן ישפיעו על בוטים בלבד */',
'8' => '८', # ८
'9' => '९', # ९
);
-$linkTrail = "/^([a-z]+)(.*)$/sD";
+$linkTrail = "/^([a-z\x{0900}-\x{0963}\x{0966}-\x{A8E0}-\x{A8FF}]+)(.*)$/sDu";
$digitGroupingPattern = "##,##,###";
'disclaimers' => 'अस्वीकरण',
'disclaimerpage' => 'Project:साधारण अस्वीकरण',
'edithelp' => 'सम्पादन सहायता',
-'edithelppage' => 'Help:संपादन',
'helppage' => 'Help:सहायता',
'mainpage' => 'मुख्य पृष्ठ',
'mainpage-description' => 'मुख्य पृष्ठ',
# Special:PasswordReset
'passwordreset' => 'कूटशब्द रीसेट',
-'passwordreset-text' => 'अपने खाते के विवरण का एक ई-मेल अनुस्मारक प्राप्त करने के लिए इस फ़ॉर्म को पूरा करें।',
'passwordreset-legend' => 'कूटशब्द रीसेट करें',
'passwordreset-disabled' => 'कूटशब्द रीसेट करना इस विकी पर अक्षम है।',
-'passwordreset-pretext' => '{{PLURAL:$1||नीचे पूछे गए डेटा में से एक लिखें}}',
'passwordreset-username' => 'सदस्यनाम:',
'passwordreset-domain' => 'डोमेन:',
'passwordreset-capture' => 'परिणामस्वरूप बना ई-मेल देखें?',
'searchmenu-legend' => 'खोज विकल्प',
'searchmenu-exists' => "'''इस विकि पर \"[[:\$1]]\" नाम का एक पृष्ठ है'''",
'searchmenu-new' => "'''इस विकि पर \"[[:\$1]]\" नाम का पृष्ठ बनाएँ!'''",
-'searchhelp-url' => 'Help:सहायता',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|इस उपसर्ग वाले पृष्ठ देखें]]',
'searchprofile-articles' => 'सामग्री पृष्ठ',
'searchprofile-project' => 'सहायता और परियोजना पृष्ठ',
'listusers-noresult' => 'सदस्य नहीं मिला।',
'listusers-blocked' => '(अवरोधित)',
+# Special:ActiveUsers
+'activeusers' => 'सक्रिय सदस्यों की सूची',
+'activeusers-intro' => 'यह सक्रिय सदस्यों की सूची है जिन्होंने पिछले $1 {{PLURAL:$1|दिन|दिनों}} में कुछ गतिविधि करी है।',
+'activeusers-count' => '$1 {{PLURAL:$1|सम्पादन}} पिछले $3 {{PLURAL:$3|दिन|दिनों}} में',
+'activeusers-from' => 'इस अक्षर से शुरू होने वाले सदस्य दिखाएँ:',
+'activeusers-hidebots' => 'बॉट छुपाएँ',
+'activeusers-hidesysops' => 'प्रबंधक छुपाएँ',
+'activeusers-noresult' => 'कोई सदस्य नहीं मिले।',
+
# Special:ListGroupRights
'listgrouprights' => 'सदस्य समूह अधिकार',
'listgrouprights-summary' => 'नीचे इसे विकि के लिए परिभाषित सदस्य समूहों की सूची है, साथ में हर समूह से जुड़े अधिकार भी वर्णित हैं।
'notvisiblerev' => 'किसी अन्य सदस्य द्वारा किया अन्तिम अवतरण हटाया गया है',
'watchnochange' => 'दिये गये समय में आपके ध्यानसूची में मौजूद पृष्ठों में कोई भी बदलाव नहीं हुए हैं।',
'watchlist-details' => 'वार्ता पृष्ठों के अलावा {{PLURAL:$1|$1 पृष्ठ}} आपकी ध्यानसूची में हैं।',
-'wlheader-enotif' => '* ई-मेल नोटिफिकेशन सक्षम हैं।',
-'wlheader-showupdated' => "* पृष्ठ जो आपके द्वारा देखे जाने के बाद बदले गये हैं, '''बोल्ड''' दिखेंगे।",
+'wlheader-enotif' => 'ई-मेल नोटिफिकेशन सक्षम हैं।',
+'wlheader-showupdated' => "पृष्ठ जो आपके द्वारा देखे जाने के बाद बदले गये हैं, '''बोल्ड''' दिखेंगे।",
'watchmethod-recent' => 'ध्यानसूची में दिये गये पृष्ठों में हाल में हुए बदलाव देख रहे हैं',
'watchmethod-list' => 'ध्यानसूची में दिये गये पृष्ठों में हाल में हुए बदलाव देख रहे हैं',
'watchlistcontains' => 'आपकी ध्यानसूची में $1 {{PLURAL:$1|पृष्ठ}} हैं।',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'चौडाई',
'exif-imagelength' => 'ऊँचाई',
'exif-bitspersample' => 'प्रति घटक बीट्स',
'exif-originalimageheight' => 'छवि की ऊँचाई उभरा होने से पहले',
'exif-originalimagewidth' => 'छवि की चौड़ाई उभरा होने से पहले',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'अनकॉम्प्रेस्स्ड',
'exif-compression-3' => 'CCITT ग्रुप 3 फ़ैक्स एनकोडिंग',
'exif-compression-4' => 'CCITT ग्रुप 4 फ़ैक्स एनकोडिंग',
'version-software-version' => 'अवतरण',
'version-entrypoints-header-url' => 'यू॰आर॰एल',
-# Special:FilePath
-'filepath' => 'सञ्चिका पथ',
-'filepath-page' => 'सञ्चिका:',
-'filepath-submit' => 'जाइए',
-'filepath-summary' => 'यह विशेष पृष्ठ सञ्चिका का पूरा पथ देता है।
-चित्र पूरे रिज़ोल्यूशन के साथ दिखता हैं, अन्य सञ्चिका प्रकार उनके सम्बन्धित प्रोग्रेम डाइरेक्टरी से आरम्भ होते हैं।',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'फ़ाईल द्विरावृत्ति खोजें',
'fileduplicatesearch-summary' => 'हैश वैल्यू के अनुसार फ़ाईल की द्विरावृत्ति खोजें।',
'disclaimers' => 'Jimmewari se chhutkaari',
'disclaimerpage' => 'Project:Saadharan jimmewari nai lo',
'edithelp' => 'Badlao pe madat',
-'edithelppage' => 'Help:Badle me',
'helppage' => 'Help:Madat',
'mainpage' => 'Pahila Panna',
'mainpage-description' => 'Pahila Panna',
# Special:PasswordReset
'passwordreset' => 'Password ke badlo',
-'passwordreset-text' => 'Password ke reset kare ke khatir ii form ke bharo.',
'passwordreset-legend' => 'Password ke badlo',
'passwordreset-disabled' => 'II wiki me password ke badle ke ijaajat nai hae.',
-'passwordreset-pretext' => '{{PLURAL:$1||Niche ke ek data ke likho}}',
'passwordreset-username' => 'Sadasya ke naam:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Banawa gais e-mail ke dekho',
'searchmenu-legend' => 'Khoje ke option',
'searchmenu-exists' => "'''Ii wiki me \"[[\$1]]\" naam ke panna hai'''",
'searchmenu-new' => "'''Ii wiki me \"[[:\$1]]\" panna ke banao!'''",
-'searchhelp-url' => 'Help:Madat',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ii prefix ke panna ke browse karo]]',
'searchprofile-articles' => 'Content panna',
'searchprofile-project' => 'Madat aur Project panna',
'listusers-noresult' => 'Koi sadasya ke nai pawa gais hai.',
'listusers-blocked' => '(rok dewa gais hai)',
+# Special:ActiveUsers
+'activeusers' => 'Active sadasya ke list',
+'activeusers-intro' => 'Ii suchi uu sadasya ke hae jon ki pahile {{PLURAL:$1|din|din}} me kuchh karin hae.',
+'activeusers-count' => '$1 haali ke {{PLURAL:$1|badlao|badlao}} pichhle {{PLURAL:$3|din|$3 din}} me',
+'activeusers-from' => 'Sadasya jon ki hian se suruu hoe hai ke dekhao:',
+'activeusers-hidebots' => 'Bots ke lukao',
+'activeusers-hidesysops' => 'Administrator log ke lukao',
+'activeusers-noresult' => 'koi sadasya ke pawa nai gais hai.',
+
# Special:ListGroupRights
'listgrouprights' => 'Sadasya ke group adhikar',
'listgrouprights-summary' => 'Niche likha hai ek suchi hai groups ke jon ki ii wiki me defined hai, aapan associated access rights ke saathe
'notvisiblerev' => 'Badlao ke mitae dewa gais hai',
'watchnochange' => 'Aap ke koi bhi dhyan me rakkhaa gae chij ke ii time me badla nai gais hai.',
'watchlist-details' => '{{PLURAL:$1|$1 panna|$1 panna}} pe dhyan dewa jae hai, baat waala panna ke chhorr ke.',
-'wlheader-enotif' => '* E-mail notification ke enable kar dewa gais hai.',
-'wlheader-showupdated' => "* Panna jiske aap ke pichhla visit ke ke baad badal dewa gais hia ke '''bold''' me dekhawa gais hai",
+'wlheader-enotif' => 'E-mail notification ke enable kar dewa gais hai.',
+'wlheader-showupdated' => "Panna jiske aap ke pichhla visit ke ke baad badal dewa gais hia ke '''bold''' me dekhawa gais hai",
'watchmethod-recent' => 'Dhyan me rakkhaa gais panna ke nawaa badlao ke check karaa jaawe hai',
'watchmethod-list' => 'dhyan me rakkha gais panna ke nawaa badlao ke khatir check karaa jaawe hai',
'watchlistcontains' => 'Aap ke dhyan suchi me $1 {{PLURAL:$1|panna|panna}} hai.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Chaurrai',
'exif-imagelength' => 'Unchai',
'exif-bitspersample' => 'Bits per component',
'version-other' => 'Duusra',
'version-poweredby-others' => 'duusra waala',
-# Special:FilePath
-'filepath-submit' => 'Jaao',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'File ke naam:',
'fileduplicatesearch-submit' => 'Khojo',
'disclaimers' => 'Diskleymer',
'disclaimerpage' => 'Project:Kabilogan nga diskleymer',
'edithelp' => 'Bulig sa pag Ilis',
-'edithelppage' => 'Help:I-husto',
'helppage' => 'Help:Mga Unod',
'mainpage' => 'Mayor nga Panid',
'mainpage-description' => 'Mayor nga Panid',
# Special:PasswordReset
'passwordreset' => 'Liwaton ang pasword',
-'passwordreset-text' => 'Taposon ang ini nga formas agod nga makabaton sang e-mail nga nagapahanumdom sang mga detalye sang imo akawnt.',
'passwordreset-legend' => 'Liwaton ang pasword',
'passwordreset-disabled' => 'Ang mga pagliwat sang pasword gin-untat sa sini nga wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Magbutang sang isa sang mga datos sa idalom}}',
'passwordreset-username' => 'Ngalan sang Manog-gamit"',
'passwordreset-domain' => 'Domeyn:',
'passwordreset-capture' => 'Lantawon ang nagresuta nga e-mail?',
'searchmenu-legend' => 'Mga pililian sa pagpangita',
'searchmenu-exists' => "'''May yara sang panid nga ginhingalanan nga \"[[:\$1]]\" sa sini nga wiki.'''",
'searchmenu-new' => "'''Gintuga ang panid nga \"[[:\$1]]\" sa sini nga wiki!'''",
-'searchhelp-url' => 'Help:Mga Unod',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Magbasa-basa sang mga panid gamit ang ini nga unpali]]',
'searchprofile-articles' => 'Mga panid sang unod',
'searchprofile-project' => 'Mga panid sang Bulig kag Proyekto',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-lightsource' => 'Ginghalinan sang sanag',
'exif-flash' => 'Igpat',
'exif-subjectarea' => 'Subject area',
* @author Dalibor Bosits
* @author Demicx
* @author Dnik
+ * @author DzWiki
* @author Ex13
* @author Excaliboor
* @author FriedrickMILBarbarossa
+ * @author Geitost
* @author Herr Mlinka
* @author Kaganer
* @author Luka Krstulovic
* @author MayaSimFan
* @author Meno25
* @author Mvrban
+ * @author Nemo bis
* @author Roberta F.
* @author SpeedyGonsales
* @author Tivek
'disclaimers' => 'Odricanje od odgovornosti',
'disclaimerpage' => 'Project:General_disclaimer',
'edithelp' => 'Kako uređivati stranicu',
-'edithelppage' => 'Help:Kako_uređivati_stranicu',
'helppage' => 'Help:Pomoć',
'mainpage' => 'Glavna stranica',
'mainpage-description' => 'Glavna stranica',
'welcomecreation-msg' => 'Vaš je suradnički račun otvoren.
Ne zaboravite prilagoditi Vaše [[Special:Preferences|{{SITENAME}} postavke]].',
'yourname' => 'Suradničko ime',
+'userlogin-yourname' => 'Suradničko ime',
+'userlogin-yourname-ph' => 'Unesite Vaše suradničko ime',
'yourpassword' => 'Lozinka:',
+'userlogin-yourpassword' => 'Zaporka',
+'userlogin-yourpassword-ph' => 'Unesite Vašu zaporku',
+'createacct-yourpassword-ph' => 'Unesite zaporku',
'yourpasswordagain' => 'Ponovno upišite lozinku',
+'createacct-yourpasswordagain-ph' => 'Unesite zaporku ponovno',
'remembermypassword' => 'Zapamti moju lozinku na ovom računalu (najduže $1 {{PLURAL:$1|dan|dana}})',
+'userlogin-remembermypassword' => 'Zapamti me',
+'userlogin-signwithsecure' => 'Rabi sigurnu vezu',
'securelogin-stick-https' => 'Ostani spojen na HTTPS nakon prijave',
'yourdomainname' => 'Vaša domena',
'password-change-forbidden' => 'Ne možete promjeniti zaporku na ovom projektu.',
'logout' => 'Odjavi se',
'userlogout' => 'Odjavi se',
'notloggedin' => 'Niste prijavljeni',
-'nologin' => "Nemate suradnički račun? '''$1'''.",
+'userlogin-noaccount' => 'Nemate suradnički račun?',
+'userlogin-joinproject' => 'Pridružite se {{SITENAME}}',
+'nologin' => 'Nemate suradnički račun? $1.',
'nologinlink' => 'Otvorite račun',
'createaccount' => 'Otvori novi suradnički račun',
'gotaccount' => "Već imate suradnički račun? '''$1'''.",
'gotaccountlink' => 'Prijavite se',
'userlogin-resetlink' => 'Zaboravili ste detalje vaše prijave?',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Pomoć pri prijavi]]',
'createaccountmail' => 'poštom',
'createaccountreason' => 'Razlog:',
+'createacct-imgcaptcha-ph' => 'Unesite tekst koji vidite iznad',
+'createacct-submit' => 'Stvorite svoj suradnički račun',
'badretype' => 'Unesene lozinke nisu istovjetne.',
'userexists' => 'Uneseno suradničko ime već je u upotrebi.
Unesite neko drugo ime.',
# Special:PasswordReset
'passwordreset' => 'Ponovno postavi lozinku',
-'passwordreset-text' => 'Ispunite ovaj obrazac da biste dobili e-mail podsjetnik o vašim detaljima računa.',
'passwordreset-legend' => 'Poništi lozinku',
'passwordreset-disabled' => 'Poništavanje lozinke je onemogućeno na ovom wikiju.',
-'passwordreset-pretext' => '{{PLURAL:$1||Unesite jedan od dijelova podataka u nastavku}}',
'passwordreset-username' => 'Suradničko ime:',
'passwordreset-domain' => 'Domena:',
'passwordreset-capture' => 'Pogledati krajnju poruku?',
Čini se kako je obrisana.',
'edit-conflict' => 'Sukob uređivanja.',
'edit-no-change' => 'Vaše uređivanje je zanemareno, jer nikakva promjena sadržaja nije napravljena.',
+'postedit-confirmation' => 'Vaše je uređivanje sačuvano.',
'edit-already-exists' => 'Neuspješno stvaranje nove stranice.
Stranica već postoji.',
'defaultmessagetext' => 'Prvotni tekst poruke',
'searchmenu-legend' => 'Mogućnosti pretraživanja',
'searchmenu-exists' => "* Stranica '''[[$1]]'''",
'searchmenu-new' => "'''Stvori stranicu \"[[:\$1]]\" na ovoj wiki!'''",
-'searchhelp-url' => 'Help:Pomoć',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Pretraži stranice s ovim prefiksom]]',
'searchprofile-articles' => 'Stranice sa sadržajem',
'searchprofile-project' => 'Pomoć i stranice projekta',
'notvisiblerev' => 'Izmjena je obrisana',
'watchnochange' => 'Niti jedna od praćenih stranica nije promijenjena od Vašeg zadnjeg posjeta.',
'watchlist-details' => '{{PLURAL:$1|$1 stranica|$1 stranice|$1 stranica}} se nalazi na popisu praćenja, ne brojeći stranice za razgovor.',
-'wlheader-enotif' => '* Uključeno je izvješćivanje e-mailom.',
-'wlheader-showupdated' => "* Stranice koje su promijenjene od Vašeg zadnjeg posjeta prikazane su '''podebljano'''",
+'wlheader-enotif' => 'Uključeno je izvješćivanje e-mailom.',
+'wlheader-showupdated' => "Stranice koje su promijenjene od Vašeg zadnjeg posjeta prikazane su '''podebljano'''",
'watchmethod-recent' => 'provjera nedavnih promjena praćenih stranica',
'watchmethod-list' => 'provjera praćanih stranica za nedavne promjene',
'watchlistcontains' => 'Vaš popis praćenja sadrži $1 {{PLURAL:$1|stranicu|stranice|stranica}}.',
* @author J budissin
* @author Kaganer
* @author Michawiki
+ * @author Nemo bis
* @author Shirayuki
* @author Tchoř
* @author Tlustulimu
'oct' => 'okt',
'nov' => 'now',
'dec' => 'dec',
+'january-date' => '$1. januara',
+'february-date' => '$1. februara',
+'march-date' => '$1. měrca',
+'april-date' => '$1. apryla',
+'may-date' => '$1. meje',
+'june-date' => '$1. junija',
+'july-date' => '$1. julija',
+'august-date' => '$1. awgusta',
+'september-date' => '$1. septembra',
+'october-date' => '$1. oktobra',
+'november-date' => '$1. nowembra',
+'december-date' => '$1. decembra',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorija|Kategoriji|Kategorije|Kategorije}}',
'disclaimers' => 'Licencne postajenja',
'disclaimerpage' => 'Project:Impresum',
'edithelp' => 'Pomoc za wobdźěłowanje',
-'edithelppage' => 'Help:Wobdźěłowanje',
'helppage' => 'Help:Wobsah',
'mainpage' => 'Hłowna strona',
'mainpage-description' => 'Hłowna strona',
'yourname' => 'Wužiwarske mjeno:',
'userlogin-yourname' => 'Wužiwarske mjeno',
'userlogin-yourname-ph' => 'Zapodaj swoje wužiwarske mjeno',
-'createacct-helpusername-url' => '{{ns:Project}}:Prawidła_za_wužiwarske_mjena',
-'createacct-helpusername-link' => '[[{{MediaWiki:createacct-helpusername-url}}|(pomóž wubrać)]]',
'yourpassword' => 'Hesło:',
'userlogin-yourpassword' => 'Hesło',
'userlogin-yourpassword-ph' => 'Zapodaj swoje hesło',
'createacct-yourpassword-ph' => 'Zapodaj hesło',
'yourpasswordagain' => 'Hesło znowa zapodać:',
'createacct-yourpasswordagain' => 'Hesło wobkrućić',
+'createacct-yourpasswordagain-ph' => 'Zapodaj hesło hišće raz',
'remembermypassword' => 'Na tutym ličaku přizjewjeny wostać (za maksimalnje $1 {{PLURAL:$1|dźeń|dnjej|dny|dnjow}})',
+'userlogin-remembermypassword' => 'Přizjewjeny wostać',
+'userlogin-signwithsecure' => 'Wěsty zwisk wužiwać',
'securelogin-stick-https' => 'Po přizjewjenju z HTTPS zwjazany wostać',
'yourdomainname' => 'Twoja domejna:',
'password-change-forbidden' => 'Njemóžeš hesła na tutym wikiju změnić.',
'logout' => 'wotzjewić',
'userlogout' => 'wotzjewić',
'notloggedin' => 'Njepřizjewjeny',
+'userlogin-noaccount' => 'Nimaš žane konto?',
+'userlogin-joinproject' => 'Konto za {{GRAMMAR:akuzatiw|{{SITENAME}}}} załožić',
'nologin' => 'Nimaš žane konto? $1.',
'nologinlink' => 'Konto załožić',
'createaccount' => 'Konto załožić',
'gotaccount' => 'Maš hižo wužiwarske konto? $1.',
'gotaccountlink' => 'Přizjewić',
'userlogin-resetlink' => 'Přizjewjenske daty zabył?',
+'userlogin-resetpassword-link' => 'Hesło anulować',
+'helplogin-url' => 'Help:Přizjewić',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Pomoc za přizjewjenje]]',
+'createacct-join' => 'Zapodaj deleka swoje informacije.',
'createacct-emailrequired' => 'E-mejlowa adresa',
+'createacct-emailoptional' => 'E-mejlowa adresa (opcionalny)',
+'createacct-email-ph' => 'Zapodaj swoju e-mejlowu adresu',
'createaccountmail' => 'Nachwilne přidatne hesło wužiwać a jo na slědowacu e-mejlowu adresu pósłać',
+'createacct-realname' => 'Woprawdźite mjeno (opcionalny)',
'createaccountreason' => 'Přičina:',
'createacct-reason' => 'Přičina',
+'createacct-reason-ph' => 'Čehodla załožuješ druhe konto?',
+'createacct-captcha' => 'Wěstotna kontrola',
'createacct-imgcaptcha-ph' => 'Zapodaj tekst, kotryž deleka widźiš',
-'createacct-benefit-body1' => 'změny',
-'createacct-benefit-body2' => 'strony',
+'createacct-submit' => 'Twoje konto załožić',
+'createacct-benefit-heading' => '{{SITENAME}} je so wot ludźi kaž ty wutworił.',
+'createacct-benefit-body1' => '{{PLURAL:$1|změna|změnje|změny|změnow}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|strona|stronje|strony|stronow}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|aktiwny sobuskutkowar|aktiwnej sobuskutkowarjej|aktiwni sobuskutkowarjo}}',
'badretype' => 'Hesle, kotrejž sy zapodał, so njekryjetej.',
'userexists' => 'Wužiwarske mjeno, kotrež sy zapodał, so hižo wužiwa.
Prošu wubjer druhe mjeno.',
'loginerror' => 'Zmylk při přizjewjenju',
+'createacct-error' => 'Zmylk při załožowanju konta',
'createaccounterror' => 'Wužiwarske konto njeda so załožić: $1',
'nocookiesnew' => 'Wužiwarske konto bu załožene, njejsy pak přizjewjeny. {{SITENAME}} wužiwa placki (cookies), zo bychu so wužiwarjo přizjewili. Sy placki znjemóžnił. Prošu zmóžń je a přizjew so potom ze swojim nowym wužiwarskim mjenom a hesłom.',
'nocookieslogin' => '{{SITENAME}} wužiwa placki za přizjewjenje wužiwarjow.
'cannotchangeemail' => 'Kontowe e-mejlowe adresy njehodźa so na tutym wikiju změnić.',
'emaildisabled' => 'Tute sydło njemóže e-mejle pósłać.',
'accountcreated' => 'Wužiwarske konto załožene',
-'accountcreatedtext' => 'Wužiwarske konto za $1 bu załožene.',
+'accountcreatedtext' => 'Wužiwarske konto za [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|diskusiju]]) bu załožene.',
'createaccount-title' => 'Wutworjenje wužiwarskeho konta za {{SITENAME}}',
'createaccount-text' => 'Něchtó je wužiwarske konto za twoju e-mejlowu adresu na {{SITENAME}} ($4) z mjenom "$2" z hesłom "$3" wutworił. Ty měł so nětko přizjewić a swoje hesło změnić.
'resetpass-wrong-oldpass' => 'Njepłaćiwe nachwilne abo aktualne hesło.
Snano sy swoje hesło hižo wuspěšnje změnił abo nowe nachwilne hesło požadał.',
'resetpass-temp-password' => 'Nachwilne hesło:',
+'resetpass-abort-generic' => 'Měnjenje hesła je so přez rozšěrjenje přetorhnyło.',
# Special:PasswordReset
'passwordreset' => 'Hesło wróćo stajić',
-'passwordreset-text' => 'Wupjelń tutón formular, zo by swoje hesło anulował.',
+'passwordreset-text-one' => 'Wupjelń tutón formular, zo by swoje hesło anulował.',
+'passwordreset-text-many' => '{{PLURAL:$1|Zapodaj jedyn z datow, zo by swoje hesło anulował.}}',
'passwordreset-legend' => 'Hesło wróćo stajić',
'passwordreset-disabled' => 'Wróćostajenje hesłow je so na tutym wikiju znjemóžniło.',
-'passwordreset-pretext' => '{{PLURAL:$1||Zapodaj deleka jedne ze slědowacych datowych podaćow}}',
+'passwordreset-emaildisabled' => 'E-mejlowe funkcije su so na tutym wikiju znjemóžnili.',
'passwordreset-username' => 'Wužiwarske mjeno:',
'passwordreset-domain' => 'Domena:',
'passwordreset-capture' => 'E-mejlku sej wobhladać?',
Zda so, zo je hîžo wušmórnjena.',
'edit-conflict' => 'Wobdźěłanski konflikt.',
'edit-no-change' => 'Waše wobdźěłanje bu ignorowane, dokelž tekst njebu zm,ěnjeny.',
+'postedit-confirmation' => 'Twoja změna je so składowała.',
'edit-already-exists' => 'Njebě móžno nowu stronu wutworić.
Eksistuje hižo.',
'defaultmessagetext' => 'Standardny tekst zdźělenki',
'content-failed-to-parse' => 'Parsowanje wobsaha $2 za model $1 je so njeporadźiło: $3',
'invalid-content-data' => 'Njepłaćiwe wobsahowe daty',
'content-not-allowed-here' => 'Wobsah "$1" njeje na stronje [[$2]] dowoleny',
-'editwarning-warning' => 'Hdyž so strona wopušća, móžeja so změny zhubić, kotrež sy přewjedł. Jeli sy přizjewjeny, móžeš tute warnowanje we wotrězku {{int:prefs-editing}} swojich nastajenjow znjemóžnić.',
+'editwarning-warning' => 'Hdyž so strona wopušća, móža so změny zhubić, kotrež sy přewjedł. Jeli sy přizjewjeny, móžeš tute warnowanje we wotrězku "Wobdźěłowanje" swojich nastajenjow znjemóžnić.',
# Content models
'content-model-wikitext' => 'wikitekst',
'searchmenu-legend' => 'Pytanske opcije',
'searchmenu-exists' => "'''Je strona z mjenom \"[[\$1]]\" na tutym wikiju'''",
'searchmenu-new' => "'''Wutwor stronu \"[[:\$1|\$1]]\" na tutym wikiju!'''",
-'searchhelp-url' => 'Help:Wobsah',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Strony z tutym prefiksom přepytać]]',
'searchprofile-articles' => 'Wobsahowe strony',
'searchprofile-project' => 'Pomoc a projektowe strony',
'powersearch-togglenone' => 'Žadyn',
'search-external' => 'Eksterne pytanje',
'searchdisabled' => 'Pytanje w {{GRAMMAR:lokatiw|{{SITENAME}}}} tuchwilu móžne njeje. Móžeš mjeztym z Google pytać. Wobkedźbuj, zo móža wuslědki z wobsaha {{GRAMMAR:genitiw|{{SITENAME}}}} zestarjene być.',
+'search-error' => 'Při pytanju je so zmylk wustupił: $1',
# Preferences page
'preferences' => 'Nastajenja',
'userrights-notallowed' => 'Twoje konto nima trěbne prawa, zo by wužiwarske prawa přidźěliło abo zebrało.',
'userrights-changeable-col' => 'Skupiny, kotrež móžeš změnić',
'userrights-unchangeable-col' => 'Skupiny, kotrež njemóžeš změnić',
+'userrights-conflict' => 'Konflikt wužiwarskich prawow! Prošu čiń swoje změny hišće raz.',
# Groups
'group' => 'Skupina:',
'reuploaddesc' => 'Nahraće přetorhnyć a so k nahrawanskemu formularej wróćić.',
'upload-tryagain' => 'Změnjene datajowe wopisanje wotpósłać',
'uploadnologin' => 'Njepřizjewjeny',
-'uploadnologintext' => 'Dyrbiš [[Special:UserLogin|přizjewjeny]] być, zo by dataje nahrawać móhł.',
+'uploadnologintext' => 'Dyrbiš so $1, zo by dataje nahrawać móhł.',
'upload_directory_missing' => 'Zapis nahraćow ($1) faluje a njeda so přez webserwer wutworić.',
'upload_directory_read_only' => 'Nahrawanski zapis ($1) njehodźi so přez webserwer popisować.',
'uploaderror' => 'Zmylk při nahrawanju',
'notvisiblerev' => 'Wersija bu wušmórnjena',
'watchnochange' => 'Žana z twojich wobkedźbowanych stron njebu w podatej dobje wobdźěłana.',
'watchlist-details' => '{{PLURAL:$1|$1 wobkedźbowana strona|$1 wobkedźbowanej stronje|$1 wobkedźbowane strony|$1 wobkedźbowanych stronow}}, diskusijne strony wuwzate.',
-'wlheader-enotif' => '* E-mejlowe zdźělenje je zmóžnjene.',
-'wlheader-showupdated' => '* Strony, kotrež buchu po twojim poslednim wopyće změnjene so <b>tučne</b> pokazuja.',
+'wlheader-enotif' => 'E-mejlowa zdźělenska słužba je zmóžnjena.',
+'wlheader-showupdated' => "Strony, kotrež su so po twojim poslednim wopyće změnili, so '''tučne''' pokazuja.",
'watchmethod-recent' => 'Aktualne změny za wobkedźbowane strony přepruwować',
'watchmethod-list' => 'Wobkedźbowanki za aktualnymi změnami přepruwować',
'watchlistcontains' => 'Maš $1 {{PLURAL:$1|stronu|stronje|strony|stronow}} w swojich wobkedźbowankach.',
'mycontris' => 'Přinoški',
'contribsub2' => 'za wužiwarja $1 ($2)',
'nocontribs' => 'Žane změny, kotrež podatym kriterijam wotpowěduja.',
-'uctop' => '(aktualnje)',
+'uctop' => '(aktualny)',
'month' => 'wot měsaca (a do toho):',
'year' => 'wot lěta (a do toho):',
'thumbnail-more' => 'powjetšić',
'filemissing' => 'Dataja pobrachuje',
'thumbnail_error' => 'Zmylk při wutworjenju miniaturki: $1',
+'thumbnail_error_remote' => 'Zmylkowa zdźělenka wot $1:
+$2',
'djvu_page_error' => 'Strona DjVU zwonka wobłuka strony',
'djvu_no_xml' => 'Daty XML njemóža so za dataju DjVU wotwołać',
'thumbnail-temp-create' => 'Temporerna dataja za miniaturny wobrazk njeda so wutworić',
'just-now' => 'runje',
# Human-readable timestamps
-'hours-ago' => 'před $1 {{PLURAL:$1|hodźinu|hodźinomaj|hodźinami|hodźinami}}',
-'minutes-ago' => 'před $1 {{PLURAL:$1|mjeńšinu|mjeńšinomaj|mjeńšinami|mjeńšinami}}',
-'seconds-ago' => 'před $1 {{PLURAL:$1|sekundu|sekundomaj|sekundami|sekundami}}',
+'hours-ago' => 'před $1 {{PLURAL:$1|hodźinu|hodźinomaj|hodźinami}}',
+'minutes-ago' => 'před $1 {{PLURAL:$1|mjeńšinu|mjeńšinomaj|mjeńšinami}}',
+'seconds-ago' => 'před $1 {{PLURAL:$1|sekundu|sekundomaj|sekundami}}',
'monday-at' => 'Póndźela $1',
'tuesday-at' => 'Wutora $1',
'wednesday-at' => 'Srjeda $1',
'version-entrypoints-header-entrypoint' => 'Zastupny dypk',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect' => 'Po datajowym mjenje, wužiwarju abo wersijowym ID dale sposrědkować',
+'redirect-legend' => 'Do dataje abo strony dale sposrědkować',
+'redirect-summary' => 'Tuta specialna strona so do dataje (datajowe mjeno je podate), strony (wersijowy ID je podaty) abo wužiwarskeje strony (numeriski wužiwarski ID je podaty) dale sposrědkuje.',
+'redirect-submit' => 'Los',
+'redirect-lookup' => 'Pytać:',
+'redirect-value' => 'Hódnota:',
+'redirect-user' => 'ID wužiwarja',
+'redirect-revision' => 'Wersija strony',
+'redirect-file' => 'Datajowe mjeno',
+'redirect-not-exists' => 'Hódnota njeje so namakała',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Dwójne dataje pytać',
'fileduplicatesearch-summary' => 'Pytanje za duplikatnymi datajemi na zakładźe jich hašoweje hódnoty.',
'htmlform-selectorother-other' => 'Druhe',
'htmlform-no' => 'Ně',
'htmlform-yes' => 'Haj',
+'htmlform-chosen-placeholder' => 'Wubjer móžnosć',
# SQLite database support
'sqlite-has-fts' => '$1 połnotekstowe pytanje podpěruje.',
'tog-shownumberswatching' => 'Montre kantite itlizatè k’ap swiv',
'tog-oldsig' => 'Gade pou wè siyati ki egziste deja:',
'tog-fancysig' => 'Konsidere siyati sa tankou yon wikitèks (san lyen ki ta otomatik)',
-'tog-externaleditor' => 'Itilize editè ki pa nan sistèm wikimedya pa defo',
-'tog-externaldiff' => 'Itilize yon konparatè ki pa nan sitsèm wikimedya pa defo',
'tog-showjumplinks' => 'Pèmèt lyen aksesibilite « ale nan »',
'tog-uselivepreview' => 'Itilize kout je an dirèk (sa mande JavaScrip) (Esperimantal)',
'tog-forceeditsummary' => 'Notifye m lè m ap antre yon somè modifikasyon vid',
'disclaimers' => 'Avètisman',
'disclaimerpage' => 'Project:Avètisman jeneral yo',
'edithelp' => 'Èd pou modifye paj',
-'edithelppage' => 'Help:Modifye yon paj',
'helppage' => 'Help:Èd',
'mainpage' => 'Paj prensipal',
'mainpage-description' => 'Paj prensipal',
'prevn' => '{{PLURAL:$1|$1}} anvan yo',
'nextn' => '{{PLURAL:$1|$1}} swivan yo',
'viewprevnext' => 'Wè ($1 {{int:pipe-separator}} $2) ($3).',
-'searchhelp-url' => 'Help:Èd',
'searchprofile-everything' => 'Tout',
'search-result-size' => '$1 ({{PLURAL:$2| mo|$2 mo yo}})',
'search-redirect' => '(redireksyon depi $1)',
* @author Dj
* @author Dorgan
* @author Enbéká
+ * @author Geitost
* @author Glanthor Reviol
* @author Gondnok
* @author Hunyadym
* @author Kaganer
* @author KossuthRad
* @author Misibacsi
+ * @author Nemo bis
* @author R-Joe
* @author Samat
* @author Sucy
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => 'Január $1',
+'february-date' => 'Február $1',
+'march-date' => 'Március $1',
+'april-date' => 'Április $1',
+'may-date' => 'Május $1',
+'june-date' => 'Június $1',
+'july-date' => 'Július $1',
+'august-date' => 'Augusztus $1',
+'september-date' => 'Szeptember $1',
+'october-date' => 'Október $1',
+'november-date' => 'November $1',
+'december-date' => 'December $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategória|Kategória}}',
'disclaimers' => 'Jogi nyilatkozat',
'disclaimerpage' => 'Project:Jogi nyilatkozat',
'edithelp' => 'Szerkesztési segítség',
-'edithelppage' => 'Help:Szerkesztés',
'helppage' => 'Help:Tartalom',
'mainpage' => 'Kezdőlap',
'mainpage-description' => 'Kezdőlap',
'youhavenewmessages' => '$1 a vitalapodon! ($2 külön is megtekintheted.)',
'newmessageslink' => 'új üzenet vár',
'newmessagesdifflink' => 'az utolsó üzenetet',
-'youhavenewmessagesfromusers' => '$1 a vitalapodon {{PLURAL:$3|egy|$3}} szerkesztőtől! ($2 külön is megtekintheted.)',
-'youhavenewmessagesmanyusers' => '$1ed van több szerkesztőtől ($2).',
-'newmessageslinkplural' => '{{PLURAL:$1|Új üzenet vár|Új üzenetek várnak}}',
-'newmessagesdifflinkplural' => 'Az utolsó {{PLURAL:$1|változtatást|változtatásokat}}',
+'youhavenewmessagesfromusers' => '$2 kaptál {{PLURAL:$3|egy|$3}} szerkesztőtől $1!',
+'youhavenewmessagesmanyusers' => '$2 kaptál több szerkesztőtől $1.',
+'newmessageslinkplural' => 'a vitalapodon',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|Új üzenetet|Új üzeneteket}}',
'youhavenewmessagesmulti' => 'Új üzenet vár a(z) $1 wikin',
'editsection' => 'szerkesztés',
'editold' => 'szerkesztés',
Ne felejtsd el módosítani a [[Special:Preferences|{{SITENAME}} beállításaidat]].',
'yourname' => 'Szerkesztőneved:',
'userlogin-yourname' => 'Felhasználónév',
+'userlogin-yourname-ph' => 'Add meg a felhasználóneved',
'yourpassword' => 'Jelszavad:',
'userlogin-yourpassword' => 'Jelszó',
+'userlogin-yourpassword-ph' => 'Add meg a jelszavad',
+'createacct-yourpassword-ph' => 'Add meg a jelszavad',
'yourpasswordagain' => 'Jelszavad ismét:',
+'createacct-yourpasswordagain' => 'Új jelszó megerősítése',
+'createacct-yourpasswordagain-ph' => 'Írd be a jelszót újra',
'remembermypassword' => 'Emlékezzen rám ezen a számítógépen (legfeljebb $1 napig)',
-'userlogin-remembermypassword' => 'Emlékezzen rám',
-'userlogin-signwithsecure' => 'Bejelentkezés a biztonságos kiszolgálón keresztül',
+'userlogin-remembermypassword' => 'Maradjak bejelentkezve',
+'userlogin-signwithsecure' => 'Biztonságos kapcsolat használata',
'securelogin-stick-https' => 'Kapcsolódás HTTPS-en keresztül bejelentkezés után is',
'yourdomainname' => 'A domainneved:',
'password-change-forbidden' => 'Nem módosíthatod a jelszót ezen a wikin.',
'notloggedin' => 'Nem vagy bejelentkezve',
'userlogin-noaccount' => 'Nem rendelkezel még felhasználói fiókkal?',
'userlogin-joinproject' => 'Csatlakozz a(z) {{SITENAME}} wikihez',
-'nologin' => "Nem rendelkezel még felhasználói fiókkal? '''$1'''.",
+'nologin' => 'Nem rendelkezel még felhasználói fiókkal? $1.',
'nologinlink' => 'Itt regisztrálhatsz',
'createaccount' => 'Regisztráció',
'gotaccount' => "Ha már korábban regisztráltál, '''$1'''.",
'gotaccountlink' => 'Bejelentkezés',
'userlogin-resetlink' => 'Elfelejtetted a bejelentkezési adataidat?',
+'userlogin-resetpassword-link' => 'A jelszó alaphelyzetbe állítása',
'helplogin-url' => 'Help:Bejelentkezés',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Segítség a bejelentkezéshez]]',
+'createacct-join' => 'Add meg az alábbi információkat.',
+'createacct-emailrequired' => 'E-mail cím',
+'createacct-emailoptional' => 'E-mail cím (opcionális)',
+'createacct-email-ph' => 'Add meg e-mail címed',
'createaccountmail' => 'Átmeneti, véletlenszerű jelszó használata és kiküldése az alábbi e-mail címre',
+'createacct-realname' => 'Igazi neved (nem kötelező)',
'createaccountreason' => 'Indoklás:',
+'createacct-reason' => 'Indoklás',
+'createacct-reason-ph' => 'Miért hozol létre egy másik fiókot',
+'createacct-captcha' => 'Biztonsági ellenőrzés',
+'createacct-imgcaptcha-ph' => 'Írd be a szöveget, amit fent látsz',
+'createacct-submit' => 'Felhasználói fiók létrehozása',
+'createacct-benefit-heading' => 'A(z) {{SITENAME}}-t hozzád hasonló emberek készítik.',
+'createacct-benefit-body1' => '{{PLURAL:$1|szerkesztés|szerkesztés}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|lap|lap}}',
+'createacct-benefit-body3' => 'aktív {{PLURAL:$1|szerkesztő|szerkesztő}}',
'badretype' => 'A megadott jelszavak nem egyeznek.',
'userexists' => 'A megadott felhasználónév már foglalt.
Kérlek, válassz másikat!',
'loginerror' => 'Hiba történt a bejelentkezés során',
+'createacct-error' => 'Fióklétrehozási hiba',
'createaccounterror' => 'Nem sikerült létrehozni a felhasználói fiókot: $1',
'nocookiesnew' => 'A felhasználói fiókod létrejött, de nem vagy bejelentkezve. A wiki sütiket („cookie”) használ a szerkesztők azonosítására. Nálad ezek le vannak tiltva. Kérlek, engedélyezd őket a böngésződben, majd lépj be az új azonosítóddal és jelszavaddal.',
'nocookieslogin' => 'A wiki sütiket („cookie”) használ a szerkesztők azonosításhoz.
'resetpass-wrong-oldpass' => 'Nem megfelelő ideiglenes vagy jelenlegi jelszó.
Lehet, hogy már sikeresen megváltoztattad a jelszavad, vagy pedig időközben új ideiglenes jelszót kértél.',
'resetpass-temp-password' => 'Ideiglenes jelszó:',
+'resetpass-abort-generic' => 'A jelszómódosítást megszakította egy kiterjesztés.',
# Special:PasswordReset
'passwordreset' => 'Jelszó törlése',
-'passwordreset-text' => 'Az alábbi űrlap kitöltése után egy jelszóemlékeztető e-mailt kapsz a fiókod adataival.',
+'passwordreset-text-one' => 'A jelszavad alaphelyzetbe állításához töltsd ki az űrlapot.',
+'passwordreset-text-many' => '{{PLURAL:$1|A jelszavad alaphelyzetbe állításához írd be az alábbi adatok egyikét.}}',
'passwordreset-legend' => 'Új jelszó kérése',
'passwordreset-disabled' => 'Új jelszó kérése nem engedélyezett ezen a wikin.',
'passwordreset-emaildisabled' => 'Az e-mail funkció le van tiltva ezen a wikin.',
-'passwordreset-pretext' => '{{PLURAL:$1||Írd be az alábbi adatok egyikét}}',
'passwordreset-username' => 'Felhasználónév:',
'passwordreset-domain' => 'Tartomány:',
'passwordreset-capture' => 'Meg szeretnéd nézni az elkészült üzenetet?',
'passwordreset-capture-help' => 'Ha kipipálod a dobozt, elmegy az üzenet a felhasználónak és megjelenik számodra (az ideiglenes jelszóval együtt).',
'passwordreset-email' => 'E-mail cím:',
'passwordreset-emailtitle' => 'A(z) {{SITENAME}}-fiók adatai',
-'passwordreset-emailtext-ip' => 'Valaki (vélhetően Te, a $1 IP-címről) emlékeztetőt kért a {{SITENAME}} ($4) oldalon felvett fiókokról. A következő felhasználói {{PLURAL:$3|fiók van|fiókok vannak}} hozzárendelve ehhez az e-mail címhez:
+'passwordreset-emailtext-ip' => 'Valaki (vélhetően Te, a $1 IP-címről) a jelszavad visszaállítását kérte a {{SITENAME}} ($4) oldalon felvett {{PLURAL:$3|fiókban|fiókokban}}. A következő felhasználói {{PLURAL:$3|fiók van|fiókok vannak}} hozzárendelve ehhez az e-mail címhez:
$2
{{PLURAL:$3|Ez az ideiglenes jelszó|Ezek az ideiglenes jelszavak}} $5 nap múlva {{PLURAL:$3|jár|járnak}} le. Jelentkezz be, és cseréld le a jelszavadat. Ha valaki más kérte az emlékeztetőt, vagy eszedbe jutott a régi jelszó, és nem akarod lecserélni a jelszavadat, hagyd figyelmen kívül ezt az üzenetet, és használd a régi jelszavadat.',
-'passwordreset-emailtext-user' => '$1 felhasználó emlékeztetők kért a {{SITENAME}} ($4) oldalon felvett fiókokról. A következő felhasználói {{PLURAL:$3|fiók van|fiókok vannak}} hozzárendelve ehhez az e-mail címhez:
+'passwordreset-emailtext-user' => '$1 felhasználó jelszó-visszaállítást kért a {{SITENAME}} ($4) oldalon felvett {{PLURAL:$3|fiókban|fiókokban}}. A következő felhasználói {{PLURAL:$3|fiók van|fiókok vannak}} hozzárendelve ehhez az e-mail címhez:
$2
{{PLURAL:$3|Ez az ideiglenes jelszó|Ezek az ideiglenes jelszavak}} $5 nap múlva {{PLURAL:$3|jár|járnak}} le. Jelentkezz be, és cseréld le a jelszavadat. Ha valaki más kérte az emlékeztetőt, vagy eszedbe jutott a régi jelszó, és nem akarod lecserélni a jelszavadat, hagyd figyelmen kívül ezt az üzenetet, és használd a régi jelszavadat.',
'passwordreset-emailelement' => 'Felhasználónév: $1
Ideiglenes jelszó: $2',
-'passwordreset-emailsent' => 'Emlékeztető e-mail elküldve.',
-'passwordreset-emailsent-capture' => 'Az alább látható emlékeztető e-mail lett elküldve.',
+'passwordreset-emailsent' => 'Jelszó-visszaállító e-mail elküldve.',
+'passwordreset-emailsent-capture' => 'Az alább látható jelszó-visszaállító e-mail lett elküldve.',
'passwordreset-emailerror-capture' => 'Az emlékeztető levél generálása megtörtént, mint az alább látszik, de elküldése a szerkesztőnek nem sikerült: $1',
# Special:ChangeEmail
Úgy tűnik, hogy törölve lett.',
'edit-conflict' => 'Szerkesztési ütközés.',
'edit-no-change' => 'A szerkesztésed figyelmen kívül lett hagyva, mivel nem változtattál a lap szövegén.',
+'postedit-confirmation' => 'A szerkesztésedet elmentettük.',
'edit-already-exists' => 'Az új lap nem készíthető el.
Már létezik.',
'defaultmessagetext' => 'Alapértelmezett szöveg',
'invalid-content-data' => 'Érvénytelen tartalom adat',
'content-not-allowed-here' => '"$1" tartalom nem engedélyezett a [[$2]] oldalon',
'editwarning-warning' => 'A lap elhagyásával az összes itt végzett változtatás elveszhet.
-Ha be vagy jelentkezve letilthatod ezt a figyelmeztetést a beállításaid „{{int:prefs-editing}}” szakaszában.',
+Ha be vagy jelentkezve letilthatod ezt a figyelmeztetést a beállításaid „Szerkesztés” szakaszában.',
# Content models
'content-model-wikitext' => 'wikiszöveg',
'searchmenu-legend' => 'Keresési beállítások',
'searchmenu-exists' => "'''A wikin már van „[[:$1]]” nevű lap'''",
'searchmenu-new' => "'''Hozd létre a(z) „[[:$1]]” nevű lapot ezen a wikin!'''",
-'searchhelp-url' => 'Help:Tartalom',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ilyen előtagú lapok listázása]]',
'searchprofile-articles' => 'Tartalmi oldalak',
'searchprofile-project' => 'Segítség- és projektlapok',
'powersearch-togglenone' => 'Egyik sem',
'search-external' => 'Külső kereső',
'searchdisabled' => 'Elnézésed kérjük, de a teljes szöveges keresés terhelési okok miatt átmenetileg nem használható. Ezidő alatt használhatod a lenti Google keresést, mely viszont lehetséges, hogy nem teljesen friss adatokkal dolgozik.',
+'search-error' => 'A keresés közben hiba történt: $1',
# Preferences page
'preferences' => 'Beállítások',
'userrights-notallowed' => 'Nincs jogosultságod jogosultságok adására vagy elvételére.',
'userrights-changeable-col' => 'Megváltoztatható csoportok',
'userrights-unchangeable-col' => 'Nem megváltoztatható csoportok',
+'userrights-conflict' => 'Felhasználói jogok ütközése! Kérlek, végez el újra a változtatásokat.',
# Groups
'group' => 'Csoport:',
'upload-file-error-text' => 'Belső hiba történt egy ideiglenes fájl szerveren történő létrehozásakor.
Kérjük, hogy lépj kapcsolatba egy [[Special:ListUsers/sysop|adminisztrátorral]].',
'upload-misc-error' => 'Ismeretlen feltöltési hiba',
-'upload-misc-error-text' => 'A feltöltés során ismeretlen hiba történt. Kérjük, ellenőrizd, hogy az URL érvényes-e és hozzáférhető-e, majd próbáld újra. Ha a probléma továbbra is fennáll, akkor lépj kapcsolatba a rendszergazdával.',
+'upload-misc-error-text' => 'A feltöltés során ismeretlen hiba történt. Kérjük, ellenőrizd, hogy az URL érvényes-e és hozzáférhető-e, majd próbáld újra. Ha a probléma továbbra is fennáll, akkor lépj kapcsolatba a [[Special:ListUsers/sysop|adminisztrátorral]].',
'upload-too-many-redirects' => 'Az URL túl sokszor volt átirányítva',
'upload-unknown-size' => 'Ismeretlen méretű',
'upload-http-error' => 'HTTP-hiba történt: $1',
# File journal errors
'filejournal-fail-dbconnect' => 'Nem sikerült csatlakozni a napló adatbázis "$1 " háttér tárolójához.',
+'filejournal-fail-dbquery' => 'Nem sikerült frissíteni a naplóadatbázis "$1 " háttértárolóját.',
# Lock manager
'lockmanager-notlocked' => 'Nem lehet a zárolást feloldani: „$1”; nincs zárolva.',
'notvisiblerev' => 'A változat törölve lett',
'watchnochange' => 'Egyik figyelt lap sem változott a megadott időintervallumon belül.',
'watchlist-details' => 'A vitalapokon kívül {{PLURAL:$1|egy|$1}} lap van a figyelőlistádon.',
-'wlheader-enotif' => '* Az e-mailen keresztül történő értesítés engedélyezve.',
-'wlheader-showupdated' => "* Azok a lapok, amelyek megváltoztak, mióta utoljára megnézted őket, '''vastagon''' láthatóak.",
+'wlheader-enotif' => 'Az e-mailen keresztül történő értesítés engedélyezve.',
+'wlheader-showupdated' => "Azok a lapok, amelyek megváltoztak, mióta utoljára megnézted őket, '''vastagon''' láthatóak.",
'watchmethod-recent' => 'a figyelt lapokon belüli legfrissebb szerkesztések',
'watchmethod-list' => 'a legfrissebb szerkesztésekben található figyelt lapok',
'watchlistcontains' => 'A figyelőlistádon {{PLURAL:$1|egy|$1}} lap szerepel.',
'modern.css' => '/* Az ide elhelyezett CSS hatással lesz a Modern felület használóira */',
'vector.css' => '/* Az ide elhelyezett CSS hatással lesz a Vector felület használóira */',
'print.css' => '/* Az ide elhelyezett CSS hatással lesz a nyomtatás kimenetelére */',
-'handheld.css' => '/* Az ide elhelyezett CSS hatással lesz azon kézi eszközökre, amelyek $wgHandheldStyle felülettel vannak konfigurálva */',
'noscript.css' => '/* Az ide elhelyezett CSS azon felhasználókra lesz hatással, ahol a JavaScript le van tiltva */',
'group-autoconfirmed.css' => '/* Az ide elhelyezett CSS az automatikusan megerősített felhasználókra lesz hatással */',
'group-bot.css' => '/* Az ide elhelyezett CSS csak botokra lesz hatással */',
'htmlform-submit' => 'Elküldés',
'htmlform-reset' => 'Változtatások visszavonása',
'htmlform-selectorother-other' => 'egyéb',
+'htmlform-no' => 'Nem',
+'htmlform-yes' => 'Igen',
# SQLite database support
'sqlite-has-fts' => '$1 teljes szöveges keresés támogatással',
* @file
*
* @author Chaojoker
+ * @author Nemo bis
* @author Pandukht
* @author Reedy
* @author Ruben Vardanyan (me@RubenVardanyan.com)
'oct' => 'հոկ',
'nov' => 'նոյ',
'dec' => 'դեկ',
+'january-date' => 'Հունվարի $1',
+'february-date' => 'Փետրվարի $1',
+'march-date' => 'Մարտի $1',
+'april-date' => 'Ապրիլի $1',
+'may-date' => 'Մայիսի $1',
+'june-date' => 'Հունիսի $1',
+'july-date' => 'Հուլիսի $1',
+'august-date' => 'Օգոստոսի $1',
+'september-date' => 'Սեպտեմբերի $1',
+'october-date' => 'Հոկտեմբերի $1',
+'november-date' => 'Նոյեմբերի $1',
+'december-date' => 'Դեկտեմբերի $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Կատեգորիա|Կատեգորիաներ}}',
'vector-action-move' => 'Տեղափոխել այս էջը',
'vector-action-protect' => 'Պաշտպանել',
'vector-action-undelete' => 'Վերականգնել',
-'vector-action-unprotect' => 'Հանել պաշտպանումից',
+'vector-action-unprotect' => 'Փոխել պաշտպանումը',
+'vector-simplesearch-preference' => 'Միացնել պարզեցված որոնման դաշտը (միայն Վեկտոր թեմայի դեպքում)',
'vector-view-create' => 'Ստեղծել',
'vector-view-edit' => 'Խմբագրել',
'vector-view-history' => 'Դիտել պատմությունը',
'disclaimers' => 'Ազատում պատասխանատվությունից',
'disclaimerpage' => 'Project:Ազատում պատասխանատվությունից',
'edithelp' => 'Խմբագրման ուղեցույց',
-'edithelppage' => 'Help:Խմբագրում',
'helppage' => 'Help:Գլխացանկ',
'mainpage' => 'Գլխավոր էջ',
'mainpage-description' => 'Գլխավոր էջ',
'welcomecreation-msg' => 'Ձեր հաշիվն ստեղծված է։
Չմոռանաք փոփոխել ձեր [[Special:Preferences|նախընտրությունները]]։',
'yourname' => 'Մասնակցի անուն՝',
+'userlogin-yourname' => 'Մասնակցային անուն',
+'userlogin-yourname-ph' => 'Մուտքագրեք ձեր մասնակցային անունը',
'yourpassword' => 'Գաղտնաբառ՝',
+'userlogin-yourpassword' => 'Գաղտնաբառ',
+'userlogin-yourpassword-ph' => 'Մուտքագրեք ձեր գաղտնաբառը',
+'createacct-yourpassword-ph' => 'Մուտքագրեք գաղտնաբառը',
'yourpasswordagain' => 'Կրկնեք գաղտնաբառը',
-'remembermypassword' => 'Հիշել իմ մուտքագրված տվյալները այս համակարգչում ($1 {{PLURAL:$1|օրից|օրից}} ոչ ավել ժամկետով)',
+'createacct-yourpasswordagain' => 'Հաստատեք գաղտնաբառը',
+'createacct-yourpasswordagain-ph' => 'Կրկին մուտքագրեք գաղտնաբառը',
+'remembermypassword' => 'Հիշել իմ մուտքը այս դիտարկչում ($1 {{PLURAL:$1|օրից}} ոչ ավել ժամկետով)',
+'userlogin-remembermypassword' => 'Մուտք գործած մնալ',
+'userlogin-signwithsecure' => 'Օգտագործել անվտանգ միացում',
+'securelogin-stick-https' => 'Մուտք գործելուց հետո շարունակել աշխատանքը HTTPS–ով',
'yourdomainname' => 'Ձեր դոմենը՝',
'password-change-forbidden' => 'Այս վիքիում չեք կարող փոխել գաղտնաբառ։',
'externaldberror' => 'Տեղի է ունեցել վավերացման արտաքին տվյալների բազայի սխալ, կամ դուք չունեք բավարար իրավունքներ ձեր արտաքին հաշվի փոփոխման համար։',
'logout' => 'Դուրս գալ համակարգից',
'userlogout' => 'Ելնել համակարգից',
'notloggedin' => 'Դուք չեք մտել համակարգ',
-'userlogin-joinproject' => 'Միցել է {{SITENAME}}-{{grammar:genitive|ը}}',
-'nologin' => "Դեռևս չե՞ք գրանցվել '''$1'''։",
-'nologinlink' => 'Ստեղծեք մասնակցային հաշիվ',
+'userlogin-noaccount' => 'Հաշիվ չունե՞ք։',
+'userlogin-joinproject' => 'Միացեք {{SITENAME}} նախագծին',
+'nologin' => "Չունե՞ք հաշիվ '''$1'''։",
+'nologinlink' => 'Ստեղծել մասնակցային հաշիվ',
'createaccount' => 'Ստեղծել նոր հաշիվ',
'gotaccount' => "Դուք արդեն գրանցվա՞ծ եք։ '''$1'''։",
'gotaccountlink' => 'Մուտք գործեք համակարգ',
-'userlogin-resetlink' => 'Մոռացե՞լ եք Ձեր լոգին տվյալները։',
+'userlogin-resetlink' => 'Մոռացե՞լ եք Ձեր հաշվի տվյալները։',
+'userlogin-resetpassword-link' => 'Զրոյացնել ձեր գաղտնաբառը։',
+'createacct-join' => 'Մուտքագրեք Ձեր տեղեկությունները ստորև',
'createacct-emailrequired' => 'Էլ-փոստի հասցեն',
-'createaccountmail' => 'էլ-փոստով',
+'createacct-emailoptional' => 'Էլ–փոստի հասցե (ոչ պարտադիր)',
+'createacct-email-ph' => 'Մուտքագրեք ձեր էլ–փոստի հասցեն',
+'createaccountmail' => 'Օգտագործել ժամանակավոր պատահական գաղտնաբառ, որը կուղարկվի ձեր էլ–փոստի հասցեին։',
+'createacct-realname' => 'Իրական անուն (պարտադիր չէ)',
'createaccountreason' => 'Պատճառը՝',
'createacct-reason' => 'Պատճառ',
-'createacct-reason-ph' => 'Ինչու եք ստեղծել մեկ այլ հաշիվ',
+'createacct-reason-ph' => 'Ինչո՞ւ եք փորձում ստեղծել մեկ այլ հաշիվ',
'createacct-captcha' => 'Անվտանգության ստուգում',
-'createacct-imgcaptcha-ph' => 'Õ\84Õ¸Ö\82Õ¿Ö\84Õ¡Õ£Ö\80Õ¥Ö\84 Õ¿Õ¥Ö\84Õ½Õ¿Õ¨ Õ¿Õ¥Õ½Õ¶Õ¸Ö\82Õ´ Õ¥Ö\84 Õ¾Õ¥Ö\80Õ¨ Õ¶Õ·Õ¾Õ¡Õ®ը',
-'createacct-submit' => 'Ստեղծեք ձեր հաշիվը',
-'createacct-benefit-heading' => '{{SITENAME}}-ը կատարվում է նման մարդկանց համար:',
-'createacct-benefit-body1' => '{{PLURAL:$1|ÕÕ´Õ¢Õ¡Õ£Ö\80Õ¥Õ¬|ÕÕ´Õ¢Õ¡Õ£Ö\80Õ¸Ö\82Õ´Õ¶Õ¥Ö\80}}',
-'createacct-benefit-body2' => '{{PLURAL:$1|էջ|էջեր}}',
-'createacct-benefit-body3' => 'Õ¾Õ¥Ö\80Õ»Õ«Õ¶ {{PLURAL:$1|Õ¶Õ¥Ö\80Õ¤Ö\80Õ¸Ö\82Õ´Õ¨|Õ¶Õ¥Ö\80Õ¤Ö\80Õ¸Ö\82Õ´Õ¶Õ¥Ö\80Õ¨}}',
+'createacct-imgcaptcha-ph' => 'Õ\84Õ¸Ö\82Õ¿Ö\84Õ¡Õ£Ö\80Õ¥Ö\84 Õ¾Õ¥Ö\80Õ¨ Õ¢Õ¥Ö\80Õ¾Õ¡Õ® Õ£Ö\80Õ¾Õ¡Õ®Ö\84ը',
+'createacct-submit' => 'Ստեղծել ձեր հաշիվը',
+'createacct-benefit-heading' => '{{SITENAME}}՝ ստեղծված ձեր պես մարդկանց կողմից։',
+'createacct-benefit-body1' => '{{PLURAL:$1|ÕÕ´Õ¢Õ¡Õ£Ö\80Õ¸Ö\82Õ´}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|էջ}}',
+'createacct-benefit-body3' => 'Õ¾Õ¥Ö\80Õ»Õ¥Ö\80Õ½ Õ¡Õ¯Õ¿Õ«Õ¾ {{PLURAL:$1|Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«Ö\81}}',
'badretype' => 'Ձեր մուտքագրած գաղտնաբառերը չեն համընկնում։',
'userexists' => 'Այս մասնակցի անունը արդեն զբաղված է։ Խնդրում ենք ընտրել մեկ այլ անուն։',
'loginerror' => 'Մուտքի սխալ',
# Special:PasswordReset
'passwordreset' => 'Վերականգնել գաղտնաբառը',
-'passwordreset-text' => 'Լրացրեք ձևը՝ էլ-փոստով ձեր տվյալների մասին հիշեցում ստանալու համար։',
'passwordreset-legend' => 'Վերականգնել գաղտնաբառը',
'passwordreset-disabled' => 'Գաղտնաբառի վերականգնումը այս վիքիում թույլատրված չէ։',
'passwordreset-username' => 'Մասնակցի անուն՝',
'log-fulllog' => 'Դիտել ամբողջական տեղեկամատյանը',
'edit-conflict' => 'Խմբագրման ընհարում։',
'edit-no-change' => 'Ձեր խմբագրումը անտեսվել է, քանի որ ոչ մի փոփոխություն չի կատարվել տեքստի մեջ։',
+'postedit-confirmation' => 'Ձեր խմբագրումը պահպանված է:',
'defaultmessagetext' => 'Լռելյան տեքստը',
'editwarning-warning' => 'Այս էջը լքելով դուք կարող եք կորցնել ձեր կատարած փոփոխությունները։
Եթե դուք գրանցված եք համակարգում, կարող եք անջատել այս նախազգուշացումը ձեր նախընրությունների «{{int:prefs-editing}}» բաժնում։',
'searchmenu-legend' => 'Որոնման ընտրանքներ',
'searchmenu-exists' => "'''Այս վիքիում, գոյություն ունի \"[[:\$1]]\" անվանումով էջը։'''",
'searchmenu-new' => "'''Ստեղծե՛լ \"[[:\$1]]\" էջը այս վիքիում'''",
-'searchhelp-url' => 'Help:Գլխացանկ',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ցուցադրել այս նախածանցով սկսվող էջերը]]',
'searchprofile-articles' => 'Հիմնական էջեր',
'searchprofile-project' => 'Օգնության և նախագծերի էջեր',
'notanarticle' => 'Հոդված չէ',
'watchnochange' => 'Ոչ մի հսկվող էջ չի փոփոխվել ցուցադրվող ժամանակահատվածում։',
'watchlist-details' => 'Ձեր հսկացանկում կա {{PLURAL:$1|$1 էջ|$1 էջ}}` քննարկման էջերը չհաշված։',
-'wlheader-enotif' => '* Էլ-փոստով տեղեկացումը միացված է։',
-'wlheader-showupdated' => "* Էջերը, որոնք փոփոխվել են ձեր դրանց վերջին այցից հետո բերված են '''թավատառ'''։",
+'wlheader-enotif' => 'Էլ-փոստով տեղեկացումը միացված է։',
+'wlheader-showupdated' => "Էջերը, որոնք փոփոխվել են ձեր դրանց վերջին այցից հետո բերված են '''թավատառ'''։",
'watchmethod-recent' => 'վերջին փոփոխությունները հսկվող էջերի համար',
'watchmethod-list' => 'հսկվող էջերի վերջին փոփոխությունները',
'watchlistcontains' => 'Ձեր հսկացանկում կա $1 {{PLURAL:$1|էջ|էջ}}։',
* @ingroup Language
* @file
*
+ * @author Geitost
* @author Julian Mendez
* @author Kaganer
* @author Malafaya
* @author McDutchie
+ * @author Nemo bis
* @author Reedy
* @author Yfdyh000
* @author לערי ריינהארט
'oct' => 'oct',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1 de januario',
+'february-date' => '$1 de februario���',
+'march-date' => '$1 de martio',
+'april-date' => '$1 de april',
+'may-date' => '$1 de maio',
+'june-date' => '$1 de junio',
+'july-date' => '$1 de julio',
+'august-date' => '$1 de augusto',
+'september-date' => '$1 de septembre',
+'october-date' => '$1 de octobre',
+'november-date' => '$1 de novembre',
+'december-date' => '$1 de decembre',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoria|Categorias}}',
'create-this-page' => 'Crear iste pagina',
'delete' => 'Deler',
'deletethispage' => 'Deler iste pagina',
+'undeletethispage' => 'Restaurar iste pagina',
'undelete_short' => 'Restaurar {{PLURAL:$1|un modification|$1 modificationes}}',
'viewdeleted_short' => 'Vider {{PLURAL:$1|un modification|$1 modificationes}} delite',
'protect' => 'Proteger',
'disclaimers' => 'Declaration de non-responsabilitate',
'disclaimerpage' => 'Project:Declaration general de non-responsabilitate',
'edithelp' => 'Adjuta de modification',
-'edithelppage' => 'Help:Modification',
'helppage' => 'Help:Contento',
'mainpage' => 'Pagina principal',
'mainpage-description' => 'Pagina principal',
'namespaceprotected' => "Tu non ha le permission de modificar paginas in le spatio de nomines '''$1'''.",
'customcssprotected' => 'Tu non ha le permission de modificar iste pagina de CSS perque illo contine le configuration personal de un altere usator.',
'customjsprotected' => 'Tu non ha le permission de modificar iste pagina de JavaScript perque illo contine le configuration personal de un altere usator.',
+'mycustomcssprotected' => 'Tu non ha le permission de modificar iste pagina de CSS.',
+'mycustomjsprotected' => 'Tu non ha le permission de modificar iste pagina de JavaScript.',
'ns-specialprotected' => 'Le paginas special non es modificabile.',
'titleprotected' => "Iste titulo ha essite protegite contra creation per [[User:$1|$1]].
Le motivo specificate es ''$2''.",
'createacct-yourpasswordagain-ph' => 'Repete le contrasigno',
'remembermypassword' => 'Memorar mi contrasigno in iste navigator (pro un maximo de $1 {{PLURAL:$1|die|dies}})',
'userlogin-remembermypassword' => 'Mantener mi session aperte',
-'userlogin-signwithsecure' => 'Aperir session con servitor secur',
+'userlogin-signwithsecure' => 'Usar un connexion secur',
'securelogin-stick-https' => 'Remaner connectite via HTTPS post apertura de session',
'yourdomainname' => 'Tu dominio:',
'password-change-forbidden' => 'Non es possibile cambiar le contrasigno in iste wiki.',
'userlogout' => 'Clauder session',
'notloggedin' => 'Tu non ha aperite un session',
'userlogin-noaccount' => 'Non ha un conto?',
-'nologin' => "Tu non ha un conto? '''$1'''.",
+'userlogin-joinproject' => 'Crear un conto in {{SITENAME}}',
+'nologin' => 'Tu non ha un conto? $1.',
'nologinlink' => 'Crear un conto',
'createaccount' => 'Crear conto',
'gotaccount' => "Tu jam ha un conto? '''$1'''.",
'gotaccountlink' => 'Aperir session',
'userlogin-resetlink' => 'Datos de authentication oblidate?',
+'userlogin-resetpassword-link' => 'Reinitialisar contrasigno',
'helplogin-url' => 'Help:Aperir session',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Adjuta a aperir session]]',
+'createacct-join' => 'Specifica tu information hic infra.',
+'createacct-emailrequired' => 'Adresse de e-mail',
+'createacct-emailoptional' => 'Adresse de e-mail (optional)',
+'createacct-email-ph' => 'Entra tu adresse de e-mail',
'createaccountmail' => 'Usar un contrasigno aleatori temporari e inviar lo al adresse de e-mail specificate hic infra',
+'createacct-realname' => 'Nomine real (optional)',
'createaccountreason' => 'Motivo:',
+'createacct-reason' => 'Motivo',
+'createacct-reason-ph' => 'Proque crea tu un altere conto?',
+'createacct-captcha' => 'Controlo de securitate',
+'createacct-imgcaptcha-ph' => 'Scribe le texto que tu vide hic supra',
+'createacct-submit' => 'Crear tu conto',
+'createacct-benefit-heading' => '{{SITENAME}} es facite per gente como tu.',
+'createacct-benefit-body1' => '{{PLURAL:$1|modification|modificationes}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|pagina|paginas}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|contributor|contributores}} recente',
'badretype' => 'Le duo contrasignos que tu scribeva non es identic.',
'userexists' => 'Iste nomine de usator es jam in uso.
Selige un altere nomine.',
'loginerror' => 'Error in le apertura del session',
+'createacct-error' => 'Error de creation de conto',
'createaccounterror' => 'Non poteva crear le conto: $1',
'nocookiesnew' => "Le conto de usator ha essite create, sed tu non ha aperite un session.
{{SITENAME}} usa ''cookies'' pro mantener le sessiones del usatores.
'cannotchangeemail' => 'Le adresses de e-mail associate al contos non pote esser cambiate in iste wiki.',
'emaildisabled' => 'Iste sito non pote inviar e-mail.',
'accountcreated' => 'Conto create',
-'accountcreatedtext' => 'Le conto del usator $1 ha essite create.',
+'accountcreatedtext' => 'Le conto de usator [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|discussion]]) ha essite create.',
'createaccount-title' => 'Creation de un conto pro {{SITENAME}}',
'createaccount-text' => 'Un persona ha create un conto in tu adresse de e-mail a {{SITENAME}} ($4) denominate "$2", con le contrasigno "$3".
Tu deberea aperir un session e cambiar tu contrasigno ora.
'resetpass-wrong-oldpass' => 'Le contrasigno temporari o actual es invalide.
Es possibile que tu ha ja cambiate tu contrasigno o requestate un nove contrasigno temporari.',
'resetpass-temp-password' => 'Contrasigno temporari:',
+'resetpass-abort-generic' => 'Le cambio del contrasigno ha essite abortate per un extension.',
# Special:PasswordReset
'passwordreset' => 'Reinitialisar contrasigno',
-'passwordreset-text' => 'Completa iste formulario pro reinitialisar tu contrasigno.',
+'passwordreset-text-one' => 'Completa iste formulario pro reinitialisar tu contrasigno.',
+'passwordreset-text-many' => '{{PLURAL:$1|Entra un de iste datos pro reinitialisar tu contrasigno.}}',
'passwordreset-legend' => 'Reinitialisar contrasigno',
'passwordreset-disabled' => 'Le reinitialisation de contrasignos ha essite disactivate in iste wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Entra un del elementos de datos hic infra}}',
+'passwordreset-emaildisabled' => 'Le functionalitate de e-mail ha essite disactivate in iste wiki.',
'passwordreset-username' => 'Nomine de usator:',
'passwordreset-domain' => 'Dominio:',
'passwordreset-capture' => 'Vider le e-mail resultante?',
requesta, o si tu te ha rememorate tu contrasigno original e non plus
vole cambiar lo, tu pote ignorar iste message e continuar a usar le ancian
contrasigno.',
-'passwordreset-emailtext-user' => 'Le usator $1 in {{SITENAME}} requestava un rememoration del detalios de tu conto in {{SITENAME}}
+'passwordreset-emailtext-user' => 'Le usator $1 in {{SITENAME}} requestava un reinitialisation de tu contrasigno in {{SITENAME}}
($4). Le {{PLURAL:$3|conto|contos}} de usator sequente es associate con iste adresse de e-mail:
$2
contrasigno.',
'passwordreset-emailelement' => 'Nomine de usator: $1
Contrasigno temporari: $2',
-'passwordreset-emailsent' => 'Un e-mail de rememoration ha essite inviate.',
-'passwordreset-emailsent-capture' => 'Un e-mail de rememoration ha essite inviate; iste message es monstrate hic infra.',
-'passwordreset-emailerror-capture' => 'Un e-mail de rememoration ha essite generate; iste message es monstrate hic infra, ma le invio al usator ha fallite: $1',
+'passwordreset-emailsent' => 'Un message de e-mail pro le reinitialisation del contrasigno ha essite inviate.',
+'passwordreset-emailsent-capture' => 'Un message de e-mail pro le reinitialisation del contrasigno ha essite inviate; iste message es monstrate hic infra.',
+'passwordreset-emailerror-capture' => 'Un e-mail pro le reinitialisation del contrasigno ha essite generate; iste message es monstrate hic infra, ma le invio al {{GENDER:$2|usator}} ha fallite: $1',
# Special:ChangeEmail
'changeemail' => 'Cambiar adresse de e-mail',
Pare que illo ha essite delite.',
'edit-conflict' => 'Conflicto inter modificationes.',
'edit-no-change' => 'Tu modification ha essite ignorate, proque nulle cambio esseva facite in le texto.',
+'postedit-confirmation' => 'Tu modification ha essite salveguardate.',
'edit-already-exists' => 'Non poteva crear un nove pagina.
Illo existe ja.',
'defaultmessagetext' => 'Texto predefinite del message',
'invalid-content-data' => 'Datos de contento invalide',
'content-not-allowed-here' => 'Le contento "$1" non es permittite in le pagina [[$2]]',
'editwarning-warning' => 'Quitar iste pagina pote causar le perdita de omne modificationes que tu ha facite.
-Si tu ha aperite un session, tu pote disactivar iste aviso in le section "{{int:prefs-editing}}" de tu preferentias.',
+Si tu ha aperite un session, tu pote disactivar iste aviso in le section "Modification" de tu preferentias.',
# Content models
'content-model-wikitext' => 'wikitexto',
'searchmenu-legend' => 'Optiones de recerca',
'searchmenu-exists' => "'''Existe un pagina nominate \"[[\$1]]\" in iste wiki'''",
'searchmenu-new' => "'''Crea le pagina \"[[:\$1]]\" in iste wiki!'''",
-'searchhelp-url' => 'Help:Contento',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Navigar per le paginas con iste prefixo]]',
'searchprofile-articles' => 'Paginas de contento',
'searchprofile-project' => 'Paginas de adjuta e del projecto',
'searchdisabled' => 'Le recerca in {{SITENAME}} es disactivate.
Tu pote cercar via Google in le interim.
Nota que lor indices del contento de {{SITENAME}} pote esser obsolete.',
+'search-error' => 'Un error ha occurrite durante le recerca: $1',
# Preferences page
'preferences' => 'Preferentias',
'userrights-notallowed' => 'Tu conto non ha le permission de adder o remover derectos de usator.',
'userrights-changeable-col' => 'Gruppos que tu pote modificar',
'userrights-unchangeable-col' => 'Gruppos que tu non pote modificar',
+'userrights-conflict' => 'Conflicto inter derectos de usator! Per favor applica tu cambiamentos de novo.',
+'userrights-removed-self' => 'Tu ha removite con successo tu proprie derectos. In consequentia, tu non plus pote acceder a iste pagina.',
# Groups
'group' => 'Gruppo:',
'right-editusercssjs' => 'Modificar le files CSS e JS de altere usatores',
'right-editusercss' => 'Modificar le files CSS de altere usatores',
'right-edituserjs' => 'Modificar le files JS de altere usatores',
+'right-editmyusercss' => 'Modificar le proprie files CSS de usator',
+'right-editmyuserjs' => 'Modificar le proprie files JavaScript de usator',
+'right-viewmywatchlist' => 'Vider le proprie observatorio',
+'right-editmywatchlist' => 'Modificar le proprie observatorio. Remarca que alcun actiones totevia adde paginas mesmo sin iste derecto.',
'right-rollback' => 'Rapidemente revocar le modificationes del ultime usator que modificava un pagina particular',
'right-markbotedits' => 'Marcar modificationes de reversion como facite per un bot',
'right-noratelimit' => 'Non esser subjecte al limites de frequentia de actiones',
'action-userrights-interwiki' => 'modificar le derectos de usatores in altere wikis',
'action-siteadmin' => 'blocar e disblocar le base de datos',
'action-sendemail' => 'inviar e-mail',
+'action-editmywatchlist' => 'modificar le proprie observatorio',
+'action-viewmywatchlist' => 'vider le proprie observatorio',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|modification|modificationes}}',
'reuploaddesc' => 'Cancellar e retornar al formulario de incargamento',
'upload-tryagain' => 'Submitter description modificate del file',
'uploadnologin' => 'Tu non ha aperite un session',
-'uploadnologintext' => 'Tu debe [[Special:UserLogin|aperir un session]] pro poter incargar files.',
+'uploadnologintext' => 'Tu debe $1 pro poter incargar files.',
'upload_directory_missing' => 'Le directorio de incargamento ($1) manca, e le servitor de web non poteva crear lo.',
'upload_directory_read_only' => 'Le servitor web non ha le permission de scriber in le directorio de incargamento ($1).',
'uploaderror' => 'Error de incargamento',
'notvisiblerev' => 'Le version ha essite delite',
'watchnochange' => 'Nulle articulo que tu observa esseva modificate durante le periodo de tempore indicate.',
'watchlist-details' => '{{PLURAL:$1|$1 pagina|$1 paginas}} es in tu observatorio, sin contar le paginas de discussion.',
-'wlheader-enotif' => '* Le notificationes via e-mail es active.',
-'wlheader-showupdated' => "* Le paginas que ha essite modificate post tu ultime visita se monstra in litteras '''grasse'''",
+'wlheader-enotif' => 'Le notification via e-mail es active.',
+'wlheader-showupdated' => "Le paginas que ha essite modificate post tu ultime visita se monstra in litteras '''grasse'''.",
'watchmethod-recent' => 'cerca paginas sub observation in modificationes recente',
'watchmethod-list' => 'cerca modificationes recente in paginas sub observation',
'watchlistcontains' => 'Tu observatorio contine $1 {{PLURAL:$1|pagina|paginas}}.',
'sorbsreason' => 'Tu adresse IP es listate como proxy aperte in le DNSBL usate per {{SITENAME}}.',
'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',
'thumbnail-more' => 'Aggrandir',
'filemissing' => 'File manca',
'thumbnail_error' => 'Error durante le creation del miniatura: $1',
+'thumbnail_error_remote' => 'Message de error ab $1:
+$2',
'djvu_page_error' => 'Pagina DjVu foras de limite',
'djvu_no_xml' => 'Impossibile obtener XML pro file DjVu',
'thumbnail-temp-create' => 'Impossibile crear un file temporari de miniatura',
'modern.css' => '/* Le CSS placiate hic afficera le usatores del apparentia Moderne */',
'vector.css' => '/* Le CSS placiate hic afficera le usatores del apparentia Vector */',
'print.css' => '/* Le CSS placiate hic influentiara le apparentia del paginas imprimite */',
-'handheld.css' => '/* Le CSS placiate hic afficera le apparatos mobile basate super le apparentia configurate in $wgHandheldStyle */',
# Scripts
'common.js' => '/* Omne JavaScript hic se executara pro tote le usatores a cata cargamento de pagina. */',
'minutes' => '{{PLURAL:$1|$1 minuta|$1 minutas}}',
'hours' => '{{PLURAL:$1|$1 hora|$1 horas}}',
'days' => '{{PLURAL:$1|$1 die|$1 dies}}',
+'weeks' => '$1 {{PLURAL:$1|septimana|septimanas}}',
'months' => '{{PLURAL:$1|$1 mense|$1 menses}}',
'years' => '{{PLURAL:$1|$1 anno|$1 annos}}',
'ago' => '$1 retro',
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath Cammino al articulo]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath Cammino al script]',
+# Special:Redirect
+'redirect' => 'Rediriger per nomine de file, ID de usator o ID de version',
+'redirect-legend' => 'Rediriger a un file o pagina',
+'redirect-summary' => 'Iste pagina special redirige a un file (si es date le nomine de un file), a un pagina (si es date un ID de version) o a un pagina de usator (si es date un ID de usator numeric).',
+'redirect-submit' => 'Va',
+'redirect-lookup' => 'Cercar:',
+'redirect-value' => 'Valor:',
+'redirect-user' => 'ID de usator',
+'redirect-revision' => 'Version de pagina',
+'redirect-file' => 'Nomine de file',
+'redirect-not-exists' => 'Valor non trovate',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Cercar files duplicate',
'fileduplicatesearch-summary' => "Cercar files duplicate a base de lor summas de verification ''(hash).''",
'htmlform-submit' => 'Submitter',
'htmlform-reset' => 'Disfacer modificationes',
'htmlform-selectorother-other' => 'Altere',
+'htmlform-no' => 'No',
+'htmlform-yes' => 'Si',
+'htmlform-chosen-placeholder' => 'Selige un option',
# SQLite database support
'sqlite-has-fts' => '$1 con supporto de recerca de texto integre',
'sqlite-no-fts' => '$1 sin supporto de recerca de texto integre',
# New logging system
-'logentry-delete-delete' => '$1 deleva le pagina $3',
-'logentry-delete-restore' => '$1 restaurava le pagina $3',
-'logentry-delete-event' => '$1 cambiava le visibilitate de {{PLURAL:$5|un entrata|$5 entratas}} de registro in $3: $4',
-'logentry-delete-revision' => '$1 cambiava le visibilitate de {{PLURAL:$5|un version|$5 versiones}} del pagina $3: $4',
-'logentry-delete-event-legacy' => '$1 cambiava le visibilitate de entratas de registro in $3',
-'logentry-delete-revision-legacy' => '$1 cambiava le visibilitate de versiones del pagina $3',
-'logentry-suppress-delete' => '$1 supprimeva le pagina $3',
-'logentry-suppress-event' => '$1 secretemente cambiava le visibilitate de {{PLURAL:$5|un entrata|$5 entratas}} de registro in $3: $4',
-'logentry-suppress-revision' => '$1 secretemente cambiava le visibilitate de {{PLURAL:$5|un version|$5 versiones}} del pagina $3: $4',
-'logentry-suppress-event-legacy' => '$1 secretemente cambiava le visibilitate de entratas de registro in $3',
-'logentry-suppress-revision-legacy' => '$1 secretemente cambiava le visibilitate de versiones del pagina $3',
+'logentry-delete-delete' => '$1 {{GENDER:$2|deleva}} le pagina $3',
+'logentry-delete-restore' => '$1 {{GENDER:$2|restaurava}} le pagina $3',
+'logentry-delete-event' => '$1 {{GENDER:$2|cambiava}} le visibilitate de {{PLURAL:$5|un entrata|$5 entratas}} de registro in $3: $4',
+'logentry-delete-revision' => '$1 {{GENDER:$2|cambiava}} le visibilitate de {{PLURAL:$5|un version|$5 versiones}} del pagina $3: $4',
+'logentry-delete-event-legacy' => '$1 {{GENDER:$2|cambiava}} le visibilitate de entratas de registro in $3',
+'logentry-delete-revision-legacy' => '$1 {{GENDER:$2|cambiava}} le visibilitate de versiones del pagina $3',
+'logentry-suppress-delete' => '$1 {{GENDER:$2|supprimeva}} le pagina $3',
+'logentry-suppress-event' => '$1 secretemente {{GENDER:$2|cambiava}} le visibilitate de {{PLURAL:$5|un entrata|$5 entratas}} de registro in $3: $4',
+'logentry-suppress-revision' => '$1 secretemente {{GENDER:$2|cambiava}} le visibilitate de {{PLURAL:$5|un version|$5 versiones}} del pagina $3: $4',
+'logentry-suppress-event-legacy' => '$1 secretemente {{GENDER:$2|cambiava}} le visibilitate de entratas de registro in $3',
+'logentry-suppress-revision-legacy' => '$1 secretemente {{GENDER:$2|cambiava}} le visibilitate de versiones del pagina $3',
'revdelete-content-hid' => 'contento celate',
'revdelete-summary-hid' => 'summario del modification celate',
'revdelete-uname-hid' => 'nomine de usator celate',
'revdelete-uname-unhid' => 'nomine de usator non plus celate',
'revdelete-restricted' => 'restrictiones applicate al administratores',
'revdelete-unrestricted' => 'restrictiones eliminate pro administratores',
-'logentry-move-move' => '$1 renominava le pagina $3 a $4',
-'logentry-move-move-noredirect' => '$1 renominava le pagina $3 a $4 sin lassar un redirection',
-'logentry-move-move_redir' => '$1 renominava le pagina $3 a $4, superscribente un redirection',
-'logentry-move-move_redir-noredirect' => '$1 renominava le pagina $3 a $4, superscribente un redirection sin lassar un nove redirection',
-'logentry-patrol-patrol' => '$1 marcava le version $4 del pagina $3 como patruliate',
-'logentry-patrol-patrol-auto' => '$1 automaticamente marcava le version $4 del pagina $3 como patruliate',
-'logentry-newusers-newusers' => 'Le conto de usator $1 ha essite create',
-'logentry-newusers-create' => 'Le conto de usator $1 ha essite create',
-'logentry-newusers-create2' => 'Le conto de usator $3 ha essite create per $1',
-'logentry-newusers-byemail' => 'Le conto de usator $3 ha essite create per $1 e le contrasigno ha essite inviate per e-mail',
-'logentry-newusers-autocreate' => 'Le conto $1 ha essite create automaticamente',
-'logentry-rights-rights' => '$1 cambiava le appertinentia a gruppos pro $3 de $4 a $5',
-'logentry-rights-rights-legacy' => '$1 cambiava le appertinentia a gruppos pro $3',
-'logentry-rights-autopromote' => '$1 ha essite automaticamente promovite de $4 a $5',
+'logentry-move-move' => '$1 {{GENDER:$2|renominava}} le pagina $3 a $4',
+'logentry-move-move-noredirect' => '$1 {{GENDER:$2|renominava}} le pagina $3 a $4 sin lassar un redirection',
+'logentry-move-move_redir' => '$1 {{GENDER:$2|renominava}} le pagina $3 a $4, superscribente un redirection',
+'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2|renominava}} le pagina $3 a $4, superscribente un redirection sin lassar un nove redirection',
+'logentry-patrol-patrol' => '$1 {{GENDER:$2|marcava}} le version $4 del pagina $3 como patruliate',
+'logentry-patrol-patrol-auto' => '$1 automaticamente {{GENDER:$2|marcava}} le version $4 del pagina $3 como patruliate',
+'logentry-newusers-newusers' => 'Le conto de usator $1 ha essite {{GENDER:$2|create}}',
+'logentry-newusers-create' => 'Le conto de usator $1 ha essite {{GENDER:$2|create}}',
+'logentry-newusers-create2' => 'Le conto de usator $3 ha essite {{GENDER:$2|create}} per $1',
+'logentry-newusers-byemail' => 'Le conto de usator $3 ha essite {{GENDER:$2|create}} per $1 e le contrasigno ha essite inviate per e-mail',
+'logentry-newusers-autocreate' => 'Le conto $1 ha essite {{GENDER:$2|create}} automaticamente',
+'logentry-rights-rights' => '$1 {{GENDER:$2|cambiava}} le appertinentia a gruppos pro $3 de $4 a $5',
+'logentry-rights-rights-legacy' => '$1 {{GENDER:$2|cambiava}} le appertinentia a gruppos pro $3',
+'logentry-rights-autopromote' => '$1 ha essite automaticamente {{GENDER:$2|promovite}} de $4 a $5',
'rightsnone' => '(nulle)',
# Feedback
* @author Borgx
* @author Dosmiin Barsbold
* @author Farras
+ * @author Geitost
* @author Gombang
* @author Irwangatot
* @author IvanLanin
'oct' => 'Okt',
'nov' => 'Nov',
'dec' => 'Des',
+'january-date' => '$1 Januari',
+'february-date' => '$1 Februari',
+'march-date' => '$1 Maret',
+'april-date' => '$1 April',
+'may-date' => '$1 Mei',
+'june-date' => '$1 Juni',
+'july-date' => '$1 Juli',
+'august-date' => '$1 Agustus',
+'september-date' => '$1 September',
+'october-date' => '$1 Oktober',
+'november-date' => '$1 November',
+'december-date' => '$1 Desember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori}}',
'unprotectthispage' => 'Ubah perlindungan halaman ini',
'newpage' => 'Halaman baru',
'talkpage' => 'Bicarakan halaman ini',
-'talkpagelinktext' => 'Bicara',
+'talkpagelinktext' => 'bicara',
'specialpage' => 'Halaman istimewa',
'personaltools' => 'Peralatan pribadi',
'postcomment' => 'Bagian baru',
'disclaimers' => 'Penyangkalan',
'disclaimerpage' => 'Project:Penyangkalan umum',
'edithelp' => 'Bantuan penyuntingan',
-'edithelppage' => 'Help:Penyuntingan',
'helppage' => 'Help:Isi',
'mainpage' => 'Halaman Utama',
'mainpage-description' => 'Halaman Utama',
'notloggedin' => 'Belum masuk log',
'userlogin-noaccount' => 'Belum punya akun?',
'userlogin-joinproject' => 'Join {{SITENAME}}',
-'nologin' => "Belum mempunyai akun? '''$1'''.",
+'nologin' => 'Belum mempunyai akun? $1.',
'nologinlink' => 'Daftarkan akun baru',
'createaccount' => 'Buat akun baru',
'gotaccount' => "Sudah terdaftar sebagai pengguna? '''$1'''.",
'resetpass-abort-generic' => 'Perubahan kata sandi telah dibatalkan oleh ekstensi.',
# Special:PasswordReset
-'passwordreset' => 'Setel ulang sandi',
-'passwordreset-text' => 'Lengkapi formulir ini untuk menyetel ulang kata sandi.',
-'passwordreset-legend' => 'Setel ulang sandi',
+'passwordreset' => 'Setel ulang kata sandi',
+'passwordreset-text-one' => 'Lengkapi formulir ini untuk menyetel ulang kata sandi.',
+'passwordreset-text-many' => '{{PLURAL:$1|Masukkan data di bawah ini untuk menyetel ulang kata sandi Anda.}}',
+'passwordreset-legend' => 'Setel ulang kata sandi',
'passwordreset-disabled' => 'Penyetelan ulang sandi telah dimatikan di wiki ini.',
'passwordreset-emaildisabled' => 'Fitur surel telah dinonaktifkan pada wiki ini.',
-'passwordreset-pretext' => '{{PLURAL:$1||Masukkan salah satu data di bawah ini}}',
'passwordreset-username' => 'Nama pengguna:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Lihat surel yang dihasilkan?',
Halaman kemungkinan telah dihapus.',
'edit-conflict' => 'Konflik penyuntingan.',
'edit-no-change' => 'Suntingan diabaikan, karena Anda tidak melakukan perubahan atas teks.',
+'postedit-confirmation' => 'Suntingan Anda tersimpan.',
'edit-already-exists' => 'Tidak dapat membuat halaman baru
karena telah ada.',
'defaultmessagetext' => 'Teks baku',
'invalid-content-data' => 'Data konten tidak sah',
'content-not-allowed-here' => 'Konten "$1" tidak diizinkan di halaman [[$2]]',
'editwarning-warning' => 'Meninggalkan halaman ini dapat menyebabkan semua perubahan yang belum tersimpan hilang.
-Jika Anda telah masuk log, Anda dapat mematikan peringatan ini lewat "{{int:prefs-editing}}" pada halaman preferensi Anda.',
+Jika Anda telah masuk log, Anda dapat mematikan peringatan ini lewat bagian "Penyuntingan" pada halaman preferensi Anda.',
# Content models
'content-model-wikitext' => 'teks wiki',
'revdelete-nologtype-title' => 'Tipe log tak diberikan',
'revdelete-nologtype-text' => 'Anda tidak memberikan suatu tipe log untuk menerapkan tindakan ini.',
'revdelete-nologid-title' => 'Entri log tak valid',
-'revdelete-nologid-text' => 'Anda mungkin tidak menyebutkan suatu log peristiwa target untuk menjalankan fungsi ini atau entri yang dimaksud tak ditemukan.',
+'revdelete-nologid-text' => 'Anda mungkin tidak menyebutkan suatu log target peristiwa untuk menjalankan fungsi ini atau entri yang dimaksud tidak ditemukan.',
'revdelete-no-file' => 'Berkas yang dituju tidak ditemukan.',
'revdelete-show-file-confirm' => 'Apakah Anda yakin ingin melihat revisi yang telah dihapus dari berkas "<nowiki>$1</nowiki>" per $3, $2?',
'revdelete-show-file-submit' => 'Ya',
'searchmenu-legend' => 'Opsi pencarian',
'searchmenu-exists' => "* Halaman '''[[$1]]'''",
'searchmenu-new' => "'''Buat halaman \"[[:\$1]]\" di wiki ini!'''",
-'searchhelp-url' => 'Help:Isi',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Lihat daftar halaman dengan awalan ini]]',
'searchprofile-articles' => 'Halaman isi',
'searchprofile-project' => 'Halaman Bantuan dan Proyek',
'nchanges' => '$1 {{PLURAL:$1|perubahan|perubahan}}',
'recentchanges' => 'Perubahan terbaru',
'recentchanges-legend' => 'Opsi perubahan terbaru',
-'recentchanges-summary' => "Temukan perubahan terbaru dalam wiki di halaman ini. Keterangan: (beda) = perubahan, (versi) = sejarah revisi, '''B''' = halaman baru, '''k''' = suntingan kecil, '''b''' = suntingan bot, (± ''bita'') = jumlah penambahan/pengurangan isi, → = suntingan bagian, ← = ringkasan otomatis.
-----",
+'recentchanges-summary' => "Temukan perubahan terbaru dalam wiki di halaman ini.<br />
+;Keterangan:(<span style=\"color:blue;\">beda</span>) perubahan, (<span style=\"color:blue;\">versi</span>) sejarah revisi, '''B''' halaman baru, '''b''' suntingan bot, '''k''' suntingan kecil, <span class=\"unpatrolled\">!</span> perubahan belum dipatroli,<br /><span style=\"color:green;\">'''(+ ''bita'')'''</span> isi konten bertambah, <span style=\"color:red;\">(- ''bita'')</span> isi konten berkurang, (← Ringkasan otomatis), (→ <span style=\"color:grey;\">Suntingan bagian</span>)",
'recentchanges-feed-description' => 'Temukan perubahan terbaru dalam wiki di umpan ini.',
'recentchanges-label-newpage' => 'Suntingan ini membuat halaman baru',
'recentchanges-label-minor' => 'Ini adalah suntingan kecil',
'uploadjava' => 'Berkas ini adalah berkas ZIP yang mengnadung berkas .class Java.
Penggunggahan berkas Java tidak diperbolehkan karena dapat menyebabkan pengabaian batasan keamanan.',
'upload-source' => 'Berkas sumber',
-'sourcefilename' => 'Jeneng berkas sumber:',
+'sourcefilename' => 'Nama berkas sumber:',
'sourceurl' => 'URL sumber:',
'destfilename' => 'Nama berkas tujuan:',
'upload-maxfilesize' => 'Ukuran berkas maksimum: $1',
'notvisiblerev' => 'Revisi telah dihapus',
'watchnochange' => 'Tak ada halaman pantauan Anda yang telah berubah dalam jangka waktu yang dipilih.',
'watchlist-details' => 'Terdapat {{PLURAL:$1|$1 halaman|$1 halaman}} di daftar pantauan Anda, tidak termasuk halaman pembicaraan.',
-'wlheader-enotif' => '* Notifikasi surel diaktifkan.',
-'wlheader-showupdated' => "* Halaman-halaman yang telah berubah sejak kunjungan terakhir Anda ditampilkan dengan '''huruf tebal'''",
+'wlheader-enotif' => 'Notifikasi surel diaktifkan.',
+'wlheader-showupdated' => "Halaman-halaman yang telah berubah sejak kunjungan terakhir Anda ditampilkan dengan '''huruf tebal'''.",
'watchmethod-recent' => 'periksa daftar perubahan terbaru terhadap halaman yang dipantau',
'watchmethod-list' => 'periksa halaman yang dipantau terhadap perubahan terbaru',
'watchlistcontains' => 'Daftar pantauan Anda berisi $1 {{PLURAL:$1|halaman|halaman}}.',
'mycontris' => 'Kontribusi',
'contribsub2' => 'Untuk $1 ($2)',
'nocontribs' => 'Tidak ada perubahan yang sesuai dengan kriteria tersebut.',
-'uctop' => ' (atas)',
+'uctop' => '(saat ini)',
'month' => 'Sejak bulan (dan sebelumnya):',
'year' => 'Sejak tahun (dan sebelumnya):',
'modern.css' => '/* CSS yang ada di sini akan diterapkan pada kulit Modern. */',
'vector.css' => '/* CSS nan ado di siko diterapkan pado kulik Vektor. */',
'print.css' => '/* CSS yang ada di sini akan diterapkan pada tampilan cetak. */',
-'handheld.css' => '/* CSS yang ada di sini akan diterapkan untuk tampilan piranti genggam yang dikonfigurasi di $wgHandheldStyle. */',
'noscript.css' => '/* CSS di sini akan mempengaruhi pengguna dengan skrip Java non-aktif */',
'group-autoconfirmed.css' => '/* CSS di sini hanya mempengaruhi pengguna terkonfirmasi otomatis */',
'group-bot.css' => '/* CSS di sini hanya mempengaruhi bot */',
'tog-shownumberswatching' => 'Monstrar li númere de usatores vigilant',
'tog-oldsig' => 'Prevision de signature in existentie:',
'tog-fancysig' => 'Tractar signature quam textu wiki (sin un catenun auto-crate)',
-'tog-externaleditor' => 'Usar redactor extern per contumacie (solmen por usatores expert, besona de colocationes special in tui computator. [//www.mediawiki.org/wiki/Manual:External_editors Plu information.])',
-'tog-externaldiff' => 'Usar diferentie extern per contumacie (solmen por usatores expert, besona de colocationes special in tui computator. [//www.mediawiki.org/wiki/Manual:External_editors Plu information.])',
'tog-showjumplinks' => 'Permisser catenunes de accessebilitá "saltar a"',
'tog-uselivepreview' => 'Usar prevision in vivi (exige JavaScript) (experimental)',
'tog-forceeditsummary' => 'Suggester me quande intrar un redaction che summarium in blanc',
'disclaimers' => 'Advertimentes',
'disclaimerpage' => 'Project:Advertimentes comun',
'edithelp' => 'Redacter auxilie',
-'edithelppage' => 'Help:Redactant',
'helppage' => 'Help:Contenete',
'mainpage' => 'Págine principal',
'mainpage-description' => 'Págine principal',
'viewprevnext' => 'Vider ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''Vi un págine nominat \"[[:\$1]]\" in ti wiki.'''",
'searchmenu-new' => "'''Crear li págine \"[[:\$1]]\" in ti wiki!'''",
-'searchhelp-url' => 'Help:Contenete',
'searchprofile-articles' => 'Págines de contenete',
'searchprofile-project' => 'Auxilie e Págines de projecte',
'searchprofile-images' => 'Multimedia',
'search-nonefound' => 'Ne esset constatat resultates por li question.',
'powersearch' => 'Serchar avansat',
-# Quickbar
-'qbsettings' => 'Personalisation del barre de utensiles',
-
# Preferences page
'preferences' => 'Preferenties',
'mypreferences' => 'Mi preferenties',
'unwatch' => 'Desvigilar',
'watchnochange' => 'Nequant de tui tui partes vigilat esset redactet in li periode de témpor monstrat.',
'watchlist-details' => '{{PLURAL:$1|$1 págine|$1 págines}} in tui liste de págines vigilat, sin págines de discussion.',
-'wlheader-enotif' => '* Li notification de e-mail es permisset.',
-'wlheader-showupdated' => "* Págines quel hat esset mutat desde tui ultim visitation es monstrat in '''nigri'''",
+'wlheader-enotif' => 'Li notification de e-mail es permisset.',
+'wlheader-showupdated' => "Págines quel hat esset mutat desde tui ultim visitation es monstrat in '''nigri'''",
'watchmethod-recent' => 'controlant nov redactiones por págines vigilat',
'watchmethod-list' => 'controlant págines vigilat por nov redactiones',
'watchlistcontains' => 'Tui liste de págines vigilat contene $1 {{PLURAL:$1|págine|págines}}.',
'version-software-product' => 'Producte',
'version-software-version' => 'Version',
-# Special:FilePath
-'filepath-page' => 'Figura:',
-
# Special:SpecialPages
'specialpages' => 'Págines special',
'specialpages-group-maintenance' => 'Raportes de conservation',
'tog-shownumberswatching' => 'Zi onuogụgụ ndi na banife nke ne lé',
'tog-oldsig' => 'Létu ntakiri ndẹlu ejị a ma gí:',
'tog-fancysig' => 'Mesò ka nkábi nwéré édé wiki (nké énwéghị jikodo nke nọr na onwe)',
-'tog-externaleditor' => 'Jí irü èzí nà áká (màkà ndi òkà nání, ȯ chọrọ ndósé nke kárí na nsónùsòrò gi)',
-'tog-externaldiff' => 'Jí nkéichè èzí nà áká (màkà ndi òkà nání, ȯ chọrọ ndósé nke kárí na nsónùsòrò gi)',
'tog-showjumplinks' => 'Kwé ka njikodo "mani énū" I mé',
'tog-uselivepreview' => 'Jí nlé ntàkírí dí ndụ (Í gí nwé JavaScript) (mmètú kanyí lé)',
'tog-forceeditsummary' => 'Gwam mgbè okwu nsem màkà orüm rürü a díghị',
'disclaimers' => 'Ihe anyí chọrọ ki ma',
'disclaimerpage' => 'Project:Ihe I kweshiri ma',
'edithelp' => 'Inyetuáká I rüwa',
-'edithelppage' => 'Help: I rüwa',
'helppage' => 'Help: Ihe di ime',
'mainpage' => 'Ihü Mbu',
'mainpage-description' => 'Ihü Mbu',
'viewprevnext' => 'Lé ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-legend' => 'Màkà nchöwa',
'searchmenu-new' => "'''Ké ihü \"[[:\$1]]\" na wiki nke á!'''",
-'searchhelp-url' => 'Help:Ihe di ime',
'searchprofile-articles' => 'Ihü ihe dị',
'searchprofile-project' => 'Ihü Nkwádo na Orürü',
'searchprofile-images' => 'Nkaníle',
'powersearch-toggleall' => 'Haníle',
'powersearch-togglenone' => 'Efù',
-# Quickbar
-'qbsettings' => 'Mkpọrọ-ȯsȯ-ọsọ',
-'qbsettings-none' => 'Efù',
-'qbsettings-fixedleft' => 'Gbado na áká èkpè',
-'qbsettings-fixedright' => 'Gbado na áká ìkengà',
-'qbsettings-floatingleft' => 'Ne fé na áká èkpè',
-'qbsettings-floatingright' => 'Ne fé na áká nrí',
-
# Preferences page
'preferences' => 'Otu ha dosẹrẹ ihe',
'mypreferences' => 'Otú m shị na dose ihem',
'listgrouprights-addgroup' => 'Gbàkọ {{PLURAL:$2|ọtú|ọtú}}: $1',
'listgrouprights-addgroup-all' => 'Tìnyé ọtú nílé',
-# E-mail user
+# Email user
'emailuser' => 'Zi onye á ózí-nsónùsòrò',
'emailpage' => "Mé ọ'bànifé e-mailù",
'defemailsubject' => 'e-mail {{SITENAME}}',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Àsáa',
'exif-imagelength' => 'Ógólógó',
'exif-orientation' => 'Ívú nà àsáa',
'version-entrypoints-header-entrypoint' => 'Ébé ọ̀bụ̀bà',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Uzọ usòrò',
-'filepath-page' => 'Usòrò:',
-'filepath-submit' => 'Gá',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Áhà usòrò:',
'fileduplicatesearch-submit' => 'Chọwa',
'tog-usenewrc' => 'Dagiti grupo a panagbaliw babaen ti panid kadagiti kinaudi a panagbaliw ken banbantayan (masapul ti JavaScript)',
'tog-numberheadings' => 'Automatiko a pabilangan dagiti paulo',
'tog-showtoolbar' => 'Ipakita ti ramit ti panag-urnos (masapul ti JavaScript)',
-'tog-editondblclick' => 'Urnosen dagiti panid iti mamindua a panagtakla (masapul ti JavaScript)',
-'tog-editsection' => 'Pakabaelan ti paset a panag-urnos babaen kadagiti [urnosen] a panilpo',
-'tog-editsectiononrightclick' => 'Pakabaelan ti paset a panag-urnos babaen ti panagtakla ti kanawan kadagiti paset a titulo (masapul ti JavaScript)',
+'tog-editondblclick' => 'Urnosen dagiti panid iti mamindua a panagpindut (masapul ti JavaScript)',
+'tog-editsection' => 'Pakabaelan ti paset a panag-urnos babaen kadagiti silpo nga [urnosen]',
+'tog-editsectiononrightclick' => 'Pakabaelan ti paset a panag-urnos babaen ti panagpindut ti kanawan kadagiti paset a titulo (masapul ti JavaScript)',
'tog-showtoc' => 'Ipakita ti tabla dagiti linaon (para kadagiti panid nga adda ti ad-adu ngem dagiti 3 a paulo)',
'tog-rememberpassword' => 'Laglagipem ti iseserrekko iti daytoy a pagbasabasa (iti kapaut nga $1 {{PLURAL:$1|aldaw|al-aldaw}})',
'tog-watchcreations' => 'Agnayon kadagiti panid a pinartuatko ken papeles nga inpanko idiay listaan ti bambantayak',
'oct' => 'Okt',
'nov' => 'Nob',
'dec' => 'Dis',
+'january-date' => 'Enero $1',
+'february-date' => 'Pebrero $1',
+'march-date' => 'Marso $1',
+'april-date' => 'Abril $1',
+'may-date' => 'Mayo $1',
+'june-date' => 'Hunio $1',
+'july-date' => 'Hulio $1',
+'august-date' => 'Agosto $1',
+'september-date' => 'Septiembre $1',
+'october-date' => 'Oktubre $1',
+'november-date' => 'Nobiembre $1',
+'december-date' => 'Disiembre $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategoria|Katkategoria}}',
'disclaimers' => 'Dagiti renunsia',
'disclaimerpage' => 'Project:Sapasap ti karbengan ken rebbeng',
'edithelp' => 'Tulong ti panag-urnos',
-'edithelppage' => 'Help:Panag-urnos',
'helppage' => 'Help:Dagiti linaon',
'mainpage' => 'Umuna a Panid',
'mainpage-description' => 'Umuna a Panid',
'welcomecreation-msg' => 'Naaramiden ti pakabilangam.
Dimo liplipatan a sukatan dagiti kakaykayatam idiay [[Special:Preferences|{{SITENAME}} kakaykayatan]].',
'yourname' => 'Nagan ti agar-aramat:',
+'userlogin-yourname' => 'Nagan ti agar-aramat',
+'userlogin-yourname-ph' => 'Ikabil ti naganmo nga agar-aramat',
'yourpassword' => 'Kontrasenias:',
+'userlogin-yourpassword' => 'Kontrasenias',
+'userlogin-yourpassword-ph' => 'Ikabilmo ti kontrasenias',
+'createacct-yourpassword-ph' => 'Agikabil ti kontrasenias',
'yourpasswordagain' => 'Uliten ti kontrasenias:',
+'createacct-yourpasswordagain' => 'Pasingkedan ti kontrasenias',
+'createacct-yourpasswordagain-ph' => 'Ikabil manen ti kontrasenias',
'remembermypassword' => 'Laglagipem ti iseserrekko iti daytoy a pagbasabasa (para iti kapaut iti $1 {{PLURAL:$1|nga aldaw|nga al-aldaw}})',
+'userlogin-remembermypassword' => 'Taginayonennak nga iserrek',
+'userlogin-signwithsecure' => 'Usaren ti natalged a pannakaikapet',
'securelogin-stick-https' => 'Agyanka a nakasilpo iti HTTPS kalpasan no nakastrekka',
'yourdomainname' => 'Ti bukodmo a pagturayan:',
'password-change-forbidden' => 'Saanmo a mabalin ti mangbaliw kadagiti kontrasenias iti daytoy a wiki.',
'logout' => 'Rummuar',
'userlogout' => 'Rummuar',
'notloggedin' => 'Saan a nakastrek',
-'nologin' => "Awan kadi pay ti pakabilangam? '''$1'''.",
+'userlogin-noaccount' => 'Awan ti pakabilangam?',
+'userlogin-joinproject' => 'Tumipon iti {{SITENAME}}',
+'nologin' => "Awan ti pakabilangam? '''$1'''.",
'nologinlink' => 'Agaramid ti pakabilangan',
'createaccount' => 'Agaramid ti pakabilangan',
'gotaccount' => "Addaanka kadin ti pakabilangam? '''$1'''.",
'gotaccountlink' => 'Sumrek',
-'userlogin-resetlink' => 'Nalipatam dagiti salaysay ti pagserrek mo?',
+'userlogin-resetlink' => 'Nalipatam dagiti salaysay ti pagserrekmo?',
+'userlogin-resetpassword-link' => 'Iyasentar manen ti kontrasenias',
+'helplogin-url' => 'Help:Panagserrek',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Tulong iti panagserrek]]',
+'createacct-join' => 'Ikabil ti pakaammom dita baba.',
+'createacct-emailrequired' => 'Esurat a pagtaengan',
+'createacct-emailoptional' => 'Esurat a pagtaengan (pagpilian)',
+'createacct-email-ph' => 'Ikabil ti esurat a pagtaengam',
'createaccountmail' => 'Agusar ti maysa a temporario a pugto a kontrasenias ken ipatulod idiay esurat a pagtaengan a nainaganan dita baba',
+'createacct-realname' => 'Pudno a nagan (pagpilian)',
'createaccountreason' => 'Rason:',
+'createacct-reason' => 'Rason',
+'createacct-reason-ph' => 'Apay nga agparpartuatka manen ti pakabilangam',
+'createacct-captcha' => 'Panagkita ti pannakatalinaay',
+'createacct-imgcaptcha-ph' => 'Ikabil ti testo a makitam dita ngato',
+'createacct-submit' => 'Partuatem ti pakabilangam',
+'createacct-benefit-heading' => 'Ti {{SITENAME}} ket inar-aramid babaen ti tattao a kasla kenka.',
+'createacct-benefit-body1' => '{{PLURAL:$1|nga inurnos|nga inur-urnos}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|a panid|a pampanid}}',
+'createacct-benefit-body3' => 'nga agdama a {{PLURAL:$1|nagparawad|nagparparawad}}',
'badretype' => 'Saan nga agpada dagiti impanmo a kontrasenias.',
'userexists' => 'Maus-usaren ti nagan a kayatmo.
Pangngaasi nga agpilika ti sabali a nagan.',
'loginerror' => 'Biddut ti sumrek',
+'createacct-error' => 'Biddut a panagpartuat ti pakabilangan',
'createaccounterror' => 'Saan a makaaramid ti pakabilangan: $1',
'nocookiesnew' => 'Naaramid ti pakabilangan ti agar-aramat, ngem saanka a nakastrek.
Ti {{SITENAME}} ket agususar kadagiti "galietas" tapno maiserrek dagiti agaramat.
'newpassword' => 'Baro a kontrasenias:',
'retypenew' => 'Imakinilya manen ti baro a kontrasenias:',
'resetpass_submit' => 'Ikabil ti kontrasenias ken sumrek',
-'resetpass_success' => 'Nagballigi a nabaliwan ti kontrasenias mo!
+'resetpass_success' => 'Nagballigi a nabaliwan ti kontraseniasmo!
</br>
Iserrek kan...',
'resetpass_forbidden' => 'Saan a masukatan dagiti kontrasenias',
'resetpass-wrong-oldpass' => 'Imbalido ti temporario wenno agdama a kontrasenias.
Mabalin a nagballigi ti panagsukatmo ti kontrasenias wenno nagkiddaw ti baro a temporario a kontrasenias.',
'resetpass-temp-password' => 'Temporario a kontrasenias:',
+'resetpass-abort-generic' => 'Ti panagsukat ti kontrasenias ket pinasardeng babaen ti pagpaatiddog.',
# Special:PasswordReset
'passwordreset' => 'Ipasubli ti kontrasenias',
-'passwordreset-text' => 'Lippasem daytoy a porma tapno maidisso manen ti bukodmo a kontrasenias.',
+'passwordreset-text-one' => 'Lippasem daytoy a porma tapno maidisso manen ti bukodmo a kontrasenias.',
+'passwordreset-text-many' => '{{PLURAL:$1|Ikabil ti maysa kadagiti pirgis ti datos tapno maiyasentar manen ti bukodmo a kontrasenias.}}',
'passwordreset-legend' => 'Ipasubli ti kontrasenias',
'passwordreset-disabled' => 'Nabaldado dagiti panagisubli ti kontrasenias iti daytoy a wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Ikabil ti maysa a piraso ti datos dita baba}}',
+'passwordreset-emaildisabled' => 'Dagiti langa ti esurat ket nabaldado iti daytoy a wiki.',
'passwordreset-username' => 'Nagan ti agar-aramat:',
'passwordreset-domain' => 'Pagturayan:',
'passwordreset-capture' => 'Kitaem ti nagbanagan ti esurat?',
Temporario a kontrasenias: $2',
'passwordreset-emailsent' => 'Ti maysa nga esurat ti panangidisso manen ti kontrasenias ket naipatuloden.',
'passwordreset-emailsent-capture' => 'Ti maysa nga esurat ti panangidisso manen ti kontrasenias ket naipatuloden, a napaikita dita baba.',
-'passwordreset-emailerror-capture' => 'Ti maysa nga esurat ti panangidisso manen ti kontrasenias ket naaramiden, a napaikita dita baba, ngem napaay a napaitulod iti agar-aramat: $1',
+'passwordreset-emailerror-capture' => 'Naaramid ti maysa nga esurat a panangyasentar manen ti kontrasenias, a napaikita dita baba, ngem ti panangitulod kenni {{GENDER:$2|agar-aramat}} ket napaay: $1',
# Special:ChangeEmail
'changeemail' => 'Sukatan ti esurat a pagtaengan',
Kasla met naikkaten.',
'edit-conflict' => 'Adda kasinnungat ti panag-urnos.',
'edit-no-change' => 'Ti inurnosmo ket saan a naikaskaso, ngamin ket awan ti nasukatan a testo.',
+'postedit-confirmation' => 'Ti inurnosmo ket naidulinen.',
'edit-already-exists' => 'Saan a makaaramid ti baro a panid.
Adda met daytoyen.',
'defaultmessagetext' => 'Kasisigud a testo ti mensahe',
'undo-success' => 'Ti panag-urnos ket saan a maisubli.
Pangngaasi a kitaen ti pagipadaan dita baba tapno maamuan no agpaypayso ti kayatmo nga aramiden, ken idulin dagiti sinukatan dita baba tapno malpas ti panagsubli ti inurnos.',
'undo-failure' => 'Ti inurnos ket saan a maipasubli gaputa adda dagiti nakisinnungat a patingnga a naurnos.',
-'undo-norev' => 'Saan a maibabawi ti naurnos ngamin ket awan met daytoy wenno mabalin a naikkat.',
+'undo-norev' => 'Saan a maibabawi ti naurnos ngamin ket awan daytoy wenno mabalin a naikkaten.',
'undo-summary' => 'Ibabawi ti $1 a binaliwan babaen ni [[Special:Contributions/$2|$2]] ([[User talk:$2|tungtungan]])',
# Account creation failure
'searchmenu-legend' => 'Pagpilian ti panagbiruk',
'searchmenu-exists' => "'''Adda panid a nanaganan ti \"[[:\$1]]\" iti daytoy a wiki.'''",
'searchmenu-new' => "'''Partuaten ti panid ti \"[[:\$1]]\" iti daytoy a wiki!'''",
-'searchhelp-url' => 'Help:Dagiti linaon',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Kitaem dagiti panid nga adda kastoy a naipasaruno]]',
'searchprofile-articles' => 'Dagiti naglaon a panid',
'searchprofile-project' => 'Tulong ken Gandat a pam-panid',
'searchdisabled' => 'Ti panagbiruk iti {{SITENAME}} ket nabaldado.
Mabalin mo ti agbiruk idiay Google tattan.
Laglagipem laeng a dagiti pagsurotan nagyan ti {{SITENAME}} ket baka baak.',
+'search-error' => 'Adda maysa a biddut napasamak bayat nga agbirbiruk:$1',
# Preferences page
'preferences' => 'Kakaykayatan',
'resultsperpage' => 'Nabirukan ti tunggal maysa a panid:',
'stub-threshold' => 'Pangruggian ti <a href="#" class="stub">pungol a panilpo</a>panagporma (dagiti byte):',
'stub-threshold-disabled' => 'Nabaldado',
-'recentchangesdays' => 'Alaldaw nga ipakita dagiti kinaudi a binalbaliwan:',
+'recentchangesdays' => 'Al-aldaw nga ipakita dagiti kinaudi a binalbaliwan:',
'recentchangesdays-max' => 'Kabayag nga $1 {{PLURAL:$1|nga aldaw|nga al-aldaw}}',
'recentchangescount' => 'Dagiti bilang dagiti naurnos a kinasigud a maiparang:',
'prefs-help-recentchangescount' => 'Nairaman dagiti kinaudian a baliwan, dagiti pakasaritaan ti panid, ken dagiti listaan.',
'userrights-notallowed' => 'Awan ti pammalubos ti pakabilangam a mangted iti kakaberngan ti agar-aramat.',
'userrights-changeable-col' => 'Dagiti grupo a mabalinmo a baliwan',
'userrights-unchangeable-col' => 'Dagiti grupo a dimo mabalin a baliwan',
+'userrights-conflict' => 'Suppiat ti karbengan ti agar-aramat! Pangngaasi nga ipakatmo manen dagiti sinuksukatam.',
# Groups
'group' => 'Grupo:',
'ncategories' => '$1 {{PLURAL:$1|a kategoria|kadagiti kategoria}}',
'ninterwikis' => '$1 {{PLURAL:$1|interwiki|dagiti interwiki}}',
'nlinks' => '$1 {{PLURAL:$1|a panilpo|kadagiti panilpo}}',
-'nmembers' => '$1 {{PLURAL:$1|a kameng|kadagiti kameng}}',
+'nmembers' => '$1 {{PLURAL:$1|a kameng|kamkameng}}',
'nrevisions' => '$1 {{PLURAL:$1|a panagbalbaliw|kadagiti panagbalbaliw}}',
'nviews' => '$1 {{PLURAL:$1|a panangkita|kadagiti panangkita}}',
'nimagelinks' => 'Inusar idiay $1 {{PLURAL:$1|a panid|a pampanid}}',
'listusers-noresult' => 'Awan ti nasarakan nga agar-aramat.',
'listusers-blocked' => '(naserraan)',
+# Special:ActiveUsers
+'activeusers' => 'Listaan dagiti nasiglat nga agar-aramat',
+'activeusers-intro' => 'Daytoy ti listaan dagiti agar-aramat nga adda inararamidda kadagiti napalabas a $1 {{PLURAL:$1|nga aldaw|nga alaldaw}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|a tignay|tigtignay}} idi kalpasan ti {{PLURAL:$3|nga aldaw|$3 nga alaldaw}}',
+'activeusers-from' => 'Iparang dagiti agar-aramat a mangrugi iti:',
+'activeusers-hidebots' => 'Ilemmeng dagiti bot',
+'activeusers-hidesysops' => 'Ilemmeng dagiti administrador',
+'activeusers-noresult' => 'Awan ti nasarakan nga agar-aramat.',
+
# Special:ListGroupRights
'listgrouprights' => 'Dagiti karbengan ti grupo ti agar-aramat',
'listgrouprights-summary' => 'Dagiti sumaganad a listaan ti bunggoy ti agar-aramat a naipalawag iti daytoy a wiki, a nairaman dagiti karbengan ti panagserrekda.
'notvisiblerev' => 'Ti panagbalbaliw ti sabali nga agar-aramat ket naikkaten',
'watchnochange' => 'Awan dagiti binambantayam ket naurnos dita panawen a naipakita.',
'watchlist-details' => '{{PLURAL:$1|$1 panid|$1 dagiti panid}} a bambantayam, saan a mairaman dagiti panid ti tungtongan.',
-'wlheader-enotif' => '* Napakabaelan ti pakiammo ti esurat.',
-'wlheader-showupdated' => "* Dagiti panid a nasukatan manipud ti kinaudi a panagsarungkarmo ket naipakita iti '''napuskol'''",
+'wlheader-enotif' => 'Napakabaelan ti panangipakaammo ti esurat.',
+'wlheader-showupdated' => "Dagiti panid a nasukatanen manipud ti kinaudi a panagsarungkarmo ket naipakita iti '''napuskol'''",
'watchmethod-recent' => 'kitkitaen dagiti kinaudi nga inurnos kadagiti bambantayan a panid',
'watchmethod-list' => 'kitkitaen dagiti bambantayan a panid kadagiti kinaudi nga inurnos',
'watchlistcontains' => 'Ti listaan ti bambantayam ket aglaon ti $1 {{PLURAL:$1|a panid|a pampanid}}.',
'thumbnail-more' => 'Padakkelen',
'filemissing' => 'Mapukpukaw ti papeles',
'thumbnail_error' => 'Biddut ti panagaramid ti bassit nga imahen: $1',
+'thumbnail_error_remote' => 'Biddut a mensahe manipud ti $1:
+$2',
'djvu_page_error' => 'Ti DjVu a panid ket saan a nasakup',
'djvu_no_xml' => 'Saan a naala ti XML iti DjVu a papeles',
'thumbnail-temp-create' => 'Saan a makaaramid ti temporario a bassit a papeles',
'minutes' => '{{PLURAL:$1|$1 minuto|$1 minutos}}',
'hours' => '{{PLURAL:$1|$1 oras$1 oras}}',
'days' => '{{PLURAL:$1|$1 aldaw|$1 al-aldaw}}',
+'weeks' => '{{PLURAL:$1|$1 a lawas|$1 a law-lawas}}',
'months' => '{{PLURAL:$1|$1 a bulan|$1 a bulbulan}}',
'years' => '{{PLURAL:$1|$1 a tawen|$1 a tawtawen}}',
'ago' => '$1 nagtapos',
'just-now' => 'tatta laeng',
+# Human-readable timestamps
+'hours-ago' => '$1 nga {{PLURAL:$1|oras|or-oras}} idi ugma',
+'minutes-ago' => '$1 a {{PLURAL:$1|minuto|minutos}} idi ugma',
+'seconds-ago' => '$1 a {{PLURAL:$1|segundo|seg-segundo}} idi ugma',
+'monday-at' => 'Lunes idiay $1',
+'tuesday-at' => 'Martes idiay $1',
+'wednesday-at' => 'Mierkoles idiay $1',
+'thursday-at' => 'Huebes idiay $1',
+'friday-at' => 'Biernes idiay $1',
+'saturday-at' => 'Sabado idiay $1',
+'sunday-at' => 'Dominggo idiay $1',
+'yesterday-at' => 'Idi kalman idiay $1',
+
# Bad image list
'bad_image_list' => 'Ti kinabuklan ket kas iti sumaganad:
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Kaakaba',
'exif-imagelength' => 'Katayag',
'exif-bitspersample' => 'Bits tunggal maysa a nagyan',
'exif-originalimageheight' => 'Kangato ti imahen sakbay nga naputed',
'exif-originalimagewidth' => 'Kalawa ti imahen sakbay nga naputed',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Saan a napespes',
'exif-copyrighted-true' => 'Nakarbengan a kopia',
'version-entrypoints-header-entrypoint' => 'Pagserrekan a puntos',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Dalanan ti papeles',
-'filepath-page' => 'Papeles:',
-'filepath-submit' => 'Inkan',
-'filepath-summary' => 'Daytoy nga espesial a panid ket agisubli ti kompleto a dalan ti papeles.
-Dagiti imahen ket agparang iti kadakkelan a resolusion, dagiti sabali a kita ti papeles ket dagus a mangrugida idiay nakairamananda a programa.',
+# Special:Redirect
+'redirect' => 'Ibaw-ing babaen ti papeles, agar-aramat, wenno ID ti panagbaliw',
+'redirect-legend' => 'Ibaw-ing iti papeles wenno panid',
+'redirect-summary' => 'Daytoy nga espesial a panid ket maibaw-ing iti papeles (iti nagan ti papeles), ti panid (iti ID ti panagbaliw), wenno ti panid ti agar-aramat (iti numeriko nga ID ti agar-aramat).',
+'redirect-submit' => 'Inkan',
+'redirect-lookup' => 'Kitaen:',
+'redirect-value' => 'Pateg:',
+'redirect-user' => 'ID ti agar-aramat',
+'redirect-revision' => 'Panagbaliw ti panid',
+'redirect-file' => 'Nagan ti papeles',
+'redirect-not-exists' => 'Saan a nabirukan ti pateg',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Agbiruk kadagiti duplikado a papeles',
'htmlform-submit' => 'Ited',
'htmlform-reset' => 'Ibabawi ti sinukatan',
'htmlform-selectorother-other' => 'Sabali',
+'htmlform-no' => 'Saan',
+'htmlform-yes' => 'Wen',
+'htmlform-chosen-placeholder' => 'Agpili ti pagpilian',
# SQLite database support
'sqlite-has-fts' => '$1 adda ti suporta ti napno a testo ti panagbiruk',
'revdelete-uname-unhid' => 'saan a nailemmeng ti nagan ti agar-aramat',
'revdelete-restricted' => 'naipakat dagiti pammarit kadagiti administrador',
'revdelete-unrestricted' => 'naikkat dagiti pammarit para kadagiti administrador',
-'logentry-move-move' => 'Ni $1 ket {{GENDER:$2|inyalisna}}ti panid $3 idiay $4',
+'logentry-move-move' => 'Ni $1 ket {{GENDER:$2|inyalisna}} ti panid $3 idiay $4',
'logentry-move-move-noredirect' => 'Ni $1 ket {{GENDER:$2|inyalisna}} ti panid ti $3 idiay $4 a saan a nangibati ti baw-ing',
'logentry-move-move_redir' => 'Ni $1 ket {{GENDER:$2|inyalisna}} ti panid ti $3 idiay $4 nga adda iti maysa a baw-ing',
'logentry-move-move_redir-noredirect' => 'Ni $1 ket {{GENDER:$2|inyalisna}} ti panid ti $3 idiay $4 nga adda iti maysa a baw-ing a saan a nangibati ti baw-ing',
'disclaimers' => 'Бокъонах юхавалаp',
'disclaimerpage' => 'Project:Бокъонах юхавалаp',
'edithelp' => 'Хувцама куцтохкам',
-'edithelppage' => 'Help:ГӀалатнийсдар',
'helppage' => 'Help:Чулоацам',
'mainpage' => 'Кертера оагӀув',
'mainpage-description' => 'Кертера оагӀув',
'viewprevnext' => '($1 {{int:pipe-separator}} $2) ($3) хьажа',
'searchmenu-exists' => "'''Укх масса-хьахьоадайтамач ер оаг|ув \"[[:\$1]]\" я'''",
'searchmenu-new' => "'''Укх \"[[:\$1]]\" масса-хьахоадайтамач оагIув хьае!'''",
-'searchhelp-url' => 'Help:Чулоацам',
'searchprofile-articles' => 'Гомлен оагIувнаш',
'searchprofile-project' => 'Дагарлеи хьахоадайтами оагIувнаш',
'searchprofile-images' => 'Медифаг',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Шерал',
'exif-imagelength' => 'Лакхал',
'exif-imagedescription' => 'Сурта цIи',
'version-version' => '(Доржам $1)',
'version-software-version' => 'Доржам',
-# Special:FilePath
-'filepath' => 'Паьлачу никъ',
-'filepath-page' => 'Паьл:',
-'filepath-submit' => 'Дехьавала/яла',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'ПаьлацIи:',
'fileduplicatesearch-submit' => 'Лаха',
*
* @author Albonio
* @author Artomo
+ * @author Geitost
* @author Kaganer
* @author Lakaoso
* @author Malafaya
'tog-enotifrevealaddr' => 'Montrez mea e-posto adreso en notifiko e-posti',
'tog-shownumberswatching' => 'Montrez nombro di surveyanta uzanti',
'tog-fancysig' => 'Traktez signaturo kom wikikodo (sen automata ligilo)',
-'tog-externaleditor' => 'Uzez extera redaktanto nespecigite (nur por experti, bezonas specala moderi ye vua komputoro .[//www.mediawiki.org/wiki/Manual:External_editors Plusa informo.])',
'tog-forceeditsummary' => 'Notifikez me kande skribanta vakua redakto-rezumo',
'tog-watchlisthideown' => 'Celez mea redaktaji de la surveyaji',
'tog-watchlisthidebots' => 'Celez redaktaji da roboti de la surveyaji',
'cancel' => 'Anular',
'moredotdotdot' => 'Plus...',
'mypage' => 'Mea pagino',
-'mytalk' => 'Mea diskuti',
+'mytalk' => 'Diskuti',
'anontalk' => 'Diskuto relatant ad ica IP',
'navigation' => 'Navigado',
'and' => ' ed',
'disclaimers' => 'Legala averto',
'disclaimerpage' => 'Project:Generala des-agnosko',
'edithelp' => 'Helpo pri redaktado',
-'edithelppage' => 'Help:Redaktado',
'helppage' => 'Help:Helpo',
'mainpage' => 'Frontispico',
'mainpage-description' => 'Frontispico',
'logout' => 'Ekirar',
'userlogout' => 'Ekirar',
'notloggedin' => 'Sesiono ne esas iniciata',
-'nologin' => "Ka vu ne havas konto? '''$1'''.",
+'nologin' => 'Ka vu ne havas konto? $1.',
'nologinlink' => 'Kreez konto',
'createaccount' => 'Krear nova konto',
'gotaccount' => "Ka vu ja havas konto? '''$1'''.",
# Special:PasswordReset
'passwordreset-username' => 'Uzantonomo:',
+# Special:ChangeEmail
+'changeemail' => 'Chanjar e-adreso*',
+
# Edit page toolbar
'bold_sample' => 'Dika literi',
'bold_tip' => 'Dika literi',
Surskriburo: '''({{int:cur}})''' = diferi kun l'aktuala versiono,
'''({{int:last}})''' = diferi kun l'antea versiono,
'''{{int:minoreditletter}}''' = mikra redakto.",
+'history-show-deleted' => 'Nur efacita',
'histfirst' => 'Maxim anciena',
'histlast' => 'Maxim nova',
'historysize' => '({{PLURAL:$1|1 bicoko|$1 bicoki}})',
'notextmatches' => 'Nula paginala texto fitas',
'prevn' => 'antea {{PLURAL:$1|$1}}',
'nextn' => 'sequanta {{PLURAL:$1|$1}}',
+'prevn-title' => 'Antea $1 {{PLURAL:$1|rezultajo|rezultaji}}',
+'nextn-title' => 'Sequanta $1 {{PLURAL:$1|rezultajo|rezultaji}}',
'viewprevnext' => 'Vidar ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-new' => "'''Kreez la pagino \"[[:\$1]]\" in ca wiki!'''",
-'searchhelp-url' => 'Help:Helpo',
'searchprofile-articles' => 'Temala pagini',
'searchprofile-project' => 'Helpo',
'searchprofile-images' => "''Media''",
'searchall' => 'omna',
'showingresults' => "Montrante infre {{PLURAL:$1|'''1''' rezulto|'''$1''' rezulti}}, qui komencas kun numero #'''$2'''.",
'showingresultsnum' => "Montrante infre {{PLURAL:$3|'''1''' rezulto|'''$3''' rezulti}}, qui komencas kun numero #'''$2'''.",
+'showingresultsheader' => "{{PLURAL:$5|Rezultajo '''$1''' ek '''$3'''|Rezultaji '''$1 - $2''' ek '''$3'''}} di '''$4'''",
'nonefound' => "'''Atencez''': Nespecigite, nur ula nomari esas serchata.
Probez prefixizar vua demando kun ''all:'' por serchar omna kontenajo (inkluzanta debato-pagini, shabloni, edc.), od uzar la dezirata nomaro kom prefixo.",
'powersearch' => 'Avancita sercho',
'search-external' => 'Extera sercho',
'searchdisabled' => 'La sercho en la kompleta texto desaktivigesis temporale pro superkargo dil servanto. Ni esperas riaktivigar ol pos facar ula proxima aktualigi. Dum ica tempo, vu povas serchar per Google.',
-# Quickbar
-'qbsettings' => 'Preferaji pri "Quickbar"',
-'qbsettings-none' => 'Nula',
-
# Preferences page
'preferences' => 'Preferaji',
-'mypreferences' => 'Mea preferaji',
+'mypreferences' => 'Preferaji',
'prefs-edits' => 'Nombro di redaktaji:',
'prefsnologin' => 'Vu ne eniris',
'prefsnologintext' => 'Vu mustas <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} enirir]</span> por establisar la preferaji.',
'filehist-dimensions' => 'Dimensioni',
'filehist-filesize' => 'Grandeso dil arkivo',
'filehist-comment' => 'Komento',
-'imagelinks' => 'Ligili al arkivo',
+'imagelinks' => 'Uzadi di arkivo',
'linkstoimage' => 'La {{PLURAL:$1|pagino|$1 pagini}} infre ligas a ca arkivo:',
'nolinkstoimage' => 'Nula pagino ligas a ca pagino.',
'sharedupload' => 'Ca arkivo esas de $1 e posible esas uzata da altra projekti.',
'protectedtitles' => 'Protektita tituli',
'listusers' => 'Uzanto-listo',
'usereditcount' => '$1 {{PLURAL:$1|redakto|redakti}}',
-'usercreated' => 'Kreita ye $1 $2',
+'usercreated' => '{{GENDER:$3|Kreita}} ye $1 $2',
'newpages' => 'Nova pagini',
'newpages-username' => 'Uzantonomo:',
'ancientpages' => 'Maxim anciena artikli',
'listgrouprights-group' => 'Grupo',
'listgrouprights-members' => '(listo di membri)',
-# E-mail user
+# Email user
'mailnologin' => 'Ne sendar adreso',
'mailnologintext' => 'Vu mustas [[Special:UserLogin|enirir]] e havar valida e-adreso en vua [[Special:Preferences|preferaji]] por sendar e-posto ad altra uzanti.',
'emailuser' => 'Sendar e-posto a ca uzanto',
'emailsenttext' => 'Vua e-posto sendesis.',
# Watchlist
-'watchlist' => 'Mea surveyaji',
-'mywatchlist' => 'Mea surveyaji',
+'watchlist' => 'Surveyaji',
+'mywatchlist' => 'Surveyaji',
'nowatchlist' => 'Vu ne havas objekti en vua listo di surveyaji.',
'watchnologin' => 'Vu ne startis sesiono',
'watchnologintext' => 'Vu mustas [[Special:UserLogin|enirir]] por modifikar vua surveyaji.',
'blanknamespace' => '(Chefa)',
# Contributions
-'contributions' => 'Kontributadi dil uzanto',
+'contributions' => 'Kontributadi dil {{GENDER:$1|uzanto}}',
'contributions-title' => 'Uzanto-kontributadi di $1',
-'mycontris' => 'Mea kontributadi',
+'mycontris' => 'Kontributadi',
'contribsub2' => 'Pro $1 ($2)',
'nocontribs' => 'Ne trovesis chanji qui fitez ita kriterii.',
-'uctop' => ' (lasta modifiko)',
+'uctop' => '(aktuala)',
'month' => 'De monato (e plu frue):',
'year' => 'De yaro (e plu frue):',
'sp-contributions-newbies-sub' => 'Di nova konti',
'sp-contributions-blocklog' => 'blokusar-registraro',
'sp-contributions-deleted' => 'efacita uzanto-kontributadi',
+'sp-contributions-logs' => 'registrari',
'sp-contributions-talk' => 'diskutez',
'sp-contributions-search' => 'Serchar kontributadi',
'sp-contributions-username' => 'IP-adreso od uzantonomo:',
'nolinkshere' => "Nula pagino ligas ad '''[[:$1]]'''.",
'isredirect' => 'ridirektanta pagino',
'istemplate' => 'inkluzo',
-'isimage' => 'imajo-ligilo',
+'isimage' => 'arkivo-ligilo',
'whatlinkshere-prev' => '{{PLURAL:$1|antea|antea $1}}',
'whatlinkshere-next' => '{{PLURAL:$1|sequanta|sequanta $1}}',
'whatlinkshere-links' => '← ligili',
'whatlinkshere-hideredirs' => '$1 ridirektili',
+'whatlinkshere-hidetrans' => '$1 inkluzi',
'whatlinkshere-hidelinks' => '$1 ligili',
-'whatlinkshere-hideimages' => '$1 ligili di imaji',
+'whatlinkshere-hideimages' => '$1 ligili di arkivi',
'whatlinkshere-filters' => 'Filtrili',
# Block/unblock
'unblockip' => 'Desblokusar uzanto',
'unblockiptext' => 'Uzez la sequanta formularo por restaurar la skribo-aceso ad IP-adreso qua blokusesis antee.',
'ipusubmit' => 'Desblokusar',
-'ipblocklist' => 'Blokusita IP-adresi ed uzantonomi',
+'ipblocklist' => 'Blokusita uzanti',
'ipblocklist-submit' => 'Serchar',
'blocklink' => 'blokusar',
'unblocklink' => 'desblokusar',
# Metadata
'metadata' => 'Metadonaji',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Larjeso',
'exif-imagelength' => 'Alteso',
'exif-artist' => 'Autoro',
'namespacesall' => 'omna',
'monthsall' => 'omna',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail_needlogin' => 'Vu mustas $1 pro konfirmar vua adreso di e-posto.',
# Scary transclusion
'version-software-product' => 'Produkturo',
'version-software-version' => 'Versiono',
-# Special:FilePath
-'filepath-page' => 'Arkivo:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Serchar',
* @author Bjarki S
* @author Cessator
* @author Friðrik Bragi Dýrfjörð
+ * @author Geitost
* @author Gott wisst
* @author Jóna Þórunn
* @author Kaganer
'october' => 'október',
'november' => 'nóvember',
'december' => 'desember',
-'january-gen' => 'janúars',
-'february-gen' => 'febrúars',
+'january-gen' => 'janúar',
+'february-gen' => 'febrúar',
'march-gen' => 'mars',
-'april-gen' => 'apríls',
+'april-gen' => 'apríl',
'may-gen' => 'maí',
'june-gen' => 'júní',
'july-gen' => 'júlí',
'oct' => 'okt',
'nov' => 'nóv',
'dec' => 'des',
+'january-date' => '$1. janúar',
+'february-date' => '$1. febrúar',
+'march-date' => '$1. mars',
+'april-date' => '$1. apríl',
+'may-date' => '$1. maí',
+'june-date' => '$1. júní',
+'july-date' => '$1. júlí',
+'august-date' => '$1. ágúst',
+'september-date' => '$1. september',
+'october-date' => '$1. október',
+'november-date' => '$1. nóvember',
+'december-date' => '$1. desember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Flokkur|Flokkar}}',
'create-this-page' => 'Skapa þessari síðu',
'delete' => 'Eyða',
'deletethispage' => 'Eyða þessari síðu',
+'undeletethispage' => 'Endurvekja þessa síðu',
'undelete_short' => 'Endurvekja {{PLURAL:$1|eina breytingu|$1 breytingar}}',
'viewdeleted_short' => 'Skoða {{PLURAL:$1|eina eydda breytingu|$1 eyddar breytingar}}',
'protect' => 'Vernda',
'disclaimers' => 'Fyrirvarar',
'disclaimerpage' => 'Project:Almennur fyrirvari',
'edithelp' => 'Breytingarhjálp',
-'edithelppage' => 'Help:Breyta',
'helppage' => 'Help:Efnisyfirlit',
'mainpage' => 'Forsíða',
'mainpage-description' => 'Forsíða',
'namespaceprotected' => "Þú hefur ekki leyfi til að breyta síðum í '''$1''' nafnrýminu.",
'customcssprotected' => 'Þú hefur ekki leyfi að breyta þessari CSS-umbrotsíðu, því hún hefur notendastillingar annars notanda.',
'customjsprotected' => 'Þú hefur ekki leyfi til að breyta þessari JavaScript síðu, því hún hefur notendastillingar annars notanda.',
+'mycustomcssprotected' => 'Þú hefur ekki leyfi til þess að breyta þessari CSS-síðu.',
+'mycustomjsprotected' => 'Þú hefur ekki leyfi til þess að breyta þessari JavaScript-síðu.',
'ns-specialprotected' => 'Kerfissíðum er ekki hægt að breyta.',
'titleprotected' => "Þessi titill hefur verið verndaður fyrir sköpun af [[User:$1|$1]].
Ástæðan sem gefin var ''$2''.",
'welcomecreation-msg' => 'Aðgangurinn þinn hefur verið búinn til.
Ekki gleyma að breyta [[Special:Preferences|{{SITENAME}} stillingunum]] þínum.',
'yourname' => 'Notandanafn:',
+'userlogin-yourname' => 'Notandanafn',
+'userlogin-yourname-ph' => 'Skrifaðu inn notendanafnið þitt',
'yourpassword' => 'Lykilorð:',
+'userlogin-yourpassword' => 'Lykilorð',
+'userlogin-yourpassword-ph' => 'Skrifaðu niður lykilorðið þitt',
+'createacct-yourpassword-ph' => 'Skrifaðu niður lykilorð',
'yourpasswordagain' => 'Endurrita lykilorð:',
+'createacct-yourpasswordagain' => 'Staðfestu lykilorðið',
+'createacct-yourpasswordagain-ph' => 'Sláðu inn lykilorðið aftur',
'remembermypassword' => 'Muna innskráninguna mína í þessum vafra (í allt að $1 {{PLURAL:$1|dag|daga}})',
+'userlogin-remembermypassword' => 'Muna innskráningu mína',
+'userlogin-signwithsecure' => 'Nota örugga tengingu',
'securelogin-stick-https' => 'Halda öllum samskiptum áfram yfir HTTPS eftir að þú skráir þig inn',
'yourdomainname' => 'Þitt lén:',
'password-change-forbidden' => 'Þú getur ekki breytt lykilorðum á þessum wiki.',
'logout' => 'Útskráning',
'userlogout' => 'Útskrá',
'notloggedin' => 'Ekki innskráð(ur)',
-'nologin' => "Ekki með aðgang? '''$1'''.",
+'userlogin-noaccount' => 'Áttu ekki aðgang?',
+'userlogin-joinproject' => 'Sameina {{SITENAME}}',
+'nologin' => 'Ekki með aðgang? $1.',
'nologinlink' => 'Stofnaðu aðgang',
'createaccount' => 'Nýskrá',
'gotaccount' => "Nú þegar með notandanafn? '''$1'''.",
'gotaccountlink' => 'Skráðu þig inn',
'userlogin-resetlink' => 'Gleymdir þú notendaupplýsingunum þínum?',
+'userlogin-resetpassword-link' => 'Endursetja lykilorð',
+'helplogin-url' => 'Help:Innskráning',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hjálp við innskráningu]]',
+'createacct-join' => 'Sláðu inn þínar upplýsingar fyrir neðan.',
+'createacct-emailrequired' => 'Netfang',
+'createacct-emailoptional' => 'Netfang (valfrjálst)',
+'createacct-email-ph' => 'Skrifaðu niður netfangið þitt',
'createaccountmail' => 'Nota handahófsvalið bráðabirgðalykilorð og senda það á netfangið sem er tilgreint hér fyrir neðan',
+'createacct-realname' => 'Raunverulegt nafn (valfrjálst)',
'createaccountreason' => 'Ástæða:',
+'createacct-reason' => 'Ástæða',
+'createacct-reason-ph' => 'Afhverju ertu að búa til annan aðgang',
+'createacct-captcha' => 'Öryggis athugun',
+'createacct-imgcaptcha-ph' => 'Sláðu inn textann að ofan',
+'createacct-submit' => 'Búa til aðganginn',
+'createacct-benefit-heading' => '{{SITENAME}} er skrifuð af fólki eins og þér.',
+'createacct-benefit-body1' => '{{PLURAL:$1|breyting|breytingar}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|síða|síður}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|nýlegur stuðningsaðili|nýlegir stuðningsaðilar}}',
'badretype' => 'Lykilorðin sem þú skrifaðir eru ekki eins.',
'userexists' => 'Þetta notandanafn er þegar í notkun.
Vinsamlegast veldu þér annað.',
'loginerror' => 'Innskráningarvilla',
+'createacct-error' => 'Stofnun aðgangs mistókst',
'createaccounterror' => 'Gat ekki búið til notanda: $1',
'nocookiesnew' => 'Innskráningin var búin til, en þú ert ekki skráð(ur) inn.
{{SITENAME}} notar vefkökur til að skrá inn notendur.
'cannotchangeemail' => 'Ekki er hægt að breyta netföngum notenda á þessum wiki',
'emaildisabled' => 'Þessi síða getur ekki sent tölvupóst.',
'accountcreated' => 'Aðgangur búinn til',
-'accountcreatedtext' => 'Notandaaðgangur fyrir $1 er tilbúinn.',
+'accountcreatedtext' => 'Notandaaðgangurinn fyrir [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|spjall]]) hefur verið búinn til.',
'createaccount-title' => 'Innskráningagerð á {{SITENAME}}',
'createaccount-text' => 'Einhver bjó til aðgang fyrir netfangið þitt á {{SITENAME}} ($4) undir nafninu „$2“, með lykilorðið „$3“.
Þú ættir að skrá þig inn og breyta lykilorðinu núna.
'resetpass-wrong-oldpass' => 'Vitlaust tímabundið eða núverandi lykilorð.
Þú gætir þegar verið búin/n að breyta lykilorðinu eða sótt um nýtt tímabundið lykilorð',
'resetpass-temp-password' => 'Tímabundið lykilorð:',
+'resetpass-abort-generic' => 'Breytingum á lykilorðum hefur verið hætt með viðbót.',
# Special:PasswordReset
'passwordreset' => 'Endurstilla lykilorð',
-'passwordreset-text' => 'Fylltu út þennan reit til að endursetja lykilorðið þitt.',
+'passwordreset-text-one' => 'Útfylltu þetta eyðublað til þess að endursetja lykilorðið.',
'passwordreset-legend' => 'Endurstilla lykilorð',
'passwordreset-disabled' => 'Lokað hefur verið fyrir að endurstilla lykilorð á þessum wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Sláðu inn einn hluta gagnanna hér fyrir neðan}}',
+'passwordreset-emaildisabled' => 'Tölvupósteiginleikar hafa verið gerðir óvirkir á þessum wiki.',
'passwordreset-username' => 'Notandanafn:',
'passwordreset-domain' => 'Lén:',
'passwordreset-capture' => 'Sjá áminninguna sem var send í tölvupósti?',
Svo virðist sem henni hafi verið eytt.',
'edit-conflict' => 'Breytingaárekstur.',
'edit-no-change' => 'Breyting þín var hunsuð, því engin breyting var á textanum.',
+'postedit-confirmation' => 'Breytingin þín var vistuð.',
'edit-already-exists' => 'Gat ekki skapað nýja síðu.
Hún er nú þegar til.',
'defaultmessagetext' => 'Sjálfgefinn skilaboða texti',
'searchmenu-legend' => 'Leitarvalmöguleikar',
'searchmenu-exists' => "'''Það er síða að nafni „[[:$1]]“ á þessum wiki'''",
'searchmenu-new' => "'''Skapaðu síðuna \"[[:\$1]]\" á þessum wiki!'''",
-'searchhelp-url' => 'Help:Efnisyfirlit',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Leita að síðum með þessu forskeyti]]',
'searchprofile-articles' => 'Efnissíður',
'searchprofile-project' => 'Hjálpar- og verkefnasíður',
'searchdisabled' => '{{SITENAME}}-leit er óvirk.
Þú getur leitað í genum Google á meðan.
Athugaðu að skrár þeirra yfir {{SITENAME}}-efni kunna að vera úreltar.',
+'search-error' => 'Villa kom upp við leit að: $1',
# Preferences page
'preferences' => 'Stillingar',
'right-editusercssjs' => 'Breyta CSS- og JS-skrám annarra',
'right-editusercss' => 'Breyta CSS-skrám annarra',
'right-edituserjs' => 'Breyta JS-skrám annarra',
+'right-editmyusercss' => 'Breyta þinni eigin CSS-notandaskrá',
+'right-editmyuserjs' => 'Breyta þinni eigin JavaScript-notandaskrá',
'right-rollback' => 'Taka snögglega aftur breytingar síðasta notanda sem breytti síðunni',
'right-markbotedits' => 'Merkja endurtektar breytingar sem vélmennabreytingar',
'right-noratelimit' => 'Sneiða hjá takmörkunum',
'upload-proto-error-text' => 'Upphlöðun frá öðrum vefþjón þarfnast vefslóðar sem byrjar á <code>http://</code> eða <code>ftp://</code>.',
'upload-file-error' => 'Innri villa',
'upload-file-error-text' => 'Innri villa: Gat ekki búið til tímabundna skrá á vefþjóni.
-Vinsamlegast hafðu samband við [[Special:ListUsers/sysop|möppudýr]].',
+Vinsamlegast hafðu samband við [[Special:ListUsers/sysop|stjórnanda]].',
'upload-misc-error' => 'Óþekkt innhleðsluvilla',
'upload-misc-error-text' => 'Upphal þitt mistókst vegna óþekktrar villu.
Athugaðu hvort vefslóðin sé rétt og aðgengileg og að því loknu reyndu aftur.
Laga ætti tenglanna og láta þá vísa á rétta síðu.<br />
Farið er með síðu sem aðgreiningarsíðu ef að hún inniheldur snið sem vísað er í frá [[MediaWiki:Disambiguationspage]]",
+'pageswithprop-submit' => 'Áfram',
+
'doubleredirects' => 'Tvöfaldar tilvísanir',
'doubleredirectstext' => 'Þessi síða er listi yfir skrár sem eru tilvísanir á aðrar tilvísanir.
Hver lína inniheldur tengla á fyrstu og aðra tilvísun auk þeirrar síðu sem seinni tilvísunin beinist að, sem er oftast sú síða sem allar tilvísanirnar eiga að benda á.
'notvisiblerev' => 'Síðasta breyting eftir annan notanda hefur verið eytt.',
'watchnochange' => 'Engri síðu á vaktlistanum þínum hefur verið breytt á tilgreindu tímabili.',
'watchlist-details' => '{{PLURAL:$1|$1 síða|$1 síður}} á vaktlistanum þínum, fyrir utan spjallsíður.',
-'wlheader-enotif' => '* Tilkynning með tölvupósti er virk.',
-'wlheader-showupdated' => "* Síðum sem hefur verið breytt síðan þú skoðaðir þær síðast eru '''feitletraðar'''",
+'wlheader-enotif' => 'Tilkynning með tölvupósti er virk.',
+'wlheader-showupdated' => "Síðum sem hefur verið breytt síðan þú skoðaðir þær síðast eru '''feitletraðar'''.",
'watchmethod-recent' => 'kanna hvort nýlegar breytingar innihalda vaktaðar síður',
'watchmethod-list' => 'leita að breytingum í vöktuðum síðum',
'watchlistcontains' => 'Vaktlistinn þinn inniheldur {{PLURAL:$1|$1 síðu|$1 síður}}.',
'mycontris' => 'Framlög',
'contribsub2' => 'Eftir $1 ($2)',
'nocontribs' => 'Engar breytingar fundnar sem passa við þessa viðmiðun.',
-'uctop' => '(nýjast)',
+'uctop' => '(núverandi)',
'month' => 'Frá mánuðinum (og fyrr):',
'year' => 'Frá árinu (og fyrr):',
'thumbnail-more' => 'Stækka',
'filemissing' => 'Skrá vantar',
'thumbnail_error' => 'Villa við gerð smámyndar: $1',
+'thumbnail_error_remote' => 'Villumelding frá $1:
+$2',
'djvu_page_error' => 'DjVu-blaðsíða er utan marka',
'djvu_no_xml' => 'Mistókst að sækja XML-gögn fyrir DjVu skrá',
'thumbnail-temp-create' => 'Mistókst að búa til tímabundna smámynd.',
'minutes' => '{{PLURAL:$1|einni mínútu|$1 mínútum}}',
'hours' => '{{PLURAL:$1|einum klukkutíma|$1 klukkutímum}}',
'days' => '{{PLURAL:$1|einum degi|$1 dögum}}',
+'weeks' => '{{PLURAL:$1|$1 vika|$1 vikur}}',
'months' => '{{PLURAL:$1|$1 mánuði|$1 mánuðum}}',
'years' => '{{PLURAL:$1|$1 ári|$1 árum}}',
'ago' => '$1 síðan',
'just-now' => 'akkúrat núna',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|klukkutíma|klukkutímum}} síðan',
+'minutes-ago' => '$1 {{PLURAL:$1|mínútu|mínútum}} síðan',
+'seconds-ago' => '$1 {{PLURAL:$1|sekúndu|sekúndum}} síðan',
+'monday-at' => 'Mánudag klukkan $1',
+'tuesday-at' => 'Þriðjudag klukkan $1',
+'wednesday-at' => 'Miðvikudag klukkan $1',
+'thursday-at' => 'Fimmtudag klukkan $1',
+'friday-at' => 'Föstudag klukkan $1',
+'saturday-at' => 'Laugardag klukkan $1',
+'sunday-at' => 'Sunnudag klukkan $1',
+'yesterday-at' => 'Í gær klukkan $1',
+
# Bad image list
'bad_image_list' => 'Sniðið er eftirfarandi:
'version-software-version' => 'Útgáfa',
'version-entrypoints-header-url' => 'vefslóð',
+# Special:Redirect
+'redirect-submit' => 'Áfram',
+'redirect-lookup' => 'Fletta upp:',
+'redirect-value' => 'Gildi:',
+'redirect-user' => 'Notandanúmer',
+'redirect-file' => 'Skráarnafn',
+'redirect-not-exists' => 'Gildi fannst ekki',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Leita að afriti',
'fileduplicatesearch-summary' => 'Leita að afritum sem hafa sama hakk gildi.',
'htmlform-submit' => 'Senda',
'htmlform-reset' => 'Taka aftur breytingu',
'htmlform-selectorother-other' => 'Annað',
+'htmlform-no' => 'Nei',
+'htmlform-yes' => 'Já',
+'htmlform-chosen-placeholder' => 'Veldu valmöguleika',
# SQLite database support
'sqlite-has-fts' => '$1 með fullum texta leitar stuðningi',
* @author F. Cosoleto
* @author Felis
* @author FollowTheMedia
+ * @author Geitost
* @author Gianfranco
* @author HalphaZ
* @author Jasonbleinel
'oct' => 'ott',
'nov' => 'nov',
'dec' => 'dic',
+'january-date' => '$1 gennaio',
+'february-date' => '$1 febbraio',
+'march-date' => '$1 marzo',
+'april-date' => '$1 aprile',
+'may-date' => '$1 maggio',
+'june-date' => '$1 giugno',
+'july-date' => '$1 luglio',
+'august-date' => '$1 agosto',
+'september-date' => '$1 settembre',
+'october-date' => '$1 ottobre',
+'november-date' => '$1 novembre',
+'december-date' => '$1 dicembre',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoria|Categorie}}',
'create-this-page' => 'Crea questa pagina',
'delete' => 'Cancella',
'deletethispage' => 'Cancella questa pagina',
+'undeletethispage' => 'Recupera questa pagina',
'undelete_short' => 'Recupera {{PLURAL:$1|una revisione|$1 revisioni}}',
'viewdeleted_short' => 'Vedi {{PLURAL:$1|una modifica cancellata|$1 modifiche cancellate}}',
'protect' => 'Proteggi',
'disclaimers' => 'Avvertenze',
'disclaimerpage' => 'Project:Avvertenze generali',
'edithelp' => 'Guida',
-'edithelppage' => 'Help:Modifica',
'helppage' => 'Help:Indice',
'mainpage' => 'Pagina principale',
'mainpage-description' => 'Pagina principale',
'namespaceprotected' => "Non si dispone dei permessi necessari per modificare le pagine del namespace '''$1'''.",
'customcssprotected' => 'Non si dispone dei permessi necessari alla modifica di questa pagina CSS, in quanto contiene le impostazioni personali di un altro utente.',
'customjsprotected' => 'Non si dispone dei permessi necessari alla modifica di questa pagina JavaScript, in quanto contiene le impostazioni personali di un altro utente.',
+'mycustomcssprotected' => 'Non si dispone dei permessi necessari per modificare questa pagina CSS.',
+'mycustomjsprotected' => 'Non si dispone dei permessi necessari per modificare questa pagina JavaScript.',
'ns-specialprotected' => 'Non è possibile modificare le pagine speciali.',
'titleprotected' => "La creazione di una pagina con questo titolo è stata bloccata da [[User:$1|$1]].
La motivazione è la seguente: ''$2''.",
'userlogin-joinproject' => 'Registrati su {{SITENAME}}',
'nologin' => 'Non hai ancora un accesso? $1.',
'nologinlink' => 'Registrati',
-'createaccount' => "Crea un'utenza",
+'createaccount' => 'Registrati',
'gotaccount' => 'Hai già un accesso? $1.',
'gotaccountlink' => 'Entra',
'userlogin-resetlink' => 'Hai dimenticato i tuoi dati di accesso?',
'cannotchangeemail' => 'Gli indirizzi e-mail non possono essere modificati in questo wiki.',
'emaildisabled' => 'Questo sito non può inviare messaggi di posta elettronica.',
'accountcreated' => 'Accesso creato',
-'accountcreatedtext' => "È stato creato un accesso per l'utente $1.",
+'accountcreatedtext' => "È stata creata un'utenza per [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|msg]]).",
'createaccount-title' => 'Creazione di un accesso a {{SITENAME}}',
'createaccount-text' => 'Qualcuno ha creato un accesso a {{SITENAME}} ($4) a nome di $2, associato a questo indirizzo di posta elettronica. La password per l\'utente "$2" è impostata a "$3".
È opportuno eseguire un accesso quanto prima e cambiare la password immediatamente.
# Special:PasswordReset
'passwordreset' => 'Reimposta password',
-'passwordreset-text' => 'Compila questo modulo per reimpostare la tua password.',
+'passwordreset-text-one' => 'Compila questo modulo per reimpostare la tua password.',
+'passwordreset-text-many' => '{{PLURAL:$1|Compila uno dei campi per reimpostare la tua password.}}',
'passwordreset-legend' => 'Reimposta password',
'passwordreset-disabled' => 'La reimpostazione delle password è stata disabilitata su questa wiki',
'passwordreset-emaildisabled' => 'Le funzionalità di posta elettronica sono state disabilitate su questa wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Immetti uno dei dati richiesti qui sotto}}',
'passwordreset-username' => 'Nome utente:',
'passwordreset-domain' => 'Dominio:',
'passwordreset-capture' => 'Visualizzare il contenuto del messaggio e-mail?',
'newarticletext' => "Il collegamento appena seguito corrisponde ad una pagina non ancora esistente.
Se vuoi creare la pagina ora, basta cominciare a scrivere il testo nella casella qui sotto (vedi la [[{{MediaWiki:Helppage}}|pagina di aiuto]] per maggiori informazioni).
Se il collegamento è stato aperto per errore, è sufficiente fare clic sul pulsante '''Indietro''' del proprio browser.",
-'anontalkpagetext' => "----''Questa è la pagina di discussione di un utente anonimo, che non ha ancora creato un accesso o comunque non lo usa. Per identificarlo è quindi necessario usare il numero del suo indirizzo IP. Gli indirizzi IP possono però essere condivisi da più utenti. Se sei un utente anonimo e ritieni che i commenti presenti in questa pagina non si riferiscano a te, [[Special:UserLogin/signup|crea un nuovo accesso]] o [[Special:UserLogin|entra con quello che già hai]] per evitare di essere confuso con altri utenti anonimi in futuro.''",
+'anontalkpagetext' => "----
+''Questa è la pagina di discussione di un utente anonimo, che non ha ancora creato un'utenza o comunque non la sta usando. Per identificarlo è quindi necessario usare il numero del suo indirizzo IP. Gli indirizzi IP possono però essere condivisi da più utenti. Se sei un utente anonimo e ritieni che i commenti presenti in questa pagina non si riferiscano a te, [[Special:UserLogin/signup|crea una nuova utenza]] o [[Special:UserLogin|entra con quella che già hai]] per evitare di essere confuso con altri utenti anonimi in futuro.''",
'noarticletext' => 'In questo momento la pagina richiesta è vuota. È possibile [[Special:Search/{{PAGENAME}}|cercare questo titolo]] nelle altre pagine del sito, <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} cercare nei registri correlati] oppure [{{fullurl:{{FULLPAGENAME}}|action=edit}} modificare la pagina ora]</span>.',
'noarticletext-nopermission' => 'In questo momento la pagina richiesta è vuota. È possibile [[Special:Search/{{PAGENAME}}|cercare questo titolo]] nelle altre pagine del sito o <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} cercare nei registri correlati]</span>, ma non hai i permessi per creare questa pagina.',
'missing-revision' => 'La revisione #$1 della pagina "{{PAGENAME}}" non esiste.
Sembra che sia stata cancellata.',
'edit-conflict' => 'Conflitto di edizione.',
'edit-no-change' => 'La modifica è stata ignorata poiché non sono stati apportati cambiamenti al testo.',
+'postedit-confirmation' => 'La modifica è stata salvata.',
'edit-already-exists' => 'Impossibile creare una nuova pagina.
Esiste già.',
'defaultmessagetext' => 'Testo predefinito',
'content-failed-to-parse' => 'Impossibile analizzare $2 per il modello $1: $3',
'invalid-content-data' => 'Dati contenuti non validi',
'content-not-allowed-here' => 'Contenuto in "$1" non consentito nella pagine [[$2]]',
-'editwarning-warning' => 'Lasciare questa pagina potrebbe costarti la perdita di tutti i cambiamenti effettuati.
-Se sei loggato, puoi disattivare questo avviso nella sezione "{{int:prefs-editing}}" delle tue preferenze.',
+'editwarning-warning' => 'Lasciare questa pagina potrebbe causare la perdita di tutte le modifiche fatte.
+Se hai effettuato l\'accesso, puoi disattivare questo avviso nella sezione "Casella di modifica" delle tue preferenze.',
# Content models
'content-model-wikitext' => 'wikitesto',
'searchmenu-legend' => 'Opzioni di ricerca',
'searchmenu-exists' => "'''Sul sito esiste una pagina il cui nome è \"[[:\$1]]\"'''",
'searchmenu-new' => 'Crea la pagina "[[:$1]]" su questo sito',
-'searchhelp-url' => 'Help:Indice',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Visualizza le pagine con questo prefisso]]',
'searchprofile-articles' => 'Pagine di contenuti',
'searchprofile-project' => 'Pagine di aiuto e relative al progetto',
'userrights-changeable-col' => 'Gruppi modificabili',
'userrights-unchangeable-col' => 'Gruppi non modificabili',
'userrights-conflict' => 'Conflitto di diritti utente! Applica nuovamente le tue modifiche.',
+'userrights-removed-self' => 'Hai rimosso con successo i tuoi diritti. E quindi, non sarai più in grado di accedere a questa pagina.',
# Groups
'group' => 'Gruppo:',
'group-sysop' => 'Amministratori',
'group-bureaucrat' => 'Burocrati',
'group-suppress' => 'Oversight',
-'group-all' => 'Utenti',
+'group-all' => '(tutti)',
'group-user-member' => '{{GENDER:$1|utente}}',
'group-autoconfirmed-member' => '{{GENDER:$1|utente autoconvalidato|utente autoconvalidata|utente autoconvalidato/a}}',
'right-editusercssjs' => 'Modifica i file CSS e JS di altri utenti',
'right-editusercss' => 'Modifica i file CSS di altri utenti',
'right-edituserjs' => 'Modifica i file JS di altri utenti',
+'right-editmyusercss' => 'Modifica il file CSS del proprio utente',
+'right-editmyuserjs' => 'Modifica il file JavaScript del proprio utente',
+'right-viewmywatchlist' => 'Visualizza i propri osservati speciali',
+'right-editmywatchlist' => 'Modifica i propri osservati speciali. Da notare che alcune azioni potranno ancora aggiungere pagine anche senza questo diritto.',
'right-rollback' => "Annulla rapidamente le modifiche dell'ultimo utente che ha modificato una particolare pagina",
'right-markbotedits' => 'Segna le modifiche soggette a rollback come effettuate da bot',
'right-noratelimit' => 'Non soggetto al limite di azioni',
'action-deleterevision' => 'cancellare questa versione',
'action-deletedhistory' => 'visualizzare la cronologia cancellata di questa pagina',
'action-browsearchive' => 'cercare pagine cancellate',
-'action-undelete' => 'recuperare custa pàgina',
+'action-undelete' => 'recuperare questa pagina',
'action-suppressrevision' => 'rivedere e ripristinare le modifiche nascoste',
'action-suppressionlog' => 'visionare questo log privato',
'action-block' => 'bloccare questo utente in scrittura',
'action-userrights-interwiki' => 'modificare i diritti degli utenti su altre wiki',
'action-siteadmin' => 'bloccare e sbloccare il database',
'action-sendemail' => 'inviare e-mail',
+'action-editmywatchlist' => 'modificare i propri osservati speciali',
+'action-viewmywatchlist' => 'vedere i propri osservati speciali',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|modifica|modifiche}}',
'reuploaddesc' => 'Torna al modulo per il caricamento.',
'upload-tryagain' => 'Invia la descrizione del file modificato',
'uploadnologin' => 'Accesso non effettuato',
-'uploadnologintext' => "Il caricamento dei file è consentito solo agli utenti registrati che hanno eseguito [[Special:UserLogin|l'accesso]] al sito.",
+'uploadnologintext' => 'Per caricare file è necessario $1.',
'upload_directory_missing' => 'La directory di upload ($1) non esiste e non può essere creata dal server web.',
'upload_directory_read_only' => 'Il server web non è in grado di scrivere nella directory di upload ($1).',
'uploaderror' => 'Errore nel caricamento',
'upload-proto-error' => 'Protocollo errato',
'upload-proto-error-text' => "Per l'upload remoto è necessario specificare URL che iniziano con <code>http://</code> oppure <code>ftp://</code>.",
'upload-file-error' => 'Errore interno',
-'upload-file-error-text' => 'Si è verificato un errore interno durante la creazione di un file temporaneo sul server. Contattare un [[Special:ListUsers/sysop|amministratore]] del sito.',
+'upload-file-error-text' => 'Si è verificato un errore interno durante la creazione di un file temporaneo sul server. Contattare un [[Special:ListUsers/sysop|amministratore]].',
'upload-misc-error' => 'Errore di caricamento sconosciuto',
-'upload-misc-error-text' => 'Si è verificato un errore non identificato durante il caricamento del file. Verificare che la URL sia corretta e accessibile e provare di nuovo. Se il problema persiste, contattare un [[Special:ListUsers/sysop|amministratore]] del sito.',
+'upload-misc-error-text' => 'Si è verificato un errore non identificato durante il caricamento del file. Verificare che la URL sia corretta e accessibile e provare di nuovo. Se il problema persiste, contattare un [[Special:ListUsers/sysop|amministratore]].',
'upload-too-many-redirects' => "L'URL conteneva troppi redirect",
'upload-unknown-size' => 'Dimensione sconosciuta',
'upload-http-error' => 'Si è verificato un errore HTTP: $1',
'notvisiblerev' => 'La revisione è stata cancellata',
'watchnochange' => 'Nessuna delle pagine osservate è stata modificata nel periodo selezionato.',
'watchlist-details' => 'La lista degli osservati speciali contiene {{PLURAL:$1|una pagina (e la rispettiva pagina di discussione)|$1 pagine (e le rispettive pagine di discussione)}}.',
-'wlheader-enotif' => '* La notifica via e-mail è attiva.',
-'wlheader-showupdated' => "* Le pagine che sono state modificate dopo l'ultima visita sono evidenziate in '''grassetto'''.",
+'wlheader-enotif' => 'La notifica via email è attiva.',
+'wlheader-showupdated' => "Le pagine che sono state modificate dopo l'ultima visita sono evidenziate in '''grassetto'''.",
'watchmethod-recent' => 'controllo delle modifiche recenti per gli osservati speciali',
'watchmethod-list' => 'controllo degli osservati speciali per modifiche recenti',
'watchlistcontains' => 'La lista degli osservati speciali contiene {{PLURAL:$1|una pagina|$1 pagine}}.',
'mycontris' => 'contributi',
'contribsub2' => 'Per $1 ($2)',
'nocontribs' => 'Non sono state trovate modifiche che soddisfino i criteri di ricerca.',
-'uctop' => '(ultima per la pagina)',
+'uctop' => '(attuale)',
'month' => 'Dal mese (e precedenti):',
'year' => "Dall'anno (e precedenti):",
'thumbnail-more' => 'Ingrandisci',
'filemissing' => 'File mancante',
'thumbnail_error' => 'Errore nella creazione della miniatura: $1',
+'thumbnail_error_remote' => 'Messaggio di errore da $1:
+$2',
'djvu_page_error' => 'Numero di pagina DjVu errato',
'djvu_no_xml' => "Impossibile ottenere l'XML per il file DjVu",
'thumbnail-temp-create' => 'Impossibile creare il file temporaneo delle miniature',
'modern.css' => '/* Gli stili CSS inseriti qui si applicano agli utenti che usano la skin Modern */',
'vector.css' => '/* Gli stili CSS inseriti qui si applicano agli utenti che usano la skin Vector */',
'print.css' => "/* Gli stili CSS inseriti qui si applicano all'output in stampa */",
-'handheld.css' => '/* Gli stili CSS inseriti qui si applicano ai dispositivi portatili basati sulla skin configurata in $wgHandheldStyle */',
'noscript.css' => '/ * Gli stili CSS inseriti qui si applicano agli utenti che hanno JavaScript disabilitato * /',
'group-autoconfirmed.css' => '/ * Gli stili CSS inseriti qui si applicheranno solo ad utenti autoconvalidati * /',
'group-bot.css' => '/ * Gli stili CSS inseriti qui si applicheranno solo ai bot * /',
'oct' => '10月',
'nov' => '11月',
'dec' => '12月',
+'january-date' => '1月$1日',
+'february-date' => '2月$1日',
+'march-date' => '3月$1日',
+'april-date' => '4月$1日',
+'may-date' => '5月$1日',
+'june-date' => '6月$1日',
+'july-date' => '7月$1日',
+'august-date' => '8月$1日',
+'september-date' => '9月$1日',
+'october-date' => '10月$1日',
+'november-date' => '11月$1日',
+'december-date' => '12月$1日',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|カテゴリ}}',
'create-this-page' => 'このページを作成',
'delete' => '削除',
'deletethispage' => 'このページを削除',
+'undeletethispage' => 'このページを復元',
'undelete_short' => '{{PLURAL:$1|$1 編集}}を復元',
'viewdeleted_short' => '{{PLURAL:$1|削除された $1 編集}}を閲覧',
'protect' => '保護',
'disclaimers' => '免責事項',
'disclaimerpage' => 'Project:免責事項',
'edithelp' => '編集の仕方',
-'edithelppage' => 'Help:編集',
'helppage' => 'Help:目次',
'mainpage' => 'メインページ',
'mainpage-description' => 'メインページ',
'namespaceprotected' => "'''$1'''名前空間にあるページを編集する権限がありません。",
'customcssprotected' => 'この CSS ページは他の利用者の個人設定を含んでいるため、あなたには編集する権限がありません。',
'customjsprotected' => 'この JavaScript ページは他の利用者の個人設定を含んでいるため、あなたには編集する権限がありません。',
+'mycustomcssprotected' => 'あなたには CSS ページを編集する権限がありません。',
+'mycustomjsprotected' => 'あなたには JavaScript ページを編集する権限がありません。',
'ns-specialprotected' => '特別ページは編集できません。',
'titleprotected' => "[[User:$1|$1]]によりこのページ名を持つページの作成は保護されています。
理由は「''$2''」です。",
'createacct-yourpasswordagain-ph' => 'パスワードを再入力',
'remembermypassword' => 'このブラウザーにログイン情報を保存 (最長 $1 {{PLURAL:$1|日|日間}})',
'userlogin-remembermypassword' => 'ログイン状態を保持',
-'userlogin-signwithsecure' => 'セキュリティで保護された接続を使用',
+'userlogin-signwithsecure' => 'SSL (https) 接続を使用',
'securelogin-stick-https' => 'ログイン後にHTTPS接続を維持',
'yourdomainname' => 'ドメイン:',
'password-change-forbidden' => 'このウィキではパスワードを変更できません。',
'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' => '入力された利用者名は既に使用されています。
他の名前を選んでください。',
'cannotchangeemail' => 'このウィキではアカウントのメールアドレスを変更できません。',
'emaildisabled' => 'このサイトではメールを送信できません。',
'accountcreated' => 'アカウントを作成しました',
-'accountcreatedtext' => '利用者アカウント「$1」を作成しました。',
+'accountcreatedtext' => '利用者アカウント [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|トーク]]) を作成しました。',
'createaccount-title' => '{{SITENAME}}のアカウント作成',
'createaccount-text' => '誰か (おそらくあなた) が、{{SITENAME}} ($4) にあなたのメールアドレスのアカウントを作成しました。
アカウント名「$2」、パスワード「$3」です。
# Special:PasswordReset
'passwordreset' => 'パスワードの再設定',
-'passwordreset-text' => 'このフォームに記入すると、パスワードを再設定できます。',
+'passwordreset-text-one' => 'パスワードを再設定するにはこのフォームに記入してください。',
+'passwordreset-text-many' => '{{PLURAL:$1|パスワードを再設定するにはいずれかの情報を入力してください。}}',
'passwordreset-legend' => 'パスワードの再設定',
'passwordreset-disabled' => 'パスワードの再設定は、このウィキでは無効になっています。',
'passwordreset-emaildisabled' => 'メール機能は、このウィキでは無効化されています。',
-'passwordreset-pretext' => '{{PLURAL:$1||下記のデータのいずれか 1 つを入力してください}}',
'passwordreset-username' => '利用者名:',
'passwordreset-domain' => 'ドメイン:',
'passwordreset-capture' => 'お送りするメールの内容を表示しますか?',
既に削除されているようです。',
'edit-conflict' => '編集が競合。',
'edit-no-change' => '文章が変更されていないため、編集は無視されました。',
+'postedit-confirmation' => '編集を保存しました。',
'edit-already-exists' => '新しいページを作成できませんでした。
そのページは既に存在します。',
'defaultmessagetext' => '既定のメッセージ文',
'searchmenu-legend' => '検索オプション',
'searchmenu-exists' => "'''このウィキには「[[:$1]]」という名前のページがあります'''",
'searchmenu-new' => "'''このウィキでページ「[[:$1]]」を新規作成する'''",
-'searchhelp-url' => 'Help:目次',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|この文字列から始まる名前のページを見る]]',
'searchprofile-articles' => '本文ページ',
'searchprofile-project' => 'ヘルプとプロジェクトページ',
'userrights-unchangeable-col' => '変更できないグループ',
'userrights-irreversible-marker' => '$1*',
'userrights-conflict' => '利用者権限に競合があります! 変更内容をもう一度適用してください。',
+'userrights-removed-self' => 'あなた自身の権限を除去しました。そのため、このページにはもうアクセスできません。',
# Groups
'group' => 'グループ:',
'right-editusercssjs' => '他の利用者のCSSファイル/JavaScriptファイルを編集',
'right-editusercss' => '他の利用者のCSSファイルを編集',
'right-edituserjs' => '他の利用者のJavaScriptファイルを編集',
+'right-editmyusercss' => '自身のCSSファイルを編集',
+'right-editmyuserjs' => '自身のJavaScriptファイルを編集',
+'right-viewmywatchlist' => 'ウォッチリストを閲覧',
+'right-editmywatchlist' => '自身のウォッチリストを編集 (注: この権限がなくてもページを追加できる権限が他にもあります)',
'right-rollback' => '特定ページを最後に編集した利用者の編集を即時巻き戻し',
'right-markbotedits' => '巻き戻しをボットの編集として扱う',
'right-noratelimit' => '速度制限を受けない',
'action-userrights-interwiki' => '他のウィキの利用者の利用者権限変更',
'action-siteadmin' => 'データベースのロックまたはロック解除',
'action-sendemail' => 'メールの送信',
+'action-editmywatchlist' => '自身のウォッチリストの編集',
+'action-viewmywatchlist' => '自身のウォッチリストの閲覧',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|回の変更}}',
'reuploaddesc' => 'アップロードを中止してアップロードフォームへ戻る',
'upload-tryagain' => '修正したファイル解説を投稿',
'uploadnologin' => 'ログインしていません',
-'uploadnologintext' => 'ファイルをアップロードするには[[Special:UserLogin|ログイン]]する必要があります。',
+'uploadnologintext' => 'ファイルをアップロードするには$1する必要があります。',
'upload_directory_missing' => 'アップロード先ディレクトリ ($1) が見つかりませんでした。ウェブ サーバーによる作成もできませんでした。',
'upload_directory_read_only' => 'アップロード先ディレクトリ ($1) には、ウェブサーバーが書き込めません。',
'uploaderror' => 'アップロードのエラー',
'filehist-comment' => 'コメント',
'filehist-missing' => 'ファイルがありません',
'imagelinks' => 'ファイルの使用状況',
-'linkstoimage' => '以下の{{PLURAL:1|ページ| $1 ページ}}がこのファイルにリンクしています:',
+'linkstoimage' => '以下の{{PLURAL:$1|ページ| $1 ページ}}がこのファイルにリンクしています:',
'linkstoimage-more' => 'このファイルへは $1 を超える数のページからリンクがあります。
以下の一覧ではこのファイルにリンクしている最初の $1 ページのみを表示しています。
[[Special:WhatLinksHere/$2|完全な一覧]]も参照してください。',
'notvisiblerev' => '別の利用者による最終版は削除されました',
'watchnochange' => 'ウォッチリストに登録しているページで、指定期間内に編集されたものはありません。',
'watchlist-details' => 'ウォッチリストには {{PLURAL:$1|$1 ページ}}が登録されています (トークページを除く)。',
-'wlheader-enotif' => '* メール通知が有効になっています',
-'wlheader-showupdated' => "* 最終訪問以降に変更されたページは、'''太字'''で表示されます",
+'wlheader-enotif' => 'メール通知が有効になっています。',
+'wlheader-showupdated' => "最終訪問以降に変更されたページは、'''太字'''で表示されます。",
'watchmethod-recent' => '最近の更新内のウォッチされているページを確認中',
'watchmethod-list' => 'ウォッチされているページ内の最近の更新を確認中',
'watchlistcontains' => 'ウォッチリストには {{PLURAL:$1|$1 ページ}}が登録されています。',
'whatlinkshere' => 'リンク元',
'whatlinkshere-title' => '「$1」へリンクしているページ',
'whatlinkshere-page' => 'ページ:',
-'linkshere' => "以下のページが、'''[[:$1]]'''にリンクしています:",
-'nolinkshere' => "'''[[:$1]]'''にリンクしているページはありません。",
-'nolinkshere-ns' => "指定した名前空間内に、'''[[:$1]]'''にリンクしているページはありません。",
+'linkshere' => "以下のページが、'''[[:$1]]''' にリンクしています:",
+'nolinkshere' => "'''[[:$1]]''' にリンクしているページはありません。",
+'nolinkshere-ns' => "指定した名前空間内に、'''[[:$1]]''' にリンクしているページはありません。",
'isredirect' => '転送ページ',
'istemplate' => '参照読み込み',
'isimage' => 'ファイルへのリンク',
'thumbnail-more' => '拡大',
'filemissing' => 'ファイルがありません',
'thumbnail_error' => 'サムネイルの作成エラー: $1',
+'thumbnail_error_remote' => '$1が返したエラーメッセージ:
+$2',
'djvu_page_error' => 'DjVuページが範囲外です',
'djvu_no_xml' => 'DjVuファイルのXMLデータを取得できません',
'thumbnail-temp-create' => '一時的なサムネイルファイルを作成できません',
'import-error-interwiki' => 'ページ名が外部リンク (ウィキ間リンク) に予約されているため、ページ「$1」を取り込みませんでした。',
'import-error-special' => 'ページ「$1」は、ページが許可されない特別名前空間に属しているため取り込みません。',
'import-error-invalid' => '名前が正しくないため、ページ「$1」を取り込みませんでした。',
-'import-error-unserialize' => 'ページ「$1」の版 $2 は直列化復元できませんでした。この版は $4 として直列化されたコンテンツモデル $3 を使用していると報告されています。',
+'import-error-unserialize' => 'ページ「$1」の版 $2 はシリアライズ解除できませんでした。この版は $4 としてシリアライズされたコンテンツモデル $3 を使用していると報告されています。',
'import-options-wrong' => '間違った{{PLURAL:$2|オプション}}です: <nowiki>$1</nowiki>',
'import-rootpage-invalid' => '入力したルートページの名前は無効です。',
'import-rootpage-nosubpage' => 'ルートページの名前空間「$1」では、下位ページが許可されていません。',
'modern.css' => '/* ここに記述したCSSはモダン外装の利用者に影響します */',
'vector.css' => '/* ここに記述したCSSはベクター外装の利用者に影響します */',
'print.css' => '/* ここに記述したCSSは印刷出力に影響します */',
-'handheld.css' => '/* ここに記述したCSSは$wgHandheldStyleで設定された外装に基づく携帯機器に影響します */',
'noscript.css' => '/* ここに記述したCSSはJavaScriptを無効にしている利用者に影響します */',
'group-autoconfirmed.css' => '/* ここに記述したCSSは自動承認された利用者のみに影響します */',
'group-bot.css' => '/* ここに記述したCSSはボットのみに影響します */',
'disclaimers' => 'Diskliema',
'disclaimerpage' => 'Project: Jinaral diskliema',
'edithelp' => 'Editin elp',
-'edithelppage' => 'Help: Editin',
'helppage' => 'Help: Kantent',
'mainpage' => 'Mien piej',
'mainpage-description' => 'Mien piej',
* @ingroup Language
* @file
*
+ * @author Geitost
* @author Huslåke
* @author Urhixidur
* @author Ælsån
'tog-enotifrevealaddr' => "Ves miin e-mail-adresse i mails ve besked ændrenger'm",
'tog-shownumberswatching' => 'Ves åntal brugere, der åvervåger',
'tog-fancysig' => 'Signaturer uden åtåmatisk henvesnenge',
-'tog-externaleditor' => 'Brug ekstern redigærengsmåskiin åtåmatisk',
-'tog-externaldiff' => 'Brug ekstern førskelsvesnenge åtåmatisk',
'tog-showjumplinks' => 'Ves tilgængelegheds-henvesnenger',
'tog-uselivepreview' => 'Brug åtåmatisk førhåndsvesnenge (JavaScript) (eksperimentel)',
'tog-forceeditsummary' => 'Advar, hves sammenfatnenge mangler ve gemnenge',
'disclaimers' => 'Førbeholt',
'disclaimerpage' => 'Project:Huses førbeholt',
'edithelp' => 'Hjælp til redigærenge',
-'edithelppage' => "Help:Vordan redigærer a'n side",
'helppage' => 'Help:Hjælpførside',
'mainpage' => 'Førsit',
'mainpage-description' => 'Førsit',
'userlogin' => 'Åpret æ konto æller loĝ på',
'logout' => 'Loĝ åf',
'userlogout' => 'Loĝ åf',
-'nologin' => "Du har engen brugerkonto? '''$1'''.",
+'nologin' => 'Du har engen brugerkonto? $1.',
'nologinlink' => 'Åpret ny brugerkonto',
'createaccount' => 'Åpret en ny konto',
'gotaccount' => "Du har ålerede en brugerkonto? '''$1'''.",
'prevn' => 'førge {{PLURAL:$1|$1}}',
'nextn' => 'nægste {{PLURAL:$1|$1}}',
'viewprevnext' => 'Ves ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Hjælpførside',
'searchall' => 'ål',
'powersearch' => 'Søĝ',
'linksearch-line' => '$2 linker til $1',
'linksearch-error' => "Wildkårter må ken benyttes i'n stårt åf håstnavnet.",
-# E-mail user
+# Email user
'emailuser' => 'E-mail til denne bruger',
# Watchlist
'disclaimers' => 'Pamaidonan',
'disclaimerpage' => 'Project:Panyangkalan umum',
'edithelp' => 'Pitulung panyuntingan',
-'edithelppage' => 'Help:panyuntingan',
'helppage' => 'Help:Isi',
'mainpage' => 'Kaca Utama',
'mainpage-description' => 'Kaca Utama',
# Special:PasswordReset
'passwordreset' => 'Balèni setèl tembung sandhi',
-'passwordreset-text' => 'Jangkepi pormulir iki kanggo mbalèkaké tembung sandhiné Sampéyan.',
'passwordreset-legend' => 'Balèni setèl tembung sandhi',
'passwordreset-disabled' => 'Piranti kanggo mbalèni nyetèl tembung sandhi dipatèni nèng wiki iki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Lebokaké siji bagéyan data ngisor iki}}',
'passwordreset-username' => 'Jeneng panganggo:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Delok layang èlèktronik sing diasilaké?',
'searchmenu-legend' => 'Pilihan panggolèkan',
'searchmenu-exists' => "'''Ana kaca kanthi jeneng \"[[\$1]]\" ing wiki iki'''",
'searchmenu-new' => "'''Gawé kaca \"[[:\$1]]\" ing wiki iki!'''",
-'searchhelp-url' => 'Help:Isi',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Tlusuri kaca-kaca kanthi tembung-wiwitan iki]]',
'searchprofile-articles' => 'Kaca isi',
'searchprofile-project' => 'Kaca pitulung lan proyèk',
'listusers-noresult' => 'Panganggo ora ditemokaké.',
'listusers-blocked' => '(diblokir)',
+# Special:ActiveUsers
+'activeusers' => 'Dhaptar panganggo aktif',
+'activeusers-intro' => 'Iki daptar panganggo sing katon lakuné ing $1 {{PLURAL:$1|dina|dina}} kapungkur.',
+'activeusers-count' => '$1 {{PLURAL:$1|suntingan|suntingan}} ing {{PLURAL:$3|dina|$3 dina}} pungkasan',
+'activeusers-from' => 'Tampilna panganggo wiwit saka:',
+'activeusers-hidebots' => 'Delikna bot',
+'activeusers-hidesysops' => 'Delikna pangurus',
+'activeusers-noresult' => 'Panganggo ora ditemokaké.',
+
# Special:ListGroupRights
'listgrouprights' => 'Hak-hak grup panganggo',
'listgrouprights-summary' => 'Ing ngisor iki kapacak dhaftar grup panganggo sing didéfinisi ing wiki iki, kanthi hak-hak aksès gandhèngané.
'notvisiblerev' => 'Révisi wis dibusak',
'watchnochange' => 'Ora ana kaca ing daftar pangawasan panjenengan sing diowahi ing mangsa wektu sing dipilih.',
'watchlist-details' => 'Ngawasaké {{PLURAL:$1|$1 kaca|$1 kaca}}, ora kalebu kaca-kaca dhiskusi.',
-'wlheader-enotif' => '* Notifikasi e-mail diaktifaké.',
-'wlheader-showupdated' => "* Kaca-kaca sing wis owah wiwit ditiliki panjenengan kaping pungkasan, dituduhaké mawa '''aksara kandel'''",
+'wlheader-enotif' => 'Notifikasi e-mail diaktifaké.',
+'wlheader-showupdated' => "Kaca-kaca sing wis owah wiwit ditiliki panjenengan kaping pungkasan, dituduhaké mawa '''aksara kandel'''",
'watchmethod-recent' => 'priksa daftar owah-owahan anyar kanggo kaca sing diawasi',
'watchmethod-list' => 'priksa kaca sing diawasi kanggo owah-owahan anyar',
'watchlistcontains' => 'Daftar pangawasan panjenengan isiné ana $1 {{PLURAL:$1|kaca|kaca}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Jembar',
'exif-imagelength' => 'Dhuwur',
'exif-bitspersample' => 'Bit per komponèn',
'exif-originalimageheight' => 'Dhuwuré gambar sakdurungé dikethok',
'exif-originalimagewidth' => 'Jembaré gambar sakdurungé dikethok',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Ora dikomprèsi',
'exif-compression-2' => 'CCITT Group 3 1-Dimensional Modified Huffman RLE',
'exif-compression-3' => 'CCITT Group 3 fax encoding',
'version-entrypoints-header-entrypoint' => 'Tithik lebon',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Lokasi berkas',
-'filepath-page' => 'Berkas:',
-'filepath-submit' => 'Golèk',
-'filepath-summary' => 'Kaca astaméwa utawa kusus iki nuduhaké jalur pepak sawijining berkas.
-Gambar dituduhaké mawa résolusi kebak lan tipe liyané berkas bakal dibuka langsung mawa program kagandhèng.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Golèk berkas duplikat',
'fileduplicatesearch-summary' => 'Golèk duplikat berkas adhedhasar biji hash-é.',
* @author ITshnik
* @author Kaganer
* @author Malafaya
+ * @author Nemo bis
* @author Nodar Kherkheulidze
* @author Reedy
* @author Sopho
'tog-diffonly' => 'დამალე გვერდის შიგთავსი ცვლილების ქვევით',
'tog-showhiddencats' => 'დამალული კატეგორიების ჩვენება',
'tog-noconvertlink' => 'სათაურის გარდაქმნის ბმულის გამორთვა',
-'tog-norollbackdiff' => 'á\83\92á\83\90á\83\9bá\83\9dá\83¢á\83\9dá\83\95á\83\94á\83\97 á\83ªá\83\95á\83\9aá\83\98á\83\9aá\83\94á\83\91á\83\90 á\83\92á\83\90á\83£á\83¥á\83\9bá\83\94á\83\91á\83\98á\83¡á\83\90á\83¡',
+'tog-norollbackdiff' => 'á\83\92á\83\90á\83£á\83¥á\83\9bá\83\94á\83\91á\83\98á\83¡á\83\90á\83¡ á\83\92á\83\90á\83\9bá\83\9dá\83¢á\83\9dá\83\95á\83\94á\83\97 á\83ªá\83\95á\83\9aá\83\98á\83\9aá\83\94á\83\91á\83\90á\83\97á\83\90 á\83\92á\83\90á\83\9cá\83¡á\83®á\83\95á\83\90á\83\95á\83\94á\83\91á\83\90',
'tog-useeditwarning' => 'გამაფრთხილე, როდესაც დავტოვებ რედაქტირებად გვერდს, დაუმახსოვრებელი ცვლილებებით',
'underline-always' => 'მუდამ',
'oct' => 'ოქტ',
'nov' => 'ნოე',
'dec' => 'დეკ',
+'january-date' => '$1 იანვარი',
+'february-date' => '$1 თებერვალი',
+'march-date' => '$1 მარტი',
+'april-date' => '$1 აპრილი',
+'may-date' => '$1 მაისი',
+'june-date' => '$1 ივნისი',
+'july-date' => '$1 ივლისი',
+'august-date' => '$1 აგვისტო',
+'september-date' => '$1 სექტემბერი',
+'october-date' => '$1 ოქტომბერი',
+'november-date' => '$1 ნოემბერი',
+'december-date' => '$1 დეკემბერი',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|კატეგორია|კატეგორიები}}',
'vector-action-protect' => 'დაცვა',
'vector-action-undelete' => 'აღდგენა',
'vector-action-unprotect' => 'დაცვის დონის შეცვლა',
-'vector-simplesearch-preference' => 'á\83«á\83\94á\83\91á\83\9cá\83\98ს გაფართოებული ველის ჩართვა (მხოლოდ ვექტორული იერსახისთვის)',
+'vector-simplesearch-preference' => 'á\83«á\83\98á\83\94á\83\91á\83\98á\83¡ს გაფართოებული ველის ჩართვა (მხოლოდ ვექტორული იერსახისთვის)',
'vector-view-create' => 'შექმნა',
'vector-view-edit' => 'რედაქტირება',
'vector-view-history' => 'ისტორია',
'create-this-page' => 'ამ გვერდის შექმნა',
'delete' => 'წაშლა',
'deletethispage' => 'გვერდის წაშლა',
+'undeletethispage' => 'ამ გვერდის აღდგენა',
'undelete_short' => 'გააუქმე წაშლა {{PLURAL:$1|ერთი რედაქტირება|$1 რედაქტირება}}',
'viewdeleted_short' => '{{PLURAL:$1|წაშლილი რედაქტირების|$1 წაშლილი რედაქტირებების}} ხილვა',
'protect' => 'დაბლოკე',
'disclaimers' => 'პასუხისმგებლობის მოხსნა',
'disclaimerpage' => 'Project:პასუხისმგებლობის უარყოფა',
'edithelp' => 'დახმარება',
-'edithelppage' => 'Help:ტექსტის რედაქტირება (მარტივი)',
'helppage' => 'Help:დახმარება',
'mainpage' => 'მთავარი გვერდი',
'mainpage-description' => 'მთავარი გვერდი',
'namespaceprotected' => "თქვენ არ გაქვთ '''$1''' სახელთა სივრცეში გვერდების რედაქტირების უფლება.",
'customcssprotected' => 'თქვენ არ გაქვთ ამ CSS გვერდის რედაქტირების უფლება, ვინაიდან ის სხვა მომხმარებლის პირად კონფიგურაციას შეიცავს.',
'customjsprotected' => 'თქვენ არ გაქვთ ამ JavaScript გვერდის რედაქტირების უფლება, ვინაიდან ის სხვა მომხმარებლის პირად კონფიგურაციას შეიცავს.',
+'mycustomcssprotected' => 'თქვენ არ გაქვთ ამ CSS-გვერდის რედაქტირების უფლება.',
+'mycustomjsprotected' => 'თქვენ არ გაქვთ ამ JavaScript-გვერდის რედაქტირების უფლება.',
'ns-specialprotected' => 'გვერდების რედაქტირება სახელთა სივრცეში {{ns:special}} შეუძლებელია.',
'titleprotected' => "შემდეგი გვერდის შექმნა აკრძალულია მომხმარებელ [[User:$1|$1]]-ს მიერ.
მოცემულია შემდეგი ახსნა: „''$2''“.",
'welcomecreation-msg' => 'თქვენი ანგარიში შექმნილია.
არ დაგავიწყდეთ თქვენი [[Special:Preferences|{{SITENAME}}-ის კონფიგურაციის]] შეცვლა.',
'yourname' => 'მომხმარებელი:',
+'userlogin-yourname' => 'მომხმარებლის სახელი',
+'userlogin-yourname-ph' => 'შეიყვანეთ თქვენი მომხმარებლის სახელი',
'yourpassword' => 'პაროლი:',
+'userlogin-yourpassword' => 'პაროლი',
+'userlogin-yourpassword-ph' => 'შეიყვანეთ თქვენი პაროლი',
+'createacct-yourpassword-ph' => 'შეიყვანეთ პაროლი',
'yourpasswordagain' => 'ხელმეორედ შეიყვანეთ პაროლი',
+'createacct-yourpasswordagain' => 'დაადასტურეთ პაროლი',
+'createacct-yourpasswordagain-ph' => 'ხელმეორედ შეიყვანეთ პაროლი',
'remembermypassword' => 'დამიმახსოვრე ამ კომპიუტერზე (მაქსიმუმ $1 {{PLURAL:$1|დღე}})',
+'userlogin-remembermypassword' => 'დამიმახსოვრე',
+'userlogin-signwithsecure' => 'უსაფრთხო კავშირის გამოყენება',
'securelogin-stick-https' => 'გააგრძელეთ კავშირი HTTPS-თან შესვლის შემდეგ',
'yourdomainname' => 'თქვენი დომენი',
'password-change-forbidden' => 'თქვენ არ შეგიძლიათ ამ ვიკიში პაროლის შეცვლა.',
'logout' => 'გასვლა',
'userlogout' => 'გასვლა',
'notloggedin' => 'შესული არ ხართ',
+'userlogin-noaccount' => 'არ გაქვთ ანგარიში?',
+'userlogin-joinproject' => 'შეუერთდით პროექტს {{SITENAME}}',
'nologin' => "ჯერ არ ხართ რეგისტრირებული? '''$1'''.",
'nologinlink' => 'გახსენით ანგარიში',
'createaccount' => 'გახსენი ანგარიში',
'gotaccount' => "უკვე რეგისტრირებული ხართ? '''$1'''",
'gotaccountlink' => 'შესვლა',
'userlogin-resetlink' => 'ავტორიზაციის მონაცემები დაგავიწყდათ?',
+'userlogin-resetpassword-link' => 'პაროლის მოცილება',
+'helplogin-url' => 'Help:შესვლა',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|დახმარება სისტემაში შესასვლელად]]',
+'createacct-join' => 'ქვემოთ მიუთითეთ ინფორმაცია თქვენ შესახებ.',
+'createacct-emailrequired' => 'ელ. ფოსტის მისამართი',
+'createacct-emailoptional' => 'ელ. ფოსტის მისამართი (არასავალდებულო)',
+'createacct-email-ph' => 'შეიყვანეთ თქვენი ელ. ფოსტის მისამართი',
'createaccountmail' => 'გამოიყენეთ შემთხვევითობის მეთოდით შერჩეული დროებითი პაროლი და მისი გაგზავნა ქვემოთ მითითებულ ელ. ფოსტის მისამართზე:',
+'createacct-realname' => 'ნამდვილი სახელი (არააუცილებელი)',
'createaccountreason' => 'მიზეზი:',
+'createacct-reason' => 'მიზეზი',
+'createacct-reason-ph' => 'რატომ ქმნით ახალ ანგარიშს?',
+'createacct-captcha' => 'უსაფრთხოების შემოწმება',
+'createacct-imgcaptcha-ph' => 'შეიყვანეთ ზემოთ მოცემული ტექსტი',
+'createacct-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}} იყენებს cookies, რომლებიც თქვენს ბრაუზერში გათიშულია. გთხოვთ, აამოქმედოთ ისინი და შემდგომ ხელახლა გაიარეთ რეგისტრაცია.',
'nocookieslogin' => '{{SITENAME}} მომხმარებლების შესვლისთვის იყენებს "ქუქის ჩანაწერს". თქვენ იგი გათიშეთ. გთხოვთ, ჩართოთ ისინი და ხელმეორედ მოსინჯოთ.',
'cannotchangeemail' => 'ანგარიშის ელ-ფოსტის მისამართების შეცვლა ამ ვიკიში შეუძლებელია.',
'emaildisabled' => 'ამ საიტს არ შეუძლია ელ.ფოსტის გაგზავნა.',
'accountcreated' => 'ანგარიში შეიქმნა',
-'accountcreatedtext' => 'á\83¨á\83\94á\83¥á\83\9bá\83\9cá\83\98á\83\9aá\83\98á\83\90 á\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 $1.',
+'accountcreatedtext' => 'á\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 [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|á\83\92á\83\90á\83\9cá\83®á\83\98á\83\9aá\83\95á\83\90]]) á\83¨á\83\94á\83¥á\83\9bá\83\9cá\83\98á\83\9aá\83\98á\83\90.',
'createaccount-title' => 'ანგარიშის შექმნა {{SITENAME}}-თვის',
'createaccount-text' => 'ვიღაცამ შექმნა ანგარიში სახელით „$2“ და პაროლით „$3“ თქვენი ელექტრონული ფოსტისთვის {{SITENAME}}-ში ($4). გთხოვთ დარეგისტრირდეთ და შეცვალოთ პაროლი.
'resetpass-wrong-oldpass' => 'არასწორი დროებითი ან მოქმედი პაროლი.
შესაძლოა თქვენ წარმატებით შეცვალეთ პაროლი ან მოითხოვეთ ახალი.',
'resetpass-temp-password' => 'დროებითი პაროლი:',
+'resetpass-abort-generic' => 'პაროლის შეცვლა შეჩერდა გაფართოების მიერ.',
# Special:PasswordReset
'passwordreset' => 'პაროლის აღდგენა',
-'passwordreset-text' => 'შეავსეთ ეს ფორმა, რათა კვლავ დააყენოთ თქვენი პაროლი.',
+'passwordreset-text-one' => 'შეავსეთ ეს ფორმა, რათა კვლავ დააყენოთ თქვენი პაროლი.',
+'passwordreset-text-many' => '{{PLURAL:$1|პაროლის თავიდან დასაყენებლად შეიყვანეთ მონაცემთა ერთ-ერთი ნაწილი.}}',
'passwordreset-legend' => 'პაროლის აღდგენა',
'passwordreset-disabled' => 'ამ ვიკიში პაროლის კვლავ დაყენების ფუნქცია გამორთულია.',
-'passwordreset-pretext' => '{{PLURAL:$1||შეიყვანეთ ქვემოთ მოცემულ მონაცემთა ერთ-ერთი ნაწილი.}}',
+'passwordreset-emaildisabled' => 'ამ ვიკიში ელ.ფოსტის ფუნქციები გამორთულია.',
'passwordreset-username' => 'მომხმარებლის სახელი:',
'passwordreset-domain' => 'დომენი:',
'passwordreset-capture' => 'გამოსული ელ-ფოსტის ხილვა?',
შესაძლოა, იგი წაიშალა.',
'edit-conflict' => 'რედაქციების კონფლიქტი.',
'edit-no-change' => 'თქვენი შესწორება არ იქნა შენახული, რადგანაც ტექსტის ცვლილება არ მოხდა.',
+'postedit-confirmation' => 'თქვენი რედაქტირება შენახულია.',
'edit-already-exists' => 'ახალი გვერდის შექმნა არ მოხერხდა.
ის უკვე არსებობს.',
'defaultmessagetext' => 'შეტყობინების სტანდარტული ტექსტი',
'invalid-content-data' => 'დაუშვებელი მონაცემები',
'content-not-allowed-here' => '„$1“-ის შინაარსი დაუშვებელია [[$2]] გვერდზე',
'editwarning-warning' => 'სხვა გვერდზე გადასვლამ შესაძლოა გამოიწვიოს ცვლილებების დაკარგვა.
-თუკი თქვენ დარეგისტრირებული ხართ სისტემაში, მაში შეგიძლიათ გამორთოთ ეს გაფრთხილება „{{int:prefs-editing}}“ თქვენი კონფიგურაციის განყოფილებაში.',
+თუკი თქვენ დარეგისტრირებული ხართ სისტემაში, მაშინ შეგიძლიათ გამორთოთ ეს გაფრთხილება თქვენი კონფიგურაციის განყოფილებაში „რედაქტირება“ .',
# Content models
'content-model-wikitext' => 'ვიკიტექსტი',
'searchmenu-legend' => 'ძიების დაწყობა:',
'searchmenu-exists' => "'''ამ ვიკიპროექტში არის გვერდი «[[:$1]]»'''",
'searchmenu-new' => "'''შექმენით გვერდი „[[:$1]]“ ამ ვიკიში!'''",
-'searchhelp-url' => 'Help:დახმარება',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|აჩვენეთ გვერდები ამ პრეფიქსით]]',
'searchprofile-articles' => 'ძირითადი გვერდები',
'searchprofile-project' => 'დახმარების და პროექტის გვერდები',
'powersearch-togglenone' => 'არაფერი',
'search-external' => 'გარე ძიება',
'searchdisabled' => '{{SITENAME}}ში ძებნა გაუქმებულია. თქვენ შეგიძლიათ დროის შუალედით Google-ით ძებნა. მიაქციეთ ყურადღება, რომ {{SITENAME}}ში შესაძლებელია მათი ინდექსები აქტუალური არ არის.',
+'search-error' => 'ძიებისას მოხდა შეცდომა: $1',
# Preferences page
'preferences' => 'კონფიგურაცია',
'prefs-watchlist' => 'კონტროლის სია',
'prefs-watchlist-days' => 'კონტროლის სიაში საჩვენებელი დღეები:',
'prefs-watchlist-days-max' => 'მაქსიმუმ $1 {{PLURAL:$1|დღე|დღე}}',
-'prefs-watchlist-edits' => 'á\83ªá\83\95á\83\9aá\83\98á\83\9aá\83\94á\83\91á\83\94á\83\91á\83\98á\83¡ á\83\9bá\83\90á\83¥á\83¡á\83\98á\83\9bá\83\90á\83\9aá\83£á\83 á\83\98 á\83 á\83\90á\83\9dá\83\93á\83\94á\83\9cá\83\9dá\83\91á\83\98á\83¡ á\83©á\83\95á\83\94á\83\9cá\83\94á\83\91á\83\90 á\83\95á\83 á\83ªá\83\94á\83\9a á\83\99á\83\9dá\83\9cá\83¢á\83 á\83\9dá\83\9aá\83\98á\83¡ á\83¡á\83\98á\83\90á\83¨á\83\98:',
+'prefs-watchlist-edits' => 'á\83\92á\83\90á\83¤á\83\90á\83 á\83\97á\83\9dá\83\94á\83\91á\83£á\83\9a á\83\99á\83\9dá\83\9cá\83¢á\83 á\83\9dá\83\9aá\83\98á\83¡ á\83¡á\83\98á\83\90á\83¨á\83\98 á\83¡á\83\90á\83©á\83\95á\83\94á\83\9cá\83\94á\83\91á\83\94á\83\9aá\83\98 á\83ªá\83\95á\83\9aá\83\98á\83\9aá\83\94á\83\91á\83\94á\83\91á\83\98á\83¡ á\83\9bá\83\90á\83¥á\83¡á\83\98á\83\9bá\83\90á\83\9aá\83£á\83 á\83\98 á\83 á\83\90á\83\9dá\83\93á\83\94á\83\9cá\83\9dá\83\91á\83\90:',
'prefs-watchlist-edits-max' => 'მაქსიმალური რაოდენობა: 1000',
'prefs-watchlist-token' => 'კონტროლის სიის ტოკენი:',
'prefs-misc' => 'სხვადასხვა',
'resultsperpage' => 'შედეგები გვერდის მიხედვით:',
'stub-threshold' => 'გაფორმების გასაუმჯობესებლად <a href="#" class="stub"> მოცემულია ესკიზების ბმულები</a> (ბაიტებში):',
'stub-threshold-disabled' => 'გათიშულია',
-'recentchangesdays' => 'á\83\93á\83¦á\83\94á\83\94á\83\91á\83\98á\83¡ á\83©á\83\95á\83\94á\83\9cá\83\94á\83\91á\83\90 á\83\91á\83\9dá\83\9aá\83\9d á\83ªá\83\95á\83\9aá\83\98á\83\9aá\83\94á\83\91á\83\94á\83\91á\83¨ი:',
+'recentchangesdays' => 'á\83\91á\83\9dá\83\9aá\83\9d á\83ªá\83\95á\83\9aá\83\98á\83\9aá\83\94á\83\91á\83\94á\83\91á\83¨á\83\98 á\83¡á\83\90á\83©á\83\95á\83\94á\83\9cá\83\94á\83\91á\83\94á\83\9aá\83\98 á\83\93á\83¦á\83\94á\83\94á\83\91ი:',
'recentchangesdays-max' => 'მაქსიმუმ $1 {{PLURAL:$1|დღე}}',
-'recentchangescount' => 'á\83 á\83\94á\83\93á\83\90á\83¥á\83ªá\83\98á\83\94á\83\91á\83\98á\83¡ á\83 á\83\90á\83\9dá\83\93á\83\94á\83\9cá\83\9dá\83\91á\83\90 á\83¡á\83\90á\83©á\83\95á\83\94á\83\9cá\83\94á\83\91á\83\9aá\83\90á\83\93:',
+'recentchangescount' => 'á\83¡á\83\90á\83©á\83\95á\83\94á\83\9cá\83\94á\83\91á\83\94á\83\9aá\83\98 á\83ªá\83\95á\83\9aá\83\98á\83\9aá\83\94á\83\91á\83\94á\83\91á\83\98á\83¡ á\83 á\83\90á\83\9dá\83\93á\83\94á\83\9cá\83\9dá\83\91á\83\90:',
'prefs-help-recentchangescount' => 'შეიცავს ახალ შესწორებებს, გვერდების ისტორიებს, ჟურნალებს.',
'prefs-help-watchlist-token' => 'ამ ველის შევსება საიდუმლო გასაღებით შექმნის RSS ტრანსლაციას თქვენი კონტროლის სიისთვის.
ყველა, ვინც იცის გასაღები, შესძლებს იხილოს თქვენი კონტროლის სია. ფრთხილად იყავით საიდუმლო მნიშვნელობის არჩევისას.
'prefs-i18n' => 'ინტერნაციონალიზაცია',
'prefs-signature' => 'ხელმოწერა',
'prefs-dateformat' => 'თარიღის ფორმატი',
-'prefs-timeoffset' => 'á\83\93á\83 á\83\9dá\83\98á\83¡ á\83\92á\83\90á\83 á\83\93á\83\90á\83\90á\83\93á\83\92ილება',
+'prefs-timeoffset' => 'á\83¡á\83\90á\83¡á\83\90á\83\90á\83\97á\83\9d á\83¡á\83\90á\83 á\83¢á\83§á\83\9aá\83\98á\83¡ á\83ªá\83\95á\83\9aილება',
'prefs-advancedediting' => 'გაფართოებული პარამეტრები',
'prefs-advancedrc' => 'გაფართოებული პარამეტრები',
'prefs-advancedrendering' => 'გაფართოებული პარამეტრები',
'userrights-changeable-col' => 'ჯგუფები, რომლებიც შეგიძლიათ შეცვალოთ',
'userrights-unchangeable-col' => 'ჯგუფები, რომლებიც არ შეგიძლიათ შეცვალოთ',
'userrights-irreversible-marker' => '$1*',
+'userrights-conflict' => 'მომხმარებელთა უფლებების კონფლიქტი! გთხოვთ, ხელმეორედ შეინახოთ თქვენი ცვლილებები.',
# Groups
'group' => 'ჯგუფი:',
'right-editusercssjs' => 'სხვა მომხმარებლების CSS- и JS- ფაილების შესწორება',
'right-editusercss' => 'სხვა მომხმარებლების CSS- ფაილების შესწორება',
'right-edituserjs' => 'სხვა მომხმარებლების JS- ფაილების შესწორება',
+'right-editmyusercss' => 'თქვენი საკუთარი CSS-ფაილების რედაქტირება',
+'right-editmyuserjs' => 'თქვენი საკუთარი JavaScript-ფაილების რედაქტირება',
'right-rollback' => 'გარკვეულ გვერდზე ბოლო მომხმარებლის რედაქტირების სწრაფი გაუქმება',
'right-markbotedits' => 'გაუქმებული შესწორებების მონიშვნა როგორც ბოტის',
'right-noratelimit' => 'სიჩქარის შეზღუდვის არ არსებობა',
'listusers-noresult' => 'მომხმარებელი ვერ ვიპოვეთ.',
'listusers-blocked' => '(დაბლოკილია)',
+# Special:ActiveUsers
+'activeusers' => 'აქტიურ მომხმარებელთა სია',
+'activeusers-intro' => 'ეს არის მომხმარებელთა სია, რომელთაც აქვს წვლილი უკანასკნელი $1 {{PLURAL:$1|დღის|დღის}} განმავლობაში.',
+'activeusers-count' => '$1 {{PLURAL:$1|მოქმედება|მოქმედება}} {{PLURAL:$3|დღის|$3 დღის}} განმავლობაში.',
+'activeusers-from' => 'მომხმარებელთა ჩვენება, დაწყებული:',
+'activeusers-hidebots' => 'რობოტების დამალვა',
+'activeusers-hidesysops' => 'ადმინისტრატორების დამალვა',
+'activeusers-noresult' => 'მომხმარებლები არ არიან ნაპოვნი.',
+
# Special:ListGroupRights
'listgrouprights' => 'მომხმარებელთა ჯგუფების უფლებები',
'listgrouprights-summary' => 'ქვემოთ წარმოდგენილია ამ ვიკიში გარკვეულ ჯგუფთა სია და მათი უფლებები.
'notvisiblerev' => 'შესწორება წაშლილია',
'watchnochange' => 'არც ერთი თქვენი კონტროლის ქვეშ მყოფი ერთეული არ იქნა რედაქტირებული ნაჩვენებ დროში.',
'watchlist-details' => '$1 გვერდია თქვენი კონტროლის სიაში განხილვის გვერდების ჩაუთვლელად.',
-'wlheader-enotif' => '* ელ. ფოსტით შეტყობინება ჩართულია.',
-'wlheader-showupdated' => '* გვერდები, რომლებშიც შეტანილ იქნა ცვლილებები თქვენი ბოლო ვიზიტის შემდეგ, აღნიშნულია მუქად.',
+'wlheader-enotif' => 'ელ.ფოსტით შეტყობინება ჩართულია.',
+'wlheader-showupdated' => "თქვენი ბოლო ვიზიტის შემდეგ შეცვლილი გვერდები, აღნიშნულია '''მუქად'''.",
'watchmethod-recent' => 'მიმდინარეობს უახლესი შესწორებების შემოწმება კონტროლის ქვეშ მყოფი გვერდების მიხედვით.',
'watchmethod-list' => 'მიმდინარეობს თქვენი კონტროლის ქვეშ მყოფი გვერდების შემოწმება უახლესი შესწორებების მიხედვით.',
'watchlistcontains' => 'თქვენი კონტროლის სია შეიცავს $1 გვერდს.',
'mycontris' => 'წვლილი',
'contribsub2' => '$1 ($2) თვის',
'nocontribs' => 'ძებნისას მითითებული პარამეტრების შესაბამისი არც ერთი ცვლილება ნაპოვნი არ არის',
-'uctop' => '(á\83\97á\83\90á\83\95á\83\98)',
+'uctop' => '(á\83\9bá\83\98á\83\9bá\83\93á\83\98á\83\9cá\83\90á\83 á\83\94)',
'month' => 'თვე:',
'year' => 'წელი:',
'thumbnail-more' => 'გაზარდე',
'filemissing' => 'ფაილი აკლია',
'thumbnail_error' => 'ესკიზის შექმნის შეცდომა: $1',
+'thumbnail_error_remote' => 'შეცდომის შეტყობინება მომხმარებლისაგან $1:
+$2',
'djvu_page_error' => 'DjVu გვერდის ნომერი',
'djvu_no_xml' => 'შეუძლებელია XML-ის მიღება DjVu-სთვის',
'thumbnail-temp-create' => 'დროებითი ესკიზის ფაილის შექმნა ვერ ხერხდება',
'minutes' => '$1 წუთის',
'hours' => '$1 საათის',
'days' => '$1 დღის',
+'weeks' => '{{PLURAL:$1|$1 კვირა|$1 კვირა}}',
'months' => '{{PLURAL:$1|$1 თვე|$1 თვე}}',
'years' => '{{PLURAL:$1|$1 წელი|$1 წელი}}',
'ago' => '$1 წინ',
'just-now' => 'ახლახანს',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|საათის|საათის}} წინ',
+'minutes-ago' => '$1 {{PLURAL:$1|წუთის|წუთის}} წინ',
+'seconds-ago' => '$1 {{PLURAL:$1|წამის|წამის}} წინ',
+'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' => 'ფორმატი შემდეგია:
'metadata-langitem' => "'''$2:''' $1",
'metadata-langitem-default' => '$1',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'სიგანე',
'exif-imagelength' => 'სიმაღლე',
'exif-bitspersample' => 'ფერის კომპონენტთა სიღრმე',
$8',
'exif-subjectnewscode-value' => '$2 ($1)',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'შეუკუმშავი',
'exif-compression-2' => 'CCITT Group 3, ჰაფმანის სერიის სიგრძის კოდირების 1-განზომილებიანი მოდიფიკაცია',
'exif-compression-3' => 'CCITT Group 3 ფაქსის კოდირება',
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath გზა სტატიისაკენ]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath გზა სკრიპტისაკენ]',
+# Special:Redirect
+'redirect' => 'გადამისამართება ფაილიდან, მომხმარებლიდან ან ვერსიის იდენტიფიკატორიდან',
+'redirect-legend' => 'გადამისამართება ფაილზე ან გვერდზე',
+'redirect-submit' => 'მიდი',
+'redirect-lookup' => 'ძიება:',
+'redirect-value' => 'მნიშვნელობა:',
+'redirect-user' => 'მომხმარებლის იდენტიფიკატორი',
+'redirect-revision' => 'გვერდის ვერსია',
+'redirect-file' => 'ფაილის სახელი',
+'redirect-not-exists' => 'მნიშვნელობა ვერ მოიძებნა',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'ერთნაირი ფაილების ძიება',
'fileduplicatesearch-summary' => 'ერთნაირი ფაილების ძიება ჰეშ-კოდის მიხედვით.',
'htmlform-submit' => 'შენახვა',
'htmlform-reset' => 'ცვლილებების გაუქმება',
'htmlform-selectorother-other' => 'სხვა',
+'htmlform-no' => 'არა',
+'htmlform-yes' => 'დიახ',
+'htmlform-chosen-placeholder' => 'აირჩიეთ პარამეტრი',
# SQLite database support
'sqlite-has-fts' => '$1 სრული ტექსტის ძიების მხარდაჭერით',
'tog-enotifrevealaddr' => "Eskertiw xatlarında e-mail adresimdi ko'rset",
'tog-shownumberswatching' => "Baqlag'an paydalanıwshılar sanın ko'rset",
'tog-fancysig' => 'İmzalardı wikitext dep qabıl etiw (avtomat siltewsiz)',
-'tog-externaleditor' => "Defolt boyınsha sırtqı o'zgertiwshini qollan (tek g'ana ta'jiriybeli paydalanıwshılar ushın, kompyuterin'izde qosımsha sazlawlar qılınıwı kerek. [//www.mediawiki.org/wiki/Manual:External_editors More information.])",
-'tog-externaldiff' => "Defoltta sırtqı parqtı qollan (tek ekspert paydalanıwshılar ushın, kompyuterin'izde arnawlı sazlawlardı talap etedi. [//www.mediawiki.org/wiki/Manual:External_editors More information.])",
'tog-showjumplinks' => "«O'tip ketiw» siltewlerin qos",
'tog-uselivepreview' => "Janlı ko'rip shıg'ıwdı qollan (JavaScript) (Sınawda)",
'tog-forceeditsummary' => "O'zgertiw juwmag'ı bos qalg'anda mag'an eskert",
'disclaimers' => 'Juwapkershilikten bas tartıw',
'disclaimerpage' => 'Project:Juwapkershilikten bas tartıw',
'edithelp' => "O'zgertiw anıqlaması",
-'edithelppage' => "Help:O'zgertiw",
'helppage' => 'Help:Mazmunı',
'mainpage' => 'Bas bet',
'mainpage-description' => 'Bas bet',
'searchmenu-legend' => 'İzlew sazlawları',
'searchmenu-exists' => "'''Bul wikide \"[[:\$1]]\" atamalı bet bar'''",
'searchmenu-new' => "'''Bul wikide \"[[:\$1]]\" betin jaratıw!'''",
-'searchhelp-url' => 'Help:Mazmunı',
'searchmenu-prefix' => "[[Special:PrefixIndex/$1|Usı prefiks penen baslanıwshı betlerdi ko'rset]]",
'searchprofile-articles' => "Mag'lıwmat betleri",
'searchprofile-project' => "Ja'rdem ha'm Proekt betleri",
'powersearch-field' => "İzlenetug'ın so'z (yamasa so'z dizbegi):",
'search-external' => 'Sırtqı izlewshi',
-# Quickbar
-'qbsettings' => 'Navigatsiya paneli',
-'qbsettings-none' => 'Hesh qanday',
-'qbsettings-fixedleft' => 'Shepke bekitilgen',
-'qbsettings-fixedright' => "On'g'a bekitilgen",
-'qbsettings-floatingleft' => 'Shepte jıljıwshı',
-'qbsettings-floatingright' => "On'da jıljıwshı",
-
# Preferences page
'preferences' => 'Sazlawlar',
'mypreferences' => "Menin' sazlawlarım",
'notanarticle' => "Mag'lıwmat beti emes",
'notvisiblerev' => "Nusqa o'shirildi",
'watchlist-details' => "Baqlaw dizimin'izde (sa'wbet betlerin esapqa almag'anda) {{PLURAL:$1|1 bet|$1 bet}} bar.",
-'wlheader-enotif' => "* E-mail arqalı eskertiw qosılg'an.",
+'wlheader-enotif' => "E-mail arqalı eskertiw qosılg'an.",
'watchlistcontains' => "Sizin' baqlaw dizimin'izde {{PLURAL:$1|1 bet|$1 bet}} bar.",
'wlnote' => "To'mende aqırg'ı {{PLURAL:$2|saattag'ı|'''$2''' saattag'ı}} {{PLURAL:$1|aqırg'ı o'zgeris bar|aqırg'ı '''$1''' o'zgeris bar}}.",
'wlshowlast' => "Aqırg'ı $1 saat, $2 ku'n, $3 ko'rset",
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Yeni:',
'exif-imagelength' => "Uzunlıg'ı",
'exif-imagedescription' => "Su'wret ataması",
# Special:Version
'version' => "MediaWikidin' nusqası",
-# Special:FilePath
-'filepath' => 'Fayl jolı',
-
# Special:SpecialPages
'specialpages' => 'Arnawlı betler',
'specialpages-group-users' => "Paydalanıwshılar ha'm olardın' huqıqları",
'nov' => 'Wam',
'dec' => 'Duj',
-'monday-at' => 'Arim af $1',
-'tuesday-at' => 'Aram af $1',
-'wednesday-at' => 'Ahad af $1',
-'thursday-at' => 'Amhad af $1',
-'friday-at' => 'Sem af $1',
-'saturday-at' => 'Sed af $1',
-'sunday-at' => 'Acer af $1',
-'today-at' => '$1',
-'yesterday-at' => 'Iḍelli af $1',
-
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Taggayt|Taggayin}}',
'category_header' => 'Imagraden deg taggayt "$1"',
'disclaimers' => 'Iɣtalen',
'disclaimerpage' => 'Project:Iɣtalen',
'edithelp' => 'Tallat deg ubeddel',
-'edithelppage' => 'Help:Abeddel',
'helppage' => 'Help:Agbur',
'mainpage' => 'Asebter amenzawi',
'mainpage-description' => 'Asebter amenzawi',
# Special:PasswordReset
'passwordreset' => 'Awennez tikkelt nniḍen n awal uɛaddi',
-'passwordreset-text' => 'Ččur tiferkit agi iwakken ad eṭṭfeḍ tirawt n usmekti deg-es tilɣa n umiḍan inek/inem.',
'passwordreset-legend' => 'Awennez tikkelt nniḍen n awal uɛaddi',
'passwordreset-disabled' => 'Awennez n awal uɛaddi yensa deg uwiki agi.',
-'passwordreset-pretext' => '{{PLURAL:$1||Sekcem aferdis n isefka ddaw agi}}',
'passwordreset-username' => 'Isem n useqdac',
'passwordreset-domain' => 'Talɣut :',
'passwordreset-capture' => 'Ẓeṛ tirawt ?',
'searchmenu-legend' => 'Tixtiṛiyin n unadi',
'searchmenu-exists' => "'''Yella asebter s isem \"[[:\$1]]\" deg wiki agi.'''",
'searchmenu-new' => "'''Snulfud asebter « [[:$1|$1]] » deg wiki agi !'''",
-'searchhelp-url' => 'Help:Agbur',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Nadi isebtar i zwaren s adat agi]]',
'searchprofile-articles' => 'Isebtar n ugbur',
'searchprofile-project' => 'Isebtaren n tallat dɣa n usenfa',
'listusers-noresult' => 'Ur yufi ḥedd (amseqdac).',
'listusers-blocked' => '(yekyef)',
+# Special:ActiveUsers
+'activeusers' => 'Umuɣ n iseqdacen urmiden',
+'activeusers-intro' => 'Wagi d umuɣ n iseqdacen yexedmen armud deg {{PLURAL:$1|ass agi aneggaru|$1 ussan agi ineggura}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|abeddel n ussan agi ineggura|ibeddilen n ussan agi ineggura}} deg {{PLURAL:$3|ass aneggaru|$3 ussan ineggura}}',
+'activeusers-from' => 'Ssken iseqdacen seg :',
+'activeusers-hidebots' => 'Ffer iṛubuten',
+'activeusers-hidesysops' => 'Ffer inedbalen',
+'activeusers-noresult' => 'Ur yufi aseqdac.',
+
# Special:ListGroupRights
'listgrouprights' => 'Izerfan n igrawen n iseqdacen',
'listgrouprights-summary' => 'Asebter agi yesɛa yiwen umuɣ n igrawen i sengelen deg wiki agi dɣa izerfan n wadduf i qqenen.
'notvisiblerev' => 'Lqem tetwemḥa',
'watchnochange' => 'Ulaḥedd n yiferdas n wumuɣ n uɛessi inek ma yettubeddel deg tawala i textareḍ.',
'watchlist-details' => 'ttɛassaɣ {{PLURAL:$1|$1 usebter|$1 n isebtaren}} mebla isebtaren "amyannan".',
-'wlheader-enotif' => '* Yeǧǧa Email n talɣut.',
-'wlheader-showupdated' => "* Isebtar ttubeddlen segwasmi tkecmeḍ tikelt taneggarut ttbanen-d s '''uḍris aberbuz'''",
+'wlheader-enotif' => 'Yeǧǧa Email n talɣut.',
+'wlheader-showupdated' => "Isebtar ttubeddlen segwasmi tkecmeḍ tikelt taneggarut ttbanen-d s '''uḍris aberbuz'''",
'watchmethod-recent' => 'yessenqed ibeddlen imaynuten n isebtar i ttɛasseɣ',
'watchmethod-list' => 'yessenqed isebtar i ttɛassaɣ i ibeddlen imaynuten',
'watchlistcontains' => 'Umuɣ n uɛessi inek ɣur-s $1 n {{PLURAL:$1|usebter|isebtar}}.',
'ago' => '$1 aya',
'just-now' => 'Tura kan',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|asrag|isragen}} aya',
+'minutes-ago' => '$1 {{PLURAL:$1|tamrect|timercin}} aya',
+'seconds-ago' => '$1 {{PLURAL:$1|tasint|tisinin}} aya',
+'monday-at' => 'Arim af $1',
+'tuesday-at' => 'Aram af $1',
+'wednesday-at' => 'Ahad af $1',
+'thursday-at' => 'Amhad af $1',
+'friday-at' => 'Sem af $1',
+'saturday-at' => 'Sed af $1',
+'sunday-at' => 'Acer af $1',
+'yesterday-at' => 'Iḍelli af $1',
+
# Bad image list
'bad_image_list' => 'Amasal d-wagi :
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Tehri',
'exif-imagelength' => 'Taɣwzi',
'exif-bitspersample' => 'Ibitten s isger',
'version-entrypoints-header-entrypoint' => 'Ired n wekcam',
'version-entrypoints-header-url' => 'Tansa URL',
-# Special:FilePath
-'filepath' => 'Abrid n wadduf ufaylu',
-'filepath-page' => 'Afaylu :',
-'filepath-submit' => 'Ruḥ',
-
# Special:SpecialPages
'specialpages' => 'isebtar usligen',
'duration-centuries' => '$1 {{PLURAL:$1|timiḍi|timiḍa}}',
'duration-millennia' => '$1 {{PLURAL:$1|agimseggwas|agimseggwasen}}',
-# Unknown messages
-'hours-ago' => '$1 {{PLURAL:$1|asrag|isragen}} aya',
-'minutes-ago' => '$1 {{PLURAL:$1|tamrect|timercin}} aya',
-'seconds-ago' => '$1 {{PLURAL:$1|tasint|tisinin}} aya',
);
'tog-shownumberswatching' => 'НапэкӀуэцӀыр я тхылъ кӀэлъыплъыгъуэхэм хэзгъэхьахэм я бжыгъэр гъэлъэгъуэн',
'tog-oldsig' => 'ӀэпэщӀэдз щыӀэм и япэ-еплъ',
'tog-fancysig' => 'Викитхылъ ӀэпэщӀэдз Ӏыгъын (автоматикэ техьэпӀэншу)',
-'tog-externaleditor' => 'Хэмыт редакторыр къэгъэсэбэпын (компутырым абым теухуа тегъэпсыхьыгъуэ хуэныкъуэ)',
-'tog-externaldiff' => 'Хэмыт программэр къэгъэсэбэпын зэгъэлъытэн шъхьэкӀэ (компутырым абым теухуа тегъэпсыхьыгъуэ хуэныкъуэ)',
'tog-showjumplinks' => 'ДэӀэпыкъуэгъу техьэпӀэ «техьэн» хэгъэнэн',
'tog-uselivepreview' => 'Япэ-еплъ щӀэхыр къэгъэсэбэпын (JavaScript хуэныкъуэ) (эксперементалу)',
'tog-forceeditsummary' => 'КъэӀохун, гъэтэрэзыгъуэм и тепсэлъыхьыпӀэм зыри имытхамэ',
'disclaimers' => 'Жэуап Ӏыгъыныр зыщхьэщыхын',
'disclaimerpage' => 'Project:Пщэрылъу къэмыштэн',
'edithelp' => 'Гъэтэрэзыным и щӀэупщӀэ',
-'edithelppage' => 'Help:Гъэтэрэзыным и дэIэпыкъуэгъу',
'helppage' => 'Help:ДэӀэпыкъуэгъу',
'mainpage' => 'НапэкӀуэцӀ нэхъыщхьэ',
'mainpage-description' => 'НапэкӀуэцӀ нэхъыщхьэ',
* @author לערי ריינהארט
*/
+$namespaceNames = array(
+ NS_TALK => 'Disolo',
+ NS_USER => 'Kisadi',
+ NS_USER_TALK => 'Disolo_kisadi',
+ NS_PROJECT_TALK => 'Disolo_$1',
+ NS_FILE => 'Fisye',
+ NS_FILE_TALK => 'Disolo_fisye',
+ NS_HELP => 'Lusadisu',
+ NS_HELP_TALK => 'Disolo_lusadisu',
+ NS_CATEGORY => 'Kalasi',
+ NS_CATEGORY_TALK => 'Disolo_kalasi',
+);
+
$messages = array(
'underline-always' => 'Bambala nyonso',
'underline-never' => 'Ata mbala mosi ve',
*/
$fallback = 'ur';
-
$rtl = true;
$messages = array(
'tog-shownumberswatching' => 'لوڑاک ممبرانن تعدادان پشاؤے',
'tog-oldsig' => 'موجودہ دستخطو نمائش:',
'tog-fancysig' => '(سادہ دسخط بلا خودکار ربط)',
-'tog-externaleditor' => 'ہمیشہ بیرونی تدوین کار استعمال کورے (صرفی ماہرینن بچے، ھمو بچے کمپیوٹرا خاص ترتیبات درکار بونیان)',
-'tog-externaldiff' => 'ہمیشہ بیرونی تدوین کار استعمال کورے (صرفی ماہرینن بچے، ھمو بچے کمپیوٹرا خاص ترتیبات درکار بونیان)',
'tog-showjumplinks' => 'ھیہ ووشکی څروٹھاوے',
'tog-uselivepreview' => 'براہِ راست نمائش استعمال کورے (JavaScript ضرورت بوی)',
'tog-forceeditsummary' => 'کیاوتکی آوا ترمیمی خلاصو خالی پیڅھیتام تھے متے لو دیت',
'disclaimers' => 'اعلانات',
'disclaimerpage' => 'Project:عام کھوار اعلان',
'edithelp' => 'مدد براۓ ترمیم',
-'edithelppage' => 'Help:ترمیم',
'helppage' => 'Help:فھرست',
'mainpage' => 'آویلو صفحہ',
'mainpage-description' => 'سرورق',
# Core parser functions
'duplicate-defaultsort' => '\'\'\'خبردار:\'\'\' ڈیفالٹ تاڑٰ(نغڑی) "$2" پروشٹیو ڈیفالٹ تاڑا "$1" لیگی شیر۔',
-# Special:FilePath
-'filepath-page' => 'فایل',
-'filepath-submit' => 'Go/بوغے',
-
# Special:SpecialPages
'specialpages' => 'اسپیشل صفحہ',
'disclaimers' => 'Diwanê mesulêti',
'disclaimerpage' => 'Project:Diwanê mesuliyetê bıngey',
'edithelp' => 'Phoştdariya vurnaişi',
-'edithelppage' => 'Help:Pele çıturi vurnina',
'helppage' => 'Help:Tedeestey',
'mainpage' => 'Pela Seri',
'mainpage-description' => 'Pela seri',
'viewprevnext' => 'Bıvêne ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "''Ena 'Wikipediya de ser \"[[:\$1]]\" yew pel esto'''",
'searchmenu-new' => "'''Nê wiki de pela \"[[:\$1]]\" baferne!'''",
-'searchhelp-url' => 'Help:Tedeestey',
'searchprofile-articles' => 'Pelê tedeesteu',
'searchprofile-project' => 'Pelê yardımi u procey',
'searchprofile-images' => 'Multimedya',
'listusers-noresult' => 'Karber nêdiya.',
'listusers-blocked' => '(kilıt biyo)',
+# Special:ActiveUsers
+'activeusers' => 'Lista karberunê fealu',
+
# Special:ListGroupRights
'listgrouprights-group' => 'Kome',
'listgrouprights-rights' => 'Heqi',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Verındêni',
'exif-imagelength' => 'Berzêni',
'tog-enotifrevealaddr' => 'ە-پوشتامنىڭ مەكەنجايىن ەسكەرتۋ حاتتاردا اش',
'tog-shownumberswatching' => 'باقىلاپ تۇرعان قاتىسۋشىلاردىڭ سانىن كورسەت',
'tog-fancysig' => 'قام قولتاڭبا (وزدىكتىك سىلتەمەسىز)',
-'tog-externaleditor' => 'شەتتىك وڭدەۋىشتى ادەپكىدەن قولدان (تەك ساراپشىلار ٴۇشىن, كومپيۋتەرىڭىزدە ارناۋلى باپتالىمدار كەرەك)',
-'tog-externaldiff' => 'شەتتىك ايىرماعىشتى ادەپكىدەن قولدان (تەك ساراپشىلار ٴۇشىن, كومپيۋتەرىڭىزدە ارناۋلى باپتالىمدار كەرەك)',
'tog-showjumplinks' => '«ٴوتىپ كەتۋ» قاتىناۋ سىلتەمەلەرىن قوس',
'tog-uselivepreview' => 'تۋرا قاراپ شىعۋدى قولدانۋ (JavaScript) (سىناقتاما)',
'tog-forceeditsummary' => 'وڭدەمەنىڭ قىسقاشا مازمۇنداماسى بوس قالعاندا ماعان ەسكەرت',
'disclaimers' => 'جاۋاپكەرشىلىكتەن باس تارتۋ',
'disclaimerpage' => 'Project:جاۋاپكەرشىلىكتەن باس تارتۋ',
'edithelp' => 'وندەۋ انىقتاماسى',
-'edithelppage' => 'Help:وڭدەۋ',
'helppage' => 'Help:مازمۇنى',
'mainpage' => 'باستى بەت',
'mainpage-description' => 'باستى بەت',
'prevn' => 'الدىڭعى {{PLURAL:$1|$1}}',
'nextn' => 'كەلەسى {{PLURAL:$1|$1}}',
'viewprevnext' => 'كورسەتىلۋى: ($1 {{int:pipe-separator}} $2) ($3) جازبا',
-'searchhelp-url' => 'Help:مازمۇنى',
'search-result-size' => '$1 ($2 ٴسوز)',
'search-result-score' => 'اراقاتىناستىلىعى: $1 %',
'search-redirect' => '(ايداعىش $1)',
ازىرشە Google ارقىلى ىزدەۋگە بولادى.
اڭعارتپا: {{SITENAME}} تورابىنىڭ ماعلۇمات تىزبەلەرى ەسكىرگەن بولۋى مۇمكىن.',
-# Quickbar
-'qbsettings' => 'ٴمازىر',
-'qbsettings-none' => 'ەشقانداي',
-'qbsettings-fixedleft' => 'سولعا بەكىتىلگەن',
-'qbsettings-fixedright' => 'وڭعا بەكىتىلگەن',
-'qbsettings-floatingleft' => 'سولعا قالقىعان',
-'qbsettings-floatingright' => 'وڭعا قالقىعان',
-
# Preferences page
'preferences' => 'باپتالىمدار',
'mypreferences' => 'باپتالىمدارىم',
'notvisiblerev' => 'تۇزەتۋ جويىلدى',
'watchnochange' => 'كورسەتىلگەن مەرزىمدە ەش باقىلانعان دانا وڭدەلگەن جوق.',
'watchlist-details' => 'تالقىلاۋ بەتتەرىن ساناماعاندا $1 بەت باقلانىلادى.',
-'wlheader-enotif' => '* ەسكەرتۋ حات جىبەرۋى قوسىلعان.',
-'wlheader-showupdated' => "* سوڭعى كەلىپ-كەتۋىڭىزدەن بەرى وزگەرتىلگەن بەتتەردى '''جۋان''' قارىپىمەن كورسەت",
+'wlheader-enotif' => 'ەسكەرتۋ حات جىبەرۋى قوسىلعان.',
+'wlheader-showupdated' => "سوڭعى كەلىپ-كەتۋىڭىزدەن بەرى وزگەرتىلگەن بەتتەردى '''جۋان''' قارىپىمەن كورسەت",
'watchmethod-recent' => 'باقىلاۋلى بەتتەر ٴۇشىن جۋىقتاعى وزگەرىستەردى تەكسەرۋ',
'watchmethod-list' => 'جۋىقتاعى وزگەرىستەر ٴۇشىن باقىلاۋلى بەتتەردى تەكسەرۋ',
'watchlistcontains' => 'باقىلاۋ تىزىمىڭىزدە $1 بەت بار.',
# Stylesheets
'common.css' => '/* مىندا ورنالاستىرىلعان CSS بارلىق مانەرلەردە قولدانىلادى */',
-'standard.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «داعدىلى» (standard) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى */',
-'nostalgia.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «اڭساۋ» (nostalgia) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى */',
'cologneblue.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «كولن زەڭگىرلىگى» (cologneblue) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى skin */',
'monobook.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «دارا كىتاپ» (monobook) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى */',
-'myskin.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «ٴوز مانەرىم» (myskin) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى */',
-'chick.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «بالاپان» (chick) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى */',
-'simple.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «كادىمگى» (simple) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى */',
'modern.css' => '/* مىندا ورنالاستىرىلعان CSS تەك «زاماناۋىي» (modern) مانەرىن پايدالانۋشىلارىنا ىقپال ەتەدى */',
# Scripts
'common.js' => '/* مىنداعى ٴارتۇرلى JavaScript كەز كەلگەن بەت قوتارىلعاندا بارلىق پايدالانۋشىلار ٴۇشىن جەگىلەدى. */',
-'standard.js' => '/* مىنداعى JavaScript تەك «داعدىلى» (standard) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */',
-'nostalgia.js' => '/* مىنداعى JavaScript تەك «اڭساۋ» (nostalgia) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى*/',
'cologneblue.js' => '/* مىنداعى JavaScript تەك «كولن زەڭگىرلىگى» (cologneblue) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */',
'monobook.js' => '/* مىنداعى JavaScript تەك «دارا كىتاپ» (monobook) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */',
-'myskin.js' => '/* مىنداعى JavaScript تەك «ٴوز مانەرىم» (myskin) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */',
-'chick.js' => '/* مىنداعى JavaScript تەك «بالاپان» (chick) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */',
-'simple.js' => '/* مىنداعى JavaScript تەك «كادىمگى» (simple) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */',
'modern.js' => '/* مىنداعى JavaScript تەك «زاماناۋىي» (modern) مانەرىن پايدالانۋشىلار ٴۇشىن جەگىلەدى */',
# Metadata
'spam_blanking' => '$1 دەگەنگە سىلتەمەلەرى بار بارلىق تۇزەتۋلەر تازارتىلدى',
# Skin names
-'skinname-standard' => 'داعدىلى (standard)',
-'skinname-nostalgia' => 'اڭساۋ (nostalgia)',
'skinname-cologneblue' => 'كولن زەڭگىرلىگى (cologneblue)',
'skinname-monobook' => 'دارا كىتاپ (monobook)',
-'skinname-myskin' => 'ٴوز مانەرىم (myskin)',
-'skinname-chick' => 'بالاپان (chick)',
-'skinname-simple' => 'كادىمگى (simple)',
'skinname-modern' => 'زاماناۋىي (modern)',
# Patrolling
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'ەنى',
'exif-imagelength' => 'بىيىكتىگى',
'exif-bitspersample' => 'قۇراش سايىن بىيت سانى',
'exif-gpsdatestamp' => 'GPS كۇن-ايى',
'exif-gpsdifferential' => 'GPS سارالانعان دۇرىستاۋ',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'ۇلعايتىلعان',
'exif-unknowndate' => 'بەلگىسىز كۇن-ايى',
'version-software-product' => 'ٴونىم',
'version-software-version' => 'نۇسقاسى',
-# Special:FilePath
-'filepath' => 'فايل ورنالاسۋى',
-'filepath-page' => 'فايل اتى:',
-'filepath-submit' => 'ورنالاسۋىن تاپ',
-'filepath-summary' => 'بۇل ارنايى بەت فايل ورنالاسۋى تولىق جولىن قايتارادى.
-سۋرەتتەر تولىق اجىراتىلىمدىعىمەن كورسەتىلەدى, باسقا فايل تۇرلەرىنە قاتىستى باعدارلاماسى تۋرا جەگىلەدى.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'فايل تەلنۇسقالارىن ىزدەۋ',
'fileduplicatesearch-summary' => 'فايل حەشى ماعىناسى نەگىزىندە تەلنۇسقالارىن ىزدەۋ.',
* @author Daniyar
* @author GaiJin
* @author Kaztrans
+ * @author Nemo bis
* @author Urhixidur
*/
'tog-showhiddencats' => 'Жасырын санаттарды көрсету',
'tog-noconvertlink' => 'Сілтеме атауларын ауыстырма',
'tog-norollbackdiff' => 'Шегіндіруден кейін нұсқалардың айырмашылығын көрсетпеу',
+'tog-useeditwarning' => 'Өңдемесі сақталмаған парақшадан шығар кезде ескерту',
'underline-always' => 'Әрқашан',
'underline-never' => 'Ешқашан',
'oct' => 'қаз',
'nov' => 'қар',
'dec' => 'жел',
+'january-date' => 'Қаңтар $1',
+'february-date' => 'Ақпан $1',
+'march-date' => 'Наурыз $1',
+'april-date' => 'Сәуір $1',
+'may-date' => 'Мамыр $1',
+'june-date' => 'Маусым $1',
+'july-date' => 'Шілде $1',
+'august-date' => 'Тамыз $1',
+'september-date' => 'Қыркүйек $1',
+'october-date' => 'Қазан $1',
+'november-date' => 'Қараша $1',
+'december-date' => 'Желтоқсан $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Санат|Санаттар}}',
'newwindow' => '(жаңа терезеде)',
'cancel' => 'Болдырмау',
'moredotdotdot' => 'Көбірек…',
-'mypage' => 'Жеке бетім',
-'mytalk' => 'Талқылауым',
+'morenotlisted' => 'Басқасы көрсетілмеген...',
+'mypage' => 'Жеке бет',
+'mytalk' => 'Талқылау',
'anontalk' => 'IP талқылауы',
'navigation' => 'Бағыттау',
'and' => ' және',
'namespaces' => 'Есім кеңістігі',
'variants' => 'Нұсқалар',
+'navigation-heading' => 'Бағыттау',
'errorpagetitle' => 'Қате',
'returnto' => '$1 дегенге қайта келу.',
'tagline' => '{{SITENAME}} жобасынан алынған мәлімет',
'create-this-page' => 'Осы бетті бастау',
'delete' => 'Жою',
'deletethispage' => 'Бетті жою',
+'undeletethispage' => 'Жойылған бетті қайтару',
'undelete_short' => '$1 өңдеме жоюын болдырмау',
'viewdeleted_short' => 'Көру {{PLURAL:$1|жойылған өңдеуді $1|жойылған өңдеулерді $1| жойылған өңдеулерді $1}}',
'protect' => 'Қорғау',
'disclaimers' => 'Жауапкершіліктен бас тарту',
'disclaimerpage' => 'Project:Жауапкершіліктен бас тарту',
'edithelp' => 'Өндеу анықтамасы',
-'edithelppage' => 'Help:Өңдеу',
'helppage' => 'Help:Мазмұны',
'mainpage' => 'Басты бет',
'mainpage-description' => 'Басты бет',
'youhavenewmessages' => 'Сізде $1 бар ($2).',
'newmessageslink' => 'жаңа хабарламалар',
'newmessagesdifflink' => 'соңғы өзгерiс',
+'youhavenewmessagesfromusers' => 'Сіз {{PLURAL:$3|бөгде қолданушыдан|$3 қатысушылардан}} $1 алдыңыз ($2).',
+'youhavenewmessagesmanyusers' => 'Сіз бірнеше қатысушыдан $1 алдыңыз ($2).',
+'newmessageslinkplural' => '{{PLURAL:$1|жаңа хабарлама|жаңа хабарламалар}}',
+'newmessagesdifflinkplural' => 'соңғы {{PLURAL:$1|өзгеріс|өзгерістер}}',
'youhavenewmessagesmulti' => '$1 дегенде жаңа хабарламалар бар',
'editsection' => 'өңдеу',
'editold' => 'өңдеу',
'cannotdelete' => '«$1» бетін немесе файлын жою мүмкін емес.
Мұны әлдекім жойған болуы мүмкін.',
'cannotdelete-title' => '«$1» бетін жою мүмкін емес',
+'delete-hook-aborted' => 'Түзету ілмек арқылы тоқтатылды.
+Қосымша түсіндірмелер көрсетілмеген.',
'badtitle' => 'Жарамсыз тақырып аты',
'badtitletext' => 'Сұралған бет тақырыбының аты жарамсыз, бос, тіларалық сілтемесі не уики-аралық тақырып аты бұрыс енгізілген.
Мында тақырып атында қолдалмайтын бірқатар таңбалар болуы мүмкін.',
'actionthrottled' => 'Әрекет бәсеңдетілді',
'actionthrottledtext' => 'Спамға қарсы күрес есебінде, осы әрекетті қысқа уақытта тым көп рет орындауыңыз шектелінді, және бұл шектеу шамасынан асып кеткенсіз.
Бірнеше минуттан қайта байқап көріңіз.',
-'protectedpagetext' => 'Өңдеуді қақпайлау үшін бұл бет құлыпталынған.',
+'protectedpagetext' => 'Бұл бет өңдеу немесе басқа өзгерістер енгізілмес үшін қорғалған.',
'viewsourcetext' => 'Бұл беттің қайнарын қарауыңызға және көшіріп алуыңызға болады:',
'viewyourtext' => 'Осы бет арқылы "өзіңіз жасаған өңдеулердің" бастапқы мәтінін көруге және көшіруге мүмкіндігіңіз болады.',
'protectedinterface' => 'Бұл бет бағдарламалық жасақтаманың тілдесу мәтінін жетістіреді, сондықтан қиянатты қақпайлау үшін өзгертуі құлыпталған.',
# Special:PasswordReset
'passwordreset' => 'Құпия сөзді қайтару',
-'passwordreset-text' => 'Сіздің тіркелгіңіздің баптаулары туралы хабарламаларды алу үшін мына пішінді толтырыңыз.',
'passwordreset-legend' => 'Құпия сөзді қайтару',
'passwordreset-disabled' => 'Бұл уикиде құпия сөзді қайтару ажыратылған.',
-'passwordreset-pretext' => '{{PLURAL:$1||Төменде көрсетілгендердің ішіндегі біреуін жазыңыз}}',
'passwordreset-username' => 'Қатысушы аты:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Келген хатты қарау керек пе?',
'searchmenu-legend' => 'Іздеу бапталымдары',
'searchmenu-exists' => "'''Бұл жобада «[[:$1]]» деген бет бар.'''",
'searchmenu-new' => "'''\"[[:\$1]]\" осындай атпен бетті бастау'''",
-'searchhelp-url' => 'Help:Мазмұны',
'searchprofile-articles' => 'Негізгі беттер',
'searchprofile-project' => 'Анықтама және жоба беттері',
'searchprofile-images' => 'Мультимедиа',
'notvisiblerev' => 'Түзету жойылды',
'watchnochange' => 'Көрсетілген мерзімде еш бақыланған дана өңделген жоқ.',
'watchlist-details' => 'Тізіміңізде $1 бет бар (талқылау беттері саналмайды).',
-'wlheader-enotif' => '* Ескерту хат жіберуі қосылған.',
-'wlheader-showupdated' => "* Соңғы келіп-кетуіңізден бері өзгертілген беттерді '''жуан''' қаріпімен көрсет",
+'wlheader-enotif' => 'Ескерту хат жіберуі қосылған.',
+'wlheader-showupdated' => "Соңғы келіп-кетуіңізден бері өзгертілген беттерді '''жуан''' қаріпімен көрсет",
'watchmethod-recent' => 'бақылаулы беттер үшін жуықтағы өзгерістерді тексеру',
'watchmethod-list' => 'жуықтағы өзгерістер үшін бақылаулы беттерді тексеру',
'watchlistcontains' => 'Бақылау тізіміңізде $1 бет бар.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Ені',
'exif-imagelength' => 'Биіктігі',
'exif-bitspersample' => 'Құраш сайын бит саны',
'exif-gpsdatestamp' => 'GPS күн-айы',
'exif-gpsdifferential' => 'GPS сараланған дұрыстау',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Ұлғайтылған',
'exif-unknowndate' => 'Белгісіз күн-айы',
'version-software-product' => 'Өнім',
'version-software-version' => 'Нұсқасы',
-# Special:FilePath
-'filepath' => 'Файл орналасуы',
-'filepath-page' => 'Файл аты:',
-'filepath-submit' => 'Орналасуын тап',
-'filepath-summary' => 'Бұл арнайы бет файл орналасуы толық жолын қайтарады.
-Суреттер толық ажыратылымдығымен көрсетіледі, басқа файл түрлеріне қатысты бағдарламасы тура жегіледі.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Файл телнұсқаларын іздеу',
'fileduplicatesearch-summary' => 'Файл хеші мағынасы негізінде телнұсқаларын іздеу.',
'tog-enotifrevealaddr' => 'E-poştamnıñ mekenjaýın eskertw xattarda aş',
'tog-shownumberswatching' => 'Baqılap turğan qatıswşılardıñ sanın körset',
'tog-fancysig' => 'Qam qoltañba (özdiktik siltemesiz)',
-'tog-externaleditor' => 'Şettik öñdewişti ädepkiden qoldan (tek sarapşılar üşin, komp′ywteriñizde arnawlı baptalımdar kerek)',
-'tog-externaldiff' => 'Şettik aýırmağıştı ädepkiden qoldan (tek sarapşılar üşin, komp′ywteriñizde arnawlı baptalımdar kerek)',
'tog-showjumplinks' => '«Ötip ketw» qatınaw siltemelerin qos',
'tog-uselivepreview' => 'Twra qarap şığwdı qoldanw (JavaScript) (Sınaqtama)',
'tog-forceeditsummary' => 'Öñdemeniñ qısqaşa mazmundaması bos qalğanda mağan eskert',
'disclaimers' => 'Jawapkerşilikten bas tartw',
'disclaimerpage' => 'Project:Jawapkerşilikten bas tartw',
'edithelp' => 'Öndew anıqtaması',
-'edithelppage' => 'Help:Öñdew',
'helppage' => 'Help:Mazmunı',
'mainpage' => 'Bastı bet',
'mainpage-description' => 'Bastı bet',
'prevn' => 'aldıñğı {{PLURAL:$1|$1}}',
'nextn' => 'kelesi {{PLURAL:$1|$1}}',
'viewprevnext' => 'Körsetilwi: ($1 {{int:pipe-separator}} $2) ($3) jazba',
-'searchhelp-url' => 'Help:Mazmunı',
'search-result-size' => '$1 ($2 söz)',
'search-result-score' => 'Araqatınastılığı: $1 %',
'search-redirect' => '(aýdağış $1)',
Äzirşe Google arqılı izdewge boladı.
Añğartpa: {{SITENAME}} torabınıñ mağlumat tizbeleri eskirgen bolwı mümkin.',
-# Quickbar
-'qbsettings' => 'Mäzir',
-'qbsettings-none' => 'Eşqandaý',
-'qbsettings-fixedleft' => 'Solğa bekitilgen',
-'qbsettings-fixedright' => 'Oñğa bekitilgen',
-'qbsettings-floatingleft' => 'Solğa qalqığan',
-'qbsettings-floatingright' => 'Oñğa qalqığan',
-
# Preferences page
'preferences' => 'Baptalımdar',
'mypreferences' => 'Baptalımdarım',
'notvisiblerev' => 'Tüzetw joýıldı',
'watchnochange' => 'Körsetilgen merzimde eş baqılanğan dana öñdelgen joq.',
'watchlist-details' => 'Talqılaw betterin sanamağanda $1 bet baqlanıladı.',
-'wlheader-enotif' => '* Eskertw xat jiberwi qosılğan.',
-'wlheader-showupdated' => "* Soñğı kelip-ketwiñizden beri özgertilgen betterdi '''jwan''' qaripimen körset",
+'wlheader-enotif' => 'Eskertw xat jiberwi qosılğan.',
+'wlheader-showupdated' => "Soñğı kelip-ketwiñizden beri özgertilgen betterdi '''jwan''' qaripimen körset",
'watchmethod-recent' => 'baqılawlı better üşin jwıqtağı özgeristerdi tekserw',
'watchmethod-list' => 'jwıqtağı özgerister üşin baqılawlı betterdi tekserw',
'watchlistcontains' => 'Baqılaw tizimiñizde $1 bet bar.',
# Stylesheets
'common.css' => '/* Mında ornalastırılğan CSS barlıq mänerlerde qoldanıladı */',
-'standard.css' => '/* Mında ornalastırılğan CSS tek «Dağdılı» (standard) mänerin paýdalanwşılarına ıqpal etedi */',
-'nostalgia.css' => '/* Mında ornalastırılğan CSS tek «Añsaw» (nostalgia) mänerin paýdalanwşılarına ıqpal etedi */',
'cologneblue.css' => '/* Mında ornalastırılğan CSS tek «Köln zeñgirligi» (cologneblue) mänerin paýdalanwşılarına ıqpal etedi skin */',
'monobook.css' => '/* Mında ornalastırılğan CSS tek «Dara kitap» (monobook) mänerin paýdalanwşılarına ıqpal etedi */',
-'myskin.css' => '/* Mında ornalastırılğan CSS tek «Öz mänerim» (myskin) mänerin paýdalanwşılarına ıqpal etedi */',
-'chick.css' => '/* Mında ornalastırılğan CSS tek «Balapan» (chick) mänerin paýdalanwşılarına ıqpal etedi */',
-'simple.css' => '/* Mında ornalastırılğan CSS tek «Kädimgi» (simple) mänerin paýdalanwşılarına ıqpal etedi */',
'modern.css' => '/* Mında ornalastırılğan CSS tek «Zamanawï» (modern) mänerin paýdalanwşılarına ıqpal etedi */',
# Scripts
'common.js' => '/* Mındağı ärtürli JavaScript kez kelgen bet qotarılğanda barlıq paýdalanwşılar üşin jegiledi. */',
-'standard.js' => '/* Mındağı JavaScript tek «Dağdılı» (standard) mänerin paýdalanwşılar üşin jegiledi */',
-'nostalgia.js' => '/* Mındağı JavaScript tek «Añsaw» (nostalgia) mänerin paýdalanwşılar üşin jegiledi*/',
'cologneblue.js' => '/* Mındağı JavaScript tek «Köln zeñgirligi» (cologneblue) mänerin paýdalanwşılar üşin jegiledi */',
'monobook.js' => '/* Mındağı JavaScript tek «Dara kitap» (monobook) mänerin paýdalanwşılar üşin jegiledi */',
-'myskin.js' => '/* Mındağı JavaScript tek «Öz mänerim» (myskin) mänerin paýdalanwşılar üşin jegiledi */',
-'chick.js' => '/* Mındağı JavaScript tek «Balapan» (chick) mänerin paýdalanwşılar üşin jegiledi */',
-'simple.js' => '/* Mındağı JavaScript tek «Kädimgi» (simple) mänerin paýdalanwşılar üşin jegiledi */',
'modern.js' => '/* Mındağı JavaScript tek «Zamanawï» (modern) mänerin paýdalanwşılar üşin jegiledi */',
# Metadata
'spam_blanking' => '$1 degenge siltemeleri bar barlıq tüzetwler tazartıldı',
# Skin names
-'skinname-standard' => 'Dağdılı (standard)',
-'skinname-nostalgia' => 'Añsaw (nostalgia)',
'skinname-cologneblue' => 'Köln zeñgirligi (cologneblue)',
'skinname-monobook' => 'Dara kitap (monobook)',
-'skinname-myskin' => 'Öz mänerim (myskin)',
-'skinname-chick' => 'Balapan (chick)',
-'skinname-simple' => 'Kädimgi (simple)',
'skinname-modern' => 'Zamanawï (modern)',
# Patrolling
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Eni',
'exif-imagelength' => 'Bïiktigi',
'exif-bitspersample' => 'Quraş saýın bït sanı',
'exif-gpsdatestamp' => 'GPS kün-aýı',
'exif-gpsdifferential' => 'GPS saralanğan durıstaw',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Ulğaýtılğan',
'exif-unknowndate' => 'Belgisiz kün-aýı',
'version-software-product' => 'Önim',
'version-software-version' => 'Nusqası',
-# Special:FilePath
-'filepath' => 'Faýl ornalaswı',
-'filepath-page' => 'Faýl atı:',
-'filepath-submit' => 'Ornalaswın tap',
-'filepath-summary' => 'Bul arnaýı bet faýl ornalaswı tolıq jolın qaýtaradı.
-Swretter tolıq ajıratılımdığımen körsetiledi, basqa faýl türlerine qatıstı bağdarlaması twra jegiledi.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Faýl telnusqaların izdew',
'fileduplicatesearch-summary' => 'Faýl xeşi mağınası negizinde telnusqaların izdew.',
* @author Kaganer
* @author Kiensvay
* @author Lovekhmer
+ * @author Nemo bis
* @author Sovichet
* @author T-Rithy
* @author Thearith
'oct' => 'តុលា',
'nov' => 'វិច្ឆិកា',
'dec' => 'ធ្នូ',
+'january-date' => '$1 មករា',
+'february-date' => '$1 កុម្ភៈ',
+'march-date' => '$1 មីនា',
+'april-date' => '$1 មេសា',
+'may-date' => '$1 ឧសភា',
+'june-date' => '$1 មិថុនា',
+'july-date' => '$1 កក្កដា',
+'august-date' => '$1 សីហា',
+'september-date' => '$1 កញ្ញា',
+'october-date' => '$1 តុលា',
+'november-date' => '$1 វិច្ឆិកា',
+'december-date' => '$1 ធ្នូ',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|ចំណាត់ថ្នាក់ក្រុម|ចំណាត់ថ្នាក់ក្រុម}}',
'disclaimers' => 'ការបដិសេធ',
'disclaimerpage' => 'Project:ការបដិសេធទូទៅ',
'edithelp' => 'ជំនួយក្នុងការកែប្រែ',
-'edithelppage' => 'Help:របៀបកែប្រែ',
'helppage' => 'Help:មាតិកា',
'mainpage' => 'ទំព័រដើម',
'mainpage-description' => 'ទំព័រដើម',
# Special:PasswordReset
'passwordreset' => 'កំណត់ពាក្យសម្ងាត់សាឡើងវិញ',
-'passwordreset-text' => 'បំពេញសំណុំបែបបទនេះដើម្បីស្ដារពាក្យសម្ងាត់របស់អ្នក។',
'passwordreset-legend' => 'កំណត់ពាក្យសម្ងាត់សាឡើងវិញ',
'passwordreset-disabled' => 'មុខងារប្ដូរទៅពាក្យសម្ងាត់ដើមត្រូវបានបិទមិនអោយប្រើនៅលើវិគីនេះ។',
'passwordreset-emaildisabled' => 'មុខងារអ៊ីមែលត្រូវបានបិទមិនអោយប្រើនៅលើវិគីនេះ។',
-'passwordreset-pretext' => '{{PLURAL:$1||វាយបញ្ចូលផ្នែកមួយនៃទិន្នន័យខាងក្រោម}}',
'passwordreset-username' => 'អត្តនាម៖',
'passwordreset-domain' => 'ដូម៉ែន៖',
'passwordreset-capture' => 'មើលអ៊ីមែលលទ្ធផល?',
'searchmenu-legend' => 'ជម្រើសនានាក្នុងការស្វែងរក',
'searchmenu-exists' => "* ទំព័រ '''[[$1]]'''",
'searchmenu-new' => "'''បង្កើតទំព័រ \"[[:\$1]]\" នៅលើវិគីនេះ!'''",
-'searchhelp-url' => 'Help:មាតិកា',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|រុករកក្នុងទំព័រនានាជាមួយបុព្វបទនេះ]]',
'searchprofile-articles' => 'ទំព័រមាតិកា',
'searchprofile-project' => 'ជំនួយ និងទំព័រគម្រោង',
'notvisiblerev' => 'ការកែតម្រូវត្រូវបានលុបចោល',
'watchnochange' => 'មិនមានរបស់ដែលអ្នកកំពុងតាមដានណាមួយត្រូវបានគេកែប្រែក្នុងកំលុងពេលដូលដែលបានបង្ហាញទេ។',
'watchlist-details' => '{{PLURAL:$1|$1 page|ទំព័រ $1}}នៅក្នុងបញ្ជីតាមដានរបស់អ្នក ដោយមិនរាប់បញ្ចូលទំព័រពិភាក្សា។',
-'wlheader-enotif' => '* អនុញ្ញាតឱ្យមានការផ្ដល់ដំណឹងតាមរយៈអ៊ីមែល',
-'wlheader-showupdated' => "* ទំព័រដែលត្រូវបានផ្លាស់ប្តូរតាំងពីពេលចូលមើលចុងក្រោយរបស់អ្នក ត្រូវបានបង្ហាញជា '''អក្សរដិត'''",
+'wlheader-enotif' => 'អនុញ្ញាតឱ្យមានការផ្ដល់ដំណឹងតាមរយៈអ៊ីមែល',
+'wlheader-showupdated' => "ទំព័រដែលត្រូវបានផ្លាស់ប្តូរតាំងពីពេលចូលមើលចុងក្រោយរបស់អ្នក ត្រូវបានបង្ហាញជា '''អក្សរដិត'''",
'watchmethod-recent' => 'ឆែកមើលកំណែប្រែថ្មីៗចំពោះទំព័រត្រូវបានតាមដាន',
'watchmethod-list' => 'ឆែកមើលទំព័រត្រូវបានតាមដានចំពោះកំណែប្រែថ្មីៗ',
'watchlistcontains' => 'បញ្ជីតាមដាន របស់អ្នក មាន $1 {{PLURAL:$1|ទំព័រ|ទំព័រ}}។',
'htmlform-reset' => 'ធ្វើដូចដើមវិញ',
'htmlform-selectorother-other' => 'ផ្សេងទៀត',
'htmlform-no' => 'ទេ',
-'htmlform-yes' => 'á\9e\94á\9e¶á\9e\91â\80\8bá\9e¬á\9e\85á\9e¶á\9e\9f',
+'htmlform-yes' => 'á\9e\96á\9f\92á\9e\9aá\9e\98',
# New logging system
'logentry-delete-delete' => '$1 បានលុបទំព័រ $3 ចោល',
'disclaimers' => 'ಅಬಾಧ್ಯತೆಗಳು',
'disclaimerpage' => 'Project:ಸಾಮಾನ್ಯ ಅಬಾಧ್ಯತೆಗಳು',
'edithelp' => 'ಸಂಪಾದನೆಗೆ ಸಹಾಯ',
-'edithelppage' => 'Help:ಸಂಪಾದನೆ',
'helppage' => 'Help:ಪರಿವಿಡಿ',
'mainpage' => 'ಮುಖ್ಯ ಪುಟ',
'mainpage-description' => 'ಮುಖ್ಯ ಪುಟ',
'viewprevnext' => 'ವೀಕ್ಷಿಸು ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''\"[[:\$1]]\" ಹೆಸರಿನ ಪುಟ ಈ ವಿಕಿಯಲ್ಲಿದೆ.'''",
'searchmenu-new' => "'''''[[:$1]]'' ಪುಟವನ್ನು ಈ ವಿಕಿಯಲ್ಲಿ ಸೃಷ್ಟಿಸಿ!'''",
-'searchhelp-url' => 'Help:ಪರಿವಿಡಿ',
'searchprofile-articles' => 'ಲೇಖನ ಪುಟ',
'searchprofile-project' => 'ಸಹಾಯ ಮತ್ತು ಯೋಜನೆ ಪುಟಗಳು',
'searchprofile-images' => 'ಬಹುಮಾಧ್ಯಮ',
'unwatchthispage' => 'ವೀಕ್ಷಣೆ ನಿಲ್ಲಿಸು',
'notvisiblerev' => 'ಆವೃತ್ತಿಯನ್ನು ಅಳಿಸಲಾಗಿದೆ',
'watchlist-details' => 'ಚರ್ಚೆ ಪುಟಗಳನ್ನು ಹೊರತುಪಡಿಸಿ, ನಿಮ್ಮ ವೀಕ್ಷಣಾಪಟ್ಟಿಯಲ್ಲಿ {{PLURAL:$1|$1 ಪುಟ ಇದೆ|$1 ಪುಟಗಳು ಇವೆ}}.',
-'wlheader-showupdated' => "* ನೀವು ಕೊನೆಯ ಬಾರಿ ಭೇಟಿ ನೀಡಿದ ನಂತರ ಬದಲಾವಣೆಗಳು ಆಗಿರುವ ಪುಟಗಳು '''ದಪ್ಪ ಅಕ್ಷರಗಳಲ್ಲಿ''' ತೋರಿಸಲಾಗಿದೆ",
+'wlheader-showupdated' => "ನೀವು ಕೊನೆಯ ಬಾರಿ ಭೇಟಿ ನೀಡಿದ ನಂತರ ಬದಲಾವಣೆಗಳು ಆಗಿರುವ ಪುಟಗಳು '''ದಪ್ಪ ಅಕ್ಷರಗಳಲ್ಲಿ''' ತೋರಿಸಲಾಗಿದೆ",
'watchmethod-recent' => 'ಇತ್ತೀಚಿನ ಸಂಪಾದನೆಗಳಲ್ಲಿ ವೀಕ್ಷಣಾಪಟ್ಟಿಗೆ ಸೇರುವ ಪುಟಗಳ ಹುಡುಕು',
'watchmethod-list' => 'ವೀಕ್ಷಣಾಪಟ್ಟಿಗೆ ಸೇರುವ ಪುಟಗಳಲ್ಲಿ ಇತ್ತೀಚಿನ ಸಂಪಾದನೆಗಳಿಗೆ ಹುಡುಕು',
'watchlistcontains' => 'ನಿಮ್ಮ ವೀಕ್ಷಣಾಪಟ್ಟಿಯಲ್ಲಿ $1 {{PLURAL:$1|ಪುಟ|ಪುಟಗಳು}} ಇವೆ.',
$messages = array(
# User preference toggles
-'tog-underline' => '링크에 밑줄 표시하기:',
+'tog-underline' => '링크에 밑줄:',
'tog-justify' => '문단 정렬하기',
'tog-hideminor' => '최근 바뀜에서 사소한 편집을 숨기기',
'tog-hidepatrolled' => '최근 바뀜에서 검토한 편집을 숨기기',
'tog-oldsig' => '현재 서명:',
'tog-fancysig' => '서명을 위키텍스트로 취급 (자동으로 링크를 걸지 않음)',
'tog-showjumplinks' => '접근성을 위한 "이동" 링크 쓰기 (일부 스킨에서만 작동)',
-'tog-uselivepreview' => 'ì\8b¤ì\8b\9cê°\84 미리 보기 ì\82¬ì\9a©í\95\98기 (ì\9e\90ë°\94ì\8a¤í\81¬ë¦½í\8a¸ í\95\84ì\9a\94) (ì\8b\9c험 기능)',
+'tog-uselivepreview' => 'ì\8b¤ì\8b\9cê°\84 미리 보기 ì\82¬ì\9a©í\95\98기 (ì\9e\90ë°\94ì\8a¤í\81¬ë¦½í\8a¸ í\95\84ì\9a\94) (ì\8b¤험 기능)',
'tog-forceeditsummary' => '편집 요약을 쓰지 않았을 때 알려주기',
'tog-watchlisthideown' => '주시문서 목록에서 내 편집을 숨기기',
'tog-watchlisthidebots' => '주시문서 목록에서 봇 편집을 숨기기',
'tog-showhiddencats' => '숨은 분류 보기',
'tog-noconvertlink' => '링크 제목 변환을 비활성화',
'tog-norollbackdiff' => '되돌리기 후 차이를 보이지 않기',
-'tog-useeditwarning' => 'ì\88\98ì \95í\95\9c ë\82´ì\9a©ì\9d\84 ì \80ì\9e¥í\95\98ì§\80 ì\95\8aê³ í\8e¸ì§\91 ì\96\91ì\8b\9dì\9d\84 ë\8b«ê±°ë\82\98 ë\8b¤ë¥¸ í\8e\98ì\9d´ì§\80ë¡\9c ì\9d´ë\8f\99í\95 ë\95\8c ì\95\8c림',
+'tog-useeditwarning' => 'ë°\94ê¾¼ ë\82´ì\9a©ì\9d\84 ì \80ì\9e¥í\95\98ì§\80 ì\95\8aê³ í\8e¸ì§\91 í\8e\98ì\9d´ì§\80를 ë²\97ì\96´ë\82 ë\95\8c ì\95\8c림',
'underline-always' => '항상',
'underline-never' => '치지 않음',
'oct' => '10',
'nov' => '11',
'dec' => '12',
+'january-date' => '1월 $1일',
+'february-date' => '2월 $1일',
+'march-date' => '3월 $1일',
+'april-date' => '4월 $1일',
+'may-date' => '5월 $1일',
+'june-date' => '6월 $1일',
+'july-date' => '7월 $1일',
+'august-date' => '8월 $1일',
+'september-date' => '9월 $1일',
+'october-date' => '10월 $1일',
+'november-date' => '11월 $1일',
+'december-date' => '12월 $1일',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|분류}}',
'help' => '도움말',
'search' => '찾기',
'searchbutton' => '찾기',
-'go' => '가기',
-'searcharticle' => '가기',
+'go' => '보기',
+'searcharticle' => '보기',
'history' => '문서 역사',
'history_short' => '역사',
'updatedmarker' => '마지막으로 방문한 뒤 바뀜',
'create-this-page' => '이 문서 만들기',
'delete' => '삭제',
'deletethispage' => '이 문서 삭제하기',
+'undeletethispage' => '이 문서 되살리기',
'undelete_short' => '{{PLURAL:$1|편집 $1개}} 되살리기',
'viewdeleted_short' => '{{PLURAL:$1|삭제된 편집 $1개}} 보기',
'protect' => '보호',
'disclaimers' => '면책 조항',
'disclaimerpage' => 'Project:면책 조항',
'edithelp' => '편집 도움말',
-'edithelppage' => 'Help:편집하기',
'helppage' => 'Help:목차',
'mainpage' => '대문',
'mainpage-description' => '대문',
'namespaceprotected' => "'''$1''' 이름공간을 편집할 수 있는 권한이 없습니다.",
'customcssprotected' => '여기에는 다른 사용자의 개인 설정이 포함되어 있기 때문에 이 CSS 문서를 편집할 수 없습니다.',
'customjsprotected' => '여기에는 다른 사용자의 개인 설정이 포함되어 있기 때문에 이 자바스크립트 문서를 편집할 수 없습니다.',
+'mycustomcssprotected' => '이 CSS 문서를 편집할 권한이 없습니다.',
+'mycustomjsprotected' => '이 자바스크립트 문서를 편집할 권한이 없습니다.',
'ns-specialprotected' => '특수 문서는 편집할 수 없습니다.',
'titleprotected' => '[[User:$1|$1]] 사용자가 문서 만들기를 금지했습니다.
이유는 다음과 같습니다. "$2"',
'createacct-yourpasswordagain-ph' => '비밀번호 다시 입력',
'remembermypassword' => '이 브라우저에서 로그인 상태를 저장하기 (최대 $1{{PLURAL:$1|일}})',
'userlogin-remembermypassword' => '로그인 상태를 유지하기',
-'userlogin-signwithsecure' => 'ë³´ì\95\88 ì\84\9cë²\84ë¡\9c ë¡\9cê·¸ì\9d¸',
+'userlogin-signwithsecure' => 'ë³´ì\95\88 ì\97°ê²° ì\82¬ì\9a©',
'securelogin-stick-https' => '로그인 후에도 HTTPS 연결 상태를 유지합니다',
'yourdomainname' => '도메인 이름:',
'password-change-forbidden' => '이 위키에서 비밀번호를 바꿀 수 없습니다.',
'gotaccount' => '계정이 이미 있다면, $1.',
'gotaccountlink' => '로그인하세요',
'userlogin-resetlink' => '사용자 이름이나 비밀번호를 잊으셨나요?',
+'userlogin-resetpassword-link' => '내 비밀번호 재설정',
'helplogin-url' => 'Help:로그인',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|로그인에 관한 도움말]]',
'createacct-join' => '아래에 정보를 입력하세요.',
'createacct-imgcaptcha-ph' => '위에 보이는 텍스트를 입력하세요',
'createacct-submit' => '계정 만들기',
'createacct-benefit-heading' => '{{SITENAME}}(은)는 여러분과 같은 사람으로 이루어집니다.',
-'createacct-benefit-body1' => '편집 수',
-'createacct-benefit-body2' => '문서 수',
-'createacct-benefit-body3' => '최근 기여자',
+'createacct-benefit-body1' => '{{PLURAL:$1|편집 수}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|문서 수}}',
+'createacct-benefit-body3' => '최근 {{PLURAL:$1|기여자}}',
'badretype' => '입력한 비밀번호가 일치하지 않습니다.',
'userexists' => '입력하신 사용자 이름이 이미 등록되어 있습니다.
다른 이름을 선택하세요.',
'cannotchangeemail' => '이 위키에서는 계정의 이메일 주소를 바꿀 수 없습니다.',
'emaildisabled' => '이 사이트에서는 이메일을 보낼 수 없습니다.',
'accountcreated' => '계정 만들어짐',
-'accountcreatedtext' => '"$1" 사용자 계정이 만들어졌습니다.',
+'accountcreatedtext' => '[[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|토론]]) 사용자 계정이 만들어졌습니다.',
'createaccount-title' => '{{SITENAME}} 계정 만들기',
'createaccount-text' => '누군가가 {{SITENAME}} ($4)에서 사용자 이름 "$2", 비밀번호 "$3"로 당신의 이메일 주소가 등록된 계정을 만들었습니다.
지금 로그인하여 비밀번호를 바꾸십시오.
# Special:PasswordReset
'passwordreset' => '비밀번호 재설정',
-'passwordreset-text' => '비밀번호를 재설정하려면 이 양식을 채워주세요.',
+'passwordreset-text-one' => '비밀번호를 재설정하려면 이 양식을 작성해주세요.',
+'passwordreset-text-many' => '{{PLURAL:$1|비밀번호를 재설정하려면 다음 정보 중 하나를 입력하세요.}}',
'passwordreset-legend' => '비밀번호 재설정',
'passwordreset-disabled' => '이 위키에서는 비밀번호를 재설정할 수 없습니다.',
'passwordreset-emaildisabled' => '이 위키에서 이메일 기능이 비활성화되어 있습니다.',
-'passwordreset-pretext' => '{{PLURAL:$1||아래에 한 가지 정보를 입력하세요}}',
'passwordreset-username' => '사용자 이름:',
'passwordreset-domain' => '도메인:',
'passwordreset-capture' => '발송 결과 이메일을 보시겠습니까?',
임시 비밀번호: $2',
'passwordreset-emailsent' => '비밀번호 재설정 이메일을 보냈습니다.',
'passwordreset-emailsent-capture' => '비밀번호 재설정 이메일이 발송되었으며, 아래에 나타나 있습니다.',
-'passwordreset-emailerror-capture' => '비밀번호 재설정 이메일이 생성되어 아래에 표시되어 있지만, {{GENDER:$2|사용자}}에게 발송하는 데에는 실패했습니다: $1',
+'passwordreset-emailerror-capture' => '비밀번호 재설정 이메일이 생성되어 아래에 보여져 있지만, {{GENDER:$2|사용자}}에게 발송하는 데에는 실패했습니다: $1',
# Special:ChangeEmail
'changeemail' => '이메일 주소 바꾸기',
'changeemail-header' => '계정 메일 주소 바꾸기',
-'changeemail-text' => 'ì\9d´ë©\94ì\9d¼ 주ì\86\8c를 ë°\94ê¾¸ë ¤ë©´ ì\9d´ ì\96\91ì\8b\9dì\9d\84 ì±\84ì\9a°세요. 바뀜 내용을 확인하기 위해 비밀번호를 입력해야 합니다.',
+'changeemail-text' => 'ì\9d´ë©\94ì\9d¼ 주ì\86\8c를 ë°\94ê¾¸ë ¤ë©´ ì\9d´ ì\96\91ì\8b\9dì\9d\84 ì\9e\91ì\84±í\95´ì£¼세요. 바뀜 내용을 확인하기 위해 비밀번호를 입력해야 합니다.',
'changeemail-no-info' => '이 특수 문서에 직접 접근하려면 반드시 로그인해야 합니다.',
'changeemail-oldemail' => '현재 이메일 주소 :',
'changeemail-newemail' => '새 이메일 주소:',
여기는 계정을 만들지 않았거나 사용하고 있지 않은 익명 사용자를 위한 토론 문서입니다.
익명 사용자를 구별하기 위해서는 숫자로 된 IP 주소를 사용해야만 합니다.
IP 주소는 여러 사용자가 공유할 수 있습니다.
-자신과 관계없는 의견이 자신에게 남겨져 있어 불쾌하다고 생각하는 익명 사용자는 [[Special:UserLogin/signup|계정을 만들고]] [[Special:UserLogin|로그인 하여]] 나중에 다른 익명 사용자에게 줄 혼란을 줄일 수 있습니다.',
+자신과 관계없는 의견이 자신에게 남겨져 있어 불쾌하다고 생각하는 익명 사용자는 [[Special:UserLogin/signup|계정을 만들고]] [[Special:UserLogin|로그인해서]] 나중에 다른 익명 사용자에게 줄 혼란을 줄일 수 있습니다.',
'noarticletext' => '이 문서가 현재 존재하지 않습니다.
이 문서와 제목이 비슷한 문서가 있는지 [[Special:Search/{{PAGENAME}}|찾거나]],
이 문서에 관련된 <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} 기록]을 확인하거나,
문서가 삭제된 것 같습니다.',
'edit-conflict' => '편집 충돌.',
'edit-no-change' => '문서에 어떠한 바뀜도 없기 때문에 편집은 무시되었습니다.',
+'postedit-confirmation' => '편집을 저장했습니다.',
'edit-already-exists' => '새 문서를 만들 수 없습니다.
문서가 이미 존재합니다.',
-'defaultmessagetext' => '기본 ë©\94ì\84¸ì§\80 ë\82´ì\9a©',
+'defaultmessagetext' => '기본 ë©\94ì\8b\9cì§\80 ê¸\80',
'content-failed-to-parse' => '$1 모델에 대한 $2 내용을 구문 분석하는 데 실패했습니다: $3',
'invalid-content-data' => '잘못된 내용 데이터입니다',
'content-not-allowed-here' => '"$1" 내용은 [[$2]] 문서예 허용하지 않습니다',
-'editwarning-warning' => '이 창에서 벗어나면 저장하지 않은 편집이 모두 사라집니다.
-로그인한 경우, 환경 설정 ‘{{int:prefs-editing}}’란에서 이 경고창을 띄우지 않도록 설정할 수 있습니다.',
+'editwarning-warning' => '이 페이지에서 벗어나면 저장하지 않은 바뀜이 모두 사라집니다.
+로그인을 했다면, 환경 설정의 "편집 상자"에서 이 경고를 띄우지 않도록 설정할 수 있습니다.',
# Content models
'content-model-wikitext' => '위키텍스트',
'searchmenu-legend' => '찾기 설정',
'searchmenu-exists' => "'''이 위키에 \"[[:\$1]]\"의 이름을 가진 문서가 있습니다.'''",
'searchmenu-new' => "'''이 위키에 \"[[:\$1]]\" 문서를 만드세요!'''",
-'searchhelp-url' => 'Help:목차',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|이 접두어로 시작하는 문서 찾기]]',
'searchprofile-articles' => '일반 문서',
'searchprofile-project' => '도움말 및 프로젝트 문서',
'userrights-changeable-col' => '바꿀 수 있는 권한',
'userrights-unchangeable-col' => '바꿀 수 없는 권한',
'userrights-conflict' => '사용자 권한에 충돌이 있습니다! 바뀜을 다시 적용하세요.',
+'userrights-removed-self' => '자신의 권한을 성공적으로 제거했습니다. 따라서 더 이상 이 문서에 접근할 수 없습니다.',
# Groups
'group' => '그룹:',
'right-editusercssjs' => '다른 사용자의 CSS와 자바스크립트 문서를 편집',
'right-editusercss' => '다른 사용자의 CSS 문서를 편집',
'right-edituserjs' => '다른 사용자의 자바스크립트 문서를 편집',
+'right-editmyusercss' => '자신의 사용자 CSS 파일 편집하기',
+'right-editmyuserjs' => '자신의 사용자 자바스크립트 파일 편집하기',
+'right-viewmywatchlist' => '자신의 주시문서 목록 보기',
+'right-editmywatchlist' => '자신의 주시문서 목록을 편집합니다. 이 권한이 없어도 문서를 추가할 수 있는 권한이 이외에도 있음을 참고하세요.',
'right-rollback' => '특정 문서를 편집한 마지막 사용자의 편집을 신속하게 되돌리기',
'right-markbotedits' => '되돌리기를 봇의 편집으로 취급 가능',
'right-noratelimit' => '편집이나 다른 행동 속도의 제한을 받지 않음',
'action-deleterevision' => '이 판을 삭제',
'action-deletedhistory' => '이 문서의 삭제된 기여의 역사 보기',
'action-browsearchive' => '삭제된 문서 찾기',
-'action-undelete' => '이 문서를 되살리기',
+'action-undelete' => '이 문서 되살리기',
'action-suppressrevision' => '이 숨겨진 판을 검토하고 되살릴',
'action-suppressionlog' => '비공개 기록 보기',
'action-block' => '이 사용자를 편집하지 못하도록 차단',
'action-userrights-interwiki' => '다른 위키의 사용자 권한을 조정',
'action-siteadmin' => '데이터베이스를 잠그거나 잠금 해제하기',
'action-sendemail' => '이메일 보내기',
+'action-editmywatchlist' => '내 주시문서 목록 편집',
+'action-viewmywatchlist' => '내 주시문서 목록 보기',
# Recent changes
'nchanges' => '$1개 {{PLURAL:$1|바뀜}}',
'newsectionsummary' => '새 주제: /* $1 */',
'rc-enhanced-expand' => '자세한 기록 보기 (자바스크립트 필요)',
'rc-enhanced-hide' => '자세한 기록 숨기기',
-'rc-old-title' => '처음에 "$1"라는 제목으로 만들어짐',
+'rc-old-title' => '처음에 "$1"라는 제목으로 만들어졌습니다',
# Recent changes linked
'recentchangeslinked' => '가리키는 글의 바뀜',
'reuploaddesc' => '올리기를 취소하고 올리기 양식으로 돌아가기',
'upload-tryagain' => '수정된 파일 설명을 저장',
'uploadnologin' => '로그인하지 않음',
-'uploadnologintext' => '파일을 올리려면 [[Special:UserLogin|로그인]]해야 합니다.',
+'uploadnologintext' => '파일을 올리려면 $1해야 합니다.',
'upload_directory_missing' => '파일 올리기용 디렉터리($1)가 없고 웹 서버가 만들지 못했습니다.',
'upload_directory_read_only' => '파일 저장 디렉터리($1)에 쓰기 권한이 없습니다.',
'uploaderror' => '올리기 오류',
'notvisiblerev' => '이 판은 삭제되었습니다.',
'watchnochange' => '주어진 기간 중에 바뀐 주시문서가 없습니다.',
'watchlist-details' => '토론을 제외하고 {{PLURAL:$1|문서 $1개}}를 주시하고 있습니다.',
-'wlheader-enotif' => '* 이메일 알림 기능이 활성화되었습니다.',
-'wlheader-showupdated' => "* 마지막으로 방문한 이후에 바뀐 문서는 '''굵은 글씨'''로 보여집니다.",
+'wlheader-enotif' => '이메일 알림 기능이 활성화되었습니다.',
+'wlheader-showupdated' => "마지막으로 방문한 이후에 바뀐 문서는 '''굵은 글씨'''로 보여집니다.",
'watchmethod-recent' => '주시된 문서를 확인하고자 최근 편집을 확인',
'watchmethod-list' => '최근 편집을 확인하고자 주시된 문서 확인',
'watchlistcontains' => '{{PLURAL:$1|문서 $1개}}를 주시하고 있습니다.',
'rollback-success' => '$1의 편집을 $2의 마지막 버전으로 되돌렸습니다.',
# Edit tokens
-'sessionfailure-title' => 'ì\84¸ì\85\98 ì\86\90ì\8b¤',
+'sessionfailure-title' => 'ì\84¸ì\85\98 ì\8b¤í\8c¨',
'sessionfailure' => '로그인 세션에 문제가 발생한 것 같습니다.
세션 하이재킹을 막기 위해 동작이 취소되었습니다.
브라우저의 뒤로 버튼을 누르고 문서를 새로 고침한 후에 다시 시도해 주세요.',
# Move page
'move-page' => '$1 이동',
'move-page-legend' => '문서 이동하기',
-'movepagetext' => "아래의 양식을 사용해 문서의 이름을 바꾸고 문서의 모든 역사를 새 이름으로 옮길 수 있습니다.
-이전의 제목은 새 제목으로 넘겨줄 것입니다.
-원래 이름을 가리키는 넘겨주기를 자동으로 새로 고칠 수 있습니다.
-만약 이 설정을 선택하지 않았다면 [[Special:DoubleRedirects|이중 넘겨주기]]와 [[Special:BrokenRedirects|끊긴 넘겨주기]]가 있는지 확인해주세요.
-넘겨주기 링크가 제대로 향하고 있는지 확인하여야 합니다.
+'movepagetext' => "아래 양식을 채워 문서의 이름을 바꾸고 모든 역사를 새 이름으로 된 문서로 옮길 수 있습니다.
+원래의 문서는 새 문서로 넘겨주는 링크로만 남게 되고, 원래 이름을 가리키는 넘겨주기는 자동으로 갱신됩니다.
+만약 이 설정을 선택하지 않았다면 [[Special:DoubleRedirects|이중 넘겨주기]]와 [[Special:BrokenRedirects|끊긴 넘겨주기]]를 확인해주세요.
+당신은 링크와 가리키는 대상이 서로 일치하도록 해야 하는 책임을 집니다.
-ì°¸ê³ ë¡\9c ì\83\88 ì \9c목ì\9c¼ë¡\9c ë\90\9c 문ì\84\9cê°\80 ì\9d´ë¯¸ ì\9e\88ì\9d\84 ë\95\8c, ë\84\98겨주기 문ì\84\9cì\9d´ê³ 문ì\84\9c ì\97ì\82¬ê°\80 ì\97\86ì\9d\84 ë\95\8cì\97\90ë§\8c ì\9d´ë\8f\99í\95\98ë©° ê·¸ë \87ì§\80 ì\95\8aì\9d\84 ê²½ì\9a°ì\97\90ë\8a\94 ì\9d´ë\8f\99í\95\98ì§\80 '''ì\95\8aì\8aµë\8b\88ë\8b¤'''.
-ì\8b¤ì\88\98ë¡\9c 문ì\84\9c를 ì\98®ê²¼ì\9d\84 ë\95\8c ë\90\98ë\8f\8c릴 ì\88\98ë\8a\94 ì\9e\88ì§\80ë§\8c ì\9d´ë¯¸ ì\9e\88ë\8a\94 문ì\84\9c를 ë\8d®ì\96´ì\93¸ ì\88\98 ì\97\86ì\9d\8c을 의미합니다.
+ë§\8cì\95½ ì\9d´ë¯¸ ì\9e\88ë\8a\94 문ì\84\9cì\9d\98 ì\9d´ë¦\84ì\9d\84 ì\83\88 ì\9d´ë¦\84ì\9c¼ë¡\9c ì\9e\85ë ¥í\96\88ì\9d\84 ë\95\8cë\8a\94 ê·¸ 문ì\84\9cê°\80 ë¹\84ì\97\88ê±°ë\82\98 ë\84\98겨주기 문ì\84\9cì\9d´ê³ 문ì\84\9c ì\97ì\82¬ê°\80 ì\97\86ì\96´ì\95¼ë§\8c ì\9d´ë\8f\99ì\9d´ ë\90©ë\8b\88ë\8b¤. ê·¸ë \87ì§\80 ì\95\8aì\9d\84 ê²½ì\9a°ì\97\90ë\8a\94 ì\9d´ë\8f\99ë\90\98ì§\80 '''ì\95\8aì\8aµë\8b\88ë\8b¤'''.
+ì\9d´ê²\83ì\9d\80 ì\8b¤ì\88\98ë¡\9c ì\9d´ë\8f\99í\95\9c 문ì\84\9c를 ë\90\98ë\8f\8c릴 ì\88\98ë\8a\94 ì\9e\88ì§\80ë§\8c, ì\9d´ë¯¸ ì¡´ì\9e¬í\95\98ë\8a\94 문ì\84\9c ì\9c\84ì\97\90 ë\8d®ì\96´ì\94\8cì\9a¸ ì\88\98ë\8a\94 ì\97\86ë\8b¤ë\8a\94 ê²\83을 의미합니다.
-'''경고!'''
-인기 있는 문서일 경우 심각하고 예상하지 못한 문제를 초래할 수 있습니다.
-문서를 이동하기 전에 이러한 행동이 초래할 수 있는 결과에 대해 숙지하시기 바랍니다.",
+'''주의!'''
+자주 사용하는 문서를 이동하면 해결하기 어려운 문제를 일으킬 수도 있습니다. 이동하기 전에 반드시 이 문서를 이동해도 문제가 없는지 확인해주세요.",
'movepagetext-noredirectfixer' => "아래의 양식을 사용해 문서의 이름을 바꾸고 문서의 모든 역사를 새 이름으로 옮길 수 있습니다.
이전의 제목은 새 제목으로 넘겨줄 것입니다.
[[Special:DoubleRedirects|이중 넘겨주기]]나 [[Special:BrokenRedirects|끊긴 넘겨주기]]가 있는지 확인해주세요.
# Namespace 8 related
'allmessages' => '시스템 메시지 목록',
'allmessagesname' => '이름',
-'allmessagesdefault' => '기본 ë\82´ì\9a©',
+'allmessagesdefault' => '기본 ë©\94ì\8b\9cì§\80 ê¸\80',
'allmessagescurrent' => '현재 문자열',
'allmessagestext' => '미디어위키 이름공간에 있는 모든 시스템 메시지의 목록입니다.
미디어위키의 번역 작업에 관심이 있으면 [//www.mediawiki.org/wiki/Localisation 미디어위키 지역화]나 [//translatewiki.net translatewiki.net]에 참가해주세요.',
'thumbnail-more' => '실제 크기로',
'filemissing' => '파일 사라짐',
'thumbnail_error' => '섬네일을 만드는 중 오류 발생: $1',
+'thumbnail_error_remote' => '$1에서 반환한 오류 메시지:
+$2',
'djvu_page_error' => 'DjVu 페이지 범위 벗어남',
'djvu_no_xml' => 'DjVu 파일의 XML 정보를 읽을 수 없음',
'thumbnail-temp-create' => '임시 섬네일 파일을 만들 수 없습니다.',
'tooltip-ca-nstab-help' => '도움말 문서 내용을 봅니다.',
'tooltip-ca-nstab-category' => '분류 문서 내용을 봅니다.',
'tooltip-minoredit' => '사소한 편집으로 표시하기',
-'tooltip-save' => 'ë°\94ë\80\9c 저장하기',
+'tooltip-save' => 'ë°\94ë\80\90 ë\82´ì\9a© 저장하기',
'tooltip-preview' => '바뀜을 미리 봅니다. 저장하기 전에 꼭 미리 보기를 해 주세요!',
'tooltip-diff' => '자신이 바꾼 것 보기',
'tooltip-compareselectedversions' => '이 문서에서 선택한 두 판간의 차이를 비교',
'modern.css' => '/* 이 CSS 설정은 모던 스킨을 사용하는 사용자에게 적용됩니다 */',
'vector.css' => '/* 이 CSS 설정은 벡터 스킨을 사용하는 사용자에게 적용됩니다 */',
'print.css' => '/* 이 CSS 설정은 인쇄 출력 화면에 적용됩니다 */',
-'handheld.css' => '/* 이 CSS 설정은 $wgHandheldStyle에 설정한 스킨을 기반으로 한 휴대 기기에 적용됩니다 */',
'noscript.css' => '/* 이 CSS 설정은 자바스크립트를 비활성화한 사용자에 적용됩니다 */',
'group-autoconfirmed.css' => '/* 이 CSS 설정은 자동 인증된 사용자에만 적용됩니다 */',
'group-bot.css' => '/* 이 CSS 설정은 봇에만 적용됩니다 */',
'exif-exposureprogram-4' => '셔터 우선',
'exif-exposureprogram-5' => '크리에이티브 프로그램 (피사계 심도 우선)',
'exif-exposureprogram-6' => '액션 프로그램 (빠른 셔터 속도에 치중)',
-'exif-exposureprogram-7' => 'ì\9d¸ë¬¼ ì\82¬ì§\84 모ë\93\9c (ë°°ê²½ì\9d\84 ì´\88ì \90 ë°\96ì\9c¼ë¡\9c í\95\98ì\97¬ 대상을 강조)',
+'exif-exposureprogram-7' => 'ì\9d¸ë¬¼ ì\82¬ì§\84 모ë\93\9c (ë°°ê²½ì\9d\84 ì´\88ì \90 ë°\96ì\9c¼ë¡\9c í\95´ì\84\9c 대상을 강조)',
'exif-exposureprogram-8' => '풍경 모드 (초점이 배경인 풍경 사진용)',
'exif-subjectdistance-value' => '$1 미터',
'compare-revision-not-exists' => '지정한 판이 없습니다.',
# Database error messages
-'dberr-header' => '이 위키에 문제가 있습니다.',
+'dberr-header' => '이 위키에 문제가 있습니다',
'dberr-problems' => '죄송합니다!
이 사이트는 기술적인 문제가 있습니다.',
'dberr-again' => '잠시 기다리고 나서 다시 불러오세요.',
-'dberr-info' => '(데이터베이스에 접속할 수 없습니다: $1)',
-'dberr-usegoogle' => '그 동안 구글을 통해 검색할 수도 있습니다.',
-'dberr-outofdate' => 'ì°¸ê³ ë¡\9c 구ê¸\80ì\9d\98 ë\82´ì\9a© ê°\9cì\9a\94ë\8a\94 ì\98¤ë\9e\98ë\90\9c ê²\83ì\9d¼ ì\88\98ë\8f\84 ì\9e\88ì\8aµë\8b\88ë\8b¤.',
+'dberr-info' => '(데이터베이스 서버에 연결할 수 없습니다: $1)',
+'dberr-usegoogle' => '그 동안 Google을 통해 검색할 수도 있습니다.',
+'dberr-outofdate' => 'ì\88\98ì§\91ë\90\9c ë\82´ì\9a©ì\9d\80 ì\98¤ë\9e\98ë\90\9c ê²\83ì\9d¼ ì\88\98ë\8f\84 ì\9e\88ì\9d\8cì\9d\84 ì°¸ê³ í\95\98ì\84¸ì\9a\94.',
'dberr-cachederror' => '다음은 요청한 문서의 캐시된 복사본이며, 최신이 아닐 수도 있습니다.',
# HTML forms
'disclaimers' => 'Мийö сöстöмöсь йöз одзын',
'disclaimerpage' => 'Project:Мийö сöстöмöсь йöз одзын',
'edithelp' => 'Уджкерись понда отсöт',
-'edithelppage' => 'Help:Уджкерись понда отсöт',
'helppage' => 'Help:Отсöт',
'mainpage' => 'Пондöтчан листбок',
'mainpage-description' => 'Пондöтчан листбок',
# Special:ListGroupRights
'listgrouprights-members' => '(уджкериссезлöн нимлёдз)',
-# E-mail user
+# Email user
'emailuser' => 'Этiя ужкерисьлö гижöт',
'emailfrom' => 'Кинсянь:',
'emailto' => 'Кинлö:',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Пасьта',
'exif-imagelength' => 'Вылына',
'oct' => 'окт',
'nov' => 'ноя',
'dec' => 'дек',
+'january-date' => '$1 январь',
+'february-date' => '$1 февраль',
+'march-date' => '$1 март',
+'april-date' => '$1 апрель',
+'may-date' => '$1 май',
+'june-date' => '$1 июнь',
+'july-date' => '$1 июль',
+'august-date' => '$1 август',
+'september-date' => '$1 сентябрь',
+'october-date' => '$1 октябрь',
+'november-date' => '$1 ноябрь',
+'december-date' => '$1 декабрь',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категория|Категорияла}}',
'disclaimers' => 'Джууаблылыкъны унамау',
'disclaimerpage' => 'Project:Джууаблылыкъны унамау',
'edithelp' => 'Тюрлендириуню юсюнден болушлукъ',
-'edithelppage' => 'Help:Тюрлендириу',
'helppage' => 'Help:Болушлукъ',
'mainpage' => 'Баш бет',
'mainpage-description' => 'Баш бет',
{{SITENAME}} сайтда [[Special:Preferences|джарашдырыуларыгъызны]] тюрлендирирге унутмагъыз.',
'yourname' => 'Къошулуучуну аты',
'userlogin-yourname' => 'Тергеу джазыуну аты',
-'userlogin-yourname-ph' => 'Тергеу джазыуугъузну атын джазыгъыз',
-'createacct-helpusername-link' => '[[{{MediaWiki:createacct-helpusername-url}}|(сайлауда болушлукъ)]]',
+'userlogin-yourname-ph' => 'Тергеу джазыуунгу атын джаз',
'yourpassword' => 'Паролюгъуз:',
'userlogin-yourpassword' => 'Пароль',
'userlogin-yourpassword-ph' => 'Паролунгу джаз',
'createacct-yourpasswordagain' => 'Паролну бегит',
'createacct-yourpasswordagain-ph' => 'Паролну энтда бир кере джаз',
'remembermypassword' => 'Бу компьютерде мени тергеў джазыўуму унутма (эм кёб $1 {{PLURAL:$1|кюн|кюн}})',
-'userlogin-remembermypassword' => 'Мени эсде тутуу',
+'userlogin-remembermypassword' => 'Системада туруу',
+'userlogin-signwithsecure' => 'Джакъланнган байлам',
'securelogin-stick-https' => 'Чыкъгъандан сора да HTTPS бла байламлы къой',
'yourdomainname' => 'Сизни доменигиз:',
'password-change-forbidden' => 'Бу викиде паролугъузну тюрлендиреллик тюлсюз.',
'logout' => 'Чыгъыу',
'userlogout' => 'Чыгъыу',
'notloggedin' => 'Авторизация ётмегенсиз',
+'userlogin-noaccount' => 'Аккаунтунг джокъмуду?',
'userlogin-joinproject' => '{{SITENAME}} сайтха къошул',
'nologin' => 'Тергеу джазыуугъуз (аккаунтугъуз) джокъмуду? $1.',
'nologinlink' => 'Тергеу джазыу (аккаунт) къурагъыз',
'gotaccount' => 'Тергеу джазыуугъуз (аккаунтугъуз) энди бармыды? $1.',
'gotaccountlink' => 'Кириу',
'userlogin-resetlink' => 'Кирир ючюн билгилеригизни унутхан этгенмисиз?',
+'userlogin-resetpassword-link' => 'Паролну джибериу',
'helplogin-url' => 'Help:Кириу',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Системагъа кириуде болушлукъ]]',
'createacct-join' => 'Информациягъызны тюбюрекде джазыгъыз.',
'createacct-realname' => 'Керти атыгъыз (ажымсыз керек тюлдю)',
'createaccountreason' => 'Чурум:',
'createacct-reason' => 'Чурум',
+'createacct-reason-ph' => 'Башха тергеу джазыуну нек къураусыз',
'createacct-captcha' => 'Къоркъуусузлукъну тинтиу',
'createacct-imgcaptcha-ph' => 'Башыракъда кёрюннген текстни джазыгъыз',
+'createacct-submit' => 'Тергеу джазыуну къура',
'createacct-benefit-heading' => '{{SITENAME}} сизнича адамла бла этилгенди.',
-'createacct-benefit-body1' => 'тюрлениу',
-'createacct-benefit-body2' => 'бет',
-'createacct-benefit-body3' => 'арт заманда къатышхан',
+'createacct-benefit-body1' => '{{PLURAL:$1|тюрлениу}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|бет}}',
+'createacct-benefit-body3' => 'арт заманда {{PLURAL:$1|къошум этген}}',
'badretype' => 'Джазгъан паролларыгъыз бир-бирине келишмейдиле.',
'userexists' => 'Джазылгъан ат хайырландырылады.
Башха ат сайлагъыз.',
# Email sending
'php-mail-error-unknown' => "PHP's mail() функцияда белгили болмагъан халат",
'user-mail-no-addy' => 'Бир e-mail адрес болмагъанлай e-mail иерге кюрешди',
+'user-mail-no-body' => 'Бош неда магъанасыз къысха джазыу бла билдириу иерге изледи.',
# Change password dialog
'resetpass' => 'Паролну тюрлендириу',
'resetpass_announce' => 'Сиз, электрон почта бла ийилген, болджаллы пароль бла киргенсиз. Системагъа кириуню тамамларча, джангы пароль къурагъыз.',
-'resetpass_header' => 'ТеÑ\80геÑ\83 джазÑ\8bÑ\83нÑ\83 (аккаÑ\83нÑ\82нÑ\83) паÑ\80олÑ\8eн тюрлендириу',
+'resetpass_header' => 'ТеÑ\80геÑ\83 джазÑ\8bÑ\83нÑ\83 (аккаÑ\83нÑ\82нÑ\83) паÑ\80олÑ\83н тюрлендириу',
'oldpassword' => 'Эски пароль:',
'newpassword' => 'Джангы пароль:',
-'retypenew' => 'Ð\94жангÑ\8b паÑ\80олнÑ\8e къайтарыгъыз:',
+'retypenew' => 'Ð\94жангÑ\8b паÑ\80олнÑ\83 къайтарыгъыз:',
'resetpass_submit' => 'Паролну бегит эм кир',
'resetpass_success' => 'Сизни паролюгъуз тыйыншлы тюрлендирилди! Системагъа кириу барады…',
'resetpass_forbidden' => 'Пароль тюрленирге болмайды',
'resetpass-wrong-oldpass' => 'Терс пароль.
Сиз энди паролну тюрлендирген неда джангы болджаллы пароль соргъан болурсуз.',
'resetpass-temp-password' => 'Болджаллы пароль:',
+'resetpass-abort-generic' => 'Пароль тюрлендириуню кенгертиу тыйды.',
# Special:PasswordReset
-'passwordreset' => 'Паролну атыу',
-'passwordreset-text' => 'Паролугъуз джиберилир ючюн бу форманы толтуругъуз.',
+'passwordreset' => 'Паролну джибериу',
+'passwordreset-text-one' => 'Паролугъуз джиберилир ючюн бу форманы толтуругъуз.',
+'passwordreset-text-many' => '{{PLURAL:$1|Пароль ийилир ючюн билгилени бир бёлюмюн джазыгъыз.}}',
'passwordreset-legend' => 'Паролну атыу',
'passwordreset-disabled' => 'Бу викиде паролла атыу амал джукъланыбды.',
'passwordreset-emaildisabled' => 'Бу викиде электрон почтаны функциялары джукъланыбдыла.',
-'passwordreset-pretext' => '{{PLURAL:$1||Тюбюрекде берилген билгиледен бирин джазыгъыз}}',
'passwordreset-username' => 'Къошулуучуну аты:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Джазылгъан билдириуню эсебине къара?',
'summary' => 'Тюрлениулени къысха ачыкълау:',
'subject' => 'Тема/башлыкъ:',
'minoredit' => 'Бу гитче тюрлениудю',
-'watchthis' => 'Бу бетни кёзде тургъан тизмеге къош',
+'watchthis' => 'Бу бетни кёздеги тизмеме къош',
'savearticle' => 'Бетни сакъла',
'preview' => 'Ал къарау',
'showpreview' => 'Ал къарау',
Кетерилген болур.',
'edit-conflict' => 'Тюрлендириулени конфликти.',
'edit-no-change' => 'Текстде тюрлениуле эсленмегени ючюн, сизни тюрлендириуюгюз къабыл этилмеди.',
+'postedit-confirmation' => 'Тюрлендириуюгюз сакъланды.',
'edit-already-exists' => 'Джангы бет къураргъа боллукъ тюлдю.
Алайсызда барды бу атлы бет.',
'defaultmessagetext' => 'Тынгылау бла текст',
'searchmenu-legend' => 'Излеуню джарашдырыулары',
'searchmenu-exists' => "'''Бу викиде «[[:$1]]» бет барды'''",
'searchmenu-new' => "'''Бу вики-проектде «[[:$1]]» бетни къура!'''",
-'searchhelp-url' => 'Help:Ичиндегиле',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Бу префикс бла бетни кёргюз]]',
'searchprofile-articles' => 'Баш бетле',
'searchprofile-project' => 'Болушлукъ эм проект бетле',
'prefs-watchlist-days-max' => 'Максимум $1 {{PLURAL:$1|кюн|кюн}}',
'prefs-watchlist-edits' => 'Кёзде тургъан тизмени кенглешдирилген вариантында кёргюзюллюк тюрлениулени саны:',
'prefs-watchlist-edits-max' => 'Максимум саны:1000',
-'prefs-watchlist-token' => 'Ð\9aÑ\91зде Ñ\82Ñ\8bргъан тизмени токени:',
+'prefs-watchlist-token' => 'Ð\9aÑ\91зде Ñ\82Ñ\83ргъан тизмени токени:',
'prefs-misc' => 'Башха джарашдырыула',
'prefs-resetpass' => 'Паролну тюрлендир',
'prefs-changeemail' => 'Электрон почтаны адресин ауушдур',
'userrights-changeable-col' => 'Сиз тюрлендиреллик къауумла',
'userrights-unchangeable-col' => 'Сиз тюрлендирелмезлик къауумла',
'userrights-irreversible-marker' => '$1*',
+'userrights-conflict' => 'Къошулуучу хакъланы конфликти! Тюрлендириуню джангыдан сакълатыб кёрюгюз.',
# Groups
'group' => 'Группа:',
file_uploads джарашдырыулагъа бир къарагъыз.',
'uploadscripted' => 'Бу файл, браузер бла халатлы таныргъа боллукъ, HTML-код неда скрипт джюрютеди.',
'uploadvirus' => 'Файл вируслуду! $1 къара.',
+'uploadjava' => 'Файл, Java .class файлы болгъан ZIP-архивди.
+Къоркъуусузлукъ бла байламлы, Java-файлла джюклеген джарамайды.',
'upload-source' => 'Къайнакъ файл',
'sourcefilename' => 'Къайнакъ аты файлны:',
'sourceurl' => 'Къайнакъны URL-адреси:',
'upload-http-error' => 'HTTP хата болду: $1',
# File backend
+'backend-fail-stream' => '«$1» файл окъулмады.',
'backend-fail-backup' => '«$1» файлны резерв копиясын этерге болмайды.',
'backend-fail-notexists' => '$1 файл джокъду.',
'backend-fail-delete' => '«$1» файл кетерилмеди.',
+'backend-fail-alreadyexists' => '«$1» файл алгъадан барды.',
'backend-fail-store' => '$1 файл $2 ичинде сакъланылынмады.',
+'backend-fail-copy' => '«$2» файл «$1» файлгъа копия этилмеди.',
+'backend-fail-move' => '«$1» файлны «$2» файлгъа кёчюрюлмеди.',
+'backend-fail-opentemp' => 'Болджаллы файлны ачалмайды.',
+'backend-fail-writetemp' => 'Болджаллы файлгъа джазалмады.',
+'backend-fail-closetemp' => 'Болджаллы файлны джабалмайды.',
'backend-fail-read' => '«$1» файлны окъуялмады.',
+'backend-fail-create' => '«$1» файлны джазалмады.',
+'backend-fail-maxsize' => 'Ёлчеми {{PLURAL:$2|бир байт|$2 байт}}дан кёб болгъаны себебли «$1» файл джазылмады.',
# Special:UploadStash
'uploadstash' => 'Джашыртын джюклеу',
'mywatchlist' => 'Кёздеги тизме',
'watchlistfor2' => '$1 ючюн $2',
'nowatchlist' => 'Кёзюгюзде тургъан тизмегиз бошду.',
-'watchlistanontext' => 'Кёзюгюзде тургъан тизмегизни статьяланы кёрюр неда тюрлендирир ючюн $1.',
+'watchlistanontext' => 'Кёзюгюзде тургъан тизмегизни статьяларын кёрюр неда тюрлендирир ючюн бери ётюгюз: $1.',
'watchnologin' => 'Системагъа кирирге керекди.',
'watchnologintext' => 'Кёзюгюзде тургъан тизмегизни тюрлендирир ючюн [[Special:UserLogin|системагъа кирирге керексиз]].',
'addwatch' => 'Кёзде тургъан тизмеге къош',
'notvisiblerev' => 'Версия кетерилгенди',
'watchnochange' => 'Къаралгъан кёзюуде, кёзде тургъан тизмеден бир бет да тюрленмегенди.',
'watchlist-details' => 'Кёзюгюзде тургъан тизмегизде, сюзюу бетлери саналмай {{PLURAL:$1|$1 бет|$1 бет}} барды.',
-'wlheader-enotif' => '* Эл. почта бла хапар бериу джандырылыбды.',
-'wlheader-showupdated' => "* Ахыр кириуюгюзден сора бетни тюрлениулери '''къалын''' джазыу бла кёргюзюлгенди.",
+'wlheader-enotif' => 'Эл. почта бла хапар бериу джандырылыбды.',
+'wlheader-showupdated' => "Ахыр кириуюгюзден сора бетни тюрлениулери '''къалын''' джазыу бла кёргюзюлгенди.",
'watchmethod-recent' => 'кёзде тургъан бетледе этилген ахыр тюрлениуле кёрюу',
'watchmethod-list' => 'кёзде тургъан бетледе этилген ахыр тюрлениуле кёрюу',
'watchlistcontains' => 'Кёзюгюзде тургъан тизмегизде $1 {{PLURAL:$1|бет|бет}} барды.',
Тыйылыуну журналы тюбюрек кёргюзюлгенди:',
'blocklog-showsuppresslog' => 'Бу къошулуучу мындан алгъа тыйылгъанды эмда джашырылгъанды.
Джашырыу журналны кёрюр ючюн тюбюрек къарагъыз:',
-'blocklogentry' => '[[$1]] блок Ñ\8dÑ\82илингенди $2 заманнга $3',
+'blocklogentry' => '[[$1]] кÑ\8aоÑ\88Ñ\83лÑ\83Ñ\83Ñ\87Ñ\83гÑ\8aа $2 болджалгÑ\8aа Ñ\82Ñ\8bйгÑ\8aÑ\8bÑ\87 Ñ\81алдÑ\8b $3',
'reblock-logentry' => '[[$1]] ючюн бошалыу заманын $2 $3 этиб тыйыу джарашдырыуларын тюрлендирди',
'blocklogtext' => 'Къошулуучуланы тыйылыу бла тыйылыудан чыгъарыуну журналы.
Автомат халда тыйылгъан IP-адресле былайда кёргюзюлмейдиле.
Банла бла блокланы кёрюр ючюн [[Special:BlockList|блок тизмесине]] къарагъыз.',
-'unblocklogentry' => '$1 кÑ\8aоÑ\88Ñ\83лÑ\83Ñ\83Ñ\87Ñ\83дан блок алÑ\8bндÑ\8b',
+'unblocklogentry' => '$1 кÑ\8aоÑ\88Ñ\83лÑ\83Ñ\83Ñ\87Ñ\83нÑ\83 Ñ\82Ñ\8bйгÑ\8aÑ\8bÑ\87Ñ\8bн кеÑ\82еÑ\80ди',
'block-log-flags-anononly' => 'джангыз аноним къошулуучула',
'block-log-flags-nocreate' => 'Тергеу джазыуланы (аккаунтланы) регистрациялары тыйылыбды',
'block-log-flags-noautoblock' => 'автоблок джукъланыбды',
'minutes' => '{{PLURAL:$1|$1 минут|$1 минут}}',
'hours' => '{{PLURAL:$1|$1 сагъат|$1 сагъат}}',
'days' => '{{PLURAL:$1|$1 кюн|$1 кюн}}',
+'weeks' => '{{PLURAL:$1|ыйыкъ}}',
+'months' => '{{PLURAL:$1|ай}}',
+'years' => '{{PLURAL:$1|джыл}}',
'ago' => '$1 алгъа',
+'just-now' => 'тюз бусагъатда',
+
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|сагъат}} мындан алгъа',
+'minutes-ago' => '$1 {{PLURAL:$1|минут}} мындан алгъа',
+'seconds-ago' => '$1 {{PLURAL:$1|секунд}} мындан алгъа',
+'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' => 'Формат былай болургъа керекди:
'exif-gpsdifferential' => 'GPS дифференциялы тюзетиу',
'exif-jpegfilecomment' => 'JPEG-файлны белгиси',
'exif-keywords' => 'Ачхыч сёзле',
+'exif-worldregioncreated' => 'Бу сурат этилген дуния регион',
+'exif-countrycreated' => 'Бу сурат этилген кърал',
'exif-countrydest' => 'Суратланнган кърал',
'exif-provinceorstatedest' => 'Суратланнган провинция, территория неда штат',
'exif-citydest' => 'Суратланнган шахар',
'htmlform-submit' => 'Джибер',
'htmlform-reset' => 'Тюрлендириулени ызына сал',
'htmlform-selectorother-other' => 'Башха',
+'htmlform-no' => 'Огъай',
+'htmlform-yes' => 'Хоу',
+'htmlform-chosen-placeholder' => 'Вариантны сайлагъыз',
# SQLite database support
'sqlite-has-fts' => '$1 толу текст излеуню хайырландыргъан',
'sqlite-no-fts' => '$1 толу текст излеуню хайырландыра билмеген',
# New logging system
-'logentry-delete-delete' => '$1, $3 бетни кетерди',
+'logentry-delete-delete' => '$3 бетни $1 {{GENDER:$2|кетерди}}',
+'logentry-delete-restore' => '$3 бетни $1 {{GENDER:$2|ызына салды}}',
'revdelete-content-hid' => 'ичиндегиси джашырылыбды',
'revdelete-summary-hid' => 'тюрлендириуню ачыкълауу джашырылыбды',
'revdelete-uname-hid' => 'къошулуучуну аты джашырылыбды',
'namespacesall' => 'ol',
'monthsall' => 'ol',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => 'Konfam yu e-mail adrehs',
'confirmemail_noemail' => 'Di email adrehs we yu pu na [[Special:Preferences|user preferences]] noh de.',
* @file
*
* @author Caesius noh en Idee vum Manes
+ * @author Geitost
+ * @author Matma Rex
+ * @author Nemo bis
* @author Purodha
* @author Reedy
* @author Rentenirer
'tog-watchmoves' => 'Donn Sigge beim Ömnänne automattesch för ming Oppaßlėß vörschlonn',
'tog-watchdeletion' => 'Donn Sigge beim Fottschmiiße automattesch för ming Oppaßlėß vörschlonn',
'tog-minordefault' => 'Dun all ming Änderunge jedes Mol als klein Mini-Änderunge vürschlage',
-'tog-previewontop' => 'Zeich de Vör-Aansich üvver däm Feld för dä Tex enzejevve aan.',
+'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-ccmeonemails' => 'Scheck mer en Kopie, wann ich en <i lang="en">e-mail</i> an ene andere Metmaacher scheck',
'tog-diffonly' => 'Zeich beim Versione Verjliche nur de Ungerscheide aan (ävver pack nit noch de janze Sigg dodronger)',
'tog-showhiddencats' => 'Donn de verstoche Saachjroppe aanzeije',
-'tog-noconvertlink' => 'Don de Tittele nit ümwandelle',
+'tog-noconvertlink' => 'Don de Tittele nit ömwandelle',
'tog-norollbackdiff' => 'Donn noh „{{int:Rollback}}“ de Ungerscheide nit aanzeije',
'tog-useeditwarning' => 'Donn mesch warne, wann esch vun en Sigg fott jonn, ih dat esch all ming Änderunge avjeschpeischert hann.',
'oct' => 'Okt',
'nov' => 'Nov',
'dec' => 'Dez',
+'january-date' => '$1. Jannewaa',
+'february-date' => '$1. Fääbroaa',
+'march-date' => '$1. Määz',
+'april-date' => '$1. Aprell',
+'may-date' => '$1. Mai',
+'june-date' => '$1. Juuni',
+'july-date' => '$1. Juuli',
+'august-date' => '$1. Ojoßß',
+'september-date' => '$1. Säptämber',
+'october-date' => '$1. Oktoober',
+'november-date' => '$1. Novämber',
+'december-date' => '$1. Dezämber',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Saachjrupp|Saachjruppe}}',
'navigation-heading' => 'Menü för et Navijeere',
'errorpagetitle' => 'Fähler',
'returnto' => 'Jangk widder noh: „$1“.',
-'tagline' => 'Us {{GRAMMAR:Dative|{{SITENAME}}}}',
+'tagline' => 'Uß {{GRAMMAR:Dativ | {{ucfirst:{{SITENAME}}}}}}',
'help' => 'Hölp',
'search' => 'Söhke',
'searchbutton' => 'em Tex',
'unprotect' => 'Schoz ändere',
'unprotectthispage' => 'Siggeschoz ändere',
'newpage' => 'Neu Sigg',
-'talkpage' => 'Ã\9cvver die Sigg heh schwaade',
+'talkpage' => 'Ã\96vver die Sigg heh schwaade',
'talkpagelinktext' => 'Klaaf',
'specialpage' => '{{int:nstab-special}}',
'personaltools' => 'Metmaacher Werkzüch',
'pool-errorunknown' => 'Dä Fähler kenne mer nit',
# 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) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'Ã\9cvver {{GRAMMAR:Akkusativ|{{SITENAME}}}}',
-'aboutpage' => 'Project:Ã\9cvver {{GRAMMAR:Nom|{{SITENAME}}}}',
+'aboutsite' => 'Ã\96vver {{GRAMMAR:Akkusativ|{{ucfirst:{{SITENAME}}}}}}',
+'aboutpage' => 'Project:Ã\96vver {{GRAMMAR:Akkusativ|{{ucfirst:{{SITENAME}}}}}}',
'copyright' => 'Dä Enhald steiht unger de $1.',
'copyrightpage' => '{{ns:project}}:Lizenz',
'currentevents' => 'Et Neuste',
'currentevents-url' => 'Project:Et Neuste',
-'disclaimers' => 'Hinwies',
+'disclaimers' => 'Henwies',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Hölp för et Bearbeide',
-'edithelppage' => 'Help:Hölp',
'helppage' => 'Help:Hölp',
'mainpage' => 'Haupsigg',
'mainpage-description' => 'Haupsigg',
'policy-url' => 'Project:Rejelle',
-'portal' => 'Ã\9cvver {{GRAMMAR:Acc|{{SITENAME}}}} för Metmaacher',
+'portal' => 'Ã\96vver {{GRAMMAR:Akkusativ|{{ucfirst:{{SITENAME}}}}}} för Metmaacher',
'portal-url' => 'Project:Metmaacher Pooz',
'privacy' => 'Daateschotz un Jeheimhaldung',
'privacypage' => 'Project:Daateschotz un Jeheimhaldung',
'yourpassword' => 'Paßwoot:',
'userlogin-yourpassword' => 'Et Paßwoot',
'userlogin-yourpassword-ph' => 'Donn Ding Paßwood enjävve',
+'createacct-yourpassword-ph' => 'Jivv_e Paßwood_en!',
'yourpasswordagain' => 'Noch ens dat Passwood',
+'createacct-yourpasswordagain' => 'Noch ens dat Paßwoot',
+'createacct-yourpasswordagain-ph' => 'Jivv_et Paßwoot norrens en!',
'remembermypassword' => 'Op Duur aanmelde (hält {{PLURAL:$1|för eine Daach|bes op $1 Dääsch|bloß för hück}})',
'userlogin-remembermypassword' => 'Op Duur enlogge',
'userlogin-signwithsecure' => 'Verschlößeld enlogge',
'notloggedin' => 'Nit enjelogg',
'userlogin-noaccount' => 'Do häß noch keine Zohjang?',
'userlogin-joinproject' => 'Aanmälde zom Metmaache!',
-'nologin' => "Wann De Dich noch nit aanjemeldt häs, dann dun Dich '''$1'''.",
+'nologin' => 'Wann de dich noch nit aanjemeldt häs, dann dun dich $1.',
'nologinlink' => 'neu aanmelde',
'createaccount' => 'Aanmelde als ene neue Metmaacher',
'gotaccount' => "Do bes ald aanjemeldt {{GRAMMAR:en|{{SITENAME}}}}? Dann jangk nohm '''$1'''.",
'gotaccountlink' => 'Enlogge',
'userlogin-resetlink' => 'Häß De Ding Daate för et Enlogge verjäße?',
-'helplogin-url' => 'Hölp:Övver et Enlogge',
+'userlogin-resetpassword-link' => 'Paßwoot verjäße?',
+'helplogin-url' => 'Help:Övver et Enlogge',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hölp bem Enlogge]]',
-'createaccountmail' => 'Scheck mer en E-Mail met enem neu ußjedachte Passwood op Zick',
+'createacct-join' => 'Jiv Ding Daate en:',
+'createacct-emailrequired' => 'Ding Addräß för de <i lang="en">e-mail</i>',
+'createacct-emailoptional' => 'Ding Addräß för de <i lang="en">e-mail</i>, kann fott bliive',
+'createacct-email-ph' => 'Jiv Ding Addräß för de <i lang="en">e-mail</i> en!',
+'createaccountmail' => 'Scheck mer en <i lang="en">e-mail</i> met enem neu ußjedaachte Paßwood op Zick',
+'createacct-realname' => 'Dinge börjerlesche Naame, kam_mer och fott lohße',
'createaccountreason' => 'Jrond:',
+'createacct-reason' => 'Der Jrond udder Aanlaß',
+'createacct-reason-ph' => 'Woröm deihs De noch ene Zohjang aanlääje?',
+'createacct-captcha' => 'Zor Sescherheit',
+'createacct-imgcaptcha-ph' => 'Jiv dä Täx en, dä De heh drövver sühs!',
+'createacct-submit' => 'Lohß Jonn!',
+'createacct-benefit-heading' => '{{ucfirst:{{GRAMMAR:Nominative|{{ucfirst:{{SITENAME}}}}}}}} weed vun Minsche wi Dir jemaat.',
+'createacct-benefit-body1' => '{{PLURAL:$1|Änderong|Änderonge|Änderonge }}',
+'createacct-benefit-body2' => '{{PLURAL:$1|Sigg|Sigge|Sigge }}',
+'createacct-benefit-body3' => '{{PLURAL:$1|aktive Metmaacher}}',
'badretype' => 'Ding zwëij ennjejovve Paßßwööter sinn nit ejaal. Do muss De Dich för ein entscheide.',
'userexists' => 'Ene Metmaacher met däm Name jidd et ald.
Do muss Der ene andere Name usdenke.',
'loginerror' => 'Fähler beim Enlogge',
+'createacct-error' => 'Fähler beim Zohjang-Aanlääje',
'createaccounterror' => 'Kunnt keine Zohjang för der Metmaacher-Name „$1“ aanlääje.',
'nocookiesnew' => 'Dinge neue Metmaacher Name es enjerich, ävver dat automatisch Enlogge wor dann nix.
Schad.
un dat Passwood widder ändere,
wann dat esu Dinge Wonsch wor.
Dat neu Passwood leuf noh {{PLURAL:$5|einem Daach|$5 Dääch|noch hück}} us.
-Dä Transport üvver et Netz met e-mail
+Dä Transport övver et Netz met e-mail
es unsecher, do künne Fremde metlese,
un winnichstens de Jeheimdeenste dun
dat och. Usserdäm es "$3"
'noemailcreate' => 'Do moß en jöltijje Adräß för Ding <i lang="en">e-mail</i> aanjävve',
'passwordsent' => 'E neu Passwood es aan de E-Mail Adress vun däm Metmaacher „$1“ ungerwähs. Meld dich domet aan, wann De et häs. Dat ahle Passwood bliev erhalde un kann och noch jebruch wääde, bes dat De Dich et eetste Mol met däm Neue enjelogg häs.',
'blocked-mailpassword' => 'Ding IP Adress es blockeet.',
-'eauthentsent' => 'En <i lang="en">e-mail</i> es jetz ungerwähs aan di Adress, die en de Enstellunge steiht. Ih dat <i lang="en">e-mails</i> üvver {{GRAMMAR:Genitiv iere male|{{SITENAME}}}} <i lang="en">e-mail</i>-Knopp verscheck wääde künne, muss de <i lang="en">e-mail</i>-Adress eets ens bestätich woode sin. Wat mer doför maache moß, steiht en dä <i lang="en">e-mail</i> dren, die jrad avjescheck woode es.',
+'eauthentsent' => 'En <i lang="en">e-mail</i> es jäz ungerwähs aan di Adräß, di en de Enschtällonge schteiht. Ih dat <i lang="en">e-mails</i> övver {{GRAMMAR:Genitiv iere male|{{ucfirst:{{SITENAME}}}}}} <i lang="en">e-mail</i>-Knopp verscheck wääde künne, moß de <i lang="en">e-mail</i>-Adräß eets ens beschtäätesch woode sin. Wat mer doför maache moß, schteiht en dä <i lang="en">e-mail</i> dren, di jrad avjescheck woode es.',
'throttled-mailpassword' => 'En Erennerung för di Passwood es alld ongerwähs, un mieh wi eimol en {{PLURAL:$1|der Schtond|$1 Schtonde|nidd ens ener Schtond}} dommer kein schecke.',
'mailerror' => 'Fähler beim E-Mail Verschecke: $1.',
'acct_creation_throttle_hit' => '<b>Schad.</b>
'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:',
'noemailprefs' => 'Dun en E-Mail Adress endrage, domet dat et all fluppe kann.',
-'emailconfirmlink' => 'Dun Ding <i lang="en">e-mail</i> Adress bestätije looße',
+'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.',
'cannotchangeemail' => 'Sing <i lang="en">e-mail<i> Addreß kam_mer ehe em Wiki nit ändere.',
'emaildisabled' => 'Heh dat Wiki kann kein <i lang="en">e-mails</i> verschecke.',
Möjjelesch, Do häs Ding Paßwood ald jetuusch, künnt och sin,
Do häs Der enzwesche e neu Zweschepaßwood jehollt.',
'resetpass-temp-password' => 'Zweschepasswood:',
+'resetpass-abort-generic' => 'E Zohsazprojramm häd_et nit zohjelohße, et Paßwoot ze ändere.',
# Special:PasswordReset
'passwordreset' => 'Et Paßwoot zeröck säze',
-'passwordreset-text' => 'Donn dat Fommulaa heh ußfölle, öm e neu Paßwoot faßzelääje.',
'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>!',
-'passwordreset-pretext' => '{{PLURAL:$1||Jiff ein vun dä Saache heh dronger enn|}}',
'passwordreset-username' => 'Metmaacher Name:',
'passwordreset-domain' => 'Domähn:',
'passwordreset-capture' => 'Wells De di <i lang="en">e-mail</i> beloore?',
Als Jrund es enjedrage: „''\$2''“
-Do kanns heh em Wiki immer noch lesse. Do sühß ävver di Sigg heh, wann De op rude Links klicks, neu Sigge aanlääje, odder Sigge ändere wells, denn doför bes De jetz jesperrt.
+Do kanns heh em Wiki immer noch lässe. Do sühß ävver di Sigg heh, wann De op rude Links klicks, neu Sigge aanlääje, udder Sigge ändere wells, denn doför bes De jäz jeschperrt.
-Do kanns met \$1 oder enem andere [[{{MediaWiki:Grouppage-sysop}}|Wiki-Köbes]] üvver dat Sperre schwaade, wann De wells.
+Do kanns met \$1 oder enem andere [[{{MediaWiki:Grouppage-sysop}}|Wiki-Köbes]] övver dat Schpärre schwaade, wann De wells.
Do kanns ävver nor dann „''E-Mail aan dä Metmaacher''“ aanwende, wann De ald en E-Mail Adress en Dinge [[Special:Preferences|Enstellunge]] enjedrage un freijejovve häs un wann et E-mail schecke nit metjesperrt es.
Dun en Ding Aanfroge nenne:
Do kanns heh em Wiki immer noch lesse. Do sühß ävver di Sigg heh, wann De op rude Links klicks, neu Sigge aanlääje, odder Sigge ändere wells, denn doför bes De jetz jesperrt.
-Do kanns met \$1 oder enem andere [[{{MediaWiki:Grouppage-sysop}}|Wiki-Köbes]] üvver dat Sperre schwaade, wann De wells.
-Do kanns ävver nor dann „''E-Mail aan dä Metmaacher''“ aanwende, wann De ald en E-Mail Adress en Dinge [[Special:Preferences|Enstellunge]] enjedrage un freijejovve häs un wann et E-mail schecke nit metjesperrt es.
+Do kanns met \$1 oder enem andere [[{{MediaWiki:Grouppage-sysop}}|Wiki-Köbes]] övver dat Schpärre schwaade, wann De wells.
+Do kanns ävver nor dann „''e-mail aan dä Metmaacher''“ aanwende, wann De ald en e-mail Adress en Dinge [[Special:Preferences|Enstellunge]] enjedrage un freijejovve häs un wann et e-mail schecke nit metjeschperrt es.
-Dun en Ding Aanfroge nenne:
+Dun en Dinge Aanfrore nänne:
* Dä Wiki-Köbeß, dä jesperrt hät: \$1
* Der Jrond för et Sperre: \$2
* Da wood jesperrt: \$8
'userpage-userdoesnotexist-view' => 'Ene Metmaacher mem Naame „$1“ hät sesch noch nih aanjemeldt',
'blocked-notice-logextract' => 'Dä Metmaacher es jraad jesperrt.
Heh kütt der neuste Enndraach drövver uss_em Logbooch övver et Metmaacher_Sperre:',
-'clearyourcache' => '<br style="clear: both" />
-\'\'\'Opjepass:\'\'\'
+'clearyourcache' => '\'\'\'Opjepass:\'\'\'
Noh em Speichere künnd et sin, datt De Dingem Brauser singe Cache Speicher
övverlisste muss, ih datt De de Änderunge och ze sinn kreß.
* Beim \'\'\'<i lang="en">Mozilla</i>\'\'\' un \'\'\'<i lang="en">Firefox</i>\'\'\' un \'\'\'<i lang="en">Safari</i>\'\'\', dröck dä Jrußschreffknopp eronger un kleck dann op <i lang="en">Reload</i> / <i lang="de">Aktualisieren</i>, udder dröck <i lang="de">Ctrl+F5</i> / <i lang="de">Strg+F5</i>, udder dröck <i lang="en">Ctrl+R</i> / <i lang="de">Strg+R</i>, obb enem <i lang="en">Macintosh</i> dröck <i lang="de">⌘+R</i>.
'last' => 'met dovör',
'page_first' => 'Aanfang',
'page_last' => 'Engk',
-'histlegend' => 'Heh kanns De Versione för et Verjliiche ußsöke: Dun met dä Knöpp die zweij markiere,
+'histlegend' => 'Heh kanns De Versione för et Verjliiche ußsöke: Dun met dä Knöpp di zweij markiere,
zwesche dänne De de Ungerscheid jezeich krije wells, dann dröck „<b style="padding:2px; background-color:#ddd;
color:black">{{int:compareselectedversions}}</b>“ udder „<b style="padding:2px; background-color:#ddd;
color:black">{{int:visualcomparison}}</b>“ udder „<b style="padding:2px; background-color:#ddd;
-color:black">{{int:wikicodecomparison}}</b>â\80\9c met Dinge Taste, oder klick op ein vun dä Knöpp üvver oder unger de Liss.<br />
+color:black">{{int:wikicodecomparison}}</b>â\80\9c met Dinge Taste, oder klick op ein vun dä Knöpp övver oder unger de Liss.<br />
Verklierung:
({{int:cur}}) = donn met de neuste Version verjliche,
({{int:last}}) = donn met de Version ein doför verjliche,
'searchmenu-legend' => 'Enschtällonge för et Söhke',
'searchmenu-exists' => "*Sigg '''[[$1]]'''",
'searchmenu-new' => "'''Donn de Sigg „[[:$1|$1]]“ hee em Wiki aanlääje'''",
-'searchhelp-url' => 'Help:Hölp',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Zeich all Sigge, di met däm Tex aanfange]]',
'searchprofile-articles' => 'Sigge vum Enhalt',
'searchprofile-project' => 'Hülp- ov Projäk-Sigge',
'powersearch-toggleall' => 'Övverall Höhksche draan maache',
'powersearch-togglenone' => 'All Höhksche fott nämme',
'search-external' => 'Söke fun Ußerhallef',
-'searchdisabled' => 'Dat Söke hee {{GRAMMAR:en|{{SITENAME}}}} es em Momang avjeschalt.
+'searchdisabled' => 'Dat Söhke hee {{GRAMMAR:en|{{SITENAME}}}} es em Momang avjeschalt.
Dat weed op dänne ẞööver ad ens jemaat, domet de Lass op inne nit ze jroß weed,
-un winnichstens dat normale Sigge Oprofe flöck jenoch jeiht.
+un winnischsdens dat normale Sigge Oprofe flöck jenoch jeiht.
-Ehr künnt esu lang üvver en Sökmaschin vun usserhalv immer noch
-Sigge us {{GRAMMAR:Dative|{{SITENAME}}}} finge.
+Ehr künnt esu lang övver en Söhkmaschin vun usserhalv emmer noch
+Sigge us {{GRAMMAR:Dative|{{ucfirst:{{SITENAME}}}}}} finge.
Et es nit jesaht,
-dat dänne ihr Daate topaktuell sin,
-ävver et es besser wie jaa_nix.',
+dat dänne ehr Daate topaktoell sin,
+ävver et es bäßer wi jaa_nix.',
'search-error' => 'An error has occurred while searching: $1',
# Preferences page
'timezoneuseoffset' => 'Söns jet, jiff dä Ungerscheid aan',
'timezoneoffset' => 'Dä Ungerscheid¹ es:',
'servertime' => 'De Uhrzigg om ẞööver es jetz:',
-'guesstimezone' => 'Fingk et erus üvver dä Brauser',
+'guesstimezone' => 'Vum Brauser övvernämme',
'timezoneregion-africa' => 'Affrikka',
'timezoneregion-america' => 'Ammerrika',
'timezoneregion-antarctica' => 'Der Södpool',
'userrights-changeable-col' => '{{PLURAL:$1:Di Jropp|Jroppe|kein Jropp doh}}, di De ändere kanns',
'userrights-unchangeable-col' => '{{PLURAL:$1:Di Jropp|Jroppe|kein Jropp doh}}, di De nit ändere kanns',
'userrights-irreversible-marker' => '$1 *',
+'userrights-conflict' => 'Ene Andere hät di Rääschde ald verändert. Loor, wad_eruß kohm un versöhg_et norr-ens, wann nüüdesch.',
# Groups
'group' => 'Jrupp:',
# User rights log
'rightslog' => 'Logboch för Änderunge aan Metmaacher-Räächde',
-'rightslogtext' => 'Hee sin de Änderunge an Metmaacher ehre Räächde opjeliss. Op de Sigge üvver Metmaacher, Wiki-Köbesse, Bürrokrade, Stewards, un esu, kanns De nohlese, wat domet es.',
+'rightslogtext' => 'Heh sen de Änderonge an de Metmaacher ehre Räächde opjeleß.',
# Associated actions - in the sentence "You do not have permission to X"
'action-read' => 'di Sigg ze lesse',
'filedelete-maintenance-title' => 'Di Dattei künne mer nit fottschmiiße',
# MIME search
-'mimesearch' => 'Dateie üvver dänne ehre <span lang="en">MIME</span>-Typ söke',
+'mimesearch' => 'Dateije övver dänne ehre <span lang="en">MIME</span>-Tüp söhke',
'mimesearch-summary' => 'Op hee dä {{int:nstab-special}} könne de Dateie noh em <i lang="en">MIME</i>-Tüpp ußjesöök wäde.
Mer moß immer der Medietüp un der Ongertüp aanjevve.
Zem Beispell: <code lang="en">image/jpeg</code>
'notvisiblerev' => 'Di Version es fottjeschmesse',
'watchnochange' => 'Keine Atikkel en Dinger Oppassliss es en dä aanjezeichte Zick verändert woode.',
'watchlist-details' => 'Do häs {{PLURAL:$1|<strong>ein</strong> Sigg|<strong>$1</strong> Sigge|<strong>kein</strong> Sigg}} en dä Oppassliss{{PLURAL:$1|, un di Klaafsigg dozo|, un de Klaafsigge dozo|}}.',
-'wlheader-enotif' => '* Et E-mail Schecke es enjeschalt.',
-'wlheader-showupdated' => '* Wann se Einer jeändert hätt, zickdäm De se et letzte Mol aanjeluurt häs, sin die Sigge <strong>extra markeet</strong>.',
+'wlheader-enotif' => 'Et <i lang="en">e-mail</i> Schecke es enjeschalt.',
+'wlheader-showupdated' => 'Wann se Einer jeändert hätt, zickdäm De se et letzte Mol aanjeluurt häs, sin die Sigge <strong>extra markeet</strong>.',
'watchmethod-recent' => 'Ben de letzte Änderunge jäje de Oppassliss am pröfe',
'watchmethod-list' => 'Ben de Oppassliss am pröfe, noh de letzte Änderung',
'watchlistcontains' => 'En dä Oppassliss {{PLURAL:$1|es ein Sigg|sinner <strong>$1</strong> Sigge|sinner <strong>kein</strong> Sigge}}.',
# Export
'export' => 'Sigge Exporteere',
-'exporttext' => "Heh exportees De dä Tex un de Eijeschaffte vun ener Sigg, oder vun enem Knubbel Sigge, de aktuelle Version, met oder ohne ehr ählere Versione.
+'exporttext' => 'Heh exportees De dä Tex un de Eijeschaffte vun ener Sigg, oder vun enem Knubbel Sigge, de aktuelle Version, met oder ohne ehr ählere Versione.
Dat Janze es enjepack en XML.
-Dat ka'mer en en ander Wiki — wann et och met dä MediaWiki-Soffwär läuf — üvver de Sigg „[[Special:Import|Import]]“ do widder importeere.
+Dat kam_mer en en ander Wiki — wann et och met dä MediaWiki-Soffwär läuf — övver de Sigg „[[Special:Import|Import]]“ do widder empoteere.
Schriev de Titele vun dä Sigge en dat Feld för Tex enzejevve, unge, eine Titel en jede Reih.
Dann dun onoch ussöke, ov De all de vörherije Versione vun dä Sigge han wells, oder nor de aktuelle met dä Informatione vun de letzte Änderung.
-En däm Fall künns De, för en einzelne Sigg, och ene tirekte Link bruche, zom Beispill „[[{{#Special:Export}}/{{MediaWiki:Mainpage}}]]“ för de Sigg „[[{{MediaWiki:Mainpage}}]]“ ze exporteere.",
+En däm Fall künns De, för en einzelne Sigg, och ene tirekte Link bruche, zom Beispill „[[{{#Special:Export}}/{{MediaWiki:Mainpage}}]]“ för de Sigg „[[{{MediaWiki:Mainpage}}]]“ ze exporteere.',
'exportall' => 'Alle Sigge Äxpotteere',
'exportcuronly' => 'Bloß de aktuelle Version usjevve (un <strong>nit</strong> de janze ahle Versione onoch met dobei dun)',
'exportnohistory' => '----
'thumbnail-more' => 'Jrößer aanzeije',
'filemissing' => 'Datei es nit do',
'thumbnail_error' => 'Ene Fähler es opjetauch beim Maache vun enem Breefmarke/Thumbnail-Beldche: „$1“',
+'thumbnail_error_remote' => 'Ene Fähler es em $1 opjevalle:
+$2',
'djvu_page_error' => 'De DjVu-Sgg es ußerhallef',
'djvu_no_xml' => 'De XML-Date för di DjVu-Datei kunnte mer nit afrofe',
'thumbnail-temp-create' => 'Mer kunnte kein Zweschedattei für Minnibeldscher aanlääje.',
'import-interwiki-submit' => 'Huhlade!',
'import-interwiki-namespace' => 'Dun de Sigge emporteere en dat Appachtemeng:',
'import-interwiki-rootpage' => 'De Aanfangssigg (kann läddesch bliive):',
-'import-upload-filename' => 'Dä Name fun dä Datei:',
+'import-upload-filename' => 'Dä Name fun dä Dattei:',
'import-comment' => 'Jrond:',
'importtext' => 'Dun de Daate met däm „[[Special:Export|Export]]“ vun doh vun enem Wiki Exporteere un - etwa bei Dir om Rechner - avspeichere, un dann heh wider huhlade.',
'importstart' => 'Ben Sigge am emporteere …',
'tooltip-t-recentchangeslinked' => 'De neuste Änderunge aan Sigge, wo vun heh dä Sigg uß Links drop jon',
'tooltip-feed-rss' => 'Dä RSS-Abonnomang-Kannal (Feed) för heh di Sigg',
'tooltip-feed-atom' => 'Dä Atom-Abonnomang-Kannal (Feed) för heh di Sigg',
-'tooltip-t-contributions' => 'Donn de Liß met Bedträch vun däm Metmaacher beloore',
+'tooltip-t-contributions' => 'Donn en Leß met dä Bedrähsch vun däm Medmaacher belooere',
'tooltip-t-emailuser' => 'Scheck en E-Mail aan dä Metmaacher',
'tooltip-t-upload' => 'Dateie huhlade',
'tooltip-t-specialpages' => 'Liss met de {{int:nstab-special}}e',
'tooltip-ca-nstab-media' => 'Don de Sigg övver en Mediendatei aanzeije',
'tooltip-ca-nstab-special' => "Dat is en {{int:nstab-special}}. Do kam'mer nix draan verändere.",
'tooltip-ca-nstab-project' => 'Dun die Projeksigg aanzeije',
-'tooltip-ca-nstab-image' => 'Dun die Sigg üvver heh di Dattei aanzeije',
+'tooltip-ca-nstab-image' => 'Don di Sigg övver heh di Dattei aanzeije',
'tooltip-ca-nstab-mediawiki' => 'En Täx vum MediaWiki-System aanzeije',
'tooltip-ca-nstab-template' => 'Dun die Schabloon aanzeije',
'tooltip-ca-nstab-help' => 'Donn en Sigg met Hölp aanzeije',
'tooltip-rollback' => 'Nemmp alle Änderunge zeröck, di dä Läzde jemaat hät, dä aan dä Sigg övverhoup jet jedonn hät. Deit nimmieh frore un määd ene automattesche Endraach en „{{int:Summary}}“',
'tooltip-undo' => '„{{UCfirst:{{int:editundo}}}}“ määt der förije Zostand
fun dä Sigg op, zom Beärbeide un widder Afspeichere.
-Esu kam_mer noch en Aanmerkung en „{{int:summary}}“ maache.',
+Esu kam_mer noch en Aanmärkong en „{{int:summary}}“ maache.',
'tooltip-preferences-save' => 'Enstellunge faßhallde',
'tooltip-summary' => 'Jif en koote Zesammefassung en',
'modern.css' => '/* CSS heh aan dä Stell wirrek nur op de Ovverflääsch „Modern“ */',
'vector.css' => '/* CSS heh aan dä Stell wirrek nur op de Ovverflääsch „Vector“ */',
'print.css' => '/* CSS heh aan dä Stell wirrek nur op et Sigge Drökke */',
-'handheld.css' => '/* dat CSS hee wirrek sesch uß op su jeannte Handheld-Apparaate, opjebout op de Ovverflääsch uß $wgHandheldStyle */',
'noscript.css' => '/* Dat CSS heh aan dä Stell krijje nur de Metmaacher met affjeschaldt JavaSkrepp jescheck */',
'group-autoconfirmed.css' => '/* Dat CSS heh aan dä Stell krijje nur de automattesch beshtääteshte Metmacher jescheck */',
'group-bot.css' => '/* Dat CSS heh aan dä Stell krijje nur de Bot-Projrammee jescheck */',
'others' => 'ander',
'siteusers' => '{{PLURAL:$2|däm|de|keine}} {{PLURAL:$2|Metmaacher|Metmaachere|Metmaacher}} $1 aan {{GRAMMAR:Dat|{{SITENAME}}}}',
'anonusers' => '{{PLURAL:$2|dä|de|keine}} nameloose Metmaacher $1 vun de translatewiki.net',
-'creditspage' => 'Ã\9cvver de Metmaacher un ehre Beidräch för heh die Sigg',
+'creditspage' => 'Ã\96vver de Metmaacher un dänne ehr Beidräsch för heh di Sigg',
'nocredits' => "För die Sigg ha'mer nix en de Liss.",
# Spam protection
'mediawarning' => '<strong>Opjepass</strong>: En dä Datei künnt en <b>jefährlich Projrammstöck</b> dren stecke. Wa\'mer et laufe looße dät, do künnt dä ẞööver, udder Dinge Rääschner, met för de <i lang="en">Cracker</i> opjemaht wääde.',
'imagemaxsize' => "Belder nit jrößer maache wie:<br /> ''(op dä Sigge, wo se beschrevve wääde)''",
'thumbsize' => 'Esu breid solle de klein Beldche (Thumbnails/Breefmarke) sin:',
+'widthheight' => '$1 × $2',
'widthheightpage' => '{{PLURAL:$1|Ei Pixel|$1 Pixelle}} breed × {{PLURAL:$2|Ei Pixel|$2 Pixelle}} huh, {{PLURAL:$3|eij Sigg|$3 Sigge|keij Sigge}}',
'file-info' => 'Dateiömfang: $1, MIME-Tüp: <code>$2</code>',
'file-info-size' => '{{PLURAL:$1|Ei Pixel|$1 Pixelle}} breed × {{PLURAL:$2|Ei Pixel|$2 Pixelle}} huh, de Datei hät $3, dä MIME-Typ es: <code>$4</code>',
'sp-newimages-showfrom' => 'Zeich de neu Dateie av däm $1 öm $2 Uhr',
# Video information, used by Language::formatTimePeriod() to format lengths in the above messages
+'video-dims' => '$1, $2 × $3',
'seconds-abbrev' => '$1 Sek.',
'minutes-abbrev' => '$1 Min.',
'hours-abbrev' => '$1 Std.',
+'days-abbrev' => '$1 d',
'seconds' => '{{PLURAL:$1|eine Sekund|$1 Sekunde|keine Sekund}}',
'minutes' => '{{PLURAL:$1|eine Menutt|$1 Menutte|keine Menutt}}',
'hours' => '{{PLURAL:$1|ein Schtundt|$1 Schtunde|kein Schtundt}}',
'days' => '{{PLURAL:$1|einem Daach|$1 Dääsch|keinem Daach}}',
+'weeks' => '{{PLURAL:$1|ein Woch|$1 Woche|keine Woch}}',
'months' => '{{PLURAL:$1|Eine Monhnd|$1 Mohnde|Keine Monhnd}}',
'years' => '{{PLURAL:$1|Ein Jonhr|$1 Johre|Kei Jonhr}}',
'ago' => 'vür $1',
'just-now' => 'jraad äävens',
+# Human-readable timestamps
+'hours-ago' => 'för {{PLURAL:$1|ein Stund|$1 Stunde|keine Stund}}',
+'minutes-ago' => 'för {{PLURAL:$1|eine Menott|$1 Menotte|keine Menott}}',
+'seconds-ago' => 'för {{PLURAL:$1|eine Sekond|$1 Sekonde|keine Sekond}}',
+'monday-at' => 'Läzde Moondaach öm $1 Uhr',
+'tuesday-at' => 'Läzde Dinnsdaach öm $1 Uhr',
+'wednesday-at' => 'Läzde Medwoch öm $1 Uhr',
+'thursday-at' => 'Läzde Donnersdaach öm $1 Uhr',
+'friday-at' => 'Läzde Friidaach öm $1 Uhr',
+'saturday-at' => 'Läzde Samsdaach öm $1 Uhr',
+'sunday-at' => 'Läzde Sundaach öm $1 Uhr',
+'yesterday-at' => 'Jästere öm $1 Uhr',
+
# Bad image list
'bad_image_list' => '<strong>Fomat:</strong>
Nur Reije met ennem * am Aanfang don jet.
# External editor support
'edit-externally' => 'Dun de Datei met enem externe Projramm bei Dr om Rechner bearbeide',
-'edit-externally-help' => '(Luur en de [//www.mediawiki.org/wiki/Manual:External_editors Installationsaanweisunge] noh mieh Hinwies)',
+'edit-externally-help' => '(Luur en de [//www.mediawiki.org/wiki/Manual:External_editors Aanleidong för de Enschtallazjuhn] noh mieh Henwiese)',
# 'all' in various places, this might be different for inflected languages
'watchlistall2' => 'all',
'autosumm-new' => 'De Sigg wood neu aanjelaat met däm Aanfang: $1',
# Size units
-'size-bytes' => '$1 Bytes',
-'size-kilobytes' => '$1 KB',
-'size-megabytes' => '$1 MB',
-'size-gigabytes' => '$1 GB',
+'size-bytes' => '$1 Bytes',
+'size-kilobytes' => '$1 KB',
+'size-megabytes' => '$1 MB',
+'size-gigabytes' => '$1 GB',
+'size-terabytes' => '$1 TB',
+'size-petabytes' => '$1 PB',
+'size-exabytes' => '$1 EB',
+'size-zetabytes' => '$1 ZB',
+'size-yottabytes' => '$1 YB',
# Bitrate units
'bitrate-bits' => '$1&nbps;bps',
'version-entrypoints-header-entrypoint' => 'Enschteesch',
'version-entrypoints-header-url' => '<i lang="en">URL</i>',
+# Special:Redirect
+'redirect' => 'Ömleite op en Dattei, ene Metmaacher udder de Väsjohn vun ener Sigg',
+'redirect-legend' => 'Ömleide ob_en Dattei udder Sigg',
+'redirect-summary' => 'Heh di {{int:specialpage}} leidt öm ob_en Dattei — doh mößd_Er ene Nahme aanjävve — udder en Sigg — doh mößd_Er en Kännong för en Väsjoh aanjävve — udder en Metmaachersigg — doh mößd_Er enem Metmaacher sing Kännong aanjävve.',
+'redirect-submit' => 'Lohß Jonn!',
+'redirect-lookup' => 'Söhk noh:',
+'redirect-value' => 'Kännong udder Nahme:',
+'redirect-user' => 'Enem Metmaacher sing Kännong',
+'redirect-revision' => 'Ener Sigg ier Väsjohn ier Kännong',
+'redirect-file' => 'Ener Dattei iehre Nahme',
+'redirect-not-exists' => 'Nit jefonge',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Sök noh dubbelte Dateie',
'fileduplicatesearch-summary' => 'Söhhk noh dubbelte Dateie övver dänne iere Häsh-Zahl.',
'specialpages-group-pages' => 'Siggeliste',
'specialpages-group-pagetools' => 'Werrekzüch för Sigge',
'specialpages-group-wiki' => 'Werrekzüch un Daate vum Syßteem',
-'specialpages-group-redirects' => '{{int:nstab-special}}e, die ömleite, söke, un finge',
+'specialpages-group-redirects' => '{{int:nstab-special}}e, die ömleide, söhke, un fenge',
'specialpages-group-spam' => 'Werrekzüch jäje SPÄM',
# Special:BlankPage
'htmlform-selectorother-other' => 'Annder',
'htmlform-no' => 'Nää',
'htmlform-yes' => 'Joh',
+'htmlform-chosen-placeholder' => 'Söhk jäd_uß',
# SQLite database support
'sqlite-has-fts' => 'Version $1 (un kann en janze Täxte söhke)',
'tog-shownumberswatching' => 'Nîşan bide, çiqas bikarhêner dişopînin',
'tog-oldsig' => 'Pêşdîtina îmzeya heye:',
'tog-fancysig' => 'Di îmzeyê de girêdana otomatîk a bikarhêner betal bike',
-'tog-externaleditor' => 'Edîtorekî derve bike "standard" (ji yên bi ezmûn re, tercîhên taybet di komputerê de hewce ne)',
-'tog-externaldiff' => 'Birnemijekî derve biguherîne "standard" (ji yên bi ezmûn re, tercîhên taybet di komputerê de hewce ne)',
'tog-showjumplinks' => 'Girêdanên "Here-berve" qebûlbike',
'tog-uselivepreview' => 'Pêşdîtina "zindî" bi kar bîne (JavaScript pêwîst e) (ceribandinî)',
'tog-forceeditsummary' => 'Hinga kurteyeke vala hate tomarkirin min agahdar bike',
'disclaimers' => 'Ferexetname',
'disclaimerpage' => 'Project:Ferexetname',
'edithelp' => 'Alîkariya guherandinê',
-'edithelppage' => 'Help:Çawa rûpelekê biguherînim',
'helppage' => 'Help:Alîkarî',
'mainpage' => 'Destpêk',
'mainpage-description' => 'Destpêk',
Tu dikarî {{SITENAME}} niha weke bikarhênerekî nediyarkirî bikarbînî, yan jî tu dikarî dîsa bi vî navê xwe yan navekî din wek bikarhêner <span class='plainlinks'>[$1 dîsa têkevî]</span>.
Bila di bîra te de be ku gengaz e hin rûpel mîna ku tu hîn bi navê xwe qeyd kiriyî werin nîşandan, heta ku tu nîşanên çavlêgerandina (browser) xwe jênebî.",
+'welcomeuser' => 'Xêr hatî, $1!',
'yourname' => 'Navê bikarhêner:',
+'userlogin-yourname' => 'Navê bikarhêner',
+'userlogin-yourname-ph' => 'Navê xwe yê bikarhêneriyê binivîse',
'yourpassword' => 'Şîfre:',
+'userlogin-yourpassword' => 'Şîfre',
+'userlogin-yourpassword-ph' => 'Şîfreya xwe binivîse',
'yourpasswordagain' => 'Şîfreyê dîsa binivîse:',
'remembermypassword' => 'Şifreya min di her têketina min de bîne bîra xwe (herî zêde $1 {{PLURAL:$1|rojekê|rojan}})',
+'userlogin-remembermypassword' => 'Min têketî bihêle',
+'userlogin-signwithsecure' => 'Girêdana parastî bikarbîne',
'yourdomainname' => 'Domaînê te',
'externaldberror' => 'Çewtiyeke bingeha daneyan heye, an jî destûra te ya rojanekirina hesabê xweyê navxweyî nîne.',
'login' => 'Têkeve',
'logout' => 'Derkeve',
'userlogout' => 'Derkeve',
'notloggedin' => 'Xwe tomar nekir',
+'userlogin-noaccount' => 'Hesabekî te nîne?',
+'userlogin-joinproject' => 'Tevlî {{SITENAME}} bibe',
'nologin' => 'Hesabê te nîne? $1.',
'nologinlink' => 'Bibe endam',
'createaccount' => 'Hesabê nû çêke',
'gotaccount' => 'Hesabê te heye? $1.',
'gotaccountlink' => 'Têkeve',
'userlogin-resetlink' => 'Te agahiyên hesabê xwe ji bîr kirin?',
-'createaccountmail' => 'bi e-name',
+'userlogin-resetpassword-link' => 'Şîfreyê ji nû ve çêke',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Alîkariya têketinê]]',
+'createacct-emailrequired' => 'E-name',
+'createaccountmail' => 'Use a temporary random password and send it to the email address specified below',
'createaccountreason' => 'Sedem:',
+'createacct-reason' => 'Sedem',
+'createacct-submit' => 'Hesabê xwe biafirîne',
+'createacct-benefit-body2' => '{{PLURAL:$1|rûpel}}',
'badretype' => 'Her du şîfreyên ku te nivîsîn li hevdu nayên.',
'userexists' => 'Ev navî bikarhênerî berê tê bikaranîn. Xêra xwe navekî din bibe.',
'loginerror' => 'Çewtiya têketinê',
'log-fulllog' => 'Tevahiya wê bibîne',
'edit-conflict' => 'Têkçûna guherandinan.',
'edit-no-change' => 'Guherandina te nehate hesibandin, ji ber ku guherandinên nivîsê tune bûn.',
+'postedit-confirmation' => 'Guhertina te hate tomarkirin.',
'edit-already-exists' => 'Nikarî rûpeleka nuh çêke.
Ew berê heye.',
+# Content models
+'content-model-css' => 'CSS',
+
# "Undo" feature
'undo-success' => 'Ev guherandin dikare were şûndekirin. Ji kerema xwe ferqa piştî tomarkirinê bibîne, bê ka tu dixwazî vê guhertoyê tomar bikî an na. Ger te şaşîtiyek kir, ji kerema xwe derkeve.',
'undo-failure' => 'Ev guhertin ji ber guherandinên piştî wê re nikare were şûndekirin.',
'searchmenu-legend' => 'Vebijartinên lêgerrînê',
'searchmenu-exists' => "'''Rûpeleke bi navê \"[[:\$1]]\" li ser vê wîkiyê heye.'''",
'searchmenu-new' => 'Rûpela "[[:$1]]" çêke!',
-'searchhelp-url' => 'Help:Alîkarî',
'searchprofile-articles' => 'Rûpelên naverokê',
'searchprofile-project' => 'Rûpelên alîkariyê û projeyê',
'searchprofile-images' => 'Multîmedya',
'searchdisabled' => '<p>Tu dikarî li {{SITENAME}} bi Google an Yahoo! bigere. Têbînî: Dibe ku encamen lêgerîne ne yên herî nû ne.
</p>',
-# Quickbar
-'qbsettings-none' => 'Tune',
-
# Preferences page
'preferences' => 'Tercîhên min',
'mypreferences' => 'Tercihên min',
'prefs-rendering' => 'Rû',
'saveprefs' => 'Tercîhan tomar bike',
'resetprefs' => 'Guhertinên netomarkirî şûnde vegerîne',
+'restoreprefs' => 'Hemû eyarên berê ji nû ve ava bike',
'prefs-editing' => 'Guherandin',
'rows' => 'Rêz',
'columns' => 'Stûn:',
'prefs-files' => 'Dosya',
'prefs-emailconfirm-label' => 'Piştrastkirina E-nameyê:',
'youremail' => 'E-nameya te:',
-'username' => 'Navê bikarhêner:',
+'username' => '{{GENDER:$1|Navê bikarhêner}}:',
'uid' => 'Nasnameya bikarhêner:',
'prefs-memberingroups' => 'Endamê/a {{PLURAL:$1|komê|koman}}:',
'prefs-registration' => 'Dema xweqeydkirinê:',
'badsig' => 'Îmzeya ne derbasdar! Li HTML binêre ka sedema şaşbûnê çiye.',
'badsiglength' => 'Navê te zêde dirêj e; pêwîst e di bin {{PLURAL:$1|nîşanekê|nîşanan}} de be.',
'yourgender' => 'Zayend:',
+'gender-unknown' => 'Veşartî',
'gender-male' => 'Nêr',
'gender-female' => 'Mê',
'email' => 'E-name',
'prefs-help-realname' => 'Navê rastî ne pêwîst e. Heke tu navê xwe binivisî, ewê ji bo karê te were bikaranîn.',
-'prefs-help-email' => 'Adrêsa te yê e-nameyan ne gereke were nivîsandin, lê ew qebûldike, ku bikarhênerên din vê naskirinê te kanibin e-nameyan ji te ra bişînin.',
+'prefs-help-email' => 'Email address is optional, but is needed for password resets, should you forget your password.',
'prefs-help-email-required' => 'Navnîşana e-nameyê hewce ye.',
'prefs-info' => 'Agahiyên sereke',
+'prefs-i18n' => 'Navneteweyîkirin',
'prefs-signature' => 'Îmze',
'prefs-dateformat' => 'Formata dîrokê',
'prefs-advancedediting' => 'Vebijarkên berfireh',
'right-minoredit' => 'Guhertina biçûk e',
'right-move' => 'Rûpelan bigerîne',
'right-upload' => 'Dosyeyan lê bar bike',
+'right-autoconfirmed' => 'Rûpelên nîv-parastî biguherîne',
'right-delete' => 'Rûpelan jê bibe',
'right-browsearchive' => 'Li rûpelên jêbirî bigerre',
'right-undelete' => 'Jêbirinê betal bike',
'right-import' => 'Rûpelan ji wikiyên din împort bike',
'right-userrights' => 'Hemû mafên bikarhêner biguherîne',
+'right-userrights-interwiki' => 'Mafên bikarhênerên li ser wîkiyên din biguherîne',
'right-sendemail' => 'Ji bikarhênerên di re e-name bişîne',
# Special:Log/newusers
-'newuserlogpage' => 'çêkirina hesabê nû',
+'newuserlogpage' => 'Ã\87êkirina hesabê nû',
# User rights log
-'rightslog' => 'guhertina mafê bikarhêneriyê',
+'rightslog' => 'Guhertina mafê bikarhêneriyê',
'rightslogtext' => 'Ev guhertineke ji bo mafên bikarhêneriyê ye.',
# Associated actions - in the sentence "You do not have permission to X"
'action-browsearchive' => 'li rûpelên jêbirî bigere',
'action-undelete' => 'vê rûpelê dîsa çêke',
'action-userrights' => 'hemû mafên bikarhêneran biguherîne',
+'action-userrights-interwiki' => 'mafê bikarhênerên li ser wîkiyên din biguherîne',
'action-sendemail' => 'e-nameyan bişîne',
# Recent changes
'upload-preferred' => 'Cureyên pelan yên tên xwestin: $1.',
'upload-prohibited' => 'Cureyên pelan yên qedexekirî: $1.',
'uploadlog' => 'barkirina belgeyan',
-'uploadlogpage' => 'barkirina belgeyan',
+'uploadlogpage' => 'Barkirina belgeyan',
'filename' => 'Navê pelê',
'filedesc' => 'Danasîn',
'fileuploadsummary' => 'Kurte:',
'filehist-filesize' => 'Mezinahiya pelê',
'filehist-comment' => 'Şîrove',
'filehist-missing' => 'Pel nîne',
-'imagelinks' => 'Girêdanên vî wêneyî',
+'imagelinks' => 'File usage',
'linkstoimage' => 'Di van rûpelan de lînkek ji vî wêneyî re heye:',
'nolinkstoimage' => 'Rûpelekî ku ji vî wêneyî re girêdankê çêdike nîne.',
'linkstoimage-redirect' => '$1 (beralîkirina pelê) $2',
'nrevisions' => '$1 {{PLURAL:$1|guherandin|guherandin}}',
'nviews' => '$1 {{PLURAL:$1|dîtin|dîtin}}',
'lonelypages' => 'Rûpelên sêwî',
-'uncategorizedpages' => 'Rûpelên bê kategorî',
+'uncategorizedpages' => 'Rûpelên bêkategorî',
'uncategorizedcategories' => 'Kategoriyên bê kategorî',
'uncategorizedimages' => 'Wêneyên bê kategorî',
'uncategorizedtemplates' => 'Şablonên bê kategorî',
'listusers-noresult' => 'Bikarhêner nehate dîtin.',
'listusers-blocked' => '(hate astengkirin)',
+# Special:ActiveUsers
+'activeusers' => 'Lîsteya bikarhênerên çalak',
+'activeusers-hidebots' => "Bot'an veşêre",
+'activeusers-hidesysops' => 'Rêveberan veşêre',
+'activeusers-noresult' => 'Tu bikarhêner nehate dîtin.',
+
# Special:ListGroupRights
'listgrouprights' => 'Mafên koma bikarhêner',
'listgrouprights-group' => 'Kom',
'notanarticle' => 'Ne gotar e',
'watchnochange' => 'Ne rûpelek, yê tu dişopînê, hate xeyrandin di vê wextê da, yê tu dixazê bibînê.',
'watchlist-details' => '{{PLURAL:$1|Rûpeleka|$1 rûpel}} li ser lîsteya te ya şopandinê, rûpelên gotûbêjê nayên jimartin.',
-'wlheader-enotif' => '* Agahdariya E-nameyê pêk tê.',
-'wlheader-showupdated' => "* Ev rûpela hatî guhertin dema te lê meyzand bi '''nivîsa stûr''' tê xuyakirin.",
+'wlheader-enotif' => 'Agahdariya E-nameyê pêk tê.',
+'wlheader-showupdated' => "Ev rûpela hatî guhertin dema te lê meyzand bi '''nivîsa stûr''' tê xuyakirin.",
'watchlistcontains' => 'Di lîsteya şopandina te de {{PLURAL:$1|rûpelek heye|$1 rûpel hene}}.',
'wlnote' => "Niha {{PLURAL:$1|xeyrandinê|'''$1''' xeyrandinên}} dawî yê {{PLURAL:$2|seetê|'''$2''' seetên}} dawî {{PLURAL:$1|tê|tên}} dîtin.",
'wlshowlast' => 'Guhertinên berî $1 saetan, $2 rojan, ya $3 nîşan bide',
'actioncomplete' => 'Çalakî pêk hat',
'actionfailed' => 'Çalakî têkçû',
'deletedtext' => '"$1" hat jêbirin. Ji bo qeyda rûpelên ku di dema nêzîk de hatin jêbirin binêre $2.',
-'dellogpage' => 'jêbirina rûpelê',
+'dellogpage' => 'Jêbirina rûpelê',
'dellogpagetext' => 'Li jêr lîsteyek ji jêbirinên dawî heye.',
'deletionlog' => 'jêbirina rûpelê',
'reverted' => 'Hate şondabirin berve verzyonekî berê',
'delete-warning-toobig' => "Dîroka vê rûpelê pir mezin e, zêdetirî $1 guherandin. Jêbirina van rûpelan dikarin şaşbûnan di database'ê {{SITENAME}} da çêkin; zandibe tu çi dikê!",
# Rollback
-'rollback_short' => 'bizîvirîne pêş',
+'rollback_short' => 'Bizîvirîne pêş',
'rollbacklink' => 'bizîvirîne pêş',
'cantrollback' => 'Guherto naye vegerandin;
bikarhênerê dawî, tenya nivîskarê vê rûpelê ye.',
'sp-contributions-uploads' => 'yên barkirî',
'sp-contributions-logs' => 'têketin',
'sp-contributions-talk' => 'gotûbêj',
-'sp-contributions-userrights' => 'Ã\8edarekirina mafên bikarhêneran',
+'sp-contributions-userrights' => 'îdarekirina mafên bikarhêneran',
'sp-contributions-search' => 'Li beşdariyan bigere',
'sp-contributions-username' => "Adresa IP'yê yan navê bikarhêner:",
'sp-contributions-submit' => 'Lêgerîn',
'movepage-page-exists' => 'Rûpela $1 berê heye û ew nikane otomatîk were jêbirin.',
'movepage-page-moved' => 'Rûpela $1 çû cihê $2.',
'movepage-page-unmoved' => 'Rûpela $1 nikanî çûba ciha $2.',
-'movelogpage' => 'guhertina nav',
+'movelogpage' => 'Guhertina nav',
'movelogpagetext' => 'Li jêr lîsteyek ji rûpelan ku navê wan hatiye guherandin heye.',
'movenosubpage' => 'Binrûpelên vê rûpelê tune ne.',
'movereason' => 'Sedem',
'delete_and_move_confirm' => 'Erê, rûpelê jê bibe',
'delete_and_move_reason' => 'Jêbir ji bo navguherandinê',
'immobile-source-page' => 'Navê vê rûpelê nikare were guherandin.',
+'move-leave-redirect' => 'Beralîkirinekê bihêle',
# Export
'export' => 'Rûpelan eksport bike',
# Info page
'pageinfo-header-edits' => 'Guherandin',
+'pageinfo-header-restrictions' => 'Parastina rûpelê',
'pageinfo-views' => 'Hejmara dîtinê',
'pageinfo-watchers' => 'Hejmara kesên dişopînin',
+'pageinfo-subpages-name' => 'Binrûpelên vê rûpelê',
'pageinfo-edits' => 'Hejmara guherandinan',
'pageinfo-toolboxlink' => 'Agahiya rûpelê',
'pageinfo-redirectsto-info' => 'agahî',
'metadata-expand' => 'Detayên dirêj nîşan bide',
'metadata-collapse' => 'Detayên dirêj veşêre',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Panbûn',
'exif-imagelength' => 'Dirêjbûn',
'exif-jpeginterchangeformatlength' => "Byte'ên daneya JPEG",
'exif-languagecode' => 'Ziman',
'exif-iimcategory' => 'Kategorî',
'exif-label' => 'Etîket',
+'exif-copyrighted' => 'Rewşa telîfê',
'exif-disclaimer' => 'Ferexetname',
'exif-unknowndate' => 'Dîroka nayê zanîn',
# action=watch/unwatch
'confirm-watch-button' => 'Temam',
+'confirm-unwatch-button' => 'Baş e',
# Multipage image navigation
'imgmultipageprev' => '← rûpela berî vê',
'version-software-version' => 'Guherto',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath-page' => 'Wêne:',
-'filepath-submit' => 'Gotar',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Navê dosyeyê:',
'fileduplicatesearch-submit' => 'Lê bigere',
'feedback-subject' => 'Mijar:',
'feedback-message' => 'Peyam:',
'feedback-cancel' => 'Betal bike',
+'feedback-close' => 'Çêbû',
# Search suggestions
'searchsuggest-search' => 'Lêgerîn',
$namespaceNames = array(
NS_MEDIA => 'Media',
- NS_SPECIAL => 'Arbednek',
+ NS_SPECIAL => 'Arbennek',
NS_TALK => 'Keskows',
NS_USER => 'Devnydhyer',
NS_USER_TALK => 'Keskows_Devnydhyer',
);
$namespaceAliases = array(
- 'Arbennek' => NS_SPECIAL,
+ 'Arbednek' => NS_SPECIAL,
'Cows' => NS_TALK,
'Kescows' => NS_TALK,
'Cows_Devnydhyer' => NS_USER_TALK,
$messages = array(
# User preference toggles
'tog-underline' => 'Islinenna kevrennow:',
-'tog-hideminor' => 'Cudha chanjyow bian yn chanjyow a-dhiwedhes',
-'tog-showtoolbar' => 'Disqwedhes an toulvar chanjya (res yw JavaScript)',
-'tog-rememberpassword' => "Perthy cov a'm omgelmy war'n beurel-ma (rag $1 {{PLURAL:$1|dedh}} dhe'n moyha)",
+'tog-hideminor' => 'Kudha chanjyow byhan yn chanjyow a-dhiwedhes',
+'tog-hidepatrolled' => 'Kudha chanjyow patrolys yn chanjyow a-dhiwedhes',
+'tog-newpageshidepatrolled' => 'Kudha folennow patrolys dhyworth rol an folennow nowyth',
+'tog-extendwatchlist' => 'Efani an rol golya dhe dhiskwedhes pub chanj, a-dar an moyha a-dhiwedhes hepken',
+'tog-usenewrc' => "Bagasa chanjyow herwydh an folen yn chanjyow a-dhiwedhes hag y'n rol golya (res yw JavaScript)",
+'tog-numberheadings' => 'Awto-nivera pennlinennow',
+'tog-showtoolbar' => 'Diskwedhes an toulvar chanjya (res yw JavaScript)',
+'tog-editondblclick' => 'Chanjya folennow ow tobyl-glyckya (res yw JavaScript)',
+'tog-editsection' => 'Galosegi chanjya trehow der an kevrennow [chanjya]',
+'tog-editsectiononrightclick' => 'Galosegi chanjya trehow dre dhyhow-glyckya war ditlys an trehow (res yw JavaScript)',
+'tog-rememberpassword' => "Perthi kov a'm omgelmi war an beurel-ma (rag $1 {{PLURAL:$1|dydh}} dhe'n moyha)",
'tog-watchcreations' => "Keworra folennow gwruthys genev ha restrennow ughkergys genev dhe'm rol golyas",
'tog-watchdefault' => "Keworra folennow ha restrennow chanjys genev dhe'm rol golyas",
'tog-watchmoves' => "Keworra folennow ha restrennow gwayys genev dhe'm rol golyas",
'tog-watchdeletion' => "Keworra folennow ha restrennow dileys genev dhe'm rol golyas",
-'tog-minordefault' => 'Merkya pub chanj avel bian dre dhefowt',
-'tog-showjumplinks' => 'Galosegy kevrennow hedhadowder "lamma dhe"',
-'tog-watchlisthideown' => "Cudha ow chanjyow vy y'n rol golyas",
-'tog-watchlisthidebots' => "Cudha chanjyow gans bottow y'n rol golyas",
-'tog-watchlisthideminor' => "Cudha chanjyow bian y'n rol golyas",
-'tog-watchlisthideliu' => "Cudha chanjyow gans devnydhyoryon omgelmys y'n rol golyas",
-'tog-watchlisthideanons' => "Cudha chanjyow gans devnydhyoryon heb hanow y'n rol golyas",
-'tog-showhiddencats' => 'Disqwedhes classys cudhys',
-
-'underline-always' => 'Puppres',
+'tog-minordefault' => 'Merkya pub chanj avel byhan dre dhefowt',
+'tog-enotifwatchlistpages' => 'Danvon ebost dhymm pan vo chanjyes folen po restren eus war ow rol golya',
+'tog-enotifusertalkpages' => 'Danvon ebost dhymm pan vo chanjyes ow folen geskows',
+'tog-oldsig' => 'Sinans a-lemmyn:',
+'tog-fancysig' => 'Dyghtya an sinans avel wikitekst (heb kevren awtomatek)',
+'tog-showjumplinks' => 'Galosegi kevrennow hedhadowder "lamma dhe"',
+'tog-watchlisthideown' => "Kudha ow chanjyow y'n rol golya",
+'tog-watchlisthidebots' => "Kudha chanjyow gans bottow y'n rol golya",
+'tog-watchlisthideminor' => "Kudha chanjyow byhian y'n rol golya",
+'tog-watchlisthideliu' => "Kudha chanjyow gans devnydhyoryon omgelmys y'n rol golya",
+'tog-watchlisthideanons' => "Kudha chanjyow gans devnydhyoryon heb hanow y'n rol golya",
+'tog-ccmeonemails' => 'Danvon dhymm dasskrif a ebostow a dhanvonav dhe dhevnydhyoryon erel',
+'tog-showhiddencats' => 'Diskwedhes klassys kudhys',
+'tog-useeditwarning' => 'Gul ow gwarnya pan gyssiv folen janjya gans chanjyow nag yw gwithys',
+
+'underline-always' => 'Pub prys',
'underline-never' => 'Jammes',
'underline-default' => 'Defowt an beurel po an grohen',
'editfont-serif' => 'Font serif',
# Dates
-'sunday' => "De'Sul",
-'monday' => "De'Lun",
-'tuesday' => "De'Meurth",
-'wednesday' => "De'Merher",
-'thursday' => "De'Yow",
-'friday' => "De'Gwener",
-'saturday' => "De'Sadorn",
+'sunday' => "Dy'Sul",
+'monday' => "Dy'Lun",
+'tuesday' => "Dy'Meurth",
+'wednesday' => "Dy'Merher",
+'thursday' => "Dy'Yow",
+'friday' => "Dy'Gwener",
+'saturday' => "Dy'Sadorn",
'sun' => 'Sul',
'mon' => 'Lun',
'tue' => 'Meu',
'fri' => 'Gwe',
'sat' => 'Sad',
'january' => 'Genver',
-'february' => 'Whevrel',
+'february' => 'Hwevrel',
'march' => 'Meurth',
'april' => 'Ebrel',
'may_long' => 'Me',
'november' => 'Du',
'december' => 'Kevardhu',
'january-gen' => 'Genver',
-'february-gen' => 'Whevrel',
+'february-gen' => 'Hwevrel',
'march-gen' => 'Meurth',
'april-gen' => 'Ebrel',
'may-gen' => 'Me',
'november-gen' => 'Du',
'december-gen' => 'Kevardhu',
'jan' => 'Gen',
-'feb' => 'Whe',
+'feb' => 'Hwe',
'mar' => 'Meu',
'apr' => 'Ebr',
'may' => 'Me',
'oct' => 'Hed',
'nov' => 'Du',
'dec' => 'Kev',
+'january-date' => '$1 Genver',
+'february-date' => '$1 Hwevrel',
+'march-date' => '$1 Meurth',
+'april-date' => '$1 Ebrel',
+'may-date' => '$1 Me',
+'june-date' => '$1 Metheven',
+'july-date' => '$1 Gortheren',
+'august-date' => '$1 Est',
+'september-date' => '$1 Gwynngala',
+'october-date' => '$1 Hedra',
+'november-date' => '$1 Du',
+'december-date' => '$1 Kevardhu',
# Categories related messages
-'pagecategories' => '{{PLURAL:$1|Class|Classys}}',
-'category_header' => 'Folennow y\'n class "$1"',
+'pagecategories' => '{{PLURAL:$1|Klass|Klassys}}',
+'category_header' => 'Folennow y\'n klass "$1"',
'subcategories' => 'Isglassys',
-'category-media-header' => 'Media y\'n class "$1"',
+'category-media-header' => 'Media y\'n klass "$1"',
'category-empty' => "''Nyns eus na folennow na media y'n class-ma.''",
-'hidden-categories' => '{{PLURAL:$1|Class cudhys|Classys cudhys}}',
-'hidden-category-category' => 'Classys cudhys',
-'category-subcat-count' => "{{PLURAL:$2|Nyns eus dhe'n class-ma marnas an isglass a sew.|Yma dhe'n class-ma an {{PLURAL:$1|isglass|$1 isglass}} a sew, dhyworth somm a $2.}}",
-'category-subcat-count-limited' => "Yma dhe'n class-ma an {{PLURAL:$1|isglass|$1 isglass}} a sew.",
-'category-article-count' => "{{PLURAL:$2|Nyns eus dhe'n class-ma marnas an folen a sew.|Yma'n {{PLURAL:$1|folen|$1 folennow}} a sew y'n class-ma, dhyworth somm a $2.}}",
-'category-article-count-limited' => "Yma'n {{PLURAL:$1|folen|$1 folen}} a sew y'n class-ma.",
-'category-file-count' => "{{PLURAL:$2|Nyns eus dhe'n class-ma an folen a sew.|Yma'n {{PLURAL:$1|folen|$1 folen}} a sew y'n class-ma, dhyworth somm a $2.}}",
-'category-file-count-limited' => "Yma'n {{PLURAL:$1|folen|$1 folen}} a sew y'n class-ma.",
+'hidden-categories' => '{{PLURAL:$1|Klass kudhys|Klassys kudhys}}',
+'hidden-category-category' => 'Klassys kudhys',
+'category-subcat-count' => "{{PLURAL:$2|Ny'n jeves an klass-ma marnas an isglass a syw.|An klass-ma a'n jeves an {{PLURAL:$1|isglass|$1 isglass}} a syw, dhyworth somm a $2.}}",
+'category-subcat-count-limited' => "An klass-ma a'n jeves an {{PLURAL:$1|isglass|$1 isglass}} a syw.",
+'category-article-count' => "{{PLURAL:$2|Ny'n jeves an klass-ma marnas an folen a syw.|Yma an {{PLURAL:$1|folen|$1 folennow}} a syw y'n klass-ma, dhyworth somm a $2.}}",
+'category-article-count-limited' => "Yma an {{PLURAL:$1|folen|$1 folen}} a syw y'n klass-ma.",
+'category-file-count' => "{{PLURAL:$2|Ny'n jeves an klass-ma marnas an restren a syw.|Yma an {{PLURAL:$1|restren|$1 restren}} a syw y'n klass-ma, dhyworth somm a $2.}}",
+'category-file-count-limited' => "Yma an {{PLURAL:$1|folen|$1 folen}} a syw y'n klass-ma.",
'listingcontinuesabbrev' => 'pes.',
'about' => 'A-dro dhe',
-'newwindow' => '(y whra egery yn fenester noweth)',
-'cancel' => 'Hedhy',
+'article' => 'Folen dhalgh',
+'newwindow' => '(ygeri yn fenester nowyth)',
+'cancel' => 'Hedhi',
'moredotdotdot' => 'Moy...',
'mypage' => 'Folen',
-'mytalk' => 'Kescows',
-'anontalk' => 'Kescows rag an drigva IP-ma',
-'navigation' => 'Lewyans',
+'mytalk' => 'Keskows',
+'anontalk' => 'Keskows rag an drigva IP-ma',
+'navigation' => 'Kevrennow lewya',
'and' => ' ha(g)',
# Cologne Blue skin
-'qbfind' => 'Cavos',
-'qbbrowse' => 'Peury',
+'qbfind' => 'Kavos',
+'qbbrowse' => 'Peuri',
'qbedit' => 'Chanjya',
'qbpageoptions' => 'An folen-ma',
'qbmyoptions' => 'Ow folennow',
'vector-action-unprotect' => 'Chanjya difresans',
'vector-view-create' => 'Gwruthyl',
'vector-view-edit' => 'Chanjya',
-'vector-view-history' => 'Gweles an istory',
+'vector-view-history' => 'Gweles an istori',
'vector-view-view' => 'Redya',
'vector-view-viewsource' => 'Gweles an bennfenten',
'actions' => 'Gwriansow',
'namespaces' => 'Spasys hanow',
-'variants' => 'Dyffransow',
+'variants' => 'Variennow',
-'navigation-heading' => 'Rol lewyans',
+'navigation-heading' => 'Rol lewya',
'errorpagetitle' => 'Gwall',
-'returnto' => 'Dewheles dhe $1.',
+'returnto' => 'Dehweles dhe $1.',
'tagline' => 'Dhyworth {{SITENAME}}',
'help' => 'Gweres',
-'search' => 'Whilas',
-'searchbutton' => 'Whilas',
-'go' => 'Ke',
+'search' => 'Hwilas',
+'searchbutton' => 'Hwilas',
+'go' => 'Mos',
'searcharticle' => 'Mos',
-'history' => 'Istory an folen',
-'history_short' => 'Istory',
-'updatedmarker' => 'nowedhys a-ban ow vysytyans diwettha',
+'history' => 'Istori an folen',
+'history_short' => 'Istori',
+'updatedmarker' => 'nowedhys a-dhia ow vysytyans diwettha',
'printableversion' => 'Versyon pryntyadow',
'permalink' => 'Kevren fast',
'print' => 'Pryntya',
'create-this-page' => 'Gwruthyl an folen-ma',
'delete' => 'Dilea',
'deletethispage' => 'Dilea an folen-ma',
+'undeletethispage' => 'Diswul dilea an folen-ma',
'undelete_short' => 'Disdhilea {{PLURAL:$1|unn janj|$1 chanj}}',
'viewdeleted_short' => 'Gweles {{PLURAL:$1|unn janj diles|$1 chanj diles}}',
'protect' => 'Difres',
'protectthispage' => 'Difres an folen-ma',
'unprotect' => 'Chanjya difresans',
'unprotectthispage' => 'Chanjya difresans an folen-ma',
-'newpage' => 'Folen noweth',
-'talkpage' => "Dadhelva a-dro dhe'n folen-ma",
-'talkpagelinktext' => 'Kescows',
+'newpage' => 'Folen nowyth',
+'talkpage' => "Dadhlow a'n folen-ma",
+'talkpagelinktext' => 'Keskows',
'specialpage' => 'Folen arbennek',
'personaltools' => 'Toulys personel',
-'postcomment' => 'Rann noweth',
+'postcomment' => 'Tregh nowyth',
'articlepage' => 'Gweles an folen',
-'talk' => 'Kescows',
-'views' => 'Gwelow',
-'toolbox' => 'Box toulys',
-'userpage' => 'Folen devnydhyer',
-'projectpage' => 'Folen meta',
+'talk' => 'Keskows',
+'views' => 'Gwelyansow',
+'toolbox' => 'Toulgist',
+'userpage' => 'Gweles an folen dhevnydhyer',
+'projectpage' => 'Gweles folen an ragdres',
'imagepage' => 'Gweles folen an restren',
'mediawikipage' => 'Gweles folen an messajys',
-'templatepage' => 'Gweles folen an scantlyn',
-'viewhelppage' => 'Gweles an folen gweres',
-'categorypage' => 'Gweles folen an class',
-'viewtalkpage' => 'Gweles an kescows',
+'templatepage' => 'Gweles folen an skantlyn',
+'viewhelppage' => 'Gweles an folen weres',
+'categorypage' => 'Gweles folen an klass',
+'viewtalkpage' => 'Gweles an dadhlow',
'otherlanguages' => 'Yn yethow erel',
-'redirectedfrom' => '(Daswedyes dhyworth $1)',
-'redirectpagesub' => 'Folen daswedyans',
-'lastmodifiedat' => 'An folen-ma a veu chanjys an $1, dhe $2.',
+'redirectedfrom' => '(Daskedyes dhyworth $1)',
+'redirectpagesub' => 'Folen dhaskedya',
+'lastmodifiedat' => 'Diwettha chanj an folen-ma o an $1, dhe $2.',
'protectedpage' => 'Folen dhifresys',
'jumpto' => 'Lamma dhe:',
-'jumptonavigation' => 'lewyans',
-'jumptosearch' => 'whilas',
-'view-pool-error' => 'Drog yw genen, gorgargys yw an servyers orth an termyn-ma.
+'jumptonavigation' => 'kevrennow lewya',
+'jumptosearch' => 'hwilas',
+'view-pool-error' => 'Drog yw genen, gorgergys yw an servyers orth an termyn-ma.
Yma re a dhevnydhyoryon owth assaya gweles an folen-ma.
-Gortowgh pols kens why dhe assaya hedhes an folen-ma arta, mar pleg.
+Gortewgh pols kyns hwi dhe assaya hedhas an folen-ma arta, mar pleg.
$1',
-'pool-errorunknown' => 'Gwall ancoth',
+'pool-errorunknown' => 'Gwall ankoth',
# 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) and the disambiguation template definition (see disambiguations).
'aboutsite' => 'A-dro dhe {{SITENAME}}',
'aboutpage' => 'Project:Kedhlow',
-'copyright' => 'Cavadow yw an dalgh yn-dann $1.',
+'copyright' => 'Kavadow yw an dalgh yn-dann $1.',
'copyrightpage' => '{{ns:project}}:Gwirbryntyansow',
-'currentevents' => 'Darvosow a-lemmyn',
-'currentevents-url' => 'Project:Darvosow a-lemmyn',
+'currentevents' => 'Hwarvosow a-lemmyn',
+'currentevents-url' => 'Project:Hwarvosow a-lemmyn',
'disclaimers' => 'Avisyansow',
'disclaimerpage' => 'Project:Avisyans ollgemmyn',
'edithelp' => 'Gweres gans chanjya',
-'edithelppage' => 'Help:Chanjya',
'helppage' => 'Help:Gweres',
-'mainpage' => 'Folen dre',
-'mainpage-description' => 'Folen dre',
-'policy-url' => 'Project:Policy',
+'mainpage' => 'Dynnargh',
+'mainpage-description' => 'Dynnargh',
+'policy-url' => 'Project:Polici',
'portal' => 'Porth an gemeneth',
'portal-url' => 'Project:Porth an gemeneth',
-'privacy' => 'Policy privetter',
-'privacypage' => 'Project:Policy privetter',
+'privacy' => 'Polici privetter',
+'privacypage' => 'Project:Polici privetter',
-'badaccess' => 'Gwall cummyes',
+'badaccess' => 'Gwall kummyes',
'ok' => 'Sur',
'retrievedfrom' => 'Daskevys dhyworth "$1"',
-'youhavenewmessages' => 'Yma $1 genowgh ($2).',
-'newmessageslink' => 'messajys noweth',
+'youhavenewmessages' => "$1 a'gas beus ($2).",
+'newmessageslink' => 'Messajys nowyth',
'newmessagesdifflink' => 'chanj diwettha',
-'youhavenewmessagesfromusers' => 'Yma $1 dhywgh dhyworth {{PLURAL:$3|devnydhyer aral|$3 devnydhyer}} ($2).',
-'youhavenewmessagesmanyusers' => 'Yma $1 dhywgh dhyworth lies devnydhyer ($2).',
-'newmessageslinkplural' => '{{PLURAL:$1|messach noweth}}',
-'newmessagesdifflinkplural' => '{{PLURAL:$1|chanj diwettha}}',
-'youhavenewmessagesmulti' => 'Yma messajys noweth genowgh war $1',
+'youhavenewmessagesfromusers' => "Hwi a'gas beus $1 dhyworth {{PLURAL:$3|devnydhyer aral|$3 devnydhyer}} ($2).",
+'youhavenewmessagesmanyusers' => "Hwi a'gas beus $1 dhyworth lies devnydhyer ($2).",
+'newmessageslinkplural' => '{{PLURAL:$1|messach nowyth|messajys nowyth}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|chanj|chanjyow}} diwettha',
+'youhavenewmessagesmulti' => "Messajys nowyth a'gas beus war $1",
'editsection' => 'chanjya',
'editold' => 'chanjya',
'viewsourceold' => 'gweles an bennfenten',
'editlink' => 'chanjya',
'viewsourcelink' => 'gweles an bennfenten',
-'editsectionhint' => 'Chanjya an rann: $1',
+'editsectionhint' => 'Chanjya an tregh: $1',
'toc' => 'Rol an folen',
-'showtoc' => 'disqwedhes',
-'hidetoc' => 'cudha',
-'collapsible-expand' => 'Efany',
-'thisisdeleted' => 'Gweles po restorya $1?',
+'showtoc' => 'diskwedhes',
+'hidetoc' => 'kudha',
+'collapsible-expand' => 'Efani',
+'thisisdeleted' => 'Gweles po daskor $1?',
'viewdeleted' => 'Gweles $1?',
'restorelink' => '{{PLURAL:$1|unn janj diles|$1 chanj diles}}',
'feedlinks' => 'Feed:',
-'site-rss-feed' => '$1 RSS feed',
-'site-atom-feed' => '$1 Atom feed',
-'page-rss-feed' => '"$1" feed RSS',
-'page-atom-feed' => '"$1" feed Atom',
+'site-rss-feed' => 'Feed RSS $1',
+'site-atom-feed' => 'Feed Atom $1',
+'page-rss-feed' => 'Feed RSS "$1"',
+'page-atom-feed' => 'Feed Atom "$1"',
'red-link-title' => '$1 (nyns eus folen henwys yndelma)',
# Short words for each namespace, by default used in the namespace tab in monobook
-'nstab-main' => 'Erthygel',
-'nstab-user' => 'Folen devnydhyer',
+'nstab-main' => 'Folen',
+'nstab-user' => 'Folen dhevnydhyer',
'nstab-media' => 'Folen media',
'nstab-special' => 'Folen arbennek',
'nstab-project' => 'Folen ragdres',
'nstab-image' => 'Restren',
'nstab-mediawiki' => 'Messach',
-'nstab-template' => 'Scantlyn',
+'nstab-template' => 'Skantlyn',
'nstab-help' => 'Gweres',
-'nstab-category' => 'Class',
+'nstab-category' => 'Klass',
# General errors
'error' => 'Gwall',
'databaseerror' => 'Gwall database',
-'readonly' => 'Alwhedhys yw an database',
+'readonly' => 'Alhwedhys yw an database',
'missingarticle-rev' => '(amendyans#: $1)',
'missingarticle-diff' => '(Dyffrans: $1, $2)',
'internalerror' => 'Gwall a-bervedh',
'internalerror_info' => 'Gwall a-bervedh: $1',
-'filecopyerror' => 'Ny veu possybyl copia an restren "$1" dhe "$2".',
-'filerenameerror' => 'Ny veu possybyl dashenwel an restren "$1" dhe "$2".',
-'filedeleteerror' => 'Ny veu possybyl dilea an restren "$1".',
-'filenotfound' => 'Ny veu kevys an restren "$1".',
+'filecopyerror' => 'Ny allas kopia an restren "$1" dhe "$2".',
+'filerenameerror' => 'Ny allas dashenwel an restren "$1" dhe "$2".',
+'filedeleteerror' => 'Ny allas dilea an restren "$1".',
+'filenotfound' => 'Ny allas kavos an restren "$1".',
'cannotdelete-title' => 'Ny yllir dilea an folen "$1"',
'badtitle' => 'Titel drog',
'viewsource' => 'Gweles an bennfenten',
+'viewsource-title' => 'Gweles an bennfenten rag $1',
+'protectedpagetext' => 'Difresys re beu an folen-ma rag gwitha rag chanjya po gwriansow erel.',
+'viewsourcetext' => 'Hwi a yll gweles ha kopia pennfenten an folen-ma:',
+'mycustomcssprotected' => "Ny'gas beus kummyes dhe janjya an folen CSS-ma.",
+'mycustomjsprotected' => "Ny'gas beus kummyes dhe janjya an folen JavaScript-ma.",
+'ns-specialprotected' => 'Ny yllir chanjya folennow arbennek.',
+'exception-nologin' => 'Nyns owgh omgelmys',
+'exception-nologin-text' => 'An folen-ma po an gwrians-ma a wovyn mayth omgelmowgh war an wiki-ma.',
# Login and logout pages
-'logouttext' => "'''Digelmys owgh why lemmyn.'''
+'logouttext' => "'''Digelmys owgh lemmyn.'''
-Why a yll pesya usya {{SITENAME}} heb hanow, po why a yll <span class='plainlinks'>[$1 omgelmy arta]</span> avel an keth devnydhyer po avel devnydhyer aral.
-Notyowgh: Neb folennow a alsa bos disqwedhys kepar del owgh why omgelmys whath, erna wryllowgh why clerhe cache agas peurel.",
+Hwi a yll pesya devnydhya {{SITENAME}} yn tihanow, po hwi a yll <span class='plainlinks'>[$1 omgelmi arta]</span> avel an keth devnydhyer po avel devnydhyer aral.
+Notyewgh: Neb folennow a alsa bos diskwedhys kepar del owgh hwath omgelmys, erna glerhahowgh cache agas peurel.",
'welcomeuser' => 'Dynnargh, $1!',
-'welcomecreation-msg' => 'Gwruthys yw agas acont.
-Na wrewgh ankevy dhe janjya agas [[Special:Preferences|dowisyansow {{SITENAME}}]].',
-'yourname' => 'Hanow usyer:',
+'welcomecreation-msg' => 'Gwruthys re beu agas akont.
+Na ankevewgh dhe janjya agas [[Special:Preferences|dewisyansow {{SITENAME}}]].',
+'yourname' => 'Hanow devnydhyer:',
+'userlogin-yourname' => 'Hanow devnydhyer',
+'userlogin-yourname-ph' => 'Entrewgh agas hanow devnydhyer',
'yourpassword' => 'Ger tremena:',
-'yourpasswordagain' => 'Jynnscrifowgh agas ger tremena arta:',
-'remembermypassword' => "Perthy cov a'm omgelmy war'n jynn amontya-ma (rag $1 {{PLURAL:$1|dedh}} dhe'n moyha)",
-'securelogin-stick-https' => 'Gwitha junyes gans HTTPS wosa omgelmy',
+'userlogin-yourpassword' => 'Ger tremena',
+'userlogin-yourpassword-ph' => 'Entrewgh agas ger tremena',
+'createacct-yourpassword-ph' => 'Entrewgh ger tremena',
+'yourpasswordagain' => 'Jynnskrifewgh agas ger tremena arta:',
+'createacct-yourpasswordagain' => 'Afydhyewgh an ger tremena',
+'createacct-yourpasswordagain-ph' => 'Entrewgh an ger tremena arta',
+'remembermypassword' => "Perthi kov a'm omgelmi war an jynn amontya-ma (rag $1 {{PLURAL:$1|dydh}} dhe'n moyha)",
+'userlogin-remembermypassword' => "Perthi kov a'm omgelmi",
+'userlogin-signwithsecure' => 'Devnydhya junyans diogel',
+'securelogin-stick-https' => 'Gwitha junyes gans HTTPS wosa omgelmi',
'yourdomainname' => 'Agas tiredh:',
-'login' => 'Omgelmy',
-'nav-login-createaccount' => 'Omgelmy / Formya acont noweth',
-'loginprompt' => 'Res yw dhywgh galosegy cookies rag omgelmy orth {{SITENAME}}.',
-'userlogin' => 'Omgelmy / formya acont noweth',
-'userloginnocreate' => 'Omgelmy',
-'logout' => 'Digelmy',
-'userlogout' => 'Digelmy',
+'password-change-forbidden' => 'Ny yllir chanjya geryow tremena war an wiki-ma.',
+'login' => 'Omgelmi',
+'nav-login-createaccount' => 'Omgelmi / Gwruthyl akont nowyth',
+'loginprompt' => 'Res yw dhywgh galosegi cookies rag omgelmi orth {{SITENAME}}.',
+'userlogin' => 'Omgelmi / gwruthyl akont nowyth',
+'userloginnocreate' => 'Omgelmi',
+'logout' => 'Digelmi',
+'userlogout' => 'Digelmi',
'notloggedin' => 'Digelmys',
-'nologin' => "A nyns eus acont dhywgh? '''$1'''.",
-'nologinlink' => 'Formyowgh acont',
-'createaccount' => 'Formya acont noweth',
-'gotaccount' => "Eus acont dhis seulabres? '''$1'''.",
-'gotaccountlink' => 'Omgelmy',
-'userlogin-resetlink' => 'Eus ankevys genowgh agas manylyon omgelmy?',
-'createaccountmail' => 'der e-bost',
+'userlogin-noaccount' => "A ny'gas beus akont?",
+'userlogin-joinproject' => 'Junya {{SITENAME}}',
+'nologin' => "A ny'gas beus akont? '''$1'''.",
+'nologinlink' => 'Gwruthyl akont',
+'createaccount' => 'Gwruthyl akont nowyth',
+'gotaccount' => "Eus akont dhywgh seulabrys? '''$1'''.",
+'gotaccountlink' => 'Omgelmi',
+'userlogin-resetlink' => 'A ankevsowgh hwi agas manylyon omgelmi?',
+'userlogin-resetpassword-link' => 'Dassettya agas ger tremena',
+'helplogin-url' => 'Help:Omgelmi',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Gweres gans omgelmi]]',
+'createacct-join' => 'Entrewgh agas kedhlow a-woles.',
+'createacct-emailrequired' => 'Trigva ebost',
+'createacct-emailoptional' => 'Trigva ebost (a-dhewis)',
+'createacct-email-ph' => 'Entrewgh agas trigva ebost',
+'createaccountmail' => "Devnydhya ger tremena chonsus anbarthus hag y dhanvon dhe'n drigva ebost res a-woles",
+'createacct-realname' => 'Hanow gwir (a-dhewis)',
'createaccountreason' => 'Acheson:',
-'badretype' => 'Ny wrug omdhesedhes an geryow tremena entrys genowgh.',
-'userexists' => "Yma'n hanow usyer entrys genowgh ow pos usys seulabres.
-Dowisowgh hanow aral mar pleg.",
-'loginerror' => 'Gwall omgelmy',
-'createaccounterror' => 'Ny veu possybyl formya an acont: $1',
-'nocookiesnew' => 'Formys yw an acont, mes nyns owgh why omgelmys.
-Yma {{SITENAME}} owth usya cookies rag omgelmy devnydhyoryon.
+'createacct-reason' => 'Acheson',
+'createacct-reason-ph' => 'Prag yth esowgh ow kwruthyl akont aral',
+'createacct-captcha' => 'Gwiryans sekerder',
+'createacct-imgcaptcha-ph' => 'Entrewgh an tekst a welowgh a-ugh',
+'createacct-submit' => 'Gwruthyl agas akont',
+'createacct-benefit-heading' => 'Gwrys yw {{SITENAME}} gans tus kepar ha hwi.',
+'createacct-benefit-body1' => '{{PLURAL:$1|janj|chanj}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|folen}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|gevriyas|kevriyas}} a-dhiwedhes',
+'badretype' => 'Ny omdhesedh an geryow tremena entrys genowgh.',
+'userexists' => 'Y tevnydhir an hanow devnydhyer entrys genowgh seulabrys.
+Dewisewgh ken hanow mar pleg.',
+'loginerror' => 'Gwall omgelmi',
+'createacct-error' => 'Gwall ow kwruthyl akont',
+'createaccounterror' => 'Ny allas gwruthyl an akont: $1',
+'nocookiesnew' => "Gwruthys veu an akont, mes nyns owgh omgelmys.
+{{SITENAME}} a dhevnydh cookies rag omgelmi devnydhyoryon.
Dialosegys yw cookies war agas jynn amontya.
-Gwrewgh aga galosegy, hag omgelmowgh dre usya agas hanow usyer ha ger tremena noweth.',
-'nocookieslogin' => 'Yma {{SITENAME}} owth usya cookies rag omgelmi devnydhyoryon.
+Galosegewgh i, hag omgelmewgh der agas hanow devnydhyer ha'gas ger tremena nowyth.",
+'nocookieslogin' => '{{SITENAME}} a dhevnydh cookies rag omgelmi devnydhyoryon.
Dialosegys yw cookies war agas jynn amontya.
-Gwrewgh aga galosegi hag assaya arta.',
-'noname' => 'Ny wrussowgh why ry hanow usyer da.',
-'loginsuccesstitle' => 'Omgelmy a sowenas',
-'loginsuccess' => "'''Omgelmys owgh why lemmyn orth {{SITENAME}} avel \"\$1\".'''",
-'nouserspecified' => 'Res yw dhywgh ry hanow usyer.',
-'wrongpassword' => 'Camm o an ger tremena.
-Assayowgh arta mar pleg.',
-'wrongpasswordempty' => 'Gwag o an ger-tremena res. Assayowgh arta mar pleg.',
+Galosegewgh i hag assayewgh arta.',
+'noname' => 'Ny resowgh hanow devnydhyer da.',
+'loginsuccesstitle' => 'Omgelmi a sewenis',
+'loginsuccess' => "'''Omgelmys owgh lemmyn orth {{SITENAME}} avel \"\$1\".'''",
+'nouserspecified' => 'Res yw dhywgh ri hanow devnydhyer.',
+'wrongpassword' => 'Kamm o an ger tremena.
+Assayewgh arta mar pleg.',
+'wrongpasswordempty' => 'Gwag o an ger tremena res.
+Assayewgh arta mar pleg.',
'passwordtooshort' => "Res yw dhe eryow tremena bos {{PLURAL:$1|1 lytheren|$1 lytheren}} dhe'n lyha.",
-'password-name-match' => "Ny yll agas ger tremena bos an keth ha'gas hanow usyer.",
-'password-login-forbidden' => 'Difennys yw usya an hanow usyer-ma hag an ger tremena-ma.',
-'mailmypassword' => 'E-bostya ger tremena nowyth',
-'passwordremindertitle' => 'Ger tremena noweth rag {{SITENAME}}',
-'passwordremindertext' => 'Nebonen (why martesen, dhyworth an drigva IP $1) a wovynnas ger tremena noweth rag {{SITENAME}} ($4). Ger tremena termynyel rag an devnydhyer
-"$2" re beu gwruthys hag a veu settyes dhe "$3". Mars o henna agas bodh, y fedh res dhywgh omgelmy ha dowis ger tremena noweth lemmyn.
-Agas ger tremena termynyel a wra diwedha yn {{PLURAL:$5|unn jedh|$5 dedh}}.
-
-Mar qwrug nebonen aral govyn hemma, po yma cov dhywgh a\'gas ger tremena ha nyns yw whans dhywgh y janjya namoy, why a yll sconya aswon an messach-ma ha pesya usya agas ger tremena coth.',
-'noemail' => 'Nyns eus trigva ebost recordyes rag an devnydhyer "$1".',
-'noemailcreate' => 'Res yw dhewgh ry trigva ebost da',
-'passwordsent' => 'Ger tremena noweth re beu danvenys dhe\'n drigva ebost covscrifys rag "$1".
-Gwrewgh omgelmy arta mar pleg wosa why dh\'y receva.',
+'password-name-match' => "Ny yll agas ger tremena bos an keth ha'gas hanow devnydhyer.",
+'password-login-forbidden' => 'Difennys yw devnydhya an hanow devnydhyer-ma hag an ger tremena-ma.',
+'mailmypassword' => 'Ebostya ger tremena nowyth',
+'passwordremindertitle' => 'Ger tremena nowyth rag {{SITENAME}}',
+'passwordremindertext' => 'Nebonan (hwi martesen, dhyworth an drigva IP $1) a wovynnis ger tremena nowyth rag {{SITENAME}} ($4). Ger tremena anbarthus rag an devnydhyer
+"$2" re beu gwruthys hag a veu settyes dhe "$3". Mars o henna agas bodh, y fydh res dhywgh omgelmi ha dewis ger tremena nowyth lemmyn.
+Agas ger tremena anbarthus a dhiwedh yn {{PLURAL:$5|unn jydh|$5 dydh}}.
+
+Mar kovynnis nebonan aral hemma, po hwi a\'gas beus kov a\'gas ger tremena ha ny\'m beus hwans dh\'y janjya namoy, hwi a yll skonya aswon an messach-ma ha pesya devnydhya agas ger tremena koth.',
+'noemail' => 'Nyns eus trigva ebost rekordys rag an devnydhyer "$1".',
+'noemailcreate' => 'Res yw dhywgh ri trigva ebost da',
+'passwordsent' => 'Ger tremena nowyth re beu danvenys dhe\'n drigva ebost kovskrifys rag "$1".
+Omgelmewgh arta mar pleg wosa hwi dh\'y receva.',
'emailauthenticated' => 'Afydhyes veu agas trigva ebost an $2 dhe $3.',
-'emailconfirmlink' => 'Afydhyowgh agas trigva ebost',
-'invalidemailaddress' => 'Ny yllir alowa an drigva ebost drefen bos furv drog dhedhy.
-Entrowgh trigva da y furv po gwakhowgh an furvlen-na.',
-'accountcreated' => 'Acont formys',
-'accountcreatedtext' => 'Formys re beu an acont rag $1.',
-'createaccount-title' => 'Formya acont war {{SITENAME}}',
-'createaccount-text' => 'Nebonan a wrug gwruthyl acont rag agas trigva ebost war {{SITENAME}} ($4) henwys "$2", "$3" y er tremena.
-Why a dalvia omgelmy ha chanjya agas ger tremena lemmyn.
-
-Why a yll sconya aswon an messach-ma, mar peu an acont-ma formyes yn gwall.',
-'usernamehasherror' => "Ny yllowgh why usya lytherennow hash y'gas ger tremena",
+'emailconfirmlink' => 'Afydhyewgh agas trigva ebost',
+'invalidemailaddress' => 'Ny yllir alowa an drigva ebost drefen bos furvyans drog dhedhi.
+Entrewgh trigva da y furvyans po gwakhewgh an furvlen-na.',
+'accountcreated' => 'Akont gwruthys',
+'accountcreatedtext' => 'Gwruthys re beu an akont rag $1.',
+'createaccount-title' => 'Gwruthyl akont rag {{SITENAME}}',
+'createaccount-text' => 'Nebonan a wrug akont rag agas trigva ebost war {{SITENAME}} ($4) henwys "$2", "$3" y er tremena.
+Y talvia dhywgh omgelmi ha chanjya agas ger tremena lemmyn.
+
+Hwi a yll skonya aswon an messach-ma mar peu an akont-ma gwruthys yn gwall.',
+'usernamehasherror' => 'Ny yllir bos lytherennow hash yn henwyn devnydhyer',
'loginlanguagelabel' => 'Yeth: $1',
# Change password dialog
-'resetpass' => 'Chanjya ger-tremena',
-'resetpass_announce' => 'Why a wrug omgelmy yn unn usya coden ebostyes termynyel.
-Rag gorfenna omgelmy, res yw dhywgh settya ger tremena noweth omma:',
-'resetpass_header' => 'Chanjya ger tremena an acont',
-'oldpassword' => 'Ger tremena coth:',
-'newpassword' => 'Ger tremena noweth:',
-'retypenew' => 'Jynnscrifowgh an ger tremena noweth arta:',
-'resetpass_submit' => 'Settya an ger tremena hag omgelmy',
-'resetpass_success' => 'Chanjyes re beu agas ger tremena yn soweny!
-Orth agas omgelmy lemmyn...',
+'resetpass' => 'Chanjya ger tremena',
+'resetpass_announce' => 'Hwi a omgelmis dre goden ebostyes anbarthus.
+Rag gorfenna omgelmi, res yw dhywgh settya ger tremena nowyth omma:',
+'resetpass_header' => 'Chanjya ger tremena an akont',
+'oldpassword' => 'Ger tremena koth:',
+'newpassword' => 'Ger tremena nowyth:',
+'retypenew' => 'Jynnscrifewgh an ger tremena nowyth arta:',
+'resetpass_submit' => 'Settya an ger tremena hag omgelmi',
+'resetpass_success' => 'Chanjyes re beu agas ger tremena yn sewen!
+Orth agas omgelmi lemmyn...',
'resetpass_forbidden' => 'Ny yllir chanjya geryow tremena',
-'resetpass-submit-loggedin' => 'Chanjya an ger-tremena',
+'resetpass-submit-loggedin' => 'Chanjya an ger tremena',
'resetpass-submit-cancel' => 'Hedhi',
-'resetpass-temp-password' => 'Ger tremena termynyel:',
+'resetpass-temp-password' => 'Ger tremena anbarthus:',
# Special:PasswordReset
-'passwordreset' => 'Dassettya ger tremena',
-'passwordreset-text' => 'Gwrewgh lenwel an furvlen-ma rag receva ebost ynno manylyon agas acont.',
-'passwordreset-legend' => 'Dassettya ger tremena',
-'passwordreset-disabled' => "Dialosegys yw dassettya geryow tremena war'n wiki ma.",
-'passwordreset-pretext' => "{{PLURAL:$1||Entrowgh onen a'n tymmyn a dhata a-woles}}",
-'passwordreset-username' => 'Hanow usyer:',
+'passwordreset' => 'Dassettya an ger tremena',
+'passwordreset-text-one' => 'Lenwewgh an furvlen-ma rag dassettya agas ger tremena.',
+'passwordreset-text-many' => "{{PLURAL:$1|Entrewgh onan a'n tymmyn a dhata a-woles rag dassettya agas ger tremena.}}",
+'passwordreset-legend' => 'Dassettya an ger tremena',
+'passwordreset-disabled' => 'Dialosegys yw dassettya geryow tremena war an wiki-ma.',
+'passwordreset-username' => 'Hanow devnydhyer:',
'passwordreset-domain' => 'Tiredh:',
'passwordreset-email' => 'Trigva ebost:',
-'passwordreset-emailtitle' => 'Manylyon agas acont war {{SITENAME}}',
+'passwordreset-emailtitle' => 'Manylyon agas akont war {{SITENAME}}',
+'passwordreset-emailsent' => 'Ebost dassettya ger tremena re beu danvenys.',
+'passwordreset-emailsent-capture' => 'Ebost dassettya ger tremena re beu danvenys, hag y hyllir y weles a-woles.',
# Special:ChangeEmail
'changeemail' => 'Chanjya trigva ebost',
-'changeemail-header' => 'Chanjya trigva ebost an acont',
-'changeemail-text' => 'Grewgh lenwel an furvlen-ma rag chanjya agas trigva ebost. Y fedh res dhywgh entra agas ger tremena rag afydhya an chanj-ma.',
+'changeemail-header' => 'Chanjya trigva ebost an akont',
+'changeemail-text' => 'Lenwewgh an furvlen-ma rag chanjya agas trigva ebost. Y fydh res dhywgh entra agas ger tremena rag afydhya an chanj-ma.',
+'changeemail-oldemail' => 'Agas trigva ebost a-lemmyn:',
+'changeemail-newemail' => 'Agas trigva ebost nowyth:',
+'changeemail-none' => '(nagonan)',
+'changeemail-password' => 'Agas ger tremena war {{SITENAME}}:',
+'changeemail-submit' => 'Chanjya an trigva ebost',
+'changeemail-cancel' => 'Hedhi',
# Edit page toolbar
-'bold_sample' => 'Text tew',
-'bold_tip' => 'Text tew',
-'italic_sample' => 'Text italek',
-'italic_tip' => 'Text italek',
+'bold_sample' => 'Tekst tew',
+'bold_tip' => 'Tekst tew',
+'italic_sample' => 'Tekst italek',
+'italic_tip' => 'Tekst italek',
'link_sample' => 'Titel an gevren',
'link_tip' => 'Kevren bervedhel',
'extlink_sample' => 'http://www.example.com titel an gevren',
-'extlink_tip' => 'Kevren a-ves (na ankevowgh an rager http://)',
-'headline_sample' => 'Text an titel',
+'extlink_tip' => 'Kevren a-ves (na ankevewgh an rager http://)',
+'headline_sample' => 'Tekst an bennlinen',
'headline_tip' => 'Pennlinen nivel 2',
-'nowiki_sample' => 'Keworrowgh text heb furvyans omma',
-'nowiki_tip' => 'Sconya aswon furvyans wiki',
+'nowiki_sample' => 'Keworrewgh tekst heb furvyans omma',
+'nowiki_tip' => 'Skonya aswon furvyans wiki',
'image_tip' => 'Restren neythys',
'media_tip' => 'Kevren restren',
'sig_tip' => 'Agas sinans gans stampa-termyn',
# Edit pages
-'summary' => 'Derivas cot:',
+'summary' => 'Berrskrif:',
'subject' => 'Testen/Pennlinen:',
-'minoredit' => 'Chanj bian yw hemma',
-'watchthis' => 'Golyas an folen-ma',
-'savearticle' => 'Gwitha',
+'minoredit' => 'Chanj byhan yw hemma',
+'watchthis' => 'Golya an folen-ma',
+'savearticle' => 'Gwitha an folen',
'preview' => 'Ragwel',
-'showpreview' => 'Ragweles',
-'showdiff' => 'Disqwedhes an chanjyow',
-'anoneditwarning' => "'''Gwarnyans:''' Nyns owgh why omgelmys.
-Recordys a vedh agas trigva IP yn istory an folen-ma.",
-'anonpreviewwarning' => "''Nyns owgh why omgelmys. Dre witha, agas trigva IP a vedh recordyes yn istory chanjya an folen-ma.''",
-'summary-preview' => "Ragwel a'n derivas kot:",
-'loginreqtitle' => 'Res yw omgelmy',
-'loginreqlink' => 'omgelmy',
-'accmailtitle' => 'Danvenys yw an ger-tremena.',
-'newarticle' => '(Noweth)',
-'newarticletext' => "Why a wrug sewya kevren dhe folen nag yw gwruthys whath.
-Rag gwruthyl an folen, dalethowgh jynnscrifa y'n gist a-woles (gwelowgh an [[{{MediaWiki:Helppage}}|folen weres]] rag moy kedhlow).
-Mar qwrussowgh why dos omma yn camm, clyckyowgh boton '''war-dhelergh''' agas peurel.",
-'noarticletext' => 'Nyns eus text y\'n folen-ma.
-Why a yll [[Special:Search/{{PAGENAME}}|whilas titel an folen-ma]] yn folennow erel,
-<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} whilas y\'n covnotennow kelmys],
+'showpreview' => 'Diskwedhes ragwel',
+'showlivepreview' => 'Ragwel byw',
+'showdiff' => 'Diskwedhes an chanjyow',
+'anoneditwarning' => "'''Gwarnyans:''' Nyns owgh omgelmys.
+Rekordys vydh agas trigva IP yn istori an folen-ma.",
+'anonpreviewwarning' => "''Nyns owgh omgelmys. Dre witha, agas trigva IP a vydh rekordyes istori chanjya an folen-ma.''",
+'summary-preview' => "Ragwel a'n berrskrif:",
+'loginreqtitle' => 'Res yw omgelmi',
+'loginreqlink' => 'omgelmi',
+'accmailtitle' => 'Ger-tremena danvenys.',
+'newarticle' => '(Nowyth)',
+'newarticletext' => "Hwi re holyas kevren dhe folen nag yw gwruthys hwath.
+Rag gwruthyl an folen, dalethewgh jynnskrifa y'n gist a-woles (gwelewgh an [[{{MediaWiki:Helppage}}|folen weres]] rag moy kedhlow).
+Mar teuthowgh omma yn kamm, klyckyewgh boton '''war-dhelergh''' agas peurel.",
+'noarticletext' => 'Nyns eus tekst y\'n folen-ma a-lemmyn.
+Hwi a yll [[Special:Search/{{PAGENAME}}|hwilas titel an folen-ma]] yn folennow erel,
+<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} hwilas y\'n kovnotennow kelmys],
po [{{fullurl:{{FULLPAGENAME}}|action=edit}} chanjya an folen-ma]</span>.',
-'noarticletext-nopermission' => 'Nyns eus text y\'n folen-ma a-lemmyn.
-Why a yll [[Special:Search/{{PAGENAME}}|whilas titel an folen-ma]] yn folennow erel, po <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} whilas y\'n covnotennow kelmys]</span>, mes nyns eus cummyes dhywgh a wruthyl an folen-ma.',
-'userpage-userdoesnotexist' => 'Nyns yw covscrifys an acont devnydhyer "$1".
-Gwrewgh checkya mars yw whans dhywgh gwruthyl/chanjya an folen-ma.',
-'userpage-userdoesnotexist-view' => 'Nyns yw covscrifys an acont devnydher "$1".',
+'noarticletext-nopermission' => "Nyns eus tekst y'n folen-ma a-lemmyn.
+Hwi a yll [[Special:Search/{{PAGENAME}}|hwilas titel an folen-ma]] yn folennow erel, po <span class=\"plainlinks\">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} hwilas y'n kovnotennow kelmys]</span>, mes ny'gas beus kummyes dhe wruthyl an folen-ma.",
+'userpage-userdoesnotexist' => 'Nyns yw kovskrifys an akont devnydhyer "$1".
+Checkyewgh mar pleg mara\'gas beus hwans dhe wruthyl/dhe janjya an folen-ma.',
+'userpage-userdoesnotexist-view' => 'Nyns yw kovskrifys an akont devnydhyer "$1".',
'updated' => '(Nowedhys)',
'note' => "'''Noten:'''",
-'previewnote' => "Gwrewgh perthy cov, nyns yw hemma marnas ragwel.''' Nyns yw gwithys agas chanjyow whath!",
-'continue-editing' => "Mos dhe'n teller chanjya",
+'previewnote' => "Perthewgh kov, nyns yw hemma marnas ragwel.''' Nyns yw gwithys agas chanjyow hwath!",
+'continue-editing' => "Mos dhe'n tyller chanjya",
'editing' => 'Ow chanjya $1',
-'creating' => 'Ow qwruthyl $1',
-'editingsection' => 'Ow chanjya $1 (rann)',
-'editingcomment' => 'Ow chanjya $1 (rann noweth)',
-'yourtext' => 'Agas text',
+'creating' => 'Ow kwruthyl $1',
+'editingsection' => 'Ow chanjya $1 (tregh)',
+'editingcomment' => 'Ow chanjya $1 (tregh nowyth)',
+'yourtext' => 'Agas tekst',
'yourdiff' => 'Dyffransow',
-'templatesused' => '{{PLURAL:$1|Scantlyn|Scantlyns}} usys war an folen-ma:',
-'templatesusedpreview' => "{{PLURAL:$1|Scantlyn|Scantlyns}} usys y'n ragwel-ma:",
-'template-protected' => '(gwithys)',
+'templatesused' => '{{PLURAL:$1|An skantlyn|Skantlyns}} devnydhys war an folen-ma:',
+'templatesusedpreview' => "{{PLURAL:$1|An skantlyn|Skantlyns}} devnydhys y'n ragwel-ma:",
+'template-protected' => '(difresys)',
'template-semiprotected' => '(hanter-difresys)',
-'hiddencategories' => 'Esel a {{PLURAL:$1|1 glass cudhys|$1 class cudhys}} yw an folen-ma:',
-'permissionserrorstext-withaction' => 'Nyns eus cummyes dhywgh dhe $2, rag an {{PLURAL:$1|acheson|achesonys}} a sew:',
-'moveddeleted-notice' => 'Diles yw an folen-ma.
-Yma covnoten dhileans ha gwayans an folen a-woles.',
+'hiddencategories' => 'Esel a {{PLURAL:$1|1 glass kudhys|$1 klass kudhys}} yw an folen-ma:',
+'permissionserrorstext-withaction' => "Ny'gas beus kummyes dhe $2, rag an {{PLURAL:$1|acheson|achesonys}} a syw:",
+'moveddeleted-notice' => 'An folen-ma re beu diles.
+Yma kovnoten dhilea ha gwaya an folen res a-woles.',
'log-fulllog' => 'Gweles an govnoten dien',
+'editwarning-warning' => 'Mar kasowgh an folen-ma, y halser kelli chanjyow gwrys genowgh.
+Mars owgh omgelmys, hwi a yll dialosegi an gwarnyans-ma yn tregh "Chanjya" agas dewisyansow.',
# "Undo" feature
-'undo-summary' => 'Diswul amendyans $1 gans [[Special:Contributions/$2|$2]] ([[User talk:$2|kescows]])',
+'undo-success' => 'Y hyllir diswul an chanj-ma.
+Checkyewgh mar pleg an kehevelyans a-woles rag gwirya bos hemma an pyth a vynnowgh, hag ena gwithewgh an chanjyow a-woles rag gorfenna diswul an chanj.',
+'undo-summary' => 'Amendyans $1 gans [[Special:Contributions/$2|$2]] ([[User talk:$2|keskows]]) diswrys',
# Account creation failure
-'cantcreateaccounttitle' => 'Nyns yw possybyl formya an acont',
+'cantcreateaccounttitle' => 'Ny yllir gwruthyl an akont',
# History pages
-'viewpagelogs' => 'Gweles covnotennow an folen-ma',
+'viewpagelogs' => 'Gweles kovnotennow an folen-ma',
'currentrev' => 'Amendyans diwettha',
-'currentrev-asof' => 'An chanj diwettha a-ban $1',
-'revisionasof' => 'Versyon an folen a-ban $1',
-'revision-info' => 'Amendyans a-ban $1 gans $2',
-'previousrevision' => '← Amendyans cottha',
-'nextrevision' => 'Amendyans nowettha →',
+'currentrev-asof' => 'An amendyans diwettha a-dhia $1',
+'revisionasof' => 'Versyon an folen a-dhia $1',
+'revision-info' => 'Amendyans a-dhia $1 gans $2',
+'previousrevision' => '← Amendyans kottha',
+'nextrevision' => 'Amendyans nowyttha →',
'currentrevisionlink' => 'An amendyans diwettha',
'cur' => 'lemmyn',
'next' => 'nessa',
-'last' => 'kens',
-'page_first' => 'kensa',
-'page_last' => 'kens',
-'histlegend' => "Dowis dyffransow: Merkyowgh kistennow radyo a'n amendyansow dhe gehevely, ha gwascowgh 'entra' po an boton orth goles an folen.<br />
-Alwhedh: '''({{int:cur}})''' = an dyffrans dhyworth an amendyans diwettha, '''({{int:last}})''' = an dyffrans dhyworth an amendyans kens, '''{{int:minoreditletter}}''' = chanj bian.",
-'history-fieldset-title' => 'Peury an istory',
+'last' => 'kyns',
+'page_first' => 'kynsa',
+'page_last' => 'diwettha',
+'histlegend' => "Dewis dyffransow: Merkyewgh kistennow radyo a'n amendyansow dhe geheveli, ha gweskewgh 'entra' po an boton orth goles an folen.<br />
+Alhwedh: '''({{int:cur}})''' = an dyffrans dhyworth an amendyans diwettha, '''({{int:last}})''' = an dyffrans dhyworth an amendyans kyns, '''{{int:minoreditletter}}''' = chanj byhan.",
+'history-fieldset-title' => 'Peuri an istori',
'history-show-deleted' => 'Diles hepken',
'histfirst' => 'An moyha a-varr',
'histlast' => 'An diwettha',
'historyempty' => '(gwag)',
# Revision feed
-'history-feed-title' => 'Istory chanjya',
-'history-feed-description' => 'Istory chanjya rag an folen-ma war an wiki',
+'history-feed-title' => 'Istori amendya',
+'history-feed-description' => 'Istori amendya rag an folen-ma war an wiki',
'history-feed-item-nocomment' => '$1 dhe $2',
# Revision deletion
-'rev-delundel' => 'disqwedhes/cudha',
-'rev-showdeleted' => 'disqwedhes',
+'rev-delundel' => 'diskwedhes/kudha',
+'rev-showdeleted' => 'diskwedhes',
'revdel-restore' => 'chanjya an hewelder',
'revdel-restore-deleted' => 'amendyansow diles',
'revdel-restore-visible' => 'amendyansow gweladow',
-'pagehist' => 'Istory an folen',
+'pagehist' => 'Istori an folen',
# History merging
'mergehistory-reason' => 'Acheson:',
# Merge log
-'revertmerge' => 'Disworunya',
+'revertmerge' => 'Diswul an kesunya',
# Diffs
-'history-title' => 'Istory an folen "$1"',
+'history-title' => 'Istori an folen "$1"',
'difference-title' => 'Dyffransow ynter amendyansow a "$1"',
'difference-multipage' => '(Dyffrans ynter an folennow)',
'lineno' => 'Linen $1:',
-'compareselectedversions' => 'Kehevely an amendyansow dowisyes',
-'showhideselectedversions' => 'Disqwedhes/cudha amendyansow dowisyes',
+'compareselectedversions' => 'Keheveli an amendyansow dewisyes',
+'showhideselectedversions' => 'Diskwedhes/kudha amendyansow dewisyes',
'editundo' => 'diswul',
# Search results
-'searchresults' => 'Sewyansow whilas',
-'searchresults-title' => 'Sewyansow whilas rag "$1"',
-'searchresulttext' => 'Rag moy kedhlow a-dro dhe whilas yn {{SITENAME}}, gwelowgh [[{{MediaWiki:Helppage}}|{{int:help}}]].',
-'searchsubtitle' => 'Why a wrug whilas \'\'\'[[:$1]]\'\'\' ([[Special:Prefixindex/$1|keniver folen ow talleth gans "$1"]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|keniver folen ow kevrenna dhe "$1"]])',
-'searchsubtitleinvalid' => "Why a wrug whilas '''$1'''",
-'notitlematches' => 'Nyns eus titel folen ow machya',
-'notextmatches' => 'Nyns eus text folen ow machya',
-'prevn' => 'kens {{PLURAL:$1|$1}}',
+'searchresults' => 'Sewyansow an hwilans',
+'searchresults-title' => 'Sewyansow an hwilans rag "$1"',
+'searchresulttext' => 'Rag moy kedhlow a-dro dhe hwilas yn {{SITENAME}}, gwelewgh [[{{MediaWiki:Helppage}}|{{int:help}}]].',
+'searchsubtitle' => 'Hwi a hwilas \'\'\'[[:$1]]\'\'\' ([[Special:Prefixindex/$1|keniver folen ow talleth gans "$1"]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|keniver folen ow kevrenna dhe "$1"]])',
+'searchsubtitleinvalid' => "Hwi a hwilas '''$1'''",
+'notitlematches' => 'Nyns eus titel folen vyth owth omdhesedha',
+'notextmatches' => 'Nyns eus tekst folen vyth owth omdhesedha',
+'prevn' => '{{PLURAL:$1|$1}} kyns',
'nextn' => 'nessa {{PLURAL:$1|$1}}',
-'prevn-title' => '$1 {{PLURAL:$1|sewyans|sewyans}} kens',
-'nextn-title' => '$1 {{PLURAL:$1|sewyans|sewyans}} nessa',
+'prevn-title' => '$1 {{PLURAL:$1|sewyans}} kyns',
+'nextn-title' => '$1 {{PLURAL:$1|sewyans}} nessa',
+'shown-title' => 'Diskwedhes $1 {{PLURAL:$1|sewyans}} yn folen',
'viewprevnext' => 'Gweles ($1 {{int:pipe-separator}} $2) ($3)',
-'searchmenu-legend' => 'Etholyow whilans',
+'searchmenu-legend' => 'Etholyow hwilas',
'searchmenu-exists' => "''Yma folen henwys \"[[:\$1]]\" war an wiki-ma'''",
'searchmenu-new' => "'''Gwruthyl an folen \"[[:\$1]]\" war an wiki-ma!'''",
-'searchhelp-url' => 'Help:Gweres',
-'searchprofile-articles' => 'Folennow dhalhen',
+'searchprofile-articles' => 'Folennow dalgh',
'searchprofile-project' => 'Folennow gweres ha ragdres',
'searchprofile-images' => 'Liesmedia',
'searchprofile-everything' => 'Puptra',
'searchprofile-advanced' => 'Avonsys',
-'searchprofile-articles-tooltip' => 'Whilas yn $1',
-'searchprofile-project-tooltip' => 'Whilas yn $1',
-'searchprofile-images-tooltip' => 'Whilas restrennow',
-'searchprofile-everything-tooltip' => 'Whilas yn pub teller (yn folennow kescows ynwedh)',
-'searchprofile-advanced-tooltip' => 'Whilas yn spassow hanow personelhes',
+'searchprofile-articles-tooltip' => 'Hwilas yn $1',
+'searchprofile-project-tooltip' => 'Hwilas yn $1',
+'searchprofile-images-tooltip' => 'Hwilas restrennow',
+'searchprofile-everything-tooltip' => 'Hwilas pub le (yn folennow keskows ynwedh)',
+'searchprofile-advanced-tooltip' => 'Hwilas yn spasys hanow personelhes',
'search-result-size' => '$1 ({{PLURAL:$2|1 ger|$2 ger}})',
'search-result-category-size' => '{{PLURAL:$1|1 esel|$1 esel}} ({{PLURAL:$2|1 isglass|$2 isglass}}, {{PLURAL:$3|1 restren|$3 restren}})',
-'search-redirect' => '(daswedyans $1)',
-'search-section' => '(rann $1)',
-'search-suggest' => 'A wrussowgh why menya: $1',
-'search-interwiki-caption' => 'Ragdresow whor',
+'search-redirect' => '(daskedyans $1)',
+'search-section' => '(tregh $1)',
+'search-suggest' => 'A styrsowgh hwi: $1',
+'search-interwiki-caption' => 'Ragdresow hwor',
'search-interwiki-default' => '$1 sewyansow:',
'search-interwiki-more' => '(moy)',
'search-relatedarticle' => 'Kelmys',
-'mwsuggest-disable' => 'Dialosegy profyansow AJAX',
-'searcheverything-enable' => 'Whilas yn keniver spas-hanow',
+'mwsuggest-disable' => 'Dialosegi profyansow hwilas',
+'searcheverything-enable' => 'Hwilas yn pub spas-hanow',
'searchrelated' => 'kelmys',
'searchall' => 'oll',
-'showingresultsheader' => "{{PLURAL:$5|Sewyans '''$1''' dhyworth '''$3'''|Sewyansow '''$1 - $2''' dhyworth '''$3'''}} rag '''$4'''",
-'nonefound' => "'''Noten''': Nyns yw marnas rann a'n spasys-hanow whilys dre dhefowt.
-Gwrewgh assaya rag-gorra agas govyn gans ''all:'' rag whilas yn pub teller (ynnans an folennow kescows, scantlyns, etc), po usyowgh an spas-hanow whensys avel rag-gorrans.",
-'search-nonefound' => 'Nyns esa sewyansow ow machya an govyn.',
-'powersearch' => 'Whilans avonsys',
-'powersearch-legend' => 'Whilans avonsys',
-'powersearch-ns' => 'Whilas yn spasys-hanow:',
-'powersearch-redir' => 'Gorra an daswedyansow yn rol',
-'powersearch-field' => 'Whilas',
-'powersearch-togglelabel' => 'Dowis:',
+'showingresultsheader' => "{{PLURAL:$5|Sewyans '''$1''' a '''$3'''|Sewyansow '''$1 - $2''' a '''$3'''}} rag '''$4'''",
+'nonefound' => "'''Noten''': Ny hwilir marnas yn rann a'n spasys-hanow dre dhefowt.
+Assayewgh rag-gorra agas govyn gans ''all:'' rag hwilas yn pub tyller (ynna an folennow keskows, skantlyns, etc), po devnydhyewgh an spas-hanow hwensys avel rag-gorrans.",
+'search-nonefound' => 'Nyns esa sewyans vyth owth omdhesedha orth an govyn.',
+'powersearch' => 'Hwilans avonsys',
+'powersearch-legend' => 'Hwilans avonsys',
+'powersearch-ns' => 'Hwilas yn spasys-hanow:',
+'powersearch-redir' => 'Rolya daskedyansow',
+'powersearch-field' => 'Hwilas',
+'powersearch-togglelabel' => 'Dewis:',
'powersearch-toggleall' => 'Oll',
-'powersearch-togglenone' => 'Nagonen',
-'search-external' => 'Whilans a-ves',
+'powersearch-togglenone' => 'Nagonan',
+'search-external' => 'Hwilans a-ves',
# Preferences page
-'preferences' => 'Dowisyansow',
-'mypreferences' => 'Dowisyansow',
+'preferences' => 'Dewisyansow',
+'mypreferences' => 'Dewisyansow',
+'prefs-edits' => 'Niver a janjyow:',
'changepassword' => 'Chanjya an ger-tremena',
-'prefs-skin' => 'Crohen',
+'prefs-skin' => 'Krohen',
'skin-preview' => 'Ragweles',
'prefs-datetime' => 'Dedhyans hag eur',
'prefs-user-pages' => 'Folennow devnydhyer',
'prefs-personal' => 'Profil devnydhyer',
'prefs-rc' => 'Chanjyow a-dhiwedhes',
-'prefs-watchlist' => 'Rol golyas',
-'prefs-watchlist-days' => "Niver a dhedhyow dhe dhisqwedhes y'n rol golyas:",
-'prefs-resetpass' => 'Chanjya ger-tremena',
+'prefs-watchlist' => 'Rol golya',
+'prefs-watchlist-days' => "Niver a dhedhyow dhe dhiskwedhes y'n rol golya:",
+'prefs-resetpass' => 'Chanjya an ger tremena',
'prefs-changeemail' => 'Chanjya an drigva ebost',
'prefs-setemail' => 'Settya trigva ebost',
-'prefs-email' => 'Etholyow e-bost',
+'prefs-email' => 'Etholyow ebostya',
'saveprefs' => 'Gwitha',
-'resetprefs' => 'Clerhe chanjyow nag yw gwithys',
+'resetprefs' => 'Klerhe chanjyow nag yw gwithys',
'restoreprefs' => 'Restorya pub settyans defowt',
'prefs-editing' => 'Chanjya',
-'prefs-edit-boxsize' => 'Mens an fenester chanjya.',
+'prefs-edit-boxsize' => 'Myns an fenester janjya.',
'rows' => 'Rewyow:',
-'columns' => 'Colovennow:',
-'searchresultshead' => 'Whilas',
-'savedprefs' => 'Gwithys re beu agas dowisyansow.',
+'columns' => 'Kolovennow:',
+'searchresultshead' => 'Hwilas',
+'savedprefs' => 'Gwithys re beu agas dewisyansow.',
'servertime' => 'Eur an servyer:',
'guesstimezone' => 'Lenwel dhyworth an beurel',
-'timezoneregion-africa' => 'Africa',
-'timezoneregion-america' => 'America',
-'timezoneregion-antarctica' => 'Antarctica',
-'timezoneregion-arctic' => 'Arctek',
-'timezoneregion-asia' => 'Asya',
-'timezoneregion-atlantic' => 'Mor Atlantek',
-'timezoneregion-australia' => 'Awstralya',
+'timezoneregion-africa' => 'Afrika',
+'timezoneregion-america' => 'Amerika',
+'timezoneregion-antarctica' => 'Antarktika',
+'timezoneregion-arctic' => 'Arktek',
+'timezoneregion-asia' => 'Asi',
+'timezoneregion-atlantic' => 'Keynvor Atlantek',
+'timezoneregion-australia' => 'Ostrali',
'timezoneregion-europe' => 'Europa',
-'timezoneregion-indian' => 'Mor Eyndek',
-'timezoneregion-pacific' => 'Mor Cosel',
-'prefs-searchoptions' => 'Whilas',
-'prefs-files' => 'Restrednow',
-'youremail' => 'E-bost:',
-'username' => 'Hanow-usyer:',
-'uid' => 'ID devnydhyer:',
-'prefs-memberingroups' => "Esel a'n {{PLURAL:$1|bagas|bagasow}}:",
+'timezoneregion-indian' => 'Keynvor Eyndek',
+'timezoneregion-pacific' => 'Keynvor Hebask',
+'allowemail' => 'Galosegi ebost dhyworth devnydhyoryon erel',
+'prefs-searchoptions' => 'Hwilas',
+'prefs-files' => 'Restrennow',
+'prefs-emailconfirm-label' => 'Afydhyans an ebost:',
+'youremail' => 'Ebost:',
+'username' => '{{GENDER:$1|Hanow devnydhyer}}:',
+'uid' => '{{GENDER:$1|ID an devnydhyer}}:',
+'prefs-memberingroups' => "{{GENDER:$2|Esel}} a'n {{PLURAL:$1|bagas|bagasow}}:",
+'prefs-registration' => 'Termyn kovskrifa:',
'yourrealname' => 'Hanow gwir:',
'yourlanguage' => 'Yeth:',
-'yournick' => 'Sinans noweth:',
-'yourgender' => 'Reyth:',
+'yournick' => 'Sinans nowyth:',
+'prefs-help-signature' => 'Y tal sina kampolansow war folennow keskows gans "<nowiki>~~~~</nowiki>", a dreylir dhe\'gas sinans ha dhe stamp-termyn.',
+'yourgender' => 'Reydh:',
+'gender-unknown' => 'Heb hy disklosya',
'gender-male' => 'Gorow',
'gender-female' => 'Benow',
-'email' => 'E-bost',
-'prefs-help-email' => 'A-dhowis yw ry trigva ebost, mes res yw y sensy rag dassettya agas ger tremena mars yw ankevys.',
-'prefs-help-email-others' => 'Why a yll dowis gasa dhe re erel kestava dhywgh der ebost yn unn glyckya kevren war agas folen devnydhyer po kescows.
-Nyns yw disqwedhys agas trigva ebost pan wrella devnydhyoryon erel kestava dhywgh.',
+'email' => 'Ebost',
+'prefs-help-email' => 'A-dhewis yw ri trigva ebost, mes res yw rag dassettya agas ger tremena mar po ankevys.',
+'prefs-help-email-others' => 'Hwi a yll dewis gasa dhe re erel kestava dhywgh der ebost dre glyckya kevren war agas folen dhevnydhyer po folen geskows.
+Ny dhiskwedhir agas trigva ebost pan gestaffo devnydhyoryon erel dhywgh.',
'prefs-help-email-required' => 'Res yw trigva ebost.',
+'prefs-info' => 'Kedhlow selvenel',
+'prefs-i18n' => 'Keswlasegyans',
'prefs-signature' => 'Sinans',
'prefs-advancedediting' => 'Etholyow avonsys',
'prefs-advancedrc' => 'Etholyow avonsys',
'prefs-advancedrendering' => 'Etholyow avonsys',
'prefs-advancedsearchoptions' => 'Etholyow avonsys',
'prefs-advancedwatchlist' => 'Etholyow avonsys',
-'prefs-displayrc' => 'Etholyow disqwedhes',
-'prefs-displaysearchoptions' => 'Etholyow disqwedhes',
-'prefs-displaywatchlist' => 'Etholyow disqwedhes',
+'prefs-displayrc' => 'Etholyow diskwedhes',
+'prefs-displaysearchoptions' => 'Etholyow diskwedhes',
+'prefs-displaywatchlist' => 'Etholyow diskwedhes',
# User rights
-'userrights-user-editname' => 'Entrowgh hanow usyer:',
+'userrights-user-editname' => 'Entrewgh hanow devnydhyer:',
'userrights-groupsmember' => 'Esel a:',
'userrights-reason' => 'Acheson:',
# Groups
'group' => 'Bagas:',
'group-user' => 'Devnydhyoryon',
+'group-autoconfirmed' => 'Devnydhyoryon awto-afydhyes',
'group-bot' => 'Bottow',
'group-sysop' => 'Menystroryon',
'group-all' => '(oll)',
# Rights
'right-read' => 'Redya folennow',
'right-edit' => 'Chanjya folennow',
-'right-createtalk' => 'Gwruthyl folennow kescows',
-'right-createaccount' => 'Formya acontow devnydhyer noweth',
+'right-createtalk' => 'Gwruthyl folennow keskows',
+'right-createaccount' => 'Gwruthyl akontow devnydhyer nowyth',
'right-move' => 'Gwaya folennow',
'right-movefile' => 'Gwaya restrennow',
-'right-upload' => 'Ughcarga restrennow',
+'right-upload' => 'Ughkarga restrennow',
'right-delete' => 'Dilea folennow',
# Special:Log/newusers
-'newuserlogpage' => 'Covnoten formya acontow devnydhyer',
+'newuserlogpage' => 'Kovnoten gwruthyl akontow devnydhyer',
# User rights log
-'rightslog' => 'Covnoten wiryow an devnydhyer',
+'rightslog' => 'Kovnoten wiryow an devnydhyer',
# Associated actions - in the sentence "You do not have permission to X"
'action-edit' => 'chanjya an folen-ma',
'action-move' => 'gwaya an folen-ma',
'action-movefile' => 'gwaya an restren-ma',
-'action-upload' => 'ughcarga an restren-ma',
+'action-upload' => 'ughkarga an restren-ma',
'action-delete' => 'dilea an folen-ma',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|chanj|chanj}}',
'recentchanges' => 'Chanjyow a-dhiwedhes',
'recentchanges-legend' => 'Etholyow an chanjyow a-dhiwedhes',
-'recentchanges-summary' => "Sewya an chanjyow diwettha eus dhe'n wiki war'n folen-ma.",
-'recentchanges-feed-description' => "Helerhy an chanjyow diwettha dhe'n wiki y'n feed-ma.",
-'recentchanges-label-newpage' => 'Y feu gwres folen noweth gans an chanj-ma',
-'recentchanges-label-minor' => 'Chanj bian yw hemma',
-'recentchanges-label-bot' => 'An chanj-ma a veu gwres gans bott',
-'rcnote' => "A-woles yma'n {{PLURAL:$1|'''1''' chanj}} y'n {{PLURAL:$2|jedh|'''$2''' dedh}} diwettha, a-ban $5, $4.",
-'rclistfrom' => 'Disqwedhes chanjyow noweth ow talleth a-ban $1.',
-'rcshowhideminor' => '$1 chanjyow bian',
-'rcshowhidebots' => '$1 botow',
+'recentchanges-summary' => "Y hyllir helerhi an chanjyow diwettha gwrys dhe'n wiki war an folen-ma.",
+'recentchanges-feed-description' => "Y hyllir helerhi an chanjyow diwettha gwrys dhe'n wiki y'n feed-ma.",
+'recentchanges-label-newpage' => 'Y feu gwruthys folen nowyth gans an chanj-ma',
+'recentchanges-label-minor' => 'Chanj byhan yw hemma',
+'recentchanges-label-bot' => 'Gwrys veu an chanj-ma gans bott',
+'recentchanges-label-unpatrolled' => 'Ny veu an chanj-ma patrolyes hwath',
+'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',
'rcshowhideliu' => '$1 devnydhoryon omgelmys',
'rcshowhideanons' => '$1 devnydhyoryon dihanow',
'rcshowhidemine' => '$1 ow chanjyow',
-'rclinks' => "Disqwedhes an $1 chanj diwettha gwres y'n $2 dedh diwettha<br />$3",
+'rclinks' => "Diskwedhes an $1 chanj diwettha gwrys y'n $2 dydh diwettha<br />$3",
'diff' => 'dyffrans',
-'hist' => 'istory',
-'hide' => 'Cudha',
-'show' => 'Disqwedhes',
+'hist' => 'istori',
+'hide' => 'Kudha',
+'show' => 'Diskwedhes',
'minoreditletter' => 'B',
'newpageletter' => 'N',
'boteditletter' => 'bott',
-'newsectionsummary' => '/* $1 */ rann noweth',
-'rc-enhanced-expand' => 'Disqwedhes an manylyon (res yw JavaScript)',
-'rc-enhanced-hide' => 'Cudha manylyon',
+'newsectionsummary' => '/* $1 */ tregh nowyth',
+'rc-enhanced-expand' => 'Diskwedhes an manylyon (res yw JavaScript)',
+'rc-enhanced-hide' => 'Kudha an manylyon',
# Recent changes linked
'recentchangeslinked' => 'Chanjyow kelmys',
'recentchangeslinked-feed' => 'Chanjyow kelmys',
'recentchangeslinked-toolbox' => 'Chanjyow kelmys',
'recentchangeslinked-title' => 'Chanjyow kelmys dhe "$1"',
-'recentchangeslinked-noresult' => 'Nyns esa chanj veth war folennow kevrennys dres an termyn res.',
-'recentchangeslinked-summary' => "Hemm yw rol a janjyow a-dhiwedhes gwres dhe folennow yw kevrennys dhyworth folen res (po dhe esely a glass res).
-'''Tew''' yw folennow eus war agas [[Special:Watchlist|rol golyas]].",
+'recentchangeslinked-noresult' => 'Nyns esa chanj vyth war folennow kevrennys dres an termyn res.',
+'recentchangeslinked-summary' => "Homm yw rol a janjyow gwrys a-dhiwedhes dhe folennow yw kevrennys dhyworth folen res (po dhe eseli a glass res).
+'''Tew''' yw folennow eus war agas [[Special:Watchlist|rol golya]].",
'recentchangeslinked-page' => 'Hanow an folen:',
-'recentchangeslinked-to' => "Disqwedhes chanjyow dhe folennow kevennys dhe'n folen res yn le",
+'recentchangeslinked-to' => "Diskwedhes chanjyow dhe folennow kevrennys dhe'n folen res yn le",
# Upload
-'upload' => 'Ughcarga restren',
-'uploadbtn' => 'Ughcarga restren',
-'reuploaddesc' => "Hedhy ughcarga ha dewheles dhe'n furvlen ughcarga",
+'upload' => 'Ughkarga restren',
+'uploadbtn' => 'Ughkarga restren',
+'reuploaddesc' => "Hedhi ughkarga ha dehweles dhe'n furvlen ughkarga",
'uploadnologin' => 'Digelmys',
-'uploadnologintext' => 'Res yw bos [[Special:UserLogin|omgelmys]] rag ughcarga restrennow.',
-'uploaderror' => 'Gwall ughcarga',
-'uploadlogpage' => 'Covnoten ughcarga',
+'uploadnologintext' => 'Res yw bos [[Special:UserLogin|omgelmys]] rag ughkarga restrennow.',
+'uploaderror' => 'Gwall ughkarga',
+'uploadlogpage' => 'Kovnoten ughkarga',
'filename' => 'Hanow an restren',
-'filedesc' => 'Derivas cot',
-'fileuploadsummary' => 'Derivas cot:',
+'filedesc' => 'Berrskrif',
+'fileuploadsummary' => 'Berrskrif:',
'filesource' => 'Pennfenten:',
'savefile' => 'Gwitha restren',
'uploadedimage' => '"[[$1]]" ughkergys',
'listfiles_date' => 'Dedhyans',
'listfiles_name' => 'Hanow',
'listfiles_user' => 'Devnydhyer',
-'listfiles_size' => 'Mens',
-'listfiles_description' => 'Descrifans',
+'listfiles_size' => 'Myns',
+'listfiles_description' => 'Deskrifans',
'listfiles_count' => 'Versyons',
# File description page
'file-anchor-link' => 'Restren',
-'filehist' => 'Istory an restren',
-'filehist-help' => 'Clyckyowgh war dedhyans/eur rag gweles an folen del veu nena.',
+'filehist' => 'Istori an restren',
+'filehist-help' => 'Klyckyewgh war dhedhyans/eur rag gweles an folen del omdhiskwedhas nena.',
'filehist-deleteall' => 'dilea oll',
'filehist-deleteone' => 'dilea',
-'filehist-revert' => 'trebuchya',
+'filehist-revert' => 'gorthtreylya',
'filehist-current' => 'a-lemmyn',
'filehist-datetime' => 'Dedhyans/Eur',
'filehist-thumb' => 'Skeusennik',
-'filehist-thumbtext' => 'Skeusennik rag an versyon a-ban $1',
-'filehist-nothumb' => 'Nyns eus skeudennik',
+'filehist-thumbtext' => 'Skeusennik rag an versyon a-dhia $1',
+'filehist-nothumb' => 'Nyns eus skeusennik',
'filehist-user' => 'Devnydhyer',
-'filehist-dimensions' => 'Mensow',
+'filehist-dimensions' => 'Mynsow',
'filehist-filesize' => 'Mens an restren',
-'filehist-comment' => 'Ger',
+'filehist-comment' => 'Kampol',
'imagelinks' => 'Devnydh an restren',
-'linkstoimage' => "Yma'n {{PLURAL:$1|folen|$1 folen}} a sew ow kevrenna dhe'n restren-ma:",
+'linkstoimage' => "Yma an {{PLURAL:$1|folen|$1 folen}} a syw ow kevrenna dhe'n restren-ma:",
'linkstoimage-more' => "Yma moy es $1 {{PLURAL:$1|folen}} ow kevrenna dhe'n restren-ma.
-Yma an rol a sew ow tisqwedhes an {{PLURAL:$1|an kensa kevren folen|kensa $1 kevren folen}} dhe'n restren-ma hepken.
-Yma [[Special:WhatLinksHere/$2|rol leun]] cavadow.",
-'nolinkstoimage' => "Nyns eus folen ow kevrenna dhe'n restren-ma.",
+Ny dhiskwa an rol a syw marnas an {{PLURAL:$1|kynsa kevren folen|kynsa $1 kevren folen}} dhe'n restren-ma.
+Yma [[Special:WhatLinksHere/$2|rol leun]] kavadow.",
+'nolinkstoimage' => "Nyns eus folen vyth ow kevrenna dhe'n restren-ma.",
'morelinkstoimage' => "Gweles [[Special:WhatLinksHere/$1|moy kevrennow]] dhe'n restren-ma.",
'sharedupload' => 'Yma an folen-ma ow tos dhyworth $1 ha hy a alsa bos yn-dann devnydh gans ragdresow erel.',
-'sharedupload-desc-here' => "Yma'n restren-ma ow tos dhyworth $1 ha hy a alsa bos yn-dann devnydh gans ragdresow erel.
-Yma'n descrifans war y [$2 folen dhescrifans] disqwedhys a-woles.",
-'uploadnewversion-linktext' => "Ughcarga versyon noweth a'n restren-ma",
+'sharedupload-desc-here' => 'Yma an restren-ma dhe $1 ha ragdresow erel a alsa bos orth hy devnydhya.
+Diskwedhys a-woles yw an deskrifans war hy [$2 folen dheskrifans] ena.',
+'uploadnewversion-linktext' => "Ughkarga versyon nowyth a'n restren-ma",
# File deletion
'filedelete' => 'Dilea $1',
'filedelete-submit' => 'Dilea',
# MIME search
-'download' => 'iscarga',
+'download' => 'iskarga',
# Unwatched pages
-'unwatchedpages' => 'Folennow nag eus den veth ow colyas',
+'unwatchedpages' => 'Folennow heb aga golya',
# List redirects
'listredirects' => 'Rol an daswedyansow',
# Unused templates
-'unusedtemplates' => 'Scantlyns heb devnydh',
+'unusedtemplates' => 'Skantlyns heb devnydh',
'unusedtemplateswlh' => 'kevrennow erel',
# Random page
-'randompage' => 'Folen dre jons',
+'randompage' => 'Folen jonsus',
# Statistics
'statistics' => 'Statystygyon',
'brokenredirects-delete' => 'dilea',
'withoutinterwiki' => 'Folennow heb kevrennow yeth',
-'withoutinterwiki-submit' => 'Disqwedhes',
+'withoutinterwiki-submit' => 'Diskwedhes',
# Miscellaneous special pages
'nbytes' => '$1 {{PLURAL:$1|bayt|bayt}}',
'nmembers' => '$1 {{PLURAL:$1|esel|esel}}',
-'uncategorizedpages' => 'Folennow heb class',
-'uncategorizedcategories' => 'Classys heb class',
-'uncategorizedimages' => 'Restrennow heb class',
-'uncategorizedtemplates' => 'Scantlyns heb class',
-'unusedcategories' => 'Classys gwag',
+'uncategorizedpages' => 'Folennow heb klass',
+'uncategorizedcategories' => 'Klassys heb klass',
+'uncategorizedimages' => 'Restrennow heb klass',
+'uncategorizedtemplates' => 'Skantlyns heb klass',
+'unusedcategories' => 'Klassys heb devnydh',
'unusedimages' => 'Restrennow heb devnydh',
'prefixindex' => 'Keniver folen gans an rager',
-'shortpages' => 'Folennow cot',
+'shortpages' => 'Folennow berr',
'longpages' => 'Folennow hir',
'protectedpages' => 'Folennow difresys',
'protectedtitles' => 'Titlys difresys',
-'usercreated' => '{{GENDER:$3|Formyes}} an $1 dhe $2',
-'newpages' => 'Folennow noweth',
+'usercreated' => '{{GENDER:$3|Gwruthys}} an $1 dhe $2',
+'newpages' => 'Folennow nowyth',
'newpages-username' => 'Hanow-usyer:',
-'ancientpages' => 'An cottha folennow',
+'ancientpages' => 'An kottha folennow',
'move' => 'Gwaya',
'movethispage' => 'Gwaya an folen-ma',
-'pager-newer-n' => '{{PLURAL:$1|1 nowettha|$1 nowettha}}',
-'pager-older-n' => '{{PLURAL:$1|1 cottha|$1 cottha}}',
+'pager-newer-n' => '{{PLURAL:$1|1 nowyttha|$1 nowyttha}}',
+'pager-older-n' => '{{PLURAL:$1|1 kottha|$1 kottha}}',
# Book sources
'booksources' => 'Pennfentynyow lyver',
-'booksources-search-legend' => 'Whilas pennfentynyow lyver',
+'booksources-search-legend' => 'Hwilas pennfentynyow lyver',
'booksources-go' => 'Mos',
# Special:Log
'specialloguserlabel' => 'Awtour:',
-'speciallogtitlelabel' => 'Titel:',
-'log' => 'Covnotennow',
+'speciallogtitlelabel' => 'Kosten (titel po devnydhyer):',
+'log' => 'Kovnotennow',
+'logempty' => "Nyns eus tra vyth owth omdhesedha y'n govnoten.",
# Special:AllPages
'allpages' => 'Keniver folen',
'alphaindexline' => '$1 dhe $2',
-'prevpage' => 'Folen gens ($1)',
-'allpagesfrom' => 'Disqwedhes folennow ow talleth orth:',
-'allpagesto' => 'Disqwedhes folennow ow tiwedha orth:',
+'prevpage' => 'Folen gyns ($1)',
+'allpagesfrom' => 'Diskwedhes folennow yn unn dhalleth orth:',
+'allpagesto' => 'Diskwedhes folennow yn unn dhiwedha orth:',
'allarticles' => 'Keniver folen',
-'allpagesprev' => 'Kens',
+'allpagesprev' => 'Kyns',
'allpagesnext' => 'Nessa',
'allpagessubmit' => 'Mos',
-'allpages-hide-redirects' => 'Cudha daswedyansow',
+'allpages-hide-redirects' => 'Kudha daskedyansow',
# Special:Categories
-'categories' => 'Classys',
+'categories' => 'Klassys',
# Special:DeletedContributions
'sp-deletedcontributions-contribs' => 'kevrohow',
# Special:LinkSearch
-'linksearch' => 'Whilas kevrennow a-ves',
-'linksearch-ok' => 'Whilas',
-'linksearch-line' => 'Kevrennys yw $1 dhyworth $2',
+'linksearch' => 'Hwilas kevrennow a-ves',
+'linksearch-ok' => 'Hwilas',
+'linksearch-line' => 'Y kevrennir $1 dhyworth $2',
# Special:ListUsers
-'listusers-submit' => 'Disqwedhes',
+'listusers-submit' => 'Diskwedhes',
# Special:ListGroupRights
-'listgrouprights-members' => '(rol esely)',
+'listgrouprights-members' => '(rol eseli)',
# Email user
-'emailuser' => 'E-bostya an devnydhyer-ma',
-'emailpage' => 'E-bostya devnydhyer',
+'emailuser' => 'Ebostya an devnydhyer-ma',
+'emailpage' => 'Ebostya devnydhyer',
'defemailsubject' => 'Ebost danvenys dre {{SITENAME}} gans an devnydhyer "$1"',
'emailfrom' => 'Dhyworth:',
'emailto' => 'Dhe:',
'emailsend' => 'Danvon',
# Watchlist
-'watchlist' => 'Ow rol golyas',
-'mywatchlist' => 'Ow rol golyas',
+'watchlist' => 'Rol golya',
+'mywatchlist' => 'Rol golya',
'watchlistfor2' => 'Rag $1 ($2)',
-'watch' => 'Golyas',
-'watchthispage' => 'Golyas an folen-ma',
-'unwatch' => 'Diswolyas',
-'watchlist-details' => 'Yma {{PLURAL:$1|$1 folen}} war agas rol golyas, marnas folennow kescows.',
-'wlshowlast' => 'Disqwedhes an $1 our $2 dedh $3 diwettha',
-'watchlist-options' => 'Etholyow an rol golyas',
+'watch' => 'Golya',
+'watchthispage' => 'Golya an folen-ma',
+'unwatch' => 'Diswolya',
+'watchlist-details' => 'Yma {{PLURAL:$1|$1 folen}} war agas rol golya, marnas folennow keskows.',
+'wlshowlast' => 'Diskwedhes an $1 our $2 dydh $3 diwettha',
+'watchlist-options' => 'Etholyow an rol golya',
# Displayed when you click the "watch" button and it is in the process of watching
-'watching' => 'Ow colyas...',
-'unwatching' => 'Ow tisgolyas...',
+'watching' => 'Ow kolya...',
+'unwatching' => 'Ow tisgolya...',
# Delete
'deletepage' => 'Dilea an folen',
'confirm' => 'Afydhya',
-'excontent' => 'yth esa ynny: "$1"',
+'excontent' => 'yth esa ynni: "$1"',
'delete-confirm' => 'Dilea "$1"',
'delete-legend' => 'Dilea',
-'actioncomplete' => 'Cowlwres yw an gwrians',
-'actionfailed' => 'An gwrians a fyllas',
-'deletedtext' => '"$1" yw dileys.
-Gwelowgh $2 rag covadh a dhileansow a-dhiwedhes.',
-'dellogpage' => 'Covnoten dhilea',
-'deletionlog' => 'covnoten dhilea',
+'actioncomplete' => 'Kowlwrys yw an gwrians',
+'actionfailed' => 'An gwrians a fyllis',
+'deletedtext' => '"$1" re beu diles.
+Gwelewgh $2 rag kovadh a dhileansow a-dhiwedhes.',
+'dellogpage' => 'Kovnoten dhilea',
+'deletionlog' => 'kovnoten dhilea',
'deletecomment' => 'Acheson:',
'deleteotherreason' => 'Acheson aral/keworansel:',
'deletereasonotherlist' => 'Acheson aral',
# Rollback
-'rollbacklink' => 'restorya',
+'rollbacklink' => 'revya war-dhelergh',
# Protect
-'protectlogpage' => 'Covnoten dhifres',
-'protectedarticle' => 'a dhifresas "[[$1]]"',
+'protectlogpage' => 'Kovnoten dhifres',
+'protectedarticle' => '"[[$1]]" difresys',
'prot_1movedto2' => '[[$1]] gwayys dhe [[$2]]',
'protectcomment' => 'Acheson:',
'protectexpiry' => 'Ow tiwedha:',
'protect_expiry_invalid' => 'Drog yw an termyn diwedha.',
-'protect_expiry_old' => "Yma'n termyn diwedha y'n termyn eus passyes.",
-'protect-level-sysop' => 'Menystroryon hepken',
+'protect_expiry_old' => "Yma an termyn diwedha y'n termyn eus passyes.",
+'protect-level-sysop' => 'Alowa menystroryon hepken',
'protect-summary-cascade' => 'ow froslamma',
-'protect-expiring' => 'y whra diwedha $1 (UTC)',
-'restriction-type' => 'Cummyas:',
+'protect-expiring' => 'diwedhans $1 (UTC)',
+'restriction-type' => 'Kummyas:',
'pagesize' => '(bayt)',
# Restrictions (nouns)
'restriction-edit' => 'Chanjya',
'restriction-move' => 'Gwaya',
'restriction-create' => 'Gwruthyl',
-'restriction-upload' => 'Ughcarga',
+'restriction-upload' => 'Ughkarga',
# Undelete
-'undeletelink' => 'gweles/restorya',
+'undeletelink' => 'gweles/gorthtreylya',
'undeleteviewlink' => 'gweles',
-'undelete-search-submit' => 'Whilas',
+'undelete-search-submit' => 'Hwilas',
'undelete-show-file-submit' => 'Ya',
# Namespace form on various pages
'namespace' => 'Spas hanow:',
-'invert' => 'Trebuchya an dowisyans',
+'invert' => 'Trebuchya an dewisyans',
'namespace_association' => 'Spas hanow kelmys',
'blanknamespace' => '(Penn)',
# Contributions
-'contributions' => 'Kevrohow an devnydhyer',
+'contributions' => 'Kevrohow an {{GENDER:$1|devnydhyer}}',
'contributions-title' => 'Kevrohow $1',
'mycontris' => 'Kevrohow',
'contribsub2' => 'Rag $1 ($2)',
'month' => 'Dhyworth an mis (ha moy a-varr):',
'year' => 'Dhyworth an vledhen (ha moy a-varr):',
-'sp-contributions-newbies' => 'Disqwedhes yn unnik kevrohow acontow noweth',
-'sp-contributions-blocklog' => 'covnoten lettya',
-'sp-contributions-uploads' => 'ughcargansow',
-'sp-contributions-logs' => 'covnotennow',
-'sp-contributions-talk' => 'kescows',
-'sp-contributions-search' => 'Whilas kevrohow',
-'sp-contributions-username' => 'Trigva IP po hanow-usyer:',
-'sp-contributions-toponly' => 'Disqwedhes yn unnik chanjyow yw amendyansow diwettha',
-'sp-contributions-submit' => 'Whilas',
+'sp-contributions-newbies' => 'Diskwedhes yn unnik kevrohow akontow nowyth',
+'sp-contributions-blocklog' => 'kovnoten lettya',
+'sp-contributions-uploads' => 'ughkargansow',
+'sp-contributions-logs' => 'kovnotennow',
+'sp-contributions-talk' => 'keskows',
+'sp-contributions-search' => 'Hwilas kevrohow',
+'sp-contributions-username' => 'Trigva IP po hanow devnydhyer:',
+'sp-contributions-toponly' => 'Diskwedhes yn unnik chanjyow yw amendyansow diwettha',
+'sp-contributions-submit' => 'Hwilas',
# What links here
-'whatlinkshere' => "Pandr'eus ow kevrenna omma",
+'whatlinkshere' => 'Pyth a gevren dhe omma',
'whatlinkshere-title' => 'Folennow ow kevrenna dhe "$1"',
'whatlinkshere-page' => 'Folen:',
-'linkshere' => "Yma'n folennow a sew ow kevrenna dhe '''[[:$1]]''':",
-'nolinkshere' => "Nyns eus folen ow kevrenna dhe '''[[:$1]]'''.",
-'isredirect' => 'folen daswedyans',
-'istemplate' => 'treuscludyans',
+'linkshere' => "Yma an folennow a syw ow kevrenna dhe '''[[:$1]]''':",
+'nolinkshere' => "Nyns eus folen vyth ow kevrenna dhe '''[[:$1]]'''.",
+'isredirect' => 'folen daskedyans',
+'istemplate' => 'treuskludyans',
'isimage' => 'kevren an restren',
-'whatlinkshere-prev' => '{{PLURAL:$1|kens|kens $1}}',
+'whatlinkshere-prev' => '{{PLURAL:$1|kyns|$1 kyns}}',
'whatlinkshere-next' => '{{PLURAL:$1|nessa|nessa $1}}',
'whatlinkshere-links' => '← kevrennow',
-'whatlinkshere-hideredirs' => '$1 daswedyansow',
-'whatlinkshere-hidetrans' => '$1 treuscludyans',
+'whatlinkshere-hideredirs' => '$1 daskedyansow',
+'whatlinkshere-hidetrans' => '$1 treuskludyans',
'whatlinkshere-hidelinks' => '$1 kevrennow',
'whatlinkshere-hideimages' => '$1 kevrennow restren',
'whatlinkshere-filters' => 'Sidhlow',
'ipadressorusername' => 'Trigva IP po hanow-usyer:',
'ipbreason' => 'Acheson:',
'ipbreasonotherlist' => 'Acheson aral',
-'ipboptions' => '2 our:2 hours,1 dhedh:1 day,3 dedh: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',
+'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',
-'ipblocklist-submit' => 'Whilas',
+'ipblocklist-submit' => 'Hwilas',
'blocklink' => 'lettya',
'unblocklink' => 'dislettya',
'change-blocklink' => 'chanjya an lettyans',
'contribslink' => 'kevrohow',
-'blocklogpage' => 'Covnoten lettya',
-'blocklogentry' => 'a lettyas [[$1]], bys dhe $2 $3',
-'unblocklogentry' => 'dislettyas $1',
+'blocklogpage' => 'Kovnoten lettya',
+'blocklogentry' => '[[$1]] lettyes, bys dhe $2 $3',
+'unblocklogentry' => '$1 dislettyes',
'block-log-flags-anononly' => 'devnydhyoryon dihanow hepken',
-'block-log-flags-nocreate' => 'dialosegys yw formya acontow',
-'block-log-flags-hiddenname' => 'hanow usyer cudhys',
+'block-log-flags-nocreate' => 'dialosegys yw gwruthyl akontow',
+'block-log-flags-hiddenname' => 'hanow devnydhyer kudhys',
# Move page
'move-page' => 'Gwaya $1',
'move-page-legend' => 'Gwaya folen',
+'movepagetext' => "Devnydhya an furvlen a-woles a dhashenow folen, yn unn waya oll y istori dhe'n hanow nowyth.
+An titel koth a vydh folen dhaskedyans dhe'n titel nowyth.
+Hwi a yll nowedhi daskedyansow a boynt dhe'n titel derowel yn awtomatek.
+Mar ny wrewgh, surhewgh hwi dhe jeckya rag [[Special:DoubleRedirects|daskedyansow dobyl]] po [[Special:BrokenRedirects|terrys]].
+Omgemeryansek owgh rag surhe y pes kevrennow poyntya dhe'n tyller ewn.
+
+Notyewgh '''na wayir''' an folen mars eus folen orth an titel nowyth seulabrys, marnas bos an pyth kampollys diwettha daskedyans ha ny'n jeves istori chanjya kyns vyth.
+Hemm a styr y hyllowgh diswul dashenwel folen mar kwrewgh kammwrians, ha ny yllowgh gorskrifa folen eus ena seulabrys.
+
+'''Gwarnyans!'''
+Hemm a yll bos chanj tromm ha bras dres ehen rag folen gerys-da;
+Surhewgh mar pleg hwi dhe gonvedhes sewyansow an gwrians-ma kyns mos yn-rag.",
'movearticle' => 'Gwaya an folen:',
-'newtitle' => 'Dhe ditel noweth:',
+'moveuserpage-warning' => "'''Gwarnyans''': Yth esowgh ow mos dhe waya folen dhevnydhyer. Notyewgh mar pleg ny vydh marnas an folen gwayys ha ''ny vydh'' an devnydhyer dashenwys.",
+'newtitle' => 'Dhe ditel nowyth:',
'move-watch' => 'Golya an folen-ma',
'movepagebtn' => 'Gwaya an folen',
-'pagemovedsub' => 'An gwarnyans a sowenas',
+'pagemovedsub' => 'Gwaya a sewenis',
'movepage-moved' => '\'\'\'Gwayys re beu "$1" dhe "$2"\'\'\'',
'movedto' => 'gwayys dhe',
-'movelogpage' => 'Covnoten waya',
+'movelogpage' => 'Kovnoten waya',
+'movenosubpage' => "Ny's teves an folen-ma isfolen vyth.",
'movereason' => 'Acheson:',
-'revertmove' => 'trebuchya',
+'revertmove' => 'gorthtreylya',
# Export
-'export' => 'Esperthy folennow',
+'export' => 'Esperthi folennow',
'export-addcat' => 'Keworra',
'export-addns' => 'Keworra',
# Namespace 8 related
'allmessagesname' => 'Hanow',
-'allmessagesdefault' => 'Text messach defowt',
+'allmessagesdefault' => 'Tekst messach defowt',
# Thumbnails
'thumbnail-more' => 'Brashe',
-'thumbnail_error' => 'Gwall ow formya skeusennik: $1',
+'thumbnail_error' => 'Gwall ow kwruthyl skeusennik: $1',
# Special:Import
-'import' => 'Ymperthy folennow',
-'import-interwiki-submit' => 'Ymperthy',
-'import-upload-filename' => 'Hanow-restren:',
-'importstart' => 'Owth ymperthy folennow...',
-'import-noarticle' => 'Nyns eus folen veth dhe ymperthy!',
+'import' => 'Ymperthi folennow',
+'import-interwiki-submit' => 'Ymperthi',
+'import-upload-filename' => 'Hanow an restren:',
+'importstart' => 'Owth ymperthi folennow...',
+'import-noarticle' => 'Nyns eus folen vyth dhe ymperthi!',
# Tooltip help for the actions
'tooltip-pt-userpage' => 'Agas folen dhevnydhyer',
'tooltip-pt-mytalk' => 'Agas folen gows',
-'tooltip-pt-preferences' => 'Agas dowisyansow',
-'tooltip-pt-watchlist' => 'Rol a folennow esowgh why ow colyas rag chanjyow',
+'tooltip-pt-preferences' => 'Agas dewisyansow',
+'tooltip-pt-watchlist' => 'Rol a folennow esowgh ow kolya rag chanjyow',
'tooltip-pt-mycontris' => "Rol a'gas kevrohow",
-'tooltip-pt-login' => 'Gwell via dhywgh mar tewgh why hag omgelmy, mes nyns yw besy',
-'tooltip-pt-logout' => 'Digelmy',
-'tooltip-ca-talk' => "Dadhel a-dro dhe'n folen",
-'tooltip-ca-edit' => "Why a yll chanjya an folen-ma. Gwrewgh usya an boton 'ragweles' kens gwitha mar pleg.",
-'tooltip-ca-addsection' => 'Dalleth rann noweth',
-'tooltip-ca-viewsource' => 'Alwhedhys yw an folen-ma.
-Why a yll gweles hy fennfenten.',
-'tooltip-ca-history' => "Amendyansow coth a'n folen-ma",
+'tooltip-pt-login' => 'Ni a gomend mayth omgelmowgh, mes nyns yw besi',
+'tooltip-pt-logout' => 'Digelmi',
+'tooltip-ca-talk' => "Dadhlow a-dro dhe'n folen",
+'tooltip-ca-edit' => "Hwi a yll chanjya an folen-ma. Devnydhyewgh an boton 'ragweles' kyns gwitha mar pleg.",
+'tooltip-ca-addsection' => 'Dalleth tregh nowyth',
+'tooltip-ca-viewsource' => 'Difresys yw an folen-ma.
+Hwi a yll gweles hy fennfenten.',
+'tooltip-ca-history' => "Amendyansow koth a'n folen-ma",
'tooltip-ca-protect' => 'Difres an folen-ma',
'tooltip-ca-delete' => 'Dilea an folen-ma',
'tooltip-ca-move' => 'Gwaya an folen-ma',
-'tooltip-ca-watch' => "Keworra an folen-ma dhe'gas rol golyas",
-'tooltip-ca-unwatch' => 'Dilea an folen-ma dhyworth agas rol golyas',
-'tooltip-search' => 'Whilas yn {{SITENAME}}',
+'tooltip-ca-watch' => "Keworra an folen-ma dhe'gas rol golya",
+'tooltip-ca-unwatch' => 'Dilea an folen-ma dhyworth agas rol golya',
+'tooltip-search' => 'Hwilas yn {{SITENAME}}',
'tooltip-search-go' => 'Mos dhe folen gans an keth hanow-ma, mars eus',
-'tooltip-search-fulltext' => "Whilas an text-ma y'n folennow",
-'tooltip-p-logo' => "Mos dhe'n folen dre",
-'tooltip-n-mainpage' => "Mos dhe'n folen dre",
-'tooltip-n-mainpage-description' => "Mos dhe'n folen dre",
-'tooltip-n-portal' => "A-dro dhe'n ragdres, an peth a yllowgh why gwul, ple dhe gavos taclow",
-'tooltip-n-currentevents' => 'Cavos kedhlow a-dro dhe dharvosow a-lemmyn',
+'tooltip-search-fulltext' => "Hwilas an tekst-ma y'n folennow",
+'tooltip-p-logo' => "Mos dhe'n folen dynnargh",
+'tooltip-n-mainpage' => "Mos dhe'n folen dynnargh",
+'tooltip-n-mainpage-description' => "Mos dhe'n folen dynnargh",
+'tooltip-n-portal' => "A-dro dhe'n ragdres, an pyth a yllowgh gul, ple hyllir kavos taklow",
+'tooltip-n-currentevents' => 'Kavos kedhlow a-dro dhe hwarvosow a-lemmyn',
'tooltip-n-recentchanges' => "Rol a janjyow a-dhiwedhes y'n wiki",
-'tooltip-n-randompage' => 'Carga folen dre jons',
+'tooltip-n-randompage' => 'Karga folen jonsus',
'tooltip-n-help' => 'Gweres',
-'tooltip-t-whatlinkshere' => 'Rol a bub folen wiki ow kevrenna dhe omma',
-'tooltip-t-recentchangeslinked' => 'Chanjyow a-dhiwedhes yn folennow eus kevrennys dhyworth an folen-ma',
+'tooltip-t-whatlinkshere' => 'Rol a bub folen wiki a gevren dhe omma',
+'tooltip-t-recentchangeslinked' => 'Chanjyow a-dhiwedhes yn folennow a gevrennir dhyworth an folen-ma',
'tooltip-feed-rss' => 'Feed RSS rag an folen-ma',
'tooltip-feed-atom' => 'Feed Atom rag an folen-ma',
'tooltip-t-contributions' => 'Gweles rol a gevrohow an devnydhyer-ma',
-'tooltip-t-emailuser' => "Danvon e-bost dhe'n devnydhyer-ma",
-'tooltip-t-upload' => 'Ughcarga restrennow',
+'tooltip-t-emailuser' => "Danvon ebost dhe'n devnydhyer-ma",
+'tooltip-t-upload' => 'Ughkarga restrennow',
'tooltip-t-specialpages' => 'Rol a geniver folen arbennek',
'tooltip-t-print' => "Versyon pryntyadow a'n folen-ma",
'tooltip-t-permalink' => "Kevren fast dhe'n amendyans-ma a'n folen",
'tooltip-ca-nstab-main' => 'Gweles an folen',
-'tooltip-ca-nstab-user' => 'Gweles an folen devnydhyer',
-'tooltip-ca-nstab-special' => 'Folen arbennek yw hemma; ny yllowgh why chanjya an folen hy honen.',
+'tooltip-ca-nstab-user' => 'Gweles an folen dhevnydhyer',
+'tooltip-ca-nstab-special' => 'Folen arbennek yw homma; ny yllowgh chanjya an folen hy honen.',
'tooltip-ca-nstab-project' => 'Gweles folen an wiki',
'tooltip-ca-nstab-image' => 'Gweles folen an restren',
-'tooltip-ca-nstab-template' => 'Gweles an scantlyn',
-'tooltip-ca-nstab-category' => 'Gweles folen an class',
-'tooltip-minoredit' => 'Merkya hemma avel chanj bian',
+'tooltip-ca-nstab-template' => 'Gweles an skantlyn',
+'tooltip-ca-nstab-category' => 'Gweles folen an klass',
+'tooltip-minoredit' => 'Merkya hemma avel chanj byhan',
'tooltip-save' => 'Gwitha agas chanjyow',
-'tooltip-preview' => 'Ragweles agas chanjyow; gwrewgh usya hemma kens gwitha mar pleg!',
-'tooltip-diff' => "Disqwedhes an chanjyow eus gwres genowgh dhe'n text",
-'tooltip-compareselectedversions' => "Gweles an dyffransow ynter an dhew janjyow dowisyes a'n folen-ma",
-'tooltip-watch' => "Keworra an folen-ma dhe'gas rol golyas",
-'tooltip-rollback' => '"Restorya" a wra trebuchya chanjyow gwres dhe\'n folen-ma gans an diwettha devnydhyer yn unn glyck',
-'tooltip-undo' => '"Diswul" a wra trebuchya an chanj-ma hag egery an furvlen janjya y\'n modh ragweles. Y hyllir keworra acheson y\'n derivas cot.',
-'tooltip-summary' => 'Entrowgh derivas cot',
+'tooltip-preview' => 'Ragweles agas chanjyow; devnydhyewgh hemma kyns gwitha mar pleg!',
+'tooltip-diff' => "Diskwedhes an chanjyow a wrussowgh dhe'n tekst",
+'tooltip-compareselectedversions' => 'Gweles an dyffransow ynter dew amendyansow dewisyes an folen-ma',
+'tooltip-watch' => "Keworra an folen-ma dhe'gas rol golya",
+'tooltip-rollback' => '"Revya war-dhelergh" a worthtreyl chanjyow an diwettha devnydhyer yn unn glyck',
+'tooltip-undo' => '"Diswul" a worthtreyl an chanj-ma hag ygeri an furvlen janjya y\'n modh ragweles. Y hyllir keworra acheson y\'n berrskrif.',
+'tooltip-summary' => 'Entrewgh berrskrif',
# Attribution
'siteuser' => 'devnydhyer {{SITENAME}} $1',
-'lastmodifiedatby' => 'An folen-ma a veu kens chanjys dhe $2, $1 gans $3.',
+'lastmodifiedatby' => 'Chanj diwettha an folen-ma o dhe $2, $1 gans $3.',
'siteusers' => '{{PLURAL:$2|devnydhyer|devnydhyoryon}} {{SITENAME}} $1',
# Info page
'pageinfo-toolboxlink' => 'Kedhlow an folen',
# Browsing diffs
-'previousdiff' => '← Chanj cottha',
-'nextdiff' => 'Chanj nowettha →',
+'previousdiff' => '← Chanj kottha',
+'nextdiff' => 'Chanj nowyttha →',
# Media information
-'file-info-size' => '$1 × $2 pixel, mens an restren: $3, sort MIME: $4',
-'file-nohires' => 'Nyns eus clerder uhella cavadow.',
-'svg-long-desc' => 'Restren SVG, $1 × $2 pixel yn hanow, mens an restren: $3',
-'show-big-image' => 'Clerder leun',
+'file-info-size' => '$1 × $2 piksel, myns an restren: $3, ehen MIME: $4',
+'file-nohires' => 'Nyns eus klerder uhella kavadow.',
+'svg-long-desc' => 'Restren SVG, $1 × $2 piksel yn hanow, myns an restren: $3',
+'show-big-image' => 'Klerder leun',
# Special:NewFiles
-'ilsubmit' => 'Whilas',
+'ilsubmit' => 'Hwilas',
# Metadata
'metadata' => 'Metadata',
-'metadata-help' => "Yma dhe'n restren-ma kedhlow keworansel, dres lycklod keworrys dhyworth an camera besyel po an scanyer usys rag hy gwruthyl po hy besya. Mars yw chanjys an restren dhyworth hy studh gwredhek, possybyl yw na veu nebes manylyon nowedhys.",
-'metadata-expand' => 'Disqwedhes manylyon ystynnys',
-'metadata-collapse' => 'Cudha manylyon ystynnys',
+'metadata-help' => "An restren-ma a's teves kedhlow keworansel, dres lycklod keworrys dhyworth an kamera bysyel po an skanyer devnydhys rag hy gwruthyl po hy bysya. Mars yw chanjys an restren dhyworth hy studh gwredhek, possybyl yw na veu nebes manylyon nowedhys.",
+'metadata-expand' => 'Diskwedhes manylyon ystynnys',
+'metadata-collapse' => 'Kudha manylyon ystynnys',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Les',
'exif-imagelength' => 'Uhelder',
'exif-artist' => 'Awtour',
'exif-contrast-0' => 'Usadow',
'exif-contrast-1' => 'Medhel',
-'exif-contrast-2' => 'Cales',
+'exif-contrast-2' => 'Kales',
'exif-saturation-0' => 'Usadow',
'exif-sharpness-0' => 'Usadow',
'exif-sharpness-1' => 'Medhes',
-'exif-sharpness-2' => 'Cales',
+'exif-sharpness-2' => 'Kales',
-'exif-subjectdistancerange-0' => 'Ancoth',
+'exif-subjectdistancerange-0' => 'Ankoth',
# External editor support
'edit-externally' => 'Chanjya an restren-ma dre dowlen a-ves',
# Email address confirmation
'confirmemail' => 'Afydhya an drigva ebost',
-'confirmemail_noemail' => "Nyns eus trigva ebost da settyes y'gas [[Special:Preferences|dowisyansow devnydhyer]].",
+'confirmemail_noemail' => "Nyns eus trigva ebost da settyes y'gas [[Special:Preferences|dewisyansow devnydhyer]].",
# Multipage image navigation
-'imgmultipageprev' => '← folen kens',
+'imgmultipageprev' => '← folen gyns',
'imgmultipagenext' => 'folen nessa →',
-'imgmultigo' => 'Mos!',
+'imgmultigo' => 'Mos',
# Table pager
'table_pager_limit_submit' => 'Mos',
# Auto-summaries
-'autosumm-blank' => 'Gwakhes an folen',
-'autoredircomment' => 'Daswedyas an folen war-tu [[$1]]',
-'autosumm-new' => "Folen formyes gans: '$1'",
+'autosumm-blank' => 'Gwakhes veu an folen',
+'autoredircomment' => 'Folen daswedyes war-tu ha [[$1]]',
+'autosumm-new' => "Folen gwruthys gans: '$1'",
# Live preview
-'livepreview-loading' => 'Ow carga...',
-'livepreview-ready' => 'Ow carga... Parys!',
+'livepreview-loading' => 'Ow karga...',
+'livepreview-ready' => 'Ow karga... Parys!',
# Watchlist editor
-'watchlistedit-noitems' => "Nyns eus titel veth y'gas rol golyas.",
-'watchlistedit-normal-title' => 'Chanjya an rol golyas',
-'watchlistedit-normal-legend' => 'Dilea titlys dhyworth agas rol golyas',
-'watchlistedit-normal-explain' => 'Yma disqwedhys a-woles titlys war agas rol golyas.
-Rag dilea titel, checkyowgh an gisten rebdho, ha clyckyowgh "{{int:Watchlistedit-normal-submit}}".
-Why a yll [[Special:EditWatchlist/raw|chanjya restren an rol golyas]] ynwedh.',
+'watchlistedit-noitems' => "Nyns eus titel vyth y'gas rol golya.",
+'watchlistedit-normal-title' => 'Chanjya an rol golya',
+'watchlistedit-normal-legend' => 'Dilea titlys dhyworth agas rol golya',
+'watchlistedit-normal-explain' => 'Yma diskwedhys a-woles titlys war agas rol golya.
+Rag dilea titel, checkyewgh an gisten rybdho, ha klyckyewgh "{{int:Watchlistedit-normal-submit}}".
+Hwi a yll [[Special:EditWatchlist/raw|chanjya restren an rol golya]] ynwedh.',
'watchlistedit-normal-submit' => 'Dilea titlys',
'watchlistedit-normal-done' => 'Diles veu {{PLURAL:$1|$1 titel}} dhyworth agas rol golyas',
-'watchlistedit-raw-title' => 'Chanjya restren an rol golyas',
-'watchlistedit-raw-legend' => 'Chanjya restren an rol golyas',
-'watchlistedit-raw-explain' => 'Yma disqwedhys a-woles titlys war agas rol golyas, hag y hyllir hy chanjya dre geworra dhedhy ha dilea dhyworty;
-unn ditel war linen.
-Pan vo diwedh dhywgh, clyckyowgh "{{int:Watchlistedit-raw-submit}}".
-Why a yll [[Special:EditWatchlist|usya an janjyel usadow]] ynwedh.',
+'watchlistedit-raw-title' => 'Chanjya restren an rol golya',
+'watchlistedit-raw-legend' => 'Chanjya restren an rol golya',
+'watchlistedit-raw-explain' => 'Yma diskwedhys a-woles titlys war agas rol golya, hag y hyllir hy chanjya dre geworra dhedhi ha dilea dhyworti;
+unn ditel war unn linen.
+Pan vo diwedh dhywgh, klyckyewgh "{{int:Watchlistedit-raw-submit}}".
+Hwi a yll [[Special:EditWatchlist|devnydhya an janjyel usadow]] ynwedh.',
'watchlistedit-raw-titles' => 'Titlys:',
-'watchlistedit-raw-submit' => 'Nowedhy an rol golyas',
-'watchlistedit-raw-done' => 'Nowedhys re beu agas rol golyas.',
+'watchlistedit-raw-submit' => 'Nowedhi an rol golya',
+'watchlistedit-raw-done' => 'Nowedhys re beu agas rol golya.',
'watchlistedit-raw-added' => 'Keworrys veu {{PLURAL:$1|$1 titel}}:',
'watchlistedit-raw-removed' => 'Diles veu {{PLURAL:$1|$1 titel}}:',
# Watchlist editing tools
'watchlisttools-view' => 'Gweles chanjyow longus',
-'watchlisttools-edit' => 'Gweles ha chanjya an rol golyas',
-'watchlisttools-raw' => 'Chanjya restren an rol golyas',
+'watchlisttools-edit' => 'Gweles ha chanjya an rol golya',
+'watchlisttools-raw' => 'Chanjya restren an rol golya',
# Signatures
-'signature' => '[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|kescows]])',
+'signature' => '[[{{ns:user}}:$1|$2]] ([[{{ns:user_talk}}:$1|keskows]])',
# Special:Version
'version' => 'Versyon',
'version-other' => 'Aral',
'version-version' => '(Versyon $1)',
-# Special:FilePath
-'filepath-page' => 'Restren:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Hanow an restren:',
-'fileduplicatesearch-submit' => 'Whilas',
+'fileduplicatesearch-submit' => 'Hwilas',
# Special:SpecialPages
'specialpages' => 'Folennow arbennek',
-'specialpages-group-login' => 'Omgelmy / formya acont',
+'specialpages-group-login' => 'Omgelmi / gwruthyl akont',
# Special:BlankPage
'blankpage' => 'Folen wag',
# Special:Tags
+'tag-filter' => 'Sidhel [[Special:Tags|tagyow]]:',
'tags-edit' => 'chanjya',
# Database error messages
-'dberr-header' => "Yma cudyn dhe'n wiki-ma",
+'dberr-header' => "An wiki-ma a'n jeves kudyn",
'dberr-problems' => "Drog yw genen!
-Yma caletter teknogel dhe'n wiasva-ma.",
-'dberr-again' => 'Assayowgh gortos pols ha dascarga.',
+An wiasva-ma a's teves kaletter teknogel.",
+'dberr-again' => 'Assayewgh gortos pols ha daskarga.',
'dberr-info' => '(Ny yllir kestava orth servyer an database: $1)',
-'dberr-usegoogle' => 'Why a yll assaya whilas dre Google.',
+'dberr-usegoogle' => 'Hwi a yll assaya hwilas dre Google.',
# New logging system
-'logentry-delete-delete' => '$1 a dhileas an folen $3',
+'logentry-delete-delete' => '$1 a {{GENDER:$2|dhileas}} an folen $3',
+'logentry-move-move' => '$1 {{GENDER:$2|a wayas}} an folen $3 dhe $4',
+'logentry-move-move-noredirect' => '$1 {{GENDER:$2|a wayas}} an folen $3 dhe $4 heb gasa daskedyans',
+'logentry-move-move_redir' => '$1 {{GENDER:$2|a wayas}} an folen $3 dhe $4 dres daskedyans',
# Search suggestions
-'searchsuggest-search' => 'Whilas',
-'searchsuggest-containing' => 'ynno...',
+'searchsuggest-search' => 'Hwilas',
+'searchsuggest-containing' => 'ynni...',
);
'oct' => 'Окт',
'nov' => 'Ноя',
'dec' => 'Дек',
+'january-date' => 'Январь (Үчтүн айы)',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категория|Категориялар}}',
'newwindow' => '(жаңы терезеде ачылат)',
'cancel' => 'Жокко чыгаруу',
'moredotdotdot' => 'Көбүрөөк...',
+'morenotlisted' => 'Бөлөк эч нерсе жок...',
'mypage' => 'Барак',
'mytalk' => 'Талкуулоо',
'anontalk' => 'Бул IP-дарек үчүн талкуулоо',
'faqpage' => 'Project:КБС',
# Vector skin
-'vector-action-addsection' => 'Тема кошумчалоо',
+'vector-action-addsection' => 'Тема кошуу',
'vector-action-delete' => 'Өчүрүү',
-'vector-action-move' => 'Атын өзгөртүү',
+'vector-action-move' => 'Аталышын өзгөртүү',
'vector-action-protect' => 'Коргоо',
'vector-action-undelete' => 'Калыбына келтирүү',
'vector-action-unprotect' => 'Коргоону өзгөртүү',
'create-this-page' => 'Бул баракты түзүү',
'delete' => 'Өчүрүү',
'deletethispage' => 'Бул баракты өчүрүү',
+'undeletethispage' => 'Баракты калыбына келтир',
'undelete_short' => '$1 {{PLURAL:$1|оңдоону}} калыбына келтирүү',
'viewdeleted_short' => '{{PLURAL:$1|өчүрүлгөн оңдоону}} көрүү',
'protect' => 'Коргоо',
'unprotectthispage' => 'Бул барактын коргоосун өзгөртүү',
'newpage' => 'Жаңы барак',
'talkpage' => 'Бул баракты талкууга алуу',
-'talkpagelinktext' => 'талкуулоо',
+'talkpagelinktext' => 'Талкуулоо',
'specialpage' => 'Кызмат барагы',
'personaltools' => 'Жеке аспаптар',
'postcomment' => 'Жаңы бөлүм',
'articlepage' => 'Макаланы кароо',
-'talk' => 'Талкуулоо',
+'talk' => 'Талкуу',
'views' => 'Көрсөтүүлөр',
'toolbox' => 'Аспаптар',
'userpage' => 'Катышуучунун барагын кароо',
'currentevents-url' => 'Project:Учурдагы окуялар',
'disclaimers' => 'Жоопкерчиликтен баш тартуу',
'disclaimerpage' => 'Project:Жоопкерчиликтен баш тартуу',
-'edithelp' => 'Өзгөртүү боюнча жардам',
-'edithelppage' => 'Help:Редакторлоо',
+'edithelp' => 'Өзгөртүүгө жардам',
'helppage' => 'Help:Мазмуну',
'mainpage' => 'Башбарак',
'mainpage-description' => 'Башбарак',
'policy-url' => 'Project:Эрежелер',
'portal' => 'Жамаат порталы',
'portal-url' => 'Project:Жамаат порталы',
-'privacy' => 'Ð\96аÑ\88Ñ\8bÑ\80Ñ\8bндуулук саясаты',
-'privacypage' => 'Project:Ð\96аÑ\88Ñ\8bÑ\80Ñ\8bндуулук саясаты',
+'privacy' => 'Ð\9aÑ\83пÑ\83Ñ\8fлуулук саясаты',
+'privacypage' => 'Project:Ð\9aÑ\83пÑ\83Ñ\8fлуулук саясаты',
'badaccess' => 'Кирүү катасы',
'badaccess-group0' => 'Сиз сураган аракетти аткарала албайсыз.',
'versionrequired' => "MediaWiki'нин $1 версиясы керек",
+'versionrequiredtext' => 'Бул барак менен иштеш үчүн MediaWiki $1 версиясы талап кылынат. Кара.[[Special:Version|version page]].',
'ok' => 'OK',
'retrievedfrom' => '"$1" булагынан алынды',
'youhavenewmessages' => 'Сизге $1 ($2) бар.',
'newmessageslink' => 'жаңы билдирүүлөр',
'newmessagesdifflink' => 'соңку өзгөрүү',
+'youhavenewmessagesfromusers' => 'Сиз {{PLURAL:$3|катышуучудан|$3 катышуучу}} $1 алдыңыз ($2).',
'youhavenewmessagesmanyusers' => 'Көп колдонуучулардан сиз $1 алдыңыз ($2).',
'newmessageslinkplural' => '{{PLURAL:$1|жаңы билдирүү}}',
'newmessagesdifflinkplural' => 'соңку {{PLURAL:$1|өзгөртүү|өзгөртүүлөр}}',
'youhavenewmessagesmulti' => 'Сизге $1 жаңы кат бар',
'editsection' => 'оңдоо',
'editold' => 'оңдоо',
-'viewsourceold' => 'баÑ\88Ñ\82апкÑ\8b кодÑ\83н көÑ\80Ò¯Ò¯',
+'viewsourceold' => 'кайнаÑ\80Ñ\8bн каÑ\80оо',
'editlink' => 'оңдоо',
-'viewsourcelink' => 'Ð\9aайнарды кара',
+'viewsourcelink' => 'кайнарды кара',
'editsectionhint' => '$1 бөлүмүн оңдоо',
'toc' => 'Мазмуну',
'showtoc' => 'көрсөтүү',
'formerror' => 'Ката: Форманы жөнөтүүгө болбоду.',
'badarticleerror' => 'Бул аракетти бул баракта аткарууга болбой.',
'cannotdelete-title' => '"$1" барагын өчүрүүгө болбойт',
-'badtitle' => 'ЫкÑ\81Ñ\8bз аталыш',
+'badtitle' => 'ТÑ\83Ñ\83Ñ\80а Ñ\8dмеÑ\81 аталыш',
'badtitletext' => 'Талап кылынган барак аталышы туура эмес, бош, же тилдер-аралык же уики-аралык аталышы туура эмес шилтемеленген.
Балким аталышта колдонулбай турган бир же андан көп белги камтылган.',
'wrong_wfQuery_params' => 'wfQuery() функциясы үчүн жарабай турган параметрлер<br />
Функция: $1<br />
Суроо: $2',
-'viewsource' => 'Кароо',
+'viewsource' => 'Кайнарын кароо',
'viewsource-title' => '$1 барагынын баштапкы кодун көрүү',
'actionthrottled' => 'Аралык боюнча чектөө',
'viewsourcetext' => 'Сиз бул барактын баштапкы кодун көрүп жана көчүрүп алсаңыз болот:',
'sqlhidden' => '(SQL суроо жашырылган)',
'ns-specialprotected' => 'Кызмат барактарын оңдоого мүмкүн эмес.',
+'invalidtitle-unknownnamespace' => 'Туура эмес баш сөз',
'exception-nologin' => 'Сиз система кирген жоксуз',
+'exception-nologin-text' => 'Бул барак же аракет сиздин бул уикиге катышуучу атыңыз менен киришти талап кылат.',
# Virus scanner
'virus-badscanner' => "Ырастоо катасы. Белгисиз вирус сканери: ''$1''",
'virus-unknownscanner' => 'белгисиз антивирус:',
# Login and logout pages
+'logouttext' => "'''Азыр сиз эсебиңизден тышкарысыз. '''
+Сиз {{SITENAME}} аноним катары иштей берсеңиз болот,же ошол же башка ат менен <span class='plainlinks'>[$1 кайра кириңиз]</span>. Кээ бир барактар интернет серепчинин кешин жаңыртмайын системага киргендей эле көрүнө берээрин эске алыңыз.",
'welcomeuser' => 'Кош келиңиз, $1!',
'welcomecreation-msg' => 'Сиздин эсеп жазууңуз жаратылды.
{{SITENAME}} сайтынын [[Special:Preferences|ырастоолорун]] өзгөртүүнү унутпаңыз.',
-'yourname' => 'Эсеп жазуусунун аты:',
+'yourname' => 'Катышуучунун аты:',
+'userlogin-yourname' => 'Катышуучунун аты',
+'userlogin-yourname-ph' => 'Өзүңүздүн колдонуучу атыңызды киргизиңиз',
'yourpassword' => 'Сырсөз:',
+'userlogin-yourpassword' => 'Сырсөз',
+'userlogin-yourpassword-ph' => 'Сырсөзүңүздү киргизиңиз',
+'createacct-yourpassword-ph' => 'Сырсөздү киргизиңиз',
'yourpasswordagain' => 'Сырсөздү кайта терүү:',
-'remembermypassword' => 'Бул браузерде менин эсеп жазуумду ($1 {{PLURAL:$1|күнгө}} чейин сактоо)',
+'createacct-yourpasswordagain' => 'Сырсөздү тастыктаңыз',
+'createacct-yourpasswordagain-ph' => 'Сырсөздү кайра киргизиңиз',
+'remembermypassword' => 'Бул браузерде менин катышуучу атымды ($1 {{PLURAL:$1|күнгө}} чейин сактоо)',
+'userlogin-remembermypassword' => 'Мени система кирген боюнча калтыр',
+'userlogin-signwithsecure' => 'Коопсуз байланышты колдонуу',
'securelogin-stick-https' => 'Киргенден кийин HTTPS аркылуу туташтырууну улантуу',
'yourdomainname' => 'Сиздин домен',
'password-change-forbidden' => 'Сиз бул уикиден сырсөзүңүздү өзгөртө албайсыз.',
+'externaldberror' => 'Маалымат базасында ката кетти же сизге сырткы эсебиңизди жаңыртууга уруксат берилген эмес.',
'login' => 'Кирүү',
'nav-login-createaccount' => 'Кирүү / Каттоо',
'loginprompt' => '{{SITENAME}} сайтына кириш үчүн сиз «кукилерге» уруксат беришиңиз керек.',
-'userlogin' => 'Ð\9aиÑ\80Ò¯Ò¯ / Ð\9aаÑ\82Ñ\82оо',
+'userlogin' => 'Ð\9aиÑ\80Ò¯Ò¯ / Ð\9aаÑ\82Ñ\82алÑ\83Ñ\83',
'userloginnocreate' => 'Кирүү',
'logout' => 'Сеансты аяктоо',
'userlogout' => 'Сеансты аяктоо',
'notloggedin' => 'Сиз системага кире элексиз',
-'nologin' => 'Эсеп жазууңуз жокпу? $1.',
-'nologinlink' => 'Эсеп жазуусун жаратуу',
-'createaccount' => 'Эсеп жазуусун жаратуу',
+'userlogin-noaccount' => 'Эсебиңиз жокпу?',
+'userlogin-joinproject' => ' {{SITENAME}} кошулуңуз',
+'nologin' => 'Катталган эмессизби? $1.',
+'nologinlink' => 'Катталуу',
+'createaccount' => 'Катталуу',
'gotaccount' => "Катталгансызбы? '''$1'''.",
'gotaccountlink' => 'Кирүү',
'userlogin-resetlink' => 'Кирүүчү маалыматарыңызды унутуп калдыңызбы?',
-'createaccountmail' => 'Электрондук дарек боюнча',
+'userlogin-resetpassword-link' => 'Сырсөздү алмаштыруу',
+'helplogin-url' => 'Help:Эсепке кирүү',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Системге кирүүгө жардам]]',
+'createacct-join' => 'Маалыматыңызды төмөндө киргизиңиз',
+'createacct-emailrequired' => 'Эмейл дарек',
+'createacct-emailoptional' => 'Эмейл дарек (милдеттү эмес)',
+'createacct-email-ph' => 'Эмейл дарегиңизди киргизиңиз',
+'createaccountmail' => 'Убактылуу түзүлгөн сырсөздү колдон жана аны көрсөтүлгөн эмейл дарекке жөнөт',
+'createacct-realname' => 'Чыныгы аты',
'createaccountreason' => 'Себеби:',
+'createacct-reason' => 'Себеп',
+'createacct-reason-ph' => 'Эмнеге башка эсеп түзүп жатасыз',
+'createacct-captcha' => 'Коопсуздук текшерүүсү',
+'createacct-imgcaptcha-ph' => 'Жогорудагы текстти киргизиңиз',
+'createacct-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}} катышуучуну киргизүү үчүн куки колдонот. Сиздин кукилер өчүрүлгөн.
+Аларды жандырып, анан жаңы катышуучу атыңыз жана сырсөзүңүз менен кириңиз.',
'nocookieslogin' => '{{SITENAME}} сайты катышуучуларды киргизүү үчүн кукилерди колдонот.
Алар сизде өчүрүлүп турат.
Аларды күйгүзүп анан кайта аракет кылып көрүңүз.',
+'nocookiesfornew' => 'Биз кайрылуунун кайнарын тактай албагандыктан катышуучунун эсебин түзүлгөн жок.
+Кукилериңиз жандырылгандыгын текшериңиз, баракты жаңыртып туруп, кайрадан аракет кылыңыз.',
'noname' => 'Сиз анык катышуучунун атын көрсөткөн жоксуз.',
'loginsuccesstitle' => 'Сиз ийгиликтүү кирдиңиз',
'loginsuccess' => "'''Сиз эми {{SITENAME}} сайтына \"\$1\" болуп кирдиңиз.'''",
+'nosuchuser' => '"$1" атту катышуучу катталган эмес.
+Катышуучун аты регистирди айырмалайт.
+Катага текшериңиз же [[Special:UserLogin/signup|жаңы эсеп түзүү]]',
+'nosuchusershort' => '"$1" аттуу катышуучу жок.
+Жазылышын текшериңиз.',
'nouserspecified' => 'Сиз катышуучу атын көрсөтүшүңүз керек.',
'login-userblocked' => 'Бул катышуучу бөгөттөлгөн. Системага кирүүгө уруксат жок.',
'wrongpassword' => 'Ката сырсөз киргизилди. Кайтадан аракет кылып көрүңүз.',
'password-login-forbidden' => 'Бул катышуучунун атын жана сырсөзүн колдонууга тыюу салынган.',
'mailmypassword' => 'Жаңы сырсөздү эл. почта аркылуу жөнөтүү',
'passwordremindertitle' => '{{SITENAME}} үчүн жаңы убактылуу сырсөз',
+'passwordremindertext' => 'Бирөө (балким сиз, $1 IP адресинен) {{SITENAME}}($4) жаңы сырсөз талап кылды. "$2" катышуучу үчүн убактылуу сырсөз түзүлдү жана "$3" үчүн коюлду. Эгер бул сиздин максат болсо, анда системге кирип жаңы сырсөз тандап алышыңыз шарт. Сиздин убактылуу сырсөз {{PLURAL:$5|бир күн|$5 күн}} жарактуу.
+
+Эгер муну башка киши кылса, же сиз сырсөзүңүздү эстесеңиз жана аны алмаштырууну каалабасыңыз, бул билдирүүгө көңүл бурбай, эски сырсөзүңүздү колдоно берсеңиз болот.',
+'noemail' => '"$1" катышуучу үчүн эмейл дареги катталган эмес.',
'noemailcreate' => 'Эл. почтанын анык дарегин көрсөтүшүңүз керек',
+'passwordsent' => '"$1" үчүн катталган эмейлге жаңы сырсөз жөнөтүлдү.
+Аны алгандан кийин системге кайра кириңиз.',
+'blocked-mailpassword' => 'Сиздин IP даректен оңдоого бөгөт коюлган, ошондуктан чырдын алдын алуу максатында сырсөздү калыбына келтирүү функциясына дагы тыюу салынган.',
+'eauthentsent' => 'Аныктоочу эмейлге кат жөнөтүлдү. Эмейлдин сиздики экендигин далилдөө үчүн андагы жетектемелерди аткарыңыз.',
+'throttled-mailpassword' => 'Бул эмейл сырсөздү алмаштырууну функциясын акыры {{PLURAL:$1|саат|$1 саат}} ичинде колдонгон.
+Кыянаттуулуктун алдын алуу максатында бир эмейлге {{PLURAL:$1|саат|$1 саат}} ичинде бир эстетүү суроого гана уруксат берилген.',
'mailerror' => 'Почтаны жөнөтүү кезиндеги ката: $1',
'emailauthenticated' => 'Сиздин почта дарегиңиз аныкталды $2/$3.',
'emailconfirmlink' => 'Электрондук дарегиңизди ырастаңыз',
'emaildisabled' => 'Бул сайт эл. почтанын билдирүүлөрүн жөнөтө албайт.',
'accountcreated' => 'Эсеп жазуусу жаратылды',
'createaccount-title' => '{{SITENAME}} үчүн эсеп жазуусун жаратуу',
+'usernamehasherror' => 'Катышуучунун атында торчо (#) белгисине жол берилбейт',
+'login-throttled' => 'Сиз системге кирүүгө өтө көп аракет кылдыңыз. Дагыңкы аракеттен мурун кичине тыныгуу алыңыз.',
'login-abort-generic' => 'Сиздин кирүүңүз ийгиликтүү эмес болду - Үзүлдү',
-'loginlanguagelabel' => 'Тил: $1',
+'loginlanguagelabel' => 'Тили: $1',
# Email sending
'php-mail-error-unknown' => "PHP'нин mail() функциясындагы белгисиз ката.",
# Special:PasswordReset
'passwordreset' => 'Сырсөздү түшүрүү',
+'passwordreset-text-one' => 'Сырсөздү алмаштыруу үчүн бул үлгүнү толтуруңуз.',
'passwordreset-legend' => 'Сырсөздү түшүрүү',
'passwordreset-disabled' => 'Бул уикиде сырсөздү түшүрүү мүмкүнчүлүгү өчүрүлгөн.',
'passwordreset-username' => 'Катышуучу аты:',
'passwordreset-emailtitle' => '{{SITENAME}} сайтындагы эсеп жазуусу жөнүндөгү маалымат',
'passwordreset-emailelement' => 'Катышуучу аты: $1
Убактылуу сырсөз: $2',
-'passwordreset-emailsent' => 'Ðл. поÑ\87Ñ\82а аÑ\80кÑ\8bлÑ\83Ñ\83 Ñ\8dÑ\81ке Ñ\81алÑ\83Ñ\83 жөнөтүлдү.',
-'passwordreset-emailsent-capture' => 'Төмөн жакта жөнөтүлгөн эске салуу кат келтирилди.',
-'passwordreset-emailerror-capture' => 'Ð\96аÑ\80аÑ\82Ñ\8bлган Ñ\8dÑ\81ке Ñ\81алÑ\83Ñ\83 каÑ\82Ñ\8b аÑ\81Ñ\82Ñ\8bнда көÑ\80Ñ\81Ó©Ñ\82үлүп Ñ\82Ñ\83Ñ\80аÑ\82, биÑ\80ок анÑ\8b каÑ\82Ñ\8bÑ\88Ñ\83Ñ\83Ñ\87Ñ\83га жөнөтүү оңунан чыккан жок: $1',
+'passwordreset-emailsent' => 'СÑ\8bÑ\80Ñ\81өздү алмаÑ\88Ñ\82Ñ\8bÑ\80Ñ\83Ñ\83 Ñ\8dмейлге жөнөтүлдү.',
+'passwordreset-emailsent-capture' => 'Төмөндө көрсөтүлгөн эмейлге сырсөздү алмаштыруучу кат жөнөтүлдү.',
+'passwordreset-emailerror-capture' => 'Төмөндө көÑ\80Ñ\81Ó©Ñ\82үлгөн даÑ\80екке Ñ\81Ñ\8bÑ\80Ñ\81өздү алмаÑ\88Ñ\82Ñ\8bÑ\80Ñ\83Ñ\83 каÑ\82 Ñ\82үзүлдү,биÑ\80ок анÑ\8b {{GENDER:$2|каÑ\82Ñ\8bÑ\88Ñ\83Ñ\83Ñ\87Ñ\83га}} жөнөтүү оңунан чыккан жок: $1',
# Special:ChangeEmail
'changeemail' => 'E-mail даректи өзгөртүү',
'changeemail-header' => 'Эл. почтанын дарегин өзгөртүү',
+'changeemail-text' => 'Эмейл дарегиңизди алмаштыруу үчүн ушул үлгүнү толтуруңуз. Өзгөрүүнү аныктоо үчүн сырсөздү киргизүү талап кылынат.',
'changeemail-no-info' => 'Бул баракка түз кайрылыш үчүн, сиз системага киришиңиз керек.',
'changeemail-oldemail' => 'Кезектеги e-mail дарек:',
'changeemail-newemail' => 'Жаңы e-mail дарек:',
'changeemail-cancel' => 'Жокко чыгаруу',
# Edit page toolbar
-'bold_sample' => 'Кара текст',
-'bold_tip' => 'Кара текст',
-'italic_sample' => 'Ð\9aÑ\83Ñ\80Ñ\81ив текст',
+'bold_sample' => 'Калың текст',
+'bold_tip' => 'Калың текст',
+'italic_sample' => 'жанÑ\82Ñ\8bк текст',
'italic_tip' => 'жантык текст',
-'link_sample' => 'Шилтеме аты',
+'link_sample' => 'Шилтеменин аты',
'link_tip' => 'Ички шилтеме',
'extlink_sample' => 'http://www.example.com шилтеме аталышы',
'extlink_tip' => 'Сырткы шилтемелерге (http:// префиксин койгонду унутпаңыз)',
'headline_sample' => 'Ат тексти',
-'headline_tip' => '2-деңгээлдеги баш аты',
+'headline_tip' => '2-деңгээлдеги баш сөз',
'nowiki_sample' => 'Форматталбаган текстти бул жерге киргизиңиз',
'nowiki_tip' => 'Уики-форматтоого көңүл бурбоо',
'image_tip' => 'Кыстарылган файл',
'hr_tip' => 'Туурасынын сызык (жыш колдонбоңуз)',
# Edit pages
-'summary' => 'Ð\9aÑ\8bÑ\81ка Ñ\82Ò¯Ñ\88үндүÑ\80Ò¯Ò¯:',
+'summary' => 'Ð\96Ñ\8bйÑ\8bнÑ\82Ñ\8bгÑ\8b:',
'subject' => 'Тема/баш аты:',
'minoredit' => 'Майда оңдоо',
'watchthis' => 'Бул баракты көзөмөлдөө',
'showdiff' => 'Өзгөртүүлөрдү көрсөтүү',
'anoneditwarning' => "'''Эскертүү:''' Сиз каттоодон өткөн жоксуз.
IP дарегиңиз бул барактын оңдоо тарыхына жазылат.",
+'anonpreviewwarning' => '"Сиз системге кирген жоксуз. Барактын тарыхында сиздин IP дарегиңиз жазылып калат."',
'missingcommenttext' => 'Төмөн жакка комментарийиңизди киргизиңиз.',
'blockedtitle' => 'Катышуучу тосмолонгон',
'blockedtext' => 'Сиздин колдонуучу атыңыз же IP дарегиңиз тосмолонгон',
'currentrevisionlink' => 'Соңку версиясы',
'cur' => 'учрдг.',
'next' => 'кийинки',
-'last' => 'соңку',
+'last' => 'мурнку',
'page_first' => 'биринчи',
'page_last' => 'акыркы',
'histlegend' => "Айырмаларды тандоо: Салыштырыла турган версияларлын тушундагы тегеректерди белгилеп туруп \"Enter\"-ди же астындагы баскычты бас.<br />
'searchmenu-legend' => 'Издөө опциялары',
'searchmenu-exists' => "'''Бул Уикиде \"[[:\$1]]\" деп аталган барак бар.'''",
'searchmenu-new' => "'''Бул Уикиде \"[[:\$1]]\" барагын түз!'''",
-'searchhelp-url' => 'Help:Мазмун',
'searchprofile-articles' => 'Негизги барактар',
'searchprofile-project' => 'Жардам жана долбоор барактары',
'searchprofile-images' => 'Мултимедиа',
'uid' => '{{GENDER:$1|Катышуучунун}} коду:',
'prefs-memberingroups' => '{{GENDER:$2|Мүчөсү}} болгон {{PLURAL:$1|топ|топтор}}:',
'prefs-registration' => 'Каттоо убагы:',
-'yourrealname' => 'Анык атыңыз:',
+'yourrealname' => 'Өз атыңыз:',
'yourlanguage' => 'Тил:',
'yourvariant' => 'Мазмундун тил варианты:',
'yournick' => 'Жаңы колуңуз:',
'right-userrights' => 'Бүт катышуучулардын укуктарын оңдоо',
# Special:Log/newusers
-'newuserlogpage' => 'Катышуучулардын каттоо журналы',
+'newuserlogpage' => 'Катышуучуларды каттоо журналы',
# Associated actions - in the sentence "You do not have permission to X"
'action-read' => 'бул баракты окуу',
'rc-enhanced-hide' => 'Кошумча маалыматтарды жашыруу',
# Recent changes linked
-'recentchangeslinked' => 'ТиеÑ\88елүү өзгөрүүлөр',
+'recentchangeslinked' => 'Ð\91айланÑ\8bÑ\88Ñ\82Ñ\83Ñ\83 өзгөрүүлөр',
'recentchangeslinked-feed' => 'Тиешелүү өзгөрүүлөр',
'recentchangeslinked-toolbox' => 'Байланыштуу өзгөрүүлөр',
'recentchangeslinked-title' => '"$1" үчүн тийиштүү өзгөртүүлөр',
'uploadlog' => 'жүктөө журналы',
'uploadlogpage' => 'Жүктөөлөрдүн тизмеси',
'filename' => 'Файл аты',
-'filedesc' => 'Ð\9aÑ\8bÑ\81ка Ñ\82Ò¯Ñ\88үндүÑ\80мө',
+'filedesc' => 'Ð\96Ñ\8bйÑ\8bнÑ\82Ñ\8bгÑ\8b',
'fileuploadsummary' => 'Кыскача баяндама:',
'filereuploadsummary' => 'Файлдагы өзгөрүүлөр:',
'filesource' => 'Булак:',
# File description page
'file-anchor-link' => 'Файл',
'filehist' => 'Файлдын тарыхы',
-'filehist-help' => 'Файлдын ошол учурдагы көрүнүшүн кароо үчүн күнү/сааты бөлүмүнө басыңыз',
+'filehist-help' => 'Файлдын ошол учурдагы көрүнүшүн көрүү үчүн күнү/сааты бөлүмүнө басыңыз',
'filehist-deleteall' => 'баарын өчүрүү',
'filehist-deleteone' => 'өчүрүү',
'filehist-revert' => 'кайтаруу',
-'filehist-current' => 'кезектеги',
+'filehist-current' => 'учурдагы',
'filehist-datetime' => 'Дата/Убакыт',
'filehist-thumb' => 'Миниатюра',
'filehist-thumbtext' => '$1 -дагы версиясы үчүн кичирейтилген сүрөтү',
'filehist-user' => 'Катышуучу',
'filehist-dimensions' => 'Өлчөмдөр',
'filehist-filesize' => 'Файл өлчөмү',
-'filehist-comment' => 'ÐÑ\81кеÑ\80Ñ\82Ò¯Ò¯',
+'filehist-comment' => 'Ð\9aомменÑ\82аÑ\80ий',
'filehist-missing' => 'Файл жок болот',
'imagelinks' => 'Файлды колдонуу',
'linkstoimage' => 'Бул файлга болгон {{PLURAL:$1|шилтеме|$1 шилтеме}} :',
# Book sources
'booksources' => 'Китеп тууралуу маалыматтар',
'booksources-search-legend' => 'Китеп тууралуу маалыматтарды издөө',
-'booksources-go' => 'ТабÑ\83Ñ\83',
+'booksources-go' => 'Ð\90лга',
# Special:Log
'specialloguserlabel' => 'Аткаруучу:',
'listusers-noresult' => 'Катышуучу табылган жок.',
'listusers-blocked' => '(блокировкаланды)',
+# Special:ActiveUsers
+'activeusers' => 'Активдүү катышуучулардын тизмеси',
+'activeusers-hidebots' => 'Ботторду жашыруу',
+'activeusers-hidesysops' => 'Администраторлорду жашыруу',
+'activeusers-noresult' => 'Катышуучулар табылган жок.',
+
# Special:ListGroupRights
'listgrouprights-group' => 'Топ',
'listgrouprights-rights' => 'Укуктар',
# Undelete
'undeletebtn' => 'Калыбына келтирүү',
'undeletelink' => 'кароо/калыбына келтирүү',
-'undeleteviewlink' => 'кароо',
+'undeleteviewlink' => 'көрүнүш',
'undeletereset' => 'Түшүрүү',
'undeletecomment' => 'Себеп:',
'undelete-search-submit' => 'Издөө',
'contributions-title' => '$1 үчүн катышуучунун салымдары',
'mycontris' => 'Салымдар',
'contribsub2' => '$1 үчүн ($2)',
-'uctop' => '(Ñ\81оңкÑ\83)',
+'uctop' => '(Ñ\83Ñ\87Ñ\83Ñ\80дагÑ\8b)',
'month' => 'Айынан (же андан мурун):',
'year' => 'Жылынан (жана андан мурун):',
-'sp-contributions-newbies' => 'Жаңы эсеп жазуулардын гана салымдарын көрсөтүү',
-'sp-contributions-blocklog' => 'тосмолоолордун журналы',
+'sp-contributions-newbies' => 'Жаңы эсептерден кылынган салымдарды көрсөтүү',
+'sp-contributions-blocklog' => 'бөгөтөөлөрдүн журналы',
'sp-contributions-uploads' => 'жүктөөлөр',
'sp-contributions-logs' => 'журналдар',
'sp-contributions-talk' => 'талкуулоо',
'linkshere' => "'''[[:$1]]''' барагына шилтеме берген барактар:",
'nolinkshere' => "'''[[:$1]]''' барагына шилтеме берген барак жок.",
'isredirect' => 'кайра багыттоо барагы',
-'istemplate' => 'коÑ\88Ñ\83Ñ\83',
+'istemplate' => 'биÑ\80икÑ\82иÑ\80Ò¯Ò¯',
'isimage' => 'файл шилтемеси',
'whatlinkshere-prev' => '{{PLURAL:$1|мурунку}}',
'whatlinkshere-next' => '{{PLURAL:$1|кийинки}}',
'whatlinkshere-links' => '← шилтемелер',
'whatlinkshere-hideredirs' => 'Багыттоолорду $1',
-'whatlinkshere-hidetrans' => '$1 коÑ\88Ñ\83Ñ\83лаÑ\80Ñ\8b',
+'whatlinkshere-hidetrans' => '$1 биÑ\80икÑ\82иÑ\80үүлөÑ\80',
'whatlinkshere-hidelinks' => 'Шилтемелерди $1',
'whatlinkshere-hideimages' => '$1 файл шилтемелери',
-'whatlinkshere-filters' => 'ФилÑ\8cÑ\82Ñ\80лер',
+'whatlinkshere-filters' => 'ÐлекÑ\82ер',
# Block/unblock
'block' => 'Катышуучуну блокировкалоо',
'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' => 'ТоÑ\81молонгон катышуучулар',
+'ipblocklist' => 'Ð\91өгөÑ\82Ñ\82өлгөн катышуучулар',
'blocklist-target' => 'Максат',
'blocklist-reason' => 'Себеп',
'ipblocklist-submit' => 'Издөө',
'change-blocklink' => 'бөгөттү өзгөрт',
'contribslink' => 'салымдары',
'emaillink' => 'кат жиберүү',
-'blocklogpage' => 'ТоÑ\81молоолоÑ\80дÑ\83н журналы',
+'blocklogpage' => 'Ð\91өгөÑ\82өөлөÑ\80дүн журналы',
'blocklogentry' => '[[$1]] тосмолонду, тосмолоо мөөнөтү: $2 $3',
'block-log-flags-anononly' => 'анонимдик катышуучулар гана',
'block-log-flags-nocreate' => 'эсеп жазуусун жаратуу өчүрүлгөн',
# Namespace 8 related
'allmessages' => 'Системалык билдирүүлөр',
-'allmessagesname' => 'Ат',
+'allmessagesname' => 'Аталышы',
'allmessagesdefault' => 'Белгиленген билдирүүнүн тексти',
'allmessagescurrent' => 'Учурдагы текст',
'allmessages-filter-legend' => 'Фильтр',
'javascripttest-title' => '$1 үчүн текшерүү жүргүзүлүп жатат',
# Tooltip help for the actions
-'tooltip-pt-userpage' => 'Катышуучу барагыңыз',
+'tooltip-pt-userpage' => 'Ð\9aаÑ\82Ñ\8bÑ\88Ñ\83Ñ\83Ñ\87Ñ\83 каÑ\82аÑ\80Ñ\8b баÑ\80агÑ\8bÒ£Ñ\8bз',
'tooltip-pt-mytalk' => 'Талкуулоо барагыңыз',
'tooltip-pt-anontalk' => 'Бул IP дарекке арналган талкуулоо барагы',
'tooltip-pt-preferences' => 'Ырастоолоруңуз',
'tooltip-ca-unwatch' => 'Бул баракты көзөмөл тизмеңизден алып салыңыз',
'tooltip-search' => '{{SITENAME}} издөө',
'tooltip-search-go' => 'Так ушундай аталыштагы баракты көрсөтүү',
-'tooltip-search-fulltext' => 'УÑ\88Ñ\83л Ñ\82екÑ\81Ñ\82 менен барактарды издөө',
+'tooltip-search-fulltext' => 'УÑ\88Ñ\83л Ñ\82екÑ\81Ñ\82 баÑ\80 барактарды издөө',
'tooltip-p-logo' => 'Башбаракка өтүү',
'tooltip-n-mainpage' => 'Башбаракка өтүү',
'tooltip-n-mainpage-description' => 'Башбаракка өтүү',
-'tooltip-n-portal' => 'Долбоор тууралуу, эмне жасай аласыз, кайсы жерде эмне бар жөнүндө',
+'tooltip-n-portal' => 'Долбоор тууралуу, эмне жасай аласыз, кайдан тапса болот',
'tooltip-n-currentevents' => 'Учурдагы окуялар тууралуу кошумча маалымат табуу',
-'tooltip-n-recentchanges' => 'Уикидеги соңку өзгөртүүлөрдүн тизмеси',
+'tooltip-n-recentchanges' => 'уикидеги соңку өзгөртүүлөрдүн тизмеси',
'tooltip-n-randompage' => 'Тушкелди баракты ачып кара',
'tooltip-n-help' => 'Маалымат алуу үчүн',
'tooltip-t-whatlinkshere' => 'Ушул жерге шилтемеси бар бардык уики барактардын тизмеси',
'tooltip-t-contributions' => 'Бул катышуучунун салымдарынын тизмеси',
'tooltip-t-emailuser' => 'Бул катышуучуга кат жиберүү',
'tooltip-t-upload' => 'Файлдарды жүктөө',
-'tooltip-t-specialpages' => 'Бүт кызмат барактарынын тизмеси',
+'tooltip-t-specialpages' => 'Бардык кызматтык барактардын тизмеги',
'tooltip-t-print' => 'Бул барактын басып чыгарууга ылайыктуу түрү',
'tooltip-t-permalink' => 'Барактын бул версиясына туруктуу шилтеме',
'tooltip-ca-nstab-main' => 'Барактын мазмунун кароо',
'tooltip-ca-nstab-user' => 'Катышуучунун барагын көрсөтүү',
'tooltip-ca-nstab-media' => 'Медиа барагын көрүү',
'tooltip-ca-nstab-special' => 'Бул кызмат барагы, аны оңдой албайсыз',
-'tooltip-ca-nstab-project' => 'Долбоор барагын көрүү',
+'tooltip-ca-nstab-project' => 'Долбоордун барагы',
'tooltip-ca-nstab-image' => 'Файл барагын көрүү',
'tooltip-ca-nstab-mediawiki' => 'Системалык билдирүүсүн көрүү',
'tooltip-ca-nstab-template' => 'Калыпты көрүү',
'tooltip-ca-nstab-category' => 'Категория барагын көрүү',
'tooltip-minoredit' => 'Муну майда оңдоо деп белгилөө',
'tooltip-save' => 'Өзгөртүүлөрүңүздү сактоо',
-'tooltip-preview' => 'Кичи пейлдикке, өзгөртүүлөрдү алдын ала көрсөтүүнү сактоодон мурун колдонуңуз!',
+'tooltip-preview' => 'Кичи пейлдикке, сактоодон мурун өзгөртүүлөрдү алдын ала көрсөтүүнү колдонуңуз!',
'tooltip-diff' => 'Тексттке киргизген өзгөртүүлөрдү көрсөтүү',
'tooltip-compareselectedversions' => 'Бул барактын тандалган эки версиясынын айырмаларын кароо',
'tooltip-watch' => 'Бул баракты көзөмөл тизмеңизге кошуңуз',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Туурасы',
'exif-imagelength' => 'Бийиктик',
'exif-imagedescription' => 'Сүрөт аты',
'exif-intellectualgenre' => 'Объекттин түрү',
'exif-subjectnewscode' => 'Теманын коду',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Кыстырылбаган',
'exif-copyrighted-true' => 'Автордук укук менен корголгон',
'version-software-version' => 'Версия',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Файл жолу',
-'filepath-page' => 'Файл:',
-'filepath-submit' => 'Өтүү',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Файл аты:',
'fileduplicatesearch-submit' => 'Издөө',
#Туруктуу айтылыштардын бөлүмдөрүн ушул саптын үстүнө жайгаштыр. Бул сапты болгондой калтыруу.</pre>',
# Special:Tags
-'tag-filter' => '[[Special:Tags|Ð\91елги]] Ñ\84илÑ\8cÑ\82Ñ\80и:',
+'tag-filter' => '[[Special:Tags|Ð\91елги]] Ñ\8dлеги:',
'tag-filter-submit' => 'Фильтрдөө',
'tags-title' => 'Белгилер',
'tags-tag' => 'Белгинин аты',
* @author Autokrator
* @author Dferg
* @author Esteban97
+ * @author Geitost
* @author Kaganer
* @author LeighvsOptimvsMaximvs
* @author MF-Warburg
'disclaimers' => 'Repudiationes',
'disclaimerpage' => 'Project:Repudiationes',
'edithelp' => 'Opes recensendi',
-'edithelppage' => 'Help:De recensendo',
'helppage' => 'Help:Adiutatum',
'mainpage' => 'Pagina prima',
'mainpage-description' => 'Pagina prima',
'userlogout' => 'Conventum concludere',
'notloggedin' => 'Conventum non est apertum',
'userlogin-noaccount' => 'Num rationem non habes?',
-'nologin' => "Num rationem non habes? '''$1'''.",
+'nologin' => 'Num rationem non habes? $1.',
'nologinlink' => 'Eam crea',
'createaccount' => 'Rationem novam creare',
'gotaccount' => "Habesne iam rationem? '''$1'''.",
'emailauthenticated' => 'Tua inscriptio electronica recognita est $3, $2.',
'emailconfirmlink' => 'Inscriptionem tuam electronicam adfirmare',
'accountcreated' => 'Ratio creata',
-'accountcreatedtext' => 'Ratio pro usore $1 creata est.',
+'accountcreatedtext' => 'Ratio pro usore [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|disputatio]]) creata est.',
'createaccount-title' => 'Ratio creata apud {{grammar:accusative|{{SITENAME}}}}',
'createaccount-text' => 'Aliquis creavit rationem pro inscriptione electronica tua apud {{grammar:accusative|{{SITENAME}}}} ($4). Nomen usoris est "$2" et tessera est "$3". Conventum aperias et statim tesseram tuam mutes.
'searchmenu-legend' => 'Optiones',
'searchmenu-exists' => "'''Iam est pagina \"[[:\$1]]\"'''",
'searchmenu-new' => "'''Creare paginam \"[[:\$1]]\"'''",
-'searchhelp-url' => 'Help:Adiutatum',
'searchprofile-articles' => 'Paginae contentorum',
'searchprofile-project' => 'Paginae adiutati et incepti',
'searchprofile-images' => 'Multimedia',
'uploadbtn' => 'Fasciculum imponere',
'reuploaddesc' => 'Siste imponere et ad imponendi formam redi',
'uploadnologin' => 'Conventum non est apertum',
-'uploadnologintext' => 'Oportet [[Special:UserLogin|aperire conventum]] ut fasciculos imponas.',
+'uploadnologintext' => 'Necesse est tibi $1 priusquam fasciculos imponas.',
'uploaderror' => 'Imponendi erratum',
'uploadtext' => "Utere formam subter ad fasciculos imponendos.
Ut fasciculos antea impositos videas aut quaeras, adi ad [[Special:FileList|indicem fasciculorum impositorum]]. Fasciculi impositi et deleti quoque in [[Special:Log/upload|notatione fasciculorum impositorum]] notantur.
NS_TEMPLATE_TALK => 'Diskusyón_de_Xablón',
NS_HELP => 'Ayudo',
NS_HELP_TALK => 'Diskusyón_de_Ayudo',
- NS_CATEGORY => 'Katēggoría',
- NS_CATEGORY_TALK => 'Diskusyón_de_Katēggoría',
+ NS_CATEGORY => 'Kateggoría',
+ NS_CATEGORY_TALK => 'Diskusyón_de_Kateggoría',
);
$namespaceAliases = array(
'Xabblón' => NS_TEMPLATE,
'Diskusyón_de_Xabblón' => NS_TEMPLATE_TALK,
'Diskussión_de_Ayudo' => NS_HELP_TALK,
- 'Kateggoría' => NS_CATEGORY,
- 'Diskussión_de_Kateggoría' => NS_CATEGORY_TALK,
+ 'Katēggoría' => NS_CATEGORY,
+ 'Diskusyón_de_Katēggoría' => NS_CATEGORY_TALK,
);
// Remove Spanish gender aliases (bug 37090)
'disclaimers' => 'Refuso de responsabilitá',
'disclaimerpage' => 'Project:Refuso de responsabilitá jeneral',
'edithelp' => '¿Cómo se la troca?',
-'edithelppage' => 'Help:Una hoja, ¿cómodo se la troca?',
'helppage' => 'Help:Contènidos',
'mainpage' => 'La Primera Hoja',
'mainpage-description' => 'La Primera Hoja',
'viewprevnext' => 'Ver ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-exists' => 'Egziste una oja yamada "[[:$1]]" en esta viki',
'searchmenu-new' => "'''Crîar la hoja «[[:$1]]» en esta viki!'''",
-'searchhelp-url' => 'Help:Ayudo',
'searchprofile-articles' => 'Hojas de contènido',
'searchprofile-project' => 'Hojas de ayudo y hojas de projeto',
'searchprofile-images' => 'Multimedya',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-filesource' => 'Manadéro de archivo',
'exif-gpstimestamp' => 'Tiémpo GPS (óra atómica)',
'exif-gpsdatestamp' => 'Dáta GPS',
'version-poweredby-others' => 'otros',
'version-software-version' => 'Versión',
-# Special:FilePath
-'filepath-page' => 'Dosya:',
-'filepath-submit' => 'Yir',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Buscar',
* @ingroup Language
* @file
*
+ * @author Geitost
* @author Hercule
* @author Kaffi
* @author Kaganer
'oct' => 'Okt.',
'nov' => 'Nov.',
'dec' => 'Dez.',
+'january-date' => '$1. Januar',
+'february-date' => '$1. Februar',
+'march-date' => '$1. Mäerz',
+'april-date' => '$1. Abrëll',
+'may-date' => '$1. Mee',
+'june-date' => '$1. Juni',
+'july-date' => '$1. Juli',
+'august-date' => '$1. August',
+'september-date' => '$1. September',
+'october-date' => '$1. Oktober',
+'november-date' => '$1. November',
+'december-date' => '$1. Dezember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorie|Kategorien}}',
'create-this-page' => 'Dës Säit uleeën',
'delete' => 'Läschen',
'deletethispage' => 'Dës Säit läschen',
+'undeletethispage' => 'Dës Säit restauréieren',
'undelete_short' => '$1 {{PLURAL:$1|Versioun|Versioune}} restauréieren',
'viewdeleted_short' => '{{PLURAL:$1|Eng geläschte Versioun|$1 geläscht Versioune}} weisen',
'protect' => 'Spären',
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Hëllef beim Änneren',
-'edithelppage' => 'Help:Wéi änneren ech eng Säit',
'helppage' => 'Help:Hëllef',
'mainpage' => 'Haaptsäit',
'mainpage-description' => 'Haaptsäit',
Fir Iwwersetzungen fir all Wikien bäizesetzen oder z'änneren gitt w.e.g. op [//translatewiki.net/ translatewiki.net], de MediaWiki-Lokalisatiouns-Projet.",
'editinginterface' => "'''Opgepasst:''' Dir sidd am Gaang, eng Säit z'änneren, déi do ass, fir Interface-Text fir d'Software ze liwweren.
Ännerungen op dëser Säit änneren den Interface-Text, jee no Kontext, op allen oder verschiddene Säiten, déi vun alle Benotzer op dëser Wiki gesi ginn.
-Fir d'Iwwersetzungen fir all Wikien derbäizesetzen oder z'änneren gitt w.e.g. op [//translatewiki.net translatewiki.net], de MediaWiki-Lokalisatiouns-Projet.",
+Fir d'Iwwersetzunge fir all Wikien derbäizesetzen oder z'änneren gitt w.e.g. op [//translatewiki.net translatewiki.net], de MediaWiki-Lokalisatiouns-Projet.",
'sqlhidden' => '(SQL-Offro verstoppt)',
'cascadeprotected' => 'Dës Säit gouf fir Ännerunge gespaart, well se duerch Cascadeprotectioun vun {{PLURAL:$1|dëser Säit|dëse Säite}} gespaart ass mat der Cascadenoptioun:
$2',
'namespaceprotected' => "Dir hutt net déi néideg Rechter fir d'Säiten am Nummraum '''$1''' ze änneren.",
'customcssprotected' => "Dir hutt net d'Recht dës CSS-Säit z'änneren, well dorop déi perséinlech Astellunge vun engem anere Benotzer gespäichert sinn.",
'customjsprotected' => "Dir hutt net d'Recht dës JavaScript-Säit z'änneren, well dorop déi perséinlech Astellunge vun engem anere Benotzer gespäichert sinn.",
+'mycustomcssprotected' => "Dir hutt net déi néideg Rechter fir dës CSS-Säit z'änneren.",
+'mycustomjsprotected' => "Dir hutt net déi néideg Rechter fir dës JavaScript-Säit z'änneren.",
'ns-specialprotected' => 'Spezialsäite kënnen net verännert ginn.',
'titleprotected' => "Eng Säit mat dësem Numm kann net ugeluecht ginn. Dës Spär gouf vum [[User:$1|$1]] gemaach deen als Grond ''$2'' uginn huet.",
'filereadonlyerror' => 'De Fichier "$1" konnt net geännert ginn well de Repertoire vun de Fichieren "$2" nëmme geliest däerf ginn.
'notloggedin' => 'Net ageloggt',
'userlogin-noaccount' => 'Hutt Dir kee Benotzerkont?',
'userlogin-joinproject' => 'Maacht mat bäi {{SITENAME}}',
-'nologin' => "Hutt Dir kee Benotzerkont? '''$1'''.",
+'nologin' => 'Hutt Dir kee Benotzerkont? $1.',
'nologinlink' => 'Neie Benotzerkont maachen',
'createaccount' => 'Neie Kont opmaachen',
'gotaccount' => "Dir hutt schonn e Benotzerkont? '''$1'''.",
'userlogin-resetlink' => "Hutt Dir d'Detailer vun Ärem Login vergiess?",
'userlogin-resetpassword-link' => 'Setzt Ärt Passwuert zréck',
'helplogin-url' => 'Help:Aloggen',
-'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hëllef beim aloggen]]',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hëllef beim Aloggen]]',
'createacct-join' => 'Gitt Är Informatioune hei drënner an.',
'createacct-emailrequired' => 'E-Mailadress',
'createacct-emailoptional' => 'E-Mailadress (fakultativ)',
'cannotchangeemail' => 'Mailadresse vu Benotzerkonte kënnen op dëser Wiki net geännert ginn.',
'emaildisabled' => 'Dëse Site ka keng Maile schécken.',
'accountcreated' => 'De Kont gouf geschaf',
-'accountcreatedtext' => 'De Benotzerkont fir $1 gouf geschaf.',
+'accountcreatedtext' => 'De Benotzerkont fir [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|Diskussioun]]) gouf geschaf.',
'createaccount-title' => 'Opmaache vun engem Benotzerkont op {{SITENAME}}',
'createaccount-text' => 'Et gouf e Benotzerkont "$2" fir Iech op {{SITENAME}} ($4) ugeluecht mat dem Passwuert "$3".
Dir sollt Iech aloggen an Äert Passwuert elo änneren.
# Special:PasswordReset
'passwordreset' => 'Passwuert zrécksetzen',
-'passwordreset-text' => 'Fëllt dëse Formulaire aus fir Äert Passwuert zréckzesetzen.',
+'passwordreset-text-one' => 'Fëllt dëse Formulaire aus fir Äert Passwuert zréckzesetzen.',
+'passwordreset-text-many' => '{{PLURAL:$1|Gitt eng vun dësen Donnéeën a fir Ärt Passwuert zréckzesetzen.}}',
'passwordreset-legend' => 'Passwuert zrécksetzen',
'passwordreset-disabled' => "D'Zerécksetze vum Passwuert ass op dëser Wiki ausgeschalt.",
'passwordreset-emaildisabled' => "D'E-Mail-Fonctioune goufen op dëser Wiki ausgeschalt.",
-'passwordreset-pretext' => '{{PLURAL:$1||Gitt eng vun dësen Donnéeën an}}',
'passwordreset-username' => 'Benotzernumm:',
'passwordreset-domain' => 'Domaine:',
'passwordreset-capture' => "D'Mail kucken?",
'newarticletext' => "Dir hutt op e Link vun enger Säit geklickt, déi et nach net gëtt. Fir déi Säit unzeleeën, gitt w.e.g. Ären Text an déi Këscht hei drënner an (kuckt d'[[{{MediaWiki:Helppage}}|Hëllef Säit]] fir méi Informatiounen). Wann Dir duerch een Iertum heihi komm sidd, da klickt einfach op de Knäppchen '''Zréck''' vun Ärem Browser.",
'anontalkpagetext' => "---- ''Dëst ass d'Diskussiounssäit fir en anonyme Benotzer deen nach kee Kont opgemaach huet oder en net benotzt. Dowéinst musse mir d'IP Adress benotzen, fir de Benotzer z'identifizéieren.
Sou eng IP Adress ka vun e puer Benotzer gedeelt ginn.
-Wann Dir en anonyme Benotzer sidd an Dir irrelevant Kommentäre krut, [[Special:UserLogin/signup|maacht w.e.g. e Kont op]] oder [[Special:UserLogin|loggt Iech an]], fir weider Verwiesselunge mat aneren anonyme Benotzer ze verhënneren.''",
+Wann Dir en anonyme Benotzer sidd an Dir irrelevant Bemierkunge krut, [[Special:UserLogin/signup|maacht w.e.g. e Kont op]] oder [[Special:UserLogin|loggt Iech an]], fir weider Verwiesselunge mat aneren anonyme Benotzer ze verhënneren.''",
'noarticletext' => 'Dës Säit huet momentan keen Text.
Dir kënnt op anere Säiten no [[Special:Search/{{PAGENAME}}|dësem Säitentitel sichen]],
<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} an den entspriechende Logbicher nokucken] oder [{{fullurl:{{FULLPAGENAME}}|action=edit}} esou eng Säit uleeën]</span>.',
Si gouf anscheinend geläscht.",
'edit-conflict' => 'Ännerungskonflikt.',
'edit-no-change' => 'Är ännerung gouf ignoréiert, well Dir näischt um Text geännert hutt.',
+'postedit-confirmation' => 'Är Ännerung gouf gespäichert.',
'edit-already-exists' => 'Déi nei Säit konnt net ugeluecht ginn, well et se scho gëtt.',
'defaultmessagetext' => 'Standardtext',
+'content-failed-to-parse' => 'Den $2-Inhalt fir den $1-Modell konnt net geparst ginn: $3',
'invalid-content-data' => 'Donnéeë vum Inhalt sinn net valabel',
'content-not-allowed-here' => '"$1"-Inhalt ass op der Säit [[$2]] net erlaabt',
'editwarning-warning' => 'Wann Dir dës Säit verloosst kann dat dozou féieren datt Dir all Ännerungen, déi Dir gemaach hutt, verléiert.
-Wann Dir ageloggt sidd, kënnt Dir dës Warnung an der Sektioun "{{int:prefs-editing}}" vun Ären Astellungen ausschalten.',
+Wann Dir ageloggt sidd, kënnt Dir dës Warnung an der Sektioun "Änneren" vun Ären Astellungen ausschalten.',
# Content models
'content-model-wikitext' => 'Wikitext',
'searchmenu-legend' => 'Sichoptiounen',
'searchmenu-exists' => "* Säit '''[[$1]]'''",
'searchmenu-new' => "'''Opmaache vun der Säit ''[[:$1|$1]]'' op dëser Wiki!'''",
-'searchhelp-url' => 'Help:Inhalter',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|All Säite weisen, déi mat dem Begrëff ufänken nodeem Dir sicht]]',
'searchprofile-articles' => 'Säite mat Inhalt',
'searchprofile-project' => 'Hëllef a Projetssäiten',
'userrights-changeable-col' => 'Gruppen déi Dir ännere kënnt',
'userrights-unchangeable-col' => 'Gruppen déi Dir net ännere kënnt',
'userrights-conflict' => 'Konflikt bäi de Benotzerrechter! Maacht Är Ännerunge w.e.g. nach eng Kéier.',
+'userrights-removed-self' => 'Dir hutt Är eege Rechter ewechgeholl. Dofir kënnt Dir net méi op dës Säit zougräifen.',
# Groups
'group' => 'Grupp:',
'right-editusercssjs' => 'Anere Benotzer hir CSS a JS Fichieren änneren',
'right-editusercss' => 'Anere Benotzer hir CSS Fichieren änneren',
'right-edituserjs' => 'Anere Benotzer hir JavaScript Fichieren änneren',
+'right-editmyusercss' => 'Är eegen CSS-Fichieren änneren',
+'right-editmyuserjs' => 'Är eege JavaScript-Fichieren änneren',
+'right-viewmywatchlist' => 'Kuckt Är eegen Iwwerwaachungslëscht',
+'right-editmywatchlist' => "Ännert Är eegen Iwwerwaachungslëscht. Dekt drun dach och aner Aktioune Säiten op d'Iwwerwaachungslëscht derbäisetzen.",
'right-rollback' => "Ännerunge vum läschte Benotzer vun enger spezieller Säit séier z'récksetzen ''(rollback)''",
'right-markbotedits' => 'Annuléiert Ännerungen als Botännerunge weisen',
'right-noratelimit' => 'Net limitéiert duerch Zäitlimitatiounen um Server',
'action-userrights-interwiki' => "d'Rechter vu Benotzer vun anere Wikien z'änneren",
'action-siteadmin' => "d'Datebank ze spären oder d'Spär opzehiewen",
'action-sendemail' => 'Maile schécken',
+'action-editmywatchlist' => 'ännert Är Iwwerwaachungslëscht',
+'action-viewmywatchlist' => 'kuckt Är Iwwerwaachungslëscht',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|Ännerung|Ännerungen}}',
'reuploaddesc' => 'Eroplueden ofbriechen an zréck op de Formulaire fir Eropzelueden',
'upload-tryagain' => 'Déi geännert Beschreiwung vum Fichier schécken',
'uploadnologin' => 'Net ageloggt',
-'uploadnologintext' => 'Dir musst [[Special:UserLogin|ageloggt sinn]], fir Fichieren eroplueden zu kënnen.',
+'uploadnologintext' => 'Dir musst Iech $1, fir Fichieren eroplueden zu kënnen.',
'upload_directory_missing' => 'De Repertoire an deen Dir eropluede wollt ($1) feelt a konnt net vum Webserver ugeluecht ginn.',
'upload_directory_read_only' => 'De Webserver kann net an den Upload-Repertoire ($1) schreiwen.',
'uploaderror' => 'Feeler bäim Eroplueden',
'backend-fail-stream' => 'De Fichier $1 konnt net iwwerdroe ginn.',
'backend-fail-backup' => 'De Fichier $1 konnt net geséchert ginn.',
'backend-fail-notexists' => 'De Fichier $1 gëtt et net.',
+'backend-fail-hashes' => "Et konnt net all 'hash' fonnt gi fir ze vergläichen.",
'backend-fail-notsame' => 'Et gëtt schonn en net-identesche Fichier op $1.',
'backend-fail-invalidpath' => '$1 ass keng valabel Plaz fir ze späicheren.',
'backend-fail-delete' => 'De Fichier $1 konnt net geläscht ginn.',
'backend-fail-create' => 'De Fichier $1 konnt net geschriwwe ginn.',
'backend-fail-maxsize' => 'De Fichier $1 konnt net geschriwwe gi well e méi grouss ass wéi {{PLURAL:$2|ee Byte|$2 Byten}}.',
'backend-fail-readonly' => 'De Späicher-Backend "$1" kann elo nëmme geliest ginn (read-only). De Grond deen ugi gouf war: "$2"',
+'backend-fail-synced' => 'De Fichier "$1" ass an den internen Späichersystemer am Hannergrond an engem net konsistenten Zoustand',
'backend-fail-connect' => 'Keng Verbindung mam Backend vum Späicher "$1".',
'backend-fail-internal' => 'Onbekannte Feeler am Backend vum Späicher: "$1"',
'notvisiblerev' => 'Versioun gouf geläscht',
'watchnochange' => 'Keng vun Ären iwwerwaachte Säite gouf während der ugewisener Zäit verännert.',
'watchlist-details' => "{{PLURAL:$1|1 Säit|$1 Säiten}} sinn op ärer Iwwerwaachungsklëscht (d'Diskussiounssäite net matgezielt).",
-'wlheader-enotif' => '* E-Mail-Bescheed ass aktivéiert.',
-'wlheader-showupdated' => "* Säiten déi zënter ärer leschter Visite geännert goufen, si '''fett''' geschriwwen",
+'wlheader-enotif' => 'E-Mail-Notifikatioun ass ageschalt.',
+'wlheader-showupdated' => "Säiten déi zënter ärer leschter Visite geännert goufen, si '''fett''' geschriwwen",
'watchmethod-recent' => 'Rezent Ännerunge ginn op iwwerwaacht Säiten iwwerpréift',
'watchmethod-list' => 'Iwwerwaachte Säite ginn op rezent Ännerungen iwwerpréift',
'watchlistcontains' => 'Op ärer Iwwerwaachungslëscht $1 {{PLURAL:$1|steet $1 Säit|stinn $1 Säiten}}.',
'enotif_subject_changed' => "D'{{SITENAME}}-Säit $1 gouf vum {{gender:$2|$2}} geännert",
'enotif_body_intro_deleted' => 'D\'{{SITENAME}}-Säit $1 gouf de(n) $PAGEEDITDATE {{gender:$2|vum $2|vun der $2}} geläscht, kuckt $3.',
'enotif_body_intro_created' => 'D\'{{SITENAME}}-Säit $1 gouf den $PAGEEDITDATE vum $2 {{GENDER:$2|ugeluecht}}, kuckt $3 fir déi aktuell Versioun.',
+'enotif_body_intro_moved' => 'D\'{{SITENAME}}-Säit $1 gouf den $PAGEEDITDATE vum $2 {{GENDER:$2|geréckelt}}, kuckt $3 fir déi aktuell Versioun.',
+'enotif_body_intro_restored' => 'D\'{{SITENAME}}-Säit $1 gouf den $PAGEEDITDATE vum $2 {{GENDER:$2|restauréiert}}, kuckt $3 fir déi aktuell Versioun.',
+'enotif_body_intro_changed' => 'D\'{{SITENAME}}-Säit $1 gouf den $PAGEEDITDATE vum $2 {{GENDER:$2|geännert}}, kuckt $3 fir déi aktuell Versioun',
'enotif_lastvisited' => 'All Ännerungen op ee Bléck: $1',
'enotif_lastdiff' => 'Kuckt $1 fir dës Ännerung.',
'enotif_anon_editor' => 'Anonyme Benotzer $1',
'prot_1movedto2' => '[[$1]] gouf op [[$2]] geréckelt',
'protect-badnamespace-title' => 'Nummraum deen net gespaart ka ginn',
'protect-badnamespace-text' => 'Säiten an dësem Nummraum kënnen net gespaart ginn.',
+'protect-norestrictiontypes-text' => 'Dës Säit kann net gespaart gi well keng Restriktiounstypen disponibel sinn.',
'protect-norestrictiontypes-title' => 'Säit kann net gespaart ginn',
'protect-legend' => "Confirméiert d'Protectioun",
'protectcomment' => 'Grond:',
'proxyblocksuccess' => 'Gemaach.',
'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, esou 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',
'thumbnail-more' => 'vergréisseren',
'filemissing' => 'Fichier feelt',
'thumbnail_error' => 'Feeler beim Erstelle vun der Miniatur: $1',
+'thumbnail_error_remote' => 'Feelermessage vum $1:
+$2',
'djvu_page_error' => 'DjVu-Säit baussent dem Säiteberäich',
'djvu_no_xml' => 'Den XML ka fir den DjVu-Fichier net ofgeruff ginn',
'thumbnail-temp-create' => "Den temporäre Fichier fir d'Minitaurbild konnt net ugeluecht ginn",
# Special:Redirect
'redirect' => 'Viruleedung duerch e Fichier, Benotzer oder Versiouns-ID',
'redirect-legend' => 'Viruleedung op ee Fichier oder eng Säit',
+'redirect-summary' => 'Dës Spezialsäit ass eng Viruleedung op e Fichier (Fichiersnumm uginn), eng Säit (Versiounsnummer uginn) oder eng Benotzersäit (numeresch Benotzeridentifikatioun uginn).',
'redirect-submit' => 'Lass',
'redirect-lookup' => 'Nosichen:',
'redirect-value' => 'Wäert:',
'logentry-delete-delete' => "$1 {{GENDER:$2|huet}} d'Säit $3 geläscht",
'logentry-delete-restore' => "$1 {{GENDER:$2|huet}} d'Säit $3 restauréiert",
'logentry-delete-event' => "$1 huet d'Visibilitéit vun {{PLURAL:$5|engem Evenement|$5 Evenementer}} am Logbuch op $3:$4 {{GENDER:$2|geännert}}",
+'logentry-delete-revision' => "$1 huet d'Visibilitéit {{PLURAL:$5|vun enger Versioun|vu(n) $5 Versiounen}} op der Säit $3:$4 {{GENDER:$2|geännert}}",
'logentry-delete-event-legacy' => "$1 huet d'Visibilitéit vun Elementer am Log op $3 {{GENDER:$2|geännert}}",
'logentry-delete-revision-legacy' => "$1 huet d'Visibilitéit vu Versioune vun der Säit $3 {{GENDER:$2|geännert}}",
'logentry-suppress-delete' => "$1 {{GENDER:$2|huet}} d'Säit $3 ewechgeholl",
+'logentry-suppress-event' => "$1 huet diskret d'Visibilitéit vu(n) {{PLURAL:$5|engem Evenement|$5 Evenementer}} am Logbuch op $3:$4 {{GENDER:$2|geännert}}",
+'logentry-suppress-revision' => "$1 huet diskret d'Visibilitéit {{PLURAL:$5|vun enger Versioun|vu(n) $5 Versiounen}} op der Säit $3:$4 {{GENDER:$2|geännert}}",
'logentry-suppress-event-legacy' => "$1 {{GENDER:$2|huet}} diskret d'Visibilitéit vun Elementer am Log op $3 geännert",
'logentry-suppress-revision-legacy' => "$1 huet diskret d'Visibilitéit vu Versioune vun der Säit $3 {{GENDER:$2|geännert}}",
'revdelete-content-hid' => 'Inhalt verstoppt',
$fallback = 'ru';
+$namespaceNames = array(
+ NS_MEDIA => 'Медиа',
+ NS_TALK => 'веревирд_авун',
+ NS_USER => 'Уртах',
+ NS_USER_TALK => 'Уртахдин_веревирд_авун',
+ NS_PROJECT_TALK => '$1_веревирд_авун',
+ NS_FILE => 'Файл',
+ NS_FILE_TALK => 'Файл_веревирд_авун',
+ NS_MEDIAWIKI => 'MediaWiki',
+ NS_MEDIAWIKI_TALK => 'MediaWiki_веревирд_авун',
+ NS_TEMPLATE => 'Шаблон',
+ NS_TEMPLATE_TALK => 'Шаблон_веревирд_авун',
+ NS_CATEGORY => 'Категория',
+ NS_CATEGORY_TALK => 'Категория_веревирд_авун',
+);
+
+$namespaceAliases = array(
+ # Russian namespaces
+ 'Обсуждение' => NS_TALK,
+ 'Участник' => NS_USER,
+ 'Обсуждение_участника' => NS_USER_TALK,
+ 'Обсуждение_{{GRAMMAR:genitive|$1}}' => NS_PROJECT_TALK,
+ 'Обсуждение_файла' => NS_FILE_TALK,
+ 'Обсуждение_MediaWiki' => NS_MEDIAWIKI_TALK,
+ 'Обсуждение_шаблона' => NS_TEMPLATE_TALK,
+ 'Справка' => NS_HELP,
+ 'Обсуждение_справки' => NS_HELP_TALK,
+ 'Категория' => NS_CATEGORY,
+ 'Обсуждение_категории' => NS_CATEGORY_TALK,
+);
+
+// Remove Russian gender aliases
+$namespaceGenderAliases = array();
+
$messages = array(
# User preference toggles
'tog-underline' => 'ЭлячӀунрин кӀаникай цӀар чӀугун',
'disclaimers' => 'Жавабдарвал хивяй акъудун',
'disclaimerpage' => 'Project:Жавабдарвал хивяй акъудун',
'edithelp' => 'Дуьзар хъувун патал куьмек',
-'edithelppage' => 'Help:Дуьзар хъувун',
'helppage' => 'Help:Къене авайбур',
'mainpage' => 'Кьилин ччин',
'mainpage-description' => 'Кьилин ччин',
'searchmenu-legend' => 'Жагъурунин низамарунар',
'searchmenu-exists' => "'''И вики-проектда \"[[:\$1]]\" тlвар алай ччин ава.'''",
'searchmenu-new' => "'''И вики-проектда \"[[:\$1]]\" ччин туькlуьрун !'''",
-'searchhelp-url' => 'Help:КЪене авайбур',
'searchprofile-articles' => 'Асул ччинар',
'searchprofile-project' => 'Куьмек гунин ва проектдин ччинар',
'searchprofile-images' => 'Мультимедиа',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Гьяркьуь',
'exif-planarconfiguration' => 'Ганайбур тешкил авун',
'exif-ycbcrsubsampling' => ' Y ва C компонентрин кьадаррин нисбет',
'tog-enotifrevealaddr' => 'Descovre la me adirije de eposta en postas de nota',
'tog-shownumberswatching' => 'Mostra la numero de usores oservante',
'tog-fancysig' => 'Sinias simple (sin lia automatica)',
-'tog-externaleditor' => 'Usa costumal editadores esterna',
'tog-watchlisthideown' => 'Asconde me editas de la lista de pajes oservada',
'tog-watchlisthidebots' => 'Asconde editas par bot de la lista de pajes oservada',
'tog-watchlisthideminor' => 'Asconde editas minor de la lista de pajes oservada',
'disclaimers' => 'Negas de respondablia',
'disclaimerpage' => 'Project:Nega jeneral de respondablia',
'edithelp' => 'Aida con edita',
-'edithelppage' => 'Help:Edita',
'helppage' => 'Help:Contenis',
'mainpage' => 'Paje Prima',
'mainpage-description' => 'Paje Prima',
'prevn' => '{{PLURAL:$1|$1}} presedente',
'nextn' => '{{PLURAL:$1|$1}} seguente',
'viewprevnext' => 'Vide ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Contenis',
'search-result-size' => '$1 ({{PLURAL:$2|1 parola|$2 parolas}})',
'search-section' => '(sesion $1)',
'search-interwiki-default' => 'Resultas de $1:',
'listgrouprights-group' => 'Grupo',
'listgrouprights-members' => '(lista de membros)',
-# E-mail user
+# Email user
'emailuser' => 'Envia un eposta a esta usor',
'emailfrom' => 'De',
'emailto' => 'Per',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-exposuretime-format' => '$1 sec. ($2)',
# External editor support
'version' => 'Varia',
'version-version' => '(Varia $1)',
-# Special:FilePath
-'filepath-page' => 'Fix:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Xerca',
'tog-shownumberswatching' => "Ndaganga obungi bw'abagoberera olupapula",
'tog-oldsig' => 'Omukono gwo kakano:',
'tog-fancysig' => 'Omukono gubemu obubonero bwa ki-wiki (naye nga tegufuuka nyunzi)',
-'tog-externaleditor' => 'Wandikisanga puloguramu eri ku kompyuta yo (kyetaagisa bumanyirivu bungi, kubanga wetaaga okutegeka kompyuta yo mu ngeri ezitali za bulijjo. [//www.mediawiki.org/wiki/Manual:External_editors Okutangaaza okusingawo.])',
-'tog-externaldiff' => "Kozesanga puloguramu ey'oku kompyuta yo okukebera njawulo wakati w'ebiwandike (kyetaagisa bumanyirivu bungi, wetaaga ntegeka ezitali za bulijjo ku kompyuta yo. [//www.mediawiki.org/wiki/Manual:External_editors Okutangaaza okusingawo.])",
'tog-showjumplinks' => 'Wabeerewo enyunzi eza "Genda ku"',
'tog-uselivepreview' => 'Enkyukakyuka ze nkoze zirabikirewo nga tekyetaagisiza kumala kunyiga ppeesa (kyetaagisa JavaScript)(Kikyagezesebwa)',
'tog-forceeditsummary' => 'Ŋambaako bwe mba ŋenda okuleka nga sinnyonyodde bye nkyusizza',
'disclaimers' => "Okutangaaza ku kkomo ery'obuvunaaniro bwaffe obw'omu mateeka",
'disclaimerpage' => "Project:Okutangaaza ku kkomo ery'obuvunaaniro bwaffe obw'omu mateeka",
'edithelp' => 'Nyamba',
-'edithelppage' => "Help:Obuyambi ku by'okukyusakyusa",
'helppage' => 'Help:Endagiriro',
'mainpage' => 'Olupapula Olusooka',
'mainpage-description' => 'Olupapula Olusooka',
# Special:PasswordReset
'passwordreset' => 'Damu okutegeka ekyama',
-'passwordreset-text' => "Oba oyagala okufuna 'email' ekujjukiza ebikwata ku akawunti yo, jjuza foomu eno.",
'passwordreset-legend' => 'Damu okutegeka ekyama',
'passwordreset-disabled' => "Eby'okuddamu okutegeka ebyama biymirizidwa ku wiki eno.",
-'passwordreset-pretext' => '{{PLURAL:$1||Wandika wo kimu ku ebiri mu lukalala}}',
'passwordreset-username' => "Ery'obwa memba:",
'passwordreset-email' => "Endagiriro eya 'email':",
'passwordreset-emailtitle' => "Ebya akawunti ey'oku {{SITENAME}}",
'edit-no-change' => "Sisitemu ekubaze nga atalina ky'agikozeko, olw'okubanga ebiri ku lupapula obirese nga bwe wabisanze.",
'edit-already-exists' => "Olupapula lw'ogeza okukolawo weruli, lwakolebwawo dda.<br />
Tekisobose kuddamu n'ate oulukolawo.",
+'editwarning-warning' => 'Bw\'ova ku lupapula luno kiyinza okuleetera enkyukakyuka z\'olukozeko okuvawo.<br />
+Bw\'oba nga okola oyingidde mu sisitemu, okulabula kuno oyinza okukusirisa nga weyambisa<br />
+ebiri mu kitundu ekya "Kukyusa" eky\'omu "Nteekateeka yange".',
# Parser/template warnings
'expensive-parserfunction-warning' => "'''Kulabula:''' Olupapula luno luliko ebiragiro eby'ekikebera engoberera y'amateeka g'empandika ebizito ebiyitiridde obungi.<br />
'searchmenu-legend' => 'Kyusamu ennoonya',
'searchmenu-exists' => "'''Olupapula \"[[:\$1]]\" gyeruli ku wiki eno.'''",
'searchmenu-new' => "'''Oba oyagala, olupapula \"[[:\$1]]\" gwe osobola okulukolawo ku wiki eno.'''",
-'searchhelp-url' => 'Help:Endagiriro',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Kebera mu mpapula eziriko akatandikwa kano]]',
'searchprofile-articles' => "Empapula ez'ensonga",
'searchprofile-project' => "Empapula eziriko obuyambi n'eza Kawefube",
'disclaimers' => 'Aafwiezinge aansjprakelikheid',
'disclaimerpage' => 'Project:Algemein aafwiezing aansjprakelikheid',
'edithelp' => 'Hulp bie bewirke',
-'edithelppage' => 'Help:Instructies',
'helppage' => 'Help:Help',
'mainpage' => 'Veurblaad',
'mainpage-description' => 'Veurblaad',
'logout' => 'Aafmelde',
'userlogout' => 'Aafmelde',
'notloggedin' => 'Neet aangemeld',
-'nologin' => "Höbs te nog geine gebroekersnaam? '''$1'''.",
+'nologin' => 'Höbs te nog geine gebroekersnaam? $1.',
'nologinlink' => "Maak 'ne gebroekersnaam aan",
'createaccount' => 'Nuuj gebroekersprofiel aanmake.',
'gotaccount' => "Höbs te al 'ne gebroekersnaam? '''$1'''.",
# Special:PasswordReset
'passwordreset' => 'Wachwaord obbenuuts insjtèlle',
-'passwordreset-text' => "Völ dit form aan zodet weer dich 'ne mail kinne sjikk mit dien gebroekersgegaeves.",
'passwordreset-legend' => 'Wachwaord obbenuuts insjtèlle',
'passwordreset-disabled' => "'t Is hie neet meugelik óm die wachwaord óbbenuits in te sjtelle.",
-'passwordreset-pretext' => '{{PLURAL:$1||Veur ei van de vèljer hieónger in}}',
'passwordreset-username' => 'Gebroekersnaam:',
'passwordreset-domain' => 'Domein:',
'passwordreset-capture' => 'Bekiek de resulterenden e-mail?',
'searchmenu-legend' => 'Zeukopties',
'searchmenu-exists' => "* Pagina '''[[$1]]'''",
'searchmenu-new' => "'''De pagina \"[[:\$1]]\" aanmake op deze wiki'''",
-'searchhelp-url' => 'Help:Help',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Paginanaome mit dit veurveugsel weergaeve]]',
'searchprofile-articles' => "Inhaudelike pagina's",
'searchprofile-project' => "Help- en projekpagina's",
'upload-file-error' => 'Interne fout',
'upload-file-error-text' => "'n Intern fuitje vonj plaats wie 'n tiedelik besjtandj op de server woort aangemaak. Num aub contac op met 'ne [[Special:ListUsers/sysop|systeemwèrker]].",
'upload-misc-error' => 'Onbekinde uploadfout',
-'upload-misc-error-text' => "d'r Is tiedes 't uploade 'ne onbekinde fout opgetraeje. Controleer of de URL correc en besjikbaar is en probeer 't opnuuj. Es 't probleem aanhaojt, nöm dan contac op met 'ne [[Special:ListUsers/sysop|systeembeheerder]].",
+'upload-misc-error-text' => "d'r Is tiedes 't uploade 'ne onbekinde fout opgetraeje. Controleer of de URL correc en besjikbaar is en probeer 't opnuuj. Es 't probleem aanhaojt, nöm dan contac op met 'ne [[Special:ListUsers/sysop|systeemwèrker]].",
'upload-too-many-redirects' => 'De URL bevadde te väöl doorverwiezinge',
'upload-unknown-size' => 'Ónbekèndje gruuedje',
'upload-http-error' => 'dr Is n HTTP-fout opgetraoje: $1',
'listusers-noresult' => 'Gein(e) gebroeker(s) gevonje.',
'listusers-blocked' => '(geblok)',
+# Special:ActiveUsers
+'activeusers' => 'Aktief gebroekers',
+'activeusers-intro' => "Dit is 'n lies mit gebroekers die aktief zeen gewaes in de aafgeloupe {{PLURAL:$1|daag|$1 daag}}.",
+'activeusers-count' => '$1 {{PLURAL:$1|bewèrking|bewèrkinger}} inne {{PLURAL:$3|lèsten daag|lès $3 daag}}',
+'activeusers-from' => 'Tuin gebroekers vanaaf:',
+'activeusers-hidebots' => 'Verberg bots',
+'activeusers-hidesysops' => 'Verberg admins',
+'activeusers-noresult' => 'Gein gebroekers gevónje.',
+
# Special:ListGroupRights
'listgrouprights' => 'Rechte van gebroekersgróppe',
'listgrouprights-summary' => 'Op dees pazjena sjtaon de gebroekersgróppe in deze wiki besjreve, mit zien biebehurende rechte.
'notvisiblerev' => 'Bewèrking is verwiederd',
'watchnochange' => 'Gein van dien gevolgde items is aangepas in dees periode.',
'watchlist-details' => "D'r {{PLURAL:$1|sjteit ein pagina|sjtaon $1 pagina's}} op dien volglies mit oetzunjering van de euverlèkpagina's.",
-'wlheader-enotif' => '* Doe wörs per e-mail gewaarsjuwd',
-'wlheader-showupdated' => "* Pazjena's die verangerd zeen saers doe ze veur 't lètste bekeeks sjtaon '''vet'''",
+'wlheader-enotif' => 'Doe wörs per e-mail gewaarsjuwd',
+'wlheader-showupdated' => "Pazjena's die verangerd zeen saers doe ze veur 't lètste bekeeks sjtaon '''vet'''",
'watchmethod-recent' => "Controleer recènte verangere veur gevolgde pazjena's",
'watchmethod-list' => "controlere van gevolgde pazjena's veur recènte verangeringe",
'watchlistcontains' => "Dien volglies bevat $1 {{PLURAL:$1|pazjena|pazjena's}}.",
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Breidte',
'exif-imagelength' => 'Hoogte',
'exif-bitspersample' => 'Bits per componènt',
'exif-originalimageheight' => 'Heugdje vanne aafbeilding veur biesnieje',
'exif-originalimagewidth' => 'Brèdje vanne aafbeilding veur biesnieje',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Óngecómprimeerd',
'exif-compression-2' => 'CCITT Groep 3 1-dimensionale aangepasde "Huffman run length"-codering',
'exif-compression-3' => 'CCITT Groep 3 faxcodering',
'version-entrypoints-header-entrypoint' => 'Ingank',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Bestandjspaad',
-'filepath-page' => 'Bestandj:',
-'filepath-submit' => 'Zeuk',
-'filepath-summary' => "Dees speciaal pazjena guf 't vollejig paad veur 'n bestandj.
-Aafbeildinge waere in häör vollejige resolutie getoeandj. Anger bestandjstypes waere drèk in 't mit 't MIME-type verbónje programma geäöpendj.",
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Zeuk veur döbbelbestaondje bestenj',
'fileduplicatesearch-summary' => 'Zeuk veur döbbel bestaondje bestenj op basis van zien hashwaarde.',
'disclaimers' => 'Avertense',
'disclaimerpage' => 'Project:Avertense generâli',
'edithelp' => 'Agiùtto',
-'edithelppage' => 'Help:Modiffica',
'helppage' => 'Help:Contegnûi',
'mainpage' => 'Pàgina prinçipâ',
'mainpage-description' => 'Pagina prinçipâ',
'viewprevnext' => 'Veddi ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-exists' => "'''Inte questa wiki gh'è za 'na pàgina co-o nómme \"[[:\$1]]\"'''",
'searchmenu-new' => 'Crea a pagina "[[:$1]]" insce questo scito',
-'searchhelp-url' => 'Help:Contegnûi',
'searchprofile-articles' => 'Pàgina di contegnûi',
'searchprofile-project' => 'Pàgine de agiùtto e relative a-o progetto',
'searchprofile-images' => 'Moltimedia',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-datetime' => 'Data e öa do cangiamento do papê',
'exif-artist' => 'Autô',
'exif-copyright' => "Diritti d'autô de",
'disclaimers' => 'Kūondõkst',
'disclaimerpage' => 'Project:Kūondõkst',
'edithelp' => 'Redigīerimiz opātõks',
-'edithelppage' => 'Help:Redigīerimiz_opātõks',
'helppage' => 'Help:Sižāli',
'mainpage' => 'Eḑḑilēḑ',
'mainpage-description' => 'Eḑḑilēḑ',
# Special:ListGroupRights
'listgrouprights-members' => '(nõtkõmd nimkēra)',
-# E-mail user
+# Email user
'emailuser' => 'Sōtõgid sīen kȭlbatijizõn e-kēra',
# Watchlist
* @author DracoRoboter
* @author Flavio05
* @author GatoSelvadego
+ * @author Geitost
* @author Insübrich
* @author Kemmótar
* @author Malafaya
'tog-enotifrevealaddr' => "Lassa vedè 'l mè indirizz e-mail int i messagg d'avis",
'tog-oldsig' => 'Anteprima de la firma esistenta:',
'tog-fancysig' => 'Trata la firma cume test wiki (senza nissön ligam utumatich)',
-'tog-externaleditor' => "Dröva semper un prugrama da redatazión estern (dumà per espert, 'l gh'ha de besogn d'impustazión speciaj ins 'l to computer)",
-'tog-externaldiff' => 'Druvá sempar un "diff" estèrnu',
'tog-watchlisthideown' => "Sconda i me mudifich dai pagin che a ten d'ögg",
'tog-watchlisthidebots' => "Sconda i mudifich di bot da i pagin che a ten d'ögg",
'tog-ccmeonemails' => 'Spedissem una copia di messagg spedii a i alter druvadur',
'disclaimers' => 'Disclaimers',
'disclaimerpage' => 'Project:Avertenz generaj',
'edithelp' => 'Manual de spiegazión',
-'edithelppage' => 'Help:Scriv un articul',
'helppage' => 'Help:Contegnüü',
'mainpage' => 'Pagina principala',
'mainpage-description' => 'Pagina principala',
'logout' => 'Va fö',
'userlogout' => 'Và fö',
'notloggedin' => 'Te seet minga dent in del sistema',
-'nologin' => "Gh'avii anmò da registrav? '''$1'''.",
+'nologin' => "Gh'avii anmò da registrav? $1.",
'nologinlink' => 'Creé un cünt!',
'createaccount' => 'Creá un cünt',
'gotaccount' => "Gh'hee-t giamò un cünt? '''$1'''.",
'viewprevnext' => 'Vidé ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-legend' => 'Upzión de ricerca',
'searchmenu-new' => "'''Trà in pee la pagina \"[[:\$1]]\" ins quel sit chì!'''",
-'searchhelp-url' => 'Help:Contegnüü',
'searchprofile-articles' => 'Paginn de cuntegnüü',
'searchprofile-project' => 'Paginn de jüt e de pruget',
'searchprofile-images' => 'Multimedia',
'listgrouprights' => 'Dirit del grüp di druvat',
'listgrouprights-members' => '(Lista di member)',
-# E-mail user
+# Email user
'emailuser' => 'Manda un email a quel druvadur chì',
'emailsent' => 'Messagg spedii',
'emailsenttext' => "El messagg e-mail l'è staa spedii.",
'namespacesall' => 'tücc',
'monthsall' => 'tücc',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => "Cunferma l<nowiki>'</nowiki>''e-mail''",
'confirmemail_text' => "Prima da pudé riçeef mesacc sül tò adrèss da pòsta letrònica l è neçessari verificál.
Schiscjá ul butún che gh'è chi da sót par curfermá al tò adrèss.
# Special:Version
'version' => 'Versiun',
-# Special:FilePath
-'filepath' => 'Percuurz daj archivi',
-
# Special:SpecialPages
'specialpages' => 'Paginn special',
'powersearch-toggleall' => 'Nyɔ́nsɔ',
'powersearch-togglenone' => 'Mɔ́kɔ́ tɛ́',
-# Quickbar
-'qbsettings-none' => 'Mɔ́kɔ́ tɛ́',
-
# Preferences page
'preferences' => 'Malúli',
'mypreferences' => 'Malúli ma ngáí',
# Special:Categories
'categories' => 'Ndéngé',
-# E-mail user
+# Email user
'emailuser' => 'Kotíndela yě mɛ́lɛ',
'defemailsubject' => '{{SITENAME}} mokánda',
'emailfrom' => 'útá',
# Special:NewFiles
'ilsubmit' => 'Boluki',
-# EXIF tags
+# Exif tags
'exif-artist' => 'Mokeli',
'exif-subjectdistancerange-2' => 'kokanga view',
'tog-enotifminoredits' => 'ສົ່ງ ອີເມລ ໃຫ້ຂ້ອຍ ເວລາມີການດັດແກ້ເລັກນ້ອຍນຳ',
'tog-enotifrevealaddr' => 'ສະແດງ ອີເມລ ຂອງຂ້ອຍ ໃນ ການແຈ້ງວ່າມີຂໍ້ຄວາມອີເມລ',
'tog-shownumberswatching' => 'ສະແດງ ຈຳນວນຜູ້ໃຊ້ ຕິດຕາມໝ້ານີ້',
-'tog-externaleditor' => 'ໃຊ້ ເອດິດເຕີທາງນອກ ຖ້າບໍ່ມີການຕັ້ງ',
-'tog-externaldiff' => 'ໃຊ້ ສ່ວນຕ່າງທາງນອກ ຖ້າບໍ່ມີ ການກຳໜົດ',
'tog-forceeditsummary' => 'ເຕື່ອນຂ້ອຍ ຖ້າບໍ່ໄດ້ຂຽນຫຍັງໃສ່ ຊ່ອງ ສະຫຼຸບການດັດແກ້',
'tog-watchlisthideown' => 'ເຊື່ອງ ການດັດແກ້ໂດຍຂ້ອຍ ໃນ ລາຍການຕິດຕາມຂອງຂ້ອຍ',
'tog-watchlisthidebots' => 'ເຊື່ອງ ການດັດແກ້ ໂດຍ ບອທ໌ ໃນລາຍການຕິດຕາມຂອງຂ້ອຍ',
'disclaimers' => 'ຂໍ້ປະຕິເສດຄວາມຮັບຜິດຊອບ',
'disclaimerpage' => 'Project:ຂໍ້ປະຕິເສດຄວາມຮັບຜິດຊອບ',
'edithelp' => 'ວິທີດັດແກ້ໜ້າ',
-'edithelppage' => 'Help:ການດັດແກ້',
'helppage' => 'Help:ເນື້ອໃນ',
'mainpage' => 'ໜ້າຫຼັກ',
'mainpage-description' => 'ໜ້າຫຼັກ',
'prevn' => '{{PLURAL:$1|$1}} ກ່ອນໜ້າ',
'nextn' => '{{PLURAL:$1|$1}} ຕໍ່ໄປ',
'viewprevnext' => 'ເບິ່ງ ($1 {{int:pipe-separator}} $2) ($3).',
-'searchhelp-url' => 'Help:ເນື້ອໃນ',
'search-result-size' => '$1 ({{PLURAL:$2|1 ຄຳ|$2 ຄຳ}})',
'search-result-score' => 'ຄວາມກ່ຽວຂ້ອງ: $1%',
'search-redirect' => '(ໂອນ $1)',
# Special:ListUsers
'listusers-submit' => 'ສະແດງ',
-# E-mail user
+# Email user
'emailuser' => 'ສົ່ງອີເມລ ຫາ ຜູ້ໃຊ້ນີ້',
'emailpage' => 'ສົ່ງອີເມລ ຫາ ຜູ້ໃຊ້',
'emailpagetext' => 'ຖ້າຜູ້ໃຊ້ນີ້ ຂຽນທີ່ຢູ່ອີເມລຢ່າງຖືກຕ້ອງຢູ່ການຕັ້ງຄ່າຂອງລາວ, ຟອມທາງລຸ່ມນີ້ ຈະສົ່ງຂໍ້ຄວາມໜຶ່ງຫາທີ່ຢູ່ອີເມລນັ້ນ.
'watchthispage' => 'ຕິດຕາມໜ້ານີ້',
'unwatch' => 'ເຊົາຕິດຕາມ',
'watchnochange' => 'ບໍ່ມີໜ້າທີ່ທ່ານຕິດຕາມໃດໆ ຖືກດັດແປງໃນໄລຍະສະແດງຂ້າງເທິງນີ້.',
-'wlheader-showupdated' => "* ບັນດາ ໜ້າ ທີ່ມີການປ່ຽນແປງ ຫຼັງຈາກທີ່ທ່ານ ເຂົ້າຊົມຫຼ້າສຸດ ຈະຖືກສະແດງເປັນ ໂຕໜັງສື '''ເຂັ້ມ'''",
+'wlheader-showupdated' => "ບັນດາ ໜ້າ ທີ່ມີການປ່ຽນແປງ ຫຼັງຈາກທີ່ທ່ານ ເຂົ້າຊົມຫຼ້າສຸດ ຈະຖືກສະແດງເປັນ ໂຕໜັງສື '''ເຂັ້ມ'''",
'wlshowlast' => 'ສະແດງ $1 ຊົ່ວໂມງຫຼ້າສຸດ $2 ມື້ຫຼ້າສຸດ $3',
# Displayed when you click the "watch" button and it is in the process of watching
# Metadata
'metadata-expand' => 'ສະແດງລະອຽດຕື່ມ',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'ຄວາມກ້ວາງ',
'exif-imagelength' => 'ຄວາມສູງ',
'exif-imagedescription' => 'ຫົວຂໍ້ຮູບ',
'namespacesall' => 'ທັງໝົດ',
'monthsall' => 'ທັງໝົດ',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => 'ຢືນຢັນ ທີ່ຢູ່ ອີເມລ',
'confirmemail_pending' => 'ລະຫັດຢືນຢັນ ໄດ້ຖືກສົ່ງໄປ ທີ່ຢູ່ ອີເມລ ຂອງ ທ່ານ; ຖ້າ ທ່ານ ຫາກໍ່ສ້າງບັນຊີ
, ທ່ານ ຄວນຈະລໍຖ້າໜ້ອຍໜຶ່ງ ກ່ອນຈະ ພະຍາຍາມ
# Special:Version
'version' => 'ສະບັບ',
-# Special:FilePath
-'filepath' => 'ທາງໄປຫາໄຟລ໌',
-
# Special:SpecialPages
'specialpages' => 'ໜ້າພິເສດ',
'tog-enotifrevealaddr' => 'Kamukile zwa adress di meli di xete peson kwa melina notifikasyona',
'tog-shownumberswatching' => 'Kamukile tali di kentezi sebelu',
'tog-fancysig' => "Ro sebu e data (dicon ling'ki auto)",
-'tog-externaleditor' => "Sebelize hloli ye ng'i ektenali dauto",
-'tog-externaldiff' => 'Sebelize petuho ektenali dauto',
'tog-showjumplinks' => 'Nyembulisize "sinkumukezi" ling\'ki',
'tog-uselivepreview' => 'Sebelize live PendiBe (bulukezi JavaScript) (yem nca)',
'tog-watchlisthideown' => 'Cwankekile zwa afina di zwa mukoloko di kentezi',
'disclaimers' => 'Dikulemi',
'disclaimerpage' => 'Project:Dikulemi generali',
'edithelp' => "Hloli ye ng'i",
-'edithelppage' => "Help:Hloli ye ng'i",
'helppage' => 'Help:Buinaneli di petulo',
'mainpage' => 'Petulo yem efro',
'mainpage-description' => 'Petulo yem efro',
'prevn' => 'kona {{PLURAL:$1|$1}}',
'nextn' => 'lila {{PLURAL:$1|$1}}',
'viewprevnext' => 'Kamukile ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Buinaneli di petulo',
'searchall' => 'xete',
'showingresults' => "Kamukile opi {{PLURAL:$1|'''1''' ekali|'''$1''' ekalina}} di #'''$2'''.",
'showingresultsnum' => "Kamukile {{PLURAL:$3|'''1''' ekali|'''$3''' ekalina}} di #'''$2'''.",
'powersearch' => 'Fatukile',
-# Quickbar
-'qbsettings-none' => 'Ni',
-
# Preferences page
'preferences' => 'Petohoni di sebelu',
'mypreferences' => 'Zwa petohoni di sebelu',
'listusers-submit' => 'Kamukile',
'listusers-noresult' => 'Ni-di sebelu.',
-# E-mail user
+# Email user
'emailuser' => 'Imeli bye sebelu',
'emailpage' => 'Imeli sebelu',
'defemailsubject' => '{{SITENAME}} meli',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagedescription' => 'Sebu di imegi',
# External editor support
* @author Dark Eagle
* @author Eitvys200
* @author Garas
+ * @author Geitost
* @author Homo
* @author Hugo.arg
* @author Ignas693
* @author Kaganer
+ * @author Mantak111
* @author Matasg
* @author Meno25
* @author Ola
'oct' => 'spa',
'nov' => 'lap',
'dec' => 'grd',
+'january-date' => 'Sausio $1',
+'february-date' => 'Vasario $1',
+'march-date' => 'Kovo $1',
+'april-date' => 'Balandžio $1',
+'may-date' => 'Gegužės $1',
+'june-date' => 'Birželio $1',
+'july-date' => 'Liepos $1',
+'august-date' => 'Rugpjūčio $1',
+'september-date' => 'Rugsėjo $1',
+'october-date' => 'Spalio $1',
+'november-date' => 'Lapkričio $1',
+'december-date' => 'Gruodžio $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorija|Kategorijos}}',
'create-this-page' => 'Sukurti šį puslapį',
'delete' => 'Trinti',
'deletethispage' => 'Ištrinti šį puslapį',
+'undeletethispage' => 'Attrinti šį puslapį',
'undelete_short' => 'Atkurti $1 {{PLURAL:$1:redagavimą|redagavimus|redagavimų}}',
'viewdeleted_short' => 'Peržiūrėti $1 {{PLURAL:$1|ištrintą keitimą|ištrintus keitimus|ištrintų keitimų}}',
'protect' => 'Užrakinti',
'disclaimers' => 'Atsakomybės apribojimas',
'disclaimerpage' => 'Project:Atsakomybės apribojimas',
'edithelp' => 'Kaip redaguoti',
-'edithelppage' => 'Help:Redagavimas',
'helppage' => 'Help:Turinys',
'mainpage' => 'Pagrindinis puslapis',
'mainpage-description' => 'Pagrindinis puslapis',
'viewsourcetext' => 'Jūs galite žiūrėti ir kopijuoti puslapio kodą:',
'viewyourtext' => "Jūs galite matyti ir kopijuoti '''savo redagavimų''' tekstą į šį puslapį:",
'protectedinterface' => 'Šiame puslapyje yra apsaugotas nuo piktnaudžiavimo programinės įrangos sąsajos tekstas.',
-'editinginterface' => "'''Dėmesio:''' Jūs redaguojate puslapį, kuris yra naudojamas programinės įrangos sąsajos tekste. Pakeitimai šiame puslapyje taip pat pakeis naudotojo sąsajos išvaizdą ir kitiems naudojams. Jei norite išversti, siūlome pasinaudoti [//translatewiki.net/wiki/Main_Page?setlang=lt „translatewiki.net“], „MediaWiki“ lokalizacijos projektu.",
+'editinginterface' => "'''Dėmesio:''' Jūs redaguojate puslapį, kuris yra naudojamas programinės įrangos sąsajos tekste. Pakeitimai šiame puslapyje taip pat pakeis naudotojo sąsajos išvaizdą ir kitiems naudotojams šiame wiki.
+Jei norite pridėti ir keisti vertimus, siūlome pasinaudoti [//translatewiki.net/wiki/Main_Page?setlang=lt „translatewiki.net“], „MediaWiki“ lokalizacijos projektu.",
'sqlhidden' => '(SQL užklausa paslėpta)',
'cascadeprotected' => 'Šis puslapis buvo apsaugotas nuo redagavimo, kadangi jis yra įtrauktas į {{PLURAL:$1|šį puslapį, apsaugotą|šiuos puslapius, apsaugotus}} „pakopinės apsaugos“ pasirinktimi:
$2',
'namespaceprotected' => "Jūs neturite teisės redaguoti puslapių '''$1''' srityje.",
'customcssprotected' => 'Jūs neturite teisės keisti šį CSS puslapį, nes jame yra kito naudotojo asmeniniai nustatymai.',
'customjsprotected' => 'Jūs neturite teisės keisti šį JavaScript puslapį, nes jame yra kito naudotojo asmeniniai nustatymai.',
+'mycustomcssprotected' => 'Jūs neturite teisės redaguoti šio CSS puslapio.',
+'mycustomjsprotected' => 'Jūs neturite teisės redaguoti šio JavaScript puslapio.',
'ns-specialprotected' => 'Specialieji puslapiai negali būti redaguojami.',
'titleprotected' => "[[User:$1|$1]] apsaugojo šį pavadinimą nuo sukūrimo.
Nurodyta priežastis yra ''$2''.",
'welcomecreation-msg' => 'Jūsų paskyra buvo sukurta.
Nepamirškite pakeisti savo [[Special:Preferences|{{SITENAME}} nustatymų]].',
'yourname' => 'Naudotojo vardas:',
+'userlogin-yourname' => 'Naudotojo vardas',
+'userlogin-yourname-ph' => 'Įveskite savo naudotojo vardą',
'yourpassword' => 'Slaptažodis:',
+'userlogin-yourpassword' => 'Slaptažodis',
+'userlogin-yourpassword-ph' => 'Įveskite savo slaptažodį',
+'createacct-yourpassword-ph' => 'Įveskite slaptažodį',
'yourpasswordagain' => 'Pakartokite slaptažodį:',
+'createacct-yourpasswordagain' => 'Patvirtinkite slaptažodį',
+'createacct-yourpasswordagain-ph' => 'Įveskite slaptažodį dar kartą',
'remembermypassword' => 'Prisiminti prisijungimo duomenis šiame kompiuteryje (daugiausiai $1 {{PLURAL:$1|dieną|dienas|dienų}})',
+'userlogin-remembermypassword' => 'Įsiminti mane',
+'userlogin-signwithsecure' => 'Naudoti saugią jungtį',
'securelogin-stick-https' => 'Likite prisijungę prie HTTPS po prisijungimo',
'yourdomainname' => 'Jūsų domenas:',
'password-change-forbidden' => 'Jus negalite keisti slaptažodžių šioje wiki.',
'logout' => 'Atsijungti',
'userlogout' => 'Atsijungti',
'notloggedin' => 'Neprisijungęs',
+'userlogin-noaccount' => 'Neturite paskyros?',
+'userlogin-joinproject' => 'Prisijungti prie {{SITENAME}}',
'nologin' => "Neturite prisijungimo vardo? '''$1'''.",
'nologinlink' => 'Sukurkite paskyrą',
'createaccount' => 'Sukurti paskyrą',
'gotaccount' => "Jau turite paskyrą? '''$1'''.",
'gotaccountlink' => 'Prisijunkite',
'userlogin-resetlink' => 'Pamiršote savo prisijungimo duomenis?',
+'userlogin-resetpassword-link' => 'Nustatykite slaptažodį iš naujo',
+'helplogin-url' => 'Help:Prisijungimas',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Prisijungimo pagalba]]',
+'createacct-join' => 'Įveskite savo informaciją žemiau.',
+'createacct-emailrequired' => 'Elektroninio pašto adresas',
+'createacct-emailoptional' => 'Elektroninio pašto adresas (neprivaloma)',
+'createacct-email-ph' => 'Įveskite savo elektroninio pašto adresą',
'createaccountmail' => 'Naudokite laikiną atsitiktinį slaptažodį ir nusiųskite jį į elektroninį paštą, nurodytą žemiau.',
+'createacct-realname' => 'Vardas (neprivaloma)',
'createaccountreason' => 'Priežastis:',
+'createacct-reason' => 'Priežastis',
+'createacct-reason-ph' => 'Kodėl kuriate kitą paskyrą',
+'createacct-captcha' => 'Saugumo patikrinimas',
+'createacct-imgcaptcha-ph' => 'Įveskite tekstą, kurį matote aukščiau',
+'createacct-submit' => 'Sukurkite savo paskyrą',
+'createacct-benefit-heading' => '{{SITENAME}} sukurtas žmonių kaip jūs.',
+'createacct-benefit-body1' => '{{PLURAL:$1|keitimas|keitimai|keitimų}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|puslapis|puslapiai}}',
+'createacct-benefit-body3' => 'Neseni {{PLURAL:$1|autorius|autoriai|autorių}}',
'badretype' => 'Įvesti slaptažodžiai nesutampa.',
'userexists' => 'Įvestasis naudotojo vardas jau naudojamas.
Prašome pasirinkti kitą vardą.',
'loginerror' => 'Prisijungimo klaida',
+'createacct-error' => 'Paskyros kūrimo klaida',
'createaccounterror' => 'Nepavyko sukurti paskyros: $1',
'nocookiesnew' => 'Naudotojo paskyra buvo sukurta, bet jūs nesate prisijungęs. {{SITENAME}} naudoja slapukus, kad prijungtų naudotojus. Jūs esate išjungę slapukus. Prašome įjungti juos, tada prisijunkite su savo naujuoju naudotojo vardu ir slaptažodžiu.',
'nocookieslogin' => '{{SITENAME}} naudoja slapukus, kad prijungtų naudotojus. Jūs esate išjungę slapukus. Prašome įjungti juos ir pamėginkite vėl.',
'cannotchangeemail' => 'Paskyros e-mail adresas šiame viki negali būti keičiamas.',
'emaildisabled' => 'Ši svetainė negali siųsti elektroninių laiškų.',
'accountcreated' => 'Paskyra sukurta',
-'accountcreatedtext' => 'Naudotojo paskyra $1 buvo sukurta.',
+'accountcreatedtext' => 'Naudotojo paskyra [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) buvo sukurta.',
'createaccount-title' => '{{SITENAME}} paskyros kūrimas',
'createaccount-text' => 'Projekte {{SITENAME}} ($4) kažkas sukūrė paskyrą „$2“ su slaptažodžiu „$3“ panaudodamas jūsų el. pašto adresą.
Jūs turėtumėte prisijungti ir pasikeisti savo slaptažodį.
'resetpass-wrong-oldpass' => 'Klaidingas laikinas ar esamas slaptažodis.
Jūs galbūt jau sėkmingai pakeitėte savo slaptažodį ar gavote naują laikiną slaptažodį.',
'resetpass-temp-password' => 'Laikinas slaptažodis:',
+'resetpass-abort-generic' => 'Slaptažodžio keitimas buvo nutrauktas nuo ekstenzijos.',
# Special:PasswordReset
'passwordreset' => 'Atstatyti slaptažodį',
-'passwordreset-text' => 'Užpildykite šią formą, norėdami atkurti savo slaptažodį.',
+'passwordreset-text-one' => 'Užpildykite šią formą, norėdami atkurti savo slaptažodį.',
+'passwordreset-text-many' => '{{PLURAL:$1|Įveskite vieną iš dalies duomenų, norėdami atkurti jūsų slaptažodį.}}',
'passwordreset-legend' => 'Atstatyti slaptažodį',
'passwordreset-disabled' => 'Slaptažodžių atstatymai šiame wikyje išjungti.',
-'passwordreset-pretext' => '{{PLURAL:$1| | Langelyje parašykite vieną duomenų vienetų žemiau}}',
+'passwordreset-emaildisabled' => 'El. pašto funkcijos uždraustos šiame wiki.',
'passwordreset-username' => 'Naudotojo vardas:',
'passwordreset-domain' => 'Domenas:',
'passwordreset-capture' => 'Peržiūrėti galutinį e-mail laišką?',
{{PLURAL:$3|Šis laikinas slaptažodis|Šie laikini slaptažodžiai}} baigs galioti po {{PLURAL:$5|vienos dienos|$5 dienų}}. Jūs turėtumėte prisijungti ir pasirinkti naują slaptažodį. Jei kažkas padarė tai be jūsų žinios arba jūs prisiminėte savo pirminį slaptažodį, ir jūs nebenorite jo pakeisti, galite ignoruoti šį pranešimą ir toliau naudotis savo senuoju slaptažodžiu.',
'passwordreset-emailelement' => 'Naudotojo vardas: $1
Laikinas slaptažodis: $2',
-'passwordreset-emailsent' => 'Priminimo laiškas buvo išsiųstas.',
-'passwordreset-emailsent-capture' => 'Priminimo e-mail laiškas bus pasiųstas, toks koks parodytas.',
+'passwordreset-emailsent' => 'Slaptažodžio priminimo laiškas buvo išsiųstas.',
+'passwordreset-emailsent-capture' => 'Slaptažodžio priminimo laiškas bus išsiųstas, toks koks parodytas.',
'passwordreset-emailerror-capture' => 'Priminimo e-mail laiškas buvo sugeneruotas, toks koks parodytas, bet pasiuntimas naudotojui buvo nesėkmingas: $1',
# Special:ChangeEmail
arba [{{fullurl:{{FULLPAGENAME}}|action=edit}} redaguoti šį puslapį]</span>.',
'noarticletext-nopermission' => 'Šiuo metu šiame puslapyje nėra jokio teksto.
Jūs galite [[Special:Search/{{PAGENAME}}|ieškoti šio puslapio pavadinimo]] kituose puslapiuose,
-<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ieškoti susijusių įrašų]</span>.',
+<span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} ieškoti susijusių įrašų]</span>, bet jūs neturite teisės sukurti šį puslapį.',
'userpage-userdoesnotexist' => 'Naudotojo paskyra „<nowiki>$1</nowiki>“ yra neužregistruota. Prašom patikrinti, ar jūs norite kurti/redaguoti šį puslapį.',
'userpage-userdoesnotexist-view' => 'Naudotojo paskyra „$1“ neužregistruota.',
'blocked-notice-logextract' => 'Šis naudotojas šiuo metu yra užblokuotas.
'updated' => '(Atnaujinta)',
'note' => "'''Pastaba:'''",
'previewnote' => "''Nepamirškite, kad tai tik peržiūra, pakeitimai dar nėra išsaugoti!'''",
-'continue-editing' => 'Tęsti redagavimą',
+'continue-editing' => 'Eiti į redagavimo sritį',
'previewconflict' => 'Ši peržiūra parodo tekstą iš viršutiniojo teksto redagavimo lauko taip, kaip jis bus rodomas, jei pasirinksite išsaugoti.',
'session_fail_preview' => "'''Atsiprašome! Mes negalime vykdyti jūsų keitimo dėl sesijos duomenų praradimo.
Prašome pamėginti vėl. Jei tai nepadeda, pamėginkite atsijungti ir prisijungti atgal.'''",
iš viešų ar panašių nemokamų šaltinių (detaliau - $1).
'''NEKOPIJUOKITE AUTORINĖMIS TEISĖMIS APSAUGOTŲ DARBŲ BE LEIDIMO!'''",
'longpageerror' => "'''KLAIDA: Tekstas, kurį pateikėte, yra $1 {{PLURAL:$1|kilobaito|kilobaitų|kilobaitų}} ilgio, tai yra didesnis nei yra leistina. Yra leidžiami tiktai $2 {{PLURAL:$2|kilobaitas|kilobaitai|kilobaitų}}.''' Jis nebus išsaugotas.",
-'readonlywarning' => "'''DĖMESIO: Duomenų bazė buvo užrakinta techninei profilaktikai, todėl šiuo metu negalėsite išsaugoti savo pakeitimų. Siūlome nusikopijuoti tekstą į tekstinį failą ir vėliau jį čia išsaugoti.'''
+'readonlywarning' => "'''Įspėjimas: Duomenų bazė buvo užrakinta techninei profilaktikai, todėl šiuo metu negalėsite išsaugoti savo pakeitimų. Siūlome nusikopijuoti tekstą į tekstinį failą ir vėliau jį čia išsaugoti.'''
Ją užrakinusio administratoriaus paaiškinimas: $1",
'protectedpagewarning' => "'''Dėmesio: Šis puslapis yra užrakintas taip, kad jį redaguoti gali tik administratoriaus teises turintys naudotojai.'''
Greičiausiai jis yra ištrintas.',
'edit-conflict' => 'Redagavimo konfliktas.',
'edit-no-change' => 'Jūsų keitimas buvo ignoruotas kadangi nebuvo atlikta jokių teksto pakeitimų.',
+'postedit-confirmation' => 'Jūsų pakeitimas išsaugotas.',
'edit-already-exists' => 'Negalima sukurti naujo puslapio.
Jis jau egzistuoja.',
'defaultmessagetext' => 'Numatytasis pranešimo tekstas',
'searchmenu-legend' => 'Paieškos nustatymai',
'searchmenu-exists' => "'''Puslapis pavadinimu „[[$1]]“ šioje wiki'''",
'searchmenu-new' => "'''Sukurti puslapį „[[:$1]]“ šioje wiki!'''",
-'searchhelp-url' => 'Help:Turinys',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ieškoti puslapių su šiuo priešdėliu]]',
'searchprofile-articles' => 'Turinio puslapiai',
'searchprofile-project' => 'Pagalbos ir projekto puslapiai',
# Preferences page
'preferences' => 'Nustatymai',
-'mypreferences' => 'Mano nustatymai',
+'mypreferences' => 'Nustatymai',
'prefs-edits' => 'Keitimų skaičius:',
'prefsnologin' => 'Neprisijungęs',
'prefsnologintext' => 'Jums reikia būti <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} prisijungusiam]</span>, kad galėtumėte keisti savo nustatymus.',
'timezoneregion-indian' => 'Indijos vandenynas',
'timezoneregion-pacific' => 'Ramusis vandenynas',
'allowemail' => 'Leisti siųsti el. laiškus iš kitų naudotojų',
-'prefs-searchoptions' => 'Paieškos nuostatos',
+'prefs-searchoptions' => 'Paieška',
'prefs-namespaces' => 'Vardų sritys',
'defaultns' => 'Pagal nutylėjimą ieškoti šiose vardų srityse:',
'default' => 'pagal nutylėjimą',
'prefs-emailconfirm-label' => 'El. pašto patvirtinimas:',
'prefs-textboxsize' => 'Redagavimo lango dydis',
'youremail' => 'El. paštas:',
-'username' => 'Naudotojo vardas:',
-'uid' => 'Naudotojo ID:',
+'username' => '{{GENDER:$1Naudotojo vardas}}:',
+'uid' => '{{GENDER:$1|Naudotojo}} ID:',
'prefs-memberingroups' => '{{PLURAL:$1|Grupės|Grupių}} narys:',
'prefs-registration' => 'Registravimosi laikas:',
'yourrealname' => 'Tikrasis vardas:',
'userrights-notallowed' => 'Jūsų paskyra neturi teisių priskirti ar panaikinti naudotojų teises.',
'userrights-changeable-col' => 'Grupės, kurias galite keisti',
'userrights-unchangeable-col' => 'Grupės, kurių negalite keisti',
+'userrights-conflict' => 'Naudotojo teisių konfliktas! Prašome dar kartą taikyti savo keitimus.',
# Groups
'group' => 'Grupė:',
'right-editusercssjs' => 'Redaguoti kitų naudotojų CSS ir JS failus',
'right-editusercss' => 'Redaguoti kitų naudotojų CSS failus',
'right-edituserjs' => 'Redaguoti kitų naudotojų JS failus',
+'right-editmyuserjs' => 'Redaguokite savo naudotojo vartotojo JavaScript failus',
'right-rollback' => 'Greitai atmesti paskutinio naudotojo tam tikro puslapio pakeitimus',
'right-markbotedits' => 'Žymėti atmestus keitimus kaip atliktus boto',
'right-noratelimit' => 'Netaikyti greičio apribojimų',
'upload-proto-error-text' => 'Nuotoliniai įkėlimas reikalauja, kad URL prasidėtų <code>http://</code> arba <code>ftp://</code>.',
'upload-file-error' => 'Vidinė klaida',
'upload-file-error-text' => 'Įvyko vidinė klaida bandant sukurti laikinąjį failą serveryje.
-Prašome susisiekti su [[Special:ListUsers/sysop|sistemos administratoriumi]].',
+Prašome susisiekti su [[Special:ListUsers/sysop|administratoriumi]].',
'upload-misc-error' => 'Nežinoma įkėlimo klaida',
-'upload-misc-error-text' => 'Įvyko nežinoma klaida vykstant įkėlimui. Prašome patikrinti, kad URL teisingas bei pasiekiamas ir pamėginkite vėl. Jei problema lieka, susisiekite su sistemos administratoriumi.',
+'upload-misc-error-text' => 'Įvyko nežinoma klaida vykstant įkėlimui. Prašome patikrinti, kad URL teisingas bei pasiekiamas ir pamėginkite vėl. Jei problema lieka, susisiekite su [[Special:ListUsers/sysop|administratoriumi]].',
'upload-too-many-redirects' => 'URL yra per daug kartų peradresuotas',
'upload-unknown-size' => 'Nežinomas dydis',
'upload-http-error' => 'Įvyko HTTP klaida: $1',
Nuorodos turėtų būti patikslintos, kad rodytų į konkretų puslapį.<br />
Puslapis laikomas daugiaprasmiu puslapiu, jei jis naudoja šabloną, kuris yra nurodomas iš [[MediaWiki:Disambiguationspage]].",
+'pageswithprop-prop' => 'Ypatybės pavadinimas:',
+'pageswithprop-submit' => 'Eiti',
+
'doubleredirects' => 'Dvigubi peradresavimai',
'doubleredirectstext' => 'Šiame puslapyje yra puslapių, kurie nukreipia į kitus peradresavimo puslapius, sąrašas.
Kiekvienoje eilutėje yra nuorodos į pirmąjį ir antrąjį peradresavimą, taip pat antrojo peradresavimo paskirtis, kuris paprastai yra „tikrasis“ paskirties puslapis, į kurį pirmasis peradresavimas ir turėtų rodyti.
'listusers-noresult' => 'Nerasta jokių naudotojų.',
'listusers-blocked' => '(užblokuotas)',
+# Special:ActiveUsers
+'activeusers' => 'Aktyvių naudotojų sąrašas',
+'activeusers-intro' => 'Tai naudotojų sąrašas, kurie ką nors padarė per $1 {{PLURAL:$1|paskutinę dieną|paskutines dienas|paskutinių dienų}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|keitimas|keitimai|keitimų}} per $3 {{PLURAL:$3|paskutinę dieną|paskutines dienas|paskutinių dienų}}',
+'activeusers-from' => 'Rodyti naudotojus, pradedant:',
+'activeusers-hidebots' => 'Slėpti robotus',
+'activeusers-hidesysops' => 'Slėpti administratorius',
+'activeusers-noresult' => 'Nerasta jokių naudotojų.',
+
# Special:ListGroupRights
'listgrouprights' => 'Naudotojų grupių teisės',
'listgrouprights-summary' => 'Žemiau pateiktas naudotojų grupių, apibrėžtų šioje wiki, ir su jomis susijusių teisių sąrašas.
'usermessage-editor' => 'Sistemos pranešėjas',
# Watchlist
-'watchlist' => 'Stebimi puslapiai',
-'mywatchlist' => 'Stebimi puslapiai',
+'watchlist' => 'Stebimų sąrašas',
+'mywatchlist' => 'Stebimų sąrašas',
'watchlistfor2' => 'Naudotojo $1 $2',
'nowatchlist' => 'Neturite nei vieno stebimo puslapio.',
'watchlistanontext' => 'Prašome $1, kad peržiūrėtumėte ar pakeistumėte elementus savo stebimųjų sąraše.',
'notvisiblerev' => 'Versija buvo ištrinta',
'watchnochange' => 'Pasirinktu laikotarpiu nebuvo redaguotas nei vienas stebimas puslapis.',
'watchlist-details' => 'Stebima {{PLURAL:$1|$1 puslapis|$1 puslapiai|$1 puslapių}} neskaičiuojant aptarimų puslapių.',
-'wlheader-enotif' => '* El. pašto priminimai yra įjungti.',
-'wlheader-showupdated' => "* Puslapiai pakeisti nuo tada, kai paskutinį kartą apsilankėte juose, yra pažymėti '''pastorintai'''",
+'wlheader-enotif' => 'El. pašto pranešimai yra įjungti.',
+'wlheader-showupdated' => "Puslapiai pakeisti nuo tada, kai paskutinį kartą apsilankėte juose, yra pažymėti '''pastorintai'''",
'watchmethod-recent' => 'tikrinami naujausi stebimųjų puslapių pakeitimai',
'watchmethod-list' => 'ieškoma naujausių keitimų stebimuose puslapiuose',
'watchlistcontains' => 'Jūsų stebimųjų sąraše yra $1 {{PLURAL:$1|puslapis|puslapiai|puslapių}}.',
'protect-default' => 'Leisti visiems naudotojams',
'protect-fallback' => 'Reikalauti „$1“ teisės',
'protect-level-autoconfirmed' => 'Blokuoti naujai prisiregistravusius ir neregistruotus naudotojus',
-'protect-level-sysop' => 'Tik administratoriai',
+'protect-level-sysop' => 'Leisti tik administratoriams',
'protect-summary-cascade' => 'pakopinė apsauga',
'protect-expiring' => 'baigia galioti $1 (UTC)',
'protect-expiring-local' => 'baigia galioti $1',
'blanknamespace' => '(Pagrindinė)',
# Contributions
-'contributions' => 'Naudotojo indėlis',
+'contributions' => '{{GENDER:$1|Naudotojo}} įndėlis',
'contributions-title' => '{{GENDER:$1|Naudotojo|Naudotojos}} $1 indėlis',
-'mycontris' => 'Mano įnašas',
+'mycontris' => 'Įnašai',
'contribsub2' => 'Naudotojo $1 ($2)',
'nocontribs' => 'Jokie keitimai neatitiko šių kriterijų.',
-'uctop' => ' (paskutinis)',
+'uctop' => '(dabartinis)',
'month' => 'Nuo mėnesio (ir anksčiau):',
'year' => 'Nuo metų (ir anksčiau):',
'whatlinkshere-hideredirs' => '$1 nukreipimus',
'whatlinkshere-hidetrans' => '$1 įtraukimus',
'whatlinkshere-hidelinks' => '$1 nuorodas',
-'whatlinkshere-hideimages' => '$1 paveikslėlių nuorodos',
+'whatlinkshere-hideimages' => '$1 failų nuorodos',
'whatlinkshere-filters' => 'Filtrai',
# Block/unblock
'thumbnail-more' => 'Padidinti',
'filemissing' => 'Dingęs failas',
'thumbnail_error' => 'Klaida kuriant sumažintą paveikslėlį: $1',
+'thumbnail_error_remote' => 'Klaidos pranešimas iš $1: $2',
'djvu_page_error' => 'DjVu puslapis nepasiekiamas',
'djvu_no_xml' => 'Nepavyksta gauti XML DjVu failui',
'thumbnail-temp-create' => 'Negalima sukurti laikinos failo miniatiūros',
'import-interwiki-templates' => 'Įtraukti visus šablonus',
'import-interwiki-submit' => 'Importuoti',
'import-interwiki-namespace' => 'Paskirties vardų sritis:',
+'import-interwiki-rootpage' => 'Paskirties namų puslapis (pasirinktinai):',
'import-upload-filename' => 'Failo pavadinimas:',
'import-comment' => 'Komentaras:',
'importtext' => 'Prašome eksportuoti iš projekto-šaltinio failo, naudojant [[Special:Export|eksportavimo pagalbininką.]]
'import-error-interwiki' => 'Puslapis "$1" nebuvo įkeltas, kadangi jo pavadinimas yra rezervuotas išorinei nuorodai (interviki).',
'import-error-special' => 'Puslapis "$1" nebuvo įkeltas, kadangi jis priklauso specialiai vardų sričiai, kurioje yra negalimi puslapiai.',
'import-error-invalid' => 'Puslapis "$1" nebuvo įkeltas, kadangi jo vardas yra neteisingas.',
+'import-rootpage-invalid' => 'Duotas šaknų puslapis yra blogas pavadinimas.',
# Import log
'importlogpage' => 'Importavimų sąrašas',
'pageinfo-authors' => 'Skirtingų autorių skaičius',
'pageinfo-recent-edits' => 'Paskutinųjų keitimų skaičius (per $1 laikotarpį)',
'pageinfo-recent-authors' => 'Pastarųjų skirtingų redaguotojų skaičius',
+'pageinfo-magic-words' => 'Magiškas(-i) {{PLURAL:$1|žodis|žodžiai}} ($1)',
'pageinfo-toolboxlink' => 'Puslapio informacija',
'pageinfo-redirectsto' => 'Nukreipimai į',
'pageinfo-redirectsto-info' => 'informacija',
'file-info-size-pages' => '$1 × $2 taškų, failo dydis: $3, MIME tipas: $4, $5 {{PLURAL:$5|page|pages}}',
'file-nohires' => 'Geresnė raiška negalima.',
'svg-long-desc' => 'SVG failas, formaliai $1 × $2 taškų, failo dydis: $3',
+'svg-long-desc-animated' => 'Animuotas SVG failas, formaliai $1 × $2 pikselių, failo dydis: $3',
'svg-long-error' => 'Neleistinas SVG failas: $1',
'show-big-image' => 'Pilna raiška',
'show-big-image-preview' => 'Sumažintos iliustracijos dydis: $1 .',
'minutes' => '{{PLURAL:$1|$1 minutę|$1 minutes|$1 minučių}}',
'hours' => '{{PLURAL:$1|$1 valandą|$1 valandas|$1 valandų}}',
'days' => '{{PLURAL:$1|$1 dieną|$1 dienas|$1 dienų}}',
+'weeks' => '{{PLURAL:$1|$1 savaitė|$1 savaitės}}',
+'months' => '{{PLURAL:$1|$1 mėnuo|$1 mėnesiai}}',
+'years' => '{{PLURAL:$1|$1 metai}}',
'ago' => 'prieš $1',
'just-now' => 'tik dabar',
+# Human-readable timestamps
+'hours-ago' => 'prieš $1 {{PLURAL:$1|valandą|valandas|valandų}}',
+'minutes-ago' => 'prieš $1 {{PLURAL:$1|minutę|minutes|minučių}}',
+'seconds-ago' => 'prieš $1 {{PLURAL:$1|sekundę|sekundes|sekundžių}}',
+'monday-at' => 'Pirmadienį $1',
+'tuesday-at' => 'Antradienį $1',
+'wednesday-at' => 'Trečiadienį $1',
+'thursday-at' => 'Ketvirtadienį $1',
+'friday-at' => 'Penktadienį $1',
+'saturday-at' => 'Šeštadienį $1',
+'sunday-at' => 'Sekmadienį $1',
+'yesterday-at' => 'Vakar $1',
+
# Bad image list
'bad_image_list' => 'Formatas yra toks:
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Plotis',
'exif-imagelength' => 'Aukštis',
'exif-bitspersample' => 'Bitai komponente',
'exif-originalimageheight' => 'Piešinio aukštis prieš apkarpymą',
'exif-originalimagewidth' => 'Piešinio plotis prieš apkarpymą',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Nesuspausta',
'exif-compression-2' => 'CCITT grupės 3 1-Dimensijos Modifikuotas Hafmano duomenų paleidimo ilgio kodavimas.',
'exif-compression-3' => 'CCITT 3 grupės fakso kodavimas',
'version-entrypoints-header-entrypoint' => 'Įėjimo taškas',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Failo kelias',
-'filepath-page' => 'Failas:',
-'filepath-submit' => 'Kelias',
-'filepath-summary' => 'Šis specialusis puslapis parašo pilną kelią iki failo.
-Paveikslėliai yra rodomi pilna raiška, kiti failų tipai paleidžiami tiesiogiai su jų susietąja programa.',
+# Special:Redirect
+'redirect-submit' => 'Eiti',
+'redirect-lookup' => 'Peržvalgos:',
+'redirect-value' => 'Vertė:',
+'redirect-user' => 'Naudotojo ID',
+'redirect-revision' => 'Puslapio peržiūra',
+'redirect-file' => 'Failo vardas',
+'redirect-not-exists' => 'Vertė nėra nustatyta',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Ieškoti dublikuotų failų',
* <span class="mw-specialpagecached">Talpyklinių specialius puslapius (gali būti pasenusius).</span>',
'specialpages-group-maintenance' => 'Sistemos palaikymo pranešimai',
'specialpages-group-other' => 'Kiti specialieji puslapiai',
-'specialpages-group-login' => 'Prisijungimas / Registracija',
+'specialpages-group-login' => 'Prisijungti / sukurti paskyrą',
'specialpages-group-changes' => 'Naujausi keitimai ir istorijos',
'specialpages-group-media' => 'Informacija apie failus ir jų pakrovimas',
'specialpages-group-users' => 'Naudotojai ir teisės',
'htmlform-submit' => 'Siųsti',
'htmlform-reset' => 'Atšaukti pakeitimus',
'htmlform-selectorother-other' => 'Kita',
+'htmlform-no' => 'Ne',
+'htmlform-yes' => 'Taip',
+'htmlform-chosen-placeholder' => 'Pasirinkite parinktį',
# SQLite database support
'sqlite-has-fts' => '$1 su visatekstės paieškos palaikymu',
'sqlite-no-fts' => '$1 be visatekstės paieškos palaikymo',
# New logging system
-'logentry-delete-delete' => '$1 ištrynė puslapį $3',
-'logentry-delete-restore' => '$1 atkūrė puslapį $3',
+'logentry-delete-delete' => '$1 {{GENDER:$2|ištrynė}} puslapį $3',
+'logentry-delete-restore' => '$1 {{GENDER:$2|atkūrė}} puslapį $3',
'logentry-delete-event' => '$1 pakeistas matomumas {{PLURAL:$5|žurnalo įvykio|$5 žurnalo įvykių}} tarp $3: $4',
'logentry-delete-revision' => '$1 pakeitė puslapio „$3“ {{PLURAL:$5|versijos|$5 versijų}} matomumą: $4',
'logentry-delete-event-legacy' => '$1 pakeistas matomumą žurnalo renginiams tarp $3',
'api-error-ok-but-empty' => 'Vidinė klaida: nėra atsakymo iš serverio.',
'api-error-overwrite' => 'Perrašymas esamą failą neleidžiamas.',
'api-error-stashfailed' => 'Vidinė klaida: serveriui nepavyko išsaugoti laikinąjį failą.',
+'api-error-publishfailed' => 'Vidinė klaida: serveriui nepavyko paskelbti laikino failo.',
'api-error-timeout' => 'Serveris neatsakė per numatytą laiką.',
'api-error-unclassified' => 'Įvyko nežinoma klaida',
'api-error-unknown-code' => 'Nežinoma klaida: " $1 "',
'disclaimers' => 'Daīšmu nūstatejumi',
'disclaimerpage' => 'Project:Dasaīšonu nūstateišona',
'edithelp' => 'Paleigs',
-'edithelppage' => 'Help:Pataiseišona',
'helppage' => 'Help:Turīņs',
'mainpage' => 'Suoku puslopa',
'mainpage-description' => 'Suoku puslopa',
'prevn' => 'īprīškejuos {{PLURAL:$1|$1}}',
'nextn' => 'nuokamuos {{PLURAL:$1|$1}}',
'viewprevnext' => 'Apsavērt ($1 {{int:pipe-separator}} $2) ($3 vīnā lopā).',
-'searchhelp-url' => 'Help:Turīņs',
'searchprofile-articles' => 'Rakstīņuos',
'search-result-size' => '$1 ({{PLURAL:$2|$2 vuords|$2 vuordi|$2 vuordi}})',
'search-redirect' => '(puoradresiešona nu $1)',
'listgrouprights-members' => '(dalinīku saroksts)',
'listgrouprights-addgroup' => 'Dalikt {{PLURAL:$2|grupu|grupys}}: $1',
-# E-mail user
+# Email user
'emailuser' => 'Syuteit e-postu itam lītuotuojam',
'emailmessage' => 'Viestejums:',
'version-software-product' => 'Produkts',
'version-software-version' => 'Verseja',
-# Special:FilePath
-'filepath-page' => 'Fails:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Faila pasauka:',
'disclaimers' => 'Intlawhkhalhna',
'disclaimerpage' => 'Project: Intlawhkhalhna Dan',
'edithelp' => 'Siamţhat zirna',
-'edithelppage' => 'Help: Siamţhat dàn',
'helppage' => 'Help: A chhunga thu awmte',
'mainpage' => 'Phekpui',
'mainpage-description' => 'Phekpui',
# Special:PasswordReset
'passwordreset' => 'Thurûk ziakţha rawh',
-'passwordreset-text' => 'I thurûk thlâk turin ahnuaia lehkha khu dah khat ang che.',
'passwordreset-legend' => 'Thurûk ziakţha rawh',
'passwordreset-username' => 'Hmangtu hming:',
'passwordreset-domain' => 'Huamchin:',
'searchmenu-legend' => 'Zawn duhthlanna',
'searchmenu-exists' => "'''He wiki-ah hian \"[[:\$1]]\" tia koh phêk a awm.'''",
'searchmenu-new' => "'''[[:$1]] phek hi he wiki-ah hian siam rawh le!'''",
-'searchhelp-url' => 'Help:A chhunga thu awmte',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|He thuhmabet nei phêkte hi zawng rawh]]',
'searchprofile-articles' => 'A chhunga thu awm',
'searchprofile-project' => 'Ţanpuina leh hna-hmachhawp phekte',
'listusers-noresult' => 'Hmangtu an awm lo.',
'listusers-blocked' => '(danbeh)',
+# Special:ActiveUsers
+'activeusers' => 'Hmangtu hlun tlarna',
+'activeusers-hidebots' => 'Khawlmi thupna',
+'activeusers-hidesysops' => 'Roreltu thupna',
+'activeusers-noresult' => 'Hmangtu awm lo.',
+
# Special:ListGroupRights
'listgrouprights' => 'Hmangtu pawl dikna-chanvote',
'listgrouprights-key' => '* <span class="listgrouprights-granted">Dikna-chanvo phalsak</span>
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Zàuzáwng',
'exif-imagelength' => 'Sànzáwng',
'exif-bitspersample' => 'Péng khata mal(bit) awm zât',
* @author Dark Eagle
* @author FnTmLV
* @author Geimeris
+ * @author Geitost
* @author Gleb Borisov
* @author GreenZeb
* @author Kaganer
'disclaimers' => 'Saistību atrunas',
'disclaimerpage' => 'Project:Saistību atrunas',
'edithelp' => 'Rediģēšanas palīdzība',
-'edithelppage' => 'Help:Rediģēšana',
'helppage' => 'Help:Saturs',
'mainpage' => 'Sākumlapa',
'mainpage-description' => 'Sākumlapa',
'userlogout' => 'Iziet',
'notloggedin' => 'Neesi iegājis',
'userlogin-joinproject' => 'Pievienojieties {{SITENAME}}',
-'nologin' => "Nav lietotājvārda? '''$1'''.",
+'nologin' => 'Nav lietotājvārda? $1.',
'nologinlink' => 'Reģistrējies',
'createaccount' => 'Izveidot jaunu lietotāju',
'gotaccount' => "Tev jau ir lietotājvārds? '''$1'''!",
'searchmenu-legend' => 'Meklēšanas iespējas',
'searchmenu-exists' => "'''Šajā projektā ir raksts ar nosaukumu \"[[:\$1]]\"'''",
'searchmenu-new' => "'''Izveido rakstu \"[[:\$1]]\" šajā projektā!'''",
-'searchhelp-url' => 'Help:Saturs',
'searchprofile-articles' => 'Rakstos',
'searchprofile-project' => 'Palīdzības un projektu lapās',
'searchprofile-images' => 'Multivides failos',
'watchnochange' => 'Neviena no tevis uzraudzītajām lapām nav mainīta parādītajā laika posmā.',
'watchlist-details' => '(Tu uzraugi $1 {{PLURAL:$1|lapu|lapas}}, neieskaitot diskusiju lapas.)',
'wlheader-enotif' => 'E-pasta paziņojumi ir ieslēgti.',
-'wlheader-showupdated' => "* Lapas, kuras ir tikušas izmainītas, kopš tu tās pēdējoreiz apskatījies, te rādās ar '''pustrekniem''' burtiem",
+'wlheader-showupdated' => "Lapas, kuras ir tikušas izmainītas, kopš tu tās pēdējoreiz apskatījies, te rādās ar '''pustrekniem''' burtiem",
'watchlistcontains' => 'Tavā uzraugāmo lapu sarakstā ir $1 {{PLURAL:$1|lapa|lapas}}.',
'iteminvalidname' => "Problēma ar '$1' vienību, nederīgs nosaukums...",
'wlshowlast' => 'Parādīt izmaiņas pēdējo $1 stundu laikā vai $2 dienu laikā, vai arī $3.',
* @ingroup Language
* @file
*
+ * @author C933103
* @author Itsmine
* @author Justincheng12345
* @author Omnipaedista
'disclaimers' => '免責宣',
'disclaimerpage' => 'Project:免責宣',
'edithelp' => '助纂塾',
-'edithelppage' => 'Help:纂',
'helppage' => 'Help:目錄',
'mainpage' => '卷首',
'mainpage-description' => '卷首',
'editing' => '纂$1',
'creating' => '撰$1',
'editingsection' => '纂節$1',
-'editingcomment' => '贊$1',
+'editingcomment' => '撰$1',
'editconflict' => '纂沖$1',
'explainconflict' => "子纂與他人沖,上者時也,下者子也,望子合之。
註,'''{{int:savearticle}}'''上文儲焉",
'searchmenu-legend' => '尋選',
'searchmenu-exists' => "'''在此wiki中有頁為\"[[:\$1]]\"。'''",
'searchmenu-new' => "'''在此wiki上建頁\"[[:\$1]]\"!'''",
-'searchhelp-url' => 'Help:目錄',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|查此首之頁]]',
'searchprofile-articles' => '容',
'searchprofile-project' => '助題',
'modern.css' => '/* 此之 CSS 用於時髦面之簿也 */',
'vector.css' => '/* 此之 CSS 用於動力面之簿也 */',
'print.css' => '/* 此之 CSS 用於印之出力也 */',
-'handheld.css' => '/* 此之 CSS 用於 $wgHandheldStyle 之手置面也 */',
# Scripts
'common.js' => '/* 此之JavaScript將載於全簿之頁。 */',
# Special:ListGroupRights
'listgrouprights-members' => '(makʼaturepeşi listʼe)',
-# E-mail user
+# Email user
'emailuser' => 'Maxmares e-maili oncğoni',
# Watchlist
* @author Priyanka.rachna.jha
* @author Rajesh
* @author Reedy
+ * @author Rillke
* @author Umeshberma
* @author Vinitutpal
*/
'disclaimers' => 'अनाधिकार घोषणा',
'disclaimerpage' => 'Project:अनाधिकार घोषणा',
'edithelp' => 'संपादन सहयोग',
-'edithelppage' => 'Help:संपादन',
'helppage' => 'Help: विषय सूची',
'mainpage' => 'सम्मुख पन्ना',
'mainpage-description' => 'सम्मुख पृष्ठ',
ई दृढ़ करू जे ज्ञापक सक्रिय अछि, ऐ पन्नाकेँ फेरसँ भारित करू आ फेरसँ प्रयास करू।',
'noname' => 'अहाँ वैध प्रयोक्तानाम नै देने छी।',
'loginsuccesstitle' => 'सम्प्रवेश सफल',
-'loginsuccess' => "'''अहाँ सम्प्रवेश केलहुँ {{अन्तर्जाल-पता}} \"\$1\".'''क रूपमे।",
+'loginsuccess' => "'''अहाँ सम्प्रवेश केलहुँ {{SITENAME}} \"\$1\".'''क रूपमे।",
'nosuchuser' => '"$1" नामसँ कोनो प्रयोक्ता नै अछि।
प्रयोक्तानाम ब्रह्मक्षर-लघ्वक्षर भेद युक्त अछि।
अपन ह्रिजै जाँचू, वा [[Special:UserLogin/signup|नव खाता बनाउ]] ।',
# Special:PasswordReset
'passwordreset' => 'कूटशब्द फेरसँ बनाउ',
-'passwordreset-text' => 'ई-पत्र द्वारा अपन खाता विवरणक स्मरण प्राप्त करबा लेल ऐ फॉर्मकेँ भरू।',
'passwordreset-legend' => 'कूटशब्द फेरसँ बनाउ',
'passwordreset-disabled' => 'कूटशब्द फेरसँ बनाएब ऐ विकीपर अक्षम कएल अछि।',
-'passwordreset-pretext' => '{{PLURAL:$1||नीचाँक दत्तांशक एकटा भागक प्रविष्टि करू}}',
'passwordreset-username' => 'प्रयोक्तानाम',
'passwordreset-domain' => 'क्षेत्र:',
'passwordreset-capture' => 'परिणाम ई-पत्र देखू?',
'searchmenu-legend' => 'खोज विकल्प',
'searchmenu-exists' => "'''ऐ विकीपर एकटा पन्ना अछि \"[[:\$1]]\" नामसँ।'''",
'searchmenu-new' => "''' पन्ना निर्माण \"[[:\$1]]\" ऐ विकीपर !'''",
-'searchhelp-url' => 'Help: विषय सूची',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ऐ उपसर्गक पन्ना सभकेँ देखू]]',
'searchprofile-articles' => 'अनुक्रम पन्ना सभ',
'searchprofile-project' => 'सहायता आ परियोजना पन्ना सभ',
'listusers-noresult' => 'कोनो प्रयोक्ता नै',
'listusers-blocked' => '(प्रतिबन्धित)',
+# Special:ActiveUsers
+'activeusers' => 'सक्रिय प्रयोक्ता सभक सूची',
+'activeusers-intro' => 'ई ओहेन प्रयोक्ता सभक सूची अछि जे पछिला $1 {{PLURAL:$1|दिन|दिन}} मे किछु सक्रियता देखेने छथि।',
+'activeusers-count' => '$1 {{PLURAL:$1|सम्पादन|सम्पादन सभ}} paChilaa {{PLURAL:$3|दिन|$3 दिन}}',
+'activeusers-from' => 'प्रयोक्ता प्रदर्शन प्रारम्भ भेल:',
+'activeusers-hidebots' => 'स्वचालन नुकाउ',
+'activeusers-hidesysops' => 'संचालक नुकाउ',
+'activeusers-noresult' => 'कोनो प्रयोक्ता नै भेटल',
+
# Special:ListGroupRights
'listgrouprights' => 'प्रयोक्ता संवर्ग अधिकार',
'listgrouprights-summary' => 'ई सभ प्रयोक्ता संवर्गक एकटा सूची अछि जे ऐ विकीपरपरिभाषित अछि ओकर संसर्गित प्रवेश अधिकारक संग।
'notvisiblerev' => 'कोनो दोसर प्रयोक्ता द्वारा कएल अन्तिम परिवर्तन मेटा देल गेल',
'watchnochange' => 'अहाँक साकांक्ष सूचीमे सँ कोनोमे ऐ अवधिमे सम्पादन नै कएल गेल।',
'watchlist-details' => '{{PLURAL:$1|$1 पन्ना|$1 पन्ना सभ}} अहाँक साकांक्षसूचीमे, चौबटिया पन्ना नै गानल गेल।',
-'wlheader-enotif' => '* ई-पत्र सूचना लागू अछि।',
-'wlheader-showupdated' => "* पन्ना सभ जे अहाँक एतए अन्तिम बेर अएलाक बाद बदलल अछि तकर सूची देल अछि '''गाढ़''' मे",
+'wlheader-enotif' => 'ई-पत्र सूचना लागू अछि।',
+'wlheader-showupdated' => "पन्ना सभ जे अहाँक एतए अन्तिम बेर अएलाक बाद बदलल अछि तकर सूची देल अछि '''गाढ़''' मे",
'watchmethod-recent' => 'साकांक्ष सूचीक हालक सम्पादन जाँचि रहल छी',
'watchmethod-list' => 'साकांक्ष-सूचीक हालक सम्पादनकेँ देखि रहल छी',
'watchlistcontains' => 'अहाँक साकांक्ष-सूचीमे अछि $1 {{PLURAL:$1|पन्ना|पन्ना}}।',
'metadata-langitem' => "'''$2:''' $1",
'metadata-langitem-default' => '$1',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'चौड़ाई',
'exif-imagelength' => 'ऊँच',
'exif-bitspersample' => 'प्रति भाग अष्टक',
'exif-originalimageheight' => 'काटहि सें पहिने तस्वीरक ऊँचाई',
'exif-originalimagewidth' => 'काटहि सें पहिने तस्वीरक चौड़ाई',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'असम्पीडित',
'exif-compression-2' => 'सी.सी.आइ.टी.टी. वर्ग ३ १ - बीम संशोधित हफमैन कूट सोझ लम्बाइ',
'exif-compression-3' => 'सी.सी.आइ.टी.टी. वर्ग ३ फैक्स संकूट',
'version-software-product' => 'उत्पाद',
'version-software-version' => 'संस्करण',
-# Special:FilePath
-'filepath' => 'संचिकाक रस्ता',
-'filepath-page' => 'संचिका',
-'filepath-submit' => 'जाऊ',
-'filepath-summary' => 'ई विशेष पन्ना संचिकाक पूर्ण रस्ता देखबैत अछि।
-चित्र सभ पूर्ण आकारमे देखाएल जाइत अछि, दोसर संचिका प्रकार चालित होइए सोझे सम्बन्धित संविधि द्वारा।',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'द्वितीयक संचिका ताकू',
'fileduplicatesearch-summary' => 'हैश मानक आधारपर द्वितीयक संचिका ताकू।',
'disclaimers' => 'Pamaidonan',
'disclaimerpage' => 'Project:Panyangkalan umum',
'edithelp' => 'Pitulung panyuntingan',
-'edithelppage' => 'Help:Panyuntingan',
'helppage' => 'Help:Isi',
'mainpage' => 'Kaca Utama',
'mainpage-description' => 'Kaca Utama',
# Special:PasswordReset
'passwordreset' => "Tembung sandhi di-''reset''",
-'passwordreset-text' => 'Lengkapi formulir kiye ben nampa imel ngelingna detil akune Rika.',
'passwordreset-legend' => "Tembung sandhi di-''reset''",
'passwordreset-disabled' => "''Reset'' tembung sandhi wis dipateni nang wiki kiye.",
-'passwordreset-pretext' => '{{PLURAL:$1||Lebokna salah siji data nang ngisor kiye}}',
'passwordreset-username' => 'Jeneng panganggo:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Deleng imel hasile?',
'searchmenu-legend' => 'Pilihan panggoletan',
'searchmenu-exists' => "''' Ana kaca nganggo jeneng \"[[:\$1]]\" nang wiki kiye.'''",
'searchmenu-new' => "'''Gawe kaca \"[[:\$1]]\" nang wiki kiye!'''",
-'searchhelp-url' => 'Help:Isi',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Deleng daftar kaca sing nganggo tembung-wiwitan kiye]]',
'searchprofile-articles' => 'Isine kaca',
'searchprofile-project' => 'Kaca pitulung lan proyèk',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-lightsource' => 'Sumber cahya',
'exif-meteringmode-6' => 'Sebagiyan',
# Core parser functions
'duplicate-defaultsort' => "'''Pènget:''' Kunci baku sing nggo ngurutna (''Default sort key'') yakuwe \"\$2\" wis nggantèkna kunci baku sing nggo ngurutna sedurungé \"\$1\".",
-# Special:FilePath
-'filepath-submit' => 'Golèti',
-
# Special:SpecialPages
'specialpages' => 'Kaca-kaca khusus',
'tog-shownumberswatching' => 'Няфтемс мъзяра сувсида конат арафтозь лопать эсь мельгеваномазост',
'tog-oldsig' => 'Афкуксонь кядьтяшкс',
'tog-fancysig' => 'Кядьтяшкст улихть викитекстокс (эслек тиеви сюлмафксфтома)',
-'tog-externaleditor' => 'Нолдамс тевс ушеширень петнить мъзярс илякс изь мярьгов (аньцек тевонь содайхненди, сяс мес эрявихть башка кядьёнкст-арафнемат содама машинаса [//www.mediawiki.org/wiki/Manual:External_editors сяда тов.])',
-'tog-externaldiff' => 'Нолдамс тевс ушеширень програм верзиень ваксс путоманкса мъзярс илякс изь мярьгов (аньцек тевонь содайхненди, сяс мес эрявихть башка кядьёнкст-арафнемат содама машинаса[//www.mediawiki.org/wiki/Manual:External_editors сяда тов.])',
'tog-showjumplinks' => 'Мярьгомс "юпадемс" сатовома сюлмафкстненди',
'tog-uselivepreview' => 'Максомс эряй васень няфтемась (JavaScript) (Варжамань)',
'tog-forceeditsummary' => 'Няфтемс мондине мезе сёрмадомс шава петнема вальмас сувамста',
'disclaimers' => 'Видешинь корхтаматне',
'disclaimerpage' => 'Project:Пря видешинь корхнема',
'edithelp' => 'Петнемань лезкс',
-'edithelppage' => 'Help:Петнема',
'helppage' => 'Help:Лопань потмоц',
'mainpage' => 'Пря лопа',
'mainpage-description' => 'Пря лопа',
# Special:PasswordReset
'passwordreset' => 'Полафтомс сувама валцень',
-'passwordreset-text' => 'Эряви пяшкодемс тя формать е-сёрма сёрматфтомацень колга сявоманди.',
'passwordreset-legend' => 'Полафтомс сувама валцень',
'passwordreset-disabled' => 'Сувама валсь аф полафтови тя викить эса.',
-'passwordreset-pretext' => '{{PLURAL:$1||Тяштьк содама пялькснень эзда фкя алу}}',
'passwordreset-username' => 'Тиить лемоц',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Ваномс мекольце е-сёрма?',
'searchmenu-legend' => 'Вешендема арафнематне',
'searchmenu-exists' => "'''Тя Викиса ули лопась \"[[:\$1]]\" лем мархта'''",
'searchmenu-new' => "'''Ушедомс лопась \"[[:\$1]]\" тя Викиса!'''",
-'searchhelp-url' => 'Help:Лопань потмоц',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Мумс лопат тя валынголькссь мархта]]',
'searchprofile-articles' => 'Потмонь лопат',
'searchprofile-project' => 'Лезкс эди проектонь лопат',
'search-external' => 'Ушеширень вешендема',
'searchdisabled' => '{{SITENAME}}-са тяни вешендемась аш. Ули кода вешендемс Google эли иля вешендемань интернет програпнень вельде. Шарфтк мяльце тостонь {{SITENAME}}-нь потмонц верзиец, улема, сирелгодсь.',
-# Quickbar
-'qbsettings' => 'Навигациень седяфкс',
-'qbsettings-none' => 'Аф няфтемс',
-'qbsettings-fixedleft' => 'Кержи шири киртьф',
-'qbsettings-fixedright' => 'Види шири киртьф',
-'qbsettings-floatingleft' => 'Кержи ширеса уенди',
-'qbsettings-floatingright' => 'Виде ширеса уенди',
-
# Preferences page
'preferences' => 'Арафнематне',
'mypreferences' => 'Монь латцемане',
'notvisiblerev' => 'Верзиесь нардафоль',
'watchnochange' => 'Мезеге изь полафтов тонь мельгеванома лувомастот тя пингеёткса.',
'watchlist-details' => '{{PLURAL:$1|$1 лопа|$1 лопат}} мельгеваномацень ала корхнема лопат аф лувомок.',
-'wlheader-enotif' => '* Электрононь сёрма вельде пачфнема нолдаф тевс.',
-'wlheader-showupdated' => "* Лопат конань полафтозь тонь мекольце сувсемадот меле няфтевсть '''эчке тяшкса'''.",
+'wlheader-enotif' => 'Электрононь сёрма вельде пачфнема нолдаф тевс.',
+'wlheader-showupdated' => "Лопат конань полафтозь тонь мекольце сувсемадот меле няфтевсть '''эчке тяшкса'''.",
'watchmethod-recent' => 'мельге ванома ала лопатнень коряс мекольце петнематнень ванондома',
'watchmethod-list' => 'мекольце петнематнень коряс мельге ванома ала лопат ванондома',
'watchlistcontains' => 'Тонь мельгеваномасот $1 {{PLURAL:$1|лопа|лопат}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Келец',
'exif-imagelength' => 'Серец',
'exif-bitspersample' => 'Битт фкя компонентс',
'exif-gpsdatestamp' => 'GPS ши',
'exif-gpsdifferential' => 'GPS диференциень петнема',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Аф компрезияф',
'exif-unknowndate' => 'Аф содаф шись',
'version-software-product' => 'Нолдафкс',
'version-software-version' => 'Верзие',
-# Special:FilePath
-'filepath' => 'Файлти ян',
-'filepath-page' => 'Файл:',
-'filepath-submit' => 'Ян',
-'filepath-summary' => 'Тя башка тевонь лопась няфнесы сембе янць файлти.
-Архтофксне няфневихть сембе синь кувалмосост, иля файлонь сортсна нолдавихть видеста програпнень вельде конат сотфт мархтост.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Вешендемс кафонзаф файлхне',
'fileduplicatesearch-summary' => 'Вешендемс кафонзаф файлхнень хэш-кодонь лувкс коряс.',
'oct' => 'Okt',
'nov' => 'Nov',
'dec' => 'Des',
+'january-date' => '$1 Janoary',
+'february-date' => '$1 Febroary',
+'march-date' => '$1 Martsa',
+'april-date' => '$1 Aprily',
+'may-date' => '$1 Mey',
+'june-date' => '$1 Jiona',
+'july-date' => '$1 Jolay',
+'august-date' => '$1 Aogositra',
+'september-date' => '$1 Septambra',
+'october-date' => '$1 Oktobra',
+'november-date' => '$1 Novambra',
+'december-date' => '$1 Desambra',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Sokajy|Sokajy}}',
'newwindow' => '(sokafy anaty takila hafa)',
'cancel' => 'Aoka ihany',
'moredotdotdot' => 'Tohiny...',
+'morenotlisted' => 'Tohiny tsy voalisitra...',
'mypage' => 'Pejy',
'mytalk' => 'Dinika',
'anontalk' => "Resaka ho an'io adiresy IP io",
'disclaimers' => 'Fampitandremana',
'disclaimerpage' => 'Project:General disclaimer',
'edithelp' => 'Fanoroana',
-'edithelppage' => 'Help:Endritsoratra',
'helppage' => 'Help:Fanoroana',
'mainpage' => 'Fandraisana',
'mainpage-description' => 'Fandraisana',
'badaccess' => 'Tsy manana alàlana',
'badaccess-group0' => 'Tsy afaka manantontosa ny asa nangatahinao ianao tompoko',
-'badaccess-groups' => "Ny asa andramanao atao io dia voafetra amin'ny mpikambana ao amin'ny vondrona $1.{{PLURAL:$2||}}",
+'badaccess-groups' => "Ny asa andramanao atao io dia voafetra amin'ny mpikambana ao amin'ny vondrona $1.{{PLURAL:$2|}}",
'versionrequired' => "
Mitaky version $1-n'i MediaWiki",
Mbola afaka mampiasa ny {{SITENAME}} ianao na dia ef anivoaka aza, na afaka <span class='plainlinks'>[$1 miverina mihiditra]</span> ianao ambanin'ny anaranao na anaram-pikambana hafa.
Fantaro fa ny endriky ny pejy sasany dia mety mitovy amin'ny endrika nahitanao azy tamin' ianao mbola niditra tato, ho toy izany ny endri-pejy raha tsy nofafanao ny cache.",
+'welcomeuser' => 'Tonga soa, $1',
+'welcomecreation-msg' => "Noforonina ny aontinao.
+Aza adin ny manova ny [[Special:Preferences|safidinao ro amin'i{{SITENAME}}]].",
'yourname' => 'Solonanarana',
+'userlogin-yourname' => 'Anaram-pikambana',
+'userlogin-yourname-ph' => 'Atsofohy ny anaram-pikambanao',
'yourpassword' => 'Tenimiafina',
+'userlogin-yourpassword' => 'Tenimiafina',
+'userlogin-yourpassword-ph' => 'Atsofohy ny tenimiafinao',
+'createacct-yourpassword-ph' => 'Manatsofoha tenimiafina',
'yourpasswordagain' => 'Avereno ampidirina eto ny tenimiafina',
+'createacct-yourpasswordagain' => 'Hamarino ny tenimiafinao',
+'createacct-yourpasswordagain-ph' => 'Mbola ampidiro fanindroany ny tenimiafinao',
'remembermypassword' => '{{PLURAL:}}Tadidio ny tenimiafiko (mandritry ny $1 andro fara-fahabetsany)',
+'userlogin-remembermypassword' => 'Tadidio aho',
+'userlogin-signwithsecure' => "Fidirana amin'ny alalan'ny fanohizana azo antoka",
'securelogin-stick-https' => "Mijanona tafiditra amin'i HTTPS rehefa tafiditra",
'yourdomainname' => 'faritra (domaine) misy anao',
'password-change-forbidden' => "Tsy afaka manova ny tenimiafina ianao eto amin'ity wiki ity.",
'logout' => 'Hiala',
'userlogout' => 'Hiala',
'notloggedin' => 'Tsy tafiditra',
+'userlogin-noaccount' => 'Tsy manana kaonty?',
+'userlogin-joinproject' => "Midira ho mpikamban'i {{SITENAME}}",
'nologin' => "Tsy manana solonanarana? '''$1'''.",
'nologinlink' => 'Manokafa kaonty',
'createaccount' => 'Hamorona kaonty',
'gotaccount' => "Efa manana kaonty? '''$1'''.",
'gotaccountlink' => 'Midira',
'userlogin-resetlink' => "Adinonavo ve ny antsipihan'ny fidiranao ?",
-'createaccountmail' => "amin'ny imailaka",
+'userlogin-resetpassword-link' => 'Hamerina ny tenimiafinao',
+'helplogin-url' => 'Fanoroana:Fidirana',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Fanoroana mikasika ny fidirana]]',
+'createacct-join' => 'Atsofohy eo ambany ny fampahalalana momba anao.',
+'createacct-emailrequired' => 'Adiresy mailaka :',
+'createacct-emailoptional' => 'Adiresy mailaka (azo tsy atao) :',
+'createacct-email-ph' => 'Atsofohy ny adiresy mailakao',
+'createaccountmail' => "Hampiasa tenimiafina kisendra vonjimaika ary handefa azy mailaka any amin'ny adiresy nolazaina teo ambany",
+'createacct-realname' => 'Tena anarana (azo tsy atao)',
'createaccountreason' => 'Antony :',
+'createacct-reason' => 'Antony',
+'createacct-reason-ph' => 'Inona ny antony hamoronanao kaonty hafa',
+'createacct-imgcaptcha-ph' => 'Atsofohy ny teny hitanao eo ambony',
+'createacct-submit' => 'Hamorona ny kaontinao',
+'createacct-benefit-heading' => "Olona tahaka ianao no manoratra eo amin'i {{SITENAME}}",
+'createacct-benefit-body1' => 'fanovana{{PLURAL:}}',
+'createacct-benefit-body2' => 'pejy{{PLURAL:}}',
+'createacct-benefit-body3' => 'mpandray anjara vao haingana{{PLURAL:}}',
'badretype' => 'Tsy mitovy ny tenimiafina nampidirinao.',
'userexists' => 'Efa miasa io anaram-pikambana natsofokao io.
Anarana hafa safidiana.',
'loginerror' => "Tsy fetezana teo amin'ny fidirana",
+'createacct-error' => 'Hadisoana tam-pamoronana ny kaonty',
'createaccounterror' => 'Tsy afaka mamorona kaonty : $1',
'nocookiesnew' => "Voasikatra ny kaontim-pikambana, fa tsy tafiditra amin'ny kaontinao ianao.
Mampiasa cookies ny {{SITENAME}} ho an'ny fidirana amin'ny kaonty.
# Email sending
'php-mail-error-unknown' => "Hadisoana tsy fantatra tao amin'ny tao mial() an'i PHP.",
'user-mail-no-addy' => 'Nanandrana nandefa imailaka tsy misy adiresy imailaka.',
+'user-mail-no-body' => 'Nanandrana nandefa mailaka babangoana na fohy loatra',
# Change password dialog
'resetpass' => 'Hanova ny tenimiafina',
'resetpass-wrong-oldpass' => 'Tsy izy ny tenimiafinao (tsotra na miserana)
Mety efa nanova tenimiafina na nanontany tenimiafina miserana angamba ianao.',
'resetpass-temp-password' => 'Tenimiafina miserana :',
+'resetpass-abort-generic' => "Nosakanan'ny itatra (extension) iray ny fanovana tenimiafina.",
# Special:PasswordReset
'passwordreset' => 'Famafana ary famerenana ny tenimiafina',
-'passwordreset-text' => 'Fenoy ity fôrmiolera ity mba hamerenana ny tenimiafinao.',
'passwordreset-legend' => 'Famafana ary famerenana ny tenimiafina',
'passwordreset-disabled' => "Tsy nalefa ny fanovana tenimiafina adino eto amin'ity wiki ity.",
-'passwordreset-pretext' => '{{PLURAL:$1}}Mampidira singa data eo ambany',
+'passwordreset-emaildisabled' => "Tsy avela ny fampiasana mailaka eto amin'ity wiki ity.",
'passwordreset-username' => 'Anaram-pikambana :',
'passwordreset-domain' => 'Vala (domain) :',
'passwordreset-capture' => 'Hijery ny imailaka vokany ?',
'changeemail-oldemail' => 'Adiresy imailaka ankehitriny :',
'changeemail-newemail' => 'Adiresy imailaka vaovao :',
'changeemail-none' => '(tsy misy)',
+'changeemail-password' => "Tenimiafinao eo amin'i {{SITENAME}}:",
'changeemail-submit' => 'Hanova ny adiresy imailaka',
'changeemail-cancel' => 'Adinoy',
'edit-already-exists' => 'Tsy afaka amboarina ilay pejy vaovao.
Efa misy izy.',
'defaultmessagetext' => 'Hafatra raha tsy misy',
+'content-failed-to-parse' => "Tsy naha-parse ny votoatin'i $2 ho an'ny modely $1 : $3",
'invalid-content-data' => "Data anaty votoatiny tsy miady amin'ny fepetra",
+'content-not-allowed-here' => "Votoatiny ''$1'' voarara eo amin'ny pejy [[$2]]",
+
+# Content models
+'content-model-wikitext' => 'wiki-soratra',
+'content-model-text' => 'soratra tsotra',
+'content-model-javascript' => 'JavaScript',
+'content-model-css' => 'CSS',
# Parser/template warnings
'expensive-parserfunction-warning' => 'Tandremo : Betsaka loatra ny fanantsoana ny tao parser.
'searchmenu-legend' => 'Safidy mikasika ny fitadiavana',
'searchmenu-exists' => "'''Misy pejy mitondra anarana « [[:$1]] » eto amin'ity wiki ity'''",
'searchmenu-new' => "'''Hanamboatra ny pejy « [[:$1|$1]] » eto amin'ity wiki ity !'''",
-'searchhelp-url' => 'Help:Fanoroana',
'searchmenu-prefix' => "[[Special:PrefixIndex/$1|Hitady pejy manomboka amin'io tovona io]]",
'searchprofile-articles' => 'Pejy misy votoatiny',
'searchprofile-project' => 'Pejy fanampiana sy pejy tetikasa',
'youremail' => 'Imailaka:',
'username' => '{{GENDER:$1}}Anaram-pikambana :',
'uid' => '{{GENDER:$1}}mpikambana :',
-'prefs-memberingroups' => "mpikambana{{GENDER:$2}} ao amin'ny vondrona{{PLURAL:$1}} :",
+'prefs-memberingroups' => "Mpikambana{{GENDER:$2}} ao amin'ny vondrona{{PLURAL:$1}}:",
'prefs-registration' => 'Daty fidirana :',
'yourrealname' => 'Tena anarana marina:',
'yourlanguage' => 'Tenim-pirenena:',
'uploadscripted' => "
Misy kialo HTML na fango script mety tsy ho hain'ny navigateur sasany haseho ity rakitra ity.",
'uploadvirus' => 'Misy viriosy io rakitra io! Toy izao ny antsipirihany: $1',
+'uploadjava' => 'Ny rakitra dia rakitra ZIP ahitana rakitra .class Java.
+Voarara ny mandefa rakitra Java satria mety hahavaky ny fepetra mikasika ny antoka ireo rakitra ireo.',
'upload-source' => 'Rakitra fango',
'sourcefilename' => "Anaran'ny rakitra:",
'sourceurl' => 'Loharano URL :',
'backend-fail-notsame' => "Efa misy rakitra samihafa ho an'i $1",
'backend-fail-invalidpath' => '$1 dia lalam-pitahirizana tsy azo raisina.',
'backend-fail-delete' => 'Tsy afaka mamafa ilay rakitra $1.',
+'backend-fail-describe' => 'Tsy nahasolo ny metadata ho an\'ny rakitra "$1".',
'backend-fail-alreadyexists' => 'Efa misy ilay rakitra $1.',
'backend-fail-store' => 'Tsy afaka mitahiry ilay rakitra $1 anaty $2.',
'backend-fail-copy' => 'Tsy afaka mandika ilay rakitra $1 anaty $2.',
'disambiguations' => 'Pejy misy rohy amina pejy fanalana ny fisalasalana',
'disambiguationspage' => 'Template:homonimia',
+'pageswithprop-submit' => 'Alefa',
+
'doubleredirects' => 'Fihodinana roa',
'double-redirect-fixed-move' => "Ity fihodinana ity, nanana ny tanjona [[$1]] novaina anarana, dia mitondra mankany amin'ny [[$2]].",
'double-redirect-fixer' => 'Mpanitsy fihodinana',
'listusers-noresult' => 'Tsy nahitana mpikambana.',
'listusers-blocked' => '(voasakana)',
+# Special:ActiveUsers
+'activeusers' => 'Lisitry ny mpikambana mavitrika',
+'activeusers-intro' => 'Ity ny lisitry ny mpikambana izay nanao zavatra iray nandritry ny andro $1 farany. {{PLURAL:}}',
+'activeusers-count' => "Tao $1{{PLURAL:}} tanatin'ny $3 andro",
+'activeusers-from' => 'Aseho ny mpikambana hatry ny :',
+'activeusers-hidebots' => 'Asitriho ny robo',
+'activeusers-hidesysops' => 'Asitriho ny mpandrindra',
+'activeusers-noresult' => 'Tsy nahitana mpikambana.',
+
# Special:ListGroupRights
'listgrouprights' => "Fahefan'ny vondrom-pikambana",
'listgrouprights-summary' => "Ity pejy ity dia ahitana ny lisitry ny vondrom-pikambana voafaritra ato amin'ity wiki ity ary ny zo ananany. Mety misy [[{{MediaWiki:Listgrouprights-helppage}}|fampahalalana fanampiny]] mikasika ny zo manokana.",
'notvisiblerev' => 'Voafafa ilay santiôna',
'watchnochange' => 'Tsy niova nandritra ny fe-potoana miseho ny zavatra arahanao',
'watchlist-details' => "Pejy $1{{PLURAL:}} ao amin'ny lisitry ny pejy arahanao, tsy isaina ny pejin-dresaka.",
-'wlheader-enotif' => "* Mandeha ny fampilazana amin'ny alalan'ny imailaka.",
-'wlheader-showupdated' => "* <b>Voasorabaventy</b> ny pejy niova taorian'ny famangianao farany.",
+'wlheader-enotif' => "Alefa ny fampilazana amin'ny mailaka.",
+'wlheader-showupdated' => "Aseho '''sorabaventy''' ny pejy niova taorian'ny famangianao azy farany.",
'watchmethod-recent' => 'fanamarinana ny fanovana farany hahitana pejy arahana',
'watchmethod-list' => 'fanamarinana ny pejy arahana ahitana fanovana farany',
'watchlistcontains' => "Ao amin'ny pejy arahanao dia ahitana pejy $1{{PLURAL:}}.",
'prot_1movedto2' => '[[$1]] voaova anarana ho [[$2]]',
'protect-badnamespace-title' => 'Anaran-tsehatra tsy azo arovana',
'protect-badnamespace-text' => "Tsy afaka arovana ny pejy ao amin'io anaran-tsehatra io.",
+'protect-norestrictiontypes-title' => 'Pejy tsy azo arovana',
'protect-legend' => 'Fanekena ny fiarovana pejy',
'protectcomment' => 'Antony :',
'protectexpiry' => 'Daty fitsaharana :',
'blanknamespace' => '(fotony)',
# Contributions
-'contributions' => "Fandraisan'anjaran'ny mpikambana",
+'contributions' => "Fandraisan'anjaran'ny mpikambana{{GENDER:$1}}",
'contributions-title' => "Fandraisan'anjaran'i $1",
'mycontris' => "Fandraisan'anjara",
'contribsub2' => "ho an'ny $1 ($2)",
'thumbnail-more' => 'Angedazina',
'filemissing' => 'Tsy hita ny rakitra',
'thumbnail_error' => 'Tsy fetezana eo am-panamboarana ilay saritapaka : $1',
+'thumbnail_error_remote' => "Hafa-kadisoana avy amin'i $1:
+$2",
'djvu_page_error' => "Pejy DjVu any ivelan'ny fetra",
'djvu_no_xml' => "Tsy afaka alaina ny XML ho an'ny rakitra DjVu",
'thumbnail-temp-create' => 'Tsy afaka namorona ilay thumbnail miserana',
'import-logentry-upload' => "nampiditra [[$1]] tamin'ny fampidiran-drakitra",
'import-logentry-interwiki' => "nampiditra $1 tamin'ny transwiki",
+# JavaScriptTest
+'javascripttest' => 'Fanandramana JavaScript',
+'javascripttest-title' => 'Mandefa fanandramana $1',
+
# Tooltip help for the actions
'tooltip-pt-userpage' => 'Ny pejinao',
'tooltip-pt-anonuserpage' => "Ny pejim-bikamban'ny IP andraisanao anjara",
'tooltip-compareselectedversions' => "Jereo ny fahasamihafana amin'ireo votoatin'ny pejy anankiroa ireo.",
'tooltip-watch' => "Ampidiro amin'ny lisitry ny pejy arahinao maso ity pejy ity",
'tooltip-watchlistedit-normal-submit' => 'Hanala ny lohateny',
+'tooltip-watchlistedit-raw-submit' => 'Hanavao ny pejy arahana',
'tooltip-recreate' => 'Hamorona ilay pejy fanindroany raha efa voafafa izy',
'tooltip-upload' => 'Hanomboka ny fampidirana',
'tooltip-rollback' => "Manala ny fanovan'ny mpikambana farany nanova azy ilay asa « foano » (Rollback) .",
# Info page
'pageinfo-title' => 'Fampahalalana ho an\'i "$1"',
+'pageinfo-header-basic' => 'Fampahalalana fototra',
'pageinfo-header-edits' => "Tantaran'ny fanovana",
+'pageinfo-header-restrictions' => "Fiarovana an'ilay pejy",
+'pageinfo-header-properties' => "Tondron'ilay pejy",
+'pageinfo-display-title' => 'Lohateny aseho',
+'pageinfo-length' => 'Halavam-pejy (oktety)',
+'pageinfo-article-id' => 'Laharam-pejy',
+'pageinfo-language' => "Tenin'ny votoatiny",
+'pageinfo-robot-policy' => "Satan'ny motera fikarohana",
'pageinfo-views' => "Isan'ny jery",
'pageinfo-watchers' => "Isan'ny mpandray anjara manaraka",
+'pageinfo-firstuser' => 'Mpamorona ilay pejy',
+'pageinfo-firsttime' => 'Daty namoronana ilay pejy',
+'pageinfo-lastuser' => 'Mpanova farany',
+'pageinfo-lasttime' => "Datin'ny fanovana farany",
'pageinfo-edits' => "Isa manontolon'ny fanovana",
'pageinfo-authors' => "Isa manontolon'ny mpandray anjara",
+'pageinfo-recent-edits' => "Fanovana vao haingana (natao tanatin'ny $1)",
+'pageinfo-recent-authors' => "Isa vao haingan'ny mpanoratra misongadina",
+'pageinfo-hidden-categories' => 'Sokajy nafenina{{PLURAL:$1}} ($1)',
+'pageinfo-redirectsto' => "Fihdinana mankany amin'ny",
+'pageinfo-redirectsto-info' => 'fampahalalana',
+'pageinfo-contentpage' => 'Isaina ho pejim-botoatiny',
+'pageinfo-contentpage-yes' => 'Eny',
+'pageinfo-protect-cascading-yes' => 'Eny',
+'pageinfo-category-pages' => 'Isam-pejy',
+'pageinfo-category-subcats' => "Isan'ny zana-tsokajy",
+'pageinfo-category-files' => "Isan'ny rakitra",
# Patrolling
'markaspatrolleddiff' => 'Marihana ho voamarina',
'file-info-size-pages' => '$1 × $2 teboka, haben-drakitra : $3, karazana MIME $4, pejy $5 {{PLURAL:}}',
'file-nohires' => "Tsy misy sary ngeza non'io",
'svg-long-desc' => 'rakitra SVG, habe $1 × $2 teboka, habe : $3',
+'svg-long-error' => 'Rakitra SVG tsy ekena : $1',
'show-big-image' => "Hijery ny tena haben'ny sary",
'show-big-image-size' => '$1 × $2 teboka',
'file-info-gif-looped' => 'miverimberina',
'days' => 'andro{{PLURAL:$1}}',
'ago' => '$1 lasa izay',
+# Human-readable timestamps
+'monday-at' => "Alatsinainy tamin'ny $1",
+'tuesday-at' => "Talata tamin'ny $1",
+'wednesday-at' => "Alarobia tamin'ny $1",
+'thursday-at' => "Alakamisy tamin'ny $1",
+'friday-at' => "Zoma tamin'ny $1",
+'saturday-at' => "Sabotsy tamin'ny $1",
+'sunday-at' => "Alahady tamin'ny $1",
+'yesterday-at' => "Omaly tamin'ny $1",
+
# Bad image list
'bad_image_list' => "Ity ny andrefiny :
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Halalaka',
'exif-imagelength' => 'Haavo',
'exif-bitspersample' => 'Bit isaky ny singa',
'version-software-product' => 'Vokatra',
'version-software-version' => 'Santiôna',
-# Special:FilePath
-'filepath' => "Lalan'ny drakitra",
-'filepath-page' => 'Rakitra',
-'filepath-submit' => 'Handeha',
-'filepath-summary' => "Mamerina ny lalam-pandehanana any amin'ilay rakitra ity pejy ity.
-Aseho amin'ny tena habeny ny sary aseho, ny hafa dia alefa miaraka amin'ny rindrankajy miaraka aminy avy hatrany.",
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Hitady rakitra mitovy endrika',
'fileduplicatesearch-legend' => 'Hitady mitovy endrika',
NS_SPECIAL => 'Лӱмын_ыштыме',
NS_TALK => 'Каҥашымаш',
NS_USER => 'Пайдаланыше',
- NS_USER_TALK => 'Пайдаланышын_каҥашымаш',
- NS_PROJECT_TALK => '$1ын_каҥашымаш',
+ NS_USER_TALK => 'Пайдаланышын_каҥашымашыже',
+ NS_PROJECT_TALK => '$1ын_каҥашымашыже',
NS_FILE => 'Файл',
NS_FILE_TALK => 'Файл_шотышто_каҥашымаш',
NS_TEMPLATE => 'Кышкар',
'Обсуждение_категории' => NS_CATEGORY_TALK,
// Namspace changes
+ 'Пайдаланышын_каҥашымаш' => NS_USER_TALK,
+ '$1ын_каҥашымаш' => NS_PROJECT_TALK,
'Файлын_каҥашымаш' => NS_FILE_TALK,
'Ямдылык' => NS_TEMPLATE,
'Ямдылык_шотышто_каҥашымаш' => NS_TEMPLATE_TALK,
'disclaimers' => 'Вуйшиймаш деч кораҥмаш',
'disclaimerpage' => 'Project:Вуйшиймаш деч кораҥмаш',
'edithelp' => 'Тӧрлатымаш полыш',
-'edithelppage' => 'Help:Тӧрлымаш',
'helppage' => 'Help:Полшык',
'mainpage' => 'Тӱҥ лаштык',
'mainpage-description' => 'Тӱҥ лаштык',
'nstab-category' => 'Категорий',
# Main script and global functions
-'nosuchspecialpage' => 'Тигай лӱмын-ыштыме лаштык уке',
+'nosuchspecialpage' => 'Тыгай спецлаштык уке.',
# General errors
'error' => 'Йоҥылыш',
'shown-title' => 'Лаштыкыште $1 {{PLURAL:$1|возымаш|возымашым}} ончыкташ',
'viewprevnext' => 'Ончал ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-new' => "'''Тиде вики-проектыште «[[:$1]]» лӱман лаштыкым ышташ!'''",
-'searchhelp-url' => 'Help:Вуйлымаш',
'searchprofile-articles' => 'Возымо лаштык-влак',
'searchprofile-project' => 'Полыш да проект лаштык',
'searchprofile-images' => 'Мультимедий',
'action-edit' => 'тиде лаштыкым тӧрлаташ',
# Recent changes
-'nchanges' => '$1 {{PLURAL:$1|тӧрлатымаш|тӧрлатымаш-влак}}',
+'nchanges' => '$1 {{PLURAL:$1|тӧрлатымаш}}',
'recentchanges' => 'Пытартыш тӧрлатымаш-влак',
'recentchanges-legend' => 'Пытартыш тӧрлатымаш-влакын келыштарымашышт',
'recentchanges-summary' => 'Тиде лаштыкыште пытартыш тӧрлатымашым шекланаш.',
'recentchangeslinked' => 'Ваш кылдалтше тӧрлатымаш-влак',
'recentchangeslinked-feed' => 'Ваш кылдалтше тӧрлатымаш-влак',
'recentchangeslinked-toolbox' => 'Ваш кылдалтше тӧрлатымаш-влак',
-'recentchangeslinked-title' => '"$1" лаштыклан кылдалтше тӧрлатымаш-влак',
+'recentchangeslinked-title' => '"$1" лаштык дене кылдалтше тӧрлатымаш-влак',
'recentchangeslinked-noresult' => 'Ончыктымо пагытыште кылдалтше лаштыклаште вашталтыш лийын огыл.',
'recentchangeslinked-summary' => "Это список недавних изменений в страницах, на которые ссылается указанная страница (или входящих в указанную категорию).
Страницы, входящие в [[Special:Watchlist|ваш список наблюдения]] '''выделены'''.",
'statistics-views-peredit' => 'Ик тӧрлатымашлан ончымо',
'statistics-users' => 'Регистрацийым эртыше [[Special:ListUsers|пайдаланыше-влак]]',
'statistics-users-active' => 'Чӱчкыдын пайдаланыше-влак',
-'statistics-users-active-desc' => 'Пытартыш {{PLURAL:$1|кечыште|$1 кечыште}} иктаж-мом ыштыше пайаланыше-влак',
+'statistics-users-active-desc' => 'Ð\9fÑ\8bÑ\82аÑ\80Ñ\82Ñ\8bÑ\88 {{PLURAL:$1|кеÑ\87Ñ\8bÑ\88Ñ\82е|$1 кеÑ\87Ñ\8bÑ\88Ñ\82е}} икÑ\82аж-мом Ñ\8bÑ\88Ñ\82Ñ\8bÑ\88е пайдаланÑ\8bÑ\88е-влак',
'statistics-mostpopular' => 'Эн чӱчкыдын ончымо лаштык-влак',
'brokenredirects' => 'Пудыртымо вес вере колтымаш-влак',
Пеҥгыдемде тидым [[{{MediaWiki:Policy-url}}|правил]] почеш ыштыметым да, мо тидын деч вара лиймым, умылыметым.',
'actioncomplete' => 'Ыштыме',
'deletedtext' => '«$1» шӧрымӧ.
-Ð\9eнÑ\87о $2 пÑ\8bÑ\82аÑ\80Ñ\82Ñ\8bÑ\88 Ñ\88Ó§Ñ\80Ñ\8bмӧ-влак лӱмеÑ\80 гÑ\8bÑ\87.',
+ШӧÑ\80Ñ\8bмаÑ\88 лӱмеÑ\80 гÑ\8bÑ\87 $2лан онÑ\87о.',
'dellogpage' => 'Шӧрымӧ нерген журнал',
'deletionlog' => 'шӧрымӧ нерген журнал',
'deletecomment' => 'Амал:',
'tooltip-n-randompage' => 'Лаштыкым чокым ойыраш',
'tooltip-n-help' => 'Википедийым кучылтмо да тӧрлатыме шотышто полшык.',
'tooltip-t-whatlinkshere' => 'Тышке кондышо лаштык-влакын лӱмерышт',
-'tooltip-t-recentchangeslinked' => 'Тиде лаштык кылдалтше пытартыш тӧрлатымаш-влак',
+'tooltip-t-recentchangeslinked' => 'Тиде лаÑ\88Ñ\82Ñ\8bк дене кÑ\8bлдалÑ\82Ñ\88е пÑ\8bÑ\82аÑ\80Ñ\82Ñ\8bÑ\88 Ñ\82Ó§Ñ\80лаÑ\82Ñ\8bмаÑ\88-влак',
'tooltip-feed-rss' => 'Тиде лаштыклан RSS-кыл',
'tooltip-feed-atom' => 'Тиде лаштыклан Atom-кыл',
'tooltip-t-contributions' => 'Пайдаланышын ыштыме пашажым ончалаш',
$fallback = 'id';
$namespaceNames = array(
+ NS_MEDIA => 'Media',
+ NS_SPECIAL => 'Istimewa',
+ NS_TALK => 'Maota',
+ NS_USER => 'Pangguno',
+ NS_USER_TALK => 'Rundiang_Pangguno',
+ NS_PROJECT_TALK => 'Rundiang_$1',
NS_FILE => 'Berkas',
+ NS_FILE_TALK => 'Rundiang_Berkas',
+ NS_MEDIAWIKI => 'MediaWiki',
+ NS_MEDIAWIKI_TALK => 'Rundiang_MediaWiki',
NS_TEMPLATE => 'Templat',
+ NS_TEMPLATE_TALK => 'Rundiang_Templat',
+ NS_HELP => 'Bantuan',
+ NS_HELP_TALK => 'Rundiang_Bantuan',
+ NS_CATEGORY => 'Kategori',
+ NS_CATEGORY_TALK => 'Rundiang_Kategori',
+);
+
+$namespaceAliases = array(
+ # Indonesian namespaces
+ 'Istimewa' => NS_SPECIAL,
+ 'Pembicaraan' => NS_TALK,
+ 'Pengguna' => NS_USER,
+ 'Pembicaraan_Pengguna' => NS_USER_TALK,
+ 'Pembicaraan_$1' => NS_PROJECT_TALK,
+ 'Berkas' => NS_FILE,
+ 'Pembicaraan_Berkas' => NS_FILE_TALK,
+ 'Pembicaraan_MediaWiki' => NS_MEDIAWIKI_TALK,
+ 'Templat' => NS_TEMPLATE,
+ 'Pembicaraan_Templat' => NS_TEMPLATE_TALK,
+ 'Bantuan' => NS_HELP,
+ 'Pembicaraan_Bantuan' => NS_HELP_TALK,
+ 'Kategori' => NS_CATEGORY,
+ 'Pembicaraan_Kategori' => NS_CATEGORY_TALK,
);
$specialPageAliases = array(
'oct' => 'Okt',
'nov' => 'Nop',
'dec' => 'Des',
+'january-date' => '$1 Januari',
+'february-date' => '$1 Pebruari',
+'march-date' => '$1 Maret',
+'april-date' => '$1 April',
+'may-date' => '$1 Mai',
+'june-date' => '$1 Juni',
+'july-date' => '$1 Juli',
+'august-date' => '$1 Agustus',
+'september-date' => '$1 September',
+'october-date' => '$1 Oktober',
+'november-date' => '$1 Nopember',
+'december-date' => '$1 Desember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori}}',
'morenotlisted' => 'Salabiahnyo...',
'mypage' => 'Laman',
'mytalk' => 'Maota',
-'anontalk' => 'Diskusi IP ko',
+'anontalk' => 'Rundiang IP ko',
'navigation' => 'Navigasi',
'and' => ' jo',
'disclaimers' => 'Sanggahan umum',
'disclaimerpage' => 'Project:Sanggahan umum',
'edithelp' => 'Bantuan suntiangan',
-'edithelppage' => 'Help:Panyuntiangan',
'helppage' => 'Help:Isi',
'mainpage' => 'Palanta',
'mainpage-description' => 'Palanta',
'badaccess' => 'Kasalahan hak akses',
'badaccess-group0' => 'Sanak indak diizinkan untuak malakuan tindakan ko.',
-'badaccess-groups' => 'Tindakan nan Sanak nio babateh untuak pangguno dalam {{PLURAL:$2|kalompok}}: $1.',
+'badaccess-groups' => 'Tindakan nan ka Sanak buek babateh hanyo untuak pangguno dalam {{PLURAL:$2|kalompok}}: $1.',
'versionrequired' => 'Dibutuahan MediaWiki versi $1',
'versionrequiredtext' => 'MediaWiki versi $1 dibutuahan untuak manggunoan laman ko. Caliak [[Special:Version|versi laman]]',
# Main script and global functions
'nosuchaction' => 'Indak ado tindakan tasabuik',
'nosuchactiontext' => 'Tindakan nan diminta dek URL tasabuik indak valid. Sanak mungkin salah mangetikkan URL, atau mangikuik pautan nan salah. Iko mungkin manunjuakan adonyo suatu bug pado parangkaik lunak nan dipagunoan dek {{SITENAME}}.',
-'nosuchspecialpage' => 'Indak ado laman istimewa tarsabuik',
-'nospecialpagetext' => '<strong>Sanak maminta laman istimewa nan indak sah.</strong>
+'nosuchspecialpage' => 'Indak ado laman istimewa tasabuik',
+'nospecialpagetext' => '<strong>Sanak mamintak laman istimewa nan indak sah.</strong>
Daftar laman istimewa nan sah dapek dicaliak di [[Special:SpecialPages|{{int:specialpages}}]].',
'resetpass-abort-generic' => 'Parubahan kato sandi alah dibatalan dek ekstensi.',
# Special:PasswordReset
-'passwordreset' => 'Setel ulang sandi',
-'passwordreset-text' => 'Isi formulir ko untuak maubah kato sandi.',
+'passwordreset' => 'Setel ulang kato sandi',
+'passwordreset-text-one' => 'Lengkapkan formulir ko untuak manuka baliak kato sandi Sanak.',
+'passwordreset-text-many' => '{{PLURAL:$1|Masuakan data di bawah ko untuak manuka baliak kato sandi Sanak.}}',
'passwordreset-legend' => 'Tuka baliak kato sandi',
'passwordreset-disabled' => 'Pangubahan kato sandi alah dimatian di wiki iko.',
'passwordreset-emaildisabled' => 'Fitur surel alah dimatian pado wiki iko.',
-'passwordreset-pretext' => '{{PLURAL:$1||Masuakan salah satu data di bawah ko}}',
'passwordreset-username' => 'Namo pangguno:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Caliak kaputusannyo?',
'sectioneditnotsupported-text' => 'Panyuntiangan bagian indak didukuang di laman suntiang iko.',
'permissionserrors' => 'Kasalahan Hak Akses',
'permissionserrorstext' => 'Sanak indak ado hak untuak malakuannyo dek {{PLURAL:$1|alasan}} barikuik:',
-'permissionserrorstext-withaction' => 'Awak indak punyo hak akses untuak $2, karano {{PLURAL:$1|alasan}} barikuik:',
+'permissionserrorstext-withaction' => 'Sanak indak punyo hak akses untuak $2, dek {{PLURAL:$1|alasan}} barikuik:',
'recreate-moveddeleted-warn' => "'''Ingek: Sanak mambuek ulang suatu laman nan alah dihapuih.'''
Harap ditimbang apo rancak malanjuikan suntiangan Sanak.
'nohistory' => 'Indak ado sajarah panyuntiangan untuak laman ko',
'currentrev' => 'Revisi tabaru',
'currentrev-asof' => 'Revisi tabaru pado $1',
-'revisionasof' => 'Pabaikkan per $1',
+'revisionasof' => 'Revisi pado $1',
'revision-info' => 'Revisi sajak $1 dek $2',
'previousrevision' => '← Revisi sabalunnyo',
'nextrevision' => 'Revisi selanjuiknyo →',
'last' => 'sabalun',
'page_first' => 'awal',
'page_last' => 'akhia',
-'histlegend' => "Bandiangkan pilihan: Tandoi revisi untuak mambandiangkan dan takan enter atau tombol di bawah.<br />
+'histlegend' => "Bandiangan piliahan: Tandoi revisi untuak mambandiangan dan takan enter atau tombol di bawah.<br />
Contoh: '''({{int:cur}})''' = bedo jo versi tarakhia, '''({{int:last}})''' = bedo jo versi sabalunnyo, '''{{int:minoreditletter}}''' = suntiangan ketek.",
'history-fieldset-title' => 'Talusuri riwayaik',
'history-show-deleted' => 'Hanyo nan dihapuih',
Sanak dapek mancaliaknyo; rinciannyo mungkin ado di [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} log pangapuihan].",
'rev-suppressed-diff-view' => "Revisi laman ko alah '''tabanam'''.
Sanak dapek malieknyo; rinciannyo mungkin ado di [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} log pambanaman]",
-'rev-delundel' => 'tampilkan/suruakkan',
-'rev-showdeleted' => "tunjua'an",
+'rev-delundel' => 'tunjuakan/suruakkan',
+'rev-showdeleted' => 'tunjuakan',
'revisiondelete' => 'Hapuih/batal hapuih revisi',
'revdelete-nooldid-title' => 'Target revisi indak basobok',
+'revdelete-nooldid-text' => 'Sanak alun mangagiah target revisi untuak manjalankan fungsi ko, revisi nan ditantuan indak ado, atau Sanak nio manyuruakan revisi kini ko.',
'revdelete-nologtype-title' => 'Tipe log indak diagiah',
'revdelete-nologtype-text' => 'Sanak indak mngagiah tipe log untuak manerapkan tindakan ko.',
-'revdelete-nologid-title' => 'Entri log indak valid',
+'revdelete-nologid-title' => 'Entri log indak sah',
+'revdelete-nologid-text' => 'Sanak mungkin indak manyabuik suatu log target kajadian untuak manjalanan fungsi iko atau entri nan dimakasuik indak basuo.',
'revdelete-no-file' => 'Berkas nan dituju indak basobok.',
'revdelete-show-file-confirm' => 'Apokah Sanak yakin nio mancaliak revisi nan alah dihapuih dari berkas "<nowiki>$1</nowiki>" per $3, $2?',
'revdelete-show-file-submit' => 'Yo',
'revdelete-selected' => "'''{{PLURAL:$2|Revisi piliahan}} dari [[:$1]]:'''",
-'logdelete-selected' => "'''{{PLURAL:$1|Log pilihan}}:'''",
+'logdelete-selected' => "'''{{PLURAL:$1|Log piliahan}}:'''",
+'revdelete-text' => "'''Revisi jo tindakan nan alah dihapuih akan tetap muncua di versi tadaulu dan laman log, tapi bagian dari isinyo indak dapek diakses publik.'''
+Panguruih {{SITENAME}} lain tetap dapek mangakses isi nan tasuruak ko dan dapek mambatalan pangapuihannyo manggunoan antarmuko nan samo, kacuali ado pambatehan lain nan dibuek.",
+'revdelete-confirm' => 'Tolong konfirmasi baso Sanak samemang bamakasuik malakuan iko, mamahami konsekuensinyo, dan baso Sanak malakuannyo sasuai jo [[{{MediaWiki:Policy-url}}|kabijakan]].',
+'revdelete-suppress-text' => "Panyambunyian revisi '''hanyo''' buliah digunoan untuak kasus-kasus barikuik:
+* Informasi paribadi nan indak patuik
+*: ''alamaik rumah jo nomor telepon, nomor kartu identitas, dll.''",
+'revdelete-legend' => 'Pangaturan bateh',
+'revdelete-hide-text' => 'Suruakan teks revisi',
+'revdelete-hide-image' => 'Suruakan isi berkas',
+'revdelete-hide-name' => 'Suruakan tindakan jo target',
+'revdelete-hide-comment' => 'Suruakan ikhtisar suntiangan',
+'revdelete-hide-user' => 'Suruakan namo pangguno/IP panyuntiang',
+'revdelete-hide-restricted' => 'Suruakan juo data dari panguruih',
+'revdelete-radio-same' => '(jan diubah)',
'revdelete-radio-set' => 'Yo',
'revdelete-radio-unset' => 'Indak',
+'revdelete-suppress' => 'Suruakan juo data dari panguruih',
+'revdelete-unsuppress' => 'Hapuih batehan pado revisi nan dikambalian',
'revdelete-log' => 'Alasan:',
+'revdelete-submit' => 'Terapkan pado {{PLURAL:$1|revisi}} tapiliah',
+'revdelete-success' => "'''Revisi barasil dipabarui.'''",
+'revdelete-failure' => "'''Revisi indak dapek dipabarui:'''
+$1",
+'logdelete-success' => "'''Log data barasil dipabarui.'''",
+'logdelete-failure' => "'''Log data indak dapek dipabarui:'''
+$1",
'revdel-restore' => 'ganti tampilan',
'revdel-restore-deleted' => 'suntiangan nan alah dihapuih',
'revdel-restore-visible' => 'tampilan revisi',
'pagehist' => 'Riwayaik laman',
+'deletedhist' => 'Riwayaik pangapuihan',
+'revdelete-reason-dropdown' => '*Alasan pangapuihan umum
+** Palanggaran hak cipta
+** Komentar atau informasi paribadi nan indak patuik
+** Namo pangguno nan indak patuik
+** Bapotensi mancemarkan namo baiak',
'revdelete-otherreason' => 'Alasan lain/tambahan:',
'revdelete-reasonotherlist' => 'Alasan lain',
'revdelete-edit-reasonlist' => 'Alasan mangapuih laman',
+'revdelete-offender' => 'Pambuek reviri:',
+
+# Suppression log
+'suppressionlog' => 'Log pambanaman',
# History merging
'mergehistory-reason' => 'Alasan:',
# Merge log
'mergelog' => 'Log panggabuangan',
+'pagemerge-logentry' => 'manggabuangan [[$1]] ka [[$2]] (revisi sampai $3)',
'revertmerge' => 'Batal gabuang',
'mergelogpagetext' => 'Di bawah ko daftar panggabuangan riwayaik laman ka laman nan lain.',
'difference-multipage' => '(Pabedoan antaro laman)',
'lineno' => 'Barih $1:',
'compareselectedversions' => 'Bandiangan versi tapiliah',
-'showhideselectedversions' => 'Tampilkan/suruakan versi tapiliah',
+'showhideselectedversions' => 'Tunjuakan/suruakan versi tapiliah',
'editundo' => 'batal',
-'diff-multi' => '({{PLURAL:$1|$1 revisi antaro}} oleh {{PLURAL:$2|$2 pangguno}} indak ditampilkan)',
+'diff-multi' => '({{PLURAL:$1|$1 revisi antaro}} dek {{PLURAL:$2|$2 pangguno}} indak ditampilan)',
# Search results
'searchresults' => 'Hasil pancarian',
'searchmenu-legend' => 'Atua pancarian',
'searchmenu-exists' => "'''Ado laman nan banamo \"[[:\$1]]\" pado wiki ko.'''",
'searchmenu-new' => "'''Buek laman \"[[:\$1]]\" di wiki ko!'''",
-'searchhelp-url' => 'Help:Isi',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Cari laman jo awalan ko]]',
'searchprofile-articles' => 'Laman isi',
'searchprofile-project' => 'Laman Bantuan jo Proyek',
'searchprofile-articles-tooltip' => 'Cari di $1',
'searchprofile-project-tooltip' => 'Cari di $1',
'searchprofile-images-tooltip' => 'Cari untuak berkas',
-'searchprofile-everything-tooltip' => 'Cari sadoalahnyo (tamasuak laman maota)',
+'searchprofile-everything-tooltip' => 'Cari kasadonyo (tamasuak laman rundiang)',
'searchprofile-advanced-tooltip' => 'Pacarian di ruang namo tatantu',
'search-result-size' => '$1 ({{PLURAL:$2|$2 kato}})',
'search-result-category-size' => '{{PLURAL:$1|$1 anggota}} ({{PLURAL:$2|$2 subkategori}}, {{PLURAL:$3|$3 berkas}})',
'right-createaccount' => 'Mambuek akun baru',
'right-minoredit' => 'Manandoi suntiangan ketek',
'right-move' => 'Mamindahan laman',
-'right-move-subpages' => 'Mamindahan laman jo kasado sub laman',
+'right-move-subpages' => 'Mamindahan laman jo kasado sublaman',
'right-move-rootuserpages' => 'Mamindahan laman pangguno',
'right-movefile' => 'Mamindahan berkas',
'right-suppressredirect' => 'Indak mambuek pangaliahan wakatu mamindahan laman',
'right-upload' => 'Mamuek berkas',
'right-reupload' => 'Manimpo berkas lamo',
'right-reupload-own' => 'Manimpo berkas nan dimuek surang',
+'right-purge' => 'Mangapuih singgahan laman tanpa laman konfirmasi',
'right-autoconfirmed' => 'Manyuntiang laman palinduangan semi',
'right-bot' => 'Dipalakuan sabagai proses otomatis',
'right-nominornewtalk' => 'Indak ado tando suntiangan ketek di laman rundiang mamicu pasan baru',
'action-createtalk' => 'buek laman diskusi',
'action-createaccount' => 'buek akun pangguno ko',
'action-minoredit' => 'tandoi sabagai suntiangan ketek',
-'action-move' => 'pindahkan laman ko',
+'action-move' => 'pindahan laman ko',
'action-move-subpages' => 'pindahkan laman ko, jo sublamannyo',
-'action-move-rootuserpages' => 'pindahkan laman pangguno',
+'action-move-rootuserpages' => 'pindahan laman pangguno',
'action-movefile' => 'pindahkan berkas ko',
'action-upload' => 'muek berkas ko',
'action-reupload' => 'timpo berkas lamo',
'nchanges' => '$1 {{PLURAL:$1|parubahan}}',
'recentchanges' => 'Parubahan baru',
'recentchanges-legend' => 'Piliahan parubahan baru',
-'recentchanges-summary' => 'Caliak parubahan tabaru pado wiki di laman ko.',
-'recentchanges-feed-description' => 'Temukan parubahan baru dalam umpan wiki ko',
+'recentchanges-summary' => "Caliak parubahan tabaru pado wiki di laman ko.<br />
+;Patunjuak:(<span style=\"color:blue;\">bedo</span>) parubahan, (<span style=\"color:blue;\">sijarah</span>) riwayaik parubahan, '''B''' laman baru, '''b''' suntiangan bot, '''k''' suntiangan ketek, <span class=\"unpatrolled\">!</span> parubahan alun dipatroli,<br /><span style=\"color:green;\">'''(+ ''bita'')'''</span> isi laman batambah, <span style=\"color:red;\">(- ''bita'')</span> isi laman bakurang, (← Ikhtisar otomatih), (→ <span style=\"color:grey;\">Suntiangan bagian</span>)",
+'recentchanges-feed-description' => 'Tamuan parubahan baru dalam umpan wiki ko',
'recentchanges-label-newpage' => 'Suntiangan ko mambuek laman baru',
'recentchanges-label-minor' => 'Iko suntiangan ketek',
'recentchanges-label-bot' => 'Suntiang ko dibuek dek bot',
'listusers' => 'Daftar pangguno',
'listusers-editsonly' => 'Tunjuakan hanyo pangguno nan ado jariah',
'listusers-creationsort' => 'Uruikan manuruik tanggal pandaftaran',
-'usereditcount' => '$1 {{PLURAL:$1|suntiangan}}',
+'usereditcount' => '$1 {{PLURAL:$1|}}suntiangan',
'usercreated' => '{{GENDER:$3|Dibuek}} pado $1 pukua $2',
'newpages' => 'Laman baru',
'newpages-username' => 'Namo pangguno:',
'unwatch' => 'Batal pantau',
'unwatchthispage' => 'Batal pantau laman ko',
'watchlist-details' => '{{PLURAL:$1|$1 laman}} dalam daftar pantau Sanak, indak tamasuak laman rundiangnyo.',
-'wlheader-showupdated' => "* Laman nan alah barubah sajak kunjuangan tarakhia Sanak ditunjuakan jo '''hurup taba'''",
+'wlheader-showupdated' => "Laman nan alah barubah sajak kunjuangan tarakhia Sanak ditunjuakan jo '''hurup taba'''",
'wlnote' => "Di bawah ko ado $1 {{PLURAL:$1|parubahan}} dalam {{PLURAL:$2|'''$2''' jam}} iko, sampai tanggal $3, pukua $4.",
'wlshowlast' => 'Tunjuakan $1 jam parubahan dalam $2 hari tarakhia $3',
'watchlist-options' => 'Piliahan daftar pantau',
** Baulang kali dikosongan
** Pamintaan pangguno',
'protect-edit-reasonlist' => 'Suntiang alasan palinduangan',
-'protect-expiry-options' => '1 jam:1 hour,1 ari:1 day,1 minggu:1 week,2 minggu:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 taun:1 year,salamonyo:infinite',
+'protect-expiry-options' => '1 jam:1 hour,1 ari:1 day,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',
'restriction-type' => 'Palinduangan:',
'restriction-level' => 'Tingkek:',
'minimum-size' => 'Ukuran min',
'undeletelink' => 'caliak/baliakan',
'undeleteviewlink' => 'caliak',
'undeletedrevisions' => '{{PLURAL:$1|$1 revisi}} alah dikambalian',
+'undelete-header' => 'Caliak [[Special:Log/delete|log pangapuihan]] untuak daftar laman nan baru dihapuih.',
+'undelete-search-title' => 'Cari laman nan dihapuih',
+'undelete-search-box' => 'Cari laman nan dihapuih',
+'undelete-search-prefix' => 'Tunjuakan laman mulai dari:',
'undelete-cleanup-error' => 'Kasalahan sawaktu mangapuih arsip berkas "$1" nan indak digunoan.',
# Namespace form on various pages
'ipbenableautoblock' => 'Otomatih sakek alamaik IP tarakhia nan digunoan pangguno ko, jo sado alamaik IP takaik nan mancubo manyuntiang.',
'ipbsubmit' => 'Sakek pangguno ko',
'ipbother' => 'Salamo:',
-'ipboptions' => '2 jam:2 hours,1 ari:1 day,3 ari:3 days,1 minggu:1 week,2 minggu:2 weeks,1 bulan:1 month,3 bulan:3 months,6 bulan:6 months,1 taun:1 year,salamonyo:infinite',
+'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',
# Developer tools
'lockdb' => 'Kunci basis data',
'unlockdb' => 'Bukak kunci basis data',
+'lockedbyandtime' => '(dek {{GENDER:$1|$1}} pado $2 pukua $3)',
# Move page
'move-page' => 'Pindahan $1',
'move-page-legend' => 'Pindahkan laman',
-'movepagetext' => "Formulir di bawah ko digunoan untuak maubah namo suatu laman dan mamindahan sadonyo data riwayaik ka namo baru.
-Judua lamo tu ka manjadi laman paraliahan manuju judua nan baru.
-Awak dapek mampabarui paraliahan-paraliahan nan manuju ka judua lamo sacaro otomatis.
-Kok indak dipabarui sacaro otomatis, pastikan lah dipareso laman ko dari [[Special:DoubleRedirects|paraliahan ganda]] atau [[Special:BrokenRedirects|paralihan rusak]]. Awak batanggung-jawak untuak mamastian bahaso pautan tu taruih manyambuang ka laman nan saaruihnyo.
+'movepagetext' => "Formulir di bawah ko digunoan untuak maubah namo suatu laman dan mamindahan kasado data riwayaiknyo ka namo baru.
+Judua lamo tu ka manjadi laman pangaliahan manuju judua nan baru.
+Sanak dapek mampabarui pangaliahan-pangaliahan nan manuju ka judua lamo sacaro otomatih.
+Kok indak dipabarui sacaro otomatih, pastikan lah dipareso laman ko dari [[Special:DoubleRedirects|pangaliahan ganda]] atau [[Special:BrokenRedirects|pangaliahan rusak]]. Sanak batangguang jawek untuak mamastian baso pautan tu taruih manyambuang ka laman nan saharuihnyo.
-Ingeklah bahaso laman ko '''indak''' ka bapindah apobilo lah ado laman nan manggunoan judua nan baru, kacuali bilo laman tu kosong atau marupoan laman paraliahan dan indak punyo riwayaik suntiangan. Aratinyo awak dapek maubah baliak namo laman ka namo samulo apobilo ado kasalahan, dan bahaso awak indak dapek manimpo laman nan lah ado.
+Ingek baso laman ko '''indak''' ka bapindah apobilo lah ado laman nan manggunoan judua nan baru, kacuali bilo laman tu kosong atau marupoan laman pangaliahan dan indak adoi riwayaik suntiangan. Aratinyo Sanak dapek maubah baliak namo laman tu ka namo lamo apobilo ado kasalahan, dan baso awak indak dapek maimpok laman nan alah ado.
'''Paringatan!'''
-Iko dapek maakibaikan parubahan nan indak dipakiroan pado laman nan populer; jadi pastikan awak paham akibaik tindakan ko sabalun malanjuikannyo.",
+Iko dapek maakibaikan parubahan nan indak dipakiroan pado laman nan populer; jadi pastian Sanak paham bana akibaik dari tindakan ko sabalun malanjuikannyo.",
'movepagetext-noredirectfixer' => "Formulir di bawah ko digunoan untuak maubah namo suatu laman dan mamindahan sado data riwayaiknyo ka namo baru.
Judul lamo tu ka manjadi laman paraliahan manuju judul nan baru.
Sanak dapek mampabarui paraliahan-paraliahan nan manuju ka judul lamo sacaro otomatih.
'''Paringatan!'''
Iko dapek maakibaikan parubahan nan indak dipakiroan pado laman nan populer; jadi pastikan Sanak paham akibaik tindakan ko sabalun malanjuikannyo.",
-'movepagetalktext' => "Laman diskusi nan bakaitan akan dipindahkan sacaro otomatis '''kacuali apobilo:'''
+'movepagetalktext' => "Laman rundiang nan takaik akan dipindahan sacaro otomatih '''kacuali bilo:'''
-*Sabuah laman diskusi nan indak kosong lah ado pado judul baru, atau
-*Angku indak mangagiah tando pado kotak di bawah.
+*Laman rundiang nan indak kosong lah ado pado judul baru, atau
+*Sanak indak mangagiah tando pado kotak di bawah.
-Dalam kasus tu, kok amuah Angku dapek mamindahkan ataupun manggabuangkan laman sacaro manual.",
+Dalam kasus tu, kok amuah Sanak dapek mamindahan ataupun manggabuangan laman sacaro manual.",
'movearticle' => 'Pindahkan laman',
+'moveuserpage-warning' => "'''Paringatan:''' Sanak tangah mamindahan laman pangguno. Paralu dikatahui bahwa hanyo laman nan ka bapindah namun pangguno ''indak akan'' baganti namo.",
'movenologin' => 'Alun masuak log',
'movenologintext' => 'Sanak musti pangguno tadaftar dan [[Special:UserLogin|masuak log]] untuak mamindahan laman.',
'movenotallowed' => 'Sanak indak ado izin untuak mamindahan laman.',
'movenotallowedfile' => 'Sanak indak ado izin untuak mamindahan berkas.',
-'cant-move-user-page' => 'Sanak indak ado izin untuak mamindahan laman pangguno (bagian dari sub laman).',
-'cant-move-to-user-page' => 'Sanak indak ado izin untuak mamindahan laman ka laman pangguno (salain ka sub laman pangguno).',
+'cant-move-user-page' => 'Sanak indak ado izin untuak mamindahan laman pangguno (bagian dari sublaman).',
+'cant-move-to-user-page' => 'Sanak indak ado izin untuak mamindahan laman ka laman pangguno (salain ka sublaman pangguno).',
'newtitle' => 'Ka judul baru:',
'move-watch' => 'Pantau laman ko',
'movepagebtn' => 'Pindahkan laman',
'movelogpagetext' => 'Di bawah ko daftar log pamindahan laman.',
'movereason' => 'Alasan:',
'revertmove' => 'baliakkan',
+'immobile-source-namespace' => 'Indak dapek mamindahan laman dalam ruangnamo "$1"',
+'immobile-target-namespace' => 'Indak dapek mamindahan laman ka ruangnamo "$1"',
'move-leave-redirect' => 'Buek pangaliahan ka judul baru',
# Export
'export' => 'Ekspor laman',
+'exporttext' => 'Sanak dapek mangekspor teks jo sajarah panyuntiangan suatu laman tatantu atau satu set laman dalam bantuak XML tatantu.
+Hasil ekspor ko salanjuiknyo dapek diimpor ka wiki lainnyo nan manggunoan parangkaik lunak MediaWiki, jo manggunoan fasilitas [[Special:Import|laman impor]].
+
+Untuak mangekspor laman, masuakan judul dalam kotak teks di bawah ko, satu judul pabarih, dan piliah apo Sanak nio mangekspor sacaro langkok jo versi tadaulu, atau hanyo versi tabaru jo catatan panyuntiangan tarakhia.
+
+Jikok Sanak hanyo nio mangimpor versi tabaru, Sanak dapek malakuannyo labiah capek jo manggunoan pautan khusuih, sabagai contoh: [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]] untuak mangekspor laman "[[{{MediaWiki:Mainpage}}]]".',
+'exportall' => 'Ekspor kasado laman',
+'exportcuronly' => 'Ekspor revisi kini sajo, bukan kasado versi tadaulu',
+'exportnohistory' => "----
+'''Catatan:''' Mangekspor kasado riwayaik suntiangan laman jo isian ko alah dinon-aktipan dek alasan kinerja.",
+'exportlistauthors' => 'Tamasuak daftar langkok kontributor satiok laman',
+'export-submit' => 'Ekspor',
+'export-addcattext' => 'Tambah laman dari kategori:',
+'export-addcat' => 'Tambah',
+'export-addnstext' => 'Tambah laman dari ruangnamo:',
+'export-addns' => 'Tambah',
+'export-download' => 'Simpan sabagai berkas',
+'export-templates' => 'Tamasuak templat',
+'export-pagelinks' => 'Saratoan laman takaik sampai kadalaman:',
# Namespace 8 related
'allmessages' => 'Pasan sistem',
'allmessagesname' => 'Namo',
-'allmessagesdefault' => 'Teks pasan default',
+'allmessagesdefault' => 'Teks pasan baku',
+'allmessagescurrent' => 'Teks pasan kini',
'allmessages-language' => 'Bahaso:',
'allmessages-filter-submit' => 'Tuju',
# Thumbnails
'thumbnail-more' => 'Pagadang',
+'filemissing' => 'Berkas indak basobok',
'thumbnail_error' => 'Gagal mambuek miniatua: $1',
# Special:Import
'import' => 'Impor laman',
'importstart' => 'Mangimpor laman...',
+'importnosources' => 'Indak ado sumber impor transwiki nan lah dibuek dan pamuatan riwayaik sacaro langsuang alah dinon-aktipan.',
# Import log
'importlogpagetext' => 'Administrasi laman impor jo riwayaik panyuntiangannyo dari wiki lain.',
-'import-logentry-upload' => 'mangimpor [[$1]] malalui pamuekan berkas',
+'import-logentry-upload' => 'mangimpor [[$1]] malalui pangunggahan berkas',
# Tooltip help for the actions
'tooltip-pt-userpage' => 'Laman pangguno Sanak',
'file-info-png-frames' => '$1 {{PLURAL:$1|bingkai}}',
# Special:NewFiles
+'imagelisttext' => "Di bawah ko adolah daftar '''$1''' {{PLURAL:$1|berkas}} baruruik dari $2.",
'newimages-summary' => 'Laman istimewa barikuik manunjuakan daftar berkas nan tarakhia dimuek',
'newimages-legend' => 'Panyariang',
'newimages-label' => 'Namo berkas (atau sabagian darinyo):',
'minutes-abbrev' => '$1 min',
'hours-abbrev' => '$1 j',
'days-abbrev' => '$1 h',
-'seconds' => '{{PLURAL:$1|satu datiak|$1 datiak}}',
-'minutes' => '{{PLURAL:$1|$1 minik|$1 minik}}',
-'hours' => '$1 {{PLURAL:$1|jam}}',
-'days' => '$1 {{PLURAL:$1|ari}}',
-'weeks' => '$1 {{PLURAL:$1|minggu}}',
-'months' => '$1 {{PLURAL:$1|bulan}}',
-'years' => '{{PLURAL:$1|$1 taun}}',
+'seconds' => '{{PLURAL:$1|1 datiak|$1 datiak}}',
+'minutes' => '{{PLURAL:$1|1 minik|$1 minik}}',
+'hours' => '{{PLURAL:$1|1 jam|$1 jam}}',
+'days' => '{{PLURAL:$1|1 ari|$1 ari}}',
+'weeks' => '{{PLURAL:$1|1 pakan|$1 pakan}}',
+'months' => '{{PLURAL:$1|1 bulan|$1 bulan}}',
+'years' => '{{PLURAL:$1|1 taun|$1 taun}}',
'ago' => '$1 nan lalu',
'just-now' => 'sabanta ko',
# Human-readable timestamps
-'hours-ago' => '$1 {{PLURAL:$1|jam}} nan lalu',
-'minutes-ago' => '$1 {{PLURAL:$1|minik}} nan lalu',
-'seconds-ago' => '$1 {{PLURAL:$1|datiak}} nan lalu',
+'hours-ago' => '{{PLURAL:$1|1 jam|$1 jam}} nan lalu',
+'minutes-ago' => '{{PLURAL:$1|1 minik|$1 minik}} nan lalu',
+'seconds-ago' => '{{PLURAL:$1|1 datiak|$1 datiak}} nan lalu',
'monday-at' => 'Sinayan pukua $1',
'tuesday-at' => 'Salasa pukua $1',
'wednesday-at' => "Raba'a pukua $1",
'autosumm-new' => '←Mambuek laman baisi "$1"',
# Watchlist editor
+'watchlistedit-normal-title' => 'Suntiang daftar pantau',
'watchlistedit-normal-legend' => 'Hapuih judul dari daftar pantau',
'watchlistedit-normal-explain' => 'Judul pado daftar pantauan Sanak ditunjuakan di bawah ko.
Untuak mangapuih judul, agiah tando cek pado kotak di sampiangnyo, dan takan "{{int:Watchlistedit-normal-submit}}".
'version-license' => 'Lisensi',
'version-poweredby-credits' => "Wiki ko didukuang jo '''[//www.mediawiki.org/ MediaWiki]''', hak cipta © 2001-$1 $2.",
'version-poweredby-others' => 'lainnyo',
+'version-credits-summary' => 'Kami nio mangakui urang-urang ko ateh kontribusinyo pado [[Special:Version|MediaWiki]].',
'version-license-info' => 'MediaWiki adolah parangkaik lunak bebas; Sanak dapek mandistribusian dan/atau mamodfikasinyo jo syaraik Lisensi Publik Umum GNU nan dikaluaan dek Free Software Foundation; versi 2 atau nan tabaru.
MediaWiki didistribusian jo harapan dapek digunoan, tapi INDAK JO JAMINAN APO PUN; indak ado jaminan PADAGANGAN atau KACOCOKAN UNTUAK TUJUAN TATANTU. Caliak Lisensi Publik Umum GNU untuak informasi lebiah lanjuik.
'logentry-delete-delete' => '$1 {{GENDER:$2|mangapuih}} laman $3',
'logentry-delete-restore' => '$1 {{GENDER:$2|mangambalian}} laman $3',
'logentry-move-move' => '$1 {{GENDER:$2|mamindahan}} laman $3 ka $4',
+'logentry-move-move-noredirect' => '$1 {{GENDER:$2|mamindahan}} laman $3 ka $4 tanpa mambuek pangaliahan',
'logentry-move-move_redir' => '$1 {{GENDER:$2|mamindahan}} laman $3 ka $4 maimpok pangaliahan lamo',
'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2|mamindahan}} laman $3 ka $4 maimpok pangaliahan lamo tanpa mambuek pangaliahan',
'logentry-patrol-patrol' => '$1 {{GENDER:$2|manandoi}} revisi $4 dari laman $3 tapatroli',
'searchsuggest-containing' => 'Barisi...',
# Durations
+'duration-seconds' => '$1 {{PLURAL:$1|datiak}}',
+'duration-minutes' => '$1 {{PLURAL:$1|minik}}',
+'duration-hours' => '$1 {{PLURAL:$1|jam}}',
+'duration-days' => '$1 {{PLURAL:$1|ari}}',
+'duration-weeks' => '{{PLURAL: $1|}}$1 pakan',
+'duration-years' => '$1 {{PLURAL:$1|taun}}',
+'duration-decades' => '$1 {{PLURAL:$1|dekade}}',
+'duration-centuries' => '$1 {{PLURAL:$1|abaik}}',
'duration-millennia' => '$1 {{PLURAL:$1|milenium}}',
# Image rotation
'oct' => 'окт',
'nov' => 'ное',
'dec' => 'дек',
+'january-date' => '$1 јануари',
+'february-date' => '$1 февруари',
+'march-date' => '$1 март',
+'april-date' => '$1 април',
+'may-date' => '$1 мај',
+'june-date' => '$1 јуни',
+'july-date' => '$1 јули',
+'august-date' => '$1 август',
+'september-date' => '$1 септември',
+'october-date' => '$1 октомври',
+'november-date' => '$1 ноември',
+'december-date' => '$1 декември',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категорија|Категории}}',
'moredotdotdot' => 'Повеќе...',
'morenotlisted' => 'Повеќе (вон списокот)...',
'mypage' => 'Страница',
-'mytalk' => 'Разговор',
+'mytalk' => 'разговор',
'anontalk' => 'Разговор за оваа IP-адреса',
'navigation' => 'Навигација',
'and' => ' и',
'create-this-page' => 'Создај ја оваа страница',
'delete' => 'Избриши',
'deletethispage' => 'Избриши ја оваа страница',
+'undeletethispage' => 'обнови ја оваа страница',
'undelete_short' => 'Врати {{PLURAL:$1|едно уредување|$1 уредувања}}',
'viewdeleted_short' => 'Преглед на {{PLURAL:$1|едно избришано уредување|$1 избришани уредувања}}',
'protect' => 'Заштити',
'otherlanguages' => 'На други јазици',
'redirectedfrom' => '(Пренасочено од $1)',
'redirectpagesub' => 'Страница за пренасочување',
-'lastmodifiedat' => 'Последната промена на страницава е извршена на $1 во $2 ч.',
+'lastmodifiedat' => 'Ð\9fоÑ\81леднаÑ\82а пÑ\80омена на Ñ\81Ñ\82Ñ\80аниÑ\86ава е извÑ\80Ñ\88ена на $1 г. во $2 Ñ\87.',
'viewcount' => 'Оваа страница била посетена {{PLURAL:$1|еднаш|$1 пати}}.',
'protectedpage' => 'Заштитена страница',
'jumpto' => 'Прејди на:',
'disclaimers' => 'Услови на употреба',
'disclaimerpage' => 'Project:Услови на употреба',
'edithelp' => 'Помош за уредување',
-'edithelppage' => 'Help:Како се уредуваат страници',
'helppage' => 'Help:Содржина',
'mainpage' => 'Главна страница',
'mainpage-description' => 'Главна страница',
'namespaceprotected' => "Немате дозвола за уредување страници во именскиот простор '''$1'''.",
'customcssprotected' => 'Немате дозвола да ја менувате оваа страница со CSS бидејќи содржи туѓи лични нагодувања.',
'customjsprotected' => 'Немате дозвола да ја менувате оваа страница со JavaScript бидејќи содржи туѓи лични нагодувања.',
+'mycustomcssprotected' => 'Немате дозвола да ја уредувате оваа каскадна стилска страница (CSS).',
+'mycustomjsprotected' => 'Немате дозвола да ја уредувате оваа страница со JavaScript.',
'ns-specialprotected' => 'Специјални страници не може да се уредуваат.',
'titleprotected' => "Овој наслов од страна на [[User:$1|$1]] е заштитен и не може да се создаде.
Причината за тоа е: ''$2''.",
'cannotchangeemail' => 'На ова вики не може да се менува е-пошта на сметките.',
'emaildisabled' => 'Ова мреж. место не може да праќа е-пошта.',
'accountcreated' => 'Корисничката сметка е направена',
-'accountcreatedtext' => 'Корисничката сметка за $1 беше направена.',
+'accountcreatedtext' => 'Корисничкта сметка за [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|разговор]]) е направена.',
'createaccount-title' => 'Создавање на сметка за {{SITENAME}}',
'createaccount-text' => 'Некој направил сметка со вашата е-поштенска адреса на {{SITENAME}} ($4) со име „$2“ и лозинка „$3“.
Би требало сега да се пријавите и да ја промените вашата лозинка.
# Special:PasswordReset
'passwordreset' => 'Менување на лозинка',
-'passwordreset-text' => 'Пополнете го образецов за да ја измените лозинката.',
+'passwordreset-text-one' => 'Пополнете го образецов за да ја измените лозинката.',
+'passwordreset-text-many' => '{{PLURAL:$1|Внесете еден од податоците за да ја смените лозинката.}}',
'passwordreset-legend' => 'Нова лозинка',
'passwordreset-disabled' => 'На ова вики е оневозможено задавање на нова лозинка.',
'passwordreset-emaildisabled' => 'Можностите за е-пошта се исклучени на ова вики',
-'passwordreset-pretext' => '{{PLURAL:$1||Подолу внесете еден податок}}',
'passwordreset-username' => 'Корисничко име:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Да ја прикажам пораката?',
'link_sample' => 'Наслов на врска',
'link_tip' => 'Внатрешна врска',
'extlink_sample' => 'http://www.example.com наслов на врска',
-'extlink_tip' => 'Ð\9dадвоÑ\80еÑ\88на вÑ\80Ñ\81ка (Ñ\81о пÑ\80еÑ\84икÑ\81оÑ\82 http://)',
+'extlink_tip' => 'Ð\9dадвоÑ\80еÑ\88на вÑ\80Ñ\81ка (Ñ\81о пÑ\80еÑ\82Ñ\81Ñ\82авкаÑ\82а http://)',
'headline_sample' => 'Наслов',
'headline_tip' => 'Поднаслов',
'nowiki_sample' => 'Овде внесете неформатиран текст',
Веројатно е избришана.',
'edit-conflict' => 'Спротиставеност во уредувањето.',
'edit-no-change' => 'Вашите уредувања беа игнорирани, бидејќи не се направени промени врз текстот.',
+'postedit-confirmation' => 'Вашето уредување е зачувано.',
'edit-already-exists' => 'Не може да се создаде нова страница.
Истата веќе постои.',
'defaultmessagetext' => 'Текст на пораката по основно',
'invalid-content-data' => 'Неважечки податоци од содржината',
'content-not-allowed-here' => 'Содржините од моделот „$1“ не се допуштени на страницата [[$2]]',
'editwarning-warning' => 'Ако ја напуштите страницата ќе ги изгубите сите промени кои сте ги направиле.
-Ако сте најавени, можете да го исклучите ова предупредување во одделот „{{int:prefs-editing}}“ во вашите нагодувања.',
+Ако сте најавени, можете да го исклучите ова предупредување во одделот „Уредување“ во вашите нагодувања.',
# Content models
'content-model-wikitext' => 'викитекст',
'searchmenu-legend' => 'Нагодувања на пребарувањето',
'searchmenu-exists' => "'''На ова вики има страница со наслов „[[:$1]]“'''",
'searchmenu-new' => "Создајте ја страницата „[[:$1]]“ на ова вики!'''",
-'searchhelp-url' => 'Help:Содржина',
-'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Прелистување на страници со овој префикс]]',
+'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Прелистување на страници со оваа претставка]]',
'searchprofile-articles' => 'Статии',
'searchprofile-project' => 'Помош и проектни страници',
'searchprofile-images' => 'Податотеки',
'showingresultsnum' => "Подолу {{PLURAL:$3|е прикажан '''1''' резултат|се прикажани '''$3''' резултати}} почнувајќи од '''$2'''.",
'showingresultsheader' => "{{PLURAL:$5|Резултат '''$1''' од '''$3'''|Резултати '''$1 - $2''' од '''$3'''}} за '''$4'''",
'nonefound' => "'''Напомена''': Само некои именски простори се пребаруваат по основно.
-Ð\9eбидеÑ\82е Ñ\81е Ñ\81о додаваÑ\9aе на пÑ\80еÑ\84икÑ\81оÑ\82 ''all:'' за да пÑ\80ебаÑ\80Ñ\83ваÑ\82е низ Ñ\81иÑ\82е Ñ\81одÑ\80жини (вклÑ\83Ñ\87Ñ\83ваÑ\98Ñ\9cи Ñ\81Ñ\82Ñ\80аниÑ\86и за Ñ\80азговоÑ\80, Ñ\88аблони, иÑ\82н) или коÑ\80иÑ\81Ñ\82еÑ\82е го баÑ\80аниоÑ\82 именÑ\81ки пÑ\80оÑ\81Ñ\82оÑ\80 како пÑ\80еÑ\84икÑ\81.",
+Ð\9eбидеÑ\82е Ñ\81е Ñ\81о додаваÑ\9aе на пÑ\80еÑ\82Ñ\81Ñ\82авкаÑ\82а ''all:'' за да пÑ\80ебаÑ\80Ñ\83ваÑ\82е низ Ñ\81иÑ\82е Ñ\81одÑ\80жини (вклÑ\83Ñ\87Ñ\83ваÑ\98Ñ\9cи Ñ\81Ñ\82Ñ\80аниÑ\86и за Ñ\80азговоÑ\80, Ñ\88аблони, иÑ\82н) или коÑ\80иÑ\81Ñ\82еÑ\82е го баÑ\80аниоÑ\82 именÑ\81ки пÑ\80оÑ\81Ñ\82оÑ\80 како пÑ\80еÑ\82Ñ\81Ñ\82авка.",
'search-nonefound' => 'Нема резултати што одговараат на бараното.',
'powersearch' => 'Напредно пребарување',
'powersearch-legend' => 'Напредно пребарување',
'userrights-unchangeable-col' => 'Групи кои не може да ги промените',
'userrights-irreversible-marker' => '$1*',
'userrights-conflict' => 'Спротиставеност во корисничките права. Применете ги промените повторно.',
+'userrights-removed-self' => 'Успешно ги отстранивте вашите права. Затоа, повеќе немате пристап на страницава.',
# Groups
'group' => 'Група:',
'right-editusercssjs' => 'Уредување на CSS и JS податотеки на други корисници',
'right-editusercss' => 'Уредување на CSS податотеки на други корисници',
'right-edituserjs' => 'Уредување на JS податотеки на други корисници',
+'right-editmyusercss' => 'Уредување на сопствени кориснички каскадни стилски податотеки (CSS)',
+'right-editmyuserjs' => 'Уредување на сопствени кориснички податотеки со JavaScript',
+'right-viewmywatchlist' => 'Преглед на вашиот список на набљудувања',
+'right-editmywatchlist' => 'Уредување на вашиот список на набљудувања. Извесни дејства сепак ќе ставаат страници во списокот и без да го имате ова право.',
'right-rollback' => 'Брзо отповикување на уредувањата на последниот корисник што уредувал одредена страница',
'right-markbotedits' => 'Означување на вратени уредувања како ботовски уредувања',
'right-noratelimit' => 'Без временски ограничувања на уредување',
'action-userrights-interwiki' => 'уредување на кориснички права на корисници на други викија',
'action-siteadmin' => 'заклучување или отклучување на базата на податоци',
'action-sendemail' => 'испраќање на е-пошта',
+'action-editmywatchlist' => 'уредување на вашиот список на набљудувања',
+'action-viewmywatchlist' => 'преглед на вашиот список на набљудувања',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|промена|промени}}',
'reuploaddesc' => 'Прекини и назад кон образецот за подигање',
'upload-tryagain' => 'Поднеси изменет опис на податотеката',
'uploadnologin' => 'Не сте најавени',
-'uploadnologintext' => 'Морате да [[Special:UserLogin|се најавите]] за да можете да подигате податотеки.',
+'uploadnologintext' => 'Мора да сте $1 за да можете да подигате.',
'upload_directory_missing' => 'Папката за подигање на слики ($1) не постои и не може да биде создадена од опслужувачот.',
'upload_directory_read_only' => 'Опслужувачот не може да запишува во именикот за подигање ($1).',
'uploaderror' => 'Грешка во подигањето',
'filename-prefix-blacklist' => ' #<!-- Не менувајте ја содржината на овој ред - оставете ја како што е --> <pre>
# Опис на ситнаксата:
# * Било што по знакот „#“, па до крајот на редот претставува коментар
-# * СекоÑ\98 Ñ\80ед ознаÑ\87Ñ\83ва пÑ\80еÑ\84икÑ\81 на типични имиња на податотеки што ги доделуваат дигиталните апарати
+# * СекоÑ\98 Ñ\80ед ознаÑ\87Ñ\83ва пÑ\80еÑ\82Ñ\81Ñ\82авка на типични имиња на податотеки што ги доделуваат дигиталните апарати
CIMG # Casio
DSC_ # Nikon
DSCF # Fuji
'withoutinterwiki' => 'Страници без меѓујазични врски',
'withoutinterwiki-summary' => 'Следните страници немаат врски до други јазични верзии.',
-'withoutinterwiki-legend' => 'Ð\9fÑ\80еÑ\84икÑ\81',
+'withoutinterwiki-legend' => 'Ð\9fÑ\80еÑ\82Ñ\81Ñ\82авка',
'withoutinterwiki-submit' => 'Прикажи',
'fewestrevisions' => 'Статии со најмалку ревизии',
'mostimages' => 'Најмногу врски до податотеки',
'mostinterwikis' => 'Страници со најмногу меѓувики',
'mostrevisions' => 'Статии со најмногу верзии',
-'prefixindex' => 'Страници со префикс',
+'prefixindex' => 'Сите страници (со претставка)',
'prefixindex-namespace' => 'Сите страници со префикс (именски простор $1)',
'shortpages' => 'Кратки страници',
'longpages' => 'Долги страници',
'all-logs-page' => 'Сите јавни дневници',
'alllogstext' => 'Комбиниран приказ на сите расположиви дневници на {{SITENAME}}.
Можете да го ограничите прикажаното избирајќи тип на дневник, корисничко име (разликува големи и мали букви), или страница (разликува големи и мали букви).',
-'logempty' => 'Ð\9dема Ñ\81оодвеÑ\82ни запиÑ\81и во дневникоÑ\82.',
+'logempty' => 'Ð\94невникоÑ\82 нема запиÑ\81и Ñ\88Ñ\82о одговаÑ\80ааÑ\82 на ова.',
'log-title-wildcard' => 'Пребарај наслови кои почнуваат со овој текст',
'showhideselectedlogentries' => 'Прикажи/скриј одбрани записи',
'allpagesprev' => 'Претходна',
'allpagesnext' => 'Следна',
'allpagessubmit' => 'Оди',
-'allpagesprefix' => 'Ð\9fÑ\80икажи Ñ\81Ñ\82Ñ\80аниÑ\86и Ñ\81о пÑ\80еÑ\84икÑ\81:',
-'allpagesbadtitle' => 'Дадениот наслов е неважечки или има меѓујазичен или меѓувики префикс. Може да содржи повеќе знаци кои не смеат да се користат во наслови.',
+'allpagesprefix' => 'Ð\9fÑ\80икажи Ñ\81Ñ\82Ñ\80аниÑ\86и Ñ\81о пÑ\80еÑ\82Ñ\81Ñ\82авка:',
+'allpagesbadtitle' => 'Дадениот наслов е неважечки или има меѓујазичен или меѓувики-претставка. Може да содржи повеќе знаци кои не смеат да се користат во наслови.',
'allpages-bad-ns' => 'Википедија не содржи именски простор „$1“.',
'allpages-hide-redirects' => 'Скриј пренасочувања',
'usermessage-editor' => 'Системски гласник',
# Watchlist
-'watchlist' => 'Ð\9dабљудувања',
+'watchlist' => 'набљудувања',
'mywatchlist' => 'Набљудувања',
'watchlistfor2' => 'За $1 $2',
'nowatchlist' => 'Немате ништо во списокот на набљудувања.',
'notvisiblerev' => 'Ревизијата била избришана',
'watchnochange' => 'Ниту едно од вашите набљудувања не било уредувано во прикажаниот период.',
'watchlist-details' => '{{PLURAL:$1|$1 страница|$1 страници}} во вашиот список на набљудувања, не броејќи ги страниците за разговор.',
-'wlheader-enotif' => '* Известување по е-пошта е овозможено.',
-'wlheader-showupdated' => "* Страници кои се променети од вашата последна посета се прикажани со '''задебелени''' букви",
+'wlheader-enotif' => 'Известувањето по е-пошта е вклучено.',
+'wlheader-showupdated' => "Страниците што се изменети од вашата последна посета се прикажани со '''задебелени''' букви",
'watchmethod-recent' => 'Проверка на скорешните уредувања на набљудуваните страници',
'watchmethod-list' => 'Проверерка на набљудуваните страници во скорешните уредувања',
'watchlistcontains' => 'Вашиот список на набљудувања содржи $1 {{PLURAL:$1|страница|страници}}.',
'delete-legend' => 'Бришење',
'historywarning' => "'''Предупредување:''' Страницата што сакате да ја избришете има историја со околу $1 {{PLURAL:$1|ревизија|ревизии}}:",
'confirmdeletetext' => 'На пат сте трајно да избришете страница заедно со нејзината историја.
-Потврдете дека имате намера да го направите ова, дека ги разбирате последиците од тоа, дека го правите ова во согласност со [[{{MediaWiki:Policy-url}}|политиката]].',
+Потврдете дека имате намера да го направите ова, дека ги разбирате последиците од тоа и дека го правите во согласност со [[{{MediaWiki:Policy-url}}|правилата]].',
'actioncomplete' => 'Дејството е извршено',
'actionfailed' => 'Неуспешно дејство',
'deletedtext' => '„$1“ е избришана. Евиденција на скорешните бришења ќе најдете на $2.',
** На барање на авторот
** Прекршување на авторски права
** Вандализам',
-'delete-edit-reasonlist' => 'Уредување на причини за бришење',
+'delete-edit-reasonlist' => 'Уреди причини за бришење',
'delete-toobig' => 'Оваа страница има долга историја на уредување, преку $1 {{PLURAL:$1|ревизија|ревизии}}.
Бришењето на ваквии страници е забрането со цел {{SITENAME}} да се заштити од оштетувања.',
'delete-warning-toobig' => 'Оваа страница има долга историја на уредување, преку $1 {{PLURAL:$1|ревизија|ревизии}}.
'mycontris' => 'придонеси',
'contribsub2' => 'За $1 ($2)',
'nocontribs' => 'Не се пронајдени промени што одговараат на овој критериум.',
-'uctop' => ' (врв)',
+'uctop' => '(тековно)',
'month' => 'Од месец (и порано):',
'year' => 'Од година (и порано):',
'thumbnail-more' => 'Зголеми',
'filemissing' => 'Недостасува податотека',
'thumbnail_error' => 'Грешка при создавање на минијатурата: $1',
+'thumbnail_error_remote' => '$1 пријавува грешка:
+$2',
'djvu_page_error' => 'Недостапна DjVu страница',
'djvu_no_xml' => 'Не е можно да се излачи XML за DjVu податотеки',
'thumbnail-temp-create' => 'Не можам да создадам привремена податотека на минијатурата',
'modern.css' => '/* Тука поставениот CSS се однесува на корисниците на рувото „Современо“ */',
'vector.css' => '/* Тука поставениот CSS се однесува на корисниците на рувото „Векторско“ */',
'print.css' => '/* Тука поставениот CSS ќе се применува во верзијата за печатење */',
-'handheld.css' => '/* Тука поставениот CSS ќе се применува во рачните уреди со руво прилагодено во $wgHandheldStyle */',
'noscript.css' => '/* Тука поставениот CSS се однесува на корисниците што имаат оневозможено JavaScript */',
'group-autoconfirmed.css' => '/* Тука поставениот CSS ќе се применува само на автопотврдените корисници */',
'group-bot.css' => '/* Тука поставениот CSS ќе се применува само врз ботовите */',
'anonymous' => '{{PLURAL:$1|Анонимен корисник|Анонимни корисници}} на {{SITENAME}}',
'siteuser' => '{{SITENAME}} корисник $1',
'anonuser' => '{{SITENAME}} анонимен корисник $1',
-'lastmodifiedatby' => 'Последната промена на страницава е извршена на $1 во $2 ч. Промената ја направи $3.',
+'lastmodifiedatby' => 'Ð\9fоÑ\81леднаÑ\82а пÑ\80омена на Ñ\81Ñ\82Ñ\80аниÑ\86ава е извÑ\80Ñ\88ена на $1 г Сво $2 Ñ\87. Ð\9fÑ\80оменаÑ\82а Ñ\98а напÑ\80ави $3.',
'othercontribs' => 'Засновано на работата на $1.',
'others' => 'други',
'siteusers' => '{{PLURAL:$2|корисникот|корисниците}} на {{SITENAME}} $1',
* @author Krenair
* @author Manjith Joseph <manjithkaini@gmail.com>
* @author Naveen Sankar
+ * @author Nemo bis
* @author Praveen Prakash <me.praveen@gmail.com>
* @author Praveenp
* @author Sadik Khalid
'tog-justify' => 'ഖണ്ഡികകളുടെ അരികുകൾ നേരെയാക്കുക',
'tog-hideminor' => 'പുതിയ മാറ്റങ്ങളുടെ പട്ടികയിൽ ചെറിയ തിരുത്തലുകൾ പ്രദർശിപ്പിക്കാതിരിക്കുക',
'tog-hidepatrolled' => 'റോന്തുചുറ്റിയ തിരുത്തുകൾ പുതിയമാറ്റങ്ങളിൽ പ്രദർശിപ്പിക്കാതിരിക്കുക',
-'tog-newpageshidepatrolled' => 'à´±àµ\8bà´¨àµ\8dà´¤àµ\81à´\9aàµ\81à´±àµ\8dറിയ താളുകൾ പുതിയതാളുകളുടെ പട്ടികയിൽ പ്രദർശിപ്പിക്കാതിരിക്കുക',
+'tog-newpageshidepatrolled' => 'à´±àµ\8bà´¨àµ\8dà´¤àµ\81à´\9aàµ\81à´±àµ\8dറപàµ\8dà´ªàµ\86à´\9fàµ\8dà´\9f താളുകൾ പുതിയതാളുകളുടെ പട്ടികയിൽ പ്രദർശിപ്പിക്കാതിരിക്കുക',
'tog-extendwatchlist' => 'ഏറ്റവും പുതിയവ മാത്രമല്ല, എല്ലാ മാറ്റങ്ങളും ദൃശ്യമാകുന്ന വിധത്തിൽ ശ്രദ്ധിക്കുന്ന താളുകളുടെ പട്ടിക വികസിപ്പിക്കുക.',
'tog-usenewrc' => 'സമീപകാല മാറ്റങ്ങൾ, ശ്രദ്ധിക്കുന്നവയുടെ പട്ടിക എന്നീ താളുകളിലെ വിവരങ്ങൾ താളുകൾക്കനുസരിച്ചുള്ള കൂട്ടങ്ങളായി ഒതുക്കി പ്രദർശിപ്പിക്കുക (ജാവാസ്ക്രിപ്റ്റ് ആവശ്യമാണ്)',
'tog-numberheadings' => 'ഉപവിഭാഗങ്ങൾക്ക് ക്രമസംഖ്യ കൊടുക്കുക',
-'tog-showtoolbar' => 'തിരുത്തൽ റ്റൂൾബാർ പ്രദർശിപ്പിക്കുക (ജാവാസ്ക്രിപ്റ്റ്)',
-'tog-editondblclick' => 'താളുകളിൽ ഇരട്ട ക്ലിക്ക് ചെയ്യുമ്പോൾ തിരുത്താനനുവദിക്കുക (ജാവാസ്ക്രിപ്റ്റ്)',
+'tog-showtoolbar' => 'തിരുത്തൽ റ്റൂൾബാർ പ്രദർശിപ്പിക്കുക (ജാവാസ്ക്രിപ്റ്റ് ആവശ്യമാണ്)',
+'tog-editondblclick' => 'താളുകളിൽ ഇരട്ട ക്ലിക്ക് ചെയ്യുമ്പോൾ തിരുത്താനനുവദിക്കുക (ജാവാസ്ക്രിപ്റ്റ് ആവശ്യമാണ്)',
'tog-editsection' => '[തിരുത്തുക] എന്ന കണ്ണിയുപയോഗിച്ച് ഉപവിഭാഗങ്ങൾ തിരുത്താൻ അനുവദിക്കുക',
-'tog-editsectiononrightclick' => 'ഉപവിഭാഗങ്ങളുടെ തലക്കെട്ടിൽ റൈറ്റ് ക്ലിക്ക് ചെയ്യുന്നതു വഴി തിരുത്താനനുവദിക്കുക (ജാവാസ്ക്രിപ്റ്റ്)',
+'tog-editsectiononrightclick' => 'ഉപവിഭാഗങ്ങളുടെ തലക്കെട്ടിൽ റൈറ്റ് ക്ലിക്ക് ചെയ്യുന്നതു വഴി തിരുത്താനനുവദിക്കുക (ജാവാസ്ക്രിപ്റ്റ് ആവശ്യമാണ്)',
'tog-showtoc' => 'ഉള്ളടക്കപ്പട്ടിക പ്രദർശിപ്പിക്കുക (മൂന്നിൽ കൂടുതൽ ഉപശീർഷകങ്ങളുള്ള താളുകൾക്കു മാത്രം)',
'tog-rememberpassword' => 'എന്റെ പ്രവേശനം ഈ ബ്രൗസറിൽ ({{PLURAL:$1|ഒരു ദിവസം|$1 ദിവസം}}) ഓർത്തുവെക്കുക',
'tog-watchcreations' => 'ഞാൻ സൃഷ്ടിക്കുന്ന താളുകളും ഞാൻ അപ്ലോഡ് ചെയ്യുന്ന പ്രമാണങ്ങളും ശ്രദ്ധിക്കുന്ന താളുകളുടെ പട്ടികയിൽ ചേർക്കുക',
'oct' => 'ഒക്ടോ.',
'nov' => 'നവം.',
'dec' => 'ഡിസം.',
+'january-date' => 'ജനുവരി $1',
+'february-date' => 'ഫെബ്രുവരി $1',
+'march-date' => 'മാർച്ച് $1',
+'april-date' => 'ഏപ്രിൽ $1',
+'may-date' => 'മെയ് $1',
+'june-date' => 'ജൂൺ $1',
+'july-date' => 'ജൂലൈ $1',
+'august-date' => 'ഓഗസ്റ്റ് $1',
+'september-date' => 'സെപ്റ്റംബർ $1',
+'october-date' => 'ഒക്ടോബർ $1',
+'november-date' => 'നവംബർ $1',
+'december-date' => 'ഡിസംബർ $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|വർഗ്ഗം|വർഗ്ഗങ്ങൾ}}',
'category-empty' => "''ഈ വർഗ്ഗത്തിൽ താളുകളോ പ്രമാണങ്ങളോ ഇല്ല.''",
'hidden-categories' => '{{PLURAL:$1|മറഞ്ഞിരിക്കുന്ന വർഗ്ഗം|മറഞ്ഞിരിക്കുന്ന വർഗ്ഗങ്ങൾ}}',
'hidden-category-category' => 'മറഞ്ഞിരിക്കുന്ന വർഗ്ഗങ്ങൾ',
-'category-subcat-count' => '{{PLURAL:$2|à´\88 വർà´\97àµ\8dà´\97à´¤àµ\8dതിനàµ\81 താഴàµ\86 നൽà´\95ിയിരിà´\95àµ\8dà´\95àµ\81à´¨àµ\8dà´¨ à´\92à´°àµ\81 à´\89പവർà´\97àµ\8dà´\97à´\82 മാതàµ\8dരമാണàµ\81à´³àµ\8dളതàµ\8d.|à´\88 വർà´\97àµ\8dà´\97à´¤àµ\8dതിനàµ\8d ആകെ $2 ഉപവർഗ്ഗങ്ങൾ ഉള്ളതിൽ {{PLURAL:$1|ഒരു ഉപവർഗ്ഗം|$1 ഉപവർഗ്ഗങ്ങൾ}}, താഴെക്കൊടുത്തിരിക്കുന്നു.}}',
+'category-subcat-count' => '{{PLURAL:$2|à´\88 വർà´\97àµ\8dà´\97à´¤àµ\8dതിൽ താഴàµ\86 നൽà´\95ിയിരിà´\95àµ\8dà´\95àµ\81à´¨àµ\8dà´¨ à´\92à´°àµ\81 à´\89പവർà´\97àµ\8dà´\97à´\82 മാതàµ\8dരമാണàµ\81à´³àµ\8dളതàµ\8d.|à´\88 വർà´\97àµ\8dà´\97à´¤àµ\8dതിൽ ആകെ $2 ഉപവർഗ്ഗങ്ങൾ ഉള്ളതിൽ {{PLURAL:$1|ഒരു ഉപവർഗ്ഗം|$1 ഉപവർഗ്ഗങ്ങൾ}}, താഴെക്കൊടുത്തിരിക്കുന്നു.}}',
'category-subcat-count-limited' => 'ഈ വർഗ്ഗത്തിനു താഴെ നൽകിയിരിക്കുന്ന {{PLURAL:$1|ഉപവർഗ്ഗമുണ്ട്|$1 ഉപവർഗ്ഗങ്ങളുണ്ട്}}.',
'category-article-count' => '{{PLURAL:$2|ഈ വർഗ്ഗത്തിൽ താഴെ നൽകിയിരിക്കുന്ന ഒരു താൾ മാത്രമാണുള്ളത്.|ഈ വർഗ്ഗത്തിൽ $2 താളുകളുള്ളതിൽ {{PLURAL:$1|ഒരു താൾ|$1 എണ്ണം}} താഴെ നൽകിയിരിക്കുന്നു.}}',
'category-article-count-limited' => 'ഈ വർഗ്ഗത്തിൽ താഴെ നൽകിയിരിക്കുന്ന {{PLURAL:$1|ഒരു താൾ ഉണ്ട്|$1 താളുകൾ ഉണ്ട്}}.',
'create-this-page' => 'ഈ താൾ സൃഷ്ടിക്കുക',
'delete' => 'മായ്ക്കുക',
'deletethispage' => 'ഈ താൾ നീക്കം ചെയ്യുക',
+'undeletethispage' => 'ഈ താൾ പുനഃസ്ഥാപിക്കുക',
'undelete_short' => '{{PLURAL:$1|ഒരു തിരുത്തൽ|$1 തിരുത്തലുകൾ}} പുനഃസ്ഥാപിക്കുക',
'viewdeleted_short' => '{{PLURAL:$1|മായ്ക്കപ്പെട്ട ഒരു തിരുത്തൽ|മായ്ക്കപ്പെട്ട $1 തിരുത്തലുകൾ}} കാണുക',
'protect' => 'സംരക്ഷിക്കുക',
'disclaimers' => 'നിരാകരണങ്ങൾ',
'disclaimerpage' => 'Project:പൊതുനിരാകരണം',
'edithelp' => 'തിരുത്തൽ സഹായി',
-'edithelppage' => 'Help:തിരുത്തൽ വഴികാട്ടി',
'helppage' => 'Help:ഉള്ളടക്കം',
'mainpage' => 'പ്രധാന താൾ',
'mainpage-description' => 'പ്രധാന താൾ',
'namespaceprotected' => "'''$1''' നാമമേഖലയിലുള്ള താളുകൾ തിരുത്താൻ താങ്കൾക്ക് അനുവാദമില്ല.",
'customcssprotected' => 'ഈ സി.എസ്.എസ്. താളിൽ മറ്റൊരു ഉപയോക്താവിന്റെ സ്വകാര്യസജ്ജീകരണങ്ങൾ ഉൾക്കൊള്ളുന്നു, അതിനാൽ താങ്കൾക്ക് ഈ താൾ തിരുത്താൻ അനുവാദമില്ല.',
'customjsprotected' => 'ഈ ജാവാസ്ക്രിപ്റ്റ് താളിൽ മറ്റൊരു ഉപയോക്താവിന്റെ സ്വകാര്യസജ്ജീകരണങ്ങൾ ഉൾക്കൊള്ളുന്നു, അതിനാൽ താങ്കൾക്ക് ഈ താൾ തിരുത്താൻ അനുവാദമില്ല.',
+'mycustomcssprotected' => 'ഈ സി.എസ്.എസ്. താൾ തിരുത്താനുള്ള അനുമതി താങ്കൾക്കില്ല.',
+'mycustomjsprotected' => 'ഈ ജാവാസ്ക്രിപ്റ്റ് താൾ തിരുത്താനുള്ള അനുമതി താങ്കൾക്കില്ല.',
'ns-specialprotected' => 'പ്രത്യേകം എന്ന നാമമേഖലയിൽ വരുന്ന താളുകൾ തിരുത്താനാവുന്നവയല്ല.',
'titleprotected' => "[[User:$1|$1]] എന്ന ഉപയോക്താവ് ഈ താൾ ഉണ്ടാക്കുന്നതു നിരോധിച്ചിരിക്കുന്നു.
''$2'' എന്നതാണു അതിനു കാണിച്ചിട്ടുള്ള കാരണം.",
'yourpassword' => 'രഹസ്യവാക്ക്:',
'userlogin-yourpassword' => 'രഹസ്യവാക്ക്',
'userlogin-yourpassword-ph' => 'താങ്കളുടെ രഹസ്യവാക്ക് നൽകുക',
-'createacct-yourpassword-ph' => 'രഹസ്യവാക്ക് നൽകുക',
+'createacct-yourpassword-ph' => 'à´\92à´°àµ\81 രഹസàµ\8dയവാà´\95àµ\8dà´\95àµ\8d നൽà´\95àµ\81à´\95',
'yourpasswordagain' => 'രഹസ്യവാക്ക് ഒരിക്കൽക്കൂടി:',
'createacct-yourpasswordagain' => 'രഹസ്യവാക്ക് സ്ഥിരീകരിക്കുക',
'createacct-yourpasswordagain-ph' => 'രഹസ്യവാക്ക് വീണ്ടും നൽകുക',
'remembermypassword' => 'എന്റെ പ്രവേശനം ഈ ബ്രൗസറിൽ ({{PLURAL:$1|ഒരു ദിവസം|$1 ദിവസം}}) ഓർത്തുവെക്കുക',
'userlogin-remembermypassword' => 'ഞാൻ പ്രവേശിച്ചതായി തന്നെ നിലനിർത്തുക',
-'userlogin-signwithsecure' => 'à´¸àµ\81à´°à´\95àµ\8dà´·à´¿à´¤ à´\95ണൿഷൻ ഉപയോഗിക്കുക',
+'userlogin-signwithsecure' => 'à´¸àµ\81à´°à´\95àµ\8dà´·à´¿à´¤ à´\95à´£à´\95àµ\8dഷൻ ഉപയോഗിക്കുക',
'securelogin-stick-https' => 'പ്രവേശനത്തിനു ശേഷവും എച്ച്.റ്റി.റ്റി.പി.എസ്. തന്നെ ഉപയോഗിക്കുക',
'yourdomainname' => 'താങ്കളുടെ ഡൊമെയിൻ:',
'password-change-forbidden' => 'ഈ വിക്കിയിൽ രഹസ്യവാക്കുകൾ മാറ്റാനാവില്ല.',
'createacct-emailrequired' => 'ഇമെയിൽ വിലാസം',
'createacct-emailoptional' => 'ഇമെയിൽ വിലാസം (നിർബന്ധമില്ല)',
'createacct-email-ph' => 'താങ്കളുടെ ഇമെയിൽ വിലാസം നൽകുക',
-'createaccountmail' => 'താതàµ\8dà´\95ാലിà´\95മായ à´\95àµ\8dരമരഹിത രഹസàµ\8dയവാà´\95àµ\8dà´\95àµ\8d à´\89പയàµ\8bà´\97à´¿à´\95àµ\8dà´\95ാനനàµ\81വാദà´\82 നൽà´\95àµ\81à´\95à´¯àµ\81à´\82 à´\85à´¤àµ\8d താഴàµ\86 à´µàµ\8dà´¯à´\95àµ\8dതമാà´\95àµ\8dà´\95ിയിരിà´\95àµ\8dà´\95àµ\81à´¨àµ\8dà´¨ à´\87à´®àµ\86യിൽ വിലാസതàµ\8dതിലàµ\87à´¯àµ\8dà´\95àµ\8dà´\95àµ\8d à´\85യക്കുകയും ചെയ്യുക',
+'createaccountmail' => 'തൽà´\95àµ\8dà´\95ാലà´\82 à´\92à´°àµ\81 à´\86à´\95à´¸àµ\8dമിà´\95രഹസàµ\8dയവാà´\95àµ\8dà´\95àµ\8d à´\89പയàµ\8bà´\97à´¿à´\95àµ\8dà´\95àµ\81à´\95à´¯àµ\81à´\82 à´\85à´¤àµ\8d താഴàµ\86à´¤àµ\8dതനàµ\8dനിരിà´\95àµ\8dà´\95àµ\81à´¨àµ\8dà´¨ à´\87à´®àµ\86യിൽ വിലാസതàµ\8dതിലàµ\87à´\95àµ\8dà´\95യക്കുകയും ചെയ്യുക',
'createacct-realname' => 'ശരിയായ പേര് (നിർബന്ധമില്ല)',
'createaccountreason' => 'കാരണം:',
'createacct-reason' => 'കാരണം',
'nosuchusershort' => '"$1" എന്ന പേരിൽ ഒരു ഉപയോക്താവ് ഇല്ല. അക്ഷരങ്ങൾ ഒന്നു കൂടി പരിശോധിക്കുക.',
'nouserspecified' => 'ഉപയോക്തൃനാമം നിർബന്ധമായും ചേർക്കണം.',
'login-userblocked' => 'ഈ ഉപയോക്താവ് തടയപ്പെട്ടിരിക്കുന്നു. പ്രവേശനം അനുവദിക്കുന്നില്ല.',
-'wrongpassword' => 'താà´\99àµ\8dà´\95ൾ നൽà´\95à´¿à´¯ രഹസàµ\8dയവാà´\95àµ\8dà´\95àµ\8d à´¤àµ\86à´±àµ\8dറാണàµ\8d, à´µàµ\80à´£àµ\8dà´\9fàµ\81à´\82 à´¶àµ\8dരമിà´\95àµ\8dà´\95àµ\81à´\95.',
-'wrongpasswordempty' => 'താà´\99àµ\8dà´\95ൾ രഹസàµ\8dയവാà´\95àµ\8dà´\95àµ\8d നൽà´\95ിയിരàµ\81à´¨àµ\8dനിലàµ\8dà´². à´µàµ\80à´£àµ\8dà´\9fàµ\81à´\82 à´¶àµ\8dരമിà´\95àµ\8dà´\95àµ\81à´\95.',
+'wrongpassword' => 'രഹസ്യവാക്ക് തെറ്റാണ്, വീണ്ടും ശ്രമിക്കുക.',
+'wrongpasswordempty' => 'രഹസ്യവാക്ക് നൽകിയിരുന്നില്ല. വീണ്ടും ശ്രമിക്കുക.',
'passwordtooshort' => 'രഹസ്യവാക്കിൽ കുറഞ്ഞതു {{PLURAL:$1|ഒരു അക്ഷരം|$1 അക്ഷരങ്ങൾ}} ഉണ്ടായിരിക്കണം.',
'password-name-match' => 'താങ്കളുടെ രഹസ്യവാക്ക് ഉപയോക്തൃനാമത്തിൽ നിന്നും വ്യത്യസ്തമായിരിക്കണം.',
'password-login-forbidden' => 'ഈ ഉപയോക്തൃനാമത്തിന്റെയും രഹസ്യവാക്കിന്റെയും ഉപയോഗം നിരോധിച്ചിരിക്കുന്നു.',
'cannotchangeemail' => 'അംഗത്വത്തിന്റെ ഇമെയിൽ വിലാസങ്ങൾ ഈ വിക്കിയിൽ മാറ്റാനാവില്ല.',
'emaildisabled' => 'ഈ സൈറ്റിൽ നിന്ന് ഇമെയിലുകൾ അയയ്ക്കാനാവില്ല.',
'accountcreated' => 'അംഗത്വം സൃഷ്ടിച്ചിരിക്കുന്നു',
-'accountcreatedtext' => '$1 എന്ന ഉപയോക്താവിനായി അംഗത്വം സൃഷ്ടിക്കപ്പെട്ടിരിക്കുന്നു.',
+'accountcreatedtext' => '[[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) എന്ന ഉപയോക്താവിനായി അംഗത്വം സൃഷ്ടിക്കപ്പെട്ടിരിക്കുന്നു.',
'createaccount-title' => '{{SITENAME}} സംരംഭത്തിൽ അംഗത്വം സൃഷ്ടിക്കൽ',
'createaccount-text' => '{{SITENAME}} സംരംഭത്തിൽ ($4) താങ്കളുടെ ഇമെയിൽ വിലാസത്തിൽ ആരോ ഒരു അംഗത്വം "$2" എന്ന ഉപയോക്തൃനാമത്തിൽ ഉണ്ടാക്കിയിരിക്കുന്നു (രഹസ്യവാക്ക്: "$3"). താങ്കൾ ഇപ്പോൾ ലോഗിൻ ചെയ്തു രഹസ്യവാക്ക് മാറ്റേണ്ടതാകുന്നു.
# Special:PasswordReset
'passwordreset' => 'രഹസ്യവാക്ക് പുനഃക്രമീകരിക്കുക',
-'passwordreset-text' => 'രഹസ്യവാക്ക് പുനർസജ്ജീകരിക്കാനായി ഈ ഫോം പൂരിപ്പിക്കുക.',
+'passwordreset-text-one' => 'രഹസ്യവാക്ക് പുനർസജ്ജീകരിക്കാനായി ഈ ഫോം പൂരിപ്പിക്കുക.',
+'passwordreset-text-many' => '{{PLURAL:$1|താങ്കളുടെ രഹസ്യവാക്ക് പുനസജ്ജീകരിക്കാൻ വിവരശകലം നൽകുക.}}',
'passwordreset-legend' => 'രഹസ്യവാക്ക് പുനഃക്രമീകരിക്കുക',
'passwordreset-disabled' => 'ഈ വിക്കിയിൽ രഹസ്യവാക്ക് പുനഃക്രമീകരിക്കലുകൾ പ്രവർത്തരഹിതമാക്കിയിരിക്കുകയാണ്.',
'passwordreset-emaildisabled' => 'ഈ വിക്കിയിൽ ഇമെയിൽ സൗകര്യങ്ങൾ പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നു.',
-'passwordreset-pretext' => '{{PLURAL:$1||താഴെ ഒരു വിവരശകലം നൽകുക}}',
'passwordreset-username' => 'ഉപയോക്തൃനാമം:',
'passwordreset-domain' => 'ഡൊമൈൻ:',
'passwordreset-capture' => 'ഫലമായുണ്ടാകുന്ന ഇമെയിൽ കാണണോ?',
ഇത് മായ്ക്കപ്പെട്ടതായി കാണുന്നു.',
'edit-conflict' => 'തിരുത്തൽ സമരസപ്പെടായ്ക.',
'edit-no-change' => 'ഇപ്പോഴുള്ള സ്ഥിതിയിൽ നിന്നു യാതൊരു മാറ്റവും ഇല്ലാത്തതിനാൽ താങ്കളുടെ തിരുത്തലുകൾ തിരസ്കരിക്കപ്പെട്ടിരിക്കുന്നു.',
+'postedit-confirmation' => 'താങ്കളുടെ തിരുത്ത് സേവ് ചെയ്തിരിക്കുന്നു.',
'edit-already-exists' => 'പുതിയ താൾ സൃഷ്ടിക്കാൻ കഴിഞ്ഞില്ല.
താൾ ഇപ്പോൾ തന്നെ നിലവിലുണ്ട്.',
'defaultmessagetext' => 'സ്വതേയുള്ള സന്ദേശ എഴുത്ത്',
'content-failed-to-parse' => '$2 ഉള്ളടക്കം $1 മാതൃകയിൽ പാഴ്സ് ചെയ്യൽ പരാജയപ്പെട്ടു: $3',
'invalid-content-data' => 'അസാധുവായ ഉള്ളടക്ക ഡേറ്റ',
'content-not-allowed-here' => '"$1" ഉള്ളടക്കം [[$2]] താളിൽ അനുവദിക്കുന്നില്ല',
-'editwarning-warning' => 'ഈ താളിൽ നിന്നു പോകുന്നത് താങ്കൾ വരുത്തിയ മാറ്റങ്ങൾ നഷ്ടപ്പെടാൻ ഇടയാക്കുന്നതാണ്.
-താങ്കൾ ലോഗിൻ ചെയ്തിട്ടുണ്ടെങ്കിൽ, താങ്കളുടെ ക്രമീകരണങ്ങളിൽ "{{int:prefs-editing}}" ഭാഗത്ത് ചെന്ന് ഈ അറിയിപ്പ് ഒഴിവാക്കാവുന്നതാണ്.',
+'editwarning-warning' => 'ഈ താളിൽ നിന്നും പോകുന്നത് താങ്കൾ വരുത്തിയ മാറ്റങ്ങൾ നഷ്ടപ്പെടാൻ ഇടയാക്കും.
+താങ്കൾ ലോഗിൻ ചെയ്തിട്ടുണ്ടെങ്കിൽ, താങ്കളുടെ ക്രമീകരണങ്ങളിൽ "തിരുത്തൽ" എന്ന ഭാഗത്ത് ചെന്ന് ഈ അറിയിപ്പ് പ്രദർശിപ്പിക്കുന്നത് ഒഴിവാക്കാവുന്നതാണ്.',
# Content models
'content-model-wikitext' => 'വിക്കിഎഴുത്ത്',
'searchmenu-legend' => 'തിരച്ചിൽ ഉപാധികൾ',
'searchmenu-exists' => "'''\"[[:\$1]]\" എന്ന തലക്കെട്ടിൽ ഒരു താൾ ഈ വിക്കിയിൽ നിലവിലുണ്ട്'''",
'searchmenu-new' => "'''ഈ വിക്കിയിൽ \"[[:\$1]]\" താൾ നിർമ്മിക്കുക!'''",
-'searchhelp-url' => 'Help:ഉള്ളടക്കം',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ഈ പൂർവ്വപദങ്ങളുള്ള താളുകൾ ബ്രൗസ് ചെയ്യുക]]',
'searchprofile-articles' => 'ലേഖനങ്ങളിൽ',
'searchprofile-project' => 'സഹായം, പദ്ധതി താളുകളിൽ',
'prefs-datetime' => 'ദിവസവും സമയവും',
'prefs-labs' => 'പരീക്ഷണശാലയിൽ തയ്യാറാകുന്ന സൗകര്യങ്ങൾ',
'prefs-user-pages' => 'ഉപയോക്തൃതാളുകൾ',
-'prefs-personal' => 'à´\85à´¹à´\82',
+'prefs-personal' => 'à´\8eà´¨àµ\8dà´¨àµ\86à´ªàµ\8dപറàµ\8dറി',
'prefs-rc' => 'സമീപകാല മാറ്റങ്ങൾ',
'prefs-watchlist' => 'ശ്രദ്ധിക്കുന്നവ',
'prefs-watchlist-days' => 'ശ്രദ്ധിക്കുന്ന താളുകളുടെ പട്ടികയിൽ പ്രദർശിപ്പിക്കേണ്ട പരമാവധി ദിവസങ്ങൾ:',
'userrights-notallowed' => 'ഉപയോക്താക്കൾക്ക് അവകാശങ്ങൾ കൊടുക്കാനും എടുത്തുകളയാനുമുള്ള അനുമതി താങ്കളുടെ അംഗത്വത്തിനില്ല.',
'userrights-changeable-col' => 'താങ്കൾക്ക് മാറ്റാവുന്ന സംഘങ്ങൾ',
'userrights-unchangeable-col' => 'താങ്കൾക്ക് മാറ്റാനാവാത്ത സംഘങ്ങൾ',
+'userrights-conflict' => 'ഉപയോക്തൃ അവകാശങ്ങൾ സമരസപ്പെടായ്കയുണ്ടായി! ദയവായി താങ്കളുടെ മാറ്റങ്ങൾ വീണ്ടും നടപ്പിലാക്കുക.',
+'userrights-removed-self' => 'താങ്കൾ സ്വന്തം അവകാശങ്ങൾ സ്വയം ഒഴിവാക്കിയിരിക്കുന്നു. അതിനാൽ ഈ താൾ ഇനി താങ്കൾക്ക് ലഭ്യമായിരിക്കില്ല.',
# Groups
'group' => 'സംഘം:',
'right-editusercssjs' => 'മറ്റ് ഉപയോക്താക്കളുടെ CSS, JS പ്രമാണങ്ങൾ തിരുത്തുക',
'right-editusercss' => 'മറ്റ് ഉപയോക്താക്കളുടെ CSS പ്രമാണങ്ങൾ തിരുത്തുക',
'right-edituserjs' => 'മറ്റ് ഉപയോക്താക്കളുടെ JS പ്രമാണങ്ങൾ തിരുത്തുക',
+'right-editmyusercss' => 'താങ്കളുടെ സ്വന്തം ഉപയോക്തൃ സി.എസ്.എസ്. പ്രമാണങ്ങൾ തിരുത്തുക',
+'right-editmyuserjs' => 'താങ്കളുടെ സ്വന്തം ഉപയോക്തൃ ജാവാസ്ക്രിപ്റ്റ് പ്രമാണങ്ങൾ തിരുത്തുക',
+'right-viewmywatchlist' => 'താങ്കളുടെ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടിക സ്വയം കാണുക',
+'right-editmywatchlist' => 'താങ്കൾ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടിക സ്വയം തിരുത്തുക. ഈ അവകാശമില്ലാതെതന്നെ ചില പ്രവൃത്തികൾ താളുകൾ കൂട്ടിച്ചേർക്കുമെന്ന് അറിഞ്ഞിരിക്കുക.',
'right-rollback' => 'ഒരു പ്രത്യേക താളിൽ അവസാനം തിരുത്തൽ നടത്തിയ ഉപയോക്താവിന്റെ തിരുത്തൽ പെട്ടെന്ന് ഒഴിവാക്കുക',
'right-markbotedits' => 'മുൻപ്രാപനം നടത്തിയ തിരുത്തലുകൾ യാന്ത്രിക തിരുത്തലുകളായി അടയാളപ്പെടുത്തുക',
'right-noratelimit' => 'പ്രവർത്തനങ്ങൾക്ക് പരിധികൾ ബാധകമല്ല',
'action-userrights-interwiki' => 'മറ്റു വിക്കികളിൽ നിന്നുള്ള ഉപയോക്താക്കളുടെ ഉപയോക്തൃ അവകാശങ്ങൾ തിരുത്തുക',
'action-siteadmin' => 'ഡേറ്റാബേസ് തുറക്കുക അല്ലെങ്കിൽ പൂട്ടുക',
'action-sendemail' => 'ഇമെയിലുകൾ അയയ്ക്കുക',
+'action-editmywatchlist' => 'താങ്കൾ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടിക തിരുത്തുക',
+'action-viewmywatchlist' => 'താങ്കൾ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടിക കാണുക',
# Recent changes
'nchanges' => '{{PLURAL:$1|ഒരു മാറ്റം|$1 മാറ്റങ്ങൾ}}',
'reuploaddesc' => 'വീണ്ടും അപ്ലോഡ് ചെയ്ത് നോക്കാനായി തിരിച്ചു പോവുക.',
'upload-tryagain' => 'പുതുക്കിയ പ്രമാണ വിവരണങ്ങൾ സമർപ്പിക്കുക',
'uploadnologin' => 'ലോഗിൻ ചെയ്തിട്ടില്ല',
-'uploadnologintext' => 'à´ªàµ\8dരമാണà´\99àµ\8dà´\99ൾ à´\85à´ªàµ\8dâ\80\8cà´²àµ\8bà´¡àµ\8d à´\9aàµ\86à´¯àµ\8dയാൻ താà´\99àµ\8dà´\95ൾ [[Special:UserLogin|à´²àµ\8bà´\97ിൻ]] à´\9aàµ\86à´¯àµ\8dതിരിà´\95àµ\8dà´\95à´£à´\82',
+'uploadnologintext' => 'à´ªàµ\8dരമാണà´\99àµ\8dà´\99ൾ à´\85à´ªàµ\8dâ\80\8cà´²àµ\8bà´¡àµ\8d à´\9aàµ\86à´¯àµ\8dà´¯àµ\81à´¨àµ\8dനതിനàµ\81 à´®àµ\81à´®àµ\8dà´ªàµ\8d, താà´\99àµ\8dà´\95ൾ $1.',
'upload_directory_missing' => 'അപ്ലോഡ് ഡയറക്ടറി ($1) ലഭ്യമല്ല, അത് സൃഷ്ടിക്കാൻ വെബ്സെർവറിനു സാധിക്കില്ല.',
'upload_directory_read_only' => 'വെബ് സെർവറിനു അപ്ലോഡ് ഡയറക്ടറിയിലേക്ക് ($1) എഴുതാൻ കഴിഞ്ഞില്ല.',
'uploaderror' => 'അപ്ലോഡ് പിഴവ്',
'filehist-help' => 'ഏതെങ്കിലും തീയതി/സമയ കണ്ണിയിൽ ഞെക്കിയാൽ പ്രസ്തുതസമയത്ത് ഈ പ്രമാണം എങ്ങനെയായിരുന്നു എന്നു കാണാം.',
'filehist-deleteall' => 'എല്ലാം മായ്ക്കുക',
'filehist-deleteone' => 'ഇതു മായ്ക്കുക',
-'filehist-revert' => 'à´ªàµ\82ർവàµ\8dവസàµ\8dഥിതിയിലാക്കുക',
+'filehist-revert' => 'à´ªàµ\81à´¨à´\83à´¸àµ\8dഥാപിക്കുക',
'filehist-current' => 'നിലവിലുള്ളത്',
'filehist-datetime' => 'തീയതി/സമയം',
'filehist-thumb' => 'ലഘുചിത്രം',
'filerevert-intro' => "താങ്കൾ '''[[Media:$1|$1]]''' യെ, [$3, $2 ഉണ്ടായിരുന്ന $4 പതിപ്പിലേക്കു സേവ് ചെയ്യുകയാണ്].",
'filerevert-comment' => 'കാരണം:',
'filerevert-defaultcomment' => '$2 ൽ ഉണ്ടായിരുന്ന $1 പതിപ്പിലേക്കു സേവ് ചെയ്തിരിക്കുന്നു',
-'filerevert-submit' => 'à´ªàµ\82ർവàµ\8dവസàµ\8dഥിതിയിലാക്കുക',
+'filerevert-submit' => 'à´ªàµ\81à´¨à´\83à´¸àµ\8dഥാപിക്കുക',
'filerevert-success' => "'''[[Media:$1|$1]]''' യെ, [$3, $2 ഉണ്ടായിരുന്ന $4] പതിപ്പിലേക്കു സേവ് ചെയ്തിരിക്കുന്നു.",
'filerevert-badversion' => 'താങ്കൾ തന്ന സമയവുമായി യോജിക്കുന്ന മുൻ പതിപ്പുകൾ ഒന്നും തന്നെ ഈ പ്രമാണത്തിനില്ല.',
'notvisiblerev' => 'മറ്റൊരു ഉപയോക്താവ് സൃഷ്ടിച്ച അവസാനത്തെ നാൾപ്പതിപ്പ് മായ്ച്ചിരിക്കുന്നു',
'watchnochange' => 'താങ്കൾ ശ്രദ്ധിക്കുന്ന താളുകൾ ഒന്നും തന്നെ ഇക്കാലയളവിൽ തിരുത്തപ്പെട്ടിട്ടില്ല.',
'watchlist-details' => 'സംവാദം താളുകൾ ഉൾപ്പെടുത്താതെ {{PLURAL:$1|ഒരു താൾ|$1 താളുകൾ}} താങ്കൾ ശ്രദ്ധിക്കുന്നവയുടെ പട്ടികയിലുണ്ട്.',
-'wlheader-enotif' => '* ഇമെയിൽ വിജ്ഞാപനം സാധ്യമാക്കിയിരിക്കുന്നു.',
-'wlheader-showupdated' => "* താങ്കളുടെ അവസാന സന്ദർശനത്തിനു ശേഷം തിരുത്തപ്പെട്ട താളുകൾ '''കടുപ്പിച്ച്''' കാണിച്ചിരിക്കുന്നു",
+'wlheader-enotif' => 'ഇമെയിൽ അറിയിപ്പുകൾ സജ്ജമാക്കിയിരിക്കുന്നു.',
+'wlheader-showupdated' => "താങ്കളുടെ അവസാന സന്ദർശനത്തിനു ശേഷം മാറ്റം വന്ന താളുകൾ '''കടുപ്പിച്ച്''' കാണിച്ചിരിക്കുന്നു",
'watchmethod-recent' => 'ശ്രദ്ധിക്കുന്ന താളുകൾക്കുവേണ്ടി പുതിയ മാറ്റങ്ങൾ പരിശോധിക്കുന്നു',
'watchmethod-list' => 'ശ്രദ്ധിക്കുന്ന താളുകളിലെ പുതിയ മാറ്റങ്ങൾ പരിശോധിക്കുന്നു',
'watchlistcontains' => 'താങ്കൾ {{PLURAL:$1|താൾ|താളുകൾ}} ശ്രദ്ധിക്കുന്നുണ്ട്.',
'mycontris' => 'സംഭാവനകൾ',
'contribsub2' => '$1 എന്ന ഉപയോക്താവിന്റെ $2.',
'nocontribs' => 'ഈ മാനദണ്ഡങ്ങളുമായി യോജിക്കുന്ന മാറ്റങ്ങൾ ഒന്നും കണ്ടില്ല.',
-'uctop' => '(à´\85വസാനതàµ\8dà´¤àµ\86 തിരàµ\81à´¤àµ\8dതൽ)',
+'uctop' => '(നിലവിലàµ\81à´³àµ\8dളതàµ\8d)',
'month' => 'മാസം:',
'year' => 'വർഷം:',
'thumbnail-more' => 'വലുതാക്കി കാണിക്കുക',
'filemissing' => 'പ്രമാണം നഷ്ടമായിരിക്കുന്നു',
'thumbnail_error' => 'ലഘുചിത്രം സൃഷ്ടിക്കുന്നതിൽ പിഴവ്: $1',
+'thumbnail_error_remote' => '$1 സംരംഭത്തിൽ നിന്നുള്ള പിഴവ് സന്ദേശം: $2',
'djvu_page_error' => 'DjVu താൾ പരിധിയ്ക്കു പുറത്താണ്',
'djvu_no_xml' => 'DjVu പ്രമാണത്തിനു വേണ്ടി XML ശേഖരിക്കുവാൻ പറ്റിയില്ല',
'thumbnail-temp-create' => 'താത്കാലിക ലഘുചിത്ര പ്രമാണം സൃഷ്ടിക്കാനായില്ല',
'disclaimers' => 'Татгалзлууд',
'disclaimerpage' => 'Project:Ерөнхий татгалзал',
'edithelp' => 'Засвар хийх тухай тусламж',
-'edithelppage' => 'Help:Засварлах',
'helppage' => 'Help:Агуулга',
'mainpage' => 'Нүүр хуудас',
'mainpage-description' => 'Нүүр хуудас',
# Special:PasswordReset
'passwordreset' => 'Нууц үгийг сэргээх',
-'passwordreset-text' => 'Энэхүү маягтыг бөглөж хэрэглэгчийн мэдээллээ аваарай.',
'passwordreset-legend' => 'Нууц үгээ сэргээх',
'passwordreset-disabled' => 'Энэ вики-д нууц үгийг сэргээх боломжгүй байна.',
-'passwordreset-pretext' => '{{PLURAL:$1||Доорх өгөгдлийн аль нэг хэсгийг оруулна уу}}',
'passwordreset-username' => 'Хэрэглэгчийн нэр:',
'passwordreset-domain' => 'Домайн:',
'passwordreset-capture' => 'Цахим шуудангийн нууц үг сэргээх шууданг үзэх',
'searchmenu-legend' => 'Хайх сонголтууд',
'searchmenu-exists' => "'''Энэ викид \"[[:\$1]]\" гэсэн хуудас байна'''",
'searchmenu-new' => "'''Энэ викид \"[[:\$1]]\" гэсэн хуудсыг үүсгэх!'''",
-'searchhelp-url' => 'Help:Агуулга',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Энэ угтвартай хуудсуудыг гүйлгэж харах]]',
'searchprofile-articles' => 'Агуулгын хуудсууд',
'searchprofile-project' => 'Тусламжийн болон төслийн хуудсууд',
'listusers-noresult' => 'Хэрэглэгч олдсонгүй.',
'listusers-blocked' => '(түгжигдсэн)',
+# Special:ActiveUsers
+'activeusers' => 'Идэвхитэй хэрэглэгчдийн жагсаалт',
+'activeusers-intro' => 'Энэ нь сүүлийн $1 {{PLURAL:$1|өдөрт|өдөрт}} ямар нэг байдлаар үйлдэл хийсэн хэрэглэгчдийн жагсаалт юм.',
+'activeusers-count' => 'Сүүлийн {{PLURAL:$3|нэг өдөрт|$3 өдөрт}} $1 {{PLURAL:$1|засвар|засвар}}',
+'activeusers-from' => 'Хамгийн эхэлж харуулах хэрэглэгч:',
+'activeusers-hidebots' => 'Ботуудыг нуух',
+'activeusers-hidesysops' => 'Администраторуудыг нуух',
+'activeusers-noresult' => 'Хэрэглэгч олдсонгүй.',
+
# Special:ListGroupRights
'listgrouprights' => 'Хэрэглэгчийн бүлгийн эрхүүд',
'listgrouprights-summary' => 'Дараах нь энэ вики дээрх хэрэглэгчийн бүлгүүд болон тэдгээрийн эрх, зөвшөөрлүүдийн жагсаалт юм.
'notvisiblerev' => 'Засвар устгагдлаа',
'watchnochange' => 'Дурьдагдсан хугацаанд таны хянаж буй хуудсуудад өөрчлөлт ороогүй байна.',
'watchlist-details' => 'Хяналтын жагсаалтад {{PLURAL:$1|$1 хуудас|$1 хуудаснууд}} байна.',
-'wlheader-enotif' => '* И-мэйл мэдэгдэл хүчинтэй боллоо.',
-'wlheader-showupdated' => "* Таны хамгийн сүүлд айлчилснаас хойш өөрчлөгдсөн хуудсууд '''тодоор''' бичигдсэн байгаа",
+'wlheader-enotif' => 'И-мэйл мэдэгдэл хүчинтэй боллоо.',
+'wlheader-showupdated' => "Таны хамгийн сүүлд айлчилснаас хойш өөрчлөгдсөн хуудсууд '''тодоор''' бичигдсэн байгаа",
'watchmethod-recent' => 'хяналтад буй хуудсуудад шинэ өөрчлөлт орсон эсэхийг шалгаж байна',
'watchmethod-list' => 'хяналтад буй хуудсуудад саяхан өөрчлөлт орсон эсэхийг шалгаж байна',
'watchlistcontains' => 'Таны хянах жагсаалтанд $1 хуудас байна.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Өргөн',
'exif-imagelength' => 'Өндөр',
'exif-bitspersample' => 'Бүрэлдэхүүн хэсэг бүр дэх бит',
'exif-giffilecomment' => 'GIF файлын тэмдэглэгээ',
'exif-intellectualgenre' => 'Зүйлийн төрөл',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Шахагдаагүй',
'exif-unknowndate' => 'Мэдэгдэхгүй огноо',
'version-software-product' => 'Бүтээгдэхүүн',
'version-software-version' => 'Хувилбар',
-# Special:FilePath
-'filepath' => 'Файлын зам',
-'filepath-page' => 'Файл:',
-'filepath-submit' => 'Явах',
-'filepath-summary' => 'Энэхүү тусгай хуудас нь файлын бүтэн замыг дуудна.
-Зургууд нь бүтэн хэмжээгээрээ гарах ба бусад файлын төрлүүд нь тохирох програмаараа шууд нээгдэнэ.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Давхардсан файлуудыг хайх',
'fileduplicatesearch-summary' => 'Хэш кодыг ашиглан давхардсан файлуудын хайна.',
'grouppage-sysop' => '{{ns:project}}:Администраторь',
+# Special:Log/newusers
+'newuserlogpage' => 'Журнал утилизаторь ной',
+
# User rights log
'rightslog' => 'Журнал дрептурь де утилизатор',
# Special:LinkSearch
'linksearch' => 'Легэтурь екстерне',
-# Special:Log/newusers
-'newuserlogpage' => 'Журнал утилизаторь ной',
-
# Special:ListGroupRights
'listgrouprights-members' => '(листэ де мембрь)',
-# E-mail user
+# Email user
'emailuser' => 'Тримите прин поштэ електроникэ ун месаж ачестуй утилизатор',
# Watchlist
'disclaimers' => 'उत्तरदायित्वास नकार',
'disclaimerpage' => 'Project: सर्वसाधारण उत्तरदायकत्वास नकार',
'edithelp' => 'संपादन साहाय्य',
-'edithelppage' => 'Help:संपादन',
'helppage' => 'Help:आशय',
'mainpage' => 'मुखपृष्ठ',
'mainpage-description' => 'मुखपृष्ठ',
# Special:PasswordReset
'passwordreset' => 'परवलीचा शब्द पूर्ववत करा',
-'passwordreset-text' => 'तुमच्या खात्याच्या माहितीसंदर्भात विपत्राद्वारे अनुस्मारक येण्यासाठी हा अर्ज पूर्ण भरा.',
'passwordreset-legend' => 'परवलीचा शब्द पूर्ववत करा',
'passwordreset-disabled' => 'या विकिवर परवलीचा शब्द पुनर्स्थापित करता येत नाही.',
-'passwordreset-pretext' => '{{PLURAL:$1||खालील माहितीच्या भागांपैकी एक भाग लिहा}}',
'passwordreset-username' => 'सदस्यनाव:',
'passwordreset-domain' => 'डोमेन',
'passwordreset-capture' => 'ईमेल कशी असेल ते बघायचेय ?',
'searchmenu-legend' => 'विकल्प शोधा',
'searchmenu-exists' => "'''या विकिवर \"[[:\$1]]\" या नावाचे पान आहे.'''",
'searchmenu-new' => "'''या विकिवर \"[[:\$1]]\" हे पान तयार करा!'''",
-'searchhelp-url' => 'Help:साहाय्य पृष्ठ',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|या उपसर्गानिशी असलेली पाने न्याहाळा]]',
'searchprofile-articles' => 'संबंधित पाने',
'searchprofile-project' => 'साहाय्य व प्रकल्प पाने',
'listusers-noresult' => 'एकही सदस्य सापडला नाही.',
'listusers-blocked' => '(खंडित)',
+# Special:ActiveUsers
+'activeusers' => 'कार्यरत सदस्यांची यादी',
+'activeusers-intro' => '$1 {{PLURAL:$1|day|days}} मधे शेवटी काम केलेल्या सदस्यांची यादी येथे मिळेल',
+'activeusers-count' => 'शेवटच्या {{PLURAL:$3|दिवसात|$3 दिवसांत}} $1 {{PLURAL:$1|संपादन|संपादने}}',
+'activeusers-from' => 'पुढील शब्दापासून सुरू होणारे सदस्य दाखवा:',
+'activeusers-hidebots' => 'सांगकामे लपवा',
+'activeusers-hidesysops' => 'प्रचालक लपवा',
+'activeusers-noresult' => 'एकही सदस्य सापडला नाही.',
+
# Special:ListGroupRights
'listgrouprights' => 'सदस्य गट अधिकार',
'listgrouprights-summary' => 'खाली या विकिवर दिलेली सदस्य गटांची यादी त्यांच्या अधिकारांसकट दर्शविलेली आहे. प्रत्येकाच्या अधिकारांची अधिक माहिती [[{{MediaWiki:Listgrouprights-helppage}}|इथे]] दिलेली आहे.',
'notvisiblerev' => 'आवृत्ती वगळण्यात आलेली आहे',
'watchnochange' => 'प्रदर्शित कालावधीत, तुम्ही नित्य पहाण्यासाठी ठेवलेली कोणतीही बाब संपादित झाली नाही.',
'watchlist-details' => '{{PLURAL:$1|$1 पान|$1 पाने}} पहाऱ्याच्या सूचीमध्ये, चर्चा पाने मोजलेले नाहीत.',
-'wlheader-enotif' => '* विपत्र सूचना सुविधा उपलब्ध केली.',
-'wlheader-showupdated' => "* तुम्ही पानांस दिलेल्या शेवटच्या भेटी पासून बदललेली पाने '''ठळक''' दाखवली आहेत.",
+'wlheader-enotif' => 'विपत्र सूचना सुविधा उपलब्ध केली.',
+'wlheader-showupdated' => "तुम्ही पानांस दिलेल्या शेवटच्या भेटी पासून बदललेली पाने '''ठळक''' दाखवली आहेत.",
'watchmethod-recent' => 'पहाऱ्यातील पानांकरिता अलीकडील बदलांचा तपास',
'watchmethod-list' => 'अलीकडील बदलांकरिता पहाऱ्यातील पानांचा तपास',
'watchlistcontains' => 'तुमचा $1 {{PLURAL:$1|पानावर|पानांवर}} पहारा आहे.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'रूंदी',
'exif-imagelength' => 'उंची',
'exif-bitspersample' => 'प्रती घटक बीट्स',
'exif-originalimageheight' => 'चित्राचा आकार बदलण्यापुर्वीची उंची',
'exif-originalimagewidth' => 'छाचाचित्राचा आकार बदलण्यापुर्वीची रूंदी',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'अनाकुंचीत',
'exif-compression-2' => 'CCITT गट३ १-Dimensional Modified Huffman run length encoding',
'exif-compression-3' => 'CCITT Group 3 फॅक्स संकेतन',
'version-entrypoints-header-entrypoint' => 'आत येण्याचा मार्ग',
'version-entrypoints-header-url' => 'यू॰आर॰एल',
-# Special:FilePath
-'filepath' => 'संचिका मार्ग',
-'filepath-page' => 'संचिका:',
-'filepath-submit' => 'चला',
-'filepath-summary' => 'हे विशेष पान संचिकेचा संपूर्ण मार्ग कळवते.
-चित्रे संपूर्ण रिझोल्युशन मध्ये दाखवली आहेत,इतर संचिका प्रकार त्यांच्या संबधित प्रोग्रामने प्रत्यक्ष सुरू होतात.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'जुळ्या संचिका शोधा',
'fileduplicatesearch-summary' => 'हॅश किंमतीप्रमाणे जुळ्या संचिका शोधा.',
'tog-shownumberswatching' => 'Манярын ӹлӹштӓшӹм вӓнгӹмӹ списокышкышты пыртенӹт, анжыкташ',
'tog-oldsig' => 'Ылшы сирӹмӹ подписьӹм анзыцок анжен лӓктӓш',
'tog-fancysig' => 'Вики-пӓлӹкӹн ӹшке подписьшӹ (автоматический ажедмӓш гӹц пасна)',
-'tog-externaleditor' => 'Тӱнӹш тӧрлӹшӹм кычылташ (компьютерӹн йори настройкыжы келеш)',
-'tog-externaldiff' => 'Вариантвлӓн тӓнгӓштӓрӹмӹ годым тӱнӹш программым кычылташ (компьютерӹн йори настройкыжы келеш)',
'tog-showjumplinks' => '«ванжаш» палшышы ажедмӓшвлӓм чӱктӓш',
'tog-uselivepreview' => 'Текстӹм пӹсӹн анзыц анжен лӓкмӹм кычылташ (эксперимент семӹнь JavaScript)',
'tog-forceeditsummary' => 'Мам тӧрлӹмӹ тӹ «нырын» охыр ылмыжы гишӓн пӓлдӹртӓш',
'grouppage-sysop' => '{{ns:project}}:Администраторвлӓ',
+# Special:Log/newusers
+'newuserlogpage' => 'Сирӹшӹвлӓм регистрируйышы журнал',
+
# User rights log
'rightslog' => 'Сирӹшӹн прававлӓжӹм анжыктышы журнал',
# Special:LinkSearch
'linksearch' => 'Тӱнӹш ажедмӓшвлӓ',
-# Special:Log/newusers
-'newuserlogpage' => 'Сирӹшӹвлӓм регистрируйышы журнал',
-
# Special:ListGroupRights
'listgrouprights-members' => '(группын списокшы)',
-# E-mail user
+# Email user
'emailuser' => 'Сирӹшӹлӓн сирмӓш',
# Watchlist
'oct' => 'Okt',
'nov' => 'Nov',
'dec' => 'Dis',
+'january-date' => '$1 Januari',
+'february-date' => '$1 Februari',
+'march-date' => '$1 Mac',
+'april-date' => '$1 April',
+'may-date' => '$1 Mei',
+'june-date' => '$1 Jun',
+'july-date' => '$1 Julai',
+'august-date' => '$1 Ogos',
+'september-date' => '$1 September',
+'october-date' => '$1 Oktober',
+'november-date' => '$1 November',
+'december-date' => '$1 Disember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori|Kategori}}',
'create-this-page' => 'Cipta laman ini',
'delete' => 'Hapuskan',
'deletethispage' => 'Hapuskan laman ini',
+'undeletethispage' => 'Nyahhapuskan halaman ini',
'undelete_short' => 'Nyahhapus {{PLURAL:$1|satu suntingan|$1 suntingan}}',
'viewdeleted_short' => 'Papar {{PLURAL:$1|satu|$1}} suntingan dihapuskan',
'protect' => 'Lindung',
'disclaimers' => 'Penolak tuntutan',
'disclaimerpage' => 'Project:Penolak tuntutan umum',
'edithelp' => 'Bantuan menyunting',
-'edithelppage' => 'Help:Menyunting',
'helppage' => 'Help:Kandungan',
'mainpage' => 'Laman Utama',
'mainpage-description' => 'Laman utama',
'namespaceprotected' => "Anda tidak mempunyai keizinan untuk menyunting laman dalam ruang nama '''$1'''.",
'customcssprotected' => 'Anda tidak dibenarkan menyunting laman JavaScript ini kerana ia mengandungi tetapan peribadi pengguna lain.',
'customjsprotected' => 'Anda tidak dibenarkan menyunting laman JavaScript ini kerana ia mengandungi tetapan peribadi pengguna lain.',
+'mycustomcssprotected' => 'Anda tiada kebenaran untuk menyunting halaman CSS ini.',
+'mycustomjsprotected' => 'Anda tiada kebenaran untuk menyunting halaman JavaScript ini.',
'ns-specialprotected' => 'Laman khas tidak boleh disunting.',
'titleprotected' => "Tajuk ini telah dilindungi oleh [[User:$1|$1]] daripada dicipta. Sebab yang diberikan ialah ''$2''.",
'filereadonlyerror' => 'Fail "$1" tidak dapat diubah suai kerana repositori fail "$2" berada dalam ragam baca sahaja.
'yourpassword' => 'Kata laluan:',
'userlogin-yourpassword' => 'Kata laluan',
'userlogin-yourpassword-ph' => 'Masukkan kata laluan anda',
+'createacct-yourpassword-ph' => 'Isikan kata laluan',
'yourpasswordagain' => 'Ulangi kata laluan:',
+'createacct-yourpasswordagain' => 'Sahkan kata laluan',
+'createacct-yourpasswordagain-ph' => 'Isikan kata laluan semula',
'remembermypassword' => 'Ingat log masuk saya pada pelayar ini (tidak melebihi $1 {{PLURAL:$1|hari|hari}})',
-'userlogin-remembermypassword' => 'Ingati saya',
-'userlogin-signwithsecure' => 'Daftar masuk dengan pelayan terlindung',
+'userlogin-remembermypassword' => 'Biar saya kekal log masuk',
+'userlogin-signwithsecure' => 'Gunakan sambungan terlindung',
'securelogin-stick-https' => 'Kekal disambungkan ke HTTPS selepas log masuk',
'yourdomainname' => 'Domain anda:',
'password-change-forbidden' => 'Anda tidak dapat mengubah kata laluan di wiki ini.',
'gotaccount' => "Sudah mempunyai akaun? '''$1'''.",
'gotaccountlink' => 'Log masuk',
'userlogin-resetlink' => 'Lupa nama pengguna/kata laluan anda?',
+'userlogin-resetpassword-link' => 'Reset kata laluan anda',
'helplogin-url' => 'Help:Log masuk',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Bantuan untuk log masuk]]',
+'createacct-join' => 'Isikan keterangan anda di bawah.',
+'createacct-emailrequired' => 'Alamat e-mel',
+'createacct-emailoptional' => 'Alamat e-mel (pilihan)',
+'createacct-email-ph' => 'Isikan alamt e-mel anda',
'createaccountmail' => 'Gunakan kata laluan rawak yang sementara dan hantarnya ke alamat e-mel yang dinyatakan di bawah',
+'createacct-realname' => 'Nama sebenar (pilihan)',
'createaccountreason' => 'Sebab:',
+'createacct-reason' => 'Sebab',
+'createacct-reason-ph' => 'Mengapa anda membuka satu lagi akaun',
+'createacct-captcha' => 'Pemeriksaan sekuriti',
+'createacct-imgcaptcha-ph' => 'Isikan teks yang anda lihat di atas',
+'createacct-submit' => 'Wujudkan akaun anda',
+'createacct-benefit-heading' => '{{SITENAME}} dijayakan oleh orang ramai seperti anda.',
+'createacct-benefit-body1' => '{{PLURAL:$1|suntingan}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|halaman}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|penyumbang}} terkini',
'badretype' => 'Sila ulangi kata laluan dengan betul.',
'userexists' => 'Nama pengguna yang diisikan telah pun digunakan.
Sila pilih nama yang lain.',
'loginerror' => 'Ralat log masuk',
+'createacct-error' => 'Ralat pembukaan akaun',
'createaccounterror' => 'Tidak dapat mencipta akaun: $1',
'nocookiesnew' => 'Akaun anda telah dibuka, tetapi anda belum log masuk. {{SITENAME}} menggunakan kuki untuk mencatat status log masuk pengguna. Sila aktifkan sokongan kuki pada pelayar anda, kemudian log masuk dengan nama pengguna dan kata laluan baru anda.',
'nocookieslogin' => "{{SITENAME}} menggunakan ''cookies'' untuk mencatat status log masuk pengguna. Sila aktifkan sokongan ''cookies'' pada pelayar anda dan cuba lagi.",
'cannotchangeemail' => 'Alamat e-mel akaun tidak boleh diubah di wiki ini.',
'emaildisabled' => 'Tapak ini tidak boleh menghantar e-mel.',
'accountcreated' => 'Akaun dibuka',
-'accountcreatedtext' => 'Akaun pengguna bagi $1 telah dibuka.',
+'accountcreatedtext' => 'Akaun pengguna [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|bual]]) telah dibuka.',
'createaccount-title' => 'Pembukaan akaun {{SITENAME}}',
'createaccount-text' => 'Seseorang telah membuka akaun untuk
alamat e-mel anda di {{SITENAME}} ($4) dengan nama "$2" dan kata laluan "$3".
'resetpass-wrong-oldpass' => 'Kata laluan sementara atau semasa tidak sah.
Anda mungkin telah pun berjaya menukar kata laluan anda atau meminta kata laluan sementara yang baru.',
'resetpass-temp-password' => 'Kata laluan sementara:',
+'resetpass-abort-generic' => 'Penukaran kata laluan telah dihenti paksa oleh sambungan.',
# Special:PasswordReset
'passwordreset' => 'Set semula kata laluan',
-'passwordreset-text' => 'Lengkapkan borang ini untuk mengeset semula kata laluan.',
+'passwordreset-text-one' => 'Lengkapkan borang ini untuk mengeset semula kata laluan anda.',
+'passwordreset-text-many' => '{{PLURAL:$1|Masukkan salah sebahagian data untuk mengeset semula kata laluan anda.}}',
'passwordreset-legend' => 'Set semula kata laluan',
'passwordreset-disabled' => 'Ciri set semula kata laluan telah dimatikan di wiki ini.',
'passwordreset-emaildisabled' => 'Ciri-ciri e-mel telah dipadamkan di wiki ini.',
-'passwordreset-pretext' => '{{PLURAL:$1||Isikan data di bawah}}',
'passwordreset-username' => 'Nama pengguna:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Lihat e-mel yang terhasil?',
'edit-gone-missing' => 'Laman tersebut telah dihapuskan dan tidak dapat dikemaskinikan.',
'edit-conflict' => 'Percanggahan penyuntingan.',
'edit-no-change' => 'Suntingan anda diabaikan kerana tiada perubahan dibuat pada teks tersebut.',
+'postedit-confirmation' => 'Suntingan anda telah disimpan.',
'edit-already-exists' => 'Tidak dapat mencipta laman baru kerana ia telah wujud.',
'defaultmessagetext' => 'Teks mesej asal',
'content-failed-to-parse' => 'Kandungan $2 tidak dapat dihuraikan untuk model $1: $3',
'searchmenu-legend' => 'Pilihan carian',
'searchmenu-exists' => "* Laman '''[[$1]]'''",
'searchmenu-new' => "'''Cipta laman \"[[:\$1]]\" di wiki ini!'''",
-'searchhelp-url' => 'Help:Kandungan',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Senarai laman dengan awalan ini]]',
'searchprofile-articles' => 'Laman kandungan',
'searchprofile-project' => 'Laman bantuan dan projek',
'userrights-changeable-col' => 'Kumpulan yang anda boleh ubah',
'userrights-unchangeable-col' => 'Kumpulan yang anda tak boleh ubah',
'userrights-irreversible-marker' => '$1*',
+'userrights-conflict' => 'Hak-hak pengguna bercanggah! Sila terapkan pengubahan anda sekali lagi.',
+'userrights-removed-self' => 'Anda telah berjaya menggugurkan hak-hak sendiri. Oleh yang demikian, anda tidak boleh mengakses halaman ini lagi.',
# Groups
'group' => 'Kumpulan:',
'right-editusercssjs' => 'Menyunting fail CSS dan JavaScript pengguna lain',
'right-editusercss' => 'Menyunting fail CSS pengguna lain',
'right-edituserjs' => 'Menyunting fail JavaScript pengguna lain',
+'right-editmyusercss' => 'Menyunting fail CSS pengguna sendiri',
+'right-editmyuserjs' => 'Menyunting fail JavaScript pengguna sendiri',
+'right-viewmywatchlist' => 'Melihat senarai pantau sendiri',
+'right-editmywatchlist' => 'Menyunting senarai pantau sendiri. Perhatian: sesetengah tindakan masih akan dapat menambah halaman walaupun tanpa hak ini.',
'right-rollback' => 'Mengundurkan suntigan terakhir bagi laman tertentu',
'right-markbotedits' => 'Menanda suntingan yang diundurkan sebagai suntingan bot',
'right-noratelimit' => 'Tidak dikenakan had kadar penyuntingan',
'action-userrights-interwiki' => 'mengubah hak pengguna dari wiki lain',
'action-siteadmin' => 'mengunci atau membuka kunci pangkalan data wiki ini',
'action-sendemail' => 'menghantar e-mel',
+'action-editmywatchlist' => 'menyunting senarai pantau sendiri',
+'action-viewmywatchlist' => 'melihat senarai pantau sendiri',
# Recent changes
'nchanges' => '$1 perubahan',
'reuploaddesc' => 'Kembali ke borang muat naik',
'upload-tryagain' => 'Serahkan keterangan fail yang telah diubah',
'uploadnologin' => 'Belum log masuk',
-'uploadnologintext' => 'Anda perlu [[Special:UserLogin|log masuk]]
-terlebih dahulu untuk memuat naik fail.',
+'uploadnologintext' => 'Anda mesti $1 untuk memuat naik fail.',
'upload_directory_missing' => 'Direktori muat naik ($1) hilang dan tidak dapat dicipta oleh pelayan web.',
'upload_directory_read_only' => 'Direktori muat naik ($1) tidak boleh ditulis oleh pelayan web.',
'uploaderror' => 'Ralat muat naik',
'notvisiblerev' => 'Semakan ini telah dihapuskan',
'watchnochange' => 'Tiada perubahan pada laman-laman yang dipantau dalam tempoh yang ditunjukkan.',
'watchlist-details' => '$1 laman dipantau (tidak termasuk laman perbincangan).',
-'wlheader-enotif' => '* Pemberitahuan melalui e-mel diaktifkan.',
-'wlheader-showupdated' => "* Laman-laman yang telah diubah sejak kunjungan terakhir anda dipaparkan dalam '''teks tebal'''",
+'wlheader-enotif' => 'Pemberitahuan melalui e-mel dibolehkan.',
+'wlheader-showupdated' => "Laman-laman yang telah diubah sejak kunjungan terakhir anda dipaparkan dalam '''teks tebal'''.",
'watchmethod-recent' => 'menyemak laman yang dipantau dalam suntingan-suntingan terkini',
'watchmethod-list' => 'menyemak suntingan terkini pada laman-laman yang dipantau',
'watchlistcontains' => 'Terdapat $1 laman dalam senarai pantau anda.',
'mycontris' => 'Sumbangan',
'contribsub2' => 'Oleh $1 ($2)',
'nocontribs' => 'Tiada sebarang perubahan yang sepadan dengan kriteria-kriteria ini.',
-'uctop' => '(puncak)',
+'uctop' => '(terkini)',
'month' => 'Sebelum bulan:',
'year' => 'Sebelum tahun:',
'thumbnail-more' => 'Besarkan',
'filemissing' => 'Fail hilang',
'thumbnail_error' => 'Berlaku ralat ketika mencipta gambar kenit: $1',
+'thumbnail_error_remote' => 'Mesej ralat dari $1: $2',
'djvu_page_error' => 'Laman DjVu di luar julat',
'djvu_no_xml' => 'Gagal mendapatkan data XML bagi fail DjVu',
'thumbnail-temp-create' => 'Fail gambar kenit sementara tidak dapat dibuat',
'minutes' => '$1 minit',
'hours' => '$1 jam',
'days' => '$1 hari',
+'weeks' => '$1 minggu',
'months' => '$1 bulan',
'years' => '$1 tahun',
'ago' => '$1 yang lalu',
'just-now' => 'tadi',
+# Human-readable timestamps
+'hours-ago' => '$1 jam yang lalu',
+'minutes-ago' => '$1 minit yang lalu',
+'seconds-ago' => '$1 saat yang lalu',
+'monday-at' => 'Isnin $1',
+'tuesday-at' => 'Selasa $1',
+'wednesday-at' => 'Rabu $1',
+'thursday-at' => 'Khamis $1',
+'friday-at' => 'Jumaat $1',
+'saturday-at' => 'Sabtu $1',
+'sunday-at' => 'Ahad $1',
+'yesterday-at' => 'Semalam $1',
+
# Bad image list
'bad_image_list' => 'Berikut adalah format yang digunakan:
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath Laluan rencana]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath Laluan skrip]',
+# Special:Redirect
+'redirect' => 'Lencongkan mengikut fail, ID pengguna atau ID semakan',
+'redirect-legend' => 'Lencongkan ke fail atau halaman',
+'redirect-summary' => 'Halaman khas ini melencong kepada fail (dengan nama fail), halaman (dengan ID semakan) atau halaman pengguna (dengan ID pengguna berangka).',
+'redirect-submit' => 'Pergi',
+'redirect-lookup' => 'Cari:',
+'redirect-value' => 'Nilai:',
+'redirect-user' => 'ID Pengguna',
+'redirect-revision' => 'Semakan halaman',
+'redirect-file' => 'Nama fail',
+'redirect-not-exists' => 'Nilai tidak dijumpai',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Cari fail serupa',
'fileduplicatesearch-summary' => 'Anda boleh mencari fail serupa berdasarkan nilai cincangannya.',
'htmlform-selectorother-other' => 'Lain-lain',
'htmlform-no' => 'Tidak',
'htmlform-yes' => 'Ya',
+'htmlform-chosen-placeholder' => 'Pilih satu pilihan',
# SQLite database support
'sqlite-has-fts' => '$1 dengan sokongan carian teks penuh',
'disclaimers' => 'Ċaħdiet',
'disclaimerpage' => 'Project:Ċaħda ġenerali',
'edithelp' => 'Gwida',
-'edithelppage' => 'Help:Kif Timmodifika',
'helppage' => 'Help:Kontenut',
'mainpage' => 'Il-Paġna prinċipali',
'mainpage-description' => 'Il-Paġna prinċipali',
Tista' tkompli tuża' {{SITENAME}} bħala utent anonimu, jew tista' terġa <span class='plainlinks'>[$1 tidħol]</span> bħala l-istess utent jew wieħed differenti.
Kun af li ċerti paġni jistgħu jkomplu jidhru bħallikieku l-illogjar 'l barra mill-kont qatt ma seħħ, sakemm ma tħassarx il-cache tal-browser.",
'yourname' => 'Isem tal-utent:',
+'userlogin-yourname' => 'Isem tal-utent',
+'userlogin-yourname-ph' => 'Daħħal l-isem tal-utent tiegħek',
'yourpassword' => 'Password:',
+'userlogin-yourpassword' => 'Password',
+'userlogin-yourpassword-ph' => 'Daħħal il-password tiegħek',
'yourpasswordagain' => "Erġa' ikteb il-password:",
+'createacct-yourpasswordagain' => 'Ikkonferma l-password',
+'createacct-yourpasswordagain-ph' => "Erġa' daħħal il-password",
'remembermypassword' => "Ftakar il-login tiegħi fuq dan il-kompjuter (għal massimu ta' {{PLURAL:$1|ġurnata|$1 ġurnata}})",
+'userlogin-remembermypassword' => 'Żommni fil-kont',
+'userlogin-signwithsecure' => 'Uża konnessjoni sigura',
'securelogin-stick-https' => "Ibqa' konness fuq l-HTTPS wara l-login",
'yourdomainname' => 'Id-dominju tiegħek:',
'externaldberror' => "Kien hemm problema esterna ta' awtentiċitá jew m'għandhekx permess neċċessarju sabiex tagħmel aġġornamenti fuq l-aċċess estern.",
'logout' => 'Oħroġ',
'userlogout' => 'oħroġ',
'notloggedin' => 'Għadek ma dħaltx ġewwa',
+'userlogin-noaccount' => "M'għandekx kont?",
+'userlogin-joinproject' => 'Irreġistra fuq {{SITENAME}}',
'nologin' => "Għad m'għandekx kont? '''$1'''.",
'nologinlink' => 'Oħloq kont',
'createaccount' => 'Oħloq kont',
'gotaccount' => "Diġa għandhek kont? '''$1'''.",
'gotaccountlink' => 'Idħol',
'userlogin-resetlink' => 'Insejt kif tidħol fil-kont tiegħek?',
+'userlogin-resetpassword-link' => 'Irrisettja l-password',
+'helplogin-url' => 'Għajnuna:Kif tirreġistra',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Għajnuna kif tillogja]]',
+'createacct-join' => 'Daħħal l-informazzjoni tiegħek hawn taħt.',
+'createacct-emailoptional' => 'Indirizz elettroniku (fakultattiv)',
+'createacct-email-ph' => 'Daħħal l-indirizz elettroniku tiegħek',
'createaccountmail' => 'bil-posta elettronika',
'createaccountreason' => 'Raġuni:',
+'createacct-captcha' => 'Kontroll tas-sigurtà',
+'createacct-imgcaptcha-ph' => 'Daħħal it-test li qed tara hawn fuq',
+'createacct-submit' => 'Oħloq il-kont',
+'createacct-benefit-heading' => '{{SITENAME}} hi magħmula minn persuni bħalek.',
+'createacct-benefit-body2' => 'paġna',
'badretype' => 'Il-passwords li daħħalt ma jaqblux.',
'userexists' => 'L-isem tal-utent li daħħalt diġà meħud. Jekk jogħġbok, agħżel isem differenti.',
'loginerror' => 'Problemi fil-login',
'nocookiesnew' => "Il-Kont tal-utent għal l-aċċess ġie maħluq, però ma kienx possibli li tagħmel aċċess għal {{SITENAME}} għax il-''cookies'' huma disattivati. Erġa' prova l-aċċess bl-isem tal-utent u l-password wara li tkun attivajt il-''cookies'' tal-''browser''.",
'nocookieslogin' => "L-aċċess għal {{SITENAME}} jagħmel użu minn ''cookies'', li bħalissa huma disattivati. Jekk jogħġbok erġa' prova idħol wara li tkun attivajt il-''cookies'' fil-browser.",
'nocookiesfornew' => "Il-kont ma ġiex maħluq, minħabba li ma stajniex nikkonfermaw is-sors. Assigura ruħek li l-cookies huma attivati, u erġa' tella' l-paġna biex terġa' tipprova.",
-'noname' => "Inti ma speċifikajtx isem ta' utent validu.",
+'noname' => 'L-isem tal-utent li tajt mhuwiex validu.',
'loginsuccesstitle' => "Dħalt b'suċċess",
'loginsuccess' => "'''Irnexxielek taqbad mas-server ta' {{SITENAME}} bl-isem tal-utent \"\$1\".'''",
'nosuchuser' => 'M\'hemm l-ebda utent bl-isem ta\' "$1".<br />
# Special:PasswordReset
'passwordreset' => 'Irrisettja l-password',
-'passwordreset-text' => 'Imla din il-formola sabiex tirċievi notifikazzjoni permezz tal-posta elettronika tad-dettalji tal-kont tiegħek.',
+'passwordreset-text-one' => 'Imla din il-formola sabiex tirrisettja l-password.',
'passwordreset-legend' => 'Irrisettja l-password',
'passwordreset-disabled' => 'L-irrisettjar tal-password fuq din il-wiki ġie diżattivat.',
-'passwordreset-pretext' => "{{PLURAL:$1||Daħħal wieħed mill-biċċiet ta' informazzjoni t'hawn taħt}}",
'passwordreset-username' => 'Isem tal-utent:',
'passwordreset-domain' => 'Dominju:',
'passwordreset-capture' => 'Ara l-kontenut tal-messaġġ?',
Jidher li din ġiet imħassra.',
'edit-conflict' => 'Kunflitt tal-editjar.',
'edit-no-change' => 'Il-modifika li għamilt ġiet injorata, minħabba li ebda bidla ma saret lejn it-test.',
+'postedit-confirmation' => 'Il-modifika tiegħek ġiet salvata.',
'edit-already-exists' => 'Ma tistax tinħoloq din il-paġna.
Din teżisti diġà.',
'editwarning-warning' => 'Jekk tħalli din il-paġna jista\' jwassal sabiex titlef kwalunkwe tibdil li tkun għamilt. Jekk int tinsab fil-kont tiegħek, tista\' tneħħi dan l-avviż fis-sezzjoni "Modifiki" tal-preferenzi tiegħek.',
'revdelete-only-restricted' => "L-oġġett bid-data $1 $2 ma jistax jinħeba: ma tistax taħbi oġġetti minn għajnejn l-amministraturi mingħajr ma tagħżel waħda mill-opzjonijiet ta' viżibilità.",
'revdelete-reason-dropdown' => "*Raġunijiet komuni għat-tħassir
** Vjolazzjoni ta' copyright
-** Informazzjoni personali inapproprjata
+** Kumment jew informazzjoni personali mhux xierqa
+** Isem tal-utent mhux xieraq
** Informazzjoni potenzjalment libelluża",
'revdelete-otherreason' => 'Raġuni oħra/addizzjonali:',
'revdelete-reasonotherlist' => 'Raġuni oħra',
'searchmenu-legend' => 'Preferenzi għat-tfittxija',
'searchmenu-exists' => "'''Hemm paġna bl-isem ta' \"[[:\$1]]\" fuq din il-wiki'''",
'searchmenu-new' => "'''Oħloq il-paġna \"[[:\$1]]\" fuq din il-wiki!'''",
-'searchhelp-url' => 'Help:Kontenut',
'searchmenu-prefix' => "[[Special:PrefixIndex/$1|Uri l-paġni b'dan il-prefiss]]",
'searchprofile-articles' => "Paġni ta' kontenut",
'searchprofile-project' => "Paġni ta' għajnuna u ta' proġett",
'filerevert-legend' => "Erġa' lura għall-fajl",
'filerevert-intro' => "Inti qiegħed terġa lura għal fajl '''[[Media:$1|$1]]''' fil-[verżjoni $4 minn $3, $2].",
'filerevert-comment' => 'Raġuni:',
-'filerevert-defaultcomment' => "Mort lura għal verżjoni ta' $2, $1",
+'filerevert-defaultcomment' => "Irkuprata l-verżjoni ta' $2, $1",
'filerevert-submit' => 'Ġib lura',
-'filerevert-success' => "'''Il-Fajl [[Media:$1|$1]]''' ġie restorat għal [verżjoni $4 minn $3, $2].",
+'filerevert-success' => "'''Il-fajl [[Media:$1|$1]]''' ġie irkuprat lura għall-[$4 verżjoni tal-$2, $3].",
'filerevert-badversion' => "M'hemmx verżjoni lokali tal-fajl aktar riċenti b'timbru tal-ħin rikjest.",
# File deletion
'listusers-noresult' => 'L-ebda utent ma nstab.',
'listusers-blocked' => '(imblukkat)',
+# Special:ActiveUsers
+'activeusers' => 'Lista tal-utenti attivi',
+'activeusers-intro' => "Din hija lista ta' utenti li kellhom xi tip ta' attività f'dawn l-aħħar $1 {{PLURAL:$1|ġurnata|ġurnata}}.",
+'activeusers-count' => '$1 {{PLURAL:$1|modifika|modifika}} fl-aħħar {{PLURAL:$3|jum|$3 jum}}',
+'activeusers-from' => 'Uri utenti li jibdew minn:',
+'activeusers-hidebots' => 'Aħbi l-bots',
+'activeusers-hidesysops' => 'Aħbi amministraturi',
+'activeusers-noresult' => 'L-ebda utent ma nstab.',
+
# Special:ListGroupRights
'listgrouprights' => 'Drittijiet tal-grupp tal-utenti',
'listgrouprights-summary' => "Hawn taħt hawn elenkati l-gruppi tal-utenti għal din il-wiki, bid-drittijiet ta' aċċess rispettiv.
'notvisiblerev' => 'Ir-reviżjoni tħassret',
'watchnochange' => 'L-ebda waħda mill-paġni osservati tiegħek ma ġiet modifikata fil-ħin stipulat.',
'watchlist-details' => "Il-lista ta' osservazzjoni fiha {{PLURAL:$1|paġna waħda (u l-paġna ta' diskussjoni tagħha)|$1 paġni (u l-paġni ta' diskussjoni tagħhom)}}.",
-'wlheader-enotif' => '* In-notifikazzjoni bl-użu tal-posta elettronika hija attivata.',
-'wlheader-showupdated' => "* Il-paġni li ġew editjati wara l-aħħar żjara tiegħek qed jiġu murija b'tipa '''ħoxna'''",
+'wlheader-enotif' => 'In-notifikazzjoni bl-użu tal-posta elettronika hija attivata.',
+'wlheader-showupdated' => "Il-paġni li ġew editjati wara l-aħħar żjara tiegħek qed jiġu murija b'tipa '''ħoxna'''",
'watchmethod-recent' => "Kontroll ta' modifiki riċenti għall-osservati speċjali.",
'watchmethod-list' => 'Kontroll tal-osservati speċjali għal modifiki riċenti',
'watchlistcontains' => "Il-lista ta' osservazzjoni fiha {{PLURAL:$1|paġna|$1 paġni}}.",
'dellogpage' => 'Tħassir',
'dellogpagetext' => 'Hawn taħt hawn lista tal-paġni li ġew imħassra riċentament.',
'deletionlog' => 'reġistru tat-tħassir',
-'reverted' => 'Mort lura għal verżjoni preċedenti',
+'reverted' => 'Irkuprata l-verżjoni preċedenti',
'deletecomment' => 'Raġuni:',
'deleteotherreason' => 'Raġunijiet oħra/addizzjonali:',
'deletereasonotherlist' => 'Raġuni oħra',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => "Wisa'",
'exif-imagelength' => 'Għoli',
'exif-bitspersample' => 'Bits għal kull komponent',
'exif-originalimageheight' => 'Għoli tal-istampa qabel ma ġiet maqtugħa',
'exif-originalimagewidth' => "Wisa' tal-istampa qabel ma ġiet maqtugħa",
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'L-Ebda',
'exif-copyrighted-true' => 'Protetta bil-copyright',
'version-entrypoints-header-entrypoint' => "Punt ta' dħul",
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Post tal-fajl',
-'filepath-page' => 'Fajl:',
-'filepath-submit' => 'Mur',
-'filepath-summary' => "Din il-paġna speċjali tagħti lura l-indirizz komplet tal-posta għal fajl.
-Stampi huwa mogħrija b'risoluzzjoni sħiħa, tipi tal-fajl oħrajn jibdew bil-program assoċjat magħhom direttament.",
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Fittex fajls duplikati',
'fileduplicatesearch-summary' => "Fittex fajls duplikati fil-bażi għal valur ''hash''.",
'logentry-delete-event' => "$1 biddel il-viżibilità ta' {{PLURAL:$5|azzjoni tar-reġistru|$5 azzjonijiet tar-reġistru}} ta' $3: $4",
'revdelete-content-hid' => 'kontenut moħbi',
'revdelete-summary-hid' => 'taqsira moħbija',
-'revdelete-uname-hid' => 'isem tal-uten moħbi',
+'revdelete-uname-hid' => 'isem tal-utent moħbi',
'revdelete-content-unhid' => 'kontenut muri mill-ġdid',
'revdelete-summary-unhid' => 'taqsira murija mill-ġdid',
'revdelete-uname-unhid' => 'isem tal-utent muri mill-ġdid',
'tog-enotifrevealaddr' => 'Rebelar l miu andereço de correio eiletrónico nas noteficaçones',
'tog-shownumberswatching' => "Amostrar l númaro d'outelizadores a begiar",
'tog-fancysig' => 'Tratar assinatura cumo wikitesto (sin lhigaçon outomática)',
-'tog-externaleditor' => 'Por oumisson, outelizar un eiditor sterno (solo para outelizadores abançados, eisige cunfiguraçones adecionales ne l tou cumputador)',
-'tog-externaldiff' => 'Por oumisson, outelizar defrenças sternas (solo para outelizadores abançados, eisige cunfiguraçones adicionales ne l tou cumputador)',
'tog-showjumplinks' => 'Posseblitar lhigaçones d\'acessibelidade "{{ant:jumpto}}"',
'tog-uselivepreview' => "Ousar l'antebison an tiempo rial (JavaScrit) (Spurmental)",
'tog-forceeditsummary' => 'Abisar-me al antroduzir un sumairo bazio',
'disclaimers' => 'Abiso de Cuntenido',
'disclaimerpage' => 'Project:Abiso giral',
'edithelp' => 'Ajuda de eidiçon',
-'edithelppage' => 'Help:Eiditar',
'helppage' => 'Help:Cuntenidos',
'mainpage' => 'Páigina Percipal',
'mainpage-description' => 'Páigina Percipal',
'prevn' => 'anteriores {{PLURAL:$1|$1}}',
'nextn' => 'próssimos {{PLURAL:$1|$1}}',
'viewprevnext' => 'Ber ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Conteúdos',
'searchprofile-images' => 'Multimédia',
'searchprofile-everything' => 'Todo',
'searchprofile-advanced' => 'Abançado',
'listgrouprights-rights' => 'Dreitos',
'listgrouprights-members' => '(lista de nembros)',
-# E-mail user
+# Email user
'emailuser' => 'Ambiar carta eiletrónica a este outelizador',
'emailfrom' => 'De:',
'emailto' => 'Para:',
Premite ajuntar la rezon de la eidiçon ne l sumário.',
# Skin names
-'skinname-standard' => 'Clássico',
-'skinname-nostalgia' => 'Suidade',
'skinname-cologneblue' => 'Azul',
'skinname-monobook' => 'Lhibro',
-'skinname-myskin' => 'Piel',
-'skinname-chick' => 'Cipe-Çape',
-'skinname-simple' => 'Simpre',
'skinname-modern' => 'Moderno',
# Browsing diffs
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Ancho',
'exif-imagelength' => 'Altura',
'exif-imagedescription' => 'Títalo de la eimaige',
'version-software-product' => 'Perduto',
'version-software-version' => 'Berson',
-# Special:FilePath
-'filepath' => 'Camino de l fexeiro',
-'filepath-page' => 'Fexeiro',
-'filepath-submit' => 'Camino',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Nome de l fexeiro',
'fileduplicatesearch-submit' => 'Percurar',
'disclaimers' => 'သတိပြုစရာများ',
'disclaimerpage' => 'Project: အထွေထွေ သတိပြုဖွယ်',
'edithelp' => 'ပြင်ဆင်ရန် အကူအညီ',
-'edithelppage' => 'Help: တည်းဖြတ်ခြင်း',
'helppage' => 'Help: မာတိကာ',
'mainpage' => 'ဗဟိုစာမျက်နှာ',
'mainpage-description' => 'ဗဟိုစာမျက်နှာ',
'searchmenu-legend' => 'ရှာဖွေရန် ရွေးချယ်မှု',
'searchmenu-exists' => "'''ဤဝီကီတွင် \"[[:\$1]]\" အမည်နှင့် စာမျက်နှာတစ်ခုရှိသည်။'''",
'searchmenu-new' => "'''ဤဝီကီတွင် \"[[:\$1]]\" အမည်နှင့် စာမျက်နှာကို ဖန်တီးပါ။'''",
-'searchhelp-url' => 'Help: မာတိကာ',
'searchprofile-articles' => 'မာတိကာစာမျက်နှာများ',
'searchprofile-project' => 'အကူအညီနှင့် ပရောဂျက်စာမျက်နှာများ',
'searchprofile-images' => 'မာလတီမီဒီယာ',
'powersearch-togglenone' => 'အမည်ညွှန်းမရှိ',
'search-external' => 'အပြင်တွင် ရှာရန်',
-# Quickbar
-'qbsettings-none' => 'အမည်ညွှန်းမရှိ',
-'qbsettings-fixedleft' => 'ဘယ်ဘက်ကို အသေထားရန်',
-'qbsettings-fixedright' => 'ညာဘက်ကို အသေထားရန်',
-'qbsettings-floatingleft' => 'ဘယ်ဘက်ကို အရှင်ထားရန်',
-'qbsettings-floatingright' => 'ညာဘက်ကို အရှင်ထားရန်',
-
# Preferences page
'preferences' => 'ရွေးချယ်စရာများ',
'mypreferences' => 'ရွေးချယ်စရာများ',
'prefs-displaywatchlist' => 'ပြသရန် ရွေးချယ်မှု',
'prefs-diffs' => 'ကွဲပြားချက်',
-# User preference: e-mail validation using jQuery
+# User preference: email validation using jQuery
'email-address-validity-valid' => 'အီးမေးလိပ်စာ တရားဝင်ပုံပေါ်သည်',
'email-address-validity-invalid' => 'တရားဝင်အီးမေးလိပ်စာတစ်ခု ထည့်ပါ',
# HTTP errors
'http-invalid-url' => 'တရားမဝင်သော URL လင့် - $1',
-'http-host-unreachable' => 'URL လင့်သို့ သွားမရပါ။',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'URL လင့်သို့ သွားမရပါ',
'listgrouprights-addgroup-self-all' => 'အုပ်စုအားလုံးကို မိမိ၏အကောင့်သို့ ပေါင်းထည့်ရန်',
'listgrouprights-removegroup-self-all' => 'မိမိ၏အကောင့်မှ အုပ်စုအားလုံးကို ဖယ်ရှားရန်',
-# E-mail user
+# Email user
'mailnologin' => 'ပို့ရန်လိပ်စာ မရှိပါ',
'emailuser' => 'ဤအသုံးပြုသူအားအီးမေးပို့ပါ',
'emailpage' => 'အီးမေးအသုံးပြုသူ',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'အကျယ်',
'exif-imagelength' => 'အမြင့်',
'exif-bitspersample' => 'အစိတ်အပိုင်းတစ်ခုတွင်ပါဝင်သော အပိုင်းငယ်များ',
'monthsall' => 'အားလုံး',
'limitall' => 'အားလုံး',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => 'အီးမေးကိုအတည်ပြုပါ',
'confirmemail_send' => 'အတည်ပြုချက်ကုတ်ကို အီးမေးပို့ပေးရန်',
'version-software-product' => 'ထုတ်ကုန်',
'version-software-version' => 'ဗားရှင်း',
-# Special:FilePath
-'filepath' => 'ဖိုင်လမ်းကြောင်း',
-'filepath-page' => 'ဖိုင်:',
-'filepath-submit' => 'သွား',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'နှစ်ခုထပ်နေသောဖိုင်များကို ရှာရန်',
'fileduplicatesearch-legend' => 'နှစ်ခုထပ်နေသည်ကို ရှာရန်',
'tog-shownumberswatching' => 'Невтемс зяро теицятнеде, конат аравтызь лопанть эсест ванома лемрисьментень',
'tog-oldsig' => 'Уликс кедьпутовксось:',
'tog-fancysig' => 'Лемпутовксось прок викитекст (сонсь теевиця сюлмавома певтеме)',
-'tog-externaleditor' => 'Нолдамс тевс ушоёнонь витнемканть, зярс лиякс апак аравто (ансяк тевень содыйтненень, арсий машинасот эрявить башка ёнкст-аравтомат [//www.mediawiki.org/wiki/Manual:External_editors подробнее])',
-'tog-externaldiff' => 'Нолдамс тевс ушоёнонь diff, зярс лиякс апак аравто (ансяк тевень содыйтненень, арсий машинасот эрявить башка ёнкст-аравтомат [//www.mediawiki.org/wiki/Manual:External_editors подробнее])',
'tog-showjumplinks' => 'Меремс "тёкадемс" маласпонгомань сюлмавомапетнес',
'tog-uselivepreview' => 'Максомс эряй васнянь невтевкс (JavaScript) (Варчамонь)',
'tog-forceeditsummary' => 'Невтик монень, мезе сёрмадомс витнемадо-петнемадо ёвтамонь вальминентень',
'disclaimers' => 'Видечинь кортамотне',
'disclaimerpage' => 'Project:Видечинь прякс кортнема',
'edithelp' => 'Витнемань-петнемань лезкс',
-'edithelppage' => 'Help:Витнема-петнема',
'helppage' => 'Help:Лопась мезе кирди',
'mainpage' => 'Прякслопа',
'mainpage-description' => 'Прякслопа',
'searchmenu-legend' => 'Вешнемань аравтомкат',
'searchmenu-exists' => "'''Те викисэнть ули \"[[\$1]]\" лем марто лопа'''",
'searchmenu-new' => "'''Шкик \"[[:\$1]]\" лопанть те викисэнть!'''",
-'searchhelp-url' => 'Help:Лопась мезе кирди',
'searchprofile-articles' => 'Потмокс лопат',
'searchprofile-project' => 'Лезкс ды проекттэ лопат',
'searchprofile-images' => 'Мультимедия',
'listusers-noresult' => 'Совицязо а муеви',
'listusers-blocked' => '(саймас саезь)',
+# Special:ActiveUsers
+'activeusers' => 'Активной теицятнеде списка',
+'activeusers-hidebots' => 'Кекшемс ботатнень',
+'activeusers-hidesysops' => 'Кекшемс администратортнэнь',
+'activeusers-noresult' => 'Якинзэ-пакинзэ арасть',
+
# Special:ListGroupRights
'listgrouprights' => 'Теиця куронть видечинзэ',
'listgrouprights-group' => 'Куро',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Келе',
'exif-imagelength' => 'Сэрь',
'exif-bitspersample' => 'Эрьва компонентс зяро битт',
'exif-languagecode' => 'Кель',
'exif-iimcategory' => 'Явовкс',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Апак сювордо',
'exif-unknowndate' => 'Апак содань чи',
'version-software-product' => 'Шкавкс-нолдавкс',
'version-software-version' => 'Верзия',
-# Special:FilePath
-'filepath' => 'Файлас яннэ',
-'filepath-page' => 'Файлась:',
-'filepath-submit' => 'Ютак',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Вешнэмс кавтаське файлат',
'fileduplicatesearch-legend' => 'Вешнэмс кавтаське',
'tog-shownumberswatching' => 'دمبالکرونِ سِراق هدائن',
'tog-oldsig' => 'پیش نیمایش ایمضای موجود:',
'tog-fancysig' => 'ایمضا ره ویکی متن نظر بیرین (بدون لینک هایتن)',
-'tog-externaleditor' => 'به شیکل پیش فرض خارجی ویرایشگرون جه ایستیفاده بواشه',
-'tog-externaldiff' => 'ایستیفاده از تفاوتگیر جه (diff) خارجی بهطور پیشفرض.',
'tog-showjumplinks' => 'فعال هکردن بپرسنی پیوندون مندرجات فهرست دله',
'tog-uselivepreview' => 'ایستیفاده از پیش نیمایش زنده (جاوا اسکریپ) (جدیده)',
'tog-forceeditsummary' => 'زمونی که خولاصه دچیین ره ننویشتمه مه ره بائو',
'disclaimers' => 'تکذیبنومهئون',
'disclaimerpage' => 'Project:تکذیبنومه',
'edithelp' => 'دچیین رانما',
-'edithelppage' => 'Help:دَچیین',
'helppage' => 'Help:راهنما',
'mainpage' => 'گت صفحه',
'mainpage-description' => 'گت صفحه',
# Video information, used by Language::formatTimePeriod() to format lengths in the above messages
'video-dims' => '$1, $2×$3',
-# EXIF tags
+# Exif tags
'exif-gpsareainformation' => 'جی پی اس ناحیه نوم',
'exif-gpsdatestamp' => 'جی پی اس روز',
'exif-gpsdifferential' => 'جی پی اس پهچهک درس هأکهردن',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'فهشورده نئی',
'exif-unknowndate' => 'نهشناسی روز',
'currentevents-url' => 'Project:Āxcāncāyōtl',
'disclaimers' => 'Nahuatīllahtōl',
'edithelp' => 'Tlapatlaliztechcopa tēpalēhuiliztli',
-'edithelppage' => 'Help:¿Quēn motlahcuiloa cē zāzanilli?',
'helppage' => 'Help:Tlapiyaliztli',
'mainpage' => 'Achkàuhìxtlapalli',
'mainpage-description' => 'Achkàuhìxtlapalli',
'viewprevnext' => 'Xiquintta ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-exists' => "'''Ye ia zāzanilli ītōca \"[[\$1]]\" inīn huiquipan'''",
'searchmenu-new' => "'''Tihuelīti ticchīhuāz zāzanilli ītōca \"[[:\$1]]\" inīn huiquipan'''",
-'searchhelp-url' => 'Help:Tlapiyaliztli',
'searchprofile-articles' => 'Tlapiyaliztli zāzanilli',
'searchprofile-project' => 'Tēpalēhuiliztli īhuān īxiptlahtli āmatl',
'searchprofile-images' => 'Nepapan media',
'metadata-expand' => 'Tiquittāz tlanōnōtzaliztli huehca ōmpa',
'metadata-collapse' => 'Tictlātīz tlanōnōtzaliztli huehca ōmpa',
-# EXIF tags
+# Exif tags
'exif-photometricinterpretation' => 'Pixel tlachīhualiztli',
'exif-imagedescription' => 'Īxiptli ītōcā',
'exif-software' => 'Software ōmotēquitilti',
'version-version' => '(Machiyōtzin $1)',
'version-software-version' => 'Machiyōtzin',
-# Special:FilePath
-'filepath-page' => 'Tlahcuilōlli:',
-'filepath-submit' => 'Yāuh',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Tlahcuilōlli ītōcā:',
'fileduplicatesearch-submit' => 'Tlatēmōz',
'disclaimers' => 'Bô-hū-chek seng-bêng',
'disclaimerpage' => 'Project:It-poaⁿ ê seng-bêng',
'edithelp' => 'Án-choáⁿ siu-kái',
-'edithelppage' => 'Help:Pian-chi̍p',
'helppage' => 'Help:Bo̍k-lio̍k',
'mainpage' => 'Thâu-ia̍h',
'mainpage-description' => 'Thâu-ia̍h',
'nextn' => 'āu {{PLURAL:$1|$1}} hāng',
'shown-title' => 'Múi ia̍h hián-sī $1 {{PLURAL:$1|kiat-kó|kiat-kó}}',
'viewprevnext' => 'Khoàⁿ ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Bo̍k-lio̍k',
'searchprofile-articles' => 'Loē-iông ia̍h',
'searchprofile-images' => 'To-mûi-thé',
'searchprofile-everything' => 'Só͘-ū ê',
* @file
*
* @author Carmine Colacino
+ * @author Chelin
* @author Cryptex
* @author E. abu Filumena
+ * @author PiRSquared17
* @author SabineCretella
* @author לערי ריינהארט
*/
'tog-underline' => "Sottolinia 'e jonte:",
'tog-justify' => "Alliniamento d''e paracrafe mpare",
'tog-hideminor' => "Annascunne 'e cagne piccirille 'int'a ll'úrdeme cagne",
-'tog-extendwatchlist' => "Spanne ll'asservate speciale pe fà vedé tutte 'e cagne possíbbele",
-'tog-usenewrc' => 'Urdeme cagne avanzate (JavaScript)',
+'tog-hidepatrolled' => "Annascunne 'e cagne 'verificate' 'int'a ll'úrdeme cagne",
+'tog-extendwatchlist' => "Spanne ll'asservate speciale pe fà vedé tutte 'e cagnàmiente, nun solo l'ultimo",
+'tog-usenewrc' => 'Urdeme càgnamiente avanzate (JavaScript)',
'tog-numberheadings' => "Annúmmera automatecamente 'e títule",
'tog-showtoolbar' => "Aspone 'a barra d''e stromiente 'e cagno (JavaScript)",
'tog-editondblclick' => "Cagna 'e pàggene cliccanno ddoje vote (JavaScript)",
'tog-editsection' => "Permette 'e cagnà 'e sezzione cu a jonta [cagna]",
'tog-editsectiononrightclick' => "Permette 'e cangne 'e sezzione cliccanno p''o tasto destro ncopp 'e titule 'e sezzione (JavaScript)",
'tog-showtoc' => "Mosta ll'innece pe 'e paggene cu cchiù 'e 3 sezzione",
-'tog-rememberpassword' => "Ricurda 'a registrazzione pe' cchiu sessione (for a maximum of $1 {{PLURAL:$1|day|days}})",
+'tog-rememberpassword' => "Ricurda 'a registrazzione pe' cchiu sessione (ppe 'numassimo 'e $1 {{PLURAL:$1|juorno|juorne}})",
'underline-always' => 'Sèmpe',
'underline-never' => 'Màje',
'dec' => 'dic',
# Categories related messages
+'pagecategories' => '{{PLURAL:$1|Categurìa|Categurìe}}',
'category_header' => 'Paggene rìnt\'a categurìa "$1"',
'subcategories' => 'Categurìe secunnarie',
+'category-media-header' => 'File \'int\'â categuría "$1"',
+'hidden-categories' => '{{PLURAL:$1|Categurìa annascusa|Categuríe annascuse}}',
+'category-subcat-count' => "{{PLURAL:$2|Chesta categurìa cuntene n'unneca sottocategurìa, nzignata 'e seguito.|Chesta categurìa cuntene {{PLURAL:$1|'a sottocategurìa nzignata|'e $1 sottocategurìe nzignate}} 'e seguito, 'a nu totale 'e $2.}}",
+'category-article-count' => "{{PLURAL:$2|Chesta categurìa cuntiene un'unneca paggena, nzignata ccà sotto.|Chesta categurìa cuntiene {{PLURAL:$1|'a paggena nzignata|'e $1 paggene nzignate}} ccà sotto, faccenno nu totale 'e $2.}}",
+'listingcontinuesabbrev' => 'cont.',
'about' => 'Nfromma',
'article' => 'Articulo',
'newwindow' => "(s'arape n'ata fenèsta)",
'cancel' => 'Scancèlla',
-'mypage' => "'A paggena mia",
-'mytalk' => "'E mmie chiacchieriàte",
+'moredotdotdot' => 'Cchiù...',
+'mypage' => 'Paggena',
+'mytalk' => "'E mmie chiàcchieriate",
'anontalk' => 'Chiacchierate pe chisto IP',
+'navigation' => 'Navigazzione',
# Cologne Blue skin
'qbfind' => 'Truòva',
'qbedit' => 'Càgna',
'qbpageoptions' => 'Chesta paggena',
-'qbpageinfo' => "Nfrummazzione ncopp'â paggena",
'qbmyoptions' => "'E ppaggene mie",
'qbspecialpages' => 'Pàggene speciàle',
+'faq' => 'FAQ',
+
+# Vector skin
+'vector-action-delete' => 'Scancèlla',
+'vector-action-move' => 'Spusta',
+'vector-action-protect' => 'Prutegge',
+'vector-view-create' => 'Cria',
+'vector-view-edit' => 'Càgna',
+'vector-view-history' => 'Vere cronologgia',
+'vector-view-view' => 'Legge',
+'vector-view-viewsource' => 'Vere sorgente',
+'actions' => 'Azione',
+'namespaces' => 'Namespace',
+'variants' => 'Variante',
'errorpagetitle' => 'Sbaglio',
'returnto' => 'Torna a $1.',
+'tagline' => 'Dda {{SITENAME}}.',
'help' => 'Ajùto',
'search' => 'Truova',
'searchbutton' => 'Truova',
'go' => 'Vàje',
+'searcharticle' => 'Vàje',
'history' => "Verziune 'e primma",
'history_short' => 'Cronologgia',
'printableversion' => "Verzione pe' stampa",
'permalink' => 'Jonta permanente',
'edit' => 'Càgna',
+'create' => 'Cria',
'editthispage' => 'Càgna chesta paggena',
+'create-this-page' => 'Cria sta paggena',
'delete' => 'Scancèlla',
'deletethispage' => 'Scancèlla chésta paggena',
'protect' => 'Ferma',
+'protect_change' => 'càgna',
'protectthispage' => 'Ferma chesta paggena',
-'unprotect' => 'Sferma',
-'unprotectthispage' => 'Sferma chesta paggena',
+'unprotect' => 'Càgna prutezzione',
+'unprotectthispage' => "Càgna prutezzione 'e chesta paggena",
'newpage' => 'Paggena nòva',
'talkpage' => "Paggena 'e chiàcchiera",
'talkpagelinktext' => 'Chiàcchiera',
'specialpage' => 'Paggena speciàle',
+'personaltools' => 'Strumiente perzonale',
+'postcomment' => 'Nova sezzione',
+'articlepage' => 'Vere a paggena e contenuto',
'talk' => 'Chiàcchiera',
+'views' => 'Visite',
'toolbox' => 'Strumiente',
-'imagepage' => 'Paggena fiùra',
+'userpage' => 'Vere a paggena utente',
+'imagepage' => 'Vere a paggena ddo file',
'otherlanguages' => 'Ate léngue',
'redirectedfrom' => "(Redirect 'a $1)",
'lastmodifiedat' => "Urdema cagnamiénto pe' a paggena: $2, $1.",
'viewcount' => 'Chesta paggena è stata lètta {{PLURAL:$1|una vòta|$1 vòte}}.',
+'protectedpage' => 'Paggena prutetta',
'jumpto' => 'Vaje a:',
'jumptonavigation' => 'navigazione',
'jumptosearch' => 'truova',
# 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) and the disambiguation template definition (see disambiguations).
'aboutsite' => "'Nfrummazione ncòpp'a {{SITENAME}}",
'aboutpage' => "Project:'Nfrummazione",
+'copyrightpage' => '{{ns:project}}:Copyrights',
+'currentevents' => 'Novità',
+'currentevents-url' => 'Project:Novità',
'disclaimers' => 'Avvertimiènte',
'disclaimerpage' => 'Project:Avvertimiènte generale',
'edithelp' => 'Guida',
+'edithelppage' => 'Help:Càgna',
'helppage' => 'Help:Ajùto',
'mainpage' => 'Paggena prencepale',
'mainpage-description' => 'Paggena prencepale',
'portal' => "Porta d''a cummunetà",
'portal-url' => "Project:Porta d''a cummunetà",
+'privacy' => "'Nformazzione ppe a privacy",
+'privacypage' => "Project:'Nfrummazione ncopp'â privacy",
'badaccess' => "Nun haje 'e premmesse abbastante.",
+'retrievedfrom' => 'Estratto \'e "$1"',
+'youhavenewmessages' => 'Haje $1 ($2).',
'newmessageslink' => "nuove 'mmasciàte",
'newmessagesdifflink' => "differenze cu 'a revisione precedente",
'youhavenewmessagesmulti' => 'Tiene nuove mmasciate $1',
'editsection' => 'càgna',
'editold' => 'càgna',
+'editlink' => 'càgna',
+'viewsourcelink' => 'Vere sorgente',
+'editsectionhint' => 'Modifica a sezzione $1',
'toc' => 'Énnece',
'showtoc' => 'faje vedé',
'hidetoc' => 'annascunne',
'viewdeleted' => 'Vire $1?',
+'site-atom-feed' => "Feed Atom 'e $1",
+'red-link-title' => '$1 (a paggena nun esiste)',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'Articulo',
'nstab-user' => 'Paggena utente',
+'nstab-special' => 'Paggena speciale',
'nstab-project' => "Paggena 'e servizio",
'nstab-image' => 'Fiura',
'nstab-mediawiki' => "'Mmasciata",
+'nstab-template' => 'Modello',
'nstab-help' => 'Ajùto',
'nstab-category' => 'Categurìa',
'filedeleteerror' => 'Nun se pô scancellà \'o file "$1"',
'cannotdelete' => "Nun è possibbele scassà 'a paggena o 'a fiura addamannata. (Putria éssere stato già scancellato.)",
'badtitle' => "'O nnomme nun è jùsto",
+'viewsource' => 'Vere sorgente',
+'exception-nologin' => 'Acciesso nun affettuato',
# Login and logout pages
'logouttext' => "'''Site asciùte.'''
Putite cuntinuà a ausà {{SITENAME}} comme n'utente senza nomme, o si nò putite trasì n'ata vota, cu 'o stesso nomme o cu n'ato nomme.",
-'welcomecreation' => "== Bemmenuto, $1! ==
-
-'O cunto è stato criato currettamente. Nun scurdà 'e perzonalizzà 'e ppreferenze 'e {{SITENAME}}.",
+'welcomeuser' => 'Bemmenuto, $1!',
+'yourname' => 'Nomme utente',
+'yourpassword' => 'Password:',
'remembermypassword' => 'Allicuordate d"a password (for a maximum of $1 {{PLURAL:$1|day|days}})',
'yourdomainname' => "Spiecà 'o dumminio",
'login' => 'Tràse',
+'nav-login-createaccount' => "Tràse o cria n'acciesso nuovo",
'userlogin' => "Tràse o cria n'acciesso nuovo",
+'userloginnocreate' => 'Tràse',
'logout' => 'Jèsce',
'userlogout' => 'Jèsce',
'notloggedin' => 'Acciesso nun affettuato',
'loginlanguagelabel' => 'Lengua: $1',
# Edit page toolbar
+'italic_sample' => 'Corsivo',
+'italic_tip' => 'Corsivo',
+'link_sample' => 'Titulo ddo cullegamente',
+'extlink_sample' => 'http://www.example.com titulo ddo cullegamente',
+'headline_sample' => 'Testate',
+'headline_tip' => "Testate 'e 2° livello",
'image_sample' => 'Essempio.jpg',
'image_tip' => 'Fiura ncuorporata',
+'media_tip' => 'Cullegamente a file multimediale',
# Edit pages
'minoredit' => 'Chisto è nu cagnamiénto piccerillo',
'loginreqpagetext' => "Pe' veré ate ppaggene abbesognate $1.",
'accmailtitle' => "'O password è stato mannato.",
'accmailtext' => '\'A password pe ll\'utente "$1" fuje mannata ô nnerizzo $2.',
-'previewnote' => "'''Chesta è sola n'anteprimma; 'e cagnamiénte â paggena NUN songo ancora sarvate!'''",
+'newarticle' => '(Novo)',
+'previewnote' => "'''Chesta è sola n'anteprimma; 'e cagnamiénte â paggena nun songo ancora sarvate!'''",
'editing' => "Cagnamiento 'e $1",
-'templatesused' => "Template ausate 'a chesta paggena:",
+'editingsection' => 'Cagnamiénto di $1 (sezzione)',
+'templatesused' => "{{PLURAL:$1|Template|Templates}} ausate 'a chesta paggena:",
+'template-protected' => '(prutetto)',
# "Undo" feature
'undo-summary' => "Canciella 'o cagnamiento $1 'e [[Special:Contributions/$2|$2]] ([[User talk:$2|Chiàcchiera]])",
# History pages
'currentrev' => "Verzione 'e mmo",
+'currentrev-asof' => 'Vversione attuale dde $1',
+'revisionasof' => 'Vversione delle $1',
+'nextrevision' => 'Vversione cchiù recente →',
+'cur' => 'corr',
+'last' => 'prec',
+
+# Revision feed
+'history-feed-item-nocomment' => "$1 'o $2",
# Revision deletion
'rev-delundel' => 'faje vedé/annascunne',
+'revdel-restore' => 'càgna visiblità',
+
+# Diffs
+'lineno' => 'Riga $1:',
+'editundo' => 'annulla',
# Search results
'searchresults' => "Risultato d''a recerca",
+'searchresults-title' => 'Ascià risultate ppe "$1"',
'searchresulttext' => "Pe sapé de cchiù ncopp'â comme ascia 'a {{SITENAME}}, vere [[{{MediaWiki:Helppage}}|Ricerca in {{SITENAME}}]].",
'notitlematches' => "Voce addemannata nun truvata dint' 'e titule 'e articulo",
'notextmatches' => "Voce addemannata nun truvata dint' 'e teste 'e articulo",
+'prevn' => '{{PLURAL:$1|precedente|precedente $1}}',
+'nextn' => '{{PLURAL:$1|successivo|successive $1}}',
+'prevn-title' => '{{PLURAL:$1|Risultato precediente|$1 risultate precedenti}}',
+'nextn-title' => '{{PLURAL:$1|Risultato successivo|$1 risultate successive}}',
+'shown-title' => "Fa vere {{PLURAL:$1|'nu risultato|$1 risultate}} ppe paggena",
+'viewprevnext' => 'Vere($1 {{int:pipe-separator}} $2) ($3).',
+'searchmenu-new' => "'''Cria a paggena \"[[:\$1]]\" ncopp'â chisto wiki!'''",
'searchhelp-url' => 'Help:Ajùto',
+'searchprofile-articles' => "Paggene 'e contenute",
+'searchprofile-project' => "Paggene 'e ajùto e relative 'o prugietto",
+'searchprofile-images' => 'Multimedia',
+'searchprofile-everything' => 'Tutto',
+'searchprofile-advanced' => 'Avanzate',
+'searchprofile-articles-tooltip' => "Circa dint'ô $1",
+'searchprofile-project-tooltip' => "Circa dint'ô $1",
+'searchprofile-images-tooltip' => 'Circa file',
+'searchprofile-advanced-tooltip' => "Circa dint'e namespace perzonalizzate",
+'search-result-size' => "$1 ({{PLURAL:$2|'na parola|$2 parole}})",
+'search-redirect' => '(redirect $1)',
+'search-section' => '(sezzione $1)',
+'searchall' => 'Tutte',
'powersearch' => 'Truova',
# Preferences page
-'mypreferences' => "Preferenze d''e mie",
+'mypreferences' => "Preferenze d''e mmeje",
'changepassword' => 'Cagna password',
'prefs-rc' => 'Urdeme nove',
'prefs-watchlist' => 'Asservate speciale',
'columns' => 'Culonne:',
'timezoneregion-africa' => 'Afreca',
+'youremail' => 'E-mail:',
'username' => 'Nomme utente',
'yourlanguage' => 'Lengua:',
-# User rights log
-'rightsnone' => '(nisciuno)',
+# Associated actions - in the sentence "You do not have permission to X"
+'action-edit' => 'càgna chesta paggena',
# Recent changes
'recentchanges' => 'Urdeme nove',
'recentchanges-summary' => "Ncoppa chesta paggena song' appresentate ll'urdeme cagnamiente fatto ê cuntenute d\"o sito.",
-'rcnote' => "Ccà sotto nce songo ll'urdeme {{PLURAL:$1|cangiamiento|'''$1''' cangiamiente}} 'e ll'urdeme {{PLURAL:$2|juorno|'''$2''' juorne}}, agghiuornate a $3.",
+'recentchanges-label-newpage' => "Chista modifica ha criato 'na nova paggena",
+'recentchanges-label-minor' => 'Chisto è nu cagnamiénto piccerillo',
+'rcnote' => "Ccà sotto nce songo ll'urdeme {{PLURAL:$1|cangiamiento|'''$1''' cangiamiente}} 'e ll'urdeme {{PLURAL:$2|juorno|'''$2''' juorne}}, agghiuornate alle $5 ddo $4.",
'rclistfrom' => "Faje vedé 'e cagnamiénte fatte a partì 'a $1",
'rcshowhideminor' => "$1 'e cagnamiénte piccerille",
'rcshowhidebots' => "$1 'e bot",
'rcshowhideanons' => "$1 ll'utente anonime",
'rcshowhidemine' => "$1 'e ffatiche mmee",
'rclinks' => "Faje vedé ll'urdeme $1 cagnamiente dint' ll'urdeme $2 juorne<br />$3",
+'diff' => 'diff',
+'hist' => 'cron',
'hide' => 'annascunne',
'show' => 'faje vedé',
+'minoreditletter' => 'm',
+'newpageletter' => 'N',
+'boteditletter' => 'b',
'rc_categories_any' => 'Qualònca',
# Recent changes linked
'recentchangeslinked' => 'Cagnamiénte cullegate',
'recentchangeslinked-feed' => 'Cagnamiénte cullegate',
'recentchangeslinked-toolbox' => 'Cagnamiénte cullegate',
+'recentchangeslinked-page' => 'Nomme dda paggena',
# Upload
'upload' => 'Careca file',
'uploadedimage' => 'ha carecato "[[$1]]"',
+'license' => 'Licenze:',
+'license-header' => 'Licenza',
+
# Special:ListFiles
'listfiles_name' => 'Nomme',
# File description page
'file-anchor-link' => 'Fiura',
+'filehist-current' => 'attuale',
+'filehist-datetime' => 'Data/Ora',
+'filehist-thumb' => 'Miniature',
'filehist-user' => 'Utente',
+'filehist-dimensions' => 'Dimenzione',
'imagelinks' => 'Jonte ê ffiure',
# Random page
'randompage' => 'Na paggena qualsiase',
'randompage-nopages' => 'Nessuna pagina nel namespace selezionato.',
+# Statistics
+'statistics' => 'Statistiche',
+
'disambiguations' => "Paggene 'e disambigua",
'doubleredirects' => 'Redirect duppie',
'wantedpages' => 'Paggene cchiù addemannate',
'shortpages' => 'Paggene curte',
'longpages' => 'Paggene cchiú longhe',
+'usercreated' => "{{GENDER:$3|Criato/a}} 'o $1 a $2",
'newpages' => 'Paggene cchiù frische',
'move' => 'Spusta',
'movethispage' => 'Spusta chesta paggena',
+# Book sources
+'booksources-go' => 'Vàje',
+
+# Special:Log
+'log' => 'Logs',
+
# Special:AllPages
'allpages' => "Tutte 'e ppaggene",
+'alphaindexline' => 'da $1 a $2',
'allarticles' => "Tutt' 'e vvoce",
'allinnamespace' => "Tutt' 'e ppaggene d''o namespace $1",
+'allpagessubmit' => 'Vàje',
# Special:Categories
'categories' => 'Categurìe',
'linksearch-ok' => 'Truova',
# Watchlist
+'mywatchlist' => 'osservate speciale',
+'watchlistfor2' => 'Ppe $1 $2',
'watch' => 'Secuta',
+'unwatch' => 'Nun segui',
'notanarticle' => 'Chesta paggena nun è na voce',
-'enotif_newpagetext' => 'Chesta è na paggena nòva.',
'changed' => 'cagnata',
# Delete
# Rollback
'rollback' => "Ausa na revizione 'e primma",
+'rollbacklink' => 'a vascio',
'revertpage' => "Cangiaje 'e cagnamiénte 'e [[Special:Contributions/$2|$2]] ([[User talk:$2|discussione]]), cu â verzione 'e pprimma 'e [[User:$1|$1]]",
# Protect
# Undelete
'viewdeletedpage' => "Vìre 'e ppàggine scancellate",
+'undeleteviewlink' => 'vere',
# Namespace form on various pages
+'namespace' => 'Namespace:',
'invert' => "abbarruca 'a sceveta",
+'blanknamespace' => '(Prencepale)',
# Contributions
-'contributions' => 'Contribbute utente',
-'mycontris' => 'Mie contribbute',
+'contributions' => 'Contribbute {{GENDER:$1|utente}}',
+'mycontris' => "'E ffatiche d''e mmeje",
+'uctop' => '(ultima ppe a paggena)',
'sp-contributions-talk' => 'Chiàcchiera',
+'sp-contributions-submit' => 'Truova',
# What links here
'whatlinkshere' => 'Paggene ca cullegano a chesta',
'whatlinkshere-title' => 'Paggene ca cullegano a $1',
+'whatlinkshere-page' => 'Paggena:',
'nolinkshere' => "Nisciuna paggena cuntene jonte ca mpuntano a '''[[:$1]]'''.",
+'whatlinkshere-links' => '← jonte',
+'whatlinkshere-hideredirs' => '$1 redirects',
+'whatlinkshere-hideimages' => '$1 links ddo file',
# Block/unblock
'blockip' => 'Ferma utelizzatóre',
'ipboptions' => '2 ore:2 hours,1 juorno:1 day,3 juorne:3 days,1 semmana:1 week,2 semmane:2 weeks,1 mise:1 month,3 mese:3 months,6 mese:6 months,1 anno:1 year,infinito:infinite',
'blockipsuccesssub' => 'Blocco aseguito',
'blocklink' => 'ferma',
+'unblocklink' => 'sblocca',
+'contribslink' => 'contribuzzione',
'blocklogpage' => 'Blocche',
'blocklogentry' => 'ha fermato "[[$1]]" pe\' nu mumento \'e $2 $3',
'blocklogtext' => "Chesta è 'a lista d''e azzione 'e blocco e sblocco utente. 'E nnerizze IP bloccate automaticamente nun nce so'. Addumannà 'a [[Special:BlockList|lista IP bloccate]] pp' 'a lista d''e nnerizze e nomme utente 'o ca blocco nce sta.",
'movepagebtn' => "Spusta 'a paggena",
'articleexists' => "Na paggena cu chisto nomme asiste già, o pure 'o nomme scegliuto nun è buono. Scegliere n'ato titulo.",
'movedto' => 'spustata a',
+'movelogpage' => 'Spustamente',
'movereason' => 'Raggióne',
+'revertmove' => 'ripristina',
'delete_and_move' => 'Scancèlla e spusta',
'delete_and_move_confirm' => "Sì, suprascrivi 'a paggena asistente",
'allmessagesname' => 'Nomme',
'allmessagescurrent' => "Testo 'e mo",
+# Thumbnails
+'thumbnail-more' => 'Ingrandisce',
+
# Special:Import
'import' => 'Mpurta paggene',
'import-interwiki-submit' => 'Mpurta',
'import-logentry-upload' => 'ha mpurtato [[$1]] trammeto upload',
# Tooltip help for the actions
+'tooltip-pt-mycontris' => 'Elenco dde tuje contributte',
+'tooltip-pt-login' => 'A reggistrazione e consegliata',
'tooltip-pt-logout' => 'Jésce (logout)',
+'tooltip-ca-edit' => "Puo modifica chista paggena. Ppe favore usa 'o pulsante 'e anteprimma primma 'e salva",
+'tooltip-ca-addsection' => "Cummincia 'na nova sezzione",
+'tooltip-ca-viewsource' => "Chista paggena è prutetta, ma puo vere 'o codice sorgente",
+'tooltip-ca-history' => "Vversione precedente 'e chista paggena",
+'tooltip-ca-move' => 'Spusta chista paggena',
+'tooltip-search' => "Truova dint'ô {{SITENAME}}",
+'tooltip-search-fulltext' => "Ascià 'o testo indicato dint'e paggene",
+'tooltip-p-logo' => 'Visita a paggena prencepale',
+'tooltip-n-mainpage' => 'Visita a paggena prencepale',
+'tooltip-n-mainpage-description' => 'Visita a paggena prencepale',
+'tooltip-n-portal' => 'Descrizione ddo prugietto, che pou fa, addo truova e cose',
+'tooltip-n-recentchanges' => 'Ennece dde urdeme cagnamiénte ddo sito',
+'tooltip-n-randompage' => 'Na paggena qualsiase',
+'tooltip-n-help' => "Paggena 'e ajùto",
+'tooltip-t-recentchangeslinked' => 'Urdeme cagnamiénte dde paggene ca cullegano a chesta',
+'tooltip-t-upload' => 'Careca file',
+'tooltip-t-specialpages' => "Lista 'e tutte e paggene speciale",
+'tooltip-t-print' => "Vversione pe' stampa 'e chista paggena",
+'tooltip-t-permalink' => 'Jonta permanente a chista vversione dda paggena',
+'tooltip-ca-nstab-main' => 'Vere a paggena e contenuto',
+'tooltip-ca-nstab-template' => "Vere 'o modello",
'tooltip-minoredit' => 'Rénne chìsto cagnamiénto cchiù ppiccirìllo.',
'tooltip-save' => "Sàrva 'e cagnamiénte.",
'tooltip-preview' => "Primma 'e sarvà, vìre primma chille ca hê cagnàte!",
+'tooltip-rollback' => "\"A vascio\" annulla 'e modefeche 'e chista paggena ell'ultimo contributore cu n' uneco click",
# Attribution
'others' => 'ate',
+# Media information
+'file-info-size' => '$1 × $2 pixel, dimenzione ddo file: $3, tipo MIME: $4',
+'show-big-image' => 'Vversione ad ata risoluzione',
+
# Special:NewFiles
'noimages' => "Nun nc'è nind' 'a veré.",
'ilsubmit' => 'Truova',
+# Metadata
+'metadata' => 'Metadate',
+
'exif-xyresolution-i' => '$1 punte pe pollice (dpi)',
'exif-meteringmode-0' => 'Scanusciuto',
'edit-externally-help' => "Pe piglià cchiù nfromma veré 'e [//www.mediawiki.org/wiki/Manual:External_editors struzione] ('n ngrese)",
# 'all' in various places, this might be different for inflected languages
+'watchlistall2' => 'tutte',
'namespacesall' => 'Tutte',
+'monthsall' => 'tutte',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail_needlogin' => "Abbesognate $1 pe cunfirmà 'o nnerizzo 'e e-mail d''o vuosto.",
'confirmemail_loggedin' => "'O nnerizzo 'e e-mail è vàleto",
# Auto-summaries
'autoredircomment' => 'Redirect â paggena [[$1]]',
-'autosumm-new' => 'Paggena nuova: $1',
+'autosumm-new' => "Paggena criate ch''o: $1",
# Special:SpecialPages
'specialpages' => 'Paggene speciale',
+# New logging system
+'rightsnone' => '(nisciuno)',
+
);
* @author Purodha
* @author Qaqqalik
* @author Samuelsen
+ * @author Simen47
* @author Simny
* @author Sjurhamre
* @author Stigmj
'tog-diffonly' => 'Ikke vis sideinnhold under differ',
'tog-showhiddencats' => 'Vis skjulte kategorier',
'tog-norollbackdiff' => 'Ikke vis diff etter tilbakestilling',
-'tog-useeditwarning' => 'Si ifra dersom jeg forlater en side jeg har gjort redigeringer på men ikke har lagret siden.',
+'tog-useeditwarning' => 'Si ifra dersom jeg forlater en side uten å lagre den.',
'underline-always' => 'Alltid',
'underline-never' => 'Aldri',
-'underline-default' => 'Nettleserens standardinnstillinger',
+'underline-default' => 'Drakta eller nettleserens standardinnstillinger',
# Font style option in Special:Preferences
'editfont-style' => 'Skrifttype i redigeringsboksen:',
'editfont-default' => 'Nettleserstandard',
-'editfont-monospace' => 'Skrift med fast bredde',
-'editfont-sansserif' => 'Sans-serif',
-'editfont-serif' => 'Serif',
+'editfont-monospace' => 'Fastbredde skrifttype',
+'editfont-sansserif' => 'Sans-serif skrifttype',
+'editfont-serif' => 'Serif skrifttype',
# Dates
'sunday' => 'søndag',
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'des',
+'january-date' => '$1. januar',
+'february-date' => '$1. februar',
+'march-date' => '$1. mars',
+'april-date' => '$1. april',
+'may-date' => '$1. mai',
+'june-date' => '$1. juni',
+'july-date' => '$1. juli',
+'august-date' => '$1. august',
+'september-date' => '$1. september',
+'october-date' => '$1. oktober',
+'november-date' => '$1. november',
+'december-date' => '$1. desember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori|Kategorier}}',
'create-this-page' => 'Opprett denne siden',
'delete' => 'Slett',
'deletethispage' => 'Slett denne siden',
+'undeletethispage' => 'Legg tilbake siden',
'undelete_short' => 'Gjenopprett {{PLURAL:$1|én revisjon|$1 revisjoner}}',
'viewdeleted_short' => 'Vis {{PLURAL:$1|én slettet redigering|$1 slettede redigeringer}}',
'protect' => 'Beskytt',
'disclaimers' => 'Forbehold',
'disclaimerpage' => 'Project:Generelle forbehold',
'edithelp' => 'Redigeringshjelp',
-'edithelppage' => 'Help:Redigering',
'helppage' => 'Help:Innhold',
'mainpage' => 'Hovedside',
'mainpage-description' => 'Hovedside',
'namespaceprotected' => "Du har ikke tillatelse til å redigere sider i navnerommet '''$1'''.",
'customcssprotected' => 'Du har ikke tillatelse til å redigere denne CSS-siden fordi den inneholder en annen brukers personlige innstillinger.',
'customjsprotected' => 'Du har ikke tillatelse til å redigere denne JavaScript-siden fordi den inneholder en annen brukers personlige innstillinger.',
+'mycustomcssprotected' => 'Du har ikke rettigheter til å redigere denne CSS-siden.',
+'mycustomjsprotected' => 'Du har ikke rettigheter til å redigere denne Javascript-siden.',
'ns-specialprotected' => 'Spesialsider kan ikke redigeres.',
'titleprotected' => "Denne tittelen har blitt låst for oppretting av [[User:$1|$1]].
Den angitte grunnen er «''$2''».",
'welcomecreation-msg' => 'Kontoen din har blitt opprettet.
Ikke glem å endre [[Special:Preferences|innstillingene dine]] på {{SITENAME}}.',
'yourname' => 'Brukernavn:',
-'userlogin-yourname' => 'Brukernan',
+'userlogin-yourname' => 'Brukernavn',
'userlogin-yourname-ph' => 'Skriv inn brukernavnet ditt',
'yourpassword' => 'Passord:',
'userlogin-yourpassword' => 'Passord',
'userlogin-yourpassword-ph' => 'Skriv inn passordet ditt',
+'createacct-yourpassword-ph' => 'Skriv inn et passord',
'yourpasswordagain' => 'Gjenta passord',
+'createacct-yourpasswordagain' => 'Bekreft passord',
+'createacct-yourpasswordagain-ph' => 'Skriv inn passordet igjen',
'remembermypassword' => 'Husk meg på denne datamaskinen (i maks $1 {{PLURAL:$1|dag|dager}})',
-'userlogin-remembermypassword' => 'Husk brukernavn og passord',
+'userlogin-remembermypassword' => 'Hold meg innlogget',
'userlogin-signwithsecure' => 'Logg inn med sikker tjener',
'securelogin-stick-https' => 'Vær fortsatt koblet til HTTPS etter innlogging',
'yourdomainname' => 'Ditt domene',
'gotaccount' => 'Har du allerede en konto? $1.',
'gotaccountlink' => 'Logg inn',
'userlogin-resetlink' => 'Har du glemt påloggingsdetaljene dine?',
+'userlogin-resetpassword-link' => 'Tilbakestill passordet ditt',
'helplogin-url' => 'Help:Innlogging',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hjelp med innlogging]]',
+'createacct-join' => 'Skriv inn informasjonen din under.',
+'createacct-emailrequired' => 'E-postadresse',
+'createacct-emailoptional' => 'E-postadresse (valgfritt)',
+'createacct-email-ph' => 'Skriv inn e-postadressen din',
'createaccountmail' => 'Bruk et midlertidig tilfeldig passord, og send det til e-postadressen nedenfor',
+'createacct-realname' => 'Virkelig navn (valgfritt)',
'createaccountreason' => 'Årsak:',
+'createacct-reason' => 'Årsak',
+'createacct-reason-ph' => 'Hvorfor lager du en annen bruker',
+'createacct-captcha' => 'Sikkerhetssjekk',
+'createacct-imgcaptcha-ph' => 'Skriv inn teksten du ser ovenfor',
+'createacct-submit' => 'Opprett konto',
+'createacct-benefit-heading' => '{{SITENAME}} er laget av folk som deg.',
+'createacct-benefit-body1' => '{{PLURAL:$1|redigering|redigeringer}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|side|sider}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|nylig bidragsyter|nylige bidragsytere}}',
'badretype' => 'Passordene samsvarte ikke.',
'userexists' => 'Brukernavnet er allerede i bruk.
Velg et annet brukernavn.',
'loginerror' => 'Innloggingsfeil',
+'createacct-error' => 'Feil med kontoppretting',
'createaccounterror' => 'Kunne ikke opprette konto: $1',
'nocookiesnew' => 'Din brukerkonto er nå opprettet, men du har ikke logget på. {{SITENAME}} bruker informasjonskapsler («cookies») for å logge brukere på og du har slått dem av. Slå dem på for å kunne logge på med ditt nye brukernavn og passord.',
'nocookieslogin' => '{{SITENAME}} bruker informasjonskapsler («cookies») for å logge brukere på og du har slått dem av. Slå dem på og prøv igjen.',
'cannotchangeemail' => 'E-postadresser knyttet til brukerkontoer kan ikke endres på denne wikien.',
'emaildisabled' => 'Dette nettstedet kan ikke sende e-poster.',
'accountcreated' => 'Konto opprettet',
-'accountcreatedtext' => 'Brukerkontoen for $1 har blitt opprettet.',
+'accountcreatedtext' => 'Brukerkontoen for [[{{ns:Bruker}}:$1|$1]] ([[{{ns:Brukerdiskusjon}}:$1|diskusjon]]) har blitt opprettet.',
'createaccount-title' => 'Kontooppretting på {{SITENAME}}',
'createaccount-text' => 'Noen opprettet en konto for din e-postadresse på {{SITENAME}} ($4) med navnet «$2», med «$3» som passord. Du burde logge inn og endre passordet nå.
'resetpass-wrong-oldpass' => 'Ugyldig midlertidig eller nåværende passord.
Du kan ha allerede byttet passordet, eller bedt om et nytt midlertidig passord.',
'resetpass-temp-password' => 'Midlertidig passord:',
+'resetpass-abort-generic' => 'Endring av passord har blitt avbrutt av en utvidelse.',
# Special:PasswordReset
'passwordreset' => 'Passordresetting',
-'passwordreset-text' => 'Fyll ut dette skjemaet for å tilbakestille passordet ditt.',
+'passwordreset-text-one' => 'Fyll ut skjemaet for å tilbakestille passordet',
+'passwordreset-text-many' => '{{PLURAL:$1|Fyll inn et av datafeltene for å tilbakestille ditt passord.}}',
'passwordreset-legend' => 'Nullstill passord',
'passwordreset-disabled' => 'Nullstilling av passord er deaktivert på denne wikien.',
'passwordreset-emaildisabled' => 'E-posttjenester er slått av på denne wikien.',
-'passwordreset-pretext' => '{{PLURAL:$1||Skriv inn en av datadelene nedenfor}}',
'passwordreset-username' => 'Brukernavn:',
'passwordreset-domain' => 'Domene:',
'passwordreset-capture' => 'Vise resulterende e-post?',
'edit-gone-missing' => 'Kunne ikke oppdatere siden fordi den har blitt slettet.',
'edit-conflict' => 'Redigeringskonflikt.',
'edit-no-change' => 'Redigeringen din ble ignorert fordi det ikke var noen endringer.',
+'postedit-confirmation' => 'Redigeringen din ble lagret.',
'edit-already-exists' => 'Kunne ikke opprette ny side fordi den finnes fra før.',
'defaultmessagetext' => 'Standard meldingstekst',
'content-failed-to-parse' => 'Klarte ikke å tolke innholdet $2 for innholdsmodellen $1: $3',
'searchmenu-legend' => 'Søkeinnstillinger',
'searchmenu-exists' => "* Siden '''[[$1]]'''",
'searchmenu-new' => "'''Opprett siden ''[[:$1]]'' på denne wikien.'''",
-'searchhelp-url' => 'Help:Hjelp',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Vis alle sider som begynner med dette]]',
'searchprofile-articles' => 'Innholdssider',
'searchprofile-project' => 'Hjelp- og prosjektsider',
'userrights-changeable-col' => 'Grupper du kan endre',
'userrights-unchangeable-col' => 'Grupper du ikke kan endre',
'userrights-irreversible-marker' => '$1 *',
+'userrights-conflict' => 'En konflikt med brukerrettighetene! Vennligst legg til endringene dine igjen.',
# Groups
'group' => 'Gruppe:',
'right-editusercssjs' => 'Redigere andre brukeres CSS- og JS-filer',
'right-editusercss' => 'Redigere andre brukeres CSS-filer',
'right-edituserjs' => 'Redigere andre brukeres JS-filer',
+'right-editmyusercss' => 'Rediger dine egne CSS-filer',
+'right-editmyuserjs' => 'Rediger dine egne Javascript-filer',
'right-rollback' => 'Raskt tilbakestille den siste brukeren som har redigert en gitt side',
'right-markbotedits' => 'Markere tilbakestillinger som robotredigeringer',
'right-noratelimit' => 'Påvirkes ikke av hastighetsgrenser',
# File description page
'file-anchor-link' => 'Fil',
'filehist' => 'Filhistorikk',
-'filehist-help' => 'Klikk på en dato/klokkeslett for å se filen slik den var da.',
+'filehist-help' => 'Klikk på et tidspunkt for å vise filen slik den var på det tidspunktet.',
'filehist-deleteall' => 'slett alt',
'filehist-deleteone' => 'slett',
'filehist-revert' => 'tilbakestill',
'notvisiblerev' => 'Revisjonen er slettet',
'watchnochange' => 'Ingen av sidene i overvåkningslisten er endret i den valgte perioden.',
'watchlist-details' => '{{PLURAL:$1|Én side|$1 sider}} på din overvåkningsliste, teller ikke diskusjonssider.',
-'wlheader-enotif' => '* E-postnotifikasjon er slått på.',
-'wlheader-showupdated' => "* Sider som har blitt forandret siden du sist besøkte dem vises i '''fet tekst'''",
+'wlheader-enotif' => 'E-postvarsling er slått på.',
+'wlheader-showupdated' => "Sider som har blitt forandret siden du sist besøkte dem vises i '''fet tekst'''",
'watchmethod-recent' => 'sjekker siste endringer for sider i overvåkningslisten',
'watchmethod-list' => 'sjekker siste endringer for sider i overvåkningslisten',
'watchlistcontains' => 'Overvåkningslisten inneholder $1 {{PLURAL:$1|side|sider}}.',
'thumbnail-more' => 'Forstørr',
'filemissing' => 'Filen mangler',
'thumbnail_error' => 'Feil under oppretting av miniatyrbilde: $1',
+'thumbnail_error_remote' => 'Feilmelding fra $1:
+$2',
'djvu_page_error' => 'DjVu-side ute av rekkevidde',
'djvu_no_xml' => 'Klarte ikke å hente XML for DjVu-fil',
'thumbnail-temp-create' => 'Kan ikke opprette midlertidig miniatyrbildefil',
'minutes' => '{{PLURAL:$1|$1 minutt|$1 minutter}}',
'hours' => '{{PLURAL:$1|$1 time|$1 timer}}',
'days' => '{{PLURAL:$1|$1 dag|$1 dager}}',
+'weeks' => '{{PLURAL:$1|$1 uke|$1 uker}}',
'months' => '{{PLURAL:$1|$1 måned|$1 måneder}}',
'years' => '{{PLURAL:$1|$1 år}}',
'ago' => '$1 siden',
'just-now' => 'nettopp',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|time|timer}} siden',
+'minutes-ago' => '$1 {{PLURAL:$1|minutt|minutter}} siden',
+'seconds-ago' => '$1 {{PLURAL:$1|sekund|sekunder}} siden',
+'monday-at' => 'Mandag kl. $1',
+'tuesday-at' => 'Tirsdag kl. $1',
+'wednesday-at' => 'Onsdag kl. $1',
+'thursday-at' => 'Torsdag kl. $1',
+'friday-at' => 'Fredag kl. $1',
+'saturday-at' => 'Lørdag kl. $1',
+'sunday-at' => 'Søndag kl. $1',
+'yesterday-at' => 'I går kl. $1',
+
# Bad image list
'bad_image_list' => 'Formatet er som følger:
'version-entrypoints-header-entrypoint' => 'Inngangspunkt',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect' => 'Omdiriger via filnavn, bruker, eller versjonsid',
+'redirect-legend' => 'Omdiriger til en fil eller side',
+'redirect-summary' => 'Denne spesialsiden omdirigerer til en fil (hvis den gis et filnavn), en side (hvis den gis et versjonsnummer), eller en brukerside (hvis den gis en nummerisk brukerid).',
+'redirect-submit' => 'Gå',
+'redirect-lookup' => 'Oppslag:',
+'redirect-value' => 'Verdi:',
+'redirect-user' => 'Bruker-ID',
+'redirect-revision' => 'Sideversjon',
+'redirect-file' => 'Filnavn',
+'redirect-not-exists' => 'Verdi er ikke funnet',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Søk etter duplikatfiler',
'fileduplicatesearch-summary' => 'Søk etter duplikatfiler basert på dets hash-verdi.',
'htmlform-selectorother-other' => 'Andre',
'htmlform-no' => 'Nei',
'htmlform-yes' => 'Ja',
+'htmlform-chosen-placeholder' => 'Velg et alternativ',
# SQLite database support
'sqlite-has-fts' => '$1 med støtte for fulltekstsøk',
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Bearbeidenshülp',
-'edithelppage' => 'Help:Ännern',
'helppage' => 'Help:Hülp',
'mainpage' => 'Hööftsiet',
'mainpage-description' => 'Hööftsiet',
'logout' => 'Afmellen',
'userlogout' => 'Afmellen',
'notloggedin' => 'Nich anmellt',
-'nologin' => "Wenn du noch keen Brukerkonto hest, denn kannst di anmellen: '''$1'''.",
+'nologin' => 'Wenn du noch keen Brukerkonto hest, denn kannst di anmellen: $1.',
'nologinlink' => 'Brukerkonto inrichten',
'createaccount' => 'Nieg Brukerkonto anleggen',
'gotaccount' => "Hest Du al en Brukerkonto? '''$1'''.",
'searchmenu-legend' => 'Söökoptionen',
'searchmenu-exists' => "* Sied '''[[$1]]'''",
'searchmenu-new' => "'''Stell de Sied „[[:$1]]“ in dit Wiki nee op!'''",
-'searchhelp-url' => 'Help:Hülp',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Wies Sieden, de mit disse Bookstaven anfangt]]',
'searchprofile-articles' => 'Inholdsieden',
'searchprofile-project' => 'Hülp- un Projektsieden',
'upload-file-error' => 'Internen Fehler',
'upload-file-error-text' => 'Dat geev en internen Fehler bi dat Anleggen vun en temporäre Datei op’n Server. Segg man en [[Special:ListUsers/sysop|Administrater]] bescheed.',
'upload-misc-error' => 'Unbekannt Fehler bi dat Hoochladen',
-'upload-misc-error-text' => 'Bi dat Hoochladen geev dat en unbekannten Fehler. Kiek na, wat dor en Fehler in de URL is, wat de Websteed ok löppt un versöök dat denn noch wedder. Wenn dat Problem denn noch jümmer dor is, denn vertell dat en [[Special:ListUsers/sysop|System-Administrater]].',
+'upload-misc-error-text' => 'Bi dat Hoochladen geev dat en unbekannten Fehler. Kiek na, wat dor en Fehler in de URL is, wat de Websteed ok löppt un versöök dat denn noch wedder. Wenn dat Problem denn noch jümmer dor is, denn vertell dat en [[Special:ListUsers/sysop|Administrater]].',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'Kunn de URL nich kriegen',
'listusers-noresult' => 'Keen Bruker funnen.',
'listusers-blocked' => '(sperrt)',
+# Special:ActiveUsers
+'activeusers' => 'Aktive Brukers',
+'activeusers-intro' => 'Dit is en List von Brukers, de {{PLURAL:$1|den verleden Dag|de verleden $1 Daag}} aktiv wesen sünd.',
+'activeusers-count' => '$1 {{PLURAL:$1|Ännern|Ännern}} {{PLURAL:$3|den verleden Dag|in de verleden $3 Daag}}',
+'activeusers-from' => 'Brukers wiesen vanaf:',
+'activeusers-hidebots' => 'Bots nich wiesen',
+'activeusers-hidesysops' => 'Administraters nich wiesen',
+'activeusers-noresult' => 'Keen Brukers funnen.',
+
# Special:ListGroupRights
'listgrouprights' => 'Brukergruppen-Rechten',
'listgrouprights-summary' => 'Dit is en List vun de Brukergruppen, de in dit Wiki defineert sünd, un de Rechten, de dor mit verbunnen sünd.
'watchnochange' => 'Kene Siet op dien Oppasslist is in den wiesten Tietruum ännert worrn.',
'watchlist-details' => '{{PLURAL:$1|Ene Siet is|$1 Sieden sünd}} op dien Oppasslist (ahn Diskuschoonssieden).',
'wlheader-enotif' => 'Benarichtigen per E-Mail is anstellt.',
-'wlheader-showupdated' => "* Sieden, de siet dien letzten Besöök ännert worrn sünd, warrt '''fett''' wiest.",
+'wlheader-showupdated' => "Sieden, de siet dien letzten Besöök ännert worrn sünd, warrt '''fett''' wiest.",
'watchmethod-recent' => 'letzte Ännern no Oppasslist pröven',
'watchmethod-list' => 'Oppasslist na letzte Ännern nakieken',
'watchlistcontains' => 'Diene Oppasslist bargt {{PLURAL:$1|ene Siet|$1 Sieden}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Breed',
'exif-imagelength' => 'Hööchd',
'exif-bitspersample' => 'Bits je Farvkomponent',
'exif-languagecode' => 'Spraak',
'exif-iimcategory' => 'Kategorie',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Unkomprimeert',
'exif-unknowndate' => 'Unbekannt Datum',
'version-software-version' => 'Version',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Dateipadd',
-'filepath-page' => 'Datei:',
-'filepath-submit' => 'Los',
-'filepath-summary' => 'Disse Spezialsiet gifft den kumpletten Padd för ene Datei trüch. Biller warrt in vull Oplösen wiest, annere Datein warrt glieks mit dat Programm opropen, dat för de Soort Datein instellt is.
-
-Geev den Dateinaam ahn den Tosatz „{{ns:file}}:“ an.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Söök na Datein, de jüst gliek sünd',
'fileduplicatesearch-summary' => 'Söök na Datein, de na jemehr Hash-Tallen jüst gliek sünd.',
'disclaimers' => 'Veurbehold',
'disclaimerpage' => 'Project:Veurbehoud',
'edithelp' => 'Hulpe mit bewarken',
-'edithelppage' => 'Help:Uutleg',
'helppage' => 'Help:Inhoud',
'mainpage' => 'Veurblad',
'mainpage-description' => 'Veurblad',
'notloggedin' => 'Niet an-emeld',
'userlogin-noaccount' => "He'j nog gien gebrukersnaam?",
'userlogin-joinproject' => 'Over {{SITENAME}}',
-'nologin' => "He'j nog gien gebrukersnaam? '''$1'''.",
+'nologin' => "He'j nog gien gebrukersnaam? $1.",
'nologinlink' => 'Maak n gebrukersprofiel an',
'createaccount' => 'Niej gebrukersprofiel anmaken',
'gotaccount' => "Stao'j al in-eschreven? '''$1'''.",
# Special:PasswordReset
'passwordreset' => 'Wachtwoord opniej instellen',
-'passwordreset-text' => 'Vul dit formulier in zoda-w joe netpost kunnen sturen mit de gebrukersgegevens.',
'passwordreset-legend' => 'Wachtwoord opniej instellen',
'passwordreset-disabled' => 'Je kunnen op disse wiki joew wachtwoord niet opniej instellen.',
-'passwordreset-pretext' => '{{PLURAL:$1||Voer één van de onderstaonde velden in}}',
'passwordreset-username' => 'Gebruker:',
'passwordreset-domain' => 'Domein:',
'passwordreset-capture' => 'De resulterende netpost bekieken?',
'searchmenu-legend' => 'Zeukopsies',
'searchmenu-exists' => "'''Der is n zied mit de naam \"[[:\$1]]\" op disse wiki.'''",
'searchmenu-new' => "'''De zied \"[[:\$1]]\" op disse wiki anmaken!'''",
-'searchhelp-url' => 'Help:Inhold',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ziednamen mit dit veurvoegsel laoten zien]]',
'searchprofile-articles' => 'Artikels',
'searchprofile-project' => 'Hulp- en projektziejen',
'upload-proto-error' => 'Verkeerd protokol',
'upload-proto-error-text' => 'Um op disse maniere bestaanden toe te voegen mutten webadressen beginnen mit <code>http://</code> of <code>ftp://</code>.',
'upload-file-error' => 'Interne fout',
-'upload-file-error-text' => 'Bie ons gung der effen wat fout to n tiedelik bestaand op de server an-emaakt wörden. Neem kontakt op mit n [[Special:ListUsers/sysop|systeembeheerder]].',
+'upload-file-error-text' => 'Bie ons gung der effen wat fout to n tiedelik bestaand op de server an-emaakt wörden. Neem kontakt op mit n [[Special:ListUsers/sysop|beheerder]].',
'upload-misc-error' => 'Onbekende fout bie t inlaojen van joew bestaand',
'upload-misc-error-text' => 'Der is bie t inlaojen van t bestaand n onbekende fout op-etrejen.
Kiek effen nao of de verwiezing t wel döt en probeer t opniej.
-As t probleem zo blif, neem dan kontakt op mit één van de [[Special:ListUsers/sysop|systeembeheerders]].',
+As t probleem zo blif, neem dan kontakt op mit één van de [[Special:ListUsers/sysop|beheerders]].',
'upload-too-many-redirects' => 'Der zatten te veule deurverwiezingen in de URL.',
'upload-unknown-size' => 'Onbekende grootte',
'upload-http-error' => 'Der is n HTTP-fout op-etrejen: $1',
'watchnochange' => 'Gien van de ziejen op joew volglieste is in disse periode ewiezigd',
'watchlist-details' => 'Der {{PLURAL:$1|steet één zied|staon $1 ziejen}} op joew volglieste, zonder de overlegziejen mee-erekend.',
'wlheader-enotif' => 'Je kriegen bericht per netpost',
-'wlheader-showupdated' => "* Ziejen die sinds joew leste bezeuk bie-ewörken bin, staon '''vet-edrokt'''.",
+'wlheader-showupdated' => "Ziejen die sinds joew leste bezeuk bie-ewörken bin, staon '''vet-edrokt'''.",
'watchmethod-recent' => "leste wiezigingen an t naokieken op ziejen die'j volgen",
'watchmethod-list' => 'Kik joew nao volglieste veur de leste wiezigingen',
'watchlistcontains' => 'Der {{PLURAL:$1|steet 1 zied|staon $1 ziejen}} op joew volglieste.',
'tog-shownumberswatching' => 'निगरानी गरिरहेका प्रयोगकर्ताहरुको संख्या देखाउने',
'tog-oldsig' => 'वर्तमान हस्ताक्षर:',
'tog-fancysig' => 'मेरो दस्तखतलाई विकि पाठको रुपमा लिने(स्वत सम्वन्ध बिना)',
-'tog-externaleditor' => 'पूर्वनिर्धारित रुपमा बाह्य सम्पादक प्रयोग गर्नुहोस् (विज्ञहरुको लागि मात्र, तपाईको कम्प्युटरमा विशेष अनुकुलता आवश्यक हुन्छ [//www.mediawiki.org/wiki/Manual:External_editors More information.])',
-'tog-externaldiff' => 'पूर्वनिर्धारित रुपमा बाह्य diff प्रयोग गर्नुहोस (विज्ञ प्रयोगकर्ताहरुको लागि मात्र, तपाईंको कम्प्युटरमा विशेष अनुकुलता आवश्यक हुन्छ [//www.mediawiki.org/wiki/Manual:External_editors More information.])',
'tog-showjumplinks' => '"जाने" पहुँच सम्वन्ध सक्रिय पार्ने',
'tog-uselivepreview' => 'प्रत्यक्ष पूर्वरुप प्रयोग गर्नुहोस् ( जाभा स्क्रिप्ट आवश्यक) (प्रयोगात्मक)',
'tog-forceeditsummary' => 'खाली सम्पादन सार प्रविष्टि गरेमा मलाई सोध्ने',
'disclaimers' => 'अस्विकारोक्तिहरु',
'disclaimerpage' => 'Project:सामान्य अस्वीकारोक्ति',
'edithelp' => 'सम्पादन सहायता',
-'edithelppage' => 'Help:सम्पादन',
'helppage' => 'Help:विषयवस्तुहरू',
'mainpage' => 'मुख्य पृष्ठ',
'mainpage-description' => 'मुख्य पृष्ठ',
# Special:PasswordReset
'passwordreset' => 'प्रवेशशव्द पुनः तय गर्ने',
-'passwordreset-text' => 'तपाईंको खाता-विवरणको इमेल अनुस्मारक प्राप्त गर्न यो फारम पूरा गर्नुहोस्।',
'passwordreset-legend' => 'प्रवेशशव्द पुनः तय गर्ने',
'passwordreset-disabled' => 'प्रवेश शव्द पुनः निर्धारण गर्ने व्यवस्था यस विकिमा निस्क्रिय पारिएको छ।',
-'passwordreset-pretext' => '{{PLURAL:$1||तल दिएका आँकड़ाका टुकुरा मध्ये एउटा प्रविष्ट गर्नुहोस्}}',
'passwordreset-username' => 'प्रयोगकर्ता-नाम:',
'passwordreset-domain' => 'डोमेन',
'passwordreset-capture' => 'निस्कने इमेलको नमुना हेर्ने ?',
'searchmenu-legend' => 'खोज विकल्प',
'searchmenu-exists' => "''' \"[[:\$1]]\" नाम गरेको पृष्ठ यो विकीमा रहेको छ'''",
'searchmenu-new' => "'''यस विकिमा \"[[:\$1]]\" शीर्षक भएको पृष्ठ बनाउनुहोस् !'''",
-'searchhelp-url' => 'Help:सामग्री',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|पृष्ठहरु प्रिफिक्सले हेर्नुहोस् ]]',
'searchprofile-articles' => 'सामग्री पृष्ठहरु',
'searchprofile-project' => 'सहायता र आयोजना पृष्ठहरु',
हाललाई तपाईले गूगलद्वारा खोज्न सक्नुहुन्छ ।
याद गर्नुहोस् उनीहरुको {{SITENAME}}को सूची सामग्री पुरानो भएको हुनसक्छ ।',
-# Quickbar
-'qbsettings' => 'क्विकबार',
-'qbsettings-none' => 'कुनैपनि होइन',
-'qbsettings-fixedleft' => 'देब्रे निश्चित गरिएको',
-'qbsettings-fixedright' => 'दाहिने निश्चित गरिएको',
-'qbsettings-floatingleft' => 'देब्रे तैरने',
-'qbsettings-floatingright' => 'दाहिने तैरने',
-'qbsettings-directionality' => 'तपाईको भाषाको लेखाइ दिशाको आधारमा मिलान गरिएको छ',
-
# Preferences page
'preferences' => 'रोजाईहरू',
'mypreferences' => 'प्राथमिकताहरु',
'http-read-error' => 'HTTP बुझाइमा त्रुटि।',
'http-timed-out' => 'HTTP माँगिएको समय सकियो।',
'http-curl-error' => 'URL $1 लिनमा त्रुटि',
-'http-host-unreachable' => 'URL मा पुग्न सकिएन।',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'URLमा पुग्न सकिएन',
'notvisiblerev' => 'पूर्वावलोकन हटाइयो',
'watchnochange' => 'दिइएको समय अवधीभित्र निगरानी सुचीमा रहेका कुनै पनि सामाग्री सम्पादन भएको छैनन ।',
'watchlist-details' => 'तपाईको निगरानी सूचीमा रहेका{{PLURAL:$1|$1 पृष्ठ|$1 पृष्ठहरु}}वार्तालापमा पृष्ठमा गनिएका छैनन् ।',
-'wlheader-enotif' => '* ईमेलद्वारा जानकारी गराउने तरिका सक्रिय गरियो ।',
-'wlheader-showupdated' => "* तपाइले पछिल्लो पल्ट भ्रमण गरेपछि परिवर्तन भएका पृष्ठहरूलाई '''गाढा''' गरेर देखाइएको छ ।",
+'wlheader-enotif' => 'ईमेलद्वारा जानकारी गराउने तरिका सक्रिय गरियो ।',
+'wlheader-showupdated' => "तपाइले पछिल्लो पल्ट भ्रमण गरेपछि परिवर्तन भएका पृष्ठहरूलाई '''गाढा''' गरेर देखाइएको छ ।",
'watchmethod-recent' => 'निगरानी सुचीमा रहेका पृष्ठमा गरिएका सम्पादनहरु जाँच्दै',
'watchmethod-list' => 'सम्पदान गरिएका निगरानी सुचीमा रहेका पृष्ठहरुको सम्पादन जाँच्दै',
'watchlistcontains' => 'तपाईको निगरानी सुचीमा $1 {{PLURAL:$1|पृष्ठ|पृष्ठहरु}}रहेका छन् ।',
# Stylesheets
'common.css' => '/* यहाँ राखिएका CSS सबै खोलहरुमा लागु हुनेछन् */',
-'standard.css' => '/* यहाँ राखिएका CSS हरुले स्तरीय खोल प्रयोग गर्ने प्रयोगकर्ताहरुलाई प्रभावित पार्छ */',
-'nostalgia.css' => '/* यहाँ राखिएको CSS ले नस्टाल्जिया स्किनको प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
'cologneblue.css' => '/* यहाँ राखिएको CSS ले कोलोग्ने ब्लु स्किनको प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
'monobook.css' => '/* यहाँ राखिएको CSS ले मोनोबुक स्किनको प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
-'myskin.css' => '/* यहाँ राखिएको CSS ले माइस्किन स्किनको प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
-'chick.css' => '/* यहाँ राखिएको CSS ले चिक स्किनको प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
-'simple.css' => '/* यहाँ राखिएको CSS ले सिम्पल स्किनको प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
'modern.css' => '/* यहाँ राखिएको CSS ले मोनोबुक मोडर्न प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
'vector.css' => '/* यहाँ राखिएको CSS ले भेक्टर स्किनको प्रयोगकर्ताहरुलाई प्रभावित गर्ने छ */',
'print.css' => '/* यहाँ राखिएको CSS मुद्रण नतिजालाई प्रभावित गर्छ */',
-'handheld.css' => '/* यहाँ राखिएको CSS ले हाते मेसिनहरु(मोबाईल) स्किनलाई प्रभावित गर्छ जुन $wgHandheldStyle मा निर्धारण गरिएको छ */',
# Metadata
'notacceptable' => 'विकि सर्भर तपाइको क्लाइन्टलाइ जुन प्रकारको डाटा चाहिन्छ त्यस प्रकारले दिन सक्दैन।',
'pageinfo-authors' => 'फरक सम्पादकरुको संख्या',
# Skin names
-'skinname-standard' => 'क्लासिक',
-'skinname-nostalgia' => 'नोस्टाल्जिया',
'skinname-cologneblue' => 'कोलोग्ने निलो',
'skinname-monobook' => 'मोनोबुक',
-'skinname-myskin' => 'माइस्किन',
-'skinname-chick' => 'चिक',
-'skinname-simple' => 'सिम्पल',
'skinname-modern' => 'मोडर्न',
'skinname-vector' => 'भेक्टर',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'चौडाइ',
'exif-imagelength' => 'उचाई',
'exif-bitspersample' => 'घटक प्रति बिट्स',
$8',
'exif-subjectnewscode-value' => '$2 ($1)',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'नखादिएको(कम्प्रेस नगरिएको)',
'exif-compression-2' => 'CCITT समूह 3 1-Dimensional Modified Huffman संचालन इन्कोडिङ्ग',
'exif-compression-3' => 'CCITT Group 3 फ्याक्स इन्कोडिङ्ग',
'version-software-product' => 'उत्पादन',
'version-software-version' => 'संस्करण',
-# Special:FilePath
-'filepath' => 'फाइल मार्ग:',
-'filepath-page' => 'फाइल',
-'filepath-submit' => 'जाने',
-'filepath-summary' => 'यस पृष्ठले फाइको पूरा बाटो(पाथ) दिन्छ ।
-तस्विरहु पूरा रिजोल्युशनमा देखाइन्छ अरु फाइहरु निका सम्बन्धित अनुप्रयोगहरुसँग खोलिन्छन ।
-
- "{{ns:file}}:" प्रिफिक्स(पूर्वसर्ग) बिना फाइल नाम प्रविष्ट गर्नुहोस् । .',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'नक्कल फाइल खोज्ने',
'fileduplicatesearch-summary' => 'ह्यास मानको आधारमा दुरुस्त नक्कल फाइहरु खोज्ने ।',
'tog-underline' => 'लिङ्कतेत अन्दरलाइन यानादिसँ:',
'tog-justify' => 'अनुच्छेद धंकादिसँ',
'tog-hideminor' => 'न्हुगु हिलेज्याय् चिधंगु सम्पादन सुचुकादिसँ',
-'tog-extendwatchlist' => 'वाचलिस्टयात परिमार्जित याना सकल स्वेज्युगु हिलेज्या क्यनादिसँ',
+'tog-extendwatchlist' => 'वाचलिस्टयात परिमार्जित याना सकल स्वेज्युगु हिलेज्या क्यनादिसँ, दकले लिपाया जक्क मखु',
'tog-usenewrc' => 'एन्ह्यान्स्ड् न्हुगु हिलेज्या (जाभास्क्रिप्ट)',
'tog-numberheadings' => 'अटो-ल्याखँ हेडिङ',
'tog-showtoolbar' => 'सम्पादन टुलबार क्यनादिसँ (जाभास्क्रिप्ट)',
'tog-enotifrevealaddr' => 'जिगु इ-मेल थाय्बाय् नोटिफिकेसन इ-मेलय् क्यनादिसँ',
'tog-shownumberswatching' => 'स्वयाच्वंपिं छ्यलामितेगु ल्याखँ क्यनादिसँ',
'tog-fancysig' => 'कच्चा हस्ताक्षर (अटोम्याटिक लिङ्क मदेःकः)',
-'tog-externaleditor' => 'डिफल्टं एक्स्टर्नल एडिटर छ्यलादिसँ (एक्स्पर्टतेगु निंतिं जक्क, छिगु कम्प्युटरय् विषेश सेटिङ माः)',
-'tog-externaldiff' => 'एक्स्टर्नल डिफ् (diff) डिफल्टं छ्यलादिसँ (एक्स्पर्टतेगु निंतिं जक्क, छिगु कम्प्युटरय् विषेश सेटिङ माः)',
'tog-showjumplinks' => '"जम्प टु" एसिसिबिलिटी लिङ्क इनेबल यानादिसँ',
'tog-uselivepreview' => 'लाइभ प्रिभ्यु (जाभास्क्रिप्ट) इनेबल यानादिसँ (परिक्षणकाल)',
'tog-forceeditsummary' => 'सम्पादन सार खालि त्वतिबिले जित सशंकित यानादिसँ',
# Cologne Blue skin
'qbfind' => 'मालादिसँ',
'qbedit' => 'सम्पादन',
+'qbpageoptions' => 'थ्व पौ',
+'qbmyoptions' => 'जिगु पौ',
+'qbspecialpages' => 'विशेष पौ',
'faq' => 'आपालं न्यनिगु न्ह्यसः (FAQ)',
'faqpage' => 'Project:आपालं न्यनिगु न्ह्यसःत (FAQ)',
+# Vector skin
+'vector-action-move' => 'संकादिसँ',
+'vector-view-create' => 'दयेकादिसँ',
+'vector-view-edit' => 'सम्पादन',
+'vector-view-history' => 'इतिहास स्वयादिसँ',
+'vector-view-view' => 'ब्वनादिसँ',
+
'returnto' => '$1य् लिहाँझासँ।',
'tagline' => '{{SITENAME}}नं',
'help' => 'ग्वहालि',
'printableversion' => 'ध्वायेज्युगु संस्करण',
'permalink' => 'स्थायी लिङ्क',
'print' => 'ध्वानादिसँ',
+'view' => 'क्यनादिसँ',
'edit' => 'सम्पादन',
+'create' => 'दयेकादिसँ',
'editthispage' => 'थ्व पौ सम्पादन यानादिसं',
+'create-this-page' => 'थ्व पौ दयेकादिसँ',
+'delete' => 'हुयादिसँ (दिलित)',
+'deletethispage' => 'थ्व पौ हुयादिसँ (दिलित)',
'newpage' => 'न्हुगु पौ',
'talkpagelinktext' => 'खँल्हाबँल्हा',
'specialpage' => 'विषेश पौ',
'toolbox' => 'ज्याब्व सन्दुक',
'projectpage' => 'ज्याखँ पौ क्येनादिसँ',
'otherlanguages' => 'मेमेगु भाषाय्',
+'jumpto' => 'थन झासँ:',
'jumptosearch' => 'मालादिसँ',
+'pool-errorunknown' => 'मस्युगु इरर',
# 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) and the disambiguation template definition (see disambiguations).
'aboutsite' => '{{SITENAME}}या बारेय्',
'youhavenewmessagesmulti' => '$1य् छित न्हुगु सन्देश वगु दु',
'editsection' => 'सम्पादन',
'editold' => 'सम्पादन',
+'editlink' => 'सम्पादन',
'editsectionhint' => 'खण्ड सम्पादन: $1',
'showtoc' => 'क्यनादिसँ',
+'hidetoc' => 'सुचुकादिसँ',
+'collapsible-expand' => 'चायेकादिसँ',
+'red-link-title' => '$1 (पौ मदु)',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'पौ',
'viewsource' => 'स्रोत स्वयादिसँ',
# Login and logout pages
-'welcomecreation' => '== लसकुस, $1! ==
-छिगु खाता चायेके धुंकल।
-छिगु [[Special:Preferences|{{SITENAME}} प्राथमिकता]] हिलिगु लुमंकादिसँ।',
+'welcomeuser' => 'लसकुस, $1जु!',
'yourname' => 'छ्य्लामि नां:',
'yourpassword' => 'दुथखँग्वः (पासवर्द):',
'yourpasswordagain' => 'दुथखँग्वः हानं तियादिसँ:',
'nologinlink' => 'खाता न्ह्यथनादिसँ',
'createaccount' => 'खाता चायेकादिसँ',
'gotaccountlink' => 'दुहां झासँ',
+'badretype' => 'छिं तियादिगु पासवर्द पाय्छि मजु।',
'loginsuccesstitle' => 'लग इन सफल जुल',
+'emaildisabled' => 'थ्व फाइलं इमेल छ्वयेमफु।',
'accountcreated' => 'खाता न्ह्येथन',
+'accountcreatedtext' => '$1या निंतिं छ्य्लामि खाता चायेकूगु दु।',
'loginlanguagelabel' => 'भाषा: $1',
+# Change password dialog
+'resetpass' => 'पासवर्द हिलादिसँ',
+
+# Special:ChangeEmail
+'changeemail-submit' => 'इ-मेल हिलादिसँ',
+'changeemail-cancel' => 'खारेज',
+
+# Edit page toolbar
+'bold_sample' => 'गाढा आखः',
+'bold_tip' => 'गाढा आखः',
+'italic_sample' => 'बेक्वःगु आखः',
+'italic_tip' => 'बेक्वःगु आखः',
+'link_tip' => 'आन्तरिक लिंक',
+
# Edit pages
'summary' => 'सारांश:',
-'savearticle' => 'पौ मुंकादिसं',
-'preview' => 'स्वयादिसं',
+'minoredit' => 'थ्व चिधंगु सम्पादन ख',
+'watchthis' => 'थ्व पौ स्वयादिसँ',
+'savearticle' => 'पौ स्वथनादिसँ',
+'preview' => 'न्हेकिपा',
+'showpreview' => 'न्हेकिपा क्यनादिसँ',
+'showlivepreview' => 'जुथें (लाइभ) न्हेकिपा',
+'showdiff' => 'हिसुझ्वः क्यनादिसँ',
+'anoneditwarning' => "'''न्ह्यःखँ:''' छि लग्द इन मदु।
+छिगु IP address पौया सम्पादन इतिहासय् स्वथनिगु जुइ।",
+'anonpreviewwarning' => "''छि लग्द इन मदु। थ्व पौ स्वथनादिल धाःसा छिगु IP address थ्व पौया इतिहासय् स्वथनिगु जुइ।''",
+'loginreqtitle' => 'लग इन माःगु',
+'loginreqpagetext' => 'मेमेगु पौ स्वयेत छिं $1 यायेमा/जुइमा।',
+'accmailtitle' => 'पासवर्द छ्वल।',
'newarticle' => '(न्हु)',
'note' => "'''होस यानादिसँ:'''",
'previewnote' => "'''थ्व पूर्वालोकन जक्क ख। छिं यानादिगु सम्पादन स्वथंगु मदुनि!'''",
'yourtext' => 'छिगु आखः',
'storedversion' => 'स्वथनातगु संस्करण',
+# Content models
+'content-model-text' => 'सादा आखः',
+
# History pages
'revisionasof' => '$1 तक्कया संस्करण',
'previousrevision' => '←पुलांगु संस्करण',
# Search results
'searchhelp-url' => 'Help:धलःपौ',
+'searchprofile-everything' => 'दक्वं',
+'search-result-size' => '$1 ({{PLURAL:$2|1 खँग्वः |$2 खँग्वःत}})',
'searchrelated' => 'स्वापू दुःगु',
'searchall' => 'सकल',
'powersearch' => 'मालादिसँ',
# Preferences page
'mypreferences' => 'जिगु प्राथमिकता',
'changepassword' => 'पासवर्द हिलादिसँ',
+'prefs-skin' => 'भुँसा',
'prefs-datetime' => 'दिं व ई',
'prefs-personal' => 'छ्य्लामि प्रोफाइल',
'prefs-rc' => 'न्हुगु हिलेज्या',
'username' => 'छ्य्लामि नां:',
'yourrealname' => 'वास्तविक नां:',
'yourlanguage' => 'भाषा:',
+'gender-male' => 'मिजं',
+'gender-female' => 'मिसा',
'email' => 'इ-मेल',
# User rights
'userrights-user-editname' => 'छपू छ्य्लामि नां तयादिसँ:',
# Groups
+'group' => 'पुचः',
'group-user' => 'छ्य्लामित',
'group-bot' => 'बोत',
# Recent changes
-'recentchanges' => 'नà¥\8dहà¥\81à¤\97à¥\81 हिलà¥\87à¤\9cà¥\8dया',
+'recentchanges' => 'नà¤\95तिनिया हिसà¥\81à¤\9dà¥\8dवà¤\83',
'show' => 'क्यनादिसँ',
# Upload
-'upload' => 'सà¤\82à¤\9aिà¤\95ा à¤\9aढ़ाà¤\8fँ',
+'upload' => 'फाà¤\87ल à¤\85पलà¥\8bद यानादिसँ',
# File description page
'file-anchor-link' => 'फाइल',
# Special:Categories
'categories' => 'पुचःत',
+# Email user
+'emailusername' => 'छ्य्लामि नां (युजर नेम) :',
+
# Restrictions (nouns)
'restriction-edit' => 'सम्पादन',
# What links here
'whatlinkshere' => 'थन छु स्वाई',
+# Block/unblock
+'contribslink' => 'योगदान',
+
# Move page
'movereason' => 'कारण:',
# Tooltip help for the actions
+'tooltip-search' => '{{SITENAME}} मालादिसं',
+'tooltip-search-fulltext' => 'थ्व खँग्वःया निंतिं पौस मालादिसं',
+'tooltip-p-logo' => 'मू पौय् झासँ',
'tooltip-n-mainpage' => 'मू पौ भ्रमण यानादिसँ',
'tooltip-n-portal' => 'ज्याझ्वःया बारेय्, छिं छु यायेछिं, गन खँ सीकिगु',
'tooltip-n-currentevents' => 'जुयाच्वँगु घटनाया लिधँसा तथ्य मालादिसँ',
'tooltip-feed-atom' => 'थ्व पौया Atom फीड',
'tooltip-t-contributions' => 'थ्व छ्य्लामिया योगदानया धलः क्यनादिसँ',
'tooltip-t-emailuser' => 'थ्व छ्य्लामियात इ-मेल छ्वयादिसँ',
-'tooltip-t-upload' => 'सà¤\82à¤\9aिà¤\95ाà¤\8fà¤\81 à¤\9aढ़ाà¤\8fँ',
+'tooltip-t-upload' => 'फाà¤\87ल à¤\85पलà¥\8bद यानादिसँ',
'tooltip-t-specialpages' => 'सकल विशेष पौस धलः',
'tooltip-t-print' => 'थ्व पौस ध्वायेज्युगु संस्करण',
'tooltip-t-permalink' => 'थ्व पौस थ्व संस्करणया पर्मानेन्ट लिङ्क',
# Stylesheets
'common.css' => '/* थन तःगु CSS सकल स्किनय् छ्य्लिगु जुइ */',
-'standard.css' => '/* थन तःगु CSS नं स्ट्याण्डर्ड स्किनया छ्य्लामितेत प्रभावित याइ */',
-'nostalgia.css' => '/* थन तःगु CSS नं नोस्ट्याल्जिया स्किनया छ्य्लामितेत असर याइ */',
'cologneblue.css' => '/* थन तःगु CSS नं कोलोन ब्लु स्किनया छ्य्लामितेत असर याइ */',
'monobook.css' => '/* थन तःगु CSS नं मोनोबुक स्किनया छ्य्लामितेत असर याइ */',
-'myskin.css' => '/* थन तःगु CSS नं माइस्किन स्किनया छ्य्लामितेत असर याइ */',
-'chick.css' => '/* थन तःगु CSS नं चिक स्किनया छ्य्लामितेत असर याइ */',
-'simple.css' => '/* थन तःगु CSS नं सिम्पल स्किनया छ्य्लामितेत असर याइ */',
'modern.css' => '/* थन तःगु CSS नं मोडर्न स्किनया छ्य्लामितेत असर याइ */',
'print.css' => '/* थन तःगु CSS नं प्रिन्ट आउटपुटयात असर याइ */',
'handheld.css' => '/* थन तःगु CSS नं $wgHandheldStyle आधारित ह्याण्डहेल्ड यन्त्रयात असर याइ */',
# Attribution
'others' => 'मेमेगु',
+# Exif tags
+'exif-imagewidth' => 'ब्याः',
+'exif-imagelength' => 'जाः',
+'exif-imagedescription' => 'किपाया नां',
+'exif-make' => 'किपासाः दयेकामि',
+'exif-model' => 'किपासाः मोदेल',
+'exif-software' => 'छ्यलातःगु सफ्तवेयर',
+'exif-artist' => 'च्वमि',
+'exif-copyright' => 'लेखाधिकार थुवा',
+'exif-pixelydimension' => 'किपा ब्याः',
+'exif-pixelxdimension' => 'किपा जाः',
+
+'exif-dc-date' => 'तिथि',
+
# 'all' in various places, this might be different for inflected languages
'namespacesall' => 'सकल',
* @author Extended by Hendrik Maryns <hendrik.maryns@uni-tuebingen.de>, March 2007.
* @author Fryed-peach
* @author Galwaygirl
+ * @author Geitost
* @author GerardM
* @author Hamaryns
* @author Jens Liebenau
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1 januari',
+'february-date' => '$1 februari',
+'march-date' => '$1 maart',
+'april-date' => '$1 april',
+'may-date' => '$1 mei',
+'june-date' => '$1 juni',
+'july-date' => '$1 juli',
+'august-date' => '$1 augustus',
+'september-date' => '$1 september',
+'october-date' => '$1 oktober',
+'november-date' => '$1 november',
+'december-date' => '$1 december',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categorie|Categorieën}}',
'create-this-page' => 'Deze pagina aanmaken',
'delete' => 'Verwijderen',
'deletethispage' => 'Deze pagina verwijderen',
+'undeletethispage' => 'Pagina terugplaatsen',
'undelete_short' => '$1 {{PLURAL:$1|bewerking|bewerkingen}} terugplaatsen',
'viewdeleted_short' => '{{PLURAL: $1|Eén geschrapte bewerking |$1 geschrapte bewerkingen}} bekijken',
'protect' => 'Beveiligen',
'disclaimers' => 'Voorbehoud',
'disclaimerpage' => 'Project:Algemeen voorbehoud',
'edithelp' => 'Hulp bij bewerken',
-'edithelppage' => 'Help:Bewerken',
'helppage' => 'Help:Inhoud',
'mainpage' => 'Hoofdpagina',
'mainpage-description' => 'Hoofdpagina',
'namespaceprotected' => "U hebt geen rechten om pagina's in de naamruimte '''$1''' te bewerken.",
'customcssprotected' => 'U kunt deze CSS-pagina niet bewerken, omdat die persoonlijke instellingen van een andere gebruiker bevat.',
'customjsprotected' => 'U kunt deze JavaScriptpagina niet bewerken, omdat die persoonlijke instellingen van een andere gebruiker bevat.',
+'mycustomcssprotected' => 'U hebt geen rechten om deze CSS-pagina te bewerken.',
+'mycustomjsprotected' => 'U hebt geen rechten om deze JavaScriptpagina te bewerken.',
'ns-specialprotected' => 'Pagina\'s in de naamruimte "{{ns:special}}" kunnen niet bewerkt worden.',
'titleprotected' => "Het aanmaken van deze pagina is beveiligd door [[User:$1|$1]].
De gegeven reden is ''$2''.",
'createacct-yourpasswordagain-ph' => 'Geef het wachtwoord opnieuw op',
'remembermypassword' => 'Aanmeldgegevens onthouden (maximaal $1 {{PLURAL:$1|dag|dagen}})',
'userlogin-remembermypassword' => 'Aangemeld blijven',
-'userlogin-signwithsecure' => 'Aanmelden via beveiligde server',
+'userlogin-signwithsecure' => 'Beveiligde verbinding gebruiken',
'securelogin-stick-https' => 'Verbonden blijven via HTTPS na aanmelden',
'yourdomainname' => 'Uw domein:',
'password-change-forbidden' => 'U kunt uw wachtwoord niet wijzigen in deze wiki.',
'gotaccount' => 'Hebt u al een gebruikersnaam? $1.',
'gotaccountlink' => 'Aanmelden',
'userlogin-resetlink' => 'Bent u uw aanmeldgegevens vergeten?',
+'userlogin-resetpassword-link' => 'Uw wachtwoord opnieuw instellen',
'helplogin-url' => 'Help:Aanmelden',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hulp bij aanmelden]]',
'createacct-join' => 'Geef uw gegevens hieronder op.',
'cannotchangeemail' => 'Het e-mailadres voor een gebruiker kan op deze wiki niet gewijzigd worden.',
'emaildisabled' => 'Deze site kan geen e-mails verzenden.',
'accountcreated' => 'Gebruiker aangemaakt',
-'accountcreatedtext' => 'De gebruiker $1 is aangemaakt.',
+'accountcreatedtext' => 'De gebruiker [[{{ns:User}}:$1|$1]] is aangemaakt.',
'createaccount-title' => 'Gebruikers registreren voor {{SITENAME}}',
'createaccount-text' => 'Iemand heeft een gebruiker op {{SITENAME}} ($4) aangemaakt met de naam "$2" en uw e-mailadres.
Het wachtwoord voor "$2" is "$3".
# Special:PasswordReset
'passwordreset' => 'Wachtwoord opnieuw instellen',
-'passwordreset-text' => 'Vul dit formulier in om uw wachtwoord opnieuw in te stellen.',
+'passwordreset-text-one' => 'Vul dit formulier in om uw wachtwoord opnieuw in te stellen.',
+'passwordreset-text-many' => '{{PLURAL:$1|Vul een van de gegevensvelden in om uw wachtwoord opnieuw in te stellen.}}',
'passwordreset-legend' => 'Wachtwoord opnieuw instellen',
'passwordreset-disabled' => 'Het is in deze wiki niet mogelijk uw wachtwoord opnieuw in te stellen.',
'passwordreset-emaildisabled' => 'E-mailmogelijkheden zijn uitgeschakeld op deze wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Voer één van de onderstaande velden in}}',
'passwordreset-username' => 'Gebruiker:',
'passwordreset-domain' => 'Domein:',
'passwordreset-capture' => 'De resulterende e-mail bekijken?',
Deze lijkt verwijderd te zijn.',
'edit-conflict' => 'Bewerkingsconflict.',
'edit-no-change' => 'Uw bewerking is genegeerd, omdat er geen wijziging aan de tekst is gemaakt.',
+'postedit-confirmation' => 'Uw bewerking is opgeslagen',
'edit-already-exists' => 'De pagina is niet aangemaakt.
Deze bestaat al.',
'defaultmessagetext' => 'Standaardinhoud',
'searchmenu-legend' => 'Zoekopties',
'searchmenu-exists' => "* Pagina '''[[$1]]'''",
'searchmenu-new' => "'''De pagina \"[[:\$1]]\" aanmaken op deze wiki.'''",
-'searchhelp-url' => 'Help:Inhoud',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Paginanamen met dit voorvoegsel weergeven]]',
'searchprofile-articles' => "Inhoudelijke pagina's",
'searchprofile-project' => "Hulp- en projectpagina's",
'right-editusercssjs' => 'De CSS- en JS-bestanden van andere gebruikers bewerken',
'right-editusercss' => 'De CSS-bestanden van andere gebruikers bewerken',
'right-edituserjs' => 'De JavaScriptbestanden van andere gebruikers bewerken',
+'right-editmyusercss' => "Uw eigen CSS-pagina's bewerken",
+'right-editmyuserjs' => "Uw eigen JavaScriptpagina's bewerken",
'right-rollback' => 'Snel de laatste bewerking(en) van een gebruiker van een pagina terugdraaien',
'right-markbotedits' => 'Teruggedraaide bewerkingen markeren als botbewerkingen',
'right-noratelimit' => 'Tijdsafhankelijke beperkingen negeren',
'upload-proto-error-text' => "Uploads via deze methode vereisen URL's die beginnen met <code>http://</code> of <code>ftp://</code>.",
'upload-file-error' => 'Interne fout',
'upload-file-error-text' => 'Er is een interne fout opgetreden tijdens het aanmaken van een tijdelijk bestaan op de server.
-Neem contact op met een [[Special:ListUsers/sysop|systeembeheerder]].',
+Neem contact op met een [[Special:ListUsers/sysop|moderator]].',
'upload-misc-error' => 'Onbekende uploadfout',
'upload-misc-error-text' => 'Er is tijdens het uploaden een onbekende fout opgetreden.
Controleer of de URL correct en beschikbaar is en probeer het opnieuw.
-Als het probleem aanhoudt, neem dan contact op met een [[Special:ListUsers/sysop|systeembeheerder]].',
+Als het probleem aanhoudt, neem dan contact op met een [[Special:ListUsers/sysop|moderator]].',
'upload-too-many-redirects' => 'De URL bevatte te veel doorverwijzingen',
'upload-unknown-size' => 'Onbekende grootte',
'upload-http-error' => 'Er is een HTTP-fout opgetreden: $1',
'notvisiblerev' => 'De laatste versie van een andere gebruiker is verwijderd',
'watchnochange' => "Geen van de pagina's op uw volglijst is in deze periode bewerkt.",
'watchlist-details' => "Er {{PLURAL:$1|staat één pagina|staan $1 pagina's}} op uw volglijst, exclusief overlegpagina's.",
-'wlheader-enotif' => '* U wordt per e-mail gewaarschuwd',
-'wlheader-showupdated' => "* Pagina's die zijn bewerkt sinds uw laatste bezoek worden '''vet''' weergegeven",
+'wlheader-enotif' => 'U wordt per e-mail gewaarschuwd.',
+'wlheader-showupdated' => "Pagina's die zijn bewerkt sinds uw laatste bezoek worden '''vet''' weergegeven.",
'watchmethod-recent' => "controleer recente wijzigingen op pagina's op volglijst",
'watchmethod-list' => "controleer pagina's op volglijst op wijzigingen",
'watchlistcontains' => "Er {{PLURAL:$1|staat één pagina|staan $1 pagina's}} op uw volglijst.",
'thumbnail-more' => 'Vergroten',
'filemissing' => 'Bestand is zoek',
'thumbnail_error' => 'Fout bij het aanmaken van de miniatuurafbeelding: $1',
+'thumbnail_error_remote' => 'Foutmelding van $1:
+$2',
'djvu_page_error' => 'DjVu-pagina buiten bereik',
'djvu_no_xml' => 'De XML voor het DjVu-bestand kon niet opgehaald worden',
'thumbnail-temp-create' => 'Het was niet mogelijk een tijdelijk miniatuurbestand aan te maken.',
'modern.css' => '/* CSS die hier wordt geplaatst heeft alleen invloed op de skin Modern */',
'vector.css' => '/* CSS die hier wordt geplaatst heeft alleen invloed op de skin Vector */',
'print.css' => '/* CSS die hier wordt geplaatst heeft alleen invloed op de printuitvoer */',
-'handheld.css' => '/* CSS die hier wordt geplaatst heeft alleen invloed op handheldapparaten gebaseerd op de skin die is ingesteld in $wgHandheldStyle */',
'noscript.css' => '/ * CSS die hier wordt geplaatst heeft invloed voor gebruikers die JavaScript hebben uitgeschakeld * /',
'group-autoconfirmed.css' => '/* CSS die hier wordt geplaatst heeft alleen invloed op automatisch bevestigde gebruikers */',
'group-bot.css' => '/* CSS die hier wordt geplaatst heeft alleen invloed op robots */',
'removedwatchtext' => 'De pagina "[[:$1]]" is van [[Special:Watchlist|je volglijst]] verwijderd.',
'watchnochange' => "Geen van de pagina's op je volglijst is in deze periode bewerkt.",
'watchlist-details' => "Er {{PLURAL:$1|staat één pagina|staan $1 pagina's}} op je volglijst, exclusief overlegpagina's.",
-'wlheader-showupdated' => "* Pagina's die zijn bewerkt sinds je laatste bezoek worden '''vet''' weergegeven",
+'wlheader-showupdated' => "Pagina's die zijn bewerkt sinds je laatste bezoek worden '''vet''' weergegeven.",
'watchlistcontains' => "Er {{PLURAL:$1|staat 1 pagina|staan $1 pagina's}} op je volglijst.",
'enotif_lastvisited' => 'Zie $1 voor alle wijzigingen sinds je laatste bezoek.',
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'des',
+'january-date' => '$1. januar',
+'february-date' => '$1. februar',
+'march-date' => '$1. mars',
+'april-date' => '$1. april',
+'may-date' => '$1. mai',
+'june-date' => '$1. juni',
+'july-date' => '$1. juli',
+'august-date' => '$1. august',
+'september-date' => '$1. september',
+'october-date' => '$1. oktober',
+'november-date' => '$1. november',
+'december-date' => '$1. desember',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori|Kategoriar}}',
'disclaimers' => 'Atterhald',
'disclaimerpage' => 'Project:Atterhald',
'edithelp' => 'Endringshjelp',
-'edithelppage' => 'Help:Endring',
'helppage' => 'Help:Innhald',
'mainpage' => 'Hovudside',
'mainpage-description' => 'Hovudside',
'yourpassword' => 'Passord:',
'userlogin-yourpassword' => 'Passord',
'userlogin-yourpassword-ph' => 'Skriv inn passordet ditt',
+'createacct-yourpassword-ph' => 'Skriv inn eit passord',
'yourpasswordagain' => 'Skriv opp att passordet',
+'createacct-yourpasswordagain' => 'Stadfest passord',
+'createacct-yourpasswordagain-ph' => 'Skriv inn passordet på nytt',
'remembermypassword' => 'Hugs innlogginga mi på denne datamaskinen (høgst {{PLURAL:$1|éin dag|$1 dagar}})',
'userlogin-remembermypassword' => 'Hald meg innlogga',
-'userlogin-signwithsecure' => 'Logg inn med trygg tenar',
+'userlogin-signwithsecure' => 'Nytt trygg kopling',
'securelogin-stick-https' => 'Fortset HTTPS-tilkopling etter innlogging.',
'yourdomainname' => 'Domenet ditt',
'password-change-forbidden' => 'Du kan ikkje endra passord på denne wikien.',
'userlogout' => 'Logg ut',
'notloggedin' => 'Ikkje innlogga',
'userlogin-noaccount' => 'Har du ingen konto?',
-'userlogin-joinproject' => 'Vert med {{SITENAME}}',
-'nologin' => "Har du ingen brukarkonto? '''$1'''.",
+'userlogin-joinproject' => 'Vert med på {{SITENAME}}',
+'nologin' => 'Har du ingen brukarkonto? $1.',
'nologinlink' => 'Registrer deg',
'createaccount' => 'Opprett ny konto',
'gotaccount' => "Har du ein brukarkonto? '''$1'''.",
'gotaccountlink' => 'Logg inn',
'userlogin-resetlink' => 'Har du gløymd påloggingsopplysingane dine?',
+'userlogin-resetpassword-link' => 'Attendestill passordet ditt',
'helplogin-url' => 'Help:Innlogging',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hjelp med innlogging]]',
+'createacct-join' => 'Skriv inn informasjonen din under.',
+'createacct-emailrequired' => 'E-postadresse:',
+'createacct-emailoptional' => 'E-postadresse (valfritt)',
+'createacct-email-ph' => 'Skriv inn e-postadressa di',
'createaccountmail' => 'Bruk eit mellombels tilfeldig passord og send det til e-postadressa som er oppgjeven under',
+'createacct-realname' => 'Sant namn (valfritt)',
'createaccountreason' => 'Årsak:',
+'createacct-reason' => 'Årsak',
+'createacct-reason-ph' => 'Kvifor du lagar ein ny konto',
+'createacct-captcha' => 'Tryggingssjekk',
+'createacct-imgcaptcha-ph' => 'Skriv inn teksten du ser over',
+'createacct-submit' => 'Opprett kontoen din',
+'createacct-benefit-heading' => '{{SITENAME}} er laga av folk som deg.',
+'createacct-benefit-body1' => '{{PLURAL:$1|éi endring|$1 endringar}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|éi side|$1 sider}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|nyleg bidragsytar|nylege bidragsytarar}}',
'badretype' => 'Passorda du skreiv inn er ikkje like.',
'userexists' => 'Brukarnamnet er alt i bruk. Vel eit anna brukarnamn.',
'loginerror' => 'Innloggingsfeil',
+'createacct-error' => 'Kontoopprettingsfeil',
'createaccounterror' => 'Kunne ikkje oppretta kontoen: $1',
'nocookiesnew' => 'Brukarkontoen vart oppretta, men du er ikkje innlogga. {{SITENAME}} bruker informasjonskapslar for å logge inn brukarar,
nettlesaren din er innstilt for ikkje å godta desse. Etter at du har endra innstillingane slik at nettlesaren godtek informasjonskapslar, kan du logge inn med det nye brukarnamnet og passordet ditt.',
# Special:PasswordReset
'passwordreset' => 'Attendestilling av passord',
-'passwordreset-text' => '↓Fyll ut dette skjemaet for å motta ei påminning om kontoopplysningane dine i ein e-post.',
'passwordreset-legend' => '↓Nullstill passordet',
'passwordreset-disabled' => '↓Tilbakestilling av passord er ikkje aktivert på denne wikien',
'passwordreset-emaildisabled' => 'E-postfunksjonen er slegen av på wikien.',
-'passwordreset-pretext' => '↓{{PLURAL:$1||Tast inn ein av datadelane nedanfor}}',
'passwordreset-username' => 'Brukarnamn:',
'passwordreset-domain' => 'Domene:',
'passwordreset-capture' => 'Vis resulterande epost',
Det ser ut til at ho er sletta.',
'edit-conflict' => 'Endringskonflikt.',
'edit-no-change' => 'Redigeringa di vart ignorert fordi det ikkje vart gjort endringar i teksten.',
+'postedit-confirmation' => 'Endringa di vart lagra.',
'edit-already-exists' => 'Kunne ikkje opprette ny side fordi ho alt eksisterer.',
'defaultmessagetext' => 'Standard meldingstekst',
'content-failed-to-parse' => 'Klarte ikkje å tolke innhaldet «$2» for innhaldsmodellen «$1»: $3',
'invalid-content-data' => 'Ugyldig innhald',
'content-not-allowed-here' => 'Innhaldsmodellen «$1» er ikkje tillaten på sida [[$2]]',
-'editwarning-warning' => 'Gjennom å navigera vekk frå denne sida vil du mista alle endringane du måtte ha gjort.
-Denne åtvaringa kan slåast av under {{int:prefs-editing}} i instillingane dine.',
+'editwarning-warning' => 'Ved å forlata denne sida kan du mista alle endringane du måtte ha gjort.
+Er du innlogga kan denne åtvaringa slåast av under bolken «Endring» i innstillingane dine.',
# Content models
'content-model-wikitext' => 'WikiTekst',
'searchmenu-legend' => 'Søkjeval',
'searchmenu-exists' => "* Sida '''[[$1]]'''",
'searchmenu-new' => "'''Opprett sida «[[:$1|$1]]» på denne wikien.'''",
-'searchhelp-url' => 'Help:Innhald',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Sjå gjennom alle sider med denne forstavinga]]',
'searchprofile-articles' => 'Innhaldssider',
'searchprofile-project' => 'Hjelp- og prosjektsider',
'notvisiblerev' => 'Sideversjonen er sletta',
'watchnochange' => 'Ingen av sidene i overvakingslista er endra i den valde perioden.',
'watchlist-details' => '{{PLURAL:$1|Éi side|$1 sider}} er overvaka, utanom diskusjonssider.',
-'wlheader-enotif' => '* Funksjonen for endringsmeldingar per e-post er på.',
-'wlheader-showupdated' => "* Sider som har vorte endra sidan du sist såg på dei er '''utheva'''",
+'wlheader-enotif' => 'Funksjonen for endringsmeldingar per e-post er på.',
+'wlheader-showupdated' => "Sider som har vorte endra sidan du sist såg på dei er '''utheva'''",
'watchmethod-recent' => 'sjekkar siste endringar for dei overvaka sidene',
'watchmethod-list' => 'sjekkar om dei overvaka sidene har blitt endra i det siste',
'watchlistcontains' => 'Overvakingslista di inneheld {{PLURAL:$1|éi side|$1 sider}}.',
'tooltip-watchlistedit-raw-submit' => 'Oppdater overvakingslista',
'tooltip-recreate' => 'Ved å trykkje på «Nyopprett» vert sida oppretta på nytt.',
'tooltip-upload' => 'Start opplastinga',
-'tooltip-rollback' => '«Rulla attende»-knappen rullar med eitt klikk attende endringa(ne) på sida gjorde av den siste bidragsytaren',
+'tooltip-rollback' => '«Rull attende»-knappen rullar med eitt klikk attende endringa(ne) på sida gjorde av den siste bidragsytaren',
'tooltip-undo' => '«Gjer om» attenderullar endringar og opnar endringsvindauga med førehandsvising. Gjer at ein kan leggje til ei årsak samandragsboksen.',
'tooltip-preferences-save' => 'Lagra innstillingar',
'tooltip-summary' => 'Skriv inn eit kort samandrag',
'monobook.css' => '/* CSS-tekst som vert plassert her, endrar utsjånaden til sidedrakta Monobook */',
'modern.css' => '/* CSS i denne fila vil gjelde alle som nyttar drakta Modern */',
'print.css' => '/* CSS i denne fila vil påverke utskriftsversjonen */',
-'handheld.css' => '/* CSS i denne fila vil gjelde alle handheldte innretnigar konfigurert i $wgHandheldStyle */',
# Scripts
'common.js' => '/* Javascript i denne fila vil gjelde for alle drakter. */',
'version-entrypoints-header-entrypoint' => 'Inngangspunkt',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect' => 'Omdiriger etter filnamn, brukar- eller versjons-ID',
+'redirect-legend' => 'Omdiriger til ei fil eller ei side',
+'redirect-summary' => 'Denne spesialsida omdirigerer til ei fil (med eit filnamn), ei side (med ein versjons-ID) eller ei brukarside (med eit brukartal).',
+'redirect-submit' => 'Gå',
+'redirect-lookup' => 'Sjå etter:',
+'redirect-value' => 'Verdi',
+'redirect-user' => 'Brukar-ID',
+'redirect-revision' => 'Sideversjon',
+'redirect-file' => 'Filnamn',
+'redirect-not-exists' => 'Fann ikkje verdi',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Søk etter duplikatfiler',
'fileduplicatesearch-summary' => 'Søk etter duplikatfiler basert på hash-verdiane deira.',
'htmlform-selectorother-other' => 'Andre',
'htmlform-no' => 'Nei',
'htmlform-yes' => 'Ja',
+'htmlform-chosen-placeholder' => 'Vel ein',
# SQLite database support
'sqlite-has-fts' => '$1 med støtte for fulltekstsøk',
'logentry-suppress-event-legacy' => '$1 {{GENDER:$2|endra}} i løyndom synlegdomen til logghendingar på $3',
'logentry-suppress-revision-legacy' => '$1 {{GENDER:$2|endra}} i løyndom synlegdomen til versjonar på sida $3',
'revdelete-content-hid' => 'innhald løynt',
-'revdelete-summary-hid' => 'endringsamandrag gøymt',
+'revdelete-summary-hid' => 'endringsamandrag løynt',
'revdelete-uname-hid' => 'brukarnamn gøymt',
'revdelete-content-unhid' => 'innhald gjort synleg',
'revdelete-summary-unhid' => 'endringssamandrag gjort synleg',
'unwatch' => 'Desobserva',
'unwatchthispage' => 'Des-observa disi pagine',
-'changed' => 'chanjati',
'enotif_lastvisited' => 'Regarda $1 por vida omni chanjes depos vun lasti visite.',
+'changed' => 'chanjati',
# Delete
'confirm' => 'Konfirma',
'ilsubmit' => 'Sercha',
'bydate' => 'segun date',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Larjeso',
'exif-imagelength' => 'Alteso',
'exif-imagedescription' => 'Title de imaje',
'tog-enotifrevealaddr' => 'Bonagatša email atrese go temošo tša poso',
'tog-shownumberswatching' => 'Laetša palo bašomiši bao ba tlhapetšego',
'tog-fancysig' => 'Tsaeno ya gose fihliwe',
-'tog-externaleditor' => 'Šomiša sengwadi sa kantle (bašumiši bao banalego botsibi fela. [//www.mediawiki.org/wiki/Manual:External_editors More information.])',
'tog-forceeditsummary' => 'Ntaetše ge kesa tsenye mongwalo go kakaretšo ya dithetogo',
'tog-watchlisthideown' => 'Fihla diphetogo tšeo di direlego ke nna go lenano la ditlhapetšo.',
'tog-watchlisthideminor' => 'Fihla diphetogo tše nyenyane tšeo di direlego ke nna go lenano la ditlhapetšo',
'disclaimers' => 'Hlapa-matsogo',
'disclaimerpage' => 'Project:Hlapa-Matsogo',
'edithelp' => 'Thušo ya go fetola',
-'edithelppage' => 'Help:Fetola',
'helppage' => 'Help:Mateng',
'mainpage' => 'Letlakala la Pele',
'mainpage-description' => 'Letlakala la Pele',
'viewprevnext' => 'Lebelela ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''Go ena le letlaka la leina la \"[[:\$1]]\" go wiki ye.'''",
'searchmenu-new' => "'''Hlola letlakala \"[[:\$1]]\" go wiki ye!'''",
-'searchhelp-url' => 'Help:Mateng',
'searchprofile-articles' => 'Matlakala a diteng',
'searchprofile-project' => 'Thušo le matlaka a diprojeke',
'searchprofile-images' => 'Diphatlalatši tša "multi"',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Bophara',
'exif-imagelength' => 'Botelele',
'exif-artist' => 'Mongwadi',
* @author Jfblanc
* @author Kaganer
* @author McDutchie
+ * @author Nemo bis
* @author Spacebirdy
* @author Горан Анђелковић
* @author לערי ריינהארט
'tog-shownumberswatching' => "Afichar lo nombre d'utilizaires que seguisson aquesta pagina",
'tog-oldsig' => 'Apercebut de la signatura existenta :',
'tog-fancysig' => 'Tractar la signatura coma de wikitèxte (sens ligam automatic)',
-'tog-externaleditor' => 'Utilizar un editor extèrne per defaut (pels utilizaires avançats, necessita una configuracion especiala sus vòstre ordinator)',
-'tog-externaldiff' => "Utilizar un comparador extèrne per defaut (pels utilizaires avançats, necessita una configuracion especiala sus vòstre ordenador, [//www.mediawiki.org/wiki/Manual:External_editors/fr mai d'informacions]).",
'tog-showjumplinks' => 'Activar los ligams « navigacion » e « recèrca » en naut de pagina (aparéncias Myskin e autres)',
'tog-uselivepreview' => 'Utilizar l’apercebut rapid (JavaScript) (experimental)',
'tog-forceeditsummary' => "M'avertir quand ai pas completat lo contengut de la bóstia de comentaris",
'tog-showhiddencats' => 'Afichar las categorias amagadas',
'tog-noconvertlink' => 'Desactivar la conversion dels títols',
'tog-norollbackdiff' => 'Ometre lo diff aprèp l’utilizacion d’un revert',
+'tog-useeditwarning' => 'M’avisar quand quiti una pagina de modificacion sens publicar los cambiaments',
'underline-always' => 'Totjorn',
'underline-never' => 'Pas jamai',
'oct' => "d'oct",
'nov' => 'de nov',
'dec' => 'de dec',
+'january-date' => '$1 genièr',
+'february-date' => '$1 febrièr',
+'march-date' => '$1 març',
+'april-date' => '$1 abril',
+'may-date' => '$1 mai',
+'june-date' => '$1 junh',
+'july-date' => '$1 julhet',
+'august-date' => '$1 agost',
+'september-date' => '$1 setembre',
+'october-date' => '$1 octobre',
+'november-date' => '$1 novembre',
+'december-date' => '$1 decembre',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoria|Categorias}}',
'disclaimers' => 'Avertiments',
'disclaimerpage' => 'Project:Avertiments generals',
'edithelp' => 'Ajuda',
-'edithelppage' => 'Help:Cossí modificar una pagina',
'helppage' => 'Help:Acuèlh',
'mainpage' => 'Acuèlh',
'mainpage-description' => 'Acuèlh',
'viewyourtext' => "Podètz veire e copiar lo contengut de '''vòstras modificacions''' a aquesta pagina :",
'protectedinterface' => 'Aquesta pagina provesís de tèxte d’interfàcia pel logicial susaqueste wiki, e es protegida per evitar los abuses.
Per apondre o modificar de traduccions sus totes los wikis, utilizatz [//translatewiki.net/ translatewiki.net], lo projècte de localizacion de MediaWiki.',
-'editinginterface' => "'''Atencion :''' sètz a editar una pagina utilizada per crear lo tèxte de l’interfàcia del logicial. Los cambiaments se repercutaràn, segon lo contèxte, sus totas o d'unas paginas visiblas pels autres utilizaires. Per las traduccions, vos convidam a utilizar lo projècte MediaWiki d'internacionalizacion dels messatges [//translatewiki.net/wiki/Main_Page?setlang=oc translatewiki.net].",
+'editinginterface' => "'''Atencion :''' sètz a mand de modificar una pagina utilizada per crear lo tèxte de l’interfàcia del logicial. Los cambiaments sus aquesta pagina se repercutaràn sus l'aparéncia de l'interfàcia d'utilizaire pels autres utilizaires d'aqueste wiki. Per apondre o modificar de traduccions per totes los wikis, utilizatz [//translatewiki.net/translatewiki.net], lo projècte MediaWiki d'internacionalizacion dels messatges .",
'sqlhidden' => '(Requèsta SQL amagada)',
'cascadeprotected' => "Aquesta pagina es actualament protegida perque es inclusa dins {{PLURAL:$1|la pagina seguenta|las paginas seguentas}}, {{PLURAL:$1|qu'es estada protegida|que son estadas protegidas}} amb l’opcion « proteccion en cascada » activada :
$2",
'welcomecreation-msg' => "Vòstre compte d'utilizaire es estat creat.
Doblidetz pas de modificar [[Special:Preferences|vòstras preferéncias per {{SITENAME}}]].",
'yourname' => "Nom d'utilizaire :",
+'userlogin-yourname' => "Nom d'utilizaire",
+'userlogin-yourname-ph' => "Picatz vòstre nom d'utilizaire",
'yourpassword' => 'Vòstre senhal :',
+'userlogin-yourpassword' => 'Senhal',
+'userlogin-yourpassword-ph' => 'Picatz vòstre senhal',
+'createacct-yourpassword-ph' => 'Picatz un senhal',
'yourpasswordagain' => 'Confirmar lo senhal :',
+'createacct-yourpasswordagain' => 'Confirmatz lo senhal',
+'createacct-yourpasswordagain-ph' => 'Entratz lo senhal tornarmai',
'remembermypassword' => 'Me reconnectar automaticament a las visitas venentas (al maximum $1 {{PLURAL:$1|jorn|jorns}})',
+'userlogin-remembermypassword' => 'Gardar ma sesilha activa',
+'userlogin-signwithsecure' => 'Utilizar una connexion securizada',
'securelogin-stick-https' => 'Demorar connectat en HTTPS aprèp la connexion',
'yourdomainname' => 'Vòstre domeni',
'password-change-forbidden' => 'Podètz pas modificar los senhals sus aqueste wiki.',
'logout' => 'Se desconnectar',
'userlogout' => 'Desconnexion',
'notloggedin' => 'Vos sètz pas identificat(ada)',
+'userlogin-noaccount' => 'Avètz pas de compte ?',
+'userlogin-joinproject' => 'Rejonhètz {{SITENAME}}',
'nologin' => "Avètz pas un compte ? '''$1'''.",
'nologinlink' => 'Creatz un compte',
'createaccount' => 'Crear un compte novèl',
'gotaccount' => "Ja avètz un compte ? '''$1'''.",
'gotaccountlink' => 'Identificatz-vos',
'userlogin-resetlink' => 'Avètz doblidat vòstres detalhs de connexion ?',
+'userlogin-resetpassword-link' => 'Reïnicializar lo senhal',
+'helplogin-url' => 'Help:Connexion',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ajuda a la connexion]]',
+'createacct-join' => 'Entratz vòstras informacions çaijós.',
+'createacct-emailrequired' => 'Adreça electronica',
+'createacct-emailoptional' => 'Adreça de corrièr electronic (facultativa)',
+'createacct-email-ph' => 'Entratz vòstra adreça de corrièr electronic',
'createaccountmail' => 'Utilizar un senhal aleatòri temporari e lo mandar a l’adreça de corrièl especificada çaijós',
+'createacct-realname' => 'Nom vertadièr (facultatiu)',
'createaccountreason' => 'Motiu :',
+'createacct-reason' => 'Motiu',
+'createacct-reason-ph' => 'Perqué creatz un autre compte',
+'createacct-captcha' => 'Contraròtle de seguretat',
+'createacct-imgcaptcha-ph' => 'Entratz lo tèxte que vesètz çaisús',
+'createacct-submit' => 'Creatz vòstre compte',
+'createacct-benefit-heading' => '{{SITENAME}} es escrich per de monde coma vos.',
+'createacct-benefit-body1' => '{{PLURAL:$1|cambiament|cambiaments}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|pagina|paginas}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|contributor recent|contributors recents}}',
'badretype' => "Los senhals qu'avètz picats son pas identics.",
'userexists' => "Lo nom d'utilizaire qu'avètz picat ja es utilizat.
Causissètz-ne un autre.",
'loginerror' => "Error d'identificacion",
+'createacct-error' => 'Error al moment de la creacion del compte',
'createaccounterror' => 'Impossible de crear lo compte : $1',
'nocookiesnew' => "Lo compte d'utilizaire es estat creat, mas sètz pas connectat. {{SITENAME}} utiliza de cookies per la connexion mas los avètz desactivats. Activatz-los e reconnectatz-vos amb lo meteis nom e lo meteis senhal.",
'nocookieslogin' => '{{SITENAME}} utiliza de cookies per la connexion mas avètz los cookies desactivats. Activatz-los e reconnectatz-vos.',
'edit-already-exists' => 'La pagina novèla a pogut èsser creada .
Existís ja.',
'defaultmessagetext' => 'Messatge per defaut',
+'content-failed-to-parse' => "Fracàs de l'analisi del contengut de $2 pel modèl $1: $3",
+'invalid-content-data' => 'Donadas del contengut invalidas',
+'editwarning-warning' => "Quitar aquesta pagina vos farà pèrdre totas las modificacions qu'avètz fachas.
+Se sètz connectat amb vòstre compte, podètz levar aqueste avertiment dins la seccion {{int:prefs-editing}} de vòstras preferéncias.",
# Content models
'content-model-wikitext' => 'wikitèxte',
'parser-template-loop-warning' => 'Modèl en bocla detectat : [[$1]]',
'parser-template-recursion-depth-warning' => 'Limit de longor de la recursion del modèl depassat ($1)',
'language-converter-depth-warning' => 'Limit de prigondor del convertissor de lenga depassada ($1)',
+'node-count-exceeded-category' => 'Paginas ont nombre de nosèls es depassat',
+'node-count-exceeded-warning' => 'Pagina depassant lo nombre de nosèls',
+'expansion-depth-exceeded-category' => "Paginas ont la prigondor d'espandiment es depassada",
+'expansion-depth-exceeded-warning' => "Pagina depassant la prigondor d'espandiment",
+'parser-unstrip-loop-warning' => 'Bocla pas desmontabla detectada',
+'parser-unstrip-recursion-limit' => 'Limit de recursion pas desmontable depassat ($1)',
+'converter-manual-rule-error' => 'Error detectada dins la règla manuala de conversion de lenga',
# "Undo" feature
'undo-success' => "Aquesta modificacion va èsser desfacha. Confirmatz los cambiaments (visibles en bas d'aquesta pagina), puèi salvatz se sètz d’acòrdi. Mercés de motivar l’anullacion dins la bóstia de resumit.",
I pòt aver mai de detalhs dins [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} lo jornal de las supressions].
Coma administrator, podètz encara [$1 veire aquesta version] s'o volètz.",
'rev-deleted-text-view' => "Aquesta version de la pagina es estada '''escafada'''.
-En tant qu’administrator, la podètz visualizar ; i pòt aver de detalhs dins lo [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} jornal dels escafaments].",
+La podètz visualizar ; de detalhs son disponibles dins lo [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} jornal dels escafaments].",
'rev-suppressed-text-view' => "Aquesta version de la pagina es estada '''suprimida'''.
-En tant qu’administrator, la podètz visualizar ; i pòt aver de detalhs dins lo [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} jornal de las supressions].",
+La podètz visualizar ; de detalhs son disponibles dins lo [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} jornal de las supressions].",
'rev-deleted-no-diff' => "Podètz pas veire aquesta dif per que una de las versions es estada '''escafada'''.
I pòt aver mai de detalhs dins lo [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} jornal dels escafaments].",
'rev-suppressed-no-diff' => "Pod�tz pas veire aquesta difer�ncia perque una de las revisions es estada '''suprimida'''.",
'rev-deleted-unhide-diff' => "Una de las revisions d'aquesta diferéncia es estada '''escafada'''.
-I pòt aver mai de detalhs dins lo [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} jornal dels escafaments].
-En tant qu'administrator, podètz encara [$1 veire aquesta diferéncia] se volètz.",
+De detalhs son disponibles dins lo [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} jornal dels escafaments].
+Podètz totjorn [$1 veire aquesta diferéncia] se lo volètz.",
'rev-suppressed-unhide-diff' => "Una de las revisions d'aqueste diff es estada '''suprimida'''.
-I pòt aver de detalhs dins lo [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} jornal de las supressions].
-En tant qu'administrator, podètz totjorn [$1 veire aqueste diff] se volètz contunhar.",
+De detalhs son disponibles dins lo [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} jornal de las supressions].
+Podètz totjorn [$1 veire aqueste diff] se volètz contunhar.",
'rev-deleted-diff-view' => "Una de las revisions d'aquesta diff es estada '''suprimida'''.
En tant qu'administrator podètz veire aquesta diff ; i pòt aver mai de detalhs dins lo [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} jornal de las supressions].",
'rev-suppressed-diff-view' => "Una de las revisions d'aquesta diff es estada '''escafada'''.
'searchmenu-legend' => 'Opcions de recèrca',
'searchmenu-exists' => "* Pagina '''[[$1]]'''",
'searchmenu-new' => "'''Crear la pagina ''[[:$1|$1]]'' sus aqueste wiki !'''",
-'searchhelp-url' => 'Help:Acuèlh',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Recercar las paginas amb aqueste prefix]]',
'searchprofile-articles' => 'Paginas de contengut',
'searchprofile-project' => "Paginas d'ajuda e del projècte",
'search-interwiki-default' => '$1 resultats :',
'search-interwiki-more' => '(mai)',
'search-relatedarticle' => 'Relatat',
-'mwsuggest-disable' => 'Desactivar las suggestions AJAX',
+'mwsuggest-disable' => 'Desactivar las suggestions de recèrca',
'searcheverything-enable' => 'Recercar dins totes los espacis de noms',
'searchrelated' => 'relatat',
'searchall' => 'Totes',
'searchdisabled' => 'La recèrca sus {{SITENAME}} es desactivada.
En esperant la reactivacion, podètz efectuar una recèrca via Google.
Atencion, lor indexacion de contengut {{SITENAME}} benlèu es pas a jorn.',
-
-# Quickbar
-'qbsettings' => "Barra d'aisinas",
-'qbsettings-none' => 'Pas cap',
-'qbsettings-fixedleft' => 'Esquèrra',
-'qbsettings-fixedright' => 'Drecha',
-'qbsettings-floatingleft' => 'Flotanta a esquèrra',
-'qbsettings-floatingright' => 'Flotanta a drecha',
+'search-error' => "Una error s'es producha en recercant : $1",
# Preferences page
'preferences' => 'Preferéncias',
'userrights-lookup-user' => "Gestion dels dreches d'utilizaire",
'userrights-user-editname' => 'Entrar un nom d’utilizaire :',
'editusergroup' => "Modificacion dels gropes d'utilizaires",
-'editinguser' => "Cambiament dels dreches de l'utilizaire '''[[User:$1|$1]]''' ([[User talk:$1|{{int:talkpagelinktext}}]]{{int:pipe-separator}}[[Special:Contributions/$1|{{int:contribslink}}]])",
+'editinguser' => "Modificacion dels dreches de l'{{GENDER:$1|utilizaire|utilizaire}} '''[[User:$1|$1]]''' $2",
'userrights-editusergroup' => 'Modificar los gropes de l’utilizaire',
'saveusergroups' => "Salvar los gropes d'utilizaires",
'userrights-groupsmember' => 'Membre de :',
'right-siteadmin' => 'Varrolhar e desvarrolhar la banca de donadas',
'right-override-export-depth' => 'Exportar las paginas en incluent las paginas ligadas fins a una prigondor de 5 nivèls',
'right-sendemail' => 'Mandar un corrièl als autres utilizaires',
-'right-passwordreset' => 'Tòrna inicializar lo senhal d’un utilizaire ([[Special:PasswordReset|pagina especiala]])',
+'right-passwordreset' => 'Veire los corrièrs electronics de reïnicializacion dels senhals',
# Special:Log/newusers
'newuserlogpage' => 'Istoric de las creacions de comptes',
'minlength1' => 'Los noms de fichièrs devon comprendre almens una letra.',
'illegalfilename' => 'Lo nom de fichièr « $1 » conten de caractèrs interdiches dins los títols de paginas. Mercé de lo tornar nomenar e de lo copiar tornarmai.',
'badfilename' => "L'imatge es estat renomenat « $1 ».",
-'filetype-mime-mismatch' => 'L’extension del fichier correspond pas al tipe MIME.',
+'filetype-mime-mismatch' => "L'extension del fichièr « .$1 » correspond pas al tipe MIME detectat del fichièr ($2).",
'filetype-badmime' => 'Los fichièrs del tipe MIME « $1 » pòdon pas èsser importats.',
'filetype-bad-ie-mime' => 'Lo fichièr pòt pas èsser importat perque serià detectat coma « $1 » per Internet Explorer, tipe de fichièr interdich perque potencialament dangierós.',
'filetype-unwanted-type' => "«.$1»''' es un format de fichièr pas desirat.
{{PLURAL:$3|Lo tipe de fichièr preconizat es|Los tipes de fichièrs preconizats son}} $2.",
-'filetype-banned-type' => "'''\".\$1\"''' es dins un format pas admes.
-{{PLURAL:\$3|Lo qu'es acceptat es|Los que son acceptats son}} \$2.",
+'filetype-banned-type' => "''' « .$1 » '''{{PLURAL:$4|est pas un tipe de fichièr autorizat|son pas de tipes de fichièrs autorizats}}.
+{{PLURAL:$3|lo tipe de fichièr autorizat es |los tipes de fichièrs autorizats son}} $2.",
'filetype-missing' => "Lo fichièr a pas cap d'extension (coma « .jpg » per exemple).",
'empty-file' => "Lo fichièr qu'avètz somés èra void.",
'file-too-large' => "Lo fichièr qu'avètz somés èra tròp grand.",
PICT # misc.
#</pre> <!-- daissatz aquesta linha coma es -->',
'upload-success-subj' => 'Importacion capitada',
-'upload-success-msg' => 'Çò mandat es disponible aicí : [[:{{ns:file}}:$1]]',
+'upload-success-msg' => 'Vòstre impòrt dempuèi [$2] a capitat. Es disponible aicí : [[:{{ns:file}}:$1]]',
'upload-failure-subj' => 'Problèma de mandadís',
'upload-failure-msg' => 'I a agut un problèma amb vòstre mandadís [$2]: $1',
'upload-warning-subj' => 'Avertiment al moment del telecargament',
# Special:UploadStash
'uploadstash' => "Escondedor d'impòrt",
+'uploadstash-clear' => 'Escafar los fichièrs en escondedor',
+'uploadstash-nofiles' => "Avètz pas de fichièrs en escondedor d'impòrt.",
# img_auth script messages
'img-auth-accessdenied' => 'Accès refusat',
-'img-auth-nopathinfo' => 'PATH_INFO mancant.
-Vòstre servidor es pas parametrat per passar aquesta informacion.
-Benlèu que fonciona en CGI e supòrta pas img_atuh.
-Consultatz https://www.mediawiki.org/wiki/Manual:Image_Authorization.',
+'img-auth-nopathinfo' => 'PATH_INFO mancant. Vòstre servidor es pas parametrat per passar aquesta informacion.
+Benlèu que fonciona en CGI e supòrta pas img_atuh. Consultatz https://www.mediawiki.org/wiki/Manual:Image_Authorization.',
'img-auth-notindir' => 'Lo camin demandat es pas lo repertòri de telecargament configurat.',
'img-auth-badtitle' => 'Impossible de construire un títol valid a partir de « $1 ».',
'img-auth-nologinnWL' => 'Sètz pas connectat e « $1 » es pas dins la lista blanca.',
Aqueste wiki es configurat coma un wiki public.
Per una seguretat optimala, img_auth.php es desactivat.",
'img-auth-noread' => "L'utilizaire a pas lo drech en lectura sus « $1 ».",
+'img-auth-bad-query-string' => "L'URL a una cadena de requèsta invalida.",
# HTTP errors
'http-invalid-url' => 'URL incorrècta : $1',
'http-read-error' => 'HTTP Error de lectura.',
'http-timed-out' => 'HTTP request timed out.',
'http-curl-error' => "Error al moment de la recuperacion de l'URL : $1",
-'http-host-unreachable' => "Impossible d'aténher l'URL",
'http-bad-status' => 'I a agut un problèma al moment de la requèsta HTTP : $1 $2',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload_source_file' => ' (un fichièr sus vòstre ordenador)',
# Special:ListFiles
-'listfiles-summary' => 'Aquesta pagina especiala fa veire totes los fichièrs importats.
-Per defaut, las darrièrs fichièrs importats son afichats en naut de la lista.
-Un clic en tèsta de colomna càmbia l’òrdre d’afichatge.',
+'listfiles-summary' => 'Aquesta pagina especiala permet de far la lista de totes los fichièrs importats.
+Quand es filtrada per utilizaire, sols los fichièrs que la version la mai recenta es estada importada per aqueste utilizaire son afichats.',
'listfiles_search_for' => 'Recèrca del mèdia nomenat :',
'imgfile' => 'fichièr',
'listfiles' => 'Lista dels imatges',
** Fichièr duplicat',
'filedelete-edit-reasonlist' => 'Modifica los motius de la supression',
'filedelete-maintenance' => 'La supression e lo restabliment de fichièrs es temporàriament desactivada pendent la mantenença.',
+'filedelete-maintenance-title' => 'Impossible de suprimir lo fichièr',
# MIME search
'mimesearch' => 'Recèrca per tipe MIME',
Deurián puslèu puntar cap a una pagina apropriada.<br />
Una pagina es tractada coma una pagina d’omonimia s'utiliza un modèl qu'es ligat a partir de [[MediaWiki:Disambiguationspage]]",
+'pageswithprop' => 'Paginas amb una proprietat de pagina',
+'pageswithprop-legend' => 'Paginas amb una proprietat de pagina',
+'pageswithprop-prop' => 'Nom de la proprietat :',
+'pageswithprop-submit' => 'Anar',
+
'doubleredirects' => 'Redireccions doblas',
'doubleredirectstext' => 'Vaquí una lista de las paginas que redirigisson cap a de paginas que son elas-meteissas de paginas de redireccion.
Cada entrada conten de ligams cap a la primièra e la segonda redireccions, e mai la primièra linha de tèxte de la segonda pagina, çò que provesís, de costuma, la « vertadièra » pagina cibla, cap a la quala la primièra redireccion deuriá redirigir.
# Miscellaneous special pages
'nbytes' => '$1 {{PLURAL:$1|octet|octets}}',
'ncategories' => '$1 {{PLURAL:$1|categoria|categorias}}',
+'ninterwikis' => '$1 {{PLURAL:$1|interwiki|interwikis}}',
'nlinks' => '$1 {{PLURAL:$1|ligam|ligams}}',
'nmembers' => '$1 {{PLURAL:$1|membre|membres}}',
'nrevisions' => '$1 {{PLURAL:$1|revision|revisions}}',
'mostlinkedtemplates' => 'Modèls mai utilizats',
'mostcategories' => 'Articles utilizant mai de categorias',
'mostimages' => 'Fichièrs mai utilizats',
+'mostinterwikis' => "Paginas amb lo mai d'interwikis",
'mostrevisions' => 'Articles mai modificats',
'prefixindex' => 'Totas las paginas que començan per…',
+'prefixindex-namespace' => 'Totas las paginas amb prefix (espaci de noms $1)',
'shortpages' => 'Paginas brèvas',
'longpages' => 'Paginas longas',
'deadendpages' => "Paginas sul camin d'enlòc",
'allpagesprefix' => 'Afichar las paginas que començan pel prefix :',
'allpagesbadtitle' => 'Lo títol rensenhat per la pagina es incorrècte o possedís un prefix reservat. Conten segurament un o mantun caractèr especial que pòt pas èsser utilizats dins los títols.',
'allpages-bad-ns' => '{{SITENAME}} a pas d’espaci de noms « $1 ».',
+'allpages-hide-redirects' => 'Amagar las redireccions',
+
+# SpecialCachedPage
+'cachedspecial-refresh-now' => 'Veire lo mai recent.',
# Special:Categories
'categories' => 'Categorias',
'linksearch-pat' => 'Recercar l’expression :',
'linksearch-ns' => 'Espacis de noms :',
'linksearch-ok' => 'Recercar',
-'linksearch-text' => 'De caractèrs « joker » pòdon èsser utilizats, per exemple <code>*.wikipedia.org</code>.<br />Protocòls reconeguts : <code>$1</code>.',
+'linksearch-text' => 'De caractèrs jokers coma « *.wikipedia.org » pòdon èsser utilizats.
+Necessitan al mens un domeni de nivèl superior, per exemple « *.org ».<br />
+{{PLURAL:$2|Protocòl reconegut|Protocòls reconeguts}}: <code>$1</code> (http:// per defaut se cap de protocòl es pas indicat).',
'linksearch-line' => '$1 amb un ligam a partir de $2',
'linksearch-error' => 'Los caractèrs « joker » pòdon pas èsser utilizats qu’al començament del nom de domeni.',
# Special:ActiveUsers
'activeusers' => 'Lista dels utilizaires actius',
'activeusers-intro' => "Aquò es una lista dels utilizaires qu'an exerçat una activitat quina que siá al cors {{PLURAL:$1|de la darrièra jornada|dels $1 darrièrs jorns}}.",
-'activeusers-count' => '$1 {{PLURAL:$1|modificacion recenta|modificacions recentas}} dins {{PLURAL:$3|lo darrièr jorn|los $3 darrièrs jorns}}',
+'activeusers-count' => '$1 {{PLURAL:$1|accion|accions}} al moment {{PLURAL:$3|del darrièr jorn|dels $3 darrièrs jorns}}',
'activeusers-from' => 'Afichar los utilizaires dempuèi :',
'activeusers-hidebots' => 'Amagar los robòts',
'activeusers-hidesysops' => 'Amagar los administrators',
'noemailtext' => "Aqueste utilizaire a pas especificat d'adreça electronica valida.",
'nowikiemailtitle' => 'Pas de corrièr electronic autorizat',
'nowikiemailtext' => "Aqueste utilizaire a causit de recebre pas de corrièr electronic de la part d'autres utilizaires.",
+'emailnotarget' => "Nom d'utilizaire del destinatari inexistent o invalid.",
+'emailtarget' => "Entratz lo nom d'utilizaire del destinatari",
'emailusername' => "Nom d'utilizaire :",
'emailusernamesubmit' => 'Sometre',
'email-legend' => 'Mandar un corrièr electronic a un autre utilizaire de {{SITENAME}}',
'watchnologintext' => 'Vos cal èsser [[Special:UserLogin|connectat(ada)]]
per modificar vòstra lista de seguiment.',
'addwatch' => 'Ajustar a la lista de seguiment',
-'addedwatchtext' => 'La pagina "[[:$1]]" es estada aponduda a vòstra [[Special:Watchlist|lista de seguiment]].
-Las modificacions venentas d\'aquesta pagina e de la pagina de discussion associada seràn repertoriadas aicí, e la pagina apareisserà <b>en gras</b> dins la [[Special:RecentChanges|tièra dels darrièrs cambiaments]] per èsser localizada mai aisidament.',
+'addedwatchtext' => "La pagina « [[:$1]] » es estada aponduda a vòstra [[Special:Watchlist|lista de seguiment]]. Las modificacions venentas d'aquesta pagina e de la pagina de discussion associada i seràn repertoriadas.",
'removewatch' => 'Suprimir de la lista de seguiment',
'removedwatchtext' => 'La pagina « [[:$1]] » es estada levada de vòstra [[Special:Watchlist|lista de seguiment]].',
'watch' => 'Seguir',
'notvisiblerev' => 'Version suprimida',
'watchnochange' => 'Cap de las paginas que seguissètz son pas estadas modificadas pendent lo periòde afichat.',
'watchlist-details' => 'I a {{PLURAL:$1|pagina|paginas}} dins vòstra lista de seguiment, sens comptar las paginas de discussion.',
-'wlheader-enotif' => '* La notificacion per corrièr electronic es activada.',
-'wlheader-showupdated' => '* Las paginas que son estadas modificadas dempuèi vòstra darrièra visita son mostradas en <b>gras</b>',
+'wlheader-enotif' => 'La notificacion per corrièr electronic es activada.',
+'wlheader-showupdated' => "Las paginas que son estadas modificadas dempuèi vòstra darrièra visita son afichadas en '''gras'''.",
'watchmethod-recent' => 'verificacion dels darrièrs cambiaments de las paginas seguidas',
'watchmethod-list' => 'verificacion de las paginas seguidas per de modificacions recentas',
'watchlistcontains' => 'Vòstra lista de seguiment conten $1 {{PLURAL:$1|pagina|paginas}}.',
'iteminvalidname' => "Problèma amb l'article « $1 » : lo nom es invalid...",
-'wlnote' => 'Çaijós se {{PLURAL:$1|tròba la darrièra modificacion|tròban las $1 darrièras modificacions}} dempuèi {{PLURAL:$2|la darrièra ora|las <b>$2</b> darrièras oras}}.',
+'wlnote' => "Çaijós {{PLURAL:$1|se tròba la darrièra modificacion efectuada|se tròban las $1 darrièras modificacions efectuadas}} pendent {{PLURAL:$2|la darrièra ora|las '''$2''' darrièras oras}} dempuèi $3, $4.",
'wlshowlast' => 'Far veire las darrièras $1 oras, los darrièrs $2 jorns, o $3.',
'watchlist-options' => 'Opcions de la lista de seguiment',
Consultatz l’[[Special:Log/delete|istoric de las supressions]] per veire las paginas recentament suprimidas e restablidas.",
'undelete-header' => 'Consultatz l’[[Special:Log/delete|istoric de las supressions]] per veire las paginas recentament suprimidas.',
+'undelete-search-title' => 'Recercar las paginas suprimidas',
'undelete-search-box' => 'Cercar una pagina suprimida',
'undelete-search-prefix' => 'Far veire las paginas que començan per :',
'undelete-search-submit' => 'Cercar',
'undelete-bad-store-key' => 'Impossible de restablir lo fichièr datat del $1 : lo fichièr èra absent abans la supression.',
'undelete-cleanup-error' => 'Error al moment de la supression de l’archiu inutilizada « $1 ».',
'undelete-missing-filearchive' => 'Impossible de restablir lo fichièr amb l’ID $1 perque es pas dins la banca de donadas. Benlèu ja i es estat restablit.',
+'undelete-error' => "Pagina d'error d'anullacion",
'undelete-error-short' => 'Error al moment del restabliment del fichièr : $1',
'undelete-error-long' => "D'errors son estadas rencontradas al moment del restabliment del fichièr :
# Stylesheets
'common.css' => '/** Lo CSS plaçat aicí serà aplicat a totas las aparéncias. */',
-'standard.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Estandard. */',
-'nostalgia.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Nostalgia. */',
'cologneblue.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Cologne Blue */',
'monobook.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires del skin Monobook */',
-'myskin.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge MySkin */',
-'chick.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Chick */',
-'simple.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Simple */',
'modern.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Modern */',
'vector.css' => '/* Lo CSS plaçat aicí afectarà los utilizaires de l’abilhatge Vector */',
'print.css' => '/* Lo CSS plaçat aicí afectarà las impressions */',
-'handheld.css' => '/* Lo CSS plaçat aicí afectarà los aparelhs mobils en foncion de l\'abilhatge configurat $wgHandheldStyle */',
# Scripts
'common.js' => '/* Tot JavaScript serà cargat amb cada pagina accedida per un utilizaire quin que siá. */',
-'standard.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Standard unicament. */',
-'nostalgia.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Nostalgia unicament. */',
'cologneblue.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Cologne Blue unicament. */',
'monobook.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge MonoBook unicament. */',
-'myskin.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge MySkin unicament. */',
-'chick.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Chick unicament. */',
-'simple.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Simple unicament. */',
'modern.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Modern unicament. */',
'vector.js' => '/* Tot JavaScript aicí serà cargat amb las paginas accedidas pels utilizaires de l’abilhatge Vector unicament. */',
'pageinfo-category-files' => 'Nombre de fichièrs',
# Skin names
-'skinname-standard' => 'Estandard',
-'skinname-nostalgia' => 'Nostalgia',
'skinname-cologneblue' => 'Colonha Blau',
'skinname-monobook' => 'Monobook',
-'skinname-myskin' => 'Mon interfàcia',
-'skinname-chick' => 'Poleton',
-'skinname-simple' => 'Simple',
'skinname-modern' => 'Modèrne',
# Patrolling
'minutes' => '{{PLURAL:$1|$1 minuta|$1 minutas}}',
'hours' => '{{PLURAL:$1|$1 ora|$1 oras}}',
'days' => '{{PLURAL:$1|$1 jorn|$1 jorns}}',
+'weeks' => '{{PLURAL:$1|$1 setmana|$1 setmanas}}',
+'months' => '{{PLURAL:$1|$1 mes|$1 meses}}',
+'years' => '{{PLURAL:$1|$1 an|$1 ans}}',
'ago' => 'I a $1',
'just-now' => 'sulpic',
+# Human-readable timestamps
+'hours-ago' => 'i a $1 {{PLURAL:$1|ora|oras}}',
+'minutes-ago' => 'i a $1 {{PLURAL:$1|minuta|minutas}}',
+'seconds-ago' => 'i a $1 {{PLURAL:$1|segonda|segondas}}',
+'monday-at' => 'Diluns a $1',
+'tuesday-at' => 'Dimars a $1',
+'wednesday-at' => 'Dimècres a $1',
+'thursday-at' => 'Dijòus a $1',
+'friday-at' => 'Divendres a $1',
+'saturday-at' => 'Dissabte a $1',
+'sunday-at' => 'Dimenge a $1',
+'yesterday-at' => 'Ièr a $1',
+
# Bad image list
'bad_image_list' => "Lo format es lo seguent :
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Largor',
'exif-imagelength' => 'Nautor',
'exif-bitspersample' => 'Bits per compausanta',
'exif-copyrightowner' => "Detentor del drech d'autor",
'exif-usageterms' => "Condicions d'utilizacion",
'exif-webstatement' => "Declaracion de dreches d'autor en linha",
+'exif-originaldocumentid' => 'Identificant unic del document original',
+'exif-licenseurl' => 'URL de la licéncia',
+'exif-morepermissionsurl' => 'Informacions sus las licéncias alternativas',
'exif-pngfilecomment' => 'Comentari de fichièr JPEG',
'exif-disclaimer' => 'Desistiment',
'exif-contentwarning' => 'Avertiment sul contengut',
'exif-originalimageheight' => "Nautor de l'imatge abans d'èsser requadrada",
'exif-originalimagewidth' => "Largor de l'imatge abans d'èsser requadrada",
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Sens compression',
'exif-compression-2' => "CCITT Grop 3 Longor de l'encodatge Huffman modificat de dimension 1",
'exif-compression-3' => 'CCITT Grop 3 encodatge del fax',
'version-specialpages' => 'Paginas especialas',
'version-parserhooks' => 'Extensions del parser',
'version-variables' => 'Variablas',
+'version-antispam' => 'Prevencion del spam',
'version-skins' => 'Abilhatges',
'version-other' => 'Divèrs',
'version-mediahandlers' => 'Supòrts mèdia',
'version-hook-subscribedby' => 'Definit per',
'version-version' => '(Version $1)',
'version-license' => 'Licéncia',
+'version-poweredby-credits' => "Aqueste wiki fonciona gràcias a '''[//www.mediawiki.org/ MediaWiki]''', copyright © 2001-$1 $2.",
'version-poweredby-others' => 'autres',
'version-software' => 'Logicial installat',
'version-software-product' => 'Produch',
'version-software-version' => 'Version',
-
-# Special:FilePath
-'filepath' => "Camin d'accès d'un fichièr",
-'filepath-page' => 'Fichièr :',
-'filepath-submit' => 'Validar',
-'filepath-summary' => "Aquesta pagina especiala retorna lo camin d'accès complet d’un fichièr.
-Los imatges son afichats en nauta resolucion, los fichièrs àudio e vidèo son cargats e aviats dirèctament amb lor programa associat.",
+'version-entrypoints' => "URL dels punts d'entrada",
+'version-entrypoints-header-entrypoint' => "Punt d'entrada",
+'version-entrypoints-header-url' => 'URL',
+
+# Special:Redirect
+'redirect' => 'Redirigit per fichièr, utilizaire, o ID de revision',
+'redirect-legend' => 'Redirigir cap a una pagina o un fichièr',
+'redirect-submit' => 'Validar',
+'redirect-lookup' => 'Recèrca :',
+'redirect-value' => 'Valor :',
+'redirect-user' => "ID de l'utilizaire",
+'redirect-revision' => 'Revision de la pagina',
+'redirect-file' => 'Nom del fichièr',
+'redirect-not-exists' => 'Valor pas trobada',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Recèrca dels fichièrs en doble',
'compare-submit' => 'Comparar',
'compare-invalid-title' => "Lo títol qu'avètz especificat es incorrècte.",
'compare-title-not-exists' => "Lo títol qu'avètz especificat existís pas",
+'compare-revision-not-exists' => "La revision qu'avètz especificada existís pas.",
# Database error messages
'dberr-header' => 'Aqueste wiki a un problèma',
'htmlform-submit' => 'Sometre',
'htmlform-reset' => 'Desfar las modificacions',
'htmlform-selectorother-other' => 'Autre',
+'htmlform-no' => 'Non',
+'htmlform-yes' => 'Òc',
+'htmlform-chosen-placeholder' => 'Causir una opcion',
+
+# SQLite database support
+'sqlite-has-fts' => '$1 amb recèrca en tèxte integral suportada',
# New logging system
-'logentry-delete-delete' => '$1 a suprimit la pagina $3',
-'logentry-delete-restore' => '$1 a restablit la pagina $3',
+'logentry-delete-delete' => '$1 {{GENDER:$2|a suprimit}} la pagina $3',
+'logentry-delete-restore' => '$1 {{GENDER:$2|a restablit}} la pagina $3',
'revdelete-content-hid' => 'contengut amagat',
'revdelete-summary-hid' => 'resumit de modificacion amagat',
'revdelete-uname-hid' => 'nom d’utilizaire amagat',
'feedback-message' => 'Messatge :',
'feedback-cancel' => 'Anullar',
'feedback-submit' => 'Mandar vòstres comentaris',
+'feedback-error2' => 'Error : la modificacion a fracassat',
+'feedback-error3' => "Error : pas cap de responsa de l'API",
'feedback-close' => 'Fach',
# Search suggestions
'9' => '୯', # ୯
);
+$linkTrail = "/^([a-z\x{0B00}-\x{0B7F}]+)(.*)$/sDu";
+
/** namespace translations from translatewiki.net
* @author Shijualex
* @author Psubhashish
'tog-enotifminoredits' => 'ପୃଷ୍ଠାରେ ଏବଂ ଫାଇଲଗୁଡିକରେ ଛୋଟ ଛୋଟ ବଦଳ ହେଲେ ବି ମୋତେ ଇ-ମେଲ କରିବେ',
'tog-enotifrevealaddr' => 'ସୂଚନା ଇମେଲ ରେ ମୋର ଇମେଲ ଠିକଣା ଦେଖାଇବେ',
'tog-shownumberswatching' => 'ଦେଖୁଥିବା ବ୍ୟବହାରକାରୀଙ୍କ ସଂଖ୍ୟା ଦେଖାଇବେ',
-'tog-oldsig' => 'à¬\8fବà\87 ଥିବା ନାମ:',
+'tog-oldsig' => 'à¬\8fବà\87 ଥିବା ଦସà\8dତà¬\96ତ:',
'tog-fancysig' => 'ଦସ୍ତଖତକୁ ଉଇକିଟେକ୍ସଟ ଭାବରେ ଗଣିବେ (ଆପେଆପେ ଥିବା ଲିଙ୍କ ବିନା)',
'tog-showjumplinks' => '"ଡେଇଁଯିବେ" ଲିଙ୍କସବୁକୁ ସଚଳ କରିବେ',
'tog-uselivepreview' => 'ସାଥେ ସାଥେ ଚାଲିଥିବା ଦେଖଣା ବ୍ୟବହାର କରିବେ (ଜାଭାସ୍କ୍ରିପ୍ଟ ଲୋଡ଼ା)',
'oct' => 'ଅକ୍ଟୋବର',
'nov' => 'ନଭେମ୍ବର',
'dec' => 'ଡିସେମ୍ବର',
+'january-date' => '$1 ଜାନୁଆରୀ',
+'february-date' => '$1 ଫେବୃଆରୀ',
+'march-date' => '$1 ମାର୍ଚ୍ଚ',
+'april-date' => '$1 ଅପ୍ରେଲ',
+'may-date' => '$1 ମଇ',
+'june-date' => '$1 ଜୁନ',
+'july-date' => '$1 ଜୁଲାଇ',
+'august-date' => '$1 ଅଗଷ୍ଟ',
+'september-date' => '$1 ସେପ୍ଟେମ୍ବର',
+'october-date' => '$1 ଅକ୍ଟୋବର',
+'november-date' => '$1 ନଭେମ୍ବର',
+'december-date' => '$1 ଡିସେମ୍ବର',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|ଶ୍ରେଣୀ|ଶ୍ରେଣୀସମୂହ}}',
'disclaimers' => 'ଆମେ ଦାୟୀ ନୋହୁଁ',
'disclaimerpage' => 'Project:ଆମେ ଦାୟୀ ନୋହୁଁ',
'edithelp' => 'ଲେଖା ସାହାଯ୍ୟ',
-'edithelppage' => 'Help:ବଦଳାଇବା',
'helppage' => 'Help:ସୂଚୀ',
'mainpage' => 'ପ୍ରଧାନ ପୃଷ୍ଠା',
'mainpage-description' => 'ପ୍ରଧାନ ପୃଷ୍ଠା',
'welcomecreation-msg' => 'ଆପଣଙ୍କ ଖାତାଟି ଖୋଲାଗଲା
ନିଜର [[Special:Preferences|{{SITENAME}} ପସନ୍ଦସବୁକୁ]] ବଦଳାଇବାକୁ ଭୁଲିବେ ନାହିଁ ।',
'yourname' => 'ବ୍ୟବହାରକାରୀଙ୍କ ନାମ:',
+'userlogin-yourname' => 'ବ୍ୟବହାରକାରୀଙ୍କ ନାମ',
'yourpassword' => 'ପାସୱାର୍ଡ଼',
'userlogin-yourpassword' => 'ପାସୱାର୍ଡ଼',
'userlogin-yourpassword-ph' => 'ଆପଣଙ୍କ ପାସୱାର୍ଡ଼ ନିବେଶ କରନ୍ତୁ',
+'createacct-yourpassword-ph' => 'ପାସୱର୍ଡ଼ ନିବେଶ କରନ୍ତୁ',
'yourpasswordagain' => 'ପାସୱାର୍ଡ଼ ଆଉଥରେ:',
+'createacct-yourpasswordagain' => 'ପାସୱର୍ଡ଼ ନିଶ୍ଚିତ କରିବେ',
+'createacct-yourpasswordagain-ph' => 'ପୁଣି ପାସୱର୍ଡ଼ ନିବେଶ କରନ୍ତୁ',
'remembermypassword' => 'ଏହି ବ୍ରାଉଜରରେ (ସବୁଠୁ ଅଧିକ ହେଲେ $1 {{PLURAL:$1|day|ଦିନ}}) ପାଇଁ ମୋ ଲଗଇନ ମନେ ରଖିଥିବେ',
'securelogin-stick-https' => 'ଲଗ ଇନ କଲାପରେ HTTPS ସହ ଯୋଡ଼ି ହୋଇ ରହନ୍ତୁ',
'yourdomainname' => 'ଆପଣଙ୍କ ଡୋମେନ:',
'gotaccount' => 'ଆଗରୁ ଖାତାଟିଏ ଅଛି କି? $1.',
'gotaccountlink' => 'ଲଗ ଇନ',
'userlogin-resetlink' => 'ଲଗଇନ ତଥ୍ୟ ସବୁ ଭୁଲିଗେଲେକି?',
+'createacct-emailrequired' => 'ଇମେଲ ଠିକଣା',
+'createacct-emailoptional' => 'ଇମେଲ ଠିକଣା (ଇଚ୍ଛାଧୀନ)',
+'createacct-email-ph' => 'ଆପଣଙ୍କ ଇମେଲ ଠିକଣା ନିବେଶ କରନ୍ତୁ',
'createaccountmail' => 'ଗୋଟିଏ ସାମୟିକ ଜାହିତାହି ପାସୱାର୍ଡ ବ୍ୟବହାର କରନ୍ତୁ ଏବଂ ଏହାକୁ ତଳେ ଦିଆଯାଇଥିବା ଇ-ମେଲ ଠିକଣାକୁ ପଠେଇ ଦିଅନ୍ତୁ',
+'createacct-realname' => 'ପ୍ରକୃତ ନାମ (ଇଚ୍ଛାଧୀନ)',
'createaccountreason' => 'କାରଣ:',
+'createacct-reason' => 'କାରଣ',
+'createacct-reason-ph' => 'ଆପଣ ଅନ୍ୟଏକ ଖାତା କାହିଁକି ତିଆରି କରୁଛନ୍ତି',
'badretype' => 'ଆପଣ ଦେଇଥିବା ପାସବାର୍ଡ଼ଟି ମେଳଖାଉନାହିଁ ।',
'userexists' => 'ଆପଣ ଦେଇଥିବା ଇଉଜର ନାମ ଆଗରୁ ଅଛି ।
ଦୟାକରି ଅଲଗା ନାମଟିଏ ବାଛନ୍ତୁ ।',
# Special:PasswordReset
'passwordreset' => 'ପାସୱାର୍ଡ଼ ପୁନସ୍ଥାପନ କରନ୍ତୁ',
-'passwordreset-text' => 'ନିଜ ପାସୱାର୍ଡ଼କୁ ପୁନଃସ୍ଥାପନ କରିବା ପାଇଁ ଏହି ଆବେଦନ ପତ୍ରଟି ପୂରଣ କରନ୍ତୁ ।',
'passwordreset-legend' => 'ପାସୱାର୍ଡ଼ ପୁନସ୍ଥାପନ କରନ୍ତୁ',
'passwordreset-disabled' => 'ପାସୱାର୍ଡ଼କୁ ପୁରାପୁରି ମୂଳକୁ ଫେରାଇବା ଏହି ଉଇକିରେ ଅଚଳ କରାଯାଇଅଛି ।',
'passwordreset-emaildisabled' => 'ଏହି ଉଇକିରେ ଇମେଲ ସୁବିଧା ଅଚଳ କରାଯାଇଅଛି ।',
-'passwordreset-pretext' => '{{PLURAL:$1||ତଳେ ଥିବା ତଥ୍ୟସମୂହରୁ କୌଣସି ଗୋଟିଏ ଦିଅନ୍ତୁ}}',
'passwordreset-username' => 'ବ୍ୟବହାରକାରୀଙ୍କ ନାମ:',
'passwordreset-domain' => 'ଡୋମେନ:',
'passwordreset-capture' => 'ଯାଉଥିବା ଇ-ମେଲଟି ଦେଖିବେ?',
'searchmenu-legend' => 'ଖୋଜିବା ବିକଳ୍ପ',
'searchmenu-exists' => "'''ଏହି ଉଇକିରେ \"[[:\$1]]\" ନାଆଁରେ ପୃଷ୍ଠାଟିଏ ଅଛି ।'''",
'searchmenu-new' => "'''ଏହି ପ୍ରସଙ୍ଗଟି ଆଗରୁ ନାହିଁ, ତେଣୁ ''[[:$1]]'' ନାମରେ ପ୍ରସଙ୍ଗଟିଏ ଏଠାରେ ଗଢ଼ନ୍ତୁ!'''",
-'searchhelp-url' => 'Help:ସୂଚୀ',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ଏହି ନାମ ଆଗରୁ ଥିବା ପୃଷ୍ଠାସବୁ ଖୋଜିବେ]]',
'searchprofile-articles' => 'ସୂଚୀ ପୃଷ୍ଠା',
'searchprofile-project' => 'ସାହାଯ୍ୟ ଓ ପ୍ରକଳ୍ପ ପୃଷ୍ଠା',
'listusers-noresult' => 'ଜଣେ ବି ସଭ୍ୟ ମିଳିଲେ ନାହିଁ ।',
'listusers-blocked' => '(ଅଟକାଯାଇଥିବା)',
+# Special:ActiveUsers
+'activeusers' => 'ସଚଳ ସଭ୍ୟଙ୍କ ତାଲିକା',
+'activeusers-intro' => 'ବିଗତ $1 {{PLURAL:$1|ଦିନ|ଦିନ}} ଭିତରେ କିଛି ପ୍ରକାରର କାମ କରିଥିବା ସଭ୍ୟମାନଙ୍କର ତାଲିକା ।',
+'activeusers-count' => 'ବିଗତ {{PLURAL:$3|ଦିନ|$3 ଦିନରେ}}ରେ $1ଟି {{PLURAL:$1|ସମ୍ପାଦନା|ସମ୍ପାଦନାଗୁଡିକ}}',
+'activeusers-from' => 'ଏହି ନାମରେ ଆରମ୍ଭ ହେଉଥିବା ସଭ୍ୟମାନଙ୍କୁ ଦେଖାଇବେ:',
+'activeusers-hidebots' => 'ଆପେଆପେ ଚାଳିତ ସଭ୍ୟମାନଙ୍କୁ ଲୁଚାନ୍ତୁ',
+'activeusers-hidesysops' => 'ପରିଚାଳକମାନଙ୍କୁ ଲୁଚାଇବେ',
+'activeusers-noresult' => 'ଜଣେ ବି ସଭ୍ୟ ମିଳିଲେ ନାହିଁ ।',
+
# Special:ListGroupRights
'listgrouprights' => 'ସଭ୍ୟ ଗୋଠ ଅଧିକାରସମୂହ',
'listgrouprights-summary' => 'ତଳେ ଉଇକି ସ୍ଥିର କରାଯାଇଥିବା ଏକ ଏକ ବ୍ୟବହାରକାରୀ ଗୋଠର ତାଲିକା ଦିଆଯାଇଛି, ସେଥିରେ ସେମାନଙ୍କ ବ୍ୟବହାର ଅଧିକାର ବାବଦରେ ମଧ୍ୟ ଦିଆଯାଇଛି ।
'notvisiblerev' => 'ଜଣେ ଅଲଗା ବ୍ୟବହାରକାରୀଙ୍କ ଦେଇ କରାଯାଇଥିବା ସେଶ ସଂସ୍କରଣଟି ଲିଭାଇଦିଆଗଲା ।',
'watchnochange' => 'ଆପଣଙ୍କ ଦେଇ ଦେଖାଯାଇଥିବା ସମୟ ସୀମା ଭିତରେ କୌଣସିଟି ପୃଷ୍ଠାର ବଦଳ କରାଯାଇନାହିଁ ।',
'watchlist-details' => 'ଆପଣଙ୍କ ଦେଖଣା ତାଲିକାରେ ଆଲୋଚନା ପୃଷ୍ଠାକୁ ଛାଡ଼ି {{PLURAL:$1|$1 ଟି ପୃଷ୍ଠା|$1 ଟି ପୃଷ୍ଠା}} ଅଛି ।',
-'wlheader-enotif' => '* ଇ-ମେଲ ସୂଚନାକୁ ସଚଳ କରାଗଲା ।',
-'wlheader-showupdated' => "* ଆପଣ ଶେଷଥର ଦେଖିଥିବା ପୃଷ୍ଠାଗୁଡ଼ିକ '''ମୋଟା ଅକ୍ଷର'''ରେ ଦେଖାଯାଇଅଛି ।",
+'wlheader-enotif' => 'ଇମେଲ ସୂଚନା ସଚଳ କରାଗଲା ।',
+'wlheader-showupdated' => "ଆପଣ ଶେଷଥର ଦେଖିଥିବା ପୃଷ୍ଠାଗୁଡ଼ିକ '''ମୋଟା ଅକ୍ଷର'''ରେ ଦେଖାଯାଉଅଛି ।",
'watchmethod-recent' => 'ଏଡଖାଯାଇଥିବା ପୃଷ୍ଠାର ନଗଦ ବଦଳ ପରଖୁଛୁଁ',
'watchmethod-list' => 'ନଗଦ ବଦଳ ନିମନ୍ତେ ଦେଖାଯାଇଥିବା ପୃଷ୍ଠାମାନ ପରଖୁଛୁଁ',
'watchlistcontains' => 'ଆପଣଙ୍କ ଦେଖଣାତାଲିକାରେ $1 {{PLURAL:$1|ଗୋଟି ପୃଷ୍ଠା|ଗୋଟି ପୃଷ୍ଠା}} ରହିଅଛି ।',
'mycontris' => 'ଅବଦାନ',
'contribsub2' => '$1 ($2) ପାଇଁ',
'nocontribs' => 'ଏହି ନିର୍ଣ୍ଣାୟକବଳୀ ନିମନ୍ତେ କିଛି ବି ବଦଳ ମେଳ ଖାଇଲା ନାହିଁ ।',
-'uctop' => '(à¬\89ପର)',
+'uctop' => '(à¬\8fବà\87à¬\95ାର)',
'month' => 'ମାସରୁ (ଓ ତା ଆଗରୁ)',
'year' => 'ବର୍ଷରୁ (ଆଉ ତା ଆଗରୁ)',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'ଓସାର',
'exif-imagelength' => 'ଉଚ୍ଚତା',
'exif-bitspersample' => 'ଉପାଦାନ ପ୍ରତି ବିଟ',
'exif-originalimageheight' => 'ଛୋଟ କରାଯିବ ଆଗରୁ ଛବିର ଉଚ୍ଚତା',
'exif-originalimagewidth' => 'ଛୋଟ କରାଯିବ ଆଗରୁ ଛବିର ଓସାର',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'ଅସମ୍ପାଦିତ',
'exif-compression-2' => 'CCITT ଗୋଠ ୩ ୧-ବିମିୟ ବଦଳାଯାଇଥିବା ହଫମାନ ରନ ଲମ୍ବ ଏନକୋଡ଼ିଙ୍ଗ',
'exif-compression-3' => 'CCITT ଗୋଠ ୩ ଫାକ୍ସ ଏନକୋଡ଼ିଙ୍ଗ',
'version-entrypoints-header-entrypoint' => 'ପ୍ରବେଶ ବିନ୍ଦୁ',
'version-entrypoints-header-url' => 'ଇଉଆରଏଲ',
-# Special:FilePath
-'filepath' => 'ଫାଇଲ ପଥ',
-'filepath-page' => 'ଫାଇଲ:',
-'filepath-submit' => 'ଯିବା',
-'filepath-summary' => 'ଏହି ବିଶେଷ ପୃଷ୍ଠା ଏକ ଫାଇଲର ପୁରା ପଥ ଦେଖାଇଦିଏ ।
-ଛବିସବୁ ପୁରା ରେଜୋଲୁସନରେ ଦେଖାଇଦିଆଯାଏ, ବାକି ଫାଇଲସବୁ ସେମାନଙ୍କ ସହଯୋଗୀ ପ୍ରଗାମ ମାନଙ୍କ ଦେଇ ଆରମ୍ଭ ହୋଇଥାନ୍ତି ।',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'ଏହାର ନକଲ ପୃଷ୍ଠା ଖୋଜିବେ ।',
'fileduplicatesearch-summary' => 'ହାସ୍ ମୂଲ୍ୟକୁ ନେଇ ଦୁଇଥର ଥିବା ଫାଇଲ ଖୋଜନ୍ତୁ ।',
'logentry-newusers-create' => 'ସଭ୍ୟ ଖାତା $1 ତିଆରି କରାଗଲା',
'logentry-newusers-create2' => 'ସଭ୍ୟ ଖାତା $3ଟି $1 ଦ୍ଵାରା ତିଆରି କରାଗଲା',
'logentry-newusers-byemail' => '$1ଙ୍କ ଦ୍ଵାରା $3 ବ୍ୟବହାରକାରୀ ଖାତାଟି ଖୋଳାଗଲା ଏବଂ ପାସୱାର୍ଡଟି ଇ-ମେଲ ଦ୍ଵାରା ପଠାଗଲା',
-'logentry-newusers-autocreate' => '$1 ଖାତାଟି ଆପେଆପେ ତିଆରିହେଲା',
+'logentry-newusers-autocreate' => 'ବ୍ୟବହାରକାରୀ ଖାତା $1 ଆପେଆପେ {{GENDER:$2|ତିଆରିହେଲା}}',
'logentry-rights-rights' => '$1, $3 ପାଇଁ $4ରୁ $5କୁ ସଭ୍ୟପଦ ବଦଳାଇଲେ',
-'logentry-rights-rights-legacy' => '$1, $3 ପାଇଁ ଗୋଷ୍ଠୀ ସଭ୍ୟପଦ ବଦଳାଇଛି',
+'logentry-rights-rights-legacy' => '$1 ଗୋଷ୍ଠୀ ସଭ୍ୟପଦ $3 ପାଇଁ {{GENDER:$2|ବଦଳିଗଲା}}',
'logentry-rights-autopromote' => '$1 ଆପେ ଆପେ $4ରୁ $5କୁ ଗଲେ',
'rightsnone' => '(କିଛି ନାହିଁ)',
'disclaimers' => 'Бæрн',
'disclaimerpage' => 'Project:Бæрн',
'edithelp' => 'Ивынæн æххуыс',
-'edithelppage' => 'Help:Ивын',
'helppage' => 'Help:Мидис',
'mainpage' => 'Сæйраг фарс',
'mainpage-description' => 'Сæйраг фарс',
'yourpasswordagain' => 'Пароль ногæй бафысс:',
'createacct-yourpasswordagain' => 'Сбæлвырд кæн пароль',
'createacct-yourpasswordagain-ph' => 'Пароль ногæй бафысс',
-'remembermypassword' => 'Ð\91аÑ\85Ñ\8aÑ\83Ñ\8bдÑ\8b мæ кæнæд аÑ\88Ñ\8b бÑ\80аÑ\83зеÑ\80Ñ\8b (макÑ\81имÑ\83м $1 {{PLURAL:$1|бонмæ|бонмæ}})',
+'remembermypassword' => 'Ð\91аÑ\85Ñ\8aÑ\83Ñ\8bдÑ\8b мæ кæнæд аÑ\86Ñ\8b бÑ\80аÑ\83зеÑ\80Ñ\8b (макÑ\81имÑ\83м $1 {{PLURAL:$1|бонмæ}})',
'userlogin-remembermypassword' => 'Системæйы мæ дар',
'userlogin-signwithsecure' => 'Æдас бастдзинадæй',
'securelogin-stick-https' => 'Дарддæр дæр HTTPS-ы уылты, бахизыны фæстæ',
# Special:PasswordReset
'passwordreset' => 'Пароль раппарæн',
-'passwordreset-text' => 'Байдзаг кæн ацы формæ, цæмæй райсай дæ пароль ногæй сæвæрай.',
'passwordreset-legend' => 'Пароль раппарын',
'passwordreset-disabled' => 'Парол фæлварын ацы викийы хицæн у.',
'passwordreset-emaildisabled' => 'Электрон пост ацы викийы хицæн у.',
-'passwordreset-pretext' => '{{PLURAL:$1||Дæлдæр цы рардты хæйттæ ис, уыдонæй иу бафысс}}',
'passwordreset-username' => 'Фæсномыг:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Цы e-mail рауадис, уый æвдыст æрцæуæт?',
'viewprevnext' => 'Кæсын ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''Ацы викийы ис фарс \"[[:\$1]]\" номимæ.'''",
'searchmenu-new' => "'''Сараз фарс \"[[:\$1]]\" ацы викийы!'''",
-'searchhelp-url' => 'Help:Мидис',
'searchprofile-articles' => 'Мидисы фæрстæ',
'searchprofile-project' => 'Æххуыс æмæ Проекты фæрстæ',
'searchprofile-images' => 'Мультимеди',
# User preference toggles
'tog-underline' => 'ਲਿੰਕ ਹੇਠ-ਲਾਈਨ:',
'tog-justify' => 'ਪੈਰਾਗਰਾਫ਼ ਇਕਸਾਰ',
-'tog-hideminor' => 'ਤਾà¨\9c਼ਾ ਬਦਲਾà¨\85 ਵਿੱà¨\9a à¨\9bà©\8bà¨\9fà©\80à¨\86à¨\82 ਸà©\8bਧਾà¨\82 à¨\93ਹਲà©\87',
-'tog-hidepatrolled' => 'ਤਾà¨\9c਼ਾ ਬਦਲਾà¨\85 ਵਿੱà¨\9a à¨\9cਾà¨\82à¨\9a à¨\95à©\80ਤà©\80à¨\86à¨\82 ਸà©\8bਧਾà¨\82 à¨\93ਹਲà©\87',
+'tog-hideminor' => 'ਤਾà¨\9c਼ਾ ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਵਿੱà¨\9aà©\8bà¨\82 à¨\9bà©\8bà¨\9fà©\80à¨\86à¨\82 ਸà©\8bਧਾà¨\82 ਲà©\81à¨\95ਾà¨\93',
+'tog-hidepatrolled' => 'ਤਾà¨\9c਼ਾ ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਵਿੱà¨\9aà©\8bà¨\82 à¨\9cਾà¨\82à¨\9aà©\80à¨\86à¨\82 ਸà©\8bਧਾà¨\82 ਲà©\81à¨\95ਾà¨\93',
'tog-newpageshidepatrolled' => 'ਨਵੀਂ ਸਫ਼ਾ ਸੂਚੀ ਵਿੱਚੋਂ ਨਿਗਰਾਨੀ ਸਫ਼ੇ ਓਹਲੇ ਕਰੋ',
-'tog-extendwatchlist' => 'à¨\95à©\87ਵਲ ਹਾਲਿà¨\86 ਹà©\80 ਨਹà©\80à¨\82, ਸà¨\97à©\8bà¨\82 ਸਾਰà©\87 ਪਰਿਵਰਤਨਾà¨\82 ਨà©\82à©° ਵਿà¨\96ਾà¨\89ਣ ਲà¨\88 ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਨà©\82à©° ਵਿਸਥਾਰਿਤ à¨\95ਰà©\8b',
-'tog-usenewrc' => 'ਹਾਲ â\80\99à¨\9a ਹà©\8bà¨\8f ਬਦਲਾਵ à¨\85ਤà©\87 ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਵਿੱà¨\9a ਪੰਨà©\87 ਮà©\81ਤਾਬà¨\95 ਬਦਲਾਵ ਦà©\87 à¨\97ਰà©\81ੱਪ ਬਣਾà¨\93 (à¨\9cਾਵਾਸà¨\95à©\8dਰਿਪà¨\9f ਦà©\80 à¨\9cਰà©\82ਰਤ ਹੈ)',
+'tog-extendwatchlist' => 'ਸਿਰਫ਼ ਤਾà¨\9c਼ਾ ਹà©\80 ਨਹà©\80à¨\82, ਸà¨\97à©\8bà¨\82 ਸਾਰà©\80à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਨà©\82à©° ਵà¨\96ਾà¨\89ਣ ਲà¨\88 ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਨà©\82à©° ਵਧਾà¨\93',
+'tog-usenewrc' => 'ਹਾਲ â\80\99à¨\9a ਹà©\8bà¨\88à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 à¨\85ਤà©\87 ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਵਿੱà¨\9a ਪੰਨà©\87 ਮà©\81ਤਾਬà¨\95 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਦà©\87 à¨\97ਰà©\81ੱਪ ਬਣਾà¨\93 (à¨\9cਾਵਾਸà¨\95à©\8dਰਿਪà¨\9f ਲà©\8bà©\9cà©\80à¨\82ਦà©\80 ਹੈ)',
'tog-numberheadings' => 'ਆਟੋ-ਨੰਬਰ ਹੈਡਿੰਗ',
'tog-showtoolbar' => 'ਸੋਧ ਟੂਲਬਾਰ ਵੇਖੋ (JavaScript ਚਾਹੀਦੀ ਹੈ)',
'tog-editondblclick' => 'ਦੋ ਵਾਰ ਕਲਿੱਕ ਕਰਨ ਨਾਲ ਸਫ਼ੇ ਸੋਧੋ (ਜਾਵਾਸਕ੍ਰਿਪਟ ਚਾਹੀਦੀ ਹੈ)',
-'tog-editsection' => '[ਸੋਧ] ਲਿੰਕ ਰਾਹੀਂ ਭਾਗ ਸੋਧ ਕਰਨਾ ਚਾਲੂ',
+'tog-editsection' => '[ਸੋਧੋ] ਲਿੰਕਾਂ ਦੁਆਰਾ ਸੈਕਸ਼ਨ ਸੋਧਣਾ ਚਾਲੂ ਕਰੋ',
'tog-editsectiononrightclick' => 'ਭਾਗ ਸਿਰਲੇਖਾਂ ਤੇ ਸੱਜੀ ਕਲਿੱਕ ਦੁਆਰਾ ਸੋਧ ਯੋਗ ਕਰੋ (ਜਾਵਾ ਸਕ੍ਰਿਪਟ ਲੋੜੀਂਦੀ ਹੈ)',
-'tog-showtoc' => 'ਤਤà¨\95ਰਾ ਵà©\87à¨\96ਾà¨\93 (3 ਤà©\8bà¨\82 ਵੱਧ ਸਿਰਲà©\87à¨\96ਾà¨\82 ਵਾਲà©\87 ਪੰਨਿà¨\86à¨\82 ਲà¨\88)',
+'tog-showtoc' => 'ਤਤਕਰਾ ਵਖਾਓ (3 ਤੋਂ ਵੱਧ ਸਿਰਲੇਖਾਂ ਵਾਲੇ ਪੰਨਿਆਂ ਲਈ)',
'tog-rememberpassword' => 'ਇਸ ਬਰਾਊਜ਼ਰ ਉੱਤੇ ਮੇਰਾ ਲਾਗਇਨ ਯਾਦ ਰੱਖੋ ($1 {{PLURAL:$1|ਦਿਨ|ਦਿਨਾਂ}} ਲਈ ਵੱਧ ਤੋਂ ਵੱਧ)',
-'tog-watchcreations' => 'ਮà©\87ਰà©\87 ਵਲà©\8bà¨\82 ਬਣਾà¨\8f à¨\97à¨\8f ਪੰਨà©\87 à¨\85ਤà©\87 à¨\85ੱਪਲà©\8bਡ à¨\95à©\80ਤà©\80à¨\86à¨\82 ਫਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਵਿੱਚ ਪਾਓ',
-'tog-watchdefault' => 'ਮà©\87ਰà©\87 ਵੱਲà©\8bà¨\82 ਸੰਪਾਦਤ à¨\97à¨\8f ਪੰਨà©\87 à¨\85ਤà©\87 ਫਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਵਿੱਚ ਪਾਓ',
-'tog-watchmoves' => 'ਮà©\87ਰà©\87 ਵੱਲà©\8bà¨\82 ਸਥਾਨਾà¨\82ਤਰਤ ਪੰਨà©\87 à¨\85ਤà©\87 ਫਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਵਿੱਚ ਪਾਓ',
-'tog-watchdeletion' => 'ਮà©\87ਰà©\87 ਵਲà©\8bà¨\82 ਹà¨\9fਾà¨\8f à¨\97à¨\8f ਪੰਨà©\87 à¨\85ਤà©\87 ਫਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਵਿੱਚ ਪਾਓ',
-'tog-minordefault' => 'ਮà©\87ਰà©\87 ਸਾਰà©\87 ਸੰਪਾਦਨ à¨\9bà©\8bà¨\9fà©\87 ਬਦਲਾà¨\85 ਹਨ',
+'tog-watchcreations' => 'ਮà©\87ਰà©\87 ਵਲà©\8bà¨\82 ਬਣਾà¨\8f à¨\97à¨\8f ਪੰਨà©\87 à¨\85ਤà©\87 à¨\85ੱਪਲà©\8bਡ à¨\95à©\80ਤà©\80à¨\86à¨\82 ਫਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਵਿੱਚ ਪਾਓ',
+'tog-watchdefault' => 'ਮà©\87ਰà©\87 ਵੱਲà©\8bà¨\82 ਸà©\8bਧà©\87 à¨\97à¨\8f ਪੰਨà©\87 à¨\85ਤà©\87 ਫ਼ਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਵਿੱਚ ਪਾਓ',
+'tog-watchmoves' => 'ਮà©\87ਰà©\87 ਵੱਲà©\8bà¨\82 ਬਦਲà©\87 ਸਿਰਲà©\87à¨\96ਾà¨\82 ਵਾਲ਼à©\87 ਪੰਨà©\87 à¨\85ਤà©\87 ਫ਼ਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਵਿੱਚ ਪਾਓ',
+'tog-watchdeletion' => 'ਮà©\87ਰà©\87 ਵਲà©\8bà¨\82 ਮਿà¨\9fਾà¨\8f à¨\97à¨\8f ਪੰਨà©\87 à¨\85ਤà©\87 ਫ਼ਾà¨\88ਲਾà¨\82 ਮà©\87ਰà©\80 ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਵਿੱਚ ਪਾਓ',
+'tog-minordefault' => 'ਸਾਰà©\87 ਫà©\87ਰ-ਬਦਲਾà¨\82 â\80\99ਤà©\87 ਮà©\82ਲ ਰà©\82ਪ ਵਿà¨\9a à¨\9bà©\8bà¨\9fà©\87 ਹà©\8bਣ ਦਾ ਨਿਸ਼ਾਨ ਲਾà¨\93',
'tog-previewontop' => 'ਸੋਧ ਬਾਕਸ ਤੋਂ ਪਹਿਲਾਂ ਝਲਕ ਵੇਖਾਓ',
'tog-previewonfirst' => 'ਪਹਿਲੀ ਸੋਧ ਉੱਤੇ ਝਲਕ ਵੇਖਾਓ',
'tog-nocache' => 'ਬਰਾਊਜ਼ਰ ਸਫ਼ਾ ਕੈਸ਼ ਕਰਨਾ ਬੰਦ ਕਰੋ',
'january' => 'ਜਨਵਰੀ',
'february' => 'ਫਰਵਰੀ',
'march' => 'ਮਾਰਚ',
-'april' => 'ਅਪਰੈਲ',
+'april' => 'à¨\85ਪà©\8dਰà©\88ਲ',
'may_long' => 'ਮਈ',
'june' => 'ਜੂਨ',
'july' => 'ਜੁਲਾਈ',
'january-gen' => 'ਜਨਵਰੀ',
'february-gen' => 'ਫ਼ਰਵਰੀ',
'march-gen' => 'ਮਾਰਚ',
-'april-gen' => 'ਅਪਰੈਲ',
+'april-gen' => 'à¨\85ਪà©\8dਰà©\88ਲ',
'may-gen' => 'ਮਈ',
'june-gen' => 'ਜੂਨ',
'july-gen' => 'ਜੁਲਾਈ',
'qbedit' => 'ਸੋਧ',
'qbpageoptions' => 'ਇਹ ਸਫ਼ਾ',
'qbmyoptions' => 'ਮੇਰੇ ਸਫ਼ੇ',
-'qbspecialpages' => 'ਖਾਸ ਸਫ਼ੇ',
+'qbspecialpages' => 'à¨\96਼ਾਸ ਸਫ਼à©\87',
'faq' => 'ਸਵਾਲ-ਜਵਾਬ',
'faqpage' => 'Project:ਸਵਾਲ-ਜਵਾਬ',
'errorpagetitle' => 'ਗਲਤੀ',
'returnto' => '$1 ’ਤੇ ਵਾਪਸ ਜਾਓ।',
'tagline' => '{{SITENAME}} ਤੋਂ',
-'help' => 'ਮੱਦਦ',
+'help' => 'ਮਦਦ',
'search' => 'ਖੋਜ',
'searchbutton' => 'ਖੋਜ',
'go' => 'ਜਾਓ',
'searcharticle' => 'ਜਾਓ',
-'history' => 'ਸਫ਼ਾ ਅਤੀਤ',
+'history' => 'ਸਫ਼à©\87 ਦਾ à¨\85ਤà©\80ਤ',
'history_short' => 'ਅਤੀਤ',
'updatedmarker' => 'ਮੇਰੀ ਆਖਰੀ ਫੇਰੀ ਤੋਂ ਬਾਅਦ ਦੇ ਅੱਪਡੇਟ',
'printableversion' => 'ਛਪਣਯੋਗ ਵਰਜਨ',
'permalink' => 'ਪੱਕਾ ਲਿੰਕ',
'print' => 'ਛਾਪੋ',
'view' => 'ਵੇਖੋ',
-'edit' => 'ਸੋਧ',
+'edit' => 'ਸੋਧੋ',
'create' => 'ਬਣਾਓ',
'editthispage' => 'ਇਹ ਸਫ਼ਾ ਸੋਧੋ',
'create-this-page' => 'ਇਹ ਸਫ਼ਾ ਬਣਾਓ',
'projectpage' => 'ਪ੍ਰੋਜੈਕਟ ਸਫ਼ਾ ਵੇਖੋ',
'imagepage' => 'ਫਾਇਲ ਸਫ਼ਾ ਵੇਖੋ',
'mediawikipage' => 'ਸੁਨੇਹਾ ਪੇਜ ਵੇਖੋ',
-'templatepage' => 'ਸਾà¨\82à¨\9aਾ ਪੰਨਾ ਵੇਖੋ',
+'templatepage' => 'ਫਰਮਾ ਪੰਨਾ ਵੇਖੋ',
'viewhelppage' => 'ਮੱਦਦ ਸਫ਼ਾ ਵੇਖੋ',
'categorypage' => 'ਕੈਟੈਗਰੀ ਸਫ਼ਾ ਵੇਖੋ',
'viewtalkpage' => 'ਚਰਚਾ ਵੇਖੋ',
'otherlanguages' => 'ਹੋਰ ਭਾਸ਼ਾਵਾਂ ਵਿੱਚ',
'redirectedfrom' => '($1 ਤੋਂ ਰੀਡਿਰੈਕਟ)',
'redirectpagesub' => 'ਰੀਡਿਰੈਕਟ ਸਫ਼ਾ',
-'lastmodifiedat' => 'à¨\87ਹ ਸਫ਼à©\87 ਵਿੱà¨\9a à¨\86à¨\96ਰà©\80 ਸà©\8bਧ $1 ਨà©\82à©° $2 ਵਜੇ ਹੋਈ।',
+'lastmodifiedat' => 'à¨\87ਸ ਸਫ਼à©\87 ਵਿੱà¨\9a à¨\86à¨\96਼ਰà©\80 ਸà©\8bਧ $1 ਨà©\82à©° $2 ਵਜੇ ਹੋਈ।',
'viewcount' => 'ਇਹ ਸਫ਼ਾ {{PLURAL:$1|ਇੱਕ ਵਾਰ|$1 ਵਾਰ}} ਵੇਖਿਆ ਗਿਆ।',
'protectedpage' => 'ਸੁਰੱਖਿਅਤ ਪੇਜ',
'jumpto' => 'ਇਸ ’ਤੇ ਜਾਓ:',
'disclaimers' => 'ਦਾਅਵੇ',
'disclaimerpage' => 'Project:ਆਮ ਦਾਅਵੇ',
'edithelp' => 'ਸੋਧ ਮੱਦਦ',
-'edithelppage' => 'Help:ਸੋਧ',
'helppage' => 'Help:ਸਮੱਗਰੀ',
'mainpage' => 'ਮੁੱਖ ਸਫ਼ਾ',
'mainpage-description' => 'ਮੁੱਖ ਸਫ਼ਾ',
'policy-url' => 'Project:ਨੀਤੀ',
-'portal' => 'ਸਮਾà¨\9c ਸੱਥ',
+'portal' => 'à¨à¨¾à¨\88à¨\9aਾਰà¨\95 ਸੱਥ',
'portal-url' => 'Project:ਸਮਾਜ ਸੱਥ',
'privacy' => 'ਪਰਾਈਵੇਸੀ ਨੀਤੀ',
'privacypage' => 'Project:ਪਰਾਈਵੇਸੀ ਨੀਤੀ',
'retrievedfrom' => '"$1" ਤੋਂ ਲਿਆ',
'youhavenewmessages' => 'ਤੁਹਾਡੇ ਲਈ $1। ($2)',
'newmessageslink' => 'ਨਵੇਂ ਸੁਨੇਹੇ',
-'newmessagesdifflink' => 'à¨\86à¨\96ਰà©\80 ਬਦਲਾà¨\85',
+'newmessagesdifflink' => 'à¨\86à¨\96਼ਰà©\80 ਤਬਦà©\80ਲà©\80',
'youhavenewmessagesfromusers' => '{{PLURAL:$3|ਇੱਕ ਵਰਤੋਂਕਾਰ|$3 ਵਰਤੋਂਕਾਰਾਂ}} ਵੱਲੋਂ ਤੁਹਾਨੂੰ $1 ($2)।',
'youhavenewmessagesmanyusers' => 'ਕਈ ਯੂਜ਼ਰ ਵੱਲੋਂ ਤੁਹਾਨੂੰ $1 ($2)।',
'newmessageslinkplural' => '{{PLURAL:$1|ਇੱਕ ਨਵਾਂ ਸੁਨੇਹਾ|ਨਵੇਂ ਸੁਨੇਹੇ}} {{PLURAL:$1|ਹੈ|ਹਨ}}',
# Special:PasswordReset
'passwordreset' => 'ਪਾਸਵਰਡ ਮੁੜ-ਸੈੱਟ ਕਰੋ',
-'passwordreset-text' => 'ਆਪਣਾ ਪਾਸਵਰਡ ਮੁੜ-ਸੈੱਟ ਕਰਨ ਲਈ ਇਹ ਫਾਰਮ ਪੂਰਾ ਕਰੋ।',
'passwordreset-legend' => 'ਪਾਸਵਰਡ ਮੁੜ-ਸੈੱਟ ਕਰੋ',
'passwordreset-disabled' => 'ਇਸ ਵਿਕੀ ਤੇ ਪਾਸਵਰਡ ਰੀਸੈੱਟ ਬੰਦ ਕੀਤੇ ਗਏ ਹਨ।',
'passwordreset-emaildisabled' => 'ਇਹ ਵਿਕਿ ਉੱਤੇ ਈਮੇਲ ਫੀਚਰ ਬੰਦ ਕੀਤਾ ਹੋਇਆ ਹੈ।',
'summary' => 'ਸਾਰ:',
'subject' => 'ਵਿਸ਼ਾ/ਹੈੱਡਲਾਈਨ:',
'minoredit' => 'ਇਹ ਇੱਕ ਛੋਟੀ ਸੋਧ ਹੈ',
-'watchthis' => 'à¨\87ਹ ਸਫ਼à©\87 ਦà©\80 ਨਿà¨\97ਰਾਨà©\80',
+'watchthis' => 'à¨\87ਸ ਸਫ਼à©\87 ਤà©\87 ਨà¨\9c਼ਰ ਰੱà¨\96à©\8b',
'savearticle' => 'ਸਫ਼ਾ ਸੰਭਾਲੋ',
'preview' => 'ਝਲਕ',
'showpreview' => 'ਝਲਕ ਵੇਖਾਓ',
'''ਇਹ ਹਾਲੇ ਸਾਂਭੀ ਨਹੀਂ ਗਈ ਹੈ!'''",
'updated' => '(ਅੱਪਡੇਟ)',
'note' => "'''ਨੋਟ:'''",
-'previewnote' => "'''ਯਾਦ ਰੱਖੋ, ਇਹ ਕੇਵਲ ਇੱਕ ਝਲਕ ਹੈ।'''
-ਤà©\81ਹਾਡà©\87 ਬਦਲਾà¨\85 ਹਾਲà©\87 ਸੰà¨à¨¾à¨²à©\87 ਨਹà©\80à¨\82 à¨\97à¨\8f ਹਨ।",
-'continue-editing' => 'ਸà©\8bਧ à¨\96à©\87ਤਰ ਨà©\82à©° ਜਾਓ',
+'previewnote' => "'''ਯਾਦ ਰੱਖੋ ਇਹ ਸਿਰਫ਼ ਇੱਕ ਝਲਕ ਹੈ।'''
+ਤà©\81ਹਾਡà©\80à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਹਾਲà©\87 ਸਾà¨\82à¨à©\80à¨\86à¨\82 ਨਹà©\80à¨\82 à¨\97à¨\88à¨\86à¨\82!",
+'continue-editing' => 'ਸà©\8bਧ à¨\96à©\87ਤਰ ਤà©\87 ਜਾਓ',
'previewconflict' => 'ਇਹ ਝਲਕ ਲਿਖਤ ਦਾ ਓਹ ਅਕਸ ਪੇਸ਼ ਕਰਦੀ ਹੈ ਜਿਵੇਂ ਓਹ ਤੁਹਾਡੇ ਸਾਂਭੇ ਜਾਣ ਤੋਂ ਬਾਅਦ ਦਿੱਸੇਗਾ।',
'editing' => '$1 ਸੋਧ ਜਾਰੀ',
'creating' => '$1 ਬਣਾਇਆ ਜਾ ਰਿਹਾ ਹੈ',
'nocreate-loggedin' => 'ਤੁਹਾਨੂੰ ਨਵੇਂ ਸਫ਼ੇ ਬਣਾਉਣ ਦੀ ਇਜਾਜ਼ਤ ਨਹੀਂ ਹੈ।',
'permissionserrors' => 'ਅਧਿਕਾਰ ਗਲਤੀਆਂ',
'permissionserrorstext' => 'ਤੁਹਾਨੂੰ ਇੰਝ ਕਰਨ ਦੇ ਅਧਿਕਾਰ ਨਹੀਂ ਹਨ। ਹੇਠ ਦਿੱਤੇ {{PLURAL:$1|ਕਾਰਨ|ਕਾਰਨ}} ਨੇ:',
-'permissionserrorstext-withaction' => 'ਤà©\81ਹਾਨà©\82à©° $2 ਲà¨\88 à¨\85ਧਿà¨\95ਾਰ ਨਹà©\80à¨\82 ਹਨ, à¨\85ੱà¨\97à©\87 ਦਿੱਤà©\87 {{PLURAL:$1|à¨\95ਾਰਨ|à¨\95ਾਰਨਾà¨\82}} à¨\95ਰà¨\95à©\87:',
+'permissionserrorstext-withaction' => 'à¨\85ੱà¨\97à©\87 ਦਿੱਤà©\87 {{PLURAL:$1|à¨\95ਾਰਨ|à¨\95ਾਰਨਾà¨\82}} à¨\95ਰà¨\95à©\87 ਤà©\81ਹਾਡà©\87 à¨\95à©\8bਲ $2 ਲà¨\88 ਹੱà¨\95 ਨਹà©\80à¨\82 ਹਨ:',
'recreate-moveddeleted-warn' => "'''ਚਿਤਾਵਣੀ:
ਤੁਸੀਂ ਐਸਾ ਪੰਨਾ ਬਣਾ ਰਹੇ ਹੋ ਜੋ ਪਹਿਲਾਂ ਹਟਾਇਆ ਜਾ ਚੁੱਕਾ ਹੈ।'''
'last' => 'ਪਿੱਛੇ',
'page_first' => 'ਪਹਿਲਾਂ',
'page_last' => 'ਆਖਰੀ',
-'histlegend' => "à¨\85ੰਤਰ ਵੇਖੋ:
-ਮੁਕਾਬਲਾ ਕਰਨ ਲਈ ਰੀਵਿਜਨਾਂ ਦੇ ਰੇਡੀਓ ਬਟਨਾਂ ਵਿੱਚ ਨਿਸ਼ਾਨ ਲਾਓ ਅਤੇ ਜਾਓ ਜਾਂ ਸਭ ਤੋਂ ਥੱਲੇ ਵਾਲੇ ਬਟਨ ਤੇ ਕਲਿੱਕ ਕਰੋ। <br />
+'histlegend' => "ਫ਼ਰà¨\95 ਵੇਖੋ:
+ਮੁਕਾਬਲਾ ਕਰਨ ਲਈ ਰੀਵਿਜਨਾਂ ਦੇ ਰੇਡੀਓ ਬਟਨਾਂ ਵਿੱਚ ਨਿਸ਼ਾਨ ਲਾਓ ਅਤੇ \"ਜਾਓ\" ਜਾਂ ਸਭ ਤੋਂ ਥੱਲੇ ਵਾਲੇ ਬਟਨ ਤੇ ਕਲਿੱਕ ਕਰੋ। <br />
ਲੈਜਅੰਡ:
-'''({{int:cur}})''' = ਨਵà©\87à¨\82 ਰà©\80ਵਿà¨\9cਨ ਨਾਲà©\8bà¨\82 à¨\85ੰਤਰ, '''({{int:last}})''' = ਪਿੱà¨\9bਲà©\80 ਰà©\80ਵਿà¨\9cਨ ਨਾਲà©\8bà¨\82 à¨\85ੰਤਰ, '''({{int:minoreditletter}})''' = à¨\9bà©\8bà¨\9fਾ ਬਦਲਾਵ।",
+'''({{int:cur}})''' = ਨਵà©\87à¨\82 ਰà©\80ਵਿà¨\9cਨ ਨਾਲà©\8bà¨\82 ਫ਼ਰà¨\95, '''({{int:last}})''' = ਪਿà¨\9bਲà©\87 ਰà©\80ਵਿà¨\9cਨ ਨਾਲà©\8bà¨\82 ਫ਼ਰà¨\95, '''({{int:minoreditletter}})''' = à¨\9bà©\8bà¨\9fà©\80 ਤਬਦà©\80ਲà©\80।",
'history-fieldset-title' => 'ਬਰਾਊਜ਼ਰ ਅਤੀਤ',
'history-show-deleted' => 'ਕੇਵਲ ਹਟਾਏ ਗਏ',
'histfirst' => 'ਸਭ ਤੋਂ ਪਹਿਲਾਂ ਦੇ',
'searchmenu-legend' => 'ਖੋਜ ਚੋਣਾਂ',
'searchmenu-exists' => "'''ਇਸ ਵਿਕੀ ’ਤੇ \"[[:\$1]]\" ਨਾਮ ਦਾ ਸਫਾ ਹੈ।'''",
'searchmenu-new' => "'''ਇਸ ਵਿਕੀ ’ਤੇ \"[[:\$1]]\" ਪੰਨਾ ਬਣਾਓ!'''",
-'searchhelp-url' => 'Help:ਸਮੱਗਰੀ',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ਇਸ ਅਗੇਤਰ ਵਾਲ਼ੇ ਸਫ਼ੇ ਵੇਖੋ]]',
'searchprofile-articles' => 'ਸਮੱਗਰੀ ਪੰਨੇ',
'searchprofile-project' => 'ਮੱਦਦ ਤੇ ਪਰੋਜੈਕਟ ਸਫ਼ੇ',
'yourrealname' => 'ਅਸਲੀ ਨਾਮ:',
'yourlanguage' => 'ਭਾਸ਼ਾ:',
'yourvariant' => 'ਸਮੱਗਰੀ ਭਾਸ਼ਾ ਰੂਪ:',
-'yournick' => 'ਨਵਾà¨\82 ਦਸਤà¨\96ਤ:',
+'yournick' => 'ਨਵà©\87à¨\82 ਦਸਤà¨\96਼ਤ:',
'prefs-help-signature' => 'ਗੱਲ-ਬਾਤ ਸਫ਼ਿਆਂ ਉੱਤੇ ਟਿੱਪਣੀਆਂ ਦੇ ਆਖ਼ਰ ਵਿਚ "<nowiki>~~~~</nowiki>" ਲਾਓ ਜੋ ਤੁਹਾਡੇ ਦਸਤਖ਼ਤ ਅਤੇ ਵਕਤ ਦੀ ਮੋਹਰ ਵਿਚ ਤਬਦੀਲ ਹੋ ਜਾਵੇਗਾ।',
'badsiglength' => 'ਦਸਤਖ਼ਤ ਬਹੁਤ ਲੰਬਾ ਹੋ ਗਿਆ ਹੈ। ਇਹ {{PLURAL:$1|ਅੱਖਰ|ਅੱਖਰਾਂ}} ਤੋਂ ਲੰਬਾ ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ।',
'yourgender' => 'ਲਿੰਗ:',
'prefs-info' => 'ਮੁੱਢਲੀ ਜਾਣਕਾਰੀ',
'prefs-i18n' => 'ਅੰਤਰਰਾਸ਼ਟਰੀਕਰਨ',
'prefs-signature' => 'ਦਸਤਖ਼ਤ',
-'prefs-dateformat' => 'ਮਿਤà©\80 ਸ਼à©\88ਲà©\80',
+'prefs-dateformat' => 'ਮਿਤà©\80 ਦਾ à¨\85ੰਦਾà¨\9c਼',
'prefs-advancedediting' => 'ਤਕਨੀਕੀ ਚੋਣਾਂ',
'prefs-advancedrc' => 'ਤਕਨੀਕੀ ਚੋਣਾਂ',
'prefs-advancedrendering' => 'ਤਕਨੀਕੀ ਚੋਣਾਂ',
'email-address-validity-invalid' => 'ਸਹੀ ਈ-ਮੇਲ ਪਤਾ ਦਾਖ਼ਲ ਕਰੋ',
# User rights
-'userrights' => 'ਯà©\82à¨\9c਼ਰ ਹੱà¨\95 ਪਰਬੰਧ',
+'userrights' => 'ਵਰਤà©\8bà¨\82à¨\95ਾਰ ਦà©\87 à¨\85ਧਿà¨\95ਾਰਾà¨\82 ਦਾ ਰੱà¨\96-ਰà¨\96ਾà¨\93',
'userrights-lookup-user' => 'ਯੂਜ਼ਰ ਗਰੁੱਪ ਦੇਖਭਾਲ',
'userrights-user-editname' => 'ਇੱਕ ਯੂਜ਼ਰ ਨਾਂ ਦਿਓ:',
'editusergroup' => 'ਯੂਜ਼ਰ ਗਰੁੱਪ ਸੋਧ',
# Groups
'group' => 'ਗਰੁੱਪ:',
-'group-user' => 'ਯà©\82à¨\9c਼ਰ',
+'group-user' => 'ਵਰਤà©\8bà¨\82à¨\95ਾਰ',
'group-autoconfirmed' => 'ਖ਼ੁਦ-ਤਸਦੀਕਸ਼ੁਦਾ ਮੈਂਬਰ',
'group-bot' => 'ਬੋਟ',
'group-sysop' => 'ਪਰਸ਼ਾਸ਼ਕ',
'right-upload_by_url' => 'URL ਤੋਂ ਫਾਇਲਾਂ ਅੱਪਲੋਡ ਕਰੋ',
'right-autoconfirmed' => 'ਨੀਮ-ਸੁਰੱਖਿਅਤ ਸਫ਼ਿਆਂ ਨੂੰ ਸੋਧਣਾ',
'right-delete' => 'ਸਫ਼ੇ ਹਟਾਓ',
-'right-bigdelete' => 'ਵੱਡà©\87 à¨\87ਤਿਹਾਸ ਵਾਲà©\87 ਪੰਨà©\87 ਹਟਾਉਣੇ',
-'right-browsearchive' => 'ਹà¨\9fਾà¨\8f à¨\97à¨\8f ਪੰਨà©\87 à¨\96à©\8bà¨\9cਣਾ',
+'right-bigdelete' => 'ਵੱਡà©\87 à¨\85ਤà©\80ਤ ਵਾਲà©\87 ਪੰਨà©\87 ਮਿਟਾਉਣੇ',
+'right-browsearchive' => 'ਮਿà¨\9fਾà¨\8f ਹà©\8bà¨\8f ਸਫ਼à©\87 à¨\96à©\8bà¨\9cà©\8b',
'right-undelete' => 'ਸਫ਼ੇ ਨੂੰ ਅਣ-ਮਿਟਾਇਆ ਕਰਨਾ',
'right-suppressionlog' => 'ਪ੍ਰਾਈਵੇਟ ਚਿੱਠੇ ਵੇਖਣਾ',
'right-block' => 'ਦੂਜੇ ਮੈਂਬਰਾਂ ਦੇ ਸੋਧ ਕਰਨ ਤੇ ਪਾਬੰਦੀ ਲਾਉਣੀ',
'rightslogtext' => 'ਇਹ ਮੈਂਬਰ ਹੱਕਾਂ ਵਿਚ ਹੋਈਆਂ ਤਬਦੀਲੀਆਂ ਦਾ ਚਿੱਠਾ ਹੈ।',
# Associated actions - in the sentence "You do not have permission to X"
-'action-read' => 'à¨\87ਹ ਪੰਨਾ ਪà©\9cà©\8dਹਨ',
+'action-read' => 'à¨\87ਹ ਸਫ਼ਾ ਪà©\9cà©\8dਹà©\8b',
'action-edit' => 'ਇਹ ਪੰਨੇ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਨ',
-'action-createpage' => 'ਪੰਨà©\87 ਬਣਾà¨\89ਣ',
+'action-createpage' => 'ਸਫ਼à©\87 ਬਣਾà¨\93',
'action-createtalk' => 'ਚਰਚਾ ਸਫ਼ੇ ਬਣਾਉਣ',
-'action-createaccount' => 'ਵਰਤà©\8bà¨\82à¨\95ਾਰ à¨\96ਾਤਾ ਬਣਾà¨\89ਣ',
+'action-createaccount' => 'à¨\87ਹ ਵਰਤà©\8bà¨\82à¨\95ਾਰ à¨\96ਾਤਾ ਬਣਾà¨\93',
'action-minoredit' => 'ਇਹ ਸੋਧ ਨੂੰ ਛੋਟੀ ਤੌਰ ਉੱਤੇ ਮੰਨੋ',
'action-move' => 'ਇਹ ਸਫ਼ਾ ਭੇਜੋ',
'action-move-subpages' => 'ਇਹ ਸਫ਼ਾ ਤੇ ਇਸ ਦੇ ਅਧੀਨ-ਸਫ਼ਿਆਂ ਨੂੰ ਭੇਜੋ',
'action-reupload-shared' => 'ਇਹ ਫਾਇਲ ਨੂੰ ਸਾਂਝੀ ਕੀਤੀ ਰਿਪੋਜ਼ਟਰੀ ਉੱਤੇ ਲਿਖੋ',
'action-upload_by_url' => 'ਇਹ ਫਾਇਲ ਨੂੰ URL ਤੋਂ ਅੱਪਲੋਡ ਕਰੋ',
'action-writeapi' => 'ਲਿਖਣ API ਵਰਤੋਂ',
-'action-delete' => 'à¨\87ਹ ਪੰਨਾ ਹਟਾਓ',
-'action-deleterevision' => 'à¨\87ਹ ਰà©\80ਵਿà¨\9cਨ ਹਟਾਓ',
+'action-delete' => 'à¨\87ਹ ਪੰਨਾ ਮਿਟਾਓ',
+'action-deleterevision' => 'à¨\87ਹ ਰà©\80ਵਿà¨\9cਨ ਮਿਟਾਓ',
'action-deletedhistory' => 'ਇਸ ਸਫ਼ੇ ਦਾ ਮਿਟਾਇਆ ਅਤੀਤ ਵੇਖਣ',
'action-browsearchive' => 'ਮਿਟਾਏ ਸਫ਼ੇ ਖੋਜਣ',
'action-undelete' => 'ਇਹ ਸਫ਼ਾ ਅਣ-ਮਿਟਿਆ ਕਰਨ',
'action-sendemail' => 'ਈ-ਮੇਲਾਂ ਭੇਜੋ',
# Recent changes
-'nchanges' => '$1 {{PLURAL:$1|ਬਦਲਾà¨\85}}',
-'recentchanges' => 'ਹਾਲ â\80\99à¨\9a ਹà©\8bà¨\8f ਬਦਲਾà¨\85',
-'recentchanges-legend' => 'ਹਾਲ ਦà©\87 ਪਰਿਵਰਤਨ ਸਬੰਧà©\80 ਵਿà¨\95ਲਪ',
+'nchanges' => '$1 {{PLURAL:$1|ਤਬਦà©\80ਲà©\80|ਤਬਦà©\80ਲà©\80à¨\86à¨\82}}',
+'recentchanges' => 'ਹਾਲ â\80\99à¨\9a ਹà©\8bà¨\88à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82',
+'recentchanges-legend' => 'ਹਾਲ ਦà©\80à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਸਬੰਧà©\80 à¨\9aà©\8bਣਾà¨\82',
'recentchanges-summary' => 'ਇਸ ਵਿਕੀ ’ਤੇ ਹੋਈਆਂ ਸਭ ਤੋਂ ਨਵੀਆਂ ਤਬਦੀਲੀਆਂ ਇਸ ਸਫ਼ੇ ’ਤੇ ਵੇਖੋ।',
-'recentchanges-feed-description' => 'à¨\87ਸ ਵਿà¨\95à©\80 â\80\99ਤà©\87 ਹਾਲ â\80\98à¨\9a ਹà©\8bà¨\8f ਬਦਲਾਵ ਇਸ ਫ਼ੀਡ ’ਚ ਵੇਖੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ।',
-'recentchanges-label-newpage' => 'à¨\87ਹ ਸੰਪਾਦਨ ਨਾਲ ਨਵਾà¨\82 ਪੰਨਾ ਬਣਾà¨\87à¨\86 à¨\97ਿà¨\86',
-'recentchanges-label-minor' => 'à¨\87ਹ à¨\87ੱà¨\95 à¨\9bà©\8bà¨\9fਾ ਸੰਪਾਦਨ ਹੈ',
-'recentchanges-label-bot' => 'à¨\87ਹ ਸੰਪਾਦਨ à¨\87ੱà¨\95 ਬà©\8bà¨\9fਾ ਦà©\81à¨\86ਰਾ à¨\95à©\80ਤਾ à¨\97ਿà¨\86 ਸੀ',
+'recentchanges-feed-description' => 'à¨\87ਸ ਵਿà¨\95à©\80 â\80\99ਤà©\87 ਹਾਲ â\80\98à¨\9a ਹà©\8bà¨\88à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਇਸ ਫ਼ੀਡ ’ਚ ਵੇਖੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ।',
+'recentchanges-label-newpage' => 'à¨\87ਸ ਸà©\8bਧ ਨà©\87 ਨਵਾà¨\82 ਪੰਨਾ ਬਣਾà¨\87à¨\86 ਹà©\88',
+'recentchanges-label-minor' => 'à¨\87ਹ à¨\87ੱà¨\95 à¨\9bà©\8bà¨\9fà©\80 ਸà©\8bਧ ਹੈ',
+'recentchanges-label-bot' => 'à¨\87ਹ ਸà©\8bਧ à¨\87ੱà¨\95 ਬà©\8bà¨\9f ਦà©\81à¨\86ਰਾ à¨\95à©\80ਤà©\80 à¨\97à¨\88 ਸੀ',
'recentchanges-label-unpatrolled' => 'ਇਹ ਫੇਰ-ਬਦਲ ਹਾਲੇ ਵੇਖਿਆ ਨਹੀਂ ਗਿਆ',
'rcnote' => "$4, $5 ਤੱਕ ਆਖਰੀ {{PLURAL:$2|ਦਿਨ|'''$2''' ਦਿਨਾਂ}} ਵਿੱਚ {{PLURAL:$1|'''1''' ਬਦਲੀ ਹੋਈ ਹੈ।|'''$1''' ਬਦਲੀਆਂ ਹੋਈਆਂ ਹਨ।}}",
'rcnotefrom' => "'''$2''' ਤੱਕ ('''$1''' ਤੱਕ ਦਿੱਸਦੇ) ਬਦਲਾਵ ਹੇਠ ਦਿੱਤੀਆਂ ਹਨ।",
-'rclistfrom' => '$1 ਤà©\8bà¨\82 ਸ਼à©\81ਰà©\82 à¨\95ਰà¨\95à©\87 ਨਵà©\87à¨\82 ਬਦਲਾà¨\85 ਵà©\87ਖਾਓ',
-'rcshowhideminor' => '$1 ਛੋਟੇ ਬਦਲਾਅ',
+'rclistfrom' => '$1 ਤà©\8bà¨\82 ਸ਼à©\81ਰà©\82 à¨\95ਰà¨\95à©\87 ਨਵà©\80à¨\86à¨\82 ਸà©\8bਧਾà¨\82 ਵਖਾਓ',
+'rcshowhideminor' => 'ਛੋਟੀਆਂ ਤਬਦੀਲੀਆਂ $1',
'rcshowhidebots' => '$1 ਬੋਟ',
-'rcshowhideliu' => '$1 ਲਾਗਇਨ ਹੋਏ ਵਰਤੋਂਕਾਰਾਂ',
-'rcshowhideanons' => '$1 ਆਈ॰ਪੀ ਵਰਤੋਂਕਾਰਾਂ ਦੇ ਬਦਲਾਅ',
-'rcshowhidepatr' => 'à¨\9cਾà¨\82à¨\9aà©\87 ਹà©\8bà¨\8f ਸੰਪਾਦਨ $1',
-'rcshowhidemine' => 'ਮà©\87ਰà©\87 ਬਦਲਾà¨\85 $1',
-'rclinks' => 'ਪਿੱà¨\9bਲà©\87 $2 ਦਿਨਾà¨\82 ਵਿੱà¨\9a ਹà©\8bà¨\8f $1 ਬਦਲਾà¨\85 ਵà©\87ਖਾਓ<br /> $3',
-'diff' => 'à¨\85ੰਤਰ',
-'hist' => 'à¨\87ਤਿਹਾਸ',
-'hide' => 'à¨\9bà©\81ਪਾਓ',
+'rcshowhideliu' => '$1 ਲਾਗਇਨ ਹੋਏ ਵਰਤੋਂਕਾਰ',
+'rcshowhideanons' => 'ਅਣਜਾਣ ਵਰਤੋਂਕਾਰ $1',
+'rcshowhidepatr' => 'à¨\9cਾà¨\82à¨\9aà©\80à¨\86à¨\82 ਹà©\8bà¨\88à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 $1',
+'rcshowhidemine' => 'ਮà©\87ਰà©\80à¨\86à¨\82 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 $1',
+'rclinks' => 'ਪਿà¨\9bਲà©\87 $2 ਦਿਨਾà¨\82 ਵਿੱà¨\9a ਹà©\8bà¨\88à¨\86à¨\82 $1 ਤਬਦà©\80ਲà©\80à¨\86à¨\82 ਵਖਾਓ<br /> $3',
+'diff' => 'ਫ਼ਰà¨\95',
+'hist' => 'à¨\85ਤà©\80ਤ',
+'hide' => 'ਲà©\81à¨\95ਾਓ',
'show' => 'ਵੇਖਾਓ',
'minoreditletter' => 'ਛੋ',
'newpageletter' => 'ਨ',
'rc_categories_any' => 'ਕੋਈ ਵੀ',
'newsectionsummary' => '/* $1 */ ਨਵਾਂ ਭਾਗ',
'rc-enhanced-expand' => 'ਵੇਰਵਾ ਵੇਖਾਓ (ਜਾਵਾਸਕ੍ਰਿਪਟ ਲੋੜੀਂਦੀ ਹੈ)',
-'rc-enhanced-hide' => 'ਵà©\87ਰਵਾ à¨\9bà©\81ਪਾਓ',
+'rc-enhanced-hide' => 'ਵà©\87ਰਵਾ ਲà©\81à¨\95ਾਓ',
'rc-old-title' => 'ਅਸਲ ਵਿੱਚ "$1" ਵਜੋਂ ਬਣਾਇਆ',
# Recent changes linked
'recentchangeslinked-to' => 'ਇਸਦੇ ਬਦਲੇ ਇਸ ਪੰਨੇ ਨਾਲ ਜੁੜੇ ਪੰਨਿਆਂ ਵਿੱਚ ਹੋਏ ਬਦਲਾਅ ਵਿਖਾਓ',
# Upload
-'upload' => 'ਫਾਈਲ ਅਪਲੋਡ ਕਰੋ',
+'upload' => 'ਫ਼ਾà¨\88ਲ à¨\85ਪਲà©\8bਡ à¨\95ਰà©\8b',
'uploadbtn' => 'ਫਾਇਲ ਅੱਪਲੋਡ ਕਰੋ',
'reuploaddesc' => 'ਅੱਪਲੋਡ ਫਾਰਮ ਉੱਤੇ ਜਾਓ।',
'uploadnologin' => 'ਲਾਗਇਨ ਨਹੀਂ ਹੋ',
'filetype-missing' => 'ਫਾਇਲ ਦੀ ਕੋਈ ਐਕਸ਼ਟੇਸ਼ਨ ਨਹੀਂ ਹੈ (ਜਿਵੇਂ ".jpg").',
'empty-file' => 'ਤੁਹਾਡੇ ਵਲੋਂ ਦਿੱਤੀ ਫਾਇਲ ਖਾਲੀ ਸੀ।',
'file-too-large' => 'ਤੁਹਾਡੇ ਵਲੋਂ ਦਿੱਤੀ ਫਾਇਲ ਬਹੁਤ ਵੱਡੀ ਸੀ।',
-'filename-tooshort' => 'ਫਾà¨\88ਲ ਬਹà©\81ਤ à¨\9bà©\8bà¨\9fà©\80 ਹੈ।',
+'filename-tooshort' => 'ਫ਼ਾà¨\88ਲ ਦਾ ਨਾà¨\82 ਬਹà©\81ਤ à¨\9bà©\8bà¨\9fਾ ਹੈ।',
'filetype-banned' => 'ਇਸ ਕਿਸਮ ਦੀ ਫਾਈਲ ਦੀ ਮਨਾਹੀ ਹੈ।',
'verification-error' => 'ਇਹ ਫਾਇਲ ਫਾਇਲ ਜਾਂਚ ਪੂਰੀ ਨਹੀਂ ਕਰਦੀ ਹੈ।',
-'illegal-filename' => 'à¨\87ਸ ਫਾà¨\88ਲ-ਨਾਮ ਦà©\80 à¨\85ਨà©\81ਮਤà©\80 ਨਹੀਂ ਹੈ।',
+'illegal-filename' => 'à¨\87ਸ ਫਾà¨\88ਲ-ਨਾਮ ਦà©\80 à¨\87à¨\9cਾà¨\9c਼ਤ ਨਹੀਂ ਹੈ।',
'unknown-error' => 'ਅਣਜਾਣ ਗਲਤੀ ਆਈ ਹੈ।',
'tmp-create-error' => 'ਆਰਜ਼ੀ ਫਾਇਲ ਬਣਾਉਣ ਲਈ ਅਸਮਰੱਥ ਹੈ।',
'tmp-write-error' => 'ਆਰਜ਼ੀ ਫਾਇਲ ਲਿਖਣ ਲਈ ਗਲਤੀ ਹੈ।',
'backend-fail-store' => 'ਫ਼ਾਈਲ "$1", "$2" ਵਿਚ ਸਾਂਭੀ ਨਹੀਂ ਜਾ ਸਕੀ।',
'backend-fail-copy' => 'ਫ਼ਾਈਲ "$1", "$2" ਵਿਚ ਨਕਲ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ।',
'backend-fail-move' => 'ਫ਼ਾਈਲ "$1", "$2" ਤੇ ਭੇਜੀ ਨਹੀਂ ਜਾ ਸਕੀ।',
-'backend-fail-opentemp' => 'à¨\85ਸਥਾà¨\88 ਫਾਈਲ ਖੋਲ੍ਹੀ ਨਹੀਂ ਜਾ ਸਕੀ।',
+'backend-fail-opentemp' => 'à¨\86ਰà¨\9c਼à©\80 ਫ਼ਾਈਲ ਖੋਲ੍ਹੀ ਨਹੀਂ ਜਾ ਸਕੀ।',
# Special:UploadStash
'uploadstash-refresh' => 'ਫ਼ਾਈਲਾਂ ਦੀ ਲਿਸਟ ਨੂੰ ਤਾਜ਼ਾ ਕਰੋ',
# File description page
'file-anchor-link' => 'ਫਾਈਲ',
-'filehist' => 'ਫਾà¨\88ਲ ਦਾ à¨\87ਤਿਹਾਸ',
+'filehist' => 'ਫ਼ਾà¨\88ਲ ਦਾ à¨\85ਤà©\80ਤ',
'filehist-help' => 'ਤਾਰੀਖ/ਸਮੇਂ ’ਤੇ ਕਲਿੱਕ ਕਰੋ ਤਾਂ ਉਸ ਸਮੇਂ ਦੀ ਫਾਈਲ ਪੇਸ਼ ਹੋ ਜਾਵੇਗੀ।',
'filehist-deleteall' => 'ਸਭ ਹਟਾਓ',
'filehist-deleteone' => 'ਇਹ ਹਟਾਓ',
'statistics-pages-desc' => 'ਇਸ ਵਿਕੀ ਦੇ ਸਾਰੇ ਸਫ਼ੇ, ਗੱਲ-ਬਾਤ ਸਫ਼ਿਆਂ, ਰੀਡਾਇਰੈਕਟਾਂ ਇਤਿਆਦਿ ਨੂੰ ਸ਼ਾਮਲ ਕਰਦੇ ਹੋਏ',
'statistics-files' => 'ਅਪਲੋਡ ਕੀਤੀਆਂ ਗਈਆਂ ਫਾਈਲਾਂ',
'statistics-edits-average' => 'ਪ੍ਰਤੀ ਸਫ਼ਾ ਔਸਤਨ ਸੋਧਾਂ',
-'statistics-users' => 'ਪੰà¨\9cà©\80à¨\95ਰਿਤ [[Special:ListUsers|ਵਰਤà©\8bà¨\82à¨\95ਾਰਾà¨\82]]',
+'statistics-users' => 'ਰà¨\9cਿਸà¨\9fà©\8dਰਡ [[Special:ListUsers|ਵਰਤà©\8bà¨\82à¨\95ਾਰ]]',
'statistics-users-active' => 'ਸਰਗਰਮ ਯੂਜ਼ਰ',
'statistics-users-active-desc' => 'ਮੈਂਬਰ, ਜਿੰਨ੍ਹਾ ਨੇ ਆਖ਼ਰੀ {{PLURAL:$1|ਦਿਨ|$1 ਦਿਨਾਂ}} ਵਿਚ ਕੋਈ ਕੰਮ ਕੀਤਾ ਹੈ।',
'statistics-mostpopular' => 'ਸਭ ਤੋਂ ਵੱਧ ਵੇਖੇ ਸਫ਼ੇ',
'newpages' => 'ਨਵੇਂ ਸਫ਼ੇ',
'newpages-username' => 'ਯੂਜ਼ਰ-ਨਾਂ:',
'ancientpages' => 'ਸਭ ਤੋਂ ਪੁਰਾਣੇ ਪੇਜ',
-'move' => 'ਸਥਾਨਾà¨\82ਤਰਨ',
+'move' => 'ਸਿਰਲà©\87à¨\96 ਬਦਲà©\8b',
'movethispage' => 'ਇਹ ਸਫ਼ਾ ਭੇਜੋ',
'unusedcategoriestext' => 'ਇਹ ਕੈਟੇਗਰੀ ਸਫ਼ੇ ਮੌਜੂਦ ਹਨ ਹਾਲਾਂਕਿ ਕਿਸੇ ਵੀ ਸਫ਼ੇ ਜਾਂ ਕੈਟੇਗਰੀ ਨੇ ਇਹਨਾਂ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕੀਤੀ।',
'notargettitle' => 'ਟਾਰਗੇਟ ਨਹੀਂ',
# Watchlist
'watchlist' => 'ਨਿਗਰਾਨ-ਸੂਚੀ',
-'mywatchlist' => 'ਨਿਗਰਾਨ-ਸੂਚੀ',
+'mywatchlist' => 'ਨਿਗਰਾਨੀ-ਲਿਸਟ',
'watchlistfor2' => '$1 $2 ਲਈ',
'nowatchlist' => 'ਤੁਹਾਡੀ ਨਿਗਰਾਨੀ-ਲਿਸਟ ਵਿਚ ਕੋਈ ਚੀਜ਼ ਨਹੀਂ ਹੈ।',
'watchlistanontext' => 'ਆਪਣੀ ਨਿਗਰਾਨੀ-ਲਿਸਟ ਵਿਚਲੀਆਂ ਚੀਜ਼ਾਂ ਵੇਖਣ ਜਾਂ ਸੋਧਣ ਲਈ ਮਿਹਰਬਾਨੀ ਕਰਕੇ $1।',
'watchlistcontains' => 'ਤੁਹਾਡੀ ਨਿਗਰਾਨੀ-ਲਿਸਟ ਵਿਚ $1 {{PLURAL:$1|ਸਫ਼ਾ ਹੈ|ਸਫ਼ੇ ਹਨ}}।',
'wlnote' => "$3, $4 ਮੁਤਾਬਕ ਆਖ਼ਰੀ {{PLURAL:$2|ਘੰਟੇ|'''$2''' ਘੰਟਿਆਂ}} ਵਿਚ {{PLURAL:
$1|ਤਬਦੀਲੀ ਹੋਈ|'''$1''' ਤਬਦੀਲੀਆਂ ਹੋਈਆਂ}}, ਹੇਠਾਂ ਵੇਖੋ।",
-'wlshowlast' => 'ਪਿੱà¨\9bਲà©\87 $1 à¨\98à©°à¨\9fà©\87 $2 ਦਿਨ $3 ਵà©\87à¨\96à©\8b',
-'watchlist-options' => 'ਨਿਗਰਾਨ-ਸੂਚੀ ਚੋਣਾਂ',
+'wlshowlast' => 'ਪਿà¨\9bਲà©\87 $1 à¨\98à©°à¨\9fà©\87 $2 ਦਿਨ $3 ਵà¨\96ਾà¨\93',
+'watchlist-options' => 'ਨਿਗਰਾਨੀ-ਲਿਸਟ ਚੋਣਾਂ',
# Displayed when you click the "watch" button and it is in the process of watching
'watching' => 'ਨਿਗ੍ਹਾ (ਵਾਚ) ਰੱਖੀ ਜਾ ਰਹੀ ਹੈ...',
'whatlinkshere-hideredirs' => 'ਅਸਿੱਧੇ ਰਾਹ $1',
'whatlinkshere-hidetrans' => '$1 ਇੱਥੇ ਕੀ ਕੀ ਜੁੜਦਾ ਹੈ।',
'whatlinkshere-hidelinks' => '$1 ਲਿੰਕ',
-'whatlinkshere-hideimages' => 'ਫਾਈਲ ਲਿੰਕ $1',
+'whatlinkshere-hideimages' => 'ਫ਼ਾà¨\88ਲ ਲਿੰà¨\95 $1',
'whatlinkshere-filters' => 'ਫਿਲਟਰ',
# Block/unblock
-'blockip' => 'à¨\85ਵਰà©\8bਧਤ à¨\95ਰà©\8b',
+'blockip' => 'ਪਾਬੰਦà©\80ਸ਼à©\81ਦਾ ਵਰਤà©\8bà¨\82à¨\95ਾਰ',
'ipadressorusername' => 'IP ਐਡਰੈਸ ਜਾਂ ਯੂਜ਼ਰ ਨਾਂ:',
'ipbexpiry' => 'ਮਿਆਦ:',
'ipbreason' => 'ਕਾਰਨ:',
ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਕੋਈ ਹੋਰ ਨਾਮ ਚੁਣੋ।',
'movedto' => 'ਭੇਜਿਆ',
'movepage-page-moved' => 'ਸਫ਼ਾ $1 ਨੂੰ $2 ’ਤੇ ਭੇਜਿਆ ਜਾ ਚੁੱਕਾ ਹੈ।',
-'movelogpage' => 'ਸਥਾਨਾà¨\82ਤਰਣ ਦਾ ਚਿੱਠਾ',
+'movelogpage' => 'ਸਿਰਲà©\87à¨\96 ਬਦਲà©\80 ਦਾ ਚਿੱਠਾ',
'movereason' => 'ਕਾਰਨ:',
'revertmove' => 'ਉਲਟਾਓ',
'delete_and_move' => 'ਹਟਾਓ ਅਤੇ ਮੂਵ ਕਰੋ',
'tooltip-p-logo' => 'ਮੁੱਖ ਪੰਨੇ ’ਤੇ ਜਾਓ',
'tooltip-n-mainpage' => 'ਮੁੱਖ ਪੰਨੇ ’ਤੇ ਜਾਓ',
'tooltip-n-mainpage-description' => 'ਮੁੱਖ ਪੰਨੇ ’ਤੇ ਜਾਓ',
-'tooltip-n-portal' => 'ਪਰਯà©\8bà¨\9cਨਾ ਬਾਰੇ, ਤੁਸੀਂ ਕੀ ਕਰ ਸਕਦੇ ਹੋ, ਕਿੱਥੇ ਕੁਝ ਲੱਭਣਾ ਹੈ',
+'tooltip-n-portal' => 'ਪà©\8dਰà©\8bà¨\9cà©\88à¨\95à¨\9f ਬਾਰੇ, ਤੁਸੀਂ ਕੀ ਕਰ ਸਕਦੇ ਹੋ, ਕਿੱਥੇ ਕੁਝ ਲੱਭਣਾ ਹੈ',
'tooltip-n-currentevents' => 'ਮੌਜੂਦਾ ਸਮਾਗਮ ਬਾਰੇ ਪਿਛਲੀ ਜਾਣਕਾਰੀ ਲੱਭੋ',
'tooltip-n-recentchanges' => 'ਵਿਕੀ ਵਿੱਚ ਹਾਲ ’ਚ ਹੋਈਆਂ ਬਦਲੀਆਂ ਦੀ ਸੂਚੀ',
'tooltip-n-randompage' => 'ਇੱਕ ਰਲਵਾਂ ਪੰਨਾ ਲੋਡ ਕਰੋ',
'tooltip-feed-atom' => 'ਇਸ ਪੰਨੇ ਦੀ ਐਟਮ ਫ਼ੀਡ',
'tooltip-t-contributions' => 'ਇਸ ਵਰਤੋਂਕਾਰ ਦੇ ਯੋਗਦਾਨ ਦੀ ਸੂਚੀ',
'tooltip-t-emailuser' => 'ਇਸ ਵਰਤੋਂਕਾਰ ਨੂੰ ਈ-ਮੇਲ ਭੇਜੋ',
-'tooltip-t-upload' => 'à¨\9aਿੱਤਰ à¨\9cਾà¨\82 ਮà©\80ਡà©\80à¨\86 ਫਾਈਲਾਂ ਅਪਲੋਡ ਕਰੋ',
-'tooltip-t-specialpages' => 'ਸਾਰà©\87 ਵਿਸ਼à©\87ਸ਼ ਪੰਨਿà¨\86à¨\82 ਦà©\80 ਸà©\82à¨\9aà©\80',
+'tooltip-t-upload' => 'ਤਸਵà©\80ਰ à¨\9cਾà¨\82 ਮà©\80ਡà©\80à¨\86 ਫ਼ਾਈਲਾਂ ਅਪਲੋਡ ਕਰੋ',
+'tooltip-t-specialpages' => 'ਸਾਰà©\87 à¨\96਼ਾਸ ਪੰਨਿà¨\86à¨\82 ਦà©\80 ਲਿਸà¨\9f',
'tooltip-t-print' => 'ਇਹ ਪੰਨੇ ਦਾ ਛਪਣਯੋਗ ਵਰਜਨ',
'tooltip-t-permalink' => 'ਪੰਨੇ ਦੇ ਇਸ ਰੀਵਿਜਨ ਲਈ ਪੱਕਾ ਲਿੰਕ',
'tooltip-ca-nstab-main' => 'ਸਮੱਗਰੀ ਪੰਨਾ ਵੇਖੋ',
'tooltip-ca-nstab-user' => 'ਵਰਤੋਂਕਾਰ ਪੰਨਾ ਵੇਖੋ',
'tooltip-ca-nstab-media' => 'ਮੀਡਿਆ ਪੇਜ ਵੇਖੋ',
'tooltip-ca-nstab-special' => 'ਇਹ ਵਿਸ਼ੇਸ਼ ਪੰਨਾ ਹੈ, ਤੁਸੀਂ ਇਸ ਪੰਨੇ ਨੂੰ ਬਦਲ ਨਹੀਂ ਸਕਦੇ।',
-'tooltip-ca-nstab-project' => 'ਪਰਯà©\8bà¨\9cਨਾ ਪੰਨਾ ਵੇਖੋ',
+'tooltip-ca-nstab-project' => 'ਪà©\8dਰà©\8bà¨\9cà©\88à¨\95à¨\9f ਪੰਨਾ ਵੇਖੋ',
'tooltip-ca-nstab-image' => 'ਫਾਈਲ ਪੰਨਾ ਵੇਖੋ',
'tooltip-ca-nstab-mediawiki' => 'ਸਿਸਟਮ ਸੁਨੇਹੇ ਵੇਖੋ',
'tooltip-ca-nstab-template' => 'ਸਾਂਚਾ ਵੇਖੋ',
'tooltip-compareselectedversions' => 'ਇਸ ਪੰਨੇ ਦੇ ਦੋ ਚੁਣੇ ਹੋਏ ਸੋਧਾਂ ਵਿੱਚ ਫ਼ਰਕ ਵੇਖੋ',
'tooltip-watch' => 'ਇਸ ਪੰਨੇ ਨੂੰ ਆਪਣੀ ਧਿਆਨਸੂਚੀ ਵਿੱਚ ਪਾਓ',
'tooltip-watchlistedit-normal-submit' => 'ਸਿਰਲੇਖ ਹਟਾਓ',
-'tooltip-watchlistedit-raw-submit' => 'ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 à¨\85ਪਡà©\87à¨\9f ਕਰੋ',
+'tooltip-watchlistedit-raw-submit' => 'ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਤਾà¨\9c਼ਾ ਕਰੋ',
'tooltip-upload' => 'ਅਪਲੋਡ ਸ਼ੁਰੂ ਕਰੋ',
'tooltip-rollback' => "''ਵਾਪਸ ਮੋੜੋ'' ਇੱਕ ਹੀ ਕਲਿੱਕ ਨਾਲ ਆਖਰੀ ਯੋਗਦਾਨ ਨੂੰ ਰੱਦ ਕਰ ਦਿੰਦਾ ਹੈ",
'tooltip-undo' => '"ਉਧੇੜਨਾ" ਇਸ ਬਦਲਾਵ ਨੂੰ ਰੱਦ ਕਰਕੇ ਸੋਧ ਫ਼ਾਰਮ ਨੂੰ ਝਲਕ ਦੇ ਸ਼ੈਲੀ ਵਿੱਚ ਦਿਖਾਉਂਦਾ ਹੈ।
'skinname-monobook' => 'ਮੋਨੋਬੁੱਕ',
# Browsing diffs
-'previousdiff' => 'â\86\90 à¨\87ਸ ਤà©\8bà¨\82 ਪà©\81ਰਾਣਾ ਬਦਲਾà¨\85',
-'nextdiff' => 'ਤਾà¨\9cਾ ਸੰਪਾਦਨ →',
+'previousdiff' => 'â\86\90 ਪà©\81ਰਾਣà©\80 ਤਬਦà©\80ਲà©\80',
+'nextdiff' => 'ਨਵà©\80à¨\82 ਤਬਦà©\80ਲà©\80 →',
# Media information
'thumbsize' => 'ਥੰਮਨੇਲ ਆਕਾਰ:',
ਲਾਈਨ ਵਿਚ ਪਹਿਲੀ ਕੜੀ ਗ਼ਲਤ ਫ਼ਾਈਲ ਦੀ ਕੜੀ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ। ਉਸ ਲਾਈਨ ’ਚ ਅੱਗੇ ਦਿਤੀਆਂ ਕੜੀਆਂ ਨੂੰ ਇਤਰਾਜ਼ਯੋਗ ਮੰਨਿਆ ਜਾਵੇਗਾ, ਭਾਵ ਉਹ ਪੰਨੇ ਜਿਨ੍ਹਾਂ ਵਿਚ ਫ਼ਾਈਲ ਕਿਸੇ ਲਾਈਨ ਵਿਚ ਸਥਿਤ ਹੋ ਸਕਦੀ ਹੈ।',
# Metadata
-'metadata' => 'ਮà©\80à¨\9fਾਡਾਟਾ',
+'metadata' => 'ਮà©\80à¨\9fਾਡà©\88ਟਾ',
'metadata-help' => 'ਇਸ ਫ਼ਾਈਲ ਵਿੱਚ ਵਾਧੂ ਜਾਣਕਾਰੀਆਂ ਹਨ, ਜੋ ਸ਼ਾਇਦ ਉਸ ਕੈਮਰੇ ਜਾਂ ਸਕੈਨਰ ਦੀ ਦੇਣ ਹਨ ਜੋ ਇਸਨੂੰ ਬਣਾਉਣ ਲਈ ਵਰਤਿਆ ਗਿਆ। ਜੇ ਇਸ ਫ਼ਾਈਲ ਵਿੱਚ ਕੋਈ ਤਬਦੀਲੀ ਕੀਤੀ ਗਈ ਹੈ ਤਾਂ ਹੋ ਸਕਦਾ ਹੈ ਕੁਝ ਵੇਰਵੇ ਬਦਲੀ ਫ਼ਾਈਲ ਦਾ ਸਹੀ ਰੂਪਮਾਨ ਨਾ ਹੋਣ।',
'metadata-fields' => 'ਇਸ ਸੁਨੇਹੇ ਵਿੱਚ ਸੂਚੀਬੱਧ ਖੇਤਰ ਚਿੱਤਰ ਪੰਨੇ ’ਚ ਸ਼ਾਮਲ ਕੀਤੇ ਜਾਣਗੇ ਜੋ ਉਦੋਂ ਦਿੱਸਦੇ ਹਨ ਜਦੋ ਮੈਟਾਡੈਟਾ ਖਾਕਾ ਬੰਦ ਹੋਵੇ। ਬਾਕੀ ਉਂਞ ਹੀ ਲੁਕੇ ਹੋਣਗੇ।',
'exif-urgency-normal' => 'ਸਧਾਰਨ ($1)',
# External editor support
-'edit-externally' => 'ਬਾਹਰà©\80 à¨\90ਪਲà©\80à¨\95à©\87ਸ਼ਨ ਵਰਤਦà©\87 ਹà©\8bà¨\8f à¨\87ਸ ਫਾà¨\88ਲ ਨà©\82à©° ਸੰਪਾਦਨ à¨\95ਰà©\8b।',
+'edit-externally' => 'ਬਾਹਰà©\80 à¨\90ਪਲà©\80à¨\95à©\87ਸ਼ਨ ਵਰਤਦà©\87 ਹà©\8bà¨\8f à¨\87ਸ ਫਾà¨\88ਲ ਨà©\82à©° ਸà©\8bਧà©\8b',
'edit-externally-help' => '(ਹੋਰ ਜਾਣਕਾਰੀ ਲਈ [//www.mediawiki.org/wiki/Manual:External_editors setup instructions] ਵੇਖੋ)',
# 'all' in various places, this might be different for inflected languages
'limitall' => 'ਸਭ',
# Email address confirmation
-'confirmemail' => 'ਈਮੇਲ ਐਡਰੈੱਸ ਪੁਸ਼ਟੀ',
+'confirmemail' => 'ਈ-ਮੇਲ ਪਤਾ ਤਸਦੀਕ ਕਰੋ',
'confirmemail_send' => 'ਇੱਕ ਪੁਸ਼ਟੀ ਕੋਡ ਭੇਜੋ',
'confirmemail_sent' => 'ਪੁਸ਼ਟੀ ਈਮੇਲ ਭੇਜੀ ਗਈ।',
'confirmemail_invalid' => 'ਗਲਤ ਪੁਸ਼ਟੀ ਕੋਡ ਹੈ। ਕੋਡ ਦੀ ਮਿਆਦ ਪੁੱਗੀ ਹੋ ਸਕਦੀ ਹੈ।',
'confirmemail_loggedin' => 'ਤੁਹਾਡਾ ਈ-ਮੇਲ ਪਤਾ ਹੁਣ ਤਸਦੀਕ ਹੋ ਚੁੱਕਾ ਹੈ।',
-'confirmemail_subject' => '{{SITENAME}} ਈਮੇਲ ਐਡਰੈੱਸ ਪੁਸ਼ਟੀ',
+'confirmemail_subject' => '{{SITENAME}} ਈ-ਮੇਲ ਪਤਾ ਤਸਦੀਕ',
# Scary transclusion
'scarytranscludetoolong' => '[URL ਬਹੁਤ ਲੰਬਾ ਹੈ]',
'confirm_purge_button' => 'ਠੀਕ ਹੈ',
# Multipage image navigation
-'imgmultipageprev' => 'â\86\90 ਪਿੱà¨\9bਲਾ ਪੰਨਾ',
+'imgmultipageprev' => '← ਪਿਛਲਾ ਪੰਨਾ',
'imgmultipagenext' => 'ਅਗਲਾ ਪੰਨਾ →',
'imgmultigo' => 'ਜਾਓ!',
'imgmultigoto' => '$1 ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ',
# Table pager
'table_pager_next' => 'ਅਗਲਾ ਪੰਨਾ',
-'table_pager_prev' => 'ਪਿੱà¨\9bਲਾ ਪੰਨਾ',
+'table_pager_prev' => 'ਪਿਛਲਾ ਪੰਨਾ',
'table_pager_first' => 'ਪਹਿਲਾ ਪੰਨਾ',
-'table_pager_last' => 'ਆਖਰੀ ਪੰਨਾ',
+'table_pager_last' => 'à¨\86à¨\96਼ਰà©\80 ਪੰਨਾ',
'table_pager_limit' => 'ਹਰੇਕ ਪੇਜ ਲਈ $1 ਆਈਟਮਾਂ',
'table_pager_limit_label' => 'ਪ੍ਰਤੀ ਸਫ਼ਾ ਆਈਟਮਾਂ:',
'table_pager_limit_submit' => 'ਜਾਓ',
'livepreview-ready' => '…ਲੋਡ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ। ਤਿਆਰ!',
# Watchlist editor
-'watchlistedit-normal-title' => 'ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਬਦਲੋ',
+'watchlistedit-normal-title' => 'ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਸà©\8bਧੋ',
'watchlistedit-raw-titles' => 'ਟਾਇਟਲ:',
-'watchlistedit-raw-submit' => 'ਧਿà¨\86ਨਸà©\82à¨\9aà©\80 ਨà©\82à©° à¨\85ਪਡà©\87à¨\9f ਕਰੋ',
+'watchlistedit-raw-submit' => 'ਨਿà¨\97ਰਾਨà©\80-ਲਿਸà¨\9f ਤਾà¨\9c਼à©\80 ਕਰੋ',
'watchlistedit-raw-added' => '{{PLURAL:$1|1 title was|$1 titles were}} ਸ਼ਾਮਲ:',
'watchlistedit-raw-removed' => '{{PLURAL:$1|1 title was|$1 titles were}} ਹਟਾਓ:',
# Watchlist editing tools
-'watchlisttools-view' => 'à¨\86ਧਾਰਿਤ ਬਦਲਾà¨\85 ਵੇਖੋ',
+'watchlisttools-view' => 'ਸਬੰਧਤ ਤਬਦਲà©\80à¨\86à¨\82 ਵੇਖੋ',
'watchlisttools-edit' => 'ਧਿਆਨਸੂਚੀ ਵੇਖੋ ’ਤੇ ਸੰਪਾਦਨ ਕਰੋ',
'watchlisttools-raw' => 'ਕੱਚੀ ਧਿਆਨਸੂਚੀ ਸੰਪਾਦਨ ਕਰੋ',
'version-other' => 'ਹੋਰ',
# Special:SpecialPages
-'specialpages' => 'ਵਿਸ਼à©\87ਸ਼ ਪੰਨੇ',
+'specialpages' => 'à¨\96਼ਾਸ ਪੰਨੇ',
'specialpages-group-login' => 'ਲਾਗਇਨ / ਖਾਤਾ ਬਣਾਓ',
-'specialpages-group-users' => 'ਵਰਤੋਂਕਾਰਾਂ ਅਤੇ ਅਧਿਕਾਰ',
+'specialpages-group-users' => 'ਵਰਤੋਂਕਾਰ ਅਤੇ ਹੱਕ',
# Special:BlankPage
'blankpage' => 'ਖ਼ਾਲੀ ਸਫ਼ਾ',
# Special:Tags
'tag-filter' => '[[Special:Tags|ਟੈਗ]] ਫਿਲਟਰ:',
'tags-tag' => 'ਟੈਗ ਦਾ ਨਾਮ',
-'tags-edit' => 'ਸੰਪਾਦਨ',
+'tags-edit' => 'ਸà©\8bਧà©\8b',
# HTML forms
'htmlform-submit' => 'ਭੇਜੋ',
'htmlform-selectorother-other' => 'ਹੋਰ',
# New logging system
-'logentry-move-move' => "$1 ਨੇ $3 ਪੰਨੇ $4 'ਤੇ ਸਥਾਨਾਂਤਰਿਤ ਕੀਤਾ",
+'logentry-move-move' => '$1 ਨੇ ਸਫ਼ਾ $3 ਨੂੰ $4 ’ਤੇ ਭੇਜਿਆ',
'logentry-newusers-newusers' => 'ਮੈਂਬਰ ਖਾਤਾ $1 ਬਣਾਇਆ ਗਿਆ',
'logentry-newusers-create' => 'ਵਰਤੋਂਕਾਰ ਖਾਤਾ $1 ਬਣਾਇਆ ਗਿਆ',
'logentry-newusers-create2' => 'ਵਰਤੋਂਕਾਰ ਖਾਤਾ $3 $1 ਦੁਆਰਾ ਬਣਾਇਆ ਗਿਆ ਸੀ',
* @ingroup Language
* @file
*
+ * @author Geitost
* @author Kaganer
* @author Katimawan2005
* @author Urhixidur
'tog-shownumberswatching' => 'Ipakit la reng bilang da reng magbanteng talagamit',
'tog-oldsig' => 'I-preview ya ing salukuyan a pirma',
'tog-fancysig' => 'Ituring yang wikitext ing pirma (alang automatic link o tambing a suglung)',
-'tog-externaleditor' => 'Gumamit a pangkilual a editor kapamilatan ning kabud',
-'tog-externaldiff' => 'Tambing kang gumamit aliwa (diff) ibat a panglual',
'tog-showjumplinks' => 'Salangian la reng suglung a pampabilis (accessibility links) a "luksu king" (jump to)',
'tog-uselivepreview' => 'Gumamit kang live preview (JavaScript) (Experimental)',
'tog-forceeditsummary' => 'Pabaluan mu ku ustung magpalub a blankung edit',
'disclaimers' => 'Pamananggi',
'disclaimerpage' => 'Project:Pangkabilugan a pamananggi',
'edithelp' => 'Saup pamanalili',
-'edithelppage' => 'Help:Pamag-edit',
'helppage' => 'Help:Kalamnan',
'mainpage' => 'Pun Bulung',
'mainpage-description' => 'Pun Bulung',
'logout' => 'Mag-log out',
'userlogout' => 'Mag logout',
'notloggedin' => 'E maka login',
-'nologin' => "Ala kang login? '''$1'''.",
+'nologin' => 'Ala kang login? $1.',
'nologinlink' => 'Maglalang kang account',
'createaccount' => 'Maglalang kang account',
'gotaccount' => "Atin na kang account? '''$1'''.",
'viewprevnext' => 'Lon ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''Atin bulung a mikilagiung \"[[:\$1]]\" keng wiking ini.'''",
'searchmenu-new' => "↓'''Maglalang kang bulung \"[[:\$1]] keng wiking ini!'''",
-'searchhelp-url' => 'Help:Kalamnan',
'searchprofile-articles' => '↓Kalamnan bulung',
'searchprofile-project' => '↓Saup ampong bulung proyectu',
'searchprofile-images' => '↓Dakalmedia',
Samantala, maliari kang maintun kapamilatan ning Google.
Pakitandanan mung maliaring e no makapanaun deng karelang index king kalamnan ning {{SITENAME}}.',
-# Quickbar
-'qbsettings-none' => 'Ala',
-'qbsettings-fixedleft' => 'Makapirmi ya ing kaili',
-'qbsettings-fixedright' => 'Makapirmi ya ing wanan',
-'qbsettings-floatingleft' => 'Kikimut ya ing kaili',
-'qbsettings-floatingright' => 'Kikimut ya ing wanan',
-
# Preferences page
'preferences' => 'Pinili',
'mypreferences' => '↓Deng pinili ku',
'upload-proto-error-text' => 'Mangailangan yang URL a magumpisa king <code>http://</code> o <code>ftp://</code> ing pang-malaut a pamaglulan (remote upload).',
'upload-file-error' => 'Pamagkamaling pangkilub (internal error)',
'upload-file-error-text' => 'Mika pamagkamaling pangkilub aniang susubukan nang maglalang pansamantalang simpan king server.
-Pakiyaus me ing metung a talapanibala ning sistema (system administrator).',
+Pakiyaus me ing metung a talapanibala ([[Special:ListUsers/sysop|administrator]]).',
'upload-misc-error' => 'E makikilalang pamagkamali king pamaglulan (unknown upload error)',
'upload-misc-error-text' => 'Ating miliaring e makikilalang pamagkamali aniang maglulan.
Pakilawe mu nung ustu ya at maliari yang luban ing URL, at subukan mung pasibayu.
-Nung atin pa muring prublema, maus kang talapanibala king sistema (system administrator).',
+Nung atin pa muring prublema, maus kang talapanibala ([[Special:ListUsers/sysop|administrator]]).',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'E ne ayabut ing URL',
'notvisiblerev' => 'Mebura ya itang mibayu (revision)',
'watchnochange' => 'Alang me-edit kareng kekang babanten ketang panaun a makabili keti.',
'watchlist-details' => "{{PLURAL:$1|$1 bulung|$1 bulung}} king kekang watchlist, e la kayabe deng ''talk pages''.",
-'wlheader-enotif' => '* Makasalangi (enabled) ing pamipabalu kapamilatan ning e-mail.',
-'wlheader-showupdated' => "* '''Makapal''' la pangasulat deng bulung a miyalilan manibat aniang tauli mu lang pintalan.",
+'wlheader-enotif' => 'Makasalangi (enabled) ing pamipabalu kapamilatan ning e-mail.',
+'wlheader-showupdated' => "'''Makapal''' la pangasulat deng bulung a miyalilan manibat aniang tauli mu lang pintalan.",
'watchmethod-recent' => 'sisimen/susurian la reng bayung mengayalili para kareng bulung a babanten',
'watchmethod-list' => 'susurian la reng bulung a babanten para kareng bayung mengayalili',
'watchlistcontains' => 'Atin yang $1 {{PLURAL:$1|a bulung|bulung}} ing kekang tala ring babanten (watchlist).',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Lapad',
'exif-imagelength' => 'Katas',
'exif-bitspersample' => 'Bit balang dake (component)',
'exif-source' => 'Pikuanan',
'exif-cameraownername' => 'Mikibandi keng paglitratu',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'E makapitpit (uncompressed)',
'exif-unknowndate' => 'E makabili ing petsa',
'version-software-product' => 'Produktu',
'version-software-version' => 'Bersion',
-# Special:FilePath
-'filepath' => 'Dalan ning simpan (file path)',
-'filepath-page' => 'Simpan (file):',
-'filepath-submit' => 'Dalan',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Maintun simpan (file) a kapareu',
'fileduplicatesearch-legend' => 'Maintun kapareu',
'disclaimers' => 'Démintis',
'disclaimerpage' => 'Project:Déminti général',
'edithelp' => 'Éditer el aiyude',
-'edithelppage' => 'Help:Édichion',
'helppage' => 'Help:Étnus',
'mainpage' => 'Moaite Pache',
'mainpage-description' => 'Moaite Pache',
'listgrouprights-summary' => "L'pache-lo ch'est ène lisse d'chés groupes d'uzeus définis édseur ech wiki aveuc chés drouots d'intrèe achuchonnés.<br />I put y avoèr ichi d'eutes [[MediaWiki:Listgrouprights-helppage|informacions]] édseur chés drouots individuèls. ([[{{MediaWiki:Listgrouprights-helppage}}|vir]])",
'listgrouprights-members' => '(lisse éd chés mimbes)',
-# E-mail user
+# Email user
'emailuser' => "Imèle echl'uzeu-lo",
'emailpage' => 'Imèle dech uzeu',
# Special:Version
'version-specialpages' => 'Paches éspéchiales',
-# Special:FilePath
-'filepath-page' => 'Fichié :',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Dénicher chés doublons',
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Hilf zum Ennere',
-'edithelppage' => 'Help:Tscheensche',
'helppage' => 'Help:Hilf',
'mainpage' => 'Haaptblatt',
'mainpage-description' => 'Haaptblatt',
'nextn' => 'neegschte {{PLURAL:$1|$1}}',
'viewprevnext' => 'Zeige ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-new' => "'''Schtaert des Blatt „[[:$1|$1]]“ uf dem Wiki.'''",
-'searchhelp-url' => 'Help:Hilf',
'searchprofile-everything' => 'Abaddiche',
'searchprofile-articles-tooltip' => 'Uffgucke in $1',
'searchprofile-project-tooltip' => 'Uffgucke in $1',
'powersearch-togglenone' => 'Ken',
'search-external' => 'Guck im Gewebb',
-# Quickbar
-'qbsettings-none' => 'Ken',
-
# Preferences page
'preferences' => 'Paerseenlich Profil',
'mypreferences' => 'Uffschtellinge',
'listgrouprights-addgroup' => 'Yuuser zu {{PLURAL:$2|daer Druppe|denne Druppe}} dezu duh: $1',
'listgrouprights-addgroup-all' => 'Yuuser zu alle Druppe dezu duh',
-# E-mail user
+# Email user
'emailuser' => 'E-Poschd fer den Yuuser',
'defemailsubject' => '{{SITENAME}} - E-Poschde vun Yuuser „$1“',
'emailusername' => 'Yuuser-Naame:',
# Metadata
'metadata' => 'Metadaade',
-# EXIF tags
+# Exif tags
'exif-imagelength' => 'Leng',
'exif-software' => 'Geyuust Software',
'exif-usercomment' => 'Anmaerrickinge vun Yuuser',
'version-poweredby-others' => 'annere',
'version-software-version' => 'Version',
-# Special:FilePath
-'filepath' => 'Feilpaad',
-'filepath-page' => 'Feil:',
-'filepath-submit' => 'Geh',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Feilnaame:',
'fileduplicatesearch-submit' => 'Uffgucke',
# Stylesheets
'common.css' => '/* CSS opp dise Sted woat opp aula Skins wirtje */',
-'standard.css' => '/* CSS opp dise Sted wirtjt opp dem Standard-Skin */',
-'nostalgia.css' => '/* CSS opp dise Sted wirtjt opp daut Nostalgia-Skin */',
'cologneblue.css' => '/* CSS opp dise Sted wirtjt opp daut Keloonsch-Blau-Skin */',
'monobook.css' => '/* CSS opp dise Sted wirtjt opp daut Monobook-Skin */',
-'myskin.css' => '/* CSS opp dise Sted wirtjt opp daut MySkin-Skin */',
-'chick.css' => '/* CSS opp dise Sted wirtjt opp daut Chick-Skin */',
-'simple.css' => '/* CSS opp dise Sted wirtjt opp daut Simple-Skin */',
'modern.css' => '/* CSS opp dise Sted wirtjt opp daut Modern-Skin */',
'print.css' => '/* CSS opp dise Sted woat daut Utkome vom Dretje aundasch moake */',
# Scripts
'common.js' => '/* Daut neachste JavaScript woat fe aula Brucka jelode. */',
-'standard.js' => '/* Daut neachste JavaScript woat fe Brucka mett Standard-Skin jelode. */',
-'nostalgia.js' => '/* Daut neachste JavaScript woat fe Brucka mett Nostalgie-Skin jelode. */',
'cologneblue.js' => '/* Daut neachste JavaScript woat fe Brucka mett Keloonsch-Blau-Skin jelode */',
'monobook.js' => '/* Daut neachste JavaScript woat fe Brucka mett Monobook-Skin jelode */',
-'myskin.js' => '/* Daut neachste JavaScript woat fe Brucka mett MySkin-Skin jelode */',
-'chick.js' => '/* Daut neachste JavaScript woat fe Brucka mett Chick-Skin jelode */',
-'simple.js' => '/* Daut neachste JavaScript woat fe Brucka mett Eenfach-Skin jelode */',
'modern.js' => '/* Daut neachste JavaScript woat fe Brucka mett Modern-Skin jelode. */',
# Metadata
* @file
*
* @author Als-Holder
+ * @author Imbericle
* @author M-sch
* @author Manuae
* @author SPS
NS_MEDIA => 'Medium',
NS_SPECIAL => 'Schbezial',
NS_TALK => 'Babble',
- NS_USER => 'Benudzer',
- NS_USER_TALK => 'Benudzer_Dischbediere',
+ NS_USER => 'Middawaida',
+ NS_USER_TALK => 'Middawaida_Dischbediere',
NS_PROJECT_TALK => '$1_Dischbediere',
NS_FILE => 'Dadai',
NS_FILE_TALK => 'Dadai_Dischbediere',
NS_TEMPLATE_TALK => 'Vorlach_Dischbediere',
NS_HELP => 'Hilf',
NS_HELP_TALK => 'Hilf_Dischbediere',
- NS_CATEGORY => 'Kadegorie',
- NS_CATEGORY_TALK => 'Kadegorie_Dischbediere',
+ NS_CATEGORY => 'Sachgrubb',
+ NS_CATEGORY_TALK => 'Sachgrubb_Dischbediere',
);
$namespaceAliases = array(
# German namespaces
- 'Medium' => NS_MEDIA,
- 'Spezial' => NS_SPECIAL,
- 'Diskussion' => NS_TALK,
- 'Benutzer' => NS_USER,
- 'Benutzer_Diskussion' => NS_USER_TALK,
- '$1_Diskussion' => NS_PROJECT_TALK,
- 'Datei' => NS_FILE,
- 'Datei_Diskussion' => NS_FILE_TALK,
- 'MediaWiki_Diskussion' => NS_MEDIAWIKI_TALK,
- 'Vorlage' => NS_TEMPLATE,
- 'Vorlage_Diskussion' => NS_TEMPLATE_TALK,
- 'Hilfe' => NS_HELP,
- 'Hilfe_Diskussion' => NS_HELP_TALK,
- 'Kategorie' => NS_CATEGORY,
- 'Kategorie_Diskussion' => NS_CATEGORY_TALK,
+ 'Medium' => NS_MEDIA,
+ 'Spezial' => NS_SPECIAL,
+ 'Diskussion' => NS_TALK,
+ 'Benutzer' => NS_USER,
+ 'Benutzer_Diskussion' => NS_USER_TALK,
+ 'Benudzer' => NS_USER,
+ 'Benudzer_Dischbediere' => NS_USER_TALK,
+ '$1_Diskussion' => NS_PROJECT_TALK,
+ 'Datei' => NS_FILE,
+ 'Datei_Diskussion' => NS_FILE_TALK,
+ 'MediaWiki_Diskussion' => NS_MEDIAWIKI_TALK,
+ 'Vorlage' => NS_TEMPLATE,
+ 'Vorlage_Diskussion' => NS_TEMPLATE_TALK,
+ 'Hilfe' => NS_HELP,
+ 'Hilfe_Diskussion' => NS_HELP_TALK,
+ 'Kategorie' => NS_CATEGORY,
+ 'Kategorie_Diskussion' => NS_CATEGORY_TALK,
+ 'Kadegorie' => NS_CATEGORY,
+ 'Kadegorie_Dischbediere' => NS_CATEGORY_TALK,
);
$messages = array(
# User preference toggles
-'tog-showtoolbar' => "Werkzaich zum Bearwaide zaische (dodezu brauchd's JavaScript)",
-'tog-showhiddencats' => 'Zaisch vaschdeglde Kadegorije',
-
-'underline-always' => 'Immer',
-'underline-never' => 'Garnet',
-'underline-default' => 'Des nemme, was em Browser gsaachd hoschd.',
+'tog-underline' => 'Lingg unnaschdraische',
+'tog-hideminor' => 'Vaschdegg klääne Bearwaidunge',
+'tog-hidepatrolled' => 'Vaschdegg gsischdede Ännarunge',
+'tog-extendwatchlist' => 'Zaisch alle Ännarunge unn ned nur die ledschde',
+'tog-showtoolbar' => "Wergzaisch fas Beawaide zaische (dodezu brauchd's JavaScript)",
+'tog-previewontop' => 'Vorbligg owwahalwb vum Beaawaidungsfenschda zaische',
+'tog-previewonfirst' => 'Zaischen Vorbligg baim erschdemol Schaffe',
+'tog-oldsig' => 'Voahonneni Unnaschfrid',
+'tog-showjumplinks' => 'Schdellde "Hubs uff"-Lingg',
+'tog-uselivepreview' => 'Uuvazeschada Vorbligg (bneedischd JavaScript) (vasugswais)',
+'tog-showhiddencats' => 'Zaisch vaschdeglde Grubbe',
+
+'underline-always' => 'Imma',
+'underline-never' => 'Gaaned',
+'underline-default' => 'Des nemme, wum Browser gsachd hoschd.',
+
+# Font style option in Special:Preferences
+'editfont-sansserif' => 'Sans-serif Schrifd',
+'editfont-serif' => 'Serif Schrifd',
# Dates
'sunday' => 'Sundaach',
'monday' => 'Mondaach',
'tuesday' => 'Dienschdaach',
-'wednesday' => 'Midwoch',
+'wednesday' => 'Middwoch',
'thursday' => 'Dunnaschdaach',
'friday' => 'Fraidaach',
-'saturday' => 'Somschdaach',
+'saturday' => 'Sõmschdaach',
'sun' => 'Su',
'mon' => 'Mo',
'tue' => 'Di',
'thu' => 'Du',
'fri' => 'Fr',
'sat' => 'So',
-'january' => 'Jänner',
-'february' => 'Fewwer',
+'january' => 'Janua',
+'february' => 'Februa',
'march' => 'März',
'april' => 'Abril',
'may_long' => 'Mai',
'june' => 'Juni',
'july' => 'Juli',
'august' => 'Auguschd',
-'september' => 'Sebdember',
-'october' => 'Ogdower',
-'november' => 'Nowember',
-'december' => 'Dezember',
-'january-gen' => 'Jänner',
-'february-gen' => 'Fewwer',
+'september' => 'Sebdemba',
+'october' => 'Ogdowa',
+'november' => 'Nowemba',
+'december' => 'Dezemba',
+'january-gen' => 'Janua',
+'february-gen' => 'Februa',
'march-gen' => 'März',
'april-gen' => 'Abril',
'may-gen' => 'Mai',
'june-gen' => 'Juni',
'july-gen' => 'Juli',
'august-gen' => 'Auguschd',
-'september-gen' => 'Sebdember',
-'october-gen' => 'Ogdower',
-'november-gen' => 'Nowember',
-'december-gen' => 'Dezember',
-'jan' => 'Jän',
-'feb' => 'Few',
+'september-gen' => 'Sebdemba',
+'october-gen' => 'Ogdowa',
+'november-gen' => 'Nowemba',
+'december-gen' => 'Dezemba',
+'jan' => 'Jan',
+'feb' => 'Feb',
'mar' => 'Mär',
'apr' => 'Abr',
'may' => 'Mai',
'dec' => 'Dez',
# Categories related messages
-'pagecategories' => '{{PLURAL:$1|Kadegorie|Kadegorie}}',
-'category_header' => 'Saide in de Kadegorie „$1“',
-'subcategories' => 'Unnerkadegorie',
-'category-media-header' => 'Medie in de Kadegorie „$1“',
-'hidden-categories' => '{{PLURAL:$1|Verschdegelde Kadegorie|Verschdegelde Kadegorije}}',
-'hidden-category-category' => 'Verschdegelde Kadegorije',
-'category-subcat-count' => '{{PLURAL:$2|Die Kategorie hot die Unnerkategorie:|{{PLURAL:$1|Die Unnerkategori isch eni vun insgsamt $2 Unnerkategorie in derre Kategorie:|S werre $1 vun insgsamt $2 Unnerkategorie in derre Kategorie aagezeicht:}}}}',
-'category-article-count' => "{{PLURAL:$2|In derre Kadegorie hot's numme die Said.|Die {{PLURAL:$1|Said|$1 Saide}} gebbt's in derre Kadegorie, vun insgsamt $2.}}",
-'listingcontinuesabbrev' => '(Forts.)',
-
-'about' => 'Iwwer',
-'newwindow' => '(werd im e naie Fenschter uffgmacht)',
-'cancel' => 'Abbreche',
+'pagecategories' => '{{PLURAL:$1|Sachgrubb|Sachgrubbe}}',
+'category_header' => 'Saide inde Sachgrubb „$1“',
+'subcategories' => 'Unnagrubbe',
+'category-media-header' => 'Medje indɐ Sachgrubb „$1“',
+'category-empty' => '"Die Sachgrubb hodd kä Said odda Medje."',
+'hidden-categories' => '{{PLURAL:$1|Vaschdegldi Sachgrubb|Vaschdeglde Sachgrubbe}}',
+'hidden-category-category' => 'Verschdegelde Grubbe',
+'category-subcat-count' => '{{PLURAL:$2|Die Sachgrubb hod die Unnagrubb.|Die Sachgrubb hod {{PLURAL:$1|Unnagrubb|$1 Unnagrubbe}}, vun gsomd $2.}}',
+'category-subcat-count-limited' => 'Die Sachgrubb hod die {{PLURAL:$1|Unagrubb|$1 Unagrubbe}}.',
+'category-article-count' => '{{PLURAL:$2|Indɐ Sachgrubb hodds die Said.|Die {{PLURAL:$1|Said|$1 Saide}} gibbds inde Sachgrubb, vun gsomd $2.}}',
+'category-article-count-limited' => 'Die {{PLURAL:$1|Said|$1 Saide}} hodds inde Sachgrubb.',
+'category-file-count' => "{{PLURAL:$2|Die Sachgrubb hodd ä Said.|Die {{PLURAL:$1|Said isch änni vun $2 Saide:|S'werren $1 vun gsomd $2 Saide gzaischd:}}}}",
+'category-file-count-limited' => 'Die {{PLURAL:$1|Dadai|$1 Dadije}} hodds inde Sachgrubb.',
+'listingcontinuesabbrev' => '(Waida)',
+'index-category' => 'Eafassdi Saide',
+'noindex-category' => 'Saide, wu ned im Vazaischnis sinn',
+
+'about' => 'Iwwa',
+'newwindow' => '(werd innem naije Fenschda uffgmachd)',
+'cancel' => 'Abbresche',
+'moredotdotdot' => 'Mea …',
'mypage' => 'Said',
'mytalk' => 'Dischbediere',
'navigation' => 'Nawigadzion',
+'and' => ' unn',
# Cologne Blue skin
'qbfind' => 'Finne',
-'qbedit' => 'Bearwaide',
-'qbmyoptions' => 'Mai Saide',
+'qbbrowse' => 'Duaschschdewere',
+'qbedit' => 'Beawaide',
+'qbpageoptions' => 'Die Said',
+'qbmyoptions' => 'Moi Saide',
+'qbspecialpages' => 'Schbezialsaide',
'faq' => 'Ofd gschdeldi Froche',
# Vector skin
+'vector-action-addsection' => 'Abschnidd dzufiesche',
'vector-action-delete' => 'Lesche',
-'vector-action-move' => 'Verschiewe',
+'vector-action-move' => 'Vaschiewe',
'vector-action-protect' => 'Schidze',
-'vector-view-edit' => 'Bearwaide',
+'vector-action-undelete' => 'Zriggbringe',
+'vector-view-create' => 'Õleesche',
+'vector-view-edit' => 'Beawaide',
'vector-view-history' => 'Dadaigschischd',
'vector-view-view' => 'Lese',
-'actions' => 'Agzione',
-'namespaces' => 'Nomensreem',
+'vector-view-viewsource' => 'Gwelltegschd zaische',
+'actions' => 'Maßnõhme',
+'namespaces' => 'Nõmensreum',
+'variants' => 'Tibbe',
-'errorpagetitle' => 'Fehler',
+'errorpagetitle' => 'Irrdumm',
'returnto' => 'Zrick zu $1.',
'tagline' => 'Vun {{SITENAME}}',
-'help' => 'Hilf',
-'search' => 'Suche',
-'searchbutton' => 'Suche',
-'go' => 'Adiggel',
-'searcharticle' => 'Suche',
-'history' => 'Gschichd vun de Said',
-'history_short' => 'Versione',
-'printableversion' => 'Drugg-Aasicht',
-'permalink' => 'Permanentlink',
-'print' => 'Ausdrugge',
-'view' => 'Lese',
-'edit' => 'Bearwaide',
-'create' => 'Aaleche',
-'editthispage' => 'Die Said bearwaide',
+'help' => 'Unaschdidzung',
+'search' => 'Nochgugge',
+'searchbutton' => 'Gugg',
+'go' => 'Ausfiere',
+'searcharticle' => 'Ausfiare',
+'history' => 'Gschischd vunde Said',
+'history_short' => 'Gschischd',
+'printableversion' => 'Drugg-Õsischd',
+'permalink' => 'Schdendischa Lingg',
+'print' => 'Drugge',
+'view' => 'Ogugge',
+'edit' => 'Beawaide',
+'create' => 'Õleesche',
+'editthispage' => 'Die Said beawaide',
+'create-this-page' => 'Mach die Said',
'delete' => 'Lesche',
-'undelete_short' => '{{PLURAL:$1|ä Ännerung|$1 Ännerunge}} widderherschdelle',
+'deletethispage' => 'Lesch die Said',
+'undelete_short' => '{{PLURAL:$1|ä Ännarung|$1 Ännarunge}} widdaheaschdelle',
+'viewdeleted_short' => 'Zaisch {{PLURAL:$1|ä gleschdi Ännarung|$1 gleschde Ännarunge}}',
'protect' => 'schidze',
-'protect_change' => 'ännere',
+'protect_change' => 'ännare',
'protectthispage' => 'Die Said schidze',
-'unprotect' => 'Saideschudz änare',
-'newpage' => 'Naie Said',
-'talkpage' => 'Iwwer die Said dischbediere',
+'unprotect' => 'Saideschudz ännare',
+'newpage' => 'Naiji Said',
+'talkpage' => 'Iwwa die Said dischbediere',
'talkpagelinktext' => 'Dischbediere',
-'personaltools' => 'Perseenliche Werkzeische',
+'specialpage' => 'Schbezielli Said',
+'personaltools' => 'Persenlischs Wergzaisch',
+'postcomment' => 'Naije Abschnidd',
+'articlepage' => 'Inhald õgugge',
'talk' => 'Dischbediere',
-'views' => 'Wievielmol aageguckt',
-'toolbox' => 'Werkzaisch',
-'otherlanguages' => 'In annere Schbroche',
-'redirectedfrom' => '(Wairrerglaidet vun $1)',
-'redirectpagesub' => 'Wairerlaidungssaid',
-'lastmodifiedat' => 'Die Said isch zum ledschde Mol gänneret worre am $1, am $2.',
-'viewcount' => 'Die Seid isch bis jetzerd {{PLURAL:$1|$1|$1}} mol uffgerufe worre.',
-'jumpto' => 'Spring zu:',
-'jumptonavigation' => 'Navigation',
-'jumptosearch' => 'Suche',
+'views' => 'Uffruf',
+'toolbox' => 'Wergzaischkischd',
+'userpage' => 'Middawaidasaid õgugge',
+'projectpage' => 'Brojegdsaid õgugge',
+'imagepage' => 'Dadaisaid õgugge',
+'mediawikipage' => 'Nochrischd õgugge',
+'templatepage' => 'Voalach õgugge',
+'viewhelppage' => 'Hilf õgugge',
+'categorypage' => 'Zaisch die Kadegorie',
+'viewtalkpage' => 'Zaischs Gbabbl',
+'otherlanguages' => 'In õnnare Schbroche',
+'redirectedfrom' => '(Nochgschiggd worre vun $1)',
+'redirectpagesub' => 'Nochschigg-Said',
+'lastmodifiedat' => 'Die Said ischs ledschde Mol gännad worre õm $1, õm $2.',
+'viewcount' => 'Die Said isch bis jedz {{PLURAL:$1|$1|$1}} mol uffgrufe worre.',
+'protectedpage' => 'Said schidze',
+'jumpto' => 'Hubs uff:',
+'jumptonavigation' => 'Nawigadzion',
+'jumptosearch' => 'Nochgugge',
+'view-pool-error' => 'Dudma leed, die Maschine isch graad iwwalaschd.
+Zu vieli Middawaida guggn grad die Said õ.
+Waad ä bissl un brobieas nomol.
+
+$1',
+'pool-errorunknown' => 'Ubkonnde Irrdumm',
# 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) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'Iwwer {{SITENAME}}',
-'aboutpage' => 'Project:Iwwer',
-'copyright' => 'Was do drin schdeht isch unner $1 verfiechbar.',
-'copyrightpage' => '{{ns:project}}:Urhewerrecht',
-'currentevents' => 'Was grad so bassierd isch',
-'currentevents-url' => 'Project: Leschdi Eraigniss',
+'aboutsite' => 'Iwwa {{SITENAME}}',
+'aboutpage' => 'Project:Iwwa',
+'copyright' => 'Was do drin schded isch unna $1 vafieschba.',
+'copyrightpage' => '{{ns:project}}:Urhewareschd',
+'currentevents' => 'Aggduelli Gscheniss',
+'currentevents-url' => 'Project: Leschdi Gschneniss',
'disclaimers' => 'Hafdungsausschluß',
'disclaimerpage' => 'Project:Impressum',
-'edithelp' => 'Hilf fers Bearwaide',
-'edithelppage' => 'Help:Ännere',
+'edithelp' => 'Unaschdizung fas Beawaide',
'helppage' => 'Help:Inhald',
-'mainpage' => 'Hääptsaid',
-'mainpage-description' => 'Startseid',
+'mainpage' => 'Schdadsaid',
+'mainpage-description' => 'Schdadsaid',
+'policy-url' => 'Project:Grundsedz',
'portal' => '{{SITENAME}}-Bordal',
'portal-url' => 'Project:Gmoinschafdsbordal',
-'privacy' => 'Dadeschuds',
-'privacypage' => 'Project:Daadeschutz',
+'privacy' => 'Daadeschuds',
+'privacypage' => 'Project:Daadeschuds',
-'badaccess' => 'Kää ausraichende Reschd',
+'badaccess' => 'Ned genuch Reschd',
+'ok' => 'Alla gud',
'retrievedfrom' => 'Vun "$1"',
-'youhavenewmessages' => 'Du hoscht $1 ($2).',
-'newmessageslink' => 'naie Nochrischde',
-'newmessagesdifflink' => 'ledschde Ännerung',
-'editsection' => 'bearwaide',
-'editold' => 'bearwaide',
-'viewsourceold' => 'Quelltegschd ogugge',
-'editlink' => 'bearwaide',
-'viewsourcelink' => 'Quell aagugge',
-'editsectionhint' => 'Abschnidd ännere: $1',
+'youhavenewmessages' => 'Du hoschd $1 ($2).',
+'newmessageslink' => 'naije Nochrischde',
+'newmessagesdifflink' => 'ledschdi Ännarung',
+'newmessagesdifflinkplural' => 'ledschdi {{PLURAL:$1|Ännarung|Ännarunge}}',
+'youhavenewmessagesmulti' => 'Do hoschd ä Nochrischd grischd: $1',
+'editsection' => 'beawaide',
+'editold' => 'beawaide',
+'viewsourceold' => 'Gwelltegschd õgugge',
+'editlink' => 'beawaide',
+'viewsourcelink' => 'Gwell õgugge',
+'editsectionhint' => 'Deel ännare: $1',
'toc' => 'Inhald',
'showtoc' => 'zaische',
-'hidetoc' => 'versteggle',
-'site-rss-feed' => '$1 RSS Feed',
-'site-atom-feed' => '$1 Atom Feed',
-'page-rss-feed' => '"$1" RSS Feed',
-'page-atom-feed' => '"$1" Atom Feed',
-'red-link-title' => '$1 (Said gebbds nid)',
+'hidetoc' => 'vaschdeggle',
+'collapsible-collapse' => 'Oiglabbe',
+'collapsible-expand' => 'Uffglabbe',
+'thisisdeleted' => '$1 õgugge odda widdaheaschdelle?',
+'viewdeleted' => '$1 zaische?',
+'restorelink' => '{{PLURAL:$1|ä gleschdi Ännarung|$1 gleschde Ännarunge}}',
+'site-rss-feed' => '$1 RSS-Feed',
+'site-atom-feed' => '$1 Atom-Feed',
+'page-rss-feed' => '"$1" RSS-Feed',
+'page-atom-feed' => '"$1" Atom-Feed',
+'red-link-title' => '$1 (Said hodds nedd)',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'Said',
-'nstab-user' => 'Benutzersaid',
-'nstab-media' => 'Media',
-'nstab-special' => 'Spezialsaid',
+'nstab-user' => 'Middawaidasaid',
+'nstab-media' => 'Medije',
+'nstab-special' => 'Schbezialsaid',
'nstab-project' => 'Bordal',
-'nstab-image' => 'Dadei',
-'nstab-mediawiki' => 'Mitdeelung',
-'nstab-template' => 'Vorlaach',
-'nstab-help' => 'Hilf',
-'nstab-category' => 'Kadegorie',
-
-# General errors
-'missing-article' => "De Text fer „$1“ $2 isch inde Daadebong'g nit gfunne worre.
+'nstab-image' => 'Dadai',
+'nstab-mediawiki' => 'Middeelung',
+'nstab-template' => 'Vorlach',
+'nstab-help' => 'Unaschdidzung',
+'nstab-category' => 'Sachgrubb',
-Normalerwais hääßd des, dass die Said gleschd worre isch.
+# Main script and global functions
+'nosuchaction' => 'Des hodds nedd',
+'nosuchspecialpage' => 'Schbezialsaid hodds nedd',
-Wenns des nit isch, hoschd villaischd en Fehler in de Daadebong'g gfunne.
-Bidde meldsm [[Special:ListUsers/sysop|Adminischdrador]], un gebb d URL dezu aa.",
-'missingarticle-rev' => '(Versionsnummer#: $1)',
+# General errors
+'error' => 'Irrdumm',
+'databaseerror' => 'Daadebongg-Irrdumm',
+'readonly' => 'Daadebongg blogiead',
+'missing-article' => 'De Tegschd fa „$1“ $2 isch inde Daadebongg nedd gfunne worre.
+
+Noamalawees heeßd des, dass die Said gleschd worre isch.
+
+Wonnse des awwa nedd isch, hoschd villaischdn Irdumm inde Daadebongg gfunne.
+Bidde meldsm [[Special:ListUsers/sysop|Adminischdrador]], un gebbde URL dzu õ.',
+'missingarticle-rev' => '(Ausgawenumma#: $1)',
+'missingarticle-diff' => '(Unnaschied: $1, $2)',
+'internalerror' => 'Inderna Irrdumm',
+'internalerror_info' => 'Inderna Irrdumm: $1',
+'fileappenderrorread' => 'Beim dzugiesche hoddma „$1“ nedd lese kenne.',
+'fileappenderror' => '"$1" hoddma nedd zu "$2" dzugiesche kenne.',
+'filecopyerror' => '"$1" hoddma nedd zu "$2" kobiere kenne.',
+'filerenameerror' => 'Die Said "$1" hoddma nedd uff "$2" umbenenne kenne.',
+'filedeleteerror' => '"$1" hoddma nedd lesche kenne.',
+'directorycreateerror' => 'S\'Vazaischnis "$1" hoddma nedd mache kenne.',
+'filenotfound' => '"$1" hoddma nedd finne kenne.',
+'fileexistserror' => '"$1" hodds schun: do hoddma nix schraiwe kenne.',
+'unexpected' => 'Uueawadeda Wead: "$1"="$2".',
+'formerror' => 'Irrdumm: hoddma nedd mache kenne.',
+'badarticleerror' => 'Des geed nedd uffde Said.',
+'cannotdelete-title' => '"$1" komma nedd lesche',
'badtitle' => 'Schleschde Didl',
-'badtitletext' => 'De Titel vun de aageforderte Said isch nid giltich, leer, odder e nid giltiche Link vun eme annere Wiki.
-S kann sai, dass es ää odder meh Zaiche drin hot, wu im Titel vun de Said nid gebraucht werre därfe.',
-'viewsource' => 'Quelltegschd bedrachde',
+'badtitletext' => 'De Tidl vunde õgfordad Said isch nedd gildisch, lea, oddan nedd gildische Lingg vunem õnnare Wiki.
+S konn soi, dasses ä odda mea Zaische drin hodd, wu im Tidl vunde Said nedd gbrauchd werre dirfn.',
+'viewsource' => 'Gwelltegschd õgugge',
+'viewsource-title' => "D'Tegschd vun $1 õgugge",
+'viewsourcetext' => 'Konschdas õgugge un abschraiwe',
+'viewyourtext' => 'Konschda doi Eawed uff de Said õgugge un abschraiwe:',
+'ns-specialprotected' => 'Do komma nedd drõ schaffe',
+'exception-nologin' => 'Bischd nedd õgmeld',
+
+# Virus scanner
+'virus-unknownscanner' => 'Uubekonnda Viresucha:',
# Login and logout pages
-'yourname' => 'Benutzername:',
-'yourpassword' => 'Password:',
-'yourpasswordagain' => 'Password nomol oigewe:',
-'remembermypassword' => 'Mai Passwort uff dem Computer merke (hechschtens fer $1 {{PLURAL:$1|Dach|Dach}})',
-'login' => 'Omelde',
-'nav-login-createaccount' => 'Aamelde / Benudzerkondo aaleche',
-'userlogin' => 'Omelde / Benutzerkonto anleche',
-'logout' => 'Abmelde',
-'userlogout' => 'Abmelde',
-'nologinlink' => 'E Benutzerkondo aaleche',
-'mailmypassword' => 'Nais Passwort per E-Mail schicke',
+'welcomeuser' => 'Willkumme, $1!',
+'yourname' => 'Middawaidanõme:',
+'yourpassword' => 'Kennword:',
+'yourpasswordagain' => 'Kennword nomol oigewe:',
+'remembermypassword' => 'Moi Kennword uffm Rechna merge (hegschdns fa $1 {{PLURAL:$1|Daach|Daach}})',
+'login' => 'Õmelde',
+'nav-login-createaccount' => 'Õmelde / Kondo õleesche',
+'loginprompt' => 'Cookies mugschd fa {{SITENAME}} schun õhawe.',
+'userlogin' => 'Õmelde / Kondo õleesche',
+'userloginnocreate' => 'Oilogge',
+'logout' => 'Uffhere',
+'userlogout' => 'Uffhere',
+'nologin' => 'Hoschd noch kä Kondo? $1',
+'nologinlink' => 'E Kondo õleesche',
+'createaccount' => 'Kondo õleesche',
+'gotaccount' => 'Hoschd schun ä Kondo? $1',
+'gotaccountlink' => 'Õmelde',
+'userlogin-resetlink' => 'Hoschd doi Daade vagesse?',
+'createaccountreason' => 'Grund:',
+'badretype' => 'Kennword bassd nedd',
+'userexists' => 'De Middawaida hodds schun.
+Nemmen onnare.',
+'loginerror' => 'Irrdumm baim Õmelde',
+'createaccounterror' => 'Kondo $1 komma nedd mache',
+'loginsuccesstitle' => 'Konschd schaffe',
+'login-userblocked' => 'De Middawaida deaf do nemme schaffe.',
+'wrongpasswordempty' => 'Hoschds Kennword vagesse. Mags nomol.',
+'passwordtooshort' => 'Kennword muss {{PLURAL:$1|1 Zaische|$1 Zaische}} hawe.',
+'password-name-match' => 'Doi Kennword deaf nedd so heese wie du.',
+'password-login-forbidden' => 'De Nõme uns Kennword sinn fabode.',
+'mailmypassword' => 'Naijs Kennword iwwa E-Mail schigge',
+'accountcreated' => 'Kondo õgleeschd',
+'login-abort-generic' => 'Hodd nedd gklabbd - Abgbroche',
+'loginlanguagelabel' => 'Schbrooch: $1',
+
+# Change password dialog
+'resetpass' => 'Kennword wegsle',
+'oldpassword' => 'Alds Kennword',
+'newpassword' => 'Naijes Kennword',
+'retypenew' => 'Naijes Kennword nomol oigewe:',
+'resetpass_forbidden' => 'Kennwerda komma nedd wegsle',
+'resetpass-submit-loggedin' => 'Password wegsle',
+'resetpass-submit-cancel' => 'Uffhere',
+'resetpass-temp-password' => 'Bschrengds Kennword',
+
+# Special:PasswordReset
+'passwordreset' => 'Kennword zriggsedze',
+'passwordreset-legend' => 'Kennword zriggsedze',
+'passwordreset-username' => 'Middawaida:',
+'passwordreset-capture' => 'E-Mail õgugge?',
+
+# Special:ChangeEmail
+'changeemail-none' => '(käni)',
+'changeemail-cancel' => 'Uffhere',
# Edit page toolbar
-'bold_sample' => 'Fedde Schrifd',
-'bold_tip' => 'Fedde Schrifd',
-'italic_sample' => 'Kursive Schrifd',
-'italic_tip' => 'Kursive Schrifd',
-'link_sample' => 'Schdischword',
-'link_tip' => 'Interner Link',
-'extlink_sample' => "http://www.example.com Ling'gtegschd",
-'extlink_tip' => 'Externer Link (uff http:// Acht gewwe)',
-'headline_sample' => 'Abschnitts-Iwwerschrift',
-'headline_tip' => 'Iwwerschrift Ewene 2',
-'nowiki_sample' => 'Gebb do en Text ai, wu nit formatiert wird',
-'nowiki_tip' => 'Wiki-Formatierunge ignoriere',
-'image_tip' => 'Bildverwais',
-'media_tip' => 'Dadeilink',
-'sig_tip' => 'Dai Unnerschrifd mid ener Zaidaagab',
-'hr_tip' => 'Horizontale Linie (sparsam verwenne)',
+'bold_sample' => 'Feddi Schrifd',
+'bold_tip' => 'Feddi Schrifd',
+'italic_sample' => 'Schebbi Schrifd',
+'italic_tip' => 'Schebbi Schrifd',
+'link_sample' => 'Schdischwoad',
+'link_tip' => 'Inderna Lingg',
+'extlink_sample' => 'http://www.example.com Linggtegschd',
+'extlink_tip' => 'Exderna Lingg (uff http:// uffbasse)',
+'headline_sample' => 'Schlaachzail',
+'headline_tip' => 'Iwwaschrifd Ewene 2',
+'nowiki_sample' => "Gebb do'n Tegschd oi, wu nedd uffberaid werd",
+'nowiki_tip' => 'Wiki-Formatierunge ned beachde',
+'image_tip' => 'Bildvawais',
+'media_tip' => 'Dadailingg',
+'sig_tip' => 'Doi Unnaschrifd midena Zaidõgawb',
+'hr_tip' => 'Waagreschdi Linje (schbaasõm vawende)',
# Edit pages
-'summary' => 'Zammefassung:',
+'summary' => 'Iwwabligg:',
'subject' => 'Bedreff:',
-'minoredit' => 'Des isch e klänni Bearwaidung',
-'watchthis' => 'Die Said beowachde',
-'savearticle' => 'Said schbeichere',
+'minoredit' => 'Des ische glänni Beawaidung',
+'watchthis' => 'Die Said im Aach palde',
+'savearticle' => 'Said schbaischere',
'preview' => 'Voaschau',
-'showpreview' => 'Vorschau zaische',
-'showlivepreview' => 'Live-Vorschau',
-'showdiff' => 'Ännerunge zaische',
-'anoneditwarning' => "'''Warnung:''' Du bischt nit aagemeldt. Dai IP-Adress werd in de Gschichd vum Artikel gspaichert.",
-'summary-preview' => 'Zammefassung:',
-'newarticle' => '(Nai)',
-'newarticletext' => "Du bisch eme Link nogange zu re Said, wu s no gar nit gebbt.
-Zum die Said aaleche, kannscht do in dem Käschtel unne aafange mid schraiwe (guck[[{{MediaWiki:Helppage}}|Hilfe]] fer meh Informatione).
-Wenn do nid hin hoscht welle, no druck in Daim Browser uff '''Zrick'''.",
-'noarticletext' => 'Uff derre Said gebbt\'s noch kää Text. Du kannschd uff annere Saide [[Special:Search/{{PAGENAME}}|de Aidrach suche]], <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} de Logbuchaidrach suche, wu dezu ghert],
-orrer [{{fullurl:{{FULLPAGENAME}}|action=edit}} die Said bearwaide]</span>.',
-'previewnote' => "'''Deng'g droa, dass des numme e Vorschau isch.'''
-Doi Ännerunge sinn no nid gschbaichert worre!",
-'editing' => 'Am $1 bearwaide',
-'editingsection' => '$1 bearwaide (Abschnitt)',
+'showpreview' => 'Voaschau zaische',
+'showlivepreview' => 'Live-Voaschau',
+'showdiff' => 'Ännarunge zaische',
+'anoneditwarning' => "'''Baßma uff:''' Du bischd ned õgemeld. Doi IP-Adress werd inde Gschischd vum Adiggl gschbaischad.",
+'summary-preview' => 'Iwwabligg:',
+'blockedtitle' => 'Middawaida isch gschbead',
+'blockednoreason' => "s'hod kän Grund",
+'whitelistedittext' => 'Mugschd disch $1 fas schaffe',
+'loginreqtitle' => 'Mugschd disch õmelde',
+'loginreqlink' => 'Õmelde',
+'loginreqpagetext' => 'Mugschd disch $1 fas õgugge.',
+'accmailtitle' => 'Kennword gschiggd',
+'newarticle' => '(Naij)',
+'newarticletext' => "Du bischdm Lingg nochgõnge zu enna Said, wus ganedd hodd.
+Fa die Said õzleesche, konnschd do im Käschdl unne õfonge mid schraiwe (gugg [[{{MediaWiki:Helppage}}|Hilf]] fa mea Auskinfd).
+Wonn do nedd hoschd heakumme wolle, drigg uff Browser uff '''Zrigg'''.",
+'noarticletext' => 'Uffde Said hods noch kän Tegschd. Du konnschd uff õnnare Saide nochm [[Special:Search/{{PAGENAME}}|Oidrach gugge]], <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} Logbuchaidrach gugge, wu dezu kead],
+odda [{{fullurl:{{FULLPAGENAME}}|action=edit}} die Said beawaide]</span>.',
+'noarticletext-nopermission' => 'Do hods känn Tegschd.
+Du konschd uff onnare Saide [[Special:Search/{{PAGENAME}}|faden Tidl gugge]], odda <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} in alle Logs gugge]</span>, awwa du hoschd kä Ealauwnis die Said zu mache.',
+'updated' => '(Gännad)',
+'note' => "'''Hiwes:'''",
+'previewnote' => "'''Deng'g drõõ, dasses nua e Vorschau isch.'''
+Doi Ännarunge sinn noch nedd gschbaischadd worre!",
+'editing' => 'Õm $1 beawaide',
+'creating' => 'Magsch $1',
+'editingsection' => '$1 beawaide (de Deel)',
+'editingcomment' => '$1 beawaide (de Deel)',
+'editconflict' => 'Schdraid ums Ännare: $1',
'yourtext' => 'Doin Tegschd',
'storedversion' => 'Gschbaischerdi Version',
'yourdiff' => 'Unaschied',
-'copyrightwarning' => "Bidde gebb achd, dass alle Baidräch zu {{SITENAME}} unner $2 vereffentlischd werre (guck $1 fer mehr Details).
-Wenn du nit willschd, dass deswu du gschriwwe hoschd, gänneret un kopierd werre kann, dann duu s do nit naischraiwe.<br />
-du gebbschd do au zu, dass Du des selwerschd gschriwwe hoschd orrer vun ere effendliche, fraie Quell ('''public domain''') orrer vun ere ähnliche fraie Quell her hoschd.
-'''SCHRAIB DO NIX NAI, WAS URHEWERRECHDLICH GSCHIZD ISCH!'''",
-'templatesused' => '{{PLURAL:$1|Vorlach wu uff derre Said gbrauchd werd|Vorlache wu uff derre Said gbrauchd werre}}:',
-'templatesusedpreview' => '{{PLURAL:$1|Vorlach wu in derre Vorschau gbrauchd werd|Vorlache wu in derre Vorschau gbrauchd werre}}:',
+'copyrightwarning' => "Baß uff, dass alli Baidräch fa {{SITENAME}} unna $2 vaeffendlischd werren (gugg $1 fa mea Enzlhaide).
+Wonnsda ned basse dud, dass des wu gschriwwe hoschd, gännad un kopiead werre konn, donn duus do ned noischraiwe.<br />
+Du gibbschd do a zu, dasses selwaschd gschriwwe hoschd odda vuna effendlischi, fraiji Gwell ('''public domain''') odda vuna ähnlichi fraiji Gwell hawe duschd.
+'''Du do nix noi schraiwe, wa unnam Uahewareschd gschizd isch!'''",
+'templatesused' => '{{PLURAL:$1|Vorlach wu uffde Said gbrauchd werd|Vorlache wu uffde Saide gbrauchd werren}}:',
+'templatesusedpreview' => '{{PLURAL:$1|Vorlach wu inde Vorschau gbrauchd werd|Vorlache wu inde Vorschau gbrauchd werren}}:',
'template-protected' => '(gschizd)',
-'template-semiprotected' => '(halb-gschizd)',
-'hiddencategories' => 'Die Said ghert zu {{PLURAL:$1|1 versteckelte Kategorie|$1 versteckelte Kategorie}}:',
-'permissionserrorstext-withaction' => 'Du därfscht nid $2, aus {{PLURAL:$1|dem Grund|denne Grind}}:',
+'template-semiprotected' => '(halwa-gschizd)',
+'hiddencategories' => 'Die Said kerd zu vaschdeggelde {{PLURAL:$1|1 Sachgrubb|$1 Sachgrubbe}}:',
+'permissionserrorstext-withaction' => 'Du därfschd nedd $2, weesch{{PLURAL:$1|m Grund|ede Grind}}:',
+'recreate-moveddeleted-warn' => "'''Baßma uff: Du maggschd do ä Said, wuma frija schumol geleschd kabd hod.'''",
'moveddeleted-notice' => 'Die Said isch gleschd worre.
-De Leschaidrach fa die Said isch do unne als Kwell aagewwe.',
+De Leschoidrach fa die Said isch do unne als Gwell õgewwe.',
+'log-fulllog' => 'Alli Oidräsch vunde Logbischa õgugge',
+'edit-conflict' => 'Schdraid ums Ännare.',
+
+# Content models
+'content-model-text' => 'Glaategschd',
+'content-model-css' => 'CSS',
+
+# Parser/template warnings
+'post-expand-template-inclusion-warning' => "'''Baßma uff:''' Greeß vunde Vorlach isch iwwaschridde. Oinischi Vorlache werren ned bnuzd.",
+'post-expand-template-inclusion-category' => 'Saide mid Vorlache, wu die Greeß iwwaschridde worre isch',
+'post-expand-template-argument-warning' => "'''Baßma uff:''' Die Said hodd wenigschdns ä Vorlach midä Kenngreeß, wu groß werre dud. Die Kenngreeß wead do nedd õgeguggd.",
+'post-expand-template-argument-category' => 'Saide, wu wegfallene Vorlachewead hawen.',
# History pages
-'viewpagelogs' => 'Lochbischer fer die Said aagucke',
+'viewpagelogs' => 'Lochbischa fa die Said õgugge',
'currentrev' => 'Ledschdi Änarung',
-'currentrev-asof' => 'Agduell Version vun $1',
-'revisionasof' => 'Version vun $1',
-'previousrevision' => '← Äldere Versione',
-'nextrevision' => 'Naiere Versione →',
-'currentrevisionlink' => 'Agduell Version',
-'cur' => 'jetzert',
-'next' => 'Negschde',
-'last' => 'vorich',
-'histlegend' => "Du kannscht zwää Versione auswähle un verglaiche.<br />
-Erklärung: '''({{int:cur}})''' = Unnerschied zu jetzert,
-'''({{int:last}})''' = Unnerschied zu de voriche Version, '''{{int:minoreditletter}}''' = klenni Ännerung.",
-'history-fieldset-title' => 'In de Versionsgschichd gugge',
-'histfirst' => 'Ältschde',
-'histlast' => 'Naischde',
+'currentrev-asof' => 'Agduell Ausgab vun $1',
+'revisionasof' => 'Iwwaawaidung vun $1',
+'revision-info' => 'Ännarung vun $1 duasch $2',
+'previousrevision' => '← Älderi Beawaidung',
+'nextrevision' => 'Naijari Ausgawb →',
+'currentrevisionlink' => 'Agduelli Ausgawb',
+'cur' => 'jedzischi',
+'next' => 'Negschd',
+'last' => 'vorischi',
+'page_first' => 'Easchd',
+'page_last' => 'Ledschd',
+'histlegend' => "Du konnschd zwää Ausgawe wehle un vaglaische.<br />
+Ealaidarung: '''({{int:cur}})''' = Unnaschied zu jezd,
+'''({{int:last}})''' = Unnaschied zude vorischi Ausgab, '''{{int:minoreditletter}}''' = gleni Ännarung.",
+'history-fieldset-title' => 'Gugg die Gschischd',
+'history-show-deleted' => 'Bloß gleschdi Saide zaische',
+'histfirst' => 'Äldschde',
+'histlast' => 'Naijschde',
+'historyempty' => '(lea)',
# Revision feed
-'history-feed-item-nocomment' => '$1 om $2',
+'history-feed-title' => 'Ännarungsgschischd',
+'history-feed-item-nocomment' => '$1 õm $2',
# Revision deletion
-'rev-delundel' => 'zaisch/verschdeggle',
+'rev-delundel' => 'zaisch/vaschdeggl',
+'rev-showdeleted' => 'zaische',
+'revisiondelete' => 'Lesche/Heaschdelle vun Ännarunge',
'revdelete-show-file-submit' => 'Ja',
+'revdelete-hide-image' => 'Vaschdegglde Inhald',
+'revdelete-hide-name' => 'Vaschdeggls',
+'revdelete-hide-comment' => 'Vaschdeggls Resimee',
+'revdelete-hide-user' => 'Vaschdeggl Middawaidanome/IP',
+'revdelete-radio-same' => '(dudo nix ännare)',
'revdelete-radio-set' => 'Ja',
'revdelete-radio-unset' => 'Nä',
-'revdelete-submit' => 'Uff die gewehld {{PLURAL:$1|Version|Versione}} owende',
-'revdel-restore' => 'Sischdbakaid ännere',
-'revdel-restore-deleted' => 'gleschdi Änarunge',
-'revdel-restore-visible' => 'sischdbari Änarunge',
+'revdelete-log' => 'Grund:',
+'revdelete-submit' => 'Uff die {{PLURAL:$1|gewehld Asugab|gewehldi Ausgawe}} owende',
+'revdel-restore' => 'Sischdbakaid ännare',
+'revdel-restore-deleted' => 'gleschdi Ännarunge',
+'revdel-restore-visible' => 'sischdbari Ännarunge',
+'pagehist' => 'Gschischd vunde Said',
+'deletedhist' => 'Gleschde Gschischde',
+'revdelete-reasonotherlist' => 'Õnnare Grund',
+
+# History merging
+'mergehistory' => 'Gschischde zõmmefiere',
+'mergehistory-go' => 'Zaisch, wasma vaoinische konn',
+'mergehistory-submit' => 'Gschischde zõmmefiere',
+'mergehistory-reason' => 'Grund:',
# Merge log
-'revertmerge' => 'Zammefiehrung rickgängich mache',
+'revertmerge' => 'Zõmmefiehrung rigggängisch mache',
# Diffs
-'history-title' => 'Änarungsgschischd vun "$1"',
+'history-title' => 'Ännarungsgschischd vun "$1"',
'lineno' => 'Zail $1:',
-'compareselectedversions' => 'Die Versione mitenonner vergleiche',
-'editundo' => 'zerigg',
+'compareselectedversions' => 'Ausgawe midnonna vaglaische',
+'showhideselectedversions' => 'Zaisch/Vaschdeggl gwehldi Ausgawe',
+'editundo' => 'zriggnemme',
# Search results
-'searchresults' => 'Ergebnis suche',
-'searchresults-title' => 'Ergebnis suche fer "$1"',
-'searchresulttext' => 'Fer mehr Informatione iwwer d Such in {{SITENAME}}, guck emol uff [[{{MediaWiki:Helppage}}|{{int:help}}]].',
-'searchsubtitle' => 'Du hoscht no \'\'\'[[:$1]]\'\'\' gesucht ([[Special:Prefixindex/$1|alle Saide wo mit "$1" aafange]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|alle Saide wo uf "$1" verlinkt sin]])',
-'searchsubtitleinvalid' => "Du hoscht '''$1''' gsucht",
-'notitlematches' => 'Kää Saidetitel gfunne',
-'notextmatches' => 'Kää Iwwerainstimmunge mit Inhalde',
-'prevn' => 'voriche {{PLURAL:$1|$1}}',
-'nextn' => 'negschte {{PLURAL:$1|$1}}',
-'prevn-title' => 'Frijari $1 {{PLURAL:$1|result|Ergewnis}}',
-'nextn-title' => 'Negschdi $1 {{PLURAL:$1|result|Ergewnis}}',
-'shown-title' => 'Zaisch $1 {{PLURAL:$1|Ergewnis}} vunde Said',
+'searchresults' => 'Eagewnis nochgugge',
+'searchresults-title' => 'Eagewnis gugge fa "$1"',
+'searchresulttext' => 'Fa mea Ogawe iwwas Nochgugge uff {{SITENAME}}, guggmol uff [[{{MediaWiki:Helppage}}|{{int:help}}]].',
+'searchsubtitle' => 'Du hoschd noch \'\'\'[[:$1]]\'\'\' geguggd ([[Special:Prefixindex/$1|alle Saide, wu mid "$1" aafange]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|alle Saide, wu uff "$1" valinggd sinn]])',
+'searchsubtitleinvalid' => "Du hoschd '''$1''' gsuchd",
+'notitlematches' => 'Kän Saidedidl gfunne',
+'notextmatches' => 'Kä Iwwaoinschdimmunge midm Tegschd',
+'prevn' => 'ledschda {{PLURAL:$1|$1}}',
+'nextn' => 'negschd {{PLURAL:$1|$1}}',
+'prevn-title' => 'Frijari $1 {{PLURAL:$1|Eagewnis|Eagewnis}}',
+'nextn-title' => 'Negschdi $1 {{PLURAL:$1|Eagewnis|Eagewnis}}',
+'shown-title' => 'Zaisch $1 {{PLURAL:$1|Eagewnis}} bro Said',
'viewprevnext' => 'Gugg ($1 {{int:pipe-separator}} $2) ($3)',
+'searchmenu-exists' => "'''Dohods ä Said \"[[:\$1]]\".'''",
+'searchmenu-new' => "'''Mach die Said „[[:$1]]“ im Wiki.'''",
+'searchprofile-articles' => 'Inhald',
+'searchprofile-project' => 'Hilf- un Brojegdsaide',
+'searchprofile-images' => 'Multimedia',
'searchprofile-everything' => 'Alles',
+'searchprofile-advanced' => 'Foadgschridde',
'searchprofile-articles-tooltip' => 'In $1 gugge',
'searchprofile-project-tooltip' => 'In $1 gugge',
-'searchprofile-images-tooltip' => 'Gugg noch Bilder',
-'searchprofile-advanced-tooltip' => 'Gugg in onare Nomensraim',
-'search-result-size' => '$1 ({{PLURAL:$2|1 Word|$2 Wärder}})',
-'search-redirect' => '(Wairerlaitung $1)',
-'search-section' => '(Abschnitt $1)',
-'search-suggest' => 'Hoscht gemäänt: $1',
+'searchprofile-images-tooltip' => 'Gugg noch Bilda',
+'searchprofile-everything-tooltip' => 'Such iwwaraal (a wuma dischbedierd)',
+'searchprofile-advanced-tooltip' => 'Gugg in õnnare Nõmensreum',
+'search-result-size' => '$1 ({{PLURAL:$2|1 Word|$2 Wärda}})',
+'search-result-category-size' => '{{PLURAL:$1|1 Said|$1 Saide}} ({{PLURAL:$2|1 Sachgrubb|$2 Sachgrubbe}}, {{PLURAL:$3|1 Dadai|$3 Dadaije}})',
+'search-result-score' => 'Bdaidung: $1%',
+'search-redirect' => '(Waidalaidung $1)',
+'search-section' => '(Abschnidd $1)',
+'search-suggest' => 'Hoschd gemäänd: $1',
'search-interwiki-caption' => 'Schweschterprojekt',
'search-interwiki-default' => '$1 Ergebnis:',
'search-interwiki-more' => '(meh)',
+'search-relatedarticle' => 'Vawond',
+'mwsuggest-disable' => 'Schald Voaschlesch ab',
+'searcheverything-enable' => 'Gugg iwwaraal',
+'searchrelated' => 'vawond',
'searchall' => 'alle',
+'showingresultsheader' => "{{PLURAL:$5|Eagewnis '''$1''' vun '''$3'''|Eagewnis '''$1–$2''' vun '''$3'''}} fa '''$4'''",
'nonefound' => "'''Hiiwais:''' S werre standardmäßich numme e Dail Namensraim durchsucht. Setz ''all:'' vor Dai Suchbegriff zum alle Saide (mit Dischbediersaide, Voalaache usw.) durchsuche odder direkt de Name vum Namensraum, wu durchsucht werre sell.",
-'search-nonefound' => 'Fa die Such hods kä Ergewnis.',
+'search-nonefound' => 'Kä Eagewnis vunde Õfroch.',
'powersearch' => 'Erwaiterte Such',
'powersearch-legend' => 'Erwaiterte Such',
'powersearch-ns' => 'In de Namensraim suche:',
-'powersearch-redir' => 'Wairerlaitunge aazaiche',
+'powersearch-redir' => 'Waiderlaidunge aazaische',
'powersearch-field' => 'Suche noch',
+'powersearch-togglelabel' => 'Wehl:',
+'powersearch-toggleall' => 'Alli',
'powersearch-togglenone' => 'Kään',
# Preferences page
-'preferences' => 'Optione',
-'mypreferences' => 'Oistellunge',
-'saveprefs' => 'Oischdellunge schbeichere',
-'resetprefs' => 'Oischdellunge verwerfe',
+'preferences' => 'Obzione',
+'mypreferences' => 'Oischdellunge',
+'datedefault' => 'Kä Oischdellunge',
+'prefs-watchlist' => 'Beowachdungslischd',
+'prefs-watchlist-edits-max' => 'Hegschdi Õzahl: 1000',
+'prefs-misc' => 'Schunschdisches',
+'prefs-rendering' => 'Uffdridd',
+'saveprefs' => 'Oischdellunge schbaischere',
+'resetprefs' => 'Oischdellunge vawerfe',
+'prefs-editing' => 'Schaffe',
+'rows' => 'Zaile',
+'columns' => 'Schbalde',
+'searchresultshead' => 'Nochgugge',
+'resultsperpage' => 'Dreffa bro Said',
+'stub-threshold-disabled' => 'Abgschdeld',
'guesstimezone' => 'Aus em Browser iwwernemme',
-'yourrealname' => 'Birscherlischer Nome:',
+'timezoneregion-africa' => 'Afrika',
+'timezoneregion-america' => 'Õmerika',
+'timezoneregion-antarctica' => 'Õngdagdika',
+'timezoneregion-arctic' => 'Aadigk',
+'timezoneregion-asia' => 'Asije',
+'timezoneregion-atlantic' => 'Adlõndischa Ozeõn',
+'timezoneregion-australia' => 'Auschdralije',
+'timezoneregion-europe' => 'Oirobba',
+'timezoneregion-indian' => 'Indischa Ozeõn',
+'timezoneregion-pacific' => 'Pazifischa Ozeõn',
+'prefs-searchoptions' => 'Nochgugge',
+'default' => 'Schdondad',
+'youremail' => 'E-Mail:',
+'username' => '{{GENDER:$1|Middawaida}}:',
+'uid' => '{{GENDER:$1|Middawaida}}-Numma:',
+'prefs-memberingroups' => '{{GENDER:$2|Middglied}} vun {{PLURAL:$1|Grubb|Grubbe}}:',
+'yourrealname' => 'Birschalischa Nõme:',
'yourlanguage' => 'Schbrooch:',
+'yournick' => 'Naiji Unnaschfrid',
+'yourgender' => 'Gschleschd:',
'gender-unknown' => 'Ghoim gkalde',
+'gender-male' => 'Männlisch',
+'gender-female' => 'Waiblisch',
+'prefs-help-email' => 'E-mail muss ned soi, awwa wead fas naijsedze vum Kennwoad bneedischd, wonns vagesse hoschd.',
+'prefs-help-email-others' => 'Konschd a wehle, ob õnnare disch iwwan Lingg uff doina Dischbedier-Said õschbresche kennen.
+Doi Address werd ned gzaischd, wõnse midda babbln.',
+'prefs-diffs' => 'Unaschied',
+
+# User rights
+'userrights-groupsmember' => 'Midglied vun:',
+'userrights-reason' => 'Grund:',
# Groups
'group' => 'Grubb:',
+'group-user' => 'Middawaida',
'group-bot' => 'Bots',
'group-sysop' => 'Adminischdradore',
-'group-bureaucrat' => 'Birokrade',
+'group-bureaucrat' => 'Birograde',
'group-all' => '(alle)',
'group-bot-member' => '{{GENDER:$1|Bot}}',
'grouppage-sysop' => '{{ns:project}}:Adminischtratore',
+# Rights
+'right-read' => 'Saide leese',
+'right-edit' => 'Õnde Saide schaffe',
+'right-createpage' => 'Saide mache',
+'right-createtalk' => 'Dischbediersaide mache',
+'right-move' => 'Said bwesche',
+'right-move-subpages' => 'Said midde Unasaide bwesche',
+'right-movefile' => 'Saide vaschiewe',
+'right-upload' => 'Dadaije nufflade',
+'right-upload_by_url' => 'Dadaije vunna Address nufflaade',
+'right-delete' => 'Saide lesche',
+'right-undelete' => 'Said widdaheaschdelle',
+
# Special:Log/newusers
-'newuserlogpage' => 'Naiaameldungs-Logbuch',
+'newuserlogpage' => 'Naijõmeldungs-Logbuch',
# User rights log
-'rightslog' => 'Benutzerrecht-Logbuch',
+'rightslog' => 'Middawaidareschd-Logbuch',
# Associated actions - in the sentence "You do not have permission to X"
-'action-edit' => 'die Said bearwaide',
+'action-edit' => 'die Said beawaide',
# Recent changes
-'nchanges' => '$1 {{PLURAL:$1|Ännerung|Ännerunge}}',
-'recentchanges' => 'Was zuledschd gemachd worre isch',
-'recentchanges-legend' => 'Optione vun de Aazaich',
-'recentchanges-feed-description' => 'Di letschte Ännerunge vun {{SITENAME}} in des Feed aigewwe.',
-'recentchanges-label-minor' => "S'ische glänni Beawaidung",
-'rcnote' => "Aagezaicht {{PLURAL:$1|werd '''1''' Ännerung|werre die letschte '''$1''' Ännerunge}} {{PLURAL:$2|vum letschte Dach|in de letschte '''$2''' Dache}} (Stand: $4, $5)",
-'rclistfrom' => 'Zeich die ledschde Ännerunge ab $1',
-'rcshowhideminor' => 'Klenne Ännerunge $1',
+'nchanges' => '$1 {{PLURAL:$1|Ännarung|Ännarunge}}',
+'recentchanges' => 'Ledschdi Ännarunge',
+'recentchanges-legend' => 'Wehl ä Õzaisch fa die ledschde Ännarunge',
+'recentchanges-feed-description' => 'Ledschde Ännarunge vun {{SITENAME}} im Feed oigewwe.',
+'recentchanges-label-newpage' => 'Domid magschd ä naiji Said',
+'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',
'rcshowhidebots' => 'Bots $1',
-'rcshowhideliu' => 'Aagemeldte Benutzer $1',
-'rcshowhideanons' => 'Nit aagemeldte Benutzer $1',
-'rcshowhidemine' => 'Mai Bearwaidunge $1',
-'rclinks' => 'Zeich die letschte $1 Ännerunge in de letschte $2 Dache<br />$3',
-'diff' => 'Unnerschied',
-'hist' => 'Gschichd',
+'rcshowhideliu' => 'Õgmelda Middawaida $1',
+'rcshowhideanons' => 'Ned õgmelda Middawaida $1',
+'rcshowhidepatr' => '$1 iwabriefde Ännarunge',
+'rcshowhidemine' => 'Moi Beawaidunge $1',
+'rclinks' => 'Zaisch die ledschde $1 Ännarunge inde ledschde $2 Daach<br />$3',
+'diff' => 'Unnaschied',
+'hist' => 'Gschischd',
'hide' => 'vaschdeggle',
'show' => 'zaische',
'minoreditletter' => 'k',
'newpageletter' => 'N',
'boteditletter' => 'B',
-'rc-enhanced-expand' => "Details zaische (dodezu braucht's JavaScript)",
-'rc-enhanced-hide' => 'Dedails versdeckle',
+'rc_categories' => 'Oigschrengd uff Sachgrubbe (abgdeeld middm "|")',
+'rc_categories_any' => 'Ebbes',
+'rc-enhanced-expand' => 'Änzlhaide zaische (dozu brauchds JavaScript)',
+'rc-enhanced-hide' => 'Õgawe vaschdeggle',
# Recent changes linked
-'recentchangeslinked' => 'Was on verlinkde Saide gemacht worre isch',
-'recentchangeslinked-feed' => 'Was on verlinkde Seide gemacht worre isch',
-'recentchangeslinked-toolbox' => 'Was on verlinkde Seide gemacht worre isch',
-'recentchangeslinked-title' => 'Ännerunge an Saide, wu „$1“ druf verlinkt',
-'recentchangeslinked-summary' => "Des isch e Lischt vun Ännerunge, wu erscht gmacht worre sin an Saide, die wu vun ere bstimmte Said verlinkt sin (odder die wu zu ere bstimmte Kadegorie ghere).
-Saide uff [[Special:Watchlist|Dainer Beowachdungslischt]] sin '''fett'''.",
+'recentchangeslinked' => 'Was õn valinggde Saide gännad worre isch',
+'recentchangeslinked-feed' => 'Ännarunge on valinggde Saide',
+'recentchangeslinked-toolbox' => 'Ännarunge uff verlingde Saide',
+'recentchangeslinked-title' => 'Ännarunge õn Saide, wu „$1“ druff verlinggd',
+'recentchangeslinked-noresult' => 'Do isch nix gännad worre inde Zaid.',
+'recentchangeslinked-summary' => "Die Lischd zaischd ledschdi Ännarunge, vunna bschdimmde Said, wu do valinggd isch (odda ä Midglied vunna bschdimmde Sachgrubb isch).
+Saide uff [[Special:Watchlist|Doina Beowachdungslischd]] sinn '''fedd'''.",
'recentchangeslinked-page' => 'Saide:',
-'recentchangeslinked-to' => 'Zaisch Ännerunge uff Saide, wu do her verlinkt sinn',
+'recentchangeslinked-to' => 'Zaisch Ännarunge uff Saide, wu do her valinggd sinn',
# Upload
'upload' => 'Nufflade',
-'uploadbtn' => 'Datei hochlade',
-'uploadlogpage' => 'Dateie-Logbuch',
-'filedesc' => 'Zommefassung',
-'fileuploadsummary' => 'Zommefassung:',
-'savefile' => 'Datei schbeichere',
-'uploadedimage' => 'hod „[[$1]]“ nuffglade',
+'uploadbtn' => 'Dadai nufflade',
+'uploadlogpage' => 'Dadaije-Logbuch',
+'filedesc' => 'Iwwabligg',
+'fileuploadsummary' => 'Iwwabligg:',
+'savefile' => 'Dadai schbaischere',
+'uploadedimage' => 'hodd „[[$1]]“ nuffglade',
# Lock manager
-'lockmanager-notlocked' => '„$1“ hod ned uffgmachd were kenne, die isch ganed gschberd gwesd.',
+'lockmanager-notlocked' => "„$1“ hod ned uffgmachd were kenne, s'isch ganed gschberd gwesd.",
'lockmanager-fail-closelock' => 'Die gbscherd Dadai „$1“ hod ned gschlosse were kenne.',
'lockmanager-fail-deletelock' => 'Die gbscherd Dadai „$1“ hod ned gleschd were kenne.',
'lockmanager-fail-acquirelock' => '„$1“ komma ned schberre.',
'lockmanager-fail-openlock' => 'Die gschberd Dadai „$1“ komma ned uffmache.',
'lockmanager-fail-releaselock' => '„$1“ konn ned fraigewe werre.',
+'license' => 'Bwillischung',
+'license-header' => 'Bwillischung',
+
# Special:ListFiles
+'listfiles_name' => 'Nome',
+'listfiles_size' => 'Greeß',
'listfiles_count' => 'Versione',
# File description page
-'file-anchor-link' => 'Datei',
-'filehist' => 'Dateigschischd',
-'filehist-help' => 'Drick uff e Zaidpunkt zum aazääche, wie s dort ausgsähne hot.',
-'filehist-revert' => 'zuriggsedze',
-'filehist-current' => 'akduell',
+'file-anchor-link' => 'Dadai',
+'filehist' => 'Dadaigschischd',
+'filehist-help' => 'Drigg uffn Zaidpunggd zum õzaische, wies dord ausgseje hodd.',
+'filehist-deleteall' => 'alles lesche',
+'filehist-deleteone' => 'lesche',
+'filehist-revert' => 'zriggsedze',
+'filehist-current' => 'agduell',
'filehist-datetime' => 'Zaidpungd',
-'filehist-thumb' => 'Vorschaubild',
-'filehist-thumbtext' => 'Vorschaubild fer Version vum $1',
-'filehist-user' => 'Benudzer',
-'filehist-dimensions' => 'Moß',
-'filehist-comment' => 'Kommentar',
+'filehist-thumb' => 'Gleenes Bild',
+'filehist-thumbtext' => 'Skizz fa die Ausgab vum $1',
+'filehist-user' => 'Middawaida',
+'filehist-dimensions' => 'Maß',
+'filehist-comment' => 'Oißarung',
'imagelinks' => 'Dadaivawendung',
-'linkstoimage' => 'Die {{PLURAL:$1|Said verwaisd|$1 Saide verwaise}} uff die Datei:',
+'linkstoimage' => 'Die {{PLURAL:$1|Said vawaisd|$1 Saide vawaisn}} uff die Dadai:',
+'nolinkstoimage' => 'Do hodds kä Said, wu dohea zaischd.',
'sharedupload' => 'Die Datei isch vun $1 un s kann sai, dass se ach vun annere Projekt gebraucht werd.',
+'sharedupload-desc-here' => 'Die Dadai isch vun $1 un konn a wuonaschda bnuzd werre.
+Ä Bschraiwung finschd [$2 Dadaibschraiwungssaid] unne.',
'uploadnewversion-linktext' => 'E naiere Version vun derre Datei hochlade',
# File deletion
+'filedelete' => 'Lesch $1',
+'filedelete-legend' => 'Dadai lesche',
'filedelete-submit' => 'Lesche',
+'filedelete-success' => "'''$1''' isch gleschd worre.",
+'filedelete-maintenance-title' => 'Dadai konnned gleschd werre',
+
+# MIME search
+'download' => 'Runalaade',
# Random page
-'randompage' => 'Irnd en Adiggel',
+'randompage' => 'Irschndn Adiggl',
# Statistics
-'statistics' => 'Statischtike',
+'statistics' => 'Schdadischdigge',
+'statistics-pages' => 'Saide',
+
+'disambiguationspage' => 'Template:Vadaidlischung',
-'brokenredirects-edit' => 'bearwaide',
+'brokenredirects-edit' => 'beawaide',
'brokenredirects-delete' => 'lesche',
+'withoutinterwiki-submit' => 'Zaische',
+
# Miscellaneous special pages
'nbytes' => '$1 {{PLURAL:$1|Byte|Bytes}}',
-'nmembers' => '$1 {{PLURAL:$1|Mitglied|Mitglieder}}',
-'prefixindex' => 'Alle Saide (mid Präfix)',
-'newpages' => 'Naie Saide',
-'move' => 'Verschiewe',
+'ncategories' => '$1 {{PLURAL:$1|Sachgrubb|Sachgrubbe}}',
+'ninterwikis' => '$1 {{PLURAL:$1|interwiki|interwikis}}',
+'nlinks' => '$1 {{PLURAL:$1|Lingg|Linggs}}',
+'nmembers' => '$1 {{PLURAL:$1|Middawaida|Middawaida}}',
+'nrevisions' => '$1 {{PLURAL:$1|Ännarung|Ännarunge}}',
+'nimagelinks' => 'Used on $1 {{PLURAL:$1|Said|Saide}}',
+'ntransclusions' => 'oigsedzd uff $1 {{PLURAL:$1|Said|Saide}}',
+'uncategorizedpages' => 'Said ohne Sachgrubb',
+'uncategorizedcategories' => 'Sachgrubb ohne Sachgrubb',
+'uncategorizedimages' => 'Dadai ohne Sachgrubb',
+'uncategorizedtemplates' => 'Vorlach ohne Sachgrubb',
+'unusedcategories' => 'Vawaisdi Sachgrubb',
+'unusedimages' => 'Vawaisde Dadaije',
+'popularpages' => 'Bliewbde Saide',
+'wantedcategories' => 'Gwinschde Sachgrubbe',
+'wantedpages' => 'Gwinschde Saide',
+'mostlinkedcategories' => 'Nizlischi Sachgrubbe',
+'mostlinkedtemplates' => 'Niylischi Vorlache',
+'mostcategories' => 'Saide midd õm maigschde Sachgrubbe',
+'prefixindex' => 'Alle Saide (midd Voasilw)',
+'listusers-editsonly' => 'Zaisch bloß Bnudza mid Baidräsch',
+'usercreated' => '{{GENDER:$3|Gmachd}} vun $1 om $2',
+'newpages' => 'Naije Saide',
+'move' => 'Vaschiewe',
'movethispage' => 'Die Said verschiewe',
-'pager-newer-n' => '{{PLURAL:$1|negschte 1|negschte $1}}',
-'pager-older-n' => '{{PLURAL:$1|vorich 1|voriche $1}}',
+'unusedcategoriestext' => 'Die Sachgrubb hodds, a wonnse vun känna onnare Said odda Sachgrubb gnumme werd.',
+'pager-newer-n' => '{{PLURAL:$1|negschd 1|negschd $1}}',
+'pager-older-n' => '{{PLURAL:$1|vorisch 1|vorische $1}}',
# Book sources
-'booksources' => 'Buchqwelle',
-'booksources-search-legend' => 'No Buchquelle suche',
+'booksources' => 'Buchgwelle',
+'booksources-search-legend' => 'Noch Buchgwelle gugge',
'booksources-go' => 'Geh',
# Special:Log
-'log' => 'Logbicher',
+'log' => 'Logbischa',
# Special:AllPages
'allpages' => 'Alle Saide',
'allpagesto' => 'Saide aazaische wu ufhere mid:',
'allarticles' => 'Alle Saide',
'allpagesprev' => 'Voriche',
-'allpagesnext' => 'Negschte',
+'allpagesnext' => 'Negschd',
'allpagessubmit' => 'Zaische',
+# Special:Categories
+'categories' => 'Sachgrubbe',
+'categoriespagetext' => 'Folschndi {{PLURAL:$1|Sachgrubb hodd|Sachgrubbe hawen}} Saide odda Dadaije. [[Special:UnusedCategories|Ubnudze Sachgrubbe]] werren do nedd gzaischd. Gugg a uffde [[Special:WantedCategories|gwinschde Sachgrubbe]].',
+'categoriesfrom' => 'Zaisch Sachgrubbe õgfonge middt:',
+
+# Special:DeletedContributions
+'sp-deletedcontributions-contribs' => 'Baidräsch',
+
# Special:LinkSearch
-'linksearch' => 'Externe Links',
+'linksearch' => 'Exderne Lings',
+'linksearch-pat' => 'Suchmuschda',
+'linksearch-line' => '$1 isch vun $2 valinggd',
+
+# Special:ListUsers
+'listusers-submit' => 'Zaische',
+'listusers-noresult' => 'Kä Middawaida gfunne',
+'listusers-blocked' => '(gschberd)',
# Special:ListGroupRights
-'listgrouprights-members' => '(Midgliederlischd)',
+'listgrouprights-group' => 'Grubb',
+'listgrouprights-members' => '(Midgliedalischd)',
# Email user
-'emailuser' => 'E-Mail on de Benutzer',
+'emailuser' => 'E-Mail õnde Middawaida',
+'emailusername' => 'Middawaidanõme:',
+'emailfrom' => 'Vum:',
+'emailto' => 'Fa:',
+'emailsubject' => 'Bdreff:',
+'emailmessage' => 'Middeelung:',
'emailsend' => 'Abschigge',
# Watchlist
'watchlist' => 'Beowachdungslischd',
'mywatchlist' => 'Beowachdungslischd',
'watchlistfor2' => 'Vun $1 $2',
-'addedwatchtext' => "Die Said \"[[:\$1]]\" isch zu Dainer [[Special:Watchlist|Beowachdungslischt]] zugefiecht worre.
-Zukimftiche Ännerunge an derre Said un de Dischbediersaid, wu dezu ghert, werre doo aagezaicht, un d Said werd '''fett''' aagezaicht in de [[Special:RecentChanges|Letschte Ännerunge]] fer dass es ääfacher isch zum finne.",
+'addedwatchtext' => "Die Said \"[[:\$1]]\" isch zu doina [[Special:Watchlist|Beowachdungslischd]] zugfieschd worre. Zukinfdischi Ännarunge õnde Said unde Dischbediersaid, wu dzu kead, werren doo õgzaischd, un die Said werd '''fedd''' inde [[Special:RecentChanges|Ledschdi Ännarunge]] õgzaischd domidmas efacha finne konn.",
'removedwatchtext' => 'D Said "[[:$1]]" isch aus [[Special:Watchlist|Dainer Beowachdungslischt]] rausgenumme worre.',
'watch' => 'Beowachde',
'watchthispage' => 'Die Said beowachde',
-'unwatch' => 'Nimmi beowachde',
-'watchlist-details' => 'S hot {{PLURAL:$1|$1 Said|$1 Saide}} uff Dainer Beowachdungslischt, Dischbediersaide zelle nid.',
-'wlshowlast' => 'Die letschte $1 Stunne $2 Dache $3 zaiche',
-'watchlist-options' => 'Optione vun de Beowachdungslischt',
+'unwatch' => 'Nemme beowachde',
+'watchlist-details' => 'S hodd {{PLURAL:$1|$1 Said|$1 Saide}} uff doina Beowachdungslischd, Dischbediersaide zeeln nedd.',
+'wlshowlast' => 'Die ledschde $1 Schdunnd $2 Daach $3 zaische',
+'watchlist-options' => 'Meschlischkaide vunde Beowachdungslischd',
# Displayed when you click the "watch" button and it is in the process of watching
'watching' => 'Beowachde ...',
# Delete
'deletepage' => 'Said lesche',
-'confirm' => 'Bestädiche',
+'confirm' => 'Beschdedische',
'delete-legend' => 'Lesche',
'confirmdeletetext' => 'Du bisch debai e Said z lesche mid alle Versione.
Bitte du bstätiche, dass Du des wllscht du, dass Du verstehsch, was des hääßt, un dass Du des machscht in Iwweraistimmung mit de [[{{MediaWiki:Policy-url}}|Richtline]].',
-'actioncomplete' => 'Agtion ferdisch',
+'actioncomplete' => 'Maßnohm ferdisch',
+'actionfailed' => 'Maßnohm gschaidad',
'deletedtext' => '"$1" isch gelescht worre.
Guck $2 fer e Lischt vun de letschte Leschunge.',
'dellogpage' => 'Leschlogbuch',
'deletereasonotherlist' => 'Annere Grund',
# Rollback
-'rollbacklink' => 'Zeriggsetze',
+'rollbacklink' => 'Zriggsedze',
# Protect
-'protectlogpage' => 'Saideschutz-Logbuch',
-'protectedarticle' => 'hot "[[$1]]" gschizd',
+'protectlogpage' => 'Saideschudz-Logbuch',
+'protectedarticle' => 'hodd "[[$1]]" gschizd',
'modifiedarticleprotection' => 'hot de Schutzstatus vun "[[$1]]" gännert',
'protectcomment' => 'Grund:',
'protectexpiry' => 'Bis:',
'protect_expiry_invalid' => 'Zaidraum isch nid gildich.',
'protect_expiry_old' => 'Zaidraum licht in de Vergangehääd.',
'protect-text' => "Du kannscht de Schutzstatus vun de Said '''$1''' aagucke un ännere.",
-'protect-locked-access' => "Dai Benutzerkonto hot ken Recht zum de Schutzstatus vun ener Said ze ännere.
-Do hot s di aktuelle Aistellunge vun de Said '''$1''':",
+'protect-locked-access' => "Doi Kondo hodd kä Reschd um de Schudzsdadus vunna Said zu ännare.
+Do hodds die Oischdellunge vunde Said '''$1''':",
'protect-cascadeon' => 'Die Said isch gschizd, wail se {{PLURAL:$1|zu derre Said ghert|zu denne Saide ghert}}, wu e Kaskadesperrung gelt.
Der Schutzstatus vun derre Said kannscht ännere, awwer des hot kää Aifluss uff d Kaskadesperrung.',
-'protect-default' => 'Alle Benutzer erlääwe',
-'protect-fallback' => '«$1»-Berechdichung nedich',
-'protect-level-autoconfirmed' => 'Naie un nid aagemeldte Benutzer sperre',
-'protect-level-sysop' => 'Numme Adminischtratore',
+'protect-default' => 'Alle Middawaida erlauwe',
+'protect-fallback' => 'Bloß fa Laid mid "$1" Bereschdischung',
+'protect-level-autoconfirmed' => 'Naiji un nedd õgmeld Middawaida schberre',
+'protect-level-sysop' => 'Bloß fa Adminischdradore',
'protect-summary-cascade' => 'Kaskade',
'protect-expiring' => 'bis $1 (UTC)',
+'protect-expiring-local' => 'bis $1',
'protect-cascade' => 'Kaskadesperrung – alle aigebunnene Vorlache sinn midgsperrd.',
'protect-cantedit' => 'Du kannscht de Schutzstatus vun derre Said nit ännere, wail Du nid d Berechdichung dezu hoscht.',
'restriction-type' => 'Berechdichung:',
-'restriction-level' => 'Schutzewene:',
+'restriction-level' => 'Schudsewene:',
# Restrictions (nouns)
-'restriction-edit' => 'Bearwaide',
+'restriction-edit' => 'Beawaide',
'restriction-move' => 'Verschiewe',
# Undelete
'undelete' => 'Widderherschdelle',
'undeletebtn' => 'Widderherschdelle',
-'undeletelink' => 'aagucke/wirrer herstelle',
-'undeleteviewlink' => 'Ogugge',
-'undeletereset' => 'Zuricksetze',
+'undeletelink' => 'õgugge/widda herschdelle',
+'undeleteviewlink' => 'Õgugge',
+'undeletereset' => 'Zuriggsedze',
'undelete-show-file-submit' => 'Ja',
# Namespace form on various pages
-'namespace' => 'Nomensraum',
-'invert' => 'Auswahl umkehre',
-'blanknamespace' => '(Haaptsaid)',
+'namespace' => 'Nõmensraum',
+'invert' => 'Wahl dausche',
+'blanknamespace' => '(Schdadsaid)',
# Contributions
-'contributions' => '{{GENDER:$1|Wasa gemachd hod}}',
-'contributions-title' => 'Benutzerbaidräch vun $1',
+'contributions' => '{{GENDER:$1|Wassa gemachd hodd}}',
+'contributions-title' => 'Middawaidabaidräsch vun $1',
'mycontris' => 'Baidräsch',
-'contribsub2' => 'Fer $1 ($2)',
-'uctop' => '(akduell)',
-'month' => 'un Monet (un frieher):',
-'year' => 'Ab em Johr (un frieher):',
-
-'sp-contributions-newbies' => 'Zaich numme Baidräch vun naie Benutzerkonte',
-'sp-contributions-blocklog' => 'Sperrlogbuch',
+'contribsub2' => 'Fa $1 ($2)',
+'uctop' => '(geschewedisch)',
+'month' => 'än Monad (un frieja):',
+'year' => 'Abm Johr (un frieja):',
+
+'sp-contributions-newbies' => 'Zaisch nua Baidräsch vun naije Konde',
+'sp-contributions-blocklog' => 'Schberrlogbuch',
+'sp-contributions-uploads' => 'Nufflade',
+'sp-contributions-logs' => 'Logbischa',
'sp-contributions-talk' => 'Dischbediere',
-'sp-contributions-search' => 'No Baidräch suche',
-'sp-contributions-username' => 'IP-Adress orrer Benutzername:',
-'sp-contributions-submit' => 'Suche',
+'sp-contributions-search' => 'Noch Baidräsch gugge',
+'sp-contributions-username' => 'IP-Adress odda Middawaidanõme:',
+'sp-contributions-toponly' => 'Bloß agduelli Ännarunge zaische',
+'sp-contributions-submit' => 'Gugge',
# What links here
-'whatlinkshere' => 'Was doher zeischt',
-'whatlinkshere-title' => 'Saide wu uff "$1" verlinke',
+'whatlinkshere' => 'Was doher zaische dud',
+'whatlinkshere-title' => 'Saide wu uff "$1" valinggn',
'whatlinkshere-page' => 'Said:',
-'linkshere' => "Die Saide verlinke zu '''[[:$1]]''':",
-'isredirect' => 'Wairerlaitungsaid',
-'istemplate' => 'Vorlacheaibindung',
-'isimage' => "Dadailing'g",
-'whatlinkshere-prev' => '{{PLURAL:$1|vorich|voriche $1}}',
-'whatlinkshere-next' => '{{PLURAL:$1|negscht|negschte $1}}',
-'whatlinkshere-links' => '← Links',
-'whatlinkshere-hideredirs' => '$1 Wairerlaitunge',
-'whatlinkshere-hidetrans' => '$1 Vorlacheaibindunge',
-'whatlinkshere-hidelinks' => '$1 Links',
-'whatlinkshere-filters' => 'Filter',
+'linkshere' => "Die Saide valinggn uff '''[[:$1]]''':",
+'nolinkshere' => "Kä Said zaischd uff '''[[:$1]]'''.",
+'isredirect' => 'Waidalaidungsaid',
+'istemplate' => 'Vorlacheoibindung',
+'isimage' => 'Dadailingg',
+'whatlinkshere-prev' => '{{PLURAL:$1|vorisch|vorische $1}}',
+'whatlinkshere-next' => '{{PLURAL:$1|negschd|negschde $1}}',
+'whatlinkshere-links' => '← Linggs',
+'whatlinkshere-hideredirs' => '$1 Waidalaidunge',
+'whatlinkshere-hidetrans' => '$1 Vorlacheoibindunge',
+'whatlinkshere-hidelinks' => '$1 Linggs',
+'whatlinkshere-hideimages' => '$1 Dadailinggs',
+'whatlinkshere-filters' => 'Filda',
# Block/unblock
-'blockip' => 'Benutzer bloggiere',
-'ipbsubmit' => 'Benutzer bloggiere',
-'ipboptions' => '2 Stunne:2 hours,1 Dach:1 day,3 Dache:3 days,1 Woch:1 week,2 Woche:2 weeks,1 Monet:1 month,3 Monet:3 months,6 Monet:6 months,1 Johr:1 year,Fer immer:infinite',
-'ipusubmit' => 'Die Adreß freigewwe',
-'ipblocklist' => 'Gschberrdi IP-Adress un Benudzernome',
-'blocklink' => 'sperre',
+'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',
+'blocklink' => 'schberre',
'unblocklink' => 'Sperr uffhewe',
-'change-blocklink' => 'Sperr ännere',
-'contribslink' => 'Baidräch',
-'blocklogpage' => 'Sperrlogbuch',
-'blocklogentry' => 'hot [[$1]] gsperrt fer e Zaidraum vun $2 $3',
+'change-blocklink' => 'Schberr ännare',
+'contribslink' => 'Baidräsch',
+'blocklogpage' => 'Schberrlogbuch',
+'blocklogentry' => "hodd [[$1]] gschberrd fa'n Zaidraum vun $2 $3",
'unblocklogentry' => 'hot d Sperr vun $1 uffghowwe',
-'block-log-flags-nocreate' => 'Aaleche vun Benutzerkonte isch gsperrt',
+'block-log-flags-nocreate' => 'Õleesche vun Konde isch gschberrd',
# Developer tools
-'lockbtn' => 'Dadebonk schberre',
-'unlockbtn' => 'Dadebonk freigewwe',
+'lockbtn' => 'Dadebongg schberre',
+'unlockbtn' => 'Dadebongg fraigewwe',
# Move page
-'move-page-legend' => 'Said verschiewe',
-'movepagetext' => "Mid dem Format kannscht ener Said e naie Name gewwe, debai werre alle alde Versione uff de nai Name verschowe.
-Aus em Alde Name werd e Wairerlaidungssaid´zum naie Name.
-Wairerlaidungssaide, wu uff de ald Name umlaire, kannscht automatisch aktualisiere.
-Wenn De des nid willsch, no guck uff [[Special:DoubleRedirects|doppelte]] orrer [[Special:BrokenRedirects|kaputte Wairerlaidunge]].
-Du solltescht defer sorche, dass Links wairer zu de richdiche Saide fiehre.
-
-Gebb Acht, dass die Said '''nid''' verschowe werd, wenn s scho e Said mid em naie Name hot, außer wenn se leer isch orrer e Wairerlaidung.
-Des hääßt, Du kannscht ke Said, wu s schun gebbt, iwwerschraiwe.
-
-'''WARNUNG!'''
-Des isch e wichdiche Ännerung fer e Said un kann ziehmlich unerwartet sai fer wichdiche Saide;
-bitte mach des numme, wenn Du die Folche vun derre Aktion kannsch abschätze.",
+'move-page-legend' => 'Said vaschiewe',
+'movepagetext' => "Midm Formad konnschd ä Said en naije Nome gewwe, debai werrem alli alde Ausgawe uffde nai Nome vaschowe.
+Ausm alde Nome werd e Waidalaidungssaid zum naije Nome.
+Waidalaidungssaide, wu uffde ald Nome umlaide dun, konnschd vun allä uffde naischde Schdond bringe.
+Wonndes ned willschd, guggschd uff [[Special:DoubleRedirects|dobbldi]] odda [[Special:BrokenRedirects|kabuddi Waidalaidunge]].
+Soasch dfia, dass Linggs waida uffdie rischdische Saide fiehan.
+
+Gebb Achd, dass die Said '''ned''' vaschowe werd, wonns schunä Said midm naije Nome hod, außa wonnse lea isch odda e Waidalaidung.
+Des heeßd, Du konnschd ke Said, wus schun gibbd, iwwaschraiwe.
+
+'''BAßMAUFF!'''
+Des isch e wischdischi Ännarung fa e Said un konn zimlisch uuerwaaded soi fa wischdischi Saide;
+mach des bloß, wonn die Folsche vunde Maßnohm a abschedze konnschd.",
'movepagetalktext' => "D Dischbediersaid werd ach mid verschowe, '''ausser:'''
* Du verschiebsch die Saide in e annere Namensraum, odder
* s gebbt schun e Dischbediersaid mi dem Name, orrer
* Du wählsch unne d Option, se nid z verschiewe.
In denne Fäll misst mer d Dischbediersaid vun Hand kopiere.",
-'movearticle' => 'Said verschiewe:',
-'newtitle' => 'Zum naie Titel:',
+'movearticle' => 'Said vaschiewe:',
+'newtitle' => 'Zum naije Didl:',
'move-watch' => 'Die Said beowachde',
-'movepagebtn' => 'Said verschiewe',
+'movepagebtn' => 'Said vaschiewe',
'pagemovedsub' => 'Verschiewung hot geklappt',
'movepage-moved' => '\'\'\'"$1" isch verschowe worre uff "$2"\'\'\'',
'articleexists' => 'E Said mid dem Name gebbt s schun, orrer de Name, wu du gewählt hoscht, isch nid gildich.
Bitte nemm e annere Name.',
'talkexists' => "'''Die Said selwerschd, isch verschowe worre, awwer d Dischbediersaid hot nid kenne verschowe werre, wail s schun enni gebbt mid dem Name.
Bitte duu se vun Hand zammefiehre.'''",
-'movedto' => 'verschowe uff',
+'movedto' => 'vaschowe uff',
'movetalk' => 'Dischbediersaid, wu dezu ghert, verschiewe',
-'movelogpage' => 'Verschiewungs-Logbuch',
+'movelogpage' => 'Vaschiewungs-Logbuch',
'movereason' => 'Grund:',
-'revertmove' => 'Zerigg verschiewe',
+'revertmove' => 'Zurigg vaschiewe',
'delete_and_move' => 'Lesche un Verschiewe',
'delete_and_move_confirm' => 'Ja, Said lesche',
# Export
-'export' => 'Saide expordiere',
-'export-submit' => 'Seide exbordiere',
+'export' => 'Saide rausgewe',
+'export-submit' => 'Saide exbordiere',
+'export-addcattext' => 'Saide vunde Sachgrubb dzufiesche:',
+
+# Namespace 8 related
+'allmessagesname' => 'Nõme',
+'allmessagesdefault' => 'Vorgewene Tegschd',
+'allmessages-filter-modified' => 'Vaännad',
# Thumbnails
-'thumbnail-more' => 'Greßer mache',
+'thumbnail-more' => 'Mags greßa',
+'thumbnail_error' => 'Baim Voaschaubild ischwas falsch glaafe: $1',
# Special:Import
'import-interwiki-submit' => 'Impordiere',
# Tooltip help for the actions
-'tooltip-pt-userpage' => 'Dai Benudzersaid',
-'tooltip-pt-mytalk' => 'Dai Dischbedier-Said',
-'tooltip-pt-preferences' => 'Dai Aistellunge',
-'tooltip-pt-watchlist' => 'D Lischt vun Saide, die wu du beowachde dusch',
-'tooltip-pt-mycontris' => 'Lischd vun Daine Baidräch',
-'tooltip-pt-login' => 'Du kannscht Dich aamelde, awwer du muscht s nit',
-'tooltip-pt-logout' => 'Abmelde',
-'tooltip-ca-talk' => 'Iwwer d Inhaltssaid dischbediere',
-'tooltip-ca-edit' => 'Du kannschd die Said bearwaide.
-Bidde nemmde Vorschau-Knobb vorm Schbaischere',
-'tooltip-ca-addsection' => 'E naie Abschnitt aaleche',
-'tooltip-ca-viewsource' => 'Die Said isch gschizd.
-Du kannscht awwer de Quelltegschd aagucke',
-'tooltip-ca-history' => 'Ledschde Versione vun derre Said',
+'tooltip-pt-userpage' => 'Doi Miaddawaidasaid',
+'tooltip-pt-mytalk' => 'Doi Said fas Dischbediere',
+'tooltip-pt-preferences' => 'Doi Oischdellunge',
+'tooltip-pt-watchlist' => 'Lischd vun Saide, wu beowachde duschd',
+'tooltip-pt-mycontris' => 'Lischd vun doine Baidräsch',
+'tooltip-pt-login' => 'Du konnschd disch õmelde, awwa mugschd ned',
+'tooltip-pt-logout' => 'Uffhere',
+'tooltip-ca-talk' => 'Iwwa d Inhaldssaid dischbediere',
+'tooltip-ca-edit' => 'Du konnschd die Said beawaide.
+Bidde nemmde Vorschau-Gnobb vorm Schbaischare',
+'tooltip-ca-addsection' => "N'naije Abschnidd õleche",
+'tooltip-ca-viewsource' => 'Die Said isch gschizd. Du konnschdda de Gwelltegschd õgugge.',
+'tooltip-ca-history' => 'Ledschdi Ausgawe vunde Said',
'tooltip-ca-protect' => 'Die Said schidze',
'tooltip-ca-delete' => 'Die Said lesche',
-'tooltip-ca-move' => 'Die Said verschiewe',
-'tooltip-ca-watch' => 'Die Said zu Dainere Beowachdungslischt zufieche',
-'tooltip-ca-unwatch' => 'Die Said aus Dainer Beowachdunschlischde rausnemme',
-'tooltip-search' => 'Durchsuch {{SITENAME}}',
-'tooltip-search-go' => 'Geh zu ere Said mid genää dem Namme, wenn s se gebbt',
-'tooltip-search-fulltext' => 'Gugg in de Said nochm Tegschd',
-'tooltip-p-logo' => 'Haubdsaid',
-'tooltip-n-mainpage' => 'Uff d Hääptsaid geh',
-'tooltip-n-mainpage-description' => 'Haubdsaid aagucke',
-'tooltip-n-portal' => 'Iwwers Brojegd, wude duu kannschd, wu ebbes finne duschd',
-'tooltip-n-currentevents' => 'hinnergundsinformatione finne iwwer naie Eraichnis',
-'tooltip-n-recentchanges' => 'D Lischd vun de ledschde Ännerunge in dem Wiki',
-'tooltip-n-randompage' => 'E zufällisch Said lade',
-'tooltip-n-help' => 'De Ort zum rausfinne',
-'tooltip-t-whatlinkshere' => 'Lischd vun alle Wikisaide, wu do her verlingd sinn',
-'tooltip-t-recentchangeslinked' => 'Letschde Ännerunge in Saide, wu vun do verlinkt sin',
+'tooltip-ca-move' => 'Die Said vaschiewe',
+'tooltip-ca-watch' => 'Die Said zu doina Beowachdungslischd dzufiesche',
+'tooltip-ca-unwatch' => 'Die Said vun doina Beowachdunschlischd wegnemme',
+'tooltip-search' => 'Gugg uff {{SITENAME}} fa',
+'tooltip-search-go' => 'Geh zude Said midm Nõme, wonnses hodd',
+'tooltip-search-fulltext' => 'Gugg inde Said nochm Tegschd',
+'tooltip-p-logo' => 'Schdadsaid',
+'tooltip-n-mainpage' => "Uff d'Schdadsaid geje",
+'tooltip-n-mainpage-description' => 'Haubdsaid õgugge',
+'tooltip-n-portal' => 'Iwwas Brojegd, wu mache konnschd, wu ebbes finne duschd',
+'tooltip-n-currentevents' => 'Finn Auskinfd iwwas Naijischde',
+'tooltip-n-recentchanges' => 'Lischd vunde ledschde Ännarunge im Wiki',
+'tooltip-n-randompage' => 'Laad e zufellischi Said',
+'tooltip-n-help' => 'Do konschds rausfinne',
+'tooltip-t-whatlinkshere' => 'Lischd vun alle Wikisaide, wu dohie verlingd sinn',
+'tooltip-t-recentchangeslinked' => 'Ledschdi Ännarunge in Saide, wu vun do verlinggd sinn',
'tooltip-feed-rss' => 'RSS feed fer die Said',
-'tooltip-feed-atom' => 'Atom feed fer die Said',
-'tooltip-t-contributions' => 'Die ledschde Baidräch vun däm Benudzer aagucke',
-'tooltip-t-emailuser' => 'Dem Benutzer e E-Mail schicke',
-'tooltip-t-upload' => 'Dateije nufflade',
-'tooltip-t-specialpages' => 'Lischd vun alle Schbezialsaide',
-'tooltip-t-print' => 'Druggversion vun derre Said',
-'tooltip-t-permalink' => 'E dauerhafte Link zu derre Version vun de Said',
-'tooltip-ca-nstab-main' => 'D Inhaldssaid aagucke',
-'tooltip-ca-nstab-user' => 'D Benutzersaid aagucke',
-'tooltip-ca-nstab-special' => 'Des isch e Spezialsaid, du kannscht d Said sälwerscht nit ännere',
-'tooltip-ca-nstab-project' => 'D Projektsaid aagucke',
-'tooltip-ca-nstab-image' => 'D Dateisaid aaugucke',
-'tooltip-ca-nstab-template' => 'Vorlach aagucke',
-'tooltip-ca-nstab-category' => 'D Kategoriesaid aagucke',
-'tooltip-minoredit' => 'Des als klenne Ännerung markiere',
-'tooltip-save' => 'Dai Ännerunge spaichere',
-'tooltip-preview' => 'Guck Daine Ännerunge in de Vorschau aa, vor Du uff Spaichere driksch!',
-'tooltip-diff' => 'Guck, welle Ännerunge Du im Text gmacht hoscht',
-'tooltip-compareselectedversions' => 'D Unnerschied zwische denne zwai ausgwehlte Versione aagucke',
-'tooltip-watch' => 'Die Said zu Dainer Beowachdunglischd zufieche',
-'tooltip-rollback' => "„Zeriggsetze“ machd alle Bearwaidunge vum ledschde Bearwaider rigg'gängisch",
-'tooltip-undo' => "„Zerigg“ machd numme die Ännerung rigg'gängich un zaichd d Vorschau aa.
-Du kannschd e Grund in dr Zammfassung aagewwe",
+'tooltip-feed-atom' => 'Atom-Feed fa die Said',
+'tooltip-t-contributions' => 'Ledschdi Baidräsch vum Middawaida õgugge',
+'tooltip-t-emailuser' => 'Dem Middawaida e E-Mail schigge',
+'tooltip-t-upload' => 'Dadaije nufflade',
+'tooltip-t-specialpages' => 'Lischd vunde Schbezialsaide',
+'tooltip-t-print' => 'Druggausgab vunde Said',
+'tooltip-t-permalink' => "N'dauwahafde Lingg uff die Ausgab vunde Said",
+'tooltip-ca-nstab-main' => 'Inhald õgugge',
+'tooltip-ca-nstab-user' => 'Middawaidasaid õgugge',
+'tooltip-ca-nstab-special' => 'Des isch e Spezialsaid, du konnschd d Said selwaschd nedd ännare',
+'tooltip-ca-nstab-project' => 'Brojegdsaid õgugge',
+'tooltip-ca-nstab-image' => 'Dadaisaid õgugge',
+'tooltip-ca-nstab-template' => 'Vorlach õgugge',
+'tooltip-ca-nstab-category' => 'Sachgrubbsaid õgugge',
+'tooltip-minoredit' => 'Als gleeni Ännarung makiere',
+'tooltip-save' => 'Doi Ännarunge schbaischare',
+'tooltip-preview' => 'Guggda doi Ännarunge inde Vorschau õ, bvor uff Schbaischare drigschd!',
+'tooltip-diff' => 'Gugg, welschi Ännarunge im Tegschd gmachd hoschd',
+'tooltip-compareselectedversions' => 'D Unnaschied zwische denne zwee gwehlde Ausgawe õgugge',
+'tooltip-watch' => 'Die Said zu doina Beowachdunglischd zufiesche',
+'tooltip-rollback' => "„Zriggsedze“ machd alli Beawaidunge vum ledschde Middawaida rigg'gängisch",
+'tooltip-undo' => "„Zrigg“ machd nua die Ännarung rigg'gängich un zaischd ä Vorschau õ.
+Konnschdn Grund inde Zommefassung õgewwe.",
+'tooltip-summary' => 'Gebä koaz Resimee',
+
+# Info page
+'pageinfo-hidden-categories' => '{{PLURAL:$1|Vaschdeggldi Sachgrubb|Vaschdegglde Sachgrubbe}} ($1)',
+'pageinfo-category-info' => 'Sachgrubb-Õgawe',
+'pageinfo-category-subcats' => 'Õzahl vun Unnagrubbe',
# Browsing diffs
-'previousdiff' => '← Ältere Bearwaidung',
-'nextdiff' => 'Naiere Bearwaidung →',
+'previousdiff' => '← Äldari Beawaidung',
+'nextdiff' => 'Naijari Beawaidung →',
# Media information
-'file-info-size' => '$1 × $2 Pixels, Dateigreß: $3, MIME-Type: $4',
-'file-nohires' => 'Ke hechere Ufflesung verfiechbar.',
-'svg-long-desc' => 'SVG-Datei, Basisgreß $1 × $2 Pixels, Dateigreß: $3',
-'show-big-image' => 'Volli Uflesung',
+'file-info-size' => '$1 × $2 Pixels, Dadaigreß: $3, MIME-Type: $4',
+'file-nohires' => 'Ke heheri Ufflesung vafieschba.',
+'svg-long-desc' => 'SVG-Datei, Grundgreß $1 × $2 Pixels, Dadaigreß: $3',
+'show-big-image' => 'Volli Ufflesung',
# Special:NewFiles
'showhidebots' => '(Bots $1)',
'ilsubmit' => 'Such',
# Bad image list
-'bad_image_list' => 'Formad:
-
-nur Zaile, wu mid eme * aafange werre bericksichdischd.
-De erschd Link muss e Link zu ere unerwinschd Dadei sai.
-Annere Links in der glaiche Zail werre als Ausnahme behanneld, d. h. Saide, wu d Dadei drin vorkumme därfd.',
+'bad_image_list' => 'Uffbau: bloß Zaile, wu midm * õfonge werren briggsischdischd.
+De erschd Lingg mussn Lingg zu änna uuerwinschde Dadai soi.
+Õnnare Linggs inde glaische Zail werren als Ausnõhm gnumme, des heesd, Saide, wu inde Dadai vorkumme dirfn.',
# Metadata
-'metadata' => 'Metadata',
-'metadata-help' => 'Die Dadei hot waidere Informatione, wahrschainlich vun de Digidalkamera oder vum Scanner, mid dem wu sie gmacht worre sinn.
-Wenn die Dadei verännerd worre isch, dann kann s sai, dass die zusädzlich Information fer die verännert Dadei nimmi richdisch isch.',
+'metadata' => 'Medadaade',
+'metadata-help' => 'Die Dadai hodd waidari Õgawe, waschoinlisch vunde Digidalkõmara odda vum Skänna, wumase mid gmachd hodd.
+Wonn die Dadai vaännad worre isch, donn konns soi, daß zusedzlischi Õgawe fa die vaännad Dadai nemme rischdisch sinn.',
'metadata-expand' => 'Erwaiterte Details aazaiche',
'metadata-collapse' => 'Erwaiterte Details versteckeln',
-'metadata-fields' => 'Die EXIF-Medadaade werren inde Bild-Bschraiwung a ogzaischd, wonn die Medadaade-Tabelle verschdegld isch.
-Annere Medadaade sinn noamalawais verschdegld.
+'metadata-fields' => 'Die EXIF-Medadaade werren inde Bild-Bschraiwung a õgzaischd, wonn die Medadaade-Tabell vaschdegld isch.
+Õnnare Medadaade sinn noamalawais vaschdegld.
* make
* model
* datetimeoriginal
* gpslongitude
* gpsaltitude',
+# Exif tags
+'exif-iimcategory' => 'Sachgrubb',
+'exif-iimsupplementalcategory' => 'Ergenzndi Sachgrubbe',
+
'exif-gaincontrol-0' => 'Kään',
# External editor support
-'edit-externally' => 'Die Datei bearwaide mit ener externe Aawendung',
-'edit-externally-help' => '(Guck uff [//www.mediawiki.org/wiki/Manual:External_editors Installationsaawisige] fer meh Informatione)',
+'edit-externally' => 'Die Dadai midm õnnare Weagzaisch beawaide',
+'edit-externally-help' => '(Gugg uff [//www.mediawiki.org/wiki/Manual:External_editors Inschdallazionsõwaisunge] fa mea Auskinfd)',
# 'all' in various places, this might be different for inflected languages
'watchlistall2' => 'alle',
'monthsall' => 'alle',
# Watchlist editing tools
-'watchlisttools-view' => 'Die wichdiche Ännerunge aagucke',
-'watchlisttools-edit' => 'D Beowachdunglischt aagucke un bearwaide',
-'watchlisttools-raw' => 'ime große Textfeld bearwaide',
+'watchlisttools-view' => 'Die wischdische Ännarunge õgugge',
+'watchlisttools-edit' => 'Beowachdunglischd õgugge un beawaide',
+'watchlisttools-raw' => 'Im große Tegschdfeld beawaide',
+
+# Core parser functions
+'duplicate-defaultsort' => '\'\'\'Baßma uff:\'\'\' De Schlissl "$2" dudde frijare Schlissl "$1" iwwaschraiwe.',
# Special:SpecialPages
-'specialpages' => 'Spezialsaide',
+'specialpages' => 'Schbezialsaide',
'specialpages-group-other' => 'Onare bsundare Saide',
'specialpages-group-pagetools' => 'Wergzaisch fa Saide',
'specialpages-group-wiki' => 'Daade un Wergzaisch',
# Special:Tags
+'tag-filter' => '[[Special:Tags|Bschildarungs]]-Filda:',
'tags-edit' => 'bearwaide',
# New logging system
# Search suggestions
'searchsuggest-search' => 'Suche',
+# API errors
+'api-error-unknownerror' => 'Uubekonde Irrdumm: "$1".',
+
+# Durations
+'duration-seconds' => '$1 {{PLURAL:$1|Sekund|Sekunde}}',
+'duration-minutes' => '$1 {{PLURAL:$1|Minud|Minude}}',
+'duration-hours' => '$1 {{PLURAL:$1|Schdund|Schdunde}}',
+'duration-days' => '$1 {{PLURAL:$1|Daach|Daache}}',
+'duration-weeks' => '$1 {{PLURAL:$1|Woch|Woche}}',
+'duration-years' => '$1 {{PLURAL:$1|Joa|Joare}}',
+'duration-decades' => '$1 {{PLURAL:$1|Jaazehnd|Jaazehnde}}',
+'duration-centuries' => '$1 {{PLURAL:$1|Jaahunnad|Jaahunnade}}',
+'duration-millennia' => '$1 {{PLURAL:$1|Jaadausnd|Jaadausnde}}',
+
);
* @author BeginaFelicysym
* @author Chrumps
* @author Cysioland
+ * @author Debeet
* @author Derbeth
* @author Equadus
* @author Fizykaa
+ * @author Geitost
* @author Herr Kriss
* @author Holek
* @author Jwitos
'tog-hidepatrolled' => 'Ukryj sprawdzone edycje w ostatnich zmianach',
'tog-newpageshidepatrolled' => 'Ukryj sprawdzone strony na liście nowych stron',
'tog-extendwatchlist' => 'Pokaż na liście obserwowanych wszystkie zmiany, nie tylko ostatnie',
-'tog-usenewrc' => 'Grupuj zmiany według stron na liście ostatnich zmian i obserwowanych (Wymaga JavaScript)',
+'tog-usenewrc' => 'Grupuj zmiany według stron na liście ostatnich zmian i obserwowanych (wymaga JavaScript)',
'tog-numberheadings' => 'Automatyczna numeracja nagłówków',
'tog-showtoolbar' => 'Pokaż pasek narzędzi (JavaScript)',
'tog-editondblclick' => 'Podwójne kliknięcie rozpoczyna edycję (JavaScript)',
'oct' => 'paź',
'nov' => 'lis',
'dec' => 'gru',
+'january-date' => '$1 stycznia',
+'february-date' => '$1 lutego',
+'march-date' => '$1 marca',
+'april-date' => '$1 kwietnia',
+'may-date' => '$1 maja',
+'june-date' => '$1 czerwca',
+'july-date' => '$1 lipca',
+'august-date' => '$1 sierpnia',
+'september-date' => '$1 września',
+'october-date' => '$1 października',
+'november-date' => '$1 listopada',
+'december-date' => '$1 grudnia',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategoria|Kategorie}}',
'create-this-page' => 'Utwórz tę stronę',
'delete' => 'Usuń',
'deletethispage' => 'Usuń tę stronę',
+'undeletethispage' => 'Przywróć tę stronę',
'undelete_short' => 'odtwórz {{PLURAL:$1|1 wersję|$1 wersje|$1 wersji}}',
'viewdeleted_short' => 'Podgląd {{PLURAL:$1|usuniętej|$1 usuniętych}} wersji',
'protect' => 'Zabezpiecz',
'disclaimers' => 'Informacje prawne',
'disclaimerpage' => 'Project:Informacje prawne',
'edithelp' => 'Pomoc w edycji',
-'edithelppage' => 'Help:Jak edytować stronę',
'helppage' => 'Help:Spis treści',
'mainpage' => 'Strona główna',
'mainpage-description' => 'Strona główna',
'namespaceprotected' => "Nie masz uprawnień do edytowania stron w przestrzeni nazw '''$1'''.",
'customcssprotected' => 'Nie jesteś uprawniony do edytowania tej strony CSS, ponieważ zawiera ona ustawienia osobiste innego użytkownika.',
'customjsprotected' => 'Nie jesteś uprawniony do edytowania tej strony JavaScript, ponieważ zawiera ona ustawienia osobiste innego użytkownika.',
+'mycustomcssprotected' => 'Nie masz uprawnień do edytowania tej strony CSS.',
+'mycustomjsprotected' => 'Nie masz uprawnień do edytowania tej strony JavaScript.',
'ns-specialprotected' => 'Stron specjalnych nie można edytować.',
'titleprotected' => "Utworzenie strony o tej nazwie zostało zablokowane przez [[User:$1|$1]].
Uzasadnienie blokady: ''$2''.",
'userlogout' => 'Wyloguj',
'notloggedin' => 'Nie jesteś zalogowany',
'userlogin-noaccount' => 'Nie masz konta?',
-'userlogin-joinproject' => 'Dołącz do {{SITENAME}}',
-'nologin' => "Nie masz konta? '''$1'''.",
+'userlogin-joinproject' => 'Dołącz do {{GRAMMAR:D.lp|{{SITENAME}}}}',
+'nologin' => 'Nie masz konta? $1.',
'nologinlink' => 'Zarejestruj się',
'createaccount' => 'Załóż nowe konto',
'gotaccount' => "Masz już konto? '''$1'''.",
'createacct-captcha' => 'Kontrola bezpieczeństwa',
'createacct-imgcaptcha-ph' => 'Wpisz tekst widoczny powyżej',
'createacct-submit' => 'Utwórz konto',
-'createacct-benefit-heading' => '{{grammar:4sg|{{SITENAME}}}} tworzą ludzie tacy jak ty.',
+'createacct-benefit-heading' => '{{grammar:B.lp|{{SITENAME}}}} tworzą ludzie tacy jak Ty.',
'createacct-benefit-body1' => '{{PLURAL:$1|edycja|edycje|edycji}}',
'createacct-benefit-body2' => '{{PLURAL:$1|strona|strony|stron}}',
'createacct-benefit-body3' => '{{PLURAL:$1|użytkownik|użytkowników}} w ostatnim czasie',
'cannotchangeemail' => 'Na tej wiki nie ma możliwości zmiany adresu e‐mail przypisanego do konta.',
'emaildisabled' => 'Ta witryna nie może wysłać wiadomości e-mail.',
'accountcreated' => 'Konto zostało utworzone',
-'accountcreatedtext' => 'Konto dla $1 zostało utworzone.',
+'accountcreatedtext' => 'Konto dla [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|dyskusja]]) zostało utworzone.',
'createaccount-title' => 'Utworzenie konta w {{GRAMMAR:MS.lp|{{SITENAME}}}}',
'createaccount-text' => 'Ktoś utworzył w {{GRAMMAR:MS.lp|{{SITENAME}}}} ($4), podając Twój adres e‐mail, konto „$2”. Aktualnym hasłem jest „$3”.
Zaloguj się teraz i je zmień.
# Special:PasswordReset
'passwordreset' => 'Wyczyść hasło',
-'passwordreset-text' => 'Wypełnij formularz, aby zresetować swoje hasło.',
+'passwordreset-text-one' => 'Wypełnij ten formularz, aby zresetować hasło.',
+'passwordreset-text-many' => '{{PLURAL:$1|Aby zresetować hasło, wpisz jedną z danych poniżej}}',
'passwordreset-legend' => 'Zresetuj hasło',
'passwordreset-disabled' => 'Na tej wiki wyłączono możliwość resetowania haseł.',
'passwordreset-emaildisabled' => 'Wysyłanie emaili zostało wyłączone na tej wiki',
-'passwordreset-pretext' => '{{PLURAL:$1||Wprowadź jedną z danych poniżej}}',
'passwordreset-username' => 'Nazwa użytkownika:',
'passwordreset-domain' => 'Domena',
'passwordreset-capture' => 'Czy pokazywać treść wiadomości e‐mail?',
Zdaje się, że została skasowana.',
'edit-conflict' => 'Konflikt edycji.',
'edit-no-change' => 'Twoja edycja została zignorowana, ponieważ nie zmienił{{GENDER:|eś|aś|eś(‐aś)}} niczego w tekście.',
+'postedit-confirmation' => 'Twoja edycja została zapisana.',
'edit-already-exists' => 'Nie udało się stworzyć nowej strony.
Strona już istnieje.',
'defaultmessagetext' => 'Domyślny tekst komunikatu',
'rev-deleted-text-unhide' => "Ta wersja strony została '''usunięta'''.
Szczegółowe informacje mogą znajdować się w [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} rejestrze usunięć].
Jeśli chcesz możesz [$1 obejrzeć tę wersję].",
-'rev-suppressed-text-unhide' => "Ta wersja strony została '''ukryta'''.
+'rev-suppressed-text-unhide' => "Ta wersja strony została '''utajniona'''.
Szczegółowe informacje mogą znajdować się w [{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} rejestrze utajniania].
Jeśli chcesz możesz [$1 obejrzeć tę wersję].",
'rev-deleted-text-view' => "Ta wersja strony została '''usunięta'''.
Jeśli chcesz możesz [$1 obejrzeć porównanie wersji].",
'rev-deleted-diff-view' => "Jedna z wersji użytych w porównaniu została '''usunięta'''.
Jeśli chcesz możesz zobaczyć porównanie. Szczegóły mogą znajdować się w [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} rejestrze usunięć].",
-'rev-suppressed-diff-view' => "Jedna z wersji użytych w porównaniu została '''ukryta'''.
-Jeśli chcesz możesz zobaczyć porównanie. Szczegóły mogą znajdować się w [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} rejestrze ukrywania].",
+'rev-suppressed-diff-view' => "Jedna z wersji użytych w porównaniu została '''utajniona'''.
+Jeśli chcesz możesz zobaczyć porównanie. Szczegóły mogą znajdować się w [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} rejestrze utajniania].",
'rev-delundel' => 'pokaż/ukryj',
'rev-showdeleted' => 'pokaż',
'revisiondelete' => 'Usuń/odtwórz wersje',
'searchmenu-legend' => 'Opcje wyszukiwania',
'searchmenu-exists' => "* Strona '''[[$1]]'''",
'searchmenu-new' => "'''Utwórz stronę „[[:$1|$1]]” na tej wiki.'''",
-'searchhelp-url' => 'Help:Spis treści',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Przeglądaj strony zaczynające się od tego przedrostka]]',
'searchprofile-articles' => 'Strony',
'searchprofile-project' => 'Strony pomocy i projektu',
'userrights-groups-help' => 'Możesz zmienić przynależność tego użytkownika do podanych grup.
* Zaznaczone pole oznacza przynależność użytkownika do danej grupy.
* Niezaznaczone pole oznacza, że użytkownik nie należy do danej grupy.
-* Gwiazdka * informuje, że nie możesz usunąć z grupy po dodaniu do niej lub dodać po usunięciu z grupy.',
+* Gwiazdka * informuje, że nie możesz usunąć użytkownika z grupy po dodaniu do niej lub dodać po usunięciu.',
'userrights-reason' => 'Powód',
'userrights-no-interwiki' => 'Nie masz dostępu do edycji uprawnień na innych wiki.',
'userrights-nodatabase' => 'Baza danych $1 nie istnieje lub nie jest lokalna.',
'userrights-notallowed' => 'Nie jesteś upoważniony do nadawania i odbierania uprawnień użytkownikom.',
'userrights-changeable-col' => 'Grupy, które możesz wybrać',
'userrights-unchangeable-col' => 'Grupy, których nie możesz wybrać',
+'userrights-conflict' => 'Konflikt uprawnień użytkownika! Proszę zastosować zmiany ponownie.',
# Groups
'group' => 'Grupa',
'right-ipblock-exempt' => 'Obejście blokad, automatycznych blokad i blokad zakresów, adresów IP',
'right-proxyunbannable' => 'Obejście automatycznych blokad proxy',
'right-unblockself' => 'Odblokowanie samego siebie',
-'right-protect' => 'Zmiana poziomu zabezpieczenia i dostęp do edycji zabezpieczonych stron',
+'right-protect' => 'Zmiana stopnia zabezpieczenia i dostęp do edycji zabezpieczonych stron',
'right-editprotected' => 'Dostęp do edycji zabezpieczonych stron (bez zabezpieczenia dziedziczonego)',
'right-editinterface' => 'Edycja interfejsu użytkownika',
'right-editusercssjs' => 'Edycja plików CSS i JS innych użytkowników',
'right-editusercss' => 'Edycja plików CSS innych użytkowników',
'right-edituserjs' => 'Edycja plików JS innych użytkowników',
+'right-editmyusercss' => 'Edytuj własne pliki CSS',
+'right-editmyuserjs' => 'Edytuj własne pliki JavaScript',
'right-rollback' => 'Szybkie wycofanie zmian wprowadzonych przez użytkownika, który jako ostatni edytował jakąś stronę',
'right-markbotedits' => 'Oznaczanie rewertu jako edycji bota',
'right-noratelimit' => 'Brak ograniczeń przepustowości',
'rc_categories_any' => 'Wszystkie',
'rc-change-size-new' => '$1 {{PLURAL:$1|bajt|bajty|bajtów}} po zmianie',
'newsectionsummary' => '/* $1 */ nowa sekcja',
-'rc-enhanced-expand' => 'Pokaż szczegóły (wymagana JavaScript)',
+'rc-enhanced-expand' => 'Pokaż szczegóły (wymagany JavaScript)',
'rc-enhanced-hide' => 'Ukryj szczegóły',
'rc-old-title' => 'oryginalnie utworzono jako "$1"',
'upload-proto-error-text' => 'Zdalne przesyłanie plików wymaga podania adresu URL zaczynającego się od <code>http://</code> lub <code>ftp://</code>.',
'upload-file-error' => 'Błąd wewnętrzny',
'upload-file-error-text' => 'Wystąpił błąd wewnętrzny podczas próby utworzenia tymczasowego pliku na serwerze.
-Skontaktuj się z [[Special:ListUsers/sysop|administratorem systemu]].',
+Skontaktuj się z [[Special:ListUsers/sysop|administratorem]].',
'upload-misc-error' => 'Nieznany błąd przesyłania',
'upload-misc-error-text' => 'Wystąpił nieznany błąd podczas przesyłania.
Sprawdź, czy podany adres URL jest poprawny i dostępny, a następnie spróbuj ponownie.
-Jeśli problem będzie się powtarzał, skontaktuj się z [[Special:ListUsers/sysop|administratorem systemu]].',
+Jeśli problem będzie się powtarzał, skontaktuj się z [[Special:ListUsers/sysop|administratorem]].',
'upload-too-many-redirects' => 'URL zawiera zbyt wiele przekierowań',
'upload-unknown-size' => 'Nieznany rozmiar',
'upload-http-error' => 'Wystąpił błąd protokołu HTTP – $1',
'notvisiblerev' => 'Wersja została usunięta',
'watchnochange' => 'Żadna z obserwowanych stron nie była edytowana w podanym okresie.',
'watchlist-details' => 'Lista obserwowanych przez Ciebie stron zawiera {{PLURAL:$1|$1 pozycję|$1 pozycje|$1 pozycji}}, nie licząc stron dyskusji.',
-'wlheader-enotif' => '* Wysyłanie powiadomień na adres e‐mail jest włączone.',
-'wlheader-showupdated' => "* '''Wytłuszczone''' zostały strony, które zostały zmodyfikowane od Twojej ostatniej na nich wizyty.",
+'wlheader-enotif' => 'Wysyłanie powiadomień na adres e‐mail jest włączone.',
+'wlheader-showupdated' => "'''Wytłuszczone''' zostały strony, które zostały zmodyfikowane od Twojej ostatniej na nich wizyty.",
'watchmethod-recent' => 'poszukiwanie ostatnich zmian wśród obserwowanych stron',
'watchmethod-list' => 'poszukiwanie obserwowanych stron wśród ostatnich zmian',
'watchlistcontains' => 'Na liście obserwowanych przez Ciebie stron {{PLURAL:$1|znajduje się 1 pozycja|znajdują się $1 pozycje|znajduje się $1 pozycji}}.',
'modifiedarticleprotection' => 'zmieniono stopień zabezpieczenia "[[$1]]"',
'unprotectedarticle' => 'odbezpieczył [[$1]]',
'movedarticleprotection' => 'przeniósł ustawienia zabezpieczeń z [[$2]] do [[$1]]',
-'protect-title' => 'Zmiana poziomu zabezpieczenia „$1”',
-'protect-title-notallowed' => 'Podgląd poziomu zabezpieczenia „$1”',
+'protect-title' => 'Zmiana stopnia zabezpieczenia „$1”',
+'protect-title-notallowed' => 'Podgląd stopnia zabezpieczenia „$1”',
'prot_1movedto2' => 'stronę [[$1]] przeniósł do [[$2]]',
'protect-badnamespace-title' => 'Przestrzeń nazw, w której nie można zabezpieczać stron',
'protect-badnamespace-text' => 'Stron w tej przestrzeni nazw nie można zabezpieczać.',
'mycontris' => 'Edycje',
'contribsub2' => 'Dla użytkownika $1 ($2)',
'nocontribs' => 'Brak zmian odpowiadających tym kryteriom.',
-'uctop' => ' (jako ostatnia)',
+'uctop' => '(ostatnia)',
'month' => 'Do miesiąca (włącznie)',
'year' => 'Do roku (włącznie)',
'whatlinkshere-filters' => 'Filtry',
# Block/unblock
-'autoblockid' => 'Automatyczna blokada nr $1',
+'autoblockid' => 'automatyczna blokada nr $1',
'block' => 'Zablokuj użytkownika',
'unblock' => 'Odblokuj użytkownika',
'blockip' => 'Zablokuj użytkownika',
'thumbnail-more' => 'Powiększ',
'filemissing' => 'Brak pliku',
'thumbnail_error' => 'Błąd przy generowaniu miniatury $1',
+'thumbnail_error_remote' => 'Komunikat o błędzie z {{grammar:2sg|$1}}:
+$2',
'djvu_page_error' => 'Strona DjVu poza zakresem',
'djvu_no_xml' => 'Nie można pobrać danych w formacie XML dla pliku DjVu',
'thumbnail-temp-create' => 'Nie można utworzyć pliku tymczasowego miniatury',
'importlogpagetext' => 'Rejestr przeprowadzonych importów stron z innych serwisów wiki.',
'import-logentry-upload' => 'Zaimportowano [[$1]] przez pobieranie plików',
'import-logentry-upload-detail' => '$1 {{PLURAL:$1|wersja|wersje|wersji}}',
-'import-logentry-interwiki' => '{{GENDER:$2|zaimportował|zaimportowała}} $1 używając transwiki',
+'import-logentry-interwiki' => 'zaimportowano $1 używając transwiki',
'import-logentry-interwiki-detail' => '$1 {{PLURAL:$1|wersja|wersje|wersji}} z $2',
# JavaScriptTest
'modern.css' => '/* Umieszczony tutaj kod CSS wpłynie na wygląd skórki Nowoczesna */',
'vector.css' => '/* Umieszczony tutaj kod CSS wpłynie na wygląd skórki Wektor */',
'print.css' => '/* Umieszczony tutaj kod CSS wpłynie na wygląd wydruku */',
-'handheld.css' => '/* Umieszczony tutaj kod CSS wpłynie na wygląd na urządzeniach kieszonkowych skórki ustawionej w zmiennej $wgHandheldStyle */',
'noscript.css' => '/* Umieszczony tu arkusz stylów CSS będzie wykorzystywany dla użytkowników z wyłączoną obsługą JavaScript */',
'group-autoconfirmed.css' => '/* CSS tutaj umieszczony będzie dotyczyć tylko automatycznie zatwierdzonych użytkowników */',
'group-bot.css' => '/* CSS tutaj umieszczony będzie obowiązywał tylko dla botów */',
'version-hook-subscribedby' => 'Zapotrzebowany przez',
'version-version' => '(Wersja $1)',
'version-license' => 'Licencja',
-'version-poweredby-credits' => "To wiki korzysta z oprogramowania '''[//www.mediawiki.org/ MediaWiki]''', copyright © 2001‐$1 $2.",
+'version-poweredby-credits' => "Ta wiki korzysta z oprogramowania '''[//www.mediawiki.org/ MediaWiki]''', copyright © 2001‐$1 $2.",
'version-poweredby-others' => 'inni',
'version-credits-summary' => 'Następujące osoby wniosły istotny wkład w rozwój oprogramowania [[Special:Version|MediaWiki]].',
'version-license-info' => 'MediaWiki jest wolnym oprogramowaniem – możesz je dystrybuować i modyfikować zgodnie z warunkami licencji GNU General Public License opublikowanej przez Free Software Foundation w wersji 2 tej licencji lub (jeśli wolisz) dowolnej późniejszej.
'version-entrypoints-header-url' => 'URL',
# Special:Redirect
+'redirect' => 'Przekierowanie według pliku, użytkownika albo identyfikatora wersji',
+'redirect-legend' => 'Przekieruj do pliku lub strony',
+'redirect-summary' => 'Ta strona specjalna przekierowuje do pliku (wg nazwy pliku), do strony (wg numeru wersji) albo do strony użytkownika (wg liczbowego identyfikatora użytkownika)',
+'redirect-submit' => 'Przejdź',
+'redirect-lookup' => 'Wyszukaj:',
'redirect-value' => 'Wartość:',
'redirect-user' => 'ID użytkownika',
+'redirect-revision' => 'Wersja strony',
'redirect-file' => 'Nazwa pliku',
+'redirect-not-exists' => 'Nie znaleziono wartości',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Szukaj duplikatów pliku',
'rightsnone' => 'brak',
# Feedback
-'feedback-bugornote' => 'Jeśli jesteś {{GENDER:|gotów|gotowa}} szczegółowo opisać problem techniczny, proszę [$1 zgłoś błąd].
+'feedback-bugornote' => 'Jeśli jesteś w stanie szczegółowo opisać problem techniczny, proszę [$1 zgłoś błąd].
W przeciwnym wypadku można użyć prostego formularza poniżej. Komentarz zostanie dodany do strony "[$3 $2]", wraz z nazwą użytkownika.',
'feedback-subject' => 'Temat',
'feedback-message' => 'Wiadomość:',
* @author Borichèt
* @author Bèrto 'd Sèra
* @author Dragonòt
+ * @author Geitost
* @author Kaganer
* @author MaxSem
* @author SabineCretella
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categorìa|Categorìe}}',
'category_header' => 'Pàgine ant la categorìa «$1»',
-'subcategories' => 'Sotacategorìe',
-'category-media-header' => 'Archivi ant la categorìa "$1"',
+'subcategories' => 'Sot-categorìe',
+'category-media-header' => 'Archivi multimojen ant la categorìa «$1»',
'category-empty' => "''Al dì d'ancheuj la categorìa a l'ha pa andrinta nì 'd pàgine, nì d'archivi multimojen.''",
'hidden-categories' => '{{PLURAL:$1|Categorìa stërmà|Categorìe stërmà}}',
'hidden-category-category' => 'Categorìe stërmà',
-'category-subcat-count' => "{{PLURAL:$2|Sta categorìa-sì a l'ha mach na sot-categorìa, listà ambelessì sota.|Sta categorìa-sì a l'ha {{PLURAL:$1|na sot-categorìa|$1 sot-categorìe}}, ëd $2 ch'a-i në j'é an total.}}",
+'category-subcat-count' => "{{PLURAL:$2|Sta categorìa-sì a l'ha mach la sot-categorìa sì-dapress.|Sta categorìa-sì a l'ha {{PLURAL:$1|la sot-categorìa|le $1 sot-categorìe}} sì-dapress, ëd $2 ch'a-i në j'é an total.}}",
'category-subcat-count-limited' => "Sta categorìa-sì a l'ha {{PLURAL:$1|la sot-categorìa|le $1 sot-categorìe}} sì-dapress.",
'category-article-count' => "{{PLURAL:$2|Sta categorìa-sì a l'ha mach sta pàgina.|Ant sta categorìa-sì a-i {{PLURAL:$1|intra mach sta pàgina|intro $1 pàgine}} ëd $2 ch'a-i në j'é an total.}}",
'category-article-count-limited' => 'Ant sta categorìa-sì a-i {{PLURAL:$1|resta mach sta pàgina|resto $1 pàgine}}.',
'category-file-count' => "{{PLURAL:$2|Sta categorìa-sì a l'ha nomach st'archivi.|Sta categorìa-sì a l'ha {{PLURAL:$1|n'|$1}} archivi, ëd $2 ch'a-i në j'é an total.}}",
'category-file-count-limited' => "Ant sta categorìa-sì a-i {{PLURAL:$1|intra mach st'|intro $1}} archivi.",
-'listingcontinuesabbrev' => ' anans',
+'listingcontinuesabbrev' => 'anans',
'index-category' => 'Pàgine indicisà',
-'noindex-category' => 'Pàgine pa indicisà',
-'broken-file-category' => 'Pàgine con colegament pa giust a archivi',
+'noindex-category' => 'Pàgine nen indicisà',
+'broken-file-category' => "Pàgine con dle liure cioche a d'archivi",
'about' => 'A propòsit ëd',
'article' => 'Pàgina ëd contnù',
'newwindow' => '(as deurb ant na fnestra neuva)',
-'cancel' => 'Scancela',
-'moredotdotdot' => 'Dë pì...',
-'morenotlisted' => "A-i é ëdcò d'àutre nen ant la lista...",
+'cancel' => 'Anulé',
+'moredotdotdot' => 'Ëd pì...',
+'morenotlisted' => "A-i na j'é ëdcò d'àutri nen ant la lista...",
'mypage' => 'Pàgina',
'mytalk' => 'Ciaciarade',
'anontalk' => "Ciaciarade për st'adrëssa IP-sì",
'and' => ' e',
# Cologne Blue skin
-'qbfind' => 'Treuva',
-'qbbrowse' => 'Sfeuja',
-'qbedit' => 'Modìfica',
-'qbpageoptions' => 'Opsion dla pàgina',
-'qbmyoptions' => 'Mie opsion',
+'qbfind' => 'Trové',
+'qbbrowse' => 'Sfojé',
+'qbedit' => 'Modifiché',
+'qbpageoptions' => 'Costa pàgina',
+'qbmyoptions' => 'Mie pàgine',
'qbspecialpages' => 'Pàgine speciaj',
'faq' => 'Chestion frequente',
'faqpage' => 'Project:Soèns An Ciamo',
# Vector skin
-'vector-action-addsection' => 'Gionta argoment',
-'vector-action-delete' => 'Scancela',
-'vector-action-move' => 'Tramuda',
-'vector-action-protect' => 'Protegg',
-'vector-action-undelete' => 'Arcùpera',
+'vector-action-addsection' => "Gionté n'argoment",
+'vector-action-delete' => 'Scancelé',
+'vector-action-move' => 'Tramudé',
+'vector-action-protect' => 'Protege',
+'vector-action-undelete' => 'Arcuperé',
'vector-action-unprotect' => 'Cangé la protession',
'vector-simplesearch-preference' => "Abilité la bara d'arserca semplificà (mach për la pel Vector)",
-'vector-view-create' => 'Crea',
-'vector-view-edit' => 'Modìfica',
-'vector-view-history' => 'Varda stòria',
-'vector-view-view' => 'Les',
-'vector-view-viewsource' => 'Varda sorgiss',
+'vector-view-create' => 'Creé',
+'vector-view-edit' => 'Modifiché',
+'vector-view-history' => 'Smon-e la stòria',
+'vector-view-view' => 'Lese',
+'vector-view-viewsource' => 'Vëdde la sorgiss',
'actions' => 'Assion',
'namespaces' => 'Spassi nominaj',
'variants' => 'Variant',
'navigation-heading' => 'Lista ëd navigassion',
'errorpagetitle' => 'Eror',
-'returnto' => 'Torna andré a $1.',
+'returnto' => 'Torné andré a $1.',
'tagline' => 'Da {{SITENAME}}.',
'help' => 'Agiut',
-'search' => 'Sërca',
-'searchbutton' => 'Sërca',
-'go' => 'Va',
-'searcharticle' => 'Va',
+'search' => 'Sërché',
+'searchbutton' => 'Sërché',
+'go' => 'Andé',
+'searcharticle' => 'Andé',
'history' => 'Version pì veje',
'history_short' => 'Stòria',
-'updatedmarker' => "Agiornà da 'nt l'ùltima vira che i son passà",
+'updatedmarker' => "agiornà da l'ùltima vira che i son passà",
'printableversion' => 'Version bon-a për stampé',
'permalink' => 'Anliura fissa',
-'print' => 'Stampa',
+'print' => 'Stampé',
'view' => 'Vardé',
-'edit' => 'Modìfica',
+'edit' => 'Modifiché',
'create' => 'Creé',
-'editthispage' => "Modìfica st'artìcol-sì",
+'editthispage' => 'Modifiché costa pàgina',
'create-this-page' => 'Creé sta pàgina',
-'delete' => 'Scancela',
-'deletethispage' => 'Scancela pàgina',
-'undelete_short' => 'Disdëscancela {{PLURAL:$1|na modìfica|$1 modìfiche}}',
+'delete' => 'Scancelé',
+'deletethispage' => 'Scancelé sa pàgina',
+'undelete_short' => 'Arcuperé {{PLURAL:$1|na modìfica|$1 modìfiche}}',
'viewdeleted_short' => 'Vardé {{PLURAL:$1|na modìfica scancelà|$1 modìfiche scancelà}}',
-'protect' => 'Protegg',
-'protect_change' => 'cambia',
-'protectthispage' => 'Protegg sta pàgina-sì',
+'protect' => 'Protege',
+'protect_change' => 'modifiché',
+'protectthispage' => 'Protege sta pàgina-sì',
'unprotect' => 'Cangé la protession',
'unprotectthispage' => 'Cangé la protession ëd sa pàgina',
'newpage' => 'Pàgina neuva',
'talkpage' => 'Discussion',
'talkpagelinktext' => 'discussion',
-'specialpage' => 'Pàgina Special',
+'specialpage' => 'Pàgina special',
'personaltools' => 'Utiss përsonaj',
'postcomment' => 'Session neuva',
-'articlepage' => "Che a varda l'artìcol",
+'articlepage' => 'Vëdde la pàgina ëd contnù',
'talk' => 'Discussion',
-'views' => 'vìsite',
-'toolbox' => 'utiss',
+'views' => 'Vìsite',
+'toolbox' => "Bòita dj'utiss",
'userpage' => 'Che a varda la pàgina Utent',
-'projectpage' => 'Che a varda la pàgina ëd servissi',
-'imagepage' => "Varda la pàgina dl'archivi",
-'mediawikipage' => 'Mostra ël mëssagi',
-'templatepage' => 'Mostra lë stamp',
-'viewhelppage' => "Smon la pàgina d'agiut",
-'categorypage' => 'Fa vëdde la categorìa',
+'projectpage' => 'Che a varda la pàgina ëd proget',
+'imagepage' => "Vëdde la pàgina dl'archivi",
+'mediawikipage' => 'Mostré ël mëssagi',
+'templatepage' => 'Vëdde lë stamp',
+'viewhelppage' => "Smon-e la pàgina d'agiut",
+'categorypage' => 'Vëdde la categorìa',
'viewtalkpage' => 'Vardé la discussion',
'otherlanguages' => 'Àutre lenghe',
'redirectedfrom' => '(Ridiression da $1)',
'redirectpagesub' => 'Pàgina ëd ridiression',
-'lastmodifiedat' => "Modificà l'ùltima vira al $2, $1.",
+'lastmodifiedat' => "Modificà l'ùltima vira ai $1 a $2.",
'viewcount' => "St'artìcol-sì a l'é stàit lesù {{PLURAL:$1|na vira|$1 vire}}.",
'protectedpage' => 'Pàgina proteta',
-'jumpto' => 'Va a:',
+'jumpto' => 'Andé a:',
'jumptonavigation' => 'navigassion',
-'jumptosearch' => 'arserca',
+'jumptosearch' => 'arserché',
'view-pool-error' => "An dëspias, ij servent a son motobin carià al moment.
Tròpi utent a son an camin ch'a preuvo a lese sta pàgina-sì.
-Për piasì, speta un pòch prima ëd prové torna a vardé sta pàgina-sì.
+Për piasì, ch'a speta un pòch prima ëd prové torna a lese costa pàgina.
$1",
'pool-timeout' => "Ël temp a l'é finì antramentre ch'a së spetava la saradura",
'copyrightpage' => "{{ns:project}}:Drit d'autor",
'currentevents' => 'Neuve',
'currentevents-url' => 'Project:Neuve',
-'disclaimers' => 'Difide',
+'disclaimers' => 'Avertense',
'disclaimerpage' => 'Project:Avertense generaj',
-'edithelp' => 'Manual dë spiegassion',
-'edithelppage' => "Help:Coma scrive n'artìcol",
-'helppage' => 'Help:Agiut',
+'edithelp' => 'Agiut a la modìfica',
+'helppage' => 'Help:Contnù',
'mainpage' => 'Intrada',
'mainpage-description' => 'Intrada',
-'policy-url' => 'Project:Deuit',
+'policy-url' => 'Project:Régole',
'portal' => 'Piòla',
'portal-url' => 'Project:Piòla',
-'privacy' => 'Polìtica ëd confindensialità',
-'privacypage' => 'Project:Polìtica ëd confidensialità',
+'privacy' => 'Régole ëd confidensialità',
+'privacypage' => 'Project:Régole ëd confidensialità',
'badaccess' => 'Përmess nen giust',
'badaccess-group0' => "A l'ha pa ij përmess dont a fa dë manca për fé st'operassion-sì.",
'badaccess-groups' => "Costa funsion-sì a l'é riservà a j'utent che a sio almanch ant {{PLURAL:$2|la partìa|un-a dle partìe}}: $1.",
'versionrequired' => 'A-i va për fòrsa la version $1 ëd MediaWiki',
-'versionrequiredtext' => 'Për dovré sta pàgina-sì a-i va la version $1 dël programa MediaWiki. Che a varda [[Special:Version]]',
+'versionrequiredtext' => 'Për dovré sta pàgina-sì a-i va la version $1 dël programa MediaWiki. Che a varda [[Special:Version|la pàgina dle version]].',
'ok' => 'Va bin',
-'retrievedfrom' => 'Pijàit da "$1"',
+'retrievedfrom' => 'Pijàit da «$1»',
'youhavenewmessages' => "A l'ha $1 ($2).",
-'newmessageslink' => 'mëssagi neuv',
-'newmessagesdifflink' => "A-i é chèich-còs ëd diferent da 'nt l'ùltima revision",
-'youhavenewmessagesfromusers' => "It l'has $1 da {{PLURAL:$3|n'autr utent|$3 utent}} ($2).",
+'newmessageslink' => 'ëd mëssagi neuv',
+'newmessagesdifflink' => 'ùltima modìfica',
+'youhavenewmessagesfromusers' => "A l'ha $1 da {{PLURAL:$3|n'autr utent|$3 utent}} ($2).",
'youhavenewmessagesmanyusers' => "A l'ha $1 da vàire utent ($2).",
'newmessageslinkplural' => '{{PLURAL:$1|un mëssagi neuv|$1 mëssagi neuv}}',
-'newmessagesdifflinkplural' => 'ùltime {{PLURAL:$1|modìfica|modìfiche}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|ùltima modìfica|ùltime modìfiche}}',
'youhavenewmessagesmulti' => "A l'ha dij neuv mëssagi an $1",
'editsection' => 'modìfica',
'editold' => 'modìfica',
'logout' => "Seurte da 'nt ël sistema",
'userlogout' => 'seurte dal sistema',
'notloggedin' => "a l'é pa ant ël sistema",
-'nologin' => "Ha-lo ancó nen un cont? '''$1'''.",
+'nologin' => 'Ha-lo ancó nen un cont? $1.',
'nologinlink' => 'creésse un cont.',
'createaccount' => 'Crea un cont neuv',
'gotaccount' => "Ha-lo già un sò cont? '''$1'''.",
'resetpass-wrong-oldpass' => "Ciav a temp o corenta nen bon-a.
Miraco it l'has già cambià la ciav o it l'has ciamà na neuva ciav a temp.",
'resetpass-temp-password' => 'Ciav a temp:',
+'resetpass-abort-generic' => "Ël cangiament ëd la ciav a l'é stàit anulà da n'estension.",
# Special:PasswordReset
'passwordreset' => 'Cambi ëd ciav',
-'passwordreset-text' => "Ch'a completa 's formolari për arsèive un mëssagi ëd pòsta eletrònica con ij detaj ëd sò cont.",
'passwordreset-legend' => 'Cambié la ciav',
'passwordreset-disabled' => 'Ij cangiament ëd ciav a son stàit disabilità su sta wiki.',
-'passwordreset-pretext' => "{{PLURAL:$1||Ch'a anserissa un dij tòch ëd dat sì-sota}}",
'passwordreset-username' => 'Stranòm:',
'passwordreset-domain' => 'Domini:',
'passwordreset-capture' => 'Vardé ël mëssagi arzultant?',
A smija che a sia stàita scancelà.',
'edit-conflict' => "Conflit d'edission.",
'edit-no-change' => "Toa modìfica a l'é stàita ignorà, përchè a l'é pa stàit fàit gnun cambiament al test.",
+'postedit-confirmation' => "Soa modìfica a l'é stàita salvà!",
'edit-already-exists' => 'As peul nen creesse la pàgina.
A esist già.',
'defaultmessagetext' => "Test che a-i sarìa se a-i fusso pa 'd modìfiche",
'content-failed-to-parse' => "Faliment ëd l'anàlisi dël contnù ëd $2 për ël model $1: $3",
'invalid-content-data' => 'Dat dël contnù pa bon',
'content-not-allowed-here' => "Ël contnù «$1» a l'é nen autorisà an sla pàgina [[$2]]",
-'editwarning-warning' => "Lassé sta pàgina-sì a peul fé an manera che it perde tute le modìfiche ch'it l'has fàit.
-S'it ses logà, it peule disabilité st'avis-sì ant la session \"{{int:prefs-editing}}\" dij tò gust.",
+'editwarning-warning' => "Chité sta pàgina-sì a peul feje perde tute le modìfiche ch'a l'ha fàit.
+S'a l'é rintrà ant ël sistema, a peul disabilité st'avis ant la session «Modìfiche» dij sò gust.",
# Content models
'content-model-wikitext' => 'test wiki',
'searchmenu-legend' => "Opsion d'arserca",
'searchmenu-exists' => "'''A-i é na pàgina ciamà \"[[:\$1]]\" dzora a costa wiki'''",
'searchmenu-new' => "'''Creé la pàgina «[[:$1]]» ansima a sta wiki-sì!'''",
-'searchhelp-url' => 'Help:Contnù',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Visualisé le pàgine con sto prefiss-sì]]',
'searchprofile-articles' => 'Pàgine ëd contnù',
'searchprofile-project' => "Pàgine d'agiut e ëd proget",
'notvisiblerev' => "La revision a l'é stàita scancelà",
'watchnochange' => "Gnun-a dle ròbe che as ten sot-euj a l'é staita modificà ant ël periòd ësmonù.",
'watchlist-details' => "A l'é dëmentrè ch'as ten sot-euj {{PLURAL:$1|$1 pàgina|$1 pàgine}}, nen contand cole ëd discussion.",
-'wlheader-enotif' => '* Le notìfiche për pòsta eletrònica a son abilità.',
-'wlheader-showupdated' => "* Cole pàgine che a son ëstàite modificà da quand che a l'é passaje ansima l'ùltima vira a resto marcà an '''grassèt'''",
+'wlheader-enotif' => 'Le notìfiche për pòsta eletrònica a son abilità.',
+'wlheader-showupdated' => "Cole pàgine che a son ëstàite modificà da quand che a l'é passaje ansima l'ùltima vira a resto marcà an '''grassèt'''",
'watchmethod-recent' => "contròl a j'ùltime modìfiche fàite a le pàgine che as ten sot-euj",
'watchmethod-list' => 'contròl ëd le pàgine che as ten sot-euj për vëdde se a-i sio staje dle modìfiche recente',
'watchlistcontains' => "Soa lista dla ròba ch'as ten sot-euj a l'ha andrinta {{PLURAL:$1|na pàgina|$1 pàgine}}.",
'disclaimers' => 'منکرنا',
'disclaimerpage' => 'Project:عام منکرنا',
'edithelp' => 'لکھن وچ مدد',
-'edithelppage' => 'Help:لکھنا',
'helppage' => 'Help:لسٹ',
'mainpage' => 'پہلا صفہ',
'mainpage-description' => 'پہلا صفہ',
# Special:PasswordReset
'passwordreset' => 'کنجی واپس لیاؤ',
-'passwordreset-text' => 'اے فارم مکمل کرکے اپنے کھاتے دی معلومات اپنے ای-میل تے منگوالو۔',
'passwordreset-legend' => 'کنجی واپس لیاؤ',
'passwordreset-disabled' => 'اس وکی تے کنجی واپس نئیں لیائی جاسکدی۔',
-'passwordreset-pretext' => '{{PLURAL:$1||تھلے دتے ہوۓ ڈیٹا چوں اک ایتھے دیو}}',
'passwordreset-username' => 'ورتن ناں:',
'passwordreset-domain' => 'ڈومین',
'passwordreset-capture' => 'آن والی ای-میل ویکھو؟',
'searchmenu-legend' => 'چنوتیاں کھوجو',
'searchmenu-exists' => "'''ایس وکی تے \"[[:\$1]]\" ناں دا صفہ ہے۔.'''",
'searchmenu-new' => "'''ایس وکی تے \"[[:\$1]]\" بناؤ'''",
-'searchhelp-url' => 'Help:فہرست',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ایس پریفکس نال صفے کھوجو]]',
'searchprofile-articles' => 'لسٹ صفے',
'searchprofile-project' => 'مدد تے ویونت صفے',
'listusers-noresult' => 'ورتن آلا نئیں لبیا۔',
'listusers-blocked' => '(روکیا گیا)',
+# Special:ActiveUsers
+'activeusers' => 'کم کرن والیاں دی لسٹ',
+'activeusers-intro' => 'اے اوناں ورتن والیاں دی لسٹ اے جنان پچھلے $1 {{PLURAL:$1|دن|دناں}} چ کم کیتا اے۔',
+'activeusers-count' => '$1 {{PLURAL:$1|تبدیلی|تبدیلیاں}} پچھلے{{PLURAL:$3|دن|$3 دن}} چ',
+'activeusers-from' => 'ورتن والے ایس توں شروع ہون والے دسو:',
+'activeusers-hidebots' => 'بوٹ چھپاؤ',
+'activeusers-hidesysops' => 'مکھۓ لکاؤ',
+'activeusers-noresult' => 'کوئی ورتن والا نئیں لبیا۔',
+
# Special:ListGroupRights
'listgrouprights' => 'ورتن ٹرلی حق',
'listgrouprights-summary' => 'تھلے اک لسٹ اے ورتن ٹولیاں دی ای وکی تے، اپنے رلدے حقاں نال۔
'watchnochange' => 'دسے گۓ ویلے چ تھواڈیاں ویکھیاںشیواں نئیں بدلیاں گیاں۔',
'watchlist-details' => '{{PLURAL:$1|$1 صفحہ|$1 صفحہ}} تواڈی اکھ تھلے گلاں باتاں شامل نہیں۔',
'wlheader-enotif' => 'ای-میل نوٹیفیکیشن قابل',
-'wlheader-showupdated' => '* صفے جیہڑے بدلے کۓ تھواڈے آخری وار آن مکرون اونان نوں موٹا کرکے دسیا گیا اے۔',
+'wlheader-showupdated' => ' صفے جیہڑے بدلے کۓ تھواڈے آخری وار آن مکرون اونان نوں موٹا کرکے دسیا گیا اے۔',
'watchmethod-recent' => 'نیڑے ہویاں تبدیلیاں چائیدے صفیاں دیاں ویکھے جان والے صفیاں لئی۔',
'watchmethod-list' => 'ویکھے کے صفے نیڑے ہون والیاں تبدیلیاں دی پڑتال',
'watchlistcontains' => 'تھواڈی اکھ تھلے رکھی لسٹ چ $1 {{PLURAL:$1|صفہ|صفے}} نیں۔',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'چوڑائی',
'exif-imagelength' => 'اچائی',
'exif-bitspersample' => 'اک کمپوننٹ وچ بٹ',
'exif-originalimageheight' => 'مورت دی اچائی کٹن توں پہلے',
'exif-originalimagewidth' => 'مورت دی چوڑائی کٹن توں پہلے',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'کھولی گئی',
'exif-compression-2' => 'سی سی آئی ٹی ٹی گروپ 3 1-ڈائمینشنل موڈیفائیڈ ہفمین رن فل لنتھ انکوڈنگ',
'exif-compression-3' => 'سی سی آئی ٹی ٹی گروپ 3 فیکس اینکوڈنگ',
'version-software-product' => 'پراڈکٹ',
'version-software-version' => 'ورژن',
-# Special:FilePath
-'filepath' => 'فائل راہ',
-'filepath-page' => 'فائل:',
-'filepath-submit' => 'چلو',
-'filepath-summary' => 'اے خاص صفہاک فائل دا پورا راہ دسدا اے۔
-مورتاں پورے ریزولوشن چ دسیاں گیاں نئیں، دوجیاں فائل ٹائپ نوں نوں اوناں دے رلدے پروکراماں نال ٹوریا گیا اے۔',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'دوہری فائلاں دی کھوج کرو',
'fileduplicatesearch-summary' => 'دوہریاں فائلاں دی کھوج ہیش ویلیو تے اے۔',
'disclaimers' => 'Ιμπρέσουμ',
'disclaimerpage' => 'Project:Ιμπρέσουμ',
'edithelp' => "Βοήθεια για τ' αλλαγμαν",
-'edithelppage' => 'Help:Άλλαγμαν',
'helppage' => 'Help:Περιεχόμενα',
'mainpage' => 'Αρχικόν σελίδα',
'mainpage-description' => 'Αρχικόν σελίδα',
'prevn' => '{{PLURAL:$1|$1}} προηγουμένων',
'nextn' => '{{PLURAL:$1|$1}} επομένων',
'viewprevnext' => 'Τέρεν ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Περιεχόμενα',
'searchprofile-images' => 'Πολυμέσα',
'searchprofile-everything' => 'Όλεα',
'search-result-size' => '$1 ({{PLURAL:$2|1 λέξη|$2 λέξεις}})',
'powersearch-togglenone' => 'Τιδέν',
'search-external' => 'Εύρον σα εξ μερέαν',
-# Quickbar
-'qbsettings-none' => 'Τιδέν',
-
# Preferences page
'preferences' => 'Αγαπεμένα',
'mypreferences' => "Τ' εμά τ' αγαπεμένα",
'listgrouprights-rights' => 'Δικαιώματα',
'listgrouprights-members' => '(κατάλογον μελών)',
-# E-mail user
+# Email user
'emailuser' => 'Στείλον μένεμαν σον χρήστεν ατόν',
'emailfrom' => 'Ασά:',
'emailto' => 'Σο:',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Πλάτος',
'exif-imagelength' => 'Ύψηλος',
'exif-bitspersample' => 'Bits ανά στοιχείο',
'version-software' => "Λογισμικόν ντ'εθέκεν",
'version-software-version' => 'Έκδοση',
-# Special:FilePath
-'filepath-page' => 'Αρχείον:',
-'filepath-submit' => 'Δέβα',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Όνεμα αρχείου:',
'fileduplicatesearch-submit' => 'Εύρον',
'tog-shownumberswatching' => 'Waidinnais gīrbin stēisan nadirīntin tērpautajan',
'tog-oldsig' => 'Twājs tēntiskas papeisāsenis',
'tog-fancysig' => 'Laikais papeisāsenin per wikitekstan (šlāit autōmatiskan sēisnan)',
-'tog-externaleditor' => 'Auprestaminai tērpaus izwinaīnan editōran (tēr per ekspertans, izkīnina speciālins ensadīnsenins en kōmputeŗu)',
-'tog-externaldiff' => 'Auprestaminai tērpaus izwinaīnan prōgraman waidināntin šlaitīntans (tēr per ekspertans, izkīnina speciālins ensadīnsenins en kōmputeŗu)',
'tog-showjumplinks' => 'Enklaūjais autengīnsenins "sākais en"',
'tog-uselivepreview' => 'Tērpaus dināmiskan pirmādiran (JavaScript) (eksperimentālin)',
'tog-forceeditsummary' => 'Pawakēis mi nierpilninsenin stesse ebpeisāsenin stēisan kitawīdinsnan',
'disclaimers' => 'Etrāwingiskwas arāikinsenei',
'disclaimerpage' => 'Project:Etrāwingiskwas arāikinsenei',
'edithelp' => 'Redigīsnas pagalba',
-'edithelppage' => 'Help:Redigīsna',
'helppage' => 'Help:Ēnturs',
'mainpage' => 'Galwas pāusan',
'mainpage-description' => 'Galwas pāusan',
'searchmenu-legend' => 'Laukīsnas mazīngiskwas',
'searchmenu-exists' => "'''Ast pāusan \"[[:\$1]]\" en šissei wikkin''",
'searchmenu-new' => "'''Teīkeis pāusan \"[[:\$1|\$1]]\" en šissei wikki!'''",
-'searchhelp-url' => 'Help:Ēnturs',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Pradirēis pāusans sen šin prefiksan]]',
'searchprofile-project' => 'Pagalbas be prōjaktas pāusai',
'searchprofile-everything' => 'Wiss',
En šissei kērdan tu mazzi laukītun sen Google.
Pamēnais, kāi tenēisan indicai mazzi ni būtwei aktuālin.',
-# Quickbar
-'qbsettings' => 'Dīwas preiēisenes sawinzli',
-'qbsettings-none' => 'Nisatausnā',
-'qbsettings-fixedleft' => 'Preidrūktintan prei kāirai',
-'qbsettings-fixedright' => 'Preidrūktintan prei tikrai',
-'qbsettings-floatingleft' => 'Plūjants prei kāirai',
-'qbsettings-floatingright' => 'Plūjants prei tikrai',
-
# Preferences page
'preferences' => 'Pirminiskwas',
'mypreferences' => 'Majjas pirminiskwas',
'notvisiblerev' => 'Wersiōni pastāi āupausintan',
'watchnochange' => 'Niaīnan iz nadirītans pāusans ni bēi redigītan en padātan kērdasetrapan.',
'watchlist-details' => 'Ast {{PLURAL:$1|$1 pāusan|$1 pāusai}} en twajjai listin stēisan nadirītan, ni gīrbawintei diskusiōnis pāusans.',
-'wlheader-enotif' => '* E-mail pawakīsenei ast enklaūtan.',
-'wlheader-showupdated' => "* Pastāi '''pastarīntan''' pāusai, kawīdai bēi kitawīdintan ezze Twajjai panzdauman tenēisan kāimalukisnan..",
+'wlheader-enotif' => 'E-mail pawakīsenei ast enklaūtan.',
+'wlheader-showupdated' => "Pastāi '''pastarīntan''' pāusai, kawīdai bēi kitawīdintan ezze Twajjai panzdauman tenēisan kāimalukisnan..",
'watchmethod-recent' => 'Izbandasnā stēisan panzdauman kitawīdisnan sirzdau nadirītans pāusans',
'watchmethod-list' => 'Izbandasnā stēisan nadirītan pāusan laukīntei panzdaumans kitawīdisnans',
'watchlistcontains' => 'En twajjai listin stēisan nadirītan ast $1 {{PLURAL:$1|pāusan|pāusai}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Plattu',
'exif-imagelength' => 'Aūktan',
'exif-bitspersample' => 'Bittai per izimlin',
'exif-gpsareainformation' => 'GPS areālas pabilisnā',
'exif-gpsdatestamp' => 'GPS dātan',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Nikōmpresitan',
'exif-unknowndate' => 'Niwaīstan dātan',
'version-software' => 'Instalītas prōgraminis',
'version-software-version' => 'Wersiōni',
-# Special:FilePath
-'filepath' => 'Lunki en zūrbrukin',
-'filepath-page' => 'Zūrbrukis:',
-'filepath-submit' => 'Lunki',
-'filepath-summary' => 'Šin speciālin pāusan wartinna pastippan lunkin prei zūrbrukin.
-Bildei ast waīdintan en pilnan rezōluciōnin, kitāi zūrbrukin tīpai ast etwertan en prōgramu preiristasmu prei tennans.
-
-Enpeisāis zūrbrukes pabilīsnan šlāit "{{ns:file}}:" prefiksan.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Laukīs dwigubbintans zūrbrukins',
'fileduplicatesearch-summary' => 'Laukīs dwigubbintans zūrbrukins pa tenēisan kōntrōlingin summin.',
'oct' => 'اکتوبر',
'nov' => 'نومبر',
'dec' => 'ډيسمبر',
+'january-date' => 'جنوري $1',
+'february-date' => 'فېبروري $1',
+'march-date' => 'مارچ $1',
+'april-date' => 'اپريل $1',
+'may-date' => 'مۍ $1',
+'june-date' => 'جون $1',
+'july-date' => 'جولای $1',
+'august-date' => 'اګست $1',
+'september-date' => 'سېپتمبر $1',
+'october-date' => 'اکتوبر $1',
+'november-date' => 'نومبر $1',
+'december-date' => 'دېسمبر $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|وېشنيزه|وېشنيزې}}',
'disclaimers' => 'ردادعاليکونه',
'disclaimerpage' => 'Project:ټولګړی ردادعاليک',
'edithelp' => 'د لارښود سمون',
-'edithelppage' => 'Help:سمونه',
'helppage' => 'Help:نيوليک',
'mainpage' => 'لومړی مخ',
'mainpage-description' => 'لومړی مخ',
'gotaccount' => 'آيا وار دمخې يو ګڼون لری؟ $1.',
'gotaccountlink' => 'ننوتل',
'userlogin-resetlink' => 'د ننوتلو مالومات مو هېر شوي؟',
+'createacct-join' => 'خپل مالومات لاندې ورکړۍ',
'createacct-emailrequired' => 'برېښليک پته',
'createacct-emailoptional' => 'برېښليک پته (اختياري)',
'createacct-email-ph' => 'برېښليک پته مو وټاپۍ',
'createaccountreason' => 'سبب:',
'createacct-reason' => 'سبب',
'createacct-reason-ph' => 'ولې تاسې بل ګڼون جوړول غوااړۍ',
+'createacct-captcha' => 'امنيتي تدبير',
'createacct-imgcaptcha-ph' => 'پورته تاسې ته ښکاره شوی متن وټاپۍ',
'createacct-submit' => 'ګڼون مو جوړ کړۍ',
'createacct-benefit-heading' => '{{SITENAME}} ستاسې په شان خلکو لخوا جوړ شوی.',
-'createacct-benefit-body1' => 'سمونونه',
-'createacct-benefit-body2' => 'مخونه',
-'createacct-benefit-body3' => 'وروستني ونډه وال',
+'createacct-benefit-body1' => '{{PLURAL:$1|سمون|سمونونه}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|مخ|مخونه}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|وروستنی ونډه وال|وروستني ونډه وال}}',
'badretype' => 'دا پټنوم چې تاسې ليکلی د مخکني پټنوم سره ورته نه دی.',
'userexists' => 'کوم کارن نوم چې تاسې ورکړی هغه بل چا کارولی.
لطفاً يو بل نوم وټاکۍ.',
# Special:PasswordReset
'passwordreset' => 'پټنوم بياپرځايول',
-'passwordreset-text' => 'د برېښليک د بياپرځای کېدنې لپاره دا فورمه ډکه کړۍ.',
'passwordreset-legend' => 'پټنوم بياپرځايول',
'passwordreset-disabled' => 'په دې ويکي پټنوم بياپرځای کولو کړنه ناچارنه شوې.',
-'passwordreset-pretext' => '{{PLURAL:$1||د لاندې اومتوک يوه برخه مالومات وليکۍ}}',
'passwordreset-username' => 'کارن-نوم:',
'passwordreset-domain' => 'شپول:',
'passwordreset-capture' => 'د پايلې برېښليک کتل غواړې؟',
داسې ښکاري چې دا مخ ړنګ شوی.',
'edit-conflict' => 'د سمولو خنډ',
'edit-no-change' => 'ستاسې سمون بابېزه وګڼل شو، دا ځکه چې تاسې په متن کې کوم بدلون نه دی راوستلی.',
+'postedit-confirmation' => 'ستاسې سمون خوندي شو.',
'edit-already-exists' => 'په دې نوم يو نوی مخ جوړ نه شو.
پدې نوم د پخوا نه يو مخ شته.',
'defaultmessagetext' => 'تلواليزه پيغام متن',
'searchmenu-legend' => 'د پلټلو خوښنې',
'searchmenu-exists' => "'''په دې ويکي يو مخ د \"[[:\$1]]\" په نامه دی'''",
'searchmenu-new' => "'''په دې ويکي د \"[[:\$1]]\" مخ جوړول!'''",
-'searchhelp-url' => 'Help:لړليک',
'searchprofile-articles' => 'مېنځپانګيز مخونه',
'searchprofile-project' => 'د لارښود او پروژې مخونه',
'searchprofile-images' => 'ګڼرسنۍ',
'notanarticle' => 'يو منځپانګيز مخ نه دی',
'watchlist-details' => 'ستاسې کتنلړ کې {{PLURAL:$1|$1 مخ دی|$1 مخونه دي}}، د خبرو اترو مخونه مو پکې نه دي شمېرلي.',
'wlheader-enotif' => 'د برېښليک له لارې خبرول چارن شوی.*',
-'wlheader-showupdated' => "* هغه مخونه چې وروستی ځل ستاسو د کتلو نه وروسته بدلون موندلی په '''روڼ''' ليک نښه شوي.",
+'wlheader-showupdated' => "هغه مخونه چې وروستی ځل ستاسو د کتلو نه وروسته بدلون موندلی په '''روڼ''' ليک نښه شوي.",
'watchlistcontains' => 'ستاسې کتنلړ $1 {{PLURAL:$1|مخ|مخونه}} لري.',
'iteminvalidname' => "د '$1' توکي سره ستونزه، ناسم نوم ...",
'wlnote' => "دلته لاندې {{PLURAL:$1|وروستی بدلون دی|وروستي '''$1''' بدلونونه دي}} چې په {{PLURAL:$2|تېر ساعت|تېرو '''$2''' ساعتونو}} کې تر $3 نېټې او $4 بجو پېښ شوي.",
'contributions-title' => 'د $1 کارن ونډې',
'mycontris' => 'ونډې',
'contribsub2' => 'د $1 لپاره ($2)',
-'uctop' => '(سرپاڼÙ\87)',
+'uctop' => '(اÙ\88سÙ\86Û\8c)',
'month' => 'له مياشتې د (او پخواني):',
'year' => 'له کال د (او پخواني):',
'confirmemail_noemail' => 'تاسې يوه سمه برېښليک پته نه ده ثبته کړې مهرباني وکړی [[Special:Preferences|د کارن غوره توبونه]] مو بدل کړۍ.',
'confirmemail_send' => 'يو تاييدي کوډ لېږل',
'confirmemail_sent' => 'تاييدي برېښليک ولېږل شو.',
-'confirmemail_oncreate' => 'ستاسو د برېښناليک پتې ته يو تاييدي کوډ درولېږل شو.
-ددې لپاره چې تاسو غونډال ته ورننوځی تاسو ته د همدغه کوډ اړتيا نشته، خو تاسو ته د همدغه کوډ اړتيا په هغه وخت کې پکارېږي کله چې په ويکي کې خپلې برېښناليکي کړنې چارن کول غواړی.',
+'confirmemail_oncreate' => 'ستاسې برېښليک پتې ته يو تاييدي کوډ درولېږل شو.
+که تاسې غونډال ته ورننوځی نو تاسې دې کوډ ته اړتيا نه لرۍ، خو تاسې هغه وخت همدې درلېږل شوي کوډ ته اړتيا لرۍ، کله چې په ويکي کې د برېښليک پر بنسټ نورې کړنې چارنول غواړی.',
'confirmemail_needlogin' => 'ددې لپاره چې ستاسې د برېښليک پتې پخلی وشي، تاسې ته پکار ده چې $1.',
'confirmemail_loggedin' => 'اوس ستاسې د برېښليک پتې پخلی وشو.',
'confirmemail_error' => 'ستاسې د برېښليک پتې د تاييد په خوندي کولو کې يوه ستونزه رامېنڅ ته شوه.',
* @author McDutchie
* @author MetalBrasil
* @author Minh Nguyen
+ * @author Nemo bis
* @author Nuno Tavares
+ * @author OTAVIO1981
* @author Opraco
* @author Paulo Juntas
* @author Pedroca cerebral
'oct' => 'Out.',
'nov' => 'Nov.',
'dec' => 'Dez.',
+'january-date' => '$1 de Janeiro',
+'february-date' => '$1 de Fevereiro',
+'march-date' => '$1 de Março',
+'april-date' => '$1 de Abril',
+'may-date' => '$1 de Maio',
+'june-date' => '$1 de Junho',
+'july-date' => '$1 de Julho',
+'august-date' => '$1 de Agosto',
+'september-date' => '$1 de Setembro',
+'october-date' => '$1 de Outubro',
+'november-date' => '$1 de Novembro',
+'december-date' => '$1 de Dezembro',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoria|Categorias}}',
'create-this-page' => 'Criar/iniciar esta página',
'delete' => 'Eliminar',
'deletethispage' => 'Eliminar esta página',
+'undeletethispage' => 'Restaurar esta página',
'undelete_short' => 'Restaurar {{PLURAL:$1|uma edição|$1 edições}}',
'viewdeleted_short' => 'Ver {{PLURAL:$1|uma edição eliminada|$1 edições eliminadas}}',
'protect' => 'Proteger',
'viewtalkpage' => 'Ver discussão',
'otherlanguages' => 'Noutras línguas',
'redirectedfrom' => '(Redireccionado de $1)',
-'redirectpagesub' => 'Página de redireccionamento',
+'redirectpagesub' => 'Página de redirecionamento',
'lastmodifiedat' => 'Esta página foi modificada pela última vez à(s) $2 de $1.',
'viewcount' => 'Esta página foi acedida {{PLURAL:$1|uma vez|$1 vezes}}.',
'protectedpage' => 'Página protegida',
'disclaimers' => 'Exoneração de responsabilidade',
'disclaimerpage' => 'Project:Aviso_geral',
'edithelp' => 'Ajuda de edição',
-'edithelppage' => 'Help:Editar',
'helppage' => 'Help:Conteúdos',
'mainpage' => 'Página principal',
'mainpage-description' => 'Página principal',
'namespaceprotected' => "Não possui permissão para editar páginas no espaço nominal '''$1'''.",
'customcssprotected' => 'Não tem permissões para editar esta página de CSS porque ela contém as configurações pessoais de outro utilizador.',
'customjsprotected' => 'Não tem permissões para editar esta página de JavaScript porque ela contém as configurações pessoais de outro utilizador.',
+'mycustomcssprotected' => 'Não tem permissão para editar esta página de CSS.',
+'mycustomjsprotected' => 'Não tem permissão para editar esta página de JavaScript.',
'ns-specialprotected' => 'Não é possível editar páginas especiais',
'titleprotected' => 'Este título foi protegido contra criação por [[User:$1|$1]].
A justificação foi "\'\'$2\'\'".',
'createacct-yourpasswordagain' => 'Confirme a palavra-chave',
'createacct-yourpasswordagain-ph' => 'Digite a palavra-chave novamente',
'remembermypassword' => 'Recordar os meus dados neste computador (no máximo, por $1 {{PLURAL:$1|dia|dias}})',
-'userlogin-remembermypassword' => 'Memorizar neste computador',
-'userlogin-signwithsecure' => 'Inicie sessão com servidor seguro',
+'userlogin-remembermypassword' => 'Manter-me autenticado',
+'userlogin-signwithsecure' => 'Use uma ligação segura',
'securelogin-stick-https' => 'Manter a ligação HTTPS após a autenticação',
'yourdomainname' => 'O seu domínio:',
'password-change-forbidden' => 'Não podes alterar senhas nesta wiki.',
'userlogout' => 'Sair',
'notloggedin' => 'Não autenticado',
'userlogin-noaccount' => 'Não tem uma conta?',
-'userlogin-joinproject' => 'Junte {{SITENAME}}',
+'userlogin-joinproject' => 'Junte-se ao projeto {{SITENAME}}',
'nologin' => 'Não possui uma conta? $1.',
'nologinlink' => 'Criar uma conta',
'createaccount' => 'Criar conta',
'gotaccount' => "Já possui uma conta? '''$1'''.",
'gotaccountlink' => 'Autentique-se',
'userlogin-resetlink' => 'Esqueceu-se do seu nome de utilizador ou da palavra-chave?',
-'helplogin-url' => 'Ajuda:login',
+'userlogin-resetpassword-link' => 'Recuperar palavra-chave',
+'helplogin-url' => 'Help:Autenticação',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ajuda a fazer login]]',
'createacct-join' => 'Insira a sua informação abaixo.',
'createacct-emailrequired' => 'Endereço de email',
'createacct-realname' => 'Nome verdadeiro (opcional)',
'createaccountreason' => 'Motivo:',
'createacct-reason' => 'Razão',
+'createacct-reason-ph' => 'Porque está a criar outra conta',
'createacct-captcha' => 'Verificar segurança',
+'createacct-imgcaptcha-ph' => 'Digite o texto que vê acima',
+'createacct-submit' => 'Crie a sua conta',
+'createacct-benefit-heading' => '{{SITENAME}} é feito por pessoas como você.',
+'createacct-benefit-body1' => '{{PLURAL:$1|edição|edições}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|página|páginas}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|contribuidor|contribuidores}} recentes',
'badretype' => 'As palavras-chave que introduziu não são iguais.',
'userexists' => 'O nome de utilizador introduzido já existe.
Por favor escolha um nome diferente.',
'loginerror' => 'Erro de autenticação',
+'createacct-error' => 'Erro na criação da conta',
'createaccounterror' => 'Não foi possível criar a conta: $1',
'nocookiesnew' => "A conta de utilizador foi criada, mas neste momento não está autenticado.
A {{SITENAME}} utiliza ''cookies'' para autenticar os utilizadores.
'cannotchangeemail' => 'Os endereços de correio electrónico das contas não podem ser alterados nesta wiki.',
'emaildisabled' => 'Este site não consegue enviar e-mails.',
'accountcreated' => 'Conta criada',
-'accountcreatedtext' => 'A conta de utilizador para $1 foi criada.',
+'accountcreatedtext' => 'A conta de utilizador para [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) foi criada.',
'createaccount-title' => 'Criação de conta na {{SITENAME}}',
'createaccount-text' => 'Alguém criou uma conta com o nome $2 para o seu endereço de correio electrónico, na wiki {{SITENAME}} ($4), com a palavra-chave "$3".
Deve agora autenticar-se e alterar a sua palavra-chave.
# Email sending
'php-mail-error-unknown' => 'Erro desconhecido na função mail() do PHP',
'user-mail-no-addy' => 'Tentou enviar uma mensagem sem um endereço de correio electrónico',
+'user-mail-no-body' => 'Tentou mandar email sem conteúdo ou com conteúdo demasiado pequeno.',
# Change password dialog
'resetpass' => 'Alterar palavra-chave',
'resetpass-wrong-oldpass' => 'Palavra-chave temporária ou actual inválida.
Pode ter já alterado com sucesso a sua palavra-chave ou solicitado uma nova palavra-chave temporária.',
'resetpass-temp-password' => 'Palavra-chave temporária:',
+'resetpass-abort-generic' => 'Alteração de senha foi cancelada por uma extensão.',
# Special:PasswordReset
'passwordreset' => 'Repor palavra-chave',
-'passwordreset-text' => 'Preencha este formulário para repor a sua palavra-passe.',
+'passwordreset-text-one' => 'Preencha este formulário para repor a sua palavra-passe.',
+'passwordreset-text-many' => '{{PLURAL:$1|Digite uma parte dos dados para redefinir sua senha.}}',
'passwordreset-legend' => 'Reiniciar a palavra-chave',
'passwordreset-disabled' => 'O reinício da palavra-chave foi impossibilitado nesta wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Introduza um dos dados abaixo}}',
+'passwordreset-emaildisabled' => 'Recursos de e-mail foram desactivados neste wiki.',
'passwordreset-username' => 'Nome de utilizador:',
'passwordreset-domain' => 'Domínio:',
'passwordreset-capture' => 'Ver o email resultante?',
'passwordreset-capture-help' => 'Se marcar esta caixa, o e-mail (com a senha temporária) será-lhe mostrado, além de ser enviado para o utilizador.',
'passwordreset-email' => 'Correio electrónico:',
'passwordreset-emailtitle' => 'Detalhes da conta na {{SITENAME}}',
-'passwordreset-emailtext-ip' => 'Alguém, provavelmente você a partir do endereço IP $1, pediu a recuperação dos detalhes da sua conta na {{SITENAME}} ($4). {{PLURAL:$3|A seguinte conta está associada|As seguintes contas estão associadas}} a este correio electrónico:
+'passwordreset-emailtext-ip' => 'Alguém (provavelmente você, a partir do endereço IP $1) pediu a recuperação da palavra-passe no projeto {{SITENAME}} ($4). {{PLURAL:$3|A seguinte conta de utilizador está associada|As seguintes contas de utilizador estão associadas}} a este correio eletrónico:
$2
-{{PLURAL:$3|Esta palavra-chave temporária irá|Estas palavras-chave temporárias irão}} expirar dentro de {{PLURAL:$5|um dia|$5 dias}}. Deve autenticar-se e escolher uma palavra-chave nova agora. Se este pedido não foi feito por si, ou se entretanto se recordou da sua palavra-chave original e já não deseja alterá-la, pode ignorar esta mensagem e continuar a usar a palavra-chave antiga.',
-'passwordreset-emailtext-user' => 'O utilizador $1 da {{SITENAME}} pediu a recuperação dos detalhes da sua conta na {{SITENAME}} ($4). {{PLURAL:$3|A seguinte conta está associada|As seguintes contas estão associadas}} a este correio electrónico:
+{{PLURAL:$3|Esta palavra-passe temporária irá|Estas palavras-passes temporárias irão}} expirar dentro de {{PLURAL:$5|um dia|$5 dias}}.
+Deve autenticar-se e escolher uma palavra-passe nova agora. Se outra pessoa fez este pedido, ou se entretanto se recordou da sua palavra-passe original e já não deseja alterá-la, pode ignorar esta mensagem e continuar a usar a palavra-passe antiga.',
+'passwordreset-emailtext-user' => 'O utilizador $1 do projeto {{SITENAME}} pediu a recuperação da sua palavra-passe no projeto {{SITENAME}} ($4). {{PLURAL:$3|A seguinte conta de utilizador está associada|As seguintes contas de utilizador estão associadas}} a este endereço de correio eletrónico:
$2
-{{PLURAL:$3|Esta palavra-chave temporária irá|Estas palavras-chave temporárias irão}} expirar dentro de {{PLURAL:$5|um dia|$5 dias}}. Deve autenticar-se e escolher uma palavra-chave nova agora. Se este pedido não foi feito por si, ou se entretanto se recordou da sua palavra-chave original e já não deseja alterá-la, pode ignorar esta mensagem e continuar a usar a palavra-chave antiga.',
+{{PLURAL:$3|Esta palavra-passe temporária irá|Estas palavras-passes temporárias irão}} expirar dentro de {{PLURAL:$5|um dia|$5 dias}}.
+Deve autenticar-se e escolher uma palavra-passe nova agora. Se outra pessoa fez este pedido, ou se entretanto se recordou da sua palavra-passe original e já não deseja alterá-la, pode ignorar esta mensagem e continuar a usar a palavra-passe antiga.',
'passwordreset-emailelement' => 'Utilizador: $1
Palavra-chave temporária: $2',
-'passwordreset-emailsent' => 'Foi enviado um correio electrónico de recuperação dos dados da conta.',
-'passwordreset-emailsent-capture' => 'Foi enviado um e-mail de lembrete, que é mostrado abaixo.',
-'passwordreset-emailerror-capture' => 'Foi gerado o lembrete de e-mail mostrado abaixo, contudo falhou o envio para o utilizador: $1',
+'passwordreset-emailsent' => 'Foi enviado um correio eletrónico para recuperação da palavra-passe.',
+'passwordreset-emailsent-capture' => 'Foi enviado um e-mail de recuperação da palavra-passe, que é mostrado abaixo.',
+'passwordreset-emailerror-capture' => 'Foi gerado o e-mail de reposição de palavra-passe mostrado abaixo, contudo falhou o seu envio para {{GENDER:$2|o utilizador|a utilizadora}}: $1',
# Special:ChangeEmail
'changeemail' => 'Alterar o endereço de correio electrónico',
'changeemail-oldemail' => 'Correio electrónico actual:',
'changeemail-newemail' => 'Correio electrónico novo:',
'changeemail-none' => '(nenhum)',
+'changeemail-password' => 'A sua senha {{SITENAME}}:',
'changeemail-submit' => 'Alterar correio electrónico',
'changeemail-cancel' => 'Cancelar',
'longpageerror' => "'''Erro: O texto que submeteu ocupa {{PLURAL:$1|um kilobyte|$1 kilobytes}}, que excede o máximo de {{PLURAL:$2|um kilobyte|$2 kilobytes}}.'''
A página não pode ser gravada.",
'readonlywarning' => "'''Aviso: A base de dados foi bloqueada para manutenção, pelo que não poderá gravar a sua edição neste momento.'''
-Pode, no entanto, copiar o seu texto para um editor externo e guardá-lo para posterior submissão.
+Pode, no entanto, copiar e colar o seu texto num ficheiro de texto e guardá-lo para mais tarde.
O administrador que bloqueou a base de dados forneceu a seguinte explicação: $1",
'protectedpagewarning' => "'''Aviso: Esta página foi protegida para só poder ser editada por administradores.'''
Ela parece ter sido eliminada.',
'edit-conflict' => 'Conflito de edição.',
'edit-no-change' => 'A sua edição foi ignorada, uma vez que o texto não sofreu alterações.',
+'postedit-confirmation' => 'A sua edição foi gravada.',
'edit-already-exists' => 'Não foi possível criar uma página nova.
Ela já existia.',
'defaultmessagetext' => 'Texto da mensagem padrão',
+'content-failed-to-parse' => 'Falha ao analisar conteúdo $2 para modelo $1:$3',
+'invalid-content-data' => 'Dados de conteúdo inválidos',
'content-not-allowed-here' => 'Conteúdo do tipo "$1" não é permitido na página [[$2]]',
-'editwarning-warning' => 'Sair desta página fará com que você perca todas as alterações feitas por você.
-Se você fez login, pode desabilitar este aviso na seção "{{int:prefs-editing}}" das suas preferências.',
+'editwarning-warning' => 'Sair desta página fará com que você perca quaisquer alterações feitas por você.
+Se você se autenticou, pode desabilitar este aviso na secção "Edição" das suas preferências.',
# Content models
'content-model-wikitext' => 'wikitexto',
'searchmenu-legend' => 'Opções de pesquisa',
'searchmenu-exists' => "'''Há uma página com o nome \"[[:\$1]]\" nesta wiki'''",
'searchmenu-new' => "'''Crie a página \"[[:\$1]]\" nesta wiki!'''",
-'searchhelp-url' => 'Help:Conteúdos',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Navegar as páginas com este prefixo]]',
'searchprofile-articles' => 'Páginas de conteúdo',
'searchprofile-project' => 'Páginas de Ajuda e de Projecto',
'search-result-size' => '$1 ({{PLURAL:$2|1 palavra|$2 palavras}})',
'search-result-category-size' => '{{PLURAL:$1|1 membro|$1 membros}} ({{PLURAL:$2|1 subcategoria|$2 subcategorias}}, {{PLURAL:$3|1 ficheiro|$3 ficheiros}})',
'search-result-score' => 'Relevancia: $1%',
-'search-redirect' => '(redireccionamento de $1)',
+'search-redirect' => '(redirecionamento de $1)',
'search-section' => '(seção $1)',
'search-suggest' => 'Será que queria dizer: $1',
'search-interwiki-caption' => 'Projectos associados',
'searchdisabled' => 'Foi impossibilitada a realização de pesquisas na {{SITENAME}}.
Entretanto, pode realizar pesquisas através do Google.
Note, no entanto, que a indexação da {{SITENAME}} neste motor de busca pode estar desactualizada.',
+'search-error' => 'Um erro ocorreu enquanto se efectuava a busca: $1',
# Preferences page
'preferences' => 'Preferências',
'prefs-textboxsize' => 'Tamanho da janela de edição',
'youremail' => 'Correio electrónico:',
'username' => 'Nome de {{GENDER:$1|utilizador|utilizadora}}:',
-'uid' => 'Número de identificação:',
+'uid' => 'Identificação de {{GENDER:$1|utilizador|utilizadora}}:',
'prefs-memberingroups' => '{{GENDER:$2|Membro}} {{PLURAL:$1|do grupo|dos grupos}}:',
'prefs-registration' => 'Hora de registo:',
'yourrealname' => 'Nome verdadeiro:',
'userrights-notallowed' => 'A sua conta não tem permissão para adicionar ou remover privilégios a utilizadores.',
'userrights-changeable-col' => 'Grupos que pode alterar',
'userrights-unchangeable-col' => 'Grupos que não pode alterar',
+'userrights-conflict' => 'Conflito com os privilégios dos utilizadores! Por favor, aplique as suas mudanças novamente.',
+'userrights-removed-self' => 'Você removeu com sucesso os seus privilégios. Como resultado disso, já não consegue aceder a esta página.',
# Groups
'group' => 'Grupo:',
'right-move-subpages' => 'Mover páginas com as suas subpáginas',
'right-move-rootuserpages' => 'Mover páginas raiz de utilizadores',
'right-movefile' => 'Mover ficheiros',
-'right-suppressredirect' => 'Não criar um redireccionamento do nome antigo quando uma página é movida',
+'right-suppressredirect' => 'Não criar um redirecionamento do nome antigo quando uma página é movida',
'right-upload' => 'Carregar ficheiros',
'right-reupload' => 'Sobrescrever um ficheiro existente',
'right-reupload-own' => 'Sobrescrever um ficheiro existente carregado pelo mesmo utilizador',
'right-editusercssjs' => 'Editar os ficheiros CSS e JS de outros utilizadores',
'right-editusercss' => 'Editar os ficheiros CSS de outros utilizadores',
'right-edituserjs' => 'Editar os ficheiros JS de outros utilizadores',
+'right-editmyusercss' => 'Editar os seus próprios ficheiros CSS de utilizador',
+'right-editmyuserjs' => 'Editar os seus próprios ficheiros JavaScript de utilizador',
'right-rollback' => 'Reverter rapidamente as edições do último utilizador que editou uma página em particular',
'right-markbotedits' => 'Marcar edições revertidas como edições de bot',
'right-noratelimit' => 'Não ser afectado pelos limites de velocidade de operação',
'backend-fail-notsame' => 'Já existe um ficheiro não idêntico em $1 .',
'backend-fail-invalidpath' => '$1 não é um caminho de armazenamento válido.',
'backend-fail-delete' => 'Não foi possível excluir o ficheiro $1.',
+'backend-fail-describe' => 'Não foi possível mudar metadados para o ficheiro "$1".',
'backend-fail-alreadyexists' => 'O ficheiro $1 já existe.',
'backend-fail-store' => 'Não foi possível armazenar o ficheiro $1 em $2.',
'backend-fail-copy' => 'Não foi possível copiar o ficheiro $1 para $2.',
'backend-fail-internal' => 'Ocorreu um erro desconhecido no servidor de armazenamento "$1".',
'backend-fail-contenttype' => 'Não foi possível determinar o tipo de conteúdo do ficheiro para armazenar em "$1".',
'backend-fail-batchsize' => 'Foi fornecido um bloco de $1 {{PLURAL:$1|operação|operações}} sobre ficheiros ao servidor de armazenamento; o limite é de $2 {{PLURAL:$2|operação|operações}}.',
-'backend-fail-usable' => 'Não foi possível gravar o ficheiro $1 devido a permissões insuficientes ou a directórios ou repositórios inexistentes.',
+'backend-fail-usable' => 'Não foi possível ler ou gravar o ficheiro "$1" devido a permissões insuficientes ou a directórios/repositórios inexistentes.',
# File journal errors
'filejournal-fail-dbconnect' => 'Não foi possível estabelecer ligação à base de dados de registos no servidor de armazenamento "$1".',
Encontra-se disponível uma [[Special:WhatLinksHere/$2|lista completa]].',
'nolinkstoimage' => 'Nenhuma página contém links para este ficheiro.',
'morelinkstoimage' => 'Ver a [[Special:WhatLinksHere/$1|lista completa]] de páginas que contêm links para este ficheiro.',
-'linkstoimage-redirect' => '$1 (redireccionamento de ficheiro) $2',
+'linkstoimage-redirect' => '$1 (redirecionamento de ficheiro) $2',
'duplicatesoffile' => '{{PLURAL:$1|O seguinte ficheiro é duplicado|Os seguintes $1 ficheiros são duplicados}} deste ficheiro ([[Special:FileDuplicateSearch/$2|mais detalhes]]):',
'sharedupload' => 'Este ficheiro provém de $1 e pode ser usado por outros projectos.',
'sharedupload-desc-there' => 'Este ficheiro provém de $1 e pode ser usado por outros projectos.
'randompage-nopages' => 'Não há páginas {{PLURAL:$2|no seguinte espaço nominal|nos seguintes espaços nominais}}: $1.',
# Random redirect
-'randomredirect' => 'Redireccionamento aleatório',
+'randomredirect' => 'Redirecionamento aleatório',
'randomredirect-nopages' => 'Não há redireccionamentos no espaço nominal "$1".',
# Statistics
Estes links deviam ser desambiguados, apontando-os para uma página mais apropriada.<br />
Considera-se que uma página é de desambiguação se nela for utilizada uma predefinição que esteja definida em [[MediaWiki:Disambiguationspage]].",
+'pageswithprop' => 'Páginas com uma propriedade',
+'pageswithprop-legend' => 'Páginas com uma propriedade',
+'pageswithprop-text' => 'Esta página lista páginas que usam uma propriedade em particular.',
+'pageswithprop-prop' => 'Nome da propriedade:',
+'pageswithprop-submit' => 'Avançar',
+
'doubleredirects' => 'Redireccionamentos duplos',
-'doubleredirectstext' => 'Esta página lista todas as páginas que redireccionam para outras páginas de redireccionamento.
-Cada linha contém links para o primeiro e segundo redireccionamentos, bem como o destino do segundo redireccionamento, geralmente contendo a verdadeira página de destino, que devia ser o destino do primeiro redireccionamento.
+'doubleredirectstext' => 'Esta página lista todas as páginas que redirecionam para outras páginas de redirecionamento.
+Cada linha contém links para o primeiro e segundo redirecionamentos, bem como o destino do segundo redirecionamento, geralmente contendo a verdadeira página de destino, que devia ser o destino do primeiro redirecionamento.
<del>Entradas cortadas</del> já foram solucionadas.',
'double-redirect-fixed-move' => '[[$1]] foi movido.
Agora redirecciona para [[$2]].',
-'double-redirect-fixed-maintenance' => 'A corrigir redireccionamento duplo de [[$1]] para [[$2]].',
+'double-redirect-fixed-maintenance' => 'A corrigir redirecionamento duplo de [[$1]] para [[$2]].',
'double-redirect-fixer' => 'Corrector de redireccionamentos',
'brokenredirects' => 'Redireccionamentos quebrados',
'mailnologintext' => 'Precisa de estar [[Special:UserLogin|autenticado]] e possuir um endereço de correio válido nas suas [[Special:Preferences|preferências]], para poder enviar correio electrónico a outros utilizadores.',
'emailuser' => 'Enviar correio electrónico a este utilizador',
'emailuser-title-target' => 'Enviar correio eletrónico a {{GENDER:$1|este utilizador|esta utilizadora}}',
+'emailuser-title-notarget' => 'Enviar correio electrónico ao utilizador',
'emailpage' => 'Enviar correio electrónico ao utilizador',
'emailpagetext' => 'Pode usar o formulário abaixo para enviar uma mensagem por correio eletrónico para {{GENDER:$1|este utilizador|esta utilizadora}}.
O endereço de correio que introduziu nas [[Special:Preferences|suas preferências]] irá aparecer no campo do remetente da mensagem "De:", para que o destinatário lhe possa responder diretamente.',
'watchnologin' => 'Não está autenticado(a)',
'watchnologintext' => 'Precisa de [[Special:UserLogin|autenticar-se]] para modificar a sua lista de páginas vigiadas.',
'addwatch' => 'Adicionar às páginas vigiadas',
-'addedwatchtext' => "A página \"[[:\$1]]\" foi adicionada à sua lista de [[Special:Watchlist|páginas vigiadas]], onde serão indicadas quaisquer
-modificações futuras desta página e da respectiva página de discussão.
-O nome desta página passará a aparecer a '''negrito''' na lista de [[Special:RecentChanges|mudanças recentes]], para que a encontre facilmente.",
+'addedwatchtext' => 'A página "[[:$1]]" foi adicionada à sua [[Special:Watchlist|lista de páginas vigiadas]].
+Modificações futuras desta página e da respetiva página de discussão serão listadas lá.',
'removewatch' => 'Remover das páginas vigiadas',
'removedwatchtext' => 'A página "[[:$1]]" foi removida da sua lista de [[Special:Watchlist|páginas vigiadas]].',
'watch' => 'Vigiar',
'notvisiblerev' => 'Edição eliminada',
'watchnochange' => 'Nenhuma das páginas vigiadas foi editada no período apresentado.',
'watchlist-details' => '{{PLURAL:$1|Existe $1 página|Existem $1 páginas}} na sua lista de páginas vigiadas, excluindo páginas de discussão.',
-'wlheader-enotif' => '* A notificação por correio electrónico está activada.',
-'wlheader-showupdated' => "* As páginas modificadas desde a última vez que as visitou aparecem destacadas a '''negrito'''",
+'wlheader-enotif' => 'A notificação por correio electrónico está activa.',
+'wlheader-showupdated' => "As páginas modificadas desde a última vez que as visitou aparecem destacadas a '''negrito'''.",
'watchmethod-recent' => 'a procurar páginas vigiadas nas mudanças recentes',
'watchmethod-list' => 'a procurar mudanças recentes nas páginas vigiadas',
'watchlistcontains' => 'A sua lista de páginas vigiadas contém $1 {{PLURAL:$1|página|páginas}}.',
'enotif_mailer' => 'Gerador de Notificações da {{SITENAME}}',
'enotif_reset' => 'Marcar todas as páginas como visitadas',
'enotif_impersonal_salutation' => 'Utilizador da "{{SITENAME}}"',
+'enotif_subject_deleted' => 'A página $1 de {{SITENAME}} foi {{GENDER:$2|eliminada}} por $2',
+'enotif_subject_created' => 'A página $1 de {{SITENAME}} foi {{GENDER:$2|criada}} por $2',
+'enotif_subject_moved' => 'A página $1 de {{SITENAME}} foi {{GENDER:$2|movida}} por $2',
+'enotif_subject_restored' => 'A página $1 de {{SITENAME}} foi {{GENDER:$2|restaurada}} por $2',
+'enotif_subject_changed' => 'A página $1 de {{SITENAME}} foi {{GENDER:$2|alterada}} por $2',
+'enotif_body_intro_deleted' => 'A página $1 de {{SITENAME}} foi {{GENDER:$2|eliminada}} em $PAGEEDITDATE por $2, ver $3.',
+'enotif_body_intro_created' => 'A página $1 em {{SITENAME}} foi {{GENDER:$2| criada}} em $PAGEEDITDATE por $2, ver $3 para a versão actual.',
+'enotif_body_intro_moved' => 'A página $1 em {{SITENAME}} foi {{GENDER:$2|movida}} em $PAGEEDITDATE por $2, ver $3 para a versão actual.',
+'enotif_body_intro_restored' => 'A página $1 em {{SITENAME}} foi {{GENDER:$2|restaurada}} em $PAGEEDITDATE por $2, ver $3 para a versão actual.',
+'enotif_body_intro_changed' => 'A página $1 em {{SITENAME}} foi {{GENDER:$2|alterada}} em $PAGEEDITDATE por $2, ver $3 para a versão actual.',
'enotif_lastvisited' => 'Consulte $1 para todas as alterações efectuadas desde a sua última visita.',
'enotif_lastdiff' => 'Consulte $1 para ver esta alteração.',
'enotif_anon_editor' => 'utilizador anónimo $1',
'prot_1movedto2' => 'moveu [[$1]] para [[$2]]',
'protect-badnamespace-title' => 'Espaço nominal não passível de protecção',
'protect-badnamespace-text' => 'Páginas neste espaço nominal não podem ser protegidas.',
+'protect-norestrictiontypes-text' => 'Esta página não pode ser protegida porque não há nenhum tipo de restrição disponível.',
+'protect-norestrictiontypes-title' => 'Página não passível de protecção',
'protect-legend' => 'Confirmar protecção',
'protectcomment' => 'Motivo:',
'protectexpiry' => 'Expiração:',
'mycontris' => 'Contribuições',
'contribsub2' => 'Para $1 ($2)',
'nocontribs' => 'Não foram encontradas alterações com este critério.',
-'uctop' => ' (edição actual)',
+'uctop' => '(atual)',
'month' => 'Até o mês:',
'year' => 'Até o ano:',
'linkshere' => "As seguintes páginas têm links para '''[[:$1]]''':",
'nolinkshere' => "Não existem afluentes para '''[[:$1]]''' com as condições especificadas.",
'nolinkshere-ns' => "Não existem links para '''[[:$1]]''' no espaço nominal seleccionado.",
-'isredirect' => 'página de redireccionamento',
+'isredirect' => 'página de redirecionamento',
'istemplate' => 'inclusão',
'isimage' => 'link para o ficheiro',
'whatlinkshere-prev' => '{{PLURAL:$1|anterior|$1 anteriores}}',
'proxyblocksuccess' => 'Concluído.',
'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.",
Caso escolha não o fazer, após a operação certifique-se de que dela não resultaram [[Special:DoubleRedirects|redireccionamentos duplos]] ou [[Special:BrokenRedirects|quebrados]].
É da sua responsabilidade verificar que os links continuam a apontar para onde é suposto que apontem.
-Note que a página '''não''' será movida se já existir uma página com o novo nome, a menos que esta esteja vazia ou seja um redireccionamento sem qualquer histórico de edições.
+Note que a página '''não''' será movida se já existir uma página com o novo título, a menos que esta última seja um redireccionamento sem qualquer histórico de edições.
Isto significa que pode mover uma página de volta para o seu nome original se a tiver movido por engano e que não pode mover uma página para cima de outra já existente.
'''CUIDADO!'''
Numa página popular esta operação pode representar uma mudança drástica e inesperada;
certifique-se de que compreende as consequências da mudança antes de prosseguir, por favor.",
'movepagetext-noredirectfixer' => "Usando o formulário abaixo, pode alterar o nome de uma página e mover todo o histórico desta para o nome novo.
-A página antiga é transformada numa página de redireccionamento para a nova.
-Verifique a existência de [[Special:DoubleRedirects|redireccionamentos duplos]] ou [[Special:BrokenRedirects|quebrados]].
+A página antiga é transformada numa página de redirecionamento para a nova.
+Verifique a existência de [[Special:DoubleRedirects|redirecionamentos duplos]] ou [[Special:BrokenRedirects|quebrados]].
É da sua responsabilidade certificar-se de que os links continuam a apontar para onde é suposto.
-Note que a página '''não''' será movida se já existir uma página com o nome novo, a menos que esta página já existente esteja vazia ou seja uma página de redireccionamento e não tenha um histórico de edições.
+Note que a página '''não''' será movida se já existir uma página com o nome novo, a menos que esta página já existente esteja vazia ou seja uma página de redirecionamento e não tenha um histórico de edições.
Isto também significa que, se se tiver enganado, pode alterar o nome da página movida de volta para o seu nome original; e que não pode sobrescrever o conteúdo de uma página existente.
'''Aviso!'''
'movepagebtn' => 'Mover página',
'pagemovedsub' => 'Página movida com sucesso',
'movepage-moved' => '\'\'\'"$1" foi movida para "$2"\'\'\'',
-'movepage-moved-redirect' => 'Foi criado um redireccionamento.',
-'movepage-moved-noredirect' => 'A criação de um redireccionamento foi suprimida.',
+'movepage-moved-redirect' => 'Foi criado um redirecionamento.',
+'movepage-moved-noredirect' => 'A criação de um redirecionamento foi suprimida.',
'articleexists' => 'Uma página com este nome já existe, ou o nome que escolheu é inválido.
Escolha outro nome, por favor.',
'cantmove-titleprotected' => 'Não pode mover uma página para esse destino, porque o novo título foi protegido para evitar a sua criação',
'nonfile-cannot-move-to-file' => 'Não é possível mover algo que não é um ficheiro para o espaço nominal de ficheiros',
'imagetypemismatch' => 'A extensão do novo ficheiro não corresponde ao seu tipo',
'imageinvalidfilename' => 'O nome do ficheiro alvo é inválido',
-'fix-double-redirects' => 'Actualizar todos os redireccionamentos que apontem para o título original',
-'move-leave-redirect' => 'Criar um redireccionamento',
+'fix-double-redirects' => 'Atualizar todos os redirecionamentos que apontem para o título original',
+'move-leave-redirect' => 'Criar um redirecionamento',
'protectedpagemovewarning' => "'''Aviso:''' Esta página foi protegida de maneira a que apenas utilizadores com privilégio de administrador possam movê-la.
O último registo é apresentado abaixo para referência:",
'semiprotectedpagemovewarning' => "'''Nota:''' Esta página protegida de maneira a que apenas utilizadores registados possam movê-la.
'thumbnail-more' => 'Ampliar',
'filemissing' => 'Ficheiro não encontrado',
'thumbnail_error' => 'Erro ao criar miniatura: $1',
+'thumbnail_error_remote' => 'Mensagem de erro de $1 :
+$2',
'djvu_page_error' => 'página DjVu inacessível',
'djvu_no_xml' => 'Não foi possível aceder ao XML para o ficheiro DjVU',
'thumbnail-temp-create' => 'Não foi possível criar o ficheiro temporário da miniatura',
'import-interwiki-templates' => 'Incluir todas as predefinições',
'import-interwiki-submit' => 'Importar',
'import-interwiki-namespace' => 'Espaço nominal de destino:',
+'import-interwiki-rootpage' => 'Raiz da página de destino (opcional):',
'import-upload-filename' => 'Nome do ficheiro:',
'import-comment' => 'Comentário:',
'importtext' => 'Exporte o ficheiro da wiki de origem utilizando a página especial [[Special:Export|exportação de páginas]].
'import-error-interwiki' => 'A página "$1" não pode ser importada pois seu nome está reservado para um link externo (interwiki).',
'import-error-special' => 'A página "$1" não pode ser importada porque ela pertence a um espaço nominal especial que não permite páginas.',
'import-error-invalid' => 'A página "$1" não pode ser importada porque seu nome é inválido.',
+'import-error-unserialize' => 'Revisão $2 da página "$1" não pode ser desserializada. Foi relatado que a revisão usava o modelo de conteúdo $3 serializado como $4.',
'import-options-wrong' => '{{PLURAL:$2|Opção errada|Opções erradas}}: <nowiki>$1</nowiki>',
+'import-rootpage-invalid' => 'A raiz da página dada é um título inválido.',
+'import-rootpage-nosubpage' => 'O domínio "$1" da página de raiz não permite subpáginas.',
# Import log
'importlogpage' => 'Registo de importações',
'tooltip-compareselectedversions' => 'Ver as diferenças entre as duas versões seleccionadas desta página.',
'tooltip-watch' => 'Adicionar esta página à lista de páginas vigiadas',
'tooltip-watchlistedit-normal-submit' => 'Remover títulos',
-'tooltip-watchlistedit-raw-submit' => 'Actualizar a lista de vigiados',
+'tooltip-watchlistedit-raw-submit' => 'Atualizar a lista de vigiados',
'tooltip-recreate' => 'Recriar a página apesar de ter sido eliminada',
'tooltip-upload' => 'Iniciar o carregamento',
'tooltip-rollback' => '"{{int:rollbacklink}}" reverte, com um só clique, as edições do último editor desta página.',
'modern.css' => '/* Código CSS colocado aqui afectará os utilizadores do tema Moderno */',
'vector.css' => '/* Código CSS colocado aqui afectará os utilizadores do tema Vector */',
'print.css' => '/* Código CSS colocado aqui afectará as impressões */',
-'handheld.css' => '/* Código CSS colocado aqui afectará dispositivos móveis baseados no tema configurado em $wgHandheldStyle */',
# Scripts
'common.js' => '/* Código Javascript colocado aqui será carregado para todos os utilizadores em cada carregamento de página */',
'pageinfo-header-restrictions' => 'Proteção da página',
'pageinfo-header-properties' => 'Propriedades da página',
'pageinfo-display-title' => 'Título exibido',
+'pageinfo-default-sort' => 'Chave de classificação padrão',
'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-robot-policy' => 'Status do mecanismo de pesquisa',
+'pageinfo-robot-policy' => 'Estado para mecanismos de pesquisa',
'pageinfo-robot-index' => 'Indexável',
'pageinfo-robot-noindex' => 'Não indexável',
'pageinfo-views' => 'Número de visitas',
'pageinfo-watchers' => 'Número de vigilantes da página',
+'pageinfo-few-watchers' => 'Menos do que $1 {{PLURAL:$1|vigilante|vigilantes}}',
'pageinfo-redirects-name' => 'Redirecionamentos para esta página',
'pageinfo-subpages-name' => 'Subpáginas desta página',
'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|redirecionamento|redirecionamentos}}; $3 {{PLURAL:$3|não-redirecionamento|não-redirecionamentos}})',
'pageinfo-recent-authors' => 'Número recente de autores distintos',
'pageinfo-magic-words' => '{{PLURAL:$1|Palavra mágica|Palavras mágicas}} ($1)',
'pageinfo-hidden-categories' => '{{PLURAL:$1|Categoria oculta|Categorias ocultas}} ($1)',
+'pageinfo-templates' => '{{PLURAL:$1|Predefinição|Predefinições}} transcluídas ($1)',
+'pageinfo-transclusions' => '{{PLURAL:$1|Página|Páginas}} onde é transcluída ($1)',
'pageinfo-toolboxlink' => 'Informações da página',
'pageinfo-redirectsto' => 'Redireciona para',
'pageinfo-redirectsto-info' => 'informação',
'pageinfo-contentpage' => 'Contada como página de conteúdo',
'pageinfo-contentpage-yes' => 'Sim',
+'pageinfo-protect-cascading' => 'A protecção é em cascata a partir daqui',
'pageinfo-protect-cascading-yes' => 'Sim',
+'pageinfo-protect-cascading-from' => 'As protecções são em cascata a partir de',
'pageinfo-category-info' => 'Informações da categoria',
'pageinfo-category-pages' => 'Número de páginas',
'pageinfo-category-subcats' => 'Número de subcategorias',
'markedaspatrollederror' => 'Não é possível marcar como patrulhada',
'markedaspatrollederrortext' => 'É necessário especificar uma edição a ser marcada como patrulhada.',
'markedaspatrollederror-noautopatrol' => 'Não está autorizado a marcar as suas próprias edições como edições patrulhadas.',
+'markedaspatrollednotify' => 'Esta mudança em $1 foi marcada como patrulhada.',
+'markedaspatrollederrornotify' => 'A marcação como patrulhada falhou.',
# Patrol log
'patrol-log-page' => 'Registo de edições patrulhadas',
'minutes' => '{{PLURAL:$1|um minuto|$1 minutos}}',
'hours' => '{{PLURAL:$1|uma hora|$1 horas}}',
'days' => '{{PLURAL:$1|um dia|$1 dias}}',
+'weeks' => '{{PLURAL:$1|$1 semana|$1 semanas}}',
'months' => '{{PLURAL:$1|1 mês|$1 meses}}',
'years' => '{{PLURAL:$1|1 ano|$1 anos}}',
'ago' => '$1 atrás',
'just-now' => 'agora mesmo',
+# Human-readable timestamps
+'hours-ago' => 'há $1 {{PLURAL:$1|hora|horas}}',
+'minutes-ago' => 'há $1 {{PLURAL:$1|minuto|minutos}}',
+'seconds-ago' => 'há $1 {{PLURAL:$1|segundo|segundos}}',
+'monday-at' => 'Segunda-feira às $1',
+'tuesday-at' => 'Terça-feira às $1',
+'wednesday-at' => 'Quarta-feira às $1',
+'thursday-at' => 'Quinta-feira às $1',
+'friday-at' => 'Sexta-feira às $1',
+'saturday-at' => 'Sábado às $1',
+'sunday-at' => 'Domingo às $1',
+'yesterday-at' => 'Ontem às $1',
+
# Bad image list
'bad_image_list' => 'O formato é o seguinte:
# Scary transclusion
'scarytranscludedisabled' => '[Transclusão interwikis foi impossibilitada]',
'scarytranscludefailed' => '[Não foi possível obter a predefinição a partir de $1]',
+'scarytranscludefailed-httpstatus' => '[Não foi possível obter a predefinição a partir de $1: HTTP $2]',
'scarytranscludetoolong' => '[URL longa demais]',
# Delete conflict
# Auto-summaries
'autosumm-blank' => 'Limpou toda a página',
'autosumm-replace' => "Página substituída por '$1'",
-'autoredircomment' => 'Redireccionamento para [[$1]]',
+'autoredircomment' => 'Redirecionamento para [[$1]]',
'autosumm-new' => "Criou nova página com '$1'",
# Live preview
'version-license' => 'Licença',
'version-poweredby-credits' => "Esta é uma wiki '''[//www.mediawiki.org/ MediaWiki]''', copyright © 2001-$1 $2.",
'version-poweredby-others' => 'outros',
+'version-credits-summary' => 'Gostaríamos de reconhecer as seguintes pessoas pela sua contribuição para o [[Special:Version|MediaWiki]].',
'version-license-info' => 'O MediaWiki é software livre; pode redistribuí-lo e/ou modificá-lo nos termos da licença GNU General Public License, tal como publicada pela Free Software Foundation; tanto a versão 2 da Licença, como (por opção sua) qualquer versão posterior.
O MediaWiki é distribuído na esperança de que seja útil, mas SEM QUALQUER GARANTIA; inclusive, sem a garantia implícita da POSSIBILIDADE DE SER COMERCIALIZADO ou de ADEQUAÇÂO PARA QUALQUER FINALIDADE ESPECÍFICA. Consulte a licença GNU General Public License para mais detalhes.
'version-entrypoints-header-entrypoint' => 'Ponto de entrada',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect' => 'Redireccionar pelo ID do ficheiro, utilizador ou revisão',
+'redirect-legend' => 'Redirecionar para um ficheiro ou página',
+'redirect-summary' => 'Esta página especial redireciona a um ficheiro (dado o nome do ficheiro), a uma página (dado um ID de revisão) ou a uma página de utilizador (dado o ID do utilizador).',
+'redirect-submit' => 'Ir',
+'redirect-lookup' => 'Pesquisa:',
+'redirect-value' => 'Valor:',
+'redirect-user' => 'Identificador do utilizador',
+'redirect-revision' => 'Revisão da página',
+'redirect-file' => 'Nome do ficheiro',
+'redirect-not-exists' => 'Valor não encontrado',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Ficheiros duplicados',
'fileduplicatesearch-summary' => "Procure ficheiros duplicados tendo por base o seu resumo criptográfico ''(hash value)''.",
'specialpages-group-highuse' => 'Páginas muito usadas',
'specialpages-group-pages' => 'Listas de páginas',
'specialpages-group-pagetools' => 'Ferramentas de páginas',
-'specialpages-group-wiki' => 'Dados e ferramentas da wiki',
+'specialpages-group-wiki' => 'Dados e ferramentas',
'specialpages-group-redirects' => 'Pesquisas e aleatoriedade',
'specialpages-group-spam' => 'Ferramentas anti-spam',
'htmlform-submit' => 'Enviar',
'htmlform-reset' => 'Desfazer alterações',
'htmlform-selectorother-other' => 'Outros',
+'htmlform-no' => 'Não',
+'htmlform-yes' => 'Sim',
+'htmlform-chosen-placeholder' => 'Seleccione uma opção',
# SQLite database support
'sqlite-has-fts' => '$1 com suporte de pesquisa de texto completo',
# New logging system
'logentry-delete-delete' => '$1 apagou a página $3',
'logentry-delete-restore' => '$1 restaurou a página $3',
-'logentry-delete-event' => '$1 alterou a visibilidade {{PLURAL:$5|de uma entrada|das $5 entradas}} em $3: $4',
-'logentry-delete-revision' => '$1 alterou a visibilidade de {{PLURAL:$5|uma revisão|$5 revisões}} em $3: $4',
-'logentry-delete-event-legacy' => '$1 alterou a visibilidade de uma entrada em $3',
-'logentry-delete-revision-legacy' => '$1 alterou a visibilidade de uma revisão em $3',
-'logentry-suppress-delete' => '$1 suprimiu a página $3',
-'logentry-suppress-event' => '$1 alterou secretamente a visibilidade {{PLURAL:$5|de uma entrada|das $5 entradas}} em $3: $4',
-'logentry-suppress-revision' => '$1 secretamente alterou a visibilidade {{PLURAL:$5|de uma revisão|das $5 revisões}} em $3: $4',
-'logentry-suppress-event-legacy' => '$1 secretamente alterou a visibilidade das entradas em $3',
-'logentry-suppress-revision-legacy' => '$1 secretamente alterou a visibilidade das revisões em $3',
+'logentry-delete-event' => '$1 alterou a visibilidade de {{PLURAL:$5|uma entrada|$5 entradas}} em $3: $4',
+'logentry-delete-revision' => '$1 {{GENDER:$2|alterou}} a visibilidade de {{PLURAL:$5|uma revisão|$5 revisões}} em $3: $4',
+'logentry-delete-event-legacy' => '$1 {{GENDER:$2|alterou}} a visibilidade de entradas de registo em $3',
+'logentry-delete-revision-legacy' => '$1 {{GENDER:$2|alterou}} a visibilidade de revisões na página $3',
+'logentry-suppress-delete' => '$1 {{GENDER:$2|suprimiu}} a página $3',
+'logentry-suppress-event' => '$1 {{GENDER:$2|alterou}} secretamente a visibilidade de {{PLURAL:$5|uma entrada|$5 entradas}} em $3: $4',
+'logentry-suppress-revision' => '$1 secretamente alterou a visibilidade de {{PLURAL:$5|uma revisão|$5 revisões}} em $3: $4',
+'logentry-suppress-event-legacy' => '$1 {{GENDER:$2|alterou}} secretamente a visibilidade de entradas de registo em $3',
+'logentry-suppress-revision-legacy' => '$1 {{GENDER:$2|alterou}} secretamente a visibilidade de revisões da página $3',
'revdelete-content-hid' => 'conteúdo oculto',
'revdelete-summary-hid' => 'sumário de edição oculto',
'revdelete-uname-hid' => 'utilizador oculto',
'revdelete-unrestricted' => 'restrições a administradores removidas',
'logentry-move-move' => '$1 moveu a página $3 para $4',
'logentry-move-move-noredirect' => '$1 moveu a página $3 para $4 sem deixar um redireccionamento',
-'logentry-move-move_redir' => '$1 moveu a página $3 para $4 através de um redireccionamento',
-'logentry-move-move_redir-noredirect' => '$1 moveu a página $3 para $4 sem um redireccionamento',
-'logentry-patrol-patrol' => '$1 marcou a revisão $4 da página $3 como patrulhada',
-'logentry-patrol-patrol-auto' => '$1 marcou automaticamente a revisão $4 da página $3 como patrulhada',
-'logentry-newusers-newusers' => 'A conta de utilizador $1 foi criada',
+'logentry-move-move_redir' => '$1 moveu a página $3 para $4 sobre um redireccionamento',
+'logentry-move-move_redir-noredirect' => '$1 moveu a página $3 para $4 sobre um redireccionamento sem deixar um redireccionamento',
+'logentry-patrol-patrol' => '$1 {{GENDER:$2|marcou}} a revisão $4 da página $3 como patrulhada',
+'logentry-patrol-patrol-auto' => '$1 {{GENDER:$2|marcou}} automaticamente a revisão $4 da página $3 como patrulhada',
+'logentry-newusers-newusers' => 'A conta de utilizador $1 foi {{GENDER:$2|criada}}',
'logentry-newusers-create' => 'A conta de utilizador $1 foi criada',
'logentry-newusers-create2' => 'A conta de utilizador $3 foi criada por $1',
-'logentry-newusers-autocreate' => 'A conta $1 foi criada automaticamente',
-'logentry-rights-rights' => '$1 modificou os privilégios do utilizador $3 de $4 para $5',
+'logentry-newusers-byemail' => 'Conta de utilizador $3 foi {{GENDER:$2|criada}} por $1 e a senha foi enviada por e-mail',
+'logentry-newusers-autocreate' => 'A conta de utilizador $1 foi criada automaticamente',
+'logentry-rights-rights' => '$1 modificou os privilégios do utilizador $3 de $4 para $5',
+'logentry-rights-rights-legacy' => '$1 {{GENDER:$2|mudou}} as permissões de $3',
'logentry-rights-autopromote' => '$1 foi automaticamente {{GENDER:$2|promovido|promovida}} de $4 a $5',
'rightsnone' => '(nenhum)',
'api-error-ok-but-empty' => 'Erro interno: o servidor não respondeu.',
'api-error-overwrite' => 'Não é permitido sobrescrever um ficheiro existente.',
'api-error-stashfailed' => 'Erro interno: O servidor não conseguiu armazenar o ficheiro temporário.',
+'api-error-publishfailed' => 'Erro interno: Servidor não conseguiu publicar ficheiro temporário.',
'api-error-timeout' => 'O servidor não respondeu no prazo esperado.',
'api-error-unclassified' => 'Ocorreu um erro desconhecido',
'api-error-unknown-code' => 'Erro desconhecido: "$1"',
'duration-centuries' => '$1 {{PLURAL:$1|século|séculos}}',
'duration-millennia' => '$1 {{PLURAL:$1|milénio|milénios}}',
+# Image rotation
+'rotate-comment' => 'Imagem rodada em $1 {{PLURAL:$1|grau|graus}} no sentido dos ponteiros do relógio',
+
);
* @author McDutchie
* @author MetalBrasil
* @author MisterSanderson
+ * @author Nemo bis
+ * @author OTAVIO1981
* @author Opraco
* @author Pedroca cerebral
* @author Ppena
'oct' => 'out.',
'nov' => 'nov.',
'dec' => 'dez.',
+'january-date' => '$1 de janeiro',
+'february-date' => '$1 de fevereiro',
+'march-date' => '$1 de março',
+'april-date' => '$1 de abril',
+'may-date' => '$1 de maio',
+'june-date' => '$1 de junho',
+'july-date' => '$1 de julho',
+'august-date' => '$1 de agosto',
+'september-date' => '$1 de setembro',
+'october-date' => '$1 de outubro',
+'november-date' => '$1 de novembro',
+'december-date' => '$1 de dezembro',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categoria|Categorias}}',
'category-empty' => "''No momento esta categoria não possui nenhuma página ou arquivo multimídia.''",
'hidden-categories' => '{{PLURAL:$1|Categoria oculta|Categorias ocultas}}',
'hidden-category-category' => 'Categorias ocultas',
-'category-subcat-count' => '{{PLURAL:$2|Esta categoria possui apenas a seguinte subcategoria.|Esta categoria possui {{PLURAL:$1|uma subcategoria|$1 subcategorias}}, de um total de $2.}}',
+'category-subcat-count' => '{{PLURAL:$2|Esta categoria tem apenas a seguinte subcategoria.|Esta categoria tem {{PLURAL:$1|uma subcategoria|$1 subcategorias}}, de um total de $2.}}',
'category-subcat-count-limited' => 'Esta categoria possui {{PLURAL:$1|a seguinte sub-categoria|as $1 sub-categorias a seguir}}.',
-'category-article-count' => '{{PLURAL:$2|Esta categoria possui apenas a seguinte página.|Esta categoria possui {{PLURAL:$1|a seguinte página|as $1 páginas a seguir}}, de um total de $2.}}',
+'category-article-count' => '{{PLURAL:$2|Esta categoria contém apenas a página seguinte subcategoria.|{{PLURAL:$1|A seguinte página está|As seguintes $1 páginas estão}}, nesta categoria de um total de $2.}}',
'category-article-count-limited' => 'Esta categoria possui {{PLURAL:$1|a seguinte página|as $1 páginas a seguir}}.',
'category-file-count' => '{{PLURAL:$2|Esta categoria possui apenas o seguinte arquivo.|Esta categoria possui {{PLURAL:$1|o seguinte arquivo|os $1 arquivos a seguir}}, de um total de $2.}}',
'category-file-count-limited' => 'Esta categoria possui {{PLURAL:$1|um arquivo|$1 arquivos}}.',
'create-this-page' => 'Iniciar esta página',
'delete' => 'Eliminar',
'deletethispage' => 'Eliminar esta página',
+'undeletethispage' => 'Restaure esta página',
'undelete_short' => 'Restaurar {{PLURAL:$1|uma edição|$1 edições}}',
'viewdeleted_short' => 'Ver {{PLURAL:$1|uma edição eliminada|$1 edições eliminadas}}',
'protect' => 'Proteger',
$1',
'pool-timeout' => 'Tempo limite de espera para o bloqueio excedido',
-'pool-queuefull' => 'A pool queue está cheia',
+'pool-queuefull' => 'A fila de processos está cheia',
'pool-errorunknown' => 'Erro desconhecido',
# 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) and the disambiguation template definition (see disambiguations).
'disclaimers' => 'Exoneração de responsabilidade',
'disclaimerpage' => 'Project:Aviso_geral',
'edithelp' => 'Ajuda de edição',
-'edithelppage' => 'Help:Editar',
'helppage' => 'Help:Conteúdos',
'mainpage' => 'Página principal',
'mainpage-description' => 'Página principal',
'namespaceprotected' => "Você não possui permissão para editar páginas no espaço nominal '''$1'''.",
'customcssprotected' => 'Você não tem permissão para editar esta página CSS, porque ele contém configurações pessoais de outro usuário.',
'customjsprotected' => 'Você não tem permissão para editar esta página de JavaScript, porque ele contém configurações pessoais de outro usuário.',
+'mycustomcssprotected' => 'Você não tem permissão para editar esta página CSS',
+'mycustomjsprotected' => 'Você não tem permissão para editar esta página JavaScript',
'ns-specialprotected' => 'Não é possível editar páginas especiais',
'titleprotected' => "Este título foi protegido, para que não seja criado.
Quem o protegeu foi [[User:$1|$1]], com a justificativa: ''$2''.",
'createacct-yourpasswordagain-ph' => 'Digite a senha novamente',
'remembermypassword' => 'Lembrar meu login neste navegador (por no máximo $1 {{PLURAL:$1|dia|dias}})',
'userlogin-remembermypassword' => 'Mantenha-me conectado',
-'userlogin-signwithsecure' => 'Entrar com um servidor seguro',
+'userlogin-signwithsecure' => 'Use a conexão segura',
'securelogin-stick-https' => 'Permanecer conectado ao HTTPS após a autenticação',
'yourdomainname' => 'Seu domínio:',
'password-change-forbidden' => 'Você não pode alterar senhas nessa wiki.',
'userlogout' => 'Sair',
'notloggedin' => 'Não autenticado',
'userlogin-noaccount' => 'Não possui uma conta?',
-'userlogin-joinproject' => 'Sobre {{SITENAME}}',
+'userlogin-joinproject' => 'Junte-se ao projeto {{SITENAME}}',
'nologin' => 'Não possui uma conta? $1.',
'nologinlink' => 'Criar uma conta',
'createaccount' => 'Criar conta',
'gotaccount' => "Já possui uma conta? '''$1'''.",
'gotaccountlink' => 'Autenticar-se',
'userlogin-resetlink' => 'Esqueceu-se do seu nome de usuário ou da senha?',
+'userlogin-resetpassword-link' => 'Troque sua senha',
'helplogin-url' => 'Help:Iniciar sessão',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ajuda para iniciar sessão]]',
'createacct-join' => 'Insira suas informações abaixo.',
'createacct-benefit-heading' => '{{SITENAME}} é feita por pessoas como você.',
'createacct-benefit-body1' => '{{PLURAL:$1|edição|edições}}',
'createacct-benefit-body2' => '{{PLURAL:$1|página|páginas}}',
-'createacct-benefit-body3' => 'contribuidores recentes',
+'createacct-benefit-body3' => '{{PLURAL:$1|contribuidor|contribuidores}} recentes',
'badretype' => 'As senhas que você digitou não são iguais.',
'userexists' => 'O nome de usuário fornecido já está em uso.
Escolha um nome diferente.',
'cannotchangeemail' => 'A conta de e-mail não pode ser alterada neste wiki.',
'emaildisabled' => 'Este site não tem como enviar e-mails.',
'accountcreated' => 'Conta criada',
-'accountcreatedtext' => 'A conta de usuário para $1 foi criada.',
+'accountcreatedtext' => 'A conta de usuário para [[{{ns:User}}:$1|$1]] ([[{{ns:Usuário Discussão}}:$1|Discussão]]) foi criada.',
'createaccount-title' => 'Criação de conta em {{SITENAME}}',
'createaccount-text' => 'Alguém criou uma conta de nome $2 para o seu endereço de email no wiki {{SITENAME}} ($4), tendo como senha "$3".
Você deve se autenticar e alterar sua senha.
# Special:PasswordReset
'passwordreset' => 'Redefinir senha',
-'passwordreset-text' => 'Preencha este formulário para recuperar os dados da sua conta pelo e-mail.',
+'passwordreset-text-one' => 'Complete este formulário para trocar sua senha.',
+'passwordreset-text-many' => '{{PLURAL:$1|Entre com uma das partes dos dados para trocar sua senha.}}',
'passwordreset-legend' => 'Reiniciar a senha',
'passwordreset-disabled' => 'Redefinições de senha foram desabilitadas nesta wiki.',
'passwordreset-emaildisabled' => 'Os recursos de e-mail foram desativados nesta wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Introduza um dos dados abaixo}}',
'passwordreset-username' => 'Nome de usuário:',
'passwordreset-domain' => 'Domínio:',
'passwordreset-capture' => 'Ver o e-mail resultante?',
Ela parece ter sido eliminada.',
'edit-conflict' => 'Conflito de edição.',
'edit-no-change' => 'A sua edição foi ignorada, uma vez que o texto não sofreu alterações.',
+'postedit-confirmation' => 'Sua edição foi salva',
'edit-already-exists' => 'Não foi possível criar uma nova página.
Ela já existia.',
'defaultmessagetext' => 'Texto da mensagem padrão',
'invalid-content-data' => 'Dados de conteúdo inválidos',
'content-not-allowed-here' => 'Conteúdo do tipo "$1" não é permitido na página [[$2]]',
'editwarning-warning' => 'Abandonar esta página pode fazer com que você perca todas as alterações que fez.
-Se você estiver autenticado, você pode desabilitar este aviso na seção "{{int:prefs-editing}}" de suas preferências.',
+Se você estiver autenticado, você pode desabilitar este aviso na seção "Edição" de suas preferências.',
# Content models
'content-model-wikitext' => 'wikitexto',
'searchmenu-legend' => 'Opções de pesquisa',
'searchmenu-exists' => "'''Há uma página com o nome \"[[:\$1]]\" nesta wiki'''",
'searchmenu-new' => "'''Criar a página \"[[:\$1|\$1]]\" nesta wiki!'''",
-'searchhelp-url' => 'Help:Conteúdos',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Navegue pelas páginas com este prefixo]]',
'searchprofile-articles' => 'Páginas de conteúdo',
'searchprofile-project' => 'Ajuda e páginas de projeto',
'right-editusercssjs' => 'Editar os arquivos CSS e JS de outros usuários',
'right-editusercss' => 'Editar os arquivos CSS de outros usuários',
'right-edituserjs' => 'Editar os arquivos JS de outros usuários',
+'right-editmyusercss' => 'Edite seu próprio arquivo CSS de usuário',
+'right-editmyuserjs' => 'Edite seu próprio arquivo JavaScript de usuário',
'right-rollback' => 'Reverter rapidamente o último usuário que editou uma página em particular',
'right-markbotedits' => 'Marcar edições revertidas como edições de bot',
'right-noratelimit' => 'Não afetado pelos limites de velocidade de operação',
'notvisiblerev' => 'Edição eliminada',
'watchnochange' => 'Nenhuma das páginas vigiadas foi editada no período exibido.',
'watchlist-details' => '{{PLURAL:$1|$1 página|$1 páginas}} na sua lista de páginas vigiadas, excluindo páginas de discussão.',
-'wlheader-enotif' => '* A notificação por email encontra-se ativada.',
-'wlheader-showupdated' => "* As páginas modificadas desde a sua última visita são mostradas em '''negrito'''",
+'wlheader-enotif' => 'A notificação por email encontra-se ativada.',
+'wlheader-showupdated' => "Páginas modificadas desde a sua última visita são mostradas em '''negrito'''",
'watchmethod-recent' => 'verificando edições recentes para as páginas vigiadas',
'watchmethod-list' => 'verificando páginas vigiadas para edições recentes',
'watchlistcontains' => 'Sua lista de páginas vigiadas contém $1 {{PLURAL:$1|página|páginas}}.',
'thumbnail-more' => 'Ampliar',
'filemissing' => 'arquivo não encontrado',
'thumbnail_error' => 'Erro ao criar miniatura: $1',
+'thumbnail_error_remote' => 'Mensagem de erro para $1, $2',
'djvu_page_error' => 'página DjVu inacessível',
'djvu_no_xml' => 'Não foi possível acessar o XML do arquivo DjVU',
'thumbnail-temp-create' => 'Não foi possível criar o arquivo temporário de miniatura',
'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-robot-policy' => 'Status do mecanismo de pesquisa',
+'pageinfo-robot-policy' => 'Estado para mecanismos de pesquisa',
'pageinfo-robot-index' => 'Indexável',
'pageinfo-robot-noindex' => 'Não indexável',
'pageinfo-views' => 'Número de visitas',
'logentry-delete-restore' => '$1 restaurou a página $3',
'logentry-delete-event' => '$1 alterou a visibilidade {{PLURAL:$5|de uma entrada|de $5 entradas}} do registro $3: $4',
'logentry-delete-revision' => '$1 alterou a visibilidade de {{PLURAL:$5|uma revisão|$5 revisões}} na página $3: $4',
-'logentry-delete-event-legacy' => '$1 alterou a visibilidade de eventos de log em $3',
+'logentry-delete-event-legacy' => '$1 alterou a visibilidade do registro de eventos em $3',
'logentry-delete-revision-legacy' => '$1 alterou a visibilidade de revisões na página $3',
-'logentry-suppress-delete' => '$1 suprimiu a página $3',
+'logentry-suppress-delete' => '$1 supervisionou a página $3',
'logentry-suppress-event' => '$1 alterou secretamente a visibilidade {{PLURAL:$5|de uma entrada|das $5 entradas}} em $3: $4',
'logentry-suppress-revision' => '$1 alterou secretamente a visibilidade {{PLURAL:$5|de uma revisão|das $5 revisões}} em $3: $4',
-'logentry-suppress-event-legacy' => '$1 alterou secretamente a visibilidade das entradas em $3',
+'logentry-suppress-event-legacy' => '$1 alterou secretamente a visibilidade do registro de eventos em $3',
'logentry-suppress-revision-legacy' => '$1 alterou secretamente a visibilidade de revisões na página $3',
'revdelete-content-hid' => 'conteúdo oculto',
'revdelete-summary-hid' => 'sumário de edição oculto',
* @file
*
* @author *Surak*
+ * @author 127.0.0.1
* @author Abanima
* @author Ahonc
* @author Aleator
* @author Leinad
* @author Lejonel
* @author Li-sung
+ * @author Liangent
* @author Lloffiwr
* @author MF-Warburg
* @author Malafaya
'oct' => 'Abbreviation of October, the tenth month of the Gregorian calendar',
'nov' => 'Abbreviation of November, the eleventh month of the Gregorian calendar',
'dec' => 'Abbreviation of December, the twelfth month of the Gregorian calendar',
+'january-date' => 'A date in the Gregorian month of January. $1 is the numerical date, for example "23".',
+'february-date' => 'A date in the Gregorian month of February. $1 is the numerical date, for example "23".',
+'march-date' => 'A date in the Gregorian month of March. $1 is the numerical date, for example "23".',
+'april-date' => 'A date in the Gregorian month of April. $1 is the numerical date, for example "23".',
+'may-date' => 'A date in the Gregorian month of May. $1 is the numerical date, for example "23". The month name is not abbreviated.',
+'june-date' => 'A date in the Gregorian month of June. $1 is the numerical date, for example "23".',
+'july-date' => 'A date in the Gregorian month of July. $1 is the numerical date, for example "23".',
+'august-date' => 'A date in the Gregorian month of August. $1 is the numerical date, for example "23".',
+'september-date' => 'A date in the Gregorian month of September. $1 is the numerical date, for example "23".',
+'october-date' => 'A date in the Gregorian month of October. $1 is the numerical date, for example "23".',
+'november-date' => 'A date in the Gregorian month of November. $1 is the numerical date, for example "23".',
+'december-date' => 'A date in the Gregorian month of December. $1 is the numerical date, for example "23".',
# Categories related messages
'pagecategories' => 'Used in the categories section of pages. Is followed by a colon and a list of categories.',
{{Identical|Find}}',
'qbbrowse' => '{{Identical|Browse}}',
'qbedit' => '{{Identical|Edit}}',
+'qbpageoptions' => '{{Identical|This page}}',
'qbmyoptions' => 'Heading in the Cologne Blue skin user menu containing links to user (talk) page, preferences, watchlist, etc.
{{Identical|My pages}}',
'qbspecialpages' => '{{Identical|Special page}}',
'faq' => "FAQ is short for ''frequently asked questions''.",
-'faqpage' => "FAQ is short for ''frequently asked questions''. This page is only linked on some of the old skins, not in Monobook or Modern.
+'faqpage' => "FAQ is short for ''frequently asked questions''. This page is only linked in CologneBlue (an old skin), not in Monobook or Vector.
{{doc-important|Do not translate <tt>Project:</tt> part.}}",
'vector-action-undelete' => 'Tab at top of page, in vector skin.
{{Identical|Undelete}}',
'vector-action-unprotect' => 'Tab at top of page, in vector skin.
-
-{{Identical|Unprotect}}',
+{{Identical|Change protection}}',
'vector-simplesearch-preference' => 'Preference for enhanced search suggestion in the Vector skin.',
'vector-view-create' => 'Tab label in the Vector skin. See for example {{canonicalurl:Foo|useskin=vector}}
{{Identical|Create}}',
{{Identical|Edit}}',
'vector-view-history' => 'Tab label in the Vector skin. See for example {{canonicalurl:Main_Page|useskin=vector}}
{{Identical|View history}}',
-'vector-view-view' => 'Tab label in the Vector skin (verb). See for example {{canonicalurl:Main_Page|useskin=vector}}',
+'vector-view-view' => 'Tab label in the Vector skin (verb). See for example {{canonicalurl:Main_Page|useskin=vector}}.
+{{Identical|Read}}',
'vector-view-viewsource' => 'Tab label in the Vector skin.
{{Identical|View source}}',
'actions' => '{{Identical|Action}}',
{{Identical|Delete}}',
'deletethispage' => 'In the Cologne Blue skin this is the text for link to delete the page in admin view, at the bottom of the page.
{{Identical|Delete this page}}',
+'undeletethispage' => 'In the Cologne Blue skin this is the text for link to undelete the page in admin view, at the bottom of the page.',
'undelete_short' => "It is tab label. It's really can be named ''nstab-undelete''.",
'viewdeleted_short' => 'Tab label for the undelete button when the user has permission to view the deleted history but not undelete.',
'protect' => 'Name of protect tab displayed for admins. Should be in the infinitive mood.
* {{msg-mw|Unprotect}}
* {{msg-mw|Accesskey-ca-unprotect}}
* {{msg-mw|Tooltip-ca-unprotect}}
-{{Identical|Unprotect}}',
+{{Identical|Change protection}}',
'unprotectthispage' => 'In this Cologne Blue skin this is the anchor text for the link to unprotect the page in admin view, at the bottom of the page.
{{Identical|Unprotect this page}}',
'newpage' => '{{Identical|New page}}',
* {{msg-mw|Tooltip-n-currentevents}}',
'currentevents-url' => "Target page of ''CurrentEvents'' in the sidebar. See also {{msg-mw|currentevents}}.
{{doc-important|Do not translate the \"<tt>Project:</tt>\" part.}}",
-'disclaimers' => 'Used as display name for the link to [[{{MediaWiki:Disclaimerpage}}]] shown at the bottom of every page on the wiki. Example [[{{MediaWiki:Disclaimerpage}}|{{MediaWiki:Disclaimers}}]].',
+'disclaimers' => 'Used as display name for the link to [[{{MediaWiki:Disclaimerpage}}]] shown at the bottom of every page on the wiki. Example [[{{MediaWiki:Disclaimerpage}}|{{MediaWiki:Disclaimers}}]].
+{{Identical|Disclaimer}}',
'disclaimerpage' => 'Used as page for that contains the site disclaimer. Used at the bottom of every page on the wiki. Example: [[{{MediaWiki:Disclaimerpage}}|{{MediaWiki:Disclaimers}}]].
{{doc-important|Do not change the "<tt>Project:</tt>" part.}}',
'edithelp' => 'This is the text that appears on the editing help link that is near the bottom of the editing page',
-'edithelppage' => 'The help page displayed when a user clicks on editing help link which is present on the right of Show changes button.
-{{doc-important|Do not change the "<tt>Help:</tt>" part.}}',
'helppage' => 'The link destination used by default in the sidebar, and in {{msg-mw|noarticletext}}.
{{doc-important|Do not change the "<tt>Help:</tt>" part.}}
{{Identical|HelpContent}}',
'restorelink' => "This text is always displayed in conjunction with the {{msg-mw|thisisdeleted}} message (View or restore $1?). The user will see
View or restore <nowiki>{{PLURAL:$1|one deleted edit|$1 deleted edits}}</nowiki>? i.e ''View or restore one deleted edit?'' or
''View or restore n deleted edits?''",
+'feedlinks' => '{{Identical|Feed}}',
'feed-invalid' => 'Result of check whether feed type is valid or not.',
'feed-unavailable' => 'This message is displayed when a user tries to use an RSS or Atom feed on a wiki where such feeds have been disabled.',
'site-rss-feed' => "Used in the HTML header of a wiki's RSS feed.
* {{msg-mw|Accesskey-ca-nstab-main}}
* {{msg-mw|Tooltip-ca-nstab-main}}
{{Identical|Page}}',
-'nstab-user' => 'The name for the tab of the user namespace. Example: [[User:Example]]. It is possible to use <nowiki>{{GENDER:{{BASEPAGENAME}}|male form|female form}}</nowiki> if needed.
+'nstab-user' => 'The name for the tab of the user namespace. Example: [[User:Example]]. It is possible to use <nowiki>{{GENDER:{{ROOTPAGENAME}}|male form|female form}}</nowiki> if needed.
See also:
* {{msg-mw|Nstab-user}}
'namespaceprotected' => '* $1 - namespace name',
'customcssprotected' => 'Used as error message.',
'customjsprotected' => 'Used as error message.',
+'mycustomcssprotected' => 'Used as error message.',
+'mycustomjsprotected' => 'Used as error message.',
'ns-specialprotected' => 'Error message displayed when trying to edit a page in the Special namespace',
'titleprotected' => 'Use $1 for GENDER.',
'filereadonlyerror' => 'Parameters:
* $1 - an URL to [[Special:Userlogin]] containing <code>returnto</code> and <code>returntoquery</code> parameters',
'welcomeuser' => 'Text for a welcome heading that users see after registering a user account. $1 is the username of the new user. See [[bugzilla:42215]]',
'welcomecreation-msg' => 'A welcome message users see after registering a user account, following a welcomeuser heading. $1 is the username of the new user. Replaces welcomecreation in 1.21wmf5,see [[bugzilla:42215]]',
-'yourname' => "{{doc-important|<nowiki>{{</nowiki>[[Gender|GENDER]]<nowiki>}}</nowiki> is '''NOT''' supported.}}
-In user preferences.
-{{Identical|Username}}",
-'userlogin-yourname' => 'In new vertical user login & create account forms, label for username field.
-
-See examples: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1] and [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+'yourname' => 'Since 1.22 no longer used in core, but used by some extensions.
{{Identical|Username}}',
-'userlogin-yourname-ph' => 'Placeholder text in new userlogin/create account form field.
+'userlogin-yourname' => "In user login & create account forms, label for username field.
+{{doc-important|<nowiki>{{</nowiki>[[Gender|GENDER]]<nowiki>}}</nowiki> is '''NOT''' supported.}}
+
+See examples: [{{canonicalurl:Special:UserLogin}} Special:UserLogin] and [{{canonicalurl:Special:UserLogin}} Special:UserLogin]
+{{Identical|Username}}",
+'userlogin-yourname-ph' => 'Placeholder text in login & create account form field.
-See example: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1] and [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin}} Special:UserLogin] and [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'yourpassword' => 'In user preferences
{{Identical|Password}}',
-'userlogin-yourpassword' => 'In new vertical user login & create account forms, label for password field.
+'userlogin-yourpassword' => 'In login & create account forms, label for password field.
-See examples: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1] and [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See examples: [{{canonicalurl:Special:UserLogin}} Special:UserLogin] and [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
{{Identical|Password}}',
-'userlogin-yourpassword-ph' => 'Placeholder text in new userlogin form for password field.
+'userlogin-yourpassword-ph' => 'Placeholder text in login form for password field.
-See examples: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1] and [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See examples: [{{canonicalurl:Special:UserLogin}} Special:UserLogin] and [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
{{Identical|Enter password}}',
-'createacct-yourpassword-ph' => 'Placeholder text in new create account form for password field.
+'createacct-yourpassword-ph' => 'Placeholder text in create account form for password field.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
{{Identical|Enter password}}',
-'yourpasswordagain' => 'In user preferences',
-'createacct-yourpasswordagain' => 'In new create account form, label for field to re-enter password
+'yourpasswordagain' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED',
+'createacct-yourpasswordagain' => 'In create account form, label for field to re-enter password
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
{{Identical|Confirm password}}',
-'createacct-yourpasswordagain-ph' => 'Placeholder text in new create account form for re-enter password field.
+'createacct-yourpasswordagain-ph' => 'Placeholder text in create account form for re-enter password field.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'remembermypassword' => 'A check box in [[Special:UserLogin]]
{{Identical|Remember my login on this computer}}',
'userlogin-remembermypassword' => 'The text for a check box in the new-style [[Special:UserLogin]].
-See example: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin}} Special:UserLogin]',
'userlogin-signwithsecure' => 'Text of link to HTTPS login form.
-See example: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin}} Special:UserLogin]',
'securelogin-stick-https' => 'Used as label for checkbox.',
'yourdomainname' => 'Used as label for listbox.',
'password-change-forbidden' => 'Error message shown when an external authentication source does not allow the password to be changed.',
'nav-login-createaccount' => "Shown to anonymous users in the upper right corner of the page. When you can't create an account, the message {{msg-mw|login}} is shown.
{{Identical|Log in / create account}}",
'loginprompt' => 'A small notice in the log in form.',
-'userlogin' => 'Name of special page [[Special:UserLogin]] where a user can log in or click to create a user account.
+'userlogin' => 'Since 1.22 no longer used in core, but may still be used by extensions. DEPRECATED
+
{{Identical|Log in / create account}}',
-'userloginnocreate' => 'A variant of {{msg-mw|Userlogin}} when the user is not allowed to create a new account.
+'userloginnocreate' => 'Since 1.22 no longer used in core, but may still be used by some extensions. A variant of {{msg-mw|Userlogin}} when the user is not allowed to create a new account. DEPRECATED
{{Identical|Log in}}',
'logout' => 'Used as link text in your personal toolbox (upper right side).
'notloggedin' => 'This message is displayed in the standard skin when not logged in. The message is placed above the login link in the top right corner of pages.
{{Identical|Not logged in}}',
-'userlogin-noaccount' => 'In the new-style [[Special:Userlogin]] form, this is the text prior to button inviting user to join project.
+'userlogin-noaccount' => 'In the [[Special:Userlogin]] form, this is the text prior to button inviting user to join project.
-See example: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1]
+See example: [{{canonicalurl:Special:UserLogin}} Special:UserLogin]
{{Identical|Do not have an account}}',
'userlogin-joinproject' => 'Text of button inviting user to create an account.
-See example: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1]',
-'nologin' => 'A message shown in the log in form. Parameters:
+See example: [{{canonicalurl:Special:UserLogin}} Special:UserLogin]',
+'nologin' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED. Parameters:
* $1 - a link to the account creation form, and the text of it is {{msg-mw|Nologinlink}}
{{Identical|Do not have an account}}',
-'nologinlink' => 'Text of the link to the account creation form. Before that link, the message {{msg-mw|Nologin}} appears.
+'nologinlink' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED.
{{Identical|Create an account}}',
-'createaccount' => '{{doc-special|CreateAccount}}
-The special page enables users to register a new account.
-
-Used on the submit button in the form where you register a new account.
+'createaccount' => 'Used on the top of the page for logged out users, where it appears next to {{msg-mw|login}}, so consider making them similar.
-It is also used on the top of the page for logged out users, where it appears next to {{msg-mw|login}}, so consider making them similar.
+It is also used on the submit button in the form/special page where you register a new account.
+{{doc-special|CreateAccount}}
{{Identical|Create account}}',
-'gotaccount' => 'A message shown in the account creation form.
+'gotaccount' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED. Parameter:
* $1 - a link to the log in form, and the text of it is {{msg-mw|Gotaccountlink}}',
-'gotaccountlink' => 'Text of the link to the log in form. Before that link, the message {{msg-mw|Gotaccount}} appears.
+'gotaccountlink' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED.
{{Identical|Log in}}',
-'userlogin-resetlink' => 'Used on the login page.',
-'userlogin-resetpassword-link' => 'Text of link to [[Special:PasswordReset]] on new vertical-layout create account form.
+'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.
-See example: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1]
+The link points to the local [[Special:PasswordReset]].
+
+See example: [{{canonicalurl:Special:UserLogin}} Special:UserLogin]
userlogin-resetpassword-link may have to be shorter than the old {{msg-mw|userlogin-resetlink}}',
'helplogin-url' => '{{doc-important|Do not translate the namespace name <code>Help</code>.}}
'userlogin-helplink' => '{{doc-important|Do not change <code><nowiki>{{MediaWiki:helplogin-url}}</nowiki></code>.}}
Wikitext linking to login help.
-See example: [{{canonicalurl:Special:UserLogin|useNew=1}} Special:UserLogin?useNew=1]
+See example: [{{canonicalurl:Special:UserLogin}} Special:UserLogin]
See also:
* {{msg-mw|Helplogin-url}}',
'createacct-join' => 'Subheading of vertical-layout create account form encouraging user to join the wiki.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'createacct-emailrequired' => 'Label in vertical-layout create account form for email field when it is required.
See also:
{{Identical|E-mail address}}',
'createacct-emailoptional' => 'Label in vertical-layout create account form for email field when it is optional.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
See also:
* {{msg-mw|Createacct-emailrequired}}',
'createacct-email-ph' => 'Placeholder in vertical-layout create account form for email field.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'createaccountmail' => 'Used as label for the checkbox for creating a new account and sending the new password to the specified e-mail address directly, as used on [[Special:UserLogin/signup]] if creating accounts by e-mail is allowed.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'createacct-realname' => 'In vertical-layout create account form, label for field to enter optional real name.',
-'createaccountreason' => '{{Identical|Reason}}',
-'createacct-reason' => 'In vertical-layout create account form, label for field to enter reason to create an account when already logged-in.
+'createaccountreason' => 'Since 1.22 no longer used in core, but may be used by some extensions. DEPRECATED
+
+{{Identical|Reason}}',
+'createacct-reason' => 'In create account form, label for field to enter reason to create an account when already logged-in.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
{{Identical|Reason}}',
'createacct-reason-ph' => 'Placeholder in vertical-layout create account form for reason field.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'createacct-captcha' => 'Label in vertical-layout create account form for CAPTCHA input field when repositioned by JavaScript.',
'createacct-imgcaptcha-ph' => 'Placehodler text in vertical-layout create account form for image CAPTCHA input field when repositioned by JavaScript.',
'createacct-submit' => 'Submit button on vertical-layout create account form.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'createacct-benefit-heading' => 'In vertical-layout create account form, the heading for the section describing the benefits of creating an account.
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'createacct-benefit-body1' => 'In vertical-layout create account form, the text for the first benefit.
Preceded by the message {{msg-mw|Createacct-benefit-head1}} (number of edits).
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
{{Identical|Edit}}',
'createacct-benefit-body2' => 'In vertical-layout create account form, the text for the second benefit.
Preceded by the message {{msg-mw|Createacct-benefit-head2}} (number of pages).
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]
{{Identical|Page}}',
'createacct-benefit-body3' => 'In vertical-layout create account form, the text for the third benefit.
Preceded by the message {{msg-mw|Createacct-benefit-head3}} (number of contributors).
-See example: [{{canonicalurl:Special:UserLogin|type=signup&useNew=1}} Special:UserLogin?type=signup&useNew=1]',
+See example: [{{canonicalurl:Special:UserLogin|type=signup}} Special:UserLogin?type=signup]',
'badretype' => 'Used as error message when the new password and its retype do not match.',
'userexists' => 'Used as error message in creating a user account.',
'loginerror' => 'Used as title of error message.
$1 is the minimum number of characters in the password.',
'password-name-match' => 'Used as error message when password validity check failed.',
'password-login-forbidden' => 'Error message shown when the user has tried to log in using one of the special username/password combinations used for MediaWiki testing. (See [[mwr:75589]], [[mwr:75605]].)',
-'mailmypassword' => 'Shown at [[Special:UserLogin]]',
+'mailmypassword' => 'Heading in [[Special:PasswordReset]]',
'passwordremindertitle' => 'Title of e-mail which contains temporary password',
'passwordremindertext' => 'This text is used in an e-mail sent when a user requests a new temporary password (he has forgotten his password) or when an sysop creates a new user account choosing to have password and username sent to the new user by e-mail.
* $1 is an IP address. Example: 123.123.123.123
# Special:PasswordReset
'passwordreset' => 'Title of [[Special:PasswordReset]].
{{Identical|Reset password}}',
-'passwordreset-text' => 'Text on [[Special:PasswordReset]]',
+'passwordreset-text-one' => 'Text on [[Special:PasswordReset]] that appears when there is only one way of resetting the password.
+
+{{msg-mw|Passwordreset-text-many}}, when there are multiple ways of resetting the password..',
+'passwordreset-text-many' => 'Text on [[Special:PasswordReset]] that appears when there are multiple ways of resetting the password.
+
+* $1 is the number of password reset routes.
+
+{{msg-mw|Passwordreset-text-one}}, when there is only one way of resetting the password.',
'passwordreset-legend' => '{{Identical|Reset password}}',
'passwordreset-disabled' => 'Used as error message in changing password.',
'passwordreset-emaildisabled' => "Used as error message in changing password when site's email feature is disabled.",
-'passwordreset-pretext' => 'These instructions are shown on the password reset dialogue, which can, in principle, take the user\'s email address as well as, or instead of, their username. This text displays above one or more fields, at least one of which needs to be completed, and the message does not know which routes are available, so it needs to refer to some vague noun rather than specifically "username".
-"One of the pieces of data" means "an info"/"a datum" (probably to be translatea with a singular noun in your language if available). Parameters:
-* $1 is the number of password reset routes. This is never 1, but always two or more. Thus, the first plural option is empty in English.',
'passwordreset-username' => '{{Identical|Username}}',
'passwordreset-domain' => 'A domain like used in Domain Name System (DNS) or more specifically like a domain component in the Lightweight Directory Access Protocol (LDAP)',
'passwordreset-capture' => 'Label for checkbox asking the user whether they want to see the contents of the password reset email (only shown if they have the <tt>passwordreset</tt> permission',
'nowiki_sample' => 'Text inserted between nowiki tags',
'nowiki_tip' => 'This is the text that appears when you hover the mouse over the third button from the right on the edit toolbar.',
'image_sample' => '{{optional}}
-Used in text generated by Picture button in toolbar.',
+Used in text generated by Picture button in toolbar.
+{{Identical|Example}}',
'image_tip' => 'This is the text that appears when you hover the mouse over the sixth (middle) button on the edit toolbar.
{{Identical|Embedded file}}',
See also:
* {{msg-mw|permissionserrors}}
{{Identical|Login required}}',
-'loginreqlink' => 'Take a look on inflection. Used as parameter in {{msg-mw|loginreqpagetext}}, {{msg-mw|whitelistedittext}}, {{msg-mw|watchlistanontext}} and {{msg-mw|Confirmemail needlogin}}.
+'loginreqlink' => 'Take a look on inflection. Used as parameter in {{msg-mw|loginreqpagetext}}, {{msg-mw|whitelistedittext}}, {{msg-mw|Uploadnologintext}}, {{msg-mw|watchlistanontext}} and {{msg-mw|Confirmemail needlogin}}.
{{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.
'sitejspreview' => 'Text displayed on preview of .js pages in MediaWiki namespace',
'userinvalidcssjstitle' => '* $1 - skin name',
'updated' => '{{Identical|Updated}}',
+'note' => '{{Identical|Note}}',
'previewnote' => 'Note displayed when clicking on Show preview',
'continue-editing' => '{{doc-actionlink}}
A link to the beginning of the editing textarea on the same page.
* {{msg-mw|edit-gone-missing}}
* {{msg-mw|edit-conflict}}
* {{msg-mw|edit-already-exists}}',
+'postedit-confirmation' => 'Confirmation message that is displayed upon successful edit. Parameter $1 is the current user, for GENDER support.',
'edit-already-exists' => 'Used as error message.
See also:
'searchmenu-legend' => '{{Identical|Search options}}',
'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).',
'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).',
-'searchhelp-url' => 'Description: The URL of the search help page.
-{{doc-important|Do not change the "<tt>Help:</tt>" part.}}
-{{Identical|HelpContent}}',
'searchmenu-prefix' => '{{doc-important|Do not translate "Special:PrefixIndex"}}
Parameters:
* $1 - prefix string',
'powersearch-ns' => 'Used in the extended search form at [[Special:Search]]',
'powersearch-redir' => 'Used in the extended search form at [[Special:Search]]',
'powersearch-field' => 'Used in the extended search form at [[Special:Search]]',
-'powersearch-togglelabel' => 'Used in [{{canonicalurl:Special:Search|advanced=1}} Advanced search]. Synonym: "Select" as verb.',
+'powersearch-togglelabel' => 'Used in [{{canonicalurl:Special:Search|advanced=1}} Advanced search]. Synonym: "Select" as verb.
+{{Identical|Check}}',
'powersearch-toggleall' => '"All" refers to namespaces. It is used in Advanced search: {{canonicalurl:Special:Search|advanced=1}}
{{Identical|All}}',
'powersearch-togglenone' => '"None" refers to namespaces. It is used in Advanced search: {{canonicalurl:Special:Search|advanced=1}}
* $1 - optional, for PLURAL use, the number of items in the column following the message. Avoid PLURAL, if your language allows that.',
'userrights-irreversible-marker' => '{{optional}}',
'userrights-conflict' => "Shown on [[Special:UserRights]] if the target's rights have been changed since the form was loaded.",
+'userrights-removed-self' => 'Shown on [[Special:UserRights]] in a green box after the user removed its own rights to access that page.',
# Groups
'group' => '{{Identical|Group}}',
'right-editprotected' => '{{doc-right|editprotected}}',
'right-editinterface' => '{{doc-right|editinterface}}',
'right-editusercssjs' => '{{doc-right|editusercssjs}}',
-'right-editusercss' => '{{doc-right|editusercss}}',
-'right-edituserjs' => '{{doc-right|edituserjs}}',
+'right-editusercss' => '{{doc-right|editusercss}}
+
+See also {{msg-mw|Right-editmyusercss}}',
+'right-edituserjs' => '{{doc-right|edituserjs}}
+
+See also {{msg-mw|Right-editmyuserjs}}',
+'right-editmyusercss' => '{{doc-right|editmyusercss}}
+
+See also {{msg-mw|Right-editusercss}}',
+'right-editmyuserjs' => '{{doc-right|editmyuserjs}}
+
+See also {{msg-mw|Right-edituserjs}}',
+'right-viewmywatchlist' => '{{doc-right|viewmywatchlist}}',
+'right-editmywatchlist' => '{{doc-right|editmywatchlist}}',
'right-rollback' => '{{doc-right|rollback}}
{{Identical|Rollback}}',
'right-markbotedits' => '{{doc-right|markbotedits}}
'action-userrights-interwiki' => '{{Doc-action|userrights-interwiki}}',
'action-siteadmin' => '{{Doc-action|siteadmin}}',
'action-sendemail' => '{{doc-action|sendemail}}',
+'action-editmywatchlist' => '{{doc-action|editmywatchlist}}',
+'action-viewmywatchlist' => '{{doc-action|viewmywatchlist}}',
# Recent changes
'nchanges' => 'Appears on the [[Special:RecentChanges]] special page in brackets after pages having more than one change on that date. $1 is the number of changes on that day.',
* {{msg-mw|reuploaddesc|button text}}',
'uploadnologin' => 'Used as title of the error message {{msg-mw|Uploadnologintext}}.
{{Identical|Not logged in}}',
-'uploadnologintext' => 'Used as error message. The title for this message is {{msg-mw|Uploadnologin}}.
+'uploadnologintext' => 'Used as error message. The title for this message is {{msg-mw|Uploadnologin}}. Parameters:
+* $1 - Login link – {{msg-mw|Loginreqlink}}
See also:
* {{msg-mw|Whitelistedittext}}
'querypage-disabled' => "On special pages that use expensive database queries but are not cacheable, this message is displayed when 'miser mode' is on (i.e. no expensive queries allowed).",
# Book sources
-'booksources' => '{{doc-special|BookSources}}
+'booksources' => "{{doc-special|BookSources}}
+
+'''This message shouldn't be changed unless it has serious mistakes.'''
+
+It's used as the page name of the configuration page of [[Special:BookSources]]. Changing it breaks existing sites using the default version of this message.
+
See also:
* {{msg-mw|Booksources|title}}
-* {{msg-mw|Booksources-text|text}}',
+* {{msg-mw|Booksources-text|text}}",
'booksources-search-legend' => 'Box heading on [[Special:BookSources|book sources]] special page. The box is for searching for places where a particular book can be bought or viewed.',
'booksources-isbn' => '{{optional}}',
'booksources-go' => 'Name of button in [[Special:BookSources]]
# Special:Categories
'categories' => 'The page name of [[Special:Categories]].
-
-{{Identical|Categories}}',
+{{Identical|Category}}',
'categoriespagetext' => "{{doc-important|Do not translate or change links.}}
Text displayed in [[Special:Categories]].
* {{msg-mw|Special-categories-sort-count}}',
# Special:DeletedContributions
-'deletedcontributions' => 'The message is shown as a link on user contributions page (like [[Special:Contributions/User]]) to the corresponding [[Special:DeletedContributions]] page.
+'deletedcontributions' => 'The message is shown as a link on [[Special:SpecialPages]] to [[Special:DeletedContributions]].
{{Identical|Deleted user contributions}}',
'deletedcontributions-title' => 'Title of [[Special:DeletedContributions]] (extension), a special page with a list of edits to pages which were deleted. Only viewable by sysops.
{{Identical|Show}}',
'listusers-noresult' => 'identical with {{msg-mw|activeusers-noresult}}',
'listusers-blocked' => 'Used on [[Special:ActiveUsers]] when a user has been blocked.
-* $1 is a user name for use with GENDER (optional)',
+* $1 - a user name for use with GENDER (optional)
+{{Identical|Blocked}}',
# Special:ActiveUsers
'activeusers' => 'Title of [[Special:ActiveUsers]]',
* {{msg-mw|Watchlist-options|fieldset}}
* {{msg-mw|Wlheader-enotif|watchlist header}}
* {{msg-mw|enotif reset|Submit button text}}',
-'wlheader-enotif' => 'Used in [[Special:Watchlist]].
+'wlheader-enotif' => 'Message at the top of [[Special:Watchlist]], after {{msg-mw|watchlist-details}}. Has to be a full sentence.
See also:
* {{msg-mw|Watchlist-options|fieldset}}
-* {{msg-mw|Watchlist-details|watchlist header}}
* {{msg-mw|enotif reset|Submit button text}}',
-'wlheader-showupdated' => 'This message shows up near top of users watchlist page.',
+'wlheader-showupdated' => 'Message at the top of [[Special:Watchlist]], after {{msg-mw|watchlist-details}}. Has to be a full sentence.',
'watchmethod-recent' => 'See also:
* {{msg-mw|Watchmethod-list}}',
'watchmethod-list' => 'See also:
'created' => '{{Optional}}
Possible value for $CHANGEDORCREATED in the following messages:
* {{msg-mw|enotif_subject}}
-* {{msg-mw|enotif_body}}',
+* {{msg-mw|enotif_body}}
+{{Identical|Created}}',
'changed' => '{{Optional}}
Possible value for $CHANGEDORCREATED in the following messages:
* {{msg|enotif_subject}}
'protect-norestrictiontypes-title' => "Page title in case there aren't any restriction types (like edit or create) available ($1 represents the page title).",
'protect-legend' => 'Legend of the fieldset around the input form of the protection form.',
'protectcomment' => '{{Identical|Reason}}',
-'protectexpiry' => '{{Identical|Expires}}',
+'protectexpiry' => '{{Identical|Expire}}',
'protect_expiry_invalid' => 'Used as error message about the Protection Form.
See also:
* $3 - a time (optional)
If the expiry is indefinite, {{msg-mw|protect-expiry-indefinite}} is used.
{{Identical|Expires $1 (UTC)}}',
-'protect-expiring-local' => '$1 is a timestamp like "22:51, 23 July 2011 (UTC)" depending on the wiki content language.',
+'protect-expiring-local' => 'Parameter:
+* $1 - a timestamp like "22:51, 23 July 2011 (UTC)" depending on the wiki content language.
+{{Identical|Expire}}',
'protect-expiry-indefinite' => 'Used as expiry text in page history, and in [[Special:Protectedtitles]], [[Special:Protectedpages]], and extension FlaggedRevs.
If the expiry is definite, {{msg-mw|protect-expiring}} is used.',
This message has a tooltip {{msg-mw|tooltip-namespace association}}',
'tooltip-namespace_association' => 'Used in [[Special:Recentchanges]] as a tooltip for the associated namespace checkbox. See also the message {{msg-mw|namespace_association}}',
-'blanknamespace' => 'Name for main namespace (blank namespace) in drop-down menus at [[Special:RecentChanges]] and other special pages.',
+'blanknamespace' => 'Name for main namespace (blank namespace) in drop-down menus at [[Special:RecentChanges]] and other special pages.
+{{Identical|Main}}',
# Contributions
'contributions' => "Display name for the 'User contributions', shown in the sidebar menu of all user pages and user talk pages. Also the page name of the target page. The target page shows an overview of the most recent contributions by a user.
'contribsub2' => 'Contributions for "user" (links)
{{Identical|For $1}}',
'nocontribs' => 'Optional parameter: $1 is the user name',
-'uctop' => 'This message is used in [[Special:Contributions]]. It is used to show that a particular edit was the last made to a page. Example: 09:57, 11 February 2008 (hist) (diff) Pagename (edit summary) (top)
+'uctop' => 'This message is used in [[Special:Contributions]]. It is used to show that a particular edit was the last made to a page. Example: 09:57, 11 February 2008 (hist) (diff) Pagename (edit summary) (current)
{{Identical|Top}}',
'month' => 'Used in [[Special:Contributions]] and history pages ([{{fullurl:Sandbox|action=history}} example]), as label for a dropdown box to select a specific month to view the edits made in that month, and the earlier months. See also {{msg-mw|year}}.',
'year' => 'Used in [[Special:Contributions]] and history pages ([{{fullurl:Sandbox|action=history}} example]), as label for an input box to select a specific year to view the edits made in that year, and the earlier years.
{{Identical|Redirect page}}',
'istemplate' => 'Means that a page (a template, specifically) is used as <code><nowiki>{{Page name}}</nowiki></code>.
-Displayed in [[Special:WhatLinksHere]] (see [[Special:WhatLinksHere/Template:New portal]] for example).',
+Displayed in [[Special:WhatLinksHere]] (see [[Special:WhatLinksHere/Template:New portal]] for example).
+{{Identical|Transclusion}}',
'isimage' => 'This message is displayed on [[Special:WhatLinksHere]] for images. It means that the image is used on the page (as opposed to just being linked to like an non-image page).',
'whatlinkshere-prev' => 'This is part of the navigation message on the top and bottom of Whatlinkshere pages, where it is used as the first argument of {{msg-mw|Viewprevnext}}.
$1 is the number of items shown per page. It is not used when $1 is zero; not sure what happens when $1 is one.
'blocklist-timestamp' => 'This is a column header for dates and times in the table on the page [[Special:BlockList]].
{{Identical|Timestamp}}',
'blocklist-target' => 'The table header for the column containing the block targets, that is user names or IP-addresses linked to their respective user pages, in the table on the page [[Special:BlockList]].',
-'blocklist-expiry' => 'This is a column header in the table on the page [[Special:BlockList]].',
+'blocklist-expiry' => 'This is a column header in the table on the page [[Special:BlockList]].
+{{Identical|Expire}}',
'blocklist-by' => 'This is a column header in the table on the page [[Special:BlockList]].',
'blocklist-params' => 'This is a column header in the table on the page [[Special:BlockList]].',
'blocklist-reason' => 'This is a column header in the table on the page [[Special:BlockList]].
'movepagebtn' => "Button label on the special 'Move page'.
{{Identical|Move page}}",
-'pagemovedsub' => 'Message displayed as aheader of the body, after succesfully moving a page from source to target name.',
-'movepage-moved' => 'Message displayed after succesfully moving a page from source to target name. Parameters:
+'pagemovedsub' => 'Message displayed as aheader of the body, after successfully moving a page from source to target name.',
+'movepage-moved' => 'Message displayed after successfully moving a page from source to target name.
+
+Parameters:
* $1 - the source page as a link with display name
* $2 - the target page as a link with display name
* $3 - (optional) the source page name without a link
* {{msg-mw|Svg-long-error}}
* other custom string',
'thumbnail_error_remote' => 'Message shown in a thumbnail frame when creation of the thumbnail fails. Parameters:
-* $1 - is the name of the shared repository, see {{msg-mw|shardupload}}
+* $1 - the name of the shared repository, see {{msg-mw|sharedupload}}
* $2 - the reason, see {{msg-mw|thumbnail_error}}',
'djvu_page_error' => 'Used as error message.
'modern.css' => '{{optional}}',
'vector.css' => '{{optional}}',
'print.css' => '{{optional}}',
-'handheld.css' => '{{optional}}
-Style that can be applied on [[w:handheld devices|handheld devices]] (e.g. mobile phones), <code>$wgHandheldStyle</code> is an optional configuration variable which specifies a style sheet file for handheld devices.',
'noscript.css' => '{{optional}}',
'group-autoconfirmed.css' => '{{doc-group|autoconfirmed|css}}',
'group-bot.css' => '{{doc-group|bot|css}}',
'pageinfo-views' => 'The number of times the page has been viewed.',
'pageinfo-watchers' => 'The number of users watching the page.',
'pageinfo-few-watchers' => 'Message displayed when there are fewer than $wgUnwatchedPageThreshold watchers. $1 is the value of $wgUnwatchedPageThreshold.',
-'pageinfo-redirects-name' => "The number of redirects to the page.
+'pageinfo-redirects-name' => 'Followed by the number of redirects to the page.
+
+Used as link text. The link points to "{{int:Whatlinkshere-title}}" page ([[Special:WhatLinksHere]]).
-Used as link text, linked to '{{int:Whatlinkshere-title}}' page ([[Special:WhatLinksHere]]).",
+See example: [{{canonicalurl:Main page|action=info}} Main page?action=info]',
'pageinfo-redirects-value' => '{{Optional}}
Parameters:
* $1 - the number of redirects to the page',
-'pageinfo-subpages-name' => "The number of subpages of the page.
+'pageinfo-subpages-name' => 'Followed by the number of subpages of the page.
-Used as link text, linked to '{{int:Prefixindex}}' page ([[Special:PrefixIndex]]).",
+Used as link text. The link points to the "{{int:Prefixindex}}" page ([[Special:PrefixIndex]]).
+
+See example: [{{canonicalurl:Main page|action=info}} Main page?action=info]',
'pageinfo-subpages-value' => 'Parameters:
* $1 - the number of subpages of the page
* $2 - the number of subpages of the page that are redirects
See also {{msg-mw|days}}',
'seconds' => 'Full word for "seconds". $1 is the number of seconds.
-See also {{msg-mw|Seconds-abbrev}}
-
-Part of variable $1 in {{msg-mw|Ago}}',
+See also {{msg-mw|seconds-abbrev}}, {{msg-mw|seconds-ago}}.',
'minutes' => 'Full word for "minutes". $1 is the number of minutes.
-See also {{msg-mw|Minutes-abbrev}}
+See also {{msg-mw|minutes-abbrev}}, {{msg-mw|minutes-ago}}.
-Part of variable $1 in {{msg-mw|Ago}}.
{{Identical|Minute}}',
'hours' => 'Full word for "hours". $1 is the number of hours.
-See also {{msg-mw|Hours-abbrev}}
-
-Part of variable $1 in {{msg-mw|Ago}}',
+See also {{msg-mw|hours-abbrev}}, {{msg-mw|hours-ago}}.',
'days' => 'Full word for "days". $1 is the number of days.
See also {{msg-mw|Days-abbrev}}
-Part of variable $1 in {{msg-mw|Ago}}
{{Identical|Day}}',
'weeks' => 'Full word for "weeks".
-Used as <code>$1</code> in {{msg-mw|Ago}}. Parameters:
+Parameters:
* $1 - the number of weeks',
-'months' => 'Full word for "months". $1 is the number of months.
-
-Part of variable $1 in {{msg-mw|Ago}}',
+'months' => 'Full word for "months". $1 is the number of months.',
'years' => 'Full word for "years".
-Used as <code>$1</code> in {{msg-mw|Ago}}. Parameters:
+Parameters:
* $1 - the number of years',
-'ago' => 'Phrase for indicating how long ago something happened. $1 is something like "3 days 10 hours", taken from these messages:
-*{{msg-mw|Seconds}}
-*{{msg-mw|Minutes}}
-*{{msg-mw|Hours}}
-*{{msg-mw|Days}}
-*{{msg-mw|Months}}
-*{{msg-mw|Years}}',
+'ago' => 'Phrase for indicating how long ago something happened. $1 is some kind of timestamp.',
'just-now' => 'Phrase for indicating something happened just now.',
# Human-readable timestamps
'exif-pngfilecomment' => 'See also:
* {{msg-mw|Exif-pngfilecomment}}
* {{msg-mw|Exif-giffilecomment}}',
-'exif-disclaimer' => 'Disclaimer for the image.',
+'exif-disclaimer' => 'Disclaimer for the image.
+{{Identical|Disclaimer}}',
'exif-contentwarning' => 'Content warning for the image. For example if the image/media contains violent, sexual or otherwise offensive content.
This comes from the png warning textual chunk. See http://www.w3.org/TR/PNG/#11keywords',
'table_pager_limit' => "Do not use PLURAL in this message, because ''$1'' is not the actual number. ''$1'' is a limit selector drop-down list.",
'table_pager_limit_label' => 'Used as label for input field.',
'table_pager_limit_submit' => '{{Identical|Go}}',
-'table_pager_empty' => 'Used in a table pager when there are no results (e.g. when there are no images in the table on [[Special:ImageList]]).',
+'table_pager_empty' => 'Used in a table pager when there are no results (e.g. when there are no images in the table on [[Special:ImageList]]).
+{{Identical|No result}}',
# Auto-summaries
'autosumm-blank' => 'The auto summary when blanking the whole page. This is not the same as deleting the page.',
'oct' => 'ukt',
'nov' => 'nuw',
'dec' => 'dis',
+'january-date' => '$1 ñiqin inirupi',
+'february-date' => '$1 ñiqin phiwrirupi',
+'march-date' => '$1 ñiqin marsupi',
+'april-date' => '$1 ñiqin awrilpi',
+'may-date' => '$1 ñiqin mayukillapi',
+'june-date' => '$1 ñiqin hunyupi',
+'july-date' => '$1 ñiqin hulyupi',
+'august-date' => '$1 ñiqin awustupi',
+'september-date' => '$1 ñiqin sitimripi',
+'october-date' => '$1 ñiqin uktuwripi',
+'november-date' => '$1 ñiqin nuwimripi',
+'december-date' => '$1 ñiqin disimripi',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Katiguriya|Katiguriyakuna}}',
'create-this-page' => "Kay p'anqata kamariy",
'delete' => 'Qulluy',
'deletethispage' => "Kay p'anqata qulluy",
+'undeletethispage' => "Kay p'anqata qullusqamanta paqarichiy",
'undelete_short' => "Paqarichiy {{PLURAL:$1|huk llamk'apusqa|$1 llamk'apusqa}}",
'viewdeleted_short' => '{{PLURAL:$1|qullusqa hukchasqa|$1 qullusqa hukchasqa}} qhaway',
'protect' => 'Amachay',
'disclaimers' => 'Chiqakunamanta rikuchiy',
'disclaimerpage' => 'Project:Sapsilla saywachasqa paqtachiy',
'edithelp' => "Llamk'ana yanapay",
-'edithelppage' => 'Help:Qillqa yanapay',
'helppage' => 'Help:Yanapana',
'mainpage' => "Qhapaq p'anqa",
'mainpage-description' => "Qhapaq p'anqa",
'namespaceprotected' => "'''$1''' nisqa suti k'ititaqa llamk'apuyta manam saqillasunkichu.",
'customcssprotected' => "Manam saqillasunkichu kay CSS p'anqata llamk'apuyta, huk ruraqpa kikin tiyachisqankunayuq kaptinmi.",
'customjsprotected' => "Manam saqillasunkichu kay JavaScript p'anqata llamk'apuyta, huk ruraqpa kikin tiyachisqankunayuq kaptinmi.",
+'mycustomcssprotected' => "Kay CSS p'anqataqa manam llamk'apuyta atinkichu.",
+'mycustomjsprotected' => "Kay JavaScript p'anqataqa manam llamk'apuyta atinkichu.",
'ns-specialprotected' => "{{ns:special}} suti k'itipi p'anqakunaqa manam llamk'apunallachu.",
'titleprotected' => "Kay p'anqa sutitaqa [[User:$1|$1]] sutiyuq ruraq kamariymanta hark'arqanmi, kayraykum nispa: ''$2''.",
'filereadonlyerror' => 'Manam atinichu "$1" sutiyuq willañiqita hukchayta, "$2" sutiyuq willañiqi churamuna ñawirillanapaq kachkaptinmi.
'welcomecreation-msg' => 'Rakiqunaykiqa kamarisqañam.
Ama qunqaychu [[Special:Preferences|{{SITENAME}} allinkachinaykikunata]] hukchayta.',
'yourname' => 'Ruraq sutiyki:',
+'userlogin-yourname' => 'Ruraqpa sutin',
+'userlogin-yourname-ph' => 'Ruraqpa sutiykita yaykuchiy',
'yourpassword' => 'Yaykuna rimayki',
+'userlogin-yourpassword' => 'Yaykuna rima',
+'userlogin-yourpassword-ph' => 'Yaykuna rimaykita yaykuchiy',
+'createacct-yourpassword-ph' => 'Yaykuna rimata yaykuchiy',
'yourpasswordagain' => 'Yaykuna rimaykita kutipayay',
+'createacct-yourpasswordagain' => 'Yaykuna rimata takyachiy',
+'createacct-yourpasswordagain-ph' => 'Yaykuna rimata musuqmanta yaykuchiy',
'remembermypassword' => "Ruraqpa sutiyta yaykuna rimaytapas yuyaykuy llamk'ay tiyayniypura ({{PLURAL:$1|huk p'unchawkama|$1 p'unchawkama}})",
+'userlogin-remembermypassword' => 'Yaykusqa kakunaytam munani',
+'userlogin-signwithsecure' => "Amachasqa t'inkinakusqata llamk'achiy",
'securelogin-stick-https' => "Yaykurquspa HTTPS nisqawan t'inkisqa kakuy",
'yourdomainname' => 'Duminyuykip sutin',
'password-change-forbidden' => 'Kay wikipi yaykuna rimataqa manam hukchayta atinkichu.',
'logout' => 'Lluqsiy',
'userlogout' => 'Lluqsiy',
'notloggedin' => 'Manam yaykurqankichu',
+'userlogin-noaccount' => 'Rakiqunaykiri manachu kanchu?',
+'userlogin-joinproject' => '{{SITENAME}}man yaykuy',
'nologin' => "Manaraqchu rakiqunaykichu kachkan? '''$1'''.",
'nologinlink' => 'Kichariy',
'createaccount' => 'Musuq rakiqunata kichariy',
'gotaccount' => "Rakiqunaykiñachu kachkan? '''$1'''.",
'gotaccountlink' => 'Rakiqunaykita willaway',
'userlogin-resetlink' => 'Yaykuna willayniykikunatari qunqarqankichu?',
+'userlogin-resetpassword-link' => 'Yaykuna rimaykita kutichiy',
+'helplogin-url' => 'Help:Yaykuy',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Yaykunapaq yanapa]]',
+'createacct-join' => 'Kay qatiqpi willaykita yaykuchiy.',
+'createacct-emailrequired' => 'E-chaski imamayta',
+'createacct-emailoptional' => 'E-chaski imamayta (munaspayki)',
+'createacct-email-ph' => 'E-chaski imamaytaykita yaykuchiy',
'createaccountmail' => "Kikinmanta tukusqa mit'alla yaykuna rimata llamk'achispa kay qatiqpi kaq e-chaski imamaytaman kachay",
+'createacct-realname' => 'Chiqap suti (munaspayki)',
'createaccountreason' => 'Kayrayku:',
+'createacct-reason' => 'Kayrayku',
+'createacct-reason-ph' => 'Imaraykutaq huk rakiqunata kamarichkanki',
+'createacct-captcha' => 'Amachana llanchiy',
+'createacct-imgcaptcha-ph' => 'Hanaqpi rikusqayki qillqata yaykuchiy',
+'createacct-submit' => 'Rakiqunaykita kamariy',
+'createacct-benefit-heading' => '{{SITENAME}}taqa qam hina runakunam ruran.',
+'createacct-benefit-body1' => "{{PLURAL:$1|llamk'apusqa|llamk'apusqakuna}}",
+'createacct-benefit-body2' => "{{PLURAL:$1|p'anqa|p'anqakuna}}",
+'createacct-benefit-body3' => "{{PLURAL:$1|llamk'apuq|llamk'apuqkuna}}",
'badretype' => 'Qusqayki yaykuna rimakunaqa manam kaqllachu.',
'userexists' => 'Munasqayki ruraqpa sutiykiqa kachkanñam.
Ama hina kaspa, huk ruraqpa sutiykita akllay.',
'loginerror' => "Pantasqa llamk'apuy tiyaypa qallarisqan",
+'createacct-error' => 'Rakiquna kamariy pantasqa',
'createaccounterror' => 'Manam atinichu rakiqunata kamariyta: $1',
'nocookiesnew' => "Ruraqpa rakiqunaykiqa kichasqañam, ichataq manaraqmi yaykurqankichu. {{SITENAME}}qa <em>kuki</em> nisqakunatam llamk'achin ruraqkunata kikinyachinapaq. Antañiqiqniykipiqa manam <em>kuki</em> nisqakuna atinchu. Ama hina kaspa, atichispa huk kutita yaykuykachay.",
'nocookieslogin' => "{{SITENAME}} <em>kuki</em> nisqakunata llamk'achin ruraqkunata kikinyachinapaq. Antañiqiqniykipiqa manam <em>kuki</em> nisqakuna atinchu. Ama hina kaspa, atichispa huk kutita ruraykachay.",
'cannotchangeemail' => 'Ruraqpa rakiqunanpi e-chaski imamaytakunaqa kay wikipi manam hukchanallachu.',
'emaildisabled' => 'Kay tiyayqa e-chaskita manam kachayta atinchu.',
'accountcreated' => 'Rakiqunaqa kichasqañam',
-'accountcreatedtext' => '$1 sutiyuq ruraqpa rakiqunanqa kichasqañam.',
+'accountcreatedtext' => '[[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|rimanakuy]]) sutiyuq ruraqpa rakiqunanqa kichasqañam.',
'createaccount-title' => '{{SITENAME}}paq musuq rakiqunata kichariy',
'createaccount-text' => 'Pipas e-chaski imamaytaykipaq {{SITENAME}}pi ($4) "$2" sutiyuq rakiqunatam kicharqan, "$3" nisqa yaykuna rimayuq. Yaykuspayki yaykuna rimaykita hukchanaykim tiyanman.
'resetpass-wrong-oldpass' => "Mit'alla icha kunan yaykuna rimaqa manam allinchu.
Yaykuna rimaykitaqa aypalla hukcharqunkiñachá icha huk mit'alla yaykuna rimata mañakurqunkiñachá.",
'resetpass-temp-password' => "Mit'alla yaykuna rima:",
+'resetpass-abort-generic' => "Yaykuna rima hukchaytaqa yapa wakichim p'itirqan.",
# Special:PasswordReset
'passwordreset' => 'Yaykuna rimata kutichiy',
-'passwordreset-text' => "Kay hunt'ana p'anqata hunt'ay, yaykuna rimaykita kutichinaykipaq.",
+'passwordreset-text-one' => "Kay hunt'ana p'anqata hunt'ay, yaykuna rimaykita kutichinaykipaq.",
+'passwordreset-text-many' => '{{PLURAL:$1|Kay willa rakikunamanta hukta yaykuchiy, yaykuna rimaykita kutichinaykipaq.}}',
'passwordreset-legend' => 'Yaykuna rimata kutichiy',
'passwordreset-disabled' => 'Kay wikipiqa yaykuna rimata manam kutichiyta atinkichu.',
-'passwordreset-pretext' => '{{PLURAL:$1||Qatiqpi kaq willa rakikunamanta huktam yaykuchiy}}',
+'passwordreset-emaildisabled' => "Kay wikipiqa e-chaski llamk'anakunaman ama nisqam.",
'passwordreset-username' => 'Ruraqpa sutin:',
'passwordreset-domain' => 'Duminyu:',
'passwordreset-capture' => 'Llalliwaq e-chaskita qhawayta munankichu?',
Qullusqachá.",
'edit-conflict' => "Tuylla llamk'apuymanta sasachakuy.",
'edit-no-change' => "Manapuni hukchaptiykim, llamk'apusqayki manam hallch'asqachu.",
+'postedit-confirmation' => "Llamk'apusqaykiqa waqaychasqañam.",
'edit-already-exists' => "Manam atinichu musuq p'anqata kamariyta.
Kachkañam.",
'defaultmessagetext' => 'Ñawpaq qillqa',
+'content-failed-to-parse' => "Manam atinichu $2 samiqta $1 kikinchapaq t'ikrayta: $3",
'invalid-content-data' => 'Samiqmanta willaykunaqa manam allinchu',
'content-not-allowed-here' => '"$1" nisqa samiqqa [[$2]] sutiyuq p\'anqapi manam saqillasqachu',
'editwarning-warning' => "Kay p'anqata saqispaykiqa lliw rurarqusqayki hukchasqakunatachá chinkachiykiman.
'searchmenu-legend' => 'Maskaypaq akllanakuna',
'searchmenu-exists' => "'''Kay wikipiqa «[[$1]]» sutiyuq p'anqam kachkan'''",
'searchmenu-new' => "'''Kay wikipi \"[[:\$1]]\" sutiyuq p'anqata kamariy!'''",
-'searchhelp-url' => 'Help:Yanapana',
'searchmenu-prefix' => "[[Special:PrefixIndex/$1|Kay ñawpa k'askaqchayuq huk p'anqakunata maskay]]",
'searchprofile-articles' => "Samiq p'anqakuna",
'searchprofile-project' => "Yanapanapaq ruraykamaypaqpas p'anqakuna",
'powersearch-togglenone' => 'Mana imapas',
'search-external' => 'Hawapi maskay',
'searchdisabled' => "{{SITENAME}} nisqapi maskaymanqa ama nisqam. Hinachkaptinqa, maskariy google nisqawan icha huk hawa maskanakunawan, ichataq yuyariy, {{SITENAME}}manta hallch'asqankunaqa manañachá musuqllachu.",
+'search-error' => 'Maskaypiqa pantasqam tukurqan: $1',
# Preferences page
'preferences' => 'Allinkachinakuna',
'userrights-notallowed' => 'Qampa rakiqunaykiwanqa manam ruraqkunap hayñinkunata yapayta icha qichuyta atinkichu.',
'userrights-changeable-col' => 'Hukchanayki huñukuna',
'userrights-unchangeable-col' => 'Mana hukchanayki huñukuna',
+'userrights-conflict' => 'Ruraqpa hayñin tupanakuymi. Ama hina kaspa, hukchasqaykikunata musuqmanta quy.',
# Groups
'group' => 'Huñu:',
'right-editusercssjs' => "Huk ruraqkunap CSS, JS willañiqinkunata llamk'apuy",
'right-editusercss' => "Huk ruraqkunap CSS willañiqinkunata llamk'apuy",
'right-edituserjs' => "Huk ruraqkunap JS willañiqinkunata llamk'apuy",
+'right-editmyusercss' => "Kikiykip ruraqpaq CSS willañiqiykikunata llamk'apuy",
+'right-editmyuserjs' => "Kikiykip ruraqpaq JavaScript willañiqiykikunata llamk'apuy",
'right-rollback' => "Huk p'anqapi qhipaq llamk'apuqpa hukchasqankunata utqaylla kutichiy",
'right-markbotedits' => "Kutichisqa llamk'apusqakunata rurana antachap llamk'apusqankunata hina sananchay",
'right-noratelimit' => 'Achura saywakunap manam chayachisqanchu',
'listusers-noresult' => 'Ruraqqa manam tarisqachu.',
'listusers-blocked' => "(hark'asqa)",
+# Special:ActiveUsers
+'activeusers' => "Llamk'achkaq ruraqkuna",
+'activeusers-intro' => "Kay qatiqpiqa ruraqkunatam rikunki, qhipaq $1 {{PLURAL:$1|p'unchawpi|p'unchawkunapi}} kay wikipi imatapas ruraq.",
+'activeusers-count' => "$1 {{PLURAL:$1|llamk'apusqa|llamk'apusqakuna}} ñaqha {{PLURAL:$3|p'unchawpi|$3 p'unchawkunapi}}",
+'activeusers-from' => 'Ruraqkunata rikuchiy, kaywan qallarispa:',
+'activeusers-hidebots' => 'Rurana antachakunata pakay',
+'activeusers-hidesysops' => 'Kamachiqkunata pakay',
+'activeusers-noresult' => 'Ruraqkunataqa manam tarinichu.',
+
# Special:ListGroupRights
'listgrouprights' => 'Ruraq huñup hayñinkuna',
'listgrouprights-summary' => "Kay qatiq sutisuyupiqa kay wikipi sut'ichasqa ruraq huñukunatam, kikinpa chayamuna hayñinkunatawan rikunki.
'notvisiblerev' => 'Musuqchasqaqa qullusqam',
'watchnochange' => "Manam ima watiqasqayki qillqapas llamk'apusqachu karqan rikuchisqa mit'api.",
'watchlist-details' => "Watiqana sutisuyuykipiqa {{PLURAL:$1|huk p'anqam|$1 p'anqakunam}}, rimanakuna p'anqakunata mana yupaspa.",
-'wlheader-enotif' => '* E-chaskimanta musyachinaman arí nisqañam.',
-'wlheader-showupdated' => "* Qayna watukamusqaykimantapacha hukchasqa p'anqakunataqa '''yanasapa''' nisqapim rikunki.",
+'wlheader-enotif' => 'E-chaskimanta musyachinaman arí nisqañam.',
+'wlheader-showupdated' => "Qayna watukamusqaykimantapacha hukchasqa p'anqakunataqa '''yanasapa''' nisqapim rikunki.",
'watchmethod-recent' => "watiqasqayki p'anqakunapaq ñaqha hukchasqakunata llanchispa",
'watchmethod-list' => "watiqasqayki p'anqakunata ñaqha hukchasqakunapaq llanchispa",
'watchlistcontains' => "Watiqana sutisuyuykipiqa $1 {{PLURAL:$1|p'anqam|p'anqakunam}} kachkan.",
'mycontris' => "Llamk'apusqaykuna",
'contribsub2' => '$1 ($2)',
'nocontribs' => 'Manam kay hina hukchasqakuna kanchu.',
-'uctop' => ' (qhipaq hukchasqa)',
+'uctop' => '(qhipaq hukchasqa)',
'month' => 'Kay killamanta (ñawpaqmantapas):',
'year' => 'Kay watamanta (ñawpaqmantapas):',
'thumbnail-more' => 'Hatunchay',
'filemissing' => 'Manam willañiqi kachkanchu',
'thumbnail_error' => 'Manam atinichu rikchachata kamayta: $1',
+'thumbnail_error_remote' => '$1 nisqamanta pantasqa willasqa: $2',
'djvu_page_error' => "DjVu nisqa p'anqaqa nisyum",
'djvu_no_xml' => 'Manam atinichu XML-ta apamuy DjVu willañiqipaq',
'thumbnail-temp-create' => "Manam atinichu mit'alla rikch'acha willañiqita kamariyta.",
'import-error-interwiki' => '"$1" sutiyuq p\'anqaqa hawamanta manam chaskisqachu, sutin wikipura (interwiki) nisqapaq hallch\'asqa kaptinmi.',
'import-error-special' => '"$1" sutiyuq p\'anqaqa hawamanta manam chaskisqachu, mana p\'anqapaq kaq sapaq suti k\'itiman kapuspanmi.',
'import-error-invalid' => '"$1" sutiyuq p\'anqaqa hawamanta manam chaskisqachu, sutin mana allin kaptinmi.',
+'import-error-unserialize' => '"$1" nisqa p\'anqapi $2 musuqchasqataqa manam ñiqirayta atinichu. Kay musuqchasqaqa $4 hina ñiqichasqa $3 kikinchatas llamk\'achin.',
'import-options-wrong' => 'Pantasqa {{PLURAL:$2|akllasqa|akllasqakuna}}: <nowiki>$1</nowiki>',
'import-rootpage-invalid' => "Qusqa saphi p'anqaqa manam allin sutichu.",
'import-rootpage-nosubpage' => 'Saphi p\'anqap "$1" sutisuyunpiqa urin p\'anqakuna manam kanqachu.',
'monobook.css' => '/* Kayman churasqa CSS nisqaqa Monobook qaratam hukchanqa tukuy internet tiyanapaq */',
'modern.css' => "/* Churamusqa CSS chantakunaqa ''Modern skin'' nisqa qarata llamk'achiq ruraqkunapaq llamk'anqa */",
'print.css' => "/* Churamusqa CSS chantakunaqa ch'ipachinap rikch'akuynintam hukchanqa */",
-'handheld.css' => "/* Churamusqa CSS chantakunaqa makiwan hap'isqa qarapi tiksisqa \$wgHandheldStyle nisqapi allichasqa antakunap llamk'aynintam hukchanqa */",
# Scripts
'common.js' => "/* Ima kaypi kaq JavaScript qillqapas tukuy ruraqkunapaq tukuy p'anqakunap tukuy chaqnankunapi chaqnamusqa kanqa. */",
'minutes' => '{{PLURAL:$1|huk minutu|$1 minutu}}',
'hours' => '{{PLURAL:$1|huk ura|$1 ura}}',
'days' => "{{PLURAL:$1|huk p'unchaw|$1 p'unchaw}}",
+'weeks' => '{{PLURAL:$1|huk simana|$1 simana}}',
'months' => '{{PLURAL:$1|huk killa|$1 killa}}',
'years' => '{{PLURAL:$1|huk wata|$1 wata}}',
'ago' => '$1 ñaqha',
'just-now' => 'kunallan',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|ura|urakuna}} ñaqha',
+'minutes-ago' => '$1 {{PLURAL:$1|minutu|minutukuna}} ñaqha',
+'seconds-ago' => '$1 {{PLURAL:$1|sikundu|sikundukuna}} ñaqha',
+'monday-at' => 'Killachaw $1 pachapi',
+'tuesday-at' => 'Atipachaw $1 pachapi',
+'wednesday-at' => 'Quyllurchaw $1 pachapi',
+'thursday-at' => 'Illapachaw $1 pachapi',
+'friday-at' => "Ch'askachaw $1 pachapi",
+'saturday-at' => "K'uychichaw $1 pachapi",
+'sunday-at' => 'Intichaw $1 pachapi',
+'yesterday-at' => "Qayna p'unchaw $1 pachapi",
+
# Bad image list
'bad_image_list' => "Chantaqa kay hinam:
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Suni kay',
'exif-imagelength' => 'Hanaq kay',
'exif-bitspersample' => 'Bitkuna ñawpariqninman',
'exif-originalimageheight' => "Manaraq rutusqa rikch'ap hanaq kaynin",
'exif-originalimagewidth' => "Manaraq rutusqa rikch'ap suni kaynin",
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => "Mana mat'isqa",
'exif-compression-2' => 'CCITT Huñu 3 1-tupu wakinchasqa Huffman purina suni llawiy',
'exif-compression-3' => 'CCITT Huñu 3 tilifaks llawiy',
'version-entrypoints-header-entrypoint' => "Yaykuna t'uksi",
'version-entrypoints-header-url' => 'URL tiyay',
+# Special:Redirect
+'redirect' => 'Willañiqikama, ruraqkama icha musuqchay ID-kama pusapuy',
+'redirect-legend' => "Willañiqiman icha p'anqaman pusapuy",
+'redirect-submit' => 'Riy',
+'redirect-lookup' => 'Maskay:',
+'redirect-value' => 'Chani:',
+'redirect-user' => 'Ruraqpa kikin kaynin',
+'redirect-revision' => "P'anqamanta musuqchasqa",
+'redirect-file' => 'Willañiqip sutin',
+'redirect-not-exists' => 'Chaniqa manam tarisqachu',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Iskaychasqa willañiqikunata maskay',
'fileduplicatesearch-summary' => "Iskaychasqa willañiqikunata maskay ''hash'' chaninpi tiksispa.",
'htmlform-submit' => 'Kachay',
'htmlform-reset' => 'Hukchasqakunata kutichiy',
'htmlform-selectorother-other' => 'Wakin',
+'htmlform-no' => 'Mana',
+'htmlform-yes' => 'Arí',
+'htmlform-chosen-placeholder' => 'Akllanata akllay',
# SQLite database support
'sqlite-has-fts' => "$1 hunt'a qillqa maskana yanapawan",
'disclaimers' => 'Kamachikmanta willaykuna',
'disclaimerpage' => 'Project:Kamachikmanta kapak willaykuna',
'edithelp' => 'Llankanapaa yanapa',
-'edithelppage' => 'Help:Imashina killkankapa yanapana ?',
'helppage' => 'Help:Yanapa',
'mainpage' => 'Kapak Panka',
'mainpage-description' => 'Kapak panka',
'tog-shownumberswatching' => "Fam' avdè e' nòmar d'j utent ch'j tèn sta pàgina sot occ",
'tog-oldsig' => 'Anteprèma dla fírma bona',
'tog-fancysig' => "Tràta la firma cumpagna e' test int'la wiki (senza nissön ligam automatich)",
-'tog-externaleditor' => "Drova sempar un prugràma d'scritura esteran (editor testuale)",
-'tog-externaldiff' => 'Drova sempar un prugràma comparator esteran (sol par j utent espert)',
'tog-showjumplinks' => "Fa' funzionè j leghèm d'acesibilitè tipo \"Va' a\"",
'tog-uselivepreview' => 'Drova la funziòn "Anteprèma dal viv" (u j vo Javascript; sperimentêl)',
'tog-forceeditsummary' => "Dam la vos quènd l'ugèt dla mudèfica l'è vut",
# Special:ListGroupRights
'listgrouprights-members' => "(Lèsta d'j mèmbar)",
-# E-mail user
+# Email user
'emailuser' => 'Manda un scrètt a ste patàca',
# Watchlist
# Special:ListUsers
'listusers-submit' => 'Smmrad',
-# E-mail user
+# Email user
'emailuser' => 'Ssek E-mail i bnadm a',
# Watchlist
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Agid per modifitgar',
-'edithelppage' => 'Help:Prims pass',
'helppage' => 'Help:Cuntegn',
'mainpage' => 'Pagina principala',
'mainpage-description' => 'Pagina principala',
# Special:PasswordReset
'passwordreset' => 'Redefinir il pled-clav',
-'passwordreset-text' => "Emplenescha quest formular per retschaiver in e-mail che cuntegna ils detagls per acceder tes conto d'utilisader.",
'passwordreset-legend' => 'Redefinir il pled-clav',
'passwordreset-disabled' => 'La pussaivladad da redefinir il pled-clav è vegnida deactivada sin questa wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1||Endatescha in dals tocs da data sutvart}}',
'passwordreset-username' => "Num d'utilisader:",
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => "Mussar l'e-mail che resultescha?",
'searchmenu-legend' => 'Opziuns da tschertgar',
'searchmenu-exists' => "'''Igl exista ina pagina cun il num \"[[:\$1]] sin questa vichi\"'''",
'searchmenu-new' => "'''Crear la pagina \"[[:\$1]]\" sin questa vichi!'''",
-'searchhelp-url' => 'Help:Cuntegn',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Mussar tut las paginas cun quest prefix]]',
'searchprofile-articles' => 'Paginas da cuntegn',
'searchprofile-project' => 'Agid e paginas dal project',
'notvisiblerev' => "L'ultima versiun d'in auter utilisader è vegnida stizzada",
'watchnochange' => 'Nagin dals artitgels che ti observeschas è vegnì midà durant la perioda da temp inditgada.',
'watchlist-details' => "{{PLURAL:$1|Ina pagina|$1 paginas}} èn sin tia glista d'observaziun (senza dumbrar las paginas da discussiun).",
-'wlheader-enotif' => "* Il servetsch d'infurmaziun per e-mail è activà.",
-'wlheader-showupdated' => "* Artitgels ch'èn vegnids midads suenter che ti has vis els la davosa giada èn mussads '''grass'''",
+'wlheader-enotif' => "Il servetsch d'infurmaziun per e-mail è activà.",
+'wlheader-showupdated' => "Artitgels ch'èn vegnids midads suenter che ti has vis els la davosa giada èn mussads '''grass'''",
'watchmethod-recent' => "intercurir las davosas midadas per la glista d'observaziun",
'watchmethod-list' => 'intercurir las paginas observadas davart novas midadas',
'watchlistcontains' => "Tia glista d'observaziun cuntegna $1 {{PLURAL:$1|pagina|paginas}}.",
# Cologne Blue skin
'qbedit' => 'Editisar',
-'qbpageinfo' => 'Patrinyake janglimata',
'qbspecialpages' => 'Uzalutne patrya',
'errorpagetitle' => 'Dosh',
'logouttext' => "'''Akana san avryal i {{SITENAME}}.'''
Shai te labyares {{SITENAME}} sar ekh bijanglo jeno vai shai te prinjares tut palem sar o jeno le kadale navesa vai le aver navesa.",
-'welcomecreation' => '== Mishto avilyan, $1! ==
-
-Akana si tuke ekh akont. Te na bistares te paruves, kana trebul tuke, tire kamimata kai {{SITENAME}}.',
'yourname' => 'Tiro anav',
'yourpassword' => 'O nakhavipnasko lav',
'yourpasswordagain' => 'O nakhavipnasko lav de nevo',
'allarticles' => 'Sa le artikolurya',
'allpagessubmit' => 'Ja',
-# E-mail user
+# Email user
'emailuser' => 'Bichhal les/la e-mail',
'emailfrom' => 'Katar',
'emailto' => 'Karing',
'wlnote' => 'Tele si le palutne $1 paruvimata ande palutne <b>$2</b> ore.',
'enotif_reset' => 'Thov semno kai patrya so dikhlem',
-'enotif_newpagetext' => 'Kadaya si ek nevi patrin.',
# Delete
'deletepage' => 'Khos i patrin',
* @author Danutz
* @author Emily
* @author Firilacroco
+ * @author Geitost
* @author Gutza
* @author KlaudiuMihaila
* @author Laurap
'oct' => 'oct',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1 ianuarie',
+'february-date' => '$1 februarie',
+'march-date' => '$1 martie',
+'april-date' => '$1 aprilie',
+'may-date' => '$1 mai',
+'june-date' => '$1 iunie',
+'july-date' => '$1 iulie',
+'august-date' => '$1 august',
+'september-date' => '$1 septembrie',
+'october-date' => '$1 octombrie',
+'november-date' => '$1 noiembrie',
+'december-date' => '$1 decembrie',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categorie|Categorii}}',
'create-this-page' => 'Creați această pagină',
'delete' => 'Ștergere',
'deletethispage' => 'Șterge pagina',
+'undeletethispage' => 'Recuperează această pagină',
'undelete_short' => 'Recuperarea {{PLURAL:$1|unei modificări|a $1 modificări|a $1 de modificări}}',
'viewdeleted_short' => 'Vedeți {{PLURAL:$1|o modificare ștearsă|$1 (de) modificări șterse}}',
'protect' => 'Protejare',
'disclaimers' => 'Termeni',
'disclaimerpage' => 'Project:Termeni',
'edithelp' => 'Ajutor pentru modificare',
-'edithelppage' => 'Help:Cum să modifici o pagină',
'helppage' => 'Help:Ajutor',
'mainpage' => 'Pagina principală',
'mainpage-description' => 'Pagina principală',
'namespaceprotected' => "Nu aveți permisiunea de a modifica pagini din spațiul de nume '''$1'''.",
'customcssprotected' => 'Nu aveți permisiunea de a modifica această pagină CSS, deoarece conține setările personale ale altui utilizator.',
'customjsprotected' => 'Nu aveți permisiunea de a modifica această pagină JavaScript, deoarece conține setările personale ale altui utilizator.',
+'mycustomcssprotected' => 'Nu aveți permisiunea să modificați această pagină CSS.',
+'mycustomjsprotected' => 'Nu aveți permisiunea să modificați această pagină JavaScript.',
'ns-specialprotected' => 'Paginile din spațiul de nume {{ns:special}} nu pot fi editate.',
'titleprotected' => "Acest titlu a fos protejat la creare de [[User:$1|$1]].
Motivul invocat este ''$2''.",
'notloggedin' => 'Nu sunteți autentificat',
'userlogin-noaccount' => 'Nu aveți cont încă?',
'userlogin-joinproject' => 'Înscrieți-vă la {{SITENAME}}',
-'nologin' => "Nu aveți cont încă? '''$1'''.",
+'nologin' => 'Nu aveți cont încă? $1.',
'nologinlink' => 'Creați-vă un cont de utilizator acum',
'createaccount' => 'Creare cont',
'gotaccount' => "Aveți deja un cont de utilizator? '''$1'''.",
'cannotchangeemail' => 'Adresele de e-mail asociate conturilor nu pot fi schimbate pe acest wiki.',
'emaildisabled' => 'Acest site nu poate trimite e-mailuri.',
'accountcreated' => 'Contul a fost creat.',
-'accountcreatedtext' => 'Contul utilizatorului pentru $1 a fost creat.',
+'accountcreatedtext' => 'Contul utilizatorului pentru [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|discuție]]) a fost creat.',
'createaccount-title' => 'Creare de cont la {{SITENAME}}',
'createaccount-text' => 'Cineva a creat un cont asociat adresei dumneavoastră de e-mail pe {{SITENAME}} ($4) numit „$2” și având parola „$3”.
Este de dorit să vă autentificați și să schimbați parola cât mai repede.
# Special:PasswordReset
'passwordreset' => 'Resetare parolă',
-'passwordreset-text' => 'Completați acest formular pentru a vă reseta parola.',
+'passwordreset-text-one' => 'Completați acest formular pentru a vă reseta parola.',
+'passwordreset-text-many' => '{{PLURAL:$1|Introduceți una din aceste informații pentru a vă reseta parola.}}',
'passwordreset-legend' => 'Resetare parolă',
'passwordreset-disabled' => 'Resetarea parolei a fost dezactivată pe acest wiki.',
'passwordreset-emaildisabled' => 'Funcțiile de e-mail au fost dezactivate de pe acest wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1| | Introduceți mai jos o parte din informații}}',
'passwordreset-username' => 'Nume de utilizator:',
'passwordreset-domain' => 'Domeniu:',
'passwordreset-capture' => 'Vizualizați e-mailul rezultat?',
Aveți adresa IP $3, iar identificatorul dumneavoastră de blocare este $5.
Vă rugăm să includeți detaliile de mai sus în orice interogări pe care le faceți.',
'blockednoreason' => 'nici un motiv oferit',
-'whitelistedittext' => 'Trebuie să $1 pentru a edita articole.',
+'whitelistedittext' => 'Trebuie să vă $1 pentru a putea modifica pagini.',
'confirmedittext' => 'Trebuie să vă confirmați adresa de e-mail înainte de a edita pagini. Vă rugăm să vă setați și să vă validați adresa de e-mail cu ajutorul [[Special:Preferences|preferințelor utilizatorului]].',
'nosuchsectiontitle' => 'Secțiunea nu poate fi găsită',
'nosuchsectiontext' => 'Ați încercat să modificați o secțiune care nu există.
Aceasta fie a fost mutată, fie a fost ștearsă în timp ce vizualizați pagina.',
'loginreqtitle' => 'Necesită autentificare',
'loginreqlink' => 'autentificați',
-'loginreqpagetext' => 'Trebuie să te $1 pentru a vizualiza alte pagini.',
+'loginreqpagetext' => 'Trebuie să vă $1 pentru a vizualiza alte pagini.',
'accmailtitle' => 'Parola a fost trimisă.',
'accmailtext' => "Parola generată automat pentru [[User talk:$1|$1]] a fost trimisă la $2.
Se pare că a fost ștearsă.',
'edit-conflict' => 'Conflict de modificare.',
'edit-no-change' => 'Modificarea dvs. a fost ignorată deoarece nu s-a efectuat nicio schimbare.',
+'postedit-confirmation' => 'Modificarea dumneavoastră a fost salvată.',
'edit-already-exists' => 'Pagina nouă nu a putut fi creată.
Ea există deja.',
'defaultmessagetext' => 'Textul implicit',
'searchmenu-legend' => 'Opțiuni căutare',
'searchmenu-exists' => "'''Există o pagină cu titlul „[[:$1]]'” pe acest site.'''",
'searchmenu-new' => "'''Creați pagina „[[:$1]]” pe acest wiki!'''",
-'searchhelp-url' => 'Help:Ajutor',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Răsfoiește paginile cu acest prefix]]',
'searchprofile-articles' => 'Pagini cu conținut',
'searchprofile-project' => 'Pagini din spațiile Proiect și Ajutor',
'userrights-changeable-col' => 'Grupuri pe care le puteți schimba',
'userrights-unchangeable-col' => 'Grupuri pe care nu le puteți schimba',
'userrights-conflict' => 'Conflict al drepturilor de utilizator! Aplicați din nou modificările dumneavoastră.',
+'userrights-removed-self' => 'V-ați eliminat cu succes propriile drepturi. Ca urmare, nu mai puteți accesa această pagină.',
# Groups
'group' => 'Grup:',
'right-editusercssjs' => 'Modifică fișierele CSS și JS ale altor utilizatori',
'right-editusercss' => 'Modifică fișierele CSS ale altor utilizatori',
'right-edituserjs' => 'Modifică fișierele JS ale altor utilizatori',
+'right-editmyusercss' => 'Modificați-vă propriile fișiere CSS',
+'right-editmyuserjs' => 'Modificați-vă propriile fișiere JavaScript',
+'right-viewmywatchlist' => 'Vizualizați propria listă de pagini urmărite',
+'right-editmywatchlist' => 'Modificați propria listă de pagini urmărite. Rețineți că anumite acțiuni vor adăuga pagini chiar și fără acest drept.',
'right-rollback' => 'Revocarea rapidă a modificărilor ultimului utilizator care a modificat o pagină particulară',
'right-markbotedits' => 'Marchează revenirea ca modificare efectuată de robot',
'right-noratelimit' => 'Neafectat de limitele raportului',
'action-userrights-interwiki' => 'modificați permisiunile utilizatorilor de pe alte wiki',
'action-siteadmin' => 'blocați sau deblocați baza de date',
'action-sendemail' => 'trimite e-mailuri',
+'action-editmywatchlist' => 'vă modificați lista de pagini urmărite',
+'action-viewmywatchlist' => 'vă vizualizați lista de pagini urmărite',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|modificare|modificări|de modificări}}',
'reuploaddesc' => 'Revocare încărcare și întoarcere la formularul de trimitere.',
'upload-tryagain' => 'Trimiteți descrierea fișierului modificată',
'uploadnologin' => 'Nu sunteți autentificat',
-'uploadnologintext' => 'Trebuie să fiți [[Special:UserLogin|autentificat]] pentru a putea trimite fișiere.',
+'uploadnologintext' => 'Trebuie să vă $1 pentru a încărca fișiere.',
'upload_directory_missing' => 'Directorul în care sunt încărcate fișierele ($1) lipsește și nu poate fi creat de serverul web.',
'upload_directory_read_only' => 'Directorul de încărcare ($1) nu poate fi scris de server.',
'uploaderror' => 'Eroare la trimitere fișier',
'notvisiblerev' => 'Versiunea a fost ștearsă',
'watchnochange' => 'Nici una dintre paginile pe care le urmăriți nu a fost modificată în perioada de timp afișată.',
'watchlist-details' => '{{PLURAL:$1|O pagină|$1 pagini urmărite|$1 de pagini urmărite}}, excluzând paginile de discuție.',
-'wlheader-enotif' => '*Notificarea email este activată',
-'wlheader-showupdated' => "* Paginile care au fost modificate după ultima dumneavoastră vizită sunt afișate '''îngroșat'''",
+'wlheader-enotif' => 'Notificarea prin e-mail este activată.',
+'wlheader-showupdated' => "Paginile care au fost modificate ulterior accesării lor ultima dată de către dumneavoastră sunt '''îngroșate'''.",
'watchmethod-recent' => 'căutarea schimbărilor recente pentru paginile urmărite',
'watchmethod-list' => 'căutarea paginilor urmărite pentru schimbări recente',
'watchlistcontains' => 'Lista de pagini urmărite conține $1 {{PLURAL:$1|element|elemente|de elemente}}.',
'undelete' => 'Recuperare pagină ștearsă',
'undeletepage' => 'Vizualizare și recuperare pagini șterse',
'undeletepagetitle' => "'''Această listă cuprinde versiuni șterse ale paginii [[:$1|$1]].'''",
-'viewdeletedpage' => 'Vezi paginile șterse',
+'viewdeletedpage' => 'Vizualizare pagini șterse',
'undeletepagetext' => '{{PLURAL:$1|Următoarea pagină a fost ștearsă, dar încă se află în arhivă și poate fi recuperată|Următoarele $1 pagini au fost șterse, dar încă se află în arhivă și pot fi recuperate|Următoarele $1 de pagini au fost șterse, dar încă se află în arhivă și pot fi recuperate}}. Arhiva ar putea fi ștearsă periodic.',
'undelete-fieldset-title' => 'Recuperare versiuni',
'undeleteextrahelp' => "Pentru a restaura întregul istoric al paginii lăsați toate căsuțele nebifate și apăsați butonul '''''{{int:undeletebtn}}'''''.
'mycontris' => 'Contribuții',
'contribsub2' => 'Pentru $1 ($2)',
'nocontribs' => 'Nu a fost găsită nici o modificare care să satisfacă acest criteriu.',
-'uctop' => '(sus)',
+'uctop' => '(actuală)',
'month' => 'Din luna (și dinainte):',
'year' => 'Până în anul:',
'thumbnail-more' => 'Extindere',
'filemissing' => 'Fișier lipsă',
'thumbnail_error' => 'Eroare la generarea previzualizării: $1',
+'thumbnail_error_remote' => 'Mesaj de eroare de la $1:
+$2',
'djvu_page_error' => 'Numărul paginii DjVu eronat',
'djvu_no_xml' => 'Imposibil de obținut XML-ul pentru fișierul DjVu',
'thumbnail-temp-create' => 'Imposibil de creat miniatura temporară',
'oct' => 'Ott',
'nov' => 'Nov',
'dec' => 'Dec',
+'january-date' => 'Scennare $1',
+'february-date' => 'Febbrare $1',
+'march-date' => 'Màrze $1',
+'april-date' => 'Abbrile $1',
+'may-date' => 'Màsce $1',
+'june-date' => 'Sciugne $1',
+'july-date' => 'Luglie $1',
+'august-date' => 'Aguste $1',
+'september-date' => 'Settemmre $1',
+'october-date' => 'Ottommre $1',
+'november-date' => 'Novemmre $1',
+'december-date' => 'Decemmre $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Categorije|Categorije}}',
'create-this-page' => "Ccreje 'a pàgene",
'delete' => 'Scangìlle',
'deletethispage' => 'Scangille sta pàgene',
+'undeletethispage' => 'Repristine sta pàgene',
'undelete_short' => "Annulle {{PLURAL:$1|'nu camgiamende|$1 cangiaminde}}",
'viewdeleted_short' => "Vide {{PLURAL:$1|'nu cangiamende scangellate|$1 cangiaminde scangellate}}",
'protect' => 'Prutette',
'disclaimers' => 'No ne sacce ninde',
'disclaimerpage' => 'Project:Scareca uarrile',
'edithelp' => "Cangianne l'ajute",
-'edithelppage' => 'Help:Cangiaminde',
'helppage' => 'Help:Condenute',
'mainpage' => 'Pàgene Prengepàle',
'mainpage-description' => 'Pàgene Prengepàle',
'namespaceprotected' => "Non ge tine 'u permesse pe cangià pàggene d'u neimspeise '''$1'''.",
'customcssprotected' => "Non ge tine 'u permesse pe cangià sta pàgene de CSS, purcè tène otre configurazione personale.",
'customjsprotected' => "Non ge tine 'u permesse pe cangià sta pàgene de Javascript, purcè tène otre configurazione personale.",
+'mycustomcssprotected' => 'Non ge tìne le permesse pe cangià sta pàgene CSS',
+'mycustomjsprotected' => 'Non ge tìne le permesse pe cangià sta pàgene JavaScript',
'ns-specialprotected' => 'Le pàgene speciale no ponne essere cangete.',
'titleprotected' => "Stu titele ha state prutette da 'a ccreazione da [[User:$1|$1]].
'U mutive jè ''$2''.",
'cannotchangeemail' => "Le indirizze e-mail d'u cunde utende non ge ponne essere cangiate sus a sta uicchi.",
'emaildisabled' => 'Stu site non ge pò mannà e-mail.',
'accountcreated' => 'cunde utende ccrejete',
-'accountcreatedtext' => "'U cunde utende pe $1 ha state ccrejete.",
+'accountcreatedtext' => "'U cunde utende pe [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|'ngazzaminde]]) ha state ccrejate.",
'createaccount-title' => "Ccreazzione de 'u cunde utende pe {{SITENAME}}",
'createaccount-text' => 'Quacchedune ha ccrejete \'nu cunde utende cu l\'indirizze e-mail tue sus a {{SITENAME}} ($4) chiamete "$2", cu password "$3".
Tu, mò, t\'avisse a collegà e cangià \'a password toje.
# Special:PasswordReset
'passwordreset' => "Azzere 'a passuord",
-'passwordreset-text' => "Comblete stu module pe ricevere 'na mail de promemorie de le dettaglie d'u cunde tune.",
+'passwordreset-text-one' => "Comblete stu module pe azzerà 'a passuord toje.",
+'passwordreset-text-many' => "{{PLURAL:$1|Mitte une de le pizze de date pe azzerà 'a passuord toje.}}",
'passwordreset-legend' => "Azzere 'a passuord",
'passwordreset-disabled' => "'U reset de le passuord ha state desabbilitate sus a sta uicchi.",
'passwordreset-emaildisabled' => "Le funziune de l'email onne state disabbilitate sus a sta uicchi.",
-'passwordreset-pretext' => '{{PLURAL:$1||Mitte une de le stuèzze de le date aqquà sotte}}',
'passwordreset-username' => 'Nome utende:',
'passwordreset-domain' => 'Dominie:',
'passwordreset-capture' => "Vide 'a mail resultande?",
Pare proprie ca l'onne scangellete.",
'edit-conflict' => 'conflitte de cangiaminde.',
'edit-no-change' => "'U cangiamende ca p fatte, avène scettate purcè 'u teste non g'à cangete manghe de 'na virgola.",
+'postedit-confirmation' => "'U cangiamende tune ha state reggistrate.",
'edit-already-exists' => "Non ge puè ccrejà 'na pàgene nove purcè esiste già!",
'defaultmessagetext' => 'Messàgge de teste de base',
'content-failed-to-parse' => "L'analise d'u condenute $2 pu modelle $1 ha fallite: $3",
'searchmenu-legend' => 'Opzione de ricerche',
'searchmenu-exists' => "'''Stè 'na pàgene nnumenete \"[[\$1]]\" sus 'a sta Uicchipèdie'''",
'searchmenu-new' => "'''[[:\$1|Ccreje]] 'a pàgene \"[[:\$1|\$1]]\" sus 'a sta Uicchipèdie!'''",
-'searchhelp-url' => 'Help:Condenute',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Sfogghije le pàggene cu stu prefisse]]',
'searchprofile-articles' => 'Vôsce',
'searchprofile-project' => 'Pàggene de ajiute e de pruggette',
'userrights-unchangeable-col' => 'Gruppe ca tu non ge puè cangià',
'userrights-irreversible-marker' => '$1*',
'userrights-conflict' => 'Conflitte sus a le deritte utende! Pe piacere appliche le cangiaminde tune arrete.',
+'userrights-removed-self' => "T'è luate le deritte tune. Mò non ge puè cchiù trasè jndr'à sta pàgene.",
# Groups
'group' => 'Gruppe:',
'right-editusercssjs' => "Cange 'u CSS e 'u JS de l'otre utinde",
'right-editusercss' => "Cange 'u CSS de l'otre utinde",
'right-edituserjs' => "Cange 'u JS de l'otre utinde",
+'right-editmyusercss' => 'Cange le file tune de CSS',
+'right-editmyuserjs' => 'Cange le file tune de JavaScript',
+'right-viewmywatchlist' => "'Ndruche le pàggene condrollate tune",
+'right-editmywatchlist' => 'Cange le pàggene condrollate tune. Vide bbuene ca certe aziune vonne a aggiungere pàggene pure ca non ge stonne le deritte.',
'right-rollback' => "Annulle velocemende le cangiaminde de l'urteme utende ca ha cangiate 'na pàgena particolare",
'right-markbotedits' => 'Marche le cangiaminde annullate cumme cangiaminde de bot',
'right-noratelimit' => "Non g'à state tuccate da le limite de le pundegge",
'action-userrights-interwiki' => "cange le deritte de l'utende de l'utinde de le otre Uicchi",
'action-siteadmin' => "blocche o sblocche 'u database",
'action-sendemail' => 'manne e-mail',
+'action-editmywatchlist' => 'cange le pàggene condrollate tune',
+'action-viewmywatchlist' => "'ndruche le pàggene condrollate tune",
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|cangiaminde|cangiaminde}}',
'notvisiblerev' => "'A revisione ha state scangellete",
'watchnochange' => "Niscune de le vôsce condrollete onne state cangete jndr'à 'u periode visualizzate.",
'watchlist-details' => "{{PLURAL:$1|$1 pàgene|$1 pàggene}} jndr'à liste de le pàggene condrollete, scartanne le pàggene de le 'ngazzaminde.",
-'wlheader-enotif' => "* 'A notifiche de le e-mail notification jè abbilitete.",
-'wlheader-showupdated' => "* Le pàggene ca onne cangete da quanne tu l'è visitate sonde visualizzate in '''grascette'''",
+'wlheader-enotif' => '* Notifiche pe email abbilitate.',
+'wlheader-showupdated' => "* Le pàggene ca onne state cangiate da l'urtema visite avènene fatte vedè in '''grascette'''",
'watchmethod-recent' => 'verifiche de le cangiaminde recende pe le pàggene condrollete',
'watchmethod-list' => 'stoche a condrolle le pàggene condrollete pe le urteme cangiaminde',
'watchlistcontains' => "'A liste de le pàggene condrollete toje condene $1 {{PLURAL:$1|pàgene|pàggene}}.",
'mycontris' => 'Condrebbute mie',
'contribsub2' => 'Pe $1 ($2)',
'nocontribs' => 'Nisciune cangiamende ha state acchiate cu ste criterie.',
-'uctop' => '(sus)',
+'uctop' => '(de mò)',
'month' => "Da 'u mese (e cchiù recende):",
'year' => "Da l'anne (e cchiù recende):",
'thumbnail-more' => 'Allarije',
'filemissing' => 'File perdute',
'thumbnail_error' => "Errore ccrejanne l'andeprime picenne: $1",
+'thumbnail_error_remote' => "Messàgge d'errore da $1:
+$2",
'djvu_page_error' => 'Pàgene DjVu fore da le limite',
'djvu_no_xml' => "Non ge riesche a esaminà l'XML d'u file DjVu",
'thumbnail-temp-create' => "Non ge se pò ccrejà 'na miniature temboranèe d'u file",
'modern.css' => "/* 'U CSS ca se iacchie aqquà 'u 'ndrucane le utinde d'a masckere Moderne */",
'vector.css' => "/* 'U CSS ca se iacchie aqquà 'u 'ndrucane le utinde d'a masckere Vettore */",
'print.css' => "/* 'U CSS ca se iacchie aqquà avène applicate a 'u resultate d'a stambe */",
-'handheld.css' => "/* 'U CSS ca se iacchie aqquà l'ausane le dispositive de gestione manuale basate sus a masckere configurate in \$wgHandheldStyle */",
'noscript.css' => "/* 'U CSS ca se iacchie aqquà l'ausane le utinde cu 'u Javascript disabbilitate */",
'group-autoconfirmed.css' => "/* 'U CSS ca se iacchie aqquà ave effettue seulamende sus a le utinde autoconfirmatarie */",
'group-bot.css' => "/* 'U CSS ca se iacchie aqquà ave effettue seulamende sus a le bot */",
* @author AlexSm
* @author Alexander Sigachov (alexander.sigachov@gmail.com)
* @author Alexandr Efremov
+ * @author Altai uul
* @author Amikeco
* @author Amire80
* @author Anonim.one
* @author Flrn
* @author G0rn
* @author Gazeb
+ * @author Geitost
* @author Grigol
* @author Haffman
* @author HalanTul
* @author KorneySan
* @author Kv75
* @author Lockal
+ * @author Lunacy1911
+ * @author Matma Rex
* @author MaxBioHazard
* @author MaxSem
* @author NBS
+ * @author Nemo bis
* @author Ola
* @author Ole Yves
* @author Putnik
* @author Гусейн
* @author ОйЛ
* @author Умар
+ * @author Чаховіч Уладзіслаў
* @author לערי ריינהארט
* @author გიორგიმელა
*/
'oct' => 'окт',
'nov' => 'ноя',
'dec' => 'дек',
+'january-date' => 'Январь $1',
+'february-date' => 'Февраль $1',
+'march-date' => 'Март $1',
+'april-date' => 'Апрель $1',
+'may-date' => 'Май $1',
+'june-date' => 'Июнь $1',
+'july-date' => 'Июль $1',
+'august-date' => 'Август $1',
+'september-date' => 'Сентябрь $1',
+'october-date' => 'Октябрь $1',
+'november-date' => 'Ноябрь $1',
+'december-date' => 'Декабрь $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категория|Категории}}',
'create-this-page' => 'Создать эту страницу',
'delete' => 'Удалить',
'deletethispage' => 'Удалить эту страницу',
+'undeletethispage' => 'Восстановить эту страницу',
'undelete_short' => 'Восстановить $1 {{PLURAL:$1|правку|правки|правок}}',
'viewdeleted_short' => 'Просмотр $1 {{PLURAL:$1|удалённой правки|удалённых правок|удалённых правок}}',
'protect' => 'Защитить',
'disclaimers' => 'Отказ от ответственности',
'disclaimerpage' => 'Project:Отказ от ответственности',
'edithelp' => 'Справка по редактированию',
-'edithelppage' => 'Help:Редактирование',
'helppage' => 'Help:Содержание',
'mainpage' => 'Заглавная страница',
'mainpage-description' => 'Заглавная страница',
'youhavenewmessages' => 'Вы получили $1 ($2).',
'newmessageslink' => 'новые сообщения',
'newmessagesdifflink' => 'последнее изменение',
-'youhavenewmessagesfromusers' => 'Вы получили $1 от {{PLURAL:$3|$3 участника|$3 участников|$3 участников}} ($2).',
+'youhavenewmessagesfromusers' => 'Вы получили $1 от {{PLURAL:$3|$3 участника|$3 участников}} ($2).',
'youhavenewmessagesmanyusers' => 'Вы получили $1 от множества пользователей ($2).',
'newmessageslinkplural' => '{{PLURAL:$1|новое сообщение|новые сообщения}}',
'newmessagesdifflinkplural' => '{{PLURAL:$1|последнее изменение|последние изменения}}',
'namespaceprotected' => 'У вас нет разрешения редактировать страницы в пространстве имён «$1».',
'customcssprotected' => 'У вас нет разрешения редактировать эту CSS-страницу, так как она содержит личные настройки другого участника.',
'customjsprotected' => 'У вас нет разрешения редактировать эту JavaScript-страницу, так как она содержит личные настройки другого участника.',
+'mycustomcssprotected' => 'У вас нет прав для редактирования этого CSS страницы.',
+'mycustomjsprotected' => 'У вас нет прав для редактирования JavaScript на странице.',
'ns-specialprotected' => 'Страницы пространства имён «{{ns:special}}» не могут правиться.',
'titleprotected' => "Создание страницы с таким заголовком было запрещено участником [[Участник:$1|$1]].
Указана следующая причина: ''$2''.",
'createacct-yourpasswordagain' => 'Подтвердите пароль',
'createacct-yourpasswordagain-ph' => 'Введите пароль еще раз',
'remembermypassword' => 'Помнить мою учётную запись на этом компьютере (не более $1 {{PLURAL:$1|дня|дней|дней}})',
-'userlogin-remembermypassword' => 'Ð\97апомниÑ\82Ñ\8c менÑ\8f',
-'userlogin-signwithsecure' => 'Ð\92Ñ\8bполниÑ\82е вÑ\85од, иÑ\81полÑ\8cзÑ\83Ñ\8f безопаÑ\81нÑ\8bй Ñ\81еÑ\80веÑ\80',
+'userlogin-remembermypassword' => 'Ð\9eÑ\81Ñ\82аваÑ\82Ñ\8cÑ\81Ñ\8f в Ñ\81иÑ\81Ñ\82еме',
+'userlogin-signwithsecure' => 'Ð\97аÑ\89иÑ\89Ñ\91нное Ñ\81оединение',
'securelogin-stick-https' => 'Продолжить подключение по HTTPS после входа',
'yourdomainname' => 'Ваш домен:',
'password-change-forbidden' => 'Вы не можете изменить пароль в этой вики.',
'logout' => 'Завершение сеанса',
'userlogout' => 'Завершение сеанса',
'notloggedin' => 'Вы не представились системе',
-'userlogin-noaccount' => 'Нет аккаунта?',
+'userlogin-noaccount' => 'Нет учетной записи?',
'userlogin-joinproject' => 'Присоединиться к {{grammar:genitive|{{SITENAME}}}}',
'nologin' => 'Нет учётной записи? $1.',
'nologinlink' => 'Создать учётную запись',
'gotaccountlink' => 'Представьтесь',
'userlogin-resetlink' => 'Забыли данные для входа?',
'userlogin-resetpassword-link' => 'Сброс пароля',
+'helplogin-url' => 'Help:Представление системе',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Помощь со входом в систему]]',
'createacct-join' => 'Введите свои данные ниже.',
'createacct-emailrequired' => 'Адрес электронной почты',
'createacct-emailoptional' => 'Адрес электронной почты (необязательно)',
'createacct-email-ph' => 'Введите свой адрес электронной почты',
-'createaccountmail' => 'Использовать сгенерированный случайным образом временный пароль и выслать мне его на указанный ниже адрес электронной почты:',
+'createaccountmail' => 'Использовать сгенерированный случайным образом временный пароль и выслать мне его на указанный ниже адрес электронной почты',
'createacct-realname' => 'Настоящее имя (необязательно)',
'createaccountreason' => 'Причина:',
'createacct-reason' => 'Причина',
+'createacct-reason-ph' => 'Зачем вы создаёте другую учетную запись',
'createacct-captcha' => 'Проверка безопасности',
'createacct-imgcaptcha-ph' => 'Введите текст, который вы видите выше',
-'createacct-submit' => 'Ð\97аÑ\80егиÑ\81Ñ\82Ñ\80иÑ\80овать учётную запись',
-'createacct-benefit-heading' => '{{SITENAME}} Ñ\81делана такими же людьми, как вы.',
+'createacct-submit' => 'Создать учётную запись',
+'createacct-benefit-heading' => '{{SITENAME}} Ñ\81оздана такими же людьми, как вы.',
'createacct-benefit-body1' => '{{PLURAL:$1|правка|правки|правок}}',
-'createacct-benefit-body2' => '{{PLURAL:$1|страница|страницы|страниц}}',
-'createacct-benefit-body3' => '{{PLURAL:$1|Ñ\83Ñ\87аÑ\81Ñ\82ник|Ñ\83Ñ\87аÑ\81Ñ\82ников|Ñ\83Ñ\87аÑ\81Ñ\82ника}} в последнее время',
+'createacct-benefit-body2' => '{{PLURAL:$1|статья|статьи|статей}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|Ñ\83Ñ\87аÑ\81Ñ\82ник|Ñ\83Ñ\87аÑ\81Ñ\82ника|Ñ\83Ñ\87аÑ\81Ñ\82ников}} за последнее время',
'badretype' => 'Введённые вами пароли не совпадают.',
'userexists' => 'Введённое имя участника уже используется.
Пожалуйста, выберите другое имя.',
'cannotchangeemail' => 'Адреса электронной почты этой учётной записи не могут быть изменены в этой вики.',
'emaildisabled' => 'Этот сайт не может отправлять сообщения электронной почты.',
'accountcreated' => 'Учётная запись создана',
-'accountcreatedtext' => 'Создана учётная запись участника $1.',
+'accountcreatedtext' => 'Создана учётная запись участника [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|обс.]]).',
'createaccount-title' => '{{SITENAME}}: создание учётной записи',
'createaccount-text' => 'Кто-то создал учётную запись «$2» на сервере проекта {{SITENAME}} ($4), указав ваш адрес электронной почты.
'resetpass-wrong-oldpass' => 'Неправильный временный или текущий пароль.
Возможно, вы уже успешно изменили пароль, или запросили новый временный пароль.',
'resetpass-temp-password' => 'Временный пароль:',
+'resetpass-abort-generic' => 'Изменение пароля было прервано расширением.',
# Special:PasswordReset
'passwordreset' => 'Сброс пароля',
-'passwordreset-text' => 'Чтобы сбросить свой пароль, заполните эту форму.',
+'passwordreset-text-one' => 'Заполните эту форму, чтобы сбросить свой пароль.',
+'passwordreset-text-many' => '{{PLURAL:$1|Введите одну из частей данных для сброса пароля.}}',
'passwordreset-legend' => 'Сбросить пароль',
'passwordreset-disabled' => 'Сбросы пароля отключены на этой вики.',
'passwordreset-emaildisabled' => 'Функции электронной почты отключены в этой вики.',
-'passwordreset-pretext' => '{{PLURAL:$1||Введите одну из частей данных, показанных ниже}}',
'passwordreset-username' => 'Имя участника:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Просмотреть получившееся письмо?',
Временный пароль: $2',
'passwordreset-emailsent' => 'Отправлено электронное письмо с информацией о сбросе пароля.',
'passwordreset-emailsent-capture' => 'Отправлено электронное письмо с информацией о сбросе пароля, текст которого можно увидеть ниже.',
-'passwordreset-emailerror-capture' => 'Было создано электронное письмо с информацией о сбросе пароля, текст которого можно увидеть ниже. Однако его не удалось отправить по следующей причине: $1',
+'passwordreset-emailerror-capture' => 'Было создано электронное письмо с информацией о сбросе пароля, текст которого можно увидеть ниже, однако его не удалось отправить {{GENDER:$2|участнику|участнице}} по следующей причине: $1',
# Special:ChangeEmail
'changeemail' => 'Изменить адрес электронной почты',
Вероятно, она была удалена.',
'edit-conflict' => 'Конфликт редактирования.',
'edit-no-change' => 'Ваша правка была отклонена, так как в тексте не было сделано изменений.',
+'postedit-confirmation' => 'Ваша правка сохранена.',
'edit-already-exists' => 'Невозможно создать новую страницу.
Она уже существует.',
'defaultmessagetext' => 'Текст по умолчанию',
'invalid-content-data' => 'Недопустимые данные',
'content-not-allowed-here' => 'Содержимое "$1" недопустимо на странице [[$2]]',
'editwarning-warning' => 'Переход на другую страницу может привести к потере сделанных вами изменений.
-Если вы зарегистрированы в системе, то вы можете отключить это предупреждение в разделе «{{int:prefs-editing}}» ваших настроек.',
+Если вы зарегистрированы в системе, то вы можете отключить это предупреждение в разделе «Редактирование» ваших настроек.',
# Content models
'content-model-wikitext' => 'вики-текст',
'searchmenu-legend' => 'Настройки поиска',
'searchmenu-exists' => "'''В этой вики есть страница «[[:$1]]»'''",
'searchmenu-new' => "'''Создать страницу «[[:$1]]» в этом вики-проекте!'''",
-'searchhelp-url' => 'Help:Содержание',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Показать страницы с этим префиксом]]',
'searchprofile-articles' => 'Основные страницы',
'searchprofile-project' => 'Страницы справки и проекта',
'userrights-notallowed' => 'С вашей учётной записи не разрешено добавлять и удалять права участников.',
'userrights-changeable-col' => 'Группы, которые вы можете изменять',
'userrights-unchangeable-col' => 'Группы, которые вы не можете изменять',
+'userrights-conflict' => 'Конфликт прав участника! Пожалуйста, примените изменения заново.',
+'userrights-removed-self' => 'Вы успешно удалили собственные права. Таким образом, вы больше не сможете получить доступ к этой странице.',
# Groups
'group' => 'Группа:',
'right-editusercssjs' => 'правка CSS- и JS-файлов других участников',
'right-editusercss' => 'правка CSS-файлов других участников',
'right-edituserjs' => 'правка JavaScript-файлов других участников',
+'right-editmyusercss' => 'Редактирование файлов CSS пользователя',
+'right-editmyuserjs' => 'Редактировать свои пользовательские JavaScript-файлы',
+'right-viewmywatchlist' => 'Посмотреть свой список наблюдения',
+'right-editmywatchlist' => 'Редактировать свой список наблюдения. Обратите внимание, что некоторые действия будут добавлять страницы даже без такого права.',
'right-rollback' => 'быстрый откат правок последнего участника на определенной странице',
'right-markbotedits' => 'отметка откатываемых правок как правок бота',
'right-noratelimit' => 'нет ограничений по скорости',
'action-userrights-interwiki' => 'изменение прав участников в других вики',
'action-siteadmin' => 'блокировка и разблокировка базы данных',
'action-sendemail' => 'отправка электронных писем',
+'action-editmywatchlist' => 'редактирование вашего списка наблюдения',
+'action-viewmywatchlist' => 'просмотр вашего списка наблюдения',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|изменение|изменения|изменений}}',
'reuploaddesc' => 'Вернуться к форме загрузки',
'upload-tryagain' => 'Отправить изменённое описание файла',
'uploadnologin' => 'Вы не представились системе',
-'uploadnologintext' => 'Вы должны [[Special:UserLogin|представиться системе]],
-чтобы загружать файлы на сервер.',
+'uploadnologintext' => 'Вы должны $1, чтобы загружать файлы на сервер.',
'upload_directory_missing' => 'Директория для загрузок ($1) отсутствует и не может быть создана веб-сервером.',
'upload_directory_read_only' => 'Веб-сервер не имеет прав записи в папку ($1), в которой предполагается хранить загружаемые файлы.',
'uploaderror' => 'Ошибка загрузки файла',
'upload-file-error-text' => 'Внутренняя ошибка при попытке создать временный файл на сервере.
Пожалуйста, обратитесь к [[Special:ListUsers/sysop|администратору]].',
'upload-misc-error' => 'Неизвестная ошибка загрузки',
-'upload-misc-error-text' => 'Неизвестная ошибка загрузки. Пожалуйста, проверьте, что адрес верен, и повторите попытку. Если проблема остаётся, обратитесь к системному администратору.',
+'upload-misc-error-text' => 'Неизвестная ошибка загрузки. Пожалуйста, проверьте, что адрес верен, и повторите попытку. Если проблема остаётся, обратитесь к [[Special:ListUsers/sysop|администратору]].',
'upload-too-many-redirects' => 'URL содержит слишком много перенаправлений',
'upload-unknown-size' => 'Неизвестный размер',
'upload-http-error' => 'Произошла ошибка HTTP: $1',
'notvisiblerev' => 'Версия была удалена',
'watchnochange' => 'За этот период ни одна страница из списка наблюдения не менялась.',
'watchlist-details' => 'В вашем списке наблюдения $1 {{PLURAL:$1|страница|страницы|страниц}}, не считая страниц обсуждения.',
-'wlheader-enotif' => '* Уведомление по эл. почте включено.',
-'wlheader-showupdated' => "* Страницы, изменившиеся с вашего последнего их посещения, выделены '''жирным''' шрифтом.",
+'wlheader-enotif' => 'Уведомления по эл. почте включены.',
+'wlheader-showupdated' => "Страницы, изменившиеся с вашего последнего их посещения, выделены '''жирным''' шрифтом.",
'watchmethod-recent' => 'просмотр последних изменений для наблюдаемых страниц',
'watchmethod-list' => 'просмотр наблюдаемых страниц для последних изменений',
'watchlistcontains' => 'Ваш список наблюдения содержит $1 {{PLURAL:$1|страница|страницы|страниц}}.',
'mycontris' => 'Вклад',
'contribsub2' => 'Вклад $1 ($2)',
'nocontribs' => 'Изменений, соответствующих заданным условиям, найдено не было.',
-'uctop' => '(последняя)',
+'uctop' => '(текущая)',
'month' => 'С месяца (и ранее):',
'year' => 'С года (и ранее):',
'thumbnail-more' => 'Увеличить',
'filemissing' => 'Файл не найден',
'thumbnail_error' => 'Ошибка создания миниатюры: $1',
+'thumbnail_error_remote' => 'Сообщение об ошибке от $1:
+$2',
'djvu_page_error' => 'Номер страницы DjVu вне досягаемости',
'djvu_no_xml' => 'Невозможно получить XML для DjVu',
'thumbnail-temp-create' => 'Не удаётся создать временный файл эскиза',
'modern.css' => '/* Размещённый здесь CSS будет применяться к теме оформления Modern */',
'vector.css' => '/* Размещённый здесь CSS будет применяться к векторной теме оформления */',
'print.css' => '/* Размещённый здесь CSS будет применяться к версии для печати */',
-'handheld.css' => '/* Размещённый здесь CSS-код будет применяться для мобильных устройств, использующих тему оформления, указанную в $wgHandheldStyle */',
'noscript.css' => '/* Размещённый здесь CSS будет применяться для участников с отключенным JavaScript */',
'group-autoconfirmed.css' => '/* Размещённый здесь CSS будет применяться для автоподтверждённых участников */',
'group-bot.css' => '/* Размещённый здесь CSS будет применяться только для ботов */',
'minutes' => '{{PLURAL:$1|$1 минута|$1 минуты|$1 минут}}',
'hours' => '{{PLURAL:$1|$1 час|$1 часа|$1 часов}}',
'days' => '{{PLURAL:$1|$1 день|$1 дня|$1 дней}}',
+'weeks' => '{{PLURAL:$1|$1 неделя|$1 недели|$1 недель}}',
'months' => '{{PLURAL:$1|$1 месяц|$1 месяца|$1 месяцев}}',
'years' => '{{PLURAL:$1|$1 год|$1 года|$1 лет}}',
'ago' => '$1 назад',
'just-now' => 'только что',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|час|часа|часов}} назад',
+'minutes-ago' => '$1 {{PLURAL:$1|минуту|минуты|минут}} назад',
+'seconds-ago' => '$1 {{PLURAL:$1|секунду|секунды|секунд}} назад',
+'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' => 'Формат должен быть следующим:
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath Путь к статье]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath Путь к скрипту]',
+# Special:Redirect
+'redirect' => 'Перенаправление с файла, участника или идентификатора версии',
+'redirect-legend' => 'Перенаправление на файл или страницу',
+'redirect-summary' => 'Эта специальная страница перенаправляет на файл (с имени файла), страницу (с идентификатора версии) или страницу участника (с числового идентификатора участника).',
+'redirect-submit' => 'Перейти',
+'redirect-lookup' => 'Поиск:',
+'redirect-value' => 'Значение:',
+'redirect-user' => 'Идентификатор участника',
+'redirect-revision' => 'Версия страницы',
+'redirect-file' => 'Название файла',
+'redirect-not-exists' => 'Значение не найдено',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Поиск одинаковых файлов',
'fileduplicatesearch-summary' => 'Поиск одинаковых файлов по хэш-коду.',
'htmlform-selectorother-other' => 'Иное',
'htmlform-no' => 'Нет',
'htmlform-yes' => 'Да',
+'htmlform-chosen-placeholder' => 'Выберите вариант',
# SQLite database support
'sqlite-has-fts' => '$1 с поддержкой полнотекстового поиска',
'oct' => 'окт',
'nov' => 'нов',
'dec' => 'дец',
+'january-date' => '$1. януара',
+'february-date' => '$1. фебруара',
+'march-date' => '$1. марца',
+'april-date' => '$1. апріля',
+'may-date' => '$1. мая',
+'june-date' => '$1. юна',
+'july-date' => '$1. юла',
+'august-date' => '$1. авґуста',
+'september-date' => '$1. септембра',
+'october-date' => '$1. октобра',
+'november-date' => '$1. новембра',
+'december-date' => '$1. децембра',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Катеґорія|Катеґорії}}',
'create-this-page' => 'Створити тоту сторінку',
'delete' => 'Вымазати',
'deletethispage' => 'Змазати тоту сторінку',
+'undeletethispage' => 'Обновити тоту сторінку',
'undelete_short' => 'Обновити $1 {{PLURAL:$1|верзію|верзії|верзії}}',
'viewdeleted_short' => 'Видїти {{PLURAL:$1|змазанов едітаціёв|$1 змазаны едітації|$1 змазаных едітацій}}',
'protect' => 'Всокотити',
'disclaimers' => 'Вылучіня одповідности',
'disclaimerpage' => 'Project:Вылучіня одповідности',
'edithelp' => 'Поміч едітованя',
-'edithelppage' => 'Help:Едітованя',
'helppage' => 'Help:Обсяг',
'mainpage' => 'Головна сторінка',
'mainpage-description' => 'Головна сторінка',
'directorycreateerror' => 'Не мож вытворити адресарь «$1».',
'filenotfound' => 'Не было можне найти файл «$1».',
'fileexistserror' => 'Не дасть ся записати до файлу «$1»: файл екзістує.',
-'unexpected' => 'Неочекавана годнота: «$1»=«$2».',
+'unexpected' => 'Несподїване значіня: «$1»=«$2».',
'formerror' => 'Хыба: небыло можне одослати формуларь',
'badarticleerror' => 'Тота дїя не може быти выконана на тій сторінцї.',
'cannotdelete' => 'Не є можне вымазати сторінку або файл "$1".
'namespaceprotected' => 'Не маєте права едітовати сторінкы в просторї назв «$1».',
'customcssprotected' => 'Не маєте права едітовати тоту сторінку з CSS, бо обсягує персоналны наставлїна іншого хоснователя.',
'customjsprotected' => 'Не маєте права едітовати тоту сторінку з JavaScript-ом, бо обсягує персоналны наставлїна іншого хоснователя.',
+'mycustomcssprotected' => 'Не мате права на управы той CSS сторінкы.',
+'mycustomjsprotected' => 'Не мате права на едітованя той JavaScript сторінкы.',
'ns-specialprotected' => 'Шпеціалны сторінкы не є можне едітовати.',
'titleprotected' => "Створїня сторінкы з таков назвов было заборонене хоснователём [[User:$1|$1]] з причінов: ''$2''.",
'filereadonlyerror' => "Не годно змінити файл „$1“, бо архів файлів „$2“ є теперь лем на чітаня.
'cannotchangeemail' => 'В тій вікі не годен мінити імейловы адресы.',
'emaildisabled' => 'Сесь сервер не годен одосылати імейлы.',
'accountcreated' => 'Конто вытворене',
-'accountcreatedtext' => 'Конто хоснователя $1 было вытворене.',
+'accountcreatedtext' => 'Конто хоснователя [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) было створене.',
'createaccount-title' => 'Вытвориня конта про {{SITENAME}}',
'createaccount-text' => 'Хтось створив про Вас конто «$2» на сервері проєкту {{SITENAME}} ($4) з геслом «$3», і зазначів вашу адресу електронічной пошты. Мали бы сьте ся што найскоре приголосити і змінити гесло.
# Special:PasswordReset
'passwordreset' => 'Ресет гесла',
-'passwordreset-text' => 'Выпиште тот формуларь, жебы ся вам могло обновити гесло',
+'passwordreset-text-one' => 'Выпиште тот формуларь, жебы сьте могли здобыти нове гесло',
+'passwordreset-text-many' => '{{PLURAL:$1|На здобытя нового гесла напиште єдно з даных.}}',
'passwordreset-legend' => 'Знову наставити гесло',
'passwordreset-disabled' => 'Зновунаставлїня гесла є на тій вікі заказане',
'passwordreset-emaildisabled' => 'Функції електронічной пошты были выпнуы на тій вікі.',
-'passwordreset-pretext' => '{{PLURAL:$1||Задайте єден з дат ниже}}',
'passwordreset-username' => 'Мено хоснователя:',
'passwordreset-domain' => 'Домена:',
'passwordreset-capture' => 'Посмотрити выслїдный імейл?',
'passwordreset-capture-help' => 'Кідь означіте тото поличко, буде імейл (з дочасным геслом) оркем посланя хоснователёви указаный і вам.',
'passwordreset-email' => 'Адреса електронічной пошты:',
'passwordreset-emailtitle' => 'Детайлы конта на {{SITENAME}}',
-'passwordreset-emailtext-ip' => 'Дахто (може вы, з IP адресы $1) пожадав о наставлїня гесла вашому
-конту на {{grammar:6sg|{{SITENAME}}}} ($4). К тій адресї {{PLURAL:$3|є спрягнуте наступне конто|суть спрягнуты наступны конта}}:
+'passwordreset-emailtext-ip' => 'Дахто (може Вы, з IP адресы $1) попросив о наставлїня нового гесла до вашого конта на {{grammar:6sg|{{SITENAME}}}} ($4). З тов адресов {{PLURAL:$3|є повязане наступне конто|суть повазяны слїдуючі конта}}:
$2
-{{PLURAL:$3|Тот дочасне гесло|Тоты дочасны гесла}} кінчать{{PLURAL:$5|за єден день|за $5 днїв|за $5 днїв}}.
-Нынї бы сьте ся мав(а) приголосити і зволити собі нове гесло. Як тоту пожадавку
-послав дахто другый або сьте собі на своє старе гесло спомянув(а), і не хочете го
-змінити, можете тото повідомлїня іґноровати та дале хосновати старе гесло.',
+{{PLURAL:$3|Тото дочасне гесло|Тоты дочасны гесла}} стануть неплатныма {{PLURAL:$5|за день|за $5 днї|за $5 днїв}}.
+Теперь бы хотїло, бы сьте ся приголосили та зволлил нове гесло. Кідь тоту просьбу післав хтось другый або сьте ся на старе гесло роспамнятали і не хочете го змінити, можете тото повідомлїня іґноровати та дале хосновати старе гесло.',
'passwordreset-emailtext-user' => '{{gender:$1|Хоснователь|Хоснователька|Хоснователь}} $1 {{grammar:2sg|{{SITENAME}}}} {{gender:$1|попросив|попросила|попросив}} о наставлїня нового гесла к вашому
конту на {{grammar:6sg|{{SITENAME}}}} ($4). К тій адресї {{PLURAL:$3|є спряжене наступне конто|суть спряжены наступну конта}}:
Дочасне гесло: $2',
'passwordreset-emailsent' => 'Імейл з геслом быв посланый.',
'passwordreset-emailsent-capture' => 'Быв выґенерованый імейл з геслом, што є вказаный ниже.',
-'passwordreset-emailerror-capture' => 'Быв выґенерованый імейл з геслом, котрый є указаный ниже, але одослати хоснователёви ся го не вдало: $1',
+'passwordreset-emailerror-capture' => 'Быв выґенерованый імейл з геслом, котрый є указаный ниже, але ся го не вдало загнати {{GENDER:$2|хоснователёви|хосновательцї}}: $1',
# Special:ChangeEmail
'changeemail' => 'Зміна імейловой адресы',
Асі была змазана.',
'edit-conflict' => 'Конфлікт едітованя.',
'edit-no-change' => 'Ваша едітація была іґнорована, бо ся не зробила жадна зміна тексту.',
+'postedit-confirmation' => 'Ваше едітованя было уложене.',
'edit-already-exists' => 'Не вдало ся створити нову сторінку, бо она уж існує.',
'defaultmessagetext' => 'Преднаставленый текст повідомлїня',
'content-failed-to-parse' => 'Не вдало ся проаналізовати $2 як тіп $1: $3',
'searchmenu-legend' => 'Параметры гляданя',
'searchmenu-exists' => "'''У тій вікі є сторінка з назвов «[[:$1]]»'''",
'searchmenu-new' => "'''Створити сторінку «[[:$1]]» у тій вікі!'''",
-'searchhelp-url' => 'Help:Обсяг',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Вказати сторінкы з тым префіксом]]',
'searchprofile-articles' => 'Статї',
'searchprofile-project' => 'Сторінкы помочі і проєкту',
'powersearch-togglenone' => 'Жадный',
'search-external' => 'Екстерне гляданя',
'searchdisabled' => '<p>Перебачте. Повнотекстове гляданя є дочасно недоступне. Затля можете спробовати гляданя Google; є але можне, же ёго резултаты не мусять быти актуалны.</p>',
-'search-error' => 'Ð\9fÑ\96д Ñ\87аÑ\81 глÑ\8fданÑ\8f Ñ\81Ñ\8f Ñ\82Ñ\80аÑ\84ила Ñ\85Ñ\8bба',
+'search-error' => 'Як Ñ\81Ñ\8f глÑ\8fдало Ñ\82Ñ\80аÑ\84Ñ\96ла Ñ\81Ñ\8f Ñ\85Ñ\8bба: $1',
# Preferences page
'preferences' => 'Наставлїня',
'userrights-changeable-col' => 'Ґрупы, котры можете змінити',
'userrights-unchangeable-col' => 'Ґрупы, котры не можете змінити',
'userrights-conflict' => 'Конфлікт прав хоснователїв! Учіньте потрібны зміны іщі раз.',
+'userrights-removed-self' => 'Вы успішно позбавили ся властных прав. Зато уж веце не мате приступ до той сторінкы.',
# Groups
'group' => 'Ґрупа:',
'right-editusercssjs' => 'Едітованя CSS і JS файлів іншых хоснователїв',
'right-editusercss' => 'Едітованя CSS файлів іншых хоснователїв',
'right-edituserjs' => 'Едітованя JS файлів іншых хоснователїв',
+'right-editmyusercss' => 'Едітовати вашы властны хосновательскы CSS файлы.',
+'right-editmyuserjs' => 'Едітовати вашы властны хосновательскы JavaScript файлы',
'right-rollback' => 'Швыдкый реверт управ послїднёго хоснователя едітуючого дану сторінку',
'right-markbotedits' => 'Означованя ревертів як едітованя робота',
'right-noratelimit' => 'Не має обмеджіня в швыдкости',
Моменталны наставлїня про сторінку : '''$1''':",
'protect-cascadeon' => 'Тота сторінка є теперь хранена, бо є загорнута {{PLURAL:$1|до зазначеной сторінкы ніже, на яку|до ниже зазначеных сторінок, на якы}} становлена каскадова охрана. Вы можете змінити рівень охраны той сторінкы, але тото не буде впливати на каскадову охрану.',
'protect-default' => 'Дозволити вшыткым хоснователям',
-'protect-fallback' => 'Ð\9fоÑ\80Ñ\82Ñ\80Ñ\96бнÑ\8b "$1" пÑ\80ава',
-'protect-level-autoconfirmed' => 'Ð\91локоваÑ\82и новÑ\8bÑ\85 Ñ\96 незаÑ\80еÒ\91Ñ\96Ñ\81Ñ\82Ñ\80ованÑ\8bÑ\85 Ñ\85оÑ\81новаÑ\82елÑ\97в',
-'protect-level-sysop' => 'Ð\9bем адмÑ\96нÑ\96Ñ\81Ñ\82Ñ\80аÑ\82оÑ\80Ñ\8b',
+'protect-fallback' => 'Ð\94озволено лем Ñ\85оÑ\81новаÑ\82елÑ\8fм з пÑ\80авом â\80\9e$1â\80\9c',
+'protect-level-autoconfirmed' => 'Ð\94озволиÑ\82и лем авÑ\82омаÑ\82Ñ\96Ñ\87но поÑ\82веÑ\80дженÑ\8bм Ñ\85оÑ\81новаÑ\82елÑ\8fм',
+'protect-level-sysop' => 'Ð\94озволено лем адмÑ\96нÑ\96Ñ\81Ñ\82Ñ\80аÑ\82оÑ\80ам',
'protect-summary-cascade' => 'каскадовый',
'protect-expiring' => 'кінчіть $1 (UTC)',
'protect-expiring-local' => 'кінчіть ся $1',
'mycontris' => 'Приспівкы',
'contribsub2' => 'Приспівок $1 ($2)',
'nocontribs' => 'Ненайджены жадны зміны за тыма крітеріями.',
-'uctop' => ' (послїдня)',
+'uctop' => '(остатня)',
'month' => 'Од місяця (і скоре):',
'year' => 'Од року (і скоре):',
'proxyblocksuccess' => 'Готово.',
'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:|заблокованый|заблокована|заблокованый}}',
# Move page
'move-page' => 'Переменовати „$1“',
'move-page-legend' => 'Переменовати сторінку',
-'movepagetext' => "ХоÑ\81нÑ\83вÑ\87Ñ\96 Ñ\84оÑ\80мÑ\83 ниже, можеÑ\82е пеÑ\80еменоваÑ\82и Ñ\81Ñ\82оÑ\80Ñ\96нкÑ\83, Ñ\94днÑ\8bм Ñ\80азом перемістивши на нове місце і лоґ єй едітовань.
-СÑ\82аÑ\80а назва Ñ\81Ñ\82ане пеÑ\80енапÑ\80Ñ\8fмлинÑ\91м на новÑ\83 назвÑ\83.
-Можете автоматично обновити напрямлиня на стару назву.
-Кідь вы тото не зробите, просиме Вас, перевірте наявність [[Special:DoubleRedirects|подвойных]] ці [[Special:BrokenRedirects|розорваных]] напрямлїнь.
+'movepagetext' => "ХоÑ\81нÑ\83вÑ\87Ñ\96 Ñ\84оÑ\80мÑ\83 ниже, можеÑ\82е пеÑ\80еменоваÑ\82и Ñ\81Ñ\82оÑ\80Ñ\96нкÑ\83, Ñ\82акой перемістивши на нове місце і лоґ єй едітовань.
+Стара назва стане напрямлинём на нову назву.
+Можете автоматично обновити напрямлїня на стару назву.
+Кідь вы тото не зробите, просиме Вас, перевірте [[Special:DoubleRedirects|подвойны]] ці [[Special:BrokenRedirects|розорваны]] напрямлїня.
Вы одповідате за то, жебы одказы і надале вказовали там, де мають.
-Уважте, же сторінка '''не''' буде переменована, кідь сторінка з новов назвов уж екзістує, окрем того, коли она порожня або є напрямлїнём, а лоґ єй едітовань порожнїй.
-То знаÑ\87Ñ\96Ñ\82Ñ\8c, же вÑ\8b можеÑ\82е веÑ\80нÑ\83Ñ\82и Ñ\81Ñ\82оÑ\80Ñ\96нÑ\86Ñ\97 Ñ\81Ñ\82аÑ\80Ñ\83 назвÑ\83, кÑ\96дÑ\8c вÑ\8b пеÑ\80еменовали Ñ\94й помÑ\8bлково, але вÑ\8b не можеÑ\82е пеÑ\80епиÑ\81аÑ\82и екзÑ\96Ñ\81Ñ\82уючу сторінку.
+Уважте, же сторінка '''не''' буде переменована, кідь сторінка з новов назвов уж існує, окрем того, коли она порожня або є напрямлїнём, а лоґ єй едітовань порожнїй.
+То знаÑ\87Ñ\96Ñ\82Ñ\8c, же вÑ\8b можеÑ\82е веÑ\80нÑ\83Ñ\82и Ñ\81Ñ\82оÑ\80Ñ\96нÑ\86Ñ\97 Ñ\81Ñ\82аÑ\80Ñ\83 назвÑ\83, кÑ\96дÑ\8c вÑ\8b пеÑ\80еменовали Ñ\94й ненаÑ\80оком, але вÑ\8b не можеÑ\82е пеÑ\80епиÑ\81аÑ\82и Ñ\96Ñ\81нуючу сторінку.
'''ВАРОВАНЯ!'''
Тота дїя може ся стати причінов серіозных а неочекованых змін популарных сторінок.
'thumbnail-more' => 'Звекшыти',
'filemissing' => 'Файл хыбить',
'thumbnail_error' => 'Хыба створїня нагляду: $1',
+'thumbnail_error_remote' => 'Хыбове голошіня з {{grammar:2sg|$1}}:
+$2',
'djvu_page_error' => 'Сторінка DjVu мімо россяг',
'djvu_no_xml' => 'Створїня XML про файл DjVu ся не вдало.',
'thumbnail-temp-create' => 'Дочасный файл нагляду негодно было створити',
'pageinfo-robot-noindex' => 'Не індексує ся',
'pageinfo-views' => 'Чісло переглядів',
'pageinfo-watchers' => 'Кількость слїдуючіх сторінку',
+'pageinfo-few-watchers' => 'Менше як $1 {{PLURAL:$1|слїдуючій|слїдуючі|слїдуючіх}}',
'pageinfo-redirects-name' => 'Напрямлїня на гевсю сторінку',
'pageinfo-subpages-name' => 'Підсторінкы гевсёй сторінкы',
'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|напрямлїня}}; $3 {{PLURAL:$3|ненапрямлїня}})',
'pageinfo-magic-words' => '{{PLURAL:$1|Маґічне слово|Маґічны слова}} ($1)',
'pageinfo-hidden-categories' => '{{PLURAL:$1|Скрыта катеґорія|Скрыты катеґорії}} ($1)',
'pageinfo-templates' => '{{PLURAL:$1|Хоснована шаблона|Хоснованы шаблоны}} ($1)',
+'pageinfo-transclusions' => '{{PLURAL:$1|Сторінка, до котрой|Сторінкы, до котрых}} є тота сторінка вложена ($1)',
'pageinfo-toolboxlink' => 'Інформації о сторінцї',
'pageinfo-redirectsto' => 'Напрямлює на',
'pageinfo-redirectsto-info' => 'інформація',
'pageinfo-protect-cascading' => 'Одты ся почінать каскадна охорона',
'pageinfo-protect-cascading-yes' => 'Гей',
'pageinfo-protect-cascading-from' => 'Каскадна охорона ся почінать гев',
+'pageinfo-category-info' => 'Інформація о катеґорії',
+'pageinfo-category-pages' => 'Кількость сторінок',
+'pageinfo-category-subcats' => 'Кількость підкатеґорій',
+'pageinfo-category-files' => 'Кількость файлів',
# Patrolling
'markaspatrolleddiff' => 'Означіти як перевірене',
'minutes' => '{{PLURAL:$1|$1 минута|$1 минуты|$1 минут}}',
'hours' => '{{PLURAL:$1|$1 година|$1 годины|$1 годин}}',
'days' => '{{PLURAL:$1|$1 день|$1 днї|$1 днїв}}',
+'weeks' => '{{PLURAL:$1|$1 тыждень|$1 тыжднї|$1 тыжднїв}}',
+'months' => '{{PLURAL:$1|$1 місяць|$1 місяцї|$1 місяцїв}}',
+'years' => '{{PLURAL:$1|$1 рік|$1 рокы|$1 років}}',
'ago' => '$1 тому',
'just-now' => 'акурат теперь',
+# Human-readable timestamps
+'hours-ago' => 'перед $1 {{PLURAL:$1|годинов|годинами}}',
+'minutes-ago' => '$1 {{PLURAL:$1|минуту|минуты|минут}} тому',
+'seconds-ago' => '$1 {{PLURAL:$1|секунду|секунды|секунд}} тому',
+'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' => 'Формат має быти наступным:
'version-entrypoints-header-entrypoint' => 'Вступный пункт',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect' => 'Напрямлїня за файлом, хоснователям або ID ревізії',
+'redirect-legend' => 'Напрямити на файл або сторінку',
+'redirect-summary' => 'Тота шпеціална сторінка напрямує на файл (по назві), сторінку (по ID ревізії) або хоснователя (по чіселнім хоснователёвім ID).',
+'redirect-submit' => 'Перейти',
+'redirect-lookup' => 'Найти:',
+'redirect-value' => 'Значіня',
+'redirect-user' => 'ID хоснователя',
+'redirect-revision' => 'Ревізія сторінкы',
+'redirect-file' => 'Назва файлу',
+'redirect-not-exists' => 'Значіня ся не нашло',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Гляданя дуплікатных файлів',
'fileduplicatesearch-summary' => 'Гляданя дупліцітных файлів ся базує на їх геш функції.',
'specialpages-group-highuse' => 'Часто поужываны сторінкы',
'specialpages-group-pages' => 'Спискы сторінок',
'specialpages-group-pagetools' => 'Інштрументы сторінок',
-'specialpages-group-wiki' => 'Ð\92Ñ\96кÑ\96 даÑ\82а і інштрументы',
+'specialpages-group-wiki' => 'Ð\94анÑ\8b і інштрументы',
'specialpages-group-redirects' => 'Напрямлїня',
'specialpages-group-spam' => 'Протиспамовы інштрументы',
'htmlform-submit' => 'Одослати',
'htmlform-reset' => 'Вернути зміны',
'htmlform-selectorother-other' => 'Інше',
+'htmlform-no' => 'Нє',
+'htmlform-yes' => 'Гей',
+'htmlform-chosen-placeholder' => 'Звольте параметер',
# SQLite database support
'sqlite-has-fts' => '$1 з підпоров повнотекстового гляданя',
'sqlite-no-fts' => '$1 без підпоры повнотекстового гляданя',
# New logging system
-'logentry-delete-delete' => '$1 змазав сторінку $3',
-'logentry-delete-restore' => '$1 обновив сторінку $3',
-'logentry-delete-event' => '$1 змінив відимость {{PLURAL:$5|протоколового запису|$5 протоколовых записів}} к сторінцї $3: $4',
-'logentry-delete-revision' => '$1 змінив відимость {{PLURAL:$5|ревізії|$5 ревізій}} на сторінцї $3: $4',
-'logentry-delete-event-legacy' => '$1 змінив відимость протоколовых записів к сторінцї $3',
-'logentry-delete-revision-legacy' => '$1 змінив відимость ревізій на сторінцї $3',
-'logentry-suppress-delete' => '$1 утаїв сторінку $3',
-'logentry-suppress-event' => '$1 тайком змінив відимость {{PLURAL:$5|протоколового запису|$5 протоколовых записів}} к сторінцї $3: $4',
-'logentry-suppress-revision' => '$1 тайком змінив відимость {{PLURAL:$5|ревізії|$5 ревізій}} на сторінцї $3: $4',
-'logentry-suppress-event-legacy' => '$1 тайком змінив відимость протоколовых записів к сторінцї $3',
-'logentry-suppress-revision-legacy' => '$1 тайком змінив відимость ревізій на сторінцї $3',
+'logentry-delete-delete' => '$1 {{GENDER:$2|змазав|змазала}} сторінку $3',
+'logentry-delete-restore' => '$1 {{GENDER:$2|обновив|обновила}} сторінку $3',
+'logentry-delete-event' => '$1 {{GENDER:$2|змінив|змінила}} відимость {{PLURAL:$5|протоколового запису|$5 протоколовых записів}} к сторінцї $3: $4',
+'logentry-delete-revision' => '$1 {{GENDER:$2|змінив|змінила}} відимость {{PLURAL:$5|ревізії|$5 ревізій}} на сторінцї $3: $4',
+'logentry-delete-event-legacy' => '$1 {{GENDER:$2|змінив|змінила}} відимость протоколовых записів к сторінцї $3',
+'logentry-delete-revision-legacy' => '$1 {{GENDER:$2|змінив|змінила}} відимость ревізій на сторінцї $3',
+'logentry-suppress-delete' => '$1 {{GENDER:$2|утаїв|утаїла}} сторінку $3',
+'logentry-suppress-event' => '$1 тайком {{GENDER:$2|змінив|змінила}} відимость {{PLURAL:$5|протоколового запису|$5 протоколовых записів}} к сторінцї $3: $4',
+'logentry-suppress-revision' => '$1 тайком {{GENDER:$2|змінив|змінила}} відимость {{PLURAL:$5|ревізії|$5 ревізій}} на сторінцї $3: $4',
+'logentry-suppress-event-legacy' => '$1 тайком {{GENDER:$2|змінив|змінила}} відимость протоколовых записів к сторінцї $3',
+'logentry-suppress-revision-legacy' => '$1 тайком {{GENDER:$2|змінив|змінила}} відимость ревізій на сторінцї $3',
'revdelete-content-hid' => 'скрыти обсяг',
'revdelete-summary-hid' => 'опис едітованя схованый',
'revdelete-uname-hid' => 'імя хоснователя сховане',
'revdelete-uname-unhid' => 'імя хоснователя одкрыте',
'revdelete-restricted' => 'приданы обмеджіня про адміністраторів',
'revdelete-unrestricted' => 'зняты обмеджіня про адміністраторів',
-'logentry-move-move' => '$1 переменовав сторінку $3 на $4',
-'logentry-move-move-noredirect' => '$1 переменовав сторінку $3 на $4 без створїня напрямлїня',
-'logentry-move-move_redir' => '$1 переменовав сторінку $3 на $4 з вычерянём напрямлїнём',
-'logentry-move-move_redir-noredirect' => '$1 переменовав сторінку $3 на $4 місце напрямлїня без створїня напрямлїня',
-'logentry-patrol-patrol' => '$1 означів ревізію $4 сторінкы $3 як перевірену',
-'logentry-patrol-patrol-auto' => '$1 автоматічно означів ревізію $4 сторінкы $3 як перевірену',
-'logentry-newusers-newusers' => 'Створене хосновательске конто $1',
-'logentry-newusers-create' => 'Створене было хосновательске конто $1',
-'logentry-newusers-create2' => '$1 створив хосновательске конто $3',
-'logentry-newusers-autocreate' => 'Автоматічно было створене конто $1',
+'logentry-move-move' => '$1 {{GENDER:$2|переменовав|переменовала}} сторінку $3 на $4',
+'logentry-move-move-noredirect' => '$1 {{GENDER:$2|переменовав|переменовала}} сторінку $3 на $4 без створїня напрямлїня',
+'logentry-move-move_redir' => '$1 {{GENDER:$2|переменовав|переменовала}} сторінку $3 на $4 з вычерянём напрямлїнь',
+'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2|змінив|змінила}} сторінку $3 на $4 місце напрямлїня без створїня напрямлїня',
+'logentry-patrol-patrol' => '$1 {{GENDER:$2|означів|означіла}} ревізію $4 сторінкы $3 як перевірену',
+'logentry-patrol-patrol-auto' => '$1 автоматічно {{GENDER:$2|означів|означіла}} ревізію $4 сторінкы $3 як перевірену',
+'logentry-newusers-newusers' => 'Было {{GENDER:$2|створене}} хосновательске конто $1',
+'logentry-newusers-create' => 'Было {{GENDER:$2|створене}} хосновательске конто $1',
+'logentry-newusers-create2' => '$1 {{GENDER:$2|створив|створила}} хосновательске конто $3',
+'logentry-newusers-byemail' => '$1 {{GENDER:$2|створив|створила}} хосновательске конто $3, гесло послане было імейлом',
+'logentry-newusers-autocreate' => 'Автоматічно было {{GENDER:$2|створене}} конто $1',
'logentry-rights-rights' => '$1 {{GENDER:$1|змінив|змінила}} членство в ґрупах про $3 із $4 на $5',
'logentry-rights-rights-legacy' => '$1 {{GENDER:$1|змінив|змінила}} членство в ґрупах про $3',
-'logentry-rights-autopromote' => '$1 было автоматічно переведено із $4 в $5',
+'logentry-rights-autopromote' => '$1 {{GENDER:$2|быв автоматічно переведеный|была автоматічно переведана}} з $4 на $5',
'rightsnone' => '(жадне)',
# Feedback
'api-error-ok-but-empty' => 'Внутрїшня хыба: сервер не одповідать.',
'api-error-overwrite' => 'Не є дозволене переписати екзістуючій файл.',
'api-error-stashfailed' => 'Внутрїшня хыба: серверу ся не вдало уложыти дочасный файл.',
+'api-error-publishfailed' => 'Внутрїшня хыба: серверови ся не вдало опубліковати дочасный файл.',
'api-error-timeout' => 'Сервер не одповідав в очекаванім часї.',
'api-error-unclassified' => 'Трафила ся незнама хыба.',
'api-error-unknown-code' => 'Незнама хыба: „$1“',
'duration-centuries' => '$1 {{PLURAL:$1|стороча|стороча|стороч}}',
'duration-millennia' => '$1 {{PLURAL:$1|тісячроча|тісячроча|тісячроч}}',
+# Image rotation
+'rotate-comment' => 'Образчік обернутый о $1 {{PLURAL:$1|ґрадус|ґрадусів}} за цайґером',
+
);
'disclaimers' => 'प्रत्याख्यानम्',
'disclaimerpage' => 'Project:साधारणं प्रत्याख्यानम्',
'edithelp' => 'सम्पादनार्थं सहाय्यम्',
-'edithelppage' => 'Help:सम्पादनम्',
'helppage' => 'Help:आन्तर्यम्',
'mainpage' => 'मुख्यपृष्ठम्',
'mainpage-description' => 'मुख्यपृष्ठम्',
'welcomecreation-msg' => 'भवतः लेखा रचिताऽस्ति।
स्वकीयानां [[Special:Preferences|{{SITENAME}} इष्टतमानां]]. निगदनं मा विस्मर्यताम्।',
'yourname' => 'योजकनामन्:',
+'userlogin-yourname' => 'प्रयोक्तुः नाम',
+'userlogin-yourname-ph' => 'स्वकीयं प्रयोक्तृनाम दीयताम्',
'yourpassword' => 'कूटशब्दः',
+'userlogin-yourpassword-ph' => 'स्वकीयं कूटशब्दं दीयताम्',
+'createacct-yourpassword-ph' => 'कूटशब्दः प्रविश्यताम्',
'yourpasswordagain' => 'कूटशब्दः पुनः लिख्यताम् ।',
+'createacct-yourpasswordagain-ph' => 'कूटशब्दः पुनः प्रविश्यताम्',
'remembermypassword' => 'अस्मिन् सङ्गणके मम प्रवेशः स्मर्यताम् (अधिकतमम् $1 {{PLURAL:$1|दिनम्|दिनानि}})',
+'userlogin-remembermypassword' => 'अहं प्रविष्टमेव तिष्ठेयम्',
'securelogin-stick-https' => 'प्रवेशोपरान्तं एचटीटीपीएस(HTTPS) इत्यनेन सह संबद्धः तिष्ठतु।',
'yourdomainname' => 'भवतः प्रक्षेत्रम्:',
'password-change-forbidden' => 'अस्यां विक्यां निकुञ्चं परिवर्तयितुं न शक्नोति ।',
'logout' => 'निर्गमनम्',
'userlogout' => 'निर्गमनम्',
'notloggedin' => 'नैव प्रविष्टः',
+'userlogin-noaccount' => 'सदस्यता नास्ति किम्?',
'nologin' => 'पूर्वमेव योजकः नास्ति किम् ? $1।',
'nologinlink' => 'सदस्यता प्राप्यताम्',
'createaccount' => 'सदस्यता प्राप्यताम्',
'gotaccount' => 'पूर्वमेव योजकः अस्ति किम् ? $1।',
'gotaccountlink' => 'प्रविश्यताम्',
'userlogin-resetlink' => 'प्रवेशविवरणानि विस्मृतानि किम् ?',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|प्रवेशनार्थं सहायता]]',
+'createacct-join' => 'स्वकीया सूचना अधस्तात् प्रवेश्यताम्।',
'createaccountmail' => 'ईपत्रद्वारा',
'createaccountreason' => 'कारणम्',
+'createacct-reason' => 'कारणम्',
+'createacct-reason-ph' => 'भवान् अन्यां लेखां किमर्थं रचितुमिच्छसि?',
'badretype' => 'भवता प्रदत्ते कूटशब्दे न खलु समाने स्तः। कृपया पुनः लिखतु।',
'userexists' => 'भवतः प्रदत्तः प्रयोक्तृनाम अन्येन प्रयुज्यमानम् अस्ति। कृपया अन्यदेकं प्रयोक्तृनाम चिनोतु।',
'loginerror' => 'प्रवेशने प्रमादः',
# Special:PasswordReset
'passwordreset' => 'कूटशब्द पुनःस्थापनम्',
-'passwordreset-text' => 'भवतः सदस्यताविवरणानि ईपत्रद्वारा प्राप्तुम् इदं प्रपत्रं पूर्यताम् ।',
'passwordreset-legend' => 'कूटशब्द पुनःस्थापनम्',
'passwordreset-disabled' => 'अस्मिन् विक्यां कूटशब्द पुनःस्थापनं असमर्थीकृतमस्ति।',
-'passwordreset-pretext' => '{{PLURAL:$1| |समंकेषु एकम् अधस्यात् प्रविष्टीकरोतु।}}',
'passwordreset-username' => 'योजकनामन्:',
'passwordreset-domain' => 'क्षेत्रम्:',
'passwordreset-capture' => 'फलितरूपम् ईपत्रं किं दृश्यते ?',
'searchmenu-legend' => 'अन्वेषणस्य विकल्पाः ।',
'searchmenu-exists' => 'अस्मिन् विकिमध्ये "[[:$1]]"नामकं पृष्ठं विद्यते।',
'searchmenu-new' => "'''अस्यां विक्यां \"[[:\$1]]\" इति पृष्ठं सृज्यताम्!'''",
-'searchhelp-url' => 'Help: साहाय्यम् : आधेयाः ।',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|एतदुपसर्गयुक्तपुटं पश्यतु ]]',
'searchprofile-articles' => 'आन्तर्यम्',
'searchprofile-project' => 'सहायता प्रकल्पपृष्ठानि च',
'listusers-noresult' => 'योजकः न प्राप्तः ।',
'listusers-blocked' => 'अवरुद्धम् ।',
+# Special:ActiveUsers
+'activeusers' => 'सक्रिययोजकानाम् आवली ।',
+'activeusers-intro' => 'एषा तु गतेषु $1 {{PLURAL:$1|दिनेषु}} कृतकार्याणां योजकाना आवली ।',
+'activeusers-count' => '$1 {{PLURAL:$1|सम्पादनानि}} गतेषु $3 {{PLURAL:$3|दिनेषु}} कृतानि ।',
+'activeusers-from' => 'एतस्मात् आरभमाणान् योजकान् दर्शयतु ।',
+'activeusers-hidebots' => 'स्वयं चालकान् गोपयतु ।',
+'activeusers-hidesysops' => 'प्रशासकान् गोपयतु ।',
+'activeusers-noresult' => 'योजकः न प्राप्तः ।',
+
# Special:ListGroupRights
'listgrouprights' => 'योजकसमूहाधिकाराः ।',
'listgrouprights-summary' => 'अधोदत्ता विकिपरिभाषितस्य सङ्गताभिगम्यताधिकारैः सहिता योजकसमूहस्य आवली । [[{{MediaWiki:Listgrouprights-helppage}}|additional information]]',
'notvisiblerev' => 'अन्ययोजकेन कृतम् अवतरणम् अपमर्जितम् ।',
'watchnochange' => 'दर्शितावधौ अवलोकितपदार्थाः न सम्पादिताः ।',
'watchlist-details' => '{{PLURAL:$1|$1 पृष्ठं|$1 पृष्ठानि}} भवतः अवेक्षणसूच्यां सन्ति, सम्भाषणपृष्ठानि नात्र गणितानि।',
-'wlheader-enotif' => '* विद्युन्मानपत्रस्य सूचनाः सक्रियाः ।',
-'wlheader-showupdated' => '* भवतः सन्दर्शनस्य पश्चात् परिवर्तितानि पुटानि स्थूलाक्षरैः निर्दिष्टानि ।',
+'wlheader-enotif' => 'विद्युन्मानपत्रस्य सूचनाः सक्रियाः ।',
+'wlheader-showupdated' => 'भवतः सन्दर्शनस्य पश्चात् परिवर्तितानि पुटानि स्थूलाक्षरैः निर्दिष्टानि ।',
'watchmethod-recent' => 'अवलोकितपुटानां सद्यः सम्पादनस्य परीक्षणम् ।',
'watchmethod-list' => 'सद्यः सम्पादनार्थम् अवलोकितपुटानां परीक्षणम् ।',
'watchlistcontains' => 'भवतः अवलोकनावली $1 युक्तास्ति ।{{PLURAL:$1|page|pages}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'विस्तारः',
'exif-imagelength' => 'औन्नत्यम्',
'exif-bitspersample' => 'प्रत्येकं भागस्य अंशः ।',
'exif-originalimageheight' => 'कर्तनात्पूरव चित्रस्य औन्नत्यम् ।',
'exif-originalimagewidth' => 'कर्तनात् पूर्वं चित्रस्य व्यासः ।',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'असङ्कोचितम् ।',
'exif-compression-2' => 'CCITT समूहः 3 1- Dimensional Modified Huffman run length encoding',
'exif-compression-3' => 'CCITT समूह ३ फेक्स सङ्केतीकरणम् ।',
'version-entrypoints-header-entrypoint' => 'प्रवेशबिन्दुः ।',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'सञ्चिकापथः ।',
-'filepath-page' => 'सञ्चिका:',
-'filepath-submit' => 'गम्यताम्',
-'filepath-summary' => 'एतद्विशेषपुटं सञ्चिकायाः पूर्णपथं प्रदर्शयति ।
-चित्राणि परिपूर्णसत्वयुतानि दर्शितानि । अन्यसञ्चिकाभेदाः सम्बद्धकार्यकलापैः प्रत्यक्षं आरब्धाः ।',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'प्रतिकृतिसञ्चिकार्थम् अन्विषतु ।',
'fileduplicatesearch-summary' => 'सम्मिश्रमौल्यामूलयुतर्थं प्रतिकृतिसञ्चिकार्थम् अन्विषतु ।',
* @author HalanTul
* @author Kaganer
* @author Meno25
+ * @author Nemo bis
* @author Urhixidur
*/
'oct' => 'Алт',
'nov' => 'Сэт',
'dec' => 'Ахс',
+'january-date' => 'Тохсунньу $1',
+'february-date' => 'Олунньу $1',
+'march-date' => 'Кулун тутар $1',
+'april-date' => 'Муус устар $1',
+'may-date' => 'Ыам ыйын $1',
+'june-date' => 'Бэс ыйын $1',
+'july-date' => 'От ыйын $1',
+'august-date' => 'Атырдьах ыйын $1',
+'september-date' => 'Балаҕан ыйын $1',
+'october-date' => 'Алтынньы $1',
+'november-date' => 'Сэтинньи $1',
+'december-date' => 'Ахсынньы $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категория|Категориялар}}',
'create-this-page' => 'Бу сирэйи ай',
'delete' => 'Соттор',
'deletethispage' => 'Бу сирэйи соттор',
+'undeletethispage' => 'Бу сирэйи сөргүт (төннөр)',
'undelete_short' => 'Төттөрү аҕал {{PLURAL:$1|биир уларытыыны|$1 уларытыылары}}',
'viewdeleted_short' => '{{PLURAL:$1|Соҕотох сотторуллубут көннөрүүнү|$1 сотторуллубут көннөрүүнү}} көрүү',
'protect' => 'Уларыппат гын',
'disclaimers' => 'Бүк охсунуу',
'disclaimerpage' => 'Project:Бүк охсунуу',
'edithelp' => 'Уларытааччыларга көмө',
-'edithelppage' => 'Help:Уларытарга көмө',
'helppage' => 'Help:Көмө',
'mainpage' => 'Сүрүн сирэй',
'mainpage-description' => 'Сүрүн сирэй',
'namespaceprotected' => "Эн '''$1''' аат эйгэтигэр киирэр сирэйдэри уларытар кыаҕыҥ суох.",
'customcssprotected' => 'Эн бу CSS-сирэйи уларытар кыаҕыҥ суох, тоҕо диэтэххэ онтуҥ атын киһи тус бэйэтин туруорууларын таарыйар.',
'customjsprotected' => 'Эн бу JavaScript-сирэйи уларытар кыаҕыҥ суох, тоҕо диэтэххэ онтуҥ атын киһи тус бэйэтин туруорууларын таарыйар.',
+'mycustomcssprotected' => 'CSS-сирэйи уларытар кыаҕыҥ суох эбит.',
+'mycustomjsprotected' => 'Сирэйгэ JavaScript уларытар кыаҕыҥ суох эбит.',
'ns-specialprotected' => '{{ns:special}} ааттаах сирэйдэр уларытыллыбаттар.',
'titleprotected' => "Бу бас тыл оҥоһулларын [[User:$1|$1]] боппут.
Төрүөтэ - ''$2''",
'yourpassword' => 'Киирии тыла:',
'userlogin-yourpassword' => 'Киирии тыл',
'userlogin-yourpassword-ph' => 'Киирии тылгын суруй',
+'createacct-yourpassword-ph' => 'Киирии тылгын суруй',
'yourpasswordagain' => 'Киирии тылгын хатылаа:',
+'createacct-yourpasswordagain' => 'Киирии тылгын бигэргэт',
+'createacct-yourpasswordagain-ph' => 'Киирии тылгын хатылаа',
'remembermypassword' => 'Миигин бу көмпүүтэргэ сигээ ($1 {{PLURAL:$1|күн|күнтэн ордуга суох}})',
-'userlogin-remembermypassword' => 'Ð\94олоÒ\95ойгоÑ\80 Ñ\85аÑ\82аа',
-'userlogin-signwithsecure' => 'Ð\91игÑ\8d Ñ\81иÑ\8dÑ\80бÑ\8dÑ\80и Ñ\82Ñ\83һанан кииÑ\80ии',
+'userlogin-remembermypassword' => 'ТиһиликÑ\82Ñ\8dн Ñ\82аÑ\85Ñ\81Ñ\8bма',
+'userlogin-signwithsecure' => 'Ð\91игÑ\8d Ñ\85олбонÑ\83Ñ\83',
'securelogin-stick-https' => 'Киирэн баран HTTPS нөҥүө холбонууну салгыырга',
'yourdomainname' => 'Эн дөмүөнүҥ:',
'password-change-forbidden' => 'Бу биикигэ киирии тылы уоарытар табыллыбат.',
'gotaccount' => "Бэлиэтэммитиҥ дуо? '''$1'''.",
'gotaccountlink' => 'Аатыҥ',
'userlogin-resetlink' => 'Киирэр тылгын умнубуккун дуо?',
+'userlogin-resetpassword-link' => 'Киирии тылы уларытыы',
'helplogin-url' => 'Help:Бэлиэ-ааты киллэрии',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Бэлиэтэниигэ көмө]]',
+'createacct-join' => 'Аллара суруй.',
+'createacct-emailrequired' => 'Email аадырыс',
+'createacct-emailoptional' => 'Email аадырыс (булгуччута суох)',
+'createacct-email-ph' => 'Эл аадырыскын суруй',
'createaccountmail' => 'Быстах киирии тылы туһаныы уонна ону email-ынан ыытыы',
+'createacct-realname' => 'Дьиҥнээх аатыҥ (булгуччута суох)',
'createaccountreason' => 'Төрүөтэ:',
+'createacct-reason' => 'Төрүөтэ',
+'createacct-reason-ph' => 'Саҥа аатынан тоҕо киирэҕиний',
+'createacct-captcha' => 'Куттал суох буолуутун тургутуу',
+'createacct-imgcaptcha-ph' => 'Үөһэ көстөрү хатылаа',
+'createacct-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}} «cookies» туттар, оттон эн көмпүүтэргэр ону туһанар бобуллубут. Бука диэн «cookies» холбоо, онтон өссө киирэн көр.',
'nocookieslogin' => '{{SITENAME}} дьону билэргэ «cookies» туттар. Эн көмпүүтэргэр «cookies» бобуллубут. Ону холбоон баран өссө киирэн көр.',
'cannotchangeemail' => 'Бу биикигэ бу аакка баайыллыбыт электроннай почта аадырыһа уларытыллар кыаҕа суох эбит.',
'emaildisabled' => 'Бу ситим-сир сурук ыыппат эбит.',
'accountcreated' => 'Саҥа аат иҥэрилиннэ',
-'accountcreatedtext' => 'Кыттааччы $1 диэн ааттанна.',
+'accountcreatedtext' => '$1 диэн ааттаах кыттааччы баар буолла.',
'createaccount-title' => '{{SITENAME}} бырайыакка саҥа аат оҥоруу',
'createaccount-text' => 'Ким эрэ {{SITENAME}} бырайыакка ($4) саҥа $2 ааты бэлиэтээбит. "$2" киирии тыла "$3". Билигин киирэн киирии тылгын уларытыаххын наада.
'resetpass-wrong-oldpass' => 'Киирии тыл сөп түбэспэтэ.
Баҕар уларыппытыҥ буолуо эбэтэр быстах кэмҥэ туттуллар киирии тылы оҥотторбутуҥ буолуо.',
'resetpass-temp-password' => 'Быстах кэмҥэ туттуллар киирии тыл:',
+'resetpass-abort-generic' => 'Киирии тылы уларытыыны кэҥэтии тохтотто.',
# Special:PasswordReset
'passwordreset' => 'Киирии тылы саҥаттан',
-'passwordreset-text' => 'Урукку киирии тылы уларытарга бу форманы толор.',
+'passwordreset-text-one' => 'Урукку киирии тылы уларытарга бу форманы толор.',
'passwordreset-legend' => 'Киирии тылы саҥаттан',
'passwordreset-disabled' => 'Бу биикигэ киирии тылы саҥардыы бобуллубут.',
-'passwordreset-pretext' => '{{PLURAL:$1||Аллара көстөр дааннайдартан биирин талан суруй}}',
+'passwordreset-emaildisabled' => 'Бу биикигэ эл. почтаны туттуу араарыллыбыт',
'passwordreset-username' => 'Кыттааччы:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Суруллубут суругу көрөҕүн дуо?',
Быстах киирии тыл: $2',
'passwordreset-emailsent' => 'Киирии тылы уларытар туһунан сурук барда.',
'passwordreset-emailsent-capture' => 'Киирии тылы уларытар туһунан сурук аллара эмиэ көрдөрүлүннэ.',
-'passwordreset-emailerror-capture' => 'Манна киирии тылы уларытар туһунан сурук көрдөрүлүннэ. Ол эрэн сурук бу төрүөттэн сатаан барбата: $1',
+'passwordreset-emailerror-capture' => 'Манна киирии тылы уларытар туһунан сурук көрдөрүлүннэ. Ол эрэн сурук бу төрүөттэн $2 кыттааччыга сатаан барбата: $1',
# Special:ChangeEmail
'changeemail' => 'Ааадырыһын уларыт',
Арааһа сотуллубут быһыылаах.',
'edit-conflict' => 'Көннөрүүлэр утарсыылара.',
'edit-no-change' => 'Эн көннөрүүҥ киирбэтэ, тоҕо диэтэххэ тугу да уларыппатаххын.',
+'postedit-confirmation' => 'Көннөрүүҥ бигэргэннэ.',
'edit-already-exists' => 'Саҥа сирэйи оҥорор табыллыбат.
Маннык сирэй баар эбит.',
'defaultmessagetext' => 'Туспа этиллибэтэҕинэ суруллар тиэкис',
'content-failed-to-parse' => '$2 иһинээҕитэ $1 көрүҥэр сөп түбэспэт: $3.',
'invalid-content-data' => 'Алҕастаах дааннайдар',
'content-not-allowed-here' => '[[$2]] сирэйгэ "$1" туттуллуо суохтаах',
-'editwarning-warning' => 'Атын сирэйгэ көстөххүнэ билигин оҥорбут уларытыыларыҥ барыта сүтэн хаалыахтара.
-Бэлиэтэммит буоллаҕына, бу сэрэтиини туруорууларыҥ «{{int:prefs-editing}}» сирэйигэр араарыаххын сөп.',
+'editwarning-warning' => 'Атын сирэйгэ көстөххүнэ билигин оҥорбут уларытыыҥ барыта сүтэн хаалыаҕа.
+Бэлиэтэммит буоллаххына, бу сэрэтиини туруорууларыҥ «Уларытыы» салаатыгар араарар кыахтааххын.',
# Content models
'content-model-wikitext' => 'биики-тиэкис',
'searchmenu-legend' => 'Көрдөөһүн туруоруулара',
'searchmenu-exists' => "'''Бу биикигэ бу сирэй маннык ааттаах \"[[\$1]]\"'''",
'searchmenu-new' => "'''Бу биикигэ \"[[:\$1]]\" сирэйи айарга!'''",
-'searchhelp-url' => 'Help:Көмө',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Маннык префикстаах сирэйдэри көрөргө]]',
'searchprofile-articles' => 'Ыстатыйалар истэрэ',
'searchprofile-project' => 'Көмө уонна Бырайыак сирэйдэрэ',
'powersearch-togglenone' => 'Бэлиэтээмэ',
'search-external' => 'Тастан көрдөөһүн',
'searchdisabled' => '{{SITENAME}} көрдүүр тэрилэ араарыллыбыт. Атын көрдүүр системаларынан наадыйар сирэйдэргитин көрдөтүөххүтүн сөп. Ол гынан баран поисковик кээһигэр баар торум эргэрбит буолуон сөп.',
+'search-error' => 'Көрдүүр кэмҥэ алҕас таҕыста: $1',
# Preferences page
'preferences' => 'Уларытыылар',
'userrights-notallowed' => 'Бэлиэтэммит ааккынан атын кыттааччы быраабын уларытар кыаҕыҥ суох эбит.',
'userrights-changeable-col' => 'Эн уларытар кыахтаах бөлөхтөрүҥ',
'userrights-unchangeable-col' => 'Бу бөлөхтөрү уларытар кыаҕыҥ суох',
+'userrights-conflict' => 'Кыттааччы быраабын быһаарарга алҕас таҕыста! Хатылаан көр.',
# Groups
'group' => 'Бөлөх:',
'right-editusercssjs' => 'Атын кыттааччылар CSS- и JS-билэлэрин уларытыы',
'right-editusercss' => 'Атын кыттааччылар CSS-билэлэрин уларытыы',
'right-edituserjs' => 'Атын кыттааччылар JS-билэлэрин уларытыы',
+'right-editmyusercss' => 'Кыттааччы CSS-билэтин уларытыы',
'right-rollback' => 'Кыттааччы оҥорбут көннөрүүлэрин талыллыбыт биир сирэйгэ суох гыныы',
'right-markbotedits' => 'Төннөрүллэр көннөрүүлэри робот уларытыытын курдук бэлиэтээһин',
'right-noratelimit' => 'Нуорманнан хааччахтааһын суох',
'backend-fail-notsame' => 'Майгыннаабат гынан баран маннык ааттаах $1 билэ баар эбит',
'backend-fail-invalidpath' => '$1 - бу суолунан сатаан угуллубат.',
'backend-fail-delete' => '$1 билэни сотор табыллыбата.',
+'backend-fail-describe' => '"$1" билэ метадааннайдарын уларытар табыллыбата.',
'backend-fail-alreadyexists' => '$1 билэ хайыы-үйэ баар эбит.',
'backend-fail-store' => '$1 билэни манна $2 угар табыллыбата.',
'backend-fail-copy' => '$1 билэни манна $2 хатылыыр табыллыбата.',
Ол оннугар ханнык эрэ чопчу сирэйгэ сигэниэхтээхтэр.<br />
Быһаарыы: [[MediaWiki:Disambiguationspage]] халыып баар сирэйдэрэ хас да суолталаах сирэй ахсааныгар киирэллэр.",
+'pageswithprop' => 'Эрдэттэн туруоруулаах сирэйдэр',
+'pageswithprop-legend' => 'Уларытыллыбыт туруоруулаах сирэйдэр',
+'pageswithprop-text' => 'Манна сорох туруоруулара уларытыллыбыт сирэйдэр көстүбүттэр.',
+'pageswithprop-prop' => 'Туруоруу аата:',
+'pageswithprop-submit' => 'Толор',
+
'doubleredirects' => 'Хос көһөрөөһүн',
'doubleredirectstext' => 'Бу сирэйгэ атын сиргэ утаарар хос утаарыылар тиһиктэрэ көстөр.
Хас устуруока аайы бастакы уонна иккис утаарыга сигэ баар, ону таһынан иккис утаарыыга баар сирэй аадырыһа (аата) баар, ол аата бастакы утаарыы дьиҥинэн ханна утаарыахтааҕа көстөр.
'notvisiblerev' => 'Торум сотуллубут',
'watchnochange' => 'Кэтиир сирэйдэргиттэн этиллибит кэмҥэ биир да уларыйбатах.',
'watchlist-details' => '{{PLURAL:$1|$1 сирэйи кэтиигин|$1 сирэй кэтэбилгэ сылдьар}}, ырытыы сирэйдэрин аахпатахха.',
-'wlheader-enotif' => '* эл. почтанан биллэрии холбоммут.',
-'wlheader-showupdated' => "* Бүтэһик киириигит кэннэ уларыйбыт сирэйдэр '''модьу''' бичигинэн бэлиэтэннилэр",
+'wlheader-enotif' => 'эл. почтанан биллэрии холбоммут.',
+'wlheader-showupdated' => "Бүтэһик киириигит кэннэ уларыйбыт сирэйдэр '''модьу''' бичигинэн бэлиэтэннилэр",
'watchmethod-recent' => 'кэтээн көрүү бүтэһик уларыйыыларын көрүү',
'watchmethod-list' => 'кэтээһин бүтэһик уларыйыылара',
'watchlistcontains' => '$1 сирэйи кэтээн көрөҕүн.',
'enotif_mailer' => '{{SITENAME}} Биллэрэр Сулууспата',
'enotif_reset' => 'Бары сирэйдэри көрбүтүм курдук бэлиэтээ',
'enotif_impersonal_salutation' => '{{SITENAME}} кыттааччыта',
+'enotif_subject_deleted' => '«{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} соппут - $2',
+'enotif_subject_created' => '«{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} айбыт - $2',
+'enotif_subject_moved' => '«{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} аатын уларыппыт - $2',
+'enotif_subject_restored' => '«{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} сөргүппүт - $2',
+'enotif_subject_changed' => '«{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} уларыппыт - $2',
+'enotif_body_intro_deleted' => '$PAGEEDITDATE «{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} соппут - $2, көр. $3.',
+'enotif_body_intro_created' => '«{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} айбыт - $2, билиҥҥи барылын манна көр: $3',
+'enotif_body_intro_moved' => '$PAGEEDITDATE «{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} аатын уларыппыт - $2, билиҥҥи барылын манна көр: $3',
+'enotif_body_intro_restored' => '$PAGEEDITDATE «{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} соппут - $2, билиҥҥи барылын манна көр: $3',
+'enotif_body_intro_changed' => '$PAGEEDITDATE «{{SITENAME}}» бырайыак «$1» ааттаах сирэйин бу {{gender:$2|кыттааччы|кыттааччы}} айбыт - $2, билиҥҥи барылын манна көр: $3',
'enotif_lastvisited' => 'Бутэһик киирииҥ кэнниттэн оҥоһуллубут уларыйыылары барытын көрөргө манна киир: $1.',
'enotif_lastdiff' => 'Уларытыыны манна көрүҥ: $1.',
'enotif_anon_editor' => 'ааттамматах кыттааччы $1',
'prot_1movedto2' => '[[$1]] аата манныкка уларытылынна: [[$2]]',
'protect-badnamespace-title' => 'Көмүскэммэт аат дала',
'protect-badnamespace-text' => 'Бу аат далын сирэйдэрэ көмүскэниллэр кыахтара суохю',
+'protect-norestrictiontypes-text' => 'Бу сирэй көмүскэниллэр кыаҕа суох.',
+'protect-norestrictiontypes-title' => 'Көмүскэниллибэт сирэй',
'protect-legend' => 'Уларытыы таһымын бигэргэт',
'protectcomment' => 'Төрүөтэ:',
'protectexpiry' => 'Бүтүөхтээх:',
'undeletedrevisions' => '{{PLURAL:$1|1 уларытыы|$1 уларытыы}} төннөрүлүннэ',
'undeletedrevisions-files' => '{{PLURAL:$1|1 уларытыы|$1 уларытыы}} уонна {{PLURAL:$2|1 билэ|$2 билэ}} төннөрүлүннэ',
'undeletedfiles' => '{{PLURAL:$1|1 билэ|$1 билэ}} төннөрүлүннэ',
-'cannotundelete' => 'Төннөрүллүбэтэ; баҕар ким эрэ номнуо төннөрө охсубута буолуо.',
+'cannotundelete' => 'Сөргүтүү алҕаһа:
+$1',
'undeletedpage' => "'''$1 төннөрүлүннэ (төннөрүллүбүт)'''
Кэнники сотуулар уонна төннөрүүлэр испииһэктэрин [[Special:Log/delete|манна]] көрүөххүн сөп.",
'mycontris' => 'Суруйуу тиһигэ',
'contribsub2' => 'Вклад $1 ($2)',
'nocontribs' => 'Эппит критерийгэр эппиэттиир уларытыылар көстүбэтилэр.',
-'uctop' => '(бүтэһик)',
+'uctop' => '(билиҥҥи)',
'month' => 'Ыйтан бэттэх:',
'year' => 'Сылтан бэттэх:',
'proxyblocksuccess' => 'Сатанна.',
'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' => 'Атын кыттааччылары хааччахтыыр да, хааччахтарын да устар кыаҕыҥ суох, тоҕо диэтэххэ бэйэҥ хааччахтааххын',
'immobile-target-namespace-iw' => 'Интервики сигэтэ ааты уларытыыга туһаныллыбат.',
'immobile-source-page' => 'Бу сирэйи аатын уларытар табыллыбат.',
'immobile-target-page' => 'Сирэйгэ бу ааты иҥэрэр табыллыбат.',
+'bad-target-model' => 'Маны $1 манна $2 уларытар табыллыбат: дааннайдарын көрүҥнэрэ тус-туһунаннар.',
'imagenocrossnamespace' => 'Ойууга атын аат далыттан аат биэрэр сатаммат',
'nonfile-cannot-move-to-file' => 'Сирэйдэри билэ гынан ааттарын уларытар табыллыбат',
'imagetypemismatch' => 'Билэ саҥа расширенията тиибигэр сөп түбэспэт',
'thumbnail-more' => 'Улаатыннар',
'filemissing' => 'Билэ көстүбэтэ',
'thumbnail_error' => 'Кыра ойууну оҥоруу сатаммата: $1',
+'thumbnail_error_remote' => '$1 алҕас туһунан биллэрдэ:
+$2',
'djvu_page_error' => 'DjVu сирэй тиһик таһыгар эбит',
'djvu_no_xml' => 'DjVu билэтигэр аналлаах XML кыайан ылыллыбата',
'thumbnail-temp-create' => 'Эскииз быстах билэтин оҥорор табыллыбата',
'pageinfo-default-sort' => 'Наардааһын күлүүһэ',
'pageinfo-length' => 'Сирэй устата (баайтынан)',
'pageinfo-article-id' => 'Сирэй нүөмэрэ',
+'pageinfo-language' => 'Сирэй омугун тыла',
'pageinfo-robot-policy' => 'Көрдүүр сулууспалар туруктара',
'pageinfo-robot-index' => 'Индекстанар',
'pageinfo-robot-noindex' => 'Индекстаммат',
'pageinfo-views' => 'Көрүү ахсаана',
'pageinfo-watchers' => 'Кэтээнэр сирэйдэр ахсааннара',
+'pageinfo-few-watchers' => '$1 кыттааччыттан аҕыйах кэтээччи',
'pageinfo-redirects-name' => 'Бу сирэйгэ утаарыы ахсаана',
'pageinfo-subpages-name' => 'Сирэй аннынааҕы сирэйдэр ахсааннара',
'pageinfo-subpages-value' => '$1 ($2 утаарыы; $3 көннөрү (утаарыыта суох))',
'pageinfo-magic-words' => 'Аптаах {{PLURAL:$1|тыл|тыллар}} ($1)',
'pageinfo-hidden-categories' => 'Кистэммит {{PLURAL:$1|категория|категориялар}} ($1)',
'pageinfo-templates' => '$1 халыыптаах ($1)',
+'pageinfo-transclusions' => 'Киллэриллэр {{PLURAL:$1|сирэйдэр|сирэйдэри}} ($1)',
+'pageinfo-toolboxlink' => 'Сирэй туһунан',
+'pageinfo-redirectsto' => 'Утаарыы',
+'pageinfo-redirectsto-info' => 'сибидиэнньэлэр',
+'pageinfo-contentpage' => 'Ис хоһоонноох сирэй курдук ааҕыллар',
'pageinfo-contentpage-yes' => 'Сөп',
'pageinfo-protect-cascading' => 'Каскаадынан көмүскэл мантан',
'pageinfo-protect-cascading-yes' => 'Сөп',
'pageinfo-protect-cascading-from' => 'Каскадынан көмүскэл мантан',
+'pageinfo-category-info' => 'Категория туһунан',
+'pageinfo-category-pages' => 'Сирэй ахсаана',
+'pageinfo-category-subcats' => 'Субкатегория ахсаана',
+'pageinfo-category-files' => 'Билэ ахсаана',
# Skin names
'skinname-modern' => 'Билиҥҥи',
'markedaspatrollederror' => 'Бэрэбиэркэлэммит курдук бэлиэтиир сатаммата',
'markedaspatrollederrortext' => 'Бэрэбиэркэлэммит курдук бэлиэтииргэ торуму чопчу талыахтааххын.',
'markedaspatrollederror-noautopatrol' => 'Бэйэҥ уларытыыгын бэрэбиэркэлэммит курдук оҥороруҥ сатаммат.',
+'markedaspatrollednotify' => 'Бу «$1» сирэйгэ оҥоһуллубут уларытыы тургутуллубут курдук бэлиэтэммит.',
+'markedaspatrollederrornotify' => 'Бэлиэтэммит курдук бэлиэтиир сатаммата.',
# Patrol log
'patrol-log-page' => 'Бэрэбиэркэ сурунаала',
'file-nohires' => 'Бу ойуу маннааҕар улахан торума суох.',
'svg-long-desc' => 'SVG билэ, номинальнай кээмэйэ $1 × $2 пииксэл, билэ кээмэйэ: $3',
'svg-long-desc-animated' => '$1 × $2 пииксэллээх анимацияламмыт SVG-билэ, кээмэйэ: $3',
+'svg-long-error' => 'Алҕастаах SVG-билэ: $1',
'show-big-image' => 'Ойуу бэйэтин толору кээмэйэ',
'show-big-image-preview' => 'Бигэргэтиэх иннинэ көрүү улахана: $1.',
'show-big-image-other' => 'Атын {{PLURAL:$2|түмүк|түмүктэр}}: $1.',
'minutes' => '{{PLURAL:$1|$1 мүнүүтэ|$1 мүнүүтэ}}',
'hours' => '{{PLURAL:$1|$1 чаас|$1 чаас}}',
'days' => '{{PLURAL:$1|$1 күн|$1 күн}}',
+'months' => '$1 ый',
+'years' => '$1 сыл',
'ago' => '$1 ынараа өттүгэр',
+'just-now' => 'сибилигин',
+
+# 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' => 'Формаата маннык буолуохтаах:
# Scary transclusion
'scarytranscludedisabled' => '[Interwiki transcluding араҕыста]',
'scarytranscludefailed' => '[$1 халыыбы туһанар табыллыбата]',
+'scarytranscludefailed-httpstatus' => '[Манна $1 анаммыт халыыбы холбуур сатаммата: HTTP $2]',
'scarytranscludetoolong' => '[URL наһаа уһун]',
# Delete conflict
'version-license' => 'Лиссиэнзийэ',
'version-poweredby-credits' => "Бу биики бу движокка олоҕурар '''[//www.mediawiki.org/ MediaWiki]''', copyright © 2001-$1 $2.",
'version-poweredby-others' => 'атыттар',
+'version-credits-summary' => '[[Special:Version|MediaWiki]] сайдыытыгар үлэлэрин иһин манна ахтыллыбыт дьоҥҥо махтанабыт.',
'version-license-info' => 'MediaWiki көҥүл тарҕанар бырагырааммаларга киирэр, кинини көмпүүтэр аһаҕас бырагырааммаларын пуондатын GNU General Public License усулуобуйатынан көҥүл тарҕатаргыт уонна/эбэтэр уларытаргыт көҥүллэнэр; иккис эбэтэр онтон хойукку ханнык баҕарар барылыттан саҕалаан.
MediaWiki туһалаах буоллун диэн тарҕатыллар, ол эрээри АТЫЫЛАНАР СЫАННАҺА эбэтэр ХАННЫК ЭРЭ ЧОПЧУ СОРУККА СӨП ТҮБЭҺИИТЭ бигэргэтиллибэт (гарантията суох). Сиһилии GNU General Public License усулуобуйатын көрүҥ.
'version-entrypoints-header-entrypoint' => 'Киирии сирэ',
'version-entrypoints-header-url' => 'URL',
+# Special:Redirect
+'redirect' => 'Билэттэн, кыттааччыттан эбэтэр барыл идентификаторыттан утаарыы',
+'redirect-legend' => 'Билэҕэ эбэтэр сирэйгэ утаарыы',
+'redirect-submit' => 'Толор',
+'redirect-lookup' => 'Көрдөт:',
+'redirect-value' => 'Суолтата:',
+'redirect-user' => 'Кыттааччы нүөмэрэ',
+'redirect-revision' => 'Сирэй барыла',
+'redirect-file' => 'Билэ аата',
+'redirect-not-exists' => 'Суолта көстүбэтэ',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Хос билэлэри көрдөөһүн',
'fileduplicatesearch-summary' => 'Тэҥ билэлэри хэш-куодтарынан көрдөөһүн.',
'htmlform-submit' => 'Ыыт',
'htmlform-reset' => 'Уларытыыны төннөр',
'htmlform-selectorother-other' => 'Атын',
+'htmlform-no' => 'Суох',
+'htmlform-yes' => 'Сөп',
+'htmlform-chosen-placeholder' => 'Барылы тал',
# SQLite database support
'sqlite-has-fts' => '$1 толору тиэкистээх көрдөөһүнү өйүүр',
# New logging system
'logentry-delete-delete' => '$3 сирэйи $1 соппут',
'logentry-delete-restore' => '$3 сирэйи $1 сөргүппүт',
-'logentry-delete-event' => 'Сурунаал {{PLURAL:$5|суругун|$5 суруктарын}} көстүүтүн манна $3: $4 $1 уларыппыт',
-'logentry-delete-revision' => 'Сурунаал {{PLURAL:$5|суругун|$5 суруктарын}} көстүүтүн бу сирэйгэ $3: $4 $1 уларыппыт',
+'logentry-delete-event' => 'Сурунаал $5 суругун көстүүтүн манна $3 $1 уларыппыт: $4',
+'logentry-delete-revision' => 'Сурунаал $5 суругун көстүүтүн бу сирэйгэ $3 $1 уларыппыт: $4',
'logentry-delete-event-legacy' => '$3 сурунаал суруктарын көстүүтүн $1 уларыппыт',
'logentry-delete-revision-legacy' => '$3 сирэй барылларын көстүүтүн $1 уларыппыт',
'logentry-suppress-delete' => '$3 сирэйи $1 баттаабыт',
'logentry-newusers-newusers' => 'Кыттааччы $1 диэн ааты бэлиэтээтэ',
'logentry-newusers-create' => '$1 диэн кыттааччы бэлиэтэннэ',
'logentry-newusers-create2' => '$3 кыттааччы аатын $1 бэлиэтээтэ',
-'logentry-newusers-autocreate' => 'Маннык аат $1 аптамаатынан бэлиэтэннэ',
+'logentry-newusers-byemail' => '$3 бэлиэ-ааты $1 оҥорбут, киирии тыла электрон почтанан ыытыллыбыт',
+'logentry-newusers-autocreate' => '$1 бэлиэ-аат аптамаатынан бэлиэтэннэ',
+'logentry-rights-rights' => '$3 бөлөхтөргө киириитин $1 уларыппыт: манныктан $4 манныкка $5',
+'logentry-rights-rights-legacy' => '$3 бөлөхтөргө киириитин $1 уларыппыт',
+'logentry-rights-autopromote' => '$1 мантан $4 манна $5 көһөрүллүбүт',
'rightsnone' => '(суох)',
# Feedback
'api-error-ok-but-empty' => 'Ис алҕас: сиэрбэртэн хоруй кэлбэтэ.',
'api-error-overwrite' => 'Баар билэни уларытар сатаммат.',
'api-error-stashfailed' => 'Ис алҕас: сиэрбэр быстах кэмҥэ оҥоһуллубут билэни кыайан бигэргэппэтэх.',
+'api-error-publishfailed' => 'Ис алҕас: сиэрбэр быстах билэни кыайан бигэргэппэтэх.',
'api-error-timeout' => 'Сиэрбэр кэтэһэр кэмҥэ хоруйдаабата.',
'api-error-unclassified' => 'Биллибэт алҕас таҕыста',
'api-error-unknown-code' => 'Биллибэт алҕас: «$1»',
'duration-centuries' => '$1 үйэ',
'duration-millennia' => '$1 тыһыынча сыл',
+# Image rotation
+'rotate-comment' => 'Ойуу $1 кыраадыс чаһы хоту эргитиллибит',
+
);
* @author Joseph Mardy
* @author Nipon087
* @author Reedy
+ * @author Rillke
* @author Salvator
* @author Samar88
* @author Srabony90
'tog-hidepatrolled' => 'Joṛaoakanaḱko nãwã bodolaḱte danaṅkam',
'tog-newpageshidepatrolled' => 'Biḍạakanaḱ sakamko nãwã sakamreaḱ talikare danȧkam',
'tog-extendwatchlist' => 'Khạli nitoḱ bodolko do baṅ, joto bodolkodo ńeloḱ tạlikare phaylaomẽ.',
-'tog-usenewrc' => 'Cetan darja reaḱ nãwã bodolakanaḱko beoharme',
+'tog-usenewrc' => 'Nahaḱ bodolakanaḱko ar nojor reaḱ pahaṭare bodolaḱko mit́são ńelńam',
'tog-numberheadings' => 'Mukhiạ kathako do actege piṛhipiṛhite sajaḱma',
'tog-showtoolbar' => 'Joṛaoakanaḱ ṭulbar udugoḱma',
'tog-editondblclick' => 'Bar dhao lin kate sakam torjomão reaḱ ạidari emogoḱma',
'tog-editsectiononrightclick' => 'Pahaṭa reaḱ pahaṭa guṭkathare jojom seć lin hotete <br /> pahaṭa sompadon lạgitte ektiạr em hoyoḱma (JavaScript)',
'tog-showtoc' => 'Ṭibilre menaḱako ńel ( sakamkore 3 khon jạti hedlayenko)',
'tog-rememberpassword' => 'Noa sendrare amaḱ boloḱ reaḱ katha (katha cạbi) disạimẽ (jạstite $1 {{PLURAL:$1din reaḱ din reaḱ}} lạgit)',
-'tog-watchcreations' => 'Sakamko songe Ińaḱ ńelok tạlikare benao',
-'tog-watchdefault' => 'Sakam tońgey me Iń do ińaḱ ńeloḱ tạlikare joṛaokeda',
-'tog-watchmoves' => 'Sakamko tońgeyme Ińaḱ ńelok tạlikare kulme',
+'tog-watchcreations' => 'Ińaḱ tear sakam ar rakaṕ páelko ińaḱ ńelogoḱ tạlikare ńeloḱ ma',
+'tog-watchdefault' => 'Ińaḱ purạoakanaḱ sakam ar phayelko do ińaḱ ńeloḱ tạlikare joṛaoḱma',
+'tog-watchmoves' => 'Ińaḱ ocoḱ sakam ar phayelko inyaḱ nojor sakamre joṛaḱma',
'tog-watchdeletion' => 'Sakamko tońgeyme Ińaḱ ńeloḱ tạlika khon get́ giḍikam',
'tog-minordefault' => 'Etohoṕre sanam joṛao purạoanaḱko do bekor unuduḱ lekate cinhạkma',
'tog-previewontop' => 'Joṛao bakso purạo lahare unuduḱ hoyoḱma',
'disclaimers' => 'Dạbi bạnuḱko',
'disclaimerpage' => 'Project: Sadharon ḍiskleimarko(General disclaimer)',
'edithelp' => 'Tońge goṛo',
-'edithelppage' => 'Help:So̠mpado̠n',
'helppage' => 'Help: Bhitri renaḱ',
'mainpage' => 'Mukhiạ Sakam',
'mainpage-description' => 'Mukhiạ sakam',
Ale do baḍae ocolem amaḱ kuki doe kạmikana, sakam do arhõ rakaṕ lạgit́te kurumuṭuemẽ.',
'noname' => 'Am do asol beoharićaḱ ńutum ṭhikte bam emakada.',
'loginsuccesstitle' => 'Bhitri boloḱ do moctege puraoena',
-'loginsuccess' => '\'\'\'Am do nitge "$1" ńutumte {{SITENAME}} rem bolo akana.',
+'loginsuccess' => "'''Am do nitge \"\$1\" ńutumte {{SITENAME}} rem bolo akana.'''",
'nosuchuser' => '"$1" ńutuman jahan beoharić bạnuea.
Beoharićaḱ ńutum do bukṛogea.
Amaḱ bananko ńelmẽ, se [[Special:Userlogin/signup nãwã mit́ṭen ekaunṭ tearmẽ]].',
# Special:PasswordReset
'passwordreset' => 'Nãwãte oku nambar emme',
-'passwordreset-text' => 'Amaḱ ekaunṭ reaḱ purapuri thuti e-mail hotete ńam lạgit́te latar reaḱ forom purạomẽ.',
'passwordreset-legend' => 'Nãwãte oku nambar emme',
'passwordreset-disabled' => 'Noa wikire amaḱ uku nambar nãwãte em lạgit subita do bando gea.',
-'passwordreset-pretext' => '{{PLURAL:$1 latar re menaḱ ḍaṭako khon mit́ṭen emmẽ}}',
'passwordreset-username' => 'Beoharicaḱ ńutum:',
'passwordreset-domain' => 'Ḍomen:',
'passwordreset-capture' => 'Sendra fol reaḱ e-mail ńelmẽ?',
'viewprevnext' => 'Ńelme ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''Noa wiki re do \"[[:\$1]] ńutum sakam menaḱa",
'searchmenu-new' => 'wiki re [[:$1]]nãwã sakam tear',
-'searchhelp-url' => 'Help: Goṛawaḱ',
'searchprofile-articles' => 'Menaḱaḱ sakamko',
'searchprofile-project' => 'Go̠ṛo ar Project sakam',
'searchprofile-images' => 'Multimedia',
isospeeddratings
jeleń',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Ganḍe',
'exif-imagelength' => 'Usul',
'exif-datetime' => 'Rẽt bodol reaḱ tạrikh ar okte',
'disclaimers' => 'Abbertimentos',
'disclaimerpage' => 'Project:Abbertimentos generales',
'edithelp' => "Agiudu pro s'acontzu o sa scritura",
-'edithelppage' => 'Help:Acontzare',
'helppage' => 'Help:Agiudu',
'mainpage' => 'Pàgina Base',
'mainpage-description' => 'Pàgina Base',
'shown-title' => 'Ammustra $1 {{PLURAL:$1|resurtadu|resurtados}} pro pàgina',
'viewprevnext' => 'Càstia ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-legend' => 'Possibilidades de chirca',
-'searchhelp-url' => 'Help:Agiudu',
'searchprofile-everything' => 'Totu',
'searchprofile-advanced' => 'Avantzada',
'searchprofile-articles-tooltip' => 'Chirca in $1',
'powersearch-toggleall' => 'Totu',
'powersearch-togglenone' => 'Nudda',
-# Quickbar
-'qbsettings' => 'Settaggio della barra menu',
-'qbsettings-none' => 'Nessuno',
-'qbsettings-fixedleft' => 'Fisso a sinistra',
-'qbsettings-fixedright' => 'Fisso a destra',
-'qbsettings-floatingleft' => 'Fluttuante a sinistra',
-'qbsettings-floatingright' => 'Fluttuante a destra',
-
# Preferences page
'preferences' => 'Preferèntzias',
'mypreferences' => 'Preferèntzias meas',
'listgrouprights-group' => 'Grupu',
'listgrouprights-members' => '(lista de is cumponentes)',
-# E-mail user
+# Email user
'mailnologintext' => "Depes èsser [[Special:UserLogin|identificadu (login)]] e àer registradu un'indiritzu e-mail vàlidu in is [[Special:Preferences|preferèntzias tuas]] pro imbiare e-mail a àteros usuàrios.",
'emailuser' => 'E-mail a custu usuàriu',
'emailpage' => "Ispedi una missada a s'usuàriu",
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-artist' => 'Autore',
'exif-exposuretime-format' => '$1 s ($2)',
'exif-fnumber-format' => 'f/$1',
'exif-flash' => 'Flash',
'exif-focallength-format' => '$1 mm',
-# EXIF attributes
+# Exif attributes
'exif-compression-6' => 'JPEG',
'exif-photometricinterpretation-2' => 'RGB',
'monthsall' => 'totu',
'limitall' => 'totu',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => "Cunfirma s'indiritzu e-mail",
# action=purge
'version-license' => 'Licèntzia',
'version-software-version' => 'Versione',
-# Special:FilePath
-'filepath-page' => 'Nùmene de su file:',
-'filepath-submit' => 'Bae',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Chirca',
'tog-diffonly' => "Nun visualizzari lu cuntinutu dâ pàggina quannu s'esequi na ''diff'' tra dui virsioni",
'tog-showhiddencats' => 'Ammustra li catigurìi ammucciati.',
'tog-norollbackdiff' => "Umettiri li ''diff'' doppu aviri fattu nu ''rollback''",
+'tog-useeditwarning' => 'Avvisa quannu si lasaa na paggina di canci cu canci nu sarbati',
'underline-always' => 'sempri',
'underline-never' => 'mai',
'oct' => 'utt',
'nov' => 'nuv',
'dec' => 'Dic',
+'january-date' => '$1 jinnaru',
+'february-date' => '$1 frivaru',
+'march-date' => '$1 di marzu',
+'april-date' => '$1 di aprili',
+'may-date' => '$1 di maiu',
+'june-date' => '$1 di giugnu',
+'july-date' => '$1 di giugnettu',
+'august-date' => '$1 di austu',
+'september-date' => '$1 di sittèmmiru',
+'october-date' => '$1 di uttùviru',
+'november-date' => '$1 di nuvèmmiru',
+'december-date' => '$1 di dicèmmiru',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Catigurìa|Catigurìi}}',
'newwindow' => '(grapi na finestra nova)',
'cancel' => 'annulla',
'moredotdotdot' => 'Àutru...',
-'mypage' => 'La mè pàggina',
+'morenotlisted' => 'cchiossai non ntâ lista',
+'mypage' => 'Pàggina',
'mytalk' => 'la mè pàggina di discussioni',
'anontalk' => 'Discussione pi stu IP',
'navigation' => 'Navigazzioni',
'vector-action-protect' => 'Pruteggi',
'vector-action-undelete' => 'Riprìstina',
'vector-action-unprotect' => 'Cancia la prutizzioni',
-'vector-simplesearch-preference' => 'Abbilita li suggirimenti pâ ricerca avanzata',
+'vector-simplesearch-preference' => 'Abbilita la barra pâ ricerca simprificata (sulu pi la skin Vector)',
'vector-view-create' => 'Crea',
'vector-view-edit' => 'Cancia',
'vector-view-history' => 'Talìa a storia',
'namespaces' => 'Namespace',
'variants' => 'Varianti',
+'navigation-heading' => 'Menù di navigazzioni',
'errorpagetitle' => 'Erruri',
'returnto' => 'Ritorna a $1.',
'tagline' => 'Di {{SITENAME}}',
'create-this-page' => 'Crea sta pàggina',
'delete' => 'elìmina',
'deletethispage' => 'Elìmina sta pàggina',
+'undeletethispage' => 'Annulla la scancillazzioni di sta pàggina',
'undelete_short' => 'Ricùpira {{PLURAL:$1|na rivisioni|$1 rivisioni}}',
'viewdeleted_short' => 'Talìa {{PLURAL:$1|nu canciamentu scancillatu|$1 canciamenti scancillati}}',
'protect' => 'Pruteggi',
'disclaimers' => 'Avvirtenzi',
'disclaimerpage' => 'Project:Avvirtenzi ginirali',
'edithelp' => 'Guida',
-'edithelppage' => 'Help:Canciamentu',
'helppage' => 'Help:Cuntinuti',
'mainpage' => 'Pàggina principali',
'mainpage-description' => 'Pàggina principali',
'youhavenewmessages' => 'Ricivìsti $1 ($2).',
'newmessageslink' => 'missaggi novi',
'newmessagesdifflink' => 'ùrtimi canciamenti',
+'youhavenewmessagesfromusers' => "Hai $1 di {{PLURAL:$3|n'àutru utenti|$3 utenti}} ($2).",
+'youhavenewmessagesmanyusers' => 'Hai $1 di na pocu di utenti ($2).',
+'newmessageslinkplural' => '{{PLURAL:$1|Nu missaggiu novu|missaggi novi}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|ùrtimu canciamenti|ùrtimi canciamenti}}',
'youhavenewmessagesmulti' => 'Hai missaggi novi supra $1',
'editsection' => 'cancia',
'editold' => 'cancia',
'badarticleerror' => 'Opirazzioni nun cunzintita pi sta pàggina.',
'cannotdelete' => 'Mpussìbbili cancillari la pàggina o lu file "$1" addumannatu. Putissi siri già cancillatu di quarcun\'àutru.',
'cannotdelete-title' => 'Mpussibbili eliminari la pàggina "$1"',
+'delete-hook-aborted' => "Canciamentu nun arsciuttiattu di l'hook.
+Nun desi nudda spiecazzioni.",
'badtitle' => 'Tìtulu nun currettu',
'badtitletext' => "Lu tìtulu dâ pàggina addumannata è vacanti, erratu o cu caràttiri nun ammessi oppuru diriva di n'erruri ntê culligamenti tra siti wiki diversi o virsioni n lingui diversi dû stissu situ.",
'perfcached' => "'''Nota:''' li dati ca sèquinu sunnu stratti di na copia ''cache'' dû database, nun aggiurnati n tempu riali. A maximum of {{PLURAL:$1|one result is|$1 results are}} available in the cache.",
'actionthrottledtext' => "Comu misura di sicurezza contru lu spam, l'esecuzioni di alcuni azzionu è limitata a nu nùmmuru massimu di voti ni nu determinatu piriudu du tempu, limiti ca ni stu casu fu supiratu. Si prega di ripruvari tra qualchi minutu.",
'protectedpagetext' => 'Sta pàggina fu bluccata pi privèniri li canciamenti.',
'viewsourcetext' => 'È pussìbbili visualizzari e cupiari lu còdici surgenti di sta pàggina:',
-'protectedinterface' => "Sta pàggina cunteni un elementu ca fà parti dâ nterfaccia utenti dû software; è quinni prutetta p'evitari pussìbbili abbusi.",
+'viewyourtext' => "È pussibbili visualizzarei cupiari lu còdici surgenti dî '''tò canciamenti''' nti sta pàggina:",
+'protectedinterface' => "Sta pàggina cunteni un elementu ca fà parti dâ nterfaccia utenti dû software eggh'è prutetta p'evitari pussìbbili abbusi. Pi jùnciri o canciari li traduzzioni pi tutti li wiki usari [//translatewiki.net/translatewiki.net] lu pruggettu di lucalizzazzioni di Mediawiki.",
'editinginterface' => "'''Accura:''' Lu testu di sta pàggina fà parti dî interfaccia utenti dû situ. Tutti li canciamenti appurtati a sta pàggina si riflèttinu supra li missaggi visualizzati pi tutti l'utenti. Pi li traduzioni, cunsidira â pussibilità di usari [//translatewiki.net/wiki/Main_Page?setlang=scn translatewiki.net], u prugettu di localizzazioni MediaWiki.",
'sqlhidden' => '(la query SQL hà statu ammucciata)',
'cascadeprotected' => 'Supra sta pàggina nun è pussìbbili effittuari canciamenti pirchì veni nclusa nt{{PLURAL:$1|â pàggina siquenti, ca fu prutetta|ê pàggini siquenti, ca foru prutetti}} silizziunannu la prutizzioni "ricursiva":
'titleprotected' => "La criazzioni di sta pàggina cu stu tìtulu fu bluccata da [[User:$1|$1]].
La mutivazzioni è chista: ''$2''.",
'filereadonlyerror' => 'Nun fu pussìbbili canciari lu file "$1" pirchì lu repository di file "$2" è \'n mudalitati di sula littura.La mutivazzioni è "\'\'$3\'\'".',
+'exception-nologin' => 'Nun trasutu',
+'exception-nologin-text' => 'Sta pàggina o stâzzioni havi abbisognu ca tu si cunnittutu a sta wiki',
# Virus scanner
'virus-badscanner' => "Sbagghiu di cunfigurazzioni: antivirus scanusciutu: ''$1''",
Poi cuntinuari a usari {{SITENAME}} di manera anònima, o poi <span class='plainlinks'>[$1 tràsiri n'àutra vota]</span> cu lu stissu o cu n'àutru nomu d'utenti.
Accura chi quarchi pàggina pò cuntinuari a èssiri ammustrata comu si nun avissi nisciutu nzinu a quannu tu nun scancelli tutta la mimoria dû tò browser.",
'welcomeuser' => 'Bommegna, $1!',
+'welcomecreation-msg' => 'Lu cuntu fu criatu. Nun ascurdàriti di pirsunalizzari li prifirenzi pi {{SITENAME}}',
'yourname' => "Lu tò nomu d'utenti (''user name'')",
+'userlogin-yourname' => 'Nomu utenti',
+'userlogin-yourname-ph' => 'Nzirìsci lu tò nomu utenti',
'yourpassword' => "La tò ''password''",
+'userlogin-yourpassword' => 'Password',
+'userlogin-yourpassword-ph' => 'Nzirisci la tò password',
+'createacct-yourpassword-ph' => 'Nzirisci na password',
'yourpasswordagain' => "Scrivi la password n'àutra vota",
+'createacct-yourpasswordagain' => 'Cunfirma la password',
+'createacct-yourpasswordagain-ph' => 'Nzirisci la password attorna',
'remembermypassword' => 'Arricorda la password supra stu computer (pi ô massimu $1 {{PLURAL:$1|jornu|jorna}})',
+'userlogin-remembermypassword' => 'Mantènimi culligatu',
+'userlogin-signwithsecure' => 'Usa na cunnissioni sicura',
+'securelogin-stick-https' => 'Resta cunnittutu cu HTTPS doppu la trasuta',
'yourdomainname' => 'Lu tò dominiu',
+'password-change-forbidden' => 'Nun putiti canciari la password nti sta wiki',
'externaldberror' => "S'havi virificatu n'erruri cû server d'autinticazzioni sternu, oppuru nun si disponi di l'auturizzazzioni nicissari p'aggiurnari lu propiu accessu sternu.",
'login' => 'Trasi',
'nav-login-createaccount' => 'Riggìstrati o trasi',
'logout' => 'Nesci',
'userlogout' => 'Nesci',
'notloggedin' => "Nun v'aviti riggistratu",
+'userlogin-noaccount' => "Nun ci l'hai nu cuntu?",
+'userlogin-joinproject' => 'Scrìviti a {{SITENAME}}',
'nologin' => "Nun nn'aviti nu cuntu pi ccà? '''$1'''.",
'nologinlink' => 'Criati nu cuntu sùbbitu',
'createaccount' => 'Criati un cuntu novu',
'gotaccount' => "Hai già nu cuntu? '''$1'''.",
'gotaccountlink' => 'Trasi',
'userlogin-resetlink' => "T'ascurdasti li dittagli pâ trasuta?",
-'createaccountmail' => 'via e-mail',
+'userlogin-resetpassword-link' => 'Reinizzializza la tò password',
+'helplogin-url' => 'Help:Cunnissioni',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Aiutu câ fasi di login]]',
+'createacct-join' => 'Nzirisci li tò nfurnazzioni ccà',
+'createacct-emailrequired' => 'Nnirizzu e-mail',
+'createacct-emailoptional' => 'Nnirizzu e-mail (facurtativu)',
+'createacct-email-ph' => 'Nzirisci lu tò nnirizzu e-mail',
+'createaccountmail' => 'Utilizzari na password timpurania casuali e mannàrila ô nnirizzu e-mail spicificatu ccàssutta',
+'createacct-realname' => 'Nomu riali (facurtativu)',
'createaccountreason' => 'Mutivu:',
+'createacct-reason' => 'Mutivu',
+'createacct-reason-ph' => "Pirchì stai criannu n'àutru cuntu?",
+'createacct-captcha' => 'Cuntrollu di sicurezza',
+'createacct-imgcaptcha-ph' => 'Nzirìsci lu testu ca vidi ccassupra',
+'createacct-submit' => 'Crèa nu cuntu',
+'createacct-benefit-heading' => '{{SITENAME}} è fatta di pirsunu comu a tìa.',
+'createacct-benefit-body1' => '{{PLURAL:$1|cuntribbutu|cuntribbuti}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|pàggina|pàggini}}',
'badretype' => "La ''password'' chi mittisti nun è bona.",
'userexists' => 'Lu nomu utenti nzeritu è già usatu. Ti prijamu pirciò di vuliri scègghiri nu nomu utenti diversu.',
'loginerror' => "Erruri nta l'accessu",
Pò èssiri ca ggià canciasti cu successu la tò password o c'addumannasti na nova password timpurrània.",
'resetpass-temp-password' => 'Password timpurrània:',
+# Special:PasswordReset
+'passwordreset' => 'Resetta la password',
+'passwordreset-text-one' => 'Jinchi stu mòdulu pi reimpostari la password',
+
# Special:ChangeEmail
'changeemail-submit' => 'Cancia e-mail',
Li nnirizzi IP ponnu pirò èssiri spartuti di cchiù utenti.
Siddu sî n’utenti anònimu e riteni ca li cummenti prisenti nta sta pàggina nun si rifirìscinu a tia, [[Special:UserLogin/signup|crea n’accessu novu]] o [[Special:UserLogin|trasi]] cu chiddu ca già hai p’evitari d’èssiri cunfusu cu àutri utenti anònimi ‘n futuru.''",
'noarticletext' => 'Nta stu mumentu la pàggina addumannata è vacanti. È pussìbbili [[Special:Search/{{PAGENAME}}|circari stu tìtulu]] nta l\'àutri pàggini dû situ oppuru <span class="plainlinks">[{{fullurl:{{#Special:Log}}|action=edit}} circari ntê riggistra culligati] oppuru [{{fullurl:{{FULLPAGENAME}}|action=edit}} canciari la pàggina ora]</span>.',
-'noarticletext-nopermission' => 'Nta stu mumentu la pàggina addumannata è vacanti. È pussibbili [[Special:Search/{{PAGENAME}}|circari stu titulu]] nti àutri pàggini dû situ oppuru <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} circari ntê riggistra currilati]</span>.',
+'noarticletext-nopermission' => 'Nta stu mumentu la pàggina addumannata è vacanti. È pussibbili [[Special:Search/{{PAGENAME}}|circari stu titulu]] nti àutri pàggini dû situ o <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} circari ntê riggistra culligati]</span>, ma nun hai li pirmissa pi criari sta pàggina.',
'userpage-userdoesnotexist' => 'L\'account "<nowiki>$1</nowiki>" nun currispunni a n\'utenti riggistratu. Virificari si si voli criari o canciari sta pàggina.',
'blocked-notice-logextract' => "Stu utenti è attualmenti bluccatu. L'ùrtimu elimentu dû riggistru dî blocca è ripurtatu ccà pi nfurnazzioni:",
'clearyourcache' => "'''Nota:''' doppu aviri sarvatu è nicissariu puliri la cache dû propiu browser pi vìdiri li canciamenti. Pi '''Mozilla / Firefox / Safari''': fari clic supra ''Ricarica'' tinnennu primutu lu tastu dî maiùsculi, oppuru prèmiri ''Ctrl-Maiusc-R'' (''Cmd-Maiusc-R'' supra Mac); pi '''Internet Explorer:''' mantèniri primutu lu tastu ''Ctrl'' mentri si premi lu pulsanti ''Aggiorna'' o prèmiri ''Ctrl-F5''; pi '''Konqueror''': prèmiri lu pulsanti ''Ricarica'' o lu tastu ''F5''; pi '''Opera''' pò èssiri nicissariu svacantari cumpletamenti la cache dû menu ''Strumenti → Preferenze''.",
'userinvalidcssjstitle' => "'''Accura:''' Nun esisti arcuna skin cu nomu \"\$1\". S'arricorda ca li pàggini pi li .css e .js pirsunalizzati hannu la nizziali dû tìtulu minùscula, p'asempiu {{ns:user}}:Asempiu/vector.js e nun {{ns:user}}:Asempiu/Vector.css.",
'updated' => '(Aggiurnatu)',
'note' => "'''Accura:'''",
-'previewnote' => "'''Ricurdàtivi ca chista è sulu n'antiprima, e ca nun hà statu ancora sarvata!'''",
+'previewnote' => "'''Ricurdàtivi ca chista è sulu n'antiprima.'''
+Li canci nun foru ancora sarvati!'''",
'previewconflict' => "L'antiprima currispunni a lu testu prisenti ntâ casella di canciamentu supiriuri e rapprisenta la pàggina comu appari siddu si scegghi di prèmiri 'Sarva' 'n stu mumentu.",
'session_fail_preview' => "'''Purtroppu nun hà statu pussìbbili sarvari li tò canciamenti pirchì li dati dâ sissioni hannu jutu pirduti. Pi favuri, riprova. Siddu arricevi stu missaggiu d'erruri cchiù voti, prova a sculligàriti e a culligàriti novamenti.'''",
'session_fail_preview_html' => "'''Semu spiacenti, nun hà statu pussìbbili elabburari lu canciamentu pirchì hannu jutu pirduti li dati rilativi â sissioni.'''
Pari ca fu scancillata.',
'edit-conflict' => 'Cunflittu di edizzioni.',
'edit-no-change' => 'La mudifica fu ignurata pirchì nu foru appurtati canci ntô testu.',
+'postedit-confirmation' => 'Lu canciamentu fu sarbatu.',
'edit-already-exists' => 'Mpussìbbili criari na nova pàggina.
Esisti ggià.',
'mergelogpagetext' => "Appressu veni ammustrata na lista dî operazioni cchiù ricenti di unioni dâ storia di na pàggina ni n'autra.",
# Diffs
-'history-title' => 'Crunoluggìa dî canciamenti di "$1"',
+'history-title' => '$1: crunoluggìa dî canciamenti',
'difference-title' => '$1: diffirenzi ntra li virsiuni',
'lineno' => 'Lìnia $1:',
'compareselectedversions' => 'Fari lu paraguni',
'showhideselectedversions' => 'Ammustra/ammuccia virsioni silizziunati',
'editundo' => 'annulla',
-'diff-multi' => '({{PLURAL:$1|Na rivisioni ntirmèdia nun ammustrata|$1 rivisioni ntirmedi nun ammustrati}}.)',
+'diff-multi' => '({{PLURAL:$1|Na rivisioni ntirmèdia|$1 rivisioni ntirmedi}} di {{PLURAL:$2|nu utenti|$2 utenti}} nun {{PLURAL:$1|ammusciata|ammusciati}}.)',
# Search results
'searchresults' => 'Risurtati dâ circata',
'searchmenu-legend' => 'Opzioni di circata',
'searchmenu-exists' => "* Pàggina '''[[$1]]'''",
'searchmenu-new' => "'''Crea la pàggina \"[[:\$1]]\" supra sta wiki!'''",
-'searchhelp-url' => 'Help:Cuntinuti',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Visualizza li pàggini cu stu prifissu]]',
'searchprofile-articles' => 'Pàggini di cuntinutu',
'searchprofile-project' => "Pàggini d'ajutu e dô pruggettu",
'searchprofile-everything-tooltip' => 'Cerca unnegghiè (puru ntî pàggini di discussioni)',
'searchprofile-advanced-tooltip' => 'Cerca ntê namespace pirsunalizzati',
'search-result-size' => '$1 ({{PLURAL:$2|na parola|$2 paroli}})',
+'search-result-category-size' => '{{PLURAL:$1|1 utenti|$1 utenti}} ({{PLURAL:$2|1 suttacatigurìa|$2 suttacatigurìi}}, {{PLURAL:$3|1 file|$3 files}})',
'search-result-score' => 'Rilivanza: $1%',
'search-redirect' => '(redirect $1)',
'search-section' => '(sizzioni $1)',
'prefs-help-gender' => "Opzionali: cunsenti di adattari li missaggi dô software in funzioni dô generi d'utenti. Sta nfurmazioni sarà pubblica.",
'email' => 'Nnirizzu email',
'prefs-help-realname' => '* Nomu veru (upziunali): siddu scegghi di furnìrilu veni usatu pi dàriti crèditu dû tò travagghiu.',
-'prefs-help-email' => "* Imeil (opziunali): abbìlita l'àutri utenti a cuntattàriti attraversu la tò pàggina d'utenti o di discussioni, senza pi chissu rivilari la tò idintitati.",
+'prefs-help-email' => 'Lu nnirizzu e-mail è facurtativu, ma è abbisugnatu pi risittari la password, ntô casu n cui è scurdata.',
'prefs-help-email-others' => "Putiti videmma scegghiri di pirmèttiri ca l'autri ti cuntattanu pi posta elittronica cu nu culligamentu di la tò pàggina d'utilizzaturi o di discussioni. Lu tò nnirizzu nun veni rivilatu quannu l'àutri utilizzatura ti cuntattanu.",
'prefs-help-email-required' => 'Lu nnirizzu email è nicissariu.',
'prefs-info' => 'Informazzioni di basi',
'filepageexists' => "La pàggina di discrizzioni di stu file fu ggià criata nnû nnirizzu <strong>[[:$1]]</strong>, macari si ancora non c'è nu file cu stu nomu. La discrizzioni di l'uggettu ca fu misa ntô mentri dû caricamentu non si vidi supra a la pàggina di discussioni. Pi fàrila cumpàriri ntâ pàggina di discussioni, c'è la nicissitati di mudificàrila a manu",
'fileexists-extension' => "Nu file cu nu nomu simili a chistu esisti già; l'unica diffirenza è l'usu dê maiusculi nte l'estensioni: [[$2|thumb]]
* Nomu dû file carricatu: <strong>[[:$1]]</strong>
-* Nome dû file esistenti: <strong>[[:$2]]</strong>
+* Nomu dû file esistenti: <strong>[[:$2]]</strong>
Pi favuri scegghiti n'àutru nomu.",
'fileexists-thumbnail-yes' => "Lu file carricato sembra èssiri lu risurtatu di n'antiprima ''(thumbnail)''. [[$1|thumb]]
Virificari, pi cunfruntu, lu file <strong>[[:$1]]</strong>.
'listusers-noresult' => "Nuddu utenti attruvatu. Virificari l'usu di caràttiri maiùsculi/minùsculi.",
'listusers-blocked' => '(bloccatu)',
+# Special:ActiveUsers
+'activeusers' => 'Lista dî utenti attivi',
+'activeusers-count' => "$1 {{PLURAL:$1|canciamentu|canciamenti}} nti {{PLURAL:$3|l'ùrtimu jornu| nti l'ùrtimi $3 jorna}}",
+'activeusers-from' => 'Ammustra li utenti a pàrtiri da:',
+'activeusers-hidebots' => 'Bot ammucciati',
+'activeusers-hidesysops' => 'Amministratura ammucciati',
+'activeusers-noresult' => 'Nussun utenti truvatu.',
+
# Special:ListGroupRights
'listgrouprights' => 'Diritti dô gruppu utenti',
'listgrouprights-summary' => "Ccà sutta sunnu elincati li gruppi utenti difiniti pi sta wiki, cu li dritti d'accessu assuciati a iddi. Pi sapìrinni chiossai supra li dritti, lèggiti [[{{MediaWiki:Listgrouprights-helppage}}|sta pàggina]].",
'emailuserfooter' => 'Sta e-mail fu mannata di $1 a $2 attraversu la funzionu "Manna nu missàggiu e-mail a l\'utenti" supra {{SITENAME}}.',
# Watchlist
-'watchlist' => 'Lista taliata mia',
+'watchlist' => 'Taliati spiciali',
'mywatchlist' => 'Lista taliata mia',
'watchlistfor2' => 'Pi $1, $2',
'nowatchlist' => "Nun hai innicatu pàggini a tèniri d'occhiu.",
'notvisiblerev' => 'La revisioni fu cancillata',
'watchnochange' => 'Nudda dî pàggini ossirvati hà statu canciata ntô pirìudu cunzidiratu.',
'watchlist-details' => 'La lista dê pàggini taliati cunteni {{PLURAL:$1|na pàggina (cu la rispittiva pàggina di discussioni)|$1 pàggini (cu li rispittivi pàggini di discussioni)}}.',
-'wlheader-enotif' => '* La nutìfica via e-mail è attivata.',
-'wlheader-showupdated' => "* Li pàggini ca hannu statu canciati dâ tò ùrtima vìsita sunnu evidinziati 'n '''grassettu'''",
+'wlheader-enotif' => 'La nutìfica via e-mail è attivata.',
+'wlheader-showupdated' => "Li pàggini ca hannu statu canciati dâ tò ùrtima vìsita sunnu evidinziati 'n '''grassettu'''",
'watchmethod-recent' => "cuntrollu dî canciamenti ricenti pi l'ossirvati spiciali",
'watchmethod-list' => "cuntrollu di l'ossirvati spiciali pi canciamenti ricenti",
'watchlistcontains' => 'La tò lista di ossirvati spiciali cunteni {{PLURAL:$1|na pàggina|$1 pàggini}}.',
'blanknamespace' => '(Principali)',
# Contributions
-'contributions' => 'cuntribbuti',
+'contributions' => 'Cuntribbuti {{GENDER:$1|utenti}}',
'contributions-title' => 'Cuntribbuti di $1',
-'mycontris' => 'Li mei cuntribbuti',
+'mycontris' => 'Li mè cuntribbuti',
'contribsub2' => 'Pi $1 ($2)',
'nocontribs' => 'Secunnu sti criteri nun ci sunnu canci o cuntribbuti.',
-'uctop' => '(ùrtima pi la pàggina)',
+'uctop' => '(attuali)',
'month' => 'A pàrtiri dô mese (e pricidenti):',
'year' => "A pàrtiri di l'annu (e pricidenti):",
'whatlinkshere-hideredirs' => '$1 redirect',
'whatlinkshere-hidetrans' => '$1 nclusioni',
'whatlinkshere-hidelinks' => '$1 link',
-'whatlinkshere-hideimages' => '$1 link di mmàggini',
+'whatlinkshere-hideimages' => '$1 liami di files',
'whatlinkshere-filters' => 'Filtri',
# Block/unblock
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Larghizza',
'exif-imagelength' => 'Autizza',
'exif-bitspersample' => 'Bit pi campiuni',
'exif-gpsdatestamp' => 'Data GPS',
'exif-gpsdifferential' => 'Currezzioni diffirinziali GPS',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Nuddu',
'exif-unknowndate' => 'Data scanusciuta',
'version-software-product' => 'Prodottu',
'version-software-version' => 'Virsioni',
-# Special:FilePath
-'filepath' => 'Pircorsu di nu file',
-'filepath-page' => 'Nnomu dô file:',
-'filepath-submit' => 'Pircorsu',
-'filepath-summary' => 'Sta pàggina spiciali rimanna arredi lu traggittu cumpretu di nu file. Li mmàggini sù ammustrati cu la cchiù àuta risoluzzioni dispunìbbili, pi l\'àutri tipi di file parti direttamenti lu prugramma assuciatu.
-
-Mèttiri lu nomu dû file senza lu prifissu "{{ns:file}}:"',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Circata dê file duppiuni',
'fileduplicatesearch-summary' => "Circata di pussìbbili dupppiuni dû file 'n basi ô valuri di ''hash''.",
'tog-enotifrevealaddr' => 'Shaw ma email address in notification mails',
'tog-shownumberswatching' => 'Shaw the nummer o watching uisers',
'tog-fancysig' => 'Raw seignaturs (athoot automatic airtin)',
-'tog-externaleditor' => 'Uise external editor bi defaut',
-'tog-externaldiff' => 'Uise external diff bi defaut',
'tog-showjumplinks' => 'Enable "loup til" accessibility airtins',
'tog-uselivepreview' => 'Uise leeve preview (JavaScript) (Prattik)',
'tog-forceeditsummary' => 'Gie me a jottin when A dinnae put in a edit summary',
'disclaimers' => 'Disclamation',
'disclaimerpage' => 'Project:General_disclamation',
'edithelp' => 'Editin help',
-'edithelppage' => 'Help:Editin',
'helppage' => 'Help:Contents',
'mainpage' => 'Main Page',
'mainpage-description' => 'Main Page',
'viewprevnext' => 'View ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''There is a page named \"[[:\$1]]\" oan this wiki.'''",
'searchmenu-new' => "'''Mak the page \"[[:\$1]]\" on this wiki!'''",
-'searchhelp-url' => 'Help:Contents',
'searchprofile-articles' => 'Content pages',
'searchprofile-project' => 'Help and Project pages',
'searchprofile-images' => 'Multimedia',
'powersearch-toggleall' => 'Aw',
'searchdisabled' => 'Rakin throu {{SITENAME}} is disabled for performance raesons. Ye can rake via Google juist nou. Mynd that thair indexes o {{SITENAME}} content micht be oot o date.',
-# Quickbar
-'qbsettings-none' => 'Nane',
-
# Preferences page
'mypreferences' => 'Ma preferences',
'prefsnologin' => 'No loggit in',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-copyright' => 'Copyricht hauder',
'exif-colorspace' => 'Colour space',
'exif-componentsconfiguration' => 'Meanin o ilka component',
# Core parser functions
'duplicate-defaultsort' => '\'\'\'Wairnin:\'\'\' Default sort key "$2" overrides earlier default sort key "$1".',
-# Special:FilePath
-'filepath-page' => 'File:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Filename:',
'fileduplicatesearch-submit' => 'Rake',
'disclaimers' => 'غيرجوابداريناما',
'disclaimerpage' => 'Project:عام غيرجوابدارينامو',
'edithelp' => 'مدد براءِ ترميم',
-'edithelppage' => 'Help:سنوارڻ',
'helppage' => 'Help:فهرست',
'mainpage' => 'مُک صفحو',
'mainpage-description' => 'مُک صفحو',
'prevn' => 'پويان {{PLURAL:$1|$1}}',
'nextn' => 'اڳيان {{PLURAL:$1|$1}}',
'viewprevnext' => 'ڏسو ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:فهرست',
'powersearch' => 'نفيس ڳولا',
'powersearch-redir' => 'چورڻن جي فهرست ڏيکاريو',
# Special:Categories
'categories' => 'زمرا',
-# E-mail user
+# Email user
'emailuser' => 'هن يوزر کي برق ٽپال اماڻيو',
# Watchlist
'metadata-expand' => 'توسيعي تفصيل ڏيکاريو',
'metadata-collapse' => 'توسيعي تفصيل لڪايو',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'ويڪر',
'exif-imagelength' => 'اوچائي',
'exif-bitspersample' => 'ٻٽڻيون في جُز',
'namespacesall' => 'سڀ',
'monthsall' => 'سڀ',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail_success' => 'توھان جي برق ٽپال جي پڪ ڪئي وئي آھي. ھاڻِ توھان لاگ ان ٿي وڪيءَ جو مزو وٺي سگھو ٿا',
# Delete conflict
'tog-enotifrevealaddr' => "Rivera lu me' indirizzu di postha erettrònica i' l'imbasciaddi d'avvisu",
'tog-shownumberswatching' => "Musthra lu nùmaru d'utenti ch'àni la pàgina abbaidadda",
'tog-fancysig' => "Interpreta i cumandi wiki i' la fimma (chena cullegaumentu otomatiggu)",
-'tog-externaleditor' => 'Impustha cumenti pridifiniddu un cumponidori di testhi esthernu',
-'tog-externaldiff' => 'Impustha cumenti pridifiniddu un prugramma di diff esthernu',
'tog-showjumplinks' => "Attiba li cullegamenti atzessibili 'vai a'",
'tog-uselivepreview' => "Attiba la funzioni ''Live preview'' (dumanda JavaScript; ippirimintari)",
'tog-forceeditsummary' => "Dumanda cunfèimma si l'oggettu di la mudìfigga è bioddu",
'disclaimers' => 'Avvirthènzi',
'disclaimerpage' => 'Project:Avvirthènzi ginarari',
'edithelp' => 'Ghia',
-'edithelppage' => 'Help:Mudìfigga',
'helppage' => 'Help:Indizi',
'mainpage' => 'Pàgina prinzipari',
'mainpage-description' => 'Pàgina prinzipari',
'nextn' => 'sighenti {{PLURAL:$1|$1}}',
'viewprevnext' => 'Vèdi ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-legend' => 'Opzioni di zercha',
-'searchhelp-url' => 'Help:Indizi',
'searchprofile-everything' => 'Tuttu',
'search-result-size' => '$1 ({{PLURAL:$2|una paraura|$2 parauri}})',
'search-redirect' => '(rinviu $1)',
'powersearch-togglenone' => 'Nisciunu',
'searchdisabled' => 'Abà no pói zirchà in {{SITENAME}}; proba cun Google o sìmiri, ma ammèntaddi chi li cuntinuddi di {{SITENAME}} poni assé no aggiornaddi.',
-# Quickbar
-'qbsettings' => 'Prifirenzi di lu menù',
-'qbsettings-none' => 'Nisciunu',
-'qbsettings-fixedleft' => 'Fissu a manca',
-'qbsettings-fixedright' => 'Fissu a drestha',
-'qbsettings-floatingleft' => 'Galliggianti a manca',
-'qbsettings-floatingright' => 'Galliggianti a drestha',
-
# Preferences page
'preferences' => 'Prifirenzi',
'mypreferences' => "Li me' prifirenzi",
'notvisiblerev' => 'La ribisioni è isthadda canzilladda',
'watchnochange' => "Nisciuna di li pàgini abbaidaddi è isthadda mudìfiggadda i' lu perìodu cunsidaraddu.",
'watchlist-details' => "La listha di l'abbaidaddi ippiziari cunteni {{PLURAL:$1|una pagina (e la rippettiba pagina di dischussioni)|$1 pagini (e li rippettibi pagini di dischussioni)}}.",
-'wlheader-enotif' => '* La nutìfica via postha erettrònica è attiba.',
-'wlheader-showupdated' => "* Li pàgini chi so isthaddi mudìfiggaddi daboi l'ulthima vìsita so evidenziaddi in '''grasseddu'''",
+'wlheader-enotif' => 'La nutìfica via postha erettrònica è attiba.',
+'wlheader-showupdated' => "Li pàgini chi so isthaddi mudìfiggaddi daboi l'ulthima vìsita so evidenziaddi in '''grasseddu'''",
'watchmethod-recent' => "cuntrollu di li mudìfigghi rizzenti pa l'abbaidaddi ippiziari",
'watchmethod-list' => "cuntrollu di l'abbaidaddi ippiziari pa mudìfigghi rizzenti",
'watchlistcontains' => "La listha di l'abbaidaddi ippiziari cunteni {{PLURAL:$1|una pàgina|$1 pàgini}}.",
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Larghèzia',
'exif-imagelength' => 'Althèzia',
'exif-bitspersample' => 'Bit pa campioni',
'version-other' => 'Althru',
'version-software-version' => 'Versioni',
-# Special:FilePath
-'filepath' => "Parchossu d'un file",
-'filepath-page' => 'Innommu di lu file:',
-'filepath-submit' => 'Parchossu',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-legend' => "Zercha d'un dupricaddu",
'fileduplicatesearch-filename' => 'Innòommu di lu file:',
* @author Jeblad
* @author Kaganer
* @author Laila
+ * @author Linnea
* @author Skuolfi
* @author Teak
* @author The Evil IP address
'disclaimers' => 'Friijavuohta vástideamis',
'disclaimerpage' => 'Project:Friijavuohta vástideamis',
'edithelp' => 'Rievdadanrávvagat',
-'edithelppage' => 'Help:Mo rievdadit siidduid',
'helppage' => 'Help:Sisdoallu',
'mainpage' => 'Váldosiidu',
'mainpage-description' => 'Váldosiidu',
$1 {{int:pipe-separator}} $2',
'searchmenu-new' => "'''Álggat siiddu ''[[:$1]]'' dán Wikipediai'''",
-'searchhelp-url' => 'Help:Rávvagat',
'searchprofile-articles' => 'Sisdoallosiiddut',
'searchprofile-project' => 'Veahkke- ja prošeaktasiiddut',
'searchprofile-everything' => 'Buot',
'powersearch-toggleall' => 'Buot',
'powersearch-togglenone' => 'Ii mihkkege',
-# Quickbar
-'qbsettings-none' => 'Ii maidige',
-'qbsettings-fixedleft' => 'Teaksta mielde, gurut',
-'qbsettings-fixedright' => 'Teaksta mielde, olgeš',
-'qbsettings-floatingleft' => 'Biso gurutbealde',
-'qbsettings-floatingright' => 'Biso olgesbealde',
-
# Preferences page
'preferences' => 'Ásahusat',
'mypreferences' => 'Ásahusat',
'rightslog' => 'Logga geavaheaddjirievttiin',
'rightslogtext' => 'Vuolábealde lea logga geavaheaddjirivttiid rievdadusain.',
+# Associated actions - in the sentence "You do not have permission to X"
+'action-createpage' => 'álggahit siidduid',
+'action-createtalk' => 'álggahit ságastallansiidduid',
+'action-browsearchive' => 'ohcat sihkkojuvvon siidduid',
+'action-sendemail' => 'sáddet e-poasttaid',
+
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|rievdadus|rievdadusa}}',
'recentchanges' => 'Varas rievdadusat',
'notanarticle' => 'Ii leat siidu',
'watchnochange' => 'Válljejuvvon áigodagas oktage du čuovvunlisttui gullevaš siidu leat rievdaduvvon.',
'watchlist-details' => 'Du čuovvunlisttus {{PLURAL:$1|lea $1 siidu|leat $1 siiddu}}. Lohkui eai leat váldojuvvon ságastallansiidduid.',
-'wlheader-enotif' => '* E-poastaalmmuhusat leat anus.',
-'wlheader-showupdated' => "* Siiddut, mat leat rievdaduvvon du maŋimus geavahangearddi maŋŋá leat merkojuvvon '''buoiddes teavsttain'''",
+'wlheader-enotif' => 'E-poastaalmmuhusat leat anus.',
+'wlheader-showupdated' => "Siiddut, mat leat rievdaduvvon du maŋimus geavahangearddi maŋŋá leat merkojuvvon '''buoiddes teavsttain'''",
'watchmethod-recent' => 'dárkistuvvo varas rievdadusat čuovvunlisttu siidduide',
'watchmethod-list' => 'dárkistuvvo čuovvunlisttu siidduid varas rievdadusat',
'watchlistcontains' => 'Du čuovvunlisttus {{PLURAL:$1|lea okta siidu|leat $1 siiddu}}.',
'metadata-expand' => 'Čájet buot sisdoallogovvádusaid',
'metadata-collapse' => 'Čájet beare dehaleamos sisdoallogovvádusaid',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Viidodat',
'exif-imagelength' => 'Allodat',
'exif-bitspersample' => 'Bihtá komponeanttas',
'tog-enotifrevealaddr' => 'Xuniim henadressade e-iitom notificacionde e-iitóm',
'tog-shownumberswatching' => 'Cohuatlöx caitóm cáminotómde numberam',
'tog-fancysig' => 'Signaturenám brazzinám (sans linkám automaticám)',
-'tog-externaleditor' => 'Usadad ticpatlöx externöx auto',
-'tog-externaldiff' => 'Usadad diff extern auto',
'tog-showjumplinks' => 'Záj "jumpöx" accessibilitiit linkám',
'tog-uselivepreview' => 'Usadad cuáxiit live (JavaScript) (Experimentam)',
'tog-forceeditsummary' => 'Ixuniimticpatlöx he jan nenenterom abvuatlde ticpatlöx',
'disclaimers' => 'Isój cacóomx',
'disclaimerpage' => 'Project:Isoj cacóomx geniiraloj',
'edithelp' => 'Help ticpatlöx',
-'edithelppage' => 'Help:Ticpatlöx',
'helppage' => 'Help:Caálixötöj',
'mainpage' => 'Caálixötöj',
'mainpage-description' => 'Caálixötöj',
'prevn' => 'jan {{PLURAL:$1|$1}}',
'nextn' => 'hun {{PLURAL:$1|$1}}',
'viewprevnext' => 'Cohuatlöx ($1 {{int:pipe-separator}} $2) ($3)',
-'searchhelp-url' => 'Help:Caálixötöj',
'powersearch' => 'Yahöx',
-# Quickbar
-'qbsettings' => 'Zuónaát',
-'qbsettings-none' => 'Nepartám',
-
# Preferences page
'preferences' => 'Quáatlaác',
'mypreferences' => 'Hequáatlaác',
'ilsubmit' => 'Yahöx',
'bydate' => 'de datum',
-# EXIF tags
+# Exif tags
'exif-fnumber' => 'F Numberam',
'exif-gpslatitude' => 'Latitudam',
'exif-gpslongitude' => 'Longitudam',
'tog-shownumberswatching' => 'Ruodītė keravuojantiu nauduotuoju skatliu',
'tog-oldsig' => 'Esams parašos:',
'tog-fancysig' => 'Parašos kāp wiki tekstos (ba autuomatėniu nūruodu)',
-'tog-externaleditor' => 'Vagol nutīliejėma nauduotė ėšuorini radaktuoriu (tėktās specam, rēk specēliū nustatīmu kompioteriō. [//www.mediawiki.org/wiki/Manual:External_editors Daugiau infuormacėjės.])',
-'tog-externaldiff' => 'Palē nutīliejėma nauduotė ėšuorinė skėrtomu ruodīma pruograma (tėktās specam, rēk specēliū nustatīmu kompioteriō. [//www.mediawiki.org/wiki/Manual:External_editors Daugiau infuormacėjės.])',
'tog-showjumplinks' => 'Ijongtė „paršuoktė i“ pasėikiamoma nūruodas',
'tog-uselivepreview' => 'Nauduotė tėisiogėne parvėiza (JavaScript) (Eksperimentėnis)',
'tog-forceeditsummary' => 'Klaustė, kumet palėiku toščē pakeitėma kuomentara',
'disclaimers' => 'Atsakuomībės aprėbuojims',
'disclaimerpage' => 'Project:Atsakuomībės aprėbuojims',
'edithelp' => 'Kāp redagoutė',
-'edithelppage' => 'Help:Redagavėms',
'helppage' => 'Help:Torėnīs',
'mainpage' => 'Pėrms poslapis',
'mainpage-description' => 'Pėrms poslapis',
'searchmenu-legend' => 'Paėiškuos nustatīmā',
'searchmenu-exists' => "'''Poslapis pavadėnts „[[$1]]“ šėtuo wiki'''",
'searchmenu-new' => "'''Sokortė poslapi „[[:$1]]“ šėtuo wiki!'''",
-'searchhelp-url' => 'Help:Torėnīs',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ėiškuotė poslapiu so šėtuom prīšdielio]]',
'searchprofile-articles' => 'Torėnė poslapē',
'searchprofile-project' => 'Pagelbas ė pruojekta poslapē',
'powersearch-field' => 'Ėiškoutė',
'search-external' => 'Ėšuorėnė paėiška',
-# Quickbar
-'qbsettings' => 'Greitasā pasėrėnkėms',
-'qbsettings-none' => 'Neruodītė',
-
# Preferences page
'preferences' => 'Nustatīmā',
'mypreferences' => 'Mona nustatīmā',
'notanarticle' => 'Ne torėnė poslapis',
'watchnochange' => 'Pasėrėnkto čieso nebova redagouts nė vėins keravuojams straipsnis.',
'watchlist-details' => 'Keravuojama $1 {{PLURAL:$1|poslapis|$1 poslapē|$1 poslapiu}} neskaitlioujant aptarėmu poslapiu.',
-'wlheader-enotif' => '* El. pašta primėnėmā ijongtė īr.',
-'wlheader-showupdated' => "* Poslapē, katrėi pakeistė nu Tamstas paskotėnė apsėlonkėma čiesa anūs, īr pažīmietė '''pastuorintā'''",
+'wlheader-enotif' => 'El. pašta primėnėmā ijongtė īr.',
+'wlheader-showupdated' => "Poslapē, katrėi pakeistė nu Tamstas paskotėnė apsėlonkėma čiesa anūs, īr pažīmietė '''pastuorintā'''",
'watchmethod-recent' => 'tėkrėnamė vielībė̅jė pakeitėmā keravuojamiems poslapiams',
'watchmethod-list' => 'Ėiškuoma vielībūju pakeitėmu keravuojamūs poslapiūs',
'watchlistcontains' => 'Tamstas kervuojamu sārašė īr $1 {{PLURAL:$1|poslapis|poslapē|poslapiu}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Platoms',
'exif-imagelength' => 'Aukštoms',
'exif-orientation' => 'Pasokims',
'version' => 'Versėjė',
'version-license' => 'Licenzėjė',
-# Special:FilePath
-'filepath' => 'Faila maršrots',
-'filepath-page' => 'Fails:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Ėiškuotė doblikoutu failu',
'fileduplicatesearch-legend' => 'Ėiškuotė doblėkatu',
* @file
*
* @author Kaganer
+ * @author Nemo bis
* @author OC Ripper
* @author לערי ריינהארט
*/
'tog-diffonly' => 'Ne prikazuj sadržaj stranice ispod prikaza razlika',
'tog-showhiddencats' => 'Prikaži skrivene kategorije',
'tog-norollbackdiff' => 'Nakon povrata zanemari prikaz razlika',
+'tog-useeditwarning' => 'Upozori me kad napuštam stranicu za uređivanje bez snimanja izmjena',
'underline-always' => 'Uvijek',
'underline-never' => 'Nikad',
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1. januar',
+'february-date' => '$1. februar',
+'march-date' => '$1. mart',
+'april-date' => '$1. april',
+'may-date' => '$1. maj',
+'june-date' => '$1. jun',
+'july-date' => '$1. jul',
+'august-date' => '$1. august',
+'september-date' => '$1. septembar',
+'october-date' => '$1. oktobar',
+'november-date' => '$1. novembar',
+'december-date' => '$1. decembar',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorija|Kategorije}}',
'disclaimers' => 'Odricanje odgovornosti',
'disclaimerpage' => 'Project:Uslovi korištenja, pravne napomene i odricanje odgovornosti',
'edithelp' => 'Pomoć pri uređivanju',
-'edithelppage' => 'Help:Uređivanje',
'helppage' => 'Help:Sadržaj',
'mainpage' => 'Glavna strana',
'mainpage-description' => 'Glavna strana',
'welcomecreation-msg' => 'Vaš korisnički račun je napravljen.
Ne zaboravite izmijeniti vlastite [[Special:Preferences|{{SITENAME}} postavke]].',
'yourname' => 'Korisničko ime:',
+'userlogin-yourname' => 'Korisničko ime',
+'userlogin-yourname-ph' => 'Unesite svoje korisničko ime',
'yourpassword' => 'Lozinka/zaporka:',
+'userlogin-yourpassword' => 'Lozinka/zaporka',
+'userlogin-yourpassword-ph' => 'Unesite svoju lozinku/zaporku',
+'createacct-yourpassword-ph' => 'Unesite lozinku/zaporku',
'yourpasswordagain' => 'Ponovno utipkajte lozinku/zaporku:',
+'createacct-yourpasswordagain' => 'Potvrdite lozinku/zaporku',
+'createacct-yourpasswordagain-ph' => 'Unesite lozinku/zaporku ponovno',
'remembermypassword' => 'Upamti moju lozinku na ovom kompjuteru (za maksimum od $1 {{PLURAL:$1|dan|dana}})',
+'userlogin-remembermypassword' => 'Držite me ulogiranog/u',
+'userlogin-signwithsecure' => 'Koristite sigurnu vezu',
'securelogin-stick-https' => 'Ostanite povezani na HTTPS nakon prijave',
'yourdomainname' => 'Vaš domen:',
'password-change-forbidden' => 'Ne možete da promenite lozinku na ovom vikiju.',
'logout' => 'Odjavi me',
'userlogout' => 'Odjava',
'notloggedin' => 'Niste prijavljeni',
+'userlogin-noaccount' => 'Nemate račun?',
+'userlogin-joinproject' => 'Pridružite se {{SITENAME}}',
'nologin' => "Nemate korisničko ime? '''$1'''.",
'nologinlink' => 'Otvorite račun',
'createaccount' => 'Napravi korisnički račun',
'gotaccount' => "Imate račun? '''$1'''.",
'gotaccountlink' => 'Prijavi se',
'userlogin-resetlink' => 'Zaboravili ste detalje vaše prijave?',
+'userlogin-resetpassword-link' => 'Resetirajte svoju lozinku/zaporku',
+'helplogin-url' => 'Help:Logiranje',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Pomoć pri logiranju]]',
+'createacct-join' => 'Unesite svoje informacije ispod',
+'createacct-emailrequired' => 'E-mail adresa',
+'createacct-emailoptional' => 'E-mail adresa (opcionalno)',
+'createacct-email-ph' => 'Unesite svoju E-mail adresu',
'createaccountmail' => 'Koristite privremenu slučajno stvorenu lozinku i pošaljite na dolje specificiranu e-mail adresu',
+'createacct-realname' => 'Stvarno ime (opcionalno)',
'createaccountreason' => 'Razlog:',
+'createacct-reason' => 'Razlog',
+'createacct-reason-ph' => 'Zašto stvarate novi račun',
+'createacct-captcha' => 'Sigurnosna provjera',
+'createacct-imgcaptcha-ph' => 'Unesite tekst koji vidite iznad',
+'createacct-submit' => 'Stvorite svoj račun',
+'createacct-benefit-heading' => '{{SITENAME}} se stvara od ljudi poput vas.',
+'createacct-benefit-body1' => '$1 {{PLURAL:$1|izmjena|izmjene}}',
+'createacct-benefit-body2' => '$1 {{PLURAL:$1|stranica|stranice|stranica}}',
+'createacct-benefit-body3' => 'nedavni {{PLURAL:$1|donator|donatora}}',
'badretype' => 'Lozinke koje ste unijeli se ne poklapaju.',
'userexists' => 'Uneseno korisničko ime već je u upotrebi.
Unesite neko drugo ime.',
'loginerror' => 'Greška pri prijavljivanju',
+'createacct-error' => 'Pogreška u stvaranju računa',
'createaccounterror' => 'Ne može se napraviti račun: $1',
'nocookiesnew' => "Korisnički nalog je napravljen, ali niste prijavljeni.
{{SITENAME}} koristi kolačiće (''cookies'') da bi se korisnici prijavili.
'resetpass-wrong-oldpass' => 'Privremena ili trenutna lozinka nije valjana.
Možda ste već uspješno promijenili Vašu lozinku ili ste tražili novu privremenu lozinku.',
'resetpass-temp-password' => 'Privremena lozinka:',
+'resetpass-abort-generic' => 'Promjenu lozinke/zaporke je prekinula ekstenzija.',
# Special:PasswordReset
'passwordreset' => 'Ponovno postavi lozinku',
-'passwordreset-text' => 'Ispunite ovaj obrazac da biste dobili e-mail podsjetnik o vašim detaljima računa.',
'passwordreset-legend' => 'Ponovno postavi lozinku',
'passwordreset-disabled' => 'Ponovno postavljanje lozinke je onemogućeno na ovom wikiju.',
-'passwordreset-pretext' => '{{PLURAL:$1||Unesite jedan dio podataka ispod}}',
+'passwordreset-emaildisabled' => 'Postavke E-maila su deaktivirane na ovoj wiki.',
'passwordreset-username' => 'Korisničko ime:',
'passwordreset-domain' => 'Domena:',
'passwordreset-capture' => 'Pogledati krajnji e-mail?',
'passwordreset-capture-help' => 'Ako označite ovu kućicu, e-mail s privremenom lozinkom će biti prikazana i poslata korisniku.',
'passwordreset-email' => 'E-mail adresa:',
'passwordreset-emailtitle' => 'Detalji računa na {{SITENAME}}',
-'passwordreset-emailtext-ip' => 'Netko (vjerovatno Vi, s IP adrese $1) je zatražio podsjetnik Vaših detalja računa
-za {{SITENAME}} ($4). Sljedeći {{PLURAL:$3|račun korisnika je|računi korisnika su}}
+'passwordreset-emailtext-ip' => 'Netko (vjerovatno Vi, s IP adrese $1) je zatražio resetiranje vaše lozinke/zaporke {{SITENAME}} ($4). Sljedeći {{PLURAL:$3|račun korisnika je|računi korisnika su}}
povezani s ovom e-mail adresom:
$2
Trebate se prijaviti i odabrati novu lozinku. Ako je neko drugi napravio ovaj
zahtjev, ili ako ste se sjetili Vaše početne lozinke, a ne želite je promijeniti,
možete zanemariti ovu poruku i nastaviti koristiti staru lozinku.',
-'passwordreset-emailtext-user' => 'Korisnik $1 na {{SITENAME}} je zatražio podsjetnik o detaljima Vašeg računa za {{SITENAME}}
+'passwordreset-emailtext-user' => 'Korisnik $1 na {{SITENAME}} je zatražio resetiranje vaše lozinke/zaporke za {{SITENAME}}
($4). Sljedeći {{PLURAL:$3|korisnički račun je|korisnički računi su}} povezani s ovom e-mail adresom:
$2
možete zanemariti ovu poruku i nastaviti koristiti staru lozinku.',
'passwordreset-emailelement' => 'Korisničko ime: $1
Privremena šifra: $2',
-'passwordreset-emailsent' => 'E-mail podsjetnik je poslan.',
-'passwordreset-emailsent-capture' => 'Poslan je podsjetnik preko e-maila (prikazan dolje).',
-'passwordreset-emailerror-capture' => 'E-mail s podsjetnikom, prikazan dolje, je poslan, ali slanje korisniku nije uspjelo: $1',
+'passwordreset-emailsent' => 'E-mail za resetiranje lozinke/zaporke je poslan.',
+'passwordreset-emailsent-capture' => 'E-mail za resetiranje lozinke/zaporke je poslan (prikazan dolje).',
+'passwordreset-emailerror-capture' => 'E-mail za resetiranje lozinke/zaporke, prikazan dolje, je poslan, ali slanje {{GENDER:$2|korisniku|korisnici|korisniku}} nije uspjelo: $1',
# Special:ChangeEmail
'changeemail' => 'Promijeni e-mail adresu',
'content-failed-to-parse' => 'Ne mogu da raščlanim sadržaj tipa $2 za model $1: $3',
'invalid-content-data' => 'Neispravni podaci sadržaja',
'content-not-allowed-here' => 'Sadržaj modela „$1“ nije dozvoljen na stranici [[$2]]',
+'editwarning-warning' => 'Napuštanje ove stranice može dovesti do gubitka svih promjena koje ste načinili.
+Ako ste prijavljeni, možete isključiti ovo upozorenje u "{{int:prefs-editing}}" dijelu vaših opcija.',
# Content models
'content-model-wikitext' => 'wikitekst',
'searchmenu-legend' => 'Opcije pretrage',
'searchmenu-exists' => "'''Postoji stranica pod nazivom \"[[:\$1]]\" na ovoj wiki'''",
'searchmenu-new' => "'''Napravi stranicu \"[[:\$1|\$1]]\" na ovoj wiki!'''",
-'searchhelp-url' => 'Help:Sadržaj',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Pregledaj stranice sa ovim prefiksom]]',
'searchprofile-articles' => 'Stranice sadržaja',
'searchprofile-project' => 'Stranice pomoći i projekta',
'searchdisabled' => 'Pretraga teksta na ovoj Wiki je trenutno onemogućena.
U međuvremenu možete pretraživati preko Googlea.
Uzmite u obzir da njegovi indeksi za ovu Wiki ne moraju biti ažurirani.',
+'search-error' => 'Dogodila se pogreška prilikom pretraživanja: $1',
# Preferences page
'preferences' => 'Postavke',
'userrights-notallowed' => 'Vaš račun Vam ne daje dozvolu da postavljate i uklanjate korisnička prava.',
'userrights-changeable-col' => 'Grupe koje možete mijenjati',
'userrights-unchangeable-col' => 'Grupe koje ne možete mijenjati',
+'userrights-conflict' => 'Sukob u korisničkim pravima! Molimo pošaljite Vaše promjene ponovno.',
# Groups
'group' => 'Grupa:',
One se možda moraju povezati sa konkretnim člankom.<br />
Stranica se smatra stranicom za razvrstavanje, ukoliko koristi šablon koji je povezan sa spiskom [[MediaWiki:Disambiguationspage|stranica za razvrstavanje]]",
+'pageswithprop' => 'Stranice sa svojstvom stranice',
+'pageswithprop-legend' => 'Stranice sa svojstvom stranice',
+'pageswithprop-text' => 'Ova stranica navodi stranice sa specifičnim svojstvom stranice.',
+'pageswithprop-prop' => 'Naziv svojstva:',
+'pageswithprop-submit' => 'Idi',
+
'doubleredirects' => 'Dvostruka preusmjerenja',
'doubleredirectstext' => 'Ova stranica prikazuje stranice koje preusmjeravaju na druga preusmjerenja.
Svaki red sadrži veze na prvo i drugo preusmjerenje, kao i na prvu liniju teksta drugog preusmjerenja, što obično daje "pravi" ciljni članak, na koji bi prvo preusmjerenje i trebalo da pokazuje.
'listusers-noresult' => 'Nije pronađen korisnik.',
'listusers-blocked' => '(blokiran)',
+# Special:ActiveUsers
+'activeusers' => 'Spisak aktivnih korisnika',
+'activeusers-intro' => 'Ovo je spisak korisnika koji su napravili neku aktivnost u {{PLURAL:$1|zadnji $1 dan|zadnja $1 dana|zadnjih $1 dana}}.',
+'activeusers-count' => '{{PLURAL:$1|$1 izmjena|$1 izmjene|$1 izmjena}} u {{PLURAL:$3|posljednji $3 dan|posljednja $3 dana|posljednjih $3 dana}}',
+'activeusers-from' => 'Prikaži korisnike koji počinju sa:',
+'activeusers-hidebots' => 'Sakrij botove',
+'activeusers-hidesysops' => 'Sakrij administratore',
+'activeusers-noresult' => 'Nije pronađen korisnik.',
+
# Special:ListGroupRights
'listgrouprights' => 'Prava korisničkih grupa',
'listgrouprights-summary' => 'Slijedi spisak korisničkih grupa na ovoj wiki, s njihovim pravima pristupa.
'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',
+'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.',
'thumbnail-more' => 'Uvećaj',
'filemissing' => 'Nedostaje datoteka',
'thumbnail_error' => 'Greška pri pravljenju umanjene slike: $1',
+'thumbnail_error_remote' => 'Poruka o pogrešci o $1:
+$2',
'djvu_page_error' => 'DjVu stranica je van opsega',
'djvu_no_xml' => 'Za XML-datoteku se ne može pozvati DjVu datoteka',
'thumbnail-temp-create' => 'Ne mogu da napravim privremenu smanjenu sliku',
'minutes' => '{{PLURAL:$1|$1 minut|$1 minuta|$1 minuta}}',
'hours' => '{{PLURAL:$1|$1 sat|$1 sata|$1 sati}}',
'days' => '{{PLURAL:$1|$1 dan|$1 dana|$1 dana}}',
+'weeks' => '{{PLURAL:$1|$1 sedmica}}',
'months' => '{{PLURAL:$1|$1 mjesec|$1 mjeseci}}',
'years' => '{{PLURAL:$1|$1 godina|$1 godine|$1 godina}}',
'ago' => 'prije $1',
'just-now' => 'upravo sada',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|sat|sati}}',
+'minutes-ago' => '$1 {{PLURAL:$1|minut|minuta}}',
+'seconds-ago' => '$1 {{PLURAL:$1|sekunda|sekunde}}',
+'monday-at' => 'ponedjeljak u $1',
+'tuesday-at' => 'utorak u $1',
+'wednesday-at' => 'srijeda u $1',
+'thursday-at' => 'četvrtak u $1',
+'friday-at' => 'petak u $1',
+'saturday-at' => 'subota u $1',
+'sunday-at' => 'nedjelja u $1',
+'yesterday-at' => 'jučer u $1',
+
# Bad image list
'bad_image_list' => "Koristi se sljedeći format:
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Širina',
'exif-imagelength' => 'Visina',
'exif-bitspersample' => 'Bita po komponenti',
'exif-originalimageheight' => 'Visina slike prije nego što je odrezana',
'exif-originalimagewidth' => 'Širina slike prije nego što je odrezana',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Nekompresovano',
'exif-compression-2' => 'CCITT Grupa 3 1 — Dimenzionalno izmijenjeo Huffmanovo šifriranje po dužini',
'exif-compression-3' => 'CCITT Group 3 faks kodiranje',
'version-entrypoints-header-entrypoint' => 'Ulazna tačka',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Putanja datoteke',
-'filepath-page' => 'Datoteka:',
-'filepath-submit' => 'Idi',
-'filepath-summary' => 'Ova posebna stranica prikazuje potpunu putanju za datoteku.
-Slike su prikazane u punoj veličini, ostale vrste datoteka su prikazane direktno sa, s njima povezanim, programom.',
+# Special:Redirect
+'redirect' => 'Preusmjeravanje preko datoteke, korisnika ili ID-a izmjene',
+'redirect-legend' => 'Preusmjeravanje na datoteku ili stranicu',
+'redirect-summary' => 'Ova posebna stranica preusmjerava na datoteku (ako je navedeno ime datoteke), stranicu (ako postoji ID revizije) ili korisničku stranicu (ako postoji brojčani ID korisnika).',
+'redirect-submit' => 'Idi',
+'redirect-lookup' => 'Pregled:',
+'redirect-value' => 'Vrijednost:',
+'redirect-user' => 'Korisnički ID',
+'redirect-revision' => 'Izmjena stranice',
+'redirect-file' => 'Naziv datoteke',
+'redirect-not-exists' => 'Vrijednost nije pronađena',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Potraga za duplim datotekama',
'htmlform-submit' => 'Unesi',
'htmlform-reset' => 'Vrati izmjene',
'htmlform-selectorother-other' => 'Ostalo',
+'htmlform-no' => 'Ne',
+'htmlform-yes' => 'Da',
+'htmlform-chosen-placeholder' => 'Odaberi opciju',
# SQLite database support
'sqlite-has-fts' => '$1 sa podrškom pretrage cijelog teksta',
'sqlite-no-fts' => '$1 bez podrške pretrage cijelog teksta',
# New logging system
-'logentry-delete-delete' => '$1 obrisa stranicu $3',
-'logentry-delete-restore' => '$1 povrati stranicu $3',
-'logentry-delete-event' => '$1 promijeni vidljivost {{PLURAL:$5|događaja u historiji|$5 događaja u historiji|$5 događaja u historiji}} na $3: $4',
-'logentry-delete-revision' => '$1 promijeni vidljivost {{PLURAL:$5|izmjene|$5 izmjene|$5 izmjena}} na stranici $3: $4',
-'logentry-delete-event-legacy' => '$1 promijeni vidljivost događajâ u historiji na $3',
-'logentry-delete-revision-legacy' => '$1 promijeni vidljivost izmjenâ na stranici $3',
-'logentry-suppress-delete' => '$1 potisnu stranicu $3',
+'logentry-delete-delete' => '$1 je {{GENDER:$2|obrisao|obrisala}} stranicu $3',
+'logentry-delete-restore' => '$1 je {{GENDER:$2|vratio|vratila}} stranicu $3',
+'logentry-delete-event' => '$1 je {{GENDER:$2|promijenio|promijenila}} vidljivost {{PLURAL:$5|događaja|$5 događaja}} u evidenciji na $3: $4',
+'logentry-delete-revision' => '$1 je {{GENDER:$2|promijenio|promijenila}} vidljivost {{PLURAL:$5|izmjene|$5 izmjene|$5 izmjena}} na stranici $3: $4',
+'logentry-delete-event-legacy' => '$1 je {{GENDER:$2|promijenio|promijenila}} vidljivost događaja u evidenciji na $3',
+'logentry-delete-revision-legacy' => '$1 je {{GENDER:$2|promijenio|promijenila}} vidljivost izmjena na stranici $3',
+'logentry-suppress-delete' => '$1 je {{GENDER:$2|potisnuo|potisnula}} stranicu $3',
'logentry-suppress-event' => '$1 potajno promijeni vidljivost {{PLURAL:$5|događaja u historiji|$5 događaja u historiji|$5 događaja u historiji}} na $3: $4',
-'logentry-suppress-revision' => '$1 potajno promijeni vidljivost {{PLURAL:$5|izmjene|$5 izmjene|$5 izmjena}} na stranici $3: $4',
-'logentry-suppress-event-legacy' => '$1 potajno promijeni vidljivost događajâ u registru na $3',
-'logentry-suppress-revision-legacy' => '$1 potajno promijeni vidljivost izmjenâ na stranici $3',
+'logentry-suppress-revision' => '$1 je tajno {{GENDER:$2|promijenio|promijenila}} vidljivost {{PLURAL:$5|izmjene|$5 izmjene|$5 izmjena}} na stranici $3: $4',
+'logentry-suppress-event-legacy' => '$1 je tajno {{GENDER:$2|promijenio|promijenila}} vidljivost događaja u evidenciji na $3',
+'logentry-suppress-revision-legacy' => '$1 je tajno {{GENDER:$2|promijenio|promijenila}} vidljivost izmjena na stranici $3',
'revdelete-content-hid' => 'sadržaj je sakriven',
'revdelete-summary-hid' => 'sažetak izmjene je sakriven',
'revdelete-uname-hid' => 'korisničko ime sakriveno',
'revdelete-uname-unhid' => 'korisničko ime je otkriveno',
'revdelete-restricted' => 'primijenjena ograničenja za administratore',
'revdelete-unrestricted' => 'uklonjena ograničenja za administratore',
-'logentry-move-move' => '$1 premjesti stranicu $3 na $4',
-'logentry-move-move-noredirect' => '$1 premjesti stranicu $3 na $4 bez ostavljanja preusmjerenja',
-'logentry-move-move_redir' => '$1 je premjestio stranicu $3 na $4 preko preusmjerenja',
-'logentry-move-move_redir-noredirect' => '$1 premjesti stranicu $3 na $4 preko preusmjerenja bez ostavljanja preusmjerenja',
-'logentry-patrol-patrol' => '$1 označi izmjenu $4 pregledane stranice $3',
-'logentry-patrol-patrol-auto' => '$1 samostalno označi izmjenu $4 pregledane stranice $3',
-'logentry-newusers-newusers' => 'Korisnički račun $1 je napravljen',
-'logentry-newusers-create' => 'Korisnički račun $1 je napravljen',
-'logentry-newusers-create2' => 'Korisnički račun $3 {{GENDER:|je napravio|je napravila|je napravio}} $1',
-'logentry-newusers-byemail' => 'Korisnički račun $3 je napravio $1 i lozinka/šifra je poslana putem e-maila',
-'logentry-newusers-autocreate' => 'Račun $1 je samostalno otvoren',
-'logentry-rights-rights' => '$1 {{GENDER:$1|je promijenio|je promijenila|je promijenio}} članstvo grupe za $3 iz $4 u $5',
-'logentry-rights-rights-legacy' => '$1 {{GENDER:$1|je promenio|je promenila|je promenio}} članstvo grupe za $3',
-'logentry-rights-autopromote' => '$1 je automatski {{GENDER:$1|unaprijeđen|unaprijeđena|unaprijeđen}} iz $4 u $5',
+'logentry-move-move' => '$1 je {{GENDER:$2|premjestio|premjestila}} stranicu $3 na $4',
+'logentry-move-move-noredirect' => '$1 je {{GENDER:$2|premjestio|premjestila}} stranicu $3 na $4 bez ostavljanja preusmjerenja',
+'logentry-move-move_redir' => '$1 je {{GENDER:$2|premjestio|premjestila}} stranicu $3 na $4 preko preusmjeravanja',
+'logentry-move-move_redir-noredirect' => '$1 je {{GENDER:$2|premjestio|premjestila}} stranicu $3 na $4 preko preusmjeravanja bez ostavljanja preusmjeravanja',
+'logentry-patrol-patrol' => '$1 je {{GENDER:$2|označio|označila}} izmjenu $4 stranice $3 patroliranim',
+'logentry-patrol-patrol-auto' => '$1 je automatski {{GENDER:$2|označio|označila}} izmjenu $4 stranice $3 patroliranim',
+'logentry-newusers-newusers' => 'Korisnički račun $1 je {{GENDER:$2|napravljen}}',
+'logentry-newusers-create' => 'Korisnički račun $1 je {{GENDER:$2|napravljen}}',
+'logentry-newusers-create2' => 'Korisnički račun $3 {{GENDER:$2|je napravio|je napravila|je napravio}} $1',
+'logentry-newusers-byemail' => 'Korisnički račun $3 je {{GENDER:$2|napravio|napravila}} $1 i lozinka/šifra je poslana putem e-maila',
+'logentry-newusers-autocreate' => 'Korisnički račun $1 je automatski {{GENDER:$2|napravljen}}',
+'logentry-rights-rights' => '$1 je {{GENDER:$2|promijenio|promijenila|promijenio}} članstvo grupe za $3 iz $4 u $5',
+'logentry-rights-rights-legacy' => '$1 {{GENDER:$2|je promijenio|je promijenila|je promijenio}} članstvo grupe za $3',
+'logentry-rights-autopromote' => '$1 {{GENDER:$2|je automatski unaprijeđen|je automatski unaprijeđena}} iz $4 u $5',
'rightsnone' => '(nema)',
# Feedback
'duration-centuries' => '$1 {{PLURAL:$1|vijek|vijekova}}',
'duration-millennia' => '$1 {{PLURAL:$1|milenijum|milenijuma}}',
+# Image rotation
+'rotate-comment' => 'Slika rotirana za $1 {{PLURAL:$1|stepeni}} u smjeru kazaljke na satu',
+
);
'tog-shownumberswatching' => 'Ml uṭṭun n Midn lli swurn ɣ tasna yad',
'tog-oldsig' => 'Asmmaql (Tiẓṛi) n ukrraj n ufus lli illan:',
'tog-fancysig' => 'Skr akrrag n ufus s taɣarast n wikitext (bla azday utumatik)',
-'tog-externaleditor' => 'Swwur s yan umẓṛg u uṭṛiṣ n brra ( i imskarn lli bahra ḥrcnin, ira mayad riglaj iẓlin ɣ urdinatur)',
-'tog-externaldiff' => 'Skr s yan umsnaḥya abrrani ( i midn lli bahra ḥrcnin, mayad ira riglaj ɣ urdinatur)',
'tog-showjumplinks' => 'Srɣ izdayn « Amuddu » d « acnubc » niḍ « Asiǧl » ɣ uflla n tasna',
'tog-uselivepreview' => 'Skr s umẓri amaynu izrbn (ira JavaScript) (Arm)',
'tog-forceeditsummary' => 'Ayyit tini iɣ ur iwiɣ imsmun n imbdln',
'disclaimers' => 'Ur darssuq',
'disclaimerpage' => 'Project: Ur illa maddar illa ssuq',
'edithelp' => 'Aws ɣ tirra',
-'edithelppage' => 'Help:Imaratn',
'helppage' => 'Help:Mayllan',
'mainpage' => 'Tasana tamzwarut',
'mainpage-description' => 'Tasna tamzwarut',
'emailconfirmlink' => 'Als i tasna nk n tbratin izd nit nttat ayan.',
'loginlanguagelabel' => 'Tutlayt: $1',
-# E-mail sending
+# Email sending
'php-mail-error-unknown' => 'Kra ur igadda tasɣnt btbratin() n PHP.',
# Change password dialog
'searchmenu-legend' => 'Istayn ucnubc',
'searchmenu-exists' => '"\'Tlla yat tasna lli ilan assaɣ « [[:$1]] » ɣ wiki yad',
'searchmenu-new' => "'''Skr Tasna « [[:$1|$1]] » ɣ wiki !'''",
-'searchhelp-url' => 'Help:Mayllan',
'searchprofile-articles' => 'Mayllan ɣ tasna',
'searchprofile-project' => 'Tisniwin n w-aws n usnfar',
'searchprofile-images' => 'Multimedia',
Tzdar at cabbat ɣilad ɣ Google.
Izdar ad urtili ɣ isbidn n mayllan ɣ {{SITENAME}} .',
-# Quickbar
-'qbsettings' => 'Tafeggagt izrbn',
-'qbsettings-none' => 'Ur iḥudda',
-'qbsettings-fixedleft' => 'Aẓẓugz azlmaḍ',
-'qbsettings-fixedright' => 'Azzugz afasi',
-'qbsettings-floatingleft' => 'Yaywul su uzlmad',
-'qbsettings-floatingright' => 'Yaywul su ufasi',
-
# Preferences page
'preferences' => 'Timssusmin',
'mypreferences' => 'Timssusmin',
# Special:ListGroupRights
'listgrouprights-members' => 'Umuɣ n midn',
-# E-mail user
+# Email user
'emailuser' => 'Azn tabrat umsqdac ad',
# Watchlist
'version-software-product' => 'lmntoj',
'version-software-version' => 'noskha',
-# Special:FilePath
-'filepath-page' => 'Asdaw:',
-'filepath-submit' => 'Ftu',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'smiyt n-wasdaw:',
'fileduplicatesearch-submit' => 'Sigl',
$messages = array(
# User preference toggles
-'tog-underline' => 'à·\83බà·\90ඳà·\92 යටà·\93ර කිරීම:',
-'tog-justify' => 'ඡà·\9aදයනà·\8a පà·\9aළ ගස්වන්න',
+'tog-underline' => 'à·\83බà·\90ඳà·\92 යටà·\92à¶\89ර කිරීම:',
+'tog-justify' => 'ඡà·\9aදයනà·\8a පà·\99ළ ගස්වන්න',
'tog-hideminor' => 'මෑත වෙනස් කිරීම්වල සුළු සංස්කරණ සඟවන්න',
'tog-hidepatrolled' => 'මෑත වෙනස් කිරීම්වල මුර සංචාරය කරන ලද සංස්කරණ සඟවන්න',
'tog-newpageshidepatrolled' => 'විමසුමට ලක්කෙරුණු පිටු, අළුත් පිටු ලැයිස්තුවෙහි නොපෙන්වන්න',
'disclaimers' => 'වියාචනයන්',
'disclaimerpage' => 'Project:පොදු වියාචන',
'edithelp' => 'සංස්කරණ උදවු',
-'edithelppage' => 'Help:සංස්කරණ',
'helppage' => 'Help:පටුන',
'mainpage' => 'මුල් පිටුව',
'mainpage-description' => 'මුල් පිටුව',
'createacct-yourpasswordagain-ph' => 'මුර පදය යළි ඇතුළු කරන්න',
'remembermypassword' => 'මාගේ පිවිසීම මෙම ගවේෂක මතකයෙහි (උපරිම ලෙස {{PLURAL:$1|දින|දින}}) $1 ක් මතක තබාගන්න',
'userlogin-remembermypassword' => 'මා ප්රවිෂ්ටයෙහි තබන්න',
-'userlogin-signwithsecure' => 'à·\83à·\94රà¶\9aà·\8aà·\82à·\92චà·\83à·\9aà·\80à·\8fදà·\8fයà¶\9aය à¶à·\94ලà·\92නà·\8a පà·\8aâ\80\8dරà·\80à·\92à·\82à·\8aට කරන්න',
+'userlogin-signwithsecure' => 'à¶\86රà¶\9aà·\8aâ\80\8dà·\82à·\92චà·\83ඹඳà¶à·\8fà·\80 භà·\8fà·\80à·\92à¶à·\8fකරන්න',
'securelogin-stick-https' => 'ඇතුල්වීමෙන් පසුවද HTTPS හරහා සම්බන්ධ වන්න',
'yourdomainname' => 'ඔබගේ වසම:',
'password-change-forbidden' => 'ඔබට මෙම විකියෙහි මුරපද වෙනස් කල නොහැක.',
'blocked-mailpassword' => 'ඔබගේ අන්තර්ජාල ලිපිනය භාවිතා කරමින් සංස්කරණයෙහි යෙදීම වාරණය කොට ඇති අතර, අපයෙදුම වළකනු වස්, මුර-පදය පුනරුත්ථාන කෘත්යය භාවිත කිරීමට අවසරයද අහිමි කොට ඇත.',
'eauthentsent' => 'නම් කර ඇති විද්යුත්-ලිපි ලිපිනය වෙත, තහවුරු කිරීම් විද්යුත්-ලිපියක් යවා ඇත.
ගිණුම වෙත වෙනත් විද්යුත්-ලිපියක් යැවීමට පෙර, ගිණුම සත්ය වශයෙන්ම ඔබගේම බව තහවුරු කරනු වස්, විද්යුත්-ලිපියෙහි අඩංගු උපදෙස් පිළිපදින්න.',
-'throttled-mailpassword' => 'අවසන් {{PLURAL:$1| පැය|පැය $1 }} අතරතුරදී, දැනටමත් එක් මුර-පද සිහිගැන්වීමක් යවා ඇත .
-à¶\85පයà·\99දà·\94ම à·\80à·\85à¶\9aà·\8aà·\80නà·\94 à·\80à·\83à·\8a, {{PLURAL:$1|à¶\91à¶\9aà·\8a පà·\90යà¶\9a| පà·\90ය $1 à¶\9a}}ට à·\80රà¶\9aà·\8a à¶\91à¶\9aà·\8a මà·\94ර-පද à·\83à·\92à·\84à·\92à¶\9cà·\90නà·\8aà·\80à·\93මක් පමණක් යවනු ලැබේ.',
+'throttled-mailpassword' => 'අවසන් {{PLURAL:$1|පැය|පැය $1}} තුල, මුරපද යළි සැකසුම් ඊ-ලිපියක් යවාඇත.
+à¶\85පයà·\99දà·\94ම à·\80à·\85à¶\9aනà·\94 à·\80à·\83à·\8a, {{PLURAL:$1|à¶\91à¶\9aà·\8a පà·\90යà¶\9a|පà·\90ය $1 à¶\9a}}ට à·\80රà¶\9aà·\8a à¶\91à¶\9aà·\8a මà·\94රපද යà·\85à·\92 à·\83à·\90à¶\9aà·\83à·\94මà·\8a à¶\8a-ලà·\92පà·\92යක් පමණක් යවනු ලැබේ.',
'mailerror' => 'තැපෑල යැවීමේදී වූ දෝෂය: $1',
'acct_creation_throttle_hit' => 'ඔබගේ අන්තර්ජාල ලිපිනය භාවිතා කල මෙම විකියට අමුත්තන් විසින් {{PLURAL:$1|එක් ගිණුමක්|ගිණුම් $1 ක්}} පසුගිය දිනය තුලදී තනා ඇති අතර, එය මෙම කාල පරිච්ඡේදය තුලදී ඉඩ දෙනු ලබන උපරිමය වෙයි.
මේ හේතුවෙන්, මෙම අන්තර්ජාල ලිපිනය භාවිතා කරන අමුත්තන් විසින් මෙම අවස්ථාවෙහිදී තවත් ගිණුම් තැනීම සිදු කල නොහැකිව ඇත.',
# Special:PasswordReset
'passwordreset' => 'මුරපදය වෙනස් කරන්න',
-'passwordreset-text' => 'ඔබගේ ගිණුම් තොරතුරුවල විද්යුත් තැපැල් මතක්කිරීමක් ලබා ගැනීම සදහා මෙම ආකෘතිපත්රය සම්පූර්ණ කරන්න.',
'passwordreset-legend' => 'මුරපදය යළි පිහිටුවන්න',
'passwordreset-disabled' => 'මෙම විකියෙහි මුර පද ප්රත්යාරම්භ කිරීම් අක්රීය කොට ඇත.',
-'passwordreset-pretext' => '{{PLURAL:$1||පහත දැක්වෙන දත්ත කණ්ඩ වලින් එකක් ඇතුල් කරන්න}}',
'passwordreset-username' => 'පරිශීලක නාමය:',
'passwordreset-domain' => 'වසම:',
'passwordreset-capture' => 'ප්රතිපලදායක විද්යුත් තැපෑල නරඹනවාද?',
එය මකා දමා ඇති බවක් පෙනේ.',
'edit-conflict' => 'සංස්කරණ ගැටුම.',
'edit-no-change' => 'පෙළට කිසිදු වෙනසක් සිදු නොකල බැවින් ඔබගේ සංස්කරණය නොසලකාහරින ලදි.',
+'postedit-confirmation' => 'ඔබගේ සංස්කරණය සුරකින ලදී.',
'edit-already-exists' => 'නව පිටුවක් තැනිය නොහැකි විය.
එය දැනටමත් පවතියි.',
'defaultmessagetext' => 'සාමාන්ය පණිවුඩ පෙළ',
'searchmenu-legend' => 'ගවේෂණ තෝරාගැනීම්',
'searchmenu-exists' => "'''මෙම විකියෙහි \"[[:\$1]]\" ලෙස නම් කර ඇති පිටුවක් ඇත.'''",
'searchmenu-new' => "'''මෙම විකියෙහි \"[[:\$1]]\" පිටුව තනන්න!'''",
-'searchhelp-url' => 'Help:පටුන',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|මෙම උපසර්ගය භාවිත කරමින් පිටු පිරික්සන්න]]',
'searchprofile-articles' => 'අන්තර්ගත පිටු',
'searchprofile-project' => 'උදවු හා ව්යාපෘති පිටු',
'notvisiblerev' => 'සංශෝධනය මකාදමා ඇත',
'watchnochange' => 'ඔබ විසින් මුරකෙරෙන කිසිදු අයිතමයක් දක්වා ඇති කාල සීමාවෙහිදී සංස්කරණයට භාජනය වී නොමැත.',
'watchlist-details' => 'සාකච්ඡා පිටු නොගිණුනු කල, ඔබගේ මුර ලැයිස්තුවෙහි {{PLURAL:$1|එක් පිටුවක්|පිටු $1 ක්}} ඇත.',
-'wlheader-enotif' => '* විද්යුත්-තැපැල් දැනුම්දීම සක්රීය කෙරිණි.',
-'wlheader-showupdated' => "* ඔබ විසින් ඒවාට අවසන් වරට පිවිසුනු පසුව වෙනස්කෙරුනු පිටු '''තදකුරු''' වලින් පෙන්වා ඇත",
+'wlheader-enotif' => 'විද්යුත්-තැපැල් දැනුම්දීම සක්රීය කෙරිණි.',
+'wlheader-showupdated' => "ඔබ විසින් ඒවාට අවසන් වරට පිවිසුනු පසුව වෙනස්කෙරුනු පිටු '''තදකුරු''' වලින් පෙන්වා ඇත",
'watchmethod-recent' => 'මුර-කෙරෙන පිටු සඳහා මෑත සංස්කරණයන් පරික්ෂා කරමින්',
'watchmethod-list' => 'මෑත සංස්කරණයන් සඳහා මුර-කෙරෙන පිටු පරික්ෂා කරමින්',
'watchlistcontains' => 'ඔබගේ මුර-ලැයිස්තුවෙහි {{PLURAL:$1|එක් පිටුවක්|පිටු $1 ක්}} අඩංගුය.',
'monobook.css' => '/* මෙහි CSS බහාලීම ඒකායන ඡවිය භාවිතා කරන පරිශීලකයන් හට බලපෑම් සිදු කල හැක */',
'modern.css' => '/* මෙහි CSS බහාලීම නූතන ඡවිය භාවිතා කරන පරිශීලකයන් හට බලපෑම් සිදු කල හැක */',
'print.css' => '/* මෙහි CSS බහාලීම මුද්රණ ප්රතිදානයට බලපෑම් සිදු කල හැක */',
-'handheld.css' => '/* මෙහි බහාලන CSS විසින් $wgHandheldStyle හි වින්යාසකෙරෙන ජවිය මත පදනම් වූ අතේ ගෙන යා හැකි උපකරණ වලට බලපෑම් කල හැක*/',
# Scripts
'common.js' => '/* මෙහි ඕනෑම ජාවාස්ක්රිප්ට් එකක් සෑම පිටු ප්රවේශනයකදීම සියළු පරිශීලකයන්හට ප්රවේශනය කෙරේ. */',
'specialpages-group-highuse' => 'බෙහෙවින් භාවිත වන පිටු',
'specialpages-group-pages' => 'පිටු ලැයිස්තු',
'specialpages-group-pagetools' => 'පිටු මෙවලම්',
-'specialpages-group-wiki' => 'à·\80à·\92à¶\9aà·\92 දà¶à·\8aචà·\84à·\8f මà·\99à·\80ලමà·\8a',
+'specialpages-group-wiki' => 'දත්ත හා මෙවලම්',
'specialpages-group-redirects' => 'විශේෂ පිටු යළි-යොමුකිරීම',
'specialpages-group-spam' => 'ස්පෑම් මෙවලම්',
*
* @author Chiak
* @author Danny B.
+ * @author Geitost
* @author Helix84
* @author Kaganer
* @author Kusavica
* @author Maros
* @author Michawiki
* @author Mormegil
+ * @author Nemo bis
* @author Palica
* @author Pitr2311
* @author Ragimiri
'tog-hideminor' => 'V posledných úpravách nezobrazovať drobné úpravy',
'tog-hidepatrolled' => 'Skryť strážené úpravy v Posledných úpravách',
'tog-newpageshidepatrolled' => 'Skryť strážené stránky zo zoznamu nových stránok',
-'tog-extendwatchlist' => 'Rozšíriť zoznam sledovaných, aby zobrazoval všetky zmeny, nie len posledné',
-'tog-usenewrc' => 'Zoskupiť zmeny v posledných úpravách a zoznamoch sledovaných (vyžaduje JavaScript)',
+'tog-extendwatchlist' => 'Rozšíriť zoznam sledovaných stránok, aby zobrazoval všetky zmeny, nie len posledné',
+'tog-usenewrc' => 'Zoskupiť v posledných úpravách a na zozname sledovaných stránok podľa stránky (vyžaduje JavaScript)',
'tog-numberheadings' => 'Automaticky číslovať nadpisy',
-'tog-showtoolbar' => 'Zobraziť panel nástrojov úprav',
-'tog-editondblclick' => 'Upravovať stránky po dvojitom kliknutí (JavaScript)',
-'tog-editsection' => 'Umožniť úpravu sekcie pomocu odkazov [upraviť]',
-'tog-editsectiononrightclick' => 'Umožniť upravovať sekcie po kliknutí pravým tlačidlom na nadpisy sekcií (JavaScript)',
-'tog-showtoc' => 'Zobrazovať obsah (pre stránky s viac ako 3 nadpismi)',
+'tog-showtoolbar' => 'Zobraziť panel nástrojov úprav (vyžaduje JavaSkript)',
+'tog-editondblclick' => 'Upravovať stránky po dvojitom kliknutí (vyžaduje JavaScript)',
+'tog-editsection' => 'Umožniť upravovanie sekcie prostredníctvom odkazov [upraviť]',
+'tog-editsectiononrightclick' => 'Umožniť upravovanie sekcie pravým kliknutím na nadpisy sekcií (vyžaduje JavaScript)',
+'tog-showtoc' => 'Zobrazovať tabuľku s obsahom (pre stránky s viac ako 3 nadpismi)',
'tog-rememberpassword' => 'Zapamätať si prihlásenie na tomto počítači (najviac $1 {{PLURAL:$1|deň|dni|dní}})',
'tog-watchcreations' => 'Pridávať stránky, ktoré vytvorím a súbory, ktoré nahrám medzi sledované',
'tog-watchdefault' => 'Pridávať stránky a súbory, ktoré upravím medzi sledované',
'disclaimers' => 'Vylúčenie zodpovednosti',
'disclaimerpage' => 'Project:Vylúčenie zodpovednosti',
'edithelp' => 'Ako upravovať stránku',
-'edithelppage' => 'Help:Ako upravovať stránku',
'helppage' => 'Help:Obsah',
'mainpage' => 'Hlavná stránka',
'mainpage-description' => 'Hlavná stránka',
'notloggedin' => 'Neprihlásený/á',
'userlogin-noaccount' => 'Nemáte ešte účet?',
'userlogin-joinproject' => 'Pridajte sa k {{GRAMMAR:lokál|{{SITENAME}}}}',
-'nologin' => "Nemáte ešte účet? '''$1'''.",
+'nologin' => 'Nemáte ešte účet? $1.',
'nologinlink' => 'Vytvoriť nový účet',
'createaccount' => 'Vytvoriť nový účet',
'gotaccount' => "Máte už vytvorený účet? '''$1'''.",
# Special:PasswordReset
'passwordreset' => 'Reset hesla',
-'passwordreset-text' => 'Vyplnením tohto formulára si vytvoríte nové heslo.',
'passwordreset-legend' => 'Obnoviť heslo',
'passwordreset-disabled' => 'Obnovenie hesla bolo na tejto wiki zakázané.',
'passwordreset-emaildisabled' => 'E-mailové funkcie boli na tejto wiki vypnuté.',
-'passwordreset-pretext' => '{{PLURAL:$1|Zadajte nižšie uvedený údaj|Zadajte jeden z nižšie uvedených údajov}}',
'passwordreset-username' => 'Používateľské meno:',
'passwordreset-domain' => 'Doména:',
'passwordreset-capture' => 'Zobraziť výsledný e-mail?',
'searchmenu-legend' => 'Možnosti hľadania',
'searchmenu-exists' => "*Stránka '''[[$1]]'''",
'searchmenu-new' => "'''Vytvoriť stránku „[[:$1|$1]]“ na tejto wiki'''",
-'searchhelp-url' => 'Help:Obsah',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Prehliadať stránky s touto predponou]]',
'searchprofile-articles' => 'Stránky s obsahom',
'searchprofile-project' => 'Stránky pomocníka a projektu',
'notvisiblerev' => 'Revízia bola zmazaná',
'watchnochange' => 'V rámci zobrazeného času nebola upravená žiadna z vašich sledovaných stránok.',
'watchlist-details' => '{{PLURAL:$1|Jedna sledovaná stránka|$1 sledované stránky|$1 sledovaných stránok}}, nepočítajúc diskusné stránky.',
-'wlheader-enotif' => '* Upozorňovanie e-mailom je zapnuté.',
-'wlheader-showupdated' => "* Stránky, ktoré boli zmené od vašej poslednej návštevy sú zobrazené '''tučne'''.",
+'wlheader-enotif' => 'Upozorňovanie e-mailom je zapnuté.',
+'wlheader-showupdated' => "Stránky, ktoré boli zmené od vašej poslednej návštevy sú zobrazené '''tučne'''.",
'watchmethod-recent' => 'kontrolujú sa sledované stránky v posledných úpravách',
'watchmethod-list' => 'kontrolujú posledné úpravy v sledovaných stránkach',
'watchlistcontains' => 'Váš zoznam sledovaných obsahuje {{PLURAL:$1|jednu stránku|$1 stránky|$1 stránok}}.',
'modern.css' => '/* Tu umiestnené CSS bude ovplyvňovať používateľov štýlu Moderný */',
'vector.css' => '/* Tu umiestnené CSS bude ovplyvňovať používateľov štýlu Vector */',
'print.css' => '/* Tu umiestnené CSS bude ovplyvňovať tlačový výstup */',
-'handheld.css' => '/* Tu umiestnené CSS bude ovplyvňovať prenosné zariadenia vychádzajúceho zo štýlu nastaveného v $wgHandheldStyle */',
'noscript.css' => '/* Tu umiestnené CSS bude ovplyvňovať používateľov s vypnutým JavaScriptom */',
'group-autoconfirmed.css' => '/* Tu umiestnené CSS bude ovplyvňovať iba používateľov s overenou emailovou adresou */',
'group-bot.css' => '/* Tu umiestnené CSS bude ovplyvňovať iba robotov */',
* @author Freakolowsky
* @author Irena Plahuta
* @author McDutchie
+ * @author Nemo bis
* @author Smihael
* @author Vadgt
* @author XJamRastafire
'oct' => 'okt.',
'nov' => 'nov.',
'dec' => 'dec.',
+'january-date' => '$1. januar',
+'february-date' => '$1. februar',
+'march-date' => '$1. marec',
+'april-date' => '$1. april',
+'may-date' => '$1. maj',
+'june-date' => '$1. junij',
+'july-date' => '$1. julij',
+'august-date' => '$1. avgust',
+'september-date' => '$1. september',
+'october-date' => '$1. oktober',
+'november-date' => '$1. november',
+'december-date' => '$1. december',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorija|Kategoriji|Kategorije}}',
'create-this-page' => 'Ustvari stran',
'delete' => 'Briši',
'deletethispage' => 'Briši stran',
+'undeletethispage' => 'Obnovi stran',
'undelete_short' => 'Vrni $1 {{PLURAL:$1|izbrisano urejanje|izbrisani urejanji|izbrisana urejanja|izbrisanih urejanj|izbrisanih urejanj}}',
'viewdeleted_short' => 'Ogled {{PLURAL:$1|enega izbrisanega urejanja|$1 izbrisanih urejanj}}',
'protect' => 'Zaščiti',
'disclaimers' => 'Zanikanja odgovornosti',
'disclaimerpage' => 'Project:Splošno zanikanje odgovornosti',
'edithelp' => 'Pomoč pri urejanju',
-'edithelppage' => 'Help:Urejanje',
'helppage' => 'Help:Vsebina',
'mainpage' => 'Glavna stran',
'mainpage-description' => 'Glavna stran',
'namespaceprotected' => "Nimate dovoljenja urejati strani v imenskem prostoru '''$1'''.",
'customcssprotected' => 'Nimate pravice urejati te strani CSS, ker vsebuje osebne nastavitve drugega uporabnika.',
'customjsprotected' => 'Nimate pravice urejati te strani JavaScript, ker vsebuje osebne nastavitve drugega uporabnika.',
+'mycustomcssprotected' => 'Nimate pravic za urejanje te strani s CSS.',
+'mycustomjsprotected' => 'Nimate pravic za urejanje te strani z JavaScriptom.',
'ns-specialprotected' => 'Posebnih strani ni mogoče urejati.',
'titleprotected' => "Uporabnik [[User:$1|$1]] je preprečil ustvarjanje strani s takim naslovom.
Podani razlog je bil »''$2''«.",
'createacct-yourpasswordagain-ph' => 'Ponovno vnesite geslo',
'remembermypassword' => 'Zapomni si me na tem računalniku (za največ $1 {{PLURAL:$1|dan|dneva|dni}})',
'userlogin-remembermypassword' => 'Zapomni si me',
-'userlogin-signwithsecure' => 'Vpiši se z varnim strežnikom',
+'userlogin-signwithsecure' => 'Uporabi varno povezavo',
'securelogin-stick-https' => 'Po prijavi ostani povezan preko HTTPS',
'yourdomainname' => 'Domena',
'password-change-forbidden' => 'Na tem wikiju ne morete spreminjati gesel.',
'gotaccount' => 'Račun že imate? $1.',
'gotaccountlink' => 'Prijavite se',
'userlogin-resetlink' => 'Ste pozabili svoje prijavne podatke?',
+'userlogin-resetpassword-link' => 'Ponastavite svoje geslo',
'helplogin-url' => 'Help:Prijava',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Pomoč pri prijavi]]',
'createacct-join' => 'Spodaj vnesite svoje informacije.',
Poskrbite, da imate omogočene piškotke, osvežite to stran in poskusite znova.',
'noname' => 'Niste vnesli veljavnega uporabniškega imena.',
'loginsuccesstitle' => 'Uspešno ste se prijavili',
-'loginsuccess' => "'''Sedaj ste prijavljeni v {{GRAMMAR:tožilnik|{{SITENAME}}}} kot »$1«.'''",
+'loginsuccess' => "'''Zdaj ste prijavljeni v {{GRAMMAR:tožilnik|{{SITENAME}}}} kot »$1«.'''",
'nosuchuser' => 'Uporabnik z imenom »$1« ne obstaja.
Uporabniška imena so občutljiva na velikost črk.
Preverite črkovanje ali pa si [[Special:UserLogin/signup|ustvarite nov uporabniški račun]].',
'cannotchangeemail' => 'E-poštnih naslovov računa na tem wikiju ni mogoče spremeniti.',
'emaildisabled' => 'Stran ne more pošiljati e-pošte.',
'accountcreated' => 'Račun je ustvarjen',
-'accountcreatedtext' => 'Uporabniški račun za »$1« je ustvarjen.',
+'accountcreatedtext' => 'Ustvarili smo uporabniški račun za [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|pogovor]]).',
'createaccount-title' => 'Ustvarjanje računa za {{GRAMMAR:tožilnik|{{SITENAME}}}}',
'createaccount-text' => 'Nekdo je ustvaril račun $2 na {{GRAMMAR:dajalnik|{{SITENAME}}}} ($4). Geslo za »$2« je »$3«. Priporočljivo je, da se prijavite in spremenite svoje geslo sedaj.
# Special:PasswordReset
'passwordreset' => 'Ponastavitev gesla',
-'passwordreset-text' => 'Izpolnite obrazec, da ponastavite geslo.',
+'passwordreset-text-one' => 'Izpolnite obrazec, da ponastavite svoje geslo.',
+'passwordreset-text-many' => 'Vnesite {{PLURAL:$1|podatek|enega od podatkov}}, da ponastavite svoje geslo.',
'passwordreset-legend' => 'Ponastavitev gesla',
'passwordreset-disabled' => 'Ponastavljanje gesla je na tem wikiju onemogočeno.',
'passwordreset-emaildisabled' => 'Na tem wikiju so možnosti e-pošte onemogočene.',
-'passwordreset-pretext' => '{{PLURAL:$1||Vnesite enega od dela podatkov spodaj}}',
'passwordreset-username' => 'Uporabniško ime:',
'passwordreset-domain' => 'Domena:',
'passwordreset-capture' => 'Ogled nastale e-pošte?',
Izgleda, da je bila izbrisana.',
'edit-conflict' => 'Navzkrižje urejanj.',
'edit-no-change' => 'Vaše urejanje je bilo prezrto, saj ni vsebovalo sprememb.',
+'postedit-confirmation' => 'Vaše urejanje smo shranili.',
'edit-already-exists' => 'Ni bilo mogoče ustvariti nove strani, ker že obstaja.',
'defaultmessagetext' => 'Prednastavljeno besedilo',
'content-failed-to-parse' => 'Nisem mogel razčleniti vsebine $2 za obliko $1: $3',
'invalid-content-data' => 'Neveljavni podatki vsebine',
'content-not-allowed-here' => 'Vsebina »$1« ni dovoljena na strani [[$2]]',
'editwarning-warning' => 'Če zapustite stran, boste morda izgubili vse spremembe, ki ste jih naredili.
-Če ste prijavljeni, lahko to opozorilo onemogočite v razdelku »{{int:prefs-editing}}« v svojih nastavitvah.',
+Če ste prijavljeni, lahko to opozorilo onemogočite v razdelku »Urejanje« v svojih nastavitvah.',
# Content models
'content-model-wikitext' => 'wikibesedilo',
'searchmenu-legend' => 'Možnosti za iskanje',
'searchmenu-exists' => "'''Na tem wikiju obstaja stran »[[:$1]]«'''",
'searchmenu-new' => "'''Ustvari stran »[[:$1]]« na tem wikiju!'''",
-'searchhelp-url' => 'Help:Vsebina',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Iskanje strani s to predpono]]',
'searchprofile-articles' => 'Članki',
'searchprofile-project' => 'Pomoč in projektne strani',
'prefs-help-gender' => 'Podatek ni obvezen, uporablja pa se ga izključno za pravilno obliko naslavljanja programja glede na spol.
Podatek bo javno prikazan.',
'email' => 'E-pošta',
-'prefs-help-realname' => 'Pravo ime je neobvezno.
+'prefs-help-realname' => 'Pravo ime ni obvezno.
Če se ga odločite navesti, bo uporabljeno za priznavanje vašega dela.',
'prefs-help-email' => 'E-poštni naslov ni obvezen, vendar omogoča, da vam v primeru pozabljenega gesla pošljemo novo.',
'prefs-help-email-others' => 'Omogočite lahko tudi možnost, da vam lahko ostali uporabniki pošiljajo e-pošto prek vaše uporabniške ali pogovorne strani.
'userrights-changeable-col' => 'Skupine, ki jih lahko spremenite',
'userrights-unchangeable-col' => 'Skupine, ki jih ne morete spremeniti',
'userrights-conflict' => 'Spor uporabniških pravic! Prosimo, da ponovno uveljavite svoje spremembe.',
+'userrights-removed-self' => 'Uspešno ste odstranili svoje pravice. Tako sedaj ne morete več dostopati do te strani.',
# Groups
'group' => 'Skupina:',
'right-editusercssjs' => 'Urejanje CSS- in JS-datotek drugih uporabnikov',
'right-editusercss' => 'Uredi CSS datotek drugih uporabnikov',
'right-edituserjs' => 'Uredi JS datotek drugih uporabnikov',
+'right-editmyusercss' => 'Uredite svoje uporabniške datoteke CSS',
+'right-editmyuserjs' => 'Uredite svoje uporabniške datoteke JavaScript',
+'right-viewmywatchlist' => 'Ogledovanje svojega spiska nadzorov',
+'right-editmywatchlist' => 'Urejanje svojega spiska nadzorov. Pomnite, da bodo nekatera dejanja dodala strani tudi brez te pravice.',
'right-rollback' => 'Hitro vračanje urejanj zadnjega uporabnika, ki je urejal določeno stran',
'right-markbotedits' => 'Označi vrnjena urejanja kot urejanja botov',
'right-noratelimit' => 'Omejitve dejavnosti ne veljajo',
'action-userrights-interwiki' => 'upravljanje uporabniških pravic za uporabnike drugih wikijev',
'action-siteadmin' => 'zaklenitev ali odklepanje podatkovne baze',
'action-sendemail' => 'pošiljanje e-sporočil',
+'action-editmywatchlist' => 'urejanje svojega spiska nadzorov',
+'action-viewmywatchlist' => 'ogleda svojega spiska nadzorov',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|sprememba|spremembi|spremembe|sprememb|sprememb}}',
'reuploaddesc' => 'Prekliči nalaganje in se vrni na obrazec za nalaganje',
'upload-tryagain' => 'Vnesite spremenjen opis datoteke',
'uploadnologin' => 'Niste prijavljeni',
-'uploadnologintext' => 'Za nalaganje datotek se [[Special:UserLogin|prijavite]].',
+'uploadnologintext' => 'Za nalaganje datotek se morate $1.',
'upload_directory_missing' => 'Mapa za nalaganje datotek ($1) manjka in je ni bilo mogoče ustvariti s spletnim strežnikom.',
'upload_directory_read_only' => 'V mapo za nalaganje datotek ($1) spletni strežnik ne more pisati.',
'uploaderror' => 'Napaka',
# File description page
'file-anchor-link' => 'Datoteka',
'filehist' => 'Zgodovina datoteke',
-'filehist-help' => 'Kliknite na datum in čas za ogled datoteke, ki je bila takrat naložena.',
+'filehist-help' => 'Kliknite datum in čas za ogled datoteke, ki je bila takrat naložena.',
'filehist-deleteall' => 'izbriši vse',
'filehist-deleteone' => 'izbriši to',
'filehist-revert' => 'vrni',
'notvisiblerev' => 'Redakcija je bila izbrisana',
'watchnochange' => 'V prikazanem časovnem obdobju ni nihče spremenil nadzorovanih strani.',
'watchlist-details' => 'Spremljate $1 {{PLURAL:$1|stran|strani|strani|strani|strani}} (pogovorne strani niso vštete).',
-'wlheader-enotif' => '* Obveščanje po elektronski pošti je omogočeno.',
-'wlheader-showupdated' => "* Strani, spremenjene od vašega zadnjega ogleda, so prikazane '''krepko'''.",
+'wlheader-enotif' => 'Obveščanje po elektronski pošti je omogočeno.',
+'wlheader-showupdated' => "Strani, spremenjene od vašega zadnjega ogleda, so prikazane '''krepko'''.",
'watchmethod-recent' => 'med nedavnimi urejanji iščem spremljane strani',
'watchmethod-list' => 'med spremljanimi stranmi iščem nedavna urejanja',
'watchlistcontains' => 'Spremljate $1 {{PLURAL:$1|stran|strani}}.',
'mycontris' => 'Prispevki',
'contribsub2' => 'Uporabnik: $1 ($2)',
'nocontribs' => 'Ne najdem nobene merilom ustrezajoče spremembe.',
-'uctop' => ' (vrh)',
+'uctop' => '(trenutno)',
'month' => 'Od meseca (in prej):',
'year' => 'Od leta (in prej):',
'thumbnail-more' => 'Povečaj',
'filemissing' => 'Datoteka manjka',
'thumbnail_error' => 'Napaka pri izdelavi sličice: $1',
+'thumbnail_error_remote' => 'Sporočilo o napaki od $1:
+$2',
'djvu_page_error' => 'Stran DjVu je izven območja',
'djvu_no_xml' => 'Ni mogoče pridobiti XML za datoteko DjVu',
'thumbnail-temp-create' => 'Ne morem ustvariti začasne datoteke sličice',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath Pot skripta]',
# Special:Redirect
+'redirect' => 'Preusmeri po datoteki, uporabniku ali ID-ju redakcije',
'redirect-legend' => 'Preusmeritev na datoteko ali stran',
+'redirect-summary' => 'Posebna stran preusmeri na datoteko (če podate ime datoteke), stran (če podate ID redakcije) ali uporabniško stran (če podatek številski ID uporabnika).',
'redirect-submit' => 'Pojdi',
'redirect-lookup' => 'Iskanje:',
'redirect-value' => 'Vrednost:',
* @file
*
* @author Als-Holder
+ * @author Geitost
* @author Jens Liebenau
* @author Jonny84
* @author Kaganer
'tog-shownumberswatching' => 'Oazoahl derr beobachtenden Nutzer oazäan',
'tog-oldsig' => 'Vorschau der aktuella Signatur:',
'tog-fancysig' => 'Signatur ols Wikitext behandeln (ohne automatische Verlinkung)',
-'tog-externaleditor' => "Extern'n Editor als Standard benutza (nur fier Experta, is missa spezielle Einstellungen uff dam eegenen Rechner vurgenumma warn)",
-'tog-externaldiff' => 'Externes Diff-Programm als Standard benutza (nur fier Experta, is missa spezielle Einstellungen uff dam eegenen Rechner vurgenumma warn)',
'tog-showjumplinks' => '„Wechseln zu“-Verknipfunga aktiviern',
'tog-uselivepreview' => 'Direkte Vurschau notza (beneetigt JavaScript) (vrsuchsweise)',
'tog-forceeditsummary' => 'Warnen, wenn bem Speichern de Zsoammafassung fahln tutt',
'disclaimers' => 'Impressum',
'disclaimerpage' => 'Project:Impressum',
'edithelp' => 'Bearbeitungshilfe',
-'edithelppage' => 'Help:Bearbeitungshilfe',
'helppage' => 'Help:Hilfe',
'mainpage' => 'Hauptseite',
'mainpage-description' => 'Hauptseite',
'logout' => 'Oabmelda',
'userlogout' => 'Oabmelda',
'notloggedin' => 'Nä oangemeldet',
-'nologin' => "Du hast keen Benutzerkonto? '''$1'''.",
+'nologin' => 'Du hast keen Benutzerkonto? $1.',
'nologinlink' => 'Neues Benutzerkonto oanleega',
'createaccount' => 'Benutzerkonto oanlega',
'gotaccount' => "Du hast bereits a Benutzerkonto? '''$1'''.",
'powersearch-togglenone' => 'Kenne',
'searchdisabled' => 'De {{SITENAME}}-Suche ies deaktiviert. Du koast underdessa miet Google sucha. Bitte bedenke, doaß der Suchindex fier {{SITENAME}} veraltet sei koan.',
-# Quickbar
-'qbsettings' => 'Seytaleiste',
-'qbsettings-none' => 'Keene',
-
# Preferences page
'preferences' => 'Eenstellunga',
'mypreferences' => 'Meene Eistellunga',
'upload-proto-error' => 'Foalsches Protokoll',
'upload-proto-error-text' => 'De URL muuß miet <code>http://</code> oder <code>ftp://</code> beginna.',
'upload-file-error-text' => "Bei dar Erstellung a'r temporären Datei uff'd Server ies a interner Fahler uffgetreta.
-Bitte informiere an'n [[Special:ListUsers/sysop|System-Administrator]].",
+Bitte informiere an'n [[Special:ListUsers/sysop|Administrator]].",
'upload-misc-error' => 'Unbekennter Fahler beim Huchloada',
'upload-misc-error-text' => "Beim Huchloada ies a unbekennter Fahler uffgetreta.
Priefe de URL uff Fahler, dann Online-Status der Seite und versuche 's erneut.
-Wenn doas Problem wetter bestieht, informiere anna [[Special:ListUsers/sysop|System-Administrator]].",
+Wenn doas Problem wetter bestieht, informiere anna [[Special:ListUsers/sysop|Administrator]].",
'upload-too-many-redirects' => 'De URL beinhaltete zu viele Wetterleitunga',
'upload-unknown-size' => 'Unbekennte Grieße',
'upload-http-error' => 'A HTTP-Fahler ies uffgetreta: $1',
'notanarticle' => 'Keene Seite',
'watchnochange' => 'Kenne dar vu dir beobachteta Seyta wurde während des oagezeigta Zeitraums beoarbeetet.',
'watchlist-details' => 'Du beobachtest {{PLURAL:$1|1 Seite|$1 Seita}}.',
-'wlheader-enotif' => '* Dar E-Mail-Benoachrichtigungsdienst ies aktiviert.',
-'wlheader-showupdated' => "* Seyta miet noo ne gesehenen Änderunga waan '''fett''' dargestellt.",
+'wlheader-enotif' => 'Dar E-Mail-Benoachrichtigungsdienst ies aktiviert.',
+'wlheader-showupdated' => "Seyta miet noo ne gesehenen Änderunga waan '''fett''' dargestellt.",
'watchmethod-recent' => 'Ieberprifa dar letzta Beoarbeetunga fier de Beobachtungsliste',
'watchmethod-list' => 'Ieberpriefa dar Beobachtungsliste noach letzta Beoarbeetunga',
'watchlistcontains' => 'Denne Beobachtungsliste enthält $1 {{PLURAL:$1|Seite|Seita}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagelength' => 'Länge',
'exif-bitspersample' => 'Bits pro Forbkomponente',
'exif-compression' => 'Oart dar Kompression',
'version-hook-name' => 'Schnittstallanoame',
'version-hook-subscribedby' => 'Uffruff vu',
-# Special:FilePath
-'filepath-submit' => 'Pfad sucha',
-'filepath-summary' => 'Miet dieser Spezialseyte lässt siech dar komplette Pfad dar aktuella Version einer Datei ohne Umweg obfroaga. De oagefroagte Datei werd direkt dargestallt bzw. miet der verkniepfta Oawendung gestartet.
-
-De Eengabe muuß ohne dann Zusatz „{{ns:file}}:“ erfolga.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-summary' => 'Suche noach Dateiduplikaten uff Basis ihres Hashwertes.',
'fileduplicatesearch-legend' => 'Suche noach Duplikata',
# Special:ListUsers
'listusers-submit' => 'Vuesehte',
-# E-mail user
+# Email user
'emailuser' => 'E-påaste dïhte nuhtjien',
'emailpage' => 'E-påaste nuhtjien',
'defemailsubject' => '{{SITENAME}} e-påaste',
'watching' => 'Sïektjeminie...',
'unwatching' => 'Ov-sïektjedh...',
-'enotif_newpagetext' => 'Dïhte lea orre bielie.',
'enotif_impersonal_salutation' => '{{SITENAME}} nuhtjien',
'created' => 'skaepede',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Gamte',
'exif-imagelength' => 'Gåhkoe',
'exif-model' => 'Guvviedahke hammohke',
'disclaimers' => "Masuul la'aan",
'disclaimerpage' => "Project:Masuul la'aan guud",
'edithelp' => 'Caawinaada wax ka bedelka',
-'edithelppage' => 'Help:Wax ka bedelka',
'helppage' => 'Help:Caawinaad',
'mainpage' => 'Bogga Hore',
'mainpage-description' => 'Bogga Hore',
'yourpassword' => 'Eraysir:',
'yourpasswordagain' => 'Markale qor ereysirka:',
'remembermypassword' => 'Kumbuyuutarkaan ku xasuusnaaw magaceyga gudagalka (ilaa $1 {{PLURAL:$1|maalin|maalmood}})',
+'userlogin-remembermypassword' => 'Ka dhig mid diyaar ah mar waliba',
'yourdomainname' => 'Magacaga shabakada',
'password-change-forbidden' => 'Ma badali kartid Eraysir ee wiki.',
'login' => 'Gudaha gal',
'logout' => 'Ka bax',
'userlogout' => 'Ka bax',
'notloggedin' => 'Gudaha kuma jirtid',
+'userlogin-noaccount' => "Akoon ma heysatid? '''$1'''.",
'nologin' => "Akoon ma heysatid? '''$1'''.",
'nologinlink' => 'Akoon sameyso',
'createaccount' => 'Sameey gudagale',
'gotaccount' => "Waan heystaa gudagale? '''$1'''.",
'gotaccountlink' => 'Gudaha gal',
'userlogin-resetlink' => 'Ma ilaawday tafaasiisha gudagalahaada?',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Caawinaad habka gudagalka]]',
'createaccountmail' => 'E-mail ahaan',
'createaccountreason' => 'Sababta:',
'badretype' => 'Ereyada sirta ah oo qortay ma islahan.',
'searchmenu-legend' => 'Raadi doorashooyinka',
'searchmenu-exists' => "'''Wikigaan wuu ku jiraa bog la dhoho \"[[:\$1]]\" .'''",
'searchmenu-new' => "'''Ku sameey bogga \"[[:\$1]]\" wikigaan!'''",
-'searchhelp-url' => 'Help:Caawinaad',
'searchprofile-articles' => 'Maqaalada kooban',
'searchprofile-project' => 'Caawin iyo Bogga mashruuca',
'searchprofile-images' => 'Multimedia-ha',
'disclaimers' => 'Shfajësimet',
'disclaimerpage' => 'Project:Shfajësimet e përgjithshme',
'edithelp' => 'Ndihmë për redaktim',
-'edithelppage' => 'Help:Redaktimi',
'helppage' => 'Help:Përmbajtje',
'mainpage' => 'Faqja kryesore',
'mainpage-description' => 'Faqja kryesore',
# Special:PasswordReset
'passwordreset' => 'Ndrysho fjalkalimin',
-'passwordreset-text' => 'Plotësoni këtë formular për të marrë një këshillë e-mail të dhënat e llogarisë suaj.',
'passwordreset-legend' => 'Ndrysho fjalkalimin',
'passwordreset-disabled' => 'Rivendosja e fjalëkalimit është deaktivizuar në këtë wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1| | Shkruani një nga pjesët e të dhënave më poshtë}}',
'passwordreset-username' => 'Nofka:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Dëshiron të shikosh e-mail-in që rezulton?',
'searchmenu-legend' => 'Parazgjedhjet e kërkimit',
'searchmenu-exists' => "'''Në këtë wiki kjo faqe është emëruar \"[[:\$1]]\"'''",
'searchmenu-new' => "'''Hapë faqen \"[[:\$1]]\" në këtë wiki!'''",
-'searchhelp-url' => 'Help:Ndihmë',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Shfletoi faqet me këtë parashtesë]]',
'searchprofile-articles' => 'Përmbajtja e faqeve',
'searchprofile-project' => 'Ndihmë dhe faqet e Projektit',
'listusers-noresult' => "Asnjë përdorues s'u gjet.",
'listusers-blocked' => '(Bllokuar)',
+# Special:ActiveUsers
+'activeusers' => 'Lista e përdoruesve aktivë',
+'activeusers-intro' => 'Kjo është një listë e përdoruesve që kanë qenë aktivë për $1 {{PLURAL:$1|ditë|ditë}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|redaktim|redaktime}} në {{PLURAL:$3|ditën|$3 ditët}} e fundit',
+'activeusers-from' => 'Trego përdoruesit duke filluar prej te:',
+'activeusers-hidebots' => 'Fshih robotët',
+'activeusers-hidesysops' => 'Fshih administratorët',
+'activeusers-noresult' => 'Asnjë përdorues nuk u gjet.',
+
# Special:ListGroupRights
'listgrouprights' => 'Grupime përdoruesish me privilegje',
'listgrouprights-summary' => 'Më poshtë jepet grupimi i përdoruesve sipas privilegjeve që ju janë dhënë në këtë wiki. Më shumë informacion rreth privilegjeve në veçanti mund të gjendet [[{{MediaWiki:Listgrouprights-helppage}}|këtu]].',
'notvisiblerev' => 'Revizioni është grisur',
'watchnochange' => 'Asnjë nga artikujt nën mbikqyrje nuk është redaktuar gjatë kohës së dhënë.',
'watchlist-details' => '{{PLURAL:$1|$1 faqe|$1 faqe}} nën mbikqyrje duke mos numëruar faqet e diskutimit.',
-'wlheader-enotif' => '* Njoftimi me email është lejuar.',
-'wlheader-showupdated' => "* Faqet që kanë ndryshuar nga vizita juaj e fundit do të tregohen të '''trasha'''",
+'wlheader-enotif' => 'Njoftimi me email është lejuar.',
+'wlheader-showupdated' => "Faqet që kanë ndryshuar nga vizita juaj e fundit do të tregohen të '''trasha'''",
'watchmethod-recent' => 'duke parë ndryshimet e fundit për faqet nën mbikqyrje',
'watchmethod-list' => 'duke parë faqet nën mbikqyrje për ndryshimet e fundit',
'watchlistcontains' => 'Lista mbikqyrëse e juaj ka $1 {{PLURAL:$1|faqe|faqe}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Gjerësia',
'exif-imagelength' => 'Gjatësia',
'exif-bitspersample' => 'Bit për komponent',
'exif-originalimageheight' => 'Lartësia e fotografisë para se të shkurtohej',
'exif-originalimagewidth' => 'Gjerësia e fotografisë para se të shkurtohej',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'E pangjeshur',
'exif-compression-2' => 'CCITT Grupi 3 1-Dimensional Kodimi i Modifikuar Huffman i linjës së gjatësisë',
'exif-compression-3' => 'CCITT Grupi 3 faks kodimi',
'version-software-version' => 'Versioni',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Vendndodhja e skedave',
-'filepath-page' => 'Skeda:',
-'filepath-submit' => 'Shko',
-'filepath-summary' => 'Kjo faqe speciale jep vendndodhjen e plotë të një skede.
-Figurat tregohen me madhësi të plotë, skedat e tjera hapen me programet përkatëse.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Kërkoni për skeda të dyfishta',
'fileduplicatesearch-summary' => 'Kërkoni për dyfishime të skedave në bazë të vlerës përmbledhëse («hash»).',
* @author CERminator
* @author Charmed94
* @author FriedrickMILBarbarossa
+ * @author Geitost
* @author Helios13
* @author Kaganer
* @author Kale
'oct' => 'окт',
'nov' => 'нов',
'dec' => 'дец',
+'january-date' => '$1 јануар',
+'february-date' => '$1 фебруар',
+'march-date' => '$1 март',
+'april-date' => '$1 април',
+'may-date' => '$1 мај',
+'june-date' => '$1 јун',
+'july-date' => '$1 јул',
+'august-date' => '$1 август',
+'september-date' => '$1 семптембар',
+'october-date' => '$1 окотобар',
+'november-date' => '$1 новембар',
+'december-date' => '$1 децембар',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категорија|Категорије}}',
'disclaimers' => 'Одрицање одговорности',
'disclaimerpage' => 'Project:Одрицање одговорности',
'edithelp' => 'Помоћ при уређивању',
-'edithelppage' => 'Help:Уређивање',
'helppage' => 'Help:Садржај',
'mainpage' => 'Главна страна',
'mainpage-description' => 'Главна страна',
Не заборавите да промените своја [[Special:Preferences|подешавања]].',
'yourname' => 'Корисничко име:',
'userlogin-yourname' => 'Корисничко име',
+'userlogin-yourname-ph' => 'Унесите ваше корисничко име',
'yourpassword' => 'Лозинка:',
'userlogin-yourpassword' => 'Лозинка',
-'userlogin-yourpassword-ph' => 'Унесите лозинку',
+'userlogin-yourpassword-ph' => 'Унесите вашу лозинку',
+'createacct-yourpassword-ph' => 'Унесите нову лозинку',
'yourpasswordagain' => 'Потврда лозинке:',
-'remembermypassword' => 'Запамти ме на овом прегледачу (најдуже $1 {{PLURAL:$1|дан|дана|дана}})',
-'userlogin-remembermypassword' => 'Запамти ме',
+'createacct-yourpasswordagain' => 'Потврдите лозинку',
+'createacct-yourpasswordagain-ph' => 'Унесите лозинку још једном',
+'remembermypassword' => 'Запамти моју лозинку на овом прегледачу (најдуже $1 {{PLURAL:$1|дан|дана}})',
+'userlogin-remembermypassword' => 'Остави ме пријављеног/у',
+'userlogin-signwithsecure' => 'Користите сигурну конекцију',
'securelogin-stick-https' => 'Останите повезани са HTTPS након пријаве',
'yourdomainname' => 'Домен:',
'password-change-forbidden' => 'Не можете да промените лозинку на овом викију.',
'logout' => 'Одјава',
'userlogout' => 'Одјави ме',
'notloggedin' => 'Нисте пријављени',
-'nologin' => 'Немате налог? Идите на страницу „$1“.',
+'userlogin-noaccount' => 'Немате налог?',
+'userlogin-joinproject' => 'Отворите га',
+'nologin' => 'Немате налог? Идите на страницу $1.',
'nologinlink' => 'Отварање налога',
'createaccount' => 'Отвори налог',
'gotaccount' => 'Већ имате налог? Идите на страницу „$1“.',
'gotaccountlink' => 'Пријава',
'userlogin-resetlink' => 'Заборавили сте податке за пријаву?',
+'userlogin-resetpassword-link' => 'Ресетујте лозинку',
+'helplogin-url' => 'Help:Logging in',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Помоћ при пријављивању]]',
+'createacct-join' => 'Унесите своје податке испод',
+'createacct-emailrequired' => 'Адреса е-поште',
+'createacct-emailoptional' => 'Адреса е-поште (опцијоно)',
+'createacct-email-ph' => 'Унесите вашу адресу е-поште',
'createaccountmail' => 'Користите привремену, случајно створену лозинку и пошаљите на доле наведену адресу електронске поште',
+'createacct-realname' => 'Право име (опцијоно)',
'createaccountreason' => 'Разлог:',
+'createacct-reason' => 'Разлог',
+'createacct-reason-ph' => 'Зашто правите још један налог?',
+'createacct-captcha' => 'Сигурносна провера',
+'createacct-imgcaptcha-ph' => 'Унесите текст који видите изнад',
+'createacct-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' => 'Кориснички налог је отворен, али нисте пријављени.
Овај вики користи колачиће за пријаву. Вама су колачићи онемогућени.
# Special:PasswordReset
'passwordreset' => 'Обнављање лозинке',
-'passwordreset-text' => 'Попуните овај образац да бисте ресетовали лозинку.',
+'passwordreset-text-one' => 'Попуните овај образац да бисте ресетовали лозинку.',
'passwordreset-legend' => 'Поништи лозинку',
'passwordreset-disabled' => 'Обнављање лозинке је онемогућено на овом викију.',
-'passwordreset-pretext' => '{{PLURAL:$1||Унесите један од делова података испод}}',
'passwordreset-username' => 'Корисничко име:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Погледати крајњу поруку?',
'sectioneditnotsupported-text' => 'Уређивање одељка није подржано на овој страници.',
'permissionserrors' => 'Грешке у дозволама',
'permissionserrorstext' => 'Немате овлашћење за ту радњу из {{PLURAL:$1|следећег|следећих}} разлога:',
-'permissionserrorstext-withaction' => 'Ð\9dемаÑ\82е дозволÑ\83 да $2 из {{PLURAL:$1|следећег|следећих}} разлога:',
+'permissionserrorstext-withaction' => 'Ð\9dемаÑ\82е дозволÑ\83 за $2 из {{PLURAL:$1|следећег|следећих}} разлога:',
'recreate-moveddeleted-warn' => "'''Упозорење: поново правите страницу која је претходно обрисана.'''
Размотрите да ли је прикладно да наставите с уређивањем ове странице.
Изгледа да је обрисана.',
'edit-conflict' => 'Сукоб измена.',
'edit-no-change' => 'Ваша измена је занемарена јер није било никаквих измена у тексту.',
+'postedit-confirmation' => 'Ваша измена је сачувана.',
'edit-already-exists' => 'Не могу да направим страницу.
Изгледа да она већ постоји.',
'defaultmessagetext' => 'Подразумевани текст поруке',
# Search results
'searchresults' => 'Резултати претраге',
-'searchresults-title' => 'РезÑ\83лÑ\82аÑ\82и пÑ\80еÑ\82Ñ\80аге за â\80\9e$1â\80\9d',
+'searchresults-title' => 'РезÑ\83лÑ\82аÑ\82и пÑ\80еÑ\82Ñ\80аге за â\80\9e$1â\80\9c',
'searchresulttext' => 'За више информација о претраживању пројекта {{SITENAME}} погледајте [[{{MediaWiki:Helppage}}|{{int:help}}]].',
'searchsubtitle' => "Тражили сте '''[[:$1]]''' ([[Special:Prefixindex/$1|све странице које почињу са „$1“]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|све странице које воде до „$1“]])",
'searchsubtitleinvalid' => "Тражили сте '''$1'''",
'searchmenu-legend' => 'Поставке претраге',
'searchmenu-exists' => "'''Постоји и чланак под називом „[[:$1]]“.'''",
'searchmenu-new' => "'''Направите страницу „[[:$1]]“.'''",
-'searchhelp-url' => 'Help:Садржај',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Прегледај странице с овим префиксом]]',
'searchprofile-articles' => 'Чланци',
'searchprofile-project' => 'Странице помоћи и пројеката',
'notvisiblerev' => 'Измена је обрисана',
'watchnochange' => 'Ништа што надгледате није промењено у приказаном времену.',
'watchlist-details' => '{{PLURAL:$1|$1 страница|$1 странице|$1 страница}} на вашем списку надгледања, не рачунајући странице за разговор.',
-'wlheader-enotif' => '* Е-обавештење је омогућено.',
-'wlheader-showupdated' => "* Странице које су измењене откад сте их последњи пут посетили су '''подебљане'''",
+'wlheader-enotif' => 'Обавештење е-поруком је омогућено.',
+'wlheader-showupdated' => "Странице које су измењене откад сте их последњи пут посетили су '''подебљане'''.",
'watchmethod-recent' => 'проверава се да ли има надгледаних страница у скорашњим изменама',
'watchmethod-list' => 'проверава се да ли има скорашњих измена у надгледаним страницама',
'watchlistcontains' => 'Ваш списак надгледања садржи $1 {{PLURAL:$1|страницу|странице|страница}}.',
'blanknamespace' => '(Главно)',
# Contributions
-'contributions' => 'Кориснички доприноси',
+'contributions' => '{{GENDER:$1|Кориснички}} доприноси',
'contributions-title' => 'Доприноси {{GENDER:$1|корисника|кориснице|корисника}} $1',
'mycontris' => 'Доприноси',
'contribsub2' => 'За $1 ($2)',
'nocontribs' => 'Измене које одговарају овим условима нису пронађене.',
-'uctop' => '(вÑ\80Ñ\85)',
+'uctop' => '(поÑ\81ледÑ\9aа)',
'month' => 'од месеца (и раније):',
'year' => 'од године (и раније):',
'modern.css' => '/* CSS постављен овде ће утицати на све кориснике теме „Савремено“ */',
'vector.css' => '/* CSS постављен овде ће утицати на све кориснике теме „Векторско“ */',
'print.css' => '/* CSS постављен овде ће утицати на издање за штампу */',
-'handheld.css' => '/* CSS постављен овде ће утицати на ручне уређаје с темом прилагођеном у $wgHandheldStyle */',
'noscript.css' => '/* CSS постављен овде ће утицати на све кориснике којима је онемогућен јаваскрипт */',
'group-autoconfirmed.css' => '/* CSS постављен овде ће утицати на самопотврђене кориснике */',
'group-bot.css' => '/* CSS постављен овде ће утицати само на ботове */',
'hours' => '{{PLURAL:$1|$1 сат|$1 сата|$1 сати}}',
'days' => '{{PLURAL:$1|$1 дан|$1 дана|$1 дана}}',
'ago' => 'пре $1',
+'just-now' => 'управо сад',
# Bad image list
'bad_image_list' => 'Формат је следећи:
'version-poweredby-credits' => "Овај вики покреће '''[//www.mediawiki.org/ Медијавики]''', ауторска права © 2001-$1 $2.",
'version-poweredby-others' => 'остали',
'version-credits-summary' => 'Желели бисмо да захвалимо следећим људима на њиховом доприносу [[Special:Version|Медијавикији]].',
-'version-license-info' => 'Медијавики је слободан софтвер; можете га расподељивати и мењати под условима ГНУ-ове опште јавне лиценце (ОЈЛ) коју је објавила Задужбина за слободан софтвер, било да је у питању друго или новије издање лиценце.
+'version-license-info' => 'Медијавики је слободан софтвер можете га редистрибуирати и/или модификовати под условима ГНУ-ове опште јавне лиценце верзија 2 или сваке следеће коју објави Задужбина за слободан софтвер.
-Медијавики се нуди у нади да ће бити од користи, али БЕЗ ИКАКВЕ ГАРАНЦИЈЕ; чак и без подразумеване гаранције о ПРОДАЈНОЈ ВРЕДНОСТИ или ПОГОДНОСТИ ЗА ОДРЕЂЕНЕ НАМЕНЕ. Погледајте ГНУ-ову општу јавну лиценцу за више информација.
+Медијавики се редистрибуирати у нади да ће бити од користи, али БЕЗ ИКАКВЕ ГАРАНЦИЈЕ чак и без ПОДРАЗУМЕВАНЕ ГАРАНЦИЈЕ ФУНКЦИОНАЛНОСТИ или ПРИКЛАДНОСТИ ЗА ОДРЕЂЕНЕУ НАМЕНУ. Погледајте ГНУ-ову општу јавну лиценцу за више информација.
-Требало би да сте примили [{{SERVER}}{{SCRIPTPATH}}/COPYING примерак ГНУ-ове опште јавне лиценце] заједно с овим програмом. Ако нисте, пишите на Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA или [//www.gnu.org/licenses/old-licenses/gpl-2.0.html прочитајте овде].',
+Требало би да сте примили [{{SERVER}}{{SCRIPTPATH}}/COPYING примерак ГНУ-ове опште јавне лиценце] заједно са овим програмом. Ако нисте, пишите на Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA или [//www.gnu.org/licenses/old-licenses/gpl-2.0.html прочитајте овде].',
'version-software' => 'Инсталирани софтвер',
'version-software-product' => 'Производ',
'version-software-version' => 'Верзија',
'version-entrypoints-header-entrypoint' => 'Улазна тачка',
'version-entrypoints-header-url' => 'Адреса',
+# Special:Redirect
+'redirect-submit' => 'Иди',
+'redirect-value' => 'Вредност:',
+'redirect-file' => 'Назив датотеке',
+'redirect-not-exists' => 'Вредност није пронађена',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Претрага дупликата',
'fileduplicatesearch-summary' => 'Претрага дуплираних датотека према вредностима дисперзије.',
'specialpages-group-highuse' => 'Најчешће коришћене странице',
'specialpages-group-pages' => 'Спискови страница',
'specialpages-group-pagetools' => 'Алатке',
-'specialpages-group-wiki' => 'Подаци и алати енциклопедије',
+'specialpages-group-wiki' => 'Подаци и алати',
'specialpages-group-redirects' => 'Преусмеравање посебних страница',
'specialpages-group-spam' => 'Алатке против непожељних порука',
'htmlform-selectorother-other' => 'Друго',
'htmlform-no' => 'Не',
'htmlform-yes' => 'Да',
+'htmlform-chosen-placeholder' => 'Изаберите опцију',
# SQLite database support
'sqlite-has-fts' => '$1 с подршком претраге целог текста',
* @file
*
* @author FriedrickMILBarbarossa
+ * @author Geitost
* @author Kaganer
* @author Liangent
* @author Meno25
* @author Michaello
+ * @author Milicevic01
* @author Rancher
* @author Red Baron
* @author Reedy
* @author Slaven Kosanovic
+ * @author TheStefan12345
* @author Жељко Тодоровић
* @author Михајло Анђелковић
* @author לערי ריינהארט
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1. januar',
+'february-date' => '$1. februar',
+'march-date' => '$1. mart',
+'april-date' => '$1. april',
+'may-date' => '$1. maj',
+'june-date' => '$1. jun',
+'july-date' => '$1. jul',
+'august-date' => '$1. august',
+'september-date' => '$1. septembar',
+'october-date' => '$1. oktobar',
+'november-date' => '$1. novembar',
+'december-date' => '$1. decembar',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorija|Kategorije}}',
'newwindow' => '(otvara u novom prozoru)',
'cancel' => 'Otkaži',
'moredotdotdot' => 'Više…',
-'mypage' => 'Moja stranica',
+'morenotlisted' => 'Više nije prikazano...',
+'mypage' => 'Stranica',
'mytalk' => 'Razgovor',
'anontalk' => 'Razgovor za ovu IP adresu',
'navigation' => 'Navigacija',
'disclaimers' => 'Odricanje odgovornosti',
'disclaimerpage' => 'Project:Odricanje odgovornosti',
'edithelp' => 'Pomoć pri uređivanju',
-'edithelppage' => 'Help:Uređivanje',
'helppage' => 'Help:Sadržaj',
'mainpage' => 'Glavna strana',
'mainpage-description' => 'Glavna strana',
Možete da nastavite s korišćenjem ovog vikija kao gost, ili se <span class='plainlinks'>[$1 ponovo prijavite]</span> kao drugi korisnik.
Imajte na umu da neke stranice mogu nastaviti da se prikazuju kao da ste još prijavljeni, sve dok ne očistite privremenu memoriju svog pregledača.",
+'welcomeuser' => 'Dobrodošli, $1!',
'yourname' => 'Korisničko ime:',
+'userlogin-yourname' => 'Korisničko ime',
+'userlogin-yourname-ph' => 'Unesite vaše korisničko ime',
'yourpassword' => 'Lozinka:',
+'userlogin-yourpassword' => 'Lozinka',
+'userlogin-yourpassword-ph' => 'Unesite vašu lozinku',
+'createacct-yourpassword-ph' => 'Unesite novu lozinku',
'yourpasswordagain' => 'Potvrda lozinke:',
+'createacct-yourpasswordagain' => 'Potvrdite lozinku',
+'createacct-yourpasswordagain-ph' => 'Unesite lozinku još jednom',
'remembermypassword' => 'Zapamti me na ovom pregledaču (najduže $1 {{PLURAL:$1|dan|dana|dana}})',
+'userlogin-remembermypassword' => 'Ostavi me prijavljenog/u',
+'userlogin-signwithsecure' => 'Koristite sigurnu konekciju',
'securelogin-stick-https' => 'Ostanite povezani sa HTTPS nakon prijave',
'yourdomainname' => 'Domen:',
'password-change-forbidden' => 'Ne možete da promenite lozinku na ovom vikiju.',
'logout' => 'Odjava',
'userlogout' => 'Odjavi me',
'notloggedin' => 'Niste prijavljeni',
-'nologin' => 'Nemate nalog? Idite na stranicu „$1“.',
+'userlogin-noaccount' => 'Nemate nalog?',
+'userlogin-joinproject' => 'Otvorite ga',
+'nologin' => 'Nemate nalog? Idite na stranicu $1.',
'nologinlink' => 'Otvaranje naloga',
'createaccount' => 'Otvori nalog',
'gotaccount' => 'Već imate nalog? Idite na stranicu „$1“.',
'gotaccountlink' => 'Prijava',
'userlogin-resetlink' => 'Zaboravili ste podatke za prijavu?',
-'createaccountmail' => 'E-poštom',
+'userlogin-resetpassword-link' => 'Resetuj lozinku',
+'helplogin-url' => 'Help:Logging in',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Pomoć pri prijavljivanju]]',
+'createacct-join' => 'Unesite svoje podatke ispod.',
+'createacct-emailrequired' => 'Adresa e-pošte',
+'createacct-emailoptional' => 'Adresa e-pošte (opcijono)',
+'createacct-email-ph' => 'Unesite vašu adresu e-pоšte',
+'createaccountmail' => 'Koristite privremenu, slučajno stvorenu lozinku i pošaljite na dole navedenu adresu elektronske pošte',
+'createacct-realname' => 'Pravo ime (opcijono)',
'createaccountreason' => 'Razlog:',
+'createacct-reason' => 'Razlog',
+'createacct-reason-ph' => 'Zašto pravite još jedan nalog?',
+'createacct-captcha' => 'Sigurnosna provera',
+'createacct-imgcaptcha-ph' => 'Unesite tekst koji vidite iznad',
+'createacct-submit' => 'Otvorite nalog',
+'createacct-benefit-heading' => '{{SITENAME}} je napravljen od strane ljudi kao što ste vi.',
+'createacct-benefit-body3' => 'skorašnjih {{PLURAL:$1|doprinosa}}',
'badretype' => 'Unete lozinke se ne poklapaju.',
'userexists' => 'Korisničko ime je zauzeto. Izaberite drugo.',
'loginerror' => 'Greška pri prijavljivanju',
+'createacct-error' => 'Došlo je do greške pri kreiranju naloga',
'createaccounterror' => 'Ne mogu da otvorim nalog: $1',
'nocookiesnew' => 'Korisnički nalog je otvoren, ali niste prijavljeni.
Ovaj viki koristi kolačiće za prijavu. Vama su kolačići onemogućeni.
# Special:PasswordReset
'passwordreset' => 'Obnavljanje lozinke',
-'passwordreset-text' => 'Popunite ovaj obrazac da biste primili e-poruku sa svojim podacima za prijavu.',
+'passwordreset-text-one' => 'Popunite ovaj obrazac da biste resetovali lozinku.',
'passwordreset-legend' => 'Poništi lozinku',
'passwordreset-disabled' => 'Obnavljanje lozinke je onemogućeno na ovom vikiju.',
-'passwordreset-pretext' => '{{PLURAL:$1||Unesite jedan od delova podataka ispod}}',
'passwordreset-username' => 'Korisničko ime:',
'passwordreset-domain' => 'Domen:',
'passwordreset-capture' => 'Pogledati krajnju poruku?',
'sectioneditnotsupported-text' => 'Uređivanje odeljka nije podržano na ovoj stranici.',
'permissionserrors' => 'Greške u dozvolama',
'permissionserrorstext' => 'Nemate ovlašćenje za tu radnju iz {{PLURAL:$1|sledećeg|sledećih}} razloga:',
-'permissionserrorstext-withaction' => 'Nemate dozvolu da $2 iz {{PLURAL:$1|sledećeg|sledećih}} razloga:',
+'permissionserrorstext-withaction' => 'Nemate dozvolu za $2 iz {{PLURAL:$1|sledećeg|sledećih}} razloga:',
'recreate-moveddeleted-warn' => "'''Upozorenje: ponovo pravite stranicu koja je prethodno obrisana.'''
Razmotrite da li je prikladno da nastavite s uređivanjem ove stranice.
Izgleda da je obrisana.',
'edit-conflict' => 'Sukob izmena.',
'edit-no-change' => 'Vaša izmena je zanemarena jer nije bilo nikakvih izmena u tekstu.',
+'postedit-confirmation' => 'Vaša izmena je sačuvana.',
'edit-already-exists' => 'Ne mogu da napravim stranicu.
Izgleda da ona već postoji.',
'defaultmessagetext' => 'Podrazumevani tekst poruke',
# Search results
'searchresults' => 'Rezultati pretrage',
-'searchresults-title' => 'Rezultati pretrage za â\80\9e$1â\80\9d',
+'searchresults-title' => 'Rezultati pretrage za â\80\9e$1â\80\9c',
'searchresulttext' => 'Za više informacija o pretraživanju projekta {{SITENAME}} pogledajte [[{{MediaWiki:Helppage}}|{{int:help}}]].',
'searchsubtitle' => "Tražili ste '''[[:$1]]''' ([[Special:Prefixindex/$1|sve stranice koje počinju sa „$1“]]{{int:pipe-separator}}[[Special:WhatLinksHere/$1|sve stranice koje vode do „$1“]])",
'searchsubtitleinvalid' => "Tražili ste '''$1'''",
'searchmenu-legend' => 'Postavke pretrage',
'searchmenu-exists' => "'''Postoji i članak pod nazivom „[[:$1]]“.'''",
'searchmenu-new' => "'''Napravite stranicu „[[:$1]]“.'''",
-'searchhelp-url' => 'Help:Sadržaj',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Pregledaj stranice s ovim prefiksom]]',
'searchprofile-articles' => 'Članci',
'searchprofile-project' => 'Stranice pomoći i projekata',
'search-interwiki-default' => '$1 rezultati:',
'search-interwiki-more' => '(više)',
'search-relatedarticle' => 'Povezano',
-'mwsuggest-disable' => 'Onemogući predloge AJAX',
+'mwsuggest-disable' => 'Onemogući predloge pri pretraživanju',
'searcheverything-enable' => 'svi imenski prostori',
'searchrelated' => 'povezano',
'searchall' => 'sve',
'backend-fail-notsame' => 'Već postoji neistovetna datoteka – $1.',
'backend-fail-invalidpath' => '$1 nije ispravna putanja za skladištenje.',
'backend-fail-delete' => 'Ne mogu da obrišem datoteku $1.',
+'backend-fail-describe' => 'Ne mogu da promenim metapodatke za datoteku „$1“.',
'backend-fail-alreadyexists' => 'Datoteka $1 već postoji.',
'backend-fail-store' => 'Ne mogu da smestim datoteku $1 u $2.',
'backend-fail-copy' => 'Ne mogu da umnožim datoteku $1 u $2.',
Umesto toga, valjalo bi da vode do odgovarajuće teme.
Stranica se smatra višeznačnom odrednicom ako koristi šablon koji vodi od [[MediaWiki:Disambiguationspage]].",
+'pageswithprop-prop' => 'Ime osobine:',
+'pageswithprop-submit' => 'Idi',
+
'doubleredirects' => 'Dvostruka preusmerenja',
'doubleredirectstext' => 'Ova stranica prikazuje stranice koje preusmeravaju na druga preusmerenja.
Svaki red sadrži veze prema prvom i drugom preusmerenju, kao i odredišnu stranicu drugog preusmerenja koja je obično „pravi“ članak na koga prvo preusmerenje treba da upućuje.
'listusers-noresult' => 'Korisnik nije pronađen.',
'listusers-blocked' => '({{GENDER:$1|blokiran|blokirana|blokiran}})',
+# Special:ActiveUsers
+'activeusers' => 'Spisak aktivnih korisnika',
+'activeusers-intro' => 'Ovo je spisak korisnika koji su bili aktivni {{PLURAL:$1|prethodni dan|u poslednja $1 dana|u poslednjih $1 dana}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|izmena|izmene|izmena}} {{PLURAL:$3|prethodni dan|u poslednja $3 dana|u poslednjih $3 dana}}',
+'activeusers-from' => 'Prikaži korisnike počev od:',
+'activeusers-hidebots' => 'Sakrij botove',
+'activeusers-hidesysops' => 'Sakrij administratore',
+'activeusers-noresult' => 'Korisnik nije pronađen.',
+
# Special:ListGroupRights
'listgrouprights' => 'Prava korisničkih grupa',
'listgrouprights-summary' => 'Sledi spisak korisničkih grupa na ovom vikiju, zajedno s pravima pristupa.
'notvisiblerev' => 'Izmena je obrisana',
'watchnochange' => 'Ništa što nadgledate nije promenjeno u prikazanom vremenu.',
'watchlist-details' => '{{PLURAL:$1|$1 stranica|$1 stranice|$1 stranica}} na vašem spisku nadgledanja, ne računajući stranice za razgovor.',
-'wlheader-enotif' => '* E-obaveštenje je omogućeno.',
-'wlheader-showupdated' => "* Stranice koje su izmenjene otkad ste ih poslednji put posetili su '''podebljane'''",
+'wlheader-enotif' => 'Obaveštenje e-porukom je omogućeno.',
+'wlheader-showupdated' => "Stranice koje su izmenjene otkad ste ih poslednji put posetili su '''podebljane'''.",
'watchmethod-recent' => 'proverava se da li ima nadgledanih stranica u skorašnjim izmenama',
'watchmethod-list' => 'proverava se da li ima skorašnjih izmena u nadgledanim stranicama',
'watchlistcontains' => 'Vaš spisak nadgledanja sadrži $1 {{PLURAL:$1|stranicu|stranice|stranica}}.',
'prot_1movedto2' => '{{GENDER:|je premestio|je premestila|je premestio}} [[$1]] u [[$2]]',
'protect-badnamespace-title' => 'Nezaštitljiv imenski prostor',
'protect-badnamespace-text' => 'Stranice u ovom imenskom prostoru se ne mogu zaštititi.',
+'protect-norestrictiontypes-title' => 'Nezaštitljiva strana',
'protect-legend' => 'Potvrdite zaštitu',
'protectcomment' => 'Razlog:',
'protectexpiry' => 'Ističe:',
'mycontris' => 'Doprinosi',
'contribsub2' => 'Za $1 ($2)',
'nocontribs' => 'Izmene koje odgovaraju ovim uslovima nisu pronađene.',
-'uctop' => '(vrh)',
+'uctop' => '(poslednja)',
'month' => 'od meseca (i ranije):',
'year' => 'od godine (i ranije):',
'modern.css' => '/* CSS postavljen ovde će uticati na sve korisnike teme „Savremeno“ */',
'vector.css' => '/* CSS postavljen ovde će uticati na sve korisnike teme „Vektorsko“ */',
'print.css' => '/* CSS postavljen ovde će uticati na izdanje za štampu */',
-'handheld.css' => '/* CSS postavljen ovde će uticati na ručne uređaje s temom prilagođenom u $wgHandheldStyle */',
'noscript.css' => '/* CSS postavljen ovde će uticati na sve korisnike kojima je onemogućen javaskript */',
'group-autoconfirmed.css' => '/* CSS postavljen ovde će uticati na samopotvrđene korisnike */',
'group-bot.css' => '/* CSS postavljen ovde će uticati samo na botove */',
'pageinfo-robot-noindex' => 'Ne može da se popiše',
'pageinfo-views' => 'Broj pregleda',
'pageinfo-watchers' => 'Broj nadgledača stranica',
+'pageinfo-few-watchers' => 'Manje od $1 {{PLURAL:$1|pratioca|pratilaca}}',
'pageinfo-redirects-name' => 'Preusmeravanja na stranicu',
'pageinfo-subpages-name' => 'Podstranice ove stranice',
'pageinfo-subpages-value' => '$1 ($2 {{PLURAL:$2|preusmerenje|preusmerenja|preusmerenja}}; $3 {{PLURAL:$3|nepreusmerenje|nepreusmerenja|nepreusmerenja}})',
'pageinfo-protect-cascading' => 'Prenosiva zaštita stranica važi odavde',
'pageinfo-protect-cascading-yes' => 'Da',
'pageinfo-protect-cascading-from' => 'Stranice sa prenosivom zaštitom od',
+'pageinfo-category-info' => 'Informacije o kategoriji',
+'pageinfo-category-pages' => 'Broj stranica',
+'pageinfo-category-subcats' => 'Broj potkategorija',
+'pageinfo-category-files' => 'Broj datoteka',
# Skin names
'skinname-cologneblue' => 'Kelnsko plava',
'file-nohires' => 'Veća rezolucija nije dostupna.',
'svg-long-desc' => 'SVG datoteka, nominalno $1 × $2 piksela, veličina: $3',
'svg-long-desc-animated' => 'Animirana SVG datoteka, nominalno: $1 × $2 piksela, veličina: $3',
+'svg-long-error' => 'Neispravna SVG datoteka: $1',
'show-big-image' => 'Puna veličina',
'show-big-image-preview' => 'Veličina ovog prikaza: $1.',
'show-big-image-other' => '{{PLURAL:$2|Druga rezolucija|Druge rezolucije}}: $1.',
'hours' => '{{PLURAL:$1|$1 sat|$1 sata|$1 sati}}',
'days' => '{{PLURAL:$1|$1 dan|$1 dana|$1 dana}}',
'ago' => 'pre $1',
+'just-now' => 'upravo sad',
# Bad image list
'bad_image_list' => 'Format je sledeći:
'metadata-langitem' => "'''$2:''' $1",
'metadata-langitem-default' => '$1',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Širina',
'exif-imagelength' => 'Visina',
'exif-bitspersample' => 'Dubina boje',
$8',
'exif-subjectnewscode-value' => '$2 ($1)',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Nesažeto',
'exif-compression-2' => 'CCITT Group 3 1 – Dimenzionalno izmenjeno Hafmanovo kodiranje po dužini',
'exif-compression-3' => 'CCITT Group 3 faks kodiranje',
'version-poweredby-credits' => "Ovaj viki pokreće '''[//www.mediawiki.org/ Medijaviki]''', autorska prava © 2001-$1 $2.",
'version-poweredby-others' => 'ostali',
'version-credits-summary' => 'Želeli bismo da zahvalimo sledećim ljudima na njihovom doprinosu [[Special:Version|Medijavikiji]].',
-'version-license-info' => 'Medijaviki je slobodan softver; možete ga raspodeljivati i menjati pod uslovima GNU-ove opšte javne licence (OJL) koju je objavila Zadužbina za slobodan softver, bilo da je u pitanju drugo ili novije izdanje licence.
+'version-license-info' => 'Medijaviki je slobodan softver možete ga redistribuirati i/ili modifikovati pod uslovima GNU-ove opšte javne licence verzija 2 ili svake sledeće koju objavi Zadužbina za slobodan softver.
-Medijaviki se nudi u nadi da će biti od koristi, ali BEZ IKAKVE GARANCIJE; čak i bez podrazumevane garancije o PRODAJNOJ VREDNOSTI ili POGODNOSTI ZA ODREĐENE NAMENE. Pogledajte GNU-ovu opštu javnu licencu za više informacija.
+Medijaviki se redistribuirati u nadi da će biti od koristi, ali BEZ IKAKVE GARANCIJE čak i bez PODRAZUMEVANE GARANCIJE FUNKCIONALNOSTI ili PRIKLADNOSTI ZA ODREĐENEU NAMENU. Pogledajte GNU-ovu opštu javnu licencu za više informacija.
Trebalo bi da ste primili [{{SERVER}}{{SCRIPTPATH}}/COPYING primerak GNU-ove opšte javne licence] zajedno s ovim programom. Ako niste, pišite na Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA ili [//www.gnu.org/licenses/old-licenses/gpl-2.0.html pročitajte ovde].',
'version-software' => 'Instalirani softver',
'version-entrypoints-header-entrypoint' => 'Ulazna tačka',
'version-entrypoints-header-url' => 'Adresa',
-# Special:FilePath
-'filepath' => 'Putanja datoteke',
-'filepath-page' => 'Datoteka:',
-'filepath-submit' => 'Idi',
-'filepath-summary' => 'Ova posebna stranica prikazuje potpunu putanju datoteke.
-Slike su prikazane u punoj veličini, a druge vrste datoteka se pokreću pomoću njima pridruženim programima.',
+# Special:Redirect
+'redirect-legend' => 'Preusmeri na datoteku ili stranicu',
+'redirect-submit' => 'Idi',
+'redirect-value' => 'Vrednost:',
+'redirect-file' => 'Naziv datoteke',
+'redirect-not-exists' => 'Vrednost nije pronađen',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Pretraga duplikata',
'specialpages-group-highuse' => 'Najčešće korišćene stranice',
'specialpages-group-pages' => 'Spiskovi stranica',
'specialpages-group-pagetools' => 'Alatke',
-'specialpages-group-wiki' => 'Podaci i alati enciklopedije',
+'specialpages-group-wiki' => 'Podaci i alati',
'specialpages-group-redirects' => 'Preusmeravanje posebnih stranica',
'specialpages-group-spam' => 'Alatke protiv nepoželjnih poruka',
'htmlform-submit' => 'Pošalji',
'htmlform-reset' => 'Vrati izmene',
'htmlform-selectorother-other' => 'Drugo',
+'htmlform-no' => 'Ne',
+'htmlform-yes' => 'Da',
+'htmlform-chosen-placeholder' => 'Izaberite opciju',
# SQLite database support
'sqlite-has-fts' => '$1 s podrškom pretrage celog teksta',
'tog-enotifminoredits' => 'E-mail mi fu pikin kenki fu peprewoysi opo mi sirey',
'tog-enotifrevealaddr' => 'Sori mi e-mail nen ini den e-mail boskopu',
'tog-shownumberswatching' => 'Sori omeni kebroikiman e tan luku a papira disi',
-'tog-externaleditor' => 'Tan kebroiki wan dorosey kenki-wrokosani (soso gi sabiman - spesrutu seti de fanowdu gi disi)',
-'tog-externaldiff' => 'Tan kebroiki wan dorosey agersi-wrokosani (soso gi sabiman - spesrutu set de fanowdu gi disi)',
'tog-showjumplinks' => 'Sori den "go na" miti',
'tog-uselivepreview' => 'Kebroiki "wanten sori-na-fesi" (JavaScript – ondrosuku fasi)',
'tog-forceeditsummary' => 'Gi wan boskopu efu a "Syatu" boksu leygi',
'disclaimers' => 'Disclaimers',
'disclaimerpage' => 'Project:Disclaimer gi ala',
'edithelp' => 'Yepi nanga kenki',
-'edithelppage' => 'Help:Kenki',
'helppage' => 'Help:San de',
'mainpage' => 'Fesipapira',
'mainpage-description' => 'Fesipapira',
'prevn' => '{{PLURAL:$1|$1}} di psa',
'nextn' => '{{PLURAL:$1|$1}} trawan',
'viewprevnext' => 'Luku ($1 {{int:pipe-separator}} $2) ($3).',
-'searchhelp-url' => 'Help:San de',
'powersearch' => 'Suku moro dipi',
-# Quickbar
-'qbsettings' => 'Kwikbak',
-'qbsettings-none' => 'Nowan',
-'qbsettings-fixedleft' => 'Set na ku',
-'qbsettings-fixedright' => 'Set na pe',
-'qbsettings-floatingleft' => 'Han na ku',
-'qbsettings-floatingright' => 'Han na pe',
-
# Preferences page
'preferences' => 'Seti',
'mypreferences' => 'Mi seti',
'listusers-submit' => 'Libi si',
'listusers-noresult' => 'No masyin dyaso.',
-# E-mail user
+# Email user
'mailnologin' => 'No stiradresi',
'emailuser' => 'E-mail a kebroikiman disi',
'emailpage' => 'Mayin e-mail',
'tog-shownumberswatching' => 'Antaal fon do beooboachtjende Benutsere anwiese',
'tog-oldsig' => 'Aktuälle Signatuur:',
'tog-fancysig' => 'Unnerskrift as Wikitext behonnelje (sunner automatiske Ferlinkenge)',
-'tog-externaleditor' => 'Externen Editor as Standoard benutsje (bloot foar Experte, der mouten spezielle Ienstaalengen ap dän oaine Computer moaked wäide. [//www.mediawiki.org/wiki/Manual:External_editors Moor Information hiertou.])',
-'tog-externaldiff' => 'Extern Diff-Program as Standoard benutsje (bloot foar Experte, der mouten spezielle Ienstaalengen ap dän oaine Computer moaked wäide.
- [//www.mediawiki.org/wiki/Manual:External_editors Wiedere Informatione hiertou.])',
'tog-showjumplinks' => '"Wikselje tou"-Links muugelk moakje',
'tog-uselivepreview' => 'Live-Foarbekiek nutsje (JavaScript) (experimentell)',
'tog-forceeditsummary' => 'Woarskauje, wan bie dät Spiekerjen ju Touhoopefoatenge failt',
'disclaimers' => 'Begriepskläärenge',
'disclaimerpage' => 'Project:Siede tou Begriepskläärenge',
'edithelp' => 'Beoarbaidengshälpe',
-'edithelppage' => 'Help:Beoarbaidengshälpe',
'helppage' => 'Help:Hälpe',
'mainpage' => 'Haudsiede',
'mainpage-description' => 'Haudsiede',
# Special:PasswordReset
'passwordreset' => 'Paaswoud touräächsätte',
-'passwordreset-text' => 'Dit Formular uutfälle, uum per E-Mail ne Ärinnerenge tou do Anmäldeinformatione tou kriegen.',
'passwordreset-legend' => 'Paaswoud touräächsätte',
'passwordreset-disabled' => 'Dät Touräächsätten fon Paaswoude wuud in dissen Wiki deaktivierd.',
-'passwordreset-pretext' => '{{PLURAL:$1||Reek aan fon do foulgjende Doaten ien}}',
'passwordreset-username' => 'Benutsernoome:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Ju E-Mail-Ättergjucht bekiekje?',
'searchmenu-legend' => 'Säikoptione',
'searchmenu-exists' => "'''Dät rakt n Siede mäd Noome \"[[:\$1]]\" ap dissen Wiki'''",
'searchmenu-new' => "'''Moak ju Siede „[[:$1]]“ in dissen Wiki.'''",
-'searchhelp-url' => 'Help:Hälpe',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Wies aal Sieden, do mäd dän Säikbegriep ounfange]]',
'searchprofile-articles' => 'Inhooldssieden',
'searchprofile-project' => 'Hälpe un Projektsieden',
'search-external' => 'Externe Säike',
'searchdisabled' => 'Ju {{SITENAME}} Fultextsäike is weegen Uurläästenge apstuuns deaktivierd. Du koast insteede deerfon ne Google- of Yahoo-Säike startje. Do Resultoate foar {{SITENAME}} speegelje oawers nit uunbedingd dän aktuällen Stand wier.',
-# Quickbar
-'qbsettings' => 'Siedenlieste',
-'qbsettings-none' => 'Naan',
-'qbsettings-fixedleft' => 'Links, fääst',
-'qbsettings-fixedright' => 'Gjuchts, fääst',
-'qbsettings-floatingleft' => 'Links, swieuwjend',
-'qbsettings-floatingright' => 'Gjuchts, swieuwjend',
-'qbsettings-directionality' => 'Fääst, ouhongich fon de Skrieuwgjuchte fon ju wäälde Sproake',
-
# Preferences page
'preferences' => 'Ienstaalengen',
'mypreferences' => 'Ienstaalengen',
'http-read-error' => 'HTTP-Leesefailer.',
'http-timed-out' => 'Tied is ferron bie ju HTTP-Anfroage.',
'http-curl-error' => 'Failer bier dän Ouroup fon ju URL: $1',
-'http-host-unreachable' => 'URL is nit tou beloangjen',
'http-bad-status' => 'Unner ju HTTP-Anfroage is n Failer aptreeden: $1 $2',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'notvisiblerev' => 'Version wuude läsked',
'watchnochange' => 'Neen fon do Sieden, do du beooboachtest, wuude in dän läästen Tiedruum beoarbaided.',
'watchlist-details' => 'Jie beooboachtje {{PLURAL:$1|1 Siede|$1 Sieden}} (Diskussionssieden wuuden hier nit meetäld).',
-'wlheader-enotif' => '* E-Mail-Beskeed is aktivierd.',
-'wlheader-showupdated' => "* Sieden, do ätter dien lääste Besäik annerd wuuden sunt, wäide '''fat''' deerstoald.",
+'wlheader-enotif' => 'E-Mail-Beskeed is aktivierd.',
+'wlheader-showupdated' => "Sieden, do ätter dien lääste Besäik annerd wuuden sunt, wäide '''fat''' deerstoald.",
'watchmethod-recent' => 'Uurpröiwjen fon do lääste Beoarbaidengen foar ju Beooboachtengslieste',
'watchmethod-list' => 'Uurpröiwjen fon ju Beooboachtengslieste ätter lääste Beoarbaidengen',
'watchlistcontains' => 'Jou Beooboachtengslieste änthaalt $1 {{PLURAL:$1|Siede|Sieden}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Bratte',
'exif-imagelength' => 'Laangte',
'exif-bitspersample' => 'Bits pro Faawenkomponente',
'exif-copyrighted' => 'Uurhieuwergjuchtstoatus',
'exif-copyrightowner' => 'Uurhieuwergjuchtsienhääber',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Uunkomprimierd',
'exif-unknowndate' => 'Uunbekoand Doatum',
'version-software-product' => 'Produkt',
'version-software-version' => 'Version',
-# Special:FilePath
-'filepath' => 'Doatäipaad',
-'filepath-page' => 'Doatäi:',
-'filepath-submit' => 'Gung',
-'filepath-summary' => 'Mäd disse Spezialsiede lät sik die komplette Paad fon ju aktuelle Version fon ne Doatäi sunner Uumwai oufräigje. Ju anfräigede Doatäi wäd fluks deerstoald blw. mäd ju ferknätte Anweendenge started.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Doatäi-Duplikoat-Säike',
'fileduplicatesearch-summary' => 'Säike ätter Doatäi-Duplikoate ap Basis fon hieren Hash-Wäid.',
'tog-shownumberswatching' => 'Témbongkeun jumlah nu ngawaskeun',
'tog-oldsig' => 'Paraf nu geus aya:',
'tog-fancysig' => 'Témbongkeun paraf salaku wikitext (tanpa tumbu otomatis)',
-'tog-externaleditor' => 'Paké éditor éxternal dumasar asalna (ukur pikeun nu ahli, perlu sétingan husus dina komputer anjeun. [//www.mediawiki.org/wiki/Manual:External_editors More information.])',
-'tog-externaldiff' => 'Paké diff éxternal dumasar asalna (ukur pikeun nu ahli, perlu sétingan husus dina komputer anjeun. [//www.mediawiki.org/wiki/Manual:External_editors Émbaran lengkep.])',
'tog-showjumplinks' => 'Aktifkeun tumbu panyambung "luncat ka"',
'tog-uselivepreview' => 'Paké pramidang saharita (JavaScript) (ujicoba)',
'tog-forceeditsummary' => 'Mun kotak ringkesan éditan masih kosong, béjaan!',
'tog-showhiddencats' => 'Témbongkeun kategori nyumput',
'tog-noconvertlink' => 'Non-aktifkeun konvérsi judul tumbu',
'tog-norollbackdiff' => 'Liwat béda sanggeus malikkeun révisi',
+'tog-useeditwarning' => 'Béjaan kuring lamun ninggalkeun kaca édit anu parobahanana can disimpen',
'underline-always' => 'Salawasna',
'underline-never' => 'Ulah',
'disclaimers' => 'Bantahan',
'disclaimerpage' => 'Project:Bantahan_umum',
'edithelp' => 'Pitulung ngédit',
-'edithelppage' => 'Help:Ngédit',
'helppage' => 'Help:Pitulung',
'mainpage' => 'Tepas',
'mainpage-description' => 'Tepas',
# Special:PasswordReset
'passwordreset' => 'Setél ulang sandi',
-'passwordreset-text' => 'Lengkepan ieu formulir pikeun nampa surélék pangéling ngeunaan wincikan akun anjeun.',
'passwordreset-legend' => 'Setél ulang sandi',
'passwordreset-disabled' => 'Dina ieu wiki, sandi teu bisa disetél ulang.',
-'passwordreset-pretext' => '{{PLURAL:$1||Asupkeun salah sahiji data di handap ieu}}',
'passwordreset-username' => 'Sandiasma:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Témbongkeun surat-é hasilna?',
'searchmenu-legend' => 'Pilihan nyungsi',
'searchmenu-exists' => "'''Dina wiki ieu geus aya kaca nu ngaranna \"[[:\$1]]\"'''",
'searchmenu-new' => "'''Jieun kaca \"[[:\$1]]\" dina ieu wiki!'''",
-'searchhelp-url' => 'Help:Pitulung',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Sungsi kaca-kaca nu dimimitian ku ieu awalan]]',
'searchprofile-articles' => 'Kaca eusi',
'searchprofile-project' => 'Kaca Pitulung jeung Proyék',
'search-external' => 'Panéangan luar',
'searchdisabled' => 'Punten! Néangan téks lengkep di {{SITENAME}} kanggo samentawis ditumpurkeun pikeun alesan kinerja. Jalaran kitu, saheulaanan anjeun bisa nyungsi di Google di handap ieu. Catet yén indéxna ngeunaan eusi {{SITENAME}} bisa jadi teu mutahir.',
-# Quickbar
-'qbsettings' => 'Bar gancang',
-'qbsettings-none' => 'Henteu aya',
-'qbsettings-fixedleft' => 'Angger beulah kenca',
-'qbsettings-fixedright' => 'Angger beulah katuhu',
-'qbsettings-floatingleft' => 'Ngambang ka kenca',
-'qbsettings-floatingright' => 'Ngambang ka katuhu',
-
# Preferences page
'preferences' => 'Préferénsi',
'mypreferences' => 'Préferéns',
# HTTP errors
'http-invalid-url' => 'URL teu bener: $1',
'http-invalid-scheme' => 'URL anu skémana "$1" teu karojong',
-'http-host-unreachable' => 'URL teu kahontal.',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'URL teu kahontal',
'notvisiblerev' => 'Révisi geus dihapus',
'watchnochange' => 'Sadaya awaseun anjeun taya nu diédit dina jangka wanci nu ditémbongkeun.',
'watchlist-details' => 'Aya {{PLURAL:$1|$1 kaca|$1 kaca}} nu ku anjeun diawaskeun, teu kaasup kaca obrolan/sawala.',
-'wlheader-enotif' => '* Pangémbar surélék difungsikeun.',
-'wlheader-showupdated' => "* Kaca nu robah ti panungtungan anjeun sindang ditémbongkeun kalawan '''kandel'''",
+'wlheader-enotif' => 'Pangémbar surélék difungsikeun.',
+'wlheader-showupdated' => "Kaca nu robah ti panungtungan anjeun sindang ditémbongkeun kalawan '''kandel'''",
'watchmethod-recent' => 'mariksa nu anyar robah na kaca nu diawaskeun',
'watchmethod-list' => 'mariksa nu anyar robah na kaca nu diawaskeun',
'watchlistcontains' => 'Anjeun ngawaskeun $1 {{PLURAL:$1|kaca|kaca}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Lega',
'exif-imagelength' => 'Luhur',
'exif-compression' => 'Skéma komprési',
'version-software-product' => 'Produk',
'version-software-version' => 'Vérsi',
-# Special:FilePath
-'filepath' => 'Jalur koropak',
-'filepath-page' => 'Koropak:',
-'filepath-submit' => 'Jalur',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Sungsi gambar duplikat',
'fileduplicatesearch-legend' => 'Sungsi duplikat',
* @author Fader
* @author Fluff
* @author GameOn
+ * @author Geitost
* @author Greggegorius
* @author Grillo
* @author Habj
* @author Habjchen
* @author Hannibal
* @author Jon Harald Søby
+ * @author Jopparn
* @author Kaganer
* @author LPfi
* @author Lejonel
* @author Mikez
* @author NH
* @author Najami
+ * @author Nemo bis
* @author Nghtwlkr
* @author Ozp
* @author Per
'oct' => 'okt',
'nov' => 'nov',
'dec' => 'dec',
+'january-date' => '$1 januari',
+'february-date' => '$1 februari',
+'march-date' => '$1 mars',
+'april-date' => '$1 april',
+'may-date' => '$1 maj',
+'june-date' => '$1 juni',
+'july-date' => '$1 juli',
+'august-date' => '$1 augusti',
+'september-date' => '$1 september',
+'october-date' => '$1 oktober',
+'november-date' => '$1 november',
+'december-date' => '$1 december',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori|Kategorier}}',
'create-this-page' => 'Skapa denna sida',
'delete' => 'Radera',
'deletethispage' => 'Radera denna sida',
+'undeletethispage' => 'Återställ denna sida',
'undelete_short' => 'Återställ {{PLURAL:$1|en version|$1 versioner}}',
'viewdeleted_short' => 'Visa {{PLURAL:$1|en raderad redigering|$1 raderade redigeringar}}',
'protect' => 'Skrivskydda',
'disclaimers' => 'Förbehåll',
'disclaimerpage' => 'Project:Allmänt förbehåll',
'edithelp' => 'Redigeringshjälp',
-'edithelppage' => 'Help:Redigering',
'helppage' => 'Help:Innehåll',
'mainpage' => 'Huvudsida',
'mainpage-description' => 'Huvudsida',
'namespaceprotected' => "Du har inte behörighet att redigera sidor i namnrymden '''$1'''.",
'customcssprotected' => 'Du har inte behörighet att redigera denna CSS-sidan eftersom den innehåller en annan användares personliga inställningar.',
'customjsprotected' => 'Du har inte behörighet att redigera denna JavaScript-sidan eftersom den innehåller en annan användares personliga inställningar.',
+'mycustomcssprotected' => 'Du har inte rättigheten att redigera denna CSS-sida.',
+'mycustomjsprotected' => 'Du har inte rättigheten att redigera denna JavaScript-sida.',
'ns-specialprotected' => 'Specialsidor kan inte redigeras.',
'titleprotected' => 'Denna sidtitel har skyddats från att skapas av [[User:$1|$1]].
Den uppgivna anledningen är "\'\'$2\'\'".',
'notloggedin' => 'Inte inloggad',
'userlogin-noaccount' => 'Har du inget konto?',
'userlogin-joinproject' => 'Gå med i {{SITENAME}}',
-'nologin' => "Har du inget användarkonto? '''$1'''.",
+'nologin' => 'Har du inget användarkonto? $1.',
'nologinlink' => 'Skapa ett användarkonto',
'createaccount' => 'Skapa ett konto',
'gotaccount' => "Har du redan ett användarkonto? '''$1'''.",
'gotaccountlink' => 'Logga in',
'userlogin-resetlink' => 'Har du glömt dina inloggningsuppgifter?',
'userlogin-resetpassword-link' => 'Återställ ditt lösenord',
-'helplogin-url' => 'Help:Logging in',
+'helplogin-url' => 'Help:Logga in',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Hjälp med inloggning]]',
'createacct-join' => 'Ange din information nedan.',
'createacct-emailrequired' => 'E-postadress',
'createacct-emailoptional' => 'E-postadress (valfritt)',
'createacct-email-ph' => 'Bekräfta din e-postadress',
-'createaccountmail' => 'Använd ett tillfällig slumpartat lösenord och skicka den till e-postadressen som anges nedan',
+'createaccountmail' => 'Använd ett tillfälligt slumpvis valt lösenord och skicka det till e-postadressen som anges nedan',
'createacct-realname' => 'Riktigt namn (valfritt)',
'createaccountreason' => 'Orsak:',
'createacct-reason' => 'Anledning',
'cannotchangeemail' => 'E-post-adresser som är bundna till användarkonton kan inte ändras på denna wiki.',
'emaildisabled' => 'Denna webbplats kan inte skicka e-post.',
'accountcreated' => 'Användarkontot har skapats',
-'accountcreatedtext' => 'Användarkontot $1 har skapats.',
+'accountcreatedtext' => 'Användarkontot [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]) har skapats.',
'createaccount-title' => 'Konto skapat på {{SITENAME}}',
'createaccount-text' => 'Någon har skapat ett konto åt din e-postadress på {{SITENAME}} ($4) med namnet "$2" och lösenordet "$3". Du bör nu logga in och ändra ditt lösenord.
# Special:PasswordReset
'passwordreset' => 'Lösenordsåterställning',
-'passwordreset-text' => 'Fyll i detta formulär för att återställa ditt lösenord.',
+'passwordreset-text-one' => 'Fyll i detta formulär för att återställa ditt lösenord.',
+'passwordreset-text-many' => '{{PLURAL:$1|Fyll i en av datafälten för att återställa ditt lösenord.}}',
'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.',
-'passwordreset-pretext' => '{{PLURAL:$1||Ange en av datadelarna nedan}}',
'passwordreset-username' => 'Användarnamn:',
'passwordreset-domain' => 'Domän:',
'passwordreset-capture' => 'Visa resulterande e-post?',
Det verkar som att den har raderats.',
'edit-conflict' => 'Redigeringskonflikt.',
'edit-no-change' => 'Din redigering ignorerades, eftersom ingen ändring gjordes i texten.',
+'postedit-confirmation' => 'Din redigering sparades.',
'edit-already-exists' => 'Sidan kunde inte skapas.
Den finns redan.',
'defaultmessagetext' => 'Standardtext för meddelande',
'invalid-content-data' => 'Ogiltig innehållsdata',
'content-not-allowed-here' => 'innehåll av "$1" är inte tillåtet på sidan [[$2]]',
'editwarning-warning' => 'Om du lämnar den här sidan kommer du att förlora alla ändringar du har gjort.
-Om du är inloggad kan du slå av den här varningen under "{{int:prefs-editing}}" i dina inställningar.',
+Om du är inloggad kan du slå av den här varningen under "Redigering" i dina inställningar.',
# Content models
'content-model-wikitext' => 'wikitext',
'searchmenu-legend' => 'Sökalternativ',
'searchmenu-exists' => "'''Det finns en sida med namnet \"[[:\$1]]\" på denna wiki.'''",
'searchmenu-new' => "'''Skapa sidan \"[[:\$1]]\" på denna wiki!'''",
-'searchhelp-url' => 'Help:Innehåll',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Bläddra igenom sidor med detta prefix]]',
'searchprofile-articles' => 'Innehållssidor',
'searchprofile-project' => 'Hjälp- och projektsidor',
'userrights-changeable-col' => 'Grupper du kan ändra',
'userrights-unchangeable-col' => 'Grupper du inte kan ändra',
'userrights-conflict' => 'Användarrättighetskonflikt! Var god tillämpa dina ändringar igen.',
+'userrights-removed-self' => 'Du tog bort dina egna rättigheter. Som sådan, kan du inte längre komma åt denna sida.',
# Groups
'group' => 'Grupp:',
'right-editusercssjs' => 'Redigera andra användares CSS- och JS-filer',
'right-editusercss' => 'Redigera andra användares CSS-filer',
'right-edituserjs' => 'Redigera andra användares JS-filer',
+'right-editmyusercss' => 'Redigera din egen användares CSS-filer',
+'right-editmyuserjs' => 'Redigera din egen användares JavaScript-filer',
+'right-viewmywatchlist' => 'Visa din egen bevakningslista',
+'right-editmywatchlist' => 'Redigera din egen bevakningslista. Observera att en del åtgärder kommer fortfarande lägga till sidor även utan denna rättighet.',
'right-rollback' => 'Rulla tillbaka den användare som senast redigerat en sida',
'right-markbotedits' => 'Markera tillbakarullningar som robotändringar',
'right-noratelimit' => 'Påverkas inte av hastighetsgränser',
'action-userrights-interwiki' => 'ändra rättigheter för användare på andra wikier',
'action-siteadmin' => 'låsa eller låsa upp databasen',
'action-sendemail' => 'skicka e-post',
+'action-editmywatchlist' => 'redigera din bevakningslista',
+'action-viewmywatchlist' => 'visa din bevakningslista',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|ändring|ändringar}}',
'upload-proto-error' => 'Felaktigt protokoll',
'upload-proto-error-text' => 'Fjärruppladdning kräver URL:ar som börjar med <code>http://</code> eller <code>ftp://</code>.',
'upload-file-error' => 'Internt fel',
-'upload-file-error-text' => 'Ett internt fel inträffade när en temporär fil skulle skapas på servern. Kontakta en [[Special:ListUsers/sysop|systemadministratör]].',
+'upload-file-error-text' => 'Ett internt fel inträffade när en temporär fil skulle skapas på servern. Kontakta en [[Special:ListUsers/sysop|administratör]].',
'upload-misc-error' => 'Okänt uppladdningsfel',
'upload-misc-error-text' => 'Ett okänt fel inträffade under uppladdningen.
Kontrollera att URL:en giltig och försök igen.
'notvisiblerev' => 'Sidversionen har raderats',
'watchnochange' => 'Inga av dina bevakade sidor har ändrats inom den visade tidsperioden.',
'watchlist-details' => 'Du har $1 {{PLURAL:$1|sida|sidor}} på din bevakningslista (diskussionssidor är inte medräknade).',
-'wlheader-enotif' => '* Bekräftelse per e-post är aktiverad.',
-'wlheader-showupdated' => "* Sidor som har ändrats sedan ditt senaste besök visas i '''fetstil.'''",
+'wlheader-enotif' => 'E-postmeddelanden är aktiverade.',
+'wlheader-showupdated' => "Sidor som har ändrats sedan ditt senaste besök visas i '''fetstil.'''",
'watchmethod-recent' => 'letar efter bevakade sidor bland senaste ändringar',
'watchmethod-list' => 'letar efter nyligen gjorda ändringar bland bevakade sidor',
'watchlistcontains' => 'Din bevakningslista innehåller $1 {{PLURAL:$1|sida|sidor}}.',
'thumbnail-more' => 'Förstora',
'filemissing' => 'Fil saknas',
'thumbnail_error' => 'Fel vid skapande av miniatyrbild: $1',
+'thumbnail_error_remote' => 'Felmeddelande från $1:
+$2',
'djvu_page_error' => 'DjVu-sida utanför gränserna',
'djvu_no_xml' => 'Kan inte hämta DjVu-filens XML',
'thumbnail-temp-create' => 'Kunde inte skapa temporär miniatyrfil',
'modern.css' => '/* CSS som skrivs här kommer att påverka alla användare av skalet Modern */',
'vector.css' => '/* CSS som skrivs här kommer att påverka alla användare av skalet Vector */',
'print.css' => '/* CSS som skrivs här kommer att påverka utskriftsversionen */',
-'handheld.css' => '/* CSS som placeras här kommer att påverka handhållna enheter som baseras på skalet som konfigurerats i $wgHandheldStyle */',
'noscript.css' => '/* CSS som placeras här kommer att påverka användare med JavaScript inaktiverat */',
'group-autoconfirmed.css' => '/* CSS som placeras här kommer bara att påverka bekräftade användare */',
'group-bot.css' => '/* CSS som placeras här kommer bara att påverka robotar */',
* @author Malangali
* @author Marcos
* @author Muddyb Blast Producer
+ * @author Nemo bis
* @author Robert Ullmann
* @author Stephenwanjau
* @author לערי ריינהארט
'oct' => 'Okt',
'nov' => 'Nov',
'dec' => 'Des',
+'january-date' => '$1 Januari',
+'february-date' => '$1 Februari',
+'march-date' => '$1 Machi',
+'april-date' => '$1 Aprili',
+'may-date' => '$1 Mei',
+'june-date' => '$1 Juni',
+'july-date' => '$1 Julai',
+'august-date' => '$1 Agosti',
+'september-date' => '$1 Septemba',
+'october-date' => '$1 Oktoba',
+'november-date' => '$1 Novemba',
+'december-date' => '$1 Desemba',
# Categories related messages
-'pagecategories' => '{{PLURAL:$1|Jamii|Jamii}}',
+'pagecategories' => '{{PLURAL:$1|Jamii}}',
'category_header' => 'Makala katika jamii "$1"',
'subcategories' => 'Vijamii',
'category-media-header' => 'Picha, video, na sauti katika jamii "$1"',
'newwindow' => '(Itafungua kwa dirisha jipya)',
'cancel' => 'Batilisha',
'moredotdotdot' => 'Zaidi...',
-'mypage' => 'Ukurasa wangu',
+'mypage' => 'Ukurasa',
'mytalk' => 'Majadiliano',
'anontalk' => 'Majadiliano ya IP hii',
'navigation' => 'Urambazaji',
'vector-view-edit' => 'Hariri',
'vector-view-history' => 'Fungua historia',
'vector-view-view' => 'Soma',
-'vector-view-viewsource' => 'Kuonyesha kodi',
+'vector-view-viewsource' => 'Tazama msimbo',
'actions' => 'Vitendo',
'namespaces' => 'Maeneo ya wiki',
'variants' => 'Vibadala',
'disclaimers' => 'Kanusho',
'disclaimerpage' => 'Project:Kanusho kwa jumla',
'edithelp' => 'Usaidizi kwa uhariri',
-'edithelppage' => 'Help:Usaidizi kwa uhariri',
'helppage' => 'Help:Yaliyomo',
'mainpage' => 'Mwanzo',
'mainpage-description' => 'Mwanzo',
'youhavenewmessagesmulti' => 'Umepokea jumbe mpya kule $1',
'editsection' => 'hariri',
'editold' => 'hariri',
-'viewsourceold' => 'view source',
+'viewsourceold' => 'tazama msimbo',
'editlink' => 'hariri',
-'viewsourcelink' => 'onyesha kodi za ukurasa',
+'viewsourcelink' => 'onesha msimbo wa ukurasa',
'editsectionhint' => 'Hariri sehemu: $1',
'toc' => 'Yaliyomo',
'showtoc' => 'fichua',
'sort-ascending' => 'Pangia kwa kupanda',
# Short words for each namespace, by default used in the namespace tab in monobook
-'nstab-main' => 'Makala',
+'nstab-main' => 'Ukurasa',
'nstab-user' => 'Ukurasa wa mtumiaji',
'nstab-media' => 'Ukurasa wa faili',
'nstab-special' => 'Ukurasa maalum',
'wrong_wfQuery_params' => 'Parameta za ulizio zilizoingizwa wfQuery() na zisizo sahihi ni<br />
Kitenda: $1<br />
Ulizio: $2',
-'viewsource' => 'Onyesha kodi za ukurasa',
+'viewsource' => 'Tazama msimbo',
'viewsource-title' => 'Tazama chanzo cha $1',
'actionthrottled' => 'Tendo limesimamishwa',
'actionthrottledtext' => 'Ikiwa kama hatua ya kupambana na uharibifu, umefika kikomo katika kutenda jambo hili kwa mara nyingi mno tena kwa kipindi cha muda mfupi kama huu, na umevuka kiwango hiki.
# Special:PasswordReset
'passwordreset' => 'Seti upya neno la siri',
-'passwordreset-text' => 'Jaza fomu hii ili upate barua pepe inayotoa maelezo ya akaunti yako.',
'passwordreset-legend' => 'Seti upya neno la siri',
'passwordreset-disabled' => 'Kuweka neno la siri jipya kumeshitishwa katika wiki hii.',
-'passwordreset-pretext' => '{{PLURAL:$1||Ingiza moja kati ya data hizi hapo chini}}',
'passwordreset-username' => 'Jina la mtumiaji:',
'passwordreset-domain' => 'Miliki',
'passwordreset-capture' => 'Ioneshe barua-pepe itakayotumwa?',
'yourtext' => 'Maandishi yako',
'storedversion' => 'Pitio lililohifadhiwa mwishoni',
'nonunicodebrowser' => "'''Ilani: Kivinjari chako hakikubaliani na Unicode.'''
-Ili uweze kuhariri kurasa sawasawa, herufi zisizo za ASCII zitaonekana katika sanduku la kuhariri kama kodi za hexadecimali.",
+Ili uweze kuhariri kurasa sawasawa, herufi zisizo za ASCII zitaonekana katika sanduku la kuhariri kama msimbo wa hexadecimali.",
'editingold' => "'''ANGALIA: Unakuwa unahariri toleo la zamani la ukurasa huu.
Ukiendelea kulihariri, mabadilisho yote yaliyofanywa tangu pale yatapotezwa.'''",
'yourdiff' => 'Tofauti',
'searchmenu-legend' => 'Hitiari za kutafuta',
'searchmenu-exists' => "'''Ukurasa wa \"[[:\$1]]\" upo kwenye wiki hii'''",
'searchmenu-new' => "'''Anzisha ukurasa wa \"[[:\$1]]\" katika wiki hii!'''",
-'searchhelp-url' => 'Help:Yaliyomo',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Tafuta kurasa kwenye eneo hili la wiki]]',
'searchprofile-articles' => 'Kurasa kwa kusudi ya wiki',
'searchprofile-project' => 'Kurasa za msaada na za mradi',
'uploaddisabledtext' => 'Upakiaji wa mafaili umelemazwa.',
'php-uploaddisabledtext' => 'Upakiaji wa mafaili umelemazwa katika PHP.
Tafadhali utazame kipimo cha file_uploads.',
-'uploadscripted' => 'Faili hili lina HTML au kodi ambazo labda itaeleweka vibaya na kivinjari.',
+'uploadscripted' => 'Faili hili lina HTML au misimbo ambazo labda itaeleweka vibaya na kivinjari.',
'uploadvirus' => 'Faili lina kirusi!
Maelezo mengine: $1',
'uploadjava' => 'Faili ZIP hili lina faili Java .class humo ndani.
'mostlinked' => 'Kurasa zinazoungwa kuliko zote',
'mostlinkedcategories' => 'Jamii zinazoungwa kuliko zote',
'mostlinkedtemplates' => 'Vigezo vinavyoungwa kuliko zote',
-'mostcategories' => 'Jamii ambazo hazitumiwi',
+'mostcategories' => 'Kurasa zenye jamii kuliko zote',
'mostimages' => 'Mafaili yanayoungwa kuliko yote',
'mostrevisions' => 'Kurasa zenye mapitio mengi kuliko zote',
'prefixindex' => 'Kurasa zote zenye viambishi awali',
'listusers-noresult' => 'Mtumiaji hakupatikana.',
'listusers-blocked' => '(imezuiwa)',
+# Special:ActiveUsers
+'activeusers' => 'Orodha ya watumiaji hai',
+'activeusers-intro' => 'Hii ni orodha ya watumiaji walioshughulika jambo fulani ndani ya siku $1 {{PLURAL:$1|iliyopita|zilizopita}}.',
+'activeusers-count' => '{{PLURAL:$1|haririo|maharirio}} $1 katika siku $3 {{PLURAL:$3|iliyopita|zilizopita}}',
+'activeusers-from' => 'Onyesha watumiaji kuanzia:',
+'activeusers-hidebots' => 'Ficha boti',
+'activeusers-hidesysops' => 'Ficha wakabidhi',
+'activeusers-noresult' => 'Watumiaji hawakupatikana.',
+
# Special:ListGroupRights
'listgrouprights' => 'Wezo za kundi za watumiaji',
'listgrouprights-summary' => 'Inafuata orodha ya kundi za watumiaji wa wiki hii, pamoja na maelezo ya wezo zao za kushughulika mambo.
'notvisiblerev' => 'Haririo ya mwisho, iliotendwa na mtumiaji mwingine, imefutwa',
'watchnochange' => 'Hakuna kitu kati ya maangalizi yako kilichohaririwa katika kipindi kilichotajwa.',
'watchlist-details' => 'Unafuatilia {{PLURAL:$1|ukurasa $1|kurasa $1}} bila kuzingatia kurasa za majadiliano.',
-'wlheader-enotif' => '* Huduma ya kuarifu kwa barua pepe imewezeshwa.',
-'wlheader-showupdated' => "* Kurasa zilizobadilika tangu ulivyotembelea mara ya mwisho zinaonyeshwa katika hali ya '''kukooza'''",
+'wlheader-enotif' => 'Huduma ya kuarifu kwa barua pepe imewezeshwa.',
+'wlheader-showupdated' => "Kurasa zilizobadilika tangu ulivyotembelea mara ya mwisho zinaonyeshwa katika hali ya '''kukooza'''",
'watchmethod-recent' => 'kupitia madabiliko ya karibuni ili kupata kurasa za maangalizi',
'watchmethod-list' => 'Kupitia kurasa za maangalizi ili kupata madabiliko ya karibuni',
'watchlistcontains' => 'Orodha ya maangalizi yako ina {{PLURAL:$1|pages|kurasa}}.',
'undeletebtn' => 'Rudisha',
'undeletelink' => 'onyesha/rejesha',
'undeleteviewlink' => 'tazama',
-'undeletereset' => 'Seti upya',
+'undeletereset' => 'Panga upya',
'undeleteinvert' => 'Geuza uteuzi',
'undeletecomment' => 'Sababu:',
'undeletedrevisions' => '{{PLURAL:$1|pitio 1 lilirudishwa|mapitio $1 yalirudishwa}}',
'mycontris' => 'Michango',
'contribsub2' => 'Kwa $1 ($2)',
'nocontribs' => 'Mabadiliko yanayolingana na vigezo vilivyoulizwa hayakupatikana.',
-'uctop' => '(juu)',
+'uctop' => '(ya kisasa)',
'month' => 'Kutoka mwezi (na zamani zaidi):',
'year' => 'Kutoka mwakani (na zamani zaidi):',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Upana',
'exif-imagelength' => 'Urefu',
'exif-jpeginterchangeformatlength' => 'Idadi ya baiti za data ya JPEG',
'version-software-version' => 'Toleo',
'version-entrypoints-header-url' => 'KISARA Kioneshi Sanifu Raslimali',
-# Special:FilePath
-'filepath' => 'Njia ya faili',
-'filepath-page' => 'Faili:',
-'filepath-submit' => 'Nenda',
-'filepath-summary' => 'Ukurasa huu maalumu unarejesha njia kamili ya faili. Picha inaonyeshwa ukubwa wote, faili za aina zingine zinaanza na programu zake zinazohusiana moja kwa moja.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Tafuta mafaili ya nakili',
'fileduplicatesearch-summary' => 'Kutafuta mafaili ya nakili kwa kuzingatia thamani za reli.',
'api-error-uploaddisabled' => 'Kupakia kumelemazwa katika wiki hii.',
# Durations
-'duration-seconds' => '$1 {{PLURAL:$1|second|sekunde}}',
-'duration-minutes' => '$1 {{PLURAL:$1|minute|dakikas}}',
-'duration-hours' => '$1 {{PLURAL:$1|hour|masaa}}',
-'duration-days' => '$1 {{PLURAL:$1|day|masiku}}',
-'duration-weeks' => '$1 {{PLURAL:$1|week|wiki}}',
-'duration-years' => '$1 {{PLURAL:$1|year|miaka}}',
-'duration-centuries' => '$1 {{PLURAL:$1|century|karne}}',
+'duration-seconds' => '{{PLURAL:$1|sekunde}} $1',
+'duration-minutes' => '{{PLURAL:$1|dakika}} $1',
+'duration-hours' => '{{PLURAL:$1|saa|masaa}} $1',
+'duration-days' => '{{PLURAL:$1|siku}} $1',
+'duration-weeks' => '{{PLURAL:$1|wiki}} $1',
+'duration-years' => '{{PLURAL:$1|mwaka|miaka}} $1',
+'duration-centuries' => '{{PLURAL:$1|karne}} $1',
);
'disclaimers' => 'Prawne informacyje',
'disclaimerpage' => 'Project:Prawne informacyje',
'edithelp' => 'Půmoc we půmjyńańy',
-'edithelppage' => 'Help:Jak půmjyńać zajta',
'helppage' => 'Help:Treść',
'mainpage' => 'Przodńo zajta',
'mainpage-description' => 'Przodńo zajta',
# Special:PasswordReset
'passwordreset' => 'Wyczyść hasło',
-'passwordreset-text' => 'Wypełnij formularz, aby otrzymać e‐mail z przypomnieniem danych Twojego konta.',
'passwordreset-legend' => 'Wyczyść hasło',
'passwordreset-disabled' => 'No tyj wiki zamkńynto resytowańy hasył.',
-'passwordreset-pretext' => '{{PLURAL:$1||Wćep jydną z danych}}',
'passwordreset-username' => 'Mjano używacza:',
'passwordreset-domain' => 'Domyna:',
'passwordreset-capture' => 'Czy pokazywać treść wiadomości e‐mail?',
'searchmenu-legend' => 'Uopcyje sznupańo',
'searchmenu-exists' => "'''Ńy ma zajty uo mjańy \"[[:\$1]]\" na tyj wiki'''",
'searchmenu-new' => "'''Stwůrz zajta „[[:$1|$1]]” na tyj wiki!'''",
-'searchhelp-url' => 'Help:Pomoc',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Przeglůndej zajty kere s anfanga majům tyn przedrostek]]',
'searchprofile-articles' => 'Zajty',
'searchprofile-project' => 'Zajty půmocy a projektu',
'listusers-submit' => 'Pokož',
'listusers-noresult' => 'Ńy znejdźůno žodnygo užytkowńika.',
+# Special:ActiveUsers
+'activeusers-hidebots' => 'Schrůń boty',
+'activeusers-hidesysops' => 'Schrůń adminy',
+'activeusers-noresult' => 'Ńy sům używacze.',
+
# Special:ListGroupRights
'listgrouprights' => 'Uprawńyńo grup użytkowńikůw',
'listgrouprights-summary' => 'Půńiży znojdowo śe spis grup użytkowńikůw zdefińjowanych na tyj wiki, s wyszczygůlńyńym przidźelůnych im prow dostympu.
'notvisiblerev' => 'Wersyja zostoua wyćepano',
'watchnochange' => 'Žodno ze zajtůw, na kere dowoš pozůr, ńy bůua sprowjano w podanym uokreśe.',
'watchlist-details' => 'Na pozorliśće {{PLURAL:$1|je 1 artikel|sům $1 artikle|je $1 artikli}} ńy rachujůnc zajtůw godek.',
-'wlheader-enotif' => '* Wysůuańy powjadůmjyń na adres e-brif je zouůnčůne',
-'wlheader-showupdated' => "* Zajty, kere bouy sprowjane uod Twoi uostatńi wizyty na ńych zostoy naškryflane '''tuustym'''",
+'wlheader-enotif' => 'Wysůuańy powjadůmjyń na adres e-brif je zouůnčůne',
+'wlheader-showupdated' => "Zajty, kere bouy sprowjane uod Twoi uostatńi wizyty na ńych zostoy naškryflane '''tuustym'''",
'watchmethod-recent' => 'šnupańy za půmjyńanymi na uostatku w zajtach, na kere dowoš pozůr',
'watchmethod-list' => 'šnupańy w zajtach, na kere dowoš pozůr pośrůd půmjyńanych na uostatku',
'watchlistcontains' => 'Lista zajtůw, na kere dowoš pozůr mo {{PLURAL:$1|jedna pozycja|$1 pozycje|$1 pozycyji}}.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Šyrokość',
'exif-imagelength' => 'Wysokość',
'exif-bitspersample' => 'Bitůw na průbka',
'exif-gpsdatestamp' => 'Data GPS',
'exif-gpsdifferential' => 'Korekcyjo růžńicy GPS',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'ńyskůmpresowany',
'exif-unknowndate' => 'ńyznano data',
'version-software-product' => 'Mjano',
'version-software-version' => 'Wersjo',
-# Special:FilePath
-'filepath' => 'Śćežka do plika',
-'filepath-page' => 'Plik:',
-'filepath-submit' => 'Śćežka',
-'filepath-summary' => 'Ta ekstra zajta zwraco peuno śćyžka do plika.
-Grafiki sům pokazywane w peunyj rozdźelčośći, inkše typy plikůw sům uodmykane we skojařůnym ś ńimi průgramje.
-
-Naškryflej sam mjano plika bez prefiksu „{{ns:file}}:”.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Šnupej za duplikatym plika',
'fileduplicatesearch-summary' => 'Šnupej za duplikatůma plika na podstawje wartośći fůnkcyji skrůtu.',
* @author Mayooranathan
* @author Naveen
* @author Planemad
+ * @author Sank
* @author Shanmugamp7
* @author Sodabottle
* @author Sundar
* @author Urhixidur
* @author לערי ריינהארט
* @author கோபி
+ * @author கௌசிக் பிரபு
* @author செல்வா
* @author மதனாஹரன்
* @author බිඟුවා
'june' => 'ஜூன்',
'july' => 'ஜூலை',
'august' => 'ஆகஸ்ட்',
-'september' => 'à®\9aà¯\86பà¯\8dà®\9fà¯\86à®®à¯\8dபரà¯\8d',
+'september' => 'செப்டம்பர்',
'october' => 'அக்டோபர்',
'november' => 'நவம்பர்',
'december' => 'டிசம்பர்',
'newwindow' => '(புதிய சாளரத்துள் திறக்கும்)',
'cancel' => 'சேமிக்காமல் திரும்பு',
'moredotdotdot' => 'மேலும்...',
+'morenotlisted' => 'மேலதிகமானவை பட்டியலிடப்படவில்லை',
'mypage' => 'பக்கம்',
'mytalk' => 'பேச்சு',
'anontalk' => 'இந்த ஐ.பி. முகவரிக்கான பேச்சு',
'vector-action-protect' => 'காக்கவும்',
'vector-action-undelete' => 'நீக்கத்தை நிறுத்து',
'vector-action-unprotect' => 'காப்பை மாற்று',
-'vector-simplesearch-preference' => 'à®\9aாதாரண தà¯\87à®\9fà¯\81தலà¯\8d பà®\9fà¯\8dà®\9fà¯\88யதà¯\8dதà¯\88 à®\9aà¯\86யலà¯\8dபà®\9fà¯\81தà¯\8dதவà¯\81à®®à¯\8d (Vector தோல் மட்டும்)',
+'vector-simplesearch-preference' => 'à®\8eளிதாà®\95à¯\8dà®\95பà¯\8dபà®\9fà¯\8dà®\9f தà¯\87à®\9fà¯\81தலà¯\8d பà®\9fà¯\8dà®\9fà¯\88யà¯\88 à®\9aà¯\86யறà¯\8dபà®\9fà¯\81தà¯\8dதவà¯\81à®®à¯\8d (வà¯\86à®\95à¯\8dà®\9fà®°à¯\8d தோல் மட்டும்)',
'vector-view-create' => 'உருவாக்கவும்',
'vector-view-edit' => 'தொகு',
'vector-view-history' => 'வரலாற்றைக் காட்டவும்',
'disclaimers' => 'பொறுப்புத் துறப்புகள்',
'disclaimerpage' => 'Project:பொதுவான பொறுப்புத் துறப்புகள்',
'edithelp' => 'தொகுத்தலுக்கான உதவி',
-'edithelppage' => 'Help:ஒருவர் பக்கமொன்றைத் தொகுப்பது எப்படி?',
'helppage' => 'Help:உதவி',
'mainpage' => 'முதற் பக்கம்',
'mainpage-description' => 'முதற் பக்கம்',
'welcomeuser' => 'வருக $1',
'welcomecreation-msg' => 'உங்களுக்கான பயனர் கணக்கு உருவாக்கப்பட்டுள்ளது. உங்களுக்கேற்றவாறு [[Special:Preferences|{{SITENAME}} விருப்பத்தேர்வுகளை]] மாற்றிக் கொள்ள மறவாதீர்கள்.',
'yourname' => 'பயனர் பெயர்:',
+'userlogin-yourname' => 'பயனர் பெயர்',
+'userlogin-yourname-ph' => 'உங்கள் பயனர் பெயரை உள்ளிடுக',
'yourpassword' => 'கடவுச்சொல்:',
+'userlogin-yourpassword' => 'கடவுச்சொல்',
+'userlogin-yourpassword-ph' => 'உங்கள் கடவுச்சொல்லை உள்ளிடுக',
+'createacct-yourpassword-ph' => 'கடவுச்சொல்லை உள்ளிடுக',
'yourpasswordagain' => 'கடவுச்சொல்லைத் திரும்ப தட்டச்சிடுக:',
+'createacct-yourpasswordagain' => 'கடவுச்சொல்லை உறுதிசெய்க',
+'createacct-yourpasswordagain-ph' => 'கடவுச்சொல்லை மீளவும் இடுக',
'remembermypassword' => 'எனது கடவுச்சொல்லை (கூடியது $1 {{PLURAL:$1|நாள்|நாட்கள்}}) அமர்வுகளிடையே நினைவில் வைத்திருக்கவும்.',
+'userlogin-remembermypassword' => 'இடுபதிந்தே இருக்கவிடவும்',
+'userlogin-signwithsecure' => 'பாதுகாப்பான தொடர்பை உபயோகிக்கவும்',
'securelogin-stick-https' => 'புகுபதிகைக்குப் பிறகும் HTTPS-இலேயே இருக்கவும்',
'yourdomainname' => 'உங்கள் உரிமைப்பரப்பு:',
'password-change-forbidden' => 'நீங்கள் விக்கிகளில் கடவுச் சொற்களை மாற்ற முடியாது',
'logout' => 'விடுபதிகை',
'userlogout' => 'விடுபதிகை',
'notloggedin' => 'புகுபதிகை செய்யப்படவில்லை',
+'userlogin-noaccount' => 'பயனர் கணக்கு இல்லையா?',
+'userlogin-joinproject' => 'இணைக {{SITENAME}}',
'nologin' => "பயனர் கணக்கு இல்லையா? '''$1'''.",
'nologinlink' => 'கணக்கு ஒன்றை உருவாக்கவும்',
'createaccount' => 'புதிய கணக்கை உருவாக்கு',
'gotaccount' => "ஏற்கனவே பயனர் கணக்கு உள்ளதா? '''$1'''.",
'gotaccountlink' => 'புகுபதிகை',
'userlogin-resetlink' => 'உங்கள் புகுபதிகைக் குறிப்புகளை மறந்துவிட்டீர்களா?',
-'createaccountmail' => 'மின்னஞ்சல் மூலம்',
+'helplogin-url' => 'Help:புகுபதிகை',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|புகுபதிவதற்கான உதவி]]',
+'createacct-join' => 'உங்களின் தகவலை கீழிடவும்',
+'createacct-emailrequired' => 'மின்னஞ்சல் முகவரி',
+'createacct-emailoptional' => 'மின்னஞ்சல் முகவரி (விருப்பத்தேர்வு)',
+'createacct-email-ph' => 'உங்கள் மின்னஞ்சல் முகவரியை உள்ளிடுக',
+'createaccountmail' => 'தற்காலிகமாக எழுந்தமான ஒரு கடவுச்சொல்லை பயன்படுத்துக, அதை கீழே தரப்பட்டுள்ள மின்னஞ்சலுக்கு அனுப்புக',
+'createacct-realname' => 'உண்மைப் பெயர் (விருப்பத்தேர்வு)',
'createaccountreason' => 'காரணம்:',
+'createacct-reason' => 'காரணம்',
+'createacct-reason-ph' => 'தாங்கள் ஏன் மற்றொரு கணக்கைத் துவங்குகிறீர்கள்?',
+'createacct-imgcaptcha-ph' => 'மேலே காணும் சொற்களை உள்ளிடுக',
+'createacct-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}} தளத்துக்கான உங்கள் பயனர் கணக்கு உருவாக்கப்பட்டுள்ளது, ஆனால் நீங்கள் புகுபதிகை செய்யவில்லை. பயனர்களைப் புகுபதிகை செய்ய {{SITENAME}} தளம் ஞாபகிகளைப் (குக்கிகள்) பயன்படுத்துகிறது. நீங்கள் ஞாபகிகளைச் செயலற்றவையாக்கியுள்ளீர்கள். தயவுசெய்து அவற்றைச் செயற்படுத்தியப் பின் உங்கள் புதிய பயனர் பெயருடனும், கடவுச் சொல்லுடனும் புகுபதிகை செய்யுங்கள்.',
'nocookieslogin' => '{{SITENAME}} தளம் பயனர்களைப் புகுபதிகை செய்வதற்கு ஞாபகிகளைப் (குக்கிகள்) பயன்படுத்துகிறது. நீங்கள் ஞாபகிகளைச் செயலிழக்கச் செய்துள்ளீர்கள். தயவுசெய்து அவற்றைச் செயற்பாடுள்ளதாக்கித் திரும்பவும் முயலுங்கள்.',
'passwordsent' => '"$1" பயனருக்கான மின்னஞ்சல் முகவரிக்கு ஒரு புதிய கடவுச்சொல் அனுப்பப்பட்டுள்ளது. பெற்றுக்கொண்டதும் தயவுசெய்து மீண்டும் புகுபதிகை செய்யவும்.',
'blocked-mailpassword' => 'உங்கள் ஐ.பி. முகவரி தடுக்கப்பட்டுள்ளது, விசம செயற்பாடுகளைத் தவிர்க்க கடவுச்சொல் மீட்புச் செயலியை நீங்கள் பயன்படுத்து அனுமதிக்கப்படவில்லை.',
'eauthentsent' => 'உறுதிப்படுத்தல் மின்னஞ்சலொன்று நீங்கள் கொடுத்த மின்னஞ்சல் முகவரிக்கு அனுப்பப் பட்டுள்ளது. மேலதிகமாக எந்த மின்னஞ்சலும் இந்த முகவரிக்கு அனுப்பப்படு முன்னர், மின்னலில் கொடுக்கப்பட்டுள்ள அறிவுறுத்தல்களின் படி, இம்மின்னஞ்சல் முகவரி உங்களுடையது என்பதை உறுதிப்படுத்தவும்.',
-'throttled-mailpassword' => 'கடந்த {{PLURAL:$1|மணிநேரத்துக்குள்|$1 மணிநேரங்களுக்குள்}} ஒரு கடவுச்சொல் நினைவூட்டல் மின்னஞ்சல் ஏற்கனவே அனுப்பப் பட்டுவிட்டது. விசம பயன்பாடுகளைத் தவிர்ப்பதற்காக {{PLURAL:$1|மணிநேரத்திற்கு|$1 மணிநேரங்களுக்கு}} ஒரு கடவுச்சொல் நினைவூட்டல் மின்னஞ்சல் மட்டுமே அனுப்பப்படும்.',
+'throttled-mailpassword' => 'கடந்த {{PLURAL:$1|மணிநேரத்துக்குள்|$1 மணிநேரங்களுக்குள்}} ஒரு கடவுச்சொல் நினைவூட்டல் மின்னஞ்சல் ஏற்கனவே அனுப்பப்பட்டுவிட்டது. விசமப் பயன்பாடுகளைத் தவிர்ப்பதற்காக {{PLURAL:$1|மணிநேரத்திற்கு|$1 மணிநேரங்களுக்கு}} ஒரு கடவுச்சொல் நினைவூட்டல் மின்னஞ்சல் மட்டுமே அனுப்பப்படும்.',
'mailerror' => 'மின்னஞ்சல் அனுப்புவதில் தவறு: $1',
'acct_creation_throttle_hit' => 'தங்களது IP முகவரியை பயன்படுத்தி இந்த விக்கியில் நேற்று {{PLURAL:$1|1 கணக்கு |$1 கணக்குகள்}} உருவாக்கப்பட்டுள்ளது. தற்போது இதுவே மிக அதிகமாக அனுமதிக்கப்பட்ட அளவாகும்.
# Special:PasswordReset
'passwordreset' => 'கடவுச்சொல்லை மீட்டமை',
-'passwordreset-text' => ' உங்கள் கடவுச்சொல்லை மீட்டமைக்க இப்படிவத்தை பூர்த்தி செய்யவும்.',
'passwordreset-legend' => 'கடவுச்சொல்லை மீட்டமை',
'passwordreset-disabled' => 'கடவுச்சொல் மீட்டமைப்பு இந்த விக்கியில் செயலிழக்க செய்யப்பட்டுள்ளது.',
-'passwordreset-pretext' => '{{PLURAL:$1|| தரவு பகுதி ஒன்றை கீழே உள்ளிடு}}',
'passwordreset-username' => 'பயனர் பெயர்:',
'passwordreset-domain' => 'இணையதள முகவரி:',
'passwordreset-capture' => 'விளைவு மின்னஞ்சலை காண்',
இது நீக்கப்பட்டதாக இருக்கலாம்.',
'edit-conflict' => 'முரண்பாடுகளைத் தொகுக்கவும்.',
'edit-no-change' => 'வாசகங்களுக்கு எந்த மாற்றமும் செய்யப்படவில்லை என்பதனால் உங்கள் தொகுப்பு புறக்கணிக்கப்பட்டது.',
+'postedit-confirmation' => 'உங்களது தொகுப்பு சேமிக்கப்பட்டது.',
'edit-already-exists' => 'புதிய பக்கமொன்றை உருவாக்க முடியாது.
இப்பக்கம் ஏற்கனவே உள்ளது.',
'defaultmessagetext' => 'இயல்பிருப்பு தகவல் உரை',
'searchmenu-legend' => 'தேடல் விருப்பு',
'searchmenu-exists' => "'''\"[[:\$1]]\" என்னும் பெயருடைய பக்கம் இந்த விக்கியில் உள்ளது'''",
'searchmenu-new' => "'''\"[[:\$1]]\" பக்கத்தை இந்த விக்கியில் உருவாக்கவும்!'''",
-'searchhelp-url' => 'Help:உதவி',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|இந்த முன்னொட்டுடன் உலவித்தேடு]]',
'searchprofile-articles' => 'உள்ளடக்கப் பக்கங்களின் பட்டியல்',
'searchprofile-project' => 'உதவி மற்றும் திட்டப் பக்கங்கள்',
'search-interwiki-default' => '$1 தளத்தின் முடிவுகள்:',
'search-interwiki-more' => '(மேலும்)',
'search-relatedarticle' => 'தொடர்புடையவை',
-'mwsuggest-disable' => 'AJAX பரிந்துரைகளை முடக்கு',
+'mwsuggest-disable' => 'தேடல் பரிந்துரைகளை முடக்கு',
'searcheverything-enable' => 'அனைத்துப் பெயர்வெளிகளிலும் தேடவும்',
'searchrelated' => 'தொடர்புடையவை',
'searchall' => 'அனைத்தும்',
'powersearch-togglenone' => 'ஏதுமில்லை',
'search-external' => 'வெளித்தேடல்',
'searchdisabled' => '{{SITENAME}} தளத்தின் தேடல் வசதிகள் தற்காலிகமாக முடக்கப்பட்டுள்ளது. அதுவரை நீங்கள் கீழேயுள்ள கூகிள் தேடலைப் பயன்படுத்தலாம். இது சில சமயம் இற்றைப்படுத்தப்படாததாய் இருக்கக்கூடும்.',
+'search-error' => 'தேடுகையில் ஒரு பிழை ஏற்பட்டுள்ளது:$1',
# Preferences page
'preferences' => 'விருப்பங்கள்',
'timezoneregion-indian' => 'இந்தியப் பெருங்கடல்',
'timezoneregion-pacific' => 'பசிபிக் பெருங்கடல்',
'allowemail' => 'ஏனைய பயனர்களிடம் இருந்தான மின்னஞ்சல்களை அனுமதி',
-'prefs-searchoptions' => 'தà¯\87à®\9fà¯\81à®\95',
+'prefs-searchoptions' => 'தà¯\87à®\9fலà¯\8d',
'prefs-namespaces' => 'பெயர்வெளிகள்',
'defaultns' => 'அப்படியில்லையென்றால் இந்த பொயர்வெளிகளில் தேடவும்:',
'default' => 'பொதுவானது',
'prefs-textboxsize' => 'தொகுக்கும் சாளரத்தின் அளவு',
'youremail' => 'மின்னஞ்சல்:',
'username' => '{{GENDER:$1|பயனர் பெயர்}}:',
-'uid' => 'பயனர்:',
-'prefs-memberingroups' => 'பின்வரும் {{பன்மை:$1|குழு|குழுக்களில்}} {{பாலினம்:$2|உறுப்பினர்}}:',
+'uid' => '{{GENDER:$1|User}} ID:',
+'prefs-memberingroups' => 'பின்வரும் {{PLURAL:$1|குழு|குழுக்களில்}} உறுப்பினர்:',
'prefs-registration' => 'பதிவு செய்யும் நேரம்:',
'yourrealname' => 'உண்மைப் பெயர்:',
'yourlanguage' => 'மொழி:',
'notvisiblerev' => 'திருத்தம் நீக்கப்பட்டுள்ளது',
'watchnochange' => 'காட்சிப்படுத்தப்பட்ட கால இடைவெளியில், கவனிப்பிலுள்ள, உங்கள் விடயமெதுவும் தொகுக்கப்பட்டிருக்கவில்லை.',
'watchlist-details' => 'பேச்சுப் பக்கங்களைத் தவிர்த்து, {{PLURAL:$1|$1 பக்கம் கவனிக்கப்பட்டது.|$1 பக்கங்கள் கவனிக்கப்பட்டன.}}',
-'wlheader-enotif' => '* மின்னஞ்சல் அறிவித்தல்கள் செயல்படுத்தப்பட்டுள்ளன.',
-'wlheader-showupdated' => "* உமது கடைசி வருகைக்குப் பின்னர் மாற்றங்கள் செய்யப்பட்ட பக்கங்கள் '''தடித்த எழுத்துக்களால்''' காட்டப்பட்டுள்ளன",
+'wlheader-enotif' => 'மின்னஞ்சல் அறிவித்தல்கள் செயல்படுத்தப்பட்டுள்ளன.',
+'wlheader-showupdated' => "உமது கடைசி வருகைக்குப் பின்னர் மாற்றங்கள் செய்யப்பட்ட பக்கங்கள் '''தடித்த எழுத்துக்களால்''' காட்டப்பட்டுள்ளன",
'watchmethod-recent' => 'கவனிக்கப்படுகின்ற பக்கங்களுக்காக, அண்மைய தொகுப்புகள் தேடிப் பார்க்கப்படுகிறன',
'watchmethod-list' => 'அண்மைய தொகுப்புகளுக்காக, கவனிக்கப்படுகின்ற பக்கங்கள் தேடிப் பார்க்கப்படுகிறன',
'watchlistcontains' => 'உங்கள் கவனிப்புப் பட்டியல் {{PLURAL:$1|ஒரு பக்கத்தைக்|$1 பக்கங்களைக்}} கொண்டுள்ளது.',
'mycontris' => 'பங்களிப்புக்கள்',
'contribsub2' => '$1 பயனரின் ($2)',
'nocontribs' => 'இந்த நிபந்தனையுடன் ஒத்துப்போகும் வகையில் மாற்றங்களெதுவும் காணப்படவில்லை.',
-'uctop' => '(à®®à¯\87லà¯\8d)',
+'uctop' => '(தறà¯\8dபà¯\8bதà¯\88ய)',
'month' => 'மாதம் உட்பட முந்திய:',
'year' => 'ஆண்டு உட்பட முந்திய:',
'file-info-size' => '$1 × $2 படவணுக்கள், கோப்பின் அளவு: $3, MIME வகை: $4',
'file-nohires' => 'இதைவிட அளவில் பெரிய படிமம் இல்லை.',
'svg-long-desc' => 'SVG கோப்பு, பெயரளவில் $1 × $2 பிக்சல்கள், கோப்பு அளவு: $3',
+'svg-long-error' => 'செல்லாத SVG கோப்பு: $1',
'show-big-image' => 'முழு அளவிலான படிமம்',
'show-big-image-preview' => 'இந்த முன்னோட்டத்தின் அளவு: $1 .',
'show-big-image-other' => 'மற்ற {{PLURAL:$2|பிரிதிறன்|பிரிதிறன்கள்}}: $1 .',
'ago' => '$1 முன்பு',
'just-now' => 'சடுதியில்.',
+# 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' => 'முறை பின்வருமாறு:
'version-entrypoints-header-entrypoint' => 'நுழைவு புள்ளி',
'version-entrypoints-header-url' => 'உரலி (URL)',
+# Special:Redirect
+'redirect-submit' => 'செல்க',
+'redirect-lookup' => 'கவனிக்கவும்:',
+'redirect-file' => 'கோப்பின் பெயர்',
+'redirect-not-exists' => 'மதிப்பு காணப்பெறவில்லை',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'நகல் கோப்புகளைத் தேடுக',
'fileduplicatesearch-summary' => 'நகல் கோப்புகளை ஹாஷ் மதிப்புகள் அடிப்படையில் தேடு.',
'specialpages-group-highuse' => 'உயர் பயன்பாட்டு பக்கங்கள்',
'specialpages-group-pages' => 'பக்கங்களின் பட்டியல்கள்',
'specialpages-group-pagetools' => 'பக்கக் கருவிகள்',
-'specialpages-group-wiki' => 'விà®\95à¯\8dà®\95ி தரவà¯\81 மறà¯\8dà®±à¯\81à®®à¯\8d à®\95à®°à¯\81விà®\95ளà¯\8d',
+'specialpages-group-wiki' => 'தரவு மற்றும் கருவிகள்',
'specialpages-group-redirects' => 'சிறப்புப் பக்கங்கள் வழிமாற்றம் செய்யப்படுகின்றது',
'specialpages-group-spam' => 'எரித கருவிகள்',
# Special:Tags
'tags' => 'செல்லத்தக்க மாற்று குறிச்சொற்கள்',
-'tag-filter' => '[[Special:Tags|Tag]] [[சிறப்பு:மேற்கோள்கள்|மேற்கோள்]] வடிப்பான்:',
+'tag-filter' => '[[Special:Tags|குறிச்சொல்]] வடிப்பான்:',
'tag-filter-submit' => 'வடிகட்டி',
'tags-title' => 'குறிச்சொற்கள்',
'tags-intro' => 'இப்பக்கத்தின் மென்பொருள் ஒரு திருத்ததுடனான குறியீடு என்று குறிச்சொற்கள், மற்றும் அவற்றின் பொருளை பட்டியலிடுகிறது.',
-'tags-tag' => 'à®\95à¯\81றிà®\9aà¯\8dà®\9aà¯\8aà®±à¯\8dà®\95ளினà¯\8d பà¯\86யர்',
-'tags-display-header' => ' மாற்று பட்டியல்களின் தோற்றங்கள்',
-'tags-description-header' => 'à®\85à®°à¯\8dதà¯\8dததà¯\8dதினà¯\8d à®®à¯\81à®´à¯\81 விளக்கம்',
-'tags-hitcount-header' => 'à®\95à¯\81றிà®\9aà¯\8dà®\9aà¯\8aலà¯\8dலிà®\9fபà¯\8dபà®\9fà¯\8dà®\9f மாறà¯\8dà®±à®\99à¯\8dà®\95ளà¯\8d',
+'tags-tag' => 'à®\95à¯\81றிà®\9aà¯\8dà®\9aà¯\8aல்',
+'tags-display-header' => 'கவனிப்புப் பட்டியலில் தெரியும் பெயர்',
+'tags-description-header' => 'விரிவான விளக்கம்',
+'tags-hitcount-header' => 'மாறà¯\8dà®±à®\99à¯\8dà®\95ளினà¯\8d à®\8eணà¯\8dணிà®\95à¯\8dà®\95à¯\88',
'tags-edit' => 'தொகு',
'tags-hitcount' => '$1 {{PLURAL:$1|மாற்றம்|மாற்றங்கள்}}',
'htmlform-submit' => 'சமர்ப்பி',
'htmlform-reset' => 'மாற்றங்களை இல்லாது செய்',
'htmlform-selectorother-other' => 'மற்றவை',
+'htmlform-no' => 'இல்லை',
+'htmlform-yes' => 'ஆம்',
+'htmlform-chosen-placeholder' => 'விருப்பத்தினைத் தேர்க',
# SQLite database support
'sqlite-has-fts' => '$1முழு-உரை தேடல் ஆதரவுடன்',
'tog-shownumberswatching' => 'ಪುಟೊನು ತೂವೊಂದುಪ್ಪುನಂಚಿನ ಸದಸ್ಯೆರ್’ನ ಸಂಖ್ಯೆನ್ ತೊಜ್ಪಾಲೆ',
'tog-oldsig' => 'ಇತ್ತೆದ ಸಹಿ',
'tog-fancysig' => 'ಸರಳ ಸಹಿಗಳು (ಲಿಂಕ್ ಇಜ್ಜಂದಿಲೆಕ)',
-'tog-externaleditor' => 'ಯಾಪಲ ಪಿದಯಿದ ಸಂಪಾದನೆ ಉಪಕರಣದ ಉಪಯೋಗ ಮನ್ಪುಲೆ (ಅನುಭವ ಉಪ್ಪುನಂಚಿನ ಸದಸ್ಯೆರೆಗ್ ಮಾತ್ರ, ನಿಕ್ಲೆನ ಕಂಪ್ಯೂಟರ್’ಡ್ ವಿಶೇಷವಾಯಿನ ಬದಲಾವಣೆಲು ಬೋಡಾಪುಂಡು)',
-'tog-externaldiff' => 'ಬಾಹ್ಯ ಮುನ್ನೋಟನ್ ಯಾಪಲ ಉಪಯೋಗ ಮಲ್ಪುಲೆ (ಅನುಭವ ಉಪ್ಪುನಂಚಿನ ಸದಸ್ಯೆರೆಗ್ ಮಾತ್ರ, ನಿಕ್ಲೆನ ಕಂಪ್ಯೂಟರ್’ಡ್ ವಿಶೇಷ ಬದಲಾವಣೆಲು ಬೋಡಾಪುಂಡು)',
'tog-uselivepreview' => 'ನೇರ ಮುನ್ನೋಟನ್ ಉಪಯೋಗ ಮಲ್ಪುಲೆ (JavaScript) (ಪ್ರಾಯೋಗಿಕ)',
'tog-forceeditsummary' => 'ಸಂಪಾದನೆ ಸಾರಾಂಶೊನು ಖಾಲಿ ಬುಡ್’ನ್ಡ್ ಎಂಕ್ ನೆನಪು ಮಲ್ಪುಲೆ',
'tog-watchlisthideown' => 'ವೀಕ್ಷಣಾಪಟ್ಟಿಡ್ ಎನ್ನ ಸಂಪಾದನೆಲೆನ್ ತೊಜ್’ಪಾವೊಚಿ',
'disclaimers' => 'ಅಬಾಧ್ಯತೆಲು',
'disclaimerpage' => 'Project:ಸಾಮಾನ್ಯ ಅಬಾಧ್ಯತೆಲು',
'edithelp' => 'ಸಂಪಾದನೆ(ಎಡಿಟ್) ಮಲ್ಪೆರೆ ಸಹಾಯ',
-'edithelppage' => 'Help:ಸಂಪಾದನೆ',
'helppage' => 'Help:ಪರಿವಿಡಿ',
'mainpage' => 'ಮುಖ್ಯ ಪುಟ',
'mainpage-description' => 'ಮುಖ್ಯ ಪುಟ',
'nextn' => 'ಬೊಕ್ಕದ {{PLURAL:$1|$1}}',
'viewprevnext' => 'ತೂಲೆ ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-legend' => 'ನಾಡಾಟದ ಆಯ್ಕೆಲು',
-'searchhelp-url' => 'Help:ಪರಿವಿಡಿ',
'searchprofile-articles' => 'ಲೇಖನ ಪುಟೊ',
'searchprofile-images' => 'ಬಹುಮಾಧ್ಯಮ',
'searchprofile-everything' => 'ಪ್ರತಿಯೊಂಜಿ',
# Special:ListGroupRights
'listgrouprights-members' => '(ಸದಸ್ಯೆರ್ನ ಪಟ್ಟಿ)',
-# E-mail user
+# Email user
'emailuser' => 'ಈ ಸದಸ್ಯೆರೆಗ್ ಇ-ಮೈಲ್ ಕಡಪುಡ್ಲೆ',
# Watchlist
'oct' => 'అక్టో',
'nov' => 'నవం',
'dec' => 'డిసెం',
+'january-date' => 'జనవరి $1',
+'february-date' => 'ఫిబ్రవరి $1',
+'march-date' => 'మార్చి $1',
+'april-date' => 'ఏప్రిల్ $1',
+'may-date' => 'మే $1',
+'june-date' => 'జూన్ $1',
+'july-date' => 'జూలై $1',
+'august-date' => 'ఆగస్టు $1',
+'september-date' => 'సెప్టెంబర్ $1',
+'october-date' => 'అక్టోబర్ $1',
+'november-date' => 'నవంబర్ $1',
+'december-date' => 'డిసెంబర్ $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|వర్గం|వర్గాలు}}',
'newwindow' => '(కొత్త కిటికీలో వస్తుంది)',
'cancel' => 'రద్దు',
'moredotdotdot' => 'ఇంకా...',
+'morenotlisted' => 'చూపించబడనివి మరిన్ని...',
'mypage' => 'పుట',
'mytalk' => 'చర్చ',
'anontalk' => 'ఈ ఐ.పి.కి సంబంధించిన చర్చ',
'disclaimers' => 'అస్వీకారములు',
'disclaimerpage' => 'Project:సాధారణ నిష్పూచీ',
'edithelp' => 'దిద్దుబాటు సహాయం',
-'edithelppage' => 'Help:దిద్దుబాట్లు ఎలా చెయ్యాలి',
'helppage' => 'Help:సూచిక',
'mainpage' => 'మొదటి పేజీ',
'mainpage-description' => 'తలపుట',
'gotaccount' => 'ఇప్పటికే మీకు ఖాతా ఉందా? $1.',
'gotaccountlink' => 'ప్రవేశించండి',
'userlogin-resetlink' => 'మీ ప్రవేశ వివరాలను మరచిపోయారా?',
+'userlogin-resetpassword-link' => 'మీ దాటుమాటను మార్చుకోండి',
+'helplogin-url' => 'Help:ప్రవేశించడం',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|ప్రవేశించడానికి సహాయం]]',
'createacct-join' => 'మీ సమాచారాన్ని క్రింద ఇవ్వండి.',
'createacct-emailrequired' => 'ఈమెయిలు చిరునామా',
'createacct-emailoptional' => 'ఈమెయిలు చిరునామా (ఐచ్చికం)',
'userexists' => 'ఇచ్చిన వాడుకరిపేరు ఇప్పటికే వాడుకలో ఉంది.
వేరే పేరును ఎంచుకోండి.',
'loginerror' => 'ప్రవేశంలో పొరపాటు',
+'createacct-error' => 'పద్దు తెరవడములో తప్పు',
'createaccounterror' => 'ఖాతాని సృష్టించలేకపోయాం: $1',
'nocookiesnew' => 'ఖాతాని సృష్టించాం, కానీ మీరు ఇంకా లోనికి ప్రవేశించలేదు.
వాడుకరుల ప్రవేశానికి {{SITENAME}} కూకీలను వాడుతుంది.
'blocked-mailpassword' => 'దిద్దుబాట్లు చెయ్యకుండా ఈ ఐపీఅడ్రసును నిరోధించాం. అంచేత, దుశ్చర్యల నివారణ కోసం గాను, మరచిపోయిన సంకేతపదాన్ని పొందే అంశాన్ని అనుమతించము.',
'eauthentsent' => 'ఇచ్చిన ఈ-మెయిలు అడ్రసుకు ధృవీకరణ మెయిలు వెళ్ళింది.
మరిన్ని మెయిళ్ళు పంపే ముందు, మీరు ఆ మెయిల్లో సూచించినట్లుగా చేసి, ఈ చిరునామా మీదేనని ధృవీకరించండి.',
-'throttled-mailpassword' => 'గడచిన {{PLURAL:$1|ఒక గంటలో|$1 గంటల్లో}} ఇప్పటికే ఒక సంకేతపదపు రిమైండరుని పంపించివున్నాం.
-à°¦à±\81à°¶à±\8dà°\9aà°°à±\8dయలనà±\81 నివారిà°\82à°\9aà±\87à°\82à°¦à±\81à°\95à±\81 à°\97ానà±\81, {{PLURAL:$1|à°\92à°\95 à°\97à°\82à°\9fà°\95à°¿|$1 à°\97à°\82à°\9fà°²à°\95à°¿}} à°\92à°\95à±\8dà°\95సారి మాతà±\8dà°°à°®à±\87 à°¸à°\82à°\95à±\87తపదపà±\81 à°°à°¿à°®à±\88à°\82à°¡à°°à±\81ని పంపిస్తాము.',
+'throttled-mailpassword' => 'గడచిన {{PLURAL:$1|ఒక గంటలో|$1 గంటల్లో}} ఇప్పటికే దాటుమాట మార్చినట్లుగా ఒక మెయిల్ పంపించివున్నాం.
+à°¦à±\81à°¶à±\8dà°\9aà°°à±\8dయలనà±\81 నివారిà°\82à°\9aà±\87à°\82à°¦à±\81à°\95à±\81 à°\97ానà±\81, {{PLURAL:$1|à°\92à°\95 à°\97à°\82à°\9fà°\95à°¿|$1 à°\97à°\82à°\9fà°²à°\95à°¿}} à°\92à°\95à±\8dà°\95సారి మాతà±\8dà°°à°®à±\87 దాà°\9fà±\81మాà°\9f మారà±\8dà°ªà±\81 à°®à±\86యిలà±\8d పంపిస్తాము.',
'mailerror' => 'మెయిలు పంపించడంలో లోపం: $1',
'acct_creation_throttle_hit' => 'మీ ఐపీ చిరునామా వాడుతున్న ఈ వికీ సందర్శకులు గత ఒక్క రోజులో {{PLURAL:$1|1 ఖాతాని|$1 ఖాతాలను}} సృష్టించారు, ఈ కాల వ్యవధిలో అది గరిష్ఠ పరిమితి.
అందువల్ల, ఈ ఐపీని వాడుతున్న సందర్శకులు ప్రస్తుతానికి ఇంక ఖాతాలని సృష్టించలేరు.',
# Special:PasswordReset
'passwordreset' => 'సంకేతపదాన్ని మార్చుకోండి',
-'passwordreset-text' => 'మీ ఖాతా వివరాలను గుర్తు చేసే ఈమెయిలు కోసం ఈ ఫారాన్ని పూర్తి చెయ్యండి.',
'passwordreset-legend' => 'సంకేతపదాన్ని మార్చుకోండి',
'passwordreset-disabled' => 'ఈ వికీలో సంకేతపదాల మార్పును అచేతనం చేసాం.',
-'passwordreset-pretext' => '{{PLURAL:$1||డేటా శకలాల్లోంచి ఒకదాన్ని ఇవ్వండి}}',
'passwordreset-username' => 'వాడుకరి పేరు:',
'passwordreset-domain' => 'డొమైన్:',
'passwordreset-email' => 'ఈ-మెయిలు చిరునామా:',
దీన్ని తొలగించినట్టున్నారు.',
'edit-conflict' => 'మార్పు సంఘర్షణ.',
'edit-no-change' => 'పాఠ్యంలో ఏమీ మార్పులు లేవు గనక, మీ మార్పుని పట్టించుకోవట్లేదు.',
+'postedit-confirmation' => 'మీ మార్పు భద్రమయ్యింది.',
'edit-already-exists' => 'కొత్త పేజీని సృష్టించలేము.
అది ఇప్పటికే ఉంది.',
'defaultmessagetext' => 'అప్రమేయ సందేశపు పాఠ్యం',
'searchmenu-legend' => 'అన్వేషణ ఎంపికలు',
'searchmenu-exists' => "'''ఈ వికీలో \"[[:\$1]]\" అనే పేజీ ఉంది'''",
'searchmenu-new' => "'''ఈ వికీలో \"[[:\$1]]\" అనే పేరుతో పేజీని సృష్టించు!'''",
-'searchhelp-url' => 'Help:సూచిక',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ఈ ఉపసర్గ ఉన్న పేజీలను చూడండి]]',
'searchprofile-articles' => 'విషయపు పేజీలు',
'searchprofile-project' => 'సహాయం మరియు ప్రాజెక్టు పేజీలు',
ఇతరులు మిమ్మల్ని సంప్రదించినప్పుడు మీ ఈ-మెయిలు చిరునామా బహిర్గతమవదు.',
'prefs-help-email-required' => 'ఈ-మెయిలు చిరునామా తప్పనిసరి.',
'prefs-info' => 'ప్రాథమిక సమాచారం',
-'prefs-i18n' => 'à°\85à°\82తరà±\8dà°\9cాతà±\80à°¯à±\80à°\95à°°à°£',
+'prefs-i18n' => 'అంతర్జాతీకరణ',
'prefs-signature' => 'సంతకం',
'prefs-dateformat' => 'తేదీ ఆకృతి',
'prefs-timeoffset' => 'సమయ సవరణ',
# Miscellaneous special pages
'nbytes' => '$1 {{PLURAL:$1|బైటు|బైట్లు}}',
'ncategories' => '$1 {{PLURAL:$1|వర్గం|వర్గాలు}}',
+'ninterwikis' => '$1 {{PLURAL:$1|అంతర్వికీ|అంతర్వికీలు}}',
'nlinks' => '$1 {{PLURAL:$1|లింకు|లింకులు}}',
'nmembers' => '{{PLURAL:$1|ఒక ఉపవర్గం/పేజీ/ఫైలు|$1 ఉపవర్గాలు/పేజీలు/ఫైళ్లు}}',
'nrevisions' => '{{PLURAL:$1|ఒక సంచిక|$1 సంచికలు}}',
'notvisiblerev' => 'ఈ కూర్పును తొలగించాం',
'watchnochange' => 'మీ వీక్షణ జాబితాలోని ఏ పేజీలోనూ ఈ కాల అవధిలో మార్పులు జరగలేదు.',
'watchlist-details' => 'మీ వీక్షణ జాబితాలో {{PLURAL:$1|ఒక పేజీ ఉంది|$1 పేజీలు ఉన్నాయి}}, చర్చా పేజీలని వదిలేసి.',
-'wlheader-enotif' => '* ఈ-మెయిలు ప్రకటనలు పంపబడతాయి.',
-'wlheader-showupdated' => "* మీ గత సందర్శన తరువాత మారిన పేజీలు '''బొద్దు'''గా చూపించబడ్డాయి.",
+'wlheader-enotif' => 'ఈ-మెయిలు ప్రకటనలు పంపబడతాయి.',
+'wlheader-showupdated' => "మీ గత సందర్శన తరువాత మారిన పేజీలు '''బొద్దు'''గా చూపించబడ్డాయి.",
'watchmethod-recent' => 'వీక్షణ జాబితాలోని పేజీల కొరకు ఇటీవలి మార్పులు పరిశీలించబడుతున్నాయి',
'watchmethod-list' => 'ఇటీవలి మార్పుల కొరకు వీక్షణ జాబితాలోని పేజీలు పరిశీలించబడుతున్నాయి',
'watchlistcontains' => 'మీ వీక్షణ జాబితాలో {{PLURAL:$1|ఒక పేజీ ఉంది|$1 పేజీలు ఉన్నాయి}}.',
'''$1''' అనే పేరున్న ఈ పేజీకి ప్రస్తుతం ఈ రక్షణ ఉంది:",
'protect-cascadeon' => 'ఈ పేజీ కాస్కేడింగు రక్షణలో ఉన్న ఈ కింది {{PLURAL:$1|పేజీకి|పేజీలకు}} జతచేయటం వలన, ప్రస్తుతం రక్షణలో ఉంది. మీరు ఈ పేజీ యొక్క రక్షణ స్థాయిన మార్చవచ్చు, దాని వలన కాస్కేడింగు రక్షణకు ఎటువంటి సమస్య ఉండదు.',
'protect-default' => 'అందరు వాడుకరులను అనుమతించు',
-'protect-fallback' => '"$1" à°\85à°¨à±\81మతి à°\85వసరà°\82',
+'protect-fallback' => '"$1" à°\85à°¨à±\81మతి à°\89à°¨à±\8dà°¨ వాడà±\81à°\95à°°à±\81లనà±\81 మాతà±\8dà°°à°®à±\87 à°\85à°¨à±\81మతిà°\82à°\9aà±\81',
'protect-level-autoconfirmed' => 'కొత్త మరియు నమోదుకాని వాడుకరులను నిరోధించు',
'protect-level-sysop' => 'నిర్వాహకులను మాత్రమే అనుమతించు',
'protect-summary-cascade' => 'కాస్కేడింగు',
'minutes' => '{{PLURAL:$1|ఒక నిమిషం|$1 నిమిషాల}}',
'hours' => '{{PLURAL:$1|ఒక గంట|$1 గంటల}}',
'days' => '{{PLURAL:$1|ఒక రోజు|$1 రోజుల}}',
+'weeks' => '{{PLURAL:$1|$1 వారం|$1 వారాలు}}',
'months' => '{{PLURAL:$1|ఒక నెల|$1 నెలల}}',
'years' => '{{PLURAL:$1|ఒక సంవత్సరం|$1 సంవత్సరాల}}',
'ago' => '$1 క్రితం',
'hours-ago' => '$1 {{PLURAL:$1|గంట|గంటల}} క్రితం',
'minutes-ago' => '$1 {{PLURAL:$1|నిమిషం|నిమిషాల}} క్రితం',
'seconds-ago' => '$1 {{PLURAL:$1|క్షణం|క్షణాల}} క్రితం',
+'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
'sqlite-no-fts' => '$1 పూర్తి-పాఠ్య అన్వేషణ తోడ్పాటు లేకుండా',
# New logging system
-'logentry-delete-delete' => '$1 $3 à°ªà±\81à°\9fà°¨à±\81 à°¤à±\8aà°²à°\97à°¿à°\82à°\9aారà±\81',
+'logentry-delete-delete' => '$1 $3 à°ªà±\87à°\9cà±\80ని {{GENDER:$2|à°¤à±\8aà°²à°\97à°¿à°\82à°\9aారà±\81}}',
'revdelete-content-hid' => 'కంటెంట్ దాచబడింది',
'revdelete-summary-hid' => 'మార్పుల సారాంశాన్ని దాచారు',
'revdelete-uname-hid' => 'వాడుకరి పేరుని దాచారు',
'disclaimers' => 'Avisu legál',
'disclaimerpage' => 'Project:Avisu legál',
'edithelp' => 'Ajuda kona-ba edita',
-'edithelppage' => 'Help:Edita',
'helppage' => 'Help:Konteúdu',
'mainpage' => 'Pájina Mahuluk',
'mainpage-description' => 'Pájina Mahuluk',
# Special:ListUsers
'listusers-submit' => 'Hatudu',
+# Special:ActiveUsers
+'activeusers-hidebots' => 'Subar bot sira',
+'activeusers-hidesysops' => 'Subar administradór sira',
+
# Special:ListGroupRights
'listgrouprights-group' => 'Grupu',
'listgrouprights-rights' => 'Priviléjiu',
'blocklink' => 'blokeiu',
'unblocklink' => 'la blokeiu',
'contribslink' => 'kontribuisaun',
+'blocklogentry' => 'blokeiu [[$1]] ba tempu $2 $3',
'block-log-flags-nocreate' => 'la bele kria konta foun',
'block-log-flags-noemail' => 'korreiu eletróniku blokeiu',
'block-log-flags-nousertalk' => 'la bele edita pájina diskusaun rasik',
Ligasaun uluk iha liña tenke ligasaun bá imajen aat.
Ligasaun seluk iha liña - ne'e pájina sira iha ne'ebé bele inklui imajen aat.",
-# EXIF tags
+# Exif tags
'exif-make' => 'Fabrikante kámara nian',
'exif-model' => 'Kámara',
'exif-artist' => 'Autór',
'version-software-product' => 'Produtu',
'version-software-version' => 'Versaun',
-# Special:FilePath
-'filepath-page' => 'Fail:',
-'filepath-submit' => 'Bá',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Buka',
'tog-shownumberswatching' => 'Нишон додани шумораи корбарони пайгир',
'tog-oldsig' => 'Пешнамоиши имзои вуҷуддошта:',
'tog-fancysig' => 'Имзоро ба сурати викиматн ба назар бигир (бе пайванди худкор)',
-'tog-externaleditor' => 'Истифода аз вироишгари хориҷӣ ба таври пешфарз (фақат барои корбарони пешрафта, ниёзманди танзимоти вижа дар ройонаи шумо аст. [//www.mediawiki.org/wiki/Manual:External_editors Иттилооти бештар.])',
-'tog-externaldiff' => 'Истифода аз тафовутгири (diff) хориҷӣ ба таври пешфарз (фақат барои корбарони пешрафта, ниёзманди танзимоти вижа дар ройонаи шумо аст. [//www.mediawiki.org/wiki/Manual:External_editors Иттилооти бештар.])',
'tog-showjumplinks' => 'Намоиши пайвандҳои дастрасии "ҷаҳиш ба" дар феҳристи мундариҷот',
'tog-uselivepreview' => 'Истифода аз пешнамоиши зинда (ҶаваСкрипт) (Озмоишӣ)',
'tog-forceeditsummary' => 'Ҳангоме ки хулосаи вироиш нанавиштаам юа ман ислоҳ бидеҳ',
'disclaimers' => 'Такзибнома',
'disclaimerpage' => 'Project:Такзибномаи умумӣ',
'edithelp' => 'Роҳнамои вироиш',
-'edithelppage' => 'Help:Вироиш',
'helppage' => 'Help:Мундариҷа',
'mainpage' => 'Саҳифаи Аслӣ',
'mainpage-description' => 'Саҳифаи Аслӣ',
'searchmenu-legend' => 'Гузинаҳои ҷустуҷӯ',
'searchmenu-exists' => "'''Саҳифае бо номи \"[[:\$1]]\" дар ин вики вуҷуд дорад.'''",
'searchmenu-new' => "'''Эҷоди саҳифаи \"[[:\$1]]\" дар ин вики!'''",
-'searchhelp-url' => 'Help:Мундариҷа',
'searchprofile-articles' => 'Саҳифаҳои мӯҳтаво',
'searchprofile-project' => 'Саҳифаҳои роҳномо ва лоиҳа',
'searchprofile-images' => 'Чандрасонаӣ',
'search-external' => 'Ҷустуҷӯи хориҷӣ',
'searchdisabled' => 'Ҷустуҷу дар {{SITENAME}} ғайрифаъол карда шудааст. Шумо метавонед тариқи Google дар ҳол ҷустуҷӯ кунед. Таваҷҷӯҳ кунед, ки натоиҷи ҷустуҷӯ {{SITENAME}} метавонад барӯз набошад.',
-# Quickbar
-'qbsettings' => 'Танзимоти тезхат (Quickbar)',
-'qbsettings-none' => 'Набошад',
-'qbsettings-fixedleft' => 'Сабти чап',
-'qbsettings-fixedright' => 'Сабти рост',
-'qbsettings-floatingleft' => 'Шиновар чап',
-'qbsettings-floatingright' => 'Шиновар рост',
-
# Preferences page
'preferences' => 'Тарҷиҳот',
'mypreferences' => 'Танзимот',
'notvisiblerev' => 'Нусха ҳазф шуд',
'watchnochange' => 'Ягон мавриди пайгириҳои шумо дар давраи замони намоишёфта вироиш нашуда аст.',
'watchlist-details' => '{{PLURAL:$1|$1 саҳифаи|$1 саҳифаҳои}} дар феҳристи пайгириҳои шумо, бидуни ҳисоби саҳифаҳои баҳс.',
-'wlheader-enotif' => '* Иттилоорасонии тариқи почтаи электронӣ (E-mail) имконпазир аст.',
-'wlheader-showupdated' => "* Саҳифаҳое, ки пас аз охирин сар заданатон ба онҳо тағйир кардаанд '''пурранг''' нишон дода шудаанд",
+'wlheader-enotif' => 'Иттилоорасонии тариқи почтаи электронӣ (E-mail) имконпазир аст.',
+'wlheader-showupdated' => "Саҳифаҳое, ки пас аз охирин сар заданатон ба онҳо тағйир кардаанд '''пурранг''' нишон дода шудаанд",
'watchmethod-recent' => 'баррасии вироишҳои охир барои саҳифаҳои пайгиришуда',
'watchmethod-list' => 'баррасии саҳифаҳои пайгиришуда барои вироишҳои охир',
'watchlistcontains' => 'Феҳристи пайгириҳои шумо $1 {{PLURAL:$1|саҳифаро|саҳифаҳоро}} дар бар мегирад.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Васеъӣ',
'exif-imagelength' => 'Баландӣ',
'exif-bitspersample' => 'Нуқта дар ҳар ҷузъ',
'exif-gpsdatestamp' => 'Таърихи ҶПС',
'exif-gpsdifferential' => 'Тасҳеҳи ҷузъии ҶПС',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Ғайрифишурда',
'exif-unknowndate' => 'Таърихи номаълум',
'version-software-product' => 'Маҳсул',
'version-software-version' => 'Нусха',
-# Special:FilePath
-'filepath' => 'Масири парванда',
-'filepath-page' => 'Парванда:',
-'filepath-submit' => 'Масир',
-'filepath-summary' => 'Ин саҳифаи вижа нишонаи комил барои як парвандаро нишон медиҳад.
-Аксҳо бо кайфият бо ҳаҷми пурраашон нишон дода мешаванд, дигар навъҳои парвандаҳои дигар бо барномаҳои алоқаманди махсус ба худашон боз мешаванд.
-
-Нишонаи пайвандро бидуни пешванд "{{ns:file}}:" ворид кунед.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Ҷустуҷӯ барои парвандаҳои такрорӣ',
'fileduplicatesearch-summary' => 'Ҷустуҷӯ барои парвандаҳои такрорӣ бар асоси миқдори дар ҳам шудаи онҳо сурат мегирад.',
'tog-shownumberswatching' => 'Nişon dodani şumorai korbaroni pajgir',
'tog-oldsig' => 'Peşnamoişi imzoi vuçuddoşta:',
'tog-fancysig' => 'Imzoro ba surati vikimatn ba nazar bigir (be pajvandi xudkor)',
-'tog-externaleditor' => 'Istifoda az viroişgari xoriçī ba tavri peşfarz (faqat baroi korbaroni peşrafta, nijozmandi tanzimoti viƶa dar rojonai şumo ast. [//www.mediawiki.org/wiki/Manual:External_editors Ittilooti beştar.])',
-'tog-externaldiff' => 'Istifoda az tafovutgiri (diff) xoriçī ba tavri peşfarz (faqat baroi korbaroni peşrafta, nijozmandi tanzimoti viƶa dar rojonai şumo ast. [//www.mediawiki.org/wiki/Manual:External_editors Ittilooti beştar.])',
'tog-showjumplinks' => 'Namoişi pajvandhoi dastrasiji "çahiş ba" dar fehristi mundariçot',
'tog-uselivepreview' => 'Istifoda az peşnamoişi zinda (ÇavaSkript) (Ozmoişī)',
'tog-forceeditsummary' => 'Hangome ki xulosai viroiş nanaviştaam jua man isloh bideh',
'disclaimers' => 'Takzibnoma',
'disclaimerpage' => 'Project:Takzibnomai umumī',
'edithelp' => 'Rohnamoi viroiş',
-'edithelppage' => 'Help:Viroiş',
'helppage' => 'Help:Mundariça',
'mainpage' => 'Sahifai Aslī',
'mainpage-description' => 'Sahifai Aslī',
'viewprevnext' => 'Namoiş ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-legend' => 'Guzinahoi çustuçū',
'searchmenu-new' => "'''Eçodi sahifai \"[[:\$1]]\" dar in viki!'''",
-'searchhelp-url' => 'Help:Mundariça',
'searchprofile-advanced' => 'Peşrafta',
'searchprofile-articles-tooltip' => 'Çustuçū dar $1',
'searchprofile-project-tooltip' => 'Çustuçū dar $1',
'search-external' => 'Çustuçūi xoriçī',
'searchdisabled' => "Çustuçu dar {{SITENAME}} ƣajrifa'ol karda şudaast. Şumo metavoned tariqi Google dar hol çustuçū kuned. Tavaççūh kuned, ki natoiçi çustuçū {{SITENAME}} metavonad barūz naboşad.",
-# Quickbar
-'qbsettings' => 'Tanzimoti tezxat (Quickbar)',
-'qbsettings-none' => 'Naboşad',
-'qbsettings-fixedleft' => 'Sabti cap',
-'qbsettings-fixedright' => 'Sabti rost',
-'qbsettings-floatingleft' => 'Şinovar cap',
-'qbsettings-floatingright' => 'Şinovar rost',
-
# Preferences page
'preferences' => 'Tarçihot',
'mypreferences' => 'Tarçihoti man',
'notvisiblerev' => 'Nusxa hazf şud',
'watchnochange' => 'Jagon mavridi pajgirihoi şumo dar davrai zamoni namoişjofta viroiş naşuda ast.',
'watchlist-details' => '{{PLURAL:$1|$1 sahifai|$1 sahifahoi}} dar fehristi pajgirihoi şumo, biduni hisobi sahifahoi bahs.',
-'wlheader-enotif' => '* Ittiloorasoniji tariqi poctai elektronī (E-mail) imkonpazir ast.',
-'wlheader-showupdated' => "* Sahifahoe, ki pas az oxirin sar zadanaton ba onho taƣjir kardaand '''purrang''' nişon doda şudaand",
+'wlheader-enotif' => 'Ittiloorasoniji tariqi poctai elektronī (E-mail) imkonpazir ast.',
+'wlheader-showupdated' => "Sahifahoe, ki pas az oxirin sar zadanaton ba onho taƣjir kardaand '''purrang''' nişon doda şudaand",
'watchmethod-recent' => 'barrasiji viroişhoi oxir baroi sahifahoi pajgirişuda',
'watchmethod-list' => 'barrasiji sahifahoi pajgirişuda baroi viroişhoi oxir',
'watchlistcontains' => 'Fehristi pajgirihoi şumo $1 {{PLURAL:$1|sahifaro|sahifahoro}} dar bar megirad.',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => "Vase'ī",
'exif-imagelength' => 'Balandī',
'exif-bitspersample' => "Nuqta dar har çuz'",
'exif-gpsdatestamp' => "Ta'rixi ÇPS",
'exif-gpsdifferential' => "Tashehi çuz'iji ÇPS",
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Ƣajrifişurda',
'exif-unknowndate' => "Ta'rixi noma'lum",
'version-software-product' => 'Mahsul',
'version-software-version' => 'Nusxa',
-# Special:FilePath
-'filepath' => 'Masiri parvanda',
-'filepath-page' => 'Parvanda:',
-'filepath-submit' => 'Masir',
-'filepath-summary' => 'In sahifai viƶa nişonai komil baroi jak parvandaro nişon medihad.
-Aksho bo kajfijat bo haçmi purraaşon nişon doda meşavand, digar nav\'hoi parvandahoi digar bo barnomahoi aloqamandi maxsus ba xudaşon boz meşavand.
-
-Nişonai pajvandro biduni peşvand "{{ns:file}}:" vorid kuned.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Çustuçū baroi parvandahoi takrorī',
'fileduplicatesearch-summary' => 'Çustuçū baroi parvandahoi takrorī bar asosi miqdori dar ham şudai onho surat megirad.',
'ISO 8601 both' => 'xnY-xnm-xnd"T"xnH:xni:xns',
);
-$linkTrail = '/^([a-z]+)(.*)\$/sD';
+$linkTrail = '/^([a-z]+)(.*)$/sD';
$messages = array(
# User preference toggles
'oct' => 'ต.ค.',
'nov' => 'พ.ย.',
'dec' => 'ธ.ค.',
+'january-date' => '$1 มกราคม',
+'february-date' => '$1 กุมภาพันธ์',
+'march-date' => '$1 มีนาคม',
+'april-date' => '$1 เมษายน',
+'may-date' => '$1 พฤษภาคม',
+'june-date' => '$1 มิถุนายน',
+'july-date' => '$1 กรกฎาคม',
+'august-date' => '$1 สิงหาคม',
+'september-date' => '$1 กันยายน',
+'october-date' => '$1 ตุลาคม',
+'november-date' => '$1 พฤศจิกายน',
+'december-date' => '$1 ธันวาคม',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|หมวดหมู่|หมวดหมู่}}',
'create-this-page' => 'สร้างหน้านี้',
'delete' => 'ลบ',
'deletethispage' => 'ลบหน้านี้',
+'undeletethispage' => 'กู้คืนหน้านี้',
'undelete_short' => 'กู้คืน $1 การแก้ไข',
'viewdeleted_short' => 'ดู $1 การแก้ไขที่ถูกลบ',
'protect' => 'ล็อก',
'disclaimers' => 'ข้อปฏิเสธความรับผิดชอบ',
'disclaimerpage' => 'Project:ข้อปฏิเสธความรับผิดชอบทั่วไป',
'edithelp' => 'คำอธิบายการแก้ไข',
-'edithelppage' => 'Help:การแก้ไข',
'helppage' => 'Help:สารบัญ',
'mainpage' => 'หน้าหลัก',
'mainpage-description' => 'หน้าหลัก',
คำค้น: $2',
'viewsource' => 'ดูโค้ด',
'viewsource-title' => 'ดูโค้ดสำหรับ $1',
-'actionthrottled' => 'à¸\81ารà¸\81ระà¸\97ำà¸\96ูà¸\81ระà¸\87ัà¸\9aชั่วคราว',
+'actionthrottled' => 'à¸\81ารà¸\81ระà¸\97ำà¸\99ีà¹\89à¸\96ูà¸\81ระà¸\87ัà¸\9aà¹\84วà¹\89ชั่วคราว',
'actionthrottledtext' => 'เพื่อเป็นมาตรการป้องกันสแปม คุณจึงถูกจำกัดมิให้กระทำสิ่งนี้ไม่ให้ติดต่อกันหลายครั้งเกินไปในช่วงระยะเวลาสั้น ๆ ซึ่งขณะนี้คุณได้กระทำเกินขีดจำกัดแล้ว กรุณารอสักครู่แล้วลองอีกครั้ง',
'protectedpagetext' => 'หน้านี้ถูกป้องกันมิให้แก้ไขหรือปฏิบัติการอื่น',
'viewsourcetext' => 'คุณสามารถดูและคัดลอกโค้ดหน้านี้ได้:',
'namespaceprotected' => "คุณไม่มีสิทธิแก้ไขหน้าในเนมสเปซ '''$1'''",
'customcssprotected' => 'คุณไม่มีสิทธิแก้ไขหน้าสไตล์ CSS นี้ เนื่องจากหน้านี้มีการตั้งค่าส่วนบุคคลของผู้ใช้อื่น',
'customjsprotected' => 'คุณไม่มีสิทธิแก้ไขหน้าจาวาสคริปต์นี้ เนื่องจากหน้านี้มีการตั้งค่าส่วนบุคคลของผู้ใช้อื่น',
+'mycustomcssprotected' => 'คุณไม่ได้รับอนุญาตให้แก้ไขหน้าซีเอสเอสนี้',
+'mycustomjsprotected' => 'คุณไม่ได้รับอนุญาตให้แก้ไขหน้าจาวาสคริปต์นี้',
'ns-specialprotected' => 'หน้าพิเศษไม่สามารถแก้ไขได้',
'titleprotected' => "ชื่อเรื่องนี้ถูกป้องกันมิให้สร้างโดย [[User:$1|$1]]
เหตุผลที่ให้ไว้คือ ''$2''",
'yourpassword' => 'รหัสผ่าน',
'userlogin-yourpassword' => 'รหัสผ่าน',
'userlogin-yourpassword-ph' => 'กรอกรหัสผ่าน',
+'createacct-yourpassword-ph' => 'กรอกรหัสผ่าน',
'yourpasswordagain' => 'พิมพ์รหัสผ่านอีกครั้ง:',
+'createacct-yourpasswordagain' => 'ยืนยันรหัสผ่าน',
+'createacct-yourpasswordagain-ph' => 'กรอกรหัสผ่านอีกครั้ง',
'remembermypassword' => 'จำการล็อกอินของฉันบนเบราเซอร์นี้ (นานสุด $1 วัน)',
'userlogin-remembermypassword' => 'ให้ฉันอยู่ในระบบ',
'userlogin-signwithsecure' => 'ใช้การเชื่อมต่อที่ปลอดภัย',
'userlogout' => 'ล็อกเอาต์',
'notloggedin' => 'ไม่ได้ล็อกอิน',
'userlogin-noaccount' => 'ไม่มีบัญชีหรือ',
-'userlogin-joinproject' => 'เข้าร่วม {{SITENAME}}',
+'userlogin-joinproject' => 'เข้าร่วมกับ{{SITENAME}}',
'nologin' => 'ไม่มีบัญชีหรือ $1',
'nologinlink' => 'สร้างบัญชี',
'createaccount' => 'สร้างบัญชี',
'gotaccount' => "มีบัญชีแล้วใช่ไหม '''$1'''",
'gotaccountlink' => 'ล็อกอิน',
'userlogin-resetlink' => 'ลืมรายละเอียดล็อกอินของคุณหรือ',
-'userlogin-resetpassword-link' => 'รีà¹\80à¸\8bà¹\87à¸\95รหัสà¸\9cà¹\88าà¸\99à¸\82à¸à¸\87à¸\84ุà¸\93',
+'userlogin-resetpassword-link' => 'à¸\95ัà¹\89à¸\87รหัสà¸\9cà¹\88าà¸\99à¹\83หมà¹\88',
'helplogin-url' => 'Help:การล็อกอิน',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|คำอธิบายเรื่องการล็อกอิน]]',
+'createacct-join' => 'กรอกสารสนเทศของคุณด้านล่าง',
+'createacct-emailrequired' => 'ที่อยู่อีเมล',
+'createacct-emailoptional' => 'ที่อยู่อีเมล (เลือกไม่ใส่ได้)',
+'createacct-email-ph' => 'กรอกที่อยู่อีเมล',
'createaccountmail' => 'ใช้รหัสผ่านสุ่มชั่วคราวและส่งไปยังที่อยู่อีเมลที่ระบุด้านล่าง',
+'createacct-realname' => 'ชื่อจริง (เลือกไม่ใส่ได้)',
'createaccountreason' => 'เหตุผล:',
+'createacct-reason' => 'เหตุผล',
+'createacct-reason-ph' => 'เหตุใดคุณจึงสร้างอีกบัญชี',
+'createacct-captcha' => 'ตรวจสอบความปลอดภัย',
+'createacct-imgcaptcha-ph' => 'กรอกข้อความที่คุณเห็นด้านบน',
'createacct-submit' => 'สร้างบัญชีของคุณ',
+'createacct-benefit-heading' => '{{SITENAME}}สร้างขึ้นจากคนเช่นคุณ',
+'createacct-benefit-body1' => '$1 การแก้ไข',
+'createacct-benefit-body2' => '$1 หน้า',
+'createacct-benefit-body3' => '$1 ผู้ร่วมเขียน',
'badretype' => 'รหัสผ่านที่ใส่ไม่ตรงกัน',
'userexists' => 'ชื่อผู้ใช้ที่กรอกมีผู้อื่นใช้ไปแล้ว กรุณาเลือกชื่ออื่น',
'loginerror' => 'ล็อกอินผิดพลาด',
+'createacct-error' => 'การสร้างบัญชีผิดพลาด',
'createaccounterror' => 'ไม่สามารถสร้างบัญชีผู้ใช้: $1',
'nocookiesnew' => 'ชื่อบัญชีผู้ใช้ได้ถูกสร้างขึ้นแล้ว แต่ยังไม่ได้ล็อกอินเข้าสู่ {{SITENAME}} เนื่องจากว่าไม่ได้เปิดใช้คุกกี้ ถ้าต้องการล็อกอินให้เปิดใช้งานคุกกี้และทำการล็อกอินโดยใส่ชื่อผู้ใช้พร้อมรหัสผ่าน',
'nocookieslogin' => '{{SITENAME}} ใช้คุกกี้สำหรับการล็อกอิน ขณะนี้คุกกี้ของคุณไม่เปิดใช้งาน กรุณาเปิดใช้งานและลองอีกครั้ง',
'cannotchangeemail' => 'ไม่สามารถเปลี่ยนที่อยู่อีเมลบนวิกินี้',
'emaildisabled' => 'เว็บไซต์นี้ไม่สามารถส่งอีเมล',
'accountcreated' => 'บัญชีถูกสร้างขึ้น',
-'accountcreatedtext' => 'à¸\9aัà¸\8dà¸\8aีà¸\9cูà¹\89à¹\83à¸\8aà¹\89à¸\82à¸à¸\87 $1 ถูกสร้างขึ้นแล้ว',
+'accountcreatedtext' => 'à¸\9aัà¸\8dà¸\8aีà¸\9cูà¹\89à¹\83à¸\8aà¹\89สำหรัà¸\9a [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|à¸\9eูà¸\94à¸\84ุย]]) ถูกสร้างขึ้นแล้ว',
'createaccount-title' => 'สร้างบัญชีสำหรับ {{SITENAME}}',
'createaccount-text' => 'มีบางคนสร้างบัญชีโดยใช้ที่อยู่อีเมลของคุณบน {{SITENAME}} ($4) โดยใช้ชื่อ "$2" และรหัสผ่าน "$3" คุณควรล็อกอินเพื่อเปลี่ยนรหัสผ่านทันที
# Special:PasswordReset
'passwordreset' => 'ตั้งรหัสผ่านใหม่',
-'passwordreset-text' => 'กรอกแบบฟอร์มนี้เพื่อตั้งรหัสผ่านใหม่',
+'passwordreset-text-one' => 'กรอกแบบนี้เพื่อตั้งรหัสผ่านใหม่',
'passwordreset-legend' => 'เปลี่ยนรหัสผ่าน',
'passwordreset-disabled' => 'การตั้งรหัสผ่านใหม่ปิดใช้งานบนวิกินี้',
'passwordreset-emaildisabled' => 'คุณลักษณะอีเมลถูกปิดใช้งานบนวิกินี้',
เนื่องจากหน้านี้ถูกลบไปแล้ว',
'edit-conflict' => 'แก้ชนกัน',
'edit-no-change' => 'การแก้ไขของคุณถูกเพิกเฉย เพราะไม่มีการเปลี่ยนแปลงใด ๆ',
+'postedit-confirmation' => 'บันทึกการแก้ไขของคุณแล้ว',
'edit-already-exists' => 'ไม่สามารถสร้างหน้าใหม่ได้
เพราะมีหน้านี้แล้ว',
'defaultmessagetext' => 'ข้อความสารโดยปริยาย',
'revision-info' => 'รุ่นเมื่อ $1 โดย $2',
'previousrevision' => '←รุ่นก่อนหน้า',
'nextrevision' => 'รุ่นถัดไป→',
-'currentrevisionlink' => 'รุà¹\88à¸\99à¸\9bัà¸\88à¸\88ุà¸\9aัà¸\99',
+'currentrevisionlink' => 'รุà¹\88à¸\99ลà¹\88าสุà¸\94',
'cur' => 'ป',
'next' => 'ถัดไป',
'last' => 'ก',
'searchmenu-legend' => 'ตัวเลือกการค้นหา',
'searchmenu-exists' => "'''มีหน้าชื่อ \"[[:\$1]]\" บนวิกินี้'''",
'searchmenu-new' => "'''สร้างหน้า \"[[:\$1]]\" บนวิกินี้'''",
-'searchhelp-url' => 'Help:สารบัญ',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|ค้นดูหน้าที่มีคำขึ้นต้นนี้]]',
'searchprofile-articles' => 'หน้าเนื้อหา',
'searchprofile-project' => 'คำอธิบายและหน้าโครงการ',
'right-editusercssjs' => 'แก้ไขไฟล์ CSS และจาวาสคริปต์ของผู้ใช้อื่น',
'right-editusercss' => 'แก้ไขไฟล์ CSS ของผู้ใช้อื่น',
'right-edituserjs' => 'แก้ไขไฟล์จาวาสคริปต์ของผู้ใช้อื่น',
+'right-editmyusercss' => 'แก้ไขไฟล์ซีเอสเอสผู้ใช้ของคุณเอง',
+'right-editmyuserjs' => 'แก้ไขไฟล์จาวาสคริปต์ผู้ใช้ของคุณเอง',
'right-rollback' => 'ย้อนการแก้ไขของผู้ใช้ล่าสุดที่แก้ไขหน้าเฉพาะอย่างรวดเร็ว',
'right-markbotedits' => 'ทำเครื่องหมายการย้อนว่าเป็นการแก้ไขโดยบอต',
'right-noratelimit' => 'ไม่ได้รับผลกระทบจากขีดจำกัดอัตรา',
ถ้าคุณยังคงต้องการอัปโหลดไฟล์ของคุณ กรุณาย้อนกลับไปตั้งชื่อใหม่
[[File:$1|thumb|center|$1]]',
'file-exists-duplicate' => 'ไฟล์นี้ซ้ำกับ{{PLURAL:$1|ไฟล์|ไฟล์}}ต่อไปนี้:',
-'file-deleted-duplicate' => 'ไฟล์ที่เหมือไฟล์นี้ ([[:$1]]) เคยถูกลบไปก่อนหน้านี้แล้ว
+'file-deleted-duplicate' => 'à¹\84à¸\9fลà¹\8cà¸\97ีà¹\88à¹\80หมืà¸à¸\99à¹\84à¸\9fลà¹\8cà¸\99ีà¹\89 ([[:$1]]) à¹\80à¸\84ยà¸\96ูà¸\81ลà¸\9aà¹\84à¸\9bà¸\81à¹\88à¸à¸\99หà¸\99à¹\89าà¸\99ีà¹\89à¹\81ลà¹\89ว
คุณควรตรวจสอบว่าประวัติการลบของไฟล์ก่อนดำเนินการอัปโหลดใหม่',
'uploadwarning' => 'คำเตือนการอัปโหลด',
'uploadwarning-text' => 'กรุณาแก้ไขคำอธิบายไฟล์ด้านล่างนี้ แล้วลองใหม่อีกครั้ง',
'showhideselectedlogentries' => 'แสดง/ซ่อนหน่วยปูมที่เลือก',
# Special:AllPages
-'allpages' => 'à¸\97ุà¸\81หà¸\99à¹\89า',
+'allpages' => 'หà¸\99à¹\89าà¸\97ัà¹\89à¸\87หมà¸\94',
'alphaindexline' => '$1 ถึง $2',
'nextpage' => 'ถัดไป ($1)',
'prevpage' => 'ก่อนหน้า ($1)',
'watchnologin' => 'ไม่ได้ล็อกอิน',
'watchnologintext' => 'ต้อง[[Special:UserLogin|ล็อกอิน]]เพื่อแก้ไขรายการเฝ้าดูของคุณ',
'addwatch' => 'เพิ่มเข้ารายการเฝ้าดู',
-'addedwatchtext' => 'หà¸\99à¹\89า "[[:$1]]" à¹\84à¸\94à¹\89à¹\80à¸\9eิà¹\88มลà¸\87à¹\83à¸\99[[Special:Watchlist|รายà¸\81ารà¹\80à¸\9dà¹\89าà¸\94ู]]à¸\82à¸à¸\87à¸\84ุà¸\93à¹\81ลà¹\89ว à¸\81ารà¹\80à¸\9bลีà¹\88ยà¸\99à¹\81à¸\9bลà¸\87à¹\83à¸\99หà¸\99à¹\89าà¸\99ีà¹\89หรืà¸à¸«à¸\99à¹\89าà¸\9eูà¸\94à¸\84ุยà¸\97ีà¹\88à¹\80à¸\81ีà¹\88ยวà¸\82à¹\89à¸à¸\87à¸\88ะà¹\81สà¸\94à¸\87à¹\83à¸\99รายà¸\81ารà¸\94à¹\89าà¸\99ลà¹\88าà¸\87',
+'addedwatchtext' => 'หà¸\99à¹\89า "[[:$1]]" à¹\84à¸\94à¹\89à¹\80à¸\9eิà¹\88มลà¸\87à¹\83à¸\99[[Special:Watchlist|รายà¸\81ารà¹\80à¸\9dà¹\89าà¸\94ู]]à¸\82à¸à¸\87à¸\84ุà¸\93à¹\81ลà¹\89ว à¸\81ารà¹\80à¸\9bลีà¹\88ยà¸\99à¹\81à¸\9bลà¸\87à¹\83à¸\99หà¸\99à¹\89าà¸\99ีà¹\89หรืà¸à¸«à¸\99à¹\89าà¸\9eูà¸\94à¸\84ุยà¸\97ีà¹\88à¹\80à¸\81ีà¹\88ยวà¸\82à¹\89à¸à¸\87à¸\88ะà¹\81สà¸\94à¸\87à¹\83à¸\99รายà¸\81ารà¸\94ัà¸\87à¸\81ลà¹\88าว',
'removewatch' => 'นำออกจากรายการเฝ้าดู',
'removedwatchtext' => 'หน้า "[[:$1]]" ถูกนำออกจาก[[Special:Watchlist|รายการเฝ้าดูของคุณ]]',
'watch' => 'เฝ้าดู',
'notvisiblerev' => 'รุ่นล่าสุดโดยผู้ใช้อีกคนถูกลบแล้ว',
'watchnochange' => 'ไม่มีการแก้ไขหน้าที่คุณเฝ้าดูในระยะเวลาที่แสดง',
'watchlist-details' => 'มี $1 หน้าในรายการเฝ้าดูของคุณ ไม่รวมหน้าอภิปราย',
-'wlheader-enotif' => '* แจ้งเตือนผ่านอีเมลถูกเปิดใช้งาน',
-'wlheader-showupdated' => "* หน้าที่มีการเปลี่ยนแปลงตั้งแต่การเข้าชมครั้งล่าสุดของคุณแสดงใน'''ตัวหนา'''",
+'wlheader-enotif' => 'การแจ้งเตือนผ่านอีเมลถูกเปิดใช้งาน',
+'wlheader-showupdated' => "หน้าที่มีการเปลี่ยนแปลงตั้งแต่การเข้าชมครั้งล่าสุดของคุณแสดงใน'''ตัวหนา'''",
'watchmethod-recent' => 'ตรวจสอบการปรับปรุงล่าสุดกับหน้าเฝ้าดู',
'watchmethod-list' => 'ตรวจสอบหน้าเฝ้าดูกับการแก้ไขล่าสุด',
'watchlistcontains' => 'รายการเฝ้าดูของคุณมี $1 หน้า',
'mycontris' => 'เรื่องที่เขียน',
'contribsub2' => 'สำหรับ $1 ($2)',
'nocontribs' => 'ไม่พบการเปลี่ยนแปลงตรงกับเงื่อนไขเหล่านี้',
-'uctop' => '(ลà¹\88าสุà¸\94)',
+'uctop' => '(à¸\9bัà¸\88à¸\88ุà¸\9aัà¸\99)',
'month' => 'จากเดือน (และก่อนหน้า):',
'year' => 'จากปี (และก่อนหน้า):',
'change-blocklink' => 'เปลี่ยนการบล็อก',
'contribslink' => 'เรื่องที่เขียน',
'emaillink' => 'ส่งอีเมล',
-'autoblocker' => 'ถูกบล็อกอัตโนมัติเนื่องจากเลขที่อยู่ไอพีของคุณล่าสุดถูกใช้โดย "[[User:$1|$1]]" เหตุผลที่ให้แก่การบล็อก $1 คือ: "$2"',
+'autoblocker' => 'ได้บล็อกอัตโนมัติเนื่องจากเลขที่อยู่ไอพีของคุณใช้โดย "[[User:$1|$1]]" เมื่อเร็ว ๆ นี้
+เหตุผลที่ให้แก่การบล็อก $1 คือ: "$2"',
'blocklogpage' => 'ปูมการบล็อก',
'blocklog-showlog' => 'ผู้ใช้นี้ถูกสกัดกั้นมาก่อน
ปูมการสกัดกั้นแสดงไว้ด้านล่างนี้เพื่อการอ้างอิง:',
'allmessagesname' => 'ชื่อ',
'allmessagesdefault' => 'ข้อความตามค่าตั้งต้น',
'allmessagescurrent' => 'ข้อความปัจจุบัน',
-'allmessagestext' => 'รายà¸\81ารà¸\82à¹\89à¸à¸\84วามà¸\82à¸à¸\87ระà¸\9aà¸\9a อยู่ในเนมสเปซมีเดียวิกิ
-à¸\81รุà¸\93าà¹\84à¸\9bà¸\97ีà¹\88 [//www.mediawiki.org/wiki/Localisation มีà¹\80à¸\94ียวิà¸\81ิ] à¹\81ละ [//translatewiki.new translatewiki.net] à¸\96à¹\89าà¸\84ุà¸\93ยัà¸\87à¸à¸¢à¸²à¸\81à¸\97ีà¹\88à¸\88ะแปลข้อความของระบบมีเดียวิกิ',
+'allmessagestext' => 'à¸\99ีà¹\88à¸\84ืà¸à¸£à¸²à¸¢à¸\81ารà¸\82à¹\89à¸à¸\84วามà¸\82à¸à¸\87ระà¸\9aà¸\9aà¸\97ีà¹\88อยู่ในเนมสเปซมีเดียวิกิ
+à¸\81รุà¸\93าà¸à¹\88าà¸\99หà¸\99à¹\89า[//www.mediawiki.org/wiki/Localisation à¹\80à¸\97ศวิวัà¸\95à¸\99à¹\8cà¸\82à¸à¸\87มีà¹\80à¸\94ียวิà¸\81ิ] à¹\81ละ [//translatewiki.net translatewiki.net] à¸\96à¹\89าà¸\84ุà¸\93à¸à¸¢à¸²à¸\81à¸\97ีà¹\88à¸\88ะà¸\8aà¹\88วยแปลข้อความของระบบมีเดียวิกิ',
'allmessagesnotsupportedDB' => "หน้านี้ไม่สามารถใช้งานได้เนื่องจาก '''\$wgUseDatabaseMessages''' ถูกระงับการใช้งาน",
'allmessages-filter-legend' => 'กรอง',
'allmessages-filter' => 'กรองตามสถานะที่เลือก:',
'modern.css' => '/* สไตล์ชีตในหน้านี้จะส่งผลแก่ผู้ใช้ที่ใช้สกินโมเดิร์น */',
'vector.css' => '/* สไตล์ชีตในหน้านี้จะส่งผลแก่ผู้ใช้ที่ใช้สกินเวกเตอร์ */',
'print.css' => '/* สไตล์ชีตในหน้านี้จะส่งผลแก่ข้อมูลส่งออกเป็นสิ่งพิมพ์ */',
-'handheld.css' => '/* สไตล์ชีตในหน้านี้จะส่งผลแก่อุปกรณ์เคลื่อนที่ โดยขึ้นอยู่กับสกินที่ตั้งค่าไว้ใน $wgHandheldStyle */',
'noscript.css' => '/* สไตล์ชีตในหน้านี้จะส่งผลแก่ผู้ใช้ที่ปิดการใช้งานจาวาสคริปต์ */',
'group-autoconfirmed.css' => '/* สไตล์ชีตในหน้านี้จะส่งผลแก่ผู้ใช้ทั่วไปเท่านั้น */',
'group-bot.css' => '/* สไตล์ชีตในหน้านี้จะส่งผลแก่บอตเท่านั้น */',
'minutes' => '$1 นาที',
'hours' => '$1 ชั่วโมง',
'days' => '$1 วัน',
+'weeks' => '$1 สัปดาห์',
'months' => '$1 เดือน',
'years' => '$1 ปี',
'ago' => '$1 มาแล้ว',
'just-now' => 'เมื่อสักครู่นี้',
+# Human-readable timestamps
+'hours-ago' => '$1 ชั่วโมงที่แล้ว',
+'minutes-ago' => '$1 นาทีที่แล้ว',
+'seconds-ago' => '$1 วินาทีที่แล้ว',
+'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' => 'รูปแบบแสดงต่อไปนี้:
# Auto-summaries
'autosumm-blank' => 'ทำหน้าว่าง',
-'autosumm-replace' => "แทนทีข้อความทั้งหมดด้วย '$1'",
+'autosumm-replace' => "à¹\81à¸\97à¸\99à¸\97ีà¹\88à¸\82à¹\89à¸à¸\84วามà¸\97ัà¹\89à¸\87หมà¸\94à¸\94à¹\89วย '$1'",
'autoredircomment' => 'เปลี่ยนทางไปที่ [[$1]]',
'autosumm-new' => "หน้าที่ถูกสร้างด้วย '$1'",
'logentry-newusers-newusers' => 'บัญชีผู้ใช้ $1 ถูกสร้างขึ้น',
'logentry-newusers-create' => 'บัญชีผู้ใช้ $1 ถูกสร้างขึ้น',
'logentry-newusers-create2' => 'บัญชีผู้ใช้ $3 ถูกสร้างขึ้นโดย $1',
-'logentry-newusers-autocreate' => 'บัญชี $1 ถูกสร้างขึ้นอัตโนมัติ',
+'logentry-newusers-autocreate' => 'บัญชีผู้ใช้ $1 ถูกสร้างขึ้นอัตโนมัติ',
'rightsnone' => '(ไม่มี)',
# Feedback
'tog-shownumberswatching' => 'Gözegçilikde saklaýan ulanyjylaryň sanyny görkez',
'tog-oldsig' => 'Bar bolan gol:',
'tog-fancysig' => 'Gola wikitekst hökmünde çemeleş (awtomatik çykgytsyz)',
-'tog-externaleditor' => 'Gaýybana daşarky redaktor ulan (diňe hünärmenler üçin, kompýuteriňizde ýörite sazlamalar talap edilýär. [//www.mediawiki.org/wiki/Manual:External_editors Jikme-jik.])',
-'tog-externaldiff' => 'Başga programmalaryň üsti bilen deňeşdir (diňe hünärmenler üçin, kompýuteriňizde ýörite sazlamalar talap edilýär)',
'tog-showjumplinks' => '"Git" çykgydyny işlet',
'tog-uselivepreview' => 'Gönümel deslapky syny ulan (JavaScript) (Synag edilýär)',
'tog-forceeditsummary' => 'Gysgaça mazmuny boş galdyran mahalym maňa ýatlat',
'disclaimers' => 'Jogapkärçilikden boýun gaçyrma',
'disclaimerpage' => 'Project:Umumy jogapkärçilikden boýun gaçyrma',
'edithelp' => 'Nähili redaktirlenýär?',
-'edithelppage' => 'Help:Redaktirleme',
'helppage' => 'Help:Içindäkiler',
'mainpage' => 'Baş Sahypa',
'mainpage-description' => 'Baş Sahypa',
'ok' => 'OK',
'retrievedfrom' => '"$1" adresinden alyndy.',
'youhavenewmessages' => 'Size $1 bar. ($2)',
-'newmessageslink' => 'täze habarlaşyk',
+'newmessageslink' => 'täze habar',
'newmessagesdifflink' => 'soňky üýtgeşme',
-'youhavenewmessagesmulti' => 'Size $1-de täze habarlaşyk bar.',
+'youhavenewmessagesmulti' => 'Size $1-de täze habar bar.',
'editsection' => 'redaktirle',
'editold' => 'redaktirle',
'viewsourceold' => 'çeşmäni gör',
'searchmenu-legend' => 'Gözleg opsiýalary',
'searchmenu-exists' => "'''Bu wikide \"[[:\$1]]\" atly sahypa bar'''",
'searchmenu-new' => "'''Bu wikide \"[[:\$1]]\" sahypasyny döret!'''",
-'searchhelp-url' => 'Help:Içindäkiler',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Şu prefiksli sahypalara göz aýla]]',
'searchprofile-articles' => 'Mazmunly sahypalar',
'searchprofile-project' => 'Ýardam we Taslama sahypalary',
Ýogsa-da, oňa çenli Google bilen gözleg geçirip bilersiňiz.
Emma olaryň {{SITENAME}} indeksleriniň möwriti geçen bolmagy mümkindir.',
-# Quickbar
-'qbsettings' => 'Tiz panel',
-'qbsettings-none' => 'Hiç biri',
-'qbsettings-fixedleft' => 'Çepe berkidildi',
-'qbsettings-fixedright' => 'Saga berkidildi',
-'qbsettings-floatingleft' => 'Çepe ýaplanýar',
-'qbsettings-floatingright' => 'Saga ýaplanýar',
-
# Preferences page
'preferences' => 'Ileri tutmalar',
'mypreferences' => 'Ileri tutmalar',
'http-read-error' => 'HTTP okamak säwligi.',
'http-timed-out' => 'HTTP talabynyň wagty geçdi.',
'http-curl-error' => 'URL äkelmek säwligi: $1',
-'http-host-unreachable' => 'URL-ä baryp bolmaýar',
'http-bad-status' => 'HTTP talaby wagtynda problema döredi: $1 $2',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'notvisiblerev' => 'Başga bir ulanyja degişli iň soňky wersiýa öçürilipdir',
'watchnochange' => 'Gözegçilik edýän sahypalaryňyzyň hiç birisi görkezilen wagtyň dowamynda redaktirlenmändir.',
'watchlist-details' => 'Çekişme sahypalaryny hasap etmäniňde, gözegçilik sanawyňyzda {{PLURAL:$1|$1 sahypa|$1 sahypa}} bar.',
-'wlheader-enotif' => '* E-poçta bilen habar beriş açyk.',
-'wlheader-showupdated' => "* Soňky gezek baryp görenizden soňra üýtgedilen sahypalar '''goýy şrift''' bilen görkezilýär.",
+'wlheader-enotif' => 'E-poçta bilen habar beriş açyk.',
+'wlheader-showupdated' => "Soňky gezek baryp görenizden soňra üýtgedilen sahypalar '''goýy şrift''' bilen görkezilýär.",
'watchmethod-recent' => 'soňky özgerdişlerdäki gözegçilikde saklaýan sahypalaryňyz barlanylýar',
'watchmethod-list' => 'gözegçilikde saklaýan sahypalaryňyzdaky soňky özgerdişler barlanylýar',
'watchlistcontains' => 'Gözegçilik sanawyňyzda $1 sany {{PLURAL:$1|sahypa|sahypa}} bar.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'In',
'exif-imagelength' => 'Beýiklik',
'exif-bitspersample' => 'Komponent başyna bit',
'exif-languagecode' => 'Dil',
'exif-iimcategory' => 'Kategoriýa',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Gysylmadyk',
'exif-unknowndate' => 'Näbelli sene',
'version-software-product' => 'Önüm',
'version-software-version' => 'Wersiýa',
-# Special:FilePath
-'filepath' => 'Faýla barýan ýol',
-'filepath-page' => 'Faýl:',
-'filepath-submit' => 'Git',
-'filepath-summary' => 'Bu ýörite sahypa faýla barýan doly ýoly gaýtaryp getirýär.
-Suratlar doly ölçegde görkezilýär, beýleki faýl görnüşleri degişli programmalary bilen gönümel başladylýar.
-
-Faýlyň adyny "{{ns:file}}:" pristawkasyz giriziň.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Dublikat faýllaryň gözlegi',
'fileduplicatesearch-summary' => 'Heş kodlary boýunça meňzeş faýllary gözle.',
'oct' => 'Okt',
'nov' => 'Nob',
'dec' => 'Dis',
+'january-date' => '$1 Enero',
+'february-date' => '$1 Pebrero',
+'march-date' => '$1 Marso',
+'april-date' => '$1 Abril',
+'may-date' => '$1 Mayo',
+'june-date' => '$1 Hunyo',
+'july-date' => '$1 Hulyo',
+'august-date' => '$1 Agosto',
+'september-date' => '$1 Setyembre',
+'october-date' => '$1 Oktubre',
+'november-date' => '$1 Nobyembre',
+'december-date' => '$1 Disyembre',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategorya|Mga kategorya}}',
'vector-action-protect' => 'Ipagsanggalang',
'vector-action-undelete' => 'Alisin ang pagbubura',
'vector-action-unprotect' => 'Baguhin ang pagsasanggalang',
-'vector-simplesearch-preference' => 'Paganahin ang pinainam na mga mungkahi sa paghahanap (pabalat na Vector lang)',
+'vector-simplesearch-preference' => 'Paganahin ang pinainam na bar ng paghahanap (pabalat na Vector lang)',
'vector-view-create' => 'Likhain',
'vector-view-edit' => 'Baguhin',
'vector-view-history' => 'Tingnan ang kasaysayan',
'namespaces' => 'Mga ngalan-espasyo',
'variants' => 'Naiiba pa',
+'navigation-heading' => 'Menu ng paglilibot',
'errorpagetitle' => 'Pagkakamali',
'returnto' => 'Bumalik sa $1.',
'tagline' => 'Mula sa {{SITENAME}}',
'talkpagelinktext' => 'Usapan',
'specialpage' => 'Natatanging pahina',
'personaltools' => 'Mga kagamitang pansarili',
-'postcomment' => 'Bagong seksyon',
+'postcomment' => 'Bagong seksiyon',
'articlepage' => 'Tingnan ang pahina ng nilalaman',
'talk' => 'Usapan',
'views' => 'Mga anyo',
'disclaimers' => 'Mga pagtatanggi',
'disclaimerpage' => 'Project:Pangkalahatang pagtatanggi',
'edithelp' => 'Tulong sa pagbabago',
-'edithelppage' => 'Help:Pagbabago',
'helppage' => 'Help:Mga nilalaman',
'mainpage' => 'Unang Pahina',
'mainpage-description' => 'Unang Pahina',
# General errors
'error' => 'Kamalian',
-'databaseerror' => 'Kamalian sa kalipunan ng dato',
-'dberrortext' => 'Naganap ang isang pagkakamali sa pag-uusisa na pampalaugnayan sa kalipunan ng dato.
+'databaseerror' => 'Kamalian sa kalipunan ng datos',
+'dberrortext' => 'Naganap ang isang pagkakamali sa pag-uusisa na pampalaugnayan sa kalipunan ng datos.
Maaaring magpahiwatig ito ng isang surot sa loob ng sopwer.
-Ang huling tinangkang pag-uusisa sa kalipunan ng dato ay:
+Ang huling tinangkang pag-uusisa sa kalipunan ng datos ay:
<blockquote><code>$1</code></blockquote>
magmula sa loob ng tungkuling "<code>$2</code>".
Nagbalik ang kalipunan ng dato ng kamalian na "<samp>$3: $4</samp>".',
'viewyourtext' => "Matitingnan at makukopya mo ang pinagmulan ng '''mga pagbabago''' papunta sa pahinang ito:",
'protectedinterface' => "Nagbibigay ang pahinang ito ng tekstong panghangganan (''interface'') para sa sopwer, at ikinandado para maiwasan ang pangaabuso.",
'editinginterface' => "'''Babala:''' Binabago mo ang isang pahinang ginagamit sa pagbibigay ng tekstong panghangganan para sa sopwer.
-Makakaapekto ang mga pagbago sa pahinang ito sa anyo ng hangganang (''interface'') pangtagagamit na para sa ibang mga tagagamit.
-Para sa mga salinwika, paki isang-alang-alang o konsiderahin ang paggamit ng [//translatewiki.net/wiki/Main_Page?setlang=en translatewiki.net], ang proyektong panglokalisasyon ng MediaWiki.",
+Makaaapekto ang mga pagbago sa pahinang ito sa anyo ng hangganang (''interface'') pantagagamit na para sa ibang mga tagagamit sa wiking ito.
+Upang magdagag o magbago ng mga salinwika, isaaalang-alang na lang po ang paggamit ng [//translatewiki.net/wiki/Main_Page?setlang=en translatewiki.net], ang proyekto para sa lokalisasyon ng MediaWiki.",
'sqlhidden' => '(nakatago ang tanong ng SQL)',
'cascadeprotected' => 'Nakasanggalang ang pahinang ito mula sa mga pagbabago, dahil kabilang ito sa sumusunod na {{PLURAL:$1|pahinang|mga pahinang}} nakasanggalang sa pamamagitan ng binuhay na opsyong "nahuhulog" (kumakaskada):
$2',
'namespaceprotected' => "Wala kang pahintulot na magbago ng mga pahinang nasa ngalan-espasyong '''$1'''.",
'customcssprotected' => 'Wala kang pahintulot na baguhin ang pahina ng CSS na ito, dahil naglalaman ito ng mga katakdaang pansarili ng ibang tagagamit.',
'customjsprotected' => 'Wala kang pahintulot na baguhin ang pahina ng JavaScript na ito, dahil naglalaman ito ng mga katakdaang pansarili ng ibang tagagamit.',
+'mycustomcssprotected' => 'Wala kang pahintulot na baguhin itong pahinang CSS.',
+'mycustomjsprotected' => 'Wala kang pahintulot na baguhin itong pahinang JavaScript.',
'ns-specialprotected' => 'Hindi pwedeng baguhin ang mga natatanging pahina.',
'titleprotected' => "Nakasanggalang ang pamagat na ito mula sa paglikha ni [[User:$1|$1]].
Ang ibinigay na dahilan ay ''$2''.",
Huwag kalimutang baguhin ang iyong [[Special:Preferences|mga kagustuhan sa {{SITENAME}}]].',
'yourname' => 'Bansag:',
'yourpassword' => 'Hudyat:',
+'userlogin-yourpassword' => 'Hudyat',
+'userlogin-yourpassword-ph' => 'Ipasok ang iyong hudyat',
'yourpasswordagain' => 'Hudyat mo uli:',
+'createacct-yourpasswordagain' => 'Tiyakin ang hudyat',
'remembermypassword' => 'Tandaan ang paglagda ko sa kompyuter na ito (pinakamarami na ang $1 {{PLURAL:$1|araw|mga araw}})',
+'userlogin-remembermypassword' => 'Panatilihin akong nakalagda',
'securelogin-stick-https' => 'Manatiling konektado sa HTTPS matapos lumagda',
'yourdomainname' => 'Dominyo mo:',
'password-change-forbidden' => 'Hindi mo maaaring palitan ang mga hudyat sa wiking ito.',
'logout' => 'Umalis sa pagkakalagda',
'userlogout' => 'Umalis sa pagkakalagda',
'notloggedin' => 'Hindi nakalagda',
+'userlogin-noaccount' => 'Wala ka pa bang kuwenta?',
+'userlogin-joinproject' => 'Sumali sa {{SITENAME}}',
'nologin' => 'Wala ka pang kuwenta? $1.',
'nologinlink' => 'Lumikha ng kuwenta',
'createaccount' => 'Lumikha ng kuwenta',
'gotaccount' => 'May kuwenta ka na ba? $1.',
'gotaccountlink' => 'Lumagda',
'userlogin-resetlink' => 'Nakalimutan mo ang iyong mga detalyeng panglagda?',
-'createaccountmail' => 'sa pamamagitan ng e-liham',
+'createacct-emailrequired' => 'Direksiyong e-liham:',
+'createaccountmail' => 'Gumamit ng pansamantalang walang-piling hudyat at ipadala ito sa direksiyong e-liham na nakasaad sa ibaba',
+'createacct-realname' => 'Tunay na pangalan (maaaring wala)',
'createaccountreason' => 'Dahilan:',
+'createacct-reason' => 'Dahilan',
'badretype' => 'Hindi magkatugma ang ipinasok mong mga hudyat.',
'userexists' => 'May gumagamit na ng ipinasok na bansag.
Pumili po ng ibang pangalan.',
'cannotchangeemail' => 'Hindi maaaring baguhin ang mga direksiyong e-liham sa wiking ito.',
'emaildisabled' => 'Ang sityong ito ay hindi makapagpapadala ng mga e-liham.',
'accountcreated' => 'Nilikha na ang kuwenta',
-'accountcreatedtext' => 'Nilikha na ang kuwentang tagagamit para kay $1.',
+'accountcreatedtext' => 'Nilikha na ang kuwenta ng tagagamit para kay [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]]).',
'createaccount-title' => 'Paglikha ng kuwenta para sa {{SITENAME}}',
'createaccount-text' => 'May lumikha ng kuwenta para sa iyong adres ng e-liham sa {{SITENAME}} ($4) na pinangalanang "$2", na may hudyat na "$3".
Dapat kang tumala at baguhin ang hudyat mo ngayon.
# Special:PasswordReset
'passwordreset' => 'Muling pagtatakda ng hudyat',
-'passwordreset-text' => 'Punuin ang pormularyong ito upang makatanggap ng isang pampaalalang e-liham ng iyong mga detalye ng akawnt.',
'passwordreset-legend' => 'Itakdang muli ang hudyat',
'passwordreset-disabled' => 'Hindi pinagagana sa wiking ito ang muling mga pagtatakda ng hudyat.',
-'passwordreset-pretext' => '{{PLURAL:$1| | Ipasok ang isa sa mga piraso ng datos sa ibaba}}',
'passwordreset-username' => 'Pangalan ng tagagamit:',
'passwordreset-domain' => 'Nasasakupan:',
'passwordreset-capture' => 'Tingnan ang lumabas na e-liham?',
'''HUWAG MAGTALA NG AKDANG NAKAKARAPATANG-ARI (NAKAKOPIRAYT) NA HINDI MUNA HUMIHINGI NG PAHINTULOT!'''",
'longpageerror' => "'''Kamalian: May haba na {{PLURAL:$1|isang kilobyte|$1 mga kilobyte}} ang ipinasa mong teksto, na mas mahaba kaysa sa pinakamataas na nakatakdang halaga na {{PLURAL:$2|isang kilobyte|$2 mga kilobyte}}.'''
Hindi ito masasagip.",
-'readonlywarning' => "'''BABALA: Ikinandado ang kalipunan ng dato para sa gawaing pampagpapanatili, kaya't hindi mo pa masasagip ang mga pagbabagong ginawa mo ngayon.
-Maaaring ibigin mong gupitin at idikit ang teksto patungo sa isang talaksang pangteksto at sagipin ito mamaya.'''
+'readonlywarning' => "'''BABALA: Ikinandado ang kalipunan ng datos para sa gawaing pampagpapanatili, kaya't hindi mo pa masasagip ang mga pagbabagong ginawa mo ngayon.'''
+Maaaring ibigin mong gupitin at idikit ang teksto patungo sa isang talaksang panteksto at sagipin ito mamaya.
Nagbigay ng ganitong paliwanag ang tagapangasiwang nagkandado nito: $1",
'protectedpagewarning' => "'''Babala: Ikinandado ang pahinang ito upang mga tagagamit lamang na may karapatan ng tagapangasiwa ang makakapagbago nito.'''
'searchmenu-legend' => 'Mga pagpipilian para sa paghahanap',
'searchmenu-exists' => "'''Mayroong pahinang may pangalang \"[[:\$1]]\" dito sa wiking ito'''",
'searchmenu-new' => "'''Likhain ang pahinang \"[[:\$1]]\" sa wiking ito!'''",
-'searchhelp-url' => 'Help:Nilalaman',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Tingnan-tingnan ang mga pahinang may ganitong unahan/unlapi]]',
'searchprofile-articles' => 'Mga pahina ng nilalaman',
'searchprofile-project' => 'Mga pahina ng Tulong at Proyekto',
'search-interwiki-default' => '$1 mga resulta:',
'search-interwiki-more' => '(mas marami pa)',
'search-relatedarticle' => 'Kaugnay',
-'mwsuggest-disable' => 'Huwag paganahin ang mga mungkahi ng AJAX',
+'mwsuggest-disable' => 'Huwag paganahin ang mga mungkahi sa paghahanap',
'searcheverything-enable' => 'Maghanap sa lahat ng ngalan-espasyo:',
'searchrelated' => 'kaugnay',
'searchall' => 'lahat',
'prefs-textboxsize' => 'Sukat ng bintana ng pagbabago',
'youremail' => 'E-liham:',
'username' => '{{GENDER:$1|Bansag}}:',
-'uid' => 'ID ng tagagamit:',
-'prefs-memberingroups' => 'Kasapi ng {{PLURAL:$1|na pangkat|na mga pangkat}}:',
+'uid' => 'ID ng {{GENDER:$1|tagagamit}}:',
+'prefs-memberingroups' => '{{GENDER:$2|Kasapi}} ng {{PLURAL:$1|na pangkat|na mga pangkat}}:',
'prefs-memberingroups-type' => '$1',
'prefs-registration' => 'Oras ng pagtatala:',
'prefs-registration-date-time' => '$1',
'randompage-nopages' => 'Walang mga pahina sa sumusunod na {{PLURAL:$2|ngalan-espasyo|mga ngalan-espasyo}}: $1.',
# Random redirect
-'randomredirect' => 'Alinmang panuto',
-'randomredirect-nopages' => 'Walang mga panuto sa pangalan-espasyong "$1".',
+'randomredirect' => 'Pagkargang walang-pili',
+'randomredirect-nopages' => 'Walang mga pagkarga sa ngalan-espasyong "$1".',
# Statistics
'statistics' => 'Mga estadistika',
'statistics-header-pages' => 'Mga estadistika ng pahina',
-'statistics-header-edits' => 'Baguhin ang mga estadistika',
+'statistics-header-edits' => 'Mga estadistika sa mga pagbabago',
'statistics-header-views' => 'Tingnan ang mga estadistika',
'statistics-header-users' => 'Mga estadistika sa mga tagagamit',
'statistics-header-hooks' => 'Ibang mga estadistika',
'statistics-files' => 'Ikinargang mga talaksan',
'statistics-edits' => 'Naihanda na ang mga pagbabago ng pahina mula sa {{SITENAME}}',
'statistics-edits-average' => 'Karaniwang pagbabago sa bawat pahina',
-'statistics-views-total' => 'Kalahatang pagdayo',
+'statistics-views-total' => 'Kabuuan ng mga pagtanaw',
'statistics-views-total-desc' => 'Hindi kabilang ang mga pagtanaw sa mga pahinang hindi umiiral at mga pahinang natatangi',
'statistics-views-peredit' => 'Pagtingin sa bawat pagbabago',
'statistics-users' => 'Mga nakatalang [[Special:ListUsers|tagagamit]]',
'listusers-noresult' => 'Walang nahanap na tagagamit.',
'listusers-blocked' => '(hinarang)',
+# Special:ActiveUsers
+'activeusers' => 'Tala ng mga aktibong tagagamit',
+'activeusers-intro' => 'Isa itong talaan ng mga tagagamit na nagkaroon ng ilang uri ng galaw sa loob ng huling $1 {{PLURAL:$1|araw|mga araw}}.',
+'activeusers-count' => '$1 {{PLURAL:$1|pagbabago|mga pagbabago}} sa loob ng huling {{PLURAL:$3|araw|$3 mga araw}}',
+'activeusers-from' => 'Ipakita ang mga tagagamit simula sa:',
+'activeusers-hidebots' => 'Itago ang mga bots',
+'activeusers-hidesysops' => 'Itago ang mga tagapangasiwa',
+'activeusers-noresult' => 'Walang natagpuang mga tagagamit.',
+
# Special:ListGroupRights
'listgrouprights' => 'Mga uri ng tagagamit',
'listgrouprights-summary' => 'Ang sumusunod ay isang talaan ng mga pangkat ng tagagamit na binigyang kahulugang sa wiking ito, kasama ang kanilang mga kaugnay na mga karapatan.
'emailmessage' => 'Mensahe:',
'emailsend' => 'Ipadala',
'emailccme' => 'Padalhan ako ng sipi ng aking mensahe sa pamamagitan ng e-liham.',
-'emailccsubject' => 'Kopya ng iyong mensahe sa $1: $2',
+'emailccsubject' => 'Kopya ng iyong mensahe kay $1: $2',
'emailsent' => 'Naipadala na ang e-liham',
'emailsenttext' => 'Naipadala na ang mensahe ng iyong e-liham.',
'emailuserfooter' => 'Ipinadala ang e-liham na ito ni $1 para kay $2 sa pamamagitan ng tungkuling "Magpadala ng e-liham" na nasa {{SITENAME}}.',
'notvisiblerev' => 'Nabura na ang pagbabago',
'watchnochange' => 'Wala sa binabantayan mo ang binago sa oras na nakikita.',
'watchlist-details' => '{{PLURAL:$1|$1 pahinang|$1 mga pahinang}} nasa iyong talaan ng mga binabantayan, hindi binibilang ang mga pahina ng usapan.',
-'wlheader-enotif' => '* Umiiral ang pagpapahayag sa pamamagitan ng e-liham.',
-'wlheader-showupdated' => "* Ipinapakitang may '''makakapal na mga panitik''' ang nabagong/binagong mga pahina mula pa noong huli mong pagdalaw sa kanila",
+'wlheader-enotif' => 'Umiiral ang pagpapahayag sa pamamagitan ng e-liham.',
+'wlheader-showupdated' => "Ipinapakitang may '''makakapal na mga panitik''' ang nabagong/binagong mga pahina mula pa noong huli mong pagdalaw sa kanila",
'watchmethod-recent' => 'sinusuri ang kamakailan lamang na mga pagbabago para sa binabantayang mga pahina',
'watchmethod-list' => 'sinusuri ang binabantayang mga pahina para sa mga kamakailan lamang na mga pagbabago',
'watchlistcontains' => 'Naglalaman ng $1 {{PLURAL:$1|pahina|mga pahina}} ang iyong talaan ng mga binabantayan.',
'prot_1movedto2' => 'Inilipat ang [[$1]] patungo sa [[$2]]',
'protect-badnamespace-title' => 'Hindi mapupruteksiyunang puwang ng pangalan',
'protect-badnamespace-text' => 'Hindi mapupruteksiyunan ang mga pahinang nasa puwang na pampangalang ito.',
+'protect-norestrictiontypes-title' => 'Pahinang hindi maipasanggalang',
'protect-legend' => 'Tiyakin ang panananggalang',
'protectcomment' => 'Dahilan:',
'protectexpiry' => 'Magtatapos sa:',
'protect-cascadeon' => 'Kasalukuyang nakasanggalang na ang pahinang ito dahil kabilang/kasama ito sa sumusunod na {{PLURAL:$1|pahinang may|mga pahinang may}} buhay/umiiral na baita-baitang na mga panananggalang.
Maaari mong baguhin ang antas ng panananggalang ng pahina, ngunit hindi ito makakaapekto sa baita-baitang na panananggalang.',
'protect-default' => 'Pahintulutan ang lahat ng mga tagagamit',
-'protect-fallback' => 'Nangangailangan ng kapahintulutang "$1"',
+'protect-fallback' => 'Pahintulutan ang mga tagagamit lamang na may pahintulot na "$1"',
'protect-level-autoconfirmed' => 'Hadlangan ang bago at hindi nagpapatalang mga tagagamit',
'protect-level-sysop' => "Mga tagapangasiwa (''sysop'') lamang",
'protect-summary-cascade' => 'baita-baitang',
'mycontris' => 'Mga ambag',
'contribsub2' => 'Para kay $1 ($2)',
'nocontribs' => 'Walang pagbabagong nakita sa binigay na kondisyon.',
-'uctop' => ' (itaas)',
+'uctop' => '(kasalukuyan)',
'month' => 'Mula sa buwan (at nauna):',
'year' => 'Mula sa taon (at nauna):',
'modern.css' => "/* Ang CSS na iniligay dito ay makakaapekto sa tagagamit ng Makabagong (''Modern'') pabalat */",
'vector.css' => '/* Ang inilagay na CSS dito ay makakaapekto sa mga tagagamit ng pabalat na Vector */',
'print.css' => '/* Ang CSS na inilagay dito ay makakaapekto sa kalalabasan o resulta ng paglilimbag */',
-'handheld.css' => "/* Ang CSS na inilagay dito ay makakaapekto sa mga aparatong nahahawakan (''handheld device'') batay sa itinakdang pabalat sa ''\$wgHandheldStyle'' */",
'noscript.css' => '/* Ang inilagay na Cascading Style Sheets dito ay makakaapekto sa mga tagagamit na hindi nagpapagana ng JavaScript */',
'group-autoconfirmed.css' => '/* Ang inilagay na Mga Pilas ng Estilong Lumalagaslas (Cascading Style Sheets o CSS) dito ay makakaapekto lamang sa mga tagagamit na kusang natiyak */',
'group-bot.css' => '/* Ang inilagay na Mga Pilas ng Estilong Lumalagaslas (Cascading Style Sheets o CSS) dito ay makakaapekto lamang sa mga bot */',
'metadata-langitem' => "'''$2:''' $1",
'metadata-langitem-default' => '$1',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Lapad',
'exif-imagelength' => 'Taas',
'exif-bitspersample' => 'Mga bit (piraso) ng bawat komponente (bahagi)',
$8',
'exif-subjectnewscode-value' => '$2 ($1)',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Walang kompresyon',
'exif-compression-2' => 'CCITT Pangkat 3 1-kodigo sa haba ng pagtakbo ng Pangdimensiyong Huffman na May Bahagyang Pagbabago',
'exif-compression-3' => 'Kodigo ng Pangkat 3 ng CCITT',
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath Landas ng artikulo]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath Landas ng panitik]',
-# Special:FilePath
-'filepath' => 'Lokasyon ng talaksan (file path)',
-'filepath-page' => 'Talaksan:',
-'filepath-submit' => 'Gawin',
-'filepath-summary' => 'Ibinabalik ng natatanging pahinang ito ang buong landas para sa isang talaksan.
-Ipinapakita ang mga larawan sa buong kalinawan, tuwirang sinisimulan ang ibang uri ng mga talaksan sa pamamagitan ng kaugnay nilang mga programa.',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Maghanap ng kaparehong mga talaksan',
'fileduplicatesearch-summary' => "Maghanap ng mga kaparehong mga talaksan sa baba ng kanyang halaga ng ''hash''.",
'disclaimers' => 'Çe məsuliyyətiku imtino.',
'disclaimerpage' => 'Project:Дејни бә гиј ныгәтеј',
'edithelp' => 'Арајиш бо редактә кардеј',
-'edithelppage' => 'Help:Арајиш бо сәрост кардеј',
'helppage' => 'Help:Мындәриҹот',
'mainpage' => 'Əsosə səhifə',
'mainpage-description' => 'Әсосә сәһифә',
'searchmenu-legend' => 'Бо нәве кукон',
'searchmenu-exists' => "'''Бы вики-нәхшәдә һесте сәһифә «[[:$1]]»'''",
'searchmenu-new' => "'''Сәһифә офәјеј «[[:$1]]» бә ым вики-нахшәдә!'''",
-'searchhelp-url' => 'Help:Мындәриҹот',
'searchprofile-articles' => 'Әсосә сәһифон',
'searchprofile-project' => 'Че араијшон ијән нахшон сәһифон',
'searchprofile-images' => 'Мултимедијә',
'contributions-title' => 'Иштирокәкә гәнҹ $1',
'mycontris' => 'Гәнҹ',
'contribsub2' => 'Гәнҹ $1 ($2)',
-'uctop' => '(оÑ\85онÓ\99ни)',
+'uctop' => '(еÑ\81Ó\99Ñ\82нÓ\99)',
'month' => 'Че мангику (һәнијән рә):',
'year' => 'Че сорику (һәнијән рә):',
'listusersfrom' => 'ʻAsi mai kau ʻetita mei he:',
'listusers-submit' => 'ʻAsi mai',
-# E-mail user
+# Email user
'mailnologin' => 'ʻOku ʻikai ha tuʻasila ke tohila ki ai',
'emailuser' => 'Tohila ki he ʻetitá ni',
'emailpage' => 'Ko e ʻetita ʻene tohila',
'metadata-expand' => 'Fano kiʻi meʻa',
'metadata-collapse' => 'Holo kiʻi meʻa',
-# EXIF tags
+# Exif tags
'exif-xresolution' => 'Auiiki fakalava',
'exif-yresolution' => 'Auiiki tuʻutonu',
'exif-jpeginterchangeformatlength' => 'ʻŪ valu meʻaʻilo JPEG',
'watchlistall2' => 'kātoa',
'namespacesall' => 'vā kotoa',
-# E-mail address confirmation
+# Email address confirmation
'confirmemail' => 'Fakamoʻoniʻi ho tuʻasila tohila',
'confirmemail_noemail' => 'Naʻe ʻikai te ke fakamoʻoniʻi ʻa e tohila totonu ʻi he [[Special:Preferences|faʻiteliha ʻaʻau]].',
'confirmemail_text' => 'Kuo pau te ke fakamoʻoniʻi ho tuʻasila tohila ki muʻa ʻi hoʻo ngāueʻaki ʻa e ngaahi fōtunga tohila. Lomiʻi ʻa e meʻalolomi ʻi lalo pea ʻe ʻavea ha tohila fakamoʻoniʻi ki ho tuʻasila. ʻE ʻi ai ha fehokotaki mo ha lea fakapulipuli ʻi ai. Fafaʻo ʻa e fehokotakí ni ʻi hoʻo palausa ke fakamoʻoniʻi ʻoku sai ho tuʻasila tohila.',
# Special:Version
'version' => 'Paaki',
-# Special:FilePath
-'filepath' => 'Hala ki he faile',
-'filepath-page' => 'Faile:',
-'filepath-submit' => 'Ko e hala',
-
# Special:SpecialPages
'specialpages' => 'Ngaahi peesi makehe',
'tog-shownumberswatching' => 'Soim hamas yusa i lukautim pes',
'tog-oldsig' => 'Olsem wanem yu raitim nem nau',
'tog-fancysig' => 'Dispela rot yu raitim long nem stap wikitext (i no gat otomatik link)',
-'tog-externaleditor' => 'Yusim long ausait edita oltaim (tasol long man bilong save, i nidim sipesol setap antap long komputa bilong yu. [//www.mediawiki.org/wiki/Manual:External_editors Lukim moa infomesen.])',
-'tog-externaldiff' => 'Yusim long ausait diff oltaim (tasol long man bilong save, i nidim sipesol setap antap long komputa bilong yu. [//www.mediawiki.org/wiki/Manual:External_editors Lukim moa infomesen.])',
'tog-showjumplinks' => ' Setap ol "Go stret long" links bilong helpim',
'tog-uselivepreview' => 'Soim ol senis kwiktaim taim mi wokim (i nidim Javascript)',
'tog-forceeditsummary' => 'Tokim mi long wanem taim raitim mi nating long liklik toksave bilong senis',
'disclaimers' => 'Ol toksave bilong lo',
'disclaimerpage' => 'Project:Ol tok warn long lo',
'edithelp' => 'Halivim mi long pasin bilong wokim senis',
-'edithelppage' => 'Help:Senisim',
'mainpage' => 'Fran Pes',
'mainpage-description' => 'Fran Pes',
'portal' => 'Bung ples',
'powersearch-toggleall' => 'Olgeta',
'powersearch-togglenone' => 'I nogat wanpela',
-# Quickbar
-'qbsettings-none' => 'I nogat wanpela',
-
# Preferences page
'preferences' => 'Ol laik',
'mypreferences' => 'Ol laik bilong mi',
'listgrouprights-group' => 'Grup',
'listgrouprights-members' => '(lista bilong ol memba)',
-# E-mail user
+# Email user
'emailuser' => 'E-mel dispela yusa',
'emailpage' => 'E-mel yusa',
'defemailsubject' => '{{SITENAME}} e-mel',
'unwatch' => 'Pinis long lukautim',
'unwatchthispage' => 'Pinis long lukautim',
'watchlist-details' => '$1 pes istap long lukautbuk (dispela namba i no kaunim ol pes bilong toktok).',
-'wlheader-showupdated' => "* Ol pes i senis pinis bihain long taim yu lukim ol igat nem i '''strongpela'''",
+'wlheader-showupdated' => "Ol pes i senis pinis bihain long taim yu lukim ol igat nem i '''strongpela'''",
'wlshowlast' => 'Lukim dispela $1 aua $2 de $3',
'watchlist-options' => 'Ol laik bilong Lukautbuk',
# Metadata
'metadata' => 'Metadata',
-# EXIF tags
+# Exif tags
'exif-imagedescription' => 'Nem bilong piksa',
'exif-meteringmode-255' => 'Narapela',
'version-license' => 'Laisens',
'version-poweredby-others' => 'ol narapela',
-# Special:FilePath
-'filepath-page' => 'Fail:',
-'filepath-submit' => 'Go',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Nem bilong fail:',
'fileduplicatesearch-submit' => 'Painim',
* @author Bilalokms
* @author Bombola
* @author Cekli829
+ * @author Coolland
* @author Dbl2010
* @author Don Alessandro
* @author Emperyan
* @author Erdemaslancan
* @author Erkan Yilmaz
* @author Fryed-peach
+ * @author Geitost
* @author Goktr001
+ * @author Gorizon
* @author Hanberke
* @author Hcagri
* @author Hedda Gabler
* @author Mskyrider
* @author Myildirim2007
* @author Nazif İLBEK
+ * @author Nemo bis
* @author Reedy
* @author Runningfridgesrule
* @author Sadrettin
'oct' => 'Eki',
'nov' => 'Kas',
'dec' => 'Ara',
-
-'monday-at' => '$1 Pazartesi günü',
-'tuesday-at' => '$1 Salı günü',
-'wednesday-at' => '$1 Çarşamba günü',
-'thursday-at' => '$1 Perşembe günü',
-'friday-at' => '$1 Cuma günü',
-'saturday-at' => '$1 Cumartesi günü',
-'sunday-at' => '$1 Pazar günü',
-'today-at' => '$1',
-'yesterday-at' => '$1 dün itibariyle',
+'january-date' => '$1 Ocak',
+'february-date' => '$1 Şubat',
+'march-date' => '$1 Mart',
+'april-date' => '$1 Nisan',
+'may-date' => '$1 Mayıs',
+'june-date' => '$1 Haziran',
+'july-date' => '$1 Temmuz',
+'august-date' => '$1 Ağustos',
+'september-date' => '$1 Eylül',
+'october-date' => '$1 Ekim',
+'november-date' => '$1 Kasım',
+'december-date' => '$1 Aralık',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Kategori|Kategoriler}}',
'disclaimers' => 'Sorumluluk reddi',
'disclaimerpage' => 'Project:Genel sorumluluk reddi',
'edithelp' => 'Nasıl değiştirilir?',
-'edithelppage' => 'Help:Sayfa nasıl değiştirilir',
'helppage' => 'Help:İçindekiler',
'mainpage' => 'Ana Sayfa',
'mainpage-description' => 'Ana sayfa',
'youhavenewmessages' => 'Yeni $1 var ($2).',
'newmessageslink' => 'mesajınız',
'newmessagesdifflink' => 'son değişiklik',
-'youhavenewmessagesfromusers' => '{{PLURAL:$3|Başka bir kullanıcıdan|$3 kullanıcıdan}} $1 var. ($2)',
-'youhavenewmessagesmanyusers' => 'Birçok kullanıcıdan $1 var. ($2)',
+'youhavenewmessagesfromusers' => '{{PLURAL:$3|Başka bir kullanıcıdan|$3 kullanıcıdan}} $1 var ($2).',
+'youhavenewmessagesmanyusers' => 'Birçok kullanıcıdan $1 var ($2).',
'newmessageslinkplural' => '{{PLURAL:$1|yeni mesajınız|yeni mesajlarınız}}',
'newmessagesdifflinkplural' => 'son {{PLURAL:$1|değişiklik|değişiklikler}}',
'youhavenewmessagesmulti' => "$1'de yeni mesajınız var.",
'welcomecreation-msg' => 'Hesabınız açıldı.
[[Special:Preferences|{{SITENAME}} tercihlerinizi]] değiştirmeyi unutmayın.',
'yourname' => 'Kullanıcı adı:',
+'userlogin-yourname' => 'Kullanıcı adı',
+'userlogin-yourname-ph' => 'Kullanıcı adı girin',
'yourpassword' => 'Parola:',
+'userlogin-yourpassword' => 'Parola',
+'userlogin-yourpassword-ph' => 'Parolanızı girin',
+'createacct-yourpassword-ph' => 'Bir parola girin',
'yourpasswordagain' => 'Parolayı yeniden girin:',
+'createacct-yourpasswordagain' => 'Parolayı onayla',
+'createacct-yourpasswordagain-ph' => 'Parolayı yeniden girin',
'remembermypassword' => 'Girişimi bu tarayıcıda hatırla (en fazla $1 {{PLURAL:$1|gün|gün}} için)',
+'userlogin-remembermypassword' => 'Oturumumu sürekli açık tut',
+'userlogin-signwithsecure' => 'Güvenli bağlantı kullanın',
'securelogin-stick-https' => "Giriş yaptıktan sonra HTTPS'e bağlı kal",
'yourdomainname' => 'Alan adınız:',
'password-change-forbidden' => 'Bu vikide parolanızı değiştiremezsiniz.',
'logout' => 'Oturumu kapat',
'userlogout' => 'Oturumu kapat',
'notloggedin' => 'Oturum açık değil',
+'userlogin-noaccount' => 'Bir hesabınız yok mu?',
+'userlogin-joinproject' => '{{SITENAME}} sitesine katılın',
'nologin' => 'Bir hesabınız yok mu? $1.',
'nologinlink' => 'Hesap oluşturun',
'createaccount' => 'Hesap oluştur',
'gotaccount' => 'Zaten bir hesabınız var mı? $1.',
'gotaccountlink' => 'Oturum açın',
'userlogin-resetlink' => 'Giriş bilgilerinizi mi unuttunuz?',
+'userlogin-resetpassword-link' => 'Parolanızı sıfırlayın',
+'helplogin-url' => 'Help:Oturum açma',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Oturum açma konusunda yardım alın]]',
+'createacct-join' => 'Aşağıya bilgilerinizi girin.',
+'createacct-emailrequired' => 'E-posta adresi',
+'createacct-emailoptional' => 'E-posta adresi (isteğe bağlı)',
+'createacct-email-ph' => 'E-posta adresinizi girin',
'createaccountmail' => 'Geçici bir rastgele şifre kullan ve şifreyi aşağıda belirtilen e-posta adresine gönder',
+'createacct-realname' => 'Gerçek adı (isteğe bağlı)',
'createaccountreason' => 'Sebep:',
+'createacct-reason' => 'Gerekçe',
+'createacct-reason-ph' => 'Neden başka bir hesap oluşturuyorsunuz',
+'createacct-captcha' => 'Güvenlik kontrolü',
+'createacct-imgcaptcha-ph' => 'Yukarıda gördüğünüz metni girin',
+'createacct-submit' => 'Hesabınızı oluşturun',
+'createacct-benefit-heading' => '{{SITENAME}} sizin gibi insanlar tarafından oluşturulur.',
+'createacct-benefit-body1' => '{{PLURAL:$1|düzenleme|düzenleme}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|sayfa|sayfa}}',
+'createacct-benefit-body3' => 'en son {{PLURAL:$1|katkıda bulunan|katkıda bulunan}}',
'badretype' => 'Girdiğiniz şifreler birbirleriyle uyuşmuyor.',
'userexists' => 'Girdiğiniz kullanıcı adı zaten kullanımda.
Lütfen farklı bir kullanıcı adı seçiniz.',
'loginerror' => 'Oturum açma hatası.',
+'createacct-error' => 'Hesap oluşturma hatası',
'createaccounterror' => 'Hesap oluşturulamıyor: $1',
'nocookiesnew' => 'Kullanıcı hesabı oluşturuldu ama oturum açamadınız.
Oturum açmak için {{SITENAME}} çerezleri kullanır.
'blocked-mailpassword' => 'Siteye erişiminiz engellenmiş olduğundan, yeni şifre gönderilme işlemi yapılamamaktadır.',
'eauthentsent' => 'Kaydedilen adrese onay kodu içeren bir e-posta gönderildi.
E-postadaki yönerge uygulanıp adresin size ait olduğu onaylanmadıkça başka e-posta gönderilmeyecek.',
-'throttled-mailpassword' => 'Parola hatırlatıcı son {{PLURAL:$1|bir saat|$1 saat}} içinde zaten gönderildi.
-Hizmeti kötüye kullanmayı önlemek için, her {{PLURAL:$1|bir saatte|$1 saatte}} sadece bir parola hatırlatıcısı gönderilecektir.',
+'throttled-mailpassword' => 'Bir parola sıfırlama e-postası son {{PLURAL:$1|bir saat|$1 saat}} içinde zaten gönderildi. Hizmeti kötüye kullanmayı önlemek için, her {{PLURAL:$1|bir saatte|$1 saatte}} sadece bir parola sıfırlama e-postası gönderilecektir.',
'mailerror' => 'E-posta gönderim hatası: $1',
'acct_creation_throttle_hit' => 'Sizin IP adresinizi kullanarak bu vikiyi ziyaret edenler son günde {{PLURAL:$1|1 hesap|$1 hesap}} oluşturdu, bu sayı bu zaman aralığında izin verilen azami sayıdır.
Sonuç olarak, bu IP adresini kullanan ziyaretçiler şu anda daha fazla hesap açamazlar.',
# Special:PasswordReset
'passwordreset' => 'Parola sıfırlama',
-'passwordreset-text' => 'Hesap bilgilerinizin e-posta ile hatırlatılması için bu formu doldurunuz.',
+'passwordreset-text-one' => 'Parolanızı sıfırlamak için bu formu doldurun.',
'passwordreset-legend' => 'Şifreyi sıfırla',
'passwordreset-disabled' => 'Parola sıfırlamaları bu wiki üzerinde devre dışı bırakıldı.',
-'passwordreset-pretext' => '{{PLURAL:$1||Aşağıdaki verilerden birini girin}}',
'passwordreset-username' => 'Kullanıcı adı:',
'passwordreset-domain' => 'Domain:',
'passwordreset-capture' => 'Sonuç e-postasını görüntüle?',
Bu geçici parola ile giriş yapın ve yeni bir şifre seçin. Bu talep bir başkasına aitse veya şifrenizi hatırladıysanız ve artık şifrenizi değiştirmek istemiyorsanız; bu iletiyi önemsemeyerek eski şifrenizi kullanmaya devam edebilirsiniz.',
'passwordreset-emailelement' => 'Kullanıcı adı: $1
Geçici şifre: $2',
-'passwordreset-emailsent' => 'Hatırlatma e-postası gönderildi.',
-'passwordreset-emailsent-capture' => 'Aşağıda gözüktüğü gibi bir hatırlatma e-postası gönderilmiştir.',
-'passwordreset-emailerror-capture' => 'Aşağıda gözüktüğü gibi bir hatırlatma e-postası oluşturulmuştur ancak $1 adlı kullanıcıya gönderilememiştir.',
+'passwordreset-emailsent' => 'Parola sıfırlama e-postası gönderildi.',
+'passwordreset-emailsent-capture' => 'Aşağıda gözüktüğü gibi bir parola sıfırlama e-postası gönderildi.',
+'passwordreset-emailerror-capture' => 'Aşağıda gözüktüğü gibi bir parola sıfırlama e-postası oluşturuldu ancak {{GENDER:$2|kullanıcıya}} gönderme işlemi başarısız oldu: $1',
# Special:ChangeEmail
'changeemail' => 'E-posta adresini değiştir',
'''Henüz kaydedilmedi!'''",
'sitejspreview' => "'''Sadece kullanıcı JavaScript kod dosyanızın önizlemesini görüyorsunuz.'''
'''Henüz kaydedilmedi!'''",
-'userinvalidcssjstitle' => "''Uyarı:''' \"\$1\" adıyla bir tema yoktur. tema-adı.css ve .js dosyalarının adları küçük harf ile yazması gerek, yani {{ns:user}}:Temel/'''V'''ector.css değil, {{ns:user}}:Temel/'''v'''ector.css.",
+'userinvalidcssjstitle' => '\'\'\'Uyarı:\'\'\' "$1" adında bir tema yoktur. Özel .css ve .js sayfalarının adlarını küçük harf ile yazın, örneğin; "{{ns:user}}:Örnek/Vector.css" yerine "{{ns:user}}:Örnek/vector.css" yazın.',
'updated' => '(Güncellendi)',
'note' => "'''Not: '''",
'previewnote' => "'''Bunun yalnızca bir ön izleme olduğunu unutmayın.'''
'storedversion' => 'Kaydedilmiş metin',
'nonunicodebrowser' => "'''UYARI: Tarayıcınız unicode uyumlu değil.
Sayfaları güvenle değiştirmenize izin vermek için: ASCII olmayan karakterler değiştirme kutusunda onaltılık kodlar olarak görünecektir.'''",
-'editingold' => "'''DİKKAT: Sayfanın eski bir sürümünde değişiklik yapmaktasınız.
-Kaydettiğinizde bu tarihli sürümden günümüze kadar olan değişiklikler yok olacaktır.'''",
+'editingold' => "'''Uyarı: Sayfanın eski bir sürümünde değişiklik yapmaktasınız.'''
+Kaydettiğinizde bu tarihli sürümden günümüze kadar olan değişiklikler yok olacaktır.",
'yourdiff' => 'Karşılaştırma',
'copyrightwarning' => "'''Lütfen dikkat:''' {{SITENAME}} sitesine yapılan bütün katkılar $2 sözleşmesi kapsamındadır (ayrıntılar için $1'a bakınız).
Yaptığınız katkının başka katılımcılar tarafından acımasızca değiştirilmesini ve sınırsızca başka yerlere dağıtılmasını istemiyorsanız, katkıda bulunmayınız.<br />
Silinmiş görünüyor.',
'edit-conflict' => 'Değişiklik çakışması.',
'edit-no-change' => 'Değişikliğiniz yoksayıldı, çünkü metinde bir değişiklik yapılmadı.',
+'postedit-confirmation' => 'Değişikliğiniz kaydedildi.',
'edit-already-exists' => 'Yeni sayfa oluşturulamıyor.
Sayfa zaten mevcut.',
'defaultmessagetext' => 'Varsayılan mesaj metni',
'searchmenu-legend' => 'Arama seçenekleri',
'searchmenu-exists' => "'''Bu vikide \"[[:\$1]]\" adında bir sayfa mevcut'''",
'searchmenu-new' => "'''Bu vikide \"[[:\$1]]\" sayfasını oluştur!'''",
-'searchhelp-url' => 'Help:İçindekiler',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Bu ön ekle sayfalara göz at]]',
'searchprofile-articles' => 'İçerik sayfaları',
'searchprofile-project' => 'Yardım ve proje sayfaları',
'upload-proto-error-text' => "Uzaktan yükleme, <code>http://</code> veya <code>ftp://</code> ile başlayan URL'ler gerektirmektedir.",
'upload-file-error' => 'Dahili hata',
'upload-file-error-text' => 'Sunucuda geçici dosya oluşturma girişimi sırasında bir iç hata meydana geldi.
-Lütfen bir [[Special:ListUsers/sysop|yonetici]]yle iletişime geçin.',
+Lütfen bir [[Special:ListUsers/sysop|hizmetli]]ler iletişime geçin.',
'upload-misc-error' => 'Bilinmeyen yükleme hatası',
'upload-misc-error-text' => 'Yükleme sırasında bilinmeyen bir hata meydana geldi.
Lütfen bağlantının geçerli ve ulaşılabilir olduğunu doğrulayın ve yeniden deneyin.
'listusers-noresult' => 'Kullanıcı bulunamadı.',
'listusers-blocked' => '(engellenmiş)',
+# Special:ActiveUsers
+'activeusers' => 'Aktif kullanıcı listesi',
+'activeusers-intro' => 'Bu, son $1 {{PLURAL:$1|günde|günde}} bir çeşit etkinlik göstermiş kullanıcıların listesidir.',
+'activeusers-count' => 'Son {{PLURAL:$3|günde|$3 günde}} $1 {{PLURAL:$1|eylem|eylem}}',
+'activeusers-from' => 'Şununla başlayan kullanıcıları görüntüle:',
+'activeusers-hidebots' => 'Botları gizle',
+'activeusers-hidesysops' => 'Yöneticileri gizle',
+'activeusers-noresult' => 'Kullanıcı bulunamadı.',
+
# Special:ListGroupRights
'listgrouprights' => 'Kullanıcı grubu hakları',
'listgrouprights-summary' => 'Aşağıdaki bu vikide tanımlanan kullanıcı gruplarının, ilgili erişim haklarıyla birlikte listesidir.
'notvisiblerev' => 'Revizyon silinmiş',
'watchnochange' => 'İzleme listenizdeki sayfaların hiçbiri, gösterilen zaman aralığında güncellenmemiş.',
'watchlist-details' => 'Tartışma sayfaları hariç {{PLURAL:$1|$1 sayfa|$1 sayfa}} izleme listenizdedir.',
-'wlheader-enotif' => '* E-posta ile haber verme açılmıştır.',
-'wlheader-showupdated' => "* Son ziyaretinizden sonraki sayfa değişiklikleri '''kalın yazıyla''' gösterilmiştir.",
+'wlheader-enotif' => 'E-posta bildirimi etkin.',
+'wlheader-showupdated' => "Son ziyaretinizden sonraki sayfa değişiklikleri '''kalın yazıyla''' gösterilmiştir.",
'watchmethod-recent' => 'izlediğiniz sayfalarda yapılan son değişiklikler kontrol ediliyor',
'watchmethod-list' => 'izlediğiniz sayfalarda yapılan son değişiklikler kontrol ediliyor',
'watchlistcontains' => 'İzleme listenizde $1 tane {{PLURAL:$1|sayfa|sayfa}} var.',
'minutes' => '{{PLURAL:$1|$1 dakika|$1 dakika}}',
'hours' => '{{PLURAL:$1|$1 saat|$1 saat}}',
'days' => '{{PLURAL:$1|$1 gün|$1 gün}}',
+'weeks' => '{{PLURAL: $1|$1 hafta|$1 hafta}}',
'months' => '{{PLURAL:$1|$1 ay|$1 ay}}',
'years' => '{{PLURAL:$1|$1 yıl|$1 yıl}}',
'ago' => '$1 önce',
'just-now' => 'Hemen şimdi',
+# Human-readable timestamps
+'hours-ago' => '$1 {{PLURAL:$1|saat|saat}} önce',
+'minutes-ago' => '$1 {{PLURAL:$1|dakika|dakika}} önce',
+'seconds-ago' => '$1 {{PLURAL:$1|saniye|saniye}} önce',
+'monday-at' => '$1 Pazartesi günü',
+'tuesday-at' => '$1 Salı günü',
+'wednesday-at' => '$1 Çarşamba günü',
+'thursday-at' => '$1 Perşembe günü',
+'friday-at' => '$1 Cuma günü',
+'saturday-at' => '$1 Cumartesi günü',
+'sunday-at' => '$1 Pazar günü',
+'yesterday-at' => '$1 dün itibariyle',
+
# Bad image list
'bad_image_list' => 'Biçim aşağıdaki gibidir:
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Genişlik',
'exif-imagelength' => 'Yükseklik',
'exif-bitspersample' => 'Bits per component',
'exif-originalimageheight' => 'Resmin kırpılmadan önceki yükseliği',
'exif-originalimagewidth' => 'Resmin kırpılmadan önceki genişliği',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Sıkıştırılmamış',
'exif-compression-6' => 'JPEG',
'version-entrypoints-header-entrypoint' => 'Giriş noktası',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Dosyanın konumu',
-'filepath-page' => 'Dosya adı:',
-'filepath-submit' => 'Git',
-'filepath-summary' => 'Bu özel sayfa bir dosya için tam yolu getirir.
-Resimler tam çözünürlükte görüntülenir, diğer dosya tipleri ilgili programlarıyla doğrudan başlatılır.',
+# Special:Redirect
+'redirect-submit' => 'Git',
+'redirect-value' => 'Değer:',
+'redirect-user' => 'Kullanıcı kimliği',
+'redirect-file' => 'Dosya adı',
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Benzer dosyaları ara',
'htmlform-submit' => 'Gönder',
'htmlform-reset' => 'Değişiklikleri geri al',
'htmlform-selectorother-other' => 'Diğer',
+'htmlform-no' => 'Hayır',
+'htmlform-yes' => 'Evet',
# SQLite database support
'sqlite-has-fts' => '$1 tam-metin arama desteği ile',
'logentry-move-move-noredirect' => '$1 $3 sayfasını $4 sayfasına yönlendirme olmaksızın taşıdı',
'logentry-move-move_redir' => '$1 $3 sayfasını $4 sayfasına yönlendirme üzerinden taşıdı',
'logentry-patrol-patrol-auto' => '$1 $3 sayfasını $4 sürümü ile kontrol etti',
-'logentry-newusers-newusers' => 'Kullanıcı hesabı $1 oluşturdu',
-'logentry-newusers-create' => 'Kullanıcı hesabı $1 oluşturdu',
-'logentry-newusers-create2' => '$1 kullanıcı hesabı oluşturdu $3',
-'logentry-newusers-autocreate' => '$1 hesabı otomatik olarak oluşturuldu',
+'logentry-newusers-newusers' => 'Kullanıcı hesabı $1 {{GENDER:$2|oluşturuldu}}',
+'logentry-newusers-create' => 'Kullanıcı hesabı $1 {{GENDER:$2|oluşturuldu}}',
+'logentry-newusers-create2' => '$3 kullanıcı hesabı $1 tarafından {{GENDER:$2|oluşturuldu}}',
+'logentry-newusers-autocreate' => '$1 kullanıcı hesabı otomatik olarak {{GENDER:$2|oluşturuldu}}',
'rightsnone' => '(hiçbiri)',
# Feedback
'duration-centuries' => '$1 {{PLURAL:$1|yüzyıl|yüzyıl}}',
'duration-millennia' => '$1 {{PLURAL:$1|bin yıl|bin yıl}}',
-# Unknown messages
-'hours-ago' => '$1 {{PLURAL:$1|saat|saat}} önce',
-'minutes-ago' => '$1 {{PLURAL:$1|dakika|dakika}} önce',
-'seconds-ago' => '$1 {{PLURAL:$1|saniye|saniye}} önce',
);
'disclaimers' => 'Disclaimers',
'disclaimerpage' => 'Project: Disclaimer gawonoyo',
'edithelp' => 'Editing help',
-'edithelppage' => 'Help:Mşaḥlaf',
'helppage' => 'Help: Ḥbişoṭo',
'mainpage' => 'Faṭo rişoyto',
'mainpage-description' => 'Faṭo rişoyto',
'searchmenu-legend' => '3ayar duKruxyo',
'searchmenu-exists' => "'''Kito Faṭo herke Işma \"[[:\$1]]\"yo'''",
'searchmenu-new' => 'Kṭaw iFaṭaṭe "[[:$1]]" buWiki.',
-'searchhelp-url' => 'Help: Ḥbişoṭo',
'searchprofile-articles' => 'Faṭoṭe daḤbişoṭo',
'searchprofile-project' => 'Faṭoṭe du3udrono u daProjat',
'searchprofile-images' => 'Multimediya',
'prefs-help-email-others' => 'Kibux mijğolat 3am Hadome ğer biFaṭo duMamlo u luglozam dumat Işmux.',
'prefs-signature' => 'Imḍa',
-# User preference: e-mail validation using jQuery
+# User preference: email validation using jQuery
'email-address-validity-valid' => 'uEmail-Adresayḍux m³adlo yo.',
# Groups
'listgrouprights-helppage' => 'Help: Ḥaqat diGudo',
'listgrouprights-members' => '(Lista daHadome)',
-# E-mail user
+# Email user
'emailuser' => 'Kṭaw Email luHadomano.',
'emailusername' => 'Işme duHadomo:',
'emailfrom' => 'Men:',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-writer' => 'Kaṭowo',
'exif-languagecode' => 'Leşono',
'exif-cameraownername' => 'uMoro diQamera',
# Core parser functions
'duplicate-defaultsort' => '\'\'\'Warning:\'\'\' Default sort key "$2" overrides earlier default sort key "$1".',
-# Special:FilePath
-'filepath-submit' => 'Zux',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Krax',
'tog-enotifminoredits' => 'ndzurhumele e-mail loko ku endleka mindzulamiso leyi ntsongo',
'tog-enotifrevealaddr' => 'Paluxa e-mail yamina eka mapapila lawa ndzimarhumelaka',
'tog-shownumberswatching' => 'Komba ntsengo wa vatirhisi lava hlaleleke tluka',
-'tog-externaleditor' => 'Tirhisa xilulamisi xalehandle hikukongoma (Nhlawulo lowu i wavatirhisi lavangani ntokoto ntsena, wu lava ku cinca kokarhi eka khompuyuta yawena. [//www.mediawiki.org/wiki/Manual:External_editors vuxokoxoko hi mhakaleyi.])',
-'tog-externaldiff' => 'Tirhisa phurogiremi yalehandle hikukongoma (Nhlawulo lowu i wavatirhisi lavangani ntokoto ntsena, wu lava ku cinca kokarhi eka khompuyuta yawena. [//www.mediawiki.org/wiki/Manual:External_editors vuxokoxoko hi mhakaleyi.])',
'tog-forceeditsummary' => 'Ndzivutisisi loko ndzinga hoxi nkomiso wa ndzulamiso lowu ndzi wu endleke',
'tog-watchlisthideown' => 'Tumbeta mindzulamiso ya mina eka leswi ndzi swi languteke',
'tog-watchlisthidebots' => 'Tumbeta mindzulamiso ya rhobhoti eka leswi ndzi swi languteke',
'disclaimers' => 'Swi alanandzu',
'disclaimerpage' => 'Project:Swithsuxa nadzu hikuangara',
'edithelp' => 'Mpfuno hi ta mindzulamiso',
-'edithelppage' => 'Help:Mindzulamiso',
'helppage' => 'Help:Leswinga ndzeni',
'mainpage' => 'Tlukankulu',
'mainpage-description' => 'Tluka-Nkulu',
'viewprevnext' => 'Vona ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-exists' => "'''Tluka leri vuriwaka \"[[:\$1]]\" ikhale ririkona eka wiki leyi.'''",
'searchmenu-new' => "'''Tumbuluxa tluka ra \"[[:\$1]]\" eka wiki leyi!'''",
-'searchhelp-url' => 'Help:Leswinga ndzeni',
'searchprofile-articles' => 'Matluka lama tsariweke',
'searchprofile-project' => 'Mpfuno na matluka ya phurojeki',
'searchprofile-images' => 'Tifayili ta mfpumawulo na swifaniso',
# Special:ListGroupRights
'listgrouprights-members' => '(nxaxamelo wa valandzeri)',
-# E-mail user
+# Email user
'emailuser' => 'rhumela mutirhisi loyi E-mail',
# Watchlist
'disclaimers' => 'Җаваплылыктан баш тарту',
'disclaimerpage' => 'Project:Җаваплылыктан баш тарту',
'edithelp' => 'Үзгәртү буенча ярдәм',
-'edithelppage' => 'Help:Үзгәртү',
'helppage' => 'Help:Эчтәлек',
'mainpage' => 'Баш бит',
'mainpage-description' => 'Баш бит',
# Special:PasswordReset
'passwordreset' => 'Серсүзне бетерү',
-'passwordreset-text' => 'Сезнең хисап язмасының параметрлары турында хат алыр өчен, түбәндәгеләрне тутырыгыз',
'passwordreset-legend' => 'Серсүзне яңадан кую',
'passwordreset-disabled' => 'Бу викида серсүз бетереп булмый',
-'passwordreset-pretext' => '{{PLURAL:$1||Түбәндә күрсәтелгән мәгълүматларның бер өлешен языгыз}}',
'passwordreset-username' => 'Кулланучы исеме:',
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Килеп чыккан хатны күрсәтелсенме?',
'searchmenu-legend' => 'Эзләү көйләнмәләре',
'searchmenu-exists' => "'''Бу вики-проекта «[[:$1]]» исемле бит бар инде'''",
'searchmenu-new' => "'''«[[:$1]]» исемле яңа бит ясау'''",
-'searchhelp-url' => 'Help:Эчтәлек',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Бу префикслы битләрне күрсәтү]]',
'searchprofile-articles' => 'Төп битләр',
'searchprofile-project' => 'Ярдәм һәм проектлар бите',
'listusers-noresult' => 'Кулланучыларны табылмады.',
'listusers-blocked' => '(тыелган)',
+# Special:ActiveUsers
+'activeusers' => 'Актив кулланучылар исемлеге',
+'activeusers-hidebots' => 'Ботларны яшер',
+'activeusers-hidesysops' => 'Идарәчеләрне яшер',
+'activeusers-noresult' => 'Кулланучылар табылмады.',
+
# Special:ListGroupRights
'listgrouprights' => 'Кулланучы төркемнәренең хокуклары',
'listgrouprights-group' => 'Төркем',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Киңлек',
'exif-imagelength' => 'Биеклек',
'exif-imagedescription' => 'Рәсемнең исеме',
'version-software-product' => 'Продукт',
'version-software-version' => 'Версия',
-# Special:FilePath
-'filepath' => 'Файлга юл',
-'filepath-page' => 'Файл:',
-'filepath-submit' => 'Күчү',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Бер үк файлларны эзләү',
'fileduplicatesearch-submit' => 'Эзләү',
'tog-shownumberswatching' => 'Bitne küzätü isemleklärenä östägän qullanuçılar sanın kürsätelsen',
'tog-oldsig' => 'Xäzerge imzanı aldan qaraw:',
'tog-fancysig' => 'İmzanıñ şäxsi wiki-bilgelämäse (avtomatik sıltamasız)',
-'tog-externaleditor' => 'Tışqı redaqtor qullanu (kompyuter maxsus köylängän bulu zarur)',
-'tog-externaldiff' => 'Tışqı versiä çağıştıru programmasın qullanu (kompyuter maxsus köylängän bulu zarur)',
'tog-showjumplinks' => '«Küçü» yärdämçe sıltamaları yalğansın',
'tog-uselivepreview' => 'Tiz qarap alu qullanılsın (JavaScript, eksperimental)',
'tog-forceeditsummary' => 'Üzgärtülärne taswirlaw yulı tutırılmağan bulsa, kisätü',
'disclaimers' => 'Cawaplılıqtan baş tartu',
'disclaimerpage' => 'Project:Cawaplılıqtan baş tartu',
'edithelp' => 'Üzgärtü buyınça yärdäm',
-'edithelppage' => 'Help:Üzgärtü',
'helppage' => 'Help:Eçtälek',
'mainpage' => 'Baş bit',
'mainpage-description' => 'Baş bit',
'viewprevnext' => 'Kürsätelüe: ($1 {{int:pipe-separator}} $2) ($3)',
'searchmenu-legend' => 'Ezläw köylänmäläre',
'searchmenu-new' => "'''«[[:$1]]» isemle yaña bit yasaw'''",
-'searchhelp-url' => 'Help:Eçtälek',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Bu prefikslı bitlärne kürsätü]]',
'searchprofile-articles' => 'Töp bitlär',
'searchprofile-project' => 'Yärdäm häm proyektlar bite',
'powersearch-togglenone' => 'Birni dä yuq',
'search-external' => 'Tışqı ezläw',
-# Quickbar
-'qbsettings' => 'Küçeşlär aslığı',
-'qbsettings-none' => 'Kürsätmäw',
-'qbsettings-fixedleft' => 'Sulda küçerelmäs',
-'qbsettings-fixedright' => 'Uñda küçerelmäs',
-'qbsettings-floatingleft' => 'Sulda yözmä',
-'qbsettings-floatingright' => 'Uñda yözmä',
-
# Preferences page
'preferences' => 'Köylänmälär',
'mypreferences' => 'Köylänmälärem',
'spamprotectiontitle' => 'Spam filtrı',
# Skin names
-'skinname-standard' => 'Klassik',
-'skinname-nostalgia' => 'İskä alu',
'skinname-cologneblue' => 'Zäñgär sağış',
'skinname-monobook' => 'Kitap',
-'skinname-myskin' => 'Üzem',
-'skinname-chick' => 'Çebi',
-'skinname-simple' => 'Ğädi',
'skinname-modern' => 'Zamana',
'skinname-vector' => 'Sızımlı',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Kiñlek',
'exif-imagelength' => 'Bieklek',
'exif-imagedescription' => 'Räsemneñ iseme',
'version-software-product' => 'Produkt',
'version-software-version' => 'Versiä',
-# Special:FilePath
-'filepath' => 'Faylğa yul',
-'filepath-page' => 'Fayl:',
-'filepath-submit' => 'Küçü',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-submit' => 'Ezläw',
NS_SPECIAL => 'Тускай',
NS_TALK => 'Чугаа',
NS_USER => 'Aжыглакчы',
- NS_USER_TALK => 'Aжыглакчы_чугаазы',
- NS_PROJECT_TALK => '$1_чугаазы',
+ NS_USER_TALK => 'Aжыглакчы_чугаа',
+ NS_PROJECT_TALK => '$1_чугаа',
NS_FILE => 'Файл',
- NS_FILE_TALK => 'Файл_чугаазы',
+ NS_FILE_TALK => 'Файл_чугаа',
NS_MEDIAWIKI => 'МедиаВики',
- NS_MEDIAWIKI_TALK => 'МедиаВики_чугаазы',
+ NS_MEDIAWIKI_TALK => 'МедиаВики_чугаа',
NS_TEMPLATE => 'Майык',
- NS_TEMPLATE_TALK => 'Майык_чугаазы',
+ NS_TEMPLATE_TALK => 'Майык_чугаа',
NS_HELP => 'Дуза',
- NS_HELP_TALK => 'Дуза_чугаазы',
- NS_CATEGORY => 'Ð\9aаÑ\82егоÑ\80иÑ\8f',
- NS_CATEGORY_TALK => 'Ð\9aаÑ\82егоÑ\80иÑ\8f_Ñ\87Ñ\83гаазÑ\8b',
+ NS_HELP_TALK => 'Дуза_чугаа',
+ NS_CATEGORY => 'Ð\90ңгÑ\8bлал',
+ NS_CATEGORY_TALK => 'Ð\90ңгÑ\8bлал_Ñ\87Ñ\83гаа',
);
+$namespaceAliases = array(
+ 'Aжыглакчы_чугаазы' => NS_USER_TALK,
+ '$1_чугаазы' => NS_PROJECT_TALK,
+ 'Файл_чугаазы' => NS_FILE_TALK,
+ 'МедиаВики_чугаазы' => NS_MEDIAWIKI_TALK,
+ 'Майык_чугаазы' => NS_TEMPLATE_TALK,
+ 'Дуза_чугаазы' => NS_HELP_TALK,
+ 'Категория' => NS_CATEGORY,
+ 'Категория_чугаазы' => NS_CATEGORY_TALK,
+);
$magicWords = array(
'redirect' => array( '0', '#көжүрүлге', '#ШИГЛЕДИР', '#перенаправление', '#перенапр', '#REDIRECT' ),
'disclaimers' => 'Ажыглаар харысаалгазын чөрчүүрү (ойталаары)',
'disclaimerpage' => 'Project:Ажыглаар харысаалгазын ойталаары',
'edithelp' => 'Эдеринге дуза',
-'edithelppage' => 'Help:Эдери',
'helppage' => 'Help:Допчузу',
'mainpage' => 'Кол Арын',
'mainpage-description' => 'Кол Арын',
'login-abort-generic' => 'Системаже таптыг эвес кирип тур силер',
'loginlanguagelabel' => 'Дыл: $1',
-# E-mail sending
+# Email sending
'php-mail-error-unknown' => 'PHP-ниң mail() ажыл-чорудулгазында билбес алдаг бар.',
# Change password dialog
'viewprevnext' => '($1 {{int:pipe-separator}} $2) ($3) көөрү',
'searchmenu-exists' => "'''Бо викиде \"[[:\$1]]\" деп арын бар.'''",
'searchmenu-new' => "'''Бо викиде «[[:$1]]» арынны чогаадыры'''",
-'searchhelp-url' => 'Help:Допчузу',
'searchprofile-articles' => 'үндезин арыннар',
'searchprofile-project' => 'Төлевилел биле дуза арыннары',
'searchprofile-images' => 'Мультимедиа',
'listgrouprights-group' => 'Бөлүк кижилер',
'listgrouprights-members' => '(кежигүннүң даңзызы)',
-# E-mail user
+# Email user
'emailuser' => 'Бо ажыглакчыга э-чагааны чорудаары',
'defemailsubject' => '{{grammar:ablative|{{SITENAME}}}} э-чагаа',
'emailusernamesubmit' => 'Күүcедири',
'anonymous' => '{{grammar:genitive|{{SITENAME}}}} ат эвес {{PLURAL:$1|ажыглакчызы|ажыглакчылары}}',
# Skin names
-'skinname-standard' => 'Классик',
-'skinname-nostalgia' => 'Ностальгия',
'skinname-cologneblue' => 'Cologne Blue',
'skinname-monobook' => 'МоноБук',
-'skinname-myskin' => 'МайСкин',
-'skinname-chick' => 'Чикк',
-'skinname-simple' => 'Симпел',
'skinname-modern' => 'Модерн',
'skinname-vector' => 'Вектор',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Калбаа',
'exif-imagelength' => 'Бедик',
'exif-imagedescription' => 'Чуруктуң ады',
'version-other' => 'Өске',
'version-software-version' => 'Үндүрери',
-# Special:FilePath
-'filepath-page' => 'Файл:',
-'filepath-submit' => 'Күүcедири',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Файлдың ады:',
'fileduplicatesearch-submit' => 'Дилээри',
NS_USER => 'Викиавтор',
NS_USER_TALK => 'Викиавтор_сярысь_вераськон',
NS_PROJECT_TALK => '$1_сярысь_вераськон',
- NS_FILE => 'СÑ\83Ñ\80ед',
- NS_FILE_TALK => 'СÑ\83Ñ\80ед_сярысь_вераськон',
+ NS_FILE => 'Файл',
+ NS_FILE_TALK => 'Файл_сярысь_вераськон',
NS_MEDIAWIKI => 'MediaWiki',
NS_MEDIAWIKI_TALK => 'MediaWiki_сярысь_вераськон',
NS_TEMPLATE => 'Шаблон',
NS_CATEGORY_TALK => 'Категория_сярысь_вераськон',
);
+$namespaceAliases = array(
+ 'Суред' => NS_FILE,
+ 'Суред_сярысь_вераськон' => NS_FILE_TALK,
+);
+
// Remove Russian aliases
$namespaceGenderAliases = array();
NS_SPECIAL => 'ئالاھىدە',
NS_TALK => 'مۇنازىرە',
NS_USER => 'ئىشلەتكۈچى',
- NS_USER_TALK => 'ئىشلەتكۈچى مۇنازىرىسى',
- NS_PROJECT_TALK => 'مۇنازىرىسى$1',
+ NS_USER_TALK => 'ئىشلەتكۈچى_مۇنازىرىسى',
+ NS_PROJECT_TALK => '$1مۇنازىرىسى',
NS_FILE => 'ھۆججەت',
- NS_FILE_TALK => 'ھۆججەت مۇنازىرىسى',
- NS_MEDIAWIKI_TALK => 'MediaWiki مۇنازىرىسى',
+ NS_FILE_TALK => 'ھۆججەت_مۇنازىرىسى',
+ NS_MEDIAWIKI_TALK => 'MediaWiki_مۇنازىرىسى',
NS_TEMPLATE => 'قېلىپ',
- NS_TEMPLATE_TALK => 'قېلىپ مۇنازىرىسى',
+ NS_TEMPLATE_TALK => 'قېلىپ_مۇنازىرىسى',
NS_HELP => 'ياردەم',
- NS_HELP_TALK => 'ياردەم مۇنازىرىسى',
+ NS_HELP_TALK => 'ياردەم_مۇنازىرىسى',
NS_CATEGORY => 'تۈر',
- NS_CATEGORY_TALK => 'تۈر مۇنازىرىسى',
+ NS_CATEGORY_TALK => 'تۈر_مۇنازىرىسى',
+);
+
+$namespaceAliases = array(
+ 'مۇنازىرىسى$1' => NS_PROJECT_TALK,
);
$specialPageAliases = array(
'disclaimers' => 'جاۋابكارلىقنى كەچۈرۈم قىلىش باياناتى',
'disclaimerpage' => 'Project:ئادەتتىكى جاۋابكارلىقنى كەچۈرۈم قىلىش باياناتى',
'edithelp' => 'تەھرىرلەش ياردىمى',
-'edithelppage' => 'Help:تەھرىرلەۋاتىدۇ',
'helppage' => 'Help:مەزمۇنلار',
'mainpage' => 'باش بەت',
'mainpage-description' => 'باش بەت',
# Special:PasswordReset
'passwordreset' => 'ئىمنى ئەسلىگە قايتۇرماق',
-'passwordreset-text' => 'بۇ جەدۋەل تاماملانسا ھېسابات تەپسىلاتىڭىزنى ئېلخەتىڭىزدە تاپشۇرۇۋالىسىز.',
'passwordreset-legend' => 'ئىمنى ئەسلىگە قايتۇرماق',
'passwordreset-disabled' => 'بۇ ۋىكىدا ئىمنى ئەسلىگە قايتۇرۇش چەكلەنگەن.',
-'passwordreset-pretext' => '{{PLURAL:$1||تۆۋەندىكى سانلىق مەلۇماتتىن بىرنى كىرگۈزۈڭ}}',
'passwordreset-username' => 'ئىشلەتكۈچى ئاتى:',
'passwordreset-domain' => 'دائىرە:',
'passwordreset-capture' => 'ھاسىل قىلىنغان ئېلخەتنى كۆرسىتەمدۇ؟',
'searchmenu-legend' => 'ئىزدەش تاللانما',
'searchmenu-exists' => "'''بۇ wiki دا \"[[:\$1]]\" ئاتلىق بەت بار '''",
'searchmenu-new' => "'''بۇ wiki دا \"[[:\$1]]\" ئاتلىق بەت قۇر!'''",
-'searchhelp-url' => 'Help:مەزمۇنلار',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1| بۇنى ئالدى قوشۇلغۇچى قىلغان بەتكە كۆز يۈگۈرت ]]',
'searchprofile-articles' => 'مەزمۇن بېتى',
'searchprofile-project' => 'ياردەم ۋە قۇرۇلۇش بەتلەر',
'listusers-noresult' => 'ئىشلەتكۈچى تېپىلمىدى.',
'listusers-blocked' => '(چەكلەنگەن)',
+# Special:ActiveUsers
+'activeusers' => 'ئاكتىپ ئەزالار تىزىملىكى',
+'activeusers-intro' => 'بۇ يېقىنقى $1 {{PLURAL:$1| كۈن|كۈن}}دىكى مەشغۇلات قىلغان ئىشلەتكۈچىلەر تىزىملىكى.',
+'activeusers-count' => 'يېقىنقى {{PLURAL:$3|كۈن|$3 كۈن}}دىكى {{PLURAL:$1|مەشغۇلات}} قېتىم سانى $1',
+'activeusers-from' => 'باشلانغان ئىشلەتكۈچىنى كۆرسەت:',
+'activeusers-hidebots' => 'ماشىنا ئادەمنى يوشۇر',
+'activeusers-hidesysops' => 'باشقۇرغۇچىنى يوشۇر',
+'activeusers-noresult' => 'ئىشلەتكۈچى تېپىلمىدى.',
+
# Special:ListGroupRights
'listgrouprights' => 'ئىشلەتكۈچى گۇرۇپپا ھوقۇقى',
'listgrouprights-summary' => 'تۆۋەندىكىسى بۇ wiki دا ئېنىقلىما بېرىلگەن ئىشلەتكۈچى ھوقۇق چېكى تىزىملىكى ۋە ئۇلارنىڭ زىيارەت ھوقۇق چېكى.
'notvisiblerev' => 'تۈزىتىلگەن نەشرى ئۆچۈرۈلدى',
'watchnochange' => 'كۆرسەتكەن ۋاقىت بۆلىكىدە سىزنىڭ كۆزەت بېتىڭىزدە ئۆزگىرىش بولمىدى.',
'watchlist-details' => 'كۆزەت تىزىملىكىڭىزدە {{PLURAL:$1|$1 بەت|$1 بەت}} بار، مۇنازىرە بېتىنى ئۆز ئىچىگە ئالمايدۇ.',
-'wlheader-enotif' => '* ئېلخەتتە ئەسكەرتىش ئىقتىدارى قوزغىتىلدى.',
-'wlheader-showupdated' => "* سىز ئالدىنقى قېتىم كۆرگەندىن كېيىن ئۆزگەرتىلگەن بەتلەر '''توم''' كۆرۈنىدۇ",
+'wlheader-enotif' => 'ئېلخەتتە ئەسكەرتىش ئىقتىدارى قوزغىتىلدى.',
+'wlheader-showupdated' => "سىز ئالدىنقى قېتىم كۆرگەندىن كېيىن ئۆزگەرتىلگەن بەتلەر '''توم''' كۆرۈنىدۇ",
'watchmethod-recent' => 'كۆزىتىۋاتقان بەتنىڭ يېقىنقى ئۆزگەرتىشىنى تەكشۈر',
'watchmethod-list' => 'كۆزىتىۋاتقان بەتنىڭ يېقىنقى ئۆزگەرتىشىنى تەكشۈر',
'watchlistcontains' => 'كۆزەت تىزىملىكىڭىزدە $1 {{PLURAL:$1|بەت|بەت}} بار.',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'كەڭلىك',
'exif-imagelength' => 'ئېگىزلىك',
'exif-bitspersample' => 'ھەر بىر نۇقتىنىڭ بىت سانى',
'exif-originalimageheight' => 'كېسىشتىن ئىلگىرىكى سۈرەتنىڭ ئېگىزلىكى',
'exif-originalimagewidth' => 'كېسىشتىن ئىلگىرىكى سۈرەتنىڭ كەڭلىكى',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'پرىسلانمىغان',
'exif-compression-2' => 'CCITT 3-گۇرۇپپا بىر ئۆلچەملىك ئۆزگەرتىلگەن خۇفمان ئىجرا كودلىنىشى',
'exif-compression-3' => 'CCITT نىڭ 3-گۇرۇپپا فاكس كودلىنىشى',
'version-entrypoints-header-entrypoint' => 'كىرىش نۇقتىسى',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'ھۆججەت يولى',
-'filepath-page' => 'ھۆججەت:',
-'filepath-submit' => 'يۆتكەل',
-'filepath-summary' => '!بۇ ئالاھىدە بەت ھۆججەتنىڭ تولۇق يولىنى قايتۇرىدۇ.
-سۈرەت تولۇق ئېنىقلىقتا كۆرسىتىلىدۇ، باشقا ھۆججەت تىپى بىۋاسىتە ئۇلانغان قوللىنىشچان پروگراممىدا ئېچىلىدۇ',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'تەكرار ھۆججەت ئىزدە',
'fileduplicatesearch-summary' => 'چاچما (hash) قىممىتىگە ئاساسەن تەكرار ھۆججەت ئىزدە.',
* @author DixonD
* @author Dubyk
* @author EugeneZelenko
+ * @author Geitost
* @author Gucci Mane Burrr
* @author Gutsul (Gutsul.ua at Google Mail)
* @author Ickis
* @author KEL
* @author Kalan
* @author Microcell
+ * @author Nemo bis
* @author NickK
* @author Olvin
* @author Prima klasy4na
'oct' => 'жов',
'nov' => 'лис',
'dec' => 'груд',
+'january-date' => '$1 січня',
+'february-date' => '$1 лютого',
+'march-date' => '$1 березня',
+'april-date' => '$1 квітня',
+'may-date' => '$1 травня',
+'june-date' => '$1 червня',
+'july-date' => '$1 липня',
+'august-date' => '$1 серпня',
+'september-date' => '$1 вересня',
+'october-date' => '$1 жовтня',
+'november-date' => '$1 листопада',
+'december-date' => '$1 грудня',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Категорія|Категорії}}',
'create-this-page' => 'Створити цю сторінку',
'delete' => 'Вилучити',
'deletethispage' => 'Вилучити цю сторінку',
+'undeletethispage' => 'Відновити цю сторінку',
'undelete_short' => 'Відновити $1 {{PLURAL:$1|редагування|редагування|редагувань}}',
'viewdeleted_short' => 'Переглянути {{PLURAL:$1|одне вилучене редагування|$1 вилучених редагування|$1 вилучених редагувань}}',
'protect' => 'Захистити',
'disclaimers' => 'Відмова від відповідальності',
'disclaimerpage' => 'Project:Відмова від відповідальності',
'edithelp' => 'Довідка про редагування',
-'edithelppage' => 'Help:Редагування',
'helppage' => 'Help:Довідка',
'mainpage' => 'Головна сторінка',
'mainpage-description' => 'Головна сторінка',
'namespaceprotected' => 'У вас нема дозволу редагувати сторінки в просторі назв «$1».',
'customcssprotected' => 'У вас немає прав на редагування цієї CSS-сторінки, так як вона містить особисті налаштування іншого користувача.',
'customjsprotected' => 'У вас немає дозволу на редагування цієї JavaScript-сторінки, так як вона містить особисті налаштування іншого користувача.',
+'mycustomcssprotected' => 'У вас немає прав для редагування цієї CSS сторінки.',
+'mycustomjsprotected' => 'Ви не маєте дозволу для редагування цієї сторінки JavaScript.',
'ns-specialprotected' => 'Спеціальні сторінки не можна редагувати.',
'titleprotected' => "Створення сторінки з такою назвою було заборонене користувачем [[User:$1|$1]].
Зазначена наступна причина: ''$2''.",
'createacct-yourpasswordagain' => 'Підтвердіть пароль',
'createacct-yourpasswordagain-ph' => 'Введіть пароль знову',
'remembermypassword' => "Запам'ятати мій обліковий запис на цьому комп'ютері (на строк не більше $1 {{PLURAL:$1|дня|днів}})",
-'userlogin-remembermypassword' => 'Запам’ятати мене',
-'userlogin-signwithsecure' => 'Вхід за допомогою безпечного сервера',
+'userlogin-remembermypassword' => "Запам'ятати мене",
+'userlogin-signwithsecure' => "Захищене з'єднання",
'securelogin-stick-https' => 'Залишайтись підключенним через HTTPS після входу',
'yourdomainname' => 'Ваш домен:',
'password-change-forbidden' => 'Ви не можна змінити пароль на цій вікі.',
'userlogout' => 'Вихід із системи',
'notloggedin' => 'Ви не ввійшли до системи',
'userlogin-noaccount' => 'Немає облікового запису?',
-'userlogin-joinproject' => 'Приєднатися до {{SITENAME}}',
-'nologin' => "Ви ще не зареєструвались? '''$1'''.",
+'userlogin-joinproject' => 'Приєднатися до {{GRAMMAR:genitive|{{SITENAME}}}}',
+'nologin' => 'Ви ще не зареєструвались? $1.',
'nologinlink' => 'Створіть обліковий запис',
'createaccount' => 'Зареєструватися',
'gotaccount' => "Ви вже зареєстровані? '''$1'''.",
'gotaccountlink' => 'Увійдіть',
'userlogin-resetlink' => 'Забули дані, потрібні для входу?',
+'userlogin-resetpassword-link' => 'Скинути пароль',
'helplogin-url' => 'Help:Вхід до системи',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Допомога в реєстрації]]',
'createacct-join' => 'Введіть вашу інформацію нижче.',
'createacct-realname' => "Справжнє ім'я (не обов'язково)",
'createaccountreason' => 'Причина:',
'createacct-reason' => 'Причина',
+'createacct-reason-ph' => 'Чому Ви створюєте інший обліковий запис',
'createacct-captcha' => 'Перевірка безпеки',
'createacct-imgcaptcha-ph' => 'Введіть текст, що Ви бачите вище',
+'createacct-submit' => 'Створіть Ваш обліковий запис',
'createacct-benefit-heading' => '{{SITENAME}} створюється такі ж люди як Ви.',
-'createacct-benefit-body1' => 'редагування',
-'createacct-benefit-body2' => 'сторінки',
-'createacct-benefit-body3' => 'дописувачів цього місяця',
+'createacct-benefit-body1' => '{{PLURAL:$1|редагування|редагування|редагувань}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|сторінка|сторінки|сторінок}}',
+'createacct-benefit-body3' => '{{PLURAL:$1|дописувач|дописувачі|дописувачів}} цього місяця',
'badretype' => 'Уведені вами паролі не збігаються.',
'userexists' => "Уведене ім'я користувача вже існує.
Будь ласка оберіть інше ім'я.",
'cannotchangeemail' => 'У цій вікі не можна міняти свою адресу ел. пошти.',
'emaildisabled' => 'Цей сайт не може надіслати електронні листи.',
'accountcreated' => 'Обліковий запис створено.',
-'accountcreatedtext' => 'Ð\9eблÑ\96ковий запиÑ\81 длÑ\8f $1 Ñ\81Ñ\82воÑ\80ено.',
+'accountcreatedtext' => 'Ð\9eблÑ\96ковий запиÑ\81 коÑ\80иÑ\81Ñ\82Ñ\83ваÑ\87а длÑ\8f [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|обговоÑ\80еннÑ\8f]]) бÑ\83в Ñ\81Ñ\82воÑ\80ений.',
'createaccount-title' => 'Створення облікового запису для {{SITENAME}}',
'createaccount-text' => 'Хтось створив обліковий запис «$2» на сервері проекту {{SITENAME}} ($4) з паролем «$3», зазначивши вашу адресу електронної пошти. Вам слід зайти і змінити пароль.
'suspicious-userlogout' => 'Ваш запит на завершення сеанса відхилений, оскільки він схожий на запит, відправлений зіпсованим веб-оглядачем або кешуючим проксі-сервером.',
# Email sending
-'php-mail-error-unknown' => 'Невідома помилка в PHP-mail() функції',
+'php-mail-error-unknown' => 'Невідома помилка в PHP-функції mail()',
'user-mail-no-addy' => 'Спроба надсилання електронної пошти без зазначеної адреси електронної пошти.',
'user-mail-no-body' => 'Спроба надіслати електронного листа з порожнім або надто коротким вмістом.',
'resetpass-wrong-oldpass' => 'Неправильний тимчасовий або поточний пароль.
Можливо, ви вже успішно змінили пароль або зробили запит на новий тимчасовий пароль.',
'resetpass-temp-password' => 'Тимчасовий пароль:',
+'resetpass-abort-generic' => 'Зміну пароля було перервано розширенням.',
# Special:PasswordReset
'passwordreset' => 'Скинути пароль',
-'passwordreset-text' => 'Заповніть цю форму для відновлення пароля.',
+'passwordreset-text-one' => 'Заповніть цю форму для відновлення пароля.',
+'passwordreset-text-many' => '{{PLURAL:$1|Введіть один з елементів даних для скидання пароля.}}',
'passwordreset-legend' => 'Перевстановити пароль',
'passwordreset-disabled' => 'У цій вікі вимкнена можливість скидання пароля.',
'passwordreset-emaildisabled' => 'Функції електронної пошти вимкнуто в цій вікі.',
-'passwordreset-pretext' => '{{PLURAL:$1||Введіть одну з частин даних}}',
'passwordreset-username' => "Ім'я користувача:",
'passwordreset-domain' => 'Домен:',
'passwordreset-capture' => 'Продивитись результуючий електронний лист?',
Імовірно, вона була вилучена.',
'edit-conflict' => 'Конфлікт редагувань.',
'edit-no-change' => 'Ваше редагування відхилене, оскільки в тексті не було зроблено змін.',
+'postedit-confirmation' => 'Ваше редагування збережено',
'edit-already-exists' => 'Неможливо створити нову сторінку.
Вона вже існує.',
'defaultmessagetext' => 'Текст «за замовчування»',
'invalid-content-data' => 'Неприпустимі дані',
'content-not-allowed-here' => 'Вміст «$1» недопустимий на сторінці [[$2]]',
'editwarning-warning' => 'Перехід на іншу сторінку призведе до втрати ваших змін.
-Якщо ви ввійшли до системи, то ви можете відключити це попередження в розділі «{{int:prefs-editing}}» ваших налаштувань.',
+Якщо ви ввійшли до системи, то ви можете відключити це попередження в розділі «Редагування» ваших налаштувань.',
# Content models
'content-model-wikitext' => 'вікітекст',
'searchmenu-legend' => 'Параметри пошуку',
'searchmenu-exists' => "'''У цій вікі є сторінка з назвою «[[:$1]]»'''",
'searchmenu-new' => "'''Створити сторінку «[[:$1]]» у цій вікі!'''",
-'searchhelp-url' => 'Help:Довідка',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Показати сторінки з цим префіксом]]',
'searchprofile-articles' => 'Статті',
'searchprofile-project' => 'Сторінки довідки і проекту',
'userrights-changeable-col' => 'Групи, які ви можете змінити',
'userrights-unchangeable-col' => 'Групи, які ви не можете змінити',
'userrights-irreversible-marker' => '$1*',
+'userrights-conflict' => 'Конфлікт прав користувача! Будь ласка, застосуйте зміни знову.',
+'userrights-removed-self' => 'Ви успішно позбавили себе власних прав. Через це Ви більше не маєте доступу до цієї сторінки.',
# Groups
'group' => 'Група:',
'right-editusercssjs' => 'Редагування CSS- і JS-файлів інших користувачів',
'right-editusercss' => 'Редагування CSS-файлів інших користувачів',
'right-edituserjs' => 'Редагування JS-файлів інших користувачів',
+'right-editmyusercss' => 'Редагування власних CSS-файлів користувача',
+'right-editmyuserjs' => 'Редагування власних JavaScript-файлів користувача',
+'right-viewmywatchlist' => 'Переглядати власний список спостереження',
+'right-editmywatchlist' => 'Редагувати власний список спостереження. Зверніть увагу, що деякі дії будуть додавати сторінки навіть без такого права.',
'right-rollback' => 'Швидкий відкіт редагувань останнього користувача, який редагував сторінку',
'right-markbotedits' => 'Позначення відкинутих редагувань як редагування бота',
'right-noratelimit' => 'Нема обмежень за швидкістю',
'action-userrights-interwiki' => 'зміну прав користувачів у інших вікі',
'action-siteadmin' => 'блокування і розблоковування баз даних',
'action-sendemail' => 'відправка електронної пошти',
+'action-editmywatchlist' => 'редагування Вашого списку спостереження',
+'action-viewmywatchlist' => 'перегляд власного списку спостереження',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|зміна|зміни|змін}}',
'upload-file-error' => 'Внутрішня помилка',
'upload-file-error-text' => 'Сталася внутрішня помилка при спробі створити тимчасовий файл на сервері. Будь-ласка, зверніться до [[Special:ListUsers/sysop|адміністратора]].',
'upload-misc-error' => 'Невідома помилка завантаження',
-'upload-misc-error-text' => 'Невідома помилка завантаження. Будь-ласка, перевірте, що вказана адреса вірна й спробуйте ще. Якщо проблема виникає знову, зверніться до системного адміністратора.',
+'upload-misc-error-text' => 'Невідома помилка завантаження. Будь-ласка, перевірте, що вказана адреса вірна й спробуйте ще. Якщо проблема виникає знову, зверніться до [[Special:ListUsers/sysop|адміністратора]].',
'upload-too-many-redirects' => 'URL містить надто багато перенаправлень',
'upload-unknown-size' => 'Невідомий розмір',
'upload-http-error' => 'Відбулася помилка HTTP: $1',
'wantedpages' => 'Необхідні статті',
'wantedpages-badtitle' => 'Неправильний заголовок у результатах запиту: $1',
'wantedfiles' => 'Необхідні файли',
-'wantedfiletext-cat' => 'Наступні файли використовують, але вони не існують. У цей список можуть помилково потрапити файли, що знаходяться на зовнішніх сховищах. Такі хибні моменти помічаються <del>перекреслюванням</del>. Крім того, сторінки, що використовують неіснуюч файли, перелічені в [[:$1]].',
+'wantedfiletext-cat' => 'Наступні файли використовують, але вони не існують. У цей список можуть помилково потрапити файли, що знаходяться на зовнішніх сховищах. Такі хибні моменти помічаються <del>перекреслюванням</del>. Крім того, сторінки, що використовують неіснуючі файли, перелічені в [[:$1]].',
'wantedfiletext-nocat' => 'Наступні файли використовують, але вони не існують. У цей список можуть помилково потрапити файли, що знаходяться на зовнішніх сховищах. Такі хибні моменти помічаються <del>перекреслюванням</del>.',
'wantedtemplates' => 'Необхідні шаблони',
'mostlinked' => 'Сторінки, на які найбільше посилань',
'notvisiblerev' => 'Версія була вилучена',
'watchnochange' => 'За вказаний період в статтях з списку спостереження нічого не змінено.',
'watchlist-details' => 'У вашому списку спостереження $1 {{PLURAL:$1|сторінка|сторінки|сторінок}} (не враховуючи сторінок обговорення).',
-'wlheader-enotif' => '* Сповіщення електронною поштою ввімкнено.',
-'wlheader-showupdated' => "* Сторінки, що змінилися після вашого останнього їх відвідування, виділені '''жирним''' шрифтом.",
+'wlheader-enotif' => 'Сповіщення електронною поштою ввімкнено.',
+'wlheader-showupdated' => "Сторінки, що змінилися після вашого останнього їх відвідування, виділені '''жирним''' шрифтом.",
'watchmethod-recent' => 'перегляд останніх редагувань статей за якими ведеться спостереження',
'watchmethod-list' => 'перегляд статей за якими ведеться спостереження',
'watchlistcontains' => 'Ваш список спостереження містить $1 {{PLURAL:$1|сторінку|сторінки|сторінок}}.',
'mycontris' => 'Внесок',
'contribsub2' => 'Внесок $1 ($2)',
'nocontribs' => 'Редагувань, що задовольняють заданим умовам не знайдено.',
-'uctop' => ' (остання)',
+'uctop' => '(поточна)',
'month' => 'До місяця (включно):',
'year' => 'До року (включно):',
'thumbnail-more' => 'Збільшити',
'filemissing' => 'Файл не знайдено',
'thumbnail_error' => 'Помилка створення мініатюри: $1',
+'thumbnail_error_remote' => 'Повідомлення про помилку від $1:
+$2',
'djvu_page_error' => 'Номер сторінки DjVu недосяжний',
'djvu_no_xml' => 'Неможливо отримати XML для DjVu',
'thumbnail-temp-create' => 'Не вдалося створити тимчасовий файл мініатюри',
'modern.css' => '/* Розміщений тут CSS-код буде використаний в темі оформлення Сучасне */',
'vector.css' => '/* Розміщений тут CSS-код буде використаний в темі оформлення Векторне */',
'print.css' => '/* Розміщений тут CSS-код буде використаний для друкованої версії */',
-'handheld.css' => '/* Розміщений тут CSS-код буде використаний для мобільних пристроїв, що використовують тему оформлення налаштовану в $wgHandheldStyle */',
'noscript.css' => '/* Розміщений тут CSS-код буде використаний для користувачів у яких вимкнено JavaScript */',
'group-autoconfirmed.css' => '/* Розміщений тут CSS-код буде використаний для автопідтверджених користувачів */',
'group-bot.css' => '/* Розміщений тут CSS-код буде використаний тільки для ботів */',
'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath Шлях до статей]',
'version-entrypoints-scriptpath' => '[https://www.mediawiki.org/wiki/Manual:$wgScriptPath Шлях до скриптів]',
+# Special:Redirect
+'redirect' => 'Перенаправлення за файлом, користувачем або ID версії',
+'redirect-legend' => 'Перенаправити на файл чи сторінку',
+'redirect-summary' => 'Ця спеціальна сторінка перенаправляє на файл (за поданою назвою файлу), сторінку (за поданим ID версії) або сторінку користувача (за поданим числовим ID користувача).',
+'redirect-submit' => 'Перейти',
+'redirect-lookup' => 'Шукати:',
+'redirect-value' => 'Значення:',
+'redirect-user' => 'ID користувача',
+'redirect-revision' => 'Версія сторінки',
+'redirect-file' => 'Назва файлу',
+'redirect-not-exists' => 'Значення не знайдено',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Пошук файлів-дублікатів',
'fileduplicatesearch-summary' => 'Пошук дублікатів файлів на основі хеш-значень.',
'htmlform-selectorother-other' => 'Інше',
'htmlform-no' => 'Ні',
'htmlform-yes' => 'Так',
+'htmlform-chosen-placeholder' => 'Виберіть параметр',
# SQLite database support
'sqlite-has-fts' => '$1 з підтримкою повнотекстового пошуку',
$rtl = true;
$namespaceNames = array(
- NS_MEDIA => 'زریعہ',
+ NS_MEDIA => 'وسیط',
NS_SPECIAL => 'خاص',
NS_MAIN => '',
NS_TALK => 'تبادلۂ_خیال',
NS_USER => 'صارف',
NS_USER_TALK => 'تبادلۂ_خیال_صارف',
NS_PROJECT_TALK => 'تبادلۂ_خیال_$1',
- NS_FILE => 'تصویر',
- NS_FILE_TALK => 'تبادلۂ_خیال_تصویر',
- NS_MEDIAWIKI => 'میڈیاوکی',
- NS_MEDIAWIKI_TALK => 'تبادلۂ_خیال_میڈیاوکی',
+ NS_FILE => 'ملف',
+ NS_FILE_TALK => 'تبادلۂ_خیال_ملف',
+ NS_MEDIAWIKI => 'میڈیاویکی',
+ NS_MEDIAWIKI_TALK => 'تبادلۂ_خیال_میڈیاویکی',
NS_TEMPLATE => 'سانچہ',
NS_TEMPLATE_TALK => 'تبادلۂ_خیال_سانچہ',
NS_HELP => 'معاونت',
NS_CATEGORY_TALK => 'تبادلۂ_خیال_زمرہ',
);
+$namespaceAliases = array(
+ 'زریعہ' => NS_MEDIA,
+ 'تصویر' => NS_FILE,
+ 'تبادلۂ_خیال_تصویر' => NS_FILE_TALK,
+ 'میڈیاوکی' => NS_MEDIAWIKI,
+ 'تبادلۂ_خیال_میڈیاوکی' => NS_MEDIAWIKI_TALK,
+);
+
$specialPageAliases = array(
'Activeusers' => array( 'متحرک_صارفین' ),
'Allmessages' => array( 'تمام_پیغامات' ),
# Categories related messages
'pagecategories' => '{{PLURAL:$1|زمرہ|زمرہ جات}}',
'category_header' => 'زمرہ "$1" میں مضامین',
-'subcategories' => 'Ø°Û\8cÙ\84Û\8c Ø°مرہ جات',
+'subcategories' => 'Ø°Û\8cÙ\84Û\8c زمرہ جات',
'category-media-header' => 'زمرہ "$1" میں وسیط',
'category-empty' => '‘‘اِس زمرہ میں ابھی کوئی صفحات یا وسیط موجود نہیں.’’',
'hidden-categories' => '{{PLURAL:$1|پوشیدہ زمرہ|پوشیدہ زمرہ جات}}',
'vector-view-create' => 'تخلیق',
'vector-view-edit' => 'ترمیم',
'vector-view-history' => 'تاریخ',
-'vector-view-view' => 'Ù¾Ú\91Ú¾Û\8cÚº',
+'vector-view-view' => 'Ù\85طاÙ\84عÛ\81',
'vector-view-viewsource' => 'مسودہ',
'actions' => 'ایکشنز',
'namespaces' => 'جائے نام',
'pool-errorunknown' => 'نامعلوم خطا',
# 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) and the disambiguation template definition (see disambiguations).
-'aboutsite' => 'کا تعارف {{SITENAME}}',
+'aboutsite' => 'تعارف {{SITENAME}}',
'aboutpage' => 'Project:تعارف',
'copyright' => 'تمام مواد $1 کے تحت میسر ہے۔',
'copyrightpage' => '{{ns:project}}:حقوق تصانیف',
'disclaimers' => 'اعلانات',
'disclaimerpage' => 'Project:عام اعلان',
'edithelp' => 'معاونت براۓ ترمیم',
-'edithelppage' => 'Help:ترمیم',
'helppage' => 'Help:فہرست',
'mainpage' => 'صفحہ اول',
'mainpage-description' => 'صفحہ اول',
لگتا ہے یہ حذف ہوچکا ہے.',
'edit-conflict' => 'تنازعۂ تدوین.',
'edit-no-change' => 'آپ کی تدوین کو نظرانداز کردیا گیا، کیونکہ متن میں کوئی تبدیلی نہیں ہوئی تھی.',
+'postedit-confirmation' => 'آپ کی ترمیم محفوظ ہوگئی۔',
'edit-already-exists' => 'نیا صفحہ تخلیق نہیں کیا جاسکتا.
یہ پہلے سے موجود ہے.',
'searchmenu-legend' => 'اختیاراتِ تلاش',
'searchmenu-exists' => "'''اِس ویکی پر \"[[:\$1]]\" نامی ایک صفحہ موجود ہے'''",
'searchmenu-new' => "'''اِس ویکی پر صفحہ \"[[:\$1]]\" تخلیق کیجئے!'''",
-'searchhelp-url' => 'Help:فہرست',
'searchprofile-articles' => 'مشمولاتی صفحات',
'searchprofile-project' => 'صفحاتِ مدد و منصوبہ',
'searchprofile-images' => 'کثیرالوسیط',
'searchprofile-project-tooltip' => '$1 میں تلاش',
'searchprofile-images-tooltip' => 'تلاش برائے ملفات',
'searchprofile-everything-tooltip' => ' تلاش تمام مشمولات (بشمول تبادلۂ خیال صفحات) میں',
-'searchprofile-advanced-tooltip' => 'اپنی پسند کے فضائے نام میں تلاش',
+'searchprofile-advanced-tooltip' => 'اپنی پسند کے جائے نام میں تلاش',
'search-result-size' => '$1 ({{PLURAL:$2|1 لفظ|$2 الفاظ}})',
'search-result-category-size' => '{{PLURAL:$1|1 رُکن|$1 اراکین}} ({{PLURAL:$2|1 ذیلی زمرہ|$2 ذیلی زمرہ جات}}, {{PLURAL:$3|1 ملف|$3 ملفات}})',
'search-result-score' => 'توافق: $1%',
'recentchangeslinked-page' => 'صفحۂ منصوبہ دیکھئے',
# Upload
-'upload' => 'Ù\81ائÙ\84 بھÛ\8cجÛ\8cÚº',
+'upload' => 'Ù\81ائÙ\84 اثÙ\82اÙ\84',
'uploadbtn' => 'زبراثقال ملف (اپ لوڈ فائل)',
'reuploaddesc' => 'زبراثقال ورقہ (فارم) کیجانب واپس۔',
'uploadnologin' => 'آپ داخل شدہ حالت میں نہیں',
'sp-contributions-newbies' => 'صرف نئے کھاتوں کے مساہمات دکھاؤ',
'sp-contributions-blocklog' => 'نوشتۂ پابندی',
-'sp-contributions-uploads' => 'آپÙ\84Ù\88Ú\88',
+'sp-contributions-uploads' => 'اثÙ\82اÙ\84ات',
'sp-contributions-logs' => 'نوشتہ جات',
'sp-contributions-talk' => 'گفتگو',
'sp-contributions-userrights' => 'صارف کے حقوق کا انتظام',
'sp-contributions-submit' => 'تلاش',
# What links here
-'whatlinkshere' => 'ادھر کس کا جوڑ ہے',
+'whatlinkshere' => 'ادھر کونسا ربط ہے',
'whatlinkshere-title' => '"$1" سے مربوط صفحات',
'whatlinkshere-page' => 'صفحہ:',
'linkshere' => "'''[[:$1]]''' سے درج ذیل صفحات مربوط ہیں:",
'isredirect' => 'لوٹایا گیا صفحہ',
'istemplate' => 'شامل شدہ',
'isimage' => 'ربطِ ملف',
-'whatlinkshere-links' => 'روابط',
+'whatlinkshere-links' => 'روابط ←',
'whatlinkshere-hideredirs' => 'رجوع مکررات $1',
'whatlinkshere-hidetrans' => 'تضمینات',
'whatlinkshere-hidelinks' => 'روابط $1',
'tooltip-ca-nstab-category' => 'زمرہجاتی صفحہ دیکھئے',
'tooltip-minoredit' => 'اِس تدوین کو بطورِ معمولی ترمیم نشانزد کیجئے',
'tooltip-save' => 'تبدیلیاں محفوظ کیجئے',
-'tooltip-preview' => 'برائے مہربانی! محفوظ کرنے سے پہلے تبدیلیوں کا پیشمنظر دیکھئے',
+'tooltip-preview' => 'برائے مہربانی! محفوظ کرنے سے پہلے تبدیلیوں کا پیش منظر دیکھيے',
'tooltip-diff' => 'دیکھئے کہ اپنے متن میں کیا تبدیلیاں کیں',
'tooltip-compareselectedversions' => 'اِس صفحہ کی دو منتخب نظرثانیوں میں فرق دیکھئے',
'tooltip-watch' => 'اِس صفحہ کو اپنی زیرِنظرفہرست میں شامل کریں',
'tog-editsection' => '[tahrir] havolasini har bir boʻlim boshida koʻrsatish',
'tog-editsectiononrightclick' => 'Boʻlim sarlavhasiga sichqonchaning oʻng tugmasi bilan bosib tahrirlashni boshlash',
'tog-showtoc' => 'Mundarijani koʻrsatish (3 tadan koʻproq sarlavha bor sahifalarda)',
-'tog-rememberpassword' => 'Hisob ma’lumotlarim ushbu brauzerda eslab qolinsin (ko‘pi bilan $1 {{PLURAL:$1|kunga|kunga}})',
+'tog-rememberpassword' => 'Hisob ma’lumotlarim ushbu brauzerda eslab qolinsin (ko‘pi bilan $1 kunga)',
'tog-watchcreations' => 'Men yaratgan sahifalarni va yuklagan fayllarni kuzatuv roʻyxatimga qoʻsh',
'tog-watchdefault' => 'Men tahrirlagan sahifa va fayllarni kuzatuv roʻyxatimga qoʻsh',
'tog-watchmoves' => 'Men koʻchirgan sahifa va fayllarni kuzatuv roʻyxatimga qoʻsh',
'tog-ccmeonemails' => 'Boshqa ishtirokchilarga yozgan xatimning nusxasi oʻzimga yuborilsin',
'tog-diffonly' => 'Versiyalar taqqoslanayotganda, pastda sahifa matni koʻrsatilmasin',
'tog-showhiddencats' => 'Yashirin turkumlarni koʻrsatish',
-'tog-noconvertlink' => "Sarlavhaga aylantirish dastagini o'chirib qo'yish",
+'tog-noconvertlink' => 'Sarlavhani oʻzgartirish havolasini oʻchirib qoʻyish',
'tog-norollbackdiff' => 'Tahrir qaytarilganda, versiyalar taqqosi koʻrsatilmasin',
'tog-useeditwarning' => 'Kiritgan oʻzgarishlarimni saqlamay sahifadan chiqib ketayotganim haqida ogohlantirilsin',
'disclaimers' => 'Ogohlantirishlar',
'disclaimerpage' => 'Project:Umumiy ogohlantirish',
'edithelp' => 'Tahrirlash yordami',
-'edithelppage' => 'Help:Tahrirlash',
'helppage' => 'Help:Mundarija',
'mainpage' => 'Bosh sahifa',
'mainpage-description' => 'Bosh sahifa',
'youhavenewmessages' => 'Sizga $1 keldi ($2).',
'newmessageslink' => 'yangi xabarlar',
'newmessagesdifflink' => 'soʻnggi oʻzgarish',
-'youhavenewmessagesfromusers' => 'Siz {{PLURAL:$3|$3 ta foydalanuvchidan}} $1 oldingiz ($2).',
+'youhavenewmessagesfromusers' => 'Siz {{PLURAL:$3|boshqa foydalanuvchidan|$3 ta foydalanuvchidan}} $1 oldingiz ($2).',
'youhavenewmessagesmanyusers' => "Siz ko'p foydalanuvchilardan $1 oldingiz ($2).",
'newmessageslinkplural' => '{{PLURAL:$1|yangi xabar|yangi xabarlar}}',
-'newmessagesdifflinkplural' => "oxirgi {{PLURAL:$1|o'zgarish|o'zgarishlar}}",
+'newmessagesdifflinkplural' => 'oxirgi {{PLURAL:$1|oʻzgarish|oʻzgarishlar}}',
'youhavenewmessagesmulti' => 'Siz $1ga yangi xat oldingiz',
'editsection' => 'tahrirlash',
'editold' => 'tahrirlash',
'toc' => 'Mundarija',
'showtoc' => 'koʻrsatish',
'hidetoc' => 'yashirish',
-'collapsible-collapse' => "Yig'ish",
+'collapsible-collapse' => 'Yigʻish',
'collapsible-expand' => 'Yoyish',
-'thisisdeleted' => "$1ni ko'rib chiqasizmi yoki tiklaysizmi?",
-'viewdeleted' => "$1ni ko'rib chiqasizmi?",
-'restorelink' => "{{PLURAL:$1|o'chirilgan tahrir|$1 ta o'chirilgan tahrirlar}}ni",
+'thisisdeleted' => '$1ni koʻrib chiqasizmi yoki tiklaysizmi?',
+'viewdeleted' => '$1ni koʻrib chiqasizmi?',
+'restorelink' => '{{PLURAL:$1|Oʻchirilgan tahrir|$1 ta oʻchirilgan tahrirlar}}',
'feedlinks' => "Ko'rinishida:",
'feed-invalid' => "Obuna uchun no'tog'ri turdagi kanal",
-'feed-unavailable' => "Sindikatsiya tasmalariga yo'lashning imkoni yo'q",
+'feed-unavailable' => 'Sindikatsiya tasmalariga yoʻlash imkoni yoʻq',
'site-rss-feed' => '$1 — RSS-tasmasi',
'site-atom-feed' => '$1 — Atom-tasma',
'page-rss-feed' => '"$1" — RSS-tasmasi',
'page-atom-feed' => '«$1» — Atom-lenta',
'red-link-title' => '$1 (sahifa yaratilmagan)',
-'sort-descending' => "Kamayish bo'yicha tartiblash",
-'sort-ascending' => "O'sish bo'yicha tartiblash",
+'sort-descending' => 'Kamayish boʻyicha tartiblash',
+'sort-ascending' => 'Oʻsish boʻyicha tartiblash',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => 'Maqola',
'internalerror_info' => 'Ichki xato: $1',
'badtitle' => 'Notoʻgʻri sarlavha',
'viewsource' => 'Manbasini koʻrish',
-'viewsource-title' => "$1 sahifasining manbasini ko'rish",
-'actionthrottled' => "Tezlik bo'yicha cheklov",
+'viewsource-title' => '$1 sahifasining manbasini koʻrish',
+'actionthrottled' => 'Tezlik cheklovi',
'protectedpagetext' => 'Bu sahifa tahrirlash va boshqa oʻzgartirishlar kiritishdan himoyalangan.',
'viewsourcetext' => 'Siz bu sahifaning manbasini koʻrishingiz va uni nusxasini olishingiz mumkin:',
'editinginterface' => "'''Diqqat:''' Siz dasturiy taʼminot interfeysi matni mavjud boʻlgan sahifani tahrirlamoqdasiz.
'customjsprotected' => 'Sizda uchbu JavaScript sahifani tahrirlash huquqi yoʻq, chunki bu yerda boshqa foydalanuvchining shaxsiy moslamalari saqlanadi.',
'ns-specialprotected' => '"{{ns:special}}" nomfazosi sahifalari tahrirlanishi mumkin emas.',
'exception-nologin' => "Siz tizimda o'zingizni tanishtirmadingiz",
-'exception-nologin-text' => "Bu sahifani ko'rish yoki so'ralgan amalni bajarish uchun o'zingizni tizimda tanitishingiz zarur.",
+'exception-nologin-text' => 'Bu sahifani koʻrish yoki soʻralgan amalni bajarish uchun tizimga kirishingiz lozim.',
# Virus scanner
'virus-badscanner' => "Moslamada xato. Noma'lum virus aniqlovchi: ''$1''",
{{SITENAME}} saytidan anonim holda foydalanishda davom etishindiz mumkin. Yoki siz yana hozirgi yoki boshqa foydalanuvchi nomi bilan qaytadan tizimga kirishingiz mumkin.
Shuni e'tiborga olingki, ayrim sahifalar siz brauzeringiz keshini tozalamaguningizga qadar xuddi tizimga kirganingizdagidek ko'rinishda davom etaverishi mumkin.",
-'yourname' => 'Foydalanuvchi nomi',
+'yourname' => 'Foydalanuvchi nomi:',
+'userlogin-yourname' => 'Foydalanuvchi nomi',
+'userlogin-yourname-ph' => 'Foydalanuvchi nomingizni kiriting',
'yourpassword' => 'Maxfiy soʻz:',
+'createacct-yourpassword-ph' => 'Maxfiy soʻzni kiriting',
'yourpasswordagain' => 'Maxfiy so‘zni qayta kiriting:',
+'createacct-yourpasswordagain' => 'Maxfiy soʻzni tasdiqlang',
+'createacct-yourpasswordagain-ph' => 'Maxfiy soʻzni yana bir bor kiriting',
'remembermypassword' => 'Hisob ma’lumotlarim ushbu brauzerda eslab qolinsin (ko‘pi bilan $1 {{PLURAL:$1|kunga|kunga}})',
-'securelogin-stick-https' => "Kirgandan keyin HTTPS bo'yicha ulanishni davom ettirish",
+'userlogin-remembermypassword' => 'Yodda tut',
+'userlogin-signwithsecure' => 'Himoyalangan holda kirish',
+'securelogin-stick-https' => 'Kirgandan keyin HTTPS boʻyicha ulanishni davom ettirish',
'yourdomainname' => 'Sizning domeningiz:',
'password-change-forbidden' => 'Siz bu vikida maxfiy soʻzni oʻzgartira olmaysiz.',
'login' => 'Kirish',
'logout' => 'Chiqish',
'userlogout' => 'Chiqish',
'notloggedin' => 'Siz tizimga kirmagansiz',
+'userlogin-noaccount' => 'Hisobingiz yoʻqmi?',
+'userlogin-joinproject' => '{{SITENAME}}ga aʼzo boʻlish',
'nologin' => "Hisobingiz yoʻqmi? '''$1'''.",
'nologinlink' => 'Hisob yaratish',
'createaccount' => 'Hisob yaratish',
'gotaccount' => "Hisobingiz bormi? '''$1'''.",
'gotaccountlink' => 'Kirish',
'userlogin-resetlink' => 'Kirish maʻlumotlaringiz esdan chiqdimi?',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Kirish uchun yordam]]',
+'createacct-join' => 'Maʼlumotlaringizni quyiga yozing',
+'createacct-emailoptional' => 'Elektron pochta manzili (majburiy emas)',
+'createacct-email-ph' => 'Elektron pochtangiz manzilini kiriting',
'createaccountmail' => "E-mail orqali maxfiy so'zni jo'natish",
'createaccountreason' => 'Sabab:',
+'createacct-captcha' => 'Xavfsizlik tekshiruvi',
+'createacct-imgcaptcha-ph' => 'Yuqoridagi yozuvni bu yerga kiriting',
+'createacct-submit' => 'Hisob yaratish',
+'createacct-benefit-heading' => '{{SITENAME}} Sizga oʻxshagan odamlar tomonidan yaratiladi',
+'createacct-benefit-body1' => 'tahrirlar soni',
+'createacct-benefit-body2' => 'maqolalar soni',
+'createacct-benefit-body3' => 'soʻnggi paytdagi ishtirokchilar soni',
'badretype' => "Siz tomondan kiritilgan maxfiy so'zlar mos kelmayapti.",
'loginerror' => 'Foydalanuvchini aniqlashda xatolik',
-'createaccounterror' => "Hisob yozuvini yaratishning iloji yo'q: $1",
+'createaccounterror' => 'Hisob yozuvi yaratishning iloji yoʻq: $1',
'loginsuccesstitle' => 'Kirish muvaffaqiyatli amalga oshdi',
'loginsuccess' => "'''{{SITENAME}}ga \"\$1\" foydalanuvchi nomi bilan kirdingiz.'''",
'nosuchusershort' => '"$1" ismli foydalanuvchi yoʻq.
Ism yozilishini tekshirib koʻring.',
'nouserspecified' => "Siz foydalanuvchining ismini ko'rsatishingiz lozim.",
-'login-userblocked' => "Bu foydalanuvchi muhosara qilingan. Tizimga kirishga ruxsat yo'q.",
+'login-userblocked' => 'Bu foydalanuvchi chetlatilgan. Tizimga kirishga ruxsat yoʻq.',
'wrongpassword' => 'Kiritgan mahfiy soʻzingiz notoʻgʻri. Iltimos, qaytadan kiritib koʻring.',
-'wrongpasswordempty' => "Iltimos, bo'sh bo'lmagan maxfiy so'z kiriting.",
-'mailmypassword' => "Elektron pochta orqali yangi maxfiy so'zni jo'natish",
+'wrongpasswordempty' => 'Maxfiy soʻz koʻrsatilmagan. Qaytadan urinib koʻring.',
+'mailmypassword' => 'Yangi maxfiy soʻzni elektron pochta orqali joʻnatish',
'passwordremindertitle' => "{{SITENAME}} uchun vaqtinchalik yangi maxfiy so'z",
'emailauthenticated' => 'Sizning elektron pochta manzilingiz $2, $3 da tasdiqlangan.',
'emailconfirmlink' => 'Sizning elektron pochta manzilingizni tasdiqlash',
'resetpass-submit-cancel' => 'Bekor',
# Special:PasswordReset
-'passwordreset-legend' => "Maxfiy so'zni yo'q qilish",
+'passwordreset' => 'Maxfiy soʻzni tashlash',
+'passwordreset-text-one' => 'Mahfiy soʻzni tashlash uchun ushbu oynalarni toʻltiring.',
+'passwordreset-legend' => 'Maxfiy soʻzni tashlash',
'passwordreset-username' => 'Foydalanuvchi nomi:',
'passwordreset-domain' => 'Domen:',
'passwordreset-email' => 'Elektron pochta manzili:',
'changeemail-header' => "Elektron pochta manzilini o'zgaritish",
'changeemail-oldemail' => 'Joriy elektron pochta manzili',
'changeemail-newemail' => 'Elektron pochtaning yangi manzili',
-'changeemail-none' => "(yo'q)",
+'changeemail-none' => '(yoʻq)',
'changeemail-submit' => "Manzilni o'zgartirish",
'changeemail-cancel' => 'Bekor',
'extlink_tip' => 'Tashqi ishorat (http:// prefiksini unutmang)',
'headline_sample' => 'Sarlavha',
'headline_tip' => '2-darajadagi sarlavha',
-'nowiki_sample' => "Bu yerga formatlash zarur bo'lmagan matnni qo'ying",
+'nowiki_sample' => 'Bu yerga formatlash zarur boʻlmagan matnni qoʻying',
'nowiki_tip' => "Viki-formatlashga e'tibor qilmaslik",
'image_tip' => 'Qoʻshilgan tasvir',
'media_tip' => 'Faylga havola',
'savearticle' => 'Saqlash',
'preview' => 'Ko‘rib chiqish',
'showpreview' => 'Ko‘rib chiqish',
-'showlivepreview' => "Tezkor ko'rib chiqish",
+'showlivepreview' => 'Tezkor koʻrib chiqish',
'showdiff' => 'O‘zgarishlarni ko‘rsatish',
'anoneditwarning' => "'''Diqqat:''' Siz tizimga kirmagansiz. Ushbu sahifa tarixida Sizning IP manzilingiz yozib qolinadi.",
'missingcommenttext' => 'Iltimos sharh qoldiring.',
-'summary-preview' => "Tavsif shunday bo'ladi:",
-'subject-preview' => "Sarlavha shunday bo'ladi:",
+'summary-preview' => 'Tavsif bunday koʻrinishda boʻladi:',
+'subject-preview' => 'Sarlavha bunday koʻrinishda boʻladi:',
'blockedtitle' => 'Foydalanuvchi chetlashtirildi',
'blockedtext' => "'''Siz (foydalanuvchi nomingiz yoki IP manzilingiz) tahrir qilishdan chetlashtirildingiz.'''
Siz «foydalanuvchiga maktub» xizmatidan foydalana olmaysiz, agarda: a) shaxsiy moslamalaringizda haqiqiy e-pochta manzilingiz koʻrsatilmagan yoki tasdiqlanmagan boʻlsa, b) chetlatish shartlarida bu xizmat toʻsilgan boʻlsa.
Sizning hozirgi IP manzilingiz - $3, chetlashtirish raqamingiz - #$5. Arizaga bularni ilova qilishingiz mumkin.",
'blockednoreason' => "sabab ko'rsatilmadi",
-'whitelistedittext' => "Siz sahifalarni o'zgartirish uchun $1.",
-'nosuchsectiontitle' => "Bo'limni topishning iloji yo'q",
-'nosuchsectiontext' => "Siz mavjud bo'lmagan bo'limni sharhlamoqchi bo'ldingiz.
-Siz sharhlamoqchi bo'lgan bo'lim o'chirilgan yoki boshqa sarlavhaga jildirilgan bo'lishi mumkin.",
+'whitelistedittext' => 'Siz sahifalarni oʻzgartirish uchun $1.',
+'nosuchsectiontitle' => 'Boʻlimni topishni iloji yoʻq',
+'nosuchsectiontext' => 'Siz mavjud boʻlmagan boʻlimni tahrirlamoqchi boʻldingiz. Ushbu boʻlim Siz bu sahifani koʻrayotgan mahalda koʻchirilgan yoki yoʻqotilgan boʻlishi mumkin.',
'loginreqtitle' => 'Shaxsiyatni aniqlash talab etiladi',
'loginreqlink' => 'Kirish',
-'loginreqpagetext' => "Boshqa sahifalarni ko'rish uchun $1",
-'accmailtitle' => "Mahfiy so'z jo'natildi.",
+'loginreqpagetext' => 'Boshqa sahifalarni koʻrish uchun $1',
+'accmailtitle' => 'Maxfiy soʻz joʻnatildi',
'newarticle' => '(Yangi)',
'newarticletext' => "Bu sahifa hali mavjud emas.
Sahifani yaratish uchun quyida matn kiritishingiz mumkin (qoʻshimcha axborot uchun [[{{MediaWiki:Helppage}}|yordam sahifasini]] koʻring).
'continue-editing' => 'tahrirlashni davom ettirish',
'editing' => '$1 tahrirlanmoqda',
'creating' => '«$1» sahifasini yaratish',
-'editingsection' => '$1 (boʻlim) tahrirlanmoqda',
+'editingsection' => '$1 tahrirlanmoqda (boʻlim)',
+'editingcomment' => '$1 tahrirlanmoqda (yangi mavzu)',
+'editconflict' => 'Tahrirlash toʻqnashuvi: $1',
'copyrightwarning' => "Iltimos, {{SITENAME}}ga yuklangan har qanday axborot $2 ostida tarqatilishiga diqqat qiling (batafsil ma'lumot uchun $1ni ko'ring).
Agar yozganlaringiz keyinchalik tahrir qilinishi va qayta tarqatilishiga rozi bo'lmasangiz, u holda bu yerga yozmang.<br />
Siz shuningdek bu yozganlaringiz sizniki yoki erkin litsenziya ostida ekanligini va'da qilmoqdasiz.
'template-protected' => '(himoyalangan)',
'template-semiprotected' => '(yarim-himoyalangan)',
'hiddencategories' => 'Ushbu sahifa {{PLURAL:$1|1 yashirin turkum|$1 yashirin turkumlar}}ga kiradi:',
-'nocreatetext' => 'Ushbu saytda yangi sahifalar yaratish taqiqlagan.
+'nocreatetext' => 'Ushbu saytda yangi sahifalar yaratish taʼqiqlagan.
Ortga qaytib, mavjud sahifani tahrirlashingiz yoki [[Special:UserLogin|tizimga kirishingiz]] mumkin.',
-'nocreate-loggedin' => "Sizda yangi sahifalar yaratishga ruxsat yo'q.",
-'sectioneditnotsupported-title' => "Bo'limlarni tahrirlash imkoniyati yo'q",
-'sectioneditnotsupported-text' => "Ushbu sahifada bo'limlarni tahrirlash imkoniyati yo'q.",
+'nocreate-loggedin' => 'Sizda yangi sahifalar yaratishga ruxsat yoʻq.',
+'sectioneditnotsupported-title' => 'Boʻlimlarni tahrirlash imkoniyati yoʻq',
+'sectioneditnotsupported-text' => 'Ushbu sahifada boʻlimlarni tahrirlash imkoniyati yoʻq.',
'permissionserrors' => 'Ruxsat huquqida xato',
'permissionserrorstext-withaction' => "Sizda quyidagi {{PLURAL:$1|sabab|sabablar}}ga koʻra '''$2'''ga ruxsat mavjud emas:",
'recreate-moveddeleted-warn' => "'''Diqqat: Siz avval yoʻqotilgan sahifani yana yaratmoqchisiz.'''
Qulaylik uchun quyida yoʻqotilish qaydlari keltirilgan:",
'moveddeleted-notice' => 'Bu sahifa oʻchirilgan.
Maʼlumot uchun quyida oʻchirish va qayta nomlash jurnallaridan mos yozuvlar keltirilgan.',
-'log-fulllog' => "Qaydlarni to'liq ko'rish",
-'edit-conflict' => "Tashrirlash to'qnashuvi.",
+'log-fulllog' => 'Qaydlarni toʻliq koʻrish',
+'edit-conflict' => 'Tahrirlash toʻqnashuvi.',
+'postedit-confirmation' => 'Tahriringiz saqlandi.',
'defaultmessagetext' => "Boshlang'ich matn",
# Parser/template warnings
'revdelete-hide-text' => 'Sahifaning ushbu versiyasi matnini yashirish',
'revdelete-radio-same' => "(o'zgartirilmasin)",
'revdelete-radio-set' => 'Ha',
-'revdelete-radio-unset' => "Yo'q",
+'revdelete-radio-unset' => 'Yoʻq',
'revdelete-log' => 'Sabab:',
'revdel-restore' => "Ko'rinuvchanlikni o'zgartirish",
'revdel-restore-deleted' => "o'chirilgan versiyalar",
'mergehistory-from' => 'Manba sahifa:',
'mergehistory-into' => "Mo'ljal sahifa:",
'mergehistory-list' => 'Birlashtiriladigan tahrirlar tarixi',
-'mergehistory-go' => "Birlashtiriladigan tahrirlarni ko'rsatish",
+'mergehistory-go' => 'Birlashtiriladigan tahrirlarni koʻrsatish',
'mergehistory-submit' => 'Tahrirlarni birlashtirish',
'mergehistory-reason' => 'Sabab:',
'difference-multipage' => '(Sahifalar orasidagi farq)',
'lineno' => 'Qator $1:',
'compareselectedversions' => 'Tanlangan versiyalarni solishtir',
-'showhideselectedversions' => "Tanlangan versiyalarni ko'rsatish/yashirish",
+'showhideselectedversions' => 'Tanlangan versiyalarni koʻrsatish/yashirish',
'editundo' => 'qaytarish',
-'diff-multi' => "({{PLURAL:$2|$2 ta foydalanuvching}} {{PLURAL:$1|$1 ta oraliq versiyasi|$1 ta oraliq versiyalari}} ko'rsatilmadi)",
+'diff-multi' => '({{PLURAL:$2|Bitta foydalanuvchining|$2 ta foydalanuvchining}} {{PLURAL:$1|bitta oraliq versiyasi|$1 ta oraliq versiyalari}} koʻrsatilmadi)',
# Search results
'searchresults' => 'Qidiruv natijalari',
'nextn' => 'keyingi {{PLURAL:$1|$1}}',
'prevn-title' => 'Avvalgi $1 {{PLURAL:$1|natija|natijalar}}',
'nextn-title' => 'Keyingi $1 {{PLURAL:$1|natija|natijalar}}',
-'shown-title' => 'Sahifada $1 ta {{PLURAL:$1|natija}} koʻrsatish',
+'shown-title' => 'Sahifada $1 ta natija koʻrsatish',
'viewprevnext' => 'Koʻrish ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-legend' => 'Qidiruv shartlari',
'searchmenu-exists' => "'''Ushbu vikida \"[[:\$1]]\" nomli sahifa mavjud.'''",
'searchmenu-new' => "'''Ushbu vikida \"[[:\$1]]\" sahifasini yarat!'''",
-'searchhelp-url' => 'Help:Mundarija',
-'searchmenu-prefix' => "[[Special:PrefixIndex/$1|Ushbu prefiks mavjud bo'lgan sahifalarni ko'rsatish]]",
+'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Shu prefiksli sahifalarni koʻrsatish]]',
'searchprofile-articles' => 'Asosiy sahifalar',
'searchprofile-project' => 'Yordam va loyiha sahifalari',
'searchprofile-images' => 'Multimedia',
'searchprofile-articles-tooltip' => '$1da qidirish',
'searchprofile-project-tooltip' => '$1da qidirish',
'searchprofile-images-tooltip' => 'Fayllarni qidir',
-'searchprofile-everything-tooltip' => "Barcha sahifalardan (munozara sahifalarini qo'shgan holda) qidirish",
+'searchprofile-everything-tooltip' => 'Barcha sahifalardan qidirish (munozara sahifalarinidan ham)',
'searchprofile-advanced-tooltip' => 'Belgilangan nomfazolardan qidirish',
'search-result-size' => '$1 ({{PLURAL:$2|1 ta soʻz|$2 ta soʻz}})',
'search-result-category-size' => "$1 {{PLURAL:$1|a'zo|a'zolar}} ($2 {{PLURAL:$2|ostturkum|ostturkumlar}}, $3 {{PLURAL:$3|fayl|fayllar}}).",
'searcheverything-enable' => 'Barcha nomfazolarda qidir',
'searchrelated' => 'bogʻlangan',
'searchall' => 'barchasi',
-'showingresults' => "Quyida №'''$2'''dan boshlab '''$1''' ta {{PLURAL:$1|natija}} ko'rsatildi.",
+'showingresults' => "Quyida №'''$2'''dan boshlab {{PLURAL:$1|'''bitta''' natija|'''$1''' ta natija}} koʻrsatilgan.",
'showingresultsnum' => "Quyida №'''$2'''dan boshlab '''$1''' ta {{PLURAL:$1|natija}} ko'rsatildi.",
'showingresultsheader' => "$4 uchun {{PLURAL:$5|'''$3'''dan '''$1''' natija|'''$3'''dan '''$1 - $2''' natijalar}}",
'search-nonefound' => 'Talabga javob beradigan natija topilmadi.',
'prefs-user-pages' => 'Foydalanuvchi sahifalari',
'prefs-personal' => 'Shaxsiy ma’lumotlar',
'prefs-rc' => 'Yangi o‘zgartirishlar',
-'prefs-watchlist' => "Kuzatuv ro'yxati",
+'prefs-watchlist' => 'Kuzatuv roʻyxati',
'prefs-watchlist-days' => 'Kunlar soni:',
'prefs-watchlist-days-max' => 'Eng ko‘pi bilan $1 {{PLURAL:$1|kun}}',
'prefs-watchlist-edits-max' => 'Eng katta son: 1000',
'searchresultshead' => 'Qidiruv',
'resultsperpage' => 'Sahifaga topilgan yozuvlar miqdori',
'stub-threshold' => '<a href="#" class="stub">Chala maqolalarga ishorat</a> keltirish uchun pastki chegara (baytlarda):',
-'stub-threshold-disabled' => "O'chirib qo'yilgan",
+'stub-threshold-disabled' => 'Oʻchirib qoʻyilgan',
'recentchangesdays' => 'Necha kunlik tahrirlar koʻrsatiladi:',
'recentchangesdays-max' => 'Eng koʻpi — $1 kun',
'recentchangescount' => 'Sukut boʻyicha koʻrsatiladigan tahrirlar soni:',
'prefs-help-gender' => 'Koʻrsatilishi majburiy emas: taʼminot xizmatining foydalanuvchi jinsiga qarab yuboradigan ayrim xabarlarida foydalaniladi.
Bu maʼlumot hammaga koʻrsatiladi.',
'email' => 'E-mail:',
-'prefs-help-realname' => "Haqiqiy ism (ixtiyoriy maydon).
-Agar siz uni ko'rsatsangiz, undan sahifa tahriri kim tomonidan kiritilganligini ko'rsatish uchun foydalaniladi.",
+'prefs-help-realname' => 'Haqiqiy ism (majburiy emas).
+Agar keltirsangiz, undan sahifa kim tomonidan tahrirlanganini koʻrsatish uchun foydalaniladi.',
'prefs-help-email' => 'Elektron pochta manzilini koʻrsatish majburiy emas, lekin u siz maxfiy soʻzni unutib qoʻysangiz kerak boʻladi.',
'prefs-help-email-others' => 'Shuningdek, u boshqa foydalanuvchilarga Siz bilan shaxsiy sahifangiz yoki munozara sahifangizdagi havola orqali bogʻlanish imkonini beradi. Bunda Siz bilan bogʻlanmoqchi boʻlgan foydalanuvchiga pochta manzilingiz koʻrsatilmaydi.',
'prefs-help-email-required' => 'E-mail manzilni koʻrsatish shart emas',
'prefs-diffs' => 'Versiyalar farqi',
# User rights
+'userrights-user-editname' => 'Foydalanuvchi nomingizni kiriting:',
'editusergroup' => 'Foydalanuvchi guruxlarni taxrirlash',
'userrights-groupsmember' => 'Aʼzolik:',
'userrights-groupsmember-auto' => "Noaniq a'zo",
'action-sendemail' => "elektron xatlar jo'natish",
# Recent changes
-'nchanges' => "$1 {{PLURAL:$1|o'zgarish|o'zgarishlar}}",
+'nchanges' => '$1 {{PLURAL:$1|oʻzgarish|oʻzgarishlar}}',
'recentchanges' => 'Yangi oʻzgarishlar',
'recentchanges-legend' => 'Yangi oʻzgarishlar moslamalari',
'recentchanges-summary' => 'Bu sahifada siz oxirgi oʻzgarishlarni koʻrishingiz mumkin',
'recentchanges-label-minor' => 'Bu kichik tahrir',
'recentchanges-label-bot' => 'Bu tahrirni bot bajardi',
'recentchanges-label-unpatrolled' => 'Bu tahrir hali tekshirilmagan',
-'rcnote' => "Quyida $4 soat $5 ga koʻra oxirgi '''$2''' kun davomida sodir boʻlgan {{PLURAL:$1|'''1''' oʻzgarish|'''$1''' oʻzgarishlar}} koʻrsatilgan.",
+'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',
-'rcshowhidebots' => '$1 ta bot',
-'rcshowhideliu' => 'Ro‘yxatdan o‘tgan foydalanuvchilar: $1 ta',
-'rcshowhideanons' => 'Anonim foydalanuvchilar: $1 ta',
+'rcshowhidebots' => 'Botlarni $1',
+'rcshowhideliu' => 'Roʻyxatdan oʻtgan foydalanuvchilarni $1',
+'rcshowhideanons' => 'Anonim foydalanuvchilarni $1',
'rcshowhidepatr' => 'Tekshirilgan tahrirlarni $1',
'rcshowhidemine' => 'Oʻz tahrirlarimni $1',
-'rclinks' => 'Oxirgi $2 kun ichida sodir boʻlgan $1 oʻzgarishlar koʻrsatildi.<br />$3',
+'rclinks' => 'Oxirgi $2 kun ichida sodir boʻlgan $1 ta oʻzgarish koʻrsatildi<br />$3',
'diff' => 'farq',
'hist' => 'tarix',
-'hide' => 'Yashir',
+'hide' => 'yashir',
'show' => 'Koʻrsat',
'minoreditletter' => 'k',
'newpageletter' => 'Y',
'recentchangeslinked-noresult' => 'Berilgan davrda bogʻlangan sahifalarda oʻzgarishlar boʻlmagan.',
'recentchangeslinked-summary' => "Ushbu maxsus sahifa unga bogʻlangan sahifalardagi soʻnggi oʻzgarishlarni koʻrsatadi. [[Special:Watchlist|Kuzatuv roʻyxatingizdagi]] sahifalar '''qalin''' qilib koʻrsatilgan.",
'recentchangeslinked-page' => 'Sahifa nomi:',
-'recentchangeslinked-to' => "Teskarisiga, ko'rsatilgan sahifaga yo'naltirilgan sahifalardagi o'zgarishlarni ko'rish",
+'recentchangeslinked-to' => 'Koʻrsatilgan sahifaga bogʻlangan sahifalardagi oʻzgarishlarni koʻrish',
# Upload
'upload' => 'Fayl yuklash',
'filehist-datetime' => 'Sana/Vaqt',
'filehist-thumb' => 'Miniatura',
'filehist-thumbtext' => '$1 dagi versiya uchun tasvir',
-'filehist-nothumb' => "Miniatura yo'q",
+'filehist-nothumb' => 'Miniatyurasi yoʻq',
'filehist-user' => 'Foydalanuvchi',
'filehist-dimensions' => 'Oʻlchamlari',
'filehist-filesize' => 'Fayl hajmi',
'allpages-hide-redirects' => 'Yoʻnaltirishlarni yashirish',
# SpecialCachedPage
-'cachedspecial-refresh-now' => "Oxirgi versiyasini ko'rish",
+'cachedspecial-refresh-now' => 'Oxirgi versiyasini koʻrish',
# Special:Categories
'categories' => 'Turkumlar',
'watchlist' => 'Kuzatuv roʻyxatim',
'mywatchlist' => 'Kuzatuv roʻyxatim',
'watchlistfor2' => '$1 uchun $2',
-'nowatchlist' => "Kuzatuv ro'yxatingizda hech narsa yo'q.",
+'nowatchlist' => 'Kuzatuv roʻyxatingizda hech nima yoʻq.',
'watchnologin' => "Siz tizimda o'zingizni tanishtirmadingiz",
'addwatch' => "Kuzatuv ro'yxatiga qo'shish",
-'addedwatchtext' => "\"[[:\$1]]\" sahifasi sizning [[Special:Watchlist|kuzatuv ro'yxatingizga]] qo'shildi. Bu sahifada va unga mos munozara sahifasida bo'ladigan kelajakdagi o'zgarishlar bu yerda ro'yxatga olinadi, hamda bu sahifa topish qulay bo'lishi uchun [[Special:RecentChanges|yangi o'zgarishlar ro'yxati]]da '''qalin''' harflar bilan ko'rsatiladi.
-
-Agar siz bu sahifani kuzatuv ro'yxatingizdan o'chirmoqchi bo'lsangiz \"Kuzatmaslik\" yozuvini bosing.",
+'addedwatchtext' => '"[[:$1]]" sahifasi sizning [[Special:Watchlist|kuzatuv roʻyxatingizga]] qoʻshildi. Bu sahifada va uning munozara sahifasida boʻladigan oʻzgarishlar u yerda koʻrsatiladi.',
'removewatch' => "Kuzatuv ro'yxatidan o'chirish",
'removedwatchtext' => '"[[:$1]]" sahifasi [[Special:Watchlist|kuzatuv roʻyxatingizdan]] oʻchirildi.',
'watch' => 'Kuzatish',
'unwatch' => 'Kuzatmaslik',
'unwatchthispage' => "Kuzatuvni to'xtatish",
'notanarticle' => 'Maqola emas',
-'watchlist-details' => "Sizning kuzatuv ro'yxatingizda $1 {{PLURAL:$1|ta sahifa}} (munozara sahifalarini hisobga olmaganda)",
+'watchlist-details' => 'Sizning kuzatuv roʻyxatingizda hozirda {{PLURAL:$1|bitta sahifa|$1ta sahifa}} mavjud (munozara sahifalarini hisobga olmaganda).',
'wlnote' => "Below {{PLURAL:$1|is the last change|are the last '''$1''' changes}} in the last {{PLURAL:$2|hour|'''$2''' hours}}, as of $3, $4.",
'wlshowlast' => 'Oxirgi $1 soatdagi $2 kundagi tahrirlarni ko‘rsatish. $3 tahrirlarni ko‘rsatish',
-'watchlist-options' => "Kuzatuv ro'yxati moslamalari",
+'watchlist-options' => 'Kuzatuv roʻyxati moslamalari',
# Displayed when you click the "watch" button and it is in the process of watching
'watching' => 'Kuzatish...',
'unwatching' => "Kuzatuv ro'yxatidan o'chirish...",
'enotif_mailer' => "{{SITENAME}} Pochta orqali e'lon qilish xizmati",
-'enotif_reset' => "Hamma sahifalarni ko'rib chiqilgan deb belgilash",
+'enotif_reset' => 'Hamma sahifalarni koʻrib chiqilgan deb belgilash',
'enotif_impersonal_salutation' => '{{SITENAME}} ishtirokchisi',
'enotif_subject_deleted' => '{{SITENAME}} loyihasining $1 nomli sahifasi foydalanuvchi {{gender:$2|$2}} tomonidan o‘chirildi',
'enotif_subject_created' => '{{SITENAME}} loyihasining $1 nomli sahifasi foydalanuvchi {{gender:$2|$2}} tomonidan yaratildi',
'enotif_body_intro_moved' => '{{SITENAME}} loyihasining $1 nomli sahifasi $PAGEEDITDATEda foydalanuvchi {{gender:$2|$2}} tomonidan qayta nomlandi, joriy variantini ko‘rish uchun $3 ga qarang.',
'enotif_body_intro_restored' => '{{SITENAME}} loyihasining $1 nomli sahifasi $PAGEEDITDATEda foydalanuvchi {{gender:$2|$2}} tomonidan tiklandi, joriy variantini ko‘rish uchun $3 ga qarang.',
'enotif_body_intro_changed' => '{{SITENAME}} loyihasining $1 nomli sahifasi $PAGEEDITDATEda foydalanuvchi {{gender:$2|$2}} tomonidan o‘zgartirildi, joriy variantini ko‘rish uchun $3 ga qarang.',
-'enotif_lastvisited' => "Oxirgi tashrifingizdan buyon sodir bo'lgan barcha o'zgarishlarni ko'rish uchun $1 ga qarang.",
-'enotif_lastdiff' => "O'zgarishlar bilan tanishish uchun $1 ga qarang.",
+'enotif_lastvisited' => 'Oxirgi tashrifingizdan keyin sodir boʻlgan barcha oʻzgarishlarni koʻrish uchun $1 ga qarang.',
+'enotif_lastdiff' => 'Oʻzgarishlar bilan tanishish uchun $1 ga qarang.',
'enotif_anon_editor' => 'anonim foydalanuvchi $1',
'enotif_body' => 'Hurmatli $WATCHINGUSERNAME,
'rollback' => 'Oʻzgarishlarni eski holiga keltirish',
'rollback_short' => 'Eski holiga keltirish',
'rollbacklink' => 'eski holiga keltirish',
-'rollbacklinkcount' => '$1 {{PLURAL:$1| ta tahrir}}ni eski holiga keltirish',
+'rollbacklinkcount' => '$1 ta tahrirni ortga qaytarish',
'rollbacklinkcount-morethan' => '$1 {{PLURAL:$1| tadan koʻp tahrir}}ni eski holiga keltirish',
'rollbackfailed' => 'Eski holiga keltirishda xatolik',
'revertpage' => '[[Special:Contributions/$2|$2]] ([[User talk:$2|munozara]]) tahrirlari [[User:$1|$1]] versiyasiga qaytarildi',
'restriction-level-all' => 'barcha darajalar',
# Undelete
-'undelete' => "O'chirilgan sahifalarni ko'rish",
-'undeletepage' => "O'chirilgan sahifalarni ko'rish va tiklash",
-'viewdeletedpage' => "O'chirilgan sahifalarni ko'rish",
+'undelete' => 'Oʻchirilgan sahifalarni koʻrish',
+'undeletepage' => 'Oʻchirilgan sahifalarni koʻrish va tiklash',
+'viewdeletedpage' => 'Oʻchirilgan sahifalarni koʻrish',
'undelete-nodiff' => 'Oldingi versiya topilmadi.',
'undeletebtn' => 'Tiklash',
'undeletelink' => 'ko‘rib chiqish/tiklash',
-'undeleteviewlink' => "ko'rib chiqish",
+'undeleteviewlink' => 'koʻrib chiqish',
'undeletereset' => 'Tozalash',
'undeleteinvert' => 'Tanlash tartibini almashtirish',
'undeletecomment' => 'Sabab:',
'undelete-search-title' => "O'chirilgan sahifalarni qidirish",
'undelete-search-box' => "O'chirilgan sahifalarni qidirish",
-'undelete-search-prefix' => "Bundan boshlangan sahifalarni ko'rsatish:",
+'undelete-search-prefix' => 'Bundan boshlangan sahifalarni koʻrsatish:',
'undelete-search-submit' => 'Qidirish',
'undelete-show-file-submit' => 'Ha',
'mycontris' => 'Hissam',
'contribsub2' => '$1 uchun ($2)',
'nocontribs' => 'Belgilangan shartlarga muvofiq oʻzgarishlar topilmadi',
-'uctop' => '(oxirgi)',
+'uctop' => '(joriy)',
'month' => 'Oydan (va avvalroq)',
'year' => 'Yildan (va avvalroq)',
'movearticle' => 'Sahifani qayta nomlash',
'movenologin' => 'Siz tizimga kirmagansiz',
'newtitle' => 'Yangi nom:',
-'move-watch' => 'Ushbu sahifani kuzatuv roʻyxatiga qoʻshish',
+'move-watch' => 'Ushbu sahifani kuzatuv roʻyxatingizga qoʻshish',
'movepagebtn' => 'Sahifani koʻchirish',
'pagemovedsub' => 'Sahifa qayta nomlandi',
'movepage-moved' => '\'\'\'"$1" nomli sahifa "$2" nomli sahifaga koʻchirildi\'\'\'',
'movetalk' => 'Mos munozara sahifasini qayta nomlash',
'movelogpage' => 'Koʻchirish qaydlari',
'movesubpage' => '{{PLURAL:$1|Ostsahifa|Ostsahifalar}}',
-'movesubpagetext' => 'Ushbu sahifada $1 {{PLURAL:$1| ta ostsahifa}} mavjud.',
+'movesubpagetext' => 'Ushbu sahifaning $1 ta ostsahifasi bor.',
'movenosubpage' => 'Bu sahifa ostsahifalarga ega emas.',
'movereason' => 'Sabab:',
'revertmove' => 'qaytarish',
'export' => 'Sahifalar eksporti',
'export-submit' => 'Eksport',
'export-addcattext' => "Shu turkumdan sahifalarni qo'shish:",
-'export-addcat' => "Qo'shish",
+'export-addcat' => 'Qoʻshish',
'export-addnstext' => "Shu nomfazodan sahifalarni qo'shish:",
'export-addns' => "Qo'shish",
'export-download' => 'Fayl sifatida saqlash',
'tooltip-pt-mytalk' => 'Suhbat sahifangiz',
'tooltip-pt-anontalk' => 'Bu ip manzildan amalga oshirilgan tahrirlar munozarasi',
'tooltip-pt-preferences' => 'Moslamalaringiz',
-'tooltip-pt-watchlist' => "Siz kuzatib borayotgan sahifalar ro'yxati.",
+'tooltip-pt-watchlist' => 'Siz kuzatib borayotgan sahifalardagi oʻzgarishlar roʻyxati',
'tooltip-pt-mycontris' => 'Hissalaringiz roʻyxati',
'tooltip-pt-login' => 'Bu majburiyat mavjud bo‘lmasa-da, kirishingiz taklif qilinadi.',
'tooltip-pt-anonlogin' => "Bu majburiyat bo'lmasada, kirishingiz taklif qilinadi.",
'tooltip-ca-delete' => 'Ushbu sahifani o‘chirish',
'tooltip-ca-undelete' => "Bu sahifa o'chirilmasdan oldin qilingan tahrirlarni tiklash",
'tooltip-ca-move' => 'Bu sahifani koʻchir',
-'tooltip-ca-watch' => "Bu sahifani kuzatuv ro'yxatingizga qo'shish",
-'tooltip-ca-unwatch' => "Bu sahifani kuzatuv ro'yxatingizga o'chirish",
+'tooltip-ca-watch' => 'Bu sahifani kuzatuv roʻyxatingizga qoʻshish',
+'tooltip-ca-unwatch' => 'Bu sahifani kuzatuv roʻyxatingizdan oʻchirish',
'tooltip-search' => '{{SITENAME}}dan qidirish',
'tooltip-search-go' => 'Xuddi shu nomli sahifa bor boʻlsa, uni och',
'tooltip-search-fulltext' => 'Sahifalarda ushbu matnni izlash',
'tooltip-n-recentchanges' => 'Wikidagi eng so‘nggi o‘zgartirishlar ro‘yxati',
'tooltip-n-randompage' => 'Tasodifiy sahifani yuklash',
'tooltip-n-help' => 'O‘rganish uchun manzil',
-'tooltip-t-whatlinkshere' => "Bu sahifaga bog'langan sahifalar ro'yxati",
-'tooltip-t-recentchangeslinked' => "Bu sahifa bog'langan sahifalardagi yangi o'zgarishlar",
+'tooltip-t-whatlinkshere' => 'Ushbu sahifaga bogʻlangan sahifalar roʻyxati',
+'tooltip-t-recentchangeslinked' => 'Bu sahifaga bogʻlangan sahifalardagi yangi oʻzgarishlar',
'tooltip-feed-rss' => "Bu sahifa uchun RSS ta'minot",
'tooltip-feed-atom' => "Bu sahifa uchun Atom ta'minot",
-'tooltip-t-contributions' => "Bu foydalanuvchinig qo'shgan hissasini ko'rish",
+'tooltip-t-contributions' => 'Bu foydalanuvchinig qoʻshgan hissasini koʻrish',
'tooltip-t-emailuser' => 'Ushbu foydalanuvchiga xat jo‘natish',
'tooltip-t-upload' => 'Rasmlar yoki media fayllar yuklash',
'tooltip-t-specialpages' => 'Maxsus sahifalar ro‘yxati',
'tooltip-ca-nstab-category' => 'Turkum sahifasini koʻrish',
'tooltip-minoredit' => 'Kichik o‘zgartirish sifatida belgilash',
'tooltip-save' => 'Oʻzgarishlarni saqlash',
-'tooltip-preview' => "O'zgarishlarni saqlash. Iltimos saqlashdan oldin uni ishlating!",
-'tooltip-diff' => "Matnga qanday o'zgarishlar kiritganligingizni ko'rish.",
-'tooltip-compareselectedversions' => "Bu sahifaning ikki tanlangan versiyalari o'rtasidagi farqni ko'rish.",
-'tooltip-watch' => 'Ushbu sahifani kuzatuv ro‘yxatingizga qo‘shish',
+'tooltip-preview' => 'Oʻzgarishlarni koʻrib chiqish; Iltimos, saqlashdan oldin undan foydalaning!',
+'tooltip-diff' => 'Matnga qanday oʻzgarishlar kiritganligingizni koʻrish.',
+'tooltip-compareselectedversions' => 'Bu sahifaning ikki tanlangan versiyalari orasidagi farqni koʻrish.',
+'tooltip-watch' => 'Ushbu sahifani kuzatuv roʻyxatingizga qoʻshish',
'tooltip-recreate' => "Bu sahifani u o'chirilgan bo'lishiga qaramasdan qayta yaratish",
'tooltip-summary' => 'Qisqa mazmun kiriting',
'size-bytes' => '$1 bayt',
# Watchlist editing tools
-'watchlisttools-view' => "Muhim o'zgarishlarni ko'rish",
+'watchlisttools-view' => 'Mos oʻzgarishlar',
'watchlisttools-edit' => 'Kuzatuv roʻyxatimni koʻrish/oʻzgartirish',
'watchlisttools-raw' => 'Kuzatuv roʻyxatimni tahrirlash',
'htmlform-selectorother-other' => 'Boshqa',
# New logging system
+'logentry-delete-delete' => '$1 $3 sahifasini {{GENDER:$2|oʻchirdi}}',
'logentry-move-move' => '$1 $3 sahifasini $4ga koʻchirdi',
+'logentry-move-move-noredirect' => '$1 $3 sahifasini $4ga {{GENDER:$2|koʻchirdi}}',
'logentry-patrol-patrol-auto' => '$1 $3 sahifasining $4 versiyasini avtomatik patrulladi',
'logentry-newusers-newusers' => '$1 hisob yozuvi yaratildi',
'logentry-newusers-create' => '$1 hisob yozuvi yaratildi',
* @author Frigotoni
* @author GatoSelvadego
* @author Kaganer
+ * @author Malafaya
+ * @author Nemo bis
* @author Nick1915
* @author Omnipaedista
* @author OrbiliusMagister
'disclaimers' => 'Avertense',
'disclaimerpage' => 'Project:Avertense xenerali',
'edithelp' => 'Guida',
-'edithelppage' => 'Help:Modifega',
'helppage' => 'Help:Ajuto',
'mainpage' => 'Pajina prinsipałe',
'mainpage-description' => 'Pajina prinsipałe',
# Special:PasswordReset
'passwordreset' => 'Rinposta ła password',
-'passwordreset-text' => 'Conpleta sto moduło par resetar la to password.',
'passwordreset-legend' => 'Rinposta ła password',
'passwordreset-disabled' => 'Ła rinpostasion deła password xe stà dixabiłità so sto projeto wiki.',
'passwordreset-emaildisabled' => 'Le funsionalità de posta eletrònega le xe stà disabilità su sta wiki.',
-'passwordreset-pretext' => '{{PLURAL:$1|| Inserisi una dełe porsion de dati cua soto}}',
'passwordreset-username' => 'Nome utente:',
'passwordreset-domain' => 'Dominio',
'passwordreset-capture' => 'Vixuałixare el contenuto del mesajo de posta ełetronega?',
'searchmenu-legend' => 'Opzion de riserca',
'searchmenu-exists' => 'Su sto sito ghe xe na pagina che se ciama "[[:$1]]"',
'searchmenu-new' => "'''Crèa la pagina \"[[:\$1]]\" su sta wiki!'''",
-'searchhelp-url' => 'Help:Ajuto',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Varda tute le pagine che taca co ste létere]]',
'searchprofile-articles' => 'Pagine de contenuti',
'searchprofile-project' => 'Pagine de progeto e de ajuto',
'saveprefs' => 'Salva le preferense',
'resetprefs' => 'Reinposta le preferense',
'restoreprefs' => 'Ripristina le inpostassion predefinìe',
-'prefs-editing' => 'Dimension de la casela de modifica',
+'prefs-editing' => 'Canbiamento',
'prefs-edit-boxsize' => 'Dimension de la finestra de modìfega.',
'rows' => 'Righe:',
'columns' => 'Cołone:',
'recentchanges-label-bot' => 'Sta modifica el la ga fata un bot',
'recentchanges-label-unpatrolled' => 'Sta modifica no la xe stà gnancora verificà',
'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.",
-'rcnotefrom' => " Qui di seguito sono elencate le modifiche da '''$2''' (fino a '''$1''').",
+'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',
'rcshowhidebots' => '$1 i bot',
'notvisiblerev' => 'La revision la xe stà scancelà',
'watchnochange' => "Nissuna pagina tegnùa d'ocio la xe stà canbià nel periodo mostrà.",
'watchlist-details' => "Te sì drio tegner d'ocio {{PLURAL:$1|una pagina (e la so pagina de discussion)|$1 pagine (e le so pagine de discussion)}}.",
-'wlheader-enotif' => '* Xe ativà la notifica via e-mail.',
-'wlheader-showupdated' => "* Le pagine che xe stà canbià da la to ultima visita le xe segnà in '''grosso'''",
+'wlheader-enotif' => 'Xe ativà la notifica via e-mail.',
+'wlheader-showupdated' => "Le pagine che xe stà canbià da la to ultima visita le xe segnà in '''grosso'''",
'watchmethod-recent' => 'controło de łe ultime modifeghe par i osservati speciałi',
'watchmethod-list' => 'controło de i osservati speciałi par modifeghe recenti',
'watchlistcontains' => 'La lista de i osservati speciałi la contien {{PLURAL:$1|una pagina|$1 pagine}}.',
'tog-shownumberswatching' => 'Ozutada niiden kävutajiden lugu, kudambad oma mülütanuded lehtpolen ičeze kaclendnimikirjutesihe',
'tog-oldsig' => 'Nügüdläine allekirjutez',
'tog-fancysig' => 'Ičeze allekirjutesen wiki-znamišt (avtomatižeta kosketuseta)',
-'tog-externaleditor' => 'Kävutada irdredaktor augotižjärgendusen mödhe (vaiše ekspertoiden täht; pidab järgeta specialižikš kompjuter; [//www.mediawiki.org/wiki/Manual:External_editors Enamb informacijad.])',
-'tog-externaldiff' => 'Kävutada irdredaktor augotižjärgendusen mödhe (vaiše ekspertoiden täht; pidab järgeta specialižikš kompjuter; [//www.mediawiki.org/wiki/Manual:External_editors Enamb informacijad.])',
'tog-showjumplinks' => 'Ližata "hüpähtada..."-abukosketused',
'tog-uselivepreview' => 'Kävutada hered ezikacund (JavaScript) (Eksperimentaline)',
'tog-forceeditsummary' => 'Varutada, kunz toižetusen ümbrikirjutandan pöud ei ole täuttud',
'disclaimers' => 'Pučind vastusenpidandaspäi',
'disclaimerpage' => 'Project:Pučind vastusenpidandaspäi',
'edithelp' => 'Abu redaktiruindas',
-'edithelppage' => 'Help:Abu redaktiruindas',
'helppage' => 'Help:südäiolend',
'mainpage' => 'Pälehtpol’',
'mainpage-description' => 'Pälehtpol’',
'searchmenu-legend' => 'Ecindan järgendused',
'searchmenu-exists' => "'''Neciš Wikiš om jo lehtpol' ningoižen nimenke: \"[[:\$1]]\"'''",
'searchmenu-new' => "'''Säta lehtpol' \"[[:\$1]]\" neciš Wikiš!'''",
-'searchhelp-url' => 'Help:Südäiolend',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ozutada kaik lehtpoled necen prefiksanke]]',
'searchprofile-articles' => 'Südäimištlehtpoled',
'searchprofile-project' => 'Abun da projektoiden lehtpoled',
Tö voit nügüd' ectä Google'n turbiš.
Otkat sil'mnägubale üks-se, miše {{SITENAME}}-saitan sädäimišt voib olda vanhtunuden.",
-# Quickbar
-'qbsettings' => "Navigacijan panel'",
-'qbsettings-none' => 'Ala ozuta',
-'qbsettings-fixedleft' => 'Likumatoi huralpäi',
-'qbsettings-fixedright' => 'Likumatoi oiktalpäi',
-'qbsettings-floatingleft' => 'Ujui huralpäi',
-'qbsettings-floatingright' => 'Ujui oiktalpäi',
-
# Preferences page
'preferences' => 'Järgendused',
'mypreferences' => 'Järgendused',
'http-read-error' => "HTTP'd lugemižen petuz.",
'http-timed-out' => 'HTTP-he küzelendan aig om lopnus.',
'http-curl-error' => "Petuz URL'ad ecmäs: $1",
-'http-host-unreachable' => 'Ei voi säta sidod URL:anke',
# Some likely curl errors. More could be added from <http://curl.haxx.se/libcurl/c/libcurl-errors.html>
'upload-curl-error6' => 'Ei voi säta sidod URL:anke',
'notanarticle' => "Nece ei ole lehtpol'",
'notvisiblerev' => 'Versijad oma čutud',
'watchlist-details' => "Teiden kaclendnimikirjuteses om {{PLURAL:$1|$1 lehtpol'|$1 lehtpol't}}. Lodulehtpoled ei olgoi neciš lugus.",
-'wlheader-enotif' => '* Tedotand e-počtadme om kävutamas.',
+'wlheader-enotif' => 'Tedotand e-počtadme om kävutamas.',
'watchmethod-recent' => 'ozutadas kaceltud lehtpoliden tantoižed toižetused',
'watchmethod-list' => 'kaceltud lehtpoliden kodvind tantoižid toižetusid ectes',
'watchlistcontains' => "Teiden kaclendnimikirjuteses om $1 {{PLURAL:$1|lehtpol'|lehtpol't}}.",
'pageinfo-authors' => 'Erazvuiččiden avtoroiden lugu',
# Skin names
-'skinname-standard' => 'Klassine',
-'skinname-nostalgia' => "Nostal'gii",
'skinname-cologneblue' => "Köl'nan sinine",
'skinname-monobook' => 'MonoBook',
-'skinname-myskin' => 'Ičeze',
-'skinname-chick' => 'Cipuine',
-'skinname-simple' => 'Koveritoi',
'skinname-modern' => "Nügüd'aigaine",
# Patrolling
/*
Short names for language variants used for language conversion links.
-To disable showing a particular link, set it to 'disable', e.g.
-'variantname-zh-sg' => 'disable',
Variants for Chinese language
*/
'variantname-zh-hans' => 'hans',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Leveduz',
'exif-imagelength' => 'Korktuz’',
'exif-bitspersample' => 'Mujun süvuz',
'exif-label' => 'Arbaine',
'exif-pngfilecomment' => 'Kommentarii PNG-failha',
-# EXIF attributes
+# Exif attributes
'exif-compression-1' => 'Ahtištamatoi',
'exif-unknowndate' => 'Tundmatoi dat',
'version-software-version' => 'Versii',
'version-entrypoints-header-url' => 'URL',
-# Special:FilePath
-'filepath' => 'Te failannoks',
-'filepath-page' => 'Fail:',
-'filepath-submit' => 'Te',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Ectä kaksitadud failad',
'fileduplicatesearch-summary' => 'Ühtejiččiden failoiden ecmine niiden heš-kodan mödhe.',
'tog-watchmoves' => 'Tự động theo dõi các trang và tập tin tôi di chuyển',
'tog-watchdeletion' => 'Tự động theo dõi các trang và tập tin tôi xóa',
'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 thử nằm trên hộp sửa đổi',
-'tog-previewonfirst' => 'Hiện xem thử tại lần sửa đầu tiên',
+'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-oldsig' => 'Chữ ký hiện tại:',
'tog-fancysig' => 'Xem chữ ký là mã wiki (không có liên kết tự động)',
'tog-showjumplinks' => 'Bật liên kết “bước tới” trên đầu trang cho bộ trình duyệt thuần văn bản hay âm thanh',
-'tog-uselivepreview' => 'Xem thử trực tiếp (JavaScript; chưa ổn định)',
+'tog-uselivepreview' => 'Xem trước trực tiếp (JavaScript; chưa ổn định)',
'tog-forceeditsummary' => 'Nhắc tôi khi tôi quên tóm lược sửa đổi',
'tog-watchlisthideown' => 'Ẩn các sửa đổi của tôi khỏi danh sách theo dõi',
'tog-watchlisthidebots' => 'Ẩn các sửa đổi của robot khỏi danh sách theo dõi',
'oct' => 'tháng 10',
'nov' => 'tháng 11',
'dec' => 'tháng 12',
+'january-date' => '$1 tháng 1',
+'february-date' => '$1 tháng 2',
+'march-date' => '$1 tháng 3',
+'april-date' => '$1 tháng 4',
+'may-date' => '$1 tháng 5',
+'june-date' => '$1 tháng 6',
+'july-date' => '$1 tháng 7',
+'august-date' => '$1 tháng 8',
+'september-date' => '$1 tháng 9',
+'october-date' => '$1 tháng 10',
+'november-date' => '$1 tháng 11',
+'december-date' => '$1 tháng 12',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Thể loại|Thể loại}}',
'create-this-page' => 'Tạo trang này',
'delete' => 'Xóa',
'deletethispage' => 'Xóa trang này',
+'undeletethispage' => 'Phục hồi trang này',
'undelete_short' => 'Phục hồi {{PLURAL:$1|một sửa đổi|$1 sửa đổi}}',
'viewdeleted_short' => 'Xem {{PLURAL:$1|sửa đổi|$1 sửa đổi}} đã xóa',
'protect' => 'Khóa',
'disclaimers' => 'Phủ nhận',
'disclaimerpage' => 'Project:Phủ nhận chung',
'edithelp' => 'Trợ giúp sửa đổi',
-'edithelppage' => 'Help:Sửa đổi',
'helppage' => 'Help:Nội dung',
'mainpage' => 'Trang Chính',
'mainpage-description' => 'Trang Chính',
'namespaceprotected' => "Bạn không có quyền sửa các trang trong không gian tên '''$1'''.",
'customcssprotected' => 'Bạn không có quyền sửa đổi trang CSS này vì nó chứa các tùy chọn cá nhân của một thành viên khác.',
'customjsprotected' => 'Bạn không có quyền sửa đổi trang JavaScript này vì nó chứa các tùy chọn cá nhân của một thành viên khác.',
+'mycustomcssprotected' => 'Bạn không có quyền sửa đổi trang CSS này.',
+'mycustomjsprotected' => 'Bạn không có quyền sửa đổi trang JavaScript này.',
'ns-specialprotected' => 'Không thể sửa chữa các trang trong không gian tên {{ns:special}}.',
'titleprotected' => "Tựa đề này đã bị [[User:$1|$1]] khóa không cho tạo ra.
Lý do được cung cấp là ''$2''.",
'cannotchangeemail' => 'Không có thể thay đổi địa chỉ thư điện tử của các tài khoản trên wiki này.',
'emaildisabled' => 'Website này không thể gửi thư điện tử.',
'accountcreated' => 'Mở tài khoản thành công',
-'accountcreatedtext' => 'Tài khoản thành viên cho $1 đã được mở.',
+'accountcreatedtext' => 'Tài khoản thành viên cho [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|thảo luận]]) đã được mở.',
'createaccount-title' => 'Tài khoản mới tại {{SITENAME}}',
'createaccount-text' => 'Ai đó đã tạo một tài khoản với tên $2 tại {{SITENAME}} ($4). Mật khẩu của "$2" là "$3". Bạn nên đăng nhập và đổi mật khẩu ngay bây giờ.
# Special:PasswordReset
'passwordreset' => 'Tái tạo mật khẩu',
-'passwordreset-text' => 'Hãy điền mẫu đơn này để tái tạo mật khẩu.',
+'passwordreset-text-one' => 'Hãy điền mẫu đơn này để tái tạo mật khẩu.',
+'passwordreset-text-many' => '{{PLURAL:$1|Nhập một trong những chi tiết sau để táo tạo mật khẩu.}}',
'passwordreset-legend' => 'Tái tạo mật khẩu',
'passwordreset-disabled' => 'Chức năng tái tạo mật khẩu đã bị tắt trên wiki này.',
'passwordreset-emaildisabled' => 'Tính năng gửi thư điện tử không được kích hoạt trên wiki này.',
-'passwordreset-pretext' => '{{PLURAL:$1||Nhập một trong những thông tin được yêu cầu ở dưới}}',
'passwordreset-username' => 'Tên người dùng:',
'passwordreset-domain' => 'Tên miền:',
'passwordreset-capture' => 'Xem thư điện tử có mật khẩu tạm',
'watchthis' => 'Theo dõi trang này',
'savearticle' => 'Lưu trang',
'preview' => 'Xem trước',
-'showpreview' => 'Xem thử',
-'showlivepreview' => 'Xem thử nhanh',
+'showpreview' => 'Xem trước',
+'showlivepreview' => 'Xem trước nhanh',
'showdiff' => 'Xem thay đổi',
'anoneditwarning' => "'''Cảnh báo:''' Bạn chưa đăng nhập. Địa chỉ IP của bạn sẽ được ghi lại trong lịch sử sửa đổi của trang.",
'anonpreviewwarning' => "''Bạn chưa đăng nhập. Khi lưu trang này, địa chỉ IP của bạn sẽ được ghi vào lịch sử trang.''",
'usercsspreview' => "'''Hãy nhớ rằng bạn chỉ đang xem thử trang CSS cá nhân của bạn.
Nó chưa được lưu!'''",
'userjspreview' => "'''Nhớ rằng bạn chỉ đang kiểm thử/xem thử trang JavaScript, nó chưa được lưu!'''",
-'sitecsspreview' => "'''Nhớ rằng bạn chỉ đang xem thử bản CSS này.'''
+'sitecsspreview' => "'''Nhớ rằng bạn chỉ đang xem trước bản CSS này.'''
'''Nó chưa được lưu!'''",
-'sitejspreview' => "'''Nhớ rằng bạn chỉ đang kiểm thử/xem thử bản JavaScript này.
+'sitejspreview' => "'''Nhớ rằng bạn chỉ đang xem trước bản JavaScript này.
'''Nó chưa được lưu!'''",
'userinvalidcssjstitle' => "'''Cảnh báo:''' Không có skin “$1”. Hãy nhớ rằng các trang .css và .js tùy chỉnh sử dụng tiêu đề chữ thường, như {{ns:user}}:Ví dụ/vector.css chứ không phải {{ns:user}}:Ví dụ/Vector.css.",
'updated' => '(Cập nhật)',
'note' => "'''Ghi chú:'''",
-'previewnote' => "'''Đây chỉ mới là xem thử.'''
+'previewnote' => "'''Đây chỉ mới là bản xem trước.'''
Các thay đổi của bạn vẫn chưa được lưu!",
'continue-editing' => 'Đi đến hộp sửa đổi',
'previewconflict' => 'Phần xem thử này là kết quả của văn bản trong vùng soạn thảo phía trên và nó sẽ xuất hiện như vậy nếu bạn chọn lưu trang.',
Dường như trang này đã bị xóa.',
'edit-conflict' => 'Sửa đổi mâu thuẫn.',
'edit-no-change' => 'Sửa đổi của bạn không được tính đến, vì nó không làm thay đổi nội dung.',
+'postedit-confirmation' => 'Sửa đổi của bạn đã được lưu.',
'edit-already-exists' => 'Không thể tạo trang mới.
Nó đã tồn tại.',
'defaultmessagetext' => 'Nội dung mặc định',
'invalid-content-data' => 'Dữ liệu nội dung không hợp lệ',
'content-not-allowed-here' => 'Không cho phép đưa nội dung “$1” vào trang [[$2]]',
'editwarning-warning' => 'Rời khỏi trang này sẽ khiến bạn mất các sửa đổi đã thực hiện.
-Nếu đã đăng nhập, bạn có thể tắt cảnh báo này tại mục “{{int:prefs-editing}}” trong tùy chọn cá nhân.',
+Nếu đã đăng nhập, bạn có thể tắt cảnh báo này tại mục “Sửa đổi” trong tùy chọn cá nhân.',
# Content models
'content-model-wikitext' => 'mã wiki',
'searchmenu-legend' => 'Tùy chọn tìm kiếm',
'searchmenu-exists' => "* Trang '''[[$1]]'''",
'searchmenu-new' => "'''Tạo trang “[[:$1]]” trên wiki này!'''",
-'searchhelp-url' => 'Help:Nội dung',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Duyệt các trang với tiền tố này]]',
'searchprofile-articles' => 'Trang nội dung',
'searchprofile-project' => 'Trang trợ giúp và trang dự án',
'prefsnologintext' => 'Bạn phải <span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} đăng nhập]</span> để thiết lập tùy chọn cá nhân.',
'changepassword' => 'Đổi mật khẩu',
'prefs-skin' => 'Hình dạng',
-'skin-preview' => 'Xem thử',
+'skin-preview' => 'Xem trước',
'datedefault' => 'Không quan tâm',
'prefs-beta' => 'Tính năng beta',
'prefs-datetime' => 'Ngày tháng',
'userrights-changeable-col' => 'Những nhóm bạn có thể thay đổi',
'userrights-unchangeable-col' => 'Những nhóm bạn không thể thay đổi',
'userrights-conflict' => 'Mâu thuẫn thay đổi sửa nhóm thành viên! Xin vui lòng áp dụng các thay đổi của bạn một lần nữa.',
+'userrights-removed-self' => 'Bạn đã loại bỏ quyền của chính mình nên không còn truy cập được trang này.',
# Groups
'group' => 'Nhóm:',
'right-editinterface' => 'Sửa giao diện người dùng',
'right-editusercssjs' => 'Sửa tập tin CSS và JS của người dùng khác',
'right-editusercss' => 'Sửa tập tin CSS của người dùng khác',
-'right-edituserjs' => 'Sửa tập tin JS của người dùng khác',
+'right-edituserjs' => 'Sửa đổi tập tin JavaScript của người dùng khác',
+'right-editmyusercss' => 'Sửa đổi tập tin CSS cá nhân của mình',
+'right-editmyuserjs' => 'Sửa đổi tập tin JavaScript cá nhân của mình',
+'right-viewmywatchlist' => 'Xem danh sách theo dõi của mình',
+'right-editmywatchlist' => 'Sửa đổi danh sách theo dõi của mình – một số tác vụ có thể thêm trang vào danh sách bất chấp quyền này',
'right-rollback' => 'Nhanh chóng lùi tất cả sửa đổi của người dùng cuối cùng sửa đổi trang nào đó',
'right-markbotedits' => 'Đánh dấu sửa đổi phục hồi là sửa đổi bot',
'right-noratelimit' => 'Không bị ảnh hưởng bởi mức giới hạn tần suất sử dụng',
'action-userrights-interwiki' => 'sửa đổi quyền của người dùng tại wiki khác',
'action-siteadmin' => 'khóa hoặc mở khóa cơ sở dữ liệu',
'action-sendemail' => 'gửi thư điện tử',
+'action-editmywatchlist' => 'sửa đổi danh sách theo dõi của mình',
+'action-viewmywatchlist' => 'xem danh sách theo dõi của mình',
# Recent changes
'nchanges' => '$1 {{PLURAL:$1|thay đổi|thay đổi}}',
'notvisiblerev' => 'Phiên bản bị xóa',
'watchnochange' => 'Không có trang nào bạn theo dõi được sửa đổi.',
'watchlist-details' => 'Bạn đang theo dõi {{PLURAL:$1|$1 trang|$1 trang}}, không kể các trang thảo luận.',
-'wlheader-enotif' => '* Đã bật thông báo qua thư điện tử.',
-'wlheader-showupdated' => "* Các trang đã thay đổi từ lần cuối bạn xem chúng được in '''đậm'''",
+'wlheader-enotif' => 'Đã bật thông báo qua thư điện tử.',
+'wlheader-showupdated' => "Các trang đã thay đổi kể từ lần cuối bạn xem chúng được in '''đậm'''",
'watchmethod-recent' => 'Dưới đây hiện thay đổi mới với các trang theo dõi.',
'watchmethod-list' => 'Dưới đây hiện danh sách các trang theo dõi.',
'watchlistcontains' => 'Danh sách theo dõi của bạn có $1 {{PLURAL:$1|trang|trang}}.',
'mycontris' => 'Đóng góp',
'contribsub2' => 'Của $1 ($2)',
'nocontribs' => 'Không tìm thấy thay đổi nào khớp với yêu cầu.',
-'uctop' => '(mới nhất)',
+'uctop' => '(hiện tại)',
'month' => 'Từ tháng (trở về trước):',
'year' => 'Từ năm (trở về trước):',
'thumbnail-more' => 'Phóng lớn',
'filemissing' => 'Không có tập tin',
'thumbnail_error' => 'Hình thu nhỏ có lỗi: $1',
+'thumbnail_error_remote' => 'Thông báo lỗi từ $1:
+$2',
'djvu_page_error' => 'Trang DjVu quá xa',
'djvu_no_xml' => 'Không thể truy xuất XML cho tập tin DjVu',
'thumbnail-temp-create' => 'Không thể tạo tập tin hình nhỏ tạm thời',
'modern.css' => '/* Mã CSS tại đây sẽ ảnh hưởng đến những người dùng sử dụng hình dạng Hiện đại */',
'vector.css' => '/* Mã CSS đặt ở đây sẽ ảnh hưởng đến thành viên sử dụng hình dạng Vectơ */',
'print.css' => '/* Mã CSS tại đây sẽ ảnh hưởng đến bản để in */',
-'handheld.css' => '/* Mã CSS tại đây sẽ ảnh hưởng đến các thiết bị cầm tay dựa trên hình dạng cấu hình trong $wgHandheldStyle */',
'noscript.css' => '/* Mã CSS tại đây sẽ ảnh hưởng đến những người dùng tắt JavaScript */',
'group-autoconfirmed.css' => '/* Mã CSS tại đây sẽ chỉ ảnh hưởng đến các thành viên tự động xác nhận */',
'group-bot.css' => '/* Mã CSS tại đây sẽ chỉ ảnh hưởng đến các bot */',
'svg-long-desc-animated' => 'tập tin hình động SVG, $1×$2 điểm ảnh trên danh nghĩa, kích thước: $3',
'svg-long-error' => 'Tập tin SVG có lỗi: $1',
'show-big-image' => 'Độ phân giải tối đa',
-'show-big-image-preview' => 'Kích thước của ảnh xem thử: $1.',
+'show-big-image-preview' => 'Kích thước của hình xem trước: $1.',
'show-big-image-other' => '{{PLURAL:$2|Độ phân giải|Các độ phân giải}} khác: $1.',
'show-big-image-size' => '$1×$2 điểm ảnh',
'file-info-gif-looped' => 'có lặp',
# Live preview
'livepreview-loading' => 'Đang tải…',
'livepreview-ready' => 'Đang tải… Xong!',
-'livepreview-failed' => 'Không thể xem thử trực tiếp! Hãy dùng thử chế độ xem thử thông thường.',
+'livepreview-failed' => 'Không thể xem trước trực tiếp! Hãy dùng thử chế độ xem trước thông thường.',
'livepreview-error' => 'Không thể kết nối: $1 “$2”. Hãy dùng thử chế độ xem thử thông thường.',
# Friendlier slave lag warnings
'disclaimers' => 'Imbräsum',
'disclaimerpage' => 'Project:Imbräsum',
'edithelp' => 'Hilfe dsum beärbâdn',
-'edithelppage' => 'Help:Beärbâdn',
'helppage' => 'Help:Inhalds-fârdsajchnis',
'mainpage' => 'Haubdsajdn',
'mainpage-description' => 'Haubdsajdn',
'modern.css' => "/* CSS hiir beâjflusd nôr dii Modern-schelfn. Wen'd ale uf ôômôôl beâjflusn wilsch, muâsch an MediaWiki:Common.css was ändârn. */",
'vector.css' => "/* CSS hiir beâjflusd nôr dii Vector-schelfn. Wen'd ale uf ôômôôl beâjflusn wilsch, muâsch an MediaWiki:Common.css was ändârn. */",
'print.css' => '/* CSS hiir beâjflusd nôr dii drugausgaawe. */',
-'handheld.css' => '/* CSS hiir beâjflusd nôr dii handgerääde, jee nachdeem, welche schelfn in $wgHandheldStyle âjgeschdeld is. */',
# Scripts
'common.js' => '/* Des folchende JavaScript wird fir ale benudsâr glôôdn un fir ale sajdn, dii se ôôgugn. */',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'brajdn',
'exif-imagelength' => 'Heen',
* @ingroup Language
* @file
*
+ * @author Geitost
* @author Iketsi
* @author Kaganer
* @author Malafaya
'tog-hidepatrolled' => 'Klänedön redakamis pezepöl in lised votükamas nulik.',
'tog-newpageshidepatrolled' => 'Klänedön padis pezepöl in lised padas nulik',
'tog-extendwatchlist' => 'Stäänükön galädalisedi ad jonön votükamis tefik valik, e no te nulikünos',
-'tog-usenewrc' => 'Gebön votükamis nulik patik (me JavaScript)',
+'tog-usenewrc' => 'Grupön votükamis pado in votukäms nulik e galädalised (me JavaScript)',
'tog-numberheadings' => 'Givön itjäfidiko nümis dilädatiädes',
'tog-showtoolbar' => 'Jonön redakamastumemi (JavaScript)',
'tog-editondblclick' => 'Dälön redakön padis pö drän telik mugaknopa (JavaScript)',
'tog-editsectiononrightclick' => 'Dälön redakami diläda me klik mugaknopa detik su dilädatiäds (JavaScript)',
'tog-showtoc' => 'Jonön ninädalisedi (su pads labü diläds plu 3)',
'tog-rememberpassword' => 'Dakipolös nunädamanünis obik in bevüresodatävöm at (muiko {{PLURAL:$1|del|dels}} $1)',
-'tog-watchcreations' => 'Läükön padis fa ob pejafölis lä galädalised obik',
-'tog-watchdefault' => 'Läükön padis fa ob peredakölis la galädalised obik',
-'tog-watchmoves' => 'Läükön padis fa ob petopätükölis lä galädalised obik',
-'tog-watchdeletion' => 'Läükön padis fa ob pemoükölis lä galädalised obik',
+'tog-watchcreations' => 'Läükön padis fa ob pejafölis e ragivis fa ob pelöpükölis lä galädalised obik',
+'tog-watchdefault' => 'Läükön padis e ragivis fa ob peredakölis la galädalised obik',
+'tog-watchmoves' => 'Läükön padis e ragivis fa ob petopätükölis lä galädalised obik',
+'tog-watchdeletion' => 'Läükön padis e ragivis fa ob pemoükölis lä galädalised obik',
'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 se galädalised obik',
+'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ö padavotükams pülik',
+'tog-enotifminoredits' => 'Sedön obe penedi leäktronik igo pö votükams pülik padas e ragivas',
'tog-enotifrevealaddr' => 'Jonön ladeti leäktronik oba in nunapeneds.',
'tog-shownumberswatching' => 'Jonön numi gebanas galädöl',
'tog-oldsig' => 'Dispenäd dabinöl:',
'oct' => 'tob',
'nov' => 'nov',
'dec' => 'dek',
+'january-date' => 'yanul $1',
+'february-date' => 'febul $1',
+'march-date' => 'mäzul $1',
+'april-date' => 'prilul $1',
+'may-date' => 'mayul $1',
+'june-date' => 'yunul $1',
+'july-date' => 'yulul $1',
+'august-date' => 'gustul $1',
+'september-date' => 'setul $1',
+'october-date' => 'tobul $1',
+'november-date' => 'novul $1',
+'december-date' => 'dekul $1',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Klad|Klads}}',
'category-file-count' => '{{PLURAL:$2|Klad at labon te ragivi sököl.|{{PLURAL:$1|Ragiv sököl binon |Ragivs sököl $1 binons}} in klad at, se $2.}}',
'category-file-count-limited' => '{{PLURAL:$1|Ragiv sököl binon|Ragivs sököl $1 binons}} in klad at.',
'listingcontinuesabbrev' => '(fov.)',
+'index-category' => 'Pads mafädanumöls',
+'noindex-category' => 'Pads nemafädanumöls',
'about' => 'Tefü',
'article' => 'Ninädapad',
'create-this-page' => 'Jafön padi at',
'delete' => 'Moükön',
'deletethispage' => 'Moükolös padi at',
+'undeletethispage' => 'Sämoükön padi at',
'undelete_short' => 'Sädunön moükami {{PLURAL:$1|redakama bal|redakamas $1}}',
'viewdeleted_short' => 'Logön {{PLURAL:$1|redakami pemoüköl bal|redakamis pemoüköls $1}}',
'protect' => 'Jelön',
'disclaimers' => 'Nuneds',
'disclaimerpage' => 'Project:Gididimiedükam valemik',
'edithelp' => 'Redakamayuf',
-'edithelppage' => 'Help:Redakam',
'helppage' => 'Help:Ninäd',
'mainpage' => 'Cifapad',
'mainpage-description' => 'Cifapad',
'youhavenewmessagesfromusers' => 'Labol $1 de {{PLURAL:$3|geban votik|gebans $3}} ($2).',
'youhavenewmessagesmanyusers' => 'Labol $1 de gebans mödik ($2).',
'newmessageslinkplural' => '{{PLURAL:$1|nuni nulik|nunis nulik}}',
+'newmessagesdifflinkplural' => '{{PLURAL:$1|votükam|votükams}} lätik',
'youhavenewmessagesmulti' => 'Labol nunis nulik su $1',
'editsection' => 'redakön',
'editold' => 'redakön',
'badarticleerror' => 'Dun at no kanon paledunön su pad at.',
'cannotdelete' => 'No emögos ad moükön padi u ragivi: "$1".
Ba ya pemoükon fa geban votik.',
+'cannotdelete-title' => 'No kanoy moükön padi: "$1"',
'badtitle' => 'Tiäd badik',
'badtitletext' => 'Padatiäd peflagöl äbinon nelonöfik, vägik, u ba yüm bevüpükik u bevüvükik dädik. Mögos, das ninädon malati(s), kel(s) no dalon(s) pagebön ad jafön tiädis.',
'perfcached' => 'Nüns sököl ekömons se el caché e ba no binons anuik. A maximum of {{PLURAL:$1|one result is|$1 results are}} available in the cache.',
Dun: $1<br />
Beg: $2',
'viewsource' => 'Logön fonäti',
+'viewsource-title' => 'Logön fonäti pada: "$1"',
'actionthrottled' => 'Dun pemiedükon',
'actionthrottledtext' => 'Ad tadunön reklamami itjäfidik (el „spam“), dunot at no padälon tu suvo dü brefüp. Ya erivol miedi gretikün. Steifülolös nogna pos minuts anik.',
'protectedpagetext' => 'Pad at pejelon ad neletön redakami.',
'viewsourcetext' => 'Kanol logön e kopiedön fonätakoti pada at:',
'protectedinterface' => 'Pad at jafon vödemis sitanünas, ed anu pelökofärmükon ad vitön migebis.',
-'editinginterface' => "'''Nuned:''' Anu redakol padi, kel labükon vödemis bevüik pro programem.
+'editinginterface' => "'''Nuned:''' redakol padi, kel labükon vödemis bevüik pro programem.
Votükams pada at oflunons logoti gebanasita pro gebans votik.
-Ad tradutön vödemis, demolös gebi ela [//translatewiki.net/wiki/Main_Page?setlang=vo translatewiki.net]: topükamaproyeg ela MediaWiki.",
+Ad läükön u votükön tradutodis pro els wiki valik, demolös gebi ela [//translatewiki.net/?setlang=vo translatewiki.net]: topükamaproyeg ela MediaWiki.",
'sqlhidden' => '(SQL beg peklänedon)',
'cascadeprotected' => 'Pad at pejelon ta redakam, bi pakeninükon fa {{PLURAL:$1|pad|pads}} sököl, kels pejelons ma „jänajel“: $2',
'namespaceprotected' => "No dalol redakön padis in nemaspad: '''$1'''.",
'ns-specialprotected' => 'Pads patik no kanons paredakön.',
'titleprotected' => "Jaf tiäda at penemögükon fa geban: [[User:$1|$1]].
Kod binon: ''$2''.",
+'exception-nologin' => 'No enunädol oli',
# Virus scanner
'virus-badscanner' => "Parametem badik: program tavirudik nesevädik: ''$1''",
Kanol laigebön {{SITENAME}} nennemiko, u kanol <span class='plainlinks'>[$1 nunädön oli dönu]</span> me gebananem ot u gebenanem votik.
Küpälolös, das pads anik ba nog pojenons äsva no esenunädol oli, jüs uklinükol memi no laidüpik bevüresodanaföma olik.",
+'welcomeuser' => 'Benokömö, o $1!',
'yourname' => 'Gebananem:',
+'userlogin-yourname' => 'Gebananem',
+'userlogin-yourname-ph' => 'Penolös gebananemi olik',
'yourpassword' => 'Letavöd:',
+'userlogin-yourpassword' => 'Letavöd',
+'userlogin-yourpassword-ph' => 'Penolös letavödi olik',
+'createacct-yourpassword-ph' => 'Penolös letavödi',
'yourpasswordagain' => 'Klavolös dönu letavödi:',
+'createacct-yourpasswordagain' => 'Fümedolös letavödi',
+'createacct-yourpasswordagain-ph' => 'Penolös letavödi dönu',
'remembermypassword' => 'Dakipolöd ninädamanünis obik in nünöm at (muiko {{PLURAL:$1|del|dels}} $1)',
'yourdomainname' => 'Domen olik:',
+'password-change-forbidden' => 'No kanol votükön letavödis su el wiki at.',
'externaldberror' => 'U ejenon fümükamapöl plödik nünödema, u no dalol atimükön kali plödik ola.',
'login' => 'Nunädolös obi',
'nav-login-createaccount' => 'Nunädön oki / jafön kali',
'logout' => 'Senunädön oki',
'userlogout' => 'Senunädön oki',
'notloggedin' => 'No enunädol oli',
-'nologin' => "No labol-li kali? '''$1'''.",
+'userlogin-noaccount' => 'No labol-li kali?',
+'userlogin-joinproject' => 'Sogolös oki lä {{SITENAME}}',
+'nologin' => 'No labol-li kali? $1.',
'nologinlink' => 'Jafolös bali',
'createaccount' => 'Jafön kali',
'gotaccount' => "Ya labol-li kali? '''$1'''.",
'gotaccountlink' => 'Nunädolös obi',
+'userlogin-resetlink' => 'Eglömol-li nünis kala olik?',
'createaccountmail' => 'me pot leäktronik',
'createaccountreason' => 'Kod:',
+'createacct-reason' => 'Kod',
+'createacct-submit' => 'Jafön kali olik',
+'createacct-benefit-body1' => '{{PLURAL:$1|redakam|redakams}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|pad|pads}}',
'badretype' => 'Letavöds fa ol pepenöls no leigons.',
'userexists' => 'Gebananem at ya pagebon.
Välolös, begö! nemi votik.',
'passwordreset' => 'Dönuvälön letavödi',
'passwordreset-legend' => 'Dönuvälön letavödi',
'passwordreset-username' => 'Gebananem:',
+'passwordreset-domain' => 'Domen:',
'passwordreset-email' => 'Ladet leäktronik:',
# Special:ChangeEmail
+'changeemail' => 'Votükön ladeti leäktronik',
+'changeemail-header' => 'Votükön ladeti leäktronik kala',
+'changeemail-oldemail' => 'Ladet leäktronik anuik:',
+'changeemail-newemail' => 'Ladet leäktronik nulik:',
'changeemail-none' => '(nonik)',
+'changeemail-password' => 'Letavöd olik su {{SITENAME}}:',
+'changeemail-submit' => 'Votükön ladeti leäktronik',
'changeemail-cancel' => 'Stöpädön',
# Edit page toolbar
'nosuchsectiontitle' => 'Diläd no petuvöl',
'nosuchsectiontext' => 'Esteifülol ad redakön dilädi no dabinöli.',
'loginreqtitle' => 'Nunädam Paflagon',
-'loginreqlink' => 'ninädolös obi',
+'loginreqlink' => 'nunädolös obi',
'loginreqpagetext' => 'Mutol $1 ad logön padis votik.',
'accmailtitle' => 'Letavöd pesedon.',
'accmailtext' => "Letavöd fädik pro [[User talk:$1|$1]] pasedon lü $2.
'anontalkpagetext' => "----''Bespikapad at duton lü geban nennemik, kel no nog ejafon kali, u no vilon labön u gebön oni. Sekü atos pemütobs ad gebön ladeti-IP ad dientifükön gebani at. Ladets-IP kanons pagebön fa gebans difik. If binol geban nennemik e cedol, das küpets netefik pelüodükons ole, [[Special:UserLogin|jafolös, begö! kali]], u [[Special:UserLogin|nunädolös oli]] ad vitön kofudi ko gebans nennemik votik.''",
'noarticletext' => 'Atimo no dabinon vödem su pad at.
Kanol [[Special:Search/{{PAGENAME}}|sukön padatiädi at]] su pads votik, <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} sukön in jenotaliseds tefik] u [{{fullurl:{{FULLPAGENAME}}|action=edit}} redakön padi at]</span>.',
+'noarticletext-nopermission' => 'Atimo no dabinon vödem su pad at.
+Kanol [[Special:Search/{{PAGENAME}}|sukön padatiädi at]] su pads votik u <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} sukön in jenotaliseds tefik], ab no labol gitätis ad jafön padi at.',
'userpage-userdoesnotexist' => 'Gebanakal: "<nowiki>$1</nowiki>" no peregistaron. Fümükolös, va vilol jäfön/redakön padi at.',
'userpage-userdoesnotexist-view' => 'Gebenakal: "$1" no peregistaron.',
'clearyourcache' => "'''Prudö!''' Pos dakip buükamas, mögos, das ozesüdos ad nedemön memi nelaidüpik bevüresodatävöma ad logön votükamis.
Memolös, das pads: .css e .js mutons labön tiädi minudik: {{ns:user}}:Foo/vector.css, no {{ns:user}}:Foo/Vector.css.",
'updated' => '(peatimükon)',
'note' => "'''Penet:'''",
-'previewnote' => "'''Is pajonon te büologed; votükams no nog pedakipons!'''",
+'previewnote' => "'''Memolös, das is pajonon te büologed.'''
+Votükams olik no nog pedakipons!",
+'continue-editing' => 'Golön ad spadäd redakama',
'previewconflict' => 'Büologed at jonon vödemi in redakamaspad löpik soäsä opubon if odakipol oni.',
'session_fail_preview' => "'''Pidö! No emögos ad lasumön votükamis olik kodü per redakamanünodas.<br />Steifülolös dönu. If no oplöpol, tän senunädolös e genunädolös oli, e steifülolös nogna.'''",
'session_fail_preview_html' => "'''Liedo no eplöpos ad zepön redakami olik kodü per nünodas.'''
'permissionserrors' => 'Dälapöls',
'permissionserrorstext' => 'No dalol dunön atosi sekü {{PLURAL:$1|kod|kods}} sököl:',
'permissionserrorstext-withaction' => 'No dalol $2, sekü {{PLURAL:$1|kod|kods}} sököl:',
-'recreate-moveddeleted-warn' => "'''NUNED: Dönujafol padi pemoüköl.'''
+'recreate-moveddeleted-warn' => "'''Nuned: Dönujafol padi büiko pemoüköl.'''
Vätälolös, va binos pötik ad lairedakön padi at.
-Jenotalised moükama pada at pajonon is as yuf.",
+Jenotalised moükama e topätükama pada at pajonon is as yuf:",
'moveddeleted-notice' => 'Pad at pemoükon.
Jenotems moükamas e topätükamas pada palisedon dono.',
'edit-hook-aborted' => 'Redakam pestöpädon fa huköm.
Jiniko pemoükon.',
'edit-conflict' => 'Redakamakonflit.',
'edit-no-change' => 'Redakam olik penedemon, bi vödemivotükams nonik pedunons.',
+'postedit-confirmation' => 'Redakam olik pedakipolon.',
'edit-already-exists' => 'No kanoy jafön padi nulik.
On ya dabinon.',
+# Content models
+'content-model-javascript' => 'JavaScript',
+'content-model-css' => 'CSS',
+
# Parser/template warnings
'expensive-parserfunction-warning' => 'Nuned: Pad at vokon „parser“-sekätis tusuvo.
'logdelete-success' => 'Logov jenotaliseda pelonon benosekiko.',
'revdel-restore' => 'Votükön logovi',
'revdel-restore-deleted' => 'revids pemoüköl',
+'revdel-restore-visible' => 'revids logädik',
'pagehist' => 'Padajenotem',
'deletedhist' => 'Jenotem pemoüköl',
'revdelete-otherreason' => 'Kod votik/zuik:',
'searchmenu-legend' => 'Sukaparamets',
'searchmenu-exists' => "'''Dabinon pad labü nem: \"[[:\$1]]\" su vük at'''",
'searchmenu-new' => "'''Jafolös padi: \"[[:\$1]]\" su vük at!'''",
-'searchhelp-url' => 'Help:Ninäd',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Logön padis labü foyümot at]]',
'searchprofile-articles' => 'Ninädapads',
'searchprofile-project' => 'Yufa e Proyegapads',
'skin-preview' => 'Büologed',
'datedefault' => 'Buükam nonik',
'prefs-datetime' => 'Dät e Tim',
+'prefs-user-pages' => 'Gebanapads',
'prefs-personal' => 'Gebananüns',
'prefs-rc' => 'Votükams nulik',
'prefs-watchlist' => 'Galädalised',
'username' => '{{GENDER:$1|Gebananem}}:',
'uid' => 'Gebanadientif:',
'prefs-memberingroups' => '{{GENDER:$2|Liman}} {{PLURAL:$1|grupa|grupas}}:',
+'prefs-registration' => 'Tim registarama:',
'yourrealname' => 'Nem jenöfik *:',
'yourlanguage' => 'Pük:',
'yournick' => 'Dispenäd nulik:',
'gender-female' => 'Vomik',
'email' => 'Ladet leäktronik',
'prefs-help-realname' => 'Nem jenöfik no binon zesüdik. If vilol givön oni, pogebon ad dasevön vobi olik.',
-'prefs-help-email' => 'Ladet leäktronik no peflagon, ab dälon sedi letavöda nulik ole üf glömol letavödi olik.
-Dalol i dälön votikanes kosikön ko ol yufü gebana- u bespikapad olik nes sävilupol dientifi olik.',
+'prefs-help-email' => 'Ladet leäktronik no peflagon, ab dälon sedi letavöda nulik ole üf glömol letavödi olik.',
'prefs-help-email-required' => 'Ladet leäktronik paflagon.',
'prefs-info' => 'Nüns stabik',
'prefs-signature' => 'Dispenäd',
'recentchanges-label-newpage' => 'Redakam at päjafon pad nulik',
'recentchanges-label-minor' => 'Atos binon redakam pülik',
'recentchanges-label-bot' => 'Redakam at pädunon fa el bot',
+'recentchanges-label-unpatrolled' => 'Redakam at no nog pekontrolon',
'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',
'listfiles_search_for' => 'Sukön ragivanemi:',
'imgfile' => 'ragiv',
'listfiles' => 'Ragivalised',
+'listfiles_thumb' => 'Magodil',
'listfiles_date' => 'Dät',
'listfiles_name' => 'Nem',
'listfiles_user' => 'Geban',
[[Special:WhatLinksHere/$2|Lised lölöfik]] gebidon.',
'nolinkstoimage' => 'Pads nonik peyümons ad ragiv at.',
'morelinkstoimage' => 'Logolös [[Special:WhatLinksHere/$1|yümis pluik]] ad ragiv at.',
+'linkstoimage-redirect' => '$1 (lüodükam ragiva) $2',
'duplicatesoffile' => '{{Plural:$1|Ragiv fovik leigon|Ragivs fovik $1 leigons}} ko ragiv at ([[Special:FileDuplicateSearch/$2|nüns pluik]]):',
'sharedupload' => 'Ragiv at binon se $1 e kanon pagebön fa proyegs votik.',
+'sharedupload-desc-here' => 'Ragiv at kömon de $1 e kanon pagebön fa proyegs votik.
+Bepenot su [$2 pad bepenota ragiva] onik pajonon dono.',
'uploadnewversion-linktext' => 'Löpükön fomami nulik ragiva at',
'shared-repo-from' => 'se $1',
Sötons plao payümon lü yeged pötik.<br />
Pad palelogon telplänovapad if gebon samafomoti, lü kel payümon pad [[MediaWiki:Disambiguationspage]].",
+'pageswithprop-submit' => 'Golön',
+
'doubleredirects' => 'Lüodüköms telik',
'doubleredirectstext' => 'Kedet alik labon yümis lü lüodüköm balid e telid, ed i kedeti balid vödema lüodüköma telid, kel nomiko ninädon padi, ko kel lüodüköm balid söton payümön.',
'double-redirect-fixed-move' => 'Pad: [[$1]] petopätükon, anu binon lüodüköm lü pad: [[$2]]',
'specialloguserlabel' => 'Geban:',
'speciallogtitlelabel' => 'Lükömöp (tiäd u geban):',
'log' => 'Jenotaliseds',
-'all-logs-page' => 'Jenotaliseds valik',
+'all-logs-page' => 'Jenotaliseds notidik valik',
'alllogstext' => 'Kobojonam jenotalisedas gebidik valik in {{SITENAME}}.
Ad brefükam lisedi, kanol välön lisedasoti, gebananemi, u padi tefik.',
'logempty' => 'No dabinons notets in jenotalised at.',
'notvisiblerev' => 'Fomam pemoükon',
'watchnochange' => 'Nonik padas pagalädöl olik peredakon dü period löpo pejonöl.',
'watchlist-details' => '{{PLURAL:$1|pad $1|pads $1}} su galädalised, plä bespikapads.',
-'wlheader-enotif' => '* Nunam medü pot leäktronik pemögükon.',
-'wlheader-showupdated' => "* Pads pos visit lätik ola pevotüköls papenons '''me tonats bigik'''",
+'wlheader-enotif' => 'Nunam medü pot leäktronik pemögükon.',
+'wlheader-showupdated' => "Pads pos visit lätik ola pevotüköls papenons '''me tonats bigik'''",
'watchmethod-recent' => 'vestigam redakamas brefabüik padas galädaliseda',
'watchmethod-list' => 'vestigam votükamas brefabüik padas galädaliseda',
'watchlistcontains' => 'Galädalised olik labon {{PLURAL:$1|padi|padis}} $1.',
'delete-legend' => 'Moükön',
'historywarning' => 'Nuned: pad, keli vilol moükön, labon jenotemi:',
'confirmdeletetext' => 'Primikol ad moükön laidüpiko padi u magodi sa jenotem valik ona. Fümedolös, das desinol ad dunön atosi, das suemol sekis, e das dunol atosi bai [[{{MediaWiki:Policy-url}}]].',
-'actioncomplete' => 'Peledunon',
+'actioncomplete' => 'Dunot eplöpon',
+'actionfailed' => 'Dunot eneplöpon',
'deletedtext' => 'Pad: "$1" pemoükon;
$2 jonon moükamis nulik.',
'dellogpage' => 'Jenotalised moükamas',
'mycontris' => 'Keblünots',
'contribsub2' => 'Tefü $1 ($2)',
'nocontribs' => 'Votükams nonik petuvons me paramets at.',
-'uctop' => '(lätik)',
+'uctop' => '(anuik)',
'month' => 'De mul (e büiks):',
'year' => 'De yel (e büiks):',
'sp-contributions-newbies-title' => 'Gebanakeblünots pro kals nulik',
'sp-contributions-blocklog' => 'Jenotalised blokamas',
'sp-contributions-deleted' => 'gebanakeblünots pemoüköl',
+'sp-contributions-uploads' => 'löpükams',
'sp-contributions-logs' => 'jenotaliseds',
'sp-contributions-talk' => 'bespik',
'sp-contributions-userrights' => 'guvam gebanagitätas',
'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',
+'ipb-confirm' => 'Fümedön blokami',
'badipaddress' => 'Ladet-IP no lonöfon',
'blockipsuccesssub' => 'Blokam eplöpon',
-'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] peblokon.
-<br />Logolös [[Special:BlockList|lisedi ladetas-IP pebloköl]] ad vestigön blokamis.',
+'blockipsuccesstext' => '[[Special:Contributions/$1|$1]] peblokon.<br />
+Logolös [[Special:BlockList|lisedi blokamas]] ad vestigön blokamis.',
+'ipb-blockingself' => 'Oblokön oli it! Fümol-li, das vilol dunön atosi?',
'ipb-edit-dropdown' => 'Redakön kodis blokama',
'ipb-unblock-addr' => 'Säblokön eli $1',
'ipb-unblock' => 'Säblokön gebananemi u ladeti-IP',
'unblocked' => '[[User:$1|$1]] pesäblokon',
'unblocked-range' => '$1 pesäblokon',
'unblocked-id' => 'Blokam: $1 pesädunon',
+'blocklist' => 'Gebans pebloköl',
'ipblocklist' => 'Gebans pebloköl',
'ipblocklist-legend' => 'Tuvön gebani pebloköl',
'blocklist-reason' => 'Kod',
'unlockdbsuccesstext' => 'Nünodem pemaifükon.',
'lockfilenotwritable' => 'Ragiv lökofärmükamas no votükovon. Ad lökofärmükön u maifükön nünodemi, ragiv at muton binön votükovik (dub dünanünöm).',
'databasenotlocked' => 'Vük at no pefärmükon.',
+'lockedbyandtime' => '(fa {{GENDER:$1|$1}} tü $2 düp $3)',
# Move page
'move-page' => 'Topätükön padi: $1',
'move-page-legend' => 'Topätükolöd padi',
-'movepagetext' => "Me fomet at kanoy votükön padanemi, ottimo feapladölo jenotemi lölöfik ona disi nem nulik. Tiäd büik ovedon lüodüköm lü tiäd nulik. Yüms lü padatiäd büik no povotükons; kontrolös dabini lüodükömas telik u dädikas. Gididol ad garanön, das yüms blebons lüodükön lü pads, lü kels mutons lüodükön.
+'movepagetext' => "Me fomet at kanoy votükön padanemi, ottimo feapladölo jenotemi lölöfik ona disi nem nulik. Tiäd büik ovedon lüodüköm lü tiäd nulik. Yüms lü padatiäd büik no povotükons; kontrolös dabini [[Special:DoubleRedirects|lüodükömas telik]] u [[Special:BrokenRedirects|dädikas]]. Gididol ad garanön, das yüms blebons lüodükön lü pads, lü kels mutons lüodükön.
-Küpälolös, das pad '''no''' potopätükon if ya dabinon pad labü tiäd nulik, bisä vagon u binon lüodüköm e no labon jenotemi. Atos sinifon, das, if pölol, nog kanol gepladön padi usio, kö äbinon büo, e das no kanol pladön padi nulik sui pad ya dabinöl.
+Küpälolös, das pad '''no''' potopätükon if ya dabinon pad labü tiäd nulik, bisä vagon u binon lüodüköm e no labon jenotemi.
+Atos sinifon, das, if pölol, nog kanol gepladön padi usio, kö äbinon büo, e das no kanol pladön padi nulik sui pad ya dabinöl.
-<b>NUNED!</b>
-Votükam at kanon binön mu staböfik ä no paspetöl pö pad pöpedik. Suemolös, begö! gudiko sekis duna at büä ofövol oni.",
+'''Nuned!'''
+Votükam at kanon binön mu staböfik ä no paspetöl pö pad pöpedik;
+suemolös, begö! gudiko sekis duna at büä ofövol oni.",
'movepagetalktext' => "Bespikapad tefik potopätükön itjäfidiko kobü pad at '''pläsif:'''
* bespikapad no vägik labü tiäd nulik ya dabinon, u
* vagükol anu bokili dono.
'tooltip-rollback' => '„Sädunön vali“ sädunon redakami(s) pada at fa keblünan lätik me klik bal mugaparata.',
'tooltip-undo' => '"Sädunön bali" sädunon redakami at e maifükön redakamafometi as büologed.
Dälon läükami koda.',
+'tooltip-summary' => 'Penolös pläni brefik',
# Stylesheets
'common.css' => '/** El CSS isio peplädöl pogebon pro padafomäts valik */',
# Info page
'pageinfo-header-edits' => 'Jenotem redakamas',
+'pageinfo-contentpage-yes' => 'Si',
+'pageinfo-protect-cascading-yes' => 'Si',
# Patrolling
'markaspatrolleddiff' => 'Zepön',
'file-info-size' => '$1 × $2 pixel, ragivagret: $3, pated MIME: $4',
'file-nohires' => 'Gretot gudikum no pagebidon.',
'svg-long-desc' => 'ragiv in fomät: SVG, magodaziöbs $1 × $2, gretot: $3',
+'svg-long-error' => "Ragiv 'SVG' ne lonöfon: $1",
'show-big-image' => 'Gretot gudikün',
# Special:NewFiles
'minutes' => '{{PLURAL:$1|minut 1|minuts $1}}',
'hours' => '{{PLURAL:$1|düp 1|düps $1}}',
'days' => '{{PLURAL:$1|del 1|dels $1}}',
+'months' => '{{PLURAL:$1|mul $1|muls $1}}',
+'years' => '{{PLURAL:$1|yel $1|yels $1}}',
+'ago' => 'bü $1',
+'just-now' => 'anu',
+
+# Human-readable timestamps
+'hours-ago' => 'bü {{PLURAL:$1|düp|düps}} $1',
+'minutes-ago' => 'bü {{PLURAL:$1|minut|minuts}} $1',
+'seconds-ago' => 'bü {{PLURAL:$1|sekun|sekuns}} $1',
+'monday-at' => 'Tü mudel düp $1',
+'tuesday-at' => 'Tü tudel düp $1',
+'wednesday-at' => 'Tü vedel düp $1',
+'thursday-at' => 'Tü dödel düp $1',
+'friday-at' => 'Tü fridel düp $1',
+'saturday-at' => 'Tü zädel düp $1',
+'sunday-at' => 'Tü sudel düp $1',
+'yesterday-at' => 'Ädelo düp $1',
# Bad image list
'bad_image_list' => 'Fomät pabevobon ön mod soik:
'exif-gpsareainformation' => 'Nem topäda: GPS',
'exif-gpsdatestamp' => 'Dät ela GPS',
'exif-source' => 'Fonät',
+'exif-writer' => 'Penan',
'exif-languagecode' => 'Pük',
'exif-iimcategory' => 'Klad',
'exif-gpsspeed-m' => 'Liöls a düp',
'exif-gpsspeed-n' => 'Snobs',
+# Pseudotags used for GPSDestDistanceRef
+'exif-gpsdestdistance-k' => 'Milmets',
+'exif-gpsdestdistance-m' => 'Liöls',
+
# Pseudotags used for GPSTrackRef, GPSImgDirectionRef and GPSDestBearingRef
'exif-gpsdirection-t' => 'Lüod veratik',
'exif-gpsdirection-m' => 'Lüod magnetik',
+'exif-dc-date' => 'Dät(s)',
+'exif-dc-publisher' => 'Püban',
+
+'exif-iimcategory-spo' => 'Spots',
'exif-iimcategory-wea' => 'Stom',
# External editor support
'version-hook-subscribedby' => 'Pagebon fa',
'version-version' => '(Fomam $1)',
'version-license' => 'Dälazöt',
+'version-poweredby-others' => 'votikans',
'version-software' => 'Programs pestitöl',
'version-software-product' => 'Prodäd',
'version-software-version' => 'Fomam',
+# Special:Redirect
+'redirect-submit' => 'Golön',
+'redirect-file' => 'Ragivanem',
+
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Sukön ragivis petelüköl',
'fileduplicatesearch-summary' => 'Sukön ragivis petelüköl stabü völad kontrolasaedota onsik.',
'intentionallyblankpage' => 'Pad at pevagükon desino',
# Special:Tags
+'tag-filter' => '[[Special:Tags|Sul]] ninädapenetas:',
'tag-filter-submit' => 'Sul',
'tags-display-header' => 'Logot in votükamaliseds',
'tags-edit' => 'redakön',
'htmlform-submit' => 'Sedön',
'htmlform-reset' => 'Sädunön votükamis',
'htmlform-selectorother-other' => 'Votik',
+'htmlform-no' => 'Nö',
+'htmlform-yes' => 'Si',
# New logging system
'revdelete-restricted' => 'miedükams pelonöfükons pro guvans',
'revdelete-unrestricted' => 'miedükams pro guvans pemoükons',
'rightsnone' => '(nonik)',
+# Feedback
+'feedback-subject' => 'Yegäd:',
+
# Search suggestions
'searchsuggest-search' => 'Suk',
'searchsuggest-containing' => 'ninädöl...',
+# Durations
+'duration-seconds' => '{{PLURAL:$1|sekun|sekuns}} $1',
+'duration-minutes' => '{{PLURAL:$1|minut|minuts}} $1',
+'duration-hours' => '{{PLURAL:$1|düp|düps}} $1',
+'duration-days' => '{{PLURAL:$1|del|dels}} $1',
+'duration-weeks' => '{{PLURAL:$1|vig|vigs}} $1',
+'duration-years' => '{{PLURAL:$1|yel|yels}} $1',
+'duration-decades' => '{{PLURAL:$1|degyel|degyels}} $1',
+'duration-centuries' => '{{PLURAL:$1|tumyel|tumyels}} $1',
+'duration-millennia' => '{{PLURAL:$1|milyel|milyels}} $1',
+
);
'disclaimers' => 'Ceeltümin vassamizõõ',
'disclaimerpage' => 'Project:Ceeltümin vassamizõõ',
'edithelp' => 'Muutuzavid',
-'edithelppage' => 'Help:Kui muuttaa cülciä',
'helppage' => 'Help:Sisälto',
'mainpage' => 'Esicülci',
'mainpage-description' => 'Esicülci',
'powersearch-redir' => 'Spiiska mešaitussijõ',
'powersearch-field' => 'Etsi',
-# Quickbar
-'qbsettings-none' => 'Eb õõ',
-
# Preferences page
'preferences' => 'Koozid',
'mypreferences' => 'Minu koozid',
# Special:ListGroupRights
'listgrouprights-members' => '(selttsilainspiiska)',
-# E-mail user
+# Email user
'emailuser' => 'Lähettega elektropoštia selle cäüttijälle',
'emailusername' => 'Cäüttijänimi:',
'emailmessage' => 'Ilmottamin:',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-gpstimestamp' => 'GPS-aika',
'exif-languagecode' => 'Ceeli',
'exif-iimcategory' => 'Gruppa',
# Core parser functions
'duplicate-defaultsort' => '\'\'\'Warning:\'\'\' Default sort key "$2" overrides earlier default sort key "$1".',
-# Special:FilePath
-'filepath-page' => 'Faili:',
-'filepath-submit' => 'Mee',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Failinimi:',
'fileduplicatesearch-submit' => 'Etsi',
'disclaimers' => 'Hoiatuisi',
'disclaimerpage' => 'Project:Üledseq hoiatusõq',
'edithelp' => 'Toimõndamisoppus',
-'edithelppage' => 'Help:Kuis_artiklit_toimõndaq',
'helppage' => 'Help:Oppus',
'mainpage' => 'Pääleht',
'mainpage-description' => 'Pääleht',
'shown-title' => 'Näütäq lehe kotsilõ $1 {{PLURAL:$1|tulõmus|tulõmust}}',
'viewprevnext' => 'Näütäq ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-new' => "'''Luuq leht päälkiräga \"[[:\$1]]\".'''",
-'searchhelp-url' => 'Help:Oppus',
'searchprofile-articles' => 'Sisuleheq',
'searchprofile-project' => 'Abi- ja projektileheq',
'searchprofile-images' => 'Multimeediä',
'notanarticle' => 'Olõ-i artikli',
'watchnochange' => 'Taa ao seen olõ-i üttegi perräkaetavat lehte muudõt.',
'watchlist-details' => 'Perräkaemisnimekirän om {{PLURAL:$1|$1 leht|$1 lehte}}, rehkendämäldä arotuslehti.',
-'wlheader-enotif' => '* E-postiga teedäqandmisõq ommaq käügin.',
-'wlheader-showupdated' => "* Leheq, midä om muudõt päält su viimäst käümist, ommaq '''paksun kirän'''",
+'wlheader-enotif' => 'E-postiga teedäqandmisõq ommaq käügin.',
+'wlheader-showupdated' => "Leheq, midä om muudõt päält su viimäst käümist, ommaq '''paksun kirän'''",
'watchmethod-recent' => 'kontrollitas perräkaetavidõ lehti perämäidsi muutmiisi',
'watchmethod-list' => 'perräkaetavidõ lehti perämädseq muutmisõq',
'watchlistcontains' => 'Perräkaemisnimekirän om $1 {{PLURAL:$1|leht|lehte}}.',
'tog-shownumberswatching' => "Mostrer l' nombe d' uzeus ki shuvèt l' pådje",
'tog-oldsig' => 'Siné pol moumint:',
'tog-fancysig' => 'Sinateure avou do tecse wiki (sins loyén otomatike)',
-'tog-externaleditor' => "Eployî on dfoûtrin aspougneu d' tecse come prémetowe dujhance (po les spepieus uzeus seulmint, ca i vs fåt fé des apontiaedjes sol sopiutrece da vosse, [//www.mediawiki.org/wiki/Manual:External_editors loukîz chal po pus di racsegnes]).",
-'tog-externaldiff' => 'Eployî on dfoûtrin programe di diferinces come prémetowe dujhance (po les spepieus uzeus seulmint, ca i vs fåt fé des apontiaedjes sol sopiutrece da vosse, [//www.mediawiki.org/wiki/Manual:External_editors loukîz chal po pus di racsegnes]).',
'tog-showjumplinks' => 'Mete en alaedje les loyéns di naiviaedje «potchî a» å dzeu del pådje (pol pea «Myskin» et ds ôtes)',
'tog-uselivepreview' => "Eployî l' prévoeyaedje abeye (JavaScript) (Esperimintå)",
'tog-forceeditsummary' => "M' advierti cwand dji lai vude on rascourti",
'tog-ccmeonemails' => "M' evoyî ene copeye des emiles ki dj' evoye ås ôtes",
'tog-diffonly' => "Èn nén håyner l' contnou del pådje pa dzo l' pådje des diferinces",
'tog-showhiddencats' => 'Mostrer les categoreyes mucheyes',
+'tog-useeditwarning' => "M' advierti cwand dji cwite ene pådje k' a des candjmints nén schapés",
'underline-always' => 'Tofer',
'underline-never' => 'Måy',
'currentevents' => 'Actouwålités',
'currentevents-url' => 'Project:Actouwålités',
'edithelp' => 'Aidance',
-'edithelppage' => 'Help:Kimint candjî ene pådje',
'helppage' => 'Help:Aidance',
'mainpage' => 'Mwaisse pådje',
'mainpage-description' => 'Mwaisse pådje',
# Special:PasswordReset
'passwordreset' => "Rifé l' sicret",
-'passwordreset-text' => 'Completez cisse formulrece ci po rçure èn emile ki dene les detays do conte da vosse.',
'passwordreset-legend' => "Rifé l' sicret",
'passwordreset-disabled' => "Li rfijhaedje di screts a stî dismetou so ç' wiki ci.",
-'passwordreset-pretext' => '{{PLURAL:$1||Dinez onk des elemints di dnêyes shuvants}}',
'passwordreset-username' => "No d' elodjaedje:",
'passwordreset-domain' => 'Dominne:',
'passwordreset-capture' => "Vey li messaedje di l' emile?",
'edit-conflict' => 'Ecramiaedje di candjmints.',
'edit-no-change' => "Vosse sicrijhaedje n' a nén passé, paski rén n' a stî candjî al modêye di dvant.",
'edit-already-exists' => "Li novele pâdje n' a savou esse ahivêye, ca cisse pâdje la egzistêye dedja.",
+'editwarning-warning' => "Cwiter cisse pådje ci vos frè piede tos les candjmints ki vos avoz fwait.
+Si vos estoz elodjî, vos ploz dismete cist adviertixhmint ci dins l' linwete «Boesse di tecse» di vos preferinces.",
# Parser/template warnings
'post-expand-template-inclusion-warning' => "'''Asteme:''' I gn a trop di modeles dins cisse pådje ci.
'searchmenu-legend' => 'Tchuzes di cweraedje',
'searchmenu-exists' => "'''Gn a ddja ene pådje lomêye « [[:$1]] » so ç' wiki ci'''",
'searchmenu-new' => "'''Ahiver l' pådje \"[[:\$1]]\" so ç' wiki ci!'''",
-'searchhelp-url' => 'Help:Aidance',
'searchprofile-articles' => 'Pådjes di contnou',
'searchprofile-project' => "Pådjes d' aidance et do pordjet",
'searchprofile-images' => 'Multimedia',
'search-external' => 'Difoûtrin cweraedje',
'searchdisabled' => "Mande escuzes! Li cweraedje å dvins des årtikes a stî dismetou pol moumint, cåze ki l' sierveu est fortcherdjî. Tot ratindant, vos ploz eployî Google po fé les rcweraedjes so {{SITENAME}}, mins çoula pout esse ene miete vî.",
-# Quickbar
-'qbsettings' => 'Apontiaedjes pol bår di menu',
-'qbsettings-none' => 'Nole bår',
-'qbsettings-fixedleft' => 'Aclawêye a hintche',
-'qbsettings-fixedright' => 'Aclawêye a droete',
-'qbsettings-floatingleft' => 'Flotante a hintche',
-'qbsettings-floatingright' => 'Flotante a droete',
-'qbsettings-directionality' => "Aclawêye, sorlon l' sinse di scrijhaedje di vosse lingaedje",
-
# Preferences page
'preferences' => 'Preferinces',
'mypreferences' => 'Mes preferinces',
'notanarticle' => 'Nén èn årtike',
'watchnochange' => "Nole des pådjes di vosse djivêye di pådjes a shuve n' a stî candjeye dins l' termene di tins dmandêye.",
'watchlist-details' => 'Vos avoz {{PLURAL:$1|$1 pådje shuvowe|$1 pådjes shuvowes}} (sins conter les pådjes di copene).',
-'wlheader-enotif' => '* Li notifiaedje pa emile est en alaedje.',
-'wlheader-showupdated' => "* Les pådjes k' ont candjî dispoy vosse dierinne vizite sont metowes e '''cråssès letes'''",
+'wlheader-enotif' => 'Li notifiaedje pa emile est en alaedje.',
+'wlheader-showupdated' => "Les pådjes k' ont candjî dispoy vosse dierinne vizite sont metowes e '''cråssès letes'''",
'watchmethod-recent' => "Cwerant après les pådjes k' ont stî candjeyes dierinnmint ki sont eto des pådjes shuvowes",
'watchmethod-list' => "Cwerant après les pådjes shuvowes k' ont stî candjeyes dierinnmint",
'watchlistcontains' => 'I gn a {{PLURAL:$1|$1 pådje|$1 pådjes}} e vosse djivêye des pådjes a shuve.',
* gpslongitude
* gpsaltitude",
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Lårdjeur',
'exif-imagelength' => 'Hôteur',
'exif-bitspersample' => 'Bits pa compôzant',
'version-software-product' => 'Prodût',
'version-software-version' => 'Modêye',
-# Special:FilePath
-'filepath-page' => 'Fitchî:',
-
# Special:FileDuplicateSearch
'fileduplicatesearch' => 'Cweraedje après les dobes fitchîs',
'fileduplicatesearch-submit' => 'Cweri',
'disclaimers' => 'Mga Disclaimer',
'disclaimerpage' => 'Project:Kasahiran nga disclaimer',
'edithelp' => 'Bulig hin pagliwat',
-'edithelppage' => 'Help:Pagliwat',
'helppage' => 'Help:Sulod',
'mainpage' => 'Syahan nga Pakli',
'mainpage-description' => 'Syahan nga Pakli',
# Special:PasswordReset
'passwordreset' => 'igreset an tigaman-hit-pagsulod',
-'passwordreset-text' => 'Kumpletoha ini nga porma para makareset han imo password.',
'passwordreset-legend' => 'igreset an tigaman-hit-pagsulod',
'passwordreset-disabled' => 'Waray ginpaandar an password reset hini nga wiki.',
'passwordreset-username' => 'Agnay hiton gumaramit:',
Temporaryo nga tigaman han pagsakob: $2',
'passwordreset-emailsent' => 'Ginpadangat an password reset email.',
'passwordreset-emailsent-capture' => 'Ginpadangat an password reset email, nga ginpakita ha ubos.',
-'passwordreset-emailerror-capture' => 'Ginhimo an password reset email, kun diin nakikita ha ubos, pero pakyas an pagpadara: $1',
+'passwordreset-emailerror-capture' => 'Ginhimo an password reset email, kun diin nakikita ha ubos, pero pakyas an pagpadara ha {{GENDER:$2|gumaramit}}: $1',
# Special:ChangeEmail
'changeemail' => 'Igliwan an e-mail address',
Ini nga mga argumento in ginlaktawan.",
'post-expand-template-argument-category' => 'Mga pakli nga nagsusulod hin ginlaktawan nga mga argumento hin batakan',
+# "Undo" feature
+'undo-norev' => 'An pagliwat in diri mapapawaray-buhat tungod waray ito dida o napara na.',
+'undo-summary' => 'Igpawaray-buhat an rebisyon nga $1 ni [[Special:Contributions/$2|$2]] ([[User talk:$2|talk]])',
+
# Account creation failure
'cantcreateaccounttitle' => 'Diri makakahimo hin akawnt',
+'cantcreateaccount-text' => "An paghimo hin akawnt hini nga IP address ('''$1''') in ginpugngan ni [[User:$3|$3]]. An rason nga ginhatag ni $3 in ''$2''",
# History pages
'viewpagelogs' => 'Kitaa an mga log para hini nga pakli',
'history-feed-title' => 'Kaagi han pagliwat',
'history-feed-description' => 'Kaagi han pagliwat para hini nga pakli ha wiki',
'history-feed-item-nocomment' => '$1 ha $2',
+'history-feed-empty' => 'An imo ginpaalayon nga pakli in waray dida.
+Bangin ini napara tikang ha wiki, o ginngaranan hin iba.
+
+[[Special:Search|pamilnga ha wiki]] para han may pagkahisumpay nga bag-o nga pakli.',
# Revision deletion
'rev-deleted-comment' => '(gintanggal an kaagi han dalikyat nga sumat)',
'rev-deleted-user' => '(gintanggal an agnay hiton gumaramit)',
'rev-deleted-event' => '(gintanggal an talaan han mga buhat)',
'rev-deleted-user-contribs' => '[gintanggal an agnay-hit-gumaramit o IP address - an pagliwat in gintago tikang han mga amot]',
+'rev-deleted-text-permission' => "Ini nga rebisyon han pakli in '''ginpara'''.
+An mga detalye in mabibilngan ha [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} deletion log].",
'rev-suppressed-no-diff' => "Diri mo makikita ini nga kaibhan tungod nga usa ha mga rebisyon in '''ginpara'''.",
'rev-delundel' => 'igpakita/igtago',
'rev-showdeleted' => 'igpakita',
'searchmenu-legend' => 'Mga pagpipilian han pamiling',
'searchmenu-exists' => "'''May-ada pakli nga nakangaran hin \"[[:\$1]]\" hini nga wiki.'''",
'searchmenu-new' => "'''Himoa an pakli \"[[:\$1]]\" hini nga wiki!'''",
-'searchhelp-url' => 'Help:Sulod',
'searchprofile-articles' => 'Mga unod nga pakli',
'searchprofile-project' => 'Mga Bulig ngan Proyekto nga pakli',
'searchprofile-images' => 'Multimedia',
'right-mergehistory' => 'Igtampo an kaagi han mga pakli',
'right-userrights' => 'Igliwat an ngatanan nga mga katungod han gumaramit',
'right-userrights-interwiki' => 'Igliwat an mga katungod han gumaramit han mga gumaramit ha iba nga mga wiki',
+'right-siteadmin' => 'Igtrangka ngan igrangka an database',
'right-sendemail' => 'Padad-i hin e-mail ngada ha iba nga mga gumaramit',
# Special:Log/newusers
'tog-shownumberswatching' => 'Wone limu jëfandikukat yiy topp wii xët',
'tog-oldsig' => 'Wonendig xaatim gi teew:',
'tog-fancysig' => 'Soppi sa xaatim (du am lëkkalekaay bu boppu)',
-'tog-externaleditor' => 'Jëfandikoo soppikaay bu biti saa su ne',
-'tog-externaldiff' => 'Jëfandiku ab méngalekaay bu biti saa su ne (ngir jëfandikukat yu xarale yi rekk, dafa laaj yenn kocc-koccal yi ci sa nosukaay)',
'tog-showjumplinks' => 'Doxalal lëkkalekaay yii di « joowin » ak « seet »',
'tog-uselivepreview' => 'Jëfandikul wonendi gu gaaw gi (JavaScript)',
'tog-forceeditsummary' => 'Wax ma ko suma mottaliwul koju coppite bi',
'disclaimers' => 'Ay aartu',
'disclaimerpage' => 'Project:Aartu yu daj',
'edithelp' => 'Ndimbal',
-'edithelppage' => 'Help:Nooy soppee aw xët',
'helppage' => 'Help:Ndimbal',
'mainpage' => 'Xëtu Njëlbéen',
'mainpage-description' => 'Xët wu njëkk',
'searchmenu-legend' => 'Tànneefi ceet',
'searchmenu-exists' => "'''wenn xët wu tudd « [[:$1]] » moo am ci bii wiki'''",
'searchmenu-new' => "'''Sosal xët wii di « [[:$1|$1]] » ci bii wiki !'''",
-'searchhelp-url' => 'Help:Ndimbal',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Xoolal xët wi tambalee nii]]',
'searchprofile-articles' => 'Xëti ëmbiit',
'searchprofile-project' => 'Xëti Ndimbal ak Sémb',
'search-external' => 'Ceet gu biti',
'searchdisabled' => 'Ceet gi ci {{SITENAME}} doxul. Ci négandiku doxal gi, man nga seet ci Google. Jàppal ne, xéj-na ëmbiti {{SITENAME}} gi ci bii seetukaay yeesaluñ leen.',
-# Quickbar
-'qbsettings' => 'Banqaasu jumtukaay',
-'qbsettings-none' => 'Kenn',
-'qbsettings-fixedleft' => 'Cammooñ',
-'qbsettings-fixedright' => 'Ndijoor',
-'qbsettings-floatingleft' => 'Ci cammooñ',
-'qbsettings-floatingright' => 'Ci ndijoor',
-
# Preferences page
'preferences' => 'Tànneef',
'mypreferences' => 'Samay tànneef',
'unwatchthispage' => 'Bul toppati',
'watchnochange' => 'Lenn ci xët yi ngay topp soppikuwul ci diir bii',
'watchlist-details' => 'Topp nga $1 {{PLURAL:$1|xët|ciy xët}}, soo waññiwaalewul xëti waxtaanuwaay yi.',
-'wlheader-showupdated' => '* Xët yi ñu soppiwoon ca sa duggu bu mujj ñoom la ñu fesal ñu <b>xëm</b>',
+'wlheader-showupdated' => 'Xët yi ñu soppiwoon ca sa duggu bu mujj ñoom la ñu fesal ñu <b>xëm</b>',
'watchmethod-recent' => 'saytug coppite yu mujj yu xët yi ngay topp',
'watchmethod-list' => 'saytug xët yi ñuy topp ngir ay coppite yu mujj',
'watchlistcontains' => "Sa limu toppte am na '''$1''' {{PLURAL:$1|xët|xët}}.",
# Stylesheets
'common.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci col yépp */',
-'standard.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Standard */',
-'nostalgia.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Nostalgia */',
'cologneblue.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Cologne Blue */',
'monobook.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Monobook. */',
-'myskin.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu MySkin */',
-'chick.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Chick */',
-'simple.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Simple */',
'modern.css' => '/* CSS yiñ def fii dañuy am ay njeexit ci jëfandikukatu col gu Modern */',
# Scripts
'common.js' => '/* Bépp JavaScript buñ fi duggal, xët yéppa koy yeb ak jëfandikukat bumu manti doon. */',
-'standard.js' => '/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Standard keppa koy yeb */',
-'nostalgia.js' => '/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Nostalgia keppa koy yeb */',
'cologneblue.js' => '/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Cologne Blue keppa koy yeb */',
'monobook.js' => '/*Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Monobook keppa koy yeb. */',
-'myskin.js' => '/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu MySkin keppa koy yeb */',
-'chick.js' => '/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Chick keppa koy yeb */',
-'simple.js' => '/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Simple keppa koy yeb*/',
'modern.js' => '/* Bépp JavaScript buñ fi duggal jëfandikukat yiy jëfandikoo col gu Modern keppa koy yeb */',
# Metadata
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Yaatuwaay',
'exif-imagelength' => 'Kawewaay',
'exif-usercomment' => 'Kadduy jëfëndikookat bi',
'disclaimers' => '免责声明',
'disclaimerpage' => 'Project:免责声明',
'edithelp' => '编辑帮助',
-'edithelppage' => 'Help:如何编辑页面',
'helppage' => 'Help:目录',
'mainpage' => '封面',
'mainpage-description' => '封面',
'searchmenu-legend' => '搜索选项',
'searchmenu-exists' => "'''垃拉箇只wiki高头已经有只页面叫“[[:$1]]”哉'''",
'searchmenu-new' => "'''垃拉该wiki里向新建页面“[[:$1]]”!'''",
-'searchhelp-url' => 'Help:目录',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|浏览带箇只前缀个页面]]',
'searchprofile-articles' => '内容页面',
'searchprofile-project' => '帮助搭仔项目页面',
/*
Short names for language variants used for language conversion links.
-To disable showing a particular link, set it to 'disable', e.g.
-'variantname-zh-sg' => 'disable',
Variants for Chinese language
*/
'variantname-zh-tw' => '台湾',
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-artist' => '作者',
'exif-componentsconfiguration-0' => '弗存在',
# Special:Version
'version' => '版本',
-# Special:FilePath
-'filepath' => '文件路径',
-'filepath-page' => '文件:',
-'filepath-submit' => '路径',
-
# Special:SpecialPages
'specialpages' => '特殊页面',
'tog-shownumberswatching' => 'Тер халх шинҗлдг демнчнрин то үзүлх',
'tog-oldsig' => 'Бәәдг тәвсн һарна хәләвр:',
'tog-fancysig' => 'Эврән тәвсн һарна бики темдлһн (авто заалһта уга)',
-'tog-externaleditor' => 'Һаза чикллгч олзлх (һанцхн эрдмчнрт, тана тоолцврт шишлң көг кергтә. [//www.mediawiki.org/wiki/Manual:External_editors Дәкәд өггцн.])',
-'tog-externaldiff' => 'Һаза йилһән үзүлдг програм олзлх (һанцхн эрдмчнрт, тана тоолцврт шишлң көг кергтә [//www.mediawiki.org/wiki/Manual:External_editors Дәкәд өггцн.])',
'tog-showjumplinks' => 'Туслмҗ заалһуд «-д/-т һарх» йовулх',
'tog-uselivepreview' => 'Шамдһа хәләвр олзлх (JavaScript кергтә, амслһн)',
'tog-forceeditsummary' => 'Учр-утх хоосн бәәхлә медүлх',
'disclaimers' => 'Дааврас эс зөвшәрлһн',
'disclaimerpage' => 'Project:Даарас эс зөвшәрлһн',
'edithelp' => 'Чикллһнә дөң',
-'edithelppage' => 'Help:Чикллһн',
'helppage' => 'Help:Һарг',
'mainpage' => 'Нүр халх',
'mainpage-description' => 'Нүр халх',
'powersearch-field' => 'Хәәх',
'powersearch-togglenone' => 'Уга',
-# Quickbar
-'qbsettings' => 'Ормин самбр',
-
# Preferences page
'preferences' => 'Дурллһн',
'mypreferences' => 'Көгүд',
# Special:ListGroupRights
'listgrouprights-members' => '(мөчүдин сеткүл)',
-# E-mail user
+# Email user
'emailuser' => 'Энд E-mail йовулх',
# Watchlist
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'Өргн',
'exif-imagelength' => 'Өндр',
'exif-bitspersample' => 'Өңгин гүн',
'version-software-product' => 'Һарц',
'version-software-version' => 'Һарц',
-# Special:FilePath
-'filepath' => 'Боомгд хаалһ',
-'filepath-page' => 'Боомг:',
-'filepath-submit' => 'Орх',
-
# Special:FileDuplicateSearch
'fileduplicatesearch-filename' => 'Боомгин нерн:',
'fileduplicatesearch-submit' => 'Хәәх',
'disclaimers' => 'გამამინჯალაშ ვარება',
'disclaimerpage' => 'Project:გამამინჯალაშ ვარება',
'edithelp' => 'მოხვარა რედაქტირაფას',
-'edithelppage' => 'Help:ტექსტიშ რედაქტირაფა',
'helppage' => 'Help:დინორე',
'mainpage' => 'დუდხასჷლა',
'mainpage-description' => 'დუდხასჷლა',
'viewprevnext' => 'ქოძირ ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-exists' => 'თე ვიკის "[[:$1]]" ჯოხოთ ხასჷლა რე',
'searchmenu-new' => "''ქჷდარსხი \"[[:\$1]]\" ხასჷლა თე ვიკის'''",
-'searchhelp-url' => 'Help:მოხვარა',
'searchprofile-articles' => 'სტატიეფი',
'searchprofile-project' => 'მოხვარაშ დო პროექტიშ ხასჷლეფი',
'searchprofile-images' => 'მულტიმედია',
# Special:ListGroupRights
'listgrouprights-members' => '(მაკათურეფიშ ერკებული)',
-# E-mail user
+# Email user
'emailuser' => 'მიდუჯღონით ელ.ფოშტა ათე მახვარებუს',
# Watchlist
* gpslongitude
* gpsaltitude',
-# EXIF tags
+# Exif tags
'exif-imagewidth' => 'სიგანე',
'exif-imagelength' => 'სიმაღალე',
'tog-oldsig' => 'איצטיגער אונטערשריפֿט:',
'tog-fancysig' => 'באַהאַנדלן אונטערשריפט אַלס וויקיטעקסט (אָן אויטאמאטישן לינק)',
'tog-showjumplinks' => 'באמעגלעך צוטריט לינקס פון "שפרינג צו"',
-'tog-uselivepreview' => '×\91×\90× ×\95צ×\98 ×\96×\99×\9a ×\9e×\99×\98 ×\9c×\99×\99×\95×\95 פ×\90ר×\90×\95×\99ס×\93×\99×\92×¢ ×\95×\95×\99×\99×\96×\95× ×\92 (JavaScript) (עקספ×\99×¨×¢× ×\9e×¢×\98ל)',
+'tog-uselivepreview' => '×\91×\90× ×\99צ×\98 ×\96×\99×\9a ×\9e×\99×\98 ×\92×\99×\9b×¢ פ×\90ר×\90×\95×\99ס×\93×\99×\92×¢ ×\95×\95×\99×\99×\96×\95× ×\92 (JavaScript) (עקספער×\99×\9e×¢× ×\98×\90ל)',
'tog-forceeditsummary' => 'ווארן מיך ווען איך לייג א ליידיג קורץ ווארט ענדערונג',
'tog-watchlisthideown' => 'באהאלט מיינע ענדערונגען פון דער אויפפאסן ליסטע',
'tog-watchlisthidebots' => 'באהאלט באט עדיטס פון אויפפאסן ליסטע',
'oct' => 'אָקט׳',
'nov' => 'נאָוו׳',
'dec' => 'דעצ׳',
+'january-date' => '$1 יאנואר',
+'february-date' => '$1 פעברואר',
+'march-date' => '$1 מערץ',
+'april-date' => '$1 אפריל',
+'may-date' => '$1 מיי',
+'june-date' => '$1 יוני',
+'july-date' => '$1 יולי',
+'august-date' => '$1 אויגוסט',
+'september-date' => '$1 סעפטעמבער',
+'october-date' => '$1 אקטאבער',
+'november-date' => '$1 נאוועמבער',
+'december-date' => '$1 דעצעמבער',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|קאַטעגאָריע|קאַטעגאָריעס}}',
# Cologne Blue skin
'qbfind' => 'טרעף',
-'qbbrowse' => '×\91×\9c×¢×\98ער×\98',
+'qbbrowse' => '×\91×\9c×¢×\98ער×\9f',
'qbedit' => 'ענדערן',
'qbpageoptions' => 'דער בלאט',
'qbmyoptions' => 'מיינע בלעטער',
'disclaimers' => 'געזעצליכע אויפֿקלערונג',
'disclaimerpage' => 'Project:קלארשטעלונג',
'edithelp' => 'הילף וויאזוי צו ענדערן',
-'edithelppage' => 'Help:ענדערן',
'helppage' => 'Help:אינהאַלט',
'mainpage' => 'הויפט זייט',
'mainpage-description' => 'הויפט זייט',
'createacct-yourpasswordagain-ph' => 'ארײַנגעבן פאסווארט נאכאמאל',
'remembermypassword' => 'געדיינק מײַן אַרײַנלאגירן אויף דעם קאמפיוטער (ביז $1 {{PLURAL:$1|טאָג|טעג}})',
'userlogin-remembermypassword' => 'לאז מיך בלײַבן ארײַנלאגירט',
-'userlogin-signwithsecure' => '×\90×\99×\99× ×©×¨×\99×\99×\91×\9f ×\9e×\99×\98 זיכערן סארווער',
+'userlogin-signwithsecure' => '× ×\99צ×\9f זיכערן סארווער',
'securelogin-stick-https' => 'בלייַבן פארבונדן צו HTTPS נאָכן ארײַנלאָגירן',
'yourdomainname' => 'אײַער געביט:',
'password-change-forbidden' => 'איר קען נישט ענדערן פאסווערטער אויף דער וויקי.',
'gotaccount' => "האסטו שוין א קאנטע? '''$1'''.",
'gotaccountlink' => 'אַרײַנלאגירן',
'userlogin-resetlink' => 'פארגעסן אײַערע אַרײַנלאָגירן פרטים?',
+'userlogin-resetpassword-link' => 'צוריקשטעלן אײַער פאַסווארט',
'helplogin-url' => 'Help:אריינלאגירן',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|הילף מיט אריינלאגירן]]',
'createacct-join' => 'גיט ארײַן אײַער אינפֿארמאציע אונטן.',
'createacct-imgcaptcha-ph' => 'קלאפט ארײַן דעם טעקסט איר זעט אויבן',
'createacct-submit' => 'שאפֿט אײַער קאנטע',
'createacct-benefit-heading' => '{{SITENAME}} איז געמאכט דורך מענטשן ווי איר.',
-'createacct-benefit-body1' => 'רעדאקטירונגען',
-'createacct-benefit-body2' => 'בלעטער',
+'createacct-benefit-body1' => '{{PLURAL:$1|רעדאַקטירונג|$1 רעדאַקטירונגען}}',
+'createacct-benefit-body2' => '$1 {{PLURAL:$1|בלאַט|בלעטער}}',
+'createacct-benefit-body3' => 'לעצטיקע {{PLURAL:$1|בײַשטײַערער}}',
'badretype' => 'די פאסווערטער וואס איר האט אריינגעלייגט זענען נישט אייניג.',
'userexists' => 'דער באַניצער נאָמען איז שוין געניצט.
ביטע קלײַבט אױס אַן אַנדער נאָמען.',
'loginerror' => 'לאגירן פֿעלער',
+'createacct-error' => 'קאנטע שאפן פעלער',
'createaccounterror' => 'האט נישט געקענט שאַפֿן קאנטע: $1',
'nocookiesnew' => 'די באניצער קאנטע איז באשאפן, אבער איר זענט נישט אריינלאגירט.
{{SITENAME}} ניצט קיכלעך אריינצולאגירן באניצער.
'cannotchangeemail' => "מ'קען נישט ענדערן קאנטע ע־פאסט אדרעסן אין דער וויקי.",
'emaildisabled' => 'דאס וועבזייטל קען נישט שיקן ע־בריוון.',
'accountcreated' => 'די קאָנטע איז באַשאַפֿן',
-'accountcreatedtext' => 'די באניצער קאנטע פאר $1 איז באַשאַפֿן געווארן.',
+'accountcreatedtext' => 'די באניצער קאנטע פאר [[{{ns:User}}:$1|$1]]
+([[{{ns:User talk}}:$1|שמועס]]) איז באַשאַפֿן געווארן.',
'createaccount-title' => 'קאנטע באשאפֿן אין {{SITENAME}}',
'createaccount-text' => 'עמעצער האט באשאפֿן א קאנטע פֿאר אייער ע-פאסט אדרעס אין {{SITENAME}} ($4) מיטן נאמען "$2" און פאסווארט "$3". איר דארפט אצינד איינלאגירן און ענדערן דאס פאסווארט.
# Special:PasswordReset
'passwordreset' => 'צוריקשטעלן פאַסווארט',
-'passwordreset-text' => 'דערגאַנצט די פאָרעם צוריקצושטעלן אײַער פאַסווארט.',
'passwordreset-legend' => 'צוריקשטעלן פאַסווארט',
'passwordreset-disabled' => 'מען האט אומאַקטיוויטר צוריקשטעלן פאַסווערטער אויף דער וויקי.',
'passwordreset-emaildisabled' => 'ע-פאסט דינסטן זענען געווארן אומאקטיווירט אויף דער דאזיקער וויקי.',
-'passwordreset-pretext' => '{{PLURAL:$1| | קלאַפט אַרײַן איינע פֿון די דאַטן אונטן}}',
'passwordreset-username' => 'באַניצער נאָמען:',
'passwordreset-domain' => 'דאמען:',
'passwordreset-capture' => 'זען דעם געשיקטן ע־בריוו?',
'missingcommentheader' => "'''דערמאַנונג:''' איר האט נישט אַרײַנגעשטעלט א טעמע/קעפל פאר דער אנמערקונג. אויב וועט איר דרוקן נאכאמאל אויפן \"{{int:savearticle}}\", וועט אייער ענדערונג ווערן אפגעהיטן אן דעם.",
'summary-preview' => 'סך-הכל פאראויסדיגע ווייזונג:',
'subject-preview' => 'טעמע/קעפל פאראויסדיגע ווייזונג:',
-'blockedtitle' => 'באנוצער איז בלאקירט',
+'blockedtitle' => 'באַניצער איז בלאקירט',
'blockedtext' => '\'\'\'אייער באניצער נאמען אדער IP אדרעס איז געווארן בלאקירט.\'\'\'
דעם בלאק האט $1 געמאכט פון וועגן \'\'$2\'\'.
ס'ווייזט אויס אז ער איז אויסגעמעקט.",
'edit-conflict' => 'רעדאקטירן קאנפֿליקט.',
'edit-no-change' => "מ'האט איגנארירט אײַער רעדאַקטירונג, ווײַל קיין שום ענדערונג איז נישט געמאַכט צום טעקסט.",
-'edit-already-exists' => 'נישט מעגליך צו שאַפֿן נייע בלאט.
+'postedit-confirmation' => 'אייער רעדאקטירונג איז געווארן אויפגעהיטן.',
+'edit-already-exists' => 'נישט מעגליך צו שאַפֿן נייעם בלאט.
ער עקזיסטירט שוין.',
'defaultmessagetext' => 'גרונטלעכער מעלדונג טעקסט',
'content-failed-to-parse' => 'פארזן $2 אינהאלט פאר $1 מאדעל דורכגעפאלן: $3',
'invalid-content-data' => 'אומגילטיקע אינהאלט דאטן',
'content-not-allowed-here' => '"$1" אינהאלט נישט דערלויבט אויף בלאט [[$2]]',
'editwarning-warning' => 'איבערלאזן דעם בלאט קען גורם זײַן פֿארלירן אײַערע ענדערונגען.
-אויב איר זענט ארײַנלאגירט, קענט איר מבטל זײַן די דאזיגע ווארענונג אין דער "{{int:prefs-editing}}" אפטיילונג פון אײַערע פרעפערענצן.',
+אויב איר זענט ארײַנלאגירט, קענט איר מבטל זײַן די דאזיגע ווארענונג אין דער "באארבעטן" אפטיילונג פון אײַערע פרעפערענצן.',
# Content models
'content-model-wikitext' => 'וויקיטעקסט',
'searchmenu-legend' => 'זוכן ברירות',
'searchmenu-exists' => "'''ס'איז פֿאַראַן א בלאַט מיטן נאמען \"[[:\$1]]\" אין דער וויקי'''",
'searchmenu-new' => "'''באַשאַפֿן דעם בלאַט \"[[:\$1]]\" אויף דער וויקי'''",
-'searchhelp-url' => 'Help:אינהאַלט',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|בלעטערן בלעטער מיט דעם פרעפֿיקס]]',
'searchprofile-articles' => 'אינהאלט בלעטער',
'searchprofile-project' => 'הילף און פראיעקט בלעטער',
'searchdisabled' => "{{SITENAME}} זוך איז אָפאַקטיווירט.
צווישנצײַט קענט איר זוכן מיט גוגל.
געב אכט אז ס'איז מעגלעך אַז זייער אינדעקס פֿון {{SITENAME}} אינהאַלט איז אפשר פֿאַרעלטערט.",
+'search-error' => "ס'האט פאסירט א פֿעלער ביים זוכן: $1",
# Preferences page
'preferences' => 'פרעפֿערענצן',
'prefs-datetime' => 'דאטום און צייט',
'prefs-labs' => 'לאַבאראַטאריע מעגלעכקייטן',
'prefs-user-pages' => 'באניצער בלעטער',
-'prefs-personal' => '×\91×\90Ö·× ×\95צער פראָפֿיל',
+'prefs-personal' => '×\91×\90Ö·× ×\99צער פראָפֿיל',
'prefs-rc' => 'לעצטע ענדערונגען',
'prefs-watchlist' => 'אויפפאסונג ליסטע',
'prefs-watchlist-days' => 'טעג צו ווייזן אין דער אויפפאסונג ליסטע:',
'email-address-validity-invalid' => 'לייגט אַרײַן א גילטיקן ע־פאסט אַדרעס',
# User rights
-'userrights' => 'באנוצער רעכטן פארוואלטערשאפט',
+'userrights' => 'באַניצער רעכטן פֿאַרוואַלטערשאפט',
'userrights-lookup-user' => 'פֿאַרוואַלטן באניצער גרופעס',
-'userrights-user-editname' => 'לייגט אריין א באנוצער-נאמען:',
+'userrights-user-editname' => 'לייגט אריין א באַניצער-נאמען:',
'editusergroup' => 'רעדאַגירן באַניצער גרופּעס',
'editinguser' => "ענדערן באַניצער רעכטן פון באַניצער '''[[User:$1|$1]]''' $2",
'userrights-editusergroup' => 'רעדאַקטירן באַניצער גרופעס',
'right-editusercssjs' => 'רעדאַקטירן אַנדערע באַניצערס CSS און JS טעקעס',
'right-editusercss' => 'רעדאַקטירן אַנדערע באַניצערס CSS טעקעס',
'right-edituserjs' => 'רעדאַקטירן אַנדערע באַניצערס JS טעקעס',
+'right-editmyusercss' => 'רעדאקטירע אײַערע אייגענע באניצער CSS טעקעס',
'right-rollback' => 'גיך צוריקדרייען די רעדאַקטירונגען פונעם לעצטן באַניצער וואס האט רעדאַקטירט א געוויסן בלאַט',
'right-markbotedits' => 'מאַרקירן צוריקגעזעצטע רעדאַגירונגען ווי באט רעדאַגירונגען',
'right-noratelimit' => 'נישט ווערן באַגרענעצט דורך לימיטאַציע',
'rcshowhideminor' => '$1 מינערדיגע ענדערונגען',
'rcshowhidebots' => '$1 ראבאטן',
'rcshowhideliu' => '$1 אײַנגעשריבענע באַניצערס',
-'rcshowhideanons' => '$1 ×\90Ö·× ×\90Ö¸× ×\99×\9e×¢ ×\91×\90Ö·× ×\95צערס',
+'rcshowhideanons' => '$1 ×\90Ö·× ×\90Ö¸× ×\99×\9e×¢ ×\91×\90Ö·× ×\99צער',
'rcshowhidepatr' => '$1 פאַטראלירטע ענדערונגען',
'rcshowhidemine' => '$1 מײַנע רעדאַקטירוננגען',
'rclinks' => 'װײַזן די לעצטע $1 ענדערונגען אין די לעצטע $2 טעג.<br />$3',
'lockmanager-notlocked' => 'מ\'קען נישט אויפֿשליסן "$1"; ער איז נישט פֿארשלאסן.',
'lockmanager-fail-closelock' => 'נישט מעגלעך פארשפארן שלאס טעקע פאר "$1".',
'lockmanager-fail-deletelock' => 'נישט מעגלעך אויסמעקן שלאס טעקע פאר "$1".',
+'lockmanager-fail-acquirelock' => 'נישט מעגלעך צו באקומען שלאס טעקע פאר "$1".',
'lockmanager-fail-openlock' => 'נישט מעגלעך עפֿענען שלאס טעקע פאר "$1".',
'lockmanager-fail-releaselock' => 'נישט מעגלעך באפֿרייען שלאס טעקע פאר "$1".',
'disambiguationspage' => 'Template:באדייטן',
'disambiguations-text' => "די קומענדיגע בלעטער פארבינדן צו א '''באדייטן בלאט'''. זיי ברויכן ענדערשט פֿארבינדן צו דעם רעלעוואנטן טעמע בלאט.<br />א בלאט ווערט פאררעכענט פאר א באדײַטן בלאט אויב ער באניצט זיך מיט א מוסטער וואס איז פארבינדען פון [[MediaWiki:Disambiguationspage]].",
+'pageswithprop' => 'בלעטער מיט א בלאט אייגנשאפט',
+'pageswithprop-legend' => 'בלעטער מיט א בלאט אייגנשאפט',
+'pageswithprop-text' => 'דער בלאט האלט א רשימה פון בלעטער וואס ניצן א געוויסע בלאט אייגנשאפט.',
'pageswithprop-prop' => 'אייגנשאפט נאמען:',
'pageswithprop-submit' => 'גייט',
'notvisiblerev' => 'די באארבעטונג איז געווארן אויסגעמעקט',
'watchnochange' => 'קיינע פֿון אײַערע אויפֿגעפאַסטע בלעטער האבן זיך געענדערט אין דעם צײַט פעריאד געוויזן.',
'watchlist-details' => '{{PLURAL:$1|איין בלאט|$1 בלעטער}} אין אייער אויפֿפאסן ליסטע (נישט רעכענען רעדן בלעטער).',
-'wlheader-enotif' => '* ע-פאסט מעלדונג ערמעגליכט.',
-'wlheader-showupdated' => "* בלעטער געענדערט זײַט אײַער לעצטן וויזיט זען געוויזן '''דיק'''",
+'wlheader-enotif' => 'ע-פאסט מעלדונג ערמעגליכט.',
+'wlheader-showupdated' => "בלעטער געענדערט זײַט אײַער לעצטן וויזיט זען געוויזן '''דיק'''.",
'watchmethod-recent' => 'קאנטראלירן לעצטע ענדערונגען פֿאַר אויפֿגעפאַסטע בלעטער',
'watchmethod-list' => 'קאנטראלירן בלעטער אין אַכטונג־ליסטע פֿאַר לעצטע ענדערונגען',
'watchlistcontains' => 'אייער אויפֿפאסונג ליסטע אנטהאלט {{PLURAL:$1|איין בלאט|$1 בלעטער}}.',
'mycontris' => 'בײַשטײַערונגען',
'contribsub2' => 'וועגן $1 ($2)',
'nocontribs' => 'נישט געטראפן קיין ענדערונגען צוזאמעגעפאסט מיט די קריטעריעס.',
-'uctop' => '(×\9cעצ×\98×¢)',
+'uctop' => '(×\9c×\95×\99פֿ×\99ק)',
'month' => 'ביז חודש:',
'year' => 'ביז יאר:',
'exif-compressedbitsperpixel' => 'בילד צוזאמקוועטשן מאוד',
'exif-pixelydimension' => 'בילד ברייט',
'exif-pixelxdimension' => 'בילד הייך',
-'exif-usercomment' => '×\91×\90× ×\95צער קאמענטורן',
+'exif-usercomment' => '×\91×\90× ×\99צער קאמענטורן',
'exif-relatedsoundfile' => 'פֿאַרבונדענע אוידיאָ טעקע',
'exif-datetimeoriginal' => 'דאטום און צייט פון דאַטן באשאפונג',
'exif-datetimedigitized' => 'דאטום און צייט פון דיזשיטייזונג',
# Delete conflict
'deletedwhileediting' => 'ווארענונג: דער בלאט איז געווארן אויסגעמעקט נאכדעם וואס איר האט אנגעהויבן רעדאקטירן!',
-'confirmrecreate' => "באנוצער [[User:$1|$1]] ([[User talk:$1|רעדן]]) האט אויסגעמעקט דעם בלאט נאכדעם וואס איר האט אנגעהויבן דאס צו ענדערן, אלס אנגעבליכער סיבה:
+'confirmrecreate' => "באַניצער [[User:$1|$1]] ([[User talk:$1|רעדן]]) האט אויסגעמעקט דעם בלאט נאכדעם וואס איר האט אנגעהויבן דאס צו ענדערן, אלס אָנגעבליכער סיבה:
:'''$2'''
ביטע באשטעטיגט אז איר ווילט טאקע צוריקשטעלן דעם בלאט.",
'recreate' => 'שאַפֿן פֿונדאסניי',
'oct' => 'Oṣù 10',
'nov' => 'Oṣù 11',
'dec' => 'Oṣù 12',
+'january-date' => '$1 Oṣù Kínní',
+'february-date' => '$1 Oṣù Kejì',
+'march-date' => '$1 Oṣù Kẹta',
+'april-date' => '$1 Oṣù Kẹrin',
+'may-date' => '$1 Oṣù Kàrún',
+'june-date' => '$1 Oṣù Kẹfà',
+'july-date' => '$1 Oṣù Keje',
+'august-date' => '$1 Oṣù Kẹjọ',
+'september-date' => '$1 Oṣù Kẹ̀sán',
+'october-date' => '$1 Oṣù Kẹ̀wá',
+'november-date' => '$1 Oṣù Kọkànlá',
+'december-date' => '$1 Oṣù Kejìlá',
# Categories related messages
'pagecategories' => '{{PLURAL:$1|Ẹ̀ka|Àwọn ẹ̀ka}}',
'create-this-page' => "Ṣè'dá ojúewé yìí",
'delete' => 'Ìparẹ́',
'deletethispage' => 'Pa ojúewé yi rẹ́',
+'undeletethispage' => 'Mú ìparẹ́ kúrò fún ojúewé yìí',
'undelete_short' => 'Ìdápadà ìparẹ́ {{PLURAL:$1|àtúnṣe kan|àwọn àtúnṣe $1}}',
'viewdeleted_short' => 'Ìwòran {{PLURAL:$1|àtúnṣe ajẹ́píparẹ́ kan|àwọn àtúnṣe ajẹ́píparẹ́ $1}}',
'protect' => 'Àbò',
'disclaimers' => 'Ikìlọ̀',
'disclaimerpage' => 'Project:Ìkìlọ̀ gbogbo',
'edithelp' => 'Ìrànlọ́wọ́ fún àtúnṣe',
-'edithelppage' => 'Help:Àtúnṣe',
'helppage' => 'Help:Àwon àkóónú',
'mainpage' => 'Ojúewé Àkọ́kọ́',
'mainpage-description' => 'Ojúewé Àkọ́kọ́',
'namespaceprotected' => "A kò gbàyín ní ààyè láti ṣ'àtúnṣe àwọn ojúewé tó wà nínú orúkọàyè '''$1'''.",
'customcssprotected' => 'Ẹ kò ní ìyọ̀nda láti ṣàtúnṣe ojúewé CSS yìí nítorípé ó ní àwọn ìtòjọ oníṣe ẹlòmíràn.',
'customjsprotected' => 'Ẹ kò ní ìyọ̀nda láti ṣàtúnṣe ojúewé JavaScript yìí nítorípé ó ní àwọn ìtòjọ oníṣe ẹlòmíràn.',
+'mycustomcssprotected' => 'Ẹ kò ní ìyọ̀nda láti ṣàtúnṣe ojúewé CSS yìí.',
+'mycustomjsprotected' => 'Ẹ kò ní ìyọ̀nda láti ṣàtúnṣe ojúewé JavaScript yìí.',
'ns-specialprotected' => 'Àtúnṣe kò ṣe é ṣe sí àwọn ojúewé pàtàkì.',
'titleprotected' => "[[User:$1|$1]] ti dínà sí dídá àkọlé yìí. Ìdí rẹ̀ ni pé ''$2''.",
'filereadonlyerror' => 'Àtúnṣe kò ṣe é ṣe sí fáìlì "$1" nítorípé ibi-àkójọ fáìlì "$2" jẹ́ fún wíwò nìkàn.
'createacct-yourpasswordagain' => 'Ẹ ṣe ìfidájú ọ̀rọ̀ìpamọ́',
'createacct-yourpasswordagain-ph' => 'Ẹ kọ ọ̀rọ̀ìpamọ́ lẹ́ẹ̀kan síi',
'remembermypassword' => "Ṣè'rántí ìwọlé mi lórí kọ̀mpútà yìí (fún ó pẹ́ jù {{PLURAL:$1|ọjọ́|ọjọ́}} $1)",
-'userlogin-remembermypassword' => 'Ṣè rántí mi',
-'userlogin-signwithsecure' => 'Ẹ wọlé pẹ̀lú ẹ̀rọ-ìpèsè tó ní àbò',
+'userlogin-remembermypassword' => 'Fi mí sí ìwọlé',
+'userlogin-signwithsecure' => 'Lo ìsopọ̀ ẹ̀rọ tó ní àbò',
'securelogin-stick-https' => 'Ìwàní sísopọ̀ mọ́ HTTPS lẹ́yín ìwọlé',
'yourdomainname' => 'Domain yín:',
'password-change-forbidden' => 'Ẹ kò le ṣe ìyípadà ọ̀rọ̀ìpamọ́ lórí wiki yìí.',
'gotaccount' => "Ṣé ẹ ti ní àpamọ́ tẹ́lẹ̀? '''$1'''.",
'gotaccountlink' => "Ẹ w'ọlé",
'userlogin-resetlink' => 'À bí ẹ gbàgbé ìwọlé yín?',
+'userlogin-resetpassword-link' => 'Ìtúntò ọ̀rọ̀ìpamọ́ yín',
'helplogin-url' => 'Help:Ìwolé',
'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|Ìrànlọ́wọ́ láti ìwọlé]]',
'createacct-join' => 'Ẹ kọ ìsọ̀rọ̀nípa yín sísàlẹ̀',
'createacct-realname' => 'Orúkọ yín gangan (kò pọndandan)',
'createaccountreason' => 'Ìdíẹ̀:',
'createacct-reason' => 'Ìdí',
+'createacct-reason-ph' => 'Ìdí tí ẹ ṣe fẹ́ dá àkópamọ́ míràn',
+'createacct-captcha' => 'Àyẹ̀wò àbò',
'createacct-imgcaptcha-ph' => 'Ẹ kọ ìkọ̀rọ̀ tí ẹ rí lókè',
+'createacct-submit' => 'Ìdá àkópamọ́ yín',
'createacct-benefit-heading' => 'Àwọn ènìyàn bíi yín ni wọ́n dá {{SITENAME}}.',
-'createacct-benefit-body1' => 'àtúnṣe',
-'createacct-benefit-body2' => 'ojúewé',
-'createacct-benefit-body3' => 'olùkópa ní oṣù yìí',
+'createacct-benefit-body1' => '{{PLURAL:$1|àtúnṣe|àwọn àtúnṣe}}',
+'createacct-benefit-body2' => '{{PLURAL:$1|ojúewé|àwọn ojúewé}}',
+'createacct-benefit-body3' => ' {{PLURAL:$1|olùkópa|Àwọn olùkópa}} aṣẹ̀ṣẹ̀ṣe',
'badretype' => 'Àwọn ọ̀rọ̀ìpamọ́ tí ẹ kọ kò jọ ra wọn.',
'userexists' => 'Orúkọ oníṣe tí ẹ mú wà lọ́wọ́ ẹlòmíràn.
Ẹjọ̀wọ́ ẹ yan orúkọ mìíràn tó yàtọ̀.',
'cannotchangeemail' => 'Àwọn àdírẹ́sì e-mail àpamọ́ kò ṣe é yípadà lórí wiki yìí.',
'emaildisabled' => 'Ibiìtàkùn yìí kò le fi e-mail ránṣẹ́.',
'accountcreated' => 'Ẹ ti fi orúkọ sílẹ̀',
-'accountcreatedtext' => "A ti ṣ'èdá àkópamọ́ oniṣe fún $1.",
+'accountcreatedtext' => 'Àkópamọ́ oniṣe fún [[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|ọ̀rọ̀]]) ti jẹ́ dídá.',
'createaccount-title' => 'Ìforúkọ sílẹ̀ fún {{SITENAME}}',
'createaccount-text' => 'Ẹnìkan dá àpamọ́ kan fún àdírẹ́sì e-mail yín sórí {{SITENAME}} ($4) tóún jẹ́ "$2", pẹ̀kú ọ̀rọ̀ìpamọ́ \'\'$3\'\'.
Ẹ gbọ́dọ̀ wọlé kí ẹ sì ṣàyípadà ọ́rọ́ìpamọ́ yín nísinsìyí.
# Special:PasswordReset
'passwordreset' => 'Ìtúntò ọ̀rọ̀ìpamọ́',
-'passwordreset-text' => 'Ẹ parí fọ́ọ̀mù yìí láti ṣe ìtúntò ọ̀rọ̀ìpamọ́ yín.',
'passwordreset-legend' => 'Ìtúntò ọ̀rọ̀ìpamọ́',
'passwordreset-disabled' => 'Ìdálẹ́kun ìtúntò ọ̀rọ̀ìpamọ́ lórí wiki yìí.',
'passwordreset-emaildisabled' => 'Ìdálẹ́kun lílo email lórí wiki yìí.',
-'passwordreset-pretext' => '{{PLURAL:$1||Ẹ kọ ìkan nínú àwọn wẹ́wẹ́ dátà ìsàlẹ̀}}',
'passwordreset-username' => 'Orúkọ oníṣe:',
'passwordreset-domain' => 'Àbùgbé:',
'passwordreset-capture' => 'Wo e-mail tí yíò jáde?',
Ó dà bíi pé a ti paárẹ́.',
'edit-conflict' => 'Ìtakora áwọn àtúnṣe',
'edit-no-change' => 'A ṣe àìkàsí àtúnṣe yín, nítorípé ìkọ̀wé kò ní àtúnṣe kankan.',
+'postedit-confirmation' => 'Àtúnṣe yín ti jẹ́ gbígbépamọ́.',
'edit-already-exists' => "A kò le è ṣè'dá ojúewé tuntun.
Ó pilẹ̀ ti wà.",
'defaultmessagetext' => 'Ìkọ ìránṣẹ́ àtìbẹ̀rẹ̀',
'searchmenu-legend' => 'Àwọn àṣàyàn àwáàrí',
'searchmenu-exists' => "'''Ojúewé tó ún jẹ́ \"[[:\$1]]\" wà lórí wiki yìí'''",
'searchmenu-new' => "'''Dá ojúewé \"[[:\$1]]\" sí orí wiki yìí!'''",
-'searchhelp-url' => 'Help:Àwon àkóónú',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|Ẹ lọ sí àwọn ojúewé tí wọ́n ní àsopọ̀ yìí]]',
'searchprofile-articles' => 'Àwọn ojúewé Àkóónú',
'searchprofile-project' => 'Àwọn ojúewé Ìrànwọ́ àti Iṣẹ́-ọwọ́',
'notvisiblerev' => 'Àtúnyẹ̀wò gbígbẹ̀yìn látọwọ́ oníṣe míràn ti jẹ́ píparẹ́',
'watchnochange' => 'Kò sí ìkankan nínú àwọn ohun ìmójútó yín tó jẹ́ títúnṣe láàrin àsìkò títẹ́kalẹ̀.',
'watchlist-details' => '{{PLURAL:$1|Ojúewé $1|Àwọn ojúewé $1}} ló wà nínú ìmójútó yín, tí a kò bá ka àwọn ojúewé ọ̀rọ̀.',
-'wlheader-enotif' => '* Ìfitónilétí e-mail wà ní gbígbàláyè.',
-'wlheader-showupdated' => "* Àwọn ojúewé tí wọn ti yípadà látìgbà tí ẹ ṣàbẹ̀wò wọn gbẹ̀yìn jẹ́ fífihàn ní ''kedere'''",
+'wlheader-enotif' => 'Ìfitónilétí e-mail wà ní gbígbàláyè.',
+'wlheader-showupdated' => "Àwọn ojúewé tí wọn ti yípadà látìgbà tí ẹ ṣàbẹ̀wò wọn gbẹ̀yìn jẹ́ fífihàn ní ''kedere'''",
'watchmethod-recent' => 'únwo àwọn àtúnṣe tuntun fún àwọn ojúewé mímójútó',
'watchmethod-list' => 'únwo àwọn ojúewé mímójútó fún àwọn àtúnṣe tuntun',
'watchlistcontains' => 'Àwọn ìmójútó yín ní {{PLURAL:$1|ojúewé|àwọn ojúewé}} $1 nínú.',
'ago' => '$1 sẹ́yìn',
'just-now' => 'nísinsìnyí',
+# Human-readable timestamps
+'monday-at' => 'Ọjọ́ajé ní ago $1',
+'tuesday-at' => 'Ọjọ́ìṣẹ́gun ní ago $1',
+'wednesday-at' => 'Ọjọ́rú ní ago $1',
+'thursday-at' => 'Ọjọ́bọ̀ ní ago $1',
+'friday-at' => 'Ọjọ́ẹtì ní ago $1',
+'saturday-at' => 'Ọjọ́àbámẹ́ta ní ago $1',
+'sunday-at' => 'Ọjọ́àìkú ní ago $1',
+'yesterday-at' => 'Àná ní ago $1',
+
# Bad image list
'bad_image_list' => 'Onírú jẹ́ gẹ́gẹ́ bíi àtèlé yìí:
Àwọn ohun àkójọ nìkan (àwọn ìlà tí wọ́n bẹ̀rẹ̀ pẹ̀lú *) ni wọ́n jẹ́ gbígbérò.
* @ingroup Language
* @file
*
+ * @author Anson2812
* @author Horacewai2
* @author Justincheng12345
* @author Kaganer
* @author KaiesTse
* @author Mark85296341
+ * @author Nemo bis
* @author Simon Shek
* @author Waihorace
* @author William915
'disclaimers' => '免責聲明',
'disclaimerpage' => 'Project:一般免責聲明',
'edithelp' => '編輯協助',
-'edithelppage' => 'Help:編輯',
'helppage' => 'Help:目錄',
'mainpage' => '頭版',
'mainpage-description' => '頭版',
'searchmenu-legend' => '搵嘢選項',
'searchmenu-exists' => "'''響呢個wiki度有一版叫做\"[[:\$1]]\"。'''",
'searchmenu-new' => "'''響呢個wiki度開呢版\"[[:\$1]]\"!'''",
-'searchhelp-url' => 'Help:目錄',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|去睇以呢個做開頭嘅版]]',
'searchprofile-articles' => '內容頁',
'searchprofile-project' => '幫手同計劃頁',
'resetprefs' => '清除未保存嘅更改',
'restoreprefs' => '恢復全部預設設定',
'prefs-editing' => '編輯中',
-'prefs-edit-boxsize' => '編輯框大細',
+'prefs-edit-boxsize' => '編寫框大細',
'rows' => '列:',
'columns' => '行:',
'searchresultshead' => '搵嘢',
'prefs-common-css-js' => '共有嘅CSS同埋JavaScript畀所有畫面用:',
'prefs-reset-intro' => '你可以用呢版去重設你嘅喜好設定到網站預設值。呢個動作無得番轉頭。',
'prefs-emailconfirm-label' => '電郵確認:',
-'prefs-textboxsize' => '編輯窗大細',
+'prefs-textboxsize' => '編寫框大細',
'youremail' => '電郵:',
'username' => '用戶名:',
'uid' => '用戶 ID:',
'notvisiblerev' => '上次由唔同用戶嘅修訂已經刪除咗',
'watchnochange' => '響顯示嘅時間之內,你所監視嘅頁面並無任何嘅更改。',
'watchlist-details' => '唔計討論頁,有 $1 版響你個監視清單度。',
-'wlheader-enotif' => '* 電子郵件通知已經啟用。',
-'wlheader-showupdated' => "* '''粗體字'''嘅頁響你上次嚟之後被人改過",
+'wlheader-enotif' => '電子郵件通知已經啟用。',
+'wlheader-showupdated' => "'''粗體字'''嘅頁響你上次嚟之後被人改過",
'watchmethod-recent' => '睇緊最近修改中有邊頁監視緊',
'watchmethod-list' => '睇緊被監視頁有乜新修改',
'watchlistcontains' => '你嘅監視清單裏面有$1頁。',
'modern.css' => '/* 響呢度放 CSS 碼去改用戶用嘅摩登畫面 */',
'vector.css' => '/* 響呢度放 CSS 碼去改用戶用嘅域達畫面 */',
'print.css' => '/* 響呢度放 CSS 碼去改打印輸出 */',
-'handheld.css' => '/* 響呢度放 CSS 碼去改響 $wgHandheldStyle 設定手提裝置畫面 */',
# Scripts
'common.js' => '/* 響每一次個頁面載入時,所有用戶都會載入呢度任何嘅JavaScript。 */',
'tog-shownumberswatching' => "'t Antal gebrukers weerheven 't a deêze pahina volg",
'tog-oldsig' => 'Bestaende onderteêkenienge',
'tog-fancysig' => "As wikitekst behandel'n (zonder automaotische verwiezienge ni de gebrukersbladzie)",
-'tog-externaleditor' => 'Standard een externe tekstbewerker gebruken (alleêne vò experts - vò deêze functie ben speciaole ienstellienge nudig. [//www.mediawiki.org/wiki/Manual:External_editors Meê informaosie]).',
-'tog-externaldiff' => 'Standard een extern verheliekiengsprohramma gebruken (alleên vò experts - vò deêze functie ben speciaole ienstelliengen nudig. [//www.mediawiki.org/wiki/Manual:External_editors Meê informaosie]).',
'tog-showjumplinks' => '“hi nae”-toehankelijkeidslienks inschaokelen',
'tog-uselivepreview' => '“live voevertoônienge” gebruken (JavaScript vereist – experimenteêl)',
'tog-forceeditsummary' => 'Heef me een meldieng bie een lehe saemenvattieng',
'disclaimers' => 'Voebehoud',
'disclaimerpage' => 'Project:Alhemeên voebehoud',
'edithelp' => "Ulpe bie't bewerken",
-'edithelppage' => 'Help:Bewerken',
'helppage' => 'Help:Inoud',
'mainpage' => 'Vòblad',
'mainpage-description' => 'Vòblad',
'viewprevnext' => 'Bekiek ($1 {{int:pipe-separator}} $2) ($3).',
'searchmenu-exists' => "'''Er is 'n pagina genaemd \"[[:\$1]]\" op deêze wiki.'''",
'searchmenu-new' => "'''De pagina \"[[:\$1]]\" anmaek'n op deêze wiki.'''",
-'searchhelp-url' => 'Help:Inoud',
'searchprofile-articles' => "Inhoudelike pagina's",
'searchprofile-project' => "Hilp- en projectpagina's",
'searchprofile-images' => 'Multimedia',
Je kan gebruuk maeken van Google.
De hehevens over {{SITENAME}} zien meuhlijk nie bie'ewerkt.",
-# Quickbar
-'qbsettings' => 'Menubalke',
-'qbsettings-none' => 'Uuteschaokeld',
-'qbsettings-fixedleft' => 'Lienks vast',
-'qbsettings-fixedright' => 'Rechs vast',
-'qbsettings-floatingleft' => 'Lienks zwevend',
-'qbsettings-floatingright' => 'Rechs zwevend',
-
# Preferences page
'preferences' => 'Vòkeuren',
'mypreferences' => 'Mien vòkeuren',
* @author Li3939108
* @author Liangent
* @author Linforest
+ * @author M13253
* @author Makecat
* @author Mark85296341
* @author MarkAHershberger
* @author O
* @author Onecountry
* @author PhiLiP
+ * @author Qiyue2001
* @author Shinjiman
* @author Shirayuki
* @author Shizhao
* @author Simon Shek
* @author Slboat
+ * @author Stevenliuyi
* @author Supaiku
* @author Tommyang
* @author Waihorace
'tog-enotifrevealaddr' => '在通知电子邮件中显示我的电子邮件地址',
'tog-shownumberswatching' => '显示监视用户数',
'tog-oldsig' => '当前签名:',
-'tog-fancysig' => '将签名视为wiki代码(不自动生成链接)',
+'tog-fancysig' => '将签名视为维基代码(不自动生成链接)',
'tog-showjumplinks' => '启用“跳转到”访问链接',
'tog-uselivepreview' => '使用实时预览(需要JavaScript)(实验功能)',
'tog-forceeditsummary' => '未输入编辑摘要时提醒我',
'underline-default' => '皮肤或浏览器默认设置',
# Font style option in Special:Preferences
-'editfont-style' => '编辑区字体样式:',
+'editfont-style' => '编辑区中的字体样式:',
'editfont-default' => '浏览器默认',
'editfont-monospace' => '等宽字体',
'editfont-sansserif' => '无衬线字体',
'oct' => '10月',
'nov' => '11月',
'dec' => '12月',
+'january-date' => '1月$1日',
+'february-date' => '2月$1日',
+'march-date' => '3月$1日',
+'april-date' => '4月$1日',
+'may-date' => '5月$1日',
+'june-date' => '6月$1日',
+'july-date' => '7月$1日',
+'august-date' => '8月$1日',
+'september-date' => '9月$1日',
+'october-date' => '10月$1日',
+'november-date' => '11月$1日',
+'december-date' => '12月$1日',
# Categories related messages
'pagecategories' => '$1个分类',
'hidden-categories' => '$1个隐藏分类',
'hidden-category-category' => '隐藏分类',
'category-subcat-count' => '{{PLURAL:$2|本分类只有下列一个子分类。|本分类包含下列$1个子分类,共$2个子分类。}}',
-'category-subcat-count-limited' => '本分类包含下列$1个子分类。',
+'category-subcat-count-limited' => '本分类包含下列{{PLURAL:$1|subcategory|$1个子分类}}。',
'category-article-count' => '{{PLURAL:$2|本分类只有下列一个页面。|本分类包含下列$1个页面,共有$2个页面。}}',
'category-article-count-limited' => '本分类包含下列$1个页面。',
-'category-file-count' => '{{PLURAL:$2|本分类只有下列文件。|本分类包含下列$1个文件,共$2个文件。}}',
+'category-file-count' => '{{PLURAL:$2|本分类只包含以下文件。|以下{{PLURAL:$1|文件|$1个文件}}在本分类中,共$2个文件。}}',
'category-file-count-limited' => '本分类包含下列$1个文件。',
'listingcontinuesabbrev' => '续',
'index-category' => '允许索引的页面',
'about' => '关于',
'article' => '内容页面',
-'newwindow' => 'ï¼\88å°\86äº\8e新窗口中打开)',
+'newwindow' => 'ï¼\88å\9c¨新窗口中打开)',
'cancel' => '取消',
'moredotdotdot' => '更多',
-'morenotlisted' => 'æ\9b´å¤\9aæ\9cªè¢«å\88\97å\87ºç\9a\84模æ\9d¿...',
+'morenotlisted' => 'æ\9b´å¤\9a模æ\9d¿æ\9cªå\88\97å\87º...',
'mypage' => '页面',
'mytalk' => '讨论',
'anontalk' => '该IP地址的讨论',
'qbfind' => '查找',
'qbbrowse' => '浏览',
'qbedit' => '编辑',
-'qbpageoptions' => '页面选项',
+'qbpageoptions' => '此页',
'qbmyoptions' => '我的页面',
'qbspecialpages' => '特殊页面',
'faq' => '常见问题',
'variants' => '变换',
'navigation-heading' => '导航菜单',
-'errorpagetitle' => '错误',
-'returnto' => '返回$1。',
+'errorpagetitle' => '出错',
+'returnto' => '返回到$1。',
'tagline' => '来自{{SITENAME}}',
'help' => '帮助',
'search' => '搜索',
'create-this-page' => '创建本页',
'delete' => '删除',
'deletethispage' => '删除本页',
+'undeletethispage' => '撤消删除此页',
'undelete_short' => '恢复$1个被删除的编辑',
'viewdeleted_short' => '查看$1个被删除的编辑',
'protect' => '保护',
请稍等片刻后再次尝试访问本页面。
$1',
-'pool-timeout' => '等待锁超时',
+'pool-timeout' => '等待锁定超时',
'pool-queuefull' => '请求队列已满',
'pool-errorunknown' => '未知错误',
'disclaimers' => '免责声明',
'disclaimerpage' => 'Project:免责声明',
'edithelp' => '编辑帮助',
-'edithelppage' => 'Help:编辑',
'helppage' => 'Help:目录',
'mainpage' => '首页',
'mainpage-description' => '首页',
-'policy-url' => 'Project:方针',
+'policy-url' => 'Project:方针与指引',
'portal' => '社区专页',
'portal-url' => 'Project:社区专页',
'privacy' => '隐私权政策',
'privacypage' => 'Project:隐私权政策',
'badaccess' => '权限错误',
-'badaccess-group0' => '你被禁止执行你刚才请求的操作。',
+'badaccess-group0' => '你被禁止执行你请求的操作。',
'badaccess-groups' => '您刚才请求的操作只有{{PLURAL:$2|这个用户组|以下用户组}}中的用户才能使用: $1',
'versionrequired' => '需要版本为$1的MediaWiki',
'newmessagesdifflink' => '最后更改',
'youhavenewmessagesfromusers' => '你有来自{{PLURAL:$3|其他用户|$3个用户}}的$1($2)。',
'youhavenewmessagesmanyusers' => '你有来自多个用户的$1($2)。',
-'newmessageslinkplural' => '{{PLURAL:$1|一条新信息|新信息}}',
+'newmessageslinkplural' => '{{PLURAL:$1|新信息}}',
'newmessagesdifflinkplural' => '最后{{PLURAL:$1|更改}}',
'youhavenewmessagesmulti' => '你在$1有新信息',
'editsection' => '编辑',
'viewsourceold' => '查看源代码',
'editlink' => '编辑',
'viewsourcelink' => '查看源代码',
-'editsectionhint' => '编辑章节:$1',
+'editsectionhint' => '编辑段落:$1',
'toc' => '目录',
'showtoc' => '显示',
'hidetoc' => '隐藏',
'feed-invalid' => '无效的订阅类型。',
'feed-unavailable' => '不提供联合订阅源',
'site-rss-feed' => '$1的RSS订阅',
-'site-atom-feed' => '$1的Atom',
+'site-atom-feed' => '$1的Atom订阅',
'page-rss-feed' => '“$1”的RSS订阅',
'page-atom-feed' => '“$1”的Atom订阅',
'red-link-title' => '$1(页面不存在)',
# Short words for each namespace, by default used in the namespace tab in monobook
'nstab-main' => '页面',
-'nstab-user' => '用户页',
+'nstab-user' => '用户页面',
'nstab-media' => '媒体页面',
'nstab-special' => '特殊页面',
'nstab-project' => '项目页面',
这通常是由于点击了链向旧有差异或历史的链接,而原有修订已被删除导致的。
如果情况不是这样,您可能找到了软件的一个内部错误。请记录下URL地址,并向[[Special:ListUsers/sysop|管理员]]报告。',
-'missingarticle-rev' => '(修订版本编号:$1)',
+'missingarticle-rev' => '(版本#:$1)',
'missingarticle-diff' => '(差异:$1,$2)',
-'readonly_lag' => '从数据库服务器正在从主服务器上更新,数据库已被自动锁定',
+'readonly_lag' => '附属数据库服务器正在将缓存更新到主服务器上,数据库已被自动锁定',
'internalerror' => '内部错误',
'internalerror_info' => '内部错误:$1',
'fileappenderrorread' => '当附加时无法读取"$1"。',
它可能已被其他人删除了。',
'cannotdelete-title' => '无法删除“$1”',
'delete-hook-aborted' => '删除被扩展钩子取消。钩子并没有给出解释。',
-'badtitle' => '错误的标题',
+'badtitle' => '错误标题',
'badtitletext' => '所请求页面的标题是无效的、不存在,跨语言或跨wiki链接的标题错误。它可能包含一个或更多的不能用于标题的字符。',
'perfcached' => '下列数据已缓存,但可能已过时。最高{{PLURAL:$1|一个结果|$1个结果}}在缓存中可用。',
'perfcachedts' => '下列数据已缓存,最后更新于$1。缓存中最多可有{{PLURAL:$4|1个结果|$4个结果}}。',
'namespaceprotected' => "您没有权限编辑'''$1'''名字空间内的页面。",
'customcssprotected' => '您没有权限编辑此CSS页面,因为它包含另一位用户的个人设置。',
'customjsprotected' => '您没有权限编辑此JavaScript页面,因为它包含另一位用户的个人设置。',
-'ns-specialprotected' => '您不能编辑特殊页面。',
+'mycustomcssprotected' => '您没有权限编辑这个 CSS 页面。',
+'mycustomjsprotected' => '您没有权限编辑这个 JavaScript 页面。',
+'ns-specialprotected' => '特殊页面不可编辑。',
'titleprotected' => '此标题已被[[User:$1|$1]]保护以防止创建。理由是“$2”。',
'filereadonlyerror' => '因为媒体库$2处于只读模式而无法修改文件$1。
您可以继续以匿名方式使用{{SITENAME}},或再次以相同或不同用户身份<span class='plainlinks'>[$1 登录]</span>。请注意一些页面可能仍然显示您为登录状态,直到您清空您的浏览器缓存为止。",
'welcomeuser' => '欢迎,$1!',
-'welcomecreation-msg' => '你的账户已创建。请不要忘记更改你的[[Special:Preferences|{{SITENAME}}系统设置]]。',
+'welcomecreation-msg' => '你的账户已创建。请不要忘记更改你的[[Special:Preferences|{{SITENAME}}设置]]。',
'yourname' => '用户名:',
'userlogin-yourname' => '用户名',
-'userlogin-yourname-ph' => 'è¾\93å\85¥æ\82¨的用户名',
+'userlogin-yourname-ph' => '请è¾\93å\85¥ä½ 的用户名',
'yourpassword' => '密码:',
'userlogin-yourpassword' => '密码',
-'userlogin-yourpassword-ph' => 'è¾\93å\85¥æ\82¨的密码',
+'userlogin-yourpassword-ph' => '请è¾\93å\85¥ä½ 的密码',
'createacct-yourpassword-ph' => '请输入密码',
'yourpasswordagain' => '再次输入密码:',
'createacct-yourpasswordagain' => '确认新密码',
'createacct-yourpasswordagain-ph' => '请再次输入密码',
'remembermypassword' => '在该浏览器保存我的登录状态(最长$1日)',
-'userlogin-remembermypassword' => '保持我的登录状态',
-'userlogin-signwithsecure' => '使用安全链接',
+'userlogin-remembermypassword' => '记住我的登录状态',
+'userlogin-signwithsecure' => '使用安全连接',
'securelogin-stick-https' => '登录后继续使用HTTPS连接',
'yourdomainname' => '您的域名:',
'password-change-forbidden' => '您不能在本wiki上更改密码。',
'externaldberror' => '验证数据库出错或您被禁止更新您的外部账号。',
'login' => '登录',
'nav-login-createaccount' => '登录/创建账户',
-'loginprompt' => '你必须启用Cookies才能登录{{SITENAME}}。',
+'loginprompt' => '你必须启用Cookie才能登录{{SITENAME}}。',
'userlogin' => '登录/创建账户',
'userloginnocreate' => '登录',
'logout' => '退出',
'userlogout' => '退出',
'notloggedin' => '未登录',
-'userlogin-noaccount' => '还没有账号吗?',
+'userlogin-noaccount' => '没有账户?',
'userlogin-joinproject' => '加入{{SITENAME}}',
'nologin' => '没有账户?$1。',
'nologinlink' => '创建账户',
'createaccount' => '创建账户',
'gotaccount' => '已经拥有账户?请$1。',
'gotaccountlink' => '登录',
-'userlogin-resetlink' => 'å¿\98è®°äº\86ä½ ç\9a\84ç\99»å½\95ä¿¡æ\81¯ï¼\9f',
+'userlogin-resetlink' => '忘记你的登录信息?',
'userlogin-resetpassword-link' => '重置你的密码',
'helplogin-url' => 'Help:登录',
-'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|登录说明]]',
+'userlogin-helplink' => '[[{{MediaWiki:helplogin-url}}|登录帮助]]',
'createacct-join' => '请在下面输入你的信息。',
'createacct-emailrequired' => '电子邮件地址:',
'createacct-emailoptional' => '电子邮件地址 (可选)',
'createacct-reason' => '原因',
'createacct-reason-ph' => '为什么您要创建另一个帐户',
'createacct-captcha' => '安全检查',
-'createacct-imgcaptcha-ph' => 'è¾\93å\85¥æ\82¨å\9c¨ä¸\8aé\9d¢ç\9c\8bå\88°ç\9a\84æ\96\87æ\9c¬',
+'createacct-imgcaptcha-ph' => '请è¾\93å\85¥ä¸\8aå\9b¾ä¸ç\9a\84æ\96\87å\97',
'createacct-submit' => '创建您的账户',
-'createacct-benefit-heading' => '{{SITENAME}} 是由像你这样的人建立的。',
+'createacct-benefit-heading' => '{{SITENAME}}是由像您这样的人建立的。',
'createacct-benefit-body1' => '{{PLURAL:$1|编辑}}',
'createacct-benefit-body2' => '{{PLURAL:$1|页面}}',
'createacct-benefit-body3' => '最近{{PLURAL:$1|贡献者}}',
'badretype' => '您所输入的密码并不相同。',
'userexists' => '用户名已存在。请使用其他名称。',
'loginerror' => '登录错误',
-'createacct-error' => '帐户创建错误',
+'createacct-error' => '账户创建出错',
'createaccounterror' => '无法建立账户:$1',
'nocookiesnew' => '该用户帐户已被创建,但登录失败。{{SITENAME}}使用Cookie实现用户登录。您已禁用Cookie,请启用Cookie,然后使用你的新用户名与密码登录。',
'nocookieslogin' => '{{SITENAME}}使用Cookie实现用户登录。您已停用Cookie。请启用Cookie后再试。',
'nouserspecified' => '你必须指定用户名。',
'login-userblocked' => '该用户已被封禁,禁止登录。',
'wrongpassword' => '你输入的密码错误。请重试。',
-'wrongpasswordempty' => '您没有输入密码,请重试!',
+'wrongpasswordempty' => '密码输入为空。请重试。',
'passwordtooshort' => '您的密码至少需要$1个字符。',
'password-name-match' => '您的密码必须和您的用户名不相同。',
'password-login-forbidden' => '这个用户名称及密码的使用是被禁止的。',
-'mailmypassword' => 'ç\94¨ç\94µå\90é\82®ä»¶å\8f\91é\80\81æ\96°å¯\86ç \81',
+'mailmypassword' => '电子邮件发送新密码',
'passwordremindertitle' => '{{SITENAME}}的新临时密码',
'passwordremindertext' => '有人(可能是您,来自IP地址$1)已请求{{SITENAME}}的新密码($4)。
用户“$2”的一个新临时密码现在已被设置好为“$3”。
'cannotchangeemail' => '本wiki不允许对账户的电子邮件地址进行更改。',
'emaildisabled' => '此站点不能发送电子邮件。',
'accountcreated' => '已建立账户',
-'accountcreatedtext' => '$1的账户已经被创建。',
+'accountcreatedtext' => '[[{{ns:User}}:$1|$1]] ([[{{ns:User talk}}:$1|talk]])的账户已创建。',
'createaccount-title' => '在{{SITENAME}}中创建新账户',
'createaccount-text' => '有人在{{SITENAME}}中利用您的邮箱创建了一个名为 "$2" 的新帐户($4),密码是 "$3" 。您应该立即登录并更改密码。
# Special:PasswordReset
'passwordreset' => '重置密码',
-'passwordreset-text' => '完成该表格以重设你的密码。',
+'passwordreset-text-one' => '请输入你要重置的用户名。',
+'passwordreset-text-many' => '{{PLURAL:$1|输入部分数据以重置您的密码。}}',
'passwordreset-legend' => '重置密码',
-'passwordreset-disabled' => '此wiki已经禁用密码重置。',
+'passwordreset-disabled' => '此Wiki已经禁用密码重置。',
'passwordreset-emaildisabled' => '此Wiki上无法使用邮件功能。',
-'passwordreset-pretext' => '{{PLURAL:$1||输入下面的数据项之一}}',
'passwordreset-username' => '用户名:',
'passwordreset-domain' => '域:',
'passwordreset-capture' => '查看生成的电子邮件吗?',
# Special:ChangeEmail
'changeemail' => '更改电子邮件地址',
'changeemail-header' => '更改帐户的电子邮件地址',
-'changeemail-text' => 'å®\8cæ\88\90æ¤çª\97ä½\93可以更改您的电子邮件地址。您将需要输入您的密码以确认此更改。',
+'changeemail-text' => 'å¡«å\86\99æ¤è¡¨å\8d\95可以更改您的电子邮件地址。您将需要输入您的密码以确认此更改。',
'changeemail-no-info' => '
您必须登录以直接访问本页。',
'changeemail-oldemail' => '当前电子邮件地址:',
请注意,只有当你在[[Special:Preferences|系统设置]]确认了电子邮件地址且未被禁止使用“电邮联系”功能时,才可以使用它。
你当前的IP地址是$3,该封禁ID是#$5。请在你的询问中包含上面的所有信息。",
-'blockednoreason' => 'æ\97 给出原因',
+'blockednoreason' => 'æ\9cª给出原因',
'whitelistedittext' => '您必须先$1才可编辑页面。',
'confirmedittext' => '你必须确认你的电子邮件地址才能编辑页面。请通过[[Special:Preferences|系统设置]]设置并确认你的电子邮件地址。',
'nosuchsectiontitle' => '没有这个段落',
'loginreqlink' => '登录',
'loginreqpagetext' => '您必须$1才能查看其它页面。',
'accmailtitle' => '密码已寄出',
-'accmailtext' => "'$1'的密码已经被发送到$2。",
+'accmailtext' => "'[[User talk:$1|$1]]'的随机密码已经发送到$2。这个账户的密码可在登陆后的'[[Special:ChangePassword|更改密码]]'''页面中更改。",
'newarticle' => '(新页面)',
'newarticletext' => '您进入了一个尚未创建的页面。
要创建该页面,请在下面的编辑框中输入内容(详情参见[[{{MediaWiki:Helppage}}|帮助页]])。
'userinvalidcssjstitle' => "'''警告:''' 不存在皮肤\"\$1\"。注意自定义的 .css 和 .js 页要使用小写标题,例如,{{ns:user}}:Foo/vector.css 不同于 {{ns:user}}:Foo/Vector.css。",
'updated' => '(已更新)',
'note' => "'''注意:'''",
-'previewnote' => "'''请记住这仅为预览。'''您的更改还未保存!",
+'previewnote' => "'''请记住这只是预览。'''你的更改还没有保存!",
'continue-editing' => '往编辑框',
'previewconflict' => '该预览反映了上面文字编辑区中的文字在你保存后的显示状况。',
'session_fail_preview' => "'''对不起!由于会话数据丢失,我们无法处理你的编辑。'''请重试。如果仍然失败,请尝试[[Special:UserLogout|退出登录]]后重新登录。",
'edit_form_incomplete' => "'''编辑表格的某些部分没有到达服务器,请检查你的编辑是否完整并重试。'''",
'editing' => '编辑“$1”',
'creating' => '创建 $1',
-'editingsection' => '编辑“$1”(段落)',
+'editingsection' => '编辑“$1(段落)”',
'editingcomment' => '编辑“$1”(新段落)',
'editconflict' => '编辑冲突:$1',
'explainconflict' => "其他用户在你开始编辑后更改了该页面。上面的文字区含有该页面当前的文字。下面的文字区显示你的更改。你必须把你的更改合并至现有文字。'''只有'''当你单击“{{int:savearticle}}”后,上面的文字区中的文字才会被保存。",
'permissionserrorstext-withaction' => '因为以下{{PLURAL:$1|原因}},你没有权限$2:',
'recreate-moveddeleted-warn' => "'''警告:你正在重新创建曾经被删除的页面。'''
-你应该考虑继续编辑本页是否合适。这里提供本页的删除和移动记录以供参考:",
+你应该考虑继续编辑本页是否合适。这里提供本页的删除和移动日志以供参考:",
'moveddeleted-notice' => '本页面已被删除。下面提供本页的删除和移动日志以供参考。',
'log-fulllog' => '查看完整日志',
'edit-hook-aborted' => '编辑被hook指令取消。
它可能刚刚被删除。',
'edit-conflict' => '编辑冲突。',
'edit-no-change' => '因为没有文字更改,你的编辑已被忽略。',
+'postedit-confirmation' => '您的编辑已保存。',
'edit-already-exists' => '不可以建立一个新页面。
它已经存在。',
'defaultmessagetext' => '默认消息文本',
'content-failed-to-parse' => '未能将 $2 内容转换为 $1:$3',
'invalid-content-data' => '无效的内容数据',
'content-not-allowed-here' => '[[$2]]页面上不允许“$1”内容',
-'editwarning-warning' => '离开这个页面会令您遗失之前的所有更改。若您已经登入,您可在您参数设置的“{{int:prefs-editing}}”节中关闭此警告。',
+'editwarning-warning' => '离开这个页面会令您遗失之前的所有更改。若您已经登入,您可在您参数设置的“编辑”节中关闭此警告。',
# Content models
'content-model-wikitext' => 'wiki语法',
'post-expand-template-inclusion-warning' => '警告:包含模板大小过大。
一些模板将不会包含。',
'post-expand-template-inclusion-category' => '模板包含上限已经超过的页面',
-'post-expand-template-argument-warning' => '警告:这个页面有最少一个模参数有过大扩展大小。
-这些参数会被略过。',
+'post-expand-template-argument-warning' => "'''警告:'''本页面包含至少一个模板参数有过大扩展大小。这些参数会被略过。",
'post-expand-template-argument-category' => '包含着略过模板参数的页面',
'parser-template-loop-warning' => '检查到模板循环:[[$1]]',
'parser-template-recursion-depth-warning' => '模板递归深度越限($1)',
'history-fieldset-title' => '浏览历史',
'history-show-deleted' => '仅被删除的',
'histfirst' => '最早',
-'histlast' => '最新',
+'histlast' => '最近',
'historysize' => '($1字节)',
'historyempty' => '(空)',
'rev-deleted-user' => '(用户名被删除)',
'rev-deleted-event' => '(日志条目被删除)',
'rev-deleted-user-contribs' => '[用户名或IP地址被删除 - 编辑在贡献中隐藏]',
-'rev-deleted-text-permission' => "本页面版本已被'''删除'''。详情请见[{{fullurl:{{#Special:Log}}/delete|page={{PAGENAMEE}}}} 删除日志]。",
+'rev-deleted-text-permission' => "本页面版本已被'''删除'''。详情请见[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} 删除日志]。",
'rev-deleted-text-unhide' => "本页面版本已被'''删除'''。详情请见[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} 删除日志]。如果你想继续操作,你仍然可以[$1 查看本版本]。",
'rev-suppressed-text-unhide' => "该页面修订已经被'''监督隐藏'''。在[{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} 监督日志]中可以找到详细的信息。如果您想继续的话,您可以仍然[$1 去查看这次修订]。",
'rev-deleted-text-view' => "本页面版本已被'''删除'''。你可以查看它,详情请见[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} 删除日志]。",
'revdelete-show-file-submit' => '是',
'revdelete-selected' => "'''选取'''[[:$1]]'''的$2次修订:'''",
'logdelete-selected' => "'''{{PLURAL:$1|选取的日志项目}}:'''",
-'revdelete-text' => "'''删除的修订仍将显示在页面历史中, 但它们的文本内容已不能被公众访问。'''
-在{{SITENAME}}的其他管理员将仍能访问隐藏的内容并通过与此相同的界面恢复删除,除非站点工作者进行了一些附加的限制。",
-'revdelete-confirm' => '请确认您肯定去做的话,您就要明白到后果,以及这个程序符合[[{{MediaWiki:Policy-url}}|政策]]。',
+'revdelete-text' => "'''删除的版本仍将显示在页面历史及日志中,但公众已不能访问其文本内容。'''
+在{{SITENAME}}的其他管理员将仍能访问隐藏的内容并通过该界面恢复删除的版本,除非进行了额外限制。",
+'revdelete-confirm' => '请确认该操作,明白其后果,并确保该操作符合[[{{MediaWiki:Policy-url}}|方针]]。',
'revdelete-suppress-text' => "阻止应该'''只'''在以下情形使用:
*潜在的诽谤信息
*不合适的个人信息
'revdelete-suppress' => '同时阻止管理员与其他用户查看数据',
'revdelete-unsuppress' => '在已恢复的修订中移除限制',
'revdelete-log' => '原因:',
-'revdelete-submit' => '应用于选中的{{PLURAL:$1|修订}}',
+'revdelete-submit' => '应用于选中的{{PLURAL:$1|版本}}',
'revdelete-success' => "'''修订的可见性已经成功更新。'''",
'revdelete-failure' => "'''修订的可见性无法更新:'''
$1",
'revdelete-otherreason' => '其他/附加原因:',
'revdelete-reasonotherlist' => '其他原因',
'revdelete-edit-reasonlist' => '编辑删除埋由',
-'revdelete-offender' => '修订版本编辑者:',
+'revdelete-offender' => '版本作者:',
# Suppression log
'suppressionlog' => '监督日志',
'searchmenu-legend' => '搜索选项',
'searchmenu-exists' => "'''本wiki上有名为“[[:$1]]”的页面。'''",
'searchmenu-new' => "'''在本wiki上新建名为“[[:$1]]”的页面!'''",
-'searchhelp-url' => 'Help:目录',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|去浏览以此为首的页面]]',
'searchprofile-articles' => '内容页面',
'searchprofile-project' => '帮助和项目页面',
'search-relatedarticle' => '相关',
'mwsuggest-disable' => '禁用AJAX建议',
'searcheverything-enable' => '在所有名字空间中搜索',
-'searchrelated' => '相关页面',
+'searchrelated' => '相关',
'searchall' => '所有',
'showingresults' => "下面显示从第'''$2'''条结果开始的'''$1'''条结果。",
'showingresultsnum' => "下面显示从第'''$2'''条结果开始的'''$3'''条结果。",
'powersearch' => '高级搜索',
'powersearch-legend' => '高级搜索',
'powersearch-ns' => '在以下的名字空间中搜索:',
-'powersearch-redir' => '重定向页列表',
+'powersearch-redir' => '列出重定向页',
'powersearch-field' => '搜索',
'powersearch-togglelabel' => '选择:',
'powersearch-toggleall' => '全选',
# Preferences page
'preferences' => '设置',
-'mypreferences' => '系统设置',
+'mypreferences' => '设置',
'prefs-edits' => '编辑数:',
'prefsnologin' => '未登录',
'prefsnologintext' => '您必须先<span class="plainlinks">[{{fullurl:{{#Special:UserLogin}}|returnto=$1}} 登录]</span>才能设置个人参数。',
'prefs-help-gender' => '选填项目。使软件使用正确的性别称呼。该信息将会公开。',
'email' => '电子邮件',
'prefs-help-realname' => '真实姓名是选填项目。如果你选择提供它,它将会用于贡献署名。',
-'prefs-help-email' => '电子邮件地址是选填项目。但是在你忘记密码需要重置密码时需要电子邮件地址。',
-'prefs-help-email-others' => 'ä½ äº¦å\8f¯ä»¥é\80\89æ\8b©è®©å\85¶ä»\96ç\94¨æ\88·é\80\9aè¿\87ä½ ç\9a\84ç\94¨æ\88·é¡µæ\88\96讨论页上的链接用电子邮件联系你。其他用户联系你时你的电子邮件地址不会显示。',
+'prefs-help-email' => '电子邮件地址是选填项目,但是当你忘记密码需要重置密码时需要该项信息。',
+'prefs-help-email-others' => 'ä½ ä¹\9få\8f¯ä»¥é\80\89æ\8b©è®©å\85¶ä»\96ç\94¨æ\88·é\80\9aè¿\87ä½ ç\9a\84ç\94¨æ\88·æ\88\96讨论页é\9d¢上的链接用电子邮件联系你。其他用户联系你时你的电子邮件地址不会显示。',
'prefs-help-email-required' => '电子邮件地址是必填项目。',
'prefs-info' => '基本信息',
'prefs-i18n' => '界面语言',
'userrights-changeable-col' => '你可以更改的用户组',
'userrights-unchangeable-col' => '你不能更改的用户组',
'userrights-conflict' => '用户权限冲突 !请重新应用您的更改。',
+'userrights-removed-self' => '您已成功删除您自己的权利。因此,您不再能够访问此页。',
# Groups
'group' => '用户组:',
'right-editusercssjs' => '编辑其他用户的CSS和JavaScript文件',
'right-editusercss' => '编辑其他用户的CSS文件',
'right-edituserjs' => '编辑其他用户的JavaScript文件',
+'right-editmyusercss' => '编辑您自己的用户 CSS 文件',
+'right-editmyuserjs' => '编辑您自己的用户 JavaScript 文件',
+'right-viewmywatchlist' => '查看你的监视列表',
+'right-editmywatchlist' => '编辑您的监视列表。请注意即使没有这种权利,某些操作仍将添加页面。',
'right-rollback' => '快速回退最后编辑特定页面的用户的编辑',
'right-markbotedits' => '标记回退编辑为机器人编辑',
'right-noratelimit' => '不受速率限制影响',
'action-userrights-interwiki' => '编辑其它wiki的用户的用户权限',
'action-siteadmin' => '锁定或解锁数据库',
'action-sendemail' => '电邮联系其他用户',
+'action-editmywatchlist' => '编辑你的监视列表',
+'action-viewmywatchlist' => '查看你的监视列表',
# Recent changes
-'nchanges' => '$1次更改',
+'nchanges' => '$1个更改',
'recentchanges' => '最近更改',
'recentchanges-legend' => '最近更改选项',
'recentchanges-summary' => '在此页面上跟踪维基的更改。',
-'recentchanges-feed-description' => '跟踪订阅本wiki的最近更改。',
+'recentchanges-feed-description' => '用这个源跟踪本wiki的最近更改。',
'recentchanges-label-newpage' => '这次编辑建立了一个新页面',
'recentchanges-label-minor' => '这是一个小编辑',
'recentchanges-label-bot' => '这次编辑是由机器人进行',
'recentchanges-label-unpatrolled' => '该编辑尚未巡查',
-'rcnote' => "下面是最后'''$2'''天的最后'''$1'''个更改,截至$4 $5。",
+'rcnote' => "下面是过去'''$2'''天的最后'''$1'''个更改,截至$4 $5。",
'rcnotefrom' => "下面是自'''$2'''起的更改(最多显示'''$1'''个)。",
'rclistfrom' => '显示自$1起的新更改',
'rcshowhideminor' => '$1小编辑',
'rcshowhidebots' => '$1机器人的编辑',
'rcshowhideliu' => '$1登录用户的编辑',
'rcshowhideanons' => '$1匿名用户的编辑',
-'rcshowhidepatr' => '$1å·¡æ\9f¥è¿\87的编辑',
+'rcshowhidepatr' => '$1已巡æ\9f¥的编辑',
'rcshowhidemine' => '$1我的编辑',
'rclinks' => '显示最后$2天的最后$1个更改<br />$3',
'diff' => '差异',
'reuploaddesc' => '取消上传并返回上传表单',
'upload-tryagain' => '提交修改后的文件描述',
'uploadnologin' => '未登录',
-'uploadnologintext' => '您必须先[[Special:UserLogin|登录]]才能上传文件。',
+'uploadnologintext' => '您必须先$1才能上传文件。',
'upload_directory_missing' => '上传目录($1)遗失,不能由网页服务器建立。',
'upload_directory_read_only' => '上传目录($1)不存在或无写权限。',
'uploaderror' => '上传错误',
'upload-prohibited' => '禁止的文件类型:$1。',
'uploadlog' => '上传日志',
'uploadlogpage' => '上传日志',
-'uploadlogpagetext' => '下面是最近的文件上传的列表。图像概览请见[[Special:NewFiles|新文件库]]。',
+'uploadlogpagetext' => 'ä¸\8bé\9d¢æ\98¯æ\9c\80è¿\91ç\9a\84æ\96\87件ä¸\8aä¼ ç\9a\84å\88\97表ã\80\82å\9b¾å\83\8fæ¦\82è§\88请è§\81[[Special:NewFiles|æ\96°æ\96\87件å\9b¾åº\93]]ã\80\82',
'filename' => '文件名',
'filedesc' => '文件说明',
'fileuploadsummary' => '摘要:',
'statistics-users-active-desc' => '在前$1天中操作过的用户',
'statistics-mostpopular' => '浏览最多的页面',
-'disambiguations' => '链接至消歧义页的页面',
+'disambiguations' => '链接至消歧义页面的页面',
'disambiguationspage' => 'Template:消歧义',
'disambiguations-text' => "以下的页面都有到'''消歧义页'''的链接,但它们可能可以链接到更适当的页面。<br />一个页面如果使用了[[MediaWiki:Disambiguationspage]]内的模板,则会被视为消歧义页。",
-'pageswithprop' => '有某页面属性的页面',
-'pageswithprop-legend' => '有某页面属性的页面',
+'pageswithprop' => '有页面属性的页面',
+'pageswithprop-legend' => '有页面属性的页面',
'pageswithprop-text' => '此页面列出了使用特定页面属性的页面名单。',
'pageswithprop-prop' => '属性名称:',
'pageswithprop-submit' => '提交',
'double-redirect-fixed-maintenance' => '修复双重重定向自[[$1]]至[[$2]]。',
'double-redirect-fixer' => '重定向页修复器',
-'brokenredirects' => '损坏的重定向页',
+'brokenredirects' => '受损重定向页',
'brokenredirectstext' => '以下的重定向页面指向的是不存在的页面:',
'brokenredirects-edit' => '编辑',
'brokenredirects-delete' => '删除',
-'withoutinterwiki' => '无语言链接的页面',
+'withoutinterwiki' => '无语言链接页面',
'withoutinterwiki-summary' => '以下的页面是未有语言链接到其它语言版本。',
'withoutinterwiki-legend' => '前缀',
'withoutinterwiki-submit' => '显示',
-'fewestrevisions' => '最少版本页面',
+'fewestrevisions' => '版本最少页面',
# Miscellaneous special pages
'nbytes' => '$1字节',
'unusedimages' => '未使用文件',
'popularpages' => '热点页面',
'wantedcategories' => '需要的分类',
-'wantedpages' => '待撰页面',
+'wantedpages' => '需要的页面',
'wantedpages-badtitle' => '在结果组上的无效标题:$1',
'wantedfiles' => '需要的文件',
'wantedfiletext-cat' => '下列被使用的文件并不存在。已列出可能存在外部媒体库中的文件。任何此类误报将被<del>剔除</del>。此外,[[:$1]]列出列出了嵌入不存在文件的页面。',
'listusers-editsonly' => '只显示有编辑的用户',
'listusers-creationsort' => '按建立日期排序',
'usereditcount' => '$1次编辑',
-'usercreated' => '$1 $2{{GENDER:$3|创建}}',
+'usercreated' => '{{GENDER:$3|创建}}于$1 $2',
'newpages' => '新页面',
'newpages-username' => '用户名:',
-'ancientpages' => '最早页面',
+'ancientpages' => '最老页面',
'move' => '移动',
'movethispage' => '移动本页',
'unusedimagestext' => '下列文件已存在,但并未插入任何页面。
# Book sources
'booksources' => '网络书源',
-'booksources-search-legend' => '搜索网络书源',
+'booksources-search-legend' => '搜索图书来源',
'booksources-isbn' => 'ISBN:',
'booksources-go' => '提交',
'booksources-text' => '以下是一些网络书店的链接列表,其中可能有您要找的书籍的更多信息:',
'notvisiblerev' => '上次由不同用户所作的修订版本已经删除',
'watchnochange' => '在显示的时间段内您所监视的页面没有更改。',
'watchlist-details' => '不计讨论页面,你的监视列表中有$1个页面。',
-'wlheader-enotif' => '* 已经启动电子邮件通知功能。',
-'wlheader-showupdated' => "*你上次访问后更改的页面以'''粗体'''显示",
+'wlheader-enotif' => '已启用电子邮件通知',
+'wlheader-showupdated' => "你上次访问后更改的页面以'''粗体'''显示",
'watchmethod-recent' => '检查被监视页面的最近编辑',
'watchmethod-list' => '查看监视页中的最新修改',
'watchlistcontains' => '您的监视列表包含$1个页面。',
'iteminvalidname' => "页面'$1'错误,无效命名...",
'wlnote' => "下面是最后'''$2'''小时的最后'''$1'''个更改,截至$3 $4。",
-'wlshowlast' => '显示最近$1小时、$2天或$3的更改',
+'wlshowlast' => '显示过去$1小时 $2天 $3',
'watchlist-options' => '监视列表选项',
# Displayed when you click the "watch" button and it is in the process of watching
'enotif_body_intro_restored' => '{{SITENAME}}页面$1已于$PAGEEDITDATE被$2{{GENDER:$2|恢复}},请浏览<$3>查看当前版本。',
'enotif_body_intro_changed' => '{{SITENAME}}页面$1已于$PAGEEDITDATE被$2{{GENDER:$2|更改}},请浏览 $3 查看当前版本。',
'enotif_lastvisited' => '请浏览 $1 查看你上次访问后的所有更改。',
-'enotif_lastdiff' => '请浏览$1查看该更改。',
+'enotif_lastdiff' => '请浏览 $1 查看该更改。',
'enotif_anon_editor' => '匿名用户$1',
'enotif_body' => '亲爱的$WATCHINGUSERNAME:
'mycontris' => '贡献',
'contribsub2' => '$1的贡献($2)',
'nocontribs' => '没有找到符合特征的更改。',
-'uctop' => '(最后更改)',
+'uctop' => '(当前)',
'month' => '截止月份:',
'year' => '截止年份:',
最近的封锁日志项目在下面提供以便参考:',
'sp-contributions-search' => '搜索贡献',
'sp-contributions-username' => 'IP地址或用户名:',
-'sp-contributions-toponly' => '只显示最后修订版本的编辑',
+'sp-contributions-toponly' => '仅显示最后版本的编辑',
'sp-contributions-submit' => '搜索',
# What links here
'linkshere' => "以下页面链接至'''[[:$1]]''':",
'nolinkshere' => "没有页面链接至'''[[:$1]]'''。",
'nolinkshere-ns' => "在所选的名字空间内没有页面链接到'''[[:$1]]'''。",
-'isredirect' => '重定向页',
+'isredirect' => '重定向页面',
'istemplate' => '包含',
'isimage' => '文件链接',
'whatlinkshere-prev' => '上$1个',
'whatlinkshere-next' => '下$1个',
'whatlinkshere-links' => '←链入页面',
-'whatlinkshere-hideredirs' => '$1重定向',
+'whatlinkshere-hideredirs' => '$1重定向页',
'whatlinkshere-hidetrans' => '$1包含',
'whatlinkshere-hidelinks' => '$1链接',
'whatlinkshere-hideimages' => '$1个文件链接',
# Thumbnails
'thumbnail-more' => '放大',
'filemissing' => '无法找到文件',
-'thumbnail_error' => '生成缩略图错误:$1',
+'thumbnail_error' => '生成缩略图出错:$1',
+'thumbnail_error_remote' => '来自$1的错误消息从:
+$2',
'djvu_page_error' => 'DjVu页面超出范围',
'djvu_no_xml' => '无法在DjVu文件中获取XML',
'thumbnail-temp-create' => '无法创建临时缩略图文件',
'tooltip-pt-anontalk' => '有关本IP地址的编辑的讨论',
'tooltip-pt-preferences' => '你的系统设置',
'tooltip-pt-watchlist' => '你正在监视更改的页面的列表',
-'tooltip-pt-mycontris' => '你的贡献列表',
+'tooltip-pt-mycontris' => '你的贡献的列表',
'tooltip-pt-login' => '我们鼓励你登录,不过这不是强制的',
'tooltip-pt-anonlogin' => '我们鼓励你登录,不过这不是强制的',
'tooltip-pt-logout' => '退出登录',
'tooltip-ca-nstab-main' => '查看内容页面',
'tooltip-ca-nstab-user' => '查看用户页面',
'tooltip-ca-nstab-media' => '查看媒体文件页面',
-'tooltip-ca-nstab-special' => '本页为特殊页面,你不能编辑本页',
+'tooltip-ca-nstab-special' => '这是特殊页面,你无法编辑该页',
'tooltip-ca-nstab-project' => '查看项目页面',
'tooltip-ca-nstab-image' => '查看文件页面',
'tooltip-ca-nstab-mediawiki' => '查看系统信息',
'tooltip-ca-nstab-help' => '查看帮助页面',
'tooltip-ca-nstab-category' => '查看分类页面',
'tooltip-minoredit' => '标记本编辑为小编辑',
-'tooltip-save' => '保存您的更改',
+'tooltip-save' => '保存你的更改',
'tooltip-preview' => '预览您的更改,请在保存前使用此功能!',
'tooltip-diff' => '显示您对该文字所做的更改',
'tooltip-compareselectedversions' => '查看此页面两个选定的修订版本间的差异。',
'modern.css' => '/* 此处的 CSS 将影响使用 Modern 皮肤的用户 */',
'vector.css' => '/* 此处的 CSS 将影响使用 Vector 皮肤的用户 */',
'print.css' => '/* 此处的 CSS 将影响打印输出 */',
-'handheld.css' => '/* 此处的 CSS 将影响在 $wgHandheldStyle 设置手提装置面板 */',
'noscript.css' => '/* 此处的 CSS 将影响没有启用 JavaScript 的用户 */',
'group-autoconfirmed.css' => '/* 此处的 CSS 将只会影响自动确认用户 */',
'group-bot.css' => '/* 此处的 CSS 将只会影响机器人 */',
# Info page
'pageinfo-title' => '“$1”的信息',
-'pageinfo-not-current' => 'å\8fªè\83½æ\98¾ç¤ºå½\93å\89\8d修订ç\89\88æ\9c¬ç\9a\84信息。',
+'pageinfo-not-current' => '对ä¸\8dèµ·ï¼\8cæ\88\91们æ\97 æ³\95æ\8f\90ä¾\9bæ\97§ç\89\88æ\9c¬ç\9a\84该信息。',
'pageinfo-header-basic' => '基本信息',
'pageinfo-header-edits' => '编辑历史',
'pageinfo-header-restrictions' => '页面保护',
'pageinfo-header-properties' => '页面属性',
'pageinfo-display-title' => '显示的标题',
-'pageinfo-default-sort' => 'é»\98认æ\8e\92åº\8få\97',
+'pageinfo-default-sort' => 'é»\98认æ\8e\92åº\8få\85³é\94®è¯\8d',
'pageinfo-length' => '页面长度(字节)',
'pageinfo-article-id' => '页面ID',
'pageinfo-language' => '页面内容语言',
'pageinfo-robot-policy' => '搜索引擎状态',
'pageinfo-robot-index' => '可索引',
'pageinfo-robot-noindex' => '不可索引',
-'pageinfo-views' => 'æ\9f¥ç\9c\8b次æ\95°',
-'pageinfo-watchers' => '页面监视者人数',
-'pageinfo-few-watchers' => '少于$1名监视者',
-'pageinfo-redirects-name' => '重定向到本页',
-'pageinfo-subpages-name' => '本页的子页面',
-'pageinfo-subpages-value' => '$1 ($2个重定向;$3个非重定向)',
+'pageinfo-views' => '查看数',
+'pageinfo-watchers' => '页面监视者数',
+'pageinfo-few-watchers' => '少于$1个监视者',
+'pageinfo-redirects-name' => '本页重定向页数',
+'pageinfo-subpages-name' => '本页子页面数',
+'pageinfo-subpages-value' => '$1($2个重定向页,$3个非重定向页)',
'pageinfo-firstuser' => '页面创建者',
'pageinfo-firsttime' => '页面创建日期',
-'pageinfo-lastuser' => '最后编辑',
-'pageinfo-lasttime' => '最后编辑的日期',
-'pageinfo-edits' => 'æ\80»ç¼\96è¾\91次æ\95°',
-'pageinfo-authors' => '不同编者总计',
-'pageinfo-recent-edits' => 'æ\9c\80è¿\91ç\9a\84ç¼\96è¾\91æ\95°ï¼\88$1内)',
-'pageinfo-recent-authors' => '最近的不同编者数',
+'pageinfo-lastuser' => '最后编辑者',
+'pageinfo-lasttime' => '最后编辑日期',
+'pageinfo-edits' => '总编辑数',
+'pageinfo-authors' => '不同作者总数',
+'pageinfo-recent-edits' => 'æ\9c\80è¿\91ç¼\96è¾\91æ\95°ï¼\88è¿\87å\8e»$1内)',
+'pageinfo-recent-authors' => '最近的不同作者数',
'pageinfo-magic-words' => '魔术字($1)',
'pageinfo-hidden-categories' => '隐藏分类($1)',
'pageinfo-templates' => '使用的模板($1)',
-'pageinfo-transclusions' => '$1个包含此页的页面',
+'pageinfo-transclusions' => '包含该页的页面($1)',
'pageinfo-toolboxlink' => '页面信息',
-'pageinfo-redirectsto' => '重定向到',
+'pageinfo-redirectsto' => '重定向至',
'pageinfo-redirectsto-info' => '信息',
-'pageinfo-contentpage' => '计算为内容页',
+'pageinfo-contentpage' => '计为内容页面',
'pageinfo-contentpage-yes' => '是',
-'pageinfo-protect-cascading' => 'ä»\8eè¿\99é\87\8cå¼\80å§\8bè¿\9eé\94\81ä¿\9dæ\8a¤',
+'pageinfo-protect-cascading' => 'ä¿\9dæ\8a¤è¿\9eé\94\81è\87ªæ¤',
'pageinfo-protect-cascading-yes' => '是',
-'pageinfo-protect-cascading-from' => '保护级联自',
+'pageinfo-protect-cascading-from' => '保护连锁自',
'pageinfo-category-info' => '分类信息',
-'pageinfo-category-pages' => '页数',
+'pageinfo-category-pages' => '页面数',
'pageinfo-category-subcats' => '子分类数',
'pageinfo-category-files' => '文件数',
'file-no-thumb-animation-gif' => "'''注意:由于技术限制,高分辨率GIF图像的缩略图无法进行动画处理。'''",
# Special:NewFiles
-'newimages' => '新文件库',
+'newimages' => 'æ\96°æ\96\87件å\9b¾åº\93',
'imagelisttext' => "以下是按$2排列的'''$1'''个文件列表。",
'newimages-summary' => '本特殊页面展示最后上传的文件。',
'newimages-legend' => '过滤',
'hours' => '$1小时',
'days' => '$1天',
'weeks' => '$1周',
-'months' => '{{PLURAL:$1|$1个月}}',
-'years' => '{{PLURAL:$1|$1年}}',
+'months' => '$1个月',
+'years' => '$1年',
'ago' => '$1前',
'just-now' => '刚刚',
# Human-readable timestamps
'hours-ago' => '$1小时前',
-'minutes-ago' => '$1分钟前',
+'minutes-ago' => '$1分前',
'seconds-ago' => '$1秒前',
'monday-at' => '周一$1',
'tuesday-at' => '周二$1',
'exif-compression-4' => 'CCITT第4组传真编码',
'exif-compression-6' => 'JPEG(旧)',
-'exif-copyrighted-true' => '版权',
+'exif-copyrighted-true' => '受版权保护',
'exif-copyrighted-false' => '公共领域',
'exif-unknowndate' => '未知日期',
'edit-externally-help' => '(更多信息请见[//www.mediawiki.org/wiki/Manual:External_editors 安装说明])',
# 'all' in various places, this might be different for inflected languages
-'watchlistall2' => '全部',
+'watchlistall2' => '所有',
'namespacesall' => '全部',
'monthsall' => '全部',
'limitall' => '全部',
'watchlistedit-raw-removed' => '$1个标题被删除:',
# Watchlist editing tools
-'watchlisttools-view' => 'æ\9f¥ç\9c\8bç\9b\91è§\86ç\9a\84更改',
-'watchlisttools-edit' => 'æ\9f¥ç\9c\8bå\92\8c编辑监视列表',
+'watchlisttools-view' => 'æ\9f¥ç\9c\8bç\9b¸å\85³更改',
+'watchlisttools-edit' => 'æ\9f¥ç\9c\8b并编辑监视列表',
'watchlisttools-raw' => '编辑原始监视列表',
# Signatures
# Core parser functions
'unknown_extension_tag' => '不明的扩展标签“$1”',
-'duplicate-defaultsort' => "'''警告:'''默认排序关键字“$2”覆盖了之前的默认排序关键字“$1”。",
+'duplicate-defaultsort' => "'''警告:'''默认排序关键词“$2”覆盖了之前的默认排序关键词“$1”。",
# Special:Version
'version' => '版本',
# Special:Redirect
'redirect' => '重定向',
-'redirect-legend' => '重定向至一个文件或页面',
+'redirect-legend' => '重定向至文件或页面',
'redirect-summary' => '本特殊页面会重定向到一个文件(给予文件名),一个页面(给予修订版本ID),或一个用户页面(给予用户数字ID)。',
'redirect-submit' => '提交',
'redirect-lookup' => '基于:',
# External image whitelist
'external_image_whitelist' => ' #请原样保留本行文字<pre>
-#在下方书写正则表达式片段(//中间的部份)
-#这些规则将与外部(盗链)图像的URL匹配
-#匹配的URL将被显示为图像,否则只会显示链向图像的链接
-#以#开头的行视为评论
+#请在下面输入正则表达式片段(//之间的部份)
+#这些项目将会匹配外部图像的URL
+#匹配的项目将显示为图像,否则只会显示图像的链接
+#以#å¼\80头ç\9a\84è¡\8c被è§\86为è¯\84论
#不区分大小写
-#在本行上面输入所有正则表达式。请原样保留本行文字</pre>',
+#请在本行上面输入所有正则表达式片段。请原样保留本行文字</pre>',
# Special:Tags
'tags' => '有效的更改标签',
'revdelete-unrestricted' => '已移除对管理员的限制',
'logentry-move-move' => '$1移动$3页面至$4',
'logentry-move-move-noredirect' => '$1移动$3页面至$4,不留重定向',
-'logentry-move-move_redir' => '$1移å\8a¨é¡µé\9d¢$3è\87³$4è¦\86ç\9b\96é\87\8då®\9aå\90\91',
+'logentry-move-move_redir' => '$1移å\8a¨é¡µé\9d¢$3è¦\86ç\9b\96é\87\8då®\9aå\90\91页$4',
'logentry-move-move_redir-noredirect' => '$1通过重定向移动$3页面至$4,不留重定向',
'logentry-patrol-patrol' => '$1{{GENDER:$2|标记}}页面$3的版本$4为已巡查',
'logentry-patrol-patrol-auto' => '$1自动{{GENDER:$2|标记}}页面$3的版本$4为已巡查',
* @author Pbdragonwang
* @author PhiLiP
* @author Philip
+ * @author Radish10cm
* @author Shinjiman
* @author Shirayuki
* @author Shizhao
'oct' => '10月',
'nov' => '11月',
'dec' => '12月',
+'january-date' => '1月$1日',
+'february-date' => '2月$1日',
+'march-date' => '3月$1日',
+'april-date' => '4月$1日',
+'may-date' => '5月$1日',
+'june-date' => '6月$1日',
+'july-date' => '7月$1日',
+'august-date' => '8月$1日',
+'september-date' => '9月$1日',
+'october-date' => '10月$1日',
+'november-date' => '11月$1日',
+'december-date' => '12月$1日',
# Categories related messages
'pagecategories' => '$1個分類',
'mytalk' => '討論',
'anontalk' => '此IP的對話頁',
'navigation' => '導覽',
-'and' => 'å\92\8c',
+'and' => 'å\8f\8a',
# Cologne Blue skin
'qbfind' => '尋找',
'create-this-page' => '建立本頁',
'delete' => '刪除',
'deletethispage' => '刪除本頁',
+'undeletethispage' => '取消刪除此頁',
'undelete_short' => '反刪除$1項修訂',
'viewdeleted_short' => '查看$1項已刪除的修訂',
'protect' => '保護',
'disclaimers' => '免責聲明',
'disclaimerpage' => 'Project:一般免責聲明',
'edithelp' => '編輯幫助',
-'edithelppage' => 'Help:如何編輯頁面',
'helppage' => 'Help:目錄',
'mainpage' => '首頁',
'mainpage-description' => '首頁',
'namespaceprotected' => "您並沒有權限編輯'''$1'''名字空間的頁面。",
'customcssprotected' => '你並無權限編輯此CSS頁面,因為它包含了其他用戶的個人設置。',
'customjsprotected' => '你並無權限去編輯此JavaScript頁面,因為他包含了另一位用戶的個人設定。',
+'mycustomcssprotected' => '你沒有編輯這CSS頁面的權限。',
+'mycustomjsprotected' => '你沒有編輯這JavaScript頁面的權限。',
'ns-specialprotected' => '特殊頁面是不可以編輯的。',
'titleprotected' => "這個標題已經被[[User:$1|$1]]保護以防止建立。理由是''$2''。",
'filereadonlyerror' => '無法修改文件「$1」因為文件庫「$2」處於唯讀模式。 !
'userlogin-noaccount' => '沒有帳戶嗎?',
'userlogin-joinproject' => '參與 {{SITENAME}}',
'nologin' => '您還沒有帳號嗎?$1。',
-'nologinlink' => '建立用戶',
-'createaccount' => '建立用戶',
+'nologinlink' => '建立帳戶',
+'createaccount' => '建立帳戶',
'gotaccount' => '已經擁有帳號?$1。',
'gotaccountlink' => '登入',
'userlogin-resetlink' => '忘記了你的登錄信息?',
'createacct-reason-ph' => '您為甚麼要創建另一個帳號',
'createacct-captcha' => '安全驗證',
'createacct-imgcaptcha-ph' => '輸入您在上面看到的字符',
-'createacct-submit' => '建立帳號',
+'createacct-submit' => '建立帳戶',
'createacct-benefit-heading' => '{{SITENAME}}是由像您一樣的人建立。',
'createacct-benefit-body1' => '{{PLURAL:$1|次編輯|次編輯}}',
'createacct-benefit-body2' => '{{PLURAL:$1|頁頁面|頁頁面}}',
'cannotchangeemail' => '本wiki不允許對賬戶的電郵地址進行更改。',
'emaildisabled' => '此網站不能發送電子郵件。',
'accountcreated' => '已建立賬戶',
-'accountcreatedtext' => '$1的賬戶已經被建立。',
+'accountcreatedtext' => '[[{{ns:User}}:$1|$1]]([[{{ns:User talk}}:$1|討論]])的賬戶已經被建立。',
'createaccount-title' => '在{{SITENAME}}中建立新賬戶',
'createaccount-text' => '有人在{{SITENAME}}中利用您的電郵創建了一個名為 "$2" 的新賬戶($4),密碼是 "$3" 。您應該立即登入並更改密碼。
# Special:PasswordReset
'passwordreset' => '重新設定密碼',
-'passwordreset-text' => '完成此表格以重置您的密碼。',
+'passwordreset-text-one' => '完成此表格以重新設定您的密碼。',
+'passwordreset-text-many' => '{{PLURAL:$1|輸入其中一項資料以重新設定您的密碼。}}',
'passwordreset-legend' => '重設密碼',
'passwordreset-disabled' => '此維基上已禁止了重設密碼。',
'passwordreset-emaildisabled' => '電子郵件功能在此 wiki 上已禁用。',
-'passwordreset-pretext' => '{{PLURAL:$1||輸入下列其中一個}}',
'passwordreset-username' => '用戶名:',
'passwordreset-domain' => '域名:',
'passwordreset-capture' => '查看生成的電子郵件嗎?',
它可能剛剛被刪除。',
'edit-conflict' => '編輯衝突。',
'edit-no-change' => '您的編輯已經略過,因為文字無任何改動。',
+'postedit-confirmation' => '您的編輯已儲存。',
'edit-already-exists' => '不可以建立一個新頁面。
它已經存在。',
'defaultmessagetext' => '預設訊息文字',
'histlegend' => "差異選擇:標記要比較修訂版本的單選按鈕並點擊底部的按鈕進行比較。<br />
說明:'''({{int:cur}})''' 指與最新修訂版本比較,'''({{int:last}})''' 指與前一個修訂修訂版本比較,'''{{int:minoreditletter}}''' = 小修改。",
'history-fieldset-title' => '瀏覽歷史',
-'history-show-deleted' => '僅已刪除的',
+'history-show-deleted' => '僅限已刪除',
'histfirst' => '最早版本',
'histlast' => '最新版本',
'historysize' => '($1 位元組)',
'rev-deleted-user' => '(用戶名已移除)',
'rev-deleted-event' => '(日誌已除)',
'rev-deleted-user-contribs' => '[用戶名或IP地址已移除 - 從貢獻中隱藏編輯]',
-'rev-deleted-text-permission' => "該頁面修訂已被'''刪除'''。
-在[{{fullurl:{{#Special:Log}}/delete|page={{PAGENAMEE}}}} 刪除日誌]中可以找到詳細的訊息。",
+'rev-deleted-text-permission' => "該頁面修訂已被'''刪除'''。在[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} 刪除日誌]中可以找到詳細的訊息。",
'rev-deleted-text-unhide' => "本頁面版本已被'''刪除'''。詳情請見[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} 刪除日誌]。如果你想繼續操作,你仍然可以[$1 查看本版本]。",
'rev-suppressed-text-unhide' => "該頁面修訂已經被'''監督隱藏'''。在[{{fullurl:{{#Special:Log}}/suppress|page={{FULLPAGENAMEE}}}} 監督日誌]中可以找到詳細的信息。如果您想繼續的話,您可以仍然[$1 去查看這次修訂]。",
'rev-deleted-text-view' => "該頁面修訂已經被'''刪除'''。您可以查看它。在[{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} 刪除日誌]中可以找到詳細的信息。",
'searchmenu-legend' => '搜尋選項',
'searchmenu-exists' => "'''在這個 wiki 上已有一頁面叫做「[[:$1]]」。'''",
'searchmenu-new' => "'''在這個 wiki 上建立這個頁面「[[:$1]]」!'''",
-'searchhelp-url' => 'Help:目錄',
'searchmenu-prefix' => '[[Special:PrefixIndex/$1|去瀏覽以此為首的頁面]]',
'searchprofile-articles' => '內容頁面',
'searchprofile-project' => '幫助和計劃頁面',
'userrights-changeable-col' => '您可以更改的群組',
'userrights-unchangeable-col' => '您不可以更改的群組',
'userrights-conflict' => '使用者權限衝突!請重新套用您的更改。',
+'userrights-removed-self' => '您已成功移除自己的權限,故此您沒法再次訪問此頁。',
# Groups
'group' => '群組:',
'right-editusercssjs' => '編輯其他用戶的CSS和JavaScript檔案',
'right-editusercss' => '編輯其他用戶的CSS檔案',
'right-edituserjs' => '編輯其他用戶的JavaScript檔案',
+'right-editmyusercss' => '編輯你自己的用戶CSS檔',
+'right-editmyuserjs' => '編輯你自己的用戶JavaScript檔',
+'right-viewmywatchlist' => '查看您的監視列表',
+'right-editmywatchlist' => '編輯您的監視列表。請注意即使沒有這種權利,某些操作仍將添加頁面。',
'right-rollback' => '快速復原上位用戶對某一頁面之編輯',
'right-markbotedits' => '標示復原編輯作機械人編輯',
'right-noratelimit' => '沒有使用頻率限制',
'action-userrights-interwiki' => '編輯在其它wiki上用戶的權限',
'action-siteadmin' => '鎖定和解除鎖定資料庫',
'action-sendemail' => '發送電郵',
+'action-editmywatchlist' => '編輯您的監視列表�',
+'action-viewmywatchlist' => '查看您的監視列表',
# Recent changes
'nchanges' => '$1次更改',
'recentchanges' => '最近更改',
'recentchanges-legend' => '最近更改選項',
-'recentchanges-summary' => '跟蹤這個wiki上的最新更改。',
-'recentchanges-feed-description' => '追蹤æ¤è¨\82é\96±å\9c¨ wiki 上的最近更改。',
+'recentchanges-summary' => '跟蹤此維基上的最近更改。',
+'recentchanges-feed-description' => 'è¨\82é\96±æ¤ç¶å\9fº上的最近更改。',
'recentchanges-label-newpage' => '這次編輯建立了一個新頁面',
'recentchanges-label-minor' => '這是一個小編輯',
'recentchanges-label-bot' => '這次編輯是由機器人進行',
'reuploaddesc' => '取消上載並返回上載表單',
'upload-tryagain' => '提交修改後的檔案描述',
'uploadnologin' => '未登入',
-'uploadnologintext' => '您必須先[[Special:UserLogin|登入]]
-才能上載檔案。',
+'uploadnologintext' => '您必須先$1才能上載檔案。',
'upload_directory_missing' => '上傳目錄($1)遺失,不能由網頁伺服器建立。',
'upload_directory_read_only' => '上傳目錄($1)不存在或無寫權限。',
'uploaderror' => '上載錯誤',
'double-redirect-fixed-maintenance' => '修復從[[$1]]到[[$2]]的雙重重定向。',
'double-redirect-fixer' => '重新定向修正器',
-'brokenredirects' => '損壞的重定向頁',
+'brokenredirects' => '受損重定向頁',
'brokenredirectstext' => '以下的重定向頁指向的是不存在的頁面:',
'brokenredirects-edit' => '編輯',
'brokenredirects-delete' => '刪除',
'notvisiblerev' => '上次由不同用戶所作的修訂版本已經刪除',
'watchnochange' => '在顯示的時間段內您所監視的頁面沒有更改。',
'watchlist-details' => '不包含討論頁,您的監視列表上有 $1 個頁面。',
-'wlheader-enotif' => '* 已經啟動電子郵件通知功能。',
-'wlheader-showupdated' => "* 在{{GENDER:|你|妳|你}}上次檢視後有被修改過的頁面會顯示為'''粗體'''",
+'wlheader-enotif' => '已經啟動電子郵件通知功能。',
+'wlheader-showupdated' => "在{{GENDER:|你|妳|你}}上次檢視後有被修改過的頁面會顯示為'''粗體'''。",
'watchmethod-recent' => '檢查被監視頁面的最近編輯',
'watchmethod-list' => '檢查最近編輯的被監視頁面',
'watchlistcontains' => '您的監視列表包含$1個頁面。',
'thumbnail-more' => '放大',
'filemissing' => '無法找到檔案',
'thumbnail_error' => '創建縮圖錯誤: $1',
+'thumbnail_error_remote' => '$1發出的電子郵件:
+$2',
'djvu_page_error' => 'DjVu頁面超出範圍',
'djvu_no_xml' => '無法在DjVu檔案中擷取XML',
'thumbnail-temp-create' => '無法創建臨時縮略圖文件',
'tooltip-n-mainpage-description' => '訪問首頁',
'tooltip-n-portal' => '關於本計劃、{{GENDER:|你|妳|你}}可以做什麼、應該如何做',
'tooltip-n-currentevents' => '提供目前新聞事件的背景資料',
-'tooltip-n-recentchanges' => '列出該網站中的最近修改',
+'tooltip-n-recentchanges' => '列出此維基中的最近修改',
'tooltip-n-randompage' => '隨機載入一個頁面',
'tooltip-n-help' => '尋求幫助',
'tooltip-t-whatlinkshere' => '列出所有與本頁相連的頁面',
'modern.css' => '/* 此處的 CSS 將影響使用 Modern 面板的用戶 */',
'vector.css' => '/* 此處的 CSS 將影響使用 Vector 面板的用戶 */',
'print.css' => '/* 此處的 CSS 將影響打印輸出 */',
-'handheld.css' => '/* 此處的 CSS 將影響在 $wgHandheldStyle 設定手提裝置面板 */',
'noscript.css' => '/* 此處的 CSS 將影響沒有啓用 JavaScript 的用戶 */',
'group-autoconfirmed.css' => '/* 此處的 CSS 將只會影響自動確認用戶 */',
'group-bot.css' => '/* 此處的 CSS 將只會影響機器人 */',
'version-hook-subscribedby' => '利用於',
'version-version' => '(版本 $1)',
'version-license' => '授權',
-'version-poweredby-credits' => "這個 Wiki 由 '''[//www.mediawiki.org/ MediaWiki]''' 驅動,版權所有 © 2001-$1 $2。",
+'version-poweredby-credits' => "此維基由'''[//www.mediawiki.org/ MediaWiki]'''驅動,版權所有 © 2001-$1 $2。",
'version-poweredby-others' => '其他',
'version-credits-summary' => '我們感謝以下人士為[[Special:Version|MediaWiki]]作出的貢獻。',
'version-license-info' => 'MediaWiki為自由軟件;您可依據自由軟件基金會所發表的GNU通用公共授權條款規定,就本程式再為發佈與/或修改;無論您依據的是本授權的第二版或(您自行選擇的)任一日後發行的版本。
'version-entrypoints' => '入口點URL',
'version-entrypoints-header-entrypoint' => '入口點',
'version-entrypoints-header-url' => 'URL',
+'version-entrypoints-articlepath' => '[https://www.mediawiki.org/wiki/Manual:$wgArticlePath 條目路徑]',
# Special:Redirect
'redirect' => '重定向檔案、用戶ID或頁面修訂ID',
// Bail if PHP is too low
if ( !function_exists( 'version_compare' ) || version_compare( phpversion(), '5.3.2' ) < 0 ) {
// We need to use dirname( __FILE__ ) here cause __DIR__ is PHP5.3+
- require( dirname( __FILE__ ) . '/includes/PHPVersionError.php' );
+ require dirname( __FILE__ ) . '/includes/PHPVersionError.php';
wfPHPVersionError( 'load.php' );
}
-require ( __DIR__ . '/includes/WebStart.php' );
+require __DIR__ . '/includes/WebStart.php';
wfProfileIn( 'load.php' );
-# Doxyfile 1.7.5.1
+# Doxyfile 1.7.6.1
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for MediaWiki.
#
# Some placeholders have been added for MediaWiki usage:
# {{OUTPUT_DIRECTORY}}
MULTILINE_CPP_IS_BRIEF = NO
INHERIT_DOCS = YES
SEPARATE_MEMBER_PAGES = NO
-TAB_SIZE = 8
+TAB_SIZE = 4
ALIASES = "type{1}=<b> \1 </b>:" \
"types{2}=<b> \1 </b> or <b> \2 </b>:" \
"types{3}=<b> \1 </b>, <b> \2 </b>, or <b> \3 </b>:" \
"copyright=\note" \
"license=\note" \
"codeCoverageIgnore="
+TCL_SUBST =
OPTIMIZE_OUTPUT_FOR_C = NO
OPTIMIZE_OUTPUT_JAVA = NO
OPTIMIZE_FOR_FORTRAN = NO
BUILTIN_STL_SUPPORT = NO
CPP_CLI_SUPPORT = NO
SIP_SUPPORT = NO
-IDL_PROPERTY_SUPPORT = NO
+IDL_PROPERTY_SUPPORT = YES
DISTRIBUTE_GROUP_DOC = YES
SUBGROUPING = YES
INLINE_GROUPED_CLASSES = NO
INLINE_SIMPLE_STRUCTS = NO
TYPEDEF_HIDES_STRUCT = NO
SYMBOL_CACHE_SIZE = 0
+LOOKUP_CACHE_SIZE = 1
#---------------------------------------------------------------------------
# Build related configuration options
#---------------------------------------------------------------------------
*.txt \
README
RECURSIVE = YES
+EXCLUDE = {{EXCLUDE}}
EXCLUDE_SYMLINKS = YES
EXCLUDE_PATTERNS = LocalSettings.php AdminSettings.php StartProfiler.php .svn */.git/* {{EXCLUDE_PATTERNS}}
EXCLUDE_SYMBOLS =
HTML_EXTRA_FILES =
HTML_COLORSTYLE_HUE = 220
HTML_COLORSTYLE_SAT = 100
-HTML_COLORSTYLE_GAMMA = 80
+HTML_COLORSTYLE_GAMMA = 80
HTML_TIMESTAMP = YES
HTML_ALIGN_MEMBERS = YES
HTML_DYNAMIC_SECTIONS = NO
DOT_GRAPH_MAX_NODES = 50
MAX_DOT_GRAPH_DEPTH = 1000
DOT_TRANSPARENT = NO
-DOT_MULTI_TARGETS = NO
+DOT_MULTI_TARGETS = YES
GENERATE_LEGEND = YES
DOT_CLEANUP = YES
// Make sure we're on PHP5.3.2 or better
if ( !function_exists( 'version_compare' ) || version_compare( PHP_VERSION, '5.3.2' ) < 0 ) {
// We need to use dirname( __FILE__ ) here cause __DIR__ is PHP5.3+
- require_once( dirname( __FILE__ ) . '/../includes/PHPVersionError.php' );
+ require_once dirname( __FILE__ ) . '/../includes/PHPVersionError.php';
wfPHPVersionError( 'cli' );
}
$this->addOption( 'server', "The protocol and server name to use in URLs, e.g. " .
"http://en.wikipedia.org. This is sometimes necessary because " .
"server name detection may fail in command line scripts.", false, true );
+ $this->addOption( 'profiler', 'Set to "text" or "trace" to show profiling output', false, true );
# Save generic options to display them separately in help
$this->mGenericParameters = $this->mParams;
// Make sure the class is loaded first
if ( !MWInit::classExists( $maintClass ) ) {
if ( $classFile ) {
- require_once( $classFile );
+ require_once $classFile;
}
if ( !MWInit::classExists( $maintClass ) ) {
$this->error( "Cannot spawn child: $maintClass" );
$wgShowSQLErrors = true;
@set_time_limit( 0 );
$this->adjustMemoryLimit();
+
+ // Per-script profiling; useful for debugging
+ $forcedProfiler = $this->getOption( 'profiler' );
+ if ( $forcedProfiler === 'text' ) {
+ Profiler::setInstance( new ProfilerSimpleText( array() ) );
+ Profiler::instance()->setTemplated( true );
+ } elseif ( $forcedProfiler === 'trace' ) {
+ Profiler::setInstance( new ProfilerSimpleTrace( array() ) );
+ Profiler::instance()->setTemplated( true );
+ }
}
/**
( strpos( file_get_contents( $file ), '$maintClass' ) === false ) ) {
continue;
}
- require( $file );
+ require $file;
$vars = get_defined_vars();
if ( array_key_exists( 'maintClass', $vars ) ) {
self::$mCoreScripts[$vars['maintClass']] = $file;
$title = $titleObj->getPrefixedDBkey();
$this->output( "$title..." );
# Update searchindex
- # TODO: pass the Content object to SearchUpdate, let the search engine decide how to deal with it.
- $u = new SearchUpdate( $pageId, $titleObj->getText(), $rev->getContent()->getTextForSearchIndex() );
+ $u = new SearchUpdate( $pageId, $titleObj->getText(), $rev->getContent() );
$u->doUpdate();
$this->output( "\n" );
}
* @ingroup MaintenanceArchive
*/
-require( __DIR__ . '/../commandLine.inc' );
+require __DIR__ . '/../commandLine.inc';
/**
* Maintenance script that upgrade for log_id/log_deleted fields in a
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to correct wrong values in the `page_latest` field
*/
function loadPlugin( $class, $file ) {
if ( $file != '' ) {
- require_once( $file );
+ require_once $file;
}
$register = array( $class, 'register' );
call_user_func_array( $register, array( &$this ) );
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/backup.inc' );
+require_once __DIR__ . '/backup.inc';
/**
* @ingroup Maintenance
* @throws MWException
*/
function getText( $id ) {
+ global $wgContentHandlerUseDB;
+
$prefetchNotTried = true; // Whether or not we already tried to get the text via prefetch.
$text = false; // The candidate for a good text. false if no proper value.
$failures = 0; // The number of times, this invocation of getText already failed.
if ( ! isset( $this->db ) ) {
throw new MWException( "No database available" );
}
- $revLength = $this->db->selectField( 'revision', 'rev_len', array( 'rev_id' => $revID ) );
+
+ $revLength = strlen( $text );
+ if ( $wgContentHandlerUseDB ) {
+ $row = $this->db->selectRow( 'revision', array( 'rev_len', 'rev_content_model' ), array( 'rev_id' => $revID ), __METHOD__ );
+ if ( $row ) {
+ // only check the length for the wikitext content handler,
+ // it's a wasted (and failed) check otherwise
+ if ( $row->rev_content_model == CONTENT_MODEL_WIKITEXT ) {
+ $revLength = $row->rev_len;
+ }
+ }
+
+ }
+ else {
+ $revLength = $this->db->selectField( 'revision', 'rev_len', array( 'rev_id' => $revID ) );
+ }
+
if ( strlen( $text ) == $revLength ) {
if ( $tryIsPrefetch ) {
$this->prefetchCount++;
* @ingroup Benchmark
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Base class for benchmark scripts.
--- /dev/null
+This directory hold several benchmarking scripts used as a proof of speed
+or to track PHP performances over time.
+
+To get somehow accurate result, you might want to bound the PHP process
+to a specific CPU with `taskset` and raise its priority with `nice`. Example:
+
+ $ taskset 1 nice -n-10 php bench_wfIsWindows.php
* @author Platonides
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* Maintenance script that benchmarks HTTP request vs HTTPS request.
* @ingroup Benchmark
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* Maintenance script that benchmarks SQL DELETE vs SQL TRUNCATE.
* @author Platonides
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* Maintenance script that benchmark if elseif... versus switch case.
* @ingroup Benchmark
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
function bfNormalizeTitleStrTr( $str ) {
return strtr( $str, '_', ' ' );
* @ingroup Benchmark
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* This little benchmark executes the regexp used in Language->checkTitleEncoding()
* @author Tyler Romeo
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* Maintenance script that benchmarks wfBaseConvert().
* @author Platonides
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* Maintenance script that benchmarks wfIsWindows().
* @ingroup Benchmark
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* Maintenance script that benchmarks %MediaWiki hooks.
* @ingroup Benchmark
*/
-require_once( __DIR__ . '/Benchmarker.php' );
+require_once __DIR__ . '/Benchmarker.php';
/**
* Maintenance script that benchmarks Squid purge.
*/
/** */
-require_once( __DIR__ . '/commandLine.inc' );
+require_once __DIR__ . '/commandLine.inc';
function cdbShowHelp( $command ) {
$commandList = array(
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to change the password of a given user.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to check that pages marked as being redirects really are.
* @file
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to check images to see if they exist, are readable, etc.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to check syntax of all PHP files in MediaWiki.
* @ingroup Maintenance
*/
-
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to check that database usernames are actually valid.
public function __construct() {
parent::__construct();
$this->mDescription = "Verify that database usernames are actually valid";
+ $this->setBatchSize( 1000 );
}
function execute() {
$dbr = wfGetDB( DB_SLAVE );
- $res = $dbr->select( 'user',
- array( 'user_id', 'user_name' ),
- null,
- __METHOD__
- );
+ $maxUserId = 0;
+ do {
+ $res = $dbr->select( 'user',
+ array( 'user_id', 'user_name' ),
+ array( 'user_id > ' . $maxUserId ),
+ __METHOD__,
+ array(
+ 'ORDER BY' => 'user_id',
+ 'LIMIT' => $this->mBatchSize,
+ )
+ );
- foreach ( $res as $row ) {
- if ( ! User::isValidUserName( $row->user_name ) ) {
- $this->error( sprintf( "%s: %6d: '%s'\n", wfWikiID(), $row->user_id, $row->user_name ) );
- wfDebugLog( 'checkUsernames', $row->user_name );
+ foreach ( $res as $row ) {
+ if ( ! User::isValidUserName( $row->user_name ) ) {
+ $this->error( sprintf( "%s: %6d: '%s'\n", wfWikiID(), $row->user_id, $row->user_name ) );
+ wfDebugLog( 'checkUsernames', $row->user_name );
+ }
}
- }
+ $maxUserId = $row->user_id;
+ } while( $res->numRows() );
}
}
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to cleans up old database tables, dropping old indexes
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/cleanupTable.inc' );
+require_once __DIR__ . '/cleanupTable.inc';
/**
* Maintenance script to clean up broken page links when somebody turns on $wgCapitalLinks.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/cleanupTable.inc' );
+require_once __DIR__ . '/cleanupTable.inc';
/**
* Maintenance script to clean up broken, unparseable upload filenames.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that removes hidden preferences from the database.
* @author Roan Kattouw
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to remove cache entries for removed ResourceLoader modules
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to cleanup all spam from a given hostname.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Generic class to cleanup a database table. Already subclasses Maintenance.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/cleanupTable.inc' );
+require_once __DIR__ . '/cleanupTable.inc';
/**
* Maintenance script to clean up broken, unparseable titles.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to remove old or broken uploads from temporary uploaded
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/cleanupTable.inc' );
+require_once __DIR__ . '/cleanupTable.inc';
/**
* Maintenance script to remove broken, unparseable titles in the watchlist table.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to remove all statistics tracking from the cache.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to clear the cache of interwiki prefixes for all local wikis.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
global $optionsWithArgs;
if ( !isset( $optionsWithArgs ) ) {
}
$maintClass = 'CommandLineInc';
-require( RUN_MAINTENANCE_IF_MAIN );
+require RUN_MAINTENANCE_IF_MAIN;
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/dumpIterator.php' );
+require_once __DIR__ . '/dumpIterator.php';
/**
* Maintenance script to take page text out of an XML dump file and render
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to convert from the old links schema (string->ID)
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to convert user options to the new `user_properties` table.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Copy all files in one container of one backend to another.
$src = FileBackendGroup::singleton()->get( $this->getOption( 'src' ) );
$dst = FileBackendGroup::singleton()->get( $this->getOption( 'dst' ) );
$containers = explode( '|', $this->getOption( 'containers' ) );
- $subDir = $this->getOption( rtrim( 'subdir', '/' ), '' );
+ $subDir = rtrim( $this->getOption( 'subdir', '' ), '/' );
$rateFile = $this->getOption( 'ratefile' );
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Copy all jobs from one job queue system to another.
* @author Pablo Castellano <pablo@anche.no>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to create an account and grant it administrator rights.
* @author Aaron Schulz
*/
-require_once( __DIR__ . '/Maintenance.php' );
-require_once( __DIR__ . '/deleteArchivedFiles.inc' );
+require_once __DIR__ . '/Maintenance.php';
+require_once __DIR__ . '/deleteArchivedFiles.inc';
/**
* Maintenance script to delete archived (non-current) files from the database.
* @author Aaron Schulz
*/
-require_once( __DIR__ . '/Maintenance.php' );
-require_once( __DIR__ . '/deleteArchivedRevisions.inc' );
+require_once __DIR__ . '/Maintenance.php';
+require_once __DIR__ . '/deleteArchivedRevisions.inc';
/**
* Maintenance script to delete archived (deleted from public) revisions
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to delete a batch of pages.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that deletes all pages in the MediaWiki namespace
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that deletes all pages in the MediaWiki namespace
* @param string|bool $langCode See --lang-code option.
*/
protected function fetchMessageInfo( $langCode, array &$messageInfo ) {
- global $wgUser, $wgContLang;
+ global $wgContLang;
if ( $langCode ) {
$this->output( "\n... fetching message info for language: $langCode" );
if ( !$user ) {
$this->error( "Invalid username", true );
}
+ global $wgUser;
$wgUser = $user;
// Hide deletions from RecentChanges
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that deletes image information from the object cache.
* @author Rob Church <robchur@gmail.com>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that deletes old (non-current) revisions from the database.
* @todo More efficient cleanup of text records
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that deletes revisions which refer to a nonexisting page.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that deletes one or more revisions by moving them
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that deletes self-references to $wgServer
# We use require and return true here because when you return false
# the php webserver will discard post data and things like login
# will not function in the dev environment.
- require( $file );
+ require $file;
return true;
}
$mime = false;
editintro
edititis
editlink
+editmyusercss
+editmyuserjs
+editmywatchlist
editnotice
editnotsupported
editondblclick
ghostscript
gimpbaseenums
git
+gitblit
gitdir
github
-gitweb
global
globalauth
globalblock
viewcount
viewdeleted
viewhelppage
+viewmywatchlist
viewprevnext
viewsource
viewsourcelink
// to $maintenance->mSelf. Keep that here for b/c
$self = $maintenance->getName();
-// Detect compiled mode
+# Load composer's autoloader if present
+if ( is_readable( "$IP/vendor/autoload.php" ) ) {
+ require_once "$IP/vendor/autoload.php";
+}
# Get the MWInit class
-require_once( "$IP/includes/Init.php" );
-require_once( "$IP/includes/AutoLoader.php" );
+require_once "$IP/includes/Init.php";
+# Start the autoloader, so that extensions can derive classes from core files
+require_once "$IP/includes/AutoLoader.php";
# Stub the profiler
-require_once( "$IP/includes/profiler/Profiler.php" );
+require_once "$IP/includes/profiler/Profiler.php";
# Start the profiler
$wgProfiler = array();
if ( file_exists( "$IP/StartProfiler.php" ) ) {
- require( "$IP/StartProfiler.php" );
+ require "$IP/StartProfiler.php";
}
// Some other requires
-require_once( "$IP/includes/Defines.php" );
-require_once( MWInit::compiledPath( 'includes/DefaultSettings.php' ) );
+require_once "$IP/includes/Defines.php";
+require_once MWInit::compiledPath( 'includes/DefaultSettings.php' );
if ( defined( 'MW_CONFIG_CALLBACK' ) ) {
# Use a callback function to configure MediaWiki
# Maybe a hook?
global $cluster;
$cluster = 'pmtpa';
- require( MWInit::interpretedPath( '../wmf-config/wgConf.php' ) );
+ require MWInit::interpretedPath( '../wmf-config/wgConf.php' );
}
// Require the configuration (probably LocalSettings.php)
- require( $maintenance->loadSettings() );
+ require $maintenance->loadSettings();
}
if ( $maintenance->getDbType() === Maintenance::DB_ADMIN &&
is_readable( "$IP/AdminSettings.php" ) )
{
- require( MWInit::interpretedPath( 'AdminSettings.php' ) );
+ require MWInit::interpretedPath( 'AdminSettings.php' );
}
if ( $maintenance->getDbType() === Maintenance::DB_NONE ) {
}
$maintenance->finalSetup();
// Some last includes
-require_once( MWInit::compiledPath( 'includes/Setup.php' ) );
+require_once MWInit::compiledPath( 'includes/Setup.php' );
// Much much faster startup than creating a title object
$wgTitle = null;
$optionsWithArgs = array( 'pagelist', 'start', 'end', 'revstart', 'revend' );
-require_once( __DIR__ . '/commandLine.inc' );
-require_once( __DIR__ . '/backup.inc' );
+require_once __DIR__ . '/commandLine.inc';
+require_once __DIR__ . '/backup.inc';
$dumper = new BackupDumper( $argv );
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Base class for interating over a dump.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that generates a plaintext link dump.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that generates a page name dump for SisterSites usage.
$originalDir = getcwd();
-require_once( __DIR__ . '/commandLine.inc' );
-require_once( __DIR__ . '/backupTextPass.inc' );
+require_once __DIR__ . '/commandLine.inc';
+require_once __DIR__ . '/backupTextPass.inc';
$dumper = new TextPassDumper( $argv );
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to dump a the list of files uploaded,
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to make a page edit.
$noRC = $this->hasOption( 'no-rc' );
$wgUser = User::newFromName( $userName );
+ $context = RequestContext::getMain();
+ $context->setUser( $wgUser );
if ( !$wgUser ) {
$this->error( "Invalid username", true );
}
if ( !$wgTitle ) {
$this->error( "Invalid title", true );
}
+ $context->setTitle( $wgTitle );
$page = WikiPage::factory( $wgTitle );
--- /dev/null
+<?php
+/**
+ * Delete archived (non-current) files from storage
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * http://www.gnu.org/copyleft/gpl.html
+ *
+ * @file
+ * @ingroup Maintenance
+ * @author Aaron Schulz
+ */
+
+require_once( __DIR__ . '/Maintenance.php' );
+
+/**
+ * Maintenance script to delete archived (non-current) files from storage.
+ *
+ * @TODO: Maybe add some simple logging
+ *
+ * @ingroup Maintenance
+ * @since 1.22
+ */
+class EraseArchivedFile extends Maintenance {
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = "Erases traces of deleted files.";
+ $this->addOption( 'delete', 'Perform the deletion' );
+ $this->addOption( 'filename', 'File name', false, true );
+ $this->addOption( 'filekey', 'File storage key (with extension) or "*"', true, true );
+ }
+
+ public function execute() {
+ if ( !$this->hasOption( 'delete' ) ) {
+ $this->output( "Use --delete to actually confirm this script\n" );
+ }
+
+ $filekey = $this->getOption( 'filekey' );
+ $filename = $this->getOption( 'filename' );
+
+ if ( $filekey === '*' ) { // all versions by name
+ if ( !strlen( $filename ) ) {
+ $this->error( "Missing --filename parameter.", 1 );
+ }
+ $afile = false;
+ } else { // specified version
+ $dbw = wfGetDB( DB_MASTER );
+ $row = $dbw->selectRow( 'filearchive', '*',
+ array( 'fa_storage_group' => 'deleted', 'fa_storage_key' => $filekey ),
+ __METHOD__ );
+ if ( !$row ) {
+ $this->error( "No deleted file exists with key '$filekey'.", 1 );
+ }
+ $filename = $row->fa_name;
+ $afile = ArchivedFile::newFromRow( $row );
+ }
+
+ $file = wfLocalFile( $filename );
+ if ( $file->exists() ) {
+ $this->error( "File '$filename' is still a public file, use the delete form.\n", 1 );
+ }
+
+ $this->output( "Purging all thumbnails for file '$filename'..." );
+ $file->purgeCache();
+ $file->purgeHistory();
+ $this->output( "done.\n" );
+
+ if ( $afile instanceof ArchivedFile ) {
+ $this->scrubVersion( $afile );
+ } else {
+ $this->output( "Finding deleted versions of file '$filename'...\n" );
+ $this->scrubAllVersions( $filename );
+ $this->output( "Done\n" );
+ }
+ }
+
+ protected function scrubAllVersions( $name ) {
+ $dbw = wfGetDB( DB_MASTER );
+ $res = $dbw->select( 'filearchive', '*',
+ array( 'fa_name' => $name, 'fa_storage_group' => 'deleted' ),
+ __METHOD__ );
+ foreach ( $res as $row ) {
+ $this->scrubVersion( ArchivedFile::newFromRow( $row ) );
+ }
+ }
+
+ protected function scrubVersion( ArchivedFile $archivedFile ) {
+ $key = $archivedFile->getStorageKey();
+ $name = $archivedFile->getName();
+ $ts = $archivedFile->getTimestamp();
+ $repo = RepoGroup::singleton()->getLocalRepo();
+ $path = $repo->getZonePath( 'deleted' ) . '/' . $repo->getDeletedHashPath( $key ) . $key;
+ if ( $this->hasOption( 'delete' ) ) {
+ $status = $repo->getBackend()->delete( array( 'src' => $path ) );
+ if ( $status->isOK() ) {
+ $this->output( "Deleted version '$key' ($ts) of file '$name'\n" );
+ } else {
+ $this->output( "Failed to delete version '$key' ($ts) of file '$name'\n" );
+ $this->output( print_r( $status->getErrorsArray(), true ) );
+ }
+ } else {
+ $this->output( "Would delete version '{$key}' ({$ts}) of file '$name'\n" );
+ }
+ }
+}
+
+$maintClass = "EraseArchivedFile";
+require_once( RUN_MAINTENANCE_IF_MAIN );
$optionsWithArgs = array( 'd' );
/** */
-require_once( __DIR__ . "/commandLine.inc" );
+require_once __DIR__ . "/commandLine.inc";
if ( isset( $options['d'] ) ) {
$d = $options['d'];
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script used to fetch page text in a subprocess.
* @ingroup Maintenance
*/
-$wgProfiler = array( 'class' => 'ProfilerSimpleText' );
error_reporting( E_ALL );
-
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to test fileop performance.
}
public function execute() {
+ Profiler::setInstance( new ProfilerSimpleText( array() ) ); // clear
+
$backend = FileBackendGroup::singleton()->get( $this->getOption( 'b1' ) );
$this->doPerfTest( $backend );
$this->doPerfTest( $backend );
}
- $profiler = Profiler::instance();
- $profiler->setTemplated( true );
-
- //NOTE: as of MW1.21, $profiler->logData() is called implicitly by doMaintenance.php.
+ Profiler::instance()->setTemplated( true );
+ // NOTE: as of MW1.21, $profiler->logData() is called implicitly by doMaintenance.php.
}
protected function doPerfTest( FileBackend $backend ) {
* @author Antoine Musso <hashar at free dot fr>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that compares documented and actually present mismatches.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that fixes double redirects.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that fixes any entriy for protocol-relative URLs
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that fixes erroneous page_latest values
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that fixes timestamp corruption caused by one or
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that fixes the user_registration field.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that formats RELEASE-NOTE file to wiki text or HTML markup.
$wgEnableWriteAPI = true; // enable API.
// Install & enable Parser Hook extensions to increase code coverage. E.g.:
- require_once("extensions/ParserFunctions/ParserFunctions.php");
- require_once("extensions/Cite/Cite.php");
- require_once("extensions/inputbox/inputbox.php");
- require_once("extensions/Sort/Sort.php");
- require_once("extensions/wikihiero/wikihiero.php");
- require_once("extensions/CharInsert/CharInsert.php");
- require_once("extensions/FixedImage/FixedImage.php");
+ require_once "extensions/ParserFunctions/ParserFunctions.php";
+ require_once "extensions/Cite/Cite.php";
+ require_once "extensions/inputbox/inputbox.php";
+ require_once "extensions/Sort/Sort.php";
+ require_once "extensions/wikihiero/wikihiero.php";
+ require_once "extensions/CharInsert/CharInsert.php";
+ require_once "extensions/FixedImage/FixedImage.php";
// Install & enable Special Page extensions to increase code coverage. E.g.:
- require_once("extensions/Cite/SpecialCite.php");
- require_once("extensions/Renameuser/SpecialRenameuser.php");
+ require_once "extensions/Cite/SpecialCite.php";
+ require_once "extensions/Renameuser/SpecialRenameuser.php";
// --------- End ---------
If you want to try E_STRICT error logging, add this to the above:
// ///////////////////////// COMMAND LINE HELP ////////////////////////////////////
// This is a command line script, load MediaWiki env (gives command line options);
-require_once( __DIR__ . '/commandLine.inc' );
+require_once __DIR__ . '/commandLine.inc';
// if the user asked for an explanation of command line options.
if ( isset( $options["help"] ) ) {
* @see http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that generates a sitemap for the site.
* @author Antoine Musso
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Print serialized output of MediaWiki config vars
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that displays replication lag times.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that reports the hostname of a slave server.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that outputs page text to stdout.
#!/usr/bin/hhvm -f
<?php
-require( __DIR__ . '/../Maintenance.php' );
+require __DIR__ . '/../Maintenance.php';
class RunHipHopServer extends Maintenance {
function __construct() {
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that imports XML dump files into the current wiki.
'extensions', 'comment', 'comment-file', 'comment-ext', 'summary', 'user',
'license', 'sleep', 'limit', 'from', 'source-wiki-url', 'timestamp',
);
-require_once( __DIR__ . '/commandLine.inc' );
-require_once( __DIR__ . '/importImages.inc' );
+require_once __DIR__ . '/commandLine.inc';
+require_once __DIR__ . '/importImages.inc';
$processed = $added = $ignored = $skipped = $overwritten = $failed = 0;
echo "Import Images\n\n";
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to import all scripts in the MediaWiki namespace from a
$options = array( 'help', 'nooverwrite', 'norc' );
$optionsWithArgs = array( 'title', 'user', 'comment' );
-require_once( __DIR__ . '/commandLine.inc' );
+require_once __DIR__ . '/commandLine.inc';
echo "Import Text File\n\n";
if ( count( $args ) < 1 || isset( $options['help'] ) ) {
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
class InitEditCount extends Maintenance {
public function __construct() {
* @author Rob Church <robchur@gmail.com>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to re-initialise or update the site statistics table
*/
if ( !function_exists( 'version_compare' ) || ( version_compare( phpversion(), '5.3.2' ) < 0 ) ) {
- require_once( dirname( __FILE__ ) . '/../includes/PHPVersionError.php' );
+ require_once dirname( __FILE__ ) . '/../includes/PHPVersionError.php';
wfPHPVersionError( 'cli' );
}
define( 'MW_CONFIG_CALLBACK', 'Installer::overrideConfig' );
define( 'MEDIAWIKI_INSTALL', true );
-require_once( dirname( __DIR__ ) . "/maintenance/Maintenance.php" );
+require_once dirname( __DIR__ ) . "/maintenance/Maintenance.php";
/**
* Maintenance script to install and configure MediaWiki
"classes": [
"mw.Title",
"mw.notification",
+ "mw.user",
"mw.util",
"mw.plugin.*"
]
},
+ {
+ "name": "Actions",
+ "classes": ["mw.toolbar"]
+ },
{
"name": "API",
"classes": ["mw.Api*"]
"../../resources/mediawiki/mediawiki.Title.js",
"../../resources/mediawiki/mediawiki.notify.js",
"../../resources/mediawiki/mediawiki.notification.js",
+ "../../resources/mediawiki/mediawiki.user.js",
+ "../../resources/mediawiki.action/mediawiki.action.edit.js",
"../../resources/mediawiki.api",
"../../resources/jquery/jquery.localize.js"
]
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to do test JavaScript validity parses using jsmin+'s parser
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to show database lag.
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that gets all messages as defined by the
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../commandLine.inc' );
+require_once __DIR__ . '/../commandLine.inc';
$messagesDir = __DIR__ . '/../../languages/messages/';
$runTest = false;
$run = false;
} elseif ( !strcmp( $runMode, 'raw' ) ) {
$runMode = 'raw';
}
- include( $messagesFile );
+ include $messagesFile;
$messageExist = isset( $messages );
if ( $messageExist ) {
$wgMessages[$langCode] = $messages;
}
- include( $messagesFileC );
+ include $messagesFileC;
$messageCExist = isset( $messages );
if ( $messageCExist ) {
$wgMessages[$langCodeC] = $messages;
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../commandLine.inc' );
+require_once __DIR__ . '/../commandLine.inc';
require_once 'languages.inc';
require_once 'checkLanguage.inc';
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../commandLine.inc' );
+require_once __DIR__ . '/../commandLine.inc';
require_once 'checkLanguage.inc';
require_once 'languages.inc';
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that counts how many messages we have defined
private function getNumMessages( $file ) {
// Separate function to limit scope
- require( $file );
+ require $file;
if ( isset( $messages ) ) {
return count( $messages );
} else {
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that tests various language time and date functions.
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that check digit transformation.
$filename = Language::getMessagesFileName( $code );
$this->output( "Loading language [$code] ... " );
unset( $digitTransformTable );
- require_once( $filename );
+ require_once $filename;
if ( !isset( $digitTransformTable ) ) {
$this->error( "\$digitTransformTable not found for lang: $code" );
continue;
* @todo Make this more useful, right now just dumps $wgContLang
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that dumps an entire language, using the keys from English.
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Generate first letter data files for Collation.php
* @ingroup MaintenanceLanguage
*/
-require_once( __DIR__ . '/../../includes/normal/UtfNormalUtil.php' );
+require_once __DIR__ . '/../../includes/normal/UtfNormalUtil.php';
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Generates normalizer data files for Arabic and Malayalam.
*/
/** This is a command line script */
-require_once( __DIR__ . '/../Maintenance.php' );
-require_once( __DIR__ . '/languages.inc' );
+require_once __DIR__ . '/../Maintenance.php';
+require_once __DIR__ . '/languages.inc';
/**
* Maintenance script that tries to get the memory usage for each language file.
* @param $exif bool Treat the Exif messages?
*/
function __construct( $exif = true ) {
- require( __DIR__ . '/messageTypes.inc' );
+ require __DIR__ . '/messageTypes.inc';
$this->mIgnoredMessages = $wgIgnoredMessages;
if ( $exif ) {
$this->mOptionalMessages = array_merge( $wgOptionalMessages );
$this->mSpecialPageAliases[$code] = array();
$filename = Language::getMessagesFileName( $code );
if ( file_exists( $filename ) ) {
- require( $filename );
+ require $filename;
if ( isset( $messages ) ) {
$this->mRawMessages[$code] = $messages;
}
'talkpageheader',
'anonnotice',
'autoblock_whitelist',
- 'searchmenu-help',
'searchmenu-new-nocreate',
'googlesearch',
'opensearch-desc',
'createacct-benefit-icon3',
'today-at',
'redirect-text',
+ 'edithelppage',
);
/** Optional messages, which may be translated only if changed in the target language. */
'modern.css',
'vector.css',
'print.css',
- 'handheld.css',
'noscript.css',
'group-autoconfirmed.css',
'group-bot.css',
'oct',
'nov',
'dec',
+ 'january-date',
+ 'february-date',
+ 'march-date',
+ 'april-date',
+ 'may-date',
+ 'june-date',
+ 'july-date',
+ 'august-date',
+ 'september-date',
+ 'october-date',
+ 'november-date',
+ 'december-date',
),
'categorypages' => array(
'pagecategories',
'create-this-page',
'delete',
'deletethispage',
+ 'undeletethispage',
'undelete_short',
'viewdeleted_short',
'protect',
'namespaceprotected',
'customcssprotected',
'customjsprotected',
+ 'mycustomcssprotected',
+ 'mycustomjsprotected',
'ns-specialprotected',
'titleprotected',
'filereadonlyerror',
),
'passwordreset' => array(
'passwordreset',
- 'passwordreset-text',
+ 'passwordreset-text-one',
+ 'passwordreset-text-many',
'passwordreset-legend',
'passwordreset-disabled',
'passwordreset-emaildisabled',
- 'passwordreset-pretext',
'passwordreset-username',
'passwordreset-domain',
'passwordreset-capture',
'edit-gone-missing',
'edit-conflict',
'edit-no-change',
+ 'postedit-confirmation',
'edit-already-exists',
'addsection-preload',
'addsection-editintro',
'searchmenu-exists',
'searchmenu-new',
'searchmenu-new-nocreate',
- 'searchhelp-url',
'searchmenu-prefix',
- 'searchmenu-help',
'searchprofile-articles',
'searchprofile-project',
'searchprofile-images',
'userrights-unchangeable-col',
'userrights-irreversible-marker',
'userrights-conflict',
+ 'userrights-removed-self',
),
'group' => array(
'group',
'right-editusercssjs',
'right-editusercss',
'right-edituserjs',
+ 'right-editmyusercss',
+ 'right-editmyuserjs',
+ 'right-viewmywatchlist',
+ 'right-editmywatchlist',
'right-rollback',
'right-markbotedits',
'right-noratelimit',
'action-userrights-interwiki',
'action-siteadmin',
'action-sendemail',
+ 'action-editmywatchlist',
+ 'action-viewmywatchlist',
),
'recentchanges' => array(
'nchanges',
'modern.css',
'vector.css',
'print.css',
- 'handheld.css',
'noscript.css',
'group-autoconfirmed.css',
'group-bot.css',
begin with * or ** are discarded, furthermore lines that do begin with ** and
do not contain | are also discarded, but do not depend on this behavior for
future releases. Also note that since each list value is wrapped in a unique
-XHTML id it should only appear once and include characters that are legal
-XHTML id names.",
+(X)HTML id it should only appear once and include characters that are legal
+(X)HTML id names.",
'toggles' => 'User preference toggles',
'underline' => '',
'editfont' => 'Font style option in Special:Preferences',
* @defgroup MaintenanceLanguage MaintenanceLanguage
*/
-require_once( __DIR__ . '/../commandLine.inc' );
+require_once __DIR__ . '/../commandLine.inc';
require_once 'languages.inc';
require_once 'writeMessagesArray.inc';
*/
function removeDupes( $oldMsgArray, $dupeMsgSource ) {
if ( file_exists( $dupeMsgSource ) ) {
- include( $dupeMsgSource );
+ include $dupeMsgSource;
if ( !isset( $dupeMessages ) ) {
echo "There are no duplicated messages in the source file provided.";
exit( 1 );
*/
$optionsWithArgs = array( 'output' );
-require_once( __DIR__ . '/../commandLine.inc' );
+require_once __DIR__ . '/../commandLine.inc';
require_once 'languages.inc';
-require_once( __DIR__ . '/StatOutputs.php' );
+require_once __DIR__ . '/StatOutputs.php';
if ( isset( $options['help'] ) ) {
$IP = __DIR__ . '/../..';
-require_once( "$IP/includes/Defines.php" );
-require_once( "$IP/languages/Language.php" );
+require_once "$IP/includes/Defines.php";
+require_once "$IP/languages/Language.php";
$files = array();
foreach ( $argv as $arg ) {
}
function getVars( $filename ) {
- require( $filename );
+ require $filename;
$vars = get_defined_vars();
unset( $vars['filename'] );
return $vars;
# Load messages
$dir = $prefix ? $prefix : __DIR__;
- require( $dir . '/messages.inc' );
+ require $dir . '/messages.inc';
self::$messageStructure = $wgMessageStructure;
self::$blockComments = $wgBlockComments;
- require( $dir . '/messageTypes.inc' );
+ require $dir . '/messageTypes.inc';
self::$ignoredMessages = $wgIgnoredMessages;
self::$optionalMessages = $wgOptionalMessages;
*/
/** */
-require_once( __DIR__ . '/commandLine.inc' );
+require_once __DIR__ . '/commandLine.inc';
$options = getopt( '', array( 'debug', 'help', 'cache:' ) );
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that makes several 'set', 'incr' and 'get' requests
# Start from scratch
define( 'MW_NO_EXTENSION_MESSAGES', 1 );
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
$maintClass = 'MergeMessageFileList';
$mmfl = false;
if ( empty( $mmfl['quiet'] ) ) {
fwrite( STDERR, "Loading data from $fileName\n" );
}
- if ( !include_once( $fileName ) ) {
+ if ( !( include_once $fileName ) ) {
fwrite( STDERR, "Unable to read $fileName\n" );
exit( 1 );
}
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that re-assigns users from an old group to a new one.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that minifies a file or set of files.
* e.g. immobile_namespace for namespaces which can't be moved
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to move a batch of pages.
* Usage:
* php mwdocgen.php
*
- * KNOWN BUGS:
- *
- * - pass_thru seems to always use buffering (even with ob_implicit_flush()),
- * that make output slow when doxygen parses language files.
- * - the menu doesnt work, got disabled at revision 13740. Need to code it.
- *
* 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
* @version first release
*/
-#
-# Variables / Configuration
-#
-
-if ( PHP_SAPI != 'cli' ) {
- echo 'Run "' . __FILE__ . '" from the command line.';
- die( -1 );
-}
-
-/** Figure out the base directory for MediaWiki location */
-$mwPath = dirname( __DIR__ ) . DIRECTORY_SEPARATOR;
-
-/** doxygen binary script */
-$doxygenBin = 'doxygen';
-
-/** doxygen configuration template for mediawiki */
-$doxygenTemplate = $mwPath . 'maintenance/Doxyfile';
-
-/** doxygen input filter to tweak source file before they are parsed */
-$doxygenInputFilter = "php {$mwPath}maintenance/mwdoc-filter.php";
-
-/** where Phpdoc should output documentation */
-$doxyOutput = $mwPath . 'docs' . DIRECTORY_SEPARATOR;
-
-$doxyVersion = 'master';
-
-/** MediaWiki subpaths */
-$mwPathI = $mwPath . 'includes/';
-$mwPathL = $mwPath . 'languages/';
-$mwPathM = $mwPath . 'maintenance/';
-$mwPathS = $mwPath . 'skins/';
-
-/** Ignored paths relative to $mwPath */
-$mwExcludePaths = array(
- 'images',
- 'static',
-);
-
-/** Variable to get user input */
-$input = '';
-$excludePatterns = '';
-/** Whether to generates man pages: */
-$doxyGenerateMan = false;
-
-#
-# Functions
-#
-
-define( 'MEDIAWIKI', true );
-require_once( "$mwPath/includes/GlobalFunctions.php" );
-
-/**
- * Read a line from the shell
- * @param $prompt String
- * @return string
- */
-function readaline( $prompt = '' ) {
- print $prompt;
- $fp = fopen( "php://stdin", "r" );
- $resp = trim( fgets( $fp, 1024 ) );
- fclose( $fp );
- return $resp;
-}
+require_once __DIR__ . '/Maintenance.php';
/**
- * Generate a configuration file given user parameters and return the temporary filename.
- * @param $doxygenTemplate String: full path for the template.
- * @param $outputDirectory String: directory where the stuff will be output.
- * @param $stripFromPath String: path that should be stripped out (usually mediawiki base path).
- * @param $currentVersion String: Version number of the software
- * @param $input String: Path to analyze.
- * @param $exclude String: Additionals path regex to exclude
- * @param $excludePatterns String: Additionals path regex to exclude
- * (LocalSettings.php, AdminSettings.php, .svn and .git directories are always excluded)
- * @param $doxyGenerateMan Boolean
- * @return string
+ * Maintenance script that builds doxygen documentation.
+ * @ingroup Maintenance
*/
-function generateConfigFile( $doxygenTemplate, $outputDirectory, $stripFromPath, $currentVersion, $input, $exclude, $excludePatterns, $doxyGenerateMan, $doxygenInputFilter ) {
-
- $template = file_get_contents( $doxygenTemplate );
- // Replace template placeholders by correct values.
- $replacements = array(
- '{{OUTPUT_DIRECTORY}}' => $outputDirectory,
- '{{STRIP_FROM_PATH}}' => $stripFromPath,
- '{{CURRENT_VERSION}}' => $currentVersion,
- '{{INPUT}}' => $input,
- '{{EXCLUDE}}' => $exclude,
- '{{EXCLUDE_PATTERNS}}' => $excludePatterns,
- '{{HAVE_DOT}}' => `which dot` ? 'YES' : 'NO',
- '{{GENERATE_MAN}}' => $doxyGenerateMan ? 'YES' : 'NO',
- '{{INPUT_FILTER}}' => $doxygenInputFilter,
- );
- $tmpCfg = str_replace( array_keys( $replacements ), array_values( $replacements ), $template );
- $tmpFileName = tempnam( wfTempDir(), 'mwdocgen-' );
- file_put_contents( $tmpFileName, $tmpCfg ) or die( "Could not write doxygen configuration to file $tmpFileName\n" );
+class MWDocGen extends Maintenance {
+
+ /**
+ * Prepare Maintenance class
+ */
+ public function __construct() {
+ parent::__construct();
+ $this->mDescription = 'Build doxygen documentation';
+
+ $this->addOption( 'doxygen',
+ 'Path to doxygen',
+ false, true );
+ $this->addOption( 'version',
+ 'Pass a MediaWiki version',
+ false, true );
+ $this->addOption( 'generate-man',
+ 'Whether to generate man files' );
+ $this->addOption( 'file',
+ "Only process given file or directory. Multiple values " .
+ "accepted with comma separation. Path relative to \$IP.",
+ false, true );
+ $this->addOption( 'output',
+ 'Path to write doc to',
+ false, true );
+ $this->addOption( 'no-extensions',
+ 'Ignore extensions' );
+ }
- return $tmpFileName;
-}
+ public function getDbType() {
+ return Maintenance::DB_NONE;
+ }
-#
-# Main !
-#
+ protected function init() {
+ global $IP;
-unset( $file );
+ $this->doxygen = $this->getOption( 'doxygen', 'doxygen' );
+ $this->mwVersion = $this->getOption( 'version', 'master' );
-if ( is_array( $argv ) ) {
- for ( $i = 0; $i < count( $argv ); $i++ ) {
- switch ( $argv[$i] ) {
- case '--all':
- $input = 0;
- break;
- case '--includes':
- $input = 1;
- break;
- case '--languages':
- $input = 2;
- break;
- case '--maintenance':
- $input = 3;
- break;
- case '--skins':
- $input = 4;
- break;
- case '--file':
- $input = 5;
- $i++;
- if ( isset( $argv[$i] ) ) {
- $file = $argv[$i];
- }
- break;
- case '--no-extensions':
- $input = 6;
- break;
- case '--output':
- $i++;
- if ( isset( $argv[$i] ) ) {
- $doxyOutput = realpath( $argv[$i] );
- }
- break;
- case '--version':
- $i++;
- if ( isset( $argv[$i] ) ) {
- $doxyVersion = $argv[$i];
- }
- break;
- case '--generate-man':
- $doxyGenerateMan = true;
- break;
- case '--help':
- print <<<END
-Usage: php mwdocgen.php [<command>] [<options>]
+ $this->input = '';
+ $inputs = explode( ',', $this->getOption( 'file', '' ) );
+ foreach( $inputs as $input ) {
+ # Doxygen inputs are space separted and double quoted
+ $this->input .= " \"$IP/$input\"";
+ }
-Commands:
- --all Process entire codebase
- --includes Process only files in includes/ dir
- --languages Process only files in languages/ dir
- --maintenance Process only files in maintenance/ dir
- --skins Process only files in skins/ dir
- --file <file> Process only the given file
- --no-extensions Process everything but extensions directorys
+ $this->output = $this->getOption( 'output', "$IP/docs" );
+
+ $this->inputFilter = wfShellWikiCmd(
+ $IP . '/maintenance/mwdoc-filter.php' );
+ $this->template = $IP . '/maintenance/Doxyfile';
+ $this->excludes = array(
+ 'vendor',
+ 'images',
+ 'static',
+ );
+ $this->excludePatterns = array();
+ if ( $this->hasOption( 'no-extensions' ) ) {
+ $this->excludePatterns[] = 'extensions';
+ }
-If no command is given, you will be prompted.
+ $this->doDot = `which dot`;
+ $this->doMan = $this->hasOption( 'generate-man' );
+ }
-Other options:
- --output <dir> Set output directory (default: $doxyOutput)
- --generate-man Generates man page documentation
- --version Project version to display in the outut (default: $doxyVersion)
- --help Show this help and exit.
+ public function execute() {
+ global $IP;
+ $this->init();
-END;
- exit( 0 );
- break;
+ # Build out directories we want to exclude
+ $exclude = '';
+ foreach ( $this->excludes as $item ) {
+ $exclude .= " $IP/$item";
}
- }
-}
-// TODO : generate a list of paths ))
-
-if ( $input === '' ) {
- echo <<<OPTIONS
-Several documentation possibilities:
- 0 : whole documentation (1 + 2 + 3 + 4)
- 1 : only includes
- 2 : only languages
- 3 : only maintenance
- 4 : only skins
- 5 : only a given file
- 6 : all but the extensions directory
-OPTIONS;
- while ( !is_numeric( $input ) ) {
- $input = readaline( "\nEnter your choice [0]:" );
- if ( $input == '' ) {
- $input = 0;
+ $excludePatterns = implode( ' ', $this->excludePatterns );
+
+ $conf = strtr( file_get_contents( $this->template ),
+ array(
+ '{{OUTPUT_DIRECTORY}}' => $this->output,
+ '{{STRIP_FROM_PATH}}' => $IP,
+ '{{CURRENT_VERSION}}' => $this->mwVersion,
+ '{{INPUT}}' => $this->input,
+ '{{EXCLUDE}}' => $exclude,
+ '{{EXCLUDE_PATTERNS}}' => $excludePatterns,
+ '{{HAVE_DOT}}' => $this->doDot ? 'YES' : 'NO',
+ '{{GENERATE_MAN}}' => $this->doMan ? 'YES' : 'NO',
+ '{{INPUT_FILTER}}' => $this->inputFilter,
+ )
+ );
+
+ $tmpFile = tempnam( wfTempDir(), 'MWDocGen-' );
+ if ( file_put_contents( $tmpFile, $conf ) === false ) {
+ $this->error( "Could not write doxygen configuration to file $tmpFile\n",
+ /** exit code: */ 1 );
}
- }
-}
-
-switch ( $input ) {
-case 0:
- $input = $mwPath;
- break;
-case 1:
- $input = $mwPathI;
- break;
-case 2:
- $input = $mwPathL;
- break;
-case 3:
- $input = $mwPathM;
- break;
-case 4:
- $input = $mwPathS;
- break;
-case 5:
- if ( !isset( $file ) ) {
- $file = readaline( "Enter file name $mwPath" );
- }
- $input = $mwPath . $file;
- break;
-case 6:
- $input = $mwPath;
- $excludePatterns = 'extensions';
-}
-// Generate path exclusions
-$excludedPaths = $mwPath . join( " $mwPath", $mwExcludePaths );
-print "EXCLUDE: $excludedPaths\n\n";
+ $command = $this->doxygen . ' ' . $tmpFile;
+ $this->output( "Executing command:\n$command\n" );
-$generatedConf = generateConfigFile( $doxygenTemplate, $doxyOutput, $mwPath, $doxyVersion, $input, $excludedPaths, $excludePatterns, $doxyGenerateMan, $doxygenInputFilter );
-$command = $doxygenBin . ' ' . $generatedConf;
+ $exitcode = 1;
+ system( $command, $exitcode );
-echo <<<TEXT
+ $this->output( <<<TEXT
---------------------------------------------------
-Launching the command:
-
-$command
+Doxygen execution finished.
+Check above for possible errors.
+You might want to delete the temporary file:
+ $tmpFile
---------------------------------------------------
-TEXT;
-
-$exitcode = 1;
-passthru( $command, $exitcode );
+TEXT
+ );
-echo <<<TEXT
----------------------------------------------------
-Doxygen execution finished.
-Check above for possible errors.
+ if ( $exitcode !== 0 ) {
+ $this->error( "Something went wrong (exit: $exitcode)\n",
+ $exitcode );
+ }
-You might want to delete the temporary file $generatedConf
+ }
-TEXT;
+}
-exit( $exitcode );
+$maintClass = 'MWDocGen';
+require_once RUN_MAINTENANCE_IF_MAIN;
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that checks for articles to fix after
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that picks a database that has pending jobs.
* based on nukePage by Rob Church
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that removes pages with only one revision from the
* @author Rob Church <robchur@gmail.com>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that erases a page record from the database.
* i.e.: GRANT REFERENCES (user_id) ON mwuser TO hubclient;
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
class AlterSharedConstraints extends Maintenance {
public function __construct() {
-- This table is not used unless profiling is turned on
--CREATE TABLE &mw_prefix.profiling (
--- pf_count NUMBER DEFAULT 0 NOT NULL,
--- pf_time NUMERIC(18,10) DEFAULT 0 NOT NULL,
--- pf_name CLOB NOT NULL,
--- pf_server CLOB NULL
+-- pf_count NUMBER DEFAULT 0 NOT NULL,
+-- pf_time NUMBER(18,10) DEFAULT 0 NOT NULL,
+-- pf_memory NUMBER(18,10) DEFAULT 0 NOT NULL,
+-- pf_name VARCHAR2(255),
+-- pf_server VARCHAR2(30)
--);
--CREATE UNIQUE INDEX &mw_prefix.profiling_u01 ON &mw_prefix.profiling (pf_name, pf_server);
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that looks for 'orphan' revisions hooked to pages which
* @license GNU General Public License 2.0 or later
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to parse some wikitext.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that manually runs an SQL patch outside of the general updaters.
* @author Simetrical
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Mainteance script to populate the category table.
* @ingroup Maintenance
*/
-require_once( dirname( __FILE__ ) . '/Maintenance.php' );
+require_once dirname( __FILE__ ) . '/Maintenance.php';
/**
* Maintenance script to populate the fa_sha1 field.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to populate the img_sha1 field.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that makes the required database updates for populating the
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that makes the required database updates for
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that makes the required database updates for rev_parent_id
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that populates the rev_len field for old revisions
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that fills the rev_sha1 and ar_sha1 columns of revision
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/dumpIterator.php' );
+require_once __DIR__ . '/dumpIterator.php';
/**
* Maintenance script that takes page text out of an XML dump file and
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/commandLine.inc' );
+require_once __DIR__ . '/commandLine.inc';
$wgHooks['BeforeParserFetchTemplateAndtitle'][] = 'PPFuzzTester::templateHook';
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that protects or unprotects a page.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that prunes file cache for pages, objects, resources, etc.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that scans the deletion log and purges affected files
$res = $db->select( 'logging', array( 'log_title', 'log_timestamp' ), $conds, __METHOD__ );
foreach ( $res as $row ) {
$file = $repo->newFile( Title::makeTitle( NS_FILE, $row->log_title ) );
-
+ // If there is an orphaned storage file still there...delete it
+ if ( !$file->exists() && $repo->fileExists( $file->getPath() ) ) {
+ $dpath = $this->getDeletedPath( $repo, $file );
+ if ( $repo->fileExists( $dpath ) ) { // sanity check to avoid data loss
+ $repo->getBackend()->delete( array( 'src' => $file->getPath() ) );
+ $this->output( "Deleted orphan file: {$file->getPath()}.\n" );
+ } else {
+ $this->error( "File was not deleted: {$file->getPath()}.\n" );
+ }
+ }
// Purge current version and any versions in oldimage table
$file->purgeCache();
$file->purgeHistory();
// Purge items from fileachive table (rows are likely here)
- $this->purgeFromArchiveTable( $file );
+ $this->purgeFromArchiveTable( $repo, $file );
$this->output( "Purged file {$row->log_title}; deleted on {$row->log_timestamp}.\n" );
}
}
- protected function purgeFromArchiveTable( LocalFile $file ) {
- $db = $file->getRepo()->getSlaveDB();
+ protected function purgeFromArchiveTable( LocalRepo $repo, LocalFile $file ) {
+ $db = $repo->getSlaveDB();
$res = $db->select( 'filearchive',
array( 'fa_archive_name' ),
array( 'fa_name' => $file->getName() ),
__METHOD__
);
foreach ( $res as $row ) {
+ $ofile = $repo->newFromArchiveName( $file->getTitle(), $row->fa_archive_name );
+ // If there is an orphaned storage file still there...delete it
+ if ( !$file->exists() && $repo->fileExists( $ofile->getPath() ) ) {
+ $dpath = $this->getDeletedPath( $repo, $ofile );
+ if ( $repo->fileExists( $dpath ) ) { // sanity check to avoid data loss
+ $repo->getBackend()->delete( array( 'src' => $ofile->getPath() ) );
+ $this->output( "Deleted orphan file: {$ofile->getPath()}.\n" );
+ } else {
+ $this->error( "File was not deleted: {$ofile->getPath()}.\n" );
+ }
+ }
$file->purgeOldThumbnails( $row->fa_archive_name );
}
}
+
+ protected function getDeletedPath( LocalRepo $repo, LocalFile $file ) {
+ $hash = $repo->getFileSha1( $file->getPath() );
+ $key = "{$hash}.{$file->getExtension()}";
+ return $repo->getDeletedHashPath( $key ) . $key;
+ }
}
$maintClass = "PurgeDeletedFiles";
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that sends purge requests for listed pages to squid.
* @author Rob Church <robchur@gmail.com>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that purges old text records from the database.
* @ingroup Maintenance
*/
-require( __DIR__ . '/Maintenance.php' );
+require __DIR__ . '/Maintenance.php';
/**
* Maintenance script to remove old objects from the parser cache.
* @licence GNU General Public Licence 2.0 or later
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that reassigns edits from a user or IP address
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that builds file cache for content pages.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to update image metadata records.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to rebuild the localisation cache.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that rebuilds link tracking tables from scratch.
$this->mDescription = "Rebuild links, text index and recent changes";
}
+ public function getDbType() {
+ return Maintenance::DB_ADMIN;
+ }
+
public function execute() {
// Rebuild the text index
if ( wfGetDB( DB_SLAVE )->getType() != 'postgres' ) {
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that purges all languages from the message cache.
* @todo Document
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that rebuilds recent changes from scratch.
* @todo document
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that rebuilds search index table from scratch.
$rev = new Revision( $s );
$content = $rev->getContent();
- $text = $content->getTextForSearchIndex();
- $u = new SearchUpdate( $s->page_id, $title, $text );
+ $u = new SearchUpdate( $s->page_id, $title, $content );
$u->doUpdate();
} catch ( MWContentSerializationException $ex ) {
$this->output( "Failed to deserialize content of revision {$s->rev_id} of page "
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to refresh file headers from metadata
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to refresh image metadata fields.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to refresh link tables.
* @author Rob Church <robchur@gmail.com>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that removes unused user accounts from the database.
$this->output( "\nDeleting inactive accounts..." );
$dbw = wfGetDB( DB_MASTER );
$dbw->delete( 'user', array( 'user_id' => $del ), __METHOD__ );
+ $dbw->delete( 'user_groups', array( 'ug_user' => $del ), __METHOD__ );
+ $dbw->delete( 'user_former_groups', array( 'ufg_user' => $del ), __METHOD__ );
+ $dbw->delete( 'user_properties', array( 'up_user' => $del ), __METHOD__ );
$dbw->delete( 'logging', array( 'log_user' => $del ), __METHOD__ );
$dbw->delete( 'recentchanges', array( 'rc_user' => $del ), __METHOD__ );
$this->output( "done.\n" );
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that changes the prefix of database tables.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that takes page text out of an XML dump file
* @author Daniel Friesen <mediawiki@danielfriesen.name>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to reset the user_token for all users on the wiki.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to rollback all edits by a given user or IP provided
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to run a database query in batches and wait for slaves.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that runs pending jobs.
}
$flags = JobQueueGroup::USE_CACHE | JobQueueGroup::USE_PRIORITY;
- $lastTime = time();
+ $lastTime = time(); // time since last slave check
do {
$job = ( $type === false )
? $group->pop( JobQueueGroup::TYPE_DEFAULT, $flags )
} catch ( MWException $e ) {
$status = false;
$error = get_class( $e ) . ': ' . $e->getMessage();
- wfDebugLog( 'exception', $e->getLogMessage() );
+ $e->report(); // write error to STDERR and the log
}
wfProfileOut( __METHOD__ . '-' . get_class( $job ) );
$timeMs = intval( ( microtime( true ) - $t ) * 1000 );
$timePassed = time() - $lastTime;
if ( $timePassed >= 5 || $timePassed < 0 ) {
wfWaitForSlaves();
+ $lastTime = time();
}
// Don't let any queue slaves/backups fall behind
if ( $jobsRun > 0 && ( $jobsRun % 100 ) == 0 ) {
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that shows statistics from the cache.
* @author Antoine Musso
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that reports the number of jobs currently waiting
* @license GNU General Public License 2.0 or later
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to show the cached statistics.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that sends SQL queries from the specified file to the database.
parent::__construct();
$this->mDescription = "Send SQL queries to a MediaWiki database";
$this->addOption( 'cluster', 'Use an external cluster by name', false, true );
+ $this->addOption( 'slave', 'Use a slave server (either "any" or by name)', false, true );
}
public function execute() {
- // Get a DB handle (with this wiki's DB select) from the appropriate load balancer
+ // Get the appropriate load balancer (for this wiki)
if ( $this->hasOption( 'cluster' ) ) {
$lb = wfGetLBFactory()->getExternalLB( $this->getOption( 'cluster' ) );
- $dbw = $lb->getConnection( DB_MASTER ); // master for external LB
} else {
- $dbw = wfGetDB( DB_MASTER ); // master for primary LB for this wiki
+ $lb = wfGetLB();
}
+ // Figure out which server to use
+ if ( $this->hasOption( 'slave' ) ) {
+ $server = $this->getOption( 'slave' );
+ if ( $server === 'any' ) {
+ $index = DB_SLAVE;
+ } else {
+ $index = null;
+ for ( $i = 0; $i < $lb->getServerCount(); ++$i ) {
+ if ( $lb->getServerName( $i ) === $server ) {
+ $index = $i;
+ break;
+ }
+ }
+ if ( $index === null ) {
+ $this->error( "No slave server configured with the name '$server'.", 1 );
+ }
+ }
+ } else {
+ $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 );
+ }
+
if ( $this->hasArg( 0 ) ) {
$file = fopen( $this->getArg( 0 ), 'r' );
if ( !$file ) {
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that performs some operations specific to SQLite database backend.
*/
if ( !defined( 'MEDIAWIKI' ) ) {
- require_once( __DIR__ . '/../commandLine.inc' );
+ require_once __DIR__ . '/../commandLine.inc';
$cs = new CheckStorage;
$fix = isset( $options['fix'] );
* @ingroup Maintenance ExternalStorage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that compress the text of a wiki.
* @ingroup Maintenance ExternalStorage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that gets the text of a revision,
* @ingroup Maintenance ExternalStorage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script to fix bug 20757.
define( 'REPORTING_INTERVAL', 1 );
if ( !defined( 'MEDIAWIKI' ) ) {
- require_once( __DIR__ . '/../commandLine.inc' );
- require_once( __DIR__ . '/../../includes/externalstore/ExternalStoreDB.php' );
+ require_once __DIR__ . '/../commandLine.inc';
+ require_once __DIR__ . '/../../includes/externalstore/ExternalStoreDB.php';
require_once 'resolveStubs.php';
$fname = 'moveToExternal';
* @ingroup Maintenance ExternalStorage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
/**
* Maintenance script that shows some statistics on the blob_orphans table,
*/
$optionsWithArgs = RecompressTracked::getOptionsWithArgs();
-require( __DIR__ . '/../commandLine.inc' );
+require __DIR__ . '/../commandLine.inc';
if ( count( $args ) < 1 ) {
echo "Usage: php recompressTracked.php [options] <cluster> [... <cluster>...]
if ( !defined( 'MEDIAWIKI' ) ) {
$optionsWithArgs = array( 'm' );
- require_once( __DIR__ . '/../commandLine.inc' );
+ require_once __DIR__ . '/../commandLine.inc';
resolveStubs();
}
* @ingroup Maintenance ExternalStorage
*/
-require_once( __DIR__ . '/../Maintenance.php' );
+require_once __DIR__ . '/../Maintenance.php';
class StorageTypeStats extends Maintenance {
function execute() {
*/
$optionsWithArgs = array( 'start', 'limit', 'type' );
-require( __DIR__ . '/../commandLine.inc' );
+require __DIR__ . '/../commandLine.inc';
if ( !isset( $args[0] ) ) {
echo "Usage: php testCompression.php [--type=<type>] [--start=<start-date>] [--limit=<num-revs>] <page-title>\n";
* @see wfWaitForSlaves()
*/
-require( __DIR__ . '/../commandLine.inc' );
+require __DIR__ . '/../commandLine.inc';
if ( count( $args ) < 1 ) {
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that syncs one file backend to another based on
-- Start and end of an address range, in hexadecimal
-- Size chosen to allow IPv6
+ -- FIXME: these fields were originally blank for single-IP blocks,
+ -- but now they are populated. No migration was ever done. They
+ -- should be fixed to be blank again for such blocks (bug 49504).
ipb_range_start tinyblob NOT NULL,
ipb_range_end tinyblob NOT NULL,
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
class Undelete extends Maintenance {
public function __construct() {
*/
if ( !function_exists( 'version_compare' ) || ( version_compare( phpversion(), '5.3.2' ) < 0 ) ) {
- require( dirname( __FILE__ ) . '/../includes/PHPVersionError.php' );
+ require dirname( __FILE__ ) . '/../includes/PHPVersionError.php';
wfPHPVersionError( 'cli' );
}
$wgUseMasterForMaintenance = true;
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to run database schema updates.
* @author Rob Church <robchur@gmail.com>
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to provide a better count of the number of articles
#$optionsWithArgs = array( 'begin', 'max-slave-lag' );
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that will find all rows in the categorylinks table
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to normalize double-byte latin UTF-8 characters.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script that updates page_restrictions table from
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script for periodic off-peak updating of the search index.
* @ingroup Maintenance
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to update cached special pages.
}
// This is needed to initialise $wgQueryPages
- require_once( "$IP/includes/QueryPage.php" );
+ require_once "$IP/includes/QueryPage.php";
foreach ( $wgQueryPages as $page ) {
list( $class, $special ) = $page;
} else {
if ( !class_exists( $class ) ) {
$file = $specialObj->getFile();
- require_once( $file );
+ require_once $file;
}
$queryPage = new $class;
}
$options = array( 'list', 'nowarn', 'quiet', 'usage', 'dry' );
$optionsWithArgs = array( 'old', 'new' );
-require_once( __DIR__ . '/commandLine.inc' );
+require_once __DIR__ . '/commandLine.inc';
/**
* @ingroup Maintenance
* @see wfWaitForSlaves()
*/
-require_once( __DIR__ . '/Maintenance.php' );
+require_once __DIR__ . '/Maintenance.php';
/**
* Maintenance script to wait until slave lag goes under a certain value.
define( 'MEDIAWIKI_INSTALL', true );
chdir( dirname( __DIR__ ) );
-require( dirname( __DIR__ ) . '/includes/WebStart.php' );
+require dirname( __DIR__ ) . '/includes/WebStart.php';
wfInstallerMain();
* @file
*/
-require_once( __DIR__ . '/includes/WebStart.php' );
+require_once __DIR__ . '/includes/WebStart.php';
if ( $wgRequest->getVal( 'ctype' ) == 'application/xml' ) {
// Makes testing tweaks about a billion times easier
ini_set( 'zlib.output_compression', 'off' );
$wgEnableProfileInfo = $wgProfileToDatabase = false;
-require ( __DIR__ . '/includes/WebStart.php' );
+require __DIR__ . '/includes/WebStart.php';
header( 'Content-Type: text/html; charset=utf-8' );
'localBasePath' => $GLOBALS['wgStyleDirectory'],
),
'skins.vector.js' => array(
- 'scripts' => 'vector/vector.js',
+ 'scripts' => array(
+ 'vector/vector.js',
+ 'vector/collapsibleTabs.js',
+ ),
+ 'position' => 'top',
+ 'dependencies' => 'jquery.delayedBind',
'remoteBasePath' => $GLOBALS['wgStylePath'],
'localBasePath' => $GLOBALS['wgStyleDirectory'],
),
'mediawiki.Title',
),
),
+ 'mediawiki.api.login' => array(
+ 'scripts' => 'resources/mediawiki.api/mediawiki.api.login.js',
+ 'dependencies' => array(
+ 'mediawiki.api',
+ ),
+ ),
'mediawiki.api.parse' => array(
'scripts' => 'resources/mediawiki.api/mediawiki.api.parse.js',
'dependencies' => 'mediawiki.api',
'user.tokens',
),
),
+ 'mediawiki.icon' => array(
+ 'styles' => 'resources/mediawiki/mediawiki.icon.css',
+ ),
'mediawiki.debug' => array(
'scripts' => 'resources/mediawiki/mediawiki.debug.js',
'styles' => 'resources/mediawiki/mediawiki.debug.css',
'jquery.client',
'jquery.placeholder',
'jquery.suggestions',
+ 'mediawiki.api',
),
),
'mediawiki.Title' => array(
),
'mediawiki.action.view.postEdit' => array(
'scripts' => 'resources/mediawiki.action/mediawiki.action.view.postEdit.js',
- 'dependencies' => 'jquery.cookie'
+ 'styles' => 'resources/mediawiki.action/mediawiki.action.view.postEdit.css',
+ 'dependencies' => array(
+ 'jquery.cookie',
+ 'mediawiki.jqueryMsg'
+ ),
+ 'messages' => array(
+ 'postedit-confirmation',
+ ),
),
'mediawiki.action.view.rightClickEdit' => array(
'scripts' => 'resources/mediawiki.action/mediawiki.action.view.rightClickEdit.js',
),
'mediawiki.special.changeslist' => array(
'styles' => 'resources/mediawiki.special/mediawiki.special.changeslist.css',
- 'dependencies' => array( 'jquery.makeCollapsible' ),
+ ),
+ 'mediawiki.special.changeslist.enhanced' => array(
+ 'styles' => 'resources/mediawiki.special/mediawiki.special.changeslist.enhanced.css',
),
'mediawiki.special.movePage' => array(
'scripts' => 'resources/mediawiki.special/mediawiki.special.movePage.js',
'mediawiki.special.preferences' => array(
'scripts' => 'resources/mediawiki.special/mediawiki.special.preferences.js',
'styles' => 'resources/mediawiki.special/mediawiki.special.preferences.css',
+ 'position' => 'top',
),
'mediawiki.special.recentchanges' => array(
'scripts' => 'resources/mediawiki.special/mediawiki.special.recentchanges.js',
),
'dependencies' => array( 'mediawiki.libs.jpegmeta', 'mediawiki.util' ),
),
- 'mediawiki.special.userlogin.signup' => array(
- 'scripts' => 'resources/mediawiki.special/mediawiki.special.userLogin.signup.js',
- ),
- 'mediawiki.special.userlogin.vform' => array(
+ 'mediawiki.special.userlogin' => array(
'styles' => array(
'resources/mediawiki.special/mediawiki.special.vforms.css',
- 'resources/mediawiki.special/mediawiki.special.userLogin.vform.css',
+ 'resources/mediawiki.special/mediawiki.special.userLogin.css',
),
'position' => 'top',
),
- 'mediawiki.special.createaccount.vform' => array(
+ 'mediawiki.special.createaccount' => array(
'styles' => array(
'resources/mediawiki.special/mediawiki.special.vforms.css',
- 'resources/mediawiki.special/mediawiki.special.createAccount.vform.css',
+ 'resources/mediawiki.special/mediawiki.special.createAccount.css',
),
- 'position' => 'top',
),
- 'mediawiki.special.createaccount.vform.js' => array(
- 'scripts' => 'resources/mediawiki.special/mediawiki.special.createAccount.vform.js',
+ 'mediawiki.special.createaccount.js' => array(
+ 'scripts' => 'resources/mediawiki.special/mediawiki.special.createAccount.js',
'messages' => array(
'createacct-captcha',
'createacct-imgcaptcha-ph'
// Chop off characters from the end of the "inserted content" string
// until the limit is statisfied.
if ( fn ) {
- while ( $.byteLength( fn( inpParts.join( '' ) ) ) > byteLimit ) {
+ // stop, when there is nothing to slice - bug 41450
+ while ( $.byteLength( fn( inpParts.join( '' ) ) ) > byteLimit && inpParts[1].length > 0 ) {
inpParts[1] = inpParts[1].slice( 0, -1 );
}
} else {
/* Private Members */
/**
- * @var profileCache {Object} Keyed by userAgent string,
+ * @var {Object} profileCache Keyed by userAgent string,
* value is the parsed $.client.profile object for that user agent.
*/
var profileCache = {};
/**
* Get an object containing information about the client.
*
- * @param nav {Object} An object with atleast a 'userAgent' and 'platform' key.
+ * @param {Object} nav An object with atleast a 'userAgent' and 'platform' key.
* Defaults to the global Navigator object.
- * @return {Object} The resulting client object will be in the following format:
+ * @returns {Object} The resulting client object will be in the following format:
* {
* 'name': 'firefox',
* 'layout': 'gecko',
// Generic version digit
x = 'x',
// Strings found in user agent strings that need to be conformed
- wildUserAgents = ['Opera', 'Navigator', 'Minefield', 'KHTML', 'Chrome', 'PLAYSTATION 3'],
+ wildUserAgents = ['Opera', 'Navigator', 'Minefield', 'KHTML', 'Chrome', 'PLAYSTATION 3', 'Iceweasel'],
// Translations for conforming user agent strings
userAgentTranslations = [
// Tons of browsers lie about being something they are not
- [/(Firefox|MSIE|KHTML,\slike\sGecko|Konqueror)/, ''],
+ [/(Firefox|MSIE|KHTML,?\slike\sGecko|Konqueror)/, ''],
// Chrome lives in the shadow of Safari still
['Chrome Safari', 'Chrome'],
// KHTML is the layout engine not the browser - LIES!
// version detectection
versionPrefixes = [
'camino', 'chrome', 'firefox', 'iceweasel', 'netscape', 'netscape6', 'opera', 'version', 'konqueror',
- 'lynx', 'msie', 'safari', 'ps3'
+ 'lynx', 'msie', 'safari', 'ps3', 'android'
],
// Used as matches 2, 3 and 4 in version extraction - 3 is used as actual version number
versionSuffix = '(\\/|\\;?\\s|)([a-z0-9\\.\\+]*?)(\\;|dev|rel|\\)|\\s|$)',
// Names of known browsers
names = [
'camino', 'chrome', 'firefox', 'iceweasel', 'netscape', 'konqueror', 'lynx', 'msie', 'opera',
- 'safari', 'ipod', 'iphone', 'blackberry', 'ps3', 'rekonq'
+ 'safari', 'ipod', 'iphone', 'blackberry', 'ps3', 'rekonq', 'android'
],
// Tanslations for conforming browser names
nameTranslations = [],
},
/**
- * Checks the current browser against a support map object to determine if the browser has been black-listed or
- * not. If the browser was not configured specifically it is assumed to work. It is assumed that the body
- * element is classified as either "ltr" or "rtl". If neither is set, "ltr" is assumed.
+ * Checks the current browser against a support map object.
*
* A browser map is in the following format:
* {
+ * // Multiple rules with configurable operators
+ * 'msie': [['>=', 7], ['!=', 9]],
+ * // Match no versions
+ * 'iphone': false,
+ * // Match any version
+ * 'android': null
+ * }
+ *
+ * It can optionally be split into ltr/rtl sections:
+ * {
* 'ltr': {
- * // Multiple rules with configurable operators
- * 'msie': [['>=', 7], ['!=', 9]],
- * // Blocked entirely
+ * 'android': null,
* 'iphone': false
* },
* 'rtl': {
- * // Test against a string
- * 'msie': [['!==', '8.1.2.3']],
- * // RTL rules do not fall through to LTR rules, you must explicity set each of them
+ * 'android': false,
+ * // rules are not inherited from ltr
* 'iphone': false
* }
* }
*
- * @param map {Object} Browser support map
- * @param profile {Object} (optional) a client-profile object.
+ * @param {Object} map Browser support map
+ * @param {Object} [profile] A client-profile object
+ * @param {boolean} [exactMatchOnly=false] Only return true if the browser is matched, otherwise
+ * returns true if the browser is not found.
*
- * @return Boolean true if browser known or assumed to be supported, false if blacklisted
+ * @returns {boolean} The current browser is in the support map
*/
- test: function ( map, profile ) {
+ test: function ( map, profile, exactMatchOnly ) {
/*jshint evil: true */
var conditions, dir, i, op, val;
profile = $.isPlainObject( profile ) ? profile : $.client.profile();
- dir = $( 'body' ).is( '.rtl' ) ? 'rtl' : 'ltr';
+ if ( map.ltr && map.rtl ) {
+ dir = $( 'body' ).is( '.rtl' ) ? 'rtl' : 'ltr';
+ map = map[dir];
+ }
// Check over each browser condition to determine if we are running in a compatible client
- if ( typeof map[dir] !== 'object' || map[dir][profile.name] === undefined ) {
- // Unknown, so we assume it's working
- return true;
+ if ( typeof map !== 'object' || map[profile.name] === undefined ) {
+ // Not found, return true if exactMatchOnly not set, false otherwise
+ return !exactMatchOnly;
}
- conditions = map[dir][profile.name];
+ conditions = map[profile.name];
if ( conditions === false ) {
+ // Match no versions
return false;
}
+ if ( conditions === null ) {
+ // Match all versions
+ return true;
+ }
for ( i = 0; i < conditions.length; i++ ) {
op = conditions[i][0];
val = conditions[i][1];
var lpx = 'jquery.makeCollapsible> ';
/**
+ * Handler for a click on a collapsible toggler.
+ *
* @param {jQuery} $collapsible
* @param {string} action The action this function will take ('expand' or 'collapse').
* @param {jQuery|null} [optional] $defaultToggle
toggleElement( $collapsible, wasCollapsed ? 'expand' : 'collapse', $toggle, options );
}
- /**
- * Toggles collapsible and togglelink class and updates text label.
- *
- * @param {jQuery} $that
- * @param {jQuery.Event} e
- * @param {Object|undefined} options
- */
- function toggleLinkDefault( $that, e, options ) {
- var $collapsible = $that.closest( '.mw-collapsible' );
- options = $.extend( { toggleClasses: true }, options );
- togglingHandler( $that, $collapsible, e, options );
- }
-
- /**
- * Toggles collapsible and togglelink class.
- *
- * @param {jQuery} $that
- * @param {jQuery.Event} e
- * @param {Object|undefined} options
- */
- function toggleLinkPremade( $that, e, options ) {
- var $collapsible = $that.eq( 0 ).closest( '.mw-collapsible' );
- options = $.extend( { toggleClasses: true, linksPassthru: true }, options );
- togglingHandler( $that, $collapsible, e, options );
- }
-
- /**
- * Toggles customcollapsible.
- *
- * @param {jQuery} $that
- * @param {jQuery.Event} e
- * @param {Object|undefined} options
- * @param {jQuery} $collapsible
- */
- function toggleLinkCustom( $that, e, options, $collapsible ) {
- togglingHandler( $that, $collapsible, e, options );
- }
-
/**
* Make any element collapsible.
*
* div.mw-collapsible-content. May only be used with custom togglers.
*/
$.fn.makeCollapsible = function ( options ) {
- return this.each(function () {
- var $collapsible, collapsetext, expandtext, $toggle, $toggleLink, $firstItem, collapsibleId,
- $customTogglers, firstval;
+ if ( options === undefined ) {
+ options = {};
+ }
- if ( options === undefined ) {
- options = {};
- }
+ return this.each( function () {
+ var $collapsible, collapseText, expandText, $toggle, clickHandler, $defaultToggleLink,
+ premadeToggleHandler, $toggleLink, $firstItem, collapsibleId, $customTogglers, firstval;
// Ensure class "mw-collapsible" is present in case .makeCollapsible()
// is called on element(s) that don't have it yet.
- $collapsible = $(this).addClass( 'mw-collapsible' );
+ $collapsible = $( this ).addClass( 'mw-collapsible' );
// Return if it has been enabled already.
if ( $collapsible.data( 'mw-made-collapsible' ) ) {
}
// Use custom text or default?
- collapsetext = options.collapseText || $collapsible.attr( 'data-collapsetext' ) || mw.msg( 'collapsible-collapse' );
- expandtext = options.expandText || $collapsible.attr( 'data-expandtext' ) || mw.msg( 'collapsible-expand' );
-
- // Create toggle link with a space around the brackets ( [text] )
- $toggleLink =
+ collapseText = options.collapseText || $collapsible.attr( 'data-collapsetext' ) || mw.msg( 'collapsible-collapse' );
+ expandText = options.expandText || $collapsible.attr( 'data-expandtext' ) || mw.msg( 'collapsible-expand' );
+
+ // Default click handler and toggle link to use when none is present
+ clickHandler = function ( e, opts ) {
+ var defaultOpts = {
+ toggleClasses: true,
+ toggleText: { collapseText: collapseText, expandText: expandText }
+ };
+ opts = $.extend( defaultOpts, options, opts );
+ togglingHandler( $( this ), $collapsible, e, opts );
+ };
+ $defaultToggleLink =
$( '<a href="#"></a>' )
- .text( collapsetext )
+ .text( collapseText )
.wrap( '<span class="mw-collapsible-toggle"></span>' )
.parent()
.prepend( ' [' )
.append( '] ' )
- .on( 'click.mw-collapsible', function ( e, opts ) {
- opts = $.extend( { toggleText: { collapseText: collapsetext, expandText: expandtext } }, options, opts );
- toggleLinkDefault( $(this), e, opts );
- } );
+ .on( 'click.mw-collapsible', clickHandler );
+
+ // Default handler for clicking on premade toggles
+ premadeToggleHandler = function ( e, opts ) {
+ var defaultOpts = { toggleClasses: true, linksPassthru: true };
+ opts = $.extend( defaultOpts, options, opts );
+ togglingHandler( $( this ), $collapsible, e, opts );
+ };
// Check if this element has a custom position for the toggle link
// (ie. outside the container or deeper inside the tree)
}
}
- // Bind the custom togglers
+ // Bind the togglers
if ( $customTogglers && $customTogglers.length ) {
- $customTogglers.on( 'click.mw-collapsible', function ( e, opts ) {
- opts = $.extend( {}, options, opts );
- toggleLinkCustom( $(this), e, opts, $collapsible );
- } );
-
- // Initial state
- if ( options.collapsed || $collapsible.hasClass( 'mw-collapsed' ) ) {
- // Remove here so that the toggler goes in the right direction,
- // It re-adds the class.
- $collapsible.removeClass( 'mw-collapsed' );
- toggleLinkCustom( $customTogglers, null, $.extend( { instantHide: true }, options ), $collapsible );
- }
+ clickHandler = function ( e, opts ) {
+ var defaultOpts = {};
+ opts = $.extend( defaultOpts, options, opts );
+ togglingHandler( $( this ), $collapsible, e, opts );
+ };
+
+ $toggleLink = $customTogglers;
+ $toggleLink.on( 'click.mw-collapsible', clickHandler );
- // If this is not a custom case, do the default:
- // Wrap the contents and add the toggle link
} else {
- // Elements are treated differently
+ // If this is not a custom case, do the default: wrap the
+ // contents and add the toggle link. Different elements are
+ // treated differently.
if ( $collapsible.is( 'table' ) ) {
// The toggle-link will be in one the the cells (td or th) of the first row
$firstItem = $collapsible.find( 'tr:first th, tr:first td' );
// If theres no toggle link, add it to the last cell
if ( !$toggle.length ) {
- $firstItem.eq(-1).prepend( $toggleLink );
+ $toggleLink = $defaultToggleLink.prependTo( $firstItem.eq( -1 ) );
} else {
- $toggleLink = $toggle.off( 'click.mw-collapsible' ).on( 'click.mw-collapsible', function ( e, opts ) {
- opts = $.extend( {}, options, opts );
- toggleLinkPremade( $toggle, e, opts );
- } );
+ clickHandler = premadeToggleHandler;
+ $toggleLink = $toggle.on( 'click.mw-collapsible', clickHandler );
}
} else if ( $collapsible.is( 'ul' ) || $collapsible.is( 'ol' ) ) {
if ( !$toggle.length ) {
// Make sure the numeral order doesn't get messed up, force the first (soon to be second) item
// to be "1". Except if the value-attribute is already used.
- // If no value was set WebKit returns "", Mozilla returns '-1', others return null or undefined.
+ // If no value was set WebKit returns "", Mozilla returns '-1', others return 0, null or undefined.
firstval = $firstItem.attr( 'value' );
if ( firstval === undefined || !firstval || firstval === '-1' || firstval === -1 ) {
$firstItem.attr( 'value', '1' );
}
- $collapsible.prepend( $toggleLink.wrap( '<li class="mw-collapsible-toggle-li"></li>' ).parent() );
+ $toggleLink = $defaultToggleLink;
+ $toggleLink.wrap( '<li class="mw-collapsible-toggle-li"></li>' ).parent().prependTo( $collapsible );
} else {
- $toggleLink = $toggle.off( 'click.mw-collapsible' ).on( 'click.mw-collapsible', function ( e, opts ) {
- opts = $.extend( {}, options, opts );
- toggleLinkPremade( $toggle, e, opts );
- } );
+ clickHandler = premadeToggleHandler;
+ $toggleLink = $toggle.on( 'click.mw-collapsible', clickHandler );
}
} else { // <div>, <p> etc.
// If theres no toggle link, add it
if ( !$toggle.length ) {
- $collapsible.prepend( $toggleLink );
+ $toggleLink = $defaultToggleLink.prependTo( $collapsible );
} else {
- $toggleLink = $toggle.off( 'click.mw-collapsible' ).on( 'click.mw-collapsible', function ( e, opts ) {
- opts = $.extend( {}, options, opts );
- toggleLinkPremade( $toggle, e, opts );
- } );
+ clickHandler = premadeToggleHandler;
+ $toggleLink = $toggle.on( 'click.mw-collapsible', clickHandler );
}
}
}
- // Initial state (only for those that are not custom,
- // because the initial state of those has been taken care of already).
- if (
- ( options.collapsed || $collapsible.hasClass( 'mw-collapsed' ) ) &&
- ( !$customTogglers || !$customTogglers.length )
- ) {
+ // Initial state
+ if ( options.collapsed || $collapsible.hasClass( 'mw-collapsed' ) ) {
+ // Remove here so that the toggler goes in the right direction (the class is re-added)
$collapsible.removeClass( 'mw-collapsed' );
- // The collapsible element could have multiple togglers
- // To toggle the initial state only click one of them (ie. the first one, eq(0) )
- // Else it would go like: hide,show,hide,show for each toggle link.
- // This is just like it would be in reality (only one toggle is clicked at a time).
- $toggleLink.eq( 0 ).trigger( 'click', [ { instantHide: true } ] );
+ // One toggler can hook to multiple elements, and one element can have
+ // multiple togglers. This is the sanest way to handle that.
+ clickHandler.call( $toggleLink.get( 0 ), null, { instantHide: true } );
}
} );
};
}
+ /**
+ * Sets the sort count of the columns that are not affected by the sorting to have them sorted
+ * in default (ascending) order when their header cell is clicked the next time.
+ *
+ * @param {jQuery} $headers
+ * @param {Number[][]} sortList
+ * @param {Number[][]} headerToColumns
+ */
+ function setHeadersOrder( $headers, sortList, headerToColumns ) {
+ // Loop through all headers to retrieve the indices of the columns the header spans across:
+ $.each( headerToColumns, function( headerIndex, columns ) {
+
+ $.each( columns, function( i, columnIndex ) {
+ var header = $headers[headerIndex];
+
+ if ( !isValueInArray( columnIndex, sortList ) ) {
+ // Column shall not be sorted: Reset header count and order.
+ header.order = 0;
+ header.count = 0;
+ } else {
+ // Column shall be sorted: Apply designated count and order.
+ $.each( sortList, function( j, sortColumn ) {
+ if ( sortColumn[0] === i ) {
+ header.order = sortColumn[1];
+ header.count = sortColumn[1] + 1;
+ return false;
+ }
+ } );
+ }
+ } );
+
+ } );
+ }
+
function isValueInArray( v, a ) {
var l = a.length;
for ( var i = 0; i < l; i++ ) {
$.each( sortObjects, function( i, sortObject ) {
$.each ( sortObject, function( columnIndex, order ) {
var orderIndex = ( order === 'desc' ) ? 1 : 0;
- sortList.push( [columnIndex, orderIndex] );
+ sortList.push( [parseInt( columnIndex, 10 ), orderIndex] );
} );
} );
return sortList;
}
}
+ // Reset order/counts of cells not affected by sorting
+ setHeadersOrder( $headers, config.sortList, headerToColumns );
+
// Set CSS for headers
setHeadersCss( $table[0], $headers, config.sortList, sortCSS, sortMsg, columnToHeader );
appendToTable(
sortList = convertSortList( sortList );
}
+ // Set each column's sort count to be able to determine the correct sort
+ // order when clicking on a header cell the next time
+ setHeadersOrder( $headers, sortList, headerToColumns );
+
// re-build the cache for the tbody cells
cache = buildCache( table );
* Ported from skins/common/edit.js by Trevor Parscal
* (c) 2009 Wikimedia Foundation (GPLv2) - http://www.wikimedia.org
*
- * Inserts text at the begining and end of a text selection, optionally
+ * Inserts text at the beginning and end of a text selection, optionally
* inserting text at the caret when selection is empty.
*
* @fixme document the options parameters
* Some code copied from
* http://www.dedestruct.com/2008/03/22/howto-cross-browser-cursor-position-in-textareas/
*
- * Get the position (in resolution of bytes not nessecarily characters)
+ * Get the position (in resolution of bytes not necessarily characters)
* in a textarea
*
* Will focus the textarea in some browsers (IE/Opera)
+/**
+ * Interface for the classic edit toolbar.
+ *
+ * @class mw.toolbar
+ * @singleton
+ */
( function ( mw, $ ) {
- var isReady, toolbar, currentFocused, queue, $toolbar, slice;
-
- isReady = false;
- queue = [];
- $toolbar = false;
- slice = Array.prototype.slice;
+ var toolbar, isReady, $toolbar, queue, slice, currentFocused;
/**
- * Internal helper that does the actual insertion
- * of the button into the toolbar.
- * See mw.toolbar.addButton for parameter documentation.
+ * Internal helper that does the actual insertion of the button into the toolbar.
+ *
+ * See #addButton for parameter documentation.
+ *
+ * @private
*/
- function insertButton( b /* imageFile */, speedTip, tagOpen, tagClose, sampleText, imageId, selectText ) {
+ function insertButton( b, speedTip, tagOpen, tagClose, sampleText, imageId ) {
// Backwards compatibility
if ( typeof b !== 'object' ) {
b = {
tagOpen: tagOpen,
tagClose: tagClose,
sampleText: sampleText,
- imageId: imageId,
- selectText: selectText
+ imageId: imageId
};
}
- var $image = $( '<img>', {
+ var $image = $( '<img>' ).attr( {
width : 23,
height: 22,
src : b.imageFile,
id : b.imageId || undefined,
'class': 'mw-toolbar-editbutton'
} ).click( function () {
- toolbar.insertTags( b.tagOpen, b.tagClose, b.sampleText, b.selectText );
+ toolbar.insertTags( b.tagOpen, b.tagClose, b.sampleText );
return false;
} );
$toolbar.append( $image );
- return true;
}
+ isReady = false;
+ $toolbar = false;
+ queue = [];
+ slice = queue.slice;
+
toolbar = {
+
/**
* Add buttons to the toolbar.
+ *
* Takes care of race conditions and time-based dependencies
* by placing buttons in a queue if this method is called before
* the toolbar is created.
- * @param {Object} button: Object with the following properties:
- * - imageFile
- * - speedTip
- * - tagOpen
- * - tagClose
- * - sampleText
- * - imageId
- * - selectText
- * For compatiblity, passing the above as separate arguments
+ *
+ * For compatiblity, passing the properties listed below as separate arguments
* (in the listed order) is also supported.
+ *
+ * @param {Object} button Object with the following properties:
+ * @param {string} button.imageFile
+ * @param {string} button.speedTip
+ * @param {string} button.tagOpen
+ * @param {string} button.tagClose
+ * @param {string} button.sampleText
+ * @param {string} [button.imageId]
*/
addButton: function () {
if ( isReady ) {
},
/**
- * Apply tagOpen/tagClose to selection in textarea,
- * use sampleText instead of selection if there is none.
+ * Apply tagOpen/tagClose to selection in currently focused textarea.
+ *
+ * Uses `sampleText` if selection is empty.
+ *
+ * @param {string} tagOpen
+ * @param {string} tagClose
+ * @param {string} sampleText
*/
insertTags: function ( tagOpen, tagClose, sampleText ) {
if ( currentFocused && currentFocused.length ) {
mw.toolbar = toolbar;
$( document ).ready( function () {
- var buttons, i, b, $iframe;
+ var buttons, i, b, $iframe, editBox, scrollTop, $editForm;
// currentFocus is used to determine where to insert tags
currentFocused = $( '#wpTextbox1' );
// Make sure edit summary does not exceed byte limit
$( '#wpSummary' ).byteLimit( 255 );
- /**
- * Restore the edit box scroll state following a preview operation,
- * and set up a form submission handler to remember this state
- */
- ( function scrollEditBox() {
- var editBox, scrollTop, $editForm;
-
- editBox = document.getElementById( 'wpTextbox1' );
- scrollTop = document.getElementById( 'wpScrolltop' );
- $editForm = $( '#editform' );
- if ( $editForm.length && editBox && scrollTop ) {
- if ( scrollTop.value ) {
- editBox.scrollTop = scrollTop.value;
- }
- $editForm.submit( function () {
- scrollTop.value = editBox.scrollTop;
- });
+ // Restore the edit box scroll state following a preview operation,
+ // and set up a form submission handler to remember this state.
+ editBox = document.getElementById( 'wpTextbox1' );
+ scrollTop = document.getElementById( 'wpScrolltop' );
+ $editForm = $( '#editform' );
+ if ( $editForm.length && editBox && scrollTop ) {
+ if ( scrollTop.value ) {
+ editBox.scrollTop = scrollTop.value;
}
- }() );
+ $editForm.submit( function () {
+ scrollTop.value = editBox.scrollTop;
+ });
+ }
// Apply to dynamically created textboxes as well as normal ones
$( document ).on( 'focus', 'textarea, input:text', function () {
--- /dev/null
+.postedit-container {
+ margin: 0 auto;
+ position: fixed;
+ top: 0;
+ height: 0;
+ left: 50%;
+ z-index: 1000;
+}
+
+.postedit {
+ position: relative;
+ top: 0.6em;
+ left: -50%;
+ padding: .6em 3.6em .6em 1.1em;
+ font-size: 0.8em;
+ line-height: 1.5625em;
+ color: #626465;
+ background-color: #f4f4f4;
+ border: 1px solid #dcd9d9;
+ -webkit-text-shadow: 0 0.0625em 0 rgba(255, 255, 255, 0.5);
+ -moz-text-shadow: 0 0.0625em 0 rgba(255, 255, 255, 0.5);
+ text-shadow: 0 0.0625em 0 rgba(255, 255, 255, 0.5);
+ -webkit-border-radius: 5px;
+ -moz-border-radius: 5px;
+ border-radius: 5px;
+ -webkit-box-shadow: 0 2px 5px 0 #ccc;
+ -moz-box-shadow: 0 2px 5px 0 #ccc;
+ box-shadow: 0 2px 5px 0 #ccc;
+ -webkit-transition: all 0.25s ease-in-out;
+ -moz-transition: all 0.25s ease-in-out;
+ -ms-transition: all 0.25s ease-in-out;
+ -o-transition: all 0.25s ease-in-out;
+ transition: all 0.25s ease-in-out;
+}
+
+.skin-vector .postedit {
+ font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
+}
+
+.skin-monobook .postedit {
+ top: 3em !important;
+}
+
+.postedit-faded {
+ opacity: 0;
+}
+
+.postedit-icon {
+ padding-left: 41px; /* 25 + 8 + 8 */
+ /* like min-height, but old IE compatible and keeps text vertically aligned, too */
+ line-height: 25px;
+ background-repeat: no-repeat;
+ background-position: 8px 50%;
+}
+
+.postedit-icon-checkmark {
+ /* @embed */
+ background-image: url(images/green-checkmark.png);
+ background-position: left;
+}
+
+.postedit-close {
+ position: absolute;
+ padding: 0 .8em;
+ right: 0;
+ top: 0;
+ font-size: 1.25em;
+ font-weight: bold;
+ line-height: 2.3em;
+ color: black;
+ text-shadow: 0 0.0625em 0 white;
+ text-decoration: none;
+ opacity: 0.2;
+ filter: alpha(opacity=20);
+}
+
+.postedit-close:hover {
+ color: black;
+ text-decoration: none;
+ cursor: pointer;
+ opacity: 0.4;
+ filter: alpha(opacity=40);
+}
( function ( mw, $ ) {
- // Only a view can be a post-edit.
- if ( mw.config.get( 'wgAction' ) !== 'view' ) {
+ 'use strict';
+
+ var config = mw.config.get( [ 'wgAction', 'wgCookiePrefix', 'wgCurRevisionId' ] ),
+ // This should match EditPage::POST_EDIT_COOKIE_KEY_PREFIX:
+ cookieKey = config.wgCookiePrefix + 'PostEditRevision' + config.wgCurRevisionId,
+ div, id;
+
+ if ( config.wgAction !== 'view' || $.cookie( cookieKey ) !== '1' ) {
return;
}
- // Matches EditPage::POST_EDIT_COOKIE_KEY_PREFIX
- var cookieKey = mw.config.get( 'wgCookiePrefix' ) + 'PostEditRevision' + mw.config.get( 'wgCurRevisionId' );
+ $.cookie( cookieKey, null, { path: '/' } );
+ mw.config.set( 'wgPostEdit', true );
+
+ function removeConfirmation() {
+ div.parentNode.removeChild( div );
+ mw.hook( 'postEdit.afterRemoval' ).fire();
+ }
+
+ function fadeOutConfirmation() {
+ clearTimeout( id );
+ div.firstChild.className = 'postedit postedit-faded';
+ setTimeout( removeConfirmation, 500 );
+ return false;
+ }
- if ( $.cookie( cookieKey ) === '1' ) {
- // We just saved this page
- $.cookie( cookieKey, null, { path: '/' } );
- mw.config.set( 'wgPostEdit', true );
+ function showConfirmation() {
+ div = document.createElement( 'div' );
+ div.className = 'postedit-container';
+ div.innerHTML =
+ '<div class="postedit">' +
+ '<div class="postedit-icon postedit-icon-checkmark">' +
+ mw.message( 'postedit-confirmation', mw.user ).escaped() +
+ '</div>' +
+ '<a href="#" class="postedit-close">×</a>' +
+ '</div>';
+ id = setTimeout( fadeOutConfirmation, 3000 );
+ div.firstChild.lastChild.onclick = fadeOutConfirmation;
+ document.body.insertBefore( div, document.body.firstChild );
}
+
+ mw.hook( 'postEdit' ).add( showConfirmation ).fire();
+
} ( mediaWiki, jQuery ) );
*/
jQuery( function ( $ ) {
// Select all h1-h6 elements that contain editsection links
- // Don't use the ":has:(.editsection a)" selector because it performs very bad.
+ // Don't use the ":has:(.mw-editsection a)" selector because it performs very bad.
// http://jsperf.com/jq-1-7-2-vs-jq-1-8-1-performance-of-mw-has/2
$( document ).on( 'contextmenu', 'h1, h2, h3, h4, h5, h6', function ( e ) {
- var $edit = $( this ).find( '.mw-editsection a, .editsection a' );
+ var $edit = $( this ).find( '.mw-editsection a' );
if ( !$edit.length ) {
return;
}
// an infinite loop. If this fresh token is bad, something else is very wrong.
useTokenToPost = function ( token ) {
params.token = token;
- api.post( params, ok, err );
+ api.post( params, { ok: ok, err: err } );
};
return api.getEditToken( useTokenToPost, err );
} else {
err( code, result );
}
};
- return api.post( params, { ok : ok, err : getTokenIfBad });
+ return api.post( params, { ok: ok, err: getTokenIfBad } );
}
},
} else {
d.reject( 'token-missing', data );
}
- })
+ } )
.fail( d.reject );
return d.promise( { abort: apiPromise.abort } );
--- /dev/null
+/**
+ * Make the two-step login easier.
+ * @author Niklas Laxström
+ * @class mw.Api.plugin.login
+ * @since 1.22
+ */
+( function ( mw, $ ) {
+ 'use strict';
+
+ $.extend( mw.Api.prototype, {
+ /**
+ * @param {string} username
+ * @param {string} password
+ * @return {jQuery.Promise} See mw.Api#post
+ */
+ login: function ( username, password ) {
+ var params, request,
+ deferred = $.Deferred(),
+ api = this;
+
+ params = {
+ action: 'login',
+ lgname: username,
+ lgpassword: password
+ };
+
+ request = api.post( params );
+ request.fail( deferred.reject );
+ request.done( function ( data ) {
+ params.lgtoken = data.login.token;
+ api.post( params )
+ .fail( deferred.reject )
+ .done( function ( data ) {
+ var code;
+ if ( data.login && data.login.result === 'Success' ) {
+ deferred.resolve( data );
+ } else {
+ // Set proper error code whenever possible
+ code = data.error && data.error.code || 'unknown';
+ deferred.reject( code, data );
+ }
+ } );
+ } );
+
+ return deferred.promise( { abort: request.abort } );
+ }
+ } );
+
+ /**
+ * @class mw.Api
+ * @mixins mw.Api.plugin.login
+ */
+
+}( mediaWiki, jQuery ) );
apiPromise = this.get( {
action: 'parse',
+ contentmodel: 'wikitext',
text: wikitext
} )
.done( function ( data ) {
* Styling for Special:Watchlist and Special:RecentChanges
*/
-table.mw-enhanced-rc {
- border: 0;
- border-spacing: 0;
-}
-
-table.mw-enhanced-rc th,
-table.mw-enhanced-rc td {
- padding: 0;
- vertical-align: top;
-}
-
-td.mw-enhanced-rc {
- white-space: nowrap;
- font-family: monospace;
-}
-
-.mw-enhanced-rc-time {
- font-family: monospace;
-}
-
-table.mw-enhanced-rc td.mw-enhanced-rc-nested {
- padding-left: 1em;
-}
-
-/* Show/hide arrows in enhanced changeslist */
-.mw-enhanced-rc .collapsible-expander {
- float: none;
-}
-
-/* If JS is disabled, the arrows or the placeholder space shouldn't be shown */
-.client-nojs .mw-enhancedchanges-arrow-space {
- display: none;
-}
-
-.mw-enhancedchanges-arrow-space {
- display: inline-block;
- *display: inline; /* IE7 and below */
- zoom: 1;
- width: 15px;
- height: 15px;
-}
-
-/* let it look like it is clickable */
-.mw-enhancedchanges-arrow.mw-collapsible-toggle {
- cursor: pointer;
-}
-
-.mw-enhancedchanges-arrow.mw-collapsible-toggle-collapsed {
- /* @embed */
- background: url(images/arrow-collapsed-ltr.png) no-repeat left bottom;
-}
-
-.mw-enhancedchanges-arrow.mw-collapsible-toggle-expanded {
- /* @embed */
- background: url(images/arrow-expanded.png) no-repeat left bottom;
-}
-
-.mw-changeslist-line-watched .mw-title,
-.mw-enhanced-watched .mw-enhanced-rc-time {
+.mw-changeslist-line-watched .mw-title {
font-weight: bold;
}
--- /dev/null
+/**
+ * Styling for Special:Watchlist and Special:RecentChanges when preference 'usenewrc'
+ * a.k.a. Enhanced Recent Changes is enabled.
+ */
+
+table.mw-enhanced-rc {
+ border: 0;
+ border-spacing: 0;
+}
+
+table.mw-enhanced-rc th,
+table.mw-enhanced-rc td {
+ padding: 0;
+ vertical-align: top;
+}
+
+td.mw-enhanced-rc {
+ white-space: nowrap;
+ font-family: monospace;
+}
+
+.mw-enhanced-rc-time {
+ font-family: monospace;
+}
+
+table.mw-enhanced-rc td.mw-enhanced-rc-nested {
+ padding-left: 1em;
+}
+
+/* Show/hide arrows in enhanced changeslist */
+.mw-enhanced-rc .collapsible-expander {
+ float: none;
+}
+
+/* If JS is disabled, the arrows or the placeholder space shouldn't be shown */
+.client-nojs .mw-enhancedchanges-arrow-space {
+ display: none;
+}
+
+.mw-enhancedchanges-arrow-space {
+ display: inline-block;
+ *display: inline; /* IE7 and below */
+ zoom: 1;
+ width: 15px;
+ height: 15px;
+}
+
+/* let it look like it is clickable */
+.mw-enhancedchanges-arrow.mw-collapsible-toggle {
+ cursor: pointer;
+}
+
+.mw-enhanced-watched .mw-enhanced-rc-time {
+ font-weight: bold;
+}
--- /dev/null
+/* Disable the underline that Vector puts on h2 headings, and bold them. */
+.mw-ui-container h2 {
+ border: 0;
+ font-weight: bold;
+}
+
+/**** shuffled CAPTCHA ****/
+#wpCaptchaWord {
+ margin-top: 6px;
+}
+
+.mw-createacct-captcha-container {
+ background-color: #f8f8f8;
+ border: 1px solid #c9c9c9;
+ padding: 10px;
+ text-align: center;
+}
+
+.mw-createacct-captcha-assisted {
+ display: block;
+ margin-top: 0.5em;
+}
+
+/* Put a border around the fancycaptcha-image-container. */
+.mw-createacct-captcha-and-reload {
+ border: 1px solid #c9c9c9;
+ display: table-cell; /* Other display formats end up too wide */
+ width: 270px;
+ background-color: #FFF;
+}
+
+/* Make the fancycaptcha-image-container full-width within its parent. */
+.fancycaptcha-image-container
+{
+ width: 100%;
+}
+
+/**** Benefits column CSS to the right (if it fits) of the form. ****/
+.mw-ui-container #userloginForm {
+ float: left;
+}
+
+div.mw-createacct-benefits-container {
+ /* Keeps this column compact and close to the form, but tends to squish contents. */
+ float: left;
+}
+
+div.mw-createacct-benefits-container h2 {
+ margin-bottom: 30px;
+}
+
+.mw-number-text.icon-edits {
+ /* @embed */
+ background: url(images/icon-edits.png) no-repeat left center;
+}
+
+.mw-number-text.icon-pages {
+ /* @embed */
+ background: url(images/icon-pages.png) no-repeat left center;
+}
+
+.mw-number-text.icon-contributors {
+ /* @embed */
+ background: url(images/icon-contributors.png) no-repeat left center;
+}
+
+/* Special font for numbers in benefits*/
+div.mw-number-text h3 {
+ top: 0;
+ margin: 0;
+ padding: 0;
+ color: #252525;
+ font-family: 'Georgia', serif;
+ font-weight: normal;
+ font-size: 2.2em;
+ line-height: 1.2;
+ text-align: center;
+}
+
+/* Contains a number and explanatory text, with space for an icon */
+div.mw-number-text {
+ display: block;
+ font-size: 1.2em;
+ color: #444;
+ margin-top: 1em;
+ padding: 0 0 0 95px; /* 80px wide icon plus "margin" */
+ min-height: 75px; /* matches max icon height, ensures icon emblem is visible */
+ text-align: center;
+}
--- /dev/null
+/**
+ * JavaScript for Create account form (Special:UserLogin?type=signup).
+ */
+( function ( mw, $ ) {
+
+ // When sending password by email, hide the password input fields.
+ // This function doesn't need to be loaded early by ResourceLoader, but is tiny.
+ function hidePasswordOnEmail( $ ) {
+ $( '#wpCreateaccountMail' )
+ .on( 'change', function() {
+ $( '.mw-row-password' ).toggle( !$( this ).attr( 'checked' ) );
+ } )
+ .trigger( 'change' );
+ }
+
+ // Move the FancyCaptcha image into a more attractive container.
+ // This function does need to be run early by ResourceLoader.
+ function adjustFancyCaptcha( $, mw ) {
+ var $content = $( '#mw-content-text' ),
+ $submit = $content.find( '#wpCreateaccount' ),
+ tabIndex,
+ $captchaStuff,
+ $captchaImageContainer,
+ // JavaScript can't yet parse the message createacct-imgcaptcha-help when it
+ // contains a MediaWiki transclusion, so PHP parses it and sends the HTML.
+ helpMsg = mw.config.get( 'wgCreateacctImgcaptchaHelp' ),
+ helpHtml = '';
+
+ /*
+ * CAPTCHA
+ * The CAPTCHA is in a div style="captcha" at the top of the form.
+ * If it's a FancyCaptcha, then we remove it and insert it lower down,
+ * in a customized div with just what we need (e.g. no
+ * fancycaptcha-createaccount message).
+ */
+ if ( !$submit.length) {
+ return;
+ }
+ tabIndex = $submit.prop( 'tabindex' ) - 1;
+ $captchaStuff = $content.find ( '.captcha' );
+
+ if ( $captchaStuff.length ) {
+
+ // The FancyCaptcha has this class in the ConfirmEdit extension
+ // after 2013-04-18.
+ $captchaImageContainer = $captchaStuff.find( '.fancycaptcha-image-container' );
+ if ( $captchaImageContainer.length !== 1 ) {
+ return;
+ }
+
+ $captchaStuff.remove();
+
+ if ( helpMsg) {
+ helpHtml = '<small class="mw-createacct-captcha-assisted">' + helpMsg + '</small>';
+ }
+
+ // Insert another div before the submit button that will include the
+ // repositioned FancyCaptcha div, an input field, and possible help.
+ $submit.closest( 'div' )
+ .before( [
+ '<div>',
+ '<label for="wpCaptchaWord">' + mw.message( 'createacct-captcha' ).escaped() + '</label>',
+ '<div class="mw-createacct-captcha-container">',
+ '<div class="mw-createacct-captcha-and-reload" />',
+ '<input id="wpCaptchaWord" name="wpCaptchaWord" type="text" placeholder="' +
+ mw.message( 'createacct-imgcaptcha-ph' ).escaped() +
+ '" tabindex="' + tabIndex + '" autocapitalize="off" autocorrect="off">',
+ helpHtml,
+ '</div>',
+ '</div>'
+ ].join( '' )
+ );
+
+ // Stick the FancyCaptcha container inside our bordered and framed parents.
+ $captchaImageContainer
+ .prependTo( $content.find( '.mw-createacct-captcha-and-reload' ) );
+
+ // Find the input field, add the text (if any) of the existing CAPTCHA
+ // field (although usually it's blanked out on every redisplay),
+ // and after it move over the hidden field that tells the CAPTCHA
+ // what to do.
+ $content.find( '#wpCaptchaWord' )
+ .val( $captchaStuff.find( '#wpCaptchaWord' ).val() )
+ .after( $captchaStuff.find( '#wpCaptchaId' ) );
+ }
+ }
+
+ $( document ).ready( function( $ ) {
+ adjustFancyCaptcha( $, mw);
+ hidePasswordOnEmail( $ );
+ } );
+
+}( mediaWiki, jQuery ) );
+++ /dev/null
-/* Disable the underline that Vector puts on h2 headings, and bold them. */
-.mw-ui-container h2 {
- border: 0;
- font-weight: bold;
-}
-
-/**** shuffled CAPTCHA ****/
-#wpCaptchaWord {
- margin-top: 6px;
-}
-
-.mw-createacct-captcha-container {
- background-color: #f8f8f8;
- border: 1px solid #c9c9c9;
- padding: 10px;
- text-align: center;
-}
-
-.mw-createacct-captcha-assisted {
- display: block;
- margin-top: 0.5em;
-}
-
-/* Put a border around the fancycaptcha-image-container. */
-.mw-createacct-captcha-and-reload {
- border: 1px solid #c9c9c9;
- display: table-cell; /* Other display formats end up too wide */
- width: 270px;
- background-color: #FFF;
-}
-
-/* Make the fancycaptcha-image-container full-width within its parent. */
-.fancycaptcha-image-container
-{
- width: 100%;
-}
-
-/**** Benefits column CSS to the right (if it fits) of the form. ****/
-.mw-ui-container #userloginForm {
- float: left;
-}
-
-div.mw-createacct-benefits-container {
- float: left
-}
-
-div.mw-createacct-benefits-container h2 {
- margin-bottom: 30px;
-}
-
-div.mw-benefits-icon {
- display: inline-block;
- padding: 0;
- float: left;
- width: 80px;
- height: 75px;
- margin-right: 15px;
- border: 0;
-}
-
-.mw-benefits-icon.icon-edits {
- /* @embed */
- background: url(images/icon-edits.png) no-repeat right;
-}
-
-.mw-benefits-icon.icon-pages {
- /* @embed */
- background: url(images/icon-pages.png) no-repeat right;
-}
-
-.mw-benefits-icon.icon-contributors {
- /* @embed */
- background: url(images/icon-contributors.png) no-repeat right;
-}
-
-/* Special font for numbers in benefits*/
-div.mw-number-text h3 {
- top: 0;
- margin: 0;
- padding: 0;
- color: #252525;
- font-family: 'Georgia', serif;
- font-weight: normal;
- font-size: 2.2em;
- line-height: 1.2;
- text-align: center;
-}
-
-div.mw-number-text {
- display: block;
- font-size: 1.2em;
- color: #444;
- margin-top: 1em;
- text-align: center;
-}
+++ /dev/null
-/**
- * JavaScript for Create account form (Special:UserLogin?type=signup).
- */
-( function ( mw, $ ) {
-
- $( document ).ready( function( $ ) {
- var $content = $( '#mw-content-text' ),
- $submit = $content.find( '#wpCreateaccount' ),
- tabIndex,
- $captchaStuff,
- $captchaImageContainer,
- // JavaScript can't yet parse the message createacct-imgcaptcha-help when it
- // contains a MediaWiki transclusion, so PHP parses it and sends the HTML.
- helpMsg = mw.config.get( 'wgCreateacctImgcaptchaHelp' ),
- helpHtml = '';
-
- /*
- * CAPTCHA
- * The CAPTCHA is in a div style="captcha" at the top of the form.
- * If it's a FancyCaptcha, then we remove it and insert it lower down,
- * in a customized div with just what we need (e.g. no
- * fancycaptcha-createaccount message).
- */
- if ( !$submit.length) {
- return;
- }
- tabIndex = $submit.prop( 'tabindex' ) - 1;
- $captchaStuff = $content.find ( '.captcha' );
-
- if ( $captchaStuff.length ) {
-
- // The FancyCaptcha has this class in the ConfirmEdit extension
- // after 2013-04-18.
- $captchaImageContainer = $captchaStuff.find( '.fancycaptcha-image-container' );
- if ( $captchaImageContainer.length !== 1 ) {
- return;
- }
-
- $captchaStuff.remove();
-
- if ( helpMsg) {
- helpHtml = '<small class="mw-createacct-captcha-assisted">' + helpMsg + '</small>';
- }
-
- // Insert another div before the submit button that will include the
- // repositioned FancyCaptcha div, an input field, and possible help.
- $submit.closest( 'div' )
- .before( [
- '<div>',
- '<label for="wpCaptchaWord">' + mw.message( 'createacct-captcha' ).escaped() + '</label>',
- '<div class="mw-createacct-captcha-container">',
- '<div class="mw-createacct-captcha-and-reload" />',
- '<input id="wpCaptchaWord" name="wpCaptchaWord" type="text" placeholder="' +
- mw.message( 'createacct-imgcaptcha-ph' ).escaped() +
- '" tabindex="' + tabIndex + '" autocapitalize="off" autocorrect="off">',
- helpHtml,
- '</div>',
- '</div>'
- ].join( '' )
- );
-
- // Stick the FancyCaptcha container inside our bordered and framed parents.
- $captchaImageContainer
- .prependTo( $content.find( '.mw-createacct-captcha-and-reload' ) );
-
- // Find the input field, add the text (if any) of the existing CAPTCHA
- // field (although usually it's blanked out on every redisplay),
- // and after it move over the hidden field that tells the CAPTCHA
- // what to do.
- $content.find( '#wpCaptchaWord' )
- .val( $captchaStuff.find( '#wpCaptchaWord' ).val() )
- .after( $captchaStuff.find( '#wpCaptchaId' ) );
- }
-
- } );
-
-}( mediaWiki, jQuery ) );
--- /dev/null
+/* Styles just for VForm user login */
+#mw-userlogin-help {
+ text-align: center;
+}
+
+.mw-ui-vform .mw-secure {
+ /* @embed */
+ background: url(images/icon-lock.png) no-repeat scroll left center transparent;
+ margin: 0 0 0 1px;
+ padding: 0 0 0 11px;
+}
+
+/* The login form invites users to create an account */
+#mw-createaccount-cta {
+ width: 20em;
+ height: 10em;
+ text-align: center;
+ /* @embed */
+ background: url(images/glyph-people-large.png) no-repeat 50%;
+ margin: 0 auto;
+}
+
+#mw-createaccount-cta h3 {
+ font-size: 0.9em;
+ font-weight: normal;
+ text-align: center;
+ padding-top: 4em;
+}
+
+#mw-createaccount-join {
+ margin-left: 0.75em;
+ /* Separate from background image */
+ box-shadow: 4px 4px 4px 4px rgba(255, 255, 255, 1);
+ width: auto;
+ display: inline-block;
+}
+++ /dev/null
-/**
- * JavaScript for Special:UserLogin/signup
- */
-jQuery( document ).ready( function ( $ ) {
- $( '#wpCreateaccountMail' )
- .on( 'change', function() {
- $( '.mw-row-password' ).toggle( !$( this ).attr( 'checked' ) );
- } )
- .trigger( 'change' );
-} );
+++ /dev/null
-/* Styles just for VForm user login */
-#mw-userlogin-help {
- text-align: center;
-}
-
-.mw-ui-vform .mw-secure {
- /* @embed */
- background: url(images/icon-lock.png) no-repeat scroll left center transparent;
- margin: 0 0 0 1px;
- padding: 0 0 0 11px;
-}
-
-/* The login form invites users to create an account */
-#mw-createaccount-cta {
- width: 20em;
- height: 10em;
- text-align: center;
- /* @embed */
- background: url(images/glyph-people-large.png) no-repeat 50%;
- margin: 0 auto;
-}
-
-#mw-createaccount-cta h3 {
- font-size: 0.9em;
- font-weight: normal;
- text-align: center;
- padding-top: 4em;
-}
-
-#mw-createaccount-join {
- margin-left: 0.75em;
- /* Separate from background image */
- box-shadow: 4px 4px 4px 4px rgba(255, 255, 255, 1);
- width: auto;
- display: inline-block;
-}
-moz-box-sizing: border-box;
box-sizing: border-box;
font-size: 0.9em;
- color: #7d7d7d;
+ color: #4a4a4a;
width: auto;
margin: 0 0 0.2em 0;
padding: 0;
/* line 72, sourcefiles/scss/components/default/_forms.scss */
.mw-ui-label {
font-size: 0.9em;
- color: #7d7d7d;
+ color: #4a4a4a;
}
/* line 34, sourcefiles/scss/mixins/_forms.scss */
.mw-ui-label * {
-moz-box-sizing: border-box;
box-sizing: border-box;
font-size: 0.9em;
- color: #7d7d7d;
+ color: #4a4a4a;
width: auto;
margin: 0 0 0.2em 0;
padding: 0;
/* line 72, sourcefiles/scss/components/default/_forms.scss */
.mw-ui-label {
font-size: 0.9em;
- color: #7d7d7d;
+ color: #4a4a4a;
}
/* line 34, sourcefiles/scss/mixins/_forms.scss */
.mw-ui-label * {
//weight: bold;
size: 0.9em;
};
- color: darken($agoraGray, 30%);
+ color: darken($agoraGray, 50%);
& * {
font-weight: normal;
} );
}
+ $( document ).ready( function() {
+ var $matrixTooltips = $( '.mw-htmlform-matrix .mw-htmlform-tooltip' );
+ if ( $matrixTooltips.length ) {
+ mw.loader.using( 'jquery.tipsy', function () {
+ $matrixTooltips.tipsy( { gravity: 's' } );
+ } );
+ }
+ } );
}( mediaWiki, jQuery ) );
--- /dev/null
+/* General-purpose icons via CSS. Classes here should be named "mw-icon-*". */
+
+/* For the collapsed and expanded arrows, we also provide selectors to make it
+ * easy to use them with jquery.makeCollapsible. */
+.mw-icon-arrow-collapsed,
+.mw-collapsible-arrow.mw-collapsible-toggle-collapsed {
+ /* @embed */
+ background: url(images/arrow-collapsed-ltr.png) no-repeat left bottom;
+}
+
+.mw-icon-arrow-expanded,
+.mw-collapsible-arrow.mw-collapsible-toggle-expanded {
+ /* @embed */
+ background: url(images/arrow-expanded.png) no-repeat left bottom;
+}
};
/**
+ * Base library for MediaWiki.
+ *
* @class mw
* @alternateClassName mediaWiki
* @singleton
libs: {},
/**
+ * Access container for deprecated functionality that can be moved from
+ * from their legacy location and attached to this object (e.g. a global
+ * function that is deprecated and as stop-gap can be exposed through here).
+ *
+ * This was reserved for future use but never ended up being used.
+ *
+ * @deprecated since 1.22: Let deprecated identifiers keep their original name
+ * and use mw.log#deprecate to create an access container for tracking.
* @property
*/
legacy: {},
*
* @private
* @param {string} text CSS text
- * @param {Mixed} [nextnode] An Element or jQuery object for an element where
- * the style tag should be inserted before. Otherwise appended to the `<head>`.
- * @return {HTMLElement} Node reference to the created `<style>` tag.
+ * @param {HTMLElement|jQuery} [nextnode=document.head] The element where the style tag should be
+ * inserted before. Otherwise it will be appended to `<head>`.
+ * @return {HTMLElement} Reference to the created `<style>` element.
*/
- function addStyleTag( text, nextnode ) {
+ function newStyleTag( text, nextnode ) {
var s = document.createElement( 'style' );
// Insert into document before setting cssText (bug 33305)
if ( nextnode ) {
}
/**
+ * Add a bit of CSS text to the current browser page.
+ *
+ * The CSS will be appended to an existing ResourceLoader-created `<style>` tag
+ * or create a new one based on whether the given `cssText` is safe for extension.
+ *
* @param {string} [cssText=cssBuffer] If called without cssText,
- * the internal buffer will be inserted instead.
+ * the internal buffer will be inserted instead.
* @param {Function} [callback]
*/
function addEmbeddedCSS( cssText, callback ) {
}
}
- $( addStyleTag( cssText, getMarker() ) ).data( 'ResourceLoaderDynamicStyleTag', true );
+ $( newStyleTag( cssText, getMarker() ) ).data( 'ResourceLoaderDynamicStyleTag', true );
cssCallbacks.fire().empty();
}
*/
function addScript( src, callback, async ) {
/*jshint evil:true */
- var script, head,
- done = false;
+ var script, head, done;
// Using isReady directly instead of storing it locally from
// a $.fn.ready callback (bug 31895).
// IE-safe way of getting the <head>. document.head isn't supported
// in old IE, and doesn't work when in the <head>.
+ done = false;
head = document.getElementsByTagName( 'head' )[0] || document.body;
script = document.createElement( 'script' );
// Handle memory leak in IE
script.onload = script.onreadystatechange = null;
- // Remove the script
+ // Detach the element from the document
if ( script.parentNode ) {
script.parentNode.removeChild( script );
}
- // Dereference the script
+ // Dereference the element from javascript
script = undefined;
callback();
/* Public Methods */
return {
- addStyleTag: addStyleTag,
+ /**
+ * @inheritdoc #newStyleTag
+ * @method
+ */
+ addStyleTag: newStyleTag,
/**
- * Requests dependencies from server, loading and executing when things when ready.
+ * Batch-request queued dependencies from the server.
*/
work: function () {
var reqBase, splits, maxQueryLength, q, b, bSource, bGroup, bSourceGroup,
},
/**
- * Registers a module, letting the system know about it and its
+ * Register a module, letting the system know about it and its
* properties. Startup modules contain calls to this function.
*
* @param {string} module Module name
},
/**
- * Implements a module, giving the system a course of action to take
- * upon loading. Results of a request for one or more modules contain
- * calls to this function.
+ * Implement a module given the components that make up the module.
+ *
+ * When #load or #using requests one or more modules, the server
+ * response contain calls to this function.
*
* All arguments are required.
*
},
/**
- * Executes a function as soon as one or more required modules are ready
+ * Execute a function as soon as one or more required modules are ready.
*
* @param {string|Array} dependencies Module name or array of modules names the callback
* dependends on to be ready before executing
},
/**
- * Loads an external script or one or more modules for future use
+ * Load an external script or one or more modules.
*
* @param {string|Array} modules Either the name of a module, array of modules,
* or a URL of an external script or style
},
/**
- * Changes the state of a module
+ * 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
},
/**
- * Gets the version of a module
+ * Get the version of a module.
*
- * @param {string} module name of module to get version for
+ * @param {string} module Name of module to get version for
*/
getVersion: function ( module ) {
if ( registry[module] !== undefined && registry[module].version !== undefined ) {
},
/**
- * @deprecated since 1.18 use mw.loader.getVersion() instead
+ * @inheritdoc #getVersion
+ * @deprecated since 1.18 use #getVersion instead
*/
version: function () {
return mw.loader.getVersion.apply( mw.loader, arguments );
},
/**
- * Gets the state of a module
+ * Get the state of a module.
*
* @param {string} module name of module to get state for
*/
},
/**
- * For backwards-compatibility with Squid-cached pages. Loads mw.user
+ * Load the `mediawiki.user` module.
+ *
+ * For backwards-compatibility with cached pages from before 2013 where:
+ *
+ * - the `mediawiki.user` module didn't exist yet
+ * - `mw.user` was still part of mediawiki.js
+ * - `mw.loader.go` still existed and called after `mw.loader.load()`
*/
go: function () {
mw.loader.load( 'mediawiki.user' );
return s.replace( /['"<>&]/g, escapeCallback );
},
- /**
- * Wrapper object for raw HTML passed to mw.html.element().
- * @class mw.html.Raw
- */
- Raw: function ( value ) {
- this.value = value;
- },
-
- /**
- * Wrapper object for CDATA element contents passed to mw.html.element()
- * @class mw.html.Cdata
- */
- Cdata: function ( value ) {
- this.value = value;
- },
-
/**
* Create an HTML element string, with safe escaping.
*
}
s += '</' + name + '>';
return s;
+ },
+
+ /**
+ * Wrapper object for raw HTML passed to mw.html.element().
+ * @class mw.html.Raw
+ */
+ Raw: function ( value ) {
+ this.value = value;
+ },
+
+ /**
+ * Wrapper object for CDATA element contents passed to mw.html.element()
+ * @class mw.html.Cdata
+ */
+ Cdata: function ( value ) {
+ this.value = value;
}
};
}() ),
var lists = {};
/**
+ * Create an instance of mw.hook.
+ *
* @method hook
* @member mw
* @param {string} name Name of hook.
$( searchboxesSelectors.join(', ') )
.suggestions( {
fetch: function ( query ) {
- var $el, jqXhr;
+ var $el;
if ( query.length !== 0 ) {
- $el = $(this);
- jqXhr = $.ajax( {
- url: mw.util.wikiScript( 'api' ),
- data: {
- format: 'json',
- action: 'opensearch',
- search: query,
- namespace: 0,
- suggest: ''
- },
- dataType: 'json',
- success: function ( data ) {
- if ( $.isArray( data ) && data.length ) {
- $el.suggestions( 'suggestions', data[1] );
- }
- }
- });
- $el.data( 'request', jqXhr );
+ $el = $( this );
+ $el.data( 'request', ( new mw.Api() ).get( {
+ action: 'opensearch',
+ search: query,
+ namespace: 0,
+ suggest: ''
+ } ).done( function ( data ) {
+ $el.suggestions( 'suggestions', data[1] );
+ } ) );
}
},
cancel: function () {
- var jqXhr = $(this).data( 'request' );
+ var apiPromise = $( this ).data( 'request' );
// If the delay setting has caused the fetch to have not even happened
- // yet, the jqXHR object will have never been set.
- if ( jqXhr && $.isFunction( jqXhr.abort ) ) {
- jqXhr.abort();
- $(this).removeData( 'request' );
+ // yet, the apiPromise object will have never been set.
+ if ( apiPromise && $.isFunction( apiPromise.abort ) ) {
+ apiPromise.abort();
+ $( this ).removeData( 'request' );
}
},
result: {
-/*
- * Implementation for mediaWiki.user
+/**
+ * @class mw.user
+ * @singleton
*/
-
( function ( mw, $ ) {
+ var callbacks, options, tokens, user;
/**
- * User object
+ * Gets the current user's groups or rights.
+ *
+ * @private
+ * @param {string} info One of 'groups' or 'rights'
+ * @param {Function} callback
*/
- function User( options, tokens ) {
- var user, callbacks;
-
- /* Private Members */
-
- user = this;
- callbacks = {};
-
- /**
- * Gets the current user's groups or rights.
- * @param {String} info: One of 'groups' or 'rights'.
- * @param {Function} callback
- */
- function getUserInfo( info, callback ) {
- var api;
- if ( callbacks[info] ) {
- callbacks[info].add( callback );
- return;
- }
- callbacks.rights = $.Callbacks('once memory');
- callbacks.groups = $.Callbacks('once memory');
+ function getUserInfo( info, callback ) {
+ var api;
+ if ( callbacks[info] ) {
callbacks[info].add( callback );
- api = new mw.Api();
- api.get( {
- action: 'query',
- meta: 'userinfo',
- uiprop: 'rights|groups'
- } ).always( function ( data ) {
- var rights, groups;
- if ( data.query && data.query.userinfo ) {
- rights = data.query.userinfo.rights;
- groups = data.query.userinfo.groups;
- }
- callbacks.rights.fire( rights || [] );
- callbacks.groups.fire( groups || [] );
- } );
+ return;
}
+ callbacks.rights = $.Callbacks('once memory');
+ callbacks.groups = $.Callbacks('once memory');
+ callbacks[info].add( callback );
+ api = new mw.Api();
+ api.get( {
+ action: 'query',
+ meta: 'userinfo',
+ uiprop: 'rights|groups'
+ } ).always( function ( data ) {
+ var rights, groups;
+ if ( data.query && data.query.userinfo ) {
+ rights = data.query.userinfo.rights;
+ groups = data.query.userinfo.groups;
+ }
+ callbacks.rights.fire( rights || [] );
+ callbacks.groups.fire( groups || [] );
+ } );
+ }
- /* Public Members */
-
- this.options = options || new mw.Map();
+ callbacks = {};
- this.tokens = tokens || new mw.Map();
+ // Extend the skeleton mw.user from mediawiki.js
+ // This is kind of ugly but we're stuck with this for b/c reasons
+ options = mw.user.options || new mw.Map();
+ tokens = mw.user.tokens || new mw.Map();
- /* Public Methods */
+ mw.user = user = {
+ options: options,
+ tokens: tokens,
/**
* Generates a random user session ID (32 alpha-numeric characters).
* This information would potentially be stored in a cookie to identify a user during a
* session or series of sessions. Its uniqueness should not be depended on.
*
- * @return String: Random set of 32 alpha-numeric characters
+ * @return {string} Random set of 32 alpha-numeric characters
*/
- this.generateRandomSessionId = function () {
+ generateRandomSessionId: function () {
var i, r,
id = '',
seed = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
id += seed.substring( r, r + 1 );
}
return id;
- };
+ },
/**
* Gets the current user's name.
*
- * @return Mixed: User name string or null if users is anonymous
+ * @return {string|null} User name string or null if users is anonymous
*/
- this.getName = function () {
+ getName: function () {
return mw.config.get( 'wgUserName' );
- };
+ },
/**
- * @deprecated since 1.20 use mw.user.getName() instead
+ * @inheritdoc #getName
+ * @deprecated since 1.20 use #getName instead
*/
- this.name = function () {
- return this.getName();
- };
+ name: function () {
+ return user.getName();
+ },
/**
* Get date user registered, if available.
*
- * @return {Date|false|null} date user registered, or false for anonymous users, or
+ * @return {Date|boolean|null} Date user registered, or false for anonymous users, or
* null when data is not available
*/
- this.getRegistration = function () {
+ getRegistration: function () {
var registration = mw.config.get( 'wgUserRegistration' );
- if ( this.isAnon() ) {
+ if ( user.isAnon() ) {
return false;
} else if ( registration === null ) {
// Information may not be available if they signed up before
} else {
return new Date( registration );
}
- };
+ },
/**
* Checks if the current user is anonymous.
*
- * @return Boolean
+ * @return {boolean}
*/
- this.isAnon = function () {
+ isAnon: function () {
return user.getName() === null;
- };
+ },
/**
- * @deprecated since 1.20 use mw.user.isAnon() instead
+ * @inheritdoc #isAnon
+ * @deprecated since 1.20 use #isAnon instead
*/
- this.anonymous = function () {
+ anonymous: function () {
return user.isAnon();
- };
+ },
/**
- * Gets a random session ID automatically generated and kept in a cookie.
+ * Gets a random ID automatically generated and stored in a session cookie.
*
* This ID is ephemeral for everyone, staying in their browser only until they close
* their browser.
*
- * @return String: User name or random session ID
+ * @return {string} Random session ID
*/
- this.sessionId = function () {
+ sessionId: function () {
var sessionId = $.cookie( 'mediaWiki.user.sessionId' );
if ( typeof sessionId === 'undefined' || sessionId === null ) {
sessionId = user.generateRandomSessionId();
$.cookie( 'mediaWiki.user.sessionId', sessionId, { 'expires': null, 'path': '/' } );
}
return sessionId;
- };
+ },
/**
* Gets the current user's name or the session ID
*
* @return {string} User name or random session ID
*/
- this.id = function () {
+ id: function () {
var name = user.getName();
if ( name ) {
return name;
}
return user.sessionId();
- };
+ },
/**
* Gets the user's bucket, placing them in one at random based on set odds if needed.
*
- * @param key String: Name of bucket
- * @param options Object: Bucket configuration options
- * @param options.buckets Object: List of bucket-name/relative-probability pairs (required,
- * must have at least one pair)
- * @param options.version Number: Version of bucket test, changing this forces rebucketing
- * (optional, default: 0)
- * @param options.expires Number: Length of time (in days) until the user gets rebucketed
- * (optional, default: 30)
- * @return String: Bucket name - the randomly chosen key of the options.buckets object
- *
- * @example
* mw.user.bucket( 'test', {
* 'buckets': { 'ignored': 50, 'control': 25, 'test': 25 },
* 'version': 1,
* 'expires': 7
* } );
+ *
+ * @param {string} key Name of bucket
+ * @param {Object} options Bucket configuration options
+ * @param {Object} options.buckets List of bucket-name/relative-probability pairs (required,
+ * must have at least one pair)
+ * @param {number} options.version Version of bucket test, changing this forces rebucketing
+ * (optional, default: 0)
+ * @param {number} options.expires Length of time (in days) until the user gets rebucketed
+ * (optional, default: 30)
+ * @return {string} Bucket name - the randomly chosen key of the options.buckets object
*/
- this.bucket = function ( key, options ) {
+ bucket: function ( key, options ) {
var cookie, parts, version, bucket,
range, k, rand, total;
);
}
return bucket;
- };
+ },
/**
* Gets the current user's groups.
+ *
+ * @param {Function} callback
*/
- this.getGroups = function ( callback ) {
+ getGroups: function ( callback ) {
getUserInfo( 'groups', callback );
- };
+ },
/**
* Gets the current user's rights.
+ *
+ * @param {Function} callback
*/
- this.getRights = function ( callback ) {
+ getRights: function ( callback ) {
getUserInfo( 'rights', callback );
- };
- }
-
- // Extend the skeleton mw.user from mediawiki.js
- // This is kind of ugly but we're stuck with this for b/c reasons
- mw.user = new User( mw.user.options, mw.user.tokens );
+ }
+ };
}( mediaWiki, jQuery ) );
* Returns null if not found.
*
* @param {string} param The parameter name.
- * @param {string} [url] URL to search through.
+ * @param {string} [url=document.location.href] URL to search through, defaulting to the current document's URL.
* @return {Mixed} Parameter value or null.
*/
getParamValue: function ( param, url ) {
*
* @param {Mixed} message The DOM-element, jQuery object or HTML-string to be put inside the message box.
* to allow CSS/JS to hide different boxes. null = no class used.
- * @deprecated Use mw#notify
+ * @deprecated since 1.20 Use mw#notify
*/
jsMessage: function ( message ) {
if ( !arguments.length || message === '' || message === null ) {
if ( !defined( 'MEDIAWIKI' ) ) {
$wgNoDBParam = true;
$optionsWithArgs = array( 'o' );
- require_once( __DIR__ .'/../maintenance/commandLine.inc' );
+ require_once __DIR__ .'/../maintenance/commandLine.inc';
$stderr = fopen( 'php://stderr', 'w' );
if ( !isset( $args[0] ) ) {
//----------------------------------------------------------------------------
function getVars( $_gv_filename ) {
- require( $_gv_filename );
+ require $_gv_filename;
$vars = get_defined_vars();
unset( $vars['_gv_filename'] );
$s .= wfMessage( 'qbfind' )->text() . ": ";
}
- $s .= "<input type='text' class=\"mw-searchInput\" name=\"search\" size=\"14\" value=\""
- . htmlspecialchars( substr( $search, 0, 256 ) ) . "\" />"
- . ( $which == 'footer' ? " " : "<br />" )
- . "<input type='submit' class=\"searchButton\" name=\"go\" value=\"" . wfMessage( 'searcharticle' )->escaped() . "\" />";
+ $s .= $this->makeSearchInput( array( 'class' => 'mw-searchInput', 'type' => 'text', 'size' => '14' ) );
+ $s .= ( $which == 'footer' ? " " : "<br />" );
+ $s .= $this->makeSearchButton( 'go', array( 'class' => 'searchButton' ) );
if ( $wgUseTwoButtonsSearchForm ) {
- $s .= " <input type='submit' class=\"searchButton\" name=\"fulltext\" value=\"" . wfMessage( 'searchbutton' )->escaped() . "\" />\n";
+ $s .= $this->makeSearchButton( 'fulltext', array( 'class' => 'searchButton' ) );
} else {
$s .= '<div><a href="' . $action . '" rel="search">' . wfMessage( 'powersearch-legend' )->escaped() . "</a></div>\n";
}
* @param $out OutputPage
*/
function setupSkinUserCss( OutputPage $out ) {
- global $wgHandheldStyle;
parent::setupSkinUserCss( $out );
$out->addModuleStyles( 'skins.monobook' );
- // Ugh. Can't do this properly because $wgHandheldStyle may be a URL
- if ( $wgHandheldStyle ) {
- // Currently in testing... try 'chick/main.css'
- $out->addStyle( $wgHandheldStyle, 'handheld' );
- }
-
// TODO: Migrate all of these
$out->addStyle( 'monobook/IE60Fixes.css', 'screen', 'IE 6' );
$out->addStyle( 'monobook/IE70Fixes.css', 'screen', 'IE 7' );
parent::initPage( $out );
// Append CSS which includes IE only behavior fixes for hover support -
- // this is better than including this in a CSS fille since it doesn't
+ // this is better than including this in a CSS file since it doesn't
// wait for the CSS file to load before fetching the HTC file.
$min = $this->getRequest()->getFuzzyBool( 'debug' ) ? '' : '.min';
$out->addHeadItem( 'csshover',
}
/**
- * Load skin and user CSS files in the correct order
- * fixes bug 22916
+ * Loads skin and user CSS files.
* @param $out OutputPage object
*/
function setupSkinUserCss( OutputPage $out ) {
line-height: 21pt;
}
-h1 .editsection {
- font-size: 55.6%;
-}
-
h1#firstHeading {
padding-bottom: 0;
margin-bottom: 0;
font-size: small;
margin-right: 8px;
text-align: right;
+ padding-left: 140px;
}
/* Override text justification (user preference), see bug 31990 */
#linkcollection * {
-// remote scripting library
-// (c) copyright 2005 modernmethod, inc
-window.sajax_debug_mode = false;
-window.sajax_request_type = 'GET';
+/**
+ * Remote Scripting Library
+ * Copyright 2005 modernmethod, inc
+ * Under the open source BSD license
+ * http://www.modernmethod.com/sajax/
+ */
+
+/*jshint camelcase:false, onevar:false */
+/*global alert */
+( function ( mw ) {
/**
- * if sajax_debug_mode is true, this function outputs given the message into
- * the element with id = sajax_debug; if no such element exists in the document,
+ * if sajax_debug_mode is true, this function outputs given the message into
+ * the element with id = sajax_debug; if no such element exists in the document,
* it is injected.
*/
-window.sajax_debug = function(text) {
- if (!sajax_debug_mode) return false;
+function debug( text ) {
+ if ( !window.sajax_debug_mode ) {
+ return false;
+ }
var e = document.getElementById( 'sajax_debug' );
e.appendChild( m );
return true;
-};
+}
/**
* Compatibility wrapper for creating a new XMLHttpRequest object.
*/
-window.sajax_init_object = function() {
- sajax_debug( 'sajax_init_object() called..' );
- var A;
+function createXhr() {
+ debug( 'sajax_init_object() called..' );
+ var a;
try {
// Try the new style before ActiveX so we don't
// unnecessarily trigger warnings in IE 7 when
// set to prompt about ActiveX usage
- A = new XMLHttpRequest();
- } catch ( e ) {
+ a = new XMLHttpRequest();
+ } catch ( xhrE ) {
try {
- A = new ActiveXObject( 'Msxml2.XMLHTTP' );
- } catch ( e ) {
+ a = new window.ActiveXObject( 'Msxml2.XMLHTTP' );
+ } catch ( msXmlE ) {
try {
- A = new ActiveXObject( 'Microsoft.XMLHTTP' );
- } catch ( oc ) {
- A = null;
+ a = new window.ActiveXObject( 'Microsoft.XMLHTTP' );
+ } catch ( msXhrE ) {
+ a = null;
}
}
}
- if ( !A ) {
- sajax_debug( 'Could not create connection object.' );
+ if ( !a ) {
+ debug( 'Could not create connection object.' );
}
- return A;
-};
+ return a;
+}
/**
* Perform an AJAX call to MediaWiki. Calls are handled by AjaxDispatcher.php
* (1, 2, 3) as the parameter list, and will show the result in the element
* with id = showFoo
*/
-window.sajax_do_call = function(func_name, args, target) {
- var i, x, n;
+function doAjaxRequest( func_name, args, target ) {
+ var i, x;
var uri;
var post_data;
uri = mw.util.wikiScript() + '?action=ajax';
- if ( sajax_request_type == 'GET' ) {
- if ( uri.indexOf( '?' ) == -1 ) {
+ if ( window.sajax_request_type === 'GET' ) {
+ if ( uri.indexOf( '?' ) === -1 ) {
uri = uri + '?rs=' + encodeURIComponent( func_name );
} else {
uri = uri + '&rs=' + encodeURIComponent( func_name );
post_data = post_data + '&rsargs[]=' + encodeURIComponent( args[i] );
}
}
- x = sajax_init_object();
+ x = createXhr();
if ( !x ) {
alert( 'AJAX not supported' );
return false;
}
try {
- x.open( sajax_request_type, uri, true );
+ x.open( window.sajax_request_type, uri, true );
} catch ( e ) {
- if ( window.location.hostname == 'localhost' ) {
- alert( "Your browser blocks XMLHttpRequest to 'localhost', try using a real hostname for development/testing." );
+ if ( location.hostname === 'localhost' ) {
+ alert( 'Your browser blocks XMLHttpRequest to "localhost", try using a real hostname for development/testing.' );
}
throw e;
}
- if ( sajax_request_type == 'POST' ) {
+ if ( window.sajax_request_type === 'POST' ) {
x.setRequestHeader( 'Method', 'POST ' + uri + ' HTTP/1.1' );
x.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded' );
}
x.setRequestHeader( 'Pragma', 'cache=yes' );
x.setRequestHeader( 'Cache-Control', 'no-transform' );
- x.onreadystatechange = function() {
- if ( x.readyState != 4 ) {
+ x.onreadystatechange = function () {
+ if ( x.readyState !== 4 ) {
return;
}
- sajax_debug( 'received (' + x.status + ' ' + x.statusText + ') ' + x.responseText );
+ debug( 'received (' + x.status + ' ' + x.statusText + ') ' + x.responseText );
//if ( x.status != 200 )
// alert( 'Error: ' + x.status + ' ' + x.statusText + ': ' + x.responseText );
//else
- if ( typeof( target ) == 'function' ) {
+ if ( typeof target === 'function' ) {
target( x );
- } else if ( typeof( target ) == 'object' ) {
- if ( target.tagName == 'INPUT' ) {
- if ( x.status == 200 ) {
+ } else if ( typeof target === 'object' ) {
+ if ( target.tagName === 'INPUT' ) {
+ if ( x.status === 200 ) {
target.value= x.responseText;
}
//else alert( 'Error: ' + x.status + ' ' + x.statusText + ' (' + x.responseText + ')' );
} else {
- if ( x.status == 200 ) {
+ if ( x.status === 200 ) {
target.innerHTML = x.responseText;
} else {
target.innerHTML = '<div class="error">Error: ' + x.status +
}
}
} else {
- alert( 'bad target for sajax_do_call: not a function or object: ' + target );
+ alert( 'Bad target for sajax_do_call: not a function or object: ' + target );
}
};
- sajax_debug( func_name + ' uri = ' + uri + ' / post = ' + post_data );
+ debug( func_name + ' uri = ' + uri + ' / post = ' + post_data );
x.send( post_data );
- sajax_debug( func_name + ' waiting..' );
- delete x;
+ debug( func_name + ' waiting..' );
return true;
-};
+}
/**
- * @return boolean whether the browser supports XMLHttpRequest
+ * @return {boolean} Whether the browser supports AJAX
*/
-window.wfSupportsAjax = function() {
- var request = sajax_init_object();
+function wfSupportsAjax() {
+ var request = createXhr();
var supportsAjax = request ? true : false;
- delete request;
+ request = undefined;
return supportsAjax;
-};
+}
+
+// Expose + Mark as deprecated
+var deprecationNotice = 'Sajax is deprecated, use jQuery.ajax or mediawiki.api instead.';
+
+// Variables
+mw.log.deprecate( window, 'sajax_debug_mode', false, deprecationNotice );
+mw.log.deprecate( window, 'sajax_request_type', 'GET', deprecationNotice );
+// Methods
+mw.log.deprecate( window, 'sajax_debug', debug, deprecationNotice );
+mw.log.deprecate( window, 'sajax_init_object', createXhr, deprecationNotice );
+mw.log.deprecate( window, 'sajax_do_call', doAjaxRequest, deprecationNotice );
+mw.log.deprecate( window, 'wfSupportsAjax', wfSupportsAjax, deprecationNotice );
+
+}( mediaWiki ) );
h1 {
font-size: 188%;
}
-h1 .editsection {
- font-size: 53%;
-}
h2 {
font-size: 150%;
}
-h2 .editsection {
- font-size: 67%;
-}
h3,
h4,
h5,
h3 {
font-size: 132%;
}
-h3 .editsection {
- font-size: 76%;
- font-weight: normal;
-}
h4 {
font-size: 116%;
}
-h4 .editsection {
- font-size: 86%;
- font-weight: normal; }
h5 {
- font-size: 105%;
-}
-h5 .editsection {
- font-weight: normal;
+ font-size: 108%;
}
h6 {
font-size: 100%;
}
-h6 .editsection {
- font-size: 125%;
- font-weight: normal;
-}
/* Some space under the headers in the content area */
h1,
div#column-one,
#colophon,
.mw-editsection,
-.editsection,
.toctoggle,
.tochidden,
div#f-poweredbyico,
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>\r
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->\r
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\r
+<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"\r
+ width="21.059px" height="21.06px" viewBox="0 0 21.059 21.06" enable-background="new 0 0 21.059 21.06" xml:space="preserve">\r
+<path fill="#575757" d="M10.529,0C4.715,0,0,4.714,0,10.529s4.715,10.53,10.529,10.53c5.816,0,10.529-4.715,10.529-10.53\r
+ S16.346,0,10.529,0z M10.527,16.767c-0.861,0-1.498-0.688-1.498-1.516c0-0.862,0.637-1.534,1.498-1.534c0.828,0,1.5,0.672,1.5,1.534\r
+ C12.027,16.078,11.355,16.767,10.527,16.767z M12.664,10.255c-0.723,0.568-1,0.931-1,1.739v0.5H9.459v-0.603\r
+ c0-1.517,0.449-2.136,1.154-2.688c0.707-0.552,1.139-0.845,1.139-1.637c0-0.672-0.414-1.051-1.24-1.051\r
+ c-0.707,0-1.328,0.189-1.982,0.638L7.479,5.346c0.861-0.604,1.93-1.034,3.342-1.034c1.912,0,3.516,1.051,3.516,3.066\r
+ C14.336,8.808,13.543,9.566,12.664,10.255z"/>\r
+</svg>\r
/* Now the custom parts */
-/* Make edit sections (which are inside h# tags) normal-sized */
-.editsection {
- font-weight: normal;
-}
-h1 .editsection { font-size: 50%; }
-h2 .editsection { font-size: 66.7%; }
-h3 .editsection { font-size: 85.5%; }
-h5 .editsection { font-size: 120%; }
-h6 .editsection { font-size: 133%; }
-
#footer { clear: both }
/* images */
/* @noflip */
cursor: pointer;
}
-/* Edit section links */
-/* Correct directionality when page dir is different from site/user dir */
-/* @noflip */
-.mw-content-ltr .editsection,
-.mw-content-rtl .mw-content-ltr .editsection {
- float: right;
- margin-left: 5px;
-}
-/* @noflip */
-.mw-content-rtl .editsection,
-.mw-content-ltr .mw-content-rtl .editsection {
- float: left;
- margin-right: 5px;
-}
-
/**
* File description page
*/
.prefsection table.mw-htmlform-matrix {
width: auto;
}
+
+.mw-icon-question {
+ /* @embed */
+ background: url('images/question-small.png') no-repeat;
+ /* SVG support using a transparent gradient to guarantee cross-browser
+ * compatibility (browsers able to understand gradient syntax support also SVG)
+ * lifted from #pt-login css rule in skins/vector/screen.css */
+ /* @embed */
+ background: -webkit-linear-gradient(transparent, transparent), url('images/question.svg') no-repeat;
+ /* @embed */
+ background: linear-gradient(transparent, transparent), url('images/question.svg') no-repeat;
+ background-size: 13px 13px;
+ display: inline-block;
+ height: 13px;
+ width: 13px;
+ margin-left: 4px;
+}
+
+.mw-icon-question:lang(ar),
+.mw-icon-question:lang(fa),
+.mw-icon-question:lang(ur) {
+ -webkit-transform: scaleX(-1);
+ -ms-transform: scaleX(-1);
+ transform: scaleX(-1);
+}
+
td.mw-submit {
white-space: nowrap;
}
z-index: 99;
}
-.mw-editsection, .editsection, .toctoggle {
+.mw-editsection,
+.toctoggle {
-moz-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
/**
* MediaWiki legacy wikibits
*/
-( function ( mw ) {
-
-window.clientPC = navigator.userAgent.toLowerCase(); // Get client info
-window.is_gecko = /gecko/.test( clientPC ) &&
- !/khtml|spoofer|netscape\/7\.0/.test(clientPC);
-
-window.is_safari = window.is_safari_win = window.webkit_version =
- window.is_chrome = window.is_chrome_mac = false;
-window.webkit_match = clientPC.match(/applewebkit\/(\d+)/);
-if (webkit_match) {
- window.is_safari = clientPC.indexOf('applewebkit') != -1 &&
- clientPC.indexOf('spoofer') == -1;
- window.is_safari_win = is_safari && clientPC.indexOf('windows') != -1;
- window.webkit_version = parseInt(webkit_match[1]);
- // Tests for chrome here, to avoid breaking old scripts safari left alone
- // This is here for accesskeys
- window.is_chrome = clientPC.indexOf('chrome') !== -1 &&
- clientPC.indexOf('spoofer') === -1;
- window.is_chrome_mac = is_chrome && clientPC.indexOf('mac') !== -1
-}
+/*jshint quotmark:false, onevar:false */
+( function ( mw, $ ) {
+ var isIE6, isGecko,
+ ua = navigator.userAgent.toLowerCase(),
+ uaMsg = 'Use feature detection or module jquery.client instead.';
-// For accesskeys; note that FF3+ is included here!
-window.is_ff2 = /firefox\/[2-9]|minefield\/3/.test( clientPC );
-window.ff2_bugs = /firefox\/2/.test( clientPC );
-// These aren't used here, but some custom scripts rely on them
-window.is_ff2_win = is_ff2 && clientPC.indexOf('windows') != -1;
-window.is_ff2_x11 = is_ff2 && clientPC.indexOf('x11') != -1;
-
-window.is_opera = window.is_opera_preseven = window.is_opera_95 =
- window.opera6_bugs = window.opera7_bugs = window.opera95_bugs = false;
-if (clientPC.indexOf('opera') != -1) {
- window.is_opera = true;
- window.is_opera_preseven = window.opera && !document.childNodes;
- window.is_opera_seven = window.opera && document.childNodes;
- window.is_opera_95 = /opera\/(9\.[5-9]|[1-9][0-9])/.test( clientPC );
- window.opera6_bugs = is_opera_preseven;
- window.opera7_bugs = is_opera_seven && !is_opera_95;
- window.opera95_bugs = /opera\/(9\.5)/.test( clientPC );
-}
-// As recommended by <http://msdn.microsoft.com/en-us/library/ms537509.aspx>,
-// avoiding false positives from moronic extensions that append to the IE UA
-// string (bug 23171)
-window.ie6_bugs = false;
-if ( /msie ([0-9]{1,}[\.0-9]{0,})/.exec( clientPC ) != null
-&& parseFloat( RegExp.$1 ) <= 6.0 ) {
- ie6_bugs = true;
+/**
+ * User-agent sniffing.
+ * To be removed in MediaWiki 1.23.
+ *
+ * @deprecated since 1.17 Use jquery.client instead.
+ */
+mw.log.deprecate( window, 'clientPC', ua, uaMsg );
+$.each([
+ 'is_gecko',
+ 'is_chrome_mac',
+ 'is_chrome',
+ 'webkit_version',
+ 'is_safari_win',
+ 'is_safari',
+ 'webkit_match',
+ 'is_ff2',
+ 'ff2_bugs',
+ 'is_ff2_win',
+ 'is_ff2_x11',
+ 'opera95_bugs',
+ 'opera7_bugs',
+ 'opera6_bugs',
+ 'is_opera_95',
+ 'is_opera_preseven',
+ 'is_opera',
+ 'ie6_bugs'
+ ],
+ function ( i, key ) {
+ mw.log.deprecate( window, key, false, uaMsg );
+ }
+);
+if ( /msie ([0-9]{1,}[\.0-9]{0,})/.exec( ua ) && parseFloat( RegExp.$1 ) <= 6.0 ) {
+ isIE6 = true;
}
+isGecko = /gecko/.test( ua ) && !/khtml|spoofer|netscape\/7\.0/.test( ua );
// add any onload functions in this hook (please don't hard-code any events in the xhtml source)
window.doneOnloadHook = undefined;
-if (!window.onloadFuncts) {
+if ( !window.onloadFuncts ) {
window.onloadFuncts = [];
}
window.addOnloadHook = function( hookFunct ) {
// Allows add-on scripts to add onload functions
- if( !doneOnloadHook ) {
- onloadFuncts[onloadFuncts.length] = hookFunct;
+ if( !window.doneOnloadHook ) {
+ window.onloadFuncts[window.onloadFuncts.length] = hookFunct;
} else {
- hookFunct(); // bug in MSIE script loading
+ hookFunct(); // bug in MSIE script loading
}
};
var uri = mw.config.get( 'wgScript' ) + '?title=' +
mw.util.wikiUrlencode( page ) +
'&action=raw&ctype=text/javascript';
- return importScriptURI( uri );
+ return window.importScriptURI( uri );
};
window.loadedScripts = {}; // included-scripts tracker
window.importScriptURI = function( url ) {
- if ( loadedScripts[url] ) {
+ if ( window.loadedScripts[url] ) {
return null;
}
- loadedScripts[url] = true;
+ window.loadedScripts[url] = true;
var s = document.createElement( 'script' );
s.setAttribute( 'src', url );
s.setAttribute( 'type', 'text/javascript' );
};
window.importStylesheet = function( page ) {
- return importStylesheetURI( mw.config.get( 'wgScript' ) + '?action=raw&ctype=text/css&title=' + mw.util.wikiUrlencode( page ) );
+ return window.importStylesheetURI( mw.config.get( 'wgScript' ) + '?action=raw&ctype=text/css&title=' + mw.util.wikiUrlencode( page ) );
};
window.importStylesheetURI = function( url, media ) {
};
if ( mw.config.get( 'wgBreakFrames' ) ) {
- // Un-trap us from framesets
- if ( window.top != window ) {
+ // Note: In IE < 9 strict comparison to window is non-standard (the standard didn't exist yet)
+ // it works only comparing to window.self or window.window (http://stackoverflow.com/q/4850978/319266)
+ if ( window.top !== window.self ) {
+ // Un-trap us from framesets
window.top.location = window.location;
}
}
window.killEvt = function( evt ) {
evt = evt || window.event || window.Event; // W3C, IE, Netscape
- if ( typeof ( evt.preventDefault ) != 'undefined' ) {
+ if ( typeof evt.preventDefault !== 'undefined' ) {
evt.preventDefault(); // Don't follow the link
evt.stopPropagation();
} else {
text = text.replace( re, "\\'" );
re = new RegExp( "\\n", "g" );
text = text.replace( re, "\\n" );
- return escapeQuotesHTML( text );
+ return window.escapeQuotesHTML( text );
};
window.escapeQuotesHTML = function( text ) {
};
/**
- * Set the accesskey prefix based on browser detection.
- */
-window.tooltipAccessKeyPrefix = 'alt-';
-if ( is_opera ) {
- tooltipAccessKeyPrefix = 'shift-esc-';
-} else if ( is_chrome ) {
- tooltipAccessKeyPrefix = is_chrome_mac ? 'ctrl-option-' : 'alt-';
-} else if ( !is_safari_win && is_safari && webkit_version > 526 ) {
- tooltipAccessKeyPrefix = 'ctrl-alt-';
-} else if ( !is_safari_win && ( is_safari
- || clientPC.indexOf('mac') != -1
- || clientPC.indexOf('konqueror') != -1 ) ) {
- tooltipAccessKeyPrefix = 'ctrl-';
-} else if ( is_ff2 ) {
- tooltipAccessKeyPrefix = 'alt-shift-';
-}
-window.tooltipAccessKeyRegexp = /\[(ctrl-)?(alt-)?(shift-)?(esc-)?(.)\]$/;
-
-/**
- * Add the appropriate prefix to the accesskey shown in the tooltip.
- * If the nodeList parameter is given, only those nodes are updated;
- * otherwise, all the nodes that will probably have accesskeys by
- * default are updated.
+ * Accesskey prefix utilities.
+ * To be removed in MediaWiki 1.23.
*
- * @param nodeList Array list of elements to update
+ * @deprecated since 1.17 Use mediawiki.util instead.
*/
-window.updateTooltipAccessKeys = function( nodeList ) {
- if ( !nodeList ) {
- // Rather than scan all links on the whole page, we can just scan these
- // containers which contain the relevant links. This is really just an
- // optimization technique.
- var linkContainers = [
- 'column-one', // Monobook and Modern
- 'mw-head', 'mw-panel', 'p-logo' // Vector
- ];
- for ( var i in linkContainers ) {
- var linkContainer = document.getElementById( linkContainers[i] );
- if ( linkContainer ) {
- updateTooltipAccessKeys( linkContainer.getElementsByTagName( 'a' ) );
- }
- }
- // these are rare enough that no such optimization is needed
- updateTooltipAccessKeys( document.getElementsByTagName( 'input' ) );
- updateTooltipAccessKeys( document.getElementsByTagName( 'label' ) );
- return;
- }
-
- for ( var i = 0; i < nodeList.length; i++ ) {
- var element = nodeList[i];
- var tip = element.getAttribute( 'title' );
- if ( tip && tooltipAccessKeyRegexp.exec( tip ) ) {
- tip = tip.replace(tooltipAccessKeyRegexp,
- '[' + tooltipAccessKeyPrefix + "$5]");
- element.setAttribute( 'title', tip );
- }
- }
-};
+mw.log.deprecate( window, 'tooltipAccessKeyPrefix', 'alt-', 'Use mediawiki.util instead.' );
+mw.log.deprecate( window, 'tooltipAccessKeyRegexp', /\[(alt-)?(.)\]$/, 'Use mediawiki.util instead.' );
+mw.log.deprecate( window, 'updateTooltipAccessKeys', mw.util.updateTooltipAccessKeys, 'Use mediawiki.util instead.' );
/**
* Add a link to one of the portlet menus on the page, including:
node = document.createElement( 'ul' );
var lastElementChild = null;
for ( var i = 0; i < root.childNodes.length; ++i ) { /* get root.lastElementChild */
- if ( root.childNodes[i].nodeType == 1 ) {
+ if ( root.childNodes[i].nodeType === 1 ) {
lastElementChild = root.childNodes[i];
}
}
link.setAttribute( 'title', tooltip );
}
if ( accesskey && tooltip ) {
- updateTooltipAccessKeys( [link] );
+ mw.util.updateTooltipAccessKeys( [link] );
}
- if ( nextnode && nextnode.parentNode == node ) {
+ if ( nextnode && nextnode.parentNode === node ) {
node.insertBefore( item, nextnode );
} else {
node.appendChild( item ); // IE compatibility (?)
};
window.getInnerText = function( el ) {
- if ( typeof el == 'string' ) {
+ if ( typeof el === 'string' ) {
return el;
}
- if ( typeof el == 'undefined' ) {
+ if ( typeof el === 'undefined' ) {
return el;
}
// Custom sort value through 'data-sort-value' attribute
for ( var i = 0; i < l; i++ ) {
switch ( cs[i].nodeType ) {
case 1: // ELEMENT_NODE
- str += getInnerText( cs[i] );
+ str += window.getInnerText( cs[i] );
break;
case 3: // TEXT_NODE
str += cs[i].nodeValue;
return str;
};
-window.checkboxes = undefined;
-window.lastCheckbox = undefined;
-
-window.setupCheckboxShiftClick = function() {
- checkboxes = [];
- lastCheckbox = null;
- var inputs = document.getElementsByTagName( 'input' );
- addCheckboxClickHandlers( inputs );
-};
-
-window.addCheckboxClickHandlers = function( inputs, start ) {
- if ( !start ) {
- start = 0;
- }
-
- var finish = start + 250;
- if ( finish > inputs.length ) {
- finish = inputs.length;
- }
-
- for ( var i = start; i < finish; i++ ) {
- var cb = inputs[i];
- if ( !cb.type || cb.type.toLowerCase() != 'checkbox' || ( ' ' + cb.className + ' ' ).indexOf( ' noshiftselect ' ) != -1 ) {
- continue;
- }
- var end = checkboxes.length;
- checkboxes[end] = cb;
- cb.index = end;
- addClickHandler( cb, checkboxClickHandler );
- }
-
- if ( finish < inputs.length ) {
- setTimeout( function() {
- addCheckboxClickHandlers( inputs, finish );
- }, 200 );
- }
-};
-
-window.checkboxClickHandler = function( e ) {
- if ( typeof e == 'undefined' ) {
- e = window.event;
- }
- if ( !e.shiftKey || lastCheckbox === null ) {
- lastCheckbox = this.index;
- return true;
- }
- var endState = this.checked;
- var start, finish;
- if ( this.index < lastCheckbox ) {
- start = this.index + 1;
- finish = lastCheckbox;
- } else {
- start = lastCheckbox;
- finish = this.index - 1;
- }
- for ( var i = start; i <= finish; ++i ) {
- checkboxes[i].checked = endState;
- if( i > start && typeof checkboxes[i].onchange == 'function' ) {
- checkboxes[i].onchange(); // fire triggers
- }
- }
- lastCheckbox = this.index;
- return true;
-};
-
+/**
+ * Toggle checkboxes with shift selection.
+ * To be removed in MediaWiki 1.23.
+ *
+ * @deprecated since 1.17 Use jquery.checkboxShiftClick instead.
+ */
+$.each({
+ checkboxes: [],
+ lastCheckbox: null,
+ setupCheckboxShiftClick: $.noop,
+ addCheckboxClickHandlers: $.noop,
+ checkboxClickHandler: $.noop
+}, function ( key, val ) {
+ mw.log.deprecate( window, key, val, 'Use jquery.checkboxShiftClick instead.' );
+} );
/*
Written by Jonathan Snook, http://www.snook.ca/jonathan
*/
window.getElementsByClassName = function( oElm, strTagName, oClassNames ) {
var arrReturnElements = [];
- if ( typeof( oElm.getElementsByClassName ) == 'function' ) {
+ if ( typeof oElm.getElementsByClassName === 'function' ) {
/* Use a native implementation where possible FF3, Saf3.2, Opera 9.5 */
var arrNativeReturn = oElm.getElementsByClassName( oClassNames );
- if ( strTagName == '*' ) {
+ if ( strTagName === '*' ) {
return arrNativeReturn;
}
for ( var h = 0; h < arrNativeReturn.length; h++ ) {
- if( arrNativeReturn[h].tagName.toLowerCase() == strTagName.toLowerCase() ) {
+ if( arrNativeReturn[h].tagName.toLowerCase() === strTagName.toLowerCase() ) {
arrReturnElements[arrReturnElements.length] = arrNativeReturn[h];
}
}
return arrReturnElements;
}
- var arrElements = ( strTagName == '*' && oElm.all ) ? oElm.all : oElm.getElementsByTagName( strTagName );
+ var arrElements = ( strTagName === '*' && oElm.all ) ? oElm.all : oElm.getElementsByTagName( strTagName );
var arrRegExpClassNames = [];
- if( typeof oClassNames == 'object' ) {
+ if( typeof oClassNames === 'object' ) {
for( var i = 0; i < oClassNames.length; i++ ) {
arrRegExpClassNames[arrRegExpClassNames.length] =
new RegExp("(^|\\s)" + oClassNames[i].replace(/\-/g, "\\-") + "(\\s|$)");
};
window.redirectToFragment = function( fragment ) {
- var match = navigator.userAgent.match(/AppleWebKit\/(\d+)/);
+ var webKitVersion,
+ match = navigator.userAgent.match(/AppleWebKit\/(\d+)/);
if ( match ) {
- var webKitVersion = parseInt( match[1] );
+ webKitVersion = parseInt( match[1], 10 );
if ( webKitVersion < 420 ) {
// Released Safari w/ WebKit 418.9.1 messes up horribly
// Nightlies of 420+ are ok
return;
}
}
- if ( window.location.hash == '' ) {
+ if ( !window.location.hash ) {
window.location.hash = fragment;
// Mozilla needs to wait until after load, otherwise the window doesn't
// version-testing. If Firefox fixes the bug, they'll jump twice, but
// better twice than not at all, so make the fix hit future versions as
// well.
- if ( is_gecko ) {
- addOnloadHook(function() {
- if ( window.location.hash == fragment ) {
+ if ( isGecko ) {
+ $( function () {
+ if ( window.location.hash === fragment ) {
window.location.hash = fragment;
}
- });
+ } );
}
}
};
* something, replacing any preexisting message.
*
* @deprecated since 1.17 Use the 'mediawiki.notify' module instead.
- * @param {String|HTMLElement} message To be put inside the message box.
+ * @param {string|HTMLElement} message To be put inside the message box.
*/
-window.jsMsg = function () {
- return mw.util.jsMessage.apply( mw.util, arguments );
-};
+mw.log.deprecate( window, 'jsMsg', mw.util.jsMessage, 'Use mediawiki.notify instead.' );
/**
* Inject a cute little progress spinner after the specified element
window.runOnloadHook = function() {
// don't run anything below this for non-dom browsers
- if ( doneOnloadHook || !( document.getElementById && document.getElementsByTagName ) ) {
+ if ( window.doneOnloadHook || !( document.getElementById && document.getElementsByTagName ) ) {
return;
}
// set this before running any hooks, since any errors below
// might cause the function to terminate prematurely
- doneOnloadHook = true;
+ window.doneOnloadHook = true;
// Run any added-on functions
- for ( var i = 0; i < onloadFuncts.length; i++ ) {
- onloadFuncts[i]();
+ for ( var i = 0; i < window.onloadFuncts.length; i++ ) {
+ window.onloadFuncts[i]();
}
};
};
window.hookEvent = function( hookName, hookFunct ) {
- addHandler( window, hookName, hookFunct );
+ window.addHandler( window, hookName, hookFunct );
};
/**
* @param handler callable Event handler callback
*/
window.addClickHandler = function( element, handler ) {
- addHandler( element, 'click', handler );
+ window.addHandler( element, 'click', handler );
};
/**
element.detachEvent( 'on' + remove, handler );
}
};
-// note: all skins should call runOnloadHook() at the end of html output,
-// so the below should be redundant. It's there just in case.
-hookEvent( 'load', runOnloadHook );
+window.hookEvent( 'load', window.runOnloadHook );
-if ( ie6_bugs ) {
- importScriptURI( mw.config.get( 'stylepath' ) + '/common/IEFixes.js' );
+if ( isIE6 ) {
+ window.importScriptURI( mw.config.get( 'stylepath' ) + '/common/IEFixes.js' );
}
-}( mediaWiki ) );
+}( mediaWiki, jQuery ) );
#footer,
#siteNotice,
.mw-editsection,
-.editsection,
.toctoggle {
display: none;
}
color: #a55858;
}
-span.editsection {
- font-size: small;
-}
-
h1, h2 {
border-bottom: solid 1px #003366;
}
#jump-to-nav,
#footer,
.mw-editsection,
-span.editsection,
.noprint {
display: none;
}
display: inline;
border: 1px solid #aaa;
border-bottom: none;
- padding: 0 0 .1em 0;
+ padding: 0 0 1em 0;
margin: 0 .3em 0 0;
overflow: visible;
background: white;
}
#p-cactions li.selected {
border-color: #fabd23;
- padding: 0 0 .2em 0;
font-weight: bold;
}
#p-cactions li a {
--- /dev/null
+/**
+ * Collapsible tabs jQuery Plugin
+ */
+( function ( $ ) {
+ var rtl = $( 'html' ).attr( 'dir' ) === 'rtl';
+ $.fn.collapsibleTabs = function ( options ) {
+ // return if the function is called on an empty jquery object
+ if ( !this.length ) {
+ return this;
+ }
+ // Merge options into the defaults
+ var $settings = $.extend( {}, $.collapsibleTabs.defaults, options );
+
+ this.each( function () {
+ var $el = $( this );
+ // add the element to our array of collapsible managers
+ $.collapsibleTabs.instances = ( $.collapsibleTabs.instances.length === 0 ?
+ $el : $.collapsibleTabs.instances.add( $el ) );
+ // attach the settings to the elements
+ $el.data( 'collapsibleTabsSettings', $settings );
+ // attach data to our collapsible elements
+ $el.children( $settings.collapsible ).each( function () {
+ $.collapsibleTabs.addData( $( this ) );
+ } );
+ } );
+
+ // if we haven't already bound our resize hanlder, bind it now
+ if ( !$.collapsibleTabs.boundEvent ) {
+ $( window )
+ .delayedBind( '500', 'resize', function ( ) {
+ $.collapsibleTabs.handleResize();
+ } );
+ }
+ // call our resize handler to setup the page
+ $.collapsibleTabs.handleResize();
+ return this;
+ };
+ /**
+ * Returns the amount of horizontal distance between the two tabs groups
+ * (#left-navigation and #right-navigation), in pixels. If negative, this
+ * means that the tabs overlap, and the value is the width of overlapping
+ * parts.
+ *
+ * Used in default expandCondition and collapseCondition.
+ *
+ * @return {Numeric} distance/overlap in pixels
+ */
+ function calculateTabDistance() {
+ var $leftTab, $rightTab, leftEnd, rightStart;
+
+ // In RTL, #right-navigation is actually on the left and vice versa.
+ // Hooray for descriptive naming.
+ if ( !rtl ) {
+ $leftTab = $( '#left-navigation' );
+ $rightTab = $( '#right-navigation' );
+ } else {
+ $leftTab = $( '#right-navigation' );
+ $rightTab = $( '#left-navigation' );
+ }
+
+ leftEnd = $leftTab.offset().left + $leftTab.width();
+ rightStart = $rightTab.offset().left;
+
+ return rightStart - leftEnd;
+ }
+ $.collapsibleTabs = {
+ instances: [],
+ boundEvent: null,
+ defaults: {
+ expandedContainer: '#p-views ul',
+ collapsedContainer: '#p-cactions ul',
+ collapsible: 'li.collapsible',
+ shifting: false,
+ expandCondition: function ( eleWidth ) {
+ // If there's at least eleWidth pixels free space, expand.
+ return calculateTabDistance() >= eleWidth;
+ },
+ collapseCondition: function () {
+ // If there's an overlap, collapse.
+ return calculateTabDistance() < 0;
+ }
+ },
+ addData: function ( $collapsible ) {
+ var $settings = $collapsible.parent().data( 'collapsibleTabsSettings' );
+ if ( $settings !== null ) {
+ $collapsible.data( 'collapsibleTabsSettings', {
+ expandedContainer: $settings.expandedContainer,
+ collapsedContainer: $settings.collapsedContainer,
+ expandedWidth: $collapsible.width(),
+ prevElement: $collapsible.prev()
+ } );
+ }
+ },
+ getSettings: function ( $collapsible ) {
+ var $settings = $collapsible.data( 'collapsibleTabsSettings' );
+ if ( $settings === undefined ) {
+ $.collapsibleTabs.addData( $collapsible );
+ $settings = $collapsible.data( 'collapsibleTabsSettings' );
+ }
+ return $settings;
+ },
+ /**
+ * @param {jQuery.Event} e
+ */
+ handleResize: function () {
+ $.collapsibleTabs.instances.each( function () {
+ var $el = $( this ),
+ data = $.collapsibleTabs.getSettings( $el );
+
+ if ( data.shifting ) {
+ return;
+ }
+
+ // if the two navigations are colliding
+ if ( $el.children( data.collapsible ).length > 0 && data.collapseCondition() ) {
+
+ $el.trigger( 'beforeTabCollapse' );
+ // move the element to the dropdown menu
+ $.collapsibleTabs.moveToCollapsed( $el.children( data.collapsible + ':last' ) );
+ }
+
+ // if there are still moveable items in the dropdown menu,
+ // and there is sufficient space to place them in the tab container
+ if ( $( data.collapsedContainer + ' ' + data.collapsible ).length > 0 &&
+ data.expandCondition( $.collapsibleTabs.getSettings( $( data.collapsedContainer ).children(
+ data.collapsible + ':first' ) ).expandedWidth ) ) {
+ //move the element from the dropdown to the tab
+ $el.trigger( 'beforeTabExpand' );
+ $.collapsibleTabs
+ .moveToExpanded( data.collapsedContainer + ' ' + data.collapsible + ':first' );
+ }
+ });
+ },
+ moveToCollapsed: function ( ele ) {
+ var data, expContainerSettings, target,
+ $moving = $( ele );
+
+ data = $.collapsibleTabs.getSettings( $moving );
+ if ( !data ) {
+ return;
+ }
+ expContainerSettings = $.collapsibleTabs.getSettings( $( data.expandedContainer ) );
+ if ( !expContainerSettings ) {
+ return;
+ }
+ expContainerSettings.shifting = true;
+
+ // Remove the element from where it's at and put it in the dropdown menu
+ target = data.collapsedContainer;
+ $moving.css( 'position', 'relative' )
+ .css( ( rtl ? 'left' : 'right' ), 0 )
+ .animate( { width: '1px' }, 'normal', function () {
+ var data, expContainerSettings;
+ $( this ).hide();
+ // add the placeholder
+ $( '<span class="placeholder" style="display: none;"></span>' ).insertAfter( this );
+ // XXX: 'data' is undefined here, should the 'data' from the outer scope have
+ // a different name?
+ $( this ).detach().prependTo( target ).data( 'collapsibleTabsSettings', data );
+ $( this ).attr( 'style', 'display: list-item;' );
+ data = $.collapsibleTabs.getSettings( $( ele ) );
+ if ( data ) {
+ expContainerSettings = $.collapsibleTabs.getSettings( $( data.expandedContainer ) );
+ if ( expContainerSettings ) {
+ expContainerSettings.shifting = false;
+ $.collapsibleTabs.handleResize();
+ }
+ }
+ } );
+ },
+ moveToExpanded: function ( ele ) {
+ var data, expContainerSettings, $target, expandedWidth,
+ $moving = $( ele );
+
+ data = $.collapsibleTabs.getSettings( $moving );
+ if ( !data ) {
+ return;
+ }
+ expContainerSettings = $.collapsibleTabs.getSettings( $( data.expandedContainer ) );
+ if ( !expContainerSettings ) {
+ return;
+ }
+ expContainerSettings.shifting = true;
+
+ // grab the next appearing placeholder so we can use it for replacing
+ $target = $( data.expandedContainer ).find( 'span.placeholder:first' );
+ expandedWidth = data.expandedWidth;
+ $moving.css( 'position', 'relative' ).css( ( rtl ? 'right' : 'left' ), 0 ).css( 'width', '1px' );
+ $target.replaceWith(
+ $moving
+ .detach()
+ .css( 'width', '1px' )
+ .data( 'collapsibleTabsSettings', data )
+ .animate( { width: expandedWidth + 'px' }, 'normal', function () {
+ $( this ).attr( 'style', 'display: block;' );
+ var data, expContainerSettings;
+ data = $.collapsibleTabs.getSettings( $( this ) );
+ if ( data ) {
+ expContainerSettings = $.collapsibleTabs.getSettings( $( data.expandedContainer ) );
+ if ( expContainerSettings ) {
+ expContainerSettings.shifting = false;
+ $.collapsibleTabs.handleResize();
+ }
+ }
+ } )
+ );
+ }
+ };
+
+}( jQuery ) );
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="16"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1">
+ <path
+ d="M 10.028624,3.7729932 8.1976442,6.9443424 6.3666649,3.7729932 z"
+ transform="matrix(2.7307791,0,0,1.576616,-11.885956,1036.4136)"
+ id="path2985"
+ style="fill:#929292;fill-opacity:1;stroke:none" />
+ </g>
+</svg>
--- /dev/null
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ version="1.1"
+ width="22"
+ height="16"
+ id="svg2">
+ <defs
+ id="defs4" />
+ <metadata
+ id="metadata7">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ transform="translate(0,-1036.3622)"
+ id="layer1">
+ <path
+ d="M 10.028624,3.7729932 8.1976442,6.9443424 6.3666649,3.7729932 z"
+ transform="matrix(2.7307791,0,0,1.576616,-11.885956,1036.4136)"
+ id="path2985"
+ style="fill:#797979;fill-opacity:1;stroke:none" />
+ </g>
+</svg>
float: left;
/* @embed */
background-image: url(images/arrow-down-icon.png);
+ /* SVG support using a transparent gradient to guarantee cross-browser
+ * compatibility (browsers able to understand gradient syntax support also SVG) */
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url(images/arrow-down-icon.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(images/arrow-down-icon.svg);
background-position: 100% 60%;
background-repeat: no-repeat;
cursor: pointer;
div.vectorMenuFocus {
/* @embed */
background-image: url(images/arrow-down-focus-icon.png);
+ /* SVG support using a transparent gradient to guarantee cross-browser
+ * compatibility (browsers able to understand gradient syntax support also SVG) */
+ /* @embed */
+ background-image: -webkit-linear-gradient(transparent, transparent), url(images/arrow-down-focus-icon.svg);
+ /* @embed */
+ background-image: linear-gradient(transparent, transparent), url(images/arrow-down-focus-icon.svg);
background-position: 100% 60%;
}
/* @noflip */
font-size: 0.8em;
}
-.editsection {
- float: right;
-}
-
ul {
list-style-type: disc;
/* @embed */
$el.removeClass( 'vectorMenuFocus' );
} );
} );
+
+ /**
+ * Collapsible tabs for Vector
+ */
+ var $cactions = $( '#p-cactions' );
+
+ // Bind callback functions to animate our drop down menu in and out
+ // and then call the collapsibleTabs function on the menu
+ $( '#p-views ul' )
+ .bind( 'beforeTabCollapse', function () {
+ // If the dropdown was hidden, show it
+ if ( $cactions.hasClass( 'emptyPortlet' ) ) {
+ $cactions
+ .removeClass( 'emptyPortlet' )
+ .find( 'h3, h5' )
+ .css( 'width', '1px' ).animate( { 'width': '24px' }, 390 );
+ }
+ } )
+ .bind( 'beforeTabExpand', function () {
+ // If we're removing the last child node right now, hide the dropdown
+ if ( $cactions.find( 'li' ).length === 1 ) {
+ $cactions.find( 'h3, h5' ).animate( { 'width': '1px' }, 390, function () {
+ $( this ).attr( 'style', '' )
+ .parent().addClass( 'emptyPortlet' );
+ });
+ }
+ } )
+ .collapsibleTabs();
} );
+++ /dev/null
-#!/usr/bin/env php
-<?php
-/**
- * @file
- * @ingroup Maintenance
- * @copyright Copyright © Wikimedia Deuschland, 2009
- * @author Hallo Welt! Medienwerkstatt GmbH
- * @author Markus Glaser, Dan Nessett, Priyanka Dhanda
- * initial idea by Daniel Kinzler
- *
- * 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
- */
-
-if ( PHP_SAPI != 'cli' ) {
- die( "Run me from the command line please.\n" );
-}
-
-define( 'SELENIUMTEST', true );
-
-require( __DIR__ . '/../maintenance/Maintenance.php' );
-
-require_once 'PHPUnit/Runner/Version.php';
-if ( version_compare( PHPUnit_Runner_Version::id(), '3.5.0', '>=' ) ) {
- # PHPUnit 3.5.0 introduced a nice autoloader based on class name
- require_once 'PHPUnit/Autoload.php';
-} else {
- # Keep the old pre PHPUnit 3.5.0 behavior for compatibility
- require_once 'PHPUnit/TextUI/Command.php';
-}
-
-require_once 'PHPUnit/Extensions/SeleniumTestCase.php';
-include_once 'PHPUnit/Util/Log/JUnit.php';
-
-require_once( __DIR__ . "/selenium/SeleniumServerManager.php" );
-
-class SeleniumTester extends Maintenance {
- protected $selenium;
- protected $serverManager;
- protected $seleniumServerExecPath;
-
- public function __construct() {
- parent::__construct();
- $this->mDescription = "Selenium Test Runner. For documentation, visit http://www.mediawiki.org/wiki/SeleniumFramework";
- $this->addOption( 'port', 'Port used by selenium server. Default: 4444', false, true );
- $this->addOption( 'host', 'Host selenium server. Default: $wgServer . $wgScriptPath', false, true );
- $this->addOption( 'testBrowser', 'The browser used during testing. Default: firefox', false, true );
- $this->addOption( 'wikiUrl', 'The Mediawiki installation to point to. Default: http://localhost', false, true );
- $this->addOption( 'username', 'The login username for sunning tests. Default: empty', false, true );
- $this->addOption( 'userPassword', 'The login password for running tests. Default: empty', false, true );
- $this->addOption( 'seleniumConfig', 'Location of the selenium config file. Default: empty', false, true );
- $this->addOption( 'list-browsers', 'List the available browsers.' );
- $this->addOption( 'verbose', 'Be noisier.' );
- $this->addOption( 'startserver', 'Start Selenium Server (on localhost) before the run.' );
- $this->addOption( 'stopserver', 'Stop Selenium Server (on localhost) after the run.' );
- $this->addOption( 'jUnitLogFile', 'Log results in a specified JUnit log file. Default: empty', false, true );
- $this->addOption( 'runAgainstGrid', 'The test will be run against a Selenium Grid. Default: false.', false, true );
- $this->deleteOption( 'dbpass' );
- $this->deleteOption( 'dbuser' );
- $this->deleteOption( 'globals' );
- $this->deleteOption( 'wiki' );
- }
-
- public function listBrowsers() {
- $desc = "Available browsers:\n";
-
- foreach ( $this->selenium->getAvailableBrowsers() as $k => $v ) {
- $desc .= " $k => $v\n";
- }
-
- echo $desc;
- }
-
- protected function startServer() {
- if ( $this->seleniumServerExecPath == '' ) {
- die( "The selenium server exec path is not set in " .
- "selenium_settings.ini. Cannot start server \n" .
- "as requested - terminating RunSeleniumTests\n" );
- }
- $this->serverManager = new SeleniumServerManager( 'true',
- $this->selenium->getPort(),
- $this->seleniumServerExecPath );
- switch ( $this->serverManager->start() ) {
- case 'started':
- break;
- case 'failed':
- die( "Unable to start the Selenium Server - " .
- "terminating RunSeleniumTests\n" );
- case 'running':
- echo "Warning: The Selenium Server is " .
- "already running\n";
- break;
- }
-
- return;
- }
-
- protected function stopServer() {
- if ( !isset( $this->serverManager ) ) {
- echo "Warning: Request to stop Selenium Server, but it was " .
- "not stared by RunSeleniumTests\n" .
- "RunSeleniumTests cannot stop a Selenium Server it " .
- "did not start\n";
- } else {
- switch ( $this->serverManager->stop() ) {
- case 'stopped':
- break;
- case 'failed':
- echo "unable to stop the Selenium Server\n";
- }
- }
- return;
- }
-
- protected function runTests( $seleniumTestSuites = array() ) {
- $result = new PHPUnit_Framework_TestResult;
- $result->addListener( new SeleniumTestListener( $this->selenium->getLogger() ) );
- if ( $this->selenium->getJUnitLogFile() ) {
- $jUnitListener = new PHPUnit_Util_Log_JUnit( $this->selenium->getJUnitLogFile(), true );
- $result->addListener( $jUnitListener );
- }
-
- foreach ( $seleniumTestSuites as $testSuiteName => $testSuiteFile ) {
- require( $testSuiteFile );
- $suite = new $testSuiteName();
- $suite->setName( $testSuiteName );
- $suite->addTests();
-
- try {
- $suite->run( $result );
- } catch ( Testing_Selenium_Exception $e ) {
- $suite->tearDown();
- throw new MWException( $e->getMessage() );
- }
- }
-
- if ( $this->selenium->getJUnitLogFile() ) {
- $jUnitListener->flush();
- }
- }
-
- public function execute() {
- global $wgServer, $wgScriptPath, $wgHooks;
-
- $seleniumSettings = array();
- $seleniumBrowsers = array();
- $seleniumTestSuites = array();
-
- $configFile = $this->getOption( 'seleniumConfig', '' );
- if ( strlen( $configFile ) > 0 ) {
- $this->output( "Using Selenium Configuration file: " . $configFile . "\n" );
- SeleniumConfig::getSeleniumSettings( $seleniumSettings,
- $seleniumBrowsers,
- $seleniumTestSuites,
- $configFile );
- } elseif ( !isset( $wgHooks['SeleniumSettings'] ) ) {
- $this->output( "No command line, configuration file or configuration hook found.\n" );
- SeleniumConfig::getSeleniumSettings( $seleniumSettings,
- $seleniumBrowsers,
- $seleniumTestSuites
- );
- } else {
- $this->output( "Using 'SeleniumSettings' hook for configuration.\n" );
- wfRunHooks( 'SeleniumSettings', array( $seleniumSettings,
- $seleniumBrowsers,
- $seleniumTestSuites ) );
- }
-
- // State for starting/stopping the Selenium server has nothing to do with the Selenium
- // class. Keep this state local to SeleniumTester class. Using getOption() is clumsy, but
- // the Maintenance class does not have a setOption()
- if ( !isset( $seleniumSettings['startserver'] ) ) {
- $this->getOption( 'startserver', true );
- }
- if ( !isset( $seleniumSettings['stopserver'] ) ) {
- $this->getOption( 'stopserver', true );
- }
- if ( !isset( $seleniumSettings['seleniumserverexecpath'] ) ) {
- $seleniumSettings['seleniumserverexecpath'] = '';
- }
- $this->seleniumServerExecPath = $seleniumSettings['seleniumserverexecpath'];
-
- //set reasonable defaults if we did not find the settings
- if ( !isset( $seleniumBrowsers ) ) {
- $seleniumBrowsers = array( 'firefox' => '*firefox' );
- }
- if ( !isset( $seleniumSettings['host'] ) ) {
- $seleniumSettings['host'] = $wgServer . $wgScriptPath;
- }
- if ( !isset( $seleniumSettings['port'] ) ) {
- $seleniumSettings['port'] = '4444';
- }
- if ( !isset( $seleniumSettings['wikiUrl'] ) ) {
- $seleniumSettings['wikiUrl'] = 'http://localhost';
- }
- if ( !isset( $seleniumSettings['username'] ) ) {
- $seleniumSettings['username'] = '';
- }
- if ( !isset( $seleniumSettings['userPassword'] ) ) {
- $seleniumSettings['userPassword'] = '';
- }
- if ( !isset( $seleniumSettings['testBrowser'] ) ) {
- $seleniumSettings['testBrowser'] = 'firefox';
- }
- if ( !isset( $seleniumSettings['jUnitLogFile'] ) ) {
- $seleniumSettings['jUnitLogFile'] = false;
- }
- if ( !isset( $seleniumSettings['runAgainstGrid'] ) ) {
- $seleniumSettings['runAgainstGrid'] = false;
- }
-
- // Setup Selenium class
- $this->selenium = new Selenium();
- $this->selenium->setAvailableBrowsers( $seleniumBrowsers );
- $this->selenium->setRunAgainstGrid( $this->getOption( 'runAgainstGrid', $seleniumSettings['runAgainstGrid'] ) );
- $this->selenium->setUrl( $this->getOption( 'wikiUrl', $seleniumSettings['wikiUrl'] ) );
- $this->selenium->setBrowser( $this->getOption( 'testBrowser', $seleniumSettings['testBrowser'] ) );
- $this->selenium->setPort( $this->getOption( 'port', $seleniumSettings['port'] ) );
- $this->selenium->setHost( $this->getOption( 'host', $seleniumSettings['host'] ) );
- $this->selenium->setUser( $this->getOption( 'username', $seleniumSettings['username'] ) );
- $this->selenium->setPass( $this->getOption( 'userPassword', $seleniumSettings['userPassword'] ) );
- $this->selenium->setVerbose( $this->hasOption( 'verbose' ) );
- $this->selenium->setJUnitLogFile( $this->getOption( 'jUnitLogFile', $seleniumSettings['jUnitLogFile'] ) );
-
- if ( $this->hasOption( 'list-browsers' ) ) {
- $this->listBrowsers();
- exit( 0 );
- }
- if ( $this->hasOption( 'startserver' ) ) {
- $this->startServer();
- }
-
- $logger = new SeleniumTestConsoleLogger;
- $this->selenium->setLogger( $logger );
-
- $this->runTests( $seleniumTestSuites );
-
- if ( $this->hasOption( 'stopserver' ) ) {
- $this->stopServer();
- }
- }
-}
-
-$maintClass = "SeleniumTester";
-
-require_once RUN_MAINTENANCE_IF_MAIN;
'ParserTestResult' => "$testDir/parser/ParserTestResult.php",
'TestFileIterator' => "$testDir/testHelpers.inc",
'TestRecorder' => "$testDir/testHelpers.inc",
+ 'ITestRecorder' => "$testDir/testHelpers.inc",
# tests/phpunit
'MediaWikiTestCase' => "$testDir/phpunit/MediaWikiTestCase.php",
//db
'ORMTableTest' => "$testDir/phpunit/includes/db/ORMTableTest.php",
+ 'PageORMTableForTesting' => "$testDir/phpunit/includes/db/ORMTableTest.php",
'DatabaseTestHelper' => "$testDir/phpunit/includes/db/DatabaseTestHelper.php",
# tests/phpunit/includes/api
# tests/phpunit/includes/parser
'NewParserTest' => "$testDir/phpunit/includes/parser/NewParserTest.php",
+ 'MediaWikiParserTest' => "$testDir/phpunit/includes/parser/MediaWikiParserTest.php",
# tests/phpunit/includes/libs
'GenericArrayObjectTest' => "$testDir/phpunit/includes/libs/GenericArrayObjectTest.php",
'MockFSFile' => "$testDir/phpunit/mocks/filebackend/MockFSFile.php",
'MockFileBackend' => "$testDir/phpunit/mocks/filebackend/MockFileBackend.php",
'MockBitmapHandler' => "$testDir/phpunit/mocks/media/MockBitmapHandler.php",
+ 'MockImageHandler' => "$testDir/phpunit/mocks/media/MockBitmapHandler.php",
+ 'MockSvgHandler' => "$testDir/phpunit/mocks/media/MockBitmapHandler.php",
# tests/phpunit/languages
'LanguageClassesTestCase' => "$testDir/phpunit/languages/LanguageClassesTestCase.php",
# tests/parser
'ParserTest' => "$testDir/parser/parserTest.inc",
'ParserTestParserHook' => "$testDir/parser/parserTestsParserHook.php",
-
- # tests/selenium
- 'Selenium' => "$testDir/selenium/Selenium.php",
- 'SeleniumLoader' => "$testDir/selenium/SeleniumLoader.php",
- 'SeleniumTestCase' => "$testDir/selenium/SeleniumTestCase.php",
- 'SeleniumTestConsoleLogger' => "$testDir/selenium/SeleniumTestConsoleLogger.php",
- 'SeleniumTestConstants' => "$testDir/selenium/SeleniumTestConstants.php",
- 'SeleniumTestHTMLLogger' => "$testDir/selenium/SeleniumTestHTMLLogger.php",
- 'SeleniumTestListener' => "$testDir/selenium/SeleniumTestListener.php",
- 'SeleniumTestSuite' => "$testDir/selenium/SeleniumTestSuite.php",
- 'SeleniumConfig' => "$testDir/selenium/SeleniumConfig.php",
);
<?php
/**
- * Helper code for the MediaWiki parser test suite.
+ * Helper code for the MediaWiki parser test suite. Some code is duplicated
+ * in PHPUnit's NewParserTests.php, so you'll probably want to update both
+ * at the same time.
*
* Copyright © 2004, 2010 Brion Vibber <brion@pobox.com>
* http://www.mediawiki.org/
$wgStyleDirectory = "$IP/skins";
}
+ self::setupInterwikis();
+ }
+
+ /**
+ * Insert hardcoded interwiki in the lookup table.
+ *
+ * This function insert a set of well known interwikis that are used in
+ * the parser tests. They can be considered has fixtures are injected in
+ * the interwiki cache by using the 'InterwikiLoadPrefix' hook.
+ * Since we are not interested in looking up interwikis in the database,
+ * the hook completely replace the existing mechanism (hook returns false).
+ */
+ public static function setupInterwikis() {
+ # Hack: insert a few Wikipedia in-project interwiki prefixes,
+ # for testing inter-language links
+ Hooks::register( 'InterwikiLoadPrefix', function ( $prefix, &$iwData ) {
+ static $testInterwikis = array(
+ 'wikipedia' => array(
+ 'iw_url' => 'http://en.wikipedia.org/wiki/$1',
+ 'iw_api' => '',
+ 'iw_wikiid' => '',
+ 'iw_local' => 0 ),
+ 'meatball' => array(
+ 'iw_url' => 'http://www.usemod.com/cgi-bin/mb.pl?$1',
+ 'iw_api' => '',
+ 'iw_wikiid' => '',
+ 'iw_local' => 0 ),
+ 'zh' => array(
+ 'iw_url' => 'http://zh.wikipedia.org/wiki/$1',
+ 'iw_api' => '',
+ 'iw_wikiid' => '',
+ 'iw_local' => 1 ),
+ 'es' => array(
+ 'iw_url' => 'http://es.wikipedia.org/wiki/$1',
+ 'iw_api' => '',
+ 'iw_wikiid' => '',
+ 'iw_local' => 1 ),
+ 'fr' => array(
+ 'iw_url' => 'http://fr.wikipedia.org/wiki/$1',
+ 'iw_api' => '',
+ 'iw_wikiid' => '',
+ 'iw_local' => 1 ),
+ 'ru' => array(
+ 'iw_url' => 'http://ru.wikipedia.org/wiki/$1',
+ 'iw_api' => '',
+ 'iw_wikiid' => '',
+ 'iw_local' => 1 ),
+ );
+ if( array_key_exists( $prefix, $testInterwikis ) ) {
+ $iwData = $testInterwikis[$prefix];
+ }
+
+ // We only want to rely on the above fixtures
+ return false;
+ } );// hooks::register
}
public function setupRecorder( $options ) {
'wgNoFollowDomainExceptions' => array(),
'wgThumbnailScriptPath' => false,
'wgUseImageResize' => true,
+ 'wgSVGConverter' => 'null',
+ 'wgSVGConverters' => array( 'null' => 'echo "1">$output' ),
'wgLocaltimezone' => 'UTC',
'wgAllowExternalImages' => true,
'wgUseTidy' => false,
'user_name' => 'Anonymous' ) );
}
- # Hack: insert a few Wikipedia in-project interwiki prefixes,
- # for testing inter-language links
- $this->db->insert( 'interwiki', array(
- array( 'iw_prefix' => 'wikipedia',
- 'iw_url' => 'http://en.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 0 ),
- array( 'iw_prefix' => 'meatball',
- 'iw_url' => 'http://www.usemod.com/cgi-bin/mb.pl?$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 0 ),
- array( 'iw_prefix' => 'zh',
- 'iw_url' => 'http://zh.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- array( 'iw_prefix' => 'es',
- 'iw_url' => 'http://es.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- array( 'iw_prefix' => 'fr',
- 'iw_url' => 'http://fr.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- array( 'iw_prefix' => 'ru',
- 'iw_url' => 'http://ru.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- ) );
-
# Update certain things in site_stats
$this->db->insert( 'site_stats', array( 'ss_row_id' => 1, 'ss_images' => 2, 'ss_good_articles' => 1 ) );
# Clear the message cache
MessageCache::singleton()->clear();
+ // Remember to update newParserTests.php after changing the below
+ // (and it uses a slightly different syntax just for teh lulz)
$this->uploadDir = $this->setupUploadDir();
$user = User::createNew( 'WikiSysop' );
$image = wfLocalFile( Title::makeTitle( NS_FILE, 'Foobar.jpg' ) );
'fileExists' => true
), $this->db->timestamp( '20130225203040' ), $user );
+ $image = wfLocalFile( Title::makeTitle( NS_FILE, 'Foobar.svg' ) );
+ $image->recordUpload2( '', 'Upload of some lame SVG', 'Some lame SVG', array(
+ 'size' => 12345,
+ 'width' => 240,
+ 'height' => 180,
+ 'bits' => 24,
+ 'media_type' => MEDIATYPE_DRAWING,
+ 'mime' => 'image/svg+xml',
+ 'metadata' => serialize( array() ),
+ 'sha1' => wfBaseConvert( '', 16, 36, 31 ),
+ 'fileExists' => true
+ ), $this->db->timestamp( '20010115123500' ), $user );
+
# This image will be blacklisted in [[MediaWiki:Bad image list]]
$image = wfLocalFile( Title::makeTitle( NS_FILE, 'Bad.jpg' ) );
$image->recordUpload2( '', 'zomgnotcensored', 'Borderline image', array(
copy( "$IP/skins/monobook/wiki.png", "$dir/e/ea/Thumb.png" );
wfMkdirParents( $dir . '/0/09', null, __METHOD__ );
copy( "$IP/skins/monobook/headbg.jpg", "$dir/0/09/Bad.jpg" );
-
+ wfMkdirParents( $dir . '/f/ff', null, __METHOD__ );
+ copy( "$IP/skins/monobook/headbg.jpg", "$dir/f/ff/Foobar.svg" );
+ file_put_contents( "$dir/f/ff/Foobar.svg",
+ '<?xml version="1.0" encoding="utf-8"?>' .
+ '<svg xmlns="http://www.w3.org/2000/svg" />' );
return $dir;
}
"$dir/0/09/Bad.jpg",
+ "$dir/f/ff/Foobar.svg",
+ "$dir/thumb/f/ff/Foobar.svg/180px-Foobar.svg.png",
+ "$dir/thumb/f/ff/Foobar.svg/360px-Foobar.svg.png",
+ "$dir/thumb/f/ff/Foobar.svg/langde-270px-Foobar.svg.png",
+ "$dir/thumb/f/ff/Foobar.svg/270px-Foobar.svg.png",
+ "$dir/thumb/f/ff/Foobar.svg/langde-180px-Foobar.svg.png",
+ "$dir/thumb/f/ff/Foobar.svg/langde-360px-Foobar.svg.png",
+
"$dir/math/f/a/5/fa50b8b616463173474302ca3e63586b.png",
)
);
"$dir/thumb/3/3a/Foobar.jpg",
"$dir/thumb/3/3a",
"$dir/thumb/3",
-
"$dir/e/ea",
"$dir/e",
-
+ "$dir/f/ff/",
+ "$dir/f/",
+ "$dir/thumb/f/ff/Foobar.svg",
+ "$dir/thumb/f/ff/",
+ "$dir/thumb/f/",
"$dir/0/09/",
"$dir/0/",
"$dir/thumb",
!! end
+!! test
+Extra newlines: More paragraphs with indented comment
+!! input
+a
+
+ <!--boo-->
+
+b
+!!result
+<p>a
+</p><p><br />
+b
+</p>
+!!end
+
+!! test
+Extra newlines followed by heading
+!! input
+a
+
+
+
+=b=
+[[a]]
+
+
+=b=
+!! result
+<p>a
+</p><p><br />
+</p>
+<h1><span class="mw-headline" id="b">b</span><span class="mw-editsection">[<a href="/index.php?title=Parser_test&action=edit&section=1" title="Edit section: b">edit</a>]</span></h1>
+<p><a href="/index.php?title=A&action=edit&redlink=1" class="new" title="A (page does not exist)">a</a>
+</p><p><br />
+</p>
+<h1><span class="mw-headline" id="b_2">b</span><span class="mw-editsection">[<a href="/index.php?title=Parser_test&action=edit&section=2" title="Edit section: b">edit</a>]</span></h1>
+
+!! end
+
+!! test
+Extra newlines between heading and content are swallowed
+!! input
+=b=
+
+
+
+[[a]]
+!! result
+<h1><span class="mw-headline" id="b">b</span><span class="mw-editsection">[<a href="/index.php?title=Parser_test&action=edit&section=1" title="Edit section: b">edit</a>]</span></h1>
+<p><a href="/index.php?title=A&action=edit&redlink=1" class="new" title="A (page does not exist)">a</a>
+</p>
+!! end
+
!! test
Parsing an URL
!! input
!! end
+!! test
+Templates: Parsoid parameter escaping test 1
+!! options
+parsoid
+!! input
+{{echo|[foo]|{{echo|[bar]}}}}
+!! result
+<p about="#mwt1" typeof="mw:Transclusion"
+data-mw="{"target":{"wt":"echo","href":"./Template:Echo"},"params":{"1":{"wt":"[foo]"},"2":{"wt":"{{echo|[bar]}}"}},"i":0}">[foo]</p>
+!! end
+
###
### Parsoid-centric tests for testing RT edge cases for pre
###
</p>
!! end
+!! test
+External link with comments in link text
+!! input
+[http://www.google.com Google <!-- comment -->]
+!! result
+<p><a rel="nofollow" class="external text" href="http://www.google.com">Google </a>
+</p>
+!! end
+
!! test
URL-encoding in URL functions (single parameter)
!! input
</p>
!! end
+!! test
+Piped link with comment in link text
+!! input
+[[Main Page|The Main<!--front--> Page]]
+!! result
+<p><a href="/wiki/Main_Page" title="Main Page">The Main Page</a>
+</p>
+!! end
+
!! test
Broken link
!! input
</p>
!! end
+!! test
+Parsoid: handle constructor well
+!! options
+parsoid
+!! input
+[[constructor]]
+
+[[constructor:foo]]
+!! result
+<p data-parsoid="{"dsr":[0,15,0,0]}"><a rel="mw:WikiLink" href="./Constructor" data-parsoid="{"stx":"simple","a":{"href":"./Constructor"},"sa":{"href":"constructor"},"dsr":[0,15,2,2]}">constructor</a></p>
+
+
+<p data-parsoid="{"dsr":[17,36,0,0]}"><a rel="mw:WikiLink" href="./Foo" data-parsoid="{"stx":"simple","a":{"href":"./Foo"},"sa":{"href":"constructor:foo"},"dsr":[17,36,2,2]}">constructor:foo</a></p>
+!! end
+
+##
+## Redirects, Parsoid-only
+##
+!! test
+Simple redirect to page
+!! options
+parsoid
+!! input
+#REDIRECT [[Main Page]]
+!! result
+<link rel="mw:PageProp/redirect" href="./Main_Page">
+!! end
+
+!! test
+Redirect to category
+!! options
+parsoid=wt2html
+!! input
+#REDIRECT [[Category:Foo]]
+!! result
+<link rel="mw:PageProp/redirect" href="./Category:Foo"><link rel="mw:WikiLink/Category" href="./Category:Foo">
+!! end
+
+!! test
+Redirect to category page
+!! options
+parsoid=wt2html,html2html
+!! input
+#REDIRECT [[:Category:Foo]]
+!! result
+<p><a rel="mw:WikiLink" href="Category:Foo">Category:Foo</a></p>
+!! end
+
+!! test
+Redirect to image page
+!! options
+parsoid
+!! input
+#REDIRECT [[File:Wiki.png]]
+!! result
+<link rel="mw:PageProp/redirect" href="./File:Wiki.png">
+!! end
+
+!! test
+Redirect to language
+!! options
+parsoid
+!! input
+#REDIRECT [[en:File:Wiki.png]]
+!! result
+<link rel="mw:PageProp/redirect" href="File:Wiki.png">
+!! end
+
+!! test
+Redirect to interwiki
+!! options
+parsoid
+!! input
+#REDIRECT [[meatball:File:Wiki.png]]
+!! result
+<link rel="mw:PageProp/redirect" href="File:Wiki.png">
+!! end
+
##
## XHTML tidiness
###
!!end
+!!test
+Test the li-hack
+(Cannot test this with PHP parser since it relies on Tidy for the hack)
+!!options
+parsoid=wt2html,wt2wt
+!!input
+* foo
+* <li>li-hack
+* {{echo|<li>templated li-hack}}
+* <!--foo--> <li> unsupported li-hack with preceding comments
+
+<ul>
+<li><li>not a li-hack
+</li>
+</ul>
+!!result
+<ul><li> foo</li>
+<li>li-hack</li>
+<li about="#mwt1" typeof="mw:Transclusion" data-mw='{"target":{"wt":"echo","href":"./Template:Echo"},"params":{"1":{"wt":"<li>templated li-hack"}}}'>templated li-hack</li>
+<li> <!--foo--> </li><li> li-hack with preceding comments</li></ul>
+
+<ul>
+<li></li><li>not a li-hack
+</li>
+</ul>
+!!end
+
###
### Magic Words
###
!! input
{{NUMBEROFFILES}}
!! result
-<p>3
+<p>4
</p>
!! end
{{echo|Bar}}
!!result
<!-- foo -->
-<p typeof="mw:Object/Template">Bar
+<p typeof="mw:Transclusion">Bar
</p>
!!end
!!input
{{echo_with_span|''a}}{{echo_with_span|b''c''d}}{{echo_with_span|''e}}
!!result
-<p><span typeof="mw:Object/Template"><i>a</i></span><i typeof="mw:Object/Template"><span>b</span></i><span>c</span><i>d</i><span>e</span></p>
+<p><span typeof="mw:Transclusion"><i>a</i></span><i typeof="mw:Transclusion"><span>b</span></i><span>c</span><i>d</i><span>e</span></p>
!!end
!!test
!!input
{{echo_with_div|''a}}{{echo_with_div|b''c''d}}{{echo_with_div|''e}}
!!result
-<div typeof="mw:Object/Template"><i>a</i></div>
-<div typeof="mw:Object/Template"><i>b</i>c<i>d</i></div>
-<div typeof="mw:Object/Template">e</div>
+<div typeof="mw:Transclusion"><i>a</i></div>
+<div typeof="mw:Transclusion"><i>b</i>c<i>d</i></div>
+<div typeof="mw:Transclusion">e</div>
!!end
!!test
|bar
|}
!!result
-<table typeof="mw:Object/Template">
+<table typeof="mw:Transclusion">
<tbody>
<tr>
<td>foo</td></tr></tbody></table><span>bar</span>
</tr>
</table>
!!result
-<table about="#mwt1" typeof="mw:Object/Template">
+<table about="#mwt1" typeof="mw:Transclusion">
<tbody><tr >
<td >
<table >
!! options
msg
!! input
-{{#special:foobarnonexistent}}
+{{#special:foobar nonexistent}}
!! result
-No such special page
+Special:Foobar nonexistent
!! end
!! test
!! options
msg
!! input
-{{#speciale:foobarnonexistent}}
+{{#speciale:foobar nonexistent}}
!! result
-No_such_special_page
+Special:Foobar_nonexistent
!! end
###
!! end
+
+!! test
+SVG thumbnails with no language set
+!! options
+!! input
+[[File:Foobar.svg|thumb|width=200]]
+!! result
+<div class="thumb tright"><div class="thumbinner" style="width:182px;"><a href="/wiki/File:Foobar.svg" class="image"><img alt="" src="http://example.com/images/thumb/f/ff/Foobar.svg/180px-Foobar.svg.png" width="180" height="180" class="thumbimage" srcset="http://example.com/images/thumb/f/ff/Foobar.svg/270px-Foobar.svg.png 1.5x, http://example.com/images/thumb/f/ff/Foobar.svg/360px-Foobar.svg.png 2x" /></a> <div class="thumbcaption"><div class="magnify"><a href="/wiki/File:Foobar.svg" class="internal" title="Enlarge"><img src="/skins/common/images/magnify-clip.png" width="15" height="11" alt="" /></a></div>width=200</div></div></div>
+
+!! end
+
+!! test
+SVG thumbnails with language de
+!! options
+!! input
+[[File:Foobar.svg|thumb|width=200|lang=de]]
+!! result
+<div class="thumb tright"><div class="thumbinner" style="width:182px;"><a href="/index.php?title=File:Foobar.svg&lang=de" class="image"><img alt="" src="http://example.com/images/thumb/f/ff/Foobar.svg/langde-180px-Foobar.svg.png" width="180" height="180" class="thumbimage" srcset="http://example.com/images/thumb/f/ff/Foobar.svg/langde-270px-Foobar.svg.png 1.5x, http://example.com/images/thumb/f/ff/Foobar.svg/langde-360px-Foobar.svg.png 2x" /></a> <div class="thumbcaption"><div class="magnify"><a href="/wiki/File:Foobar.svg" class="internal" title="Enlarge"><img src="/skins/common/images/magnify-clip.png" width="15" height="11" alt="" /></a></div>width=200</div></div></div>
+
+!! end
+
+!! test
+SVG thumbnails with invalid language code
+!! options
+!! input
+[[File:Foobar.svg|thumb|width=200|lang=invalid.language.code]]
+!! result
+<div class="thumb tright"><div class="thumbinner" style="width:182px;"><a href="/wiki/File:Foobar.svg" class="image"><img alt="" src="http://example.com/images/thumb/f/ff/Foobar.svg/180px-Foobar.svg.png" width="180" height="180" class="thumbimage" srcset="http://example.com/images/thumb/f/ff/Foobar.svg/270px-Foobar.svg.png 1.5x, http://example.com/images/thumb/f/ff/Foobar.svg/360px-Foobar.svg.png 2x" /></a> <div class="thumbcaption"><div class="magnify"><a href="/wiki/File:Foobar.svg" class="internal" title="Enlarge"><img src="/skins/common/images/magnify-clip.png" width="15" height="11" alt="" /></a></div>lang=invalid.language.code</div></div></div>
+
+!! end
+
!! test
BUG 1887: A ISBN with a thumbnail
!! input
</p>
!! end
+# Parsoid-specific testing for images
+# http://www.mediawiki.org/wiki/Parsoid/MediaWiki_DOM_spec#Images
+# Currently imperfect due to a flaw in the Parsoid testrunner
+# Work in progress
+
+!! test
+Parsoid-specific image handling - simple image
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg]]
+!! result
+<p>
+<span class="mw-default-size" typeof="mw:Image">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg" height="220" width="1941">
+</a>
+</span>
+</p>
+!! end
+
+!! test
+Parsoid-specific image handling - simple image without link
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|link=]]
+!! result
+<p>
+<span class="mw-default-size" typeof="mw:Image">
+<span>
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg" height="220" width="1941">
+</span>
+</span>
+</p>
+!! end
+
+!! test
+Parsoid-specific image handling - simple image with specific link
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|link=Main Page]]
+!! result
+<p>
+<span class="mw-default-size" typeof="mw:Image">
+<a href="Main_Page">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg" height="220" width="1941">
+</a>
+</span>
+</p>
+!! end
+
+!! test
+Parsoid-specific image handling - simple image with size and middle alignment
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|50px|middle]]
+!! result
+<p>
+<span class="mw-valign-middle" typeof="mw:Image">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/50px-Foobar.jpg" height="6" width="50">
+</a>
+</span>
+</p>
+!! end
+
+!! test
+Parsoid-specific image handling - simple image with both sizes, a baseline alignment, and a caption
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|500x10px|baseline|caption]]
+!! result
+<p>
+<span class="mw-valign-baseline" typeof="mw:Image" data-mw="{"caption":"caption"}">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/89px-Foobar.jpg" height="10" width="89">
+</a>
+</span>
+</p>
+!! end
+
+!! test
+Parsoid-specific image handling - simple image with border and size spec
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|50px|border|caption]]
+!! result
+<p>
+<span class="mw-image-border" typeof="mw:Image" data-mw="{"caption":"caption"}">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/50px-Foobar.jpg" height="6" width="50">
+</a>
+</span>
+</p>
+!! end
+
+!! test
+Parsoid-specific image handling - thumbnail with halign, valign, and caption
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|thumb|left|baseline|caption content]]
+!! result
+<figure class="mw-default-size mw-halign-left mw-valign-baseline" typeof="mw:Image/Thumb">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/180px-Foobar.jpg" height="21" width="180" />
+</a>
+<figcaption>caption content</figcaption>
+</figure>
+!! end
+
+!! test
+Parsoid-specific image handling - thumbnail with specific size, halign, valign, and caption
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|thumb|50x50px|right|middle|caption]]
+!! result
+<figure class="mw-halign-right mw-valign-middle" typeof="mw:Image/Thumb">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/50px-Foobar.jpg" height="6" width="50" />
+</a>
+<figcaption>caption</figcaption>
+</figure>
+!! end
+
+!! test
+Parsoid-specific image handling - framed image with specific size and caption
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|500x50px|frame|caption]]
+!! result
+<figure typeof="mw:Image/Frame">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/442px-Foobar.jpg" height="50" width="442" />
+</a>
+<figcaption>caption</figcaption>
+</figure>
+!! end
+
+!! test
+Parsoid-specific image handling - framed image with specific size, halign, valign, and caption
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|500x50px|frame|left|baseline|caption]]
+!! result
+<figure class="mw-halign-left mw-valign-baseline" typeof="mw:Image/Frame">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/442px-Foobar.jpg" height="50" width="442" />
+</a>
+<figcaption>caption</figcaption>
+</figure>
+!! end
+
+!! test
+Parsoid-specific image handling - frameless image with specific size, border, and caption
+!! options
+parsoid
+!! input
+[[Image:Foobar.jpg|frameless|500x50px|border|caption]]
+!! result
+<p>
+<span class="mw-image-border" typeof="mw:Image/Frameless" data-mw="{"caption":"caption"}">
+<a href="File:Foobar.jpg">
+<img resource="./File:Foobar.jpg" src="//upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg/442px-Foobar.jpg" height="50" width="442" />
+</a>
+</p>
+!! end
+
+#!! test
+#Parsoid-specific image handling - simple image with a formatted caption
+#!! options
+#parsoid
+#!! input
+#[[Image:Foobar.jpg|<table><tr><td>a</td><td>b</td></tr><tr><td>c</td></tr></table>]]
+#!! result
+#<p>
+#<span typeof="mw:Image">
+#<a class="mw-default-size" href="Image:Foobar.jpg">
+#<img alt="Foobar.jpg" class="mw-default-size" src="http://upload.wikimedia.org/wikipedia/commons/3/3a/Foobar.jpg" height="220" width="1941">
+#</a>
+#<span>abc</span>
+#</span>
+#</p>
+
###
### Subpages
</p>
!! end
-###
-### Inter-language links
-###
!! test
-Inter-language links
+Parsoid: Serialize link to category page with colon escape
!! options
-ill
+parsoid
!! input
-[[es:Alimento]]
+
+[[:Category:Foo]]
+[[:Category:Foo|Bar]]
+!! result
+<p>
+<a rel="mw:WikiLink" href="Category:Foo">Category:Foo</a>
+<a rel="mw:WikiLink" href="Category:Foo">Bar</a>
+</p>
+!! end
+
+!! test
+Parsoid: Serialize link to file page with colon escape
+!! options
+parsoid
+!! input
+
+[[:File:Foo.png]]
+[[:File:Foo.png|Bar]]
+!! result
+<p>
+<a rel="mw:WikiLink" href="File:Foo.png">File:Foo.png</a>
+<a rel="mw:WikiLink" href="File:Foo.png">Bar</a>
+</p>
+!! end
+
+!! test
+Parsoid: Serialize a genuine category link without colon escape
+!! options
+parsoid
+!! input
+[[Category:Foo]]
+[[Category:Foo|Bar]]
+!! result
+<link rel="mw:WikiLink/Category" href="Category:Foo">
+<link rel="mw:WikiLink/Category" href="Category:Foo#Bar">
+!! end
+
+###
+### Inter-language links
+###
+!! test
+Inter-language links
+!! options
+ill
+!! input
+[[es:Alimento]]
[[fr:Nourriture]]
[[zh:食品]]
!! result
!! input
pre-comment text /* External links */ removed bogus entries
!! result
-pre-comment text - <a href="/wiki/Main_Page#External_links" title="Main Page">→</a><span dir="auto"><span class="autocomment">External links: </span> removed bogus entries</span>
+pre-comment text <a href="/wiki/Main_Page#External_links" title="Main Page">→</a><span dir="auto"><span class="autocomment">External links: </span> removed bogus entries</span>
!!end
!! test
</p>
!! end
+!! test
+Verify that displaytitle handles inline CSS styles (bug 26547) - rejected value
+!! options
+showtitle
+title=[[Screen]]
+!! config
+wgAllowDisplayTitle=true
+wgRestrictDisplayTitle=true
+!! input
+this is not the the title
+{{DISPLAYTITLE:<span style="display: none;">s</span>creen}}
+!! result
+<span style="/* attempt to bypass $wgRestrictDisplayTitle */">s</span>creen
+<p>this is not the the title
+</p>
+!! end
+
+!! test
+Verify that displaytitle handles inline CSS styles (bug 26547) - accepted value
+!! options
+showtitle
+title=[[Screen]]
+!! config
+wgAllowDisplayTitle=true
+wgRestrictDisplayTitle=true
+!! input
+this is not the the title
+{{DISPLAYTITLE:<span style="color: red;">s</span>creen}}
+!! result
+<span style="color: red;">s</span>creen
+<p>this is not the the title
+</p>
+!! end
+
!! test
preload: check <noinclude> and <includeonly>
!! options
</p>
!! end
+!!test
+Special parser function
+!! input
+{{#special:RandomPage}}
+{{#special:BaDtItLe}}
+{{#special:Foobar}}
+!! result
+<p>Special:Random
+Special:Badtitle
+Special:Foobar
+</p>
+!! end
+
!!test
Bug 34939 - Case insensitive link parsing ([HttP://])
!! input
</p>
!! end
+
###
### Parsoids-specific tests
### Parsoid-PHP parser incompatibilities
{{echo|#a}}
{{echo|:a}}
!!result
-<span about="#mwt1" typeof="mw:Object/Template">
+<span about="#mwt1" typeof="mw:Transclusion">
</span><ul about="#mwt1"><li>a</li></ul>
-<span about="#mwt2" typeof="mw:Object/Template">
+<span about="#mwt2" typeof="mw:Transclusion">
</span><ol about="#mwt2"><li>a</li></ol>
-<span about="#mwt3" typeof="mw:Object/Template">
+<span about="#mwt3" typeof="mw:Transclusion">
</span><dl about="#mwt3"><dd>a</dd></dl>
!!end
+#### ----------------------------------------------------------------
+#### Parsoid-only testing of Parsoid's impl of <ref> and <references>
+#### tags. Parsoid's output for these tags differs from that of the
+#### PHP parser.
+#### ----------------------------------------------------------------
+
+!!test
+Ref: 1. ref-location should be replaced with an index span
+!!options
+parsoid
+!!input
+A <ref>foo</ref>
+B <ref name="x">foo</ref>
+C <ref name="y" />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span>
+B <span about="#mwt2" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}' id="cite_ref-x-2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-x-2">[2]</a></span>
+C <span about="#mwt3" class="reference" data-mw='{"name":"ref","attrs":{"name":"y"}}' id="cite_ref-y-3-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-y-3">[3]</a></span></p>
+!!end
+
+!!test
+Ref: 2. ref-tags with identical names should all get the same index
+!!options
+parsoid
+!!input
+A <ref name="x">foo</ref>
+B <ref name="x" />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}' id="cite_ref-x-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-x-1">[1]</a></span>
+B <span about="#mwt2" class="reference" data-mw='{"name":"ref","attrs":{"name":"x"}}' id="cite_ref-x-1-1" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-x-1">[1]</a></span></p>
+!!end
+
+!!test
+Ref: 3. spaces in ref-names should be ignored
+!!options
+parsoid
+!!input
+A <ref name="x">foo</ref>
+B <ref name=" x " />
+C <ref name= x />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"x"}}' id="cite_ref-x-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-x-1">[1]</a></span>
+B <span about="#mwt2" class="reference" data-mw='{"name":"ref","attrs":{"name":"x"}}' id="cite_ref-x-1-1" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-x-1">[1]</a></span>
+C <span about="#mwt3" class="reference" data-mw='{"name":"ref","attrs":{"name":"x"}}' id="cite_ref-x-1-2" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-x-1">[1]</a></span></p>
+!!end
+
+!!test
+Ref: 4. 'constructor' should be accepted as a valid ref-name
+(NOTE: constructor is a predefined property in JS and constructor as a ref-name can clash with it if not handled properly)
+!!options
+parsoid
+!!input
+A <ref name="constructor">foo</ref>
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"constructor"}}' id="cite_ref-constructor-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-constructor-1">[1]</a></span></p>
+!!end
+
+!!test
+Ref: 5. body should accept generic wikitext
+!!options
+parsoid
+!!input
+A <ref>
+ This is a '''[[bolded link]]''' and this is a {{echo|transclusion}}
+</ref>
+
+<references />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"This is a <b data-parsoid=\"{&quot;dsr&quot;:[19,40,3,3]}\"><a rel=\"mw:WikiLink\" href=\"./Bolded_link\" data-parsoid=\"{&quot;a&quot;:{&quot;href&quot;:&quot;./Bolded_link&quot;},&quot;sa&quot;:{&quot;href&quot;:&quot;bolded link&quot;},&quot;stx&quot;:&quot;simple&quot;,&quot;dsr&quot;:[22,37,2,2]}\">bolded link</a></b> and this is a <span about=\"#mwt3\" typeof=\"mw:Transclusion\" data-mw=\"{&quot;target&quot;:{&quot;wt&quot;:&quot;echo&quot;,&quot;href&quot;:&quot;./Template:Echo&quot;},&quot;params&quot;:{&quot;1&quot;:{&quot;wt&quot;:&quot;transclusion&quot;}}}\" data-parsoid=\"{&quot;src&quot;:&quot;{{echo|transclusion}}&quot;,&quot;dsr&quot;:[55,76,null,null]}\">transclusion</span>\n"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span></p>
+
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references">
+<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> This is a <b><a rel="mw:WikiLink" href="./Bolded_link">bolded link</a></b> and this is a <span about="#mwt3" typeof="mw:Transclusion" data-mw='{"target":{"wt":"echo","href":"./Template:Echo"},"params":{"1":{"wt":"transclusion"}}}'>transclusion</span>
+</li></ol>
+!!end
+
+!!test
+Ref: 6. indent-pres should not be output in ref-body
+!!options
+parsoid
+!!input
+A <ref>
+ foo
+ bar
+ baz
+</ref>
+
+<references />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo\n bar\n baz\n"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span></p>
+
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references">
+<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> foo
+ bar
+ baz
+</li></ol>
+!!end
+
+!!test
+Ref: 6. No p-wrapping in ref-body
+!!options
+parsoid
+!!input
+A <ref>
+foo
+
+bar
+
+
+baz
+
+
+
+booz
+</ref>
+
+<references />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo\n\nbar\n\n\nbaz\n\n\n\nbooz\n"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span></p>
+
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references">
+<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> foo
+
+bar
+
+
+baz
+
+
+
+booz
+</li></ol>
+!!end
+
+!!test
+Ref: 8. transclusion wikitext has lower precedence
+!!options
+parsoid
+!!input
+A <ref> foo {{echo|</ref> B C}}
+
+<references />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo <span typeof=\"mw:Nowiki\" data-parsoid=\"{&quot;src&quot;:&quot;{{&quot;,&quot;dsr&quot;:[12,14,2,null]}\">{{</span>echo|"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span> B C<span typeof="mw:Nowiki">}}</span></p>
+
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references">
+<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> foo <span typeof="mw:Nowiki">{{</span>echo|</li></ol>
+!!end
+
+!!test
+Ref: 9. unclosed comments should not leak out of ref-body
+!!options
+parsoid
+!!input
+A <ref> foo <!--</ref> B C
+
+<references />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo <!---->"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span> B C</p>
+
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references">
+<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> foo <!----></li></ol>
+!!end
+
+!!test
+Ref: 10. Unclosed HTML tags should not leak out of ref-body
+!!options
+parsoid
+!!input
+A <ref> <b> foo </ref> B C
+
+<references />
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"<b data-parsoid=\"{&quot;stx&quot;:&quot;html&quot;,&quot;autoInsertedEnd&quot;:true,&quot;dsr&quot;:[8,16,3,0]}\"> foo </b>"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span> B C</p>
+
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references">
+<li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> <b> foo </b></li></ol>
+!!end
+
+!!test
+Ref: 11. ref-tags acts like an inline element wrt P-wrapping
+!!options
+parsoid
+!!input
+A <ref>foo</ref> B
+C <ref>bar</ref> D
+!!result
+<p>A <span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span> B
+C <span about="#mwt2" class="reference" data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{}}' id="cite_ref-2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-2">[2]</a></span> D</p>
+!!end
+
+!!test
+Ref: 12. ref-tags act as trailing newline migration barrier
+!!options
+parsoid
+!!input
+<!--the newline at the end of this line moves out of the p-tag-->a
+
+b<!--the newline at the end of this line stays inside the p-tag--> <ref />
+<ref />
+
+c
+!!result
+<p><!--the newline at the end of this line moves out of the p-tag-->a</p>
+
+
+<p>b<!--the newline at the end of this line stays inside the p-tag--> <span about="#mwt1" class="reference" data-mw='{"name":"ref","attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span>
+<span about="#mwt2" class="reference" data-mw='{"name":"ref","attrs":{}}' id="cite_ref-2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-2">[2]</a></span></p>
+
+
+<p>c</p>
+!!end
+
+!!test
+Ref: 13. ref-tags are not SOL-transparent and block indent-pres
+!!options
+parsoid
+!!input
+<ref>foo</ref> A
+<ref>bar
+</ref> B
+!!result
+<p><span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span> A
+<span about="#mwt2" class="reference" data-mw='{"name":"ref","body":{"html":"bar\n"},"attrs":{}}' id="cite_ref-2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-2">[2]</a></span> B</p>
+!!end
+
+!!test
+Ref: 14. A nested ref-tag should be emitted as plain text
+!!options
+parsoid
+!!input
+<ref>foo <ref>bar</ref> baz</ref>
+
+<references />
+!!result
+<p><span about="#mwt1" class="reference" data-mw='{"name":"ref","body":{"html":"foo &lt;ref&gt;bar"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span> baz</ref></p>
+
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references"><li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> foo <ref>bar</li></ol>
+!!end
+
+!!test
+Ref: 15. ref-tags with identical names should get identical indexes
+!!options
+parsoid
+!!input
+A1 <ref name="a">foo</ref> A2 <ref name="a" />
+B1 <ref name="b" /> B2 <ref name="b">bar</ref>
+
+<references />
+!!result
+<p>A1 <span about="#mwt3" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"name":"a"}}' id="cite_ref-a-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-a-1">[1]</a></span> A2 <span about="#mwt4" class="reference" data-mw='{"name":"ref","attrs":{"name":"a"}}' id="cite_ref-a-1-1" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-a-1">[1]</a></span>
+B1 <span about="#mwt7" class="reference" data-mw='{"name":"ref","attrs":{"name":"b"}}' id="cite_ref-b-2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-b-2">[2]</a></span> B2 <span about="#mwt8" class="reference" data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"name":"b"}}' id="cite_ref-b-2-1" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-b-2">[2]</a></span></p>
+
+<ol about="#mwt10" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references"><li about="#cite_note-a-1" id="cite_note-a-1"><span rel="mw:referencedBy">↑ <a href="#cite_ref-a-1-0">1.0</a> <a href="#cite_ref-a-1-1">1.1</a></span> foo</li><li about="#cite_note-b-2" id="cite_note-b-2"><span rel="mw:referencedBy">↑ <a href="#cite_ref-b-2-0">2.0</a> <a href="#cite_ref-b-2-1">2.1</a></span> bar</li></ol>
+!!end
+
+!!test
+References: 1. references tag without any refs should be handled properly
+!!options
+parsoid
+!!input
+<references />
+!!result
+<ol about="#mwt2" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references"></ol>
+!!end
+
+!!test
+References: 2. references tag with group only outputs references from that group
+!!options
+parsoid
+!!input
+A <ref group="a">foo</ref>
+B <ref group="b">bar</ref>
+
+<references group='a' />
+!!result
+<p>A <span about="#mwt2" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{"group":"a"}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[a 1]</a></span>
+B <span about="#mwt4" class="reference" data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"group":"b"}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[b 1]</a></span></p>
+
+<ol about="#mwt6" class="references" data-mw='{"name":"references","attrs":{"group":"a"}}' typeof="mw:Extension/references"><li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> foo</li></ol>
+!!end
+
+!!test
+References: 3. ref list should be cleared after processing references
+!!options
+parsoid
+!!input
+A <ref>foo</ref>
+
+<references />
+
+B <ref>bar</ref>
+
+<references />
+!!result
+<p>A <span about="#mwt2" class="reference" data-mw='{"name":"ref","body":{"html":"foo"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span></p>
+
+<ol about="#mwt4" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references"><li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> foo</li></ol>
+
+<p>B <span about="#mwt6" class="reference" data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[1]</a></span></p>
+
+<ol about="#mwt8" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references"><li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> bar</li></ol>
+!!end
+
+!!test
+References: 4. only referenced group should be cleared after processing references
+!!options
+parsoid
+!!input
+A <ref group="a">afoo</ref>
+B <ref>bfoo</ref>
+
+<references group="a"/>
+
+C <ref>cfoo</ref>
+
+<references />
+!!result
+<p>A <span about="#mwt2" class="reference" data-mw='{"name":"ref","body":{"html":"afoo"},"attrs":{"group":"a"}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-1">[a 1]</a></span>
+B <span about="#mwt4" class="reference" data-mw='{"name":"ref","body":{"html":"bfoo"},"attrs":{}}' id="cite_ref-1-0" rel="dc:references" typeof="mw:Extension/ref" data-parsoid='{"src":"<ref>bfoo</ref>","dsr":[30,45,5,6]}'><a href="#cite_note-1">[1]</a></span></p>
+
+<ol about="#mwt6" class="references" data-mw='{"name":"references","attrs":{"group":"a"}}' typeof="mw:Extension/references"><li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> afoo</li></ol>
+
+<p>C <span about="#mwt8" class="reference" data-mw='{"name":"ref","body":{"html":"cfoo"},"attrs":{}}' id="cite_ref-2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-2">[2]</a></span></p>
+
+<ol about="#mwt10" class="references" data-mw='{"name":"references","attrs":{}}' typeof="mw:Extension/references"><li about="#cite_note-1" id="cite_note-1"><span rel="mw:referencedBy"><a href="#cite_ref-1-0">↑</a></span> bfoo</li><li about="#cite_note-2" id="cite_note-2"><span rel="mw:referencedBy"><a href="#cite_ref-2-0">↑</a></span> cfoo</li></ol>
+!!end
+
+!!test
+References: 5. ref tags in references should be processed while ignoring all other content
+!!options
+parsoid
+!!input
+A <ref name="a" />
+B <ref name="b">bar</ref>
+
+<references>
+<ref name="a">foo</ref>
+This should just get lost.
+</references>
+!!result
+<p>A <span about="#mwt2" class="reference" data-mw='{"name":"ref","attrs":{"name":"a"}}' id="cite_ref-a-1-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-a-1">[1]</a></span>
+B <span about="#mwt4" class="reference" data-mw='{"name":"ref","body":{"html":"bar"},"attrs":{"name":"b"}}' id="cite_ref-b-2-0" rel="dc:references" typeof="mw:Extension/ref"><a href="#cite_note-b-2">[2]</a></span></p>
+
+<ol about="#mwt7" class="references" data-mw='{"name":"references","body":{"extsrc":"<ref name=\"a\">foo</ref>\nThis should just get lost."},"attrs":{}}' typeof="mw:Extension/references"><li about="#cite_note-a-1" id="cite_note-a-1"><span rel="mw:referencedBy"><a href="#cite_ref-a-1-0">↑</a></span> foo</li><li about="#cite_note-b-2" id="cite_note-b-2"><span rel="mw:referencedBy"><a href="#cite_ref-b-2-0">↑</a></span> bar</li></ol>
+!!end
+
+#### ----------------------------------------------------------------
#### The following section of tests are primarily to test
#### wikitext escaping capabilities of Parsoid. Given that
#### escaping can be done any number of ways, the wikitext (input)
#### We are marking several tests as parsoid-only since the
#### HTML in the result section is different from what the
#### PHP parser generates for it.
+#### ----------------------------------------------------------------
#### --------------- Headings ---------------
parsoid
!! input
=<nowiki>=foo=</nowiki>=
+
==<nowiki>=foo=</nowiki>==
+
===<nowiki>=foo=</nowiki>===
+
====<nowiki>=foo=</nowiki>====
+
=====<nowiki>=foo=</nowiki>=====
+
======<nowiki>=foo=</nowiki>======
!! result
<h1><span typeof="mw:Nowiki">=foo=</span></h1>
!! input
=foo=
<nowiki>*bar</nowiki>
+
=foo=
=bar
+
=foo=
<nowiki>=bar=</nowiki>
!! result
parsoid
!! input
==foo=
+
=foo==
+
= =foo= =
+
==foo= bar=
+
===foo==
+
==foo===
+
=''=''foo==
+
=<nowiki>=</nowiki>=
!! result
<h1>=foo</h1>
parsoid
!! input
=<nowiki/>=
+
==<nowiki/>==
+
===<nowiki/>===
+
====<nowiki/>====
+
=====<nowiki/>=====
+
======<nowiki/>======
!! result
<h1></h1>
!!end
!! test
-Headings: 6. Heading chars in SOL context
+Headings: 6a. Heading chars in SOL context (with trailing spaces)
+!! options
+parsoid
+!! input
+<nowiki>=a=</nowiki>
+
+<nowiki>=a= </nowiki>
+
+<nowiki>=a= </nowiki>
+
+<nowiki>=a= </nowiki>
+!! result
+<p>=a=</p>
+<p>=a= </p>
+<p>=a= </p>
+<p>=a= </p>
+!!end
+
+!! test
+Headings: 6b. Heading chars in SOL context (with trailing newlines)
!! options
parsoid
!! input
-<!--cmt--><nowiki>=h1=</nowiki>
-<!--cmt--><nowiki> =h1= </nowiki>
+<nowiki>=a=
+b</nowiki>
+
+<nowiki>=a=
+b</nowiki>
+
+<nowiki>=a=
+b</nowiki>
+
+<nowiki>=a=
+b</nowiki>
+!! result
+<p>=a=
+b</p>
+<p>=a=
+b</p>
+<p>=a=
+b</p>
+<p>=a=
+b</p>
+</p>
+!!end
+
+!! test
+Headings: 6c. Heading chars in SOL context (leading newline break)
+!! options
+parsoid
+!! input
+<nowiki>a
+=b=</nowiki>
!! result
-<p><!--cmt--><span typeof="mw:Nowiki">=h1=</span>
-<!--cmt--><span typeof="mw:Nowiki"> =h1= </span></p>
+<p>a
+=b=</p>
+!!end
+
+!! test
+Headings: 6d. Heading chars in SOL context (with interspersed comments)
+!! options
+parsoid
+!! input
+<!--c0--><nowiki>=a=</nowiki>
+<!--c1-->
+<nowiki>=a= </nowiki><!--c2--> <!--c3-->
+!! result
+<p><!--c0-->=a=</p>
+<p><!--c1-->=a= <!--c2--> <!--c3--></p>
+!!end
+
+!! test
+Headings: 6d. Heading chars in SOL context (No escaping needed)
+!! options
+parsoid=html2wt
+!! input
+=a=<div>b</div>
+!! result
+=a=<div>b</div>
!!end
#### --------------- Lists ---------------
!! end
-#### --------------- Links ---------------
+#### --------------- Links ----------------
#### 1. Quote marks in link text
#### 2. Wikilinks: Escapes needed
#### 3. Wikilinks: No escapes needed
''<nowiki>'foo'</nowiki>''
''<nowiki>''foo''</nowiki>''
''<nowiki>'''foo'''</nowiki>''
+''foo''<nowiki>'s</nowiki>
'''<nowiki>'foo'</nowiki>'''
'''<nowiki>''foo''</nowiki>'''
'''<nowiki>'''foo'''</nowiki>'''
'''<nowiki>foo'</nowiki>''<nowiki>bar'</nowiki>''baz'''
+'''foo'''<nowiki>'s</nowiki>
!! result
<p><i>'foo'</i>
<i>''foo''</i>
<i>'''foo'''</i>
+<i>foo</i>'s
<b>'foo'</b>
<b>''foo''</b>
<b>'''foo'''</b>
<b>foo'<i>bar'</i>baz</b>
+<b>foo</b>'s
</p>
!! end
</p>
!! end
-#### --------------- Paragraphs ---------------
+#### ----------- Paragraphs ---------------
#### 1. No unnecessary escapes
#### --------------------------------------
</p>
!!end
-#### --------------- PRE ------------------
-#### 1. Leading space in SOL context should be escaped
-#### --------------------------------------
+#### ----------------------- PRE --------------------------
+#### 1. Leading whitespace in SOL context should be escaped
+#### ------------------------------------------------------
!! test
-1. Leading space in SOL context should be escaped
+1. Leading whitespace in SOL context should be escaped
!! options
parsoid
!! input
-<nowiki> foo</nowiki>
-<!--cmt--><nowiki> foo</nowiki>
+<nowiki> a</nowiki>
+
+<nowiki> a</nowiki>
+
+<nowiki> a(tab)</nowiki>
+
+<nowiki> a</nowiki>
+<!--cmt-->
+<nowiki> a</nowiki>
+
+<nowiki>a
+ b</nowiki>
+
+<nowiki>a
+ b</nowiki>
+
+<nowiki>a
+ b</nowiki>
!! result
-<p> foo
-<!--cmt--> foo
-</p>
+<p> a</p>
+<p> a</p>
+<p> a(tab)</p>
+<p> a</p>
+<p><!--cmt--> a</p>
+<p>a
+ b</p>
+<p>a
+ b</p>
+<p>a
+ b</p>
!! end
#### --------------- HTML tags ---------------
#### 1. a tags
#### 2. other tags
#### 3. multi-line html tag
-#### --------------------------------------
+#### -----------------------------------------
!! test
1. a tags
!! options
<table>
<tbody>
<tr></tr>
-<tr typeof="mw:Object/Template">
+<tr typeof="mw:Transclusion">
<td>foo</td></tr></tbody></table>
!!end
</p>
!!end
+
TODO:
more images
more tables
$otions = array( 'quick', 'color', 'quiet', 'help', 'show-output', 'record', 'run-disabled', 'run-parsoid' );
$optionsWithArgs = array( 'regex', 'filter', 'seed', 'setversion' );
-require_once( __DIR__ . '/../maintenance/commandLine.inc' );
-require_once( __DIR__ . '/TestsAutoLoader.php' );
+require_once __DIR__ . '/../maintenance/commandLine.inc';
+require_once __DIR__ . '/TestsAutoLoader.php';
if ( isset( $options['help'] ) ) {
echo <<<ENDS
+++ /dev/null
-<?php
-class AutoLoaderTest extends MediaWikiTestCase {
-
- public function testAutoLoadConfig() {
- $results = self::checkAutoLoadConf();
-
- $this->assertEquals(
- $results['expected'],
- $results['actual']
- );
- }
-
- protected static function checkAutoLoadConf() {
- global $wgAutoloadLocalClasses, $wgAutoloadClasses, $IP;
- $supportsParsekit = function_exists( 'parsekit_compile_file' );
-
- // wgAutoloadLocalClasses has precedence, just like in includes/AutoLoader.php
- $expected = $wgAutoloadLocalClasses + $wgAutoloadClasses;
- $actual = array();
-
- $files = array_unique( $expected );
-
- foreach ( $files as $file ) {
- // Only prefix $IP if it doesn't have it already.
- // Generally local classes don't have it, and those from extensions and test suites do.
- if ( substr( $file, 0, 1 ) != '/' && substr( $file, 1, 1 ) != ':' ) {
- $filePath = "$IP/$file";
- } else {
- $filePath = $file;
- }
- if ( $supportsParsekit ) {
- $parseInfo = parsekit_compile_file( "$filePath" );
- $classes = array_keys( $parseInfo['class_table'] );
- } else {
- $contents = file_get_contents( "$filePath" );
- $m = array();
- preg_match_all( '/\n\s*(?:final)?\s*(?:abstract)?\s*(?:class|interface)\s+([a-zA-Z0-9_]+)/', $contents, $m, PREG_PATTERN_ORDER );
- $classes = $m[1];
- }
- foreach ( $classes as $class ) {
- $actual[$class] = $file;
- }
- }
-
- return array(
- 'expected' => $expected,
- 'actual' => $actual,
- );
- }
-}
+++ /dev/null
-<?php
-/**
- * The tests here verify the structure of the code. This is for outright bugs,
- * not just style issues.
- */
-
-class StructureTest extends MediaWikiTestCase {
- /**
- * Verify all files that appear to be tests have file names ending in
- * Test. If the file names do not end in Test, they will not be run.
- * @group medium
- */
- public function testUnitTestFileNamesEndWithTest() {
- if ( wfIsWindows() ) {
- $this->markTestSkipped( 'This test does not work on Windows' );
- }
- $rootPath = escapeshellarg( __DIR__ );
- $testClassRegex = implode( '|', array(
- 'ApiFormatTestBase',
- 'ApiTestCase',
- 'ApiQueryTestBase',
- 'ApiQueryContinueTestBase',
- 'MediaWikiLangTestCase',
- 'MediaWikiTestCase',
- 'PHPUnit_Framework_TestCase',
- 'DumpTestCase',
- ) );
- $testClassRegex = "^class .* extends ($testClassRegex)";
- $finder = "find $rootPath -name '*.php' '!' -name '*Test.php'" .
- " | xargs grep -El '$testClassRegex|function suite\('";
-
- $results = null;
- $exitCode = null;
- exec( $finder, $results, $exitCode );
-
- $this->assertEquals(
- 0,
- $exitCode,
- 'Verify find/grep command succeeds.'
- );
-
- $results = array_filter(
- $results,
- array( $this, 'filterSuites' )
- );
- $strip = strlen( $rootPath ) - 1;
- foreach ( $results as $k => $v ) {
- $results[$k] = substr( $v, $strip );
- }
- $this->assertEquals(
- array(),
- $results,
- "Unit test file in $rootPath must end with Test."
- );
- }
-
- /**
- * Filter to remove testUnitTestFileNamesEndWithTest false positives.
- */
- public function filterSuites( $filename ) {
- return strpos( $filename, __DIR__ . '/suites/' ) !== 0;
- }
-}
You are running these tests directly from phpunit. You may not have all globals correctly set.
Running phpunit.php instead is recommended.
EOF;
- require_once( __DIR__ . "/phpunit.php" );
+ require_once __DIR__ . "/phpunit.php";
}
class CollationTest extends MediaWikiLangTestCase {
protected function setUp() {
parent::setUp();
- if ( !extension_loaded( 'intl' ) ) {
+ if ( !wfDl( 'intl' ) ) {
$this->markTestSkipped( 'These tests require intl extension' );
}
}
--- /dev/null
+<?php
+
+class FauxRequestTest extends MediaWikiTestCase {
+
+ function testGetSetHeader() {
+ $value = 'test/test';
+
+ $request = new FauxRequest();
+ $request->setHeader( 'Content-Type', $value );
+
+ $this->assertEquals( $request->getHeader( 'Content-Type' ), $value );
+ $this->assertEquals( $request->getHeader( 'CONTENT-TYPE' ), $value );
+ $this->assertEquals( $request->getHeader( 'content-type' ), $value );
+ }
+}
$this->response->header( 'Location: http://127.0.0.2/', false );
$this->assertEquals( 'http://127.0.0.1/', $this->response->getheader( 'Location' ), 'Same header with override disabled' );
+
+ $this->response->header( 'Location: http://localhost/' );
+ $this->assertEquals( 'http://localhost/', $this->response->getheader( 'LOCATION' ), 'Get header case insensitive' );
}
function testResponseCode() {
*
* options['printableQuery'] - value of query string for printable, or omitted for none
* options['handheldQuery'] - value of query string for handheld, or omitted for none
- * options['handheldForIPhone'] - value of the $wgHandheldForIPhone global
* options['media'] - passed into the method under the same name
* options['expectedReturn'] - expected return value
* options['message'] - PHPUnit message for assertion
$fauxRequest = new FauxRequest( $queryData, false );
$this->setMWGlobals( array(
'wgRequest' => $fauxRequest,
- 'wgHandheldForIPhone' => $args['handheldForIPhone']
) );
$actualReturn = OutputPage::transformCssMedia( $args['media'] );
$this->assertSame( $args['expectedReturn'], $actualReturn, $args['message'] );
}
- /**
- * Tests a case of transformCssMedia with both values of wgHandheldForIPhone.
- * Used to verify that behavior is orthogonal to that option.
- *
- * If the value of wgHandheldForIPhone should matter, use assertTransformCssMediaCase.
- *
- * @param array $args key-value array of arguments as shown in assertTransformCssMediaCase.
- * Will be mutated.
- */
- protected function assertTransformCssMediaCaseWithBothHandheldForIPhone( $args ) {
- $message = $args['message'];
- foreach ( array( true, false ) as $handheldForIPhone ) {
- $args['handheldForIPhone'] = $handheldForIPhone;
- $stringHandheldForIPhone = var_export( $handheldForIPhone, true );
- $args['message'] = "$message. \$wgHandheldForIPhone was $stringHandheldForIPhone";
- $this->assertTransformCssMediaCase( $args );
- }
- }
-
/**
* Tests print requests
*/
public function testPrintRequests() {
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'printableQuery' => '1',
'media' => 'screen',
'expectedReturn' => null,
'message' => 'On printable request, screen returns null'
) );
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'printableQuery' => '1',
'media' => self::SCREEN_MEDIA_QUERY,
'expectedReturn' => null,
'message' => 'On printable request, screen media query returns null'
) );
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'printableQuery' => '1',
'media' => self::SCREEN_ONLY_MEDIA_QUERY,
'expectedReturn' => null,
'message' => 'On printable request, screen media query with only returns null'
) );
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'printableQuery' => '1',
'media' => 'print',
'expectedReturn' => '',
*/
public function testScreenRequests() {
$this->assertTransformCssMediaCase( array(
- 'handheldForIPhone' => false,
'media' => 'screen',
'expectedReturn' => 'screen',
- 'message' => 'On screen request, with handheldForIPhone false, screen media type is preserved'
+ 'message' => 'On screen request, screen media type is preserved'
+ ) );
+
+ $this->assertTransformCssMediaCase( array(
+ 'media' => 'handheld',
+ 'expectedReturn' => 'handheld',
+ 'message' => 'On screen request, handheld media type is preserved'
) );
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'media' => self::SCREEN_MEDIA_QUERY,
'expectedReturn' => self::SCREEN_MEDIA_QUERY,
'message' => 'On screen request, screen media query is preserved.'
) );
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'media' => self::SCREEN_ONLY_MEDIA_QUERY,
'expectedReturn' => self::SCREEN_ONLY_MEDIA_QUERY,
'message' => 'On screen request, screen media query with only is preserved.'
) );
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'media' => 'print',
'expectedReturn' => 'print',
'message' => 'On screen request, print media type is preserved'
}
/**
- * Tests handheld and wgHandheldForIPhone behavior
+ * Tests handheld behavior
*/
public function testHandheld() {
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'handheldQuery' => '1',
'media' => 'handheld',
'expectedReturn' => '',
'message' => 'On request with handheld querystring and media is handheld, returns empty string'
) );
- $this->assertTransformCssMediaCaseWithBothHandheldForIPhone( array(
+ $this->assertTransformCssMediaCase( array(
'handheldQuery' => '1',
'media' => 'screen',
'expectedReturn' => null,
'message' => 'On request with handheld querystring and media is screen, returns null'
) );
-
- // A bit counter-intuitively, $wgHandheldForIPhone should only matter if the query handheld is false or omitted
- $this->assertTransformCssMediaCase( array(
- 'handheldQuery' => '0',
- 'media' => 'screen',
- 'handheldForIPhone' => true,
- 'expectedReturn' => 'screen and (min-device-width: 481px)',
- 'message' => 'With $wgHandheldForIPhone true, screen media type is transformed'
- ) );
-
- $this->assertTransformCssMediaCase( array(
- 'media' => 'handheld',
- 'handheldForIPhone' => true,
- 'expectedReturn' => 'handheld, only screen and (max-device-width: 480px)',
- 'message' => 'With $wgHandheldForIPhone true, handheld media type is transformed'
- ) );
-
- $this->assertTransformCssMediaCase( array(
- 'media' => 'handheld',
- 'handheldForIPhone' => false,
- 'expectedReturn' => 'handheld',
- 'message' => 'With $wgHandheldForIPhone false, handheld media type is preserved'
- ) );
}
}
'Regression fixed in r88706 with dotless names',
array( 'foo', 'bar', 'baz' ),
'foo,bar,baz',
- )
+ ),
+ array(
+ 'Prefixless modules after a prefixed module',
+ array( 'single.module', 'foobar', 'foobaz' ),
+ 'single.module|foobar,foobaz',
+ ),
);
}
}
public static function provideCssCommentsFixtures() {
/** array( <expected>, <css>, [message] ) */
return array(
- array( ' ', '/**/' ),
+ // Valid comments spanning entire input
+ array( '/**/', '/**/' ),
+ array( '/* comment */', '/* comment */' ),
+ // Weird stuff
array( ' ', '/****/' ),
- array( ' ', '/* comment */' ),
- array( ' ', "\\2f\\2a foo \\2a\\2f",
+ array( ' ', '/* /* */' ),
+ array( 'display: block;', "display:/* foo */block;" ),
+ array( 'display: block;', "display:\\2f\\2a foo \\2a\\2f block;",
'Backslash-escaped comments must be stripped (bug 28450)' ),
array( '', '/* unfinished comment structure',
'Remove anything after a comment-start token' ),
+++ /dev/null
-<?php
-
-class SeleniumConfigurationTest extends MediaWikiTestCase {
-
- /**
- * The file where the test temporarity stores the selenium config.
- * This should be cleaned up as part of teardown.
- */
- private $tempFileName;
-
- /**
- * String containing the a sample selenium settings
- */
- private $testConfig0 = '
-[SeleniumSettings]
-browsers[firefox] = "*firefox"
-browsers[iexplorer] = "*iexploreproxy"
-browsers[chrome] = "*chrome"
-host = "localhost"
-port = "foobarr"
-wikiUrl = "http://localhost/deployment"
-username = "xxxxxxx"
-userPassword = ""
-testBrowser = "chrome"
-startserver =
-stopserver =
-jUnitLogFile =
-runAgainstGrid = false
-
-[SeleniumTests]
-testSuite[SimpleSeleniumTestSuite] = "tests/selenium/SimpleSeleniumTestSuite.php"
-testSuite[TestSuiteName] = "testSuitePath"
-';
- /**
- * Array of expected browsers from $testConfig0
- */
- private $testBrowsers0 = array( 'firefox' => '*firefox',
- 'iexplorer' => '*iexploreproxy',
- 'chrome' => '*chrome'
- );
- /**
- * Array of expected selenium settings from $testConfig0
- */
- private $testSettings0 = array(
- 'host' => 'localhost',
- 'port' => 'foobarr',
- 'wikiUrl' => 'http://localhost/deployment',
- 'username' => 'xxxxxxx',
- 'userPassword' => '',
- 'testBrowser' => 'chrome',
- 'startserver' => null,
- 'stopserver' => null,
- 'seleniumserverexecpath' => null,
- 'jUnitLogFile' => null,
- 'runAgainstGrid' => null
- );
- /**
- * Array of expected testSuites from $testConfig0
- */
- private $testSuites0 = array(
- 'SimpleSeleniumTestSuite' => 'tests/selenium/SimpleSeleniumTestSuite.php',
- 'TestSuiteName' => 'testSuitePath'
- );
-
- /**
- * Another sample selenium settings file contents
- */
- private $testConfig1 =
- '
-[SeleniumSettings]
-host = "localhost"
-testBrowser = "firefox"
-';
- /**
- * Expected browsers from $testConfig1
- */
- private $testBrowsers1 = null;
- /**
- * Expected selenium settings from $testConfig1
- */
- private $testSettings1 = array(
- 'host' => 'localhost',
- 'port' => null,
- 'wikiUrl' => null,
- 'username' => null,
- 'userPassword' => null,
- 'testBrowser' => 'firefox',
- 'startserver' => null,
- 'stopserver' => null,
- 'seleniumserverexecpath' => null,
- 'jUnitLogFile' => null,
- 'runAgainstGrid' => null
- );
- /**
- * Expected test suites from $testConfig1
- */
- private $testSuites1 = null;
-
-
- protected function setUp() {
- parent::setUp();
- if ( !defined( 'SELENIUMTEST' ) ) {
- define( 'SELENIUMTEST', true );
- }
- }
-
- /**
- * Clean up the temporary file used to store the selenium settings.
- */
- protected function tearDown() {
- if ( strlen( $this->tempFileName ) > 0 ) {
- unlink( $this->tempFileName );
- unset( $this->tempFileName );
- }
- parent::tearDown();
- }
-
- /**
- * @expectedException MWException
- * @group SeleniumFramework
- */
- public function testErrorOnIncorrectConfigFile() {
- $seleniumSettings = array();
- $seleniumBrowsers = array();
- $seleniumTestSuites = array();
-
- SeleniumConfig::getSeleniumSettings( $seleniumSettings,
- $seleniumBrowsers,
- $seleniumTestSuites,
- "Some_fake_settings_file.ini" );
- }
-
- /**
- * @expectedException MWException
- * @group SeleniumFramework
- */
- public function testErrorOnMissingConfigFile() {
- $seleniumSettings = array();
- $seleniumBrowsers = array();
- $seleniumTestSuites = array();
- $this->setMwGlobals( 'wgSeleniumConfigFile', '' );
-
- SeleniumConfig::getSeleniumSettings( $seleniumSettings,
- $seleniumBrowsers,
- $seleniumTestSuites );
- }
-
- /**
- * @group SeleniumFramework
- */
- public function testUsesGlobalVarForConfigFile() {
- $seleniumSettings = array();
- $seleniumBrowsers = array();
- $seleniumTestSuites = array();
- $this->writeToTempFile( $this->testConfig0 );
- $this->setMwGlobals( 'wgSeleniumConfigFile', $this->tempFileName );
-
- SeleniumConfig::getSeleniumSettings( $seleniumSettings,
- $seleniumBrowsers,
- $seleniumTestSuites );
- $this->assertEquals( $seleniumSettings, $this->testSettings0,
- 'The selenium settings should have been read from the file defined in $wgSeleniumConfigFile'
- );
- $this->assertEquals( $seleniumBrowsers, $this->testBrowsers0,
- 'The available browsers should have been read from the file defined in $wgSeleniumConfigFile'
- );
- $this->assertEquals( $seleniumTestSuites, $this->testSuites0,
- 'The test suites should have been read from the file defined in $wgSeleniumConfigFile'
- );
- }
-
- /**
- * @group SeleniumFramework
- * @dataProvider sampleConfigs
- */
- public function testgetSeleniumSettings( $sampleConfig, $expectedSettings, $expectedBrowsers, $expectedSuites ) {
- $this->writeToTempFile( $sampleConfig );
- $seleniumSettings = array();
- $seleniumBrowsers = array();
- $seleniumTestSuites = null;
-
- SeleniumConfig::getSeleniumSettings( $seleniumSettings,
- $seleniumBrowsers,
- $seleniumTestSuites,
- $this->tempFileName );
-
- $this->assertEquals( $seleniumSettings, $expectedSettings,
- "The selenium settings for the following test configuration was not retrieved correctly" . $sampleConfig
- );
- $this->assertEquals( $seleniumBrowsers, $expectedBrowsers,
- "The available browsers for the following test configuration was not retrieved correctly" . $sampleConfig
- );
- $this->assertEquals( $seleniumTestSuites, $expectedSuites,
- "The test suites for the following test configuration was not retrieved correctly" . $sampleConfig
- );
- }
-
- /**
- * create a temp file and write text to it.
- * @param $testToWrite the text to write to the temp file
- */
- private function writeToTempFile( $textToWrite ) {
- $this->tempFileName = tempnam( sys_get_temp_dir(), 'test_settings.' );
- $tempFile = fopen( $this->tempFileName, "w" );
- fwrite( $tempFile, $textToWrite );
- fclose( $tempFile );
- }
-
- /**
- * Returns an array containing:
- * The contents of the selenium cingiguration ini file
- * The expected selenium configuration array that getSeleniumSettings should return
- * The expected available browsers array that getSeleniumSettings should return
- * The expected test suites arrya that getSeleniumSettings should return
- */
- public function sampleConfigs() {
- return array(
- array( $this->testConfig0, $this->testSettings0, $this->testBrowsers0, $this->testSuites0 ),
- array( $this->testConfig1, $this->testSettings1, $this->testBrowsers1, $this->testSuites1 )
- );
- }
-}
function testCssAndJavascriptPermissions() {
$this->setUser( $this->userName );
+ $this->setTitle( NS_USER, $this->userName . '/test.js' );
+ $this->runCSSandJSPermissions(
+ array( array( 'badaccess-group0' ), array( 'mycustomjsprotected' ) ),
+ array( array( 'badaccess-group0' ), array( 'mycustomjsprotected' ) ),
+ array( array( 'badaccess-group0' ) ),
+ array( array( 'badaccess-group0' ), array( 'mycustomjsprotected' ) ),
+ array( array( 'badaccess-group0' ) )
+ );
+
+ $this->setTitle( NS_USER, $this->userName . '/test.css' );
+ $this->runCSSandJSPermissions(
+ array( array( 'badaccess-group0' ), array( 'mycustomcssprotected' ) ),
+ array( array( 'badaccess-group0' ) ),
+ array( array( 'badaccess-group0' ), array( 'mycustomcssprotected' ) ),
+ array( array( 'badaccess-group0' ) ),
+ array( array( 'badaccess-group0' ), array( 'mycustomcssprotected' ) )
+ );
+
$this->setTitle( NS_USER, $this->altUserName . '/test.js' );
$this->runCSSandJSPermissions(
array( array( 'badaccess-group0' ), array( 'customjsprotected' ) ),
array( array( 'badaccess-group0' ), array( 'customjsprotected' ) ),
- array( array( 'badaccess-group0' ) ) );
+ array( array( 'badaccess-group0' ), array( 'customjsprotected' ) ),
+ array( array( 'badaccess-group0' ), array( 'customjsprotected' ) ),
+ array( array( 'badaccess-group0' ) )
+ );
$this->setTitle( NS_USER, $this->altUserName . '/test.css' );
$this->runCSSandJSPermissions(
+ array( array( 'badaccess-group0' ), array( 'customcssprotected' ) ),
+ array( array( 'badaccess-group0' ), array( 'customcssprotected' ) ),
array( array( 'badaccess-group0' ), array( 'customcssprotected' ) ),
array( array( 'badaccess-group0' ) ),
- array( array( 'badaccess-group0' ), array( 'customcssprotected' ) ) );
+ array( array( 'badaccess-group0' ), array( 'customcssprotected' ) )
+ );
$this->setTitle( NS_USER, $this->altUserName . '/tempo' );
$this->runCSSandJSPermissions(
array( array( 'badaccess-group0' ) ),
array( array( 'badaccess-group0' ) ),
- array( array( 'badaccess-group0' ) ) );
+ array( array( 'badaccess-group0' ) ),
+ array( array( 'badaccess-group0' ) ),
+ array( array( 'badaccess-group0' ) )
+ );
}
- function runCSSandJSPermissions( $result0, $result1, $result2 ) {
+ function runCSSandJSPermissions( $result0, $result1, $result2, $result3, $result4 ) {
$this->setUserPerm( '' );
$this->assertEquals( $result0,
$this->title->getUserPermissionsErrors( 'bogus',
$this->user ) );
- $this->setUserPerm( 'editusercss' );
+ $this->setUserPerm( 'editmyusercss' );
$this->assertEquals( $result1,
$this->title->getUserPermissionsErrors( 'bogus',
$this->user ) );
- $this->setUserPerm( 'edituserjs' );
+ $this->setUserPerm( 'editmyuserjs' );
$this->assertEquals( $result2,
$this->title->getUserPermissionsErrors( 'bogus',
$this->user ) );
+ $this->setUserPerm( 'editusercss' );
+ $this->assertEquals( $result3,
+ $this->title->getUserPermissionsErrors( 'bogus',
+ $this->user ) );
+
+ $this->setUserPerm( 'edituserjs' );
+ $this->assertEquals( $result4,
+ $this->title->getUserPermissionsErrors( 'bogus',
+ $this->user ) );
+
$this->setUserPerm( 'editusercssjs' );
$this->assertEquals( array( array( 'badaccess-group0' ) ),
$this->title->getUserPermissionsErrors( 'bogus',
/**
* @dataProvider provideGetIP
*/
- function testGetIP( $expected, $input, $squid, $private, $description ) {
+ function testGetIP( $expected, $input, $squid, $xffList, $private, $description ) {
$_SERVER = $input;
$this->setMwGlobals( array(
'wgSquidServersNoPurge' => $squid,
'wgUsePrivateIPs' => $private,
+ 'wgHooks' => array(
+ 'IsTrustedProxy' => array(
+ function( &$ip, &$trusted ) use ( $xffList ) {
+ $trusted = $trusted || in_array( $ip, $xffList );
+ return true;
+ }
+ )
+ )
) );
$request = new WebRequest();
'REMOTE_ADDR' => '127.0.0.1'
),
array(),
+ array(),
false,
'Simple IPv4'
),
'REMOTE_ADDR' => '::1'
),
array(),
+ array(),
false,
'Simple IPv6'
),
'HTTP_X_FORWARDED_FOR' => '12.0.0.3, 12.0.0.2'
),
array( '12.0.0.1', '12.0.0.2' ),
+ array(),
false,
'With X-Forwaded-For'
),
'HTTP_X_FORWARDED_FOR' => '12.0.0.3, 12.0.0.2'
),
array(),
+ array(),
false,
'With X-Forwaded-For and disallowed server'
),
'HTTP_X_FORWARDED_FOR' => '12.0.0.3, 12.0.0.2'
),
array( '12.0.0.1' ),
+ array(),
false,
'With multiple X-Forwaded-For and only one allowed server'
),
array(
- '12.0.0.2',
+ '10.0.0.3',
array(
'REMOTE_ADDR' => '12.0.0.2',
- 'HTTP_X_FORWARDED_FOR' => '10.0.0.3, 12.0.0.2'
+ 'HTTP_X_FORWARDED_FOR' => '10.0.0.4, 10.0.0.3, 12.0.0.2'
),
array( '12.0.0.1', '12.0.0.2' ),
+ array(),
false,
- 'With X-Forwaded-For and private IP'
+ 'With X-Forwaded-For and private IP (from cache proxy)'
),
array(
- '10.0.0.3',
+ '10.0.0.4',
array(
'REMOTE_ADDR' => '12.0.0.2',
- 'HTTP_X_FORWARDED_FOR' => '10.0.0.3, 12.0.0.2'
+ 'HTTP_X_FORWARDED_FOR' => '10.0.0.4, 10.0.0.3, 12.0.0.2'
+ ),
+ array( '12.0.0.1', '12.0.0.2', '10.0.0.3' ),
+ array(),
+ true,
+ 'With X-Forwaded-For and private IP (allowed)'
+ ),
+ array(
+ '10.0.0.4',
+ array(
+ 'REMOTE_ADDR' => '12.0.0.2',
+ 'HTTP_X_FORWARDED_FOR' => '10.0.0.4, 10.0.0.3, 12.0.0.2'
),
array( '12.0.0.1', '12.0.0.2' ),
+ array( '10.0.0.3' ),
true,
'With X-Forwaded-For and private IP (allowed)'
),
+ array(
+ '10.0.0.3',
+ array(
+ 'REMOTE_ADDR' => '12.0.0.2',
+ 'HTTP_X_FORWARDED_FOR' => '10.0.0.4, 10.0.0.3, 12.0.0.2'
+ ),
+ array( '12.0.0.1', '12.0.0.2' ),
+ array( '10.0.0.3' ),
+ false,
+ 'With X-Forwaded-For and private IP (disallowed)'
+ ),
+ array(
+ '12.0.0.3',
+ array(
+ 'REMOTE_ADDR' => '12.0.0.1',
+ 'HTTP_X_FORWARDED_FOR' => '12.0.0.3, 12.0.0.2'
+ ),
+ array(),
+ array( '12.0.0.1', '12.0.0.2' ),
+ false,
+ 'With X-Forwaded-For'
+ ),
+ array(
+ '12.0.0.2',
+ array(
+ 'REMOTE_ADDR' => '12.0.0.1',
+ 'HTTP_X_FORWARDED_FOR' => '12.0.0.3, 12.0.0.2'
+ ),
+ array(),
+ array( '12.0.0.1' ),
+ false,
+ 'With multiple X-Forwaded-For and only one allowed server'
+ ),
+ array(
+ '12.0.0.2',
+ array(
+ 'REMOTE_ADDR' => '12.0.0.2',
+ 'HTTP_X_FORWARDED_FOR' => '10.0.0.3, 12.0.0.2'
+ ),
+ array(),
+ array( '12.0.0.2' ),
+ false,
+ 'With X-Forwaded-For and private IP and hook (disallowed)'
+ ),
);
}
--- /dev/null
+<?php
+/**
+ * PHPUnit tests for XMLTypeCheck.
+ * @author physikerwelt
+ * @group ?
+ * @covers XMLTypeCheck
+ */
+class XmlTypeCheckTest extends MediaWikiTestCase {
+ const WELL_FORMED_XML = "<root><child /></root>";
+ const MAL_FORMED_XML = "<root><child /></error>";
+
+ /**
+ * @covers XMLTypeCheck::newFromString
+ * @covers XMLTypeCheck::getRootElement
+ */
+ public function testWellFormedXML() {
+ $testXML = XmlTypeCheck::newFromString( self::WELL_FORMED_XML );
+ $this->assertTrue( $testXML->wellFormed );
+ $this->assertEquals( 'root', $testXML->getRootElement() );
+ }
+
+ /**
+ * @covers XMLTypeCheck::newFromString
+ */
+ public function testMalFormedXML() {
+ $testXML = XmlTypeCheck::newFromString( self::MAL_FORMED_XML );
+ $this->assertFalse( $testXML->wellFormed );
+ }
+
+}
\ No newline at end of file
*/
// Start up MediaWiki in command-line mode
-require_once( __DIR__ . "/../../../../maintenance/Maintenance.php" );
-require( __DIR__ . "/RandomImageGenerator.php" );
+require_once __DIR__ . "/../../../../maintenance/Maintenance.php";
+require __DIR__ . "/RandomImageGenerator.php";
class GenerateRandomImages extends Maintenance {
}
$maintClass = 'GenerateRandomImages';
-require( RUN_MAINTENANCE_IF_MAIN );
+require RUN_MAINTENANCE_IF_MAIN;
--- /dev/null
+<?php
+
+/**
+ * @group Database
+ * @group Cache
+ */
+class MessageCacheTest extends MediaWikiLangTestCase {
+
+ protected function setUp() {
+ parent::setUp();
+ $this->configureLanguages();
+ MessageCache::singleton()->enable();
+ }
+
+ /**
+ * Helper function -- setup site language for testing
+ */
+ protected function configureLanguages() {
+ // for the test, we need the content language to be anything but English,
+ // let's choose e.g. German (de)
+ $langCode = 'de';
+ $langObj = Language::factory( $langCode );
+
+ $this->setMwGlobals( array(
+ 'wgLanguageCode' => $langCode,
+ 'wgLang' => $langObj,
+ 'wgContLang' => $langObj,
+ ) );
+ }
+
+ function addDBData() {
+ $this->configureLanguages();
+
+ // Set up messages and fallbacks ab -> ru -> de
+ $this->makePage( 'FallbackLanguageTest-Full', 'ab' );
+ $this->makePage( 'FallbackLanguageTest-Full', 'ru' );
+ $this->makePage( 'FallbackLanguageTest-Full', 'de' );
+
+ // Fallbacks where ab does not exist
+ $this->makePage( 'FallbackLanguageTest-Partial', 'ru' );
+ $this->makePage( 'FallbackLanguageTest-Partial', 'de' );
+
+ // Fallback to the content language
+ $this->makePage( 'FallbackLanguageTest-ContLang', 'de' );
+
+ // Add customizations for an existing message.
+ $this->makePage( 'sunday', 'ru' );
+
+ // Full key tests -- always want russian
+ $this->makePage( 'MessageCacheTest-FullKeyTest', 'ab' );
+ $this->makePage( 'MessageCacheTest-FullKeyTest', 'ru' );
+
+ // In content language -- get base if no derivative
+ $this->makePage( 'FallbackLanguageTest-NoDervContLang', 'de', 'de/none', false );
+ }
+
+ /**
+ * Helper function for addDBData -- adds a simple page to the database
+ *
+ * @param string $title Title of page to be created
+ * @param string $lang Language and content of the created page
+ * @param string|null $content Content of the created page, or null for a generic string
+ * @param bool $createSubPage Set to false if a root page should be created
+ */
+ protected function makePage( $title, $lang, $content = null, $createSubPage = true ) {
+ global $wgContLang;
+
+ if ( $content === null ) {
+ $content = $lang;
+ }
+ if ( $lang !== $wgContLang->getCode() || $createSubPage ) {
+ $title = "$title/$lang";
+ }
+
+ $title = Title::newFromText( $title, NS_MEDIAWIKI );
+ $wikiPage = new WikiPage( $title );
+ $contentHandler = ContentHandler::makeContent( $content, $title );
+ $wikiPage->doEditContent( $contentHandler, "$lang translation test case" );
+ }
+
+ /**
+ * Test message fallbacks, bug #1495
+ *
+ * @dataProvider provideMessagesForFallback
+ */
+ function testMessageFallbacks( $message, $lang, $expectedContent ) {
+ $result = MessageCache::singleton()->get( $message, true, $lang );
+ $this->assertEquals( $expectedContent, $result, "Message fallback failed." );
+ }
+
+ function provideMessagesForFallback() {
+ return array(
+ array( 'FallbackLanguageTest-Full', 'ab', 'ab' ),
+ array( 'FallbackLanguageTest-Partial', 'ab', 'ru' ),
+ array( 'FallbackLanguageTest-ContLang', 'ab', 'de' ),
+ array( 'FallbackLanguageTest-None', 'ab', false ),
+
+ // Existing message with customizations on the fallbacks
+ array( 'sunday', 'ab', 'амҽыш' ),
+
+ // bug 46579
+ array( 'FallbackLanguageTest-NoDervContLang', 'de', 'de/none' ),
+ // UI language different from content language should only use de/none as last option
+ array( 'FallbackLanguageTest-NoDervContLang', 'fit', 'de/none' ),
+ );
+ }
+
+ /**
+ * There's a fallback case where the message key is given as fully qualified -- this
+ * should ignore the passed $lang and use the language from the key
+ *
+ * @dataProvider provideMessagesForFullKeys
+ */
+ function testFullKeyBehaviour( $message, $lang, $expectedContent ) {
+ $result = MessageCache::singleton()->get( $message, true, $lang, true );
+ $this->assertEquals( $expectedContent, $result, "Full key message fallback failed." );
+ }
+
+ function provideMessagesForFullKeys() {
+ return array(
+ array( 'MessageCacheTest-FullKeyTest/ru', 'ru', 'ru' ),
+ array( 'MessageCacheTest-FullKeyTest/ru', 'ab', 'ru' ),
+ array( 'MessageCacheTest-FullKeyTest/ru/foo', 'ru', false ),
+ );
+ }
+
+}
);
}
+ /**
+ * @dataProvider provideUpsert
+ */
+ function testUpsert( $sql, $sqlText ) {
+ $this->database->upsert(
+ $sql['table'],
+ $sql['rows'],
+ $sql['uniqueIndexes'],
+ $sql['set'],
+ __METHOD__
+ );
+ $this->assertLastSql( $sqlText );
+ }
+
+ public static function provideUpsert() {
+ return array(
+ array(
+ array(
+ 'table' => 'upsert_table',
+ 'rows' => array( 'field' => 'text', 'field2' => 'text2' ),
+ 'uniqueIndexes' => array( 'field' ),
+ 'set' => array( 'field' => 'set' ),
+ ),
+ "BEGIN; " .
+ "UPDATE upsert_table " .
+ "SET field = 'set' " .
+ "WHERE ((field = 'text')); " .
+ "INSERT IGNORE INTO upsert_table " .
+ "(field,field2) " .
+ "VALUES ('text','text2'); " .
+ "COMMIT"
+ ),
+ );
+ }
+
/**
* @dataProvider provideDeleteJoin
*/
--- /dev/null
+<?php
+
+/**
+ * Tests for OracleInstaller
+ *
+ * @group Database
+ * @group Installer
+ */
+
+class OracleInstallerTest extends MediaWikiTestCase {
+
+ /**
+ * @dataProvider provideOracleConnectStrings
+ */
+ function testCheckConnectStringFormat( $expected, $connectString, $msg = '' ) {
+ $validity = $expected ? 'should be valid' : 'should NOT be valid';
+ $msg = "'$connectString' ($msg) $validity.";
+ $this->assertEquals( $expected,
+ OracleInstaller::checkConnectStringFormat( $connectString ),
+ $msg
+ );
+ }
+
+ /**
+ * Provider to test OracleInstaller::checkConnectStringFormat()
+ */
+ function provideOracleConnectStrings() {
+ // expected result, connectString[, message]
+ return array(
+ array( true, 'simple_01', 'Simple TNS name' ),
+ array( true, 'simple_01.world', 'TNS name with domain' ),
+ array( true, 'simple_01.domain.net', 'TNS name with domain' ),
+ array( true, 'host123', 'Host only' ),
+ array( true, 'host123.domain.net', 'FQDN only' ),
+ array( true, '//host123.domain.net', 'FQDN URL only' ),
+ array( true, '123.223.213.132', 'Host IP only' ),
+ array( true, 'host:1521', 'Host and port' ),
+ array( true, 'host:1521/service', 'Host, port and service' ),
+ array( true, 'host:1521/service:shared', 'Host, port, service and shared server type' ),
+ array( true, 'host:1521/service:dedicated', 'Host, port, service and dedicated server type' ),
+ array( true, 'host:1521/service:pooled', 'Host, port, service and pooled server type' ),
+ array( true, 'host:1521/service:shared/instance1', 'Host, port, service, server type and instance' ),
+ array( true, 'host:1521//instance1', 'Host, port and instance' ),
+ );
+ }
+
+}
'#settings td p strong'
),
array(
- # Not sure how 4+ values should behave,
- # testing to make sure changes are detected
- '.foo { x-unknown: 1 2 3 4 5; }',
- '.foo { x-unknown: 1 4 3 2 5; }',
+ // Do not mangle 5 or more values
+ '.foo { -x-unknown: 1 2 3 4 5; }'
),
array(
- '.foo { x-unknown: 1 2 3 4 5 6; }',
- '.foo { x-unknown: 1 4 3 2 5 6; }',
+ '.foo { -x-unknown: 1 2 3 4 5 6; }'
),
// Shorthand / Three notation
// result array, but it seems kind of big to put directly in the test
// file.
$result = null;
- include( $xmpPath . $file[0] . '.result.php' );
+ include $xmpPath . $file[0] . '.result.php';
$data[] = array( $xmp, $result, '[' . $file[0] . '.xmp] ' . $file[1] );
}
<?php
-require_once( __DIR__ . '/NewParserTest.php' );
+require_once __DIR__ . '/NewParserTest.php';
/**
* The UnitTest must be either a class that inherits from MediaWikiTestCase
*/
class MediaWikiParserTest {
- public static function suite() {
- global $wgParserTestFiles;
+ /**
+ * @defgroup filtering_constants Filtering constants
+ *
+ * Limit inclusion of parser tests files coming from MediaWiki core
+ * @{
+ */
- $suite = new PHPUnit_Framework_TestSuite;
+ /** Include files shipped with MediaWiki core */
+ const CORE_ONLY = 1;
+ /** Include non core files as set in $wgParserTestFiles */
+ const NO_CORE = 2;
+ /** Include anything set via $wgParserTestFiles */
+ const WITH_ALL = 3; # CORE_ONLY | NO_CORE
+
+ /** @} */
+
+ /**
+ * Get a PHPUnit test suite of parser tests. Optionally filtered with
+ * $flags.
+ *
+ * @par Examples:
+ * Get a suite of parser tests shipped by MediaWiki core:
+ * @code
+ * MediaWikiParserTest::suite( MediaWikiParserTest::CORE_ONLY );
+ * @endcode
+ * Get a suite of various parser tests, like extensions:
+ * @code
+ * MediaWikiParserTest::suite( MediaWikiParserTest::NO_CORE );
+ * @endcode
+ * Get any test defined via $wgParserTestFiles:
+ * @code
+ * MediaWikiParserTest::suite( MediaWikiParserTest::WITH_ALL );
+ * @endcode
+ *
+ * @param $flags bitwise flag to filter out the $wgParserTestFiles that
+ * will be included. Default: MediaWikiParserTest::CORE_ONLY
+ *
+ * @return PHPUnit_Framework_TestSuite
+ */
+ public static function suite( $flags = self::CORE_ONLY ) {
+ if( is_string( $flags ) ) {
+ $flags = self::CORE_ONLY;
+ }
+ global $wgParserTestFiles, $IP;
+
+ $mwTestDir = $IP.'/tests/';
+
+ # Human friendly helpers
+ $wantsCore = ($flags & self::CORE_ONLY);
+ $wantsRest = ($flags & self::NO_CORE);
+
+ # Will hold the .txt parser test files we will include
+ $filesToTest = array();
+
+ # Filter out .txt files
+ foreach( $wgParserTestFiles as $parserTestFile ) {
+ $isCore = ( 0 === strpos( $parserTestFile, $mwTestDir ) );
- foreach ( $wgParserTestFiles as $fileName ) {
+ if( $isCore && $wantsCore ) {
+ self::debug( "included core parser tests: $parserTestFile" );
+ $filesToTest[] = $parserTestFile;
+ } elseif( !$isCore && $wantsRest ) {
+ self::debug( "included non core parser tests: $parserTestFile" );
+ $filesToTest[] = $parserTestFile;
+ } else {
+ self::debug( "skipped parser tests: $parserTestFile" );
+ }
+ }
+ self::debug( 'parser tests files: '
+ . implode(' ', $filesToTest) );
+
+ $suite = new PHPUnit_Framework_TestSuite;
+ foreach ( $filesToTest as $fileName ) {
$testsName = basename( $fileName, '.txt' );
$escapedFileName = strtr( $fileName, array( "'" => "\\'", '\\' => '\\\\' ) );
/* This used to be ucfirst( basename( dirname( $filename ) ) )
EOT;
eval( $parserTestClassDefinition );
-
- $parserTester = new $parserTestClassName( $testsName );
- $suite->addTestSuite( new ReflectionClass ( $parserTester ) );
+ self::debug( "Adding test class $parserTestClassName" );
+ $suite->addTestSuite( $parserTestClassName );
}
-
return $suite;
}
+
+ /**
+ * Write $msg under log group 'tests-parser'
+ * @param string $msg Message to log
+ */
+ protected static function debug( $msg ) {
+ return wfDebugLog( 'tests-parser', wfGetCaller() . ' ' . $msg );
+ }
}
protected $file = false;
+ public static function setUpBeforeClass() {
+ // Inject ParserTest well-known interwikis
+ ParserTest::setupInterwikis();
+ }
+
protected function setUp() {
global $wgNamespaceAliases;
global $wgHooks, $IP;
$tmpGlobals['wgParser'] = new StubObject( 'wgParser', $GLOBALS['wgParserConf']['class'], array( $GLOBALS['wgParserConf'] ) );
+ $tmpGlobals['wgFileExtensions'][] = 'svg';
+ $tmpGlobals['wgSVGConverter'] = 'rsvg';
+ $tmpGlobals['wgSVGConverters']['rsvg'] = '$path/rsvg-convert -w $width -h $height $input -o $output';
+
if ( $GLOBALS['wgStyleDirectory'] === false ) {
$tmpGlobals['wgStyleDirectory'] = "$IP/skins";
}
foreach ( $wgMediaHandlers as $type => $handler ) {
$tmpGlobals['wgMediaHandlers'][$type] = 'MockBitmapHandler';
}
+ // Vector images have to be handled slightly differently
+ $tmpGlobals['wgMediaHandlers']['image/svg+xml'] = 'MockSvgHandler';
$tmpHooks = $wgHooks;
$tmpHooks['ParserTestParser'][] = 'ParserTestParserHook::setup';
function addDBData() {
$this->tablesUsed[] = 'site_stats';
- $this->tablesUsed[] = 'interwiki';
# disabled for performance
#$this->tablesUsed[] = 'image';
- # Hack: insert a few Wikipedia in-project interwiki prefixes,
- # for testing inter-language links
- $this->db->insert( 'interwiki', array(
- array( 'iw_prefix' => 'wikipedia',
- 'iw_url' => 'http://en.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 0 ),
- array( 'iw_prefix' => 'meatball',
- 'iw_url' => 'http://www.usemod.com/cgi-bin/mb.pl?$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 0 ),
- array( 'iw_prefix' => 'zh',
- 'iw_url' => 'http://zh.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- array( 'iw_prefix' => 'es',
- 'iw_url' => 'http://es.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- array( 'iw_prefix' => 'fr',
- 'iw_url' => 'http://fr.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- array( 'iw_prefix' => 'ru',
- 'iw_url' => 'http://ru.wikipedia.org/wiki/$1',
- 'iw_api' => '',
- 'iw_wikiid' => '',
- 'iw_local' => 1 ),
- /**
- * @todo Fixme! Why are we inserting duplicate data here? Shouldn't
- * need this IGNORE or shouldn't need the insert at all.
- */
- ), __METHOD__, array( 'IGNORE' )
- );
-
# Update certain things in site_stats
$this->db->insert( 'site_stats',
array( 'ss_row_id' => 1, 'ss_images' => 2, 'ss_good_articles' => 1 ),
$this->db->timestamp( '20010115123500' ), $user
);
}
+ $image = wfLocalFile( Title::makeTitle( NS_FILE, 'Foobar.svg' ) );
+ if ( !$this->db->selectField( 'image', '1', array( 'img_name' => $image->getName() ) ) ) {
+ $image->recordUpload2( '', 'Upload of some lame SVG', 'Some lame SVG', array(
+ 'size' => 12345,
+ 'width' => 200,
+ 'height' => 200,
+ 'bits' => 24,
+ 'media_type' => MEDIATYPE_DRAWING,
+ 'mime' => 'image/svg+xml',
+ 'metadata' => serialize( array() ),
+ 'sha1' => wfBaseConvert( '', 16, 36, 31 ),
+ 'fileExists' => true
+ ), $this->db->timestamp( '20010115123500' ), $user );
+ }
}
//ParserTest setup/teardown functions
$backend->store( array(
'src' => "$IP/skins/monobook/headbg.jpg", 'dst' => "$base/local-public/0/09/Bad.jpg"
) );
+
+ // No helpful SVG file to copy, so make one ourselves
+ $tmpDir = wfTempDir();
+ $tempFsFile = new TempFSFile( "$tmpDir/Foobar.svg" );
+ $tempFsFile->autocollect(); // destroy file when $tempFsFile leaves scope
+ file_put_contents( "$tmpDir/Foobar.svg",
+ '<?xml version="1.0" encoding="utf-8"?>' .
+ '<svg xmlns="http://www.w3.org/2000/svg" width="200" height="200"><text>Foo</text></svg>' );
+
+ $backend->prepare( array( 'dir' => "$base/local-public/f/ff" ) );
+ $backend->quickStore( array(
+ 'src' => "$tmpDir/Foobar.svg", 'dst' => "$base/local-public/f/ff/Foobar.svg"
+ ) );
}
/**
"$base/local-public/0/09/Bad.jpg",
+ "$base/local-public/f/ff/Foobar.svg",
+ "$base/local-thumb/f/ff/Foobar.svg/180px-Foobar.svg.jpg",
+ "$base/local-thumb/f/ff/Foobar.svg/270px-Foobar.svg.jpg",
+ "$base/local-thumb/f/ff/Foobar.svg/360px-Foobar.svg.jpg",
+ "$base/local-thumb/f/ff/Foobar.svg/langde-180px-Foobar.svg.jpg",
+ "$base/local-thumb/f/ff/Foobar.svg/langde-270px-Foobar.svg.jpg",
+ "$base/local-thumb/f/ff/Foobar.svg/langde-360px-Foobar.svg.jpg",
+
"$base/local-public/math/f/a/5/fa50b8b616463173474302ca3e63586b.png",
)
);
/**
* @group Search
+ * @group Database
*/
class SearchUpdateTest extends MediaWikiTestCase {
$this->setMwGlobals( 'wgSearchType', 'MockSearch' );
}
- function update( $text, $title = 'Test', $id = 1 ) {
- $u = new SearchUpdate( $id, $title, $text );
- $u->doUpdate();
-
- return array( MockSearch::$title, MockSearch::$text );
- }
-
function updateText( $text ) {
- list( , $resultText ) = $this->update( $text );
- $resultText = trim( $resultText ); // abstract from some implementation details
- return $resultText;
+ return trim( SearchUpdate::updateText( $text ) );
}
function testUpdateText() {
--- /dev/null
+<?php
+/**
+ * @group Upload
+ */
+class UploadBaseTest extends MediaWikiTestCase {
+ protected $upload;
+
+
+ protected function setUp() {
+ global $wgHooks;
+ parent::setUp();
+
+ $this->upload = new UploadTestHandler;
+ $this->hooks = $wgHooks;
+ $wgHooks['InterwikiLoadPrefix'][] = function ( $prefix, &$data ) {
+ return false;
+ };
+ }
+
+ protected function tearDown() {
+ global $wgHooks;
+ $wgHooks = $this->hooks;
+
+ parent::tearDown();
+ }
+
+
+ /**
+ * First checks the return code
+ * of UploadBase::getTitle() and then the actual returned title
+ *
+ * @dataProvider provideTestTitleValidation
+ */
+ public function testTitleValidation( $srcFilename, $dstFilename, $code, $msg ) {
+ /* Check the result code */
+ $this->assertEquals( $code,
+ $this->upload->testTitleValidation( $srcFilename ),
+ "$msg code" );
+
+ /* If we expect a valid title, check the title itself. */
+ if ( $code == UploadBase::OK ) {
+ $this->assertEquals( $dstFilename,
+ $this->upload->getTitle()->getText(),
+ "$msg text" );
+ }
+ }
+
+ /**
+ * Test various forms of valid and invalid titles that can be supplied.
+ */
+ public static function provideTestTitleValidation() {
+ return array(
+ /* Test a valid title */
+ array( 'ValidTitle.jpg', 'ValidTitle.jpg', UploadBase::OK,
+ 'upload valid title' ),
+ /* A title with a slash */
+ array( 'A/B.jpg', 'B.jpg', UploadBase::OK,
+ 'upload title with slash' ),
+ /* A title with illegal char */
+ array( 'A:B.jpg', 'A-B.jpg', UploadBase::OK,
+ 'upload title with colon' ),
+ /* Stripping leading File: prefix */
+ array( 'File:C.jpg', 'C.jpg', UploadBase::OK,
+ 'upload title with File prefix' ),
+ /* Test illegal suggested title (r94601) */
+ array( '%281%29.JPG', null, UploadBase::ILLEGAL_FILENAME,
+ 'illegal title for upload' ),
+ /* A title without extension */
+ array( 'A', null, UploadBase::FILETYPE_MISSING,
+ 'upload title without extension' ),
+ /* A title with no basename */
+ array( '.jpg', null, UploadBase::MIN_LENGTH_PARTNAME,
+ 'upload title without basename' ),
+ /* A title that is longer than 255 bytes */
+ array( str_repeat( 'a', 255 ) . '.jpg', null, UploadBase::FILENAME_TOO_LONG,
+ 'upload title longer than 255 bytes' ),
+ /* A title that is longer than 240 bytes */
+ array( str_repeat( 'a', 240 ) . '.jpg', null, UploadBase::FILENAME_TOO_LONG,
+ 'upload title longer than 240 bytes' ),
+ );
+ }
+
+ /**
+ * Test the upload verification functions
+ */
+ public function testVerifyUpload() {
+ /* Setup with zero file size */
+ $this->upload->initializePathInfo( '', '', 0 );
+ $result = $this->upload->verifyUpload();
+ $this->assertEquals( UploadBase::EMPTY_FILE,
+ $result['status'],
+ 'upload empty file' );
+ }
+
+ // Helper used to create an empty file of size $size.
+ private function createFileOfSize( $size ) {
+ $filename = tempnam( wfTempDir(), "mwuploadtest" );
+
+ $fh = fopen( $filename, 'w' );
+ ftruncate( $fh, $size );
+ fclose( $fh );
+
+ return $filename;
+ }
+
+ /**
+ * test uploading a 100 bytes file with $wgMaxUploadSize = 100
+ *
+ * This method should be abstracted so we can test different settings.
+ */
+
+ public function testMaxUploadSize() {
+ global $wgMaxUploadSize;
+ $savedGlobal = $wgMaxUploadSize; // save global
+ global $wgFileExtensions;
+ $wgFileExtensions[] = 'txt';
+
+ $wgMaxUploadSize = 100;
+
+ $filename = $this->createFileOfSize( $wgMaxUploadSize );
+ $this->upload->initializePathInfo( basename( $filename ) . '.txt', $filename, 100 );
+ $result = $this->upload->verifyUpload();
+ unlink( $filename );
+
+ $this->assertEquals(
+ array( 'status' => UploadBase::OK ), $result );
+
+ $wgMaxUploadSize = $savedGlobal; // restore global
+ }
+}
+
+class UploadTestHandler extends UploadBase {
+ public function initializeFromRequest( &$request ) {
+ }
+
+ public function testTitleValidation( $name ) {
+ $this->mTitle = false;
+ $this->mDesiredDestName = $name;
+ $this->mTitleError = UploadBase::OK;
+ $this->getTitle();
+
+ return $this->mTitleError;
+ }
+}
+++ /dev/null
-<?php
-/**
- * @group Upload
- */
-class UploadTest extends MediaWikiTestCase {
- protected $upload;
-
-
- protected function setUp() {
- global $wgHooks;
- parent::setUp();
-
- $this->upload = new UploadTestHandler;
- $this->hooks = $wgHooks;
- $wgHooks['InterwikiLoadPrefix'][] = function ( $prefix, &$data ) {
- return false;
- };
- }
-
- protected function tearDown() {
- global $wgHooks;
- $wgHooks = $this->hooks;
-
- parent::tearDown();
- }
-
-
- /**
- * First checks the return code
- * of UploadBase::getTitle() and then the actual returned title
- *
- * @dataProvider provideTestTitleValidation
- */
- public function testTitleValidation( $srcFilename, $dstFilename, $code, $msg ) {
- /* Check the result code */
- $this->assertEquals( $code,
- $this->upload->testTitleValidation( $srcFilename ),
- "$msg code" );
-
- /* If we expect a valid title, check the title itself. */
- if ( $code == UploadBase::OK ) {
- $this->assertEquals( $dstFilename,
- $this->upload->getTitle()->getText(),
- "$msg text" );
- }
- }
-
- /**
- * Test various forms of valid and invalid titles that can be supplied.
- */
- public static function provideTestTitleValidation() {
- return array(
- /* Test a valid title */
- array( 'ValidTitle.jpg', 'ValidTitle.jpg', UploadBase::OK,
- 'upload valid title' ),
- /* A title with a slash */
- array( 'A/B.jpg', 'B.jpg', UploadBase::OK,
- 'upload title with slash' ),
- /* A title with illegal char */
- array( 'A:B.jpg', 'A-B.jpg', UploadBase::OK,
- 'upload title with colon' ),
- /* Stripping leading File: prefix */
- array( 'File:C.jpg', 'C.jpg', UploadBase::OK,
- 'upload title with File prefix' ),
- /* Test illegal suggested title (r94601) */
- array( '%281%29.JPG', null, UploadBase::ILLEGAL_FILENAME,
- 'illegal title for upload' ),
- /* A title without extension */
- array( 'A', null, UploadBase::FILETYPE_MISSING,
- 'upload title without extension' ),
- /* A title with no basename */
- array( '.jpg', null, UploadBase::MIN_LENGTH_PARTNAME,
- 'upload title without basename' ),
- /* A title that is longer than 255 bytes */
- array( str_repeat( 'a', 255 ) . '.jpg', null, UploadBase::FILENAME_TOO_LONG,
- 'upload title longer than 255 bytes' ),
- /* A title that is longer than 240 bytes */
- array( str_repeat( 'a', 240 ) . '.jpg', null, UploadBase::FILENAME_TOO_LONG,
- 'upload title longer than 240 bytes' ),
- );
- }
-
- /**
- * Test the upload verification functions
- */
- public function testVerifyUpload() {
- /* Setup with zero file size */
- $this->upload->initializePathInfo( '', '', 0 );
- $result = $this->upload->verifyUpload();
- $this->assertEquals( UploadBase::EMPTY_FILE,
- $result['status'],
- 'upload empty file' );
- }
-
- // Helper used to create an empty file of size $size.
- private function createFileOfSize( $size ) {
- $filename = tempnam( wfTempDir(), "mwuploadtest" );
-
- $fh = fopen( $filename, 'w' );
- ftruncate( $fh, $size );
- fclose( $fh );
-
- return $filename;
- }
-
- /**
- * test uploading a 100 bytes file with $wgMaxUploadSize = 100
- *
- * This method should be abstracted so we can test different settings.
- */
-
- public function testMaxUploadSize() {
- global $wgMaxUploadSize;
- $savedGlobal = $wgMaxUploadSize; // save global
- global $wgFileExtensions;
- $wgFileExtensions[] = 'txt';
-
- $wgMaxUploadSize = 100;
-
- $filename = $this->createFileOfSize( $wgMaxUploadSize );
- $this->upload->initializePathInfo( basename( $filename ) . '.txt', $filename, 100 );
- $result = $this->upload->verifyUpload();
- unlink( $filename );
-
- $this->assertEquals(
- array( 'status' => UploadBase::OK ), $result );
-
- $wgMaxUploadSize = $savedGlobal; // restore global
- }
-}
-
-class UploadTestHandler extends UploadBase {
- public function initializeFromRequest( &$request ) {
- }
-
- public function testTitleValidation( $name ) {
- $this->mTitle = false;
- $this->mDesiredDestName = $name;
- $this->mTitleError = UploadBase::OK;
- $this->getTitle();
-
- return $this->mTitleError;
- }
-}
public static function provideUnknownLanguageTags() {
return array(
array( 'mw', 'non-existent two-letter code' ),
+ array( 'foo"<bar', 'very invalid language code' ),
);
}
array( 'other', 2, array(
'kissa=kala', '1=2=3', 'other',
) ),
+ array( '', 2, array(
+ '0=explicit zero', '1=explicit one',
+ ) ),
);
}
array( 'FI', false, 'is not supported language, input should be in lower case' ),
);
}
+
+ /**
+ * @dataProvider provideGetParentLanguage
+ */
+ function testGetParentLanguage( $code, $expected, $comment ) {
+ $lang = Language::factory( $code );
+ if ( is_null( $expected ) ) {
+ $this->assertNull( $lang->getParentLanguage(), $comment );
+ } else {
+ $this->assertEquals( $expected, $lang->getParentLanguage()->getCode(), $comment );
+ }
+ }
+
+ public static function provideGetParentLanguage() {
+ return array(
+ array( 'zh-cn', 'zh', 'zh is the parent language of zh-cn' ),
+ array( 'zh', 'zh', 'zh is defined as the parent language of zh, because zh converter can convert zh-cn to zh' ),
+ array( 'zh-invalid', null, 'do not be fooled by arbitrarily composed language codes' ),
+ array( 'en-gb', null, 'en does not have converter' ),
+ array( 'en', null, 'en does not have converter. Although FakeConverter handles en -> en conversion but it is useless' ),
+ );
+ }
}
* @ingroup FileBackend
*/
class MockFSFile extends FSFile {
- private $sha1Base36 = null; // File Sha1Base36
+ protected $sha1Base36 = null; // File Sha1Base36
public function exists() {
return true;
* @ingroup Media
*/
+class MockBitmapHandler extends BitmapHandler {
+ function doTransform( $image, $dstPath, $dstUrl, $params, $flags = 0 ) {
+ return MockImageHandler::doFakeTransform( $this, $image, $dstPath, $dstUrl, $params, $flags );
+ }
+ function doClientImage( $image, $scalerParams ) {
+ return $this->getClientScalingThumbnailImage( $image, $scalerParams );
+ }
+}
+class MockSvgHandler extends SvgHandler {
+ function doTransform( $image, $dstPath, $dstUrl, $params, $flags = 0 ) {
+ return MockImageHandler::doFakeTransform( $this, $image, $dstPath, $dstUrl, $params, $flags );
+ }
+}
/**
* Mock handler for images.
*
*
* @ingroup Media
*/
-class MockBitmapHandler extends BitmapHandler {
+class MockImageHandler {
/**
* Override BitmapHandler::doTransform() making sure we do not generate
* will be consumed by the unit test. There is no need to create a real
* thumbnail on the filesystem.
*/
- function doTransform( $image, $dstPath, $dstUrl, $params, $flags = 0 ) {
+ static function doFakeTransform( $that, $image, $dstPath, $dstUrl, $params, $flags = 0 ) {
# Example of what we receive:
# $image: LocalFile
# $dstPath: /tmp/transform_7d0a7a2f1a09-1.jpg
# $dstUrl : http://example.com/images/thumb/0/09/Bad.jpg/320px-Bad.jpg
# $params: width: 320, descriptionUrl http://trunk.dev/wiki/File:Bad.jpg
- $this->normaliseParams( $image, $params );
+ $that->normaliseParams( $image, $params );
$scalerParams = array(
# The size to which the image will be resized
# In some cases, we do not bother generating a thumbnail.
if ( !$image->mustRender() &&
$scalerParams['physicalWidth'] == $scalerParams['srcWidth']
- && $scalerParams['physicalHeight'] == $scalerParams['srcHeight'] ) {
+ && $scalerParams['physicalHeight'] == $scalerParams['srcHeight']
+ ) {
wfDebug( __METHOD__ . ": returning unscaled image\n" );
- return $this->getClientScalingThumbnailImage( $image, $scalerParams );
+ // getClientScalingThumbnailImage is protected
+ return $that->doClientImage( $image, $scalerParams );
}
return new ThumbnailImage( $image, $dstUrl, false, $params );
define( 'MW_PHPUNIT_TEST', true );
// Start up MediaWiki in command-line mode
-require_once( dirname( dirname( __DIR__ ) ) . "/maintenance/Maintenance.php" );
+require_once dirname( dirname( __DIR__ ) ) . "/maintenance/Maintenance.php";
class PHPUnitMaintClass extends Maintenance {
global $wgLocaltimezone, $wgLocalisationCacheConf;
global $wgDevelopmentWarnings;
+ // Inject test autoloader
+ require_once __DIR__ . '/../TestsAutoLoader.php';
+
// wfWarn should cause tests to fail
$wgDevelopmentWarnings = true;
}
$maintClass = 'PHPUnitMaintClass';
-require( RUN_MAINTENANCE_IF_MAIN );
+require RUN_MAINTENANCE_IF_MAIN;
-require_once 'PHPUnit/Runner/Version.php';
+if ( !class_exists( 'PHPUnit_Runner_Version') ) {
+ require_once 'PHPUnit/Runner/Version.php';
+}
if ( PHPUnit_Runner_Version::id() !== '@package_version@'
&& version_compare( PHPUnit_Runner_Version::id(), '3.6.7', '<' )
) {
die( 'PHPUnit 3.6.7 or later required, you have ' . PHPUnit_Runner_Version::id() . ".\n" );
}
-require_once 'PHPUnit/Autoload.php';
-require_once( "$IP/tests/TestsAutoLoader.php" );
+if ( !class_exists( 'PHPUnit_TextUI_Command' ) ) {
+ require_once 'PHPUnit/Autoload.php';
+}
MediaWikiPHPUnitCommand::main();
+++ /dev/null
-<?php
-/**
- * Sanity checks for making sure registered resources are sane.
- *
- * @file
- * @author Niklas Laxström, 2012
- * @author Antoine Musso, 2012
- * @author Santhosh Thottingal, 2012
- * @author Timo Tijhof, 2012
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
- */
-class ResourcesTest extends MediaWikiTestCase {
-
- /**
- * @dataProvider provideResourceFiles
- */
- public function testFileExistence( $filename, $module, $resource ) {
- $this->assertFileExists( $filename,
- "File '$resource' referenced by '$module' must exist."
- );
- }
-
- /**
- * This ask the ResouceLoader for all registered files from modules
- * created by ResourceLoaderFileModule (or one of its descendants).
- *
- *
- * Since the raw data is stored in protected properties, we have to
- * overrride this through ReflectionObject methods.
- */
- public static function provideResourceFiles() {
- global $wgEnableJavaScriptTest;
-
- // Test existance of test suite files as well
- // (can't use setUp or setMwGlobals because providers are static)
- $live_wgEnableJavaScriptTest = $wgEnableJavaScriptTest;
- $wgEnableJavaScriptTest = true;
-
- // Array with arguments for the test function
- $cases = array();
-
- // Initialize ResourceLoader
- $rl = new ResourceLoader();
-
- // See also ResourceLoaderFileModule::__construct
- $filePathProps = array(
- // Lists of file paths
- 'lists' => array(
- 'scripts',
- 'debugScripts',
- 'loaderScripts',
- 'styles',
- ),
-
- // Collated lists of file paths
- 'nested-lists' => array(
- 'languageScripts',
- 'skinScripts',
- 'skinStyles',
- ),
- );
-
- foreach ( $rl->getModuleNames() as $moduleName ) {
- $module = $rl->getModule( $moduleName );
- if ( !$module instanceof ResourceLoaderFileModule ) {
- continue;
- }
-
- $reflectedModule = new ReflectionObject( $module );
-
- $files = array();
-
- foreach ( $filePathProps['lists'] as $propName ) {
- $property = $reflectedModule->getProperty( $propName );
- $property->setAccessible( true );
- $list = $property->getValue( $module );
- foreach ( $list as $key => $value ) {
- // 'scripts' are numeral arrays.
- // 'styles' can be numeral or associative.
- // In case of associative the key is the file path
- // and the value is the 'media' attribute.
- if ( is_int( $key ) ) {
- $files[] = $value;
- } else {
- $files[] = $key;
- }
- }
- }
-
- foreach ( $filePathProps['nested-lists'] as $propName ) {
- $property = $reflectedModule->getProperty( $propName );
- $property->setAccessible( true );
- $lists = $property->getValue( $module );
- foreach ( $lists as $list ) {
- foreach ( $list as $key => $value ) {
- // We need the same filter as for 'lists',
- // due to 'skinStyles'.
- if ( is_int( $key ) ) {
- $files[] = $value;
- } else {
- $files[] = $key;
- }
- }
- }
- }
-
- // Get method for resolving the paths to full paths
- $method = $reflectedModule->getMethod( 'getLocalPath' );
- $method->setAccessible( true );
-
- // Populate cases
- foreach ( $files as $file ) {
- $cases[] = array(
- $method->invoke( $module, $file ),
- $module->getName(),
- $file,
- );
- }
- }
-
- // Restore settings
- $wgEnableJavaScriptTest = $live_wgEnableJavaScriptTest;
-
- return $cases;
- }
-}
--- /dev/null
+<?php
+class AutoLoaderTest extends MediaWikiTestCase {
+
+ public function testAutoLoadConfig() {
+ $results = self::checkAutoLoadConf();
+
+ $this->assertEquals(
+ $results['expected'],
+ $results['actual']
+ );
+ }
+
+ protected static function checkAutoLoadConf() {
+ global $wgAutoloadLocalClasses, $wgAutoloadClasses, $IP;
+ $supportsParsekit = function_exists( 'parsekit_compile_file' );
+
+ // wgAutoloadLocalClasses has precedence, just like in includes/AutoLoader.php
+ $expected = $wgAutoloadLocalClasses + $wgAutoloadClasses;
+ $actual = array();
+
+ $files = array_unique( $expected );
+
+ foreach ( $files as $file ) {
+ // Only prefix $IP if it doesn't have it already.
+ // Generally local classes don't have it, and those from extensions and test suites do.
+ if ( substr( $file, 0, 1 ) != '/' && substr( $file, 1, 1 ) != ':' ) {
+ $filePath = "$IP/$file";
+ } else {
+ $filePath = $file;
+ }
+ if ( $supportsParsekit ) {
+ $parseInfo = parsekit_compile_file( "$filePath" );
+ $classes = array_keys( $parseInfo['class_table'] );
+ } else {
+ $contents = file_get_contents( "$filePath" );
+ $m = array();
+ preg_match_all( '/\n\s*(?:final)?\s*(?:abstract)?\s*(?:class|interface)\s+([a-zA-Z0-9_]+)/', $contents, $m, PREG_PATTERN_ORDER );
+ $classes = $m[1];
+ }
+ foreach ( $classes as $class ) {
+ $actual[$class] = $file;
+ }
+ }
+
+ return array(
+ 'expected' => $expected,
+ 'actual' => $actual,
+ );
+ }
+}
--- /dev/null
+<?php
+/**
+ * Sanity checks for making sure registered resources are sane.
+ *
+ * @file
+ * @author Niklas Laxström, 2012
+ * @author Antoine Musso, 2012
+ * @author Santhosh Thottingal, 2012
+ * @author Timo Tijhof, 2012
+ * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ */
+class ResourcesTest extends MediaWikiTestCase {
+
+ /**
+ * @dataProvider provideResourceFiles
+ */
+ public function testFileExistence( $filename, $module, $resource ) {
+ $this->assertFileExists( $filename,
+ "File '$resource' referenced by '$module' must exist."
+ );
+ }
+
+ /**
+ * This ask the ResouceLoader for all registered files from modules
+ * created by ResourceLoaderFileModule (or one of its descendants).
+ *
+ *
+ * Since the raw data is stored in protected properties, we have to
+ * overrride this through ReflectionObject methods.
+ */
+ public static function provideResourceFiles() {
+ global $wgEnableJavaScriptTest;
+
+ // Test existance of test suite files as well
+ // (can't use setUp or setMwGlobals because providers are static)
+ $live_wgEnableJavaScriptTest = $wgEnableJavaScriptTest;
+ $wgEnableJavaScriptTest = true;
+
+ // Array with arguments for the test function
+ $cases = array();
+
+ // Initialize ResourceLoader
+ $rl = new ResourceLoader();
+
+ // See also ResourceLoaderFileModule::__construct
+ $filePathProps = array(
+ // Lists of file paths
+ 'lists' => array(
+ 'scripts',
+ 'debugScripts',
+ 'loaderScripts',
+ 'styles',
+ ),
+
+ // Collated lists of file paths
+ 'nested-lists' => array(
+ 'languageScripts',
+ 'skinScripts',
+ 'skinStyles',
+ ),
+ );
+
+ foreach ( $rl->getModuleNames() as $moduleName ) {
+ $module = $rl->getModule( $moduleName );
+ if ( !$module instanceof ResourceLoaderFileModule ) {
+ continue;
+ }
+
+ $reflectedModule = new ReflectionObject( $module );
+
+ $files = array();
+
+ foreach ( $filePathProps['lists'] as $propName ) {
+ $property = $reflectedModule->getProperty( $propName );
+ $property->setAccessible( true );
+ $list = $property->getValue( $module );
+ foreach ( $list as $key => $value ) {
+ // 'scripts' are numeral arrays.
+ // 'styles' can be numeral or associative.
+ // In case of associative the key is the file path
+ // and the value is the 'media' attribute.
+ if ( is_int( $key ) ) {
+ $files[] = $value;
+ } else {
+ $files[] = $key;
+ }
+ }
+ }
+
+ foreach ( $filePathProps['nested-lists'] as $propName ) {
+ $property = $reflectedModule->getProperty( $propName );
+ $property->setAccessible( true );
+ $lists = $property->getValue( $module );
+ foreach ( $lists as $list ) {
+ foreach ( $list as $key => $value ) {
+ // We need the same filter as for 'lists',
+ // due to 'skinStyles'.
+ if ( is_int( $key ) ) {
+ $files[] = $value;
+ } else {
+ $files[] = $key;
+ }
+ }
+ }
+ }
+
+ // Get method for resolving the paths to full paths
+ $method = $reflectedModule->getMethod( 'getLocalPath' );
+ $method->setAccessible( true );
+
+ // Populate cases
+ foreach ( $files as $file ) {
+ $cases[] = array(
+ $method->invoke( $module, $file ),
+ $module->getName(),
+ $file,
+ );
+ }
+ }
+
+ // Restore settings
+ $wgEnableJavaScriptTest = $live_wgEnableJavaScriptTest;
+
+ return $cases;
+ }
+}
--- /dev/null
+<?php
+/**
+ * The tests here verify the structure of the code. This is for outright bugs,
+ * not just style issues.
+ */
+
+class StructureTest extends MediaWikiTestCase {
+ /**
+ * Verify all files that appear to be tests have file names ending in
+ * Test. If the file names do not end in Test, they will not be run.
+ * @group medium
+ */
+ public function testUnitTestFileNamesEndWithTest() {
+ if ( wfIsWindows() ) {
+ $this->markTestSkipped( 'This test does not work on Windows' );
+ }
+ $rootPath = escapeshellarg( __DIR__ . '/..' );
+ $testClassRegex = implode( '|', array(
+ 'ApiFormatTestBase',
+ 'ApiTestCase',
+ 'ApiQueryTestBase',
+ 'ApiQueryContinueTestBase',
+ 'MediaWikiLangTestCase',
+ 'MediaWikiTestCase',
+ 'PHPUnit_Framework_TestCase',
+ 'DumpTestCase',
+ ) );
+ $testClassRegex = "^class .* extends ($testClassRegex)";
+ $finder = "find $rootPath -name '*.php' '!' -name '*Test.php'" .
+ " | xargs grep -El '$testClassRegex|function suite\('";
+
+ $results = null;
+ $exitCode = null;
+ exec( $finder, $results, $exitCode );
+
+ $this->assertEquals(
+ 0,
+ $exitCode,
+ 'Verify find/grep command succeeds.'
+ );
+
+ $results = array_filter(
+ $results,
+ array( $this, 'filterSuites' )
+ );
+ $strip = strlen( $rootPath ) - 1;
+ foreach ( $results as $k => $v ) {
+ $results[$k] = substr( $v, $strip );
+ }
+ $this->assertEquals(
+ array(),
+ $results,
+ "Unit test file in $rootPath must end with Test."
+ );
+ }
+
+ /**
+ * Filter to remove testUnitTestFileNamesEndWithTest false positives.
+ */
+ public function filterSuites( $filename ) {
+ return strpos( $filename, __DIR__ . '/../suites/' ) !== 0;
+ }
+}
<!-- colors don't work on Windows! -->
<phpunit bootstrap="./bootstrap.php"
- colors="true"
- backupGlobals="false"
- convertErrorsToExceptions="true"
- convertNoticesToExceptions="true"
- convertWarningsToExceptions="true"
- stopOnFailure="false"
- timeoutForSmallTests="10"
- timeoutForMediumTests="30"
- timeoutForLargeTests="60"
- strict="true"
- verbose="true">
+ colors="true"
+ backupGlobals="false"
+ convertErrorsToExceptions="true"
+ convertNoticesToExceptions="true"
+ convertWarningsToExceptions="true"
+ forceCoversAnnotation="true"
+ stopOnFailure="false"
+ timeoutForSmallTests="10"
+ timeoutForMediumTests="30"
+ timeoutForLargeTests="60"
+ strict="true"
+ verbose="true">
<testsuites>
<testsuite name="includes">
<directory>includes</directory>
<directory>maintenance</directory>
</testsuite>
<testsuite name="structure">
- <file>StructureTest.php</file>
+ <directory>structure</directory>
</testsuite>
<testsuite name="uploadfromurl">
<file>suites/UploadFromUrlTestSuite.php</file>
</testsuite>
<testsuite name="extensions">
<file>suites/ExtensionsTestSuite.php</file>
+ <file>suites/ExtensionsParserTestSuite.php</file>
</testsuite>
</testsuites>
<groups>
--- /dev/null
+<?php
+class ExtensionsParserTestSuite extends PHPUnit_Framework_TestSuite {
+
+ public static function suite() {
+ return MediaWikiParserTest::suite( MediaWikiParserTest::NO_CORE );
+ }
+
+}
<?php
-require_once( dirname( __DIR__ ) . '/includes/upload/UploadFromUrlTest.php' );
+require_once dirname( __DIR__ ) . '/includes/upload/UploadFromUrlTest.php';
class UploadFromUrlTestSuite extends PHPUnit_Framework_TestSuite {
public $savedGlobals = array();
* </code>
*/
-require( __DIR__ . '/../../../maintenance/Maintenance.php' );
+require __DIR__ . '/../../../maintenance/Maintenance.php';
class GenerateJqueryMsgData extends Maintenance {
/**
* Test factory for $.fn.byteLimit
*
- * @param $input {jQuery} jQuery object in an input element
- * @param hasLimit {Boolean} Wether a limit should apply at all
- * @param limit {Number} Limit (if used) otherwise undefined
- * The limit should be less than 20 (the sample data's length)
+ * @param {Object} options
+ * @param {string} options.description Test name
+ * @param {jQuery} options.$input jQuery object in an input element
+ * @param {string} options.sample Sequence of characters to simulate being
+ * added one by one
+ * @param {string} options.expected Expected final value of `$input`
*/
function byteLimitTest( options ) {
var opt = $.extend( {
description: '',
$input: null,
sample: '',
- hasLimit: false,
- expected: '',
- limit: null
+ expected: ''
}, options );
- QUnit.asyncTest( opt.description, opt.hasLimit ? 3 : 2, function ( assert ) {
+ QUnit.asyncTest( opt.description, 1, function ( assert ) {
setTimeout( function () {
- var rawVal, fn, effectiveVal;
-
opt.$input.appendTo( '#qunit-fixture' );
// Simulate pressing keys for each of the sample characters
addChars( opt.$input, opt.sample );
- rawVal = opt.$input.val();
- fn = opt.$input.data( 'byteLimit.callback' );
- effectiveVal = fn ? fn( rawVal ) : rawVal;
-
- if ( opt.hasLimit ) {
- assert.ltOrEq(
- $.byteLength( effectiveVal ),
- opt.limit,
- 'Prevent keypresses after byteLimit was reached, length never exceeded the limit'
- );
- assert.equal(
- $.byteLength( rawVal ),
- $.byteLength( opt.expected ),
- 'Not preventing keypresses too early, length has reached the expected length'
- );
- assert.equal( rawVal, opt.expected, 'New value matches the expected string' );
-
- } else {
- assert.equal(
- $.byteLength( effectiveVal ),
- $.byteLength( opt.expected ),
- 'Unlimited scenarios are not affected, expected length reached'
- );
- assert.equal( rawVal, opt.expected, 'New value matches the expected string' );
- }
+ assert.equal(
+ opt.$input.val(),
+ opt.expected,
+ 'New value matches the expected string'
+ );
+
QUnit.start();
}, 10 );
} );
description: 'Plain text input',
$input: $( '<input type="text"/>' ),
sample: simpleSample,
- hasLimit: false,
expected: simpleSample
} );
$input: $( '<input type="text"/>' )
.byteLimit(),
sample: simpleSample,
- hasLimit: false,
expected: simpleSample
} );
.attr( 'maxlength', '10' )
.byteLimit(),
sample: simpleSample,
- hasLimit: true,
- limit: 10,
expected: '1234567890'
} );
$input: $( '<input type="text"/>' )
.byteLimit( 10 ),
sample: simpleSample,
- hasLimit: true,
- limit: 10,
expected: '1234567890'
} );
.attr( 'maxlength', '10' )
.byteLimit( 15 ),
sample: simpleSample,
- hasLimit: true,
- limit: 15,
expected: '123456789012345'
} );
$input: $( '<input type="text"/>' )
.byteLimit( 14 ),
sample: mbSample,
- hasLimit: true,
- limit: 14,
expected: '1234567890' + U_20AC + '1'
} );
$input: $( '<input type="text"/>' )
.byteLimit( 12 ),
sample: mbSample,
- hasLimit: true,
- limit: 12,
expected: '1234567890' + '12'
} );
return new mw.Title( String( val ) ).getMain();
} ),
sample: 'User:Sample',
- hasLimit: true,
- limit: 6, // 'Sample' length
expected: 'User:Sample'
} );
return new mw.Title( String( val ) ).getMain();
} ),
sample: 'User:Sample',
- hasLimit: true,
- limit: 6, // 'Sample' length
expected: 'User:Sample'
} );
+ byteLimitTest( {
+ description: 'Pass the limit and a callback as input filter',
+ $input: $( '<input type="text"/>' )
+ .byteLimit( 6, function ( val ) {
+ // Invalid title
+ if ( val === '' ) {
+ return '';
+ }
+
+ // Return without namespace prefix
+ return new mw.Title( String( val ) ).getMain();
+ } ),
+ sample: 'User:Example',
+ // The callback alters the value to be used to calculeate
+ // the length. The altered value is "Exampl" which has
+ // a length of 6, the "e" would exceed the limit.
+ expected: 'User:Exampl'
+ } );
+
+ byteLimitTest( {
+ description: 'Input filter that increases the length',
+ $input: $( '<input type="text"/>' )
+ .byteLimit( 10, function ( text ) {
+ return 'prefix' + text;
+ } ),
+ sample: simpleSample,
+ // Prefix adds 6 characters, limit is reached after 4
+ expected: '1234'
+ } );
+
+ // Regression tests for bug 41450
+ byteLimitTest( {
+ description: 'Input filter of which the base exceeds the limit',
+ $input: $( '<input type="text"/>' )
+ .byteLimit( 3, function ( text ) {
+ return 'prefix' + text;
+ } ),
+ sample: simpleSample,
+ hasLimit: true,
+ limit: 6, // 'prefix' length
+ expected: ''
+ } );
+
QUnit.test( 'Confirm properties and attributes set', 4, function ( assert ) {
var $el, $elA, $elB;
( function ( $ ) {
- var uacount, uas, testMap;
QUnit.module( 'jquery.client', QUnit.newMwEnvironment() );
- /** Number of user-agent defined */
- uacount = 0;
-
- uas = ( function () {
-
+ var uacount = 0,
// Object keyed by userAgent. Value is an array (human-readable name, client-profile object, navigator.platform value)
// Info based on results from http://toolserver.org/~krinkle/testswarm/job/174/
- var uas = {
+ uas = {
// Internet Explorer 6
// Internet Explorer 7
'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)': {
rtl: true
}
},
+ // Iceweasel 15.0.1
+ 'Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20100101 Firefox/15.0.1 Iceweasel/15.0.1': {
+ title: 'Iceweasel 15.0.1',
+ platform: 'Linux',
+ profile: {
+ name: 'iceweasel',
+ layout: 'gecko',
+ layoutVersion: 20100101,
+ platform: 'linux',
+ version: '15.0.1',
+ versionBase: '15',
+ versionNumber: 15
+ },
+ wikiEditor: {
+ ltr: true,
+ rtl: true
+ }
+ },
// Firefox 5
// Safari 3
// Safari 4
}
},
// Safari 5
+ // Safari 6
+ 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/536.29.13 (KHTML, like Gecko) Version/6.0.4 Safari/536.29.13': {
+ title: 'Safari 6',
+ platform: 'MacIntel',
+ profile: {
+ name: 'safari',
+ layout: 'webkit',
+ layoutVersion: 536,
+ platform: 'mac',
+ version: '6.0.4',
+ versionBase: '6',
+ versionNumber: 6
+ },
+ wikiEditor: {
+ ltr: true,
+ rtl: true
+ }
+ },
+ // Safari 6.0.5+ (doesn't have the comma in "KHTML, like Gecko")
+ 'Mozilla/5.0 (Macintosh; Intel Mac OS X 1084) AppleWebKit/536.30.1 (KHTML like Gecko) Version/6.0.5 Safari/536.30.1': {
+ title: 'Safari 6',
+ platform: 'MacIntel',
+ profile: {
+ name: 'safari',
+ layout: 'webkit',
+ layoutVersion: 536,
+ platform: 'mac',
+ version: '6.0.5',
+ versionBase: '6',
+ versionNumber: 6
+ },
+ wikiEditor: {
+ ltr: true,
+ rtl: true
+ }
+ },
// Opera 10+
'Opera/9.80 (Windows NT 5.1)': {
title: 'Opera 10+ (exact version unspecified)',
rtl: true
}
},
+ // Android WebKit Browser 2.3
+ 'Mozilla/5.0 (Linux; U; Android 2.3.5; en-us; HTC Vision Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1': {
+ title: 'Android WebKit Browser 2.3',
+ platform: 'Linux armv7l',
+ profile: {
+ name: 'android',
+ layout: 'webkit',
+ layoutVersion: 533,
+ platform: 'linux',
+ version: '2.3.5',
+ versionBase: '2',
+ versionNumber: 2.3
+ },
+ wikiEditor: {
+ ltr: true,
+ rtl: true
+ }
+ },
// Bug #34924
'Mozilla/5.0 (X11; Linux i686) AppleWebKit/534.34 (KHTML, like Gecko) rekonq Safari/534.34': {
title: 'Rekonq',
rtl: true
}
}
- };
- $.each( uas, function () {
- uacount++;
- } );
- return uas;
- }() );
-
- QUnit.test( 'profile userAgent support', uacount, function ( assert ) {
- // Generate a client profile object and compare recursively
- var uaTest = function ( rawUserAgent, data ) {
- var ret = $.client.profile( {
- userAgent: rawUserAgent,
- platform: data.platform
- } );
- assert.deepEqual( ret, data.profile, 'Client profile support check for ' + data.title + ' (' + data.platform + '): ' + rawUserAgent );
- };
+ },
+ testMap = {
+ // Example from WikiEditor
+ // Make sure to use raw numbers, a string like "7.0" would fail on a
+ // version 10 browser since in string comparaison "10" is before "7.0" :)
+ 'ltr': {
+ 'msie': [['>=', 7.0]],
+ 'firefox': [['>=', 2]],
+ 'opera': [['>=', 9.6]],
+ 'safari': [['>=', 3]],
+ 'chrome': [['>=', 3]],
+ 'netscape': [['>=', 9]],
+ 'blackberry': false,
+ 'ipod': false,
+ 'iphone': false
+ },
+ 'rtl': {
+ 'msie': [['>=', 8]],
+ 'firefox': [['>=', 2]],
+ 'opera': [['>=', 9.6]],
+ 'safari': [['>=', 3]],
+ 'chrome': [['>=', 3]],
+ 'netscape': [['>=', 9]],
+ 'blackberry': false,
+ 'ipod': false,
+ 'iphone': false
+ }
+ }
+ ;
- // Loop through and run tests
- $.each( uas, uaTest );
+ // Count test cases
+ $.each( uas, function () {
+ uacount++;
} );
- QUnit.test( 'profile return validation for current user agent', 7, function ( assert ) {
+ QUnit.test( 'profile( navObject )', 7, function ( assert ) {
var p = $.client.profile();
function unknownOrType( val, type, summary ) {
assert.equal( typeof p.versionNumber, 'number', 'p.versionNumber is a number' );
} );
- // Example from WikiEditor
- // Make sure to use raw numbers, a string like "7.0" would fail on a
- // version 10 browser since in string comparaison "10" is before "7.0" :)
- testMap = {
- 'ltr': {
- 'msie': [['>=', 7.0]],
- 'firefox': [['>=', 2]],
- 'opera': [['>=', 9.6]],
- 'safari': [['>=', 3]],
- 'chrome': [['>=', 3]],
- 'netscape': [['>=', 9]],
- 'blackberry': false,
- 'ipod': false,
- 'iphone': false
- },
- 'rtl': {
- 'msie': [['>=', 8]],
- 'firefox': [['>=', 2]],
- 'opera': [['>=', 9.6]],
- 'safari': [['>=', 3]],
- 'chrome': [['>=', 3]],
- 'netscape': [['>=', 9]],
- 'blackberry': false,
- 'ipod': false,
- 'iphone': false
- }
- };
+ QUnit.test( 'profile( navObject ) - samples', uacount, function ( assert ) {
+ // Loop through and run tests
+ $.each( uas, function ( rawUserAgent, data ) {
+ // Generate a client profile object and compare recursively
+ var ret = $.client.profile( {
+ userAgent: rawUserAgent,
+ platform: data.platform
+ } );
+ assert.deepEqual( ret, data.profile, 'Client profile support check for ' + data.title + ' (' + data.platform + '): ' + rawUserAgent );
+ } );
+ } );
- QUnit.test( 'test', 1, function ( assert ) {
+ QUnit.test( 'test( testMap )', 4, function ( assert ) {
// .test() uses eval, make sure no exceptions are thrown
// then do a basic return value type check
- var testMatch = $.client.test( testMap );
+ var testMatch = $.client.test( testMap ),
+ ie7Profile = $.client.profile( {
+ 'userAgent': 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)',
+ 'platform': ''
+ } );
+
+ assert.equal( typeof testMatch, 'boolean', 'map with ltr/rtl split returns a boolean value' );
+
+ testMatch = $.client.test( testMap.ltr );
+
+ assert.equal( typeof testMatch, 'boolean', 'simple map (without ltr/rtl split) returns a boolean value' );
+
+ assert.equal( $.client.test( {
+ 'msie': null
+ }, ie7Profile ), true, 'returns true if any version of a browser are allowed (null)' );
+
+ assert.equal( $.client.test( {
+ 'msie': false
+ }, ie7Profile ), false, 'returns false if all versions of a browser are not allowed (false)' );
+ } );
+
+ QUnit.test( 'test( testMap, exactMatchOnly )', 2, function ( assert ) {
+ var ie7Profile = $.client.profile( {
+ 'userAgent': 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)',
+ 'platform': ''
+ } );
- assert.equal( typeof testMatch, 'boolean', 'test returns a boolean value' );
+ assert.equal( $.client.test( {
+ 'firefox': [['>=', 2]]
+ }, ie7Profile, false ), true, 'returns true if browser not found and exactMatchOnly not set' );
+ assert.equal( $.client.test( {
+ 'firefox': [['>=', 2]]
+ }, ie7Profile, true ), false, 'returns false if browser not found and exactMatchOnly is set' );
} );
- QUnit.test( 'User-agent matches against WikiEditor\'s compatibility map', uacount * 2, function ( assert ) {
+ QUnit.test( 'test( testMap) - WikiEditor sample', uacount * 2, function ( assert ) {
var $body = $( 'body' ),
bodyClasses = $body.attr( 'class' );
$table.find( '.headerSort:eq(0)' ).click();
}
);
+ tableTest(
+ 'Basic planet table: ascending by name (multiple clicks)',
+ header,
+ planets,
+ ascendingName,
+ function ( $table ) {
+ $table.tablesorter();
+ $table.find( '.headerSort:eq(0)' ).click();
+ $table.find( '.headerSort:eq(1)' ).click();
+ $table.find( '.headerSort:eq(0)' ).click();
+ }
+ );
tableTest(
'Basic planet table: descending by name',
header,
$table.data( 'tablesorter' ).sort();
}
);
+ tableTest(
+ 'Sort via click event after having initialized the tablesorter with initial sorting',
+ header,
+ initial,
+ descasc,
+ function ( $table ) {
+ $table.tablesorter(
+ { sortList: [ { 0: 'asc' }, { 1: 'asc' } ] }
+ );
+ $table.find( '.headerSort:eq(0)' ).click();
+ }
+ );
+ tableTest(
+ 'Multi-sort via click event after having initialized the tablesorter with initial sorting',
+ header,
+ initial,
+ asc,
+ function ( $table ) {
+ $table.tablesorter(
+ { sortList: [ { 0: 'desc' }, { 1: 'desc' } ] }
+ );
+ $table.find( '.headerSort:eq(0)' ).click();
+
+ // Pretend to click while pressing the multi-sort key
+ var event = $.Event( 'click' );
+ event[$table.data( 'tablesorter' ).config.sortMultiSortKey] = true;
+ $table.find( '.headerSort:eq(1)' ).trigger( event );
+ }
+ );
QUnit.test( 'Reset sorting making table appear unsorted', 3, function ( assert ) {
var $table = tableCreate( header, initial );
$table.tablesorter(
$table.find( '.headerSort:eq(0)' ).click();
}
);
+ tableTest( 'Sorting with colspanned headers: sort spanned column twice',
+ header,
+ initial,
+ [ caa4, bbc2, abc3, aab5, aaa1 ],
+ function ( $table ) {
+ // Make colspanned header for test
+ $table.find( 'tr:eq(0) th:eq(1), tr:eq(0) th:eq(2)' ).remove();
+ $table.find( 'tr:eq(0) th:eq(0)' ).prop( 'colspan', '3' );
+
+ $table.tablesorter();
+ $table.find( '.headerSort:eq(0)' ).click();
+ $table.find( '.headerSort:eq(0)' ).click();
+ }
+ );
tableTest( 'Sorting with colspanned headers: subsequent column',
header,
initial,
$table.find( '.headerSort:eq(1)' ).click();
}
);
+ tableTest( 'Sorting with colspanned headers: sort subsequent column twice',
+ header,
+ initial,
+ [ aab5, caa4, abc3, bbc2, aaa1 ],
+ function ( $table ) {
+ // Make colspanned header for test
+ $table.find( 'tr:eq(0) th:eq(1), tr:eq(0) th:eq(2)' ).remove();
+ $table.find( 'tr:eq(0) th:eq(0)' ).prop( 'colspan', '3' );
+
+ $table.tablesorter();
+ $table.find( '.headerSort:eq(1)' ).click();
+ $table.find( '.headerSort:eq(1)' ).click();
+ }
+ );
+
// Regression tests!
tableTest(
+++ /dev/null
-<?php
-/**
- * Selenium connector
- * This is implemented as a singleton.
- */
-
-require 'Testing/Selenium.php';
-
-class Selenium {
- protected static $_instance = null;
-
- public $isStarted = false;
- public $tester;
-
- protected $port;
- protected $host;
- protected $browser;
- protected $browsers;
- protected $logger;
- protected $user;
- protected $pass;
- protected $timeout = 30000;
- protected $verbose;
- protected $junitlogfile; //processed by phpUnderControl
- protected $runagainstgrid = false;
-
- /**
- * @todo this shouldn't have to be static
- */
- static protected $url;
-
- /**
- * Override parent
- */
- public function __construct() {
- /**
- * @todo this is an ugly hack to make information available to
- * other tests. It should be fixed.
- */
- if ( null === self::$_instance ) {
- self::$_instance = $this;
- } else {
- throw new MWException( "Already have one Selenium instance." );
- }
- }
-
- public function start() {
- $this->tester = new Testing_Selenium( $this->browser, self::$url, $this->host,
- $this->port, $this->timeout );
- if ( method_exists( $this->tester, "setVerbose" ) ) {
- $this->tester->setVerbose( $this->verbose );
- }
-
- $this->tester->start();
- $this->isStarted = true;
- }
-
- public function stop() {
- $this->tester->stop();
- $this->tester = null;
- $this->isStarted = false;
- }
-
- public function login() {
- if ( strlen( $this->user ) == 0 ) {
- return;
- }
- $this->open( self::$url . '/index.php?title=Special:Userlogin' );
- $this->type( 'wpName1', $this->user );
- $this->type( 'wpPassword1', $this->pass );
- $this->click( "//input[@id='wpLoginAttempt']" );
- $this->waitForPageToLoad( 10000 );
-
- // after login we redirect to the main page. So check whether the "Prefernces" top menu item exists
- $value = $this->isElementPresent( "//li[@id='pt-preferences']" );
-
- if ( $value != true ) {
- throw new Testing_Selenium_Exception( "Login Failed" );
- }
-
- }
-
- public static function getInstance() {
- if ( null === self::$_instance ) {
- throw new MWException( "No instance set yet" );
- }
-
- return self::$_instance;
- }
-
- public function loadPage( $title, $action ) {
- $this->open( self::$url . '/index.php?title=' . $title . '&action=' . $action );
- }
-
- public function setLogger( $logger ) {
- $this->logger = $logger;
- }
-
- public function getLogger() {
- return $this->logger;
- }
-
- public function log( $message ) {
- $this->logger->write( $message );
- }
-
- public function setUrl( $url ) {
- self::$url = $url;
- }
-
- public static function getUrl() {
- return self::$url;
- }
-
- public function setPort( $port ) {
- $this->port = $port;
- }
-
- public function getPort() {
- return $this->port;
- }
-
- public function setUser( $user ) {
- $this->user = $user;
- }
-
- // Function to get username
- public function getUser() {
- return $this->user;
- }
-
-
- public function setPass( $pass ) {
- $this->pass = $pass;
- }
-
- //add function to get password
- public function getPass() {
- return $this->pass;
- }
-
- public function setHost( $host ) {
- $this->host = $host;
- }
-
- public function setVerbose( $verbose ) {
- $this->verbose = $verbose;
- }
-
- public function setAvailableBrowsers( $availableBrowsers ) {
- $this->browsers = $availableBrowsers;
- }
-
- public function setJUnitLogfile( $junitlogfile ) {
- $this->junitlogfile = $junitlogfile;
- }
-
- public function getJUnitLogfile() {
- return $this->junitlogfile;
- }
-
- public function setRunAgainstGrid( $runagainstgrid ) {
- $this->runagainstgrid = $runagainstgrid;
- }
-
- public function setBrowser( $b ) {
- if ( $this->runagainstgrid ) {
- $this->browser = $b;
- return true;
- }
- if ( !isset( $this->browsers[$b] ) ) {
- throw new MWException( "Invalid Browser: $b.\n" );
- }
-
- $this->browser = $this->browsers[$b];
- }
-
- public function getAvailableBrowsers() {
- return $this->browsers;
- }
-
- public function __call( $name, $args ) {
- $t = call_user_func_array( array( $this->tester, $name ), $args );
- return $t;
- }
-
- // Prevent external cloning
- protected function __clone() {}
- // Prevent external construction
- // protected function __construct() {}
-}
+++ /dev/null
-<?php
-if ( !defined( 'SELENIUMTEST' ) ) {
- die( 1 );
-}
-
-class SeleniumConfig {
-
- /**
- * Retreives the Selenium configuration values from an ini file.
- * See sample config file in selenium_settings.ini.sample
- *
- */
- public static function getSeleniumSettings( &$seleniumSettings,
- &$seleniumBrowsers,
- &$seleniumTestSuites,
- $seleniumConfigFile = null ) {
- if ( strlen( $seleniumConfigFile ) == 0 ) {
- global $wgSeleniumConfigFile;
- if ( isset( $wgSeleniumConfigFile ) ) {
- $seleniumConfigFile = $wgSeleniumConfigFile;
- }
- }
-
- if ( strlen( $seleniumConfigFile ) == 0 || !file_exists( $seleniumConfigFile ) ) {
- throw new MWException( "Unable to read local Selenium Settings from " . $seleniumConfigFile . "\n" );
- }
-
- $configArray = parse_ini_file( $seleniumConfigFile, true );
- if ( $configArray === false ) {
- throw new MWException( "Error parsing " . $seleniumConfigFile . "\n" );
- }
-
- if ( array_key_exists( 'SeleniumSettings', $configArray ) ) {
- wfSuppressWarnings();
- //we may need to change how this is set. But for now leave it in the ini file
- $seleniumBrowsers = $configArray['SeleniumSettings']['browsers'];
-
- $seleniumSettings['host'] = $configArray['SeleniumSettings']['host'];
- $seleniumSettings['port'] = $configArray['SeleniumSettings']['port'];
- $seleniumSettings['wikiUrl'] = $configArray['SeleniumSettings']['wikiUrl'];
- $seleniumSettings['username'] = $configArray['SeleniumSettings']['username'];
- $seleniumSettings['userPassword'] = $configArray['SeleniumSettings']['userPassword'];
- $seleniumSettings['testBrowser'] = $configArray['SeleniumSettings']['testBrowser'];
- $seleniumSettings['startserver'] = $configArray['SeleniumSettings']['startserver'];
- $seleniumSettings['stopserver'] = $configArray['SeleniumSettings']['stopserver'];
- $seleniumSettings['seleniumserverexecpath'] = $configArray['SeleniumSettings']['seleniumserverexecpath'];
- $seleniumSettings['jUnitLogFile'] = $configArray['SeleniumSettings']['jUnitLogFile'];
- $seleniumSettings['runAgainstGrid'] = $configArray['SeleniumSettings']['runAgainstGrid'];
-
- wfRestoreWarnings();
- }
- if ( array_key_exists( 'SeleniumTests', $configArray ) ) {
- wfSuppressWarnings();
- $seleniumTestSuites = $configArray['SeleniumTests']['testSuite'];
- wfRestoreWarnings();
- }
- return true;
- }
-
- private static function parse_ini_line( $iniLine ) {
- static $specialValues = array( 'false' => false, 'true' => true, 'null' => null );
- list( $key, $value ) = explode( '=', $iniLine, 2 );
- $key = trim( $key );
- $value = trim( $value );
-
- if ( isset( $specialValues[$value] ) ) {
- $value = $specialValues[$value];
- } else {
- $value = trim( $value, '"' );
- }
-
- /* Support one-level arrays */
- if ( preg_match( '/^([A-Za-z]+)\[([A-Za-z]+)\]/', $key, $m ) ) {
- $key = $m[1];
- $value = array( $m[2] => $value );
- }
-
- return array( $key => $value );
- }
-}
+++ /dev/null
-<?php
-
-class SeleniumLoader {
- static function load() {
- require_once 'Testing/Selenium.php';
- require_once 'PHPUnit/Framework.php';
- require_once 'PHPUnit/Extensions/SeleniumTestCase.php';
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Dan Nessett <dnessett@yahoo.com>
- * http://citizendium.org/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class SeleniumServerManager {
- private $SeleniumStartServer = false;
- private $OS = '';
- private $SeleniumServerPid = 'NaN';
- private $SeleniumServerPort = 4444;
- private $SeleniumServerStartTimeout = 10; // 10 secs.
- private $SeleniumServerExecPath;
-
- public function __construct( $startServer,
- $serverPort,
- $serverExecPath ) {
- $this->OS = (string)PHP_OS;
-
- if ( isset( $startServer ) ) {
- $this->SeleniumStartServer = $startServer;
- }
-
- if ( isset( $serverPort ) ) {
- $this->SeleniumServerPort = $serverPort;
- }
-
- if ( isset( $serverExecPath ) ) {
- $this->SeleniumServerExecPath = $serverExecPath;
- }
-
- return;
- }
-
- // Getters for certain private attributes. No setters, since they
- // should not change after the manager object is created.
-
- public function getSeleniumStartServer() {
- return $this->SeleniumStartServer;
- }
-
- public function getSeleniumServerPort() {
- return $this->SeleniumServerPort;
- }
-
- public function getSeleniumServerPid() {
- return $this->SeleniumServerPid;
- }
-
- // Changing value of SeleniumStartServer allows starting server after
- // creation of the class instance. Only allow setting SeleniumStartServer
- // to true, since after server is started, it is shut down by stop().
-
- public function setSeleniumStartServer( $startServer ) {
- if ( $startServer == true ) {
- $this->SeleniumStartServer = true;
- }
- }
-
- // return values are: 1) started - server started, 2) failed -
- // server not started, 3) running - instructed to start server, but
- // server already running
-
- public function start() {
-
- if ( !$this->SeleniumStartServer ) {
- return 'failed';
- }
-
- // commented out cases are untested
-
- switch ( $this->OS ) {
- case "Linux":
-# case' CYGWIN_NT-5.1':
- case 'Darwin':
-# case 'FreeBSD':
-# case 'HP-UX':
-# case 'IRIX64':
-# case 'NetBSD':
-# case 'OpenBSD':
-# case 'SunOS':
-# case 'Unix':
- // *nix based OS
- return $this->startServerOnUnix();
- break;
- case "Windows":
- case "WIN32":
- case "WINNT":
- // Windows
- return $this->startServerOnWindows();
- break;
- default:
- // An untested OS
- return 'failed';
- break;
- }
- }
-
- public function stop() {
-
- // commented out cases are untested
-
- switch ( $this->OS ) {
- case "Linux":
-# case' CYGWIN_NT-5.1':
- case 'Darwin':
-# case 'FreeBSD':
-# case 'HP-UX':
-# case 'IRIX64':
-# case 'NetBSD':
-# case 'OpenBSD':
-# case 'SunOS':
-# case 'Unix':
- // *nix based OS
- return $this->stopServerOnUnix();
- break;
- case "Windows":
- case "WIN32":
- case "WINNT":
- // Windows
- return $this->stopServerOnWindows();
- break;
- default:
- // An untested OS
- return 'failed';
- break;
- }
- }
-
- private function startServerOnUnix() {
-
- $output = array();
- $user = $_ENV['USER'];
- // @todo FIXME: This should be a little more generalized :)
- if ( PHP_OS == 'Darwin' ) {
- // Mac OS X's ps barfs on the 'w' param, but doesn't need it.
- $ps = "ps -U %s";
- } else {
- // Good on Linux
- $ps = "ps -U %s w";
- }
- $psCommand = sprintf( $ps, escapeshellarg( $user ) );
- exec( $psCommand . " | grep -i selenium-server", $output );
-
- // Start server. If there is already a server running,
- // return running.
-
- if ( isset( $this->SeleniumServerExecPath ) ) {
- $found = 0;
- foreach ( $output as $string ) {
- $found += preg_match(
- '~^(.*)java(.+)-jar(.+)selenium-server~',
- $string );
- }
- if ( $found == 0 ) {
-
- // Didn't find the selenium server. Start it up.
- // First set up comamand line suffix.
- // NB: $! is pid of last job run in background
- // The echo guarentees it is put into $op when
- // the exec command is run.
-
- $commandSuffix = ' > /dev/null 2>&1' . ' & echo $!';
- $portText = ' -port ' . $this->SeleniumServerPort;
- $command = "java -jar " .
- escapeshellarg( $this->SeleniumServerExecPath ) .
- $portText . $commandSuffix;
- exec( $command, $op );
- $pid = (int)$op[0];
- if ( $pid != "" ) {
- $this->SeleniumServerPid = $pid;
- } else {
- $this->SeleniumServerPid = 'NaN';
- // Server start failed.
- return 'failed';
- }
- // Wait for the server to startup and listen
- // on its port. Note: this solution kinda
- // stinks, since it uses a wait loop - dnessett
-
- wfSuppressWarnings();
- for ( $cnt = 1;
- $cnt <= $this->SeleniumServerStartTimeout;
- $cnt++ ) {
- $fp = fsockopen( 'localhost',
- $this->SeleniumServerPort,
- $errno, $errstr, 0 );
- if ( !$fp ) {
- sleep( 1 );
- continue;
- // Server start succeeded.
- } else {
- fclose( $fp );
- return 'started';
- }
- }
- wfRestoreWarnings();
- echo "Starting Selenium server timed out.\n";
- return 'failed';
- } else {
- // server already running.
- return 'running';
- }
-
- }
-
- // No Server execution path defined.
- return 'failed';
- }
-
- private function startServerOnWindows() {
- // Unimplemented.
- return 'failed';
- }
-
- private function stopServerOnUnix() {
-
- if ( !empty( $this->SeleniumServerPid ) &&
- $this->SeleniumServerPid != 'NaN'
- ) {
- exec( "kill -9 " . $this->SeleniumServerPid );
- return 'stopped';
- } else {
- return 'failed';
- }
- }
-
- private function stopServerOnWindows() {
- // Unimplemented.
- return 'failed';
-
- }
-}
+++ /dev/null
-<?php
-include 'SeleniumTestConstants.php';
-
-class SeleniumTestCase extends PHPUnit_Framework_TestCase { // PHPUnit_Extensions_SeleniumTestCase
- protected $selenium;
-
- public function setUp() {
- set_time_limit( 60 );
- $this->selenium = Selenium::getInstance();
- }
-
- public function tearDown() {
-
- }
-
- public function __call( $method, $args ) {
- return call_user_func_array( array( $this->selenium, $method ), $args );
- }
-
- public function assertSeleniumAttributeEquals( $attribute, $value ) {
- $attr = $this->getAttribute( $attribute );
- $this->assertEquals( $attr, $value );
- }
-
- public function assertSeleniumHTMLContains( $element, $text ) {
- $innerHTML = $this->getText( $element );
- // or assertContains
- $this->assertRegExp( "/$text/", $innerHTML );
- }
-
-
- /**
- * Create a test fixture page if one does not exist
- * @param $pageName The fixture page name. If none is supplied, it uses SeleniumTestConstants::WIKI_INTERNAL_LINK
- */
- function createTestPageIfMissing( $pageName = null ) {
- if ( $pageName == null ) {
- $pageName = SeleniumTestConstants::WIKI_INTERNAL_LINK;
- }
- $this->type( SeleniumTestConstants::INPUT_SEARCH_BOX, $pageName );
- $this->click( SeleniumTestConstants::BUTTON_SEARCH );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( SeleniumTestConstants::LINK_START . $pageName );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $location = $this->getLocation() . "\n";
- if ( strpos( $location, '&redlink=1' ) !== false ) {
- $this->type( SeleniumTestConstants::TEXT_EDITOR, "Test fixture page. No real content here" );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertTrue( $this->isTextPresent( $pageName ),
- $this->getText( SeleniumTestConstants::TEXT_PAGE_HEADING ) );
- }
- }
-
- /**
- * Create a test page using date as part of the name so that it is unique
- * @param $pagePrefix The prefix to use for the page name. The current date will be appended to this to make it unique
- * @param $watchThis Whether to add the page to my watchlist. Defaults to false.
- */
- function createNewTestPage( $pagePrefix, $watchThis = false ) {
- $pageName = $pagePrefix . date( "Ymd-His" );
- $this->type( SeleniumTestConstants::INPUT_SEARCH_BOX, $pageName );
- $this->click( SeleniumTestConstants::BUTTON_SEARCH );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( SeleniumTestConstants::LINK_START . $pageName );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $location = $this->getLocation() . "\n";
- $this->assertContains( '&redlink=1', $location ) .
- $this->type( SeleniumTestConstants::TEXT_EDITOR, "Test fixture page. No real content here" );
- if ( $watchThis ) {
- $this->click( "wpWatchthis" );
- }
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertTrue( $this->isTextPresent( $pageName ),
- $this->getText( SeleniumTestConstants::TEXT_PAGE_HEADING ) );
- return $pageName;
- }
-
- public function getExistingPage() {
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->type( "searchInput", "new" );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( "30000" );
- }
-
- public function getNewPage( $pageName ) {
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->type( "searchInput", $pageName );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( "30000" );
- $this->click( "link=" . $pageName );
- $this->waitForPageToLoad( "600000" );
-
-
- }
-
- // Loading the mediawiki editor
- public function loadWikiEditor() {
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- }
-
- // Clear the content of the mediawiki editor
- public function clearWikiEditor() {
- $this->type( "wpTextbox1", "" );
- }
-
- // Click on the 'Show preview' button of the mediawiki editor
- public function clickShowPreviewBtn() {
- $this->click( "wpPreview" );
- }
-
- // Click on the 'Save Page' button of the mediawiki editor
- public function clickSavePageBtn() {
- $this->click( "wpSave" );
- }
-
- // Click on the 'Edit' link
- public function clickEditLink() {
- $this->click( "link=Edit" );
- $this->waitForPageToLoad( "30000" );
- }
-}
+++ /dev/null
-<?php
-
-class SeleniumTestConsoleLogger {
- public function __construct() {
- // Prepare testsuite for immediate output
- @ini_set( 'zlib.output_compression', 0 );
- @ini_set( 'implicit_flush', 1 );
- for ( $i = 0; $i < ob_get_level(); $i++ ) {
- ob_end_flush();
- }
- ob_implicit_flush( 1 );
- }
-
- public function write( $message, $mode = false ) {
- $out = '';
- // if ( $mode == SeleniumTestSuite::RESULT_OK ) $out .= '<font color="green">';
- $out .= htmlentities( $message );
- // if ( $mode == SeleniumTestSuite::RESULT_OK ) $out .= '</font>';
- if ( $mode != SeleniumTestSuite::CONTINUE_LINE ) {
- $out .= "\n";
- }
-
- echo $out;
- }
-}
+++ /dev/null
-<?php
-
-class SeleniumTestConstants {
- const WIKI_TEST_WAIT_TIME = 3000; // Waiting time
-
- //commonly used links
- const LINK_MAIN_PAGE = 'link=Main page';
- const LINK_RANDOM_PAGE = 'link=Random article';
- const TEXT_PAGE_HEADING = 'firstHeading';
-
- const LINK_START = 'link=';
- const TEXT_EDITOR = 'wpTextbox1';
- const LINK_PREVIEW = 'wpPreview';
- const LINK_EDIT = 'link=Edit';
-
- const WIKI_SEARCH_PAGE = 'Hair (musical)'; // Page name to search
- const WIKI_TEXT_SEARCH = 'TV'; // Text to search
- const WIKI_INTERNAL_LINK = 'Wikieditor-Fixture-Page'; // Exisiting page name to add as an internal tag
-
- const INPUT_SEARCH_BOX = 'searchInput';
- const BUTTON_SEARCH = 'mw-searchButton';
- const BUTTON_SAVE = 'wpSave';
-}
-
+++ /dev/null
-<?php
-
-class SeleniumTestHTMLLogger {
- public function setHeaders() {
- global $wgOut;
- $wgOut->addHeadItem( 'selenium', '<style type="text/css">
- .selenium pre {
- overflow-x: auto; /* Use horizontal scroller if needed; for Firefox 2, not needed in Firefox 3 */
- white-space: pre-wrap; /* css-3 */
- white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
- white-space: -pre-wrap; /* Opera 4-6 */
- white-space: -o-pre-wrap; /* Opera 7 */
- /* width: 99%; */
- word-wrap: break-word; /* Internet Explorer 5.5+ */
- }
- .selenium-success { color: green }
- </style>' );
- }
-
- public function write( $message, $mode = false ) {
- global $wgOut;
- $out = '';
- if ( $mode == SeleniumTestSuite::RESULT_OK ) {
- $out .= '<span class="selenium-success">';
- }
- $out .= htmlspecialchars( $message );
- if ( $mode == SeleniumTestSuite::RESULT_OK ) {
- $out .= '</span>';
- }
- if ( $mode != SeleniumTestSuite::CONTINUE_LINE ) {
- $out .= '<br />';
- }
-
- $wgOut->addHTML( $out );
- }
-}
+++ /dev/null
-<?php
-
-class SeleniumTestListener implements PHPUnit_Framework_TestListener {
- private $logger;
- private $tests_ok = 0;
- private $tests_failed = 0;
-
- public function __construct( $loggerInstance ) {
- $this->logger = $loggerInstance;
- }
-
- public function addError( PHPUnit_Framework_Test $test, Exception $e, $time ) {
- $this->logger->write( 'Error: ' . $e->getMessage() );
- $this->tests_failed++;
- }
-
- public function addFailure( PHPUnit_Framework_Test $test, PHPUnit_Framework_AssertionFailedError $e, $time ) {
- $this->logger->write( 'Failed: ' . $e->getMessage() );
- $this->tests_failed++;
- }
-
- public function addIncompleteTest( PHPUnit_Framework_Test $test, Exception $e, $time ) {
- $this->logger->write( 'Incomplete.' );
- $this->tests_failed++;
- }
-
- public function addSkippedTest( PHPUnit_Framework_Test $test, Exception $e, $time ) {
- $this->logger->write( 'Skipped.' );
- $this->tests_failed++;
- }
-
- public function startTest( PHPUnit_Framework_Test $test ) {
- $this->logger->write(
- 'Testing ' . $test->getName() . ' ... ',
- SeleniumTestSuite::CONTINUE_LINE
- );
- }
-
- public function endTest( PHPUnit_Framework_Test $test, $time ) {
- if ( !$test->hasFailed() ) {
- $this->logger->write( 'OK', SeleniumTestSuite::RESULT_OK );
- $this->tests_ok++;
- }
- }
-
- public function startTestSuite( PHPUnit_Framework_TestSuite $suite ) {
- $this->logger->write( 'Testsuite ' . $suite->getName() . ' started.' );
- $this->tests_ok = 0;
- $this->tests_failed = 0;
- }
-
- public function endTestSuite( PHPUnit_Framework_TestSuite $suite ) {
- $this->logger->write( 'Testsuite ' . $suite->getName() . ' ended.' );
- if ( $this->tests_ok > 0 || $this->tests_failed > 0 ) {
- $this->logger->write( ' OK: ' . $this->tests_ok . ' Failed: ' . $this->tests_failed );
- }
- $this->tests_ok = 0;
- $this->tests_failed = 0;
- }
-
- public function statusMessage( $message ) {
- $this->logger->write( $message );
- }
-}
-
+++ /dev/null
-<?php
-
-abstract class SeleniumTestSuite extends PHPUnit_Framework_TestSuite {
- private $selenium;
- private $isSetUp = false;
- private $loginBeforeTests = true;
- private $triggerClientTestResources = true;
-
- // Do not add line break after test output
- const CONTINUE_LINE = 1;
- const RESULT_OK = 2;
- const RESULT_ERROR = 3;
-
- abstract public function addTests();
-
- public function setUp() {
- // Hack because because PHPUnit version 3.0.6 which is on prototype does not
- // run setUp as part of TestSuite::run
- if ( $this->isSetUp ) {
- return;
- }
- $this->isSetUp = true;
- $this->selenium = Selenium::getInstance();
- $this->selenium->start();
- if ( $this->triggerClientTestResources ) {
- $this->selenium->open( $this->selenium->getUrl() . '/index.php?setupTestSuite=' . $this->getName() );
- //wait a little longer for the db operation
- $this->selenium->waitForPageToLoad( 6000 );
- }
- if ( $this->loginBeforeTests ) {
- $this->login();
- }
- }
-
- public function tearDown() {
- if ( $this->triggerClientTestResources ) {
- $this->selenium->open( $this->selenium->getUrl() . '/index.php?clearTestSuite=' . $this->getName() );
- }
- $this->selenium->stop();
- }
-
- public function login() {
- $this->selenium->login();
- }
-
- public function loadPage( $title, $action ) {
- $this->selenium->loadPage( $title, $action );
- }
-
- protected function setLoginBeforeTests( $loginBeforeTests = true ) {
- $this->loginBeforeTests = $loginBeforeTests;
- }
-
- protected function setTriggerClientTestResources( $triggerClientTestResources = true ) {
- $this->triggerClientTestResources = $triggerClientTestResources;
- }
-}
+++ /dev/null
--- MySQL dump 10.13 Distrib 5.1.41, for debian-linux-gnu (x86_64)
---
--- Host: localhost Database: test_wiki
--- ------------------------------------------------------
--- Server version 5.1.41-3ubuntu12.7
-
-/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
-/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
-/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
-/*!40101 SET NAMES utf8 */;
-/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
-/*!40103 SET TIME_ZONE='+00:00' */;
-/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
-/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
-/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
-/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
-
---
--- Table structure for table `mw_archive`
---
-
-DROP TABLE IF EXISTS `mw_archive`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_archive` (
- `ar_namespace` int(11) NOT NULL DEFAULT '0',
- `ar_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `ar_text` mediumblob NOT NULL,
- `ar_comment` tinyblob NOT NULL,
- `ar_user` int(10) unsigned NOT NULL DEFAULT '0',
- `ar_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `ar_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `ar_minor_edit` tinyint(4) NOT NULL DEFAULT '0',
- `ar_flags` tinyblob NOT NULL,
- `ar_rev_id` int(10) unsigned DEFAULT NULL,
- `ar_text_id` int(10) unsigned DEFAULT NULL,
- `ar_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `ar_len` int(10) unsigned DEFAULT NULL,
- `ar_page_id` int(10) unsigned DEFAULT NULL,
- `ar_parent_id` int(10) unsigned DEFAULT NULL,
- KEY `name_title_timestamp` (`ar_namespace`,`ar_title`,`ar_timestamp`),
- KEY `usertext_timestamp` (`ar_user_text`,`ar_timestamp`),
- KEY `ar_revid` (`ar_rev_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_archive`
---
-
-LOCK TABLES `mw_archive` WRITE;
-/*!40000 ALTER TABLE `mw_archive` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_archive` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_category`
---
-
-DROP TABLE IF EXISTS `mw_category`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_category` (
- `cat_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `cat_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `cat_pages` int(11) NOT NULL DEFAULT '0',
- `cat_subcats` int(11) NOT NULL DEFAULT '0',
- `cat_files` int(11) NOT NULL DEFAULT '0',
- `cat_hidden` tinyint(3) unsigned NOT NULL DEFAULT '0',
- PRIMARY KEY (`cat_id`),
- UNIQUE KEY `cat_title` (`cat_title`),
- KEY `cat_pages` (`cat_pages`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_category`
---
-
-LOCK TABLES `mw_category` WRITE;
-/*!40000 ALTER TABLE `mw_category` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_category` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_categorylinks`
---
-
-DROP TABLE IF EXISTS `mw_categorylinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_categorylinks` (
- `cl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `cl_to` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `cl_sortkey` varbinary(230) NOT NULL DEFAULT '',
- `cl_sortkey_prefix` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `cl_timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- `cl_collation` varbinary(32) NOT NULL DEFAULT '',
- `cl_type` enum('page','subcat','file') NOT NULL DEFAULT 'page',
- UNIQUE KEY `cl_from` (`cl_from`,`cl_to`),
- KEY `cl_sortkey` (`cl_to`,`cl_type`,`cl_sortkey`,`cl_from`),
- KEY `cl_timestamp` (`cl_to`,`cl_timestamp`),
- KEY `cl_collation` (`cl_collation`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_categorylinks`
---
-
-LOCK TABLES `mw_categorylinks` WRITE;
-/*!40000 ALTER TABLE `mw_categorylinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_categorylinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_change_tag`
---
-
-DROP TABLE IF EXISTS `mw_change_tag`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_change_tag` (
- `ct_rc_id` int(11) DEFAULT NULL,
- `ct_log_id` int(11) DEFAULT NULL,
- `ct_rev_id` int(11) DEFAULT NULL,
- `ct_tag` varchar(255) NOT NULL,
- `ct_params` blob,
- UNIQUE KEY `change_tag_rc_tag` (`ct_rc_id`,`ct_tag`),
- UNIQUE KEY `change_tag_log_tag` (`ct_log_id`,`ct_tag`),
- UNIQUE KEY `change_tag_rev_tag` (`ct_rev_id`,`ct_tag`),
- KEY `change_tag_tag_id` (`ct_tag`,`ct_rc_id`,`ct_rev_id`,`ct_log_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_change_tag`
---
-
-LOCK TABLES `mw_change_tag` WRITE;
-/*!40000 ALTER TABLE `mw_change_tag` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_change_tag` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_external_user`
---
-
-DROP TABLE IF EXISTS `mw_external_user`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_external_user` (
- `eu_local_id` int(10) unsigned NOT NULL,
- `eu_external_id` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- PRIMARY KEY (`eu_local_id`),
- UNIQUE KEY `eu_external_id` (`eu_external_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_external_user`
---
-
-LOCK TABLES `mw_external_user` WRITE;
-/*!40000 ALTER TABLE `mw_external_user` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_external_user` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_externallinks`
---
-
-DROP TABLE IF EXISTS `mw_externallinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_externallinks` (
- `el_from` int(10) unsigned NOT NULL DEFAULT '0',
- `el_to` blob NOT NULL,
- `el_index` blob NOT NULL,
- KEY `el_from` (`el_from`,`el_to`(40)),
- KEY `el_to` (`el_to`(60),`el_from`),
- KEY `el_index` (`el_index`(60))
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_externallinks`
---
-
-LOCK TABLES `mw_externallinks` WRITE;
-/*!40000 ALTER TABLE `mw_externallinks` DISABLE KEYS */;
-INSERT INTO `mw_externallinks` VALUES (1,'http://meta.wikimedia.org/wiki/Help:Contents','http://org.wikimedia.meta./wiki/Help:Contents'),(1,'http://www.mediawiki.org/wiki/Manual:Configuration_settings','http://org.mediawiki.www./wiki/Manual:Configuration_settings'),(1,'http://www.mediawiki.org/wiki/Manual:FAQ','http://org.mediawiki.www./wiki/Manual:FAQ'),(1,'https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce','https://org.wikimedia.lists./mailman/listinfo/mediawiki-announce');
-/*!40000 ALTER TABLE `mw_externallinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_filearchive`
---
-
-DROP TABLE IF EXISTS `mw_filearchive`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_filearchive` (
- `fa_id` int(11) NOT NULL AUTO_INCREMENT,
- `fa_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `fa_archive_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT '',
- `fa_storage_group` varbinary(16) DEFAULT NULL,
- `fa_storage_key` varbinary(64) DEFAULT '',
- `fa_deleted_user` int(11) DEFAULT NULL,
- `fa_deleted_timestamp` binary(14) DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `fa_deleted_reason` text,
- `fa_size` int(10) unsigned DEFAULT '0',
- `fa_width` int(11) DEFAULT '0',
- `fa_height` int(11) DEFAULT '0',
- `fa_metadata` mediumblob,
- `fa_bits` int(11) DEFAULT '0',
- `fa_media_type` enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') DEFAULT NULL,
- `fa_major_mime` enum('unknown','application','audio','image','text','video','message','model','multipart') DEFAULT 'unknown',
- `fa_minor_mime` varbinary(100) DEFAULT 'unknown',
- `fa_description` tinyblob,
- `fa_user` int(10) unsigned DEFAULT '0',
- `fa_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
- `fa_timestamp` binary(14) DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `fa_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- PRIMARY KEY (`fa_id`),
- KEY `fa_name` (`fa_name`,`fa_timestamp`),
- KEY `fa_storage_group` (`fa_storage_group`,`fa_storage_key`),
- KEY `fa_deleted_timestamp` (`fa_deleted_timestamp`),
- KEY `fa_user_timestamp` (`fa_user_text`,`fa_timestamp`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_filearchive`
---
-
-LOCK TABLES `mw_filearchive` WRITE;
-/*!40000 ALTER TABLE `mw_filearchive` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_filearchive` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_hitcounter`
---
-
-DROP TABLE IF EXISTS `mw_hitcounter`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_hitcounter` (
- `hc_id` int(10) unsigned NOT NULL
-) ENGINE=MEMORY DEFAULT CHARSET=latin1 MAX_ROWS=25000;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_hitcounter`
---
-
-LOCK TABLES `mw_hitcounter` WRITE;
-/*!40000 ALTER TABLE `mw_hitcounter` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_hitcounter` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_image`
---
-
-DROP TABLE IF EXISTS `mw_image`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_image` (
- `img_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `img_size` int(10) unsigned NOT NULL DEFAULT '0',
- `img_width` int(11) NOT NULL DEFAULT '0',
- `img_height` int(11) NOT NULL DEFAULT '0',
- `img_metadata` mediumblob NOT NULL,
- `img_bits` int(11) NOT NULL DEFAULT '0',
- `img_media_type` enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') DEFAULT NULL,
- `img_major_mime` enum('unknown','application','audio','image','text','video','message','model','multipart') NOT NULL DEFAULT 'unknown',
- `img_minor_mime` varbinary(100) NOT NULL DEFAULT 'unknown',
- `img_description` tinyblob NOT NULL,
- `img_user` int(10) unsigned NOT NULL DEFAULT '0',
- `img_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `img_timestamp` varbinary(14) NOT NULL DEFAULT '',
- `img_sha1` varbinary(32) NOT NULL DEFAULT '',
- PRIMARY KEY (`img_name`),
- KEY `img_usertext_timestamp` (`img_user_text`,`img_timestamp`),
- KEY `img_size` (`img_size`),
- KEY `img_timestamp` (`img_timestamp`),
- KEY `img_sha1` (`img_sha1`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_image`
---
-
-LOCK TABLES `mw_image` WRITE;
-/*!40000 ALTER TABLE `mw_image` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_image` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_imagelinks`
---
-
-DROP TABLE IF EXISTS `mw_imagelinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_imagelinks` (
- `il_from` int(10) unsigned NOT NULL DEFAULT '0',
- `il_to` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `il_from` (`il_from`,`il_to`),
- UNIQUE KEY `il_to` (`il_to`,`il_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_imagelinks`
---
-
-LOCK TABLES `mw_imagelinks` WRITE;
-/*!40000 ALTER TABLE `mw_imagelinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_imagelinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_interwiki`
---
-
-DROP TABLE IF EXISTS `mw_interwiki`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_interwiki` (
- `iw_prefix` varchar(32) NOT NULL,
- `iw_url` blob NOT NULL,
- `iw_api` blob NOT NULL,
- `iw_wikiid` varchar(64) NOT NULL,
- `iw_local` tinyint(1) NOT NULL,
- `iw_trans` tinyint(4) NOT NULL DEFAULT '0',
- UNIQUE KEY `iw_prefix` (`iw_prefix`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_interwiki`
---
-
-LOCK TABLES `mw_interwiki` WRITE;
-/*!40000 ALTER TABLE `mw_interwiki` DISABLE KEYS */;
-INSERT INTO `mw_interwiki` VALUES ('acronym','http://www.acronymfinder.com/af-query.asp?String=exact&Acronym=$1','','',0,0),('advogato','http://www.advogato.org/$1','','',0,0),('annotationwiki','http://www.seedwiki.com/page.cfm?wikiid=368&doc=$1','','',0,0),('arxiv','http://www.arxiv.org/abs/$1','','',0,0),('c2find','http://c2.com/cgi/wiki?FindPage&value=$1','','',0,0),('cache','http://www.google.com/search?q=cache:$1','','',0,0),('commons','http://commons.wikimedia.org/wiki/$1','','',0,0),('corpknowpedia','http://corpknowpedia.org/wiki/index.php/$1','','',0,0),('dictionary','http://www.dict.org/bin/Dict?Database=*&Form=Dict1&Strategy=*&Query=$1','','',0,0),('disinfopedia','http://www.disinfopedia.org/wiki.phtml?title=$1','','',0,0),('docbook','http://wiki.docbook.org/topic/$1','','',0,0),('doi','http://dx.doi.org/$1','','',0,0),('drumcorpswiki','http://www.drumcorpswiki.com/index.php/$1','','',0,0),('dwjwiki','http://www.suberic.net/cgi-bin/dwj/wiki.cgi?$1','','',0,0),('elibre','http://enciclopedia.us.es/index.php/$1','','',0,0),('emacswiki','http://www.emacswiki.org/cgi-bin/wiki.pl?$1','','',0,0),('foldoc','http://foldoc.org/?$1','','',0,0),('foxwiki','http://fox.wikis.com/wc.dll?Wiki~$1','','',0,0),('freebsdman','http://www.FreeBSD.org/cgi/man.cgi?apropos=1&query=$1','','',0,0),('gej','http://www.esperanto.de/cgi-bin/aktivikio/wiki.pl?$1','','',0,0),('gentoo-wiki','http://gentoo-wiki.com/$1','','',0,0),('google','http://www.google.com/search?q=$1','','',0,0),('googlegroups','http://groups.google.com/groups?q=$1','','',0,0),('hammondwiki','http://www.dairiki.org/HammondWiki/$1','','',0,0),('hewikisource','http://he.wikisource.org/wiki/$1','','',1,0),('hrwiki','http://www.hrwiki.org/index.php/$1','','',0,0),('imdb','http://us.imdb.com/Title?$1','','',0,0),('jargonfile','http://sunir.org/apps/meta.pl?wiki=JargonFile&redirect=$1','','',0,0),('jspwiki','http://www.jspwiki.org/wiki/$1','','',0,0),('keiki','http://kei.ki/en/$1','','',0,0),('kmwiki','http://kmwiki.wikispaces.com/$1','','',0,0),('linuxwiki','http://linuxwiki.de/$1','','',0,0),('lojban','http://www.lojban.org/tiki/tiki-index.php?page=$1','','',0,0),('lqwiki','http://wiki.linuxquestions.org/wiki/$1','','',0,0),('lugkr','http://lug-kr.sourceforge.net/cgi-bin/lugwiki.pl?$1','','',0,0),('mathsongswiki','http://SeedWiki.com/page.cfm?wikiid=237&doc=$1','','',0,0),('meatball','http://www.usemod.com/cgi-bin/mb.pl?$1','','',0,0),('mediawikiwiki','http://www.mediawiki.org/wiki/$1','','',0,0),('mediazilla','https://bugzilla.wikimedia.org/$1','','',1,0),('memoryalpha','http://www.memory-alpha.org/en/index.php/$1','','',0,0),('metawiki','http://sunir.org/apps/meta.pl?$1','','',0,0),('metawikimedia','http://meta.wikimedia.org/wiki/$1','','',0,0),('moinmoin','http://purl.net/wiki/moin/$1','','',0,0),('mozillawiki','http://wiki.mozilla.org/index.php/$1','','',0,0),('mw','http://www.mediawiki.org/wiki/$1','','',0,0),('oeis','http://www.research.att.com/cgi-bin/access.cgi/as/njas/sequences/eisA.cgi?Anum=$1','','',0,0),('openfacts','http://openfacts.berlios.de/index.phtml?title=$1','','',0,0),('openwiki','http://openwiki.com/?$1','','',0,0),('pmeg','http://www.bertilow.com/pmeg/$1.php','','',0,0),('ppr','http://c2.com/cgi/wiki?$1','','',0,0),('pythoninfo','http://wiki.python.org/moin/$1','','',0,0),('rfc','http://www.rfc-editor.org/rfc/rfc$1.txt','','',0,0),('s23wiki','http://is-root.de/wiki/index.php/$1','','',0,0),('seattlewiki','http://seattle.wikia.com/wiki/$1','','',0,0),('seattlewireless','http://seattlewireless.net/?$1','','',0,0),('senseislibrary','http://senseis.xmp.net/?$1','','',0,0),('sourceforge','http://sourceforge.net/$1','','',0,0),('squeak','http://wiki.squeak.org/squeak/$1','','',0,0),('susning','http://www.susning.nu/$1','','',0,0),('svgwiki','http://wiki.svg.org/$1','','',0,0),('tavi','http://tavi.sourceforge.net/$1','','',0,0),('tejo','http://www.tejo.org/vikio/$1','','',0,0),('theopedia','http://www.theopedia.com/$1','','',0,0),('tmbw','http://www.tmbw.net/wiki/$1','','',0,0),('tmnet','http://www.technomanifestos.net/?$1','','',0,0),('tmwiki','http://www.EasyTopicMaps.com/?page=$1','','',0,0),('twiki','http://twiki.org/cgi-bin/view/$1','','',0,0),('uea','http://www.tejo.org/uea/$1','','',0,0),('unreal','http://wiki.beyondunreal.com/wiki/$1','','',0,0),('usemod','http://www.usemod.com/cgi-bin/wiki.pl?$1','','',0,0),('vinismo','http://vinismo.com/en/$1','','',0,0),('webseitzwiki','http://webseitz.fluxent.com/wiki/$1','','',0,0),('why','http://clublet.com/c/c/why?$1','','',0,0),('wiki','http://c2.com/cgi/wiki?$1','','',0,0),('wikia','http://www.wikia.com/wiki/$1','','',0,0),('wikibooks','http://en.wikibooks.org/wiki/$1','','',1,0),('wikicities','http://www.wikia.com/wiki/$1','','',0,0),('wikif1','http://www.wikif1.org/$1','','',0,0),('wikihow','http://www.wikihow.com/$1','','',0,0),('wikimedia','http://wikimediafoundation.org/wiki/$1','','',0,0),('wikinews','http://en.wikinews.org/wiki/$1','','',1,0),('wikinfo','http://www.wikinfo.org/index.php/$1','','',0,0),('wikipedia','http://en.wikipedia.org/wiki/$1','','',1,0),('wikiquote','http://en.wikiquote.org/wiki/$1','','',1,0),('wikisource','http://wikisource.org/wiki/$1','','',1,0),('wikispecies','http://species.wikimedia.org/wiki/$1','','',1,0),('wikitravel','http://wikitravel.org/en/$1','','',0,0),('wikiversity','http://en.wikiversity.org/wiki/$1','','',1,0),('wikt','http://en.wiktionary.org/wiki/$1','','',1,0),('wiktionary','http://en.wiktionary.org/wiki/$1','','',1,0),('wlug','http://www.wlug.org.nz/$1','','',0,0),('zwiki','http://zwiki.org/$1','','',0,0),('zzz wiki','http://wiki.zzz.ee/index.php/$1','','',0,0);
-/*!40000 ALTER TABLE `mw_interwiki` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_ipblocks`
---
-
-DROP TABLE IF EXISTS `mw_ipblocks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_ipblocks` (
- `ipb_id` int(11) NOT NULL AUTO_INCREMENT,
- `ipb_address` tinyblob NOT NULL,
- `ipb_user` int(10) unsigned NOT NULL DEFAULT '0',
- `ipb_by` int(10) unsigned NOT NULL DEFAULT '0',
- `ipb_by_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `ipb_reason` tinyblob NOT NULL,
- `ipb_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `ipb_auto` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_anon_only` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_create_account` tinyint(1) NOT NULL DEFAULT '1',
- `ipb_enable_autoblock` tinyint(1) NOT NULL DEFAULT '1',
- `ipb_expiry` varbinary(14) NOT NULL DEFAULT '',
- `ipb_range_start` tinyblob NOT NULL,
- `ipb_range_end` tinyblob NOT NULL,
- `ipb_deleted` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_block_email` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_allow_usertalk` tinyint(1) NOT NULL DEFAULT '0',
- PRIMARY KEY (`ipb_id`),
- UNIQUE KEY `ipb_address` (`ipb_address`(255),`ipb_user`,`ipb_auto`,`ipb_anon_only`),
- KEY `ipb_user` (`ipb_user`),
- KEY `ipb_range` (`ipb_range_start`(8),`ipb_range_end`(8)),
- KEY `ipb_timestamp` (`ipb_timestamp`),
- KEY `ipb_expiry` (`ipb_expiry`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_ipblocks`
---
-
-LOCK TABLES `mw_ipblocks` WRITE;
-/*!40000 ALTER TABLE `mw_ipblocks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_ipblocks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_iwlinks`
---
-
-DROP TABLE IF EXISTS `mw_iwlinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_iwlinks` (
- `iwl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `iwl_prefix` varbinary(20) NOT NULL DEFAULT '',
- `iwl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `iwl_from` (`iwl_from`,`iwl_prefix`,`iwl_title`),
- UNIQUE KEY `iwl_prefix_title_from` (`iwl_prefix`,`iwl_title`,`iwl_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_iwlinks`
---
-
-LOCK TABLES `mw_iwlinks` WRITE;
-/*!40000 ALTER TABLE `mw_iwlinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_iwlinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_job`
---
-
-DROP TABLE IF EXISTS `mw_job`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_job` (
- `job_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `job_cmd` varbinary(60) NOT NULL DEFAULT '',
- `job_namespace` int(11) NOT NULL,
- `job_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `job_params` blob NOT NULL,
- PRIMARY KEY (`job_id`),
- KEY `job_cmd` (`job_cmd`,`job_namespace`,`job_title`,`job_params`(128))
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_job`
---
-
-LOCK TABLES `mw_job` WRITE;
-/*!40000 ALTER TABLE `mw_job` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_job` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_l10n_cache`
---
-
-DROP TABLE IF EXISTS `mw_l10n_cache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_l10n_cache` (
- `lc_lang` varbinary(32) NOT NULL,
- `lc_key` varchar(255) NOT NULL,
- `lc_value` mediumblob NOT NULL,
- KEY `lc_lang_key` (`lc_lang`,`lc_key`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_l10n_cache`
---
-
-LOCK TABLES `mw_l10n_cache` WRITE;
-/*!40000 ALTER TABLE `mw_l10n_cache` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_l10n_cache` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_langlinks`
---
-
-DROP TABLE IF EXISTS `mw_langlinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_langlinks` (
- `ll_from` int(10) unsigned NOT NULL DEFAULT '0',
- `ll_lang` varbinary(20) NOT NULL DEFAULT '',
- `ll_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `ll_from` (`ll_from`,`ll_lang`),
- KEY `ll_lang` (`ll_lang`,`ll_title`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_langlinks`
---
-
-LOCK TABLES `mw_langlinks` WRITE;
-/*!40000 ALTER TABLE `mw_langlinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_langlinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_log_search`
---
-
-DROP TABLE IF EXISTS `mw_log_search`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_log_search` (
- `ls_field` varbinary(32) NOT NULL,
- `ls_value` varchar(255) NOT NULL,
- `ls_log_id` int(10) unsigned NOT NULL DEFAULT '0',
- UNIQUE KEY `ls_field_val` (`ls_field`,`ls_value`,`ls_log_id`),
- KEY `ls_log_id` (`ls_log_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_log_search`
---
-
-LOCK TABLES `mw_log_search` WRITE;
-/*!40000 ALTER TABLE `mw_log_search` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_log_search` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_logging`
---
-
-DROP TABLE IF EXISTS `mw_logging`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_logging` (
- `log_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `log_type` varbinary(32) NOT NULL DEFAULT '',
- `log_action` varbinary(32) NOT NULL DEFAULT '',
- `log_timestamp` binary(14) NOT NULL DEFAULT '19700101000000',
- `log_user` int(10) unsigned NOT NULL DEFAULT '0',
- `log_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `log_namespace` int(11) NOT NULL DEFAULT '0',
- `log_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `log_page` int(10) unsigned DEFAULT NULL,
- `log_comment` varchar(255) NOT NULL DEFAULT '',
- `log_params` blob NOT NULL,
- `log_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- PRIMARY KEY (`log_id`),
- KEY `type_time` (`log_type`,`log_timestamp`),
- KEY `user_time` (`log_user`,`log_timestamp`),
- KEY `page_time` (`log_namespace`,`log_title`,`log_timestamp`),
- KEY `times` (`log_timestamp`),
- KEY `log_user_type_time` (`log_user`,`log_type`,`log_timestamp`),
- KEY `log_page_id_time` (`log_page`,`log_timestamp`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_logging`
---
-
-LOCK TABLES `mw_logging` WRITE;
-/*!40000 ALTER TABLE `mw_logging` DISABLE KEYS */;
-INSERT INTO `mw_logging` VALUES (1,'patrol','patrol','20110110173131',1,'WikiSysop',0,'TestResources',2,'','2\n0\n1',0);
-/*!40000 ALTER TABLE `mw_logging` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_math`
---
-
-DROP TABLE IF EXISTS `mw_math`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_math` (
- `math_inputhash` varbinary(16) NOT NULL,
- `math_outputhash` varbinary(16) NOT NULL,
- `math_html_conservativeness` tinyint(4) NOT NULL,
- `math_html` text,
- `math_mathml` text,
- UNIQUE KEY `math_inputhash` (`math_inputhash`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_math`
---
-
-LOCK TABLES `mw_math` WRITE;
-/*!40000 ALTER TABLE `mw_math` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_math` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_module_deps`
---
-
-DROP TABLE IF EXISTS `mw_module_deps`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_module_deps` (
- `md_module` varbinary(255) NOT NULL,
- `md_skin` varbinary(32) NOT NULL,
- `md_deps` mediumblob NOT NULL,
- UNIQUE KEY `md_module_skin` (`md_module`,`md_skin`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_module_deps`
---
-
-LOCK TABLES `mw_module_deps` WRITE;
-/*!40000 ALTER TABLE `mw_module_deps` DISABLE KEYS */;
-INSERT INTO `mw_module_deps` VALUES ('ext.vector.collapsibleNav','vector','[\"\\/home\\/pdhanda\\/deployment\\/extensions\\/Vector\\/modules\\/.\\/images\\/portal-break.png\",\"\\/home\\/pdhanda\\/deployment\\/extensions\\/Vector\\/modules\\/.\\/images\\/open.png\",\"\\/home\\/pdhanda\\/deployment\\/extensions\\/Vector\\/modules\\/.\\/images\\/closed-ltr.png\"]'),('jquery.wikiEditor','vector','[\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/loading.gif\"]'),('jquery.wikiEditor.toolbar','vector','{\"0\":\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/base.png\",\"1\":\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/loading.gif\",\"2\":\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/button-sprite.png\",\"3\":\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/arrow-right.png\",\"4\":\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/arrow-left.png\",\"5\":\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/arrow-down.png\",\"7\":\"\\/home\\/pdhanda\\/deployment\\/extensions\\/WikiEditor\\/modules\\/.\\/images\\/toolbar\\/loading-small.gif\"}'),('mediawiki.legacy.shared','vector','[\"\\/home\\/pdhanda\\/deployment\\/skins\\/common\\/images\\/feed-icon.png\",\"\\/home\\/pdhanda\\/deployment\\/skins\\/common\\/images\\/remove.png\",\"\\/home\\/pdhanda\\/deployment\\/skins\\/common\\/images\\/add.png\",\"\\/home\\/pdhanda\\/deployment\\/skins\\/common\\/images\\/ajax-loader.gif\",\"\\/home\\/pdhanda\\/deployment\\/skins\\/common\\/images\\/spinner.gif\",\"\\/home\\/pdhanda\\/deployment\\/skins\\/common\\/images\\/help-question.gif\",\"\\/home\\/pdhanda\\/deployment\\/skins\\/common\\/images\\/help-question-hover.gif\"]'),('skins.vector','vector','{\"0\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/page-base.png\",\"1\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/border.png\",\"2\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/page-fade.png\",\"4\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/tab-break.png\",\"5\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/tab-normal-fade.png\",\"6\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/tab-current-fade.png\",\"8\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/arrow-down-icon.png\",\"11\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/search-fade.png\",\"12\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/portal-break.png\",\"14\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/preferences-break.png\",\"16\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/preferences-fade.png\",\"17\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/preferences-base.png\",\"18\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/bullet-icon.png\",\"19\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/external-link-ltr-icon.png\",\"20\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/lock-icon.png\",\"21\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/mail-icon.png\",\"22\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/news-icon.png\",\"23\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/file-icon.png\",\"24\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/talk-icon.png\",\"25\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/audio-icon.png\",\"26\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/video-icon.png\",\"27\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/document-icon.png\",\"28\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/user-icon.png\",\"29\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/watch-icons.png\",\"30\":\"\\/home\\/pdhanda\\/deployment\\/skins\\/vector\\/images\\/watch-icon-loading.gif\"}');
-/*!40000 ALTER TABLE `mw_module_deps` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_msg_resource`
---
-
-DROP TABLE IF EXISTS `mw_msg_resource`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_msg_resource` (
- `mr_resource` varbinary(255) NOT NULL,
- `mr_lang` varbinary(32) NOT NULL,
- `mr_blob` mediumblob NOT NULL,
- `mr_timestamp` binary(14) NOT NULL,
- UNIQUE KEY `mr_resource_lang` (`mr_resource`,`mr_lang`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_msg_resource`
---
-
-LOCK TABLES `mw_msg_resource` WRITE;
-/*!40000 ALTER TABLE `mw_msg_resource` DISABLE KEYS */;
-INSERT INTO `mw_msg_resource` VALUES ('ext.vector.collapsibleNav','en','{\"vector-collapsiblenav-more\":\"More languages\"}','20110108005000'),('ext.vector.collapsibleTabs','en','{}','20110108005000'),('ext.vector.simpleSearch','en','{\"vector-simplesearch-search\":\"Search\",\"vector-simplesearch-containing\":\"containing...\"}','20110108005000'),('ext.wikiEditor','en','{}','20110110172914'),('ext.wikiEditor.toolbar','en','{\"wikieditor-toolbar-loading\":\"Loading...\",\"wikieditor-toolbar-tool-bold\":\"Bold\",\"wikieditor-toolbar-tool-bold-example\":\"Bold text\",\"wikieditor-toolbar-tool-italic\":\"Italic\",\"wikieditor-toolbar-tool-italic-example\":\"Italic text\",\"wikieditor-toolbar-tool-ilink\":\"Internal link\",\"wikieditor-toolbar-tool-ilink-example\":\"Link title\",\"wikieditor-toolbar-tool-xlink\":\"External link (remember http:\\/\\/ prefix)\",\"wikieditor-toolbar-tool-xlink-example\":\"http:\\/\\/www.example.com link title\",\"wikieditor-toolbar-tool-link\":\"Link\",\"wikieditor-toolbar-tool-link-title\":\"Insert link\",\"wikieditor-toolbar-tool-link-int\":\"To a wiki page\",\"wikieditor-toolbar-tool-link-int-target\":\"Target page or URL:\",\"wikieditor-toolbar-tool-link-int-target-tooltip\":\"Page title or URL\",\"wikieditor-toolbar-tool-link-int-text\":\"Text to display:\",\"wikieditor-toolbar-tool-link-int-text-tooltip\":\"Text to be displayed\",\"wikieditor-toolbar-tool-link-ext\":\"To an external web page\",\"wikieditor-toolbar-tool-link-ext-target\":\"Link URL:\",\"wikieditor-toolbar-tool-link-ext-text\":\"Link text:\",\"wikieditor-toolbar-tool-link-insert\":\"Insert link\",\"wikieditor-toolbar-tool-link-cancel\":\"Cancel\",\"wikieditor-toolbar-tool-link-int-target-status-exists\":\"Page exists\",\"wikieditor-toolbar-tool-link-int-target-status-notexists\":\"Page does not exist\",\"wikieditor-toolbar-tool-link-int-target-status-invalid\":\"Invalid title\",\"wikieditor-toolbar-tool-link-int-target-status-external\":\"External link\",\"wikieditor-toolbar-tool-link-int-target-status-loading\":\"Checking page existence...\",\"wikieditor-toolbar-tool-link-int-invalid\":\"The title you specified is invalid.\",\"wikieditor-toolbar-tool-link-lookslikeinternal\":\"The URL you specified looks like it was intended as a link to another wiki page.\\nDo you want to make it an internal link?\",\"wikieditor-toolbar-tool-link-lookslikeinternal-int\":\"Internal link\",\"wikieditor-toolbar-tool-link-lookslikeinternal-ext\":\"External link\",\"wikieditor-toolbar-tool-link-empty\":\"You did not enter anything to link to.\",\"wikieditor-toolbar-tool-file\":\"Embedded file\",\"wikieditor-toolbar-tool-file-pre\":\"$1{{ns:file}}:\",\"wikieditor-toolbar-tool-file-example\":\"Example.jpg\",\"wikieditor-toolbar-tool-reference\":\"Reference\",\"wikieditor-toolbar-tool-reference-title\":\"Insert reference\",\"wikieditor-toolbar-tool-reference-cancel\":\"Cancel\",\"wikieditor-toolbar-tool-reference-text\":\"Reference text\",\"wikieditor-toolbar-tool-reference-insert\":\"Insert\",\"wikieditor-toolbar-tool-reference-example\":\"Insert footnote text here\",\"wikieditor-toolbar-tool-signature\":\"Signature and timestamp\",\"wikieditor-toolbar-section-advanced\":\"Advanced\",\"wikieditor-toolbar-tool-heading\":\"Heading\",\"wikieditor-toolbar-tool-heading-1\":\"Level 1\",\"wikieditor-toolbar-tool-heading-2\":\"Level 2\",\"wikieditor-toolbar-tool-heading-3\":\"Level 3\",\"wikieditor-toolbar-tool-heading-4\":\"Level 4\",\"wikieditor-toolbar-tool-heading-5\":\"Level 5\",\"wikieditor-toolbar-tool-heading-example\":\"Heading text\",\"wikieditor-toolbar-group-format\":\"Format\",\"wikieditor-toolbar-tool-ulist\":\"Bulleted list\",\"wikieditor-toolbar-tool-ulist-example\":\"Bulleted list item\",\"wikieditor-toolbar-tool-olist\":\"Numbered list\",\"wikieditor-toolbar-tool-olist-example\":\"Numbered list item\",\"wikieditor-toolbar-tool-indent\":\"Indentation\",\"wikieditor-toolbar-tool-indent-example\":\"Indented line\",\"wikieditor-toolbar-tool-nowiki\":\"No wiki formatting\",\"wikieditor-toolbar-tool-nowiki-example\":\"Insert non-formatted text here\",\"wikieditor-toolbar-tool-redirect\":\"Redirect\",\"wikieditor-toolbar-tool-redirect-example\":\"Target page name\",\"wikieditor-toolbar-tool-big\":\"Big\",\"wikieditor-toolbar-tool-big-example\":\"Big text\",\"wikieditor-toolbar-tool-small\":\"Small\",\"wikieditor-toolbar-tool-small-example\":\"Small text\",\"wikieditor-toolbar-tool-superscript\":\"Superscript\",\"wikieditor-toolbar-tool-superscript-example\":\"Superscript text\",\"wikieditor-toolbar-tool-subscript\":\"Subscript\",\"wikieditor-toolbar-tool-subscript-example\":\"Subscript text\",\"wikieditor-toolbar-group-insert\":\"Insert\",\"wikieditor-toolbar-tool-gallery\":\"Picture gallery\",\"wikieditor-toolbar-tool-gallery-example\":\"{{ns:file}}:Example.jpg|Caption1\\n{{ns:file}}:Example.jpg|Caption2\",\"wikieditor-toolbar-tool-newline\":\"New line\",\"wikieditor-toolbar-tool-table\":\"Table\",\"wikieditor-toolbar-tool-table-example-old\":\"-\\n! header 1\\n! header 2\\n! header 3\\n|-\\n| row 1, cell 1\\n| row 1, cell 2\\n| row 1, cell 3\\n|-\\n| row 2, cell 1\\n| row 2, cell 2\\n| row 2, cell 3\",\"wikieditor-toolbar-tool-table-example-cell-text\":\"Cell text\",\"wikieditor-toolbar-tool-table-example\":\"Example\",\"wikieditor-toolbar-tool-table-example-header\":\"Header text\",\"wikieditor-toolbar-tool-table-title\":\"Insert table\",\"wikieditor-toolbar-tool-table-dimensions-rows\":\"Rows\",\"wikieditor-toolbar-tool-table-dimensions-columns\":\"Columns\",\"wikieditor-toolbar-tool-table-dimensions-header\":\"Add header row\",\"wikieditor-toolbar-tool-table-wikitable\":\"Style with borders\",\"wikieditor-toolbar-tool-table-sortable\":\"Make table sortable\",\"wikieditor-toolbar-tool-table-insert\":\"Insert\",\"wikieditor-toolbar-tool-table-cancel\":\"Cancel\",\"wikieditor-toolbar-tool-table-example-text\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut nec purus diam. Sed aliquam imperdiet nunc quis lacinia. Donec rutrum consectetur placerat. Sed volutpat neque non purus faucibus id ultricies enim euismod.\",\"wikieditor-toolbar-tool-table-toomany\":\"Inserting a table with more than $1 cells is not possible with this dialog.\",\"wikieditor-toolbar-tool-table-invalidnumber\":\"You have not entered a valid number of rows or columns.\",\"wikieditor-toolbar-tool-table-zero\":\"You cannot insert a table with zero rows or columns.\",\"wikieditor-toolbar-tool-replace\":\"Search and replace\",\"wikieditor-toolbar-tool-replace-title\":\"Search and replace\",\"wikieditor-toolbar-tool-replace-search\":\"Search for:\",\"wikieditor-toolbar-tool-replace-replace\":\"Replace with:\",\"wikieditor-toolbar-tool-replace-case\":\"Match case\",\"wikieditor-toolbar-tool-replace-regex\":\"Treat search string as a regular expression\",\"wikieditor-toolbar-tool-replace-button-findnext\":\"Find next\",\"wikieditor-toolbar-tool-replace-button-replacenext\":\"Replace next\",\"wikieditor-toolbar-tool-replace-button-replaceall\":\"Replace all\",\"wikieditor-toolbar-tool-replace-close\":\"Close\",\"wikieditor-toolbar-tool-replace-nomatch\":\"Your search did not match anything.\",\"wikieditor-toolbar-tool-replace-success\":\"$1 replacement(s) made.\",\"wikieditor-toolbar-tool-replace-emptysearch\":\"You did not enter anything to search for.\",\"wikieditor-toolbar-tool-replace-invalidregex\":\"The regular expression you entered is invalid: $1\",\"wikieditor-toolbar-section-characters\":\"Special characters\",\"wikieditor-toolbar-characters-page-latin\":\"Latin\",\"wikieditor-toolbar-characters-page-latinextended\":\"Latin extended\",\"wikieditor-toolbar-characters-page-ipa\":\"IPA\",\"wikieditor-toolbar-characters-page-symbols\":\"Symbols\",\"wikieditor-toolbar-characters-page-greek\":\"Greek\",\"wikieditor-toolbar-characters-page-cyrillic\":\"Cyrillic\",\"wikieditor-toolbar-characters-page-arabic\":\"Arabic\",\"wikieditor-toolbar-characters-page-persian\":\"Persian\",\"wikieditor-toolbar-characters-page-hebrew\":\"Hebrew\",\"wikieditor-toolbar-characters-page-bangla\":\"Bangla\",\"wikieditor-toolbar-characters-page-telugu\":\"Telugu\",\"wikieditor-toolbar-characters-page-sinhala\":\"Sinhala\",\"wikieditor-toolbar-characters-page-gujarati\":\"Gujarati\",\"wikieditor-toolbar-characters-page-thai\":\"Thai\",\"wikieditor-toolbar-characters-page-lao\":\"Lao\",\"wikieditor-toolbar-characters-page-khmer\":\"Khmer\",\"wikieditor-toolbar-section-help\":\"Help\",\"wikieditor-toolbar-help-heading-description\":\"Description\",\"wikieditor-toolbar-help-heading-syntax\":\"What you type\",\"wikieditor-toolbar-help-heading-result\":\"What you get\",\"wikieditor-toolbar-help-page-format\":\"Formatting\",\"wikieditor-toolbar-help-page-link\":\"Links\",\"wikieditor-toolbar-help-page-heading\":\"Headings\",\"wikieditor-toolbar-help-page-list\":\"Lists\",\"wikieditor-toolbar-help-page-file\":\"Files\",\"wikieditor-toolbar-help-page-reference\":\"References\",\"wikieditor-toolbar-help-page-discussion\":\"Discussion\",\"wikieditor-toolbar-help-content-bold-description\":\"Bold\",\"wikieditor-toolbar-help-content-bold-syntax\":\"\'\'\'Bold text\'\'\'\",\"wikieditor-toolbar-help-content-bold-result\":\"<strong>Bold text<\\/strong>\",\"wikieditor-toolbar-help-content-italic-description\":\"Italic\",\"wikieditor-toolbar-help-content-italic-syntax\":\"\'\'Italic text\'\'\",\"wikieditor-toolbar-help-content-italic-result\":\"<em>Italic text<\\/em>\",\"wikieditor-toolbar-help-content-bolditalic-description\":\"Bold & italic\",\"wikieditor-toolbar-help-content-bolditalic-syntax\":\"\'\'\'\'\'Bold & italic text\'\'\'\'\'\",\"wikieditor-toolbar-help-content-bolditalic-result\":\"<strong><em>Bold & italic text<\\/em><\\/strong>\",\"wikieditor-toolbar-help-content-ilink-description\":\"Internal link\",\"wikieditor-toolbar-help-content-ilink-syntax\":\"[[Page title|Link label]]<br \\/>[[Page title]]\",\"wikieditor-toolbar-help-content-ilink-result\":\"<a href=\'#\'>Link label<\\/a><br \\/><a href=\'#\'>Page title<\\/a>\",\"wikieditor-toolbar-help-content-xlink-description\":\"External link\",\"wikieditor-toolbar-help-content-xlink-syntax\":\"[http:\\/\\/www.example.org Link label]<br \\/>[http:\\/\\/www.example.org]<br \\/>http:\\/\\/www.example.org\",\"wikieditor-toolbar-help-content-xlink-result\":\"<a href=\'#\' class=\'external\'>Link label<\\/a><br \\/><a href=\'#\' class=\'external autonumber\'>[1]<\\/a><br \\/><a href=\'#\' class=\'external\'>http:\\/\\/www.example.org<\\/a>\",\"wikieditor-toolbar-help-content-heading1-description\":\"<wikieditor-toolbar-help-content-heading1-description>\",\"wikieditor-toolbar-help-content-heading1-syntax\":\"<wikieditor-toolbar-help-content-heading1-syntax>\",\"wikieditor-toolbar-help-content-heading1-result\":\"<wikieditor-toolbar-help-content-heading1-result>\",\"wikieditor-toolbar-help-content-heading2-description\":\"2nd level heading\",\"wikieditor-toolbar-help-content-heading2-syntax\":\"== Heading text ==\",\"wikieditor-toolbar-help-content-heading2-result\":\"<h2>Heading text<\\/h2>\",\"wikieditor-toolbar-help-content-heading3-description\":\"3rd level heading\",\"wikieditor-toolbar-help-content-heading3-syntax\":\"=== Heading text ===\",\"wikieditor-toolbar-help-content-heading3-result\":\"<h3>Heading text<\\/h3>\",\"wikieditor-toolbar-help-content-heading4-description\":\"4th level heading\",\"wikieditor-toolbar-help-content-heading4-syntax\":\"==== Heading text ====\",\"wikieditor-toolbar-help-content-heading4-result\":\"<h4>Heading text<\\/h4>\",\"wikieditor-toolbar-help-content-heading5-description\":\"5th level heading\",\"wikieditor-toolbar-help-content-heading5-syntax\":\"===== Heading text =====\",\"wikieditor-toolbar-help-content-heading5-result\":\"<h5>Heading text<\\/h5>\",\"wikieditor-toolbar-help-content-ulist-description\":\"Bulleted list\",\"wikieditor-toolbar-help-content-ulist-syntax\":\"* List item<br \\/>* List item\",\"wikieditor-toolbar-help-content-ulist-result\":\"<ul><li>List item<\\/li><li>List item<\\/li><\\/ul>\",\"wikieditor-toolbar-help-content-olist-description\":\"Numbered list\",\"wikieditor-toolbar-help-content-olist-syntax\":\"# List item<br \\/># List item\",\"wikieditor-toolbar-help-content-olist-result\":\"<ol><li>List item<\\/li><li>List item<\\/li><\\/ol>\",\"wikieditor-toolbar-help-content-file-description\":\"Embedded file\",\"wikieditor-toolbar-help-content-file-syntax\":\"[[{{ns:file}}:Example.png|thumb|Caption text]]\",\"wikieditor-toolbar-help-content-file-result\":\"<div style=\'width:104px;\' class=\'thumbinner\'><a title=\'Caption text\' class=\'image\' href=\'#\'><img height=\'50\' width=\'100\' border=\'0\' class=\'thumbimage\' src=\'extensions\\/UsabilityInitiative\\/images\\/wikiEditor\\/toolbar\\/example-image.png\' alt=\'\'\\/><\\/a><div class=\'thumbcaption\'><div class=\'magnify\'><a title=\'Enlarge\' class=\'internal\' href=\'#\'><img height=\'11\' width=\'15\' alt=\'\' src=\'$1\\/common\\/images\\/magnify-clip.png\'\\/><\\/a><\\/div>Caption text<\\/div><\\/div>\",\"wikieditor-toolbar-help-content-reference-description\":\"Reference\",\"wikieditor-toolbar-help-content-reference-syntax\":\"Page text.<ref name=\\\"test\\\">[http:\\/\\/www.example.org Link text], additional text.<\\/ref>\",\"wikieditor-toolbar-help-content-reference-result\":\"Page text.<sup><a href=\'#\'>[1]<\\/a><\\/sup>\",\"wikieditor-toolbar-help-content-rereference-description\":\"Additional use of same reference\",\"wikieditor-toolbar-help-content-rereference-syntax\":\"<ref name=\\\"test\\\" \\/>\",\"wikieditor-toolbar-help-content-rereference-result\":\"Page text.<sup><a href=\'#\'>[1]<\\/a><\\/sup>\",\"wikieditor-toolbar-help-content-showreferences-description\":\"Display references\",\"wikieditor-toolbar-help-content-showreferences-syntax\":\"<references \\/>\",\"wikieditor-toolbar-help-content-showreferences-result\":\"<ol class=\'references\'><li id=\'cite_note-test-0\'><b><a title=\'\' href=\'#\'>^<\\/a><\\/b> <a rel=\'nofollow\' title=\'http:\\/\\/www.example.org\' class=\'external text\' href=\'#\'>Link text<\\/a>, additional text.<\\/li><\\/ol>\",\"wikieditor-toolbar-help-content-signaturetimestamp-description\":\"Signature with timestamp\",\"wikieditor-toolbar-help-content-signaturetimestamp-syntax\":\"~~~~\",\"wikieditor-toolbar-help-content-signaturetimestamp-result\":\"<a href=\'#\' title=\'{{#special:mypage}}\'>Username<\\/a> (<a href=\'#\' title=\'{{#special:mytalk}}\'>talk<\\/a>) 15:54, 10 June 2009 (UTC)\",\"wikieditor-toolbar-help-content-signature-description\":\"Signature\",\"wikieditor-toolbar-help-content-signature-syntax\":\"~~~\",\"wikieditor-toolbar-help-content-signature-result\":\"<a href=\'#\' title=\'{{#special:mypage}}\'>Username<\\/a> (<a href=\'#\' title=\'{{#special:mytalk}}\'>talk<\\/a>)\",\"wikieditor-toolbar-help-content-indent-description\":\"Indent\",\"wikieditor-toolbar-help-content-indent-syntax\":\"Normal text<br \\/>:Indented text<br \\/>::Indented text\",\"wikieditor-toolbar-help-content-indent-result\":\"Normal text<dl><dd>Indented text<dl><dd>Indented text<\\/dd><\\/dl><\\/dd><\\/dl>\"}','20110110172914'),('jquery.async','en','{}','20110110172915'),('jquery.autoEllipsis','en','{}','20110110172915'),('jquery.checkboxShiftClick','en','{}','20110110172915'),('jquery.client','en','{}','20110110172915'),('jquery.cookie','en','{}','20110110172915'),('jquery.delayedBind','en','{}','20110110172915'),('jquery.highlightText','en','{}','20110110172915'),('jquery.makeCollapsible','en','{\"collapsible-expand\":\"Expand\",\"collapsible-collapse\":\"Collapse\"}','20110110172915'),('jquery.placeholder','en','{}','20110110172915'),('jquery.suggestions','en','{}','20110110172915'),('jquery.tabIndex','en','{}','20110110172915'),('jquery.textSelection','en','{}','20110110172915'),('jquery.wikiEditor','en','{\"wikieditor-wikitext-tab\":\"Wikitext\",\"wikieditor-loading\":\"Loading\"}','20110110172914'),('jquery.wikiEditor.toolbar','en','{}','20110110172914'),('mediawiki.action.watch.ajax','en','{}','20110110172915'),('mediawiki.language','en','{}','20110110172915'),('mediawiki.legacy.ajax','en','{\"watch\":\"Watch\",\"unwatch\":\"Unwatch\",\"watching\":\"Watching...\",\"unwatching\":\"Unwatching...\",\"tooltip-ca-watch\":\"Add this page to your watchlist\",\"tooltip-ca-unwatch\":\"Remove this page from your watchlist\"}','20110110172915'),('mediawiki.legacy.edit','en','{}','20110110172915'),('mediawiki.legacy.wikibits','en','{\"showtoc\":\"show\",\"hidetoc\":\"hide\"}','20110110172915'),('mediawiki.util','en','{}','20110110172915');
-/*!40000 ALTER TABLE `mw_msg_resource` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_msg_resource_links`
---
-
-DROP TABLE IF EXISTS `mw_msg_resource_links`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_msg_resource_links` (
- `mrl_resource` varbinary(255) NOT NULL,
- `mrl_message` varbinary(255) NOT NULL,
- UNIQUE KEY `mrl_message_resource` (`mrl_message`,`mrl_resource`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_msg_resource_links`
---
-
-LOCK TABLES `mw_msg_resource_links` WRITE;
-/*!40000 ALTER TABLE `mw_msg_resource_links` DISABLE KEYS */;
-INSERT INTO `mw_msg_resource_links` VALUES ('jquery.makeCollapsible','collapsible-collapse'),('jquery.makeCollapsible','collapsible-expand'),('mediawiki.legacy.wikibits','hidetoc'),('mediawiki.legacy.wikibits','showtoc'),('mediawiki.legacy.ajax','tooltip-ca-unwatch'),('mediawiki.legacy.ajax','tooltip-ca-watch'),('mediawiki.legacy.ajax','unwatch'),('mediawiki.legacy.ajax','unwatching'),('ext.vector.collapsibleNav','vector-collapsiblenav-more'),('ext.vector.simpleSearch','vector-simplesearch-containing'),('ext.vector.simpleSearch','vector-simplesearch-search'),('mediawiki.legacy.ajax','watch'),('mediawiki.legacy.ajax','watching'),('jquery.wikiEditor','wikieditor-loading'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-arabic'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-bangla'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-cyrillic'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-greek'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-gujarati'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-hebrew'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-ipa'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-khmer'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-lao'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-latin'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-latinextended'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-persian'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-sinhala'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-symbols'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-telugu'),('ext.wikiEditor.toolbar','wikieditor-toolbar-characters-page-thai'),('ext.wikiEditor.toolbar','wikieditor-toolbar-group-format'),('ext.wikiEditor.toolbar','wikieditor-toolbar-group-insert'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-bold-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-bold-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-bold-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-bolditalic-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-bolditalic-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-bolditalic-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-file-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-file-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-file-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading1-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading1-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading1-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading2-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading2-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading2-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading3-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading3-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading3-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading4-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading4-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading4-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading5-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading5-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-heading5-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-ilink-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-ilink-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-ilink-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-indent-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-indent-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-indent-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-italic-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-italic-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-italic-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-olist-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-olist-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-olist-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-reference-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-reference-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-reference-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-rereference-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-rereference-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-rereference-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-showreferences-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-showreferences-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-showreferences-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-signature-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-signature-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-signature-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-signaturetimestamp-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-signaturetimestamp-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-signaturetimestamp-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-ulist-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-ulist-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-ulist-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-xlink-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-xlink-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-content-xlink-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-heading-description'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-heading-result'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-heading-syntax'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-page-discussion'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-page-file'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-page-format'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-page-heading'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-page-link'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-page-list'),('ext.wikiEditor.toolbar','wikieditor-toolbar-help-page-reference'),('ext.wikiEditor.toolbar','wikieditor-toolbar-loading'),('ext.wikiEditor.toolbar','wikieditor-toolbar-section-advanced'),('ext.wikiEditor.toolbar','wikieditor-toolbar-section-characters'),('ext.wikiEditor.toolbar','wikieditor-toolbar-section-help'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-big'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-big-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-bold'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-bold-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-file'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-file-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-file-pre'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-gallery'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-gallery-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-heading'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-heading-1'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-heading-2'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-heading-3'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-heading-4'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-heading-5'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-heading-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-ilink'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-ilink-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-indent'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-indent-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-italic'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-italic-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-cancel'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-empty'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-ext'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-ext-target'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-ext-text'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-insert'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-invalid'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-target'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-target-status-exists'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-target-status-external'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-target-status-invalid'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-target-status-loading'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-target-status-notexists'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-target-tooltip'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-text'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-int-text-tooltip'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-lookslikeinternal'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-lookslikeinternal-ext'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-lookslikeinternal-int'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-link-title'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-newline'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-nowiki'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-nowiki-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-olist'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-olist-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-redirect'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-redirect-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-reference'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-reference-cancel'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-reference-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-reference-insert'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-reference-text'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-reference-title'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-button-findnext'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-button-replaceall'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-button-replacenext'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-case'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-close'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-emptysearch'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-invalidregex'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-nomatch'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-regex'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-replace'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-search'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-success'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-replace-title'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-signature'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-small'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-small-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-subscript'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-subscript-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-superscript'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-superscript-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-cancel'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-dimensions-columns'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-dimensions-header'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-dimensions-rows'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-example-cell-text'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-example-header'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-example-old'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-example-text'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-insert'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-invalidnumber'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-sortable'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-title'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-toomany'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-wikitable'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-table-zero'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-ulist'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-ulist-example'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-xlink'),('ext.wikiEditor.toolbar','wikieditor-toolbar-tool-xlink-example'),('jquery.wikiEditor','wikieditor-wikitext-tab');
-/*!40000 ALTER TABLE `mw_msg_resource_links` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_objectcache`
---
-
-DROP TABLE IF EXISTS `mw_objectcache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_objectcache` (
- `keyname` varbinary(255) NOT NULL DEFAULT '',
- `value` mediumblob,
- `exptime` datetime DEFAULT NULL,
- PRIMARY KEY (`keyname`),
- KEY `exptime` (`exptime`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_objectcache`
---
-
-LOCK TABLES `mw_objectcache` WRITE;
-/*!40000 ALTER TABLE `mw_objectcache` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_objectcache` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_oldimage`
---
-
-DROP TABLE IF EXISTS `mw_oldimage`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_oldimage` (
- `oi_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `oi_archive_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `oi_size` int(10) unsigned NOT NULL DEFAULT '0',
- `oi_width` int(11) NOT NULL DEFAULT '0',
- `oi_height` int(11) NOT NULL DEFAULT '0',
- `oi_bits` int(11) NOT NULL DEFAULT '0',
- `oi_description` tinyblob NOT NULL,
- `oi_user` int(10) unsigned NOT NULL DEFAULT '0',
- `oi_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `oi_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `oi_metadata` mediumblob NOT NULL,
- `oi_media_type` enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') DEFAULT NULL,
- `oi_major_mime` enum('unknown','application','audio','image','text','video','message','model','multipart') NOT NULL DEFAULT 'unknown',
- `oi_minor_mime` varbinary(100) NOT NULL DEFAULT 'unknown',
- `oi_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `oi_sha1` varbinary(32) NOT NULL DEFAULT '',
- KEY `oi_usertext_timestamp` (`oi_user_text`,`oi_timestamp`),
- KEY `oi_name_timestamp` (`oi_name`,`oi_timestamp`),
- KEY `oi_name_archive_name` (`oi_name`,`oi_archive_name`(14)),
- KEY `oi_sha1` (`oi_sha1`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_oldimage`
---
-
-LOCK TABLES `mw_oldimage` WRITE;
-/*!40000 ALTER TABLE `mw_oldimage` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_oldimage` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_page`
---
-
-DROP TABLE IF EXISTS `mw_page`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_page` (
- `page_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `page_namespace` int(11) NOT NULL,
- `page_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `page_restrictions` tinyblob NOT NULL,
- `page_counter` bigint(20) unsigned NOT NULL DEFAULT '0',
- `page_is_redirect` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `page_is_new` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `page_random` double unsigned NOT NULL,
- `page_touched` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `page_latest` int(10) unsigned NOT NULL,
- `page_len` int(10) unsigned NOT NULL,
- PRIMARY KEY (`page_id`),
- UNIQUE KEY `name_title` (`page_namespace`,`page_title`),
- KEY `page_random` (`page_random`),
- KEY `page_len` (`page_len`)
-) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_page`
---
-
-LOCK TABLES `mw_page` WRITE;
-/*!40000 ALTER TABLE `mw_page` DISABLE KEYS */;
-INSERT INTO `mw_page` VALUES (1,0,'Main_Page','',3,0,1,0.045389076294,'20110107184113',1,438),(2,0,'TestResources','',0,0,1,0.227355086893,'20110110173217',2,57);
-/*!40000 ALTER TABLE `mw_page` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_page_props`
---
-
-DROP TABLE IF EXISTS `mw_page_props`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_page_props` (
- `pp_page` int(11) NOT NULL,
- `pp_propname` varbinary(60) NOT NULL,
- `pp_value` blob NOT NULL,
- UNIQUE KEY `pp_page_propname` (`pp_page`,`pp_propname`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_page_props`
---
-
-LOCK TABLES `mw_page_props` WRITE;
-/*!40000 ALTER TABLE `mw_page_props` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_page_props` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_page_restrictions`
---
-
-DROP TABLE IF EXISTS `mw_page_restrictions`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_page_restrictions` (
- `pr_page` int(11) NOT NULL,
- `pr_type` varbinary(60) NOT NULL,
- `pr_level` varbinary(60) NOT NULL,
- `pr_cascade` tinyint(4) NOT NULL,
- `pr_user` int(11) DEFAULT NULL,
- `pr_expiry` varbinary(14) DEFAULT NULL,
- `pr_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- PRIMARY KEY (`pr_id`),
- UNIQUE KEY `pr_pagetype` (`pr_page`,`pr_type`),
- KEY `pr_typelevel` (`pr_type`,`pr_level`),
- KEY `pr_level` (`pr_level`),
- KEY `pr_cascade` (`pr_cascade`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_page_restrictions`
---
-
-LOCK TABLES `mw_page_restrictions` WRITE;
-/*!40000 ALTER TABLE `mw_page_restrictions` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_page_restrictions` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_pagelinks`
---
-
-DROP TABLE IF EXISTS `mw_pagelinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_pagelinks` (
- `pl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `pl_namespace` int(11) NOT NULL DEFAULT '0',
- `pl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `pl_from` (`pl_from`,`pl_namespace`,`pl_title`),
- UNIQUE KEY `pl_namespace` (`pl_namespace`,`pl_title`,`pl_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_pagelinks`
---
-
-LOCK TABLES `mw_pagelinks` WRITE;
-/*!40000 ALTER TABLE `mw_pagelinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_pagelinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_protected_titles`
---
-
-DROP TABLE IF EXISTS `mw_protected_titles`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_protected_titles` (
- `pt_namespace` int(11) NOT NULL,
- `pt_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `pt_user` int(10) unsigned NOT NULL,
- `pt_reason` tinyblob,
- `pt_timestamp` binary(14) NOT NULL,
- `pt_expiry` varbinary(14) NOT NULL DEFAULT '',
- `pt_create_perm` varbinary(60) NOT NULL,
- UNIQUE KEY `pt_namespace_title` (`pt_namespace`,`pt_title`),
- KEY `pt_timestamp` (`pt_timestamp`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_protected_titles`
---
-
-LOCK TABLES `mw_protected_titles` WRITE;
-/*!40000 ALTER TABLE `mw_protected_titles` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_protected_titles` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_querycache`
---
-
-DROP TABLE IF EXISTS `mw_querycache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_querycache` (
- `qc_type` varbinary(32) NOT NULL,
- `qc_value` int(10) unsigned NOT NULL DEFAULT '0',
- `qc_namespace` int(11) NOT NULL DEFAULT '0',
- `qc_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- KEY `qc_type` (`qc_type`,`qc_value`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_querycache`
---
-
-LOCK TABLES `mw_querycache` WRITE;
-/*!40000 ALTER TABLE `mw_querycache` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_querycache` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_querycache_info`
---
-
-DROP TABLE IF EXISTS `mw_querycache_info`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_querycache_info` (
- `qci_type` varbinary(32) NOT NULL DEFAULT '',
- `qci_timestamp` binary(14) NOT NULL DEFAULT '19700101000000',
- UNIQUE KEY `qci_type` (`qci_type`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_querycache_info`
---
-
-LOCK TABLES `mw_querycache_info` WRITE;
-/*!40000 ALTER TABLE `mw_querycache_info` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_querycache_info` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_querycachetwo`
---
-
-DROP TABLE IF EXISTS `mw_querycachetwo`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_querycachetwo` (
- `qcc_type` varbinary(32) NOT NULL,
- `qcc_value` int(10) unsigned NOT NULL DEFAULT '0',
- `qcc_namespace` int(11) NOT NULL DEFAULT '0',
- `qcc_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `qcc_namespacetwo` int(11) NOT NULL DEFAULT '0',
- `qcc_titletwo` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- KEY `qcc_type` (`qcc_type`,`qcc_value`),
- KEY `qcc_title` (`qcc_type`,`qcc_namespace`,`qcc_title`),
- KEY `qcc_titletwo` (`qcc_type`,`qcc_namespacetwo`,`qcc_titletwo`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_querycachetwo`
---
-
-LOCK TABLES `mw_querycachetwo` WRITE;
-/*!40000 ALTER TABLE `mw_querycachetwo` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_querycachetwo` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_recentchanges`
---
-
-DROP TABLE IF EXISTS `mw_recentchanges`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_recentchanges` (
- `rc_id` int(11) NOT NULL AUTO_INCREMENT,
- `rc_timestamp` varbinary(14) NOT NULL DEFAULT '',
- `rc_cur_time` varbinary(14) NOT NULL DEFAULT '',
- `rc_user` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `rc_namespace` int(11) NOT NULL DEFAULT '0',
- `rc_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rc_comment` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rc_minor` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_bot` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_new` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_cur_id` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_this_oldid` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_last_oldid` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_type` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_moved_to_ns` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_moved_to_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rc_patrolled` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_ip` varbinary(40) NOT NULL DEFAULT '',
- `rc_old_len` int(11) DEFAULT NULL,
- `rc_new_len` int(11) DEFAULT NULL,
- `rc_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_logid` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_log_type` varbinary(255) DEFAULT NULL,
- `rc_log_action` varbinary(255) DEFAULT NULL,
- `rc_params` blob,
- PRIMARY KEY (`rc_id`),
- KEY `rc_timestamp` (`rc_timestamp`),
- KEY `rc_namespace_title` (`rc_namespace`,`rc_title`),
- KEY `rc_cur_id` (`rc_cur_id`),
- KEY `new_name_timestamp` (`rc_new`,`rc_namespace`,`rc_timestamp`),
- KEY `rc_ip` (`rc_ip`),
- KEY `rc_ns_usertext` (`rc_namespace`,`rc_user_text`),
- KEY `rc_user_text` (`rc_user_text`,`rc_timestamp`)
-) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_recentchanges`
---
-
-LOCK TABLES `mw_recentchanges` WRITE;
-/*!40000 ALTER TABLE `mw_recentchanges` DISABLE KEYS */;
-INSERT INTO `mw_recentchanges` VALUES (1,'20110107184113','20110107184113',0,'MediaWiki Default',0,'Main_Page','',0,0,1,1,1,0,1,0,'',0,'::1',0,438,0,0,NULL,'',''),(2,'20110110173131','20110110173131',1,'WikiSysop',0,'TestResources','Created page with \"Test the the SimpleSelenium database was loaded correctly\"',0,0,1,2,2,0,1,0,'',1,'::1',0,57,0,0,NULL,'','');
-/*!40000 ALTER TABLE `mw_recentchanges` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_redirect`
---
-
-DROP TABLE IF EXISTS `mw_redirect`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_redirect` (
- `rd_from` int(10) unsigned NOT NULL DEFAULT '0',
- `rd_namespace` int(11) NOT NULL DEFAULT '0',
- `rd_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rd_interwiki` varchar(32) DEFAULT NULL,
- `rd_fragment` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
- PRIMARY KEY (`rd_from`),
- KEY `rd_ns_title` (`rd_namespace`,`rd_title`,`rd_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_redirect`
---
-
-LOCK TABLES `mw_redirect` WRITE;
-/*!40000 ALTER TABLE `mw_redirect` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_redirect` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_revision`
---
-
-DROP TABLE IF EXISTS `mw_revision`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_revision` (
- `rev_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `rev_page` int(10) unsigned NOT NULL,
- `rev_text_id` int(10) unsigned NOT NULL,
- `rev_comment` tinyblob NOT NULL,
- `rev_user` int(10) unsigned NOT NULL DEFAULT '0',
- `rev_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rev_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `rev_minor_edit` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rev_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rev_len` int(10) unsigned DEFAULT NULL,
- `rev_parent_id` int(10) unsigned DEFAULT NULL,
- PRIMARY KEY (`rev_id`),
- UNIQUE KEY `rev_page_id` (`rev_page`,`rev_id`),
- KEY `rev_timestamp` (`rev_timestamp`),
- KEY `page_timestamp` (`rev_page`,`rev_timestamp`),
- KEY `user_timestamp` (`rev_user`,`rev_timestamp`),
- KEY `usertext_timestamp` (`rev_user_text`,`rev_timestamp`)
-) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 MAX_ROWS=10000000 AVG_ROW_LENGTH=1024;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_revision`
---
-
-LOCK TABLES `mw_revision` WRITE;
-/*!40000 ALTER TABLE `mw_revision` DISABLE KEYS */;
-INSERT INTO `mw_revision` VALUES (1,1,1,'',0,'MediaWiki Default','20110107184113',0,0,438,0),(2,2,2,'Created page with \"Test the the SimpleSelenium database was loaded correctly\"',1,'WikiSysop','20110110173131',0,0,57,0);
-/*!40000 ALTER TABLE `mw_revision` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_searchindex`
---
-
-DROP TABLE IF EXISTS `mw_searchindex`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_searchindex` (
- `si_page` int(10) unsigned NOT NULL,
- `si_title` varchar(255) NOT NULL DEFAULT '',
- `si_text` mediumtext NOT NULL,
- UNIQUE KEY `si_page` (`si_page`),
- FULLTEXT KEY `si_title` (`si_title`),
- FULLTEXT KEY `si_text` (`si_text`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_searchindex`
---
-
-LOCK TABLES `mw_searchindex` WRITE;
-/*!40000 ALTER TABLE `mw_searchindex` DISABLE KEYS */;
-INSERT INTO `mw_searchindex` VALUES (1,'main page',' mediawiki hasu800 been successfully installed. consult theu800 user user\'su800 guide foru800 information onu800 using theu800 wiki software. getting started getting started getting started configuration settings list mediawiki faqu800 mediawiki release mailing list '),(2,'testresources',' test theu800 theu800 simpleselenium database wasu800 loaded correctly ');
-/*!40000 ALTER TABLE `mw_searchindex` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_site_stats`
---
-
-DROP TABLE IF EXISTS `mw_site_stats`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_site_stats` (
- `ss_row_id` int(10) unsigned NOT NULL,
- `ss_total_views` bigint(20) unsigned DEFAULT '0',
- `ss_total_edits` bigint(20) unsigned DEFAULT '0',
- `ss_good_articles` bigint(20) unsigned DEFAULT '0',
- `ss_total_pages` bigint(20) DEFAULT '-1',
- `ss_users` bigint(20) DEFAULT '-1',
- `ss_active_users` bigint(20) DEFAULT '-1',
- `ss_admins` int(11) DEFAULT '-1',
- `ss_images` int(11) DEFAULT '0',
- UNIQUE KEY `ss_row_id` (`ss_row_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_site_stats`
---
-
-LOCK TABLES `mw_site_stats` WRITE;
-/*!40000 ALTER TABLE `mw_site_stats` DISABLE KEYS */;
-INSERT INTO `mw_site_stats` VALUES (1,3,2,1,2,1,-1,-1,0);
-/*!40000 ALTER TABLE `mw_site_stats` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_tag_summary`
---
-
-DROP TABLE IF EXISTS `mw_tag_summary`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_tag_summary` (
- `ts_rc_id` int(11) DEFAULT NULL,
- `ts_log_id` int(11) DEFAULT NULL,
- `ts_rev_id` int(11) DEFAULT NULL,
- `ts_tags` blob NOT NULL,
- UNIQUE KEY `tag_summary_rc_id` (`ts_rc_id`),
- UNIQUE KEY `tag_summary_log_id` (`ts_log_id`),
- UNIQUE KEY `tag_summary_rev_id` (`ts_rev_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_tag_summary`
---
-
-LOCK TABLES `mw_tag_summary` WRITE;
-/*!40000 ALTER TABLE `mw_tag_summary` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_tag_summary` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_templatelinks`
---
-
-DROP TABLE IF EXISTS `mw_templatelinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_templatelinks` (
- `tl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `tl_namespace` int(11) NOT NULL DEFAULT '0',
- `tl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `tl_from` (`tl_from`,`tl_namespace`,`tl_title`),
- UNIQUE KEY `tl_namespace` (`tl_namespace`,`tl_title`,`tl_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_templatelinks`
---
-
-LOCK TABLES `mw_templatelinks` WRITE;
-/*!40000 ALTER TABLE `mw_templatelinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_templatelinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_text`
---
-
-DROP TABLE IF EXISTS `mw_text`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_text` (
- `old_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `old_text` mediumblob NOT NULL,
- `old_flags` tinyblob NOT NULL,
- PRIMARY KEY (`old_id`)
-) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 MAX_ROWS=10000000 AVG_ROW_LENGTH=10240;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_text`
---
-
-LOCK TABLES `mw_text` WRITE;
-/*!40000 ALTER TABLE `mw_text` DISABLE KEYS */;
-INSERT INTO `mw_text` VALUES (1,'\'\'\'MediaWiki has been successfully installed.\'\'\'\n\nConsult the [http://meta.wikimedia.org/wiki/Help:Contents User\'s Guide] for information on using the wiki software.\n\n== Getting started ==\n* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]\n* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]','utf-8'),(2,'Test the the SimpleSelenium database was loaded correctly','utf-8');
-/*!40000 ALTER TABLE `mw_text` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_trackbacks`
---
-
-DROP TABLE IF EXISTS `mw_trackbacks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_trackbacks` (
- `tb_id` int(11) NOT NULL AUTO_INCREMENT,
- `tb_page` int(11) DEFAULT NULL,
- `tb_title` varchar(255) NOT NULL,
- `tb_url` blob NOT NULL,
- `tb_ex` text,
- `tb_name` varchar(255) DEFAULT NULL,
- PRIMARY KEY (`tb_id`),
- KEY `tb_page` (`tb_page`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_trackbacks`
---
-
-LOCK TABLES `mw_trackbacks` WRITE;
-/*!40000 ALTER TABLE `mw_trackbacks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_trackbacks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_transcache`
---
-
-DROP TABLE IF EXISTS `mw_transcache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_transcache` (
- `tc_url` varbinary(255) NOT NULL,
- `tc_contents` text,
- `tc_time` binary(14) DEFAULT NULL,
- UNIQUE KEY `tc_url_idx` (`tc_url`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_transcache`
---
-
-LOCK TABLES `mw_transcache` WRITE;
-/*!40000 ALTER TABLE `mw_transcache` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_transcache` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_updatelog`
---
-
-DROP TABLE IF EXISTS `mw_updatelog`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_updatelog` (
- `ul_key` varchar(255) NOT NULL,
- `ul_value` blob,
- PRIMARY KEY (`ul_key`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_updatelog`
---
-
-LOCK TABLES `mw_updatelog` WRITE;
-/*!40000 ALTER TABLE `mw_updatelog` DISABLE KEYS */;
-INSERT INTO `mw_updatelog` VALUES ('cl_fields_update',NULL),('convert transcache field',NULL),('mime_minor_length',NULL),('populate category',NULL),('populate rev_len',NULL),('populate rev_parent_id',NULL),('updatelist-1.18alpha-1294425799','a:128:{i:0;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:6:\"ipb_id\";i:3;s:18:\"patch-ipblocks.sql\";}i:1;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:10:\"ipb_expiry\";i:3;s:20:\"patch-ipb_expiry.sql\";}i:2;a:1:{i:0;s:17:\"doInterwikiUpdate\";}i:3;a:1:{i:0;s:13:\"doIndexUpdate\";}i:4;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"hitcounter\";i:2;s:20:\"patch-hitcounter.sql\";}i:5;a:4:{i:0;s:8:\"addField\";i:1;s:13:\"recentchanges\";i:2;s:7:\"rc_type\";i:3;s:17:\"patch-rc_type.sql\";}i:6;a:4:{i:0;s:8:\"addField\";i:1;s:4:\"user\";i:2;s:14:\"user_real_name\";i:3;s:23:\"patch-user-realname.sql\";}i:7;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"querycache\";i:2;s:20:\"patch-querycache.sql\";}i:8;a:3:{i:0;s:8:\"addTable\";i:1;s:11:\"objectcache\";i:2;s:21:\"patch-objectcache.sql\";}i:9;a:3:{i:0;s:8:\"addTable\";i:1;s:13:\"categorylinks\";i:2;s:23:\"patch-categorylinks.sql\";}i:10;a:1:{i:0;s:16:\"doOldLinksUpdate\";}i:11;a:1:{i:0;s:22:\"doFixAncientImagelinks\";}i:12;a:4:{i:0;s:8:\"addField\";i:1;s:13:\"recentchanges\";i:2;s:5:\"rc_ip\";i:3;s:15:\"patch-rc_ip.sql\";}i:13;a:4:{i:0;s:8:\"addIndex\";i:1;s:5:\"image\";i:2;s:7:\"PRIMARY\";i:3;s:28:\"patch-image_name_primary.sql\";}i:14;a:4:{i:0;s:8:\"addField\";i:1;s:13:\"recentchanges\";i:2;s:5:\"rc_id\";i:3;s:15:\"patch-rc_id.sql\";}i:15;a:4:{i:0;s:8:\"addField\";i:1;s:13:\"recentchanges\";i:2;s:12:\"rc_patrolled\";i:3;s:19:\"patch-rc-patrol.sql\";}i:16;a:3:{i:0;s:8:\"addTable\";i:1;s:7:\"logging\";i:2;s:17:\"patch-logging.sql\";}i:17;a:4:{i:0;s:8:\"addField\";i:1;s:4:\"user\";i:2;s:10:\"user_token\";i:3;s:20:\"patch-user_token.sql\";}i:18;a:4:{i:0;s:8:\"addField\";i:1;s:9:\"watchlist\";i:2;s:24:\"wl_notificationtimestamp\";i:3;s:28:\"patch-email-notification.sql\";}i:19;a:1:{i:0;s:17:\"doWatchlistUpdate\";}i:20;a:4:{i:0;s:9:\"dropField\";i:1;s:4:\"user\";i:2;s:33:\"user_emailauthenticationtimestamp\";i:3;s:30:\"patch-email-authentication.sql\";}i:21;a:1:{i:0;s:21:\"doSchemaRestructuring\";}i:22;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"logging\";i:2;s:10:\"log_params\";i:3;s:20:\"patch-log_params.sql\";}i:23;a:4:{i:0;s:8:\"checkBin\";i:1;s:7:\"logging\";i:2;s:9:\"log_title\";i:3;s:23:\"patch-logging-title.sql\";}i:24;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"archive\";i:2;s:9:\"ar_rev_id\";i:3;s:24:\"patch-archive-rev_id.sql\";}i:25;a:4:{i:0;s:8:\"addField\";i:1;s:4:\"page\";i:2;s:8:\"page_len\";i:3;s:18:\"patch-page_len.sql\";}i:26;a:4:{i:0;s:9:\"dropField\";i:1;s:8:\"revision\";i:2;s:17:\"inverse_timestamp\";i:3;s:27:\"patch-inverse_timestamp.sql\";}i:27;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"revision\";i:2;s:11:\"rev_text_id\";i:3;s:21:\"patch-rev_text_id.sql\";}i:28;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"revision\";i:2;s:11:\"rev_deleted\";i:3;s:21:\"patch-rev_deleted.sql\";}i:29;a:4:{i:0;s:8:\"addField\";i:1;s:5:\"image\";i:2;s:9:\"img_width\";i:3;s:19:\"patch-img_width.sql\";}i:30;a:4:{i:0;s:8:\"addField\";i:1;s:5:\"image\";i:2;s:12:\"img_metadata\";i:3;s:22:\"patch-img_metadata.sql\";}i:31;a:4:{i:0;s:8:\"addField\";i:1;s:4:\"user\";i:2;s:16:\"user_email_token\";i:3;s:26:\"patch-user_email_token.sql\";}i:32;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"archive\";i:2;s:10:\"ar_text_id\";i:3;s:25:\"patch-archive-text_id.sql\";}i:33;a:1:{i:0;s:15:\"doNamespaceSize\";}i:34;a:4:{i:0;s:8:\"addField\";i:1;s:5:\"image\";i:2;s:14:\"img_media_type\";i:3;s:24:\"patch-img_media_type.sql\";}i:35;a:1:{i:0;s:17:\"doPagelinksUpdate\";}i:36;a:4:{i:0;s:9:\"dropField\";i:1;s:5:\"image\";i:2;s:8:\"img_type\";i:3;s:23:\"patch-drop_img_type.sql\";}i:37;a:1:{i:0;s:18:\"doUserUniqueUpdate\";}i:38;a:1:{i:0;s:18:\"doUserGroupsUpdate\";}i:39;a:4:{i:0;s:8:\"addField\";i:1;s:10:\"site_stats\";i:2;s:14:\"ss_total_pages\";i:3;s:27:\"patch-ss_total_articles.sql\";}i:40;a:3:{i:0;s:8:\"addTable\";i:1;s:12:\"user_newtalk\";i:2;s:22:\"patch-usernewtalk2.sql\";}i:41;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"transcache\";i:2;s:20:\"patch-transcache.sql\";}i:42;a:4:{i:0;s:8:\"addField\";i:1;s:9:\"interwiki\";i:2;s:8:\"iw_trans\";i:3;s:25:\"patch-interwiki-trans.sql\";}i:43;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"trackbacks\";i:2;s:20:\"patch-trackbacks.sql\";}i:44;a:1:{i:0;s:15:\"doWatchlistNull\";}i:45;a:4:{i:0;s:8:\"addIndex\";i:1;s:7:\"logging\";i:2;s:5:\"times\";i:3;s:29:\"patch-logging-times-index.sql\";}i:46;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:15:\"ipb_range_start\";i:3;s:25:\"patch-ipb_range_start.sql\";}i:47;a:1:{i:0;s:18:\"doPageRandomUpdate\";}i:48;a:4:{i:0;s:8:\"addField\";i:1;s:4:\"user\";i:2;s:17:\"user_registration\";i:3;s:27:\"patch-user_registration.sql\";}i:49;a:1:{i:0;s:21:\"doTemplatelinksUpdate\";}i:50;a:3:{i:0;s:8:\"addTable\";i:1;s:13:\"externallinks\";i:2;s:23:\"patch-externallinks.sql\";}i:51;a:3:{i:0;s:8:\"addTable\";i:1;s:3:\"job\";i:2;s:13:\"patch-job.sql\";}i:52;a:4:{i:0;s:8:\"addField\";i:1;s:10:\"site_stats\";i:2;s:9:\"ss_images\";i:3;s:19:\"patch-ss_images.sql\";}i:53;a:3:{i:0;s:8:\"addTable\";i:1;s:9:\"langlinks\";i:2;s:19:\"patch-langlinks.sql\";}i:54;a:3:{i:0;s:8:\"addTable\";i:1;s:15:\"querycache_info\";i:2;s:24:\"patch-querycacheinfo.sql\";}i:55;a:3:{i:0;s:8:\"addTable\";i:1;s:11:\"filearchive\";i:2;s:21:\"patch-filearchive.sql\";}i:56;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:13:\"ipb_anon_only\";i:3;s:23:\"patch-ipb_anon_only.sql\";}i:57;a:4:{i:0;s:8:\"addIndex\";i:1;s:13:\"recentchanges\";i:2;s:14:\"rc_ns_usertext\";i:3;s:31:\"patch-recentchanges-utindex.sql\";}i:58;a:4:{i:0;s:8:\"addIndex\";i:1;s:13:\"recentchanges\";i:2;s:12:\"rc_user_text\";i:3;s:28:\"patch-rc_user_text-index.sql\";}i:59;a:4:{i:0;s:8:\"addField\";i:1;s:4:\"user\";i:2;s:17:\"user_newpass_time\";i:3;s:27:\"patch-user_newpass_time.sql\";}i:60;a:3:{i:0;s:8:\"addTable\";i:1;s:8:\"redirect\";i:2;s:18:\"patch-redirect.sql\";}i:61;a:3:{i:0;s:8:\"addTable\";i:1;s:13:\"querycachetwo\";i:2;s:23:\"patch-querycachetwo.sql\";}i:62;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:20:\"ipb_enable_autoblock\";i:3;s:32:\"patch-ipb_optional_autoblock.sql\";}i:63;a:1:{i:0;s:26:\"doBacklinkingIndicesUpdate\";}i:64;a:4:{i:0;s:8:\"addField\";i:1;s:13:\"recentchanges\";i:2;s:10:\"rc_old_len\";i:3;s:16:\"patch-rc_len.sql\";}i:65;a:4:{i:0;s:8:\"addField\";i:1;s:4:\"user\";i:2;s:14:\"user_editcount\";i:3;s:24:\"patch-user_editcount.sql\";}i:66;a:1:{i:0;s:20:\"doRestrictionsUpdate\";}i:67;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"logging\";i:2;s:6:\"log_id\";i:3;s:16:\"patch-log_id.sql\";}i:68;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"revision\";i:2;s:13:\"rev_parent_id\";i:3;s:23:\"patch-rev_parent_id.sql\";}i:69;a:4:{i:0;s:8:\"addField\";i:1;s:17:\"page_restrictions\";i:2;s:5:\"pr_id\";i:3;s:35:\"patch-page_restrictions_sortkey.sql\";}i:70;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"revision\";i:2;s:7:\"rev_len\";i:3;s:17:\"patch-rev_len.sql\";}i:71;a:4:{i:0;s:8:\"addField\";i:1;s:13:\"recentchanges\";i:2;s:10:\"rc_deleted\";i:3;s:20:\"patch-rc_deleted.sql\";}i:72;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"logging\";i:2;s:11:\"log_deleted\";i:3;s:21:\"patch-log_deleted.sql\";}i:73;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"archive\";i:2;s:10:\"ar_deleted\";i:3;s:20:\"patch-ar_deleted.sql\";}i:74;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:11:\"ipb_deleted\";i:3;s:21:\"patch-ipb_deleted.sql\";}i:75;a:4:{i:0;s:8:\"addField\";i:1;s:11:\"filearchive\";i:2;s:10:\"fa_deleted\";i:3;s:20:\"patch-fa_deleted.sql\";}i:76;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"archive\";i:2;s:6:\"ar_len\";i:3;s:16:\"patch-ar_len.sql\";}i:77;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:15:\"ipb_block_email\";i:3;s:22:\"patch-ipb_emailban.sql\";}i:78;a:1:{i:0;s:28:\"doCategorylinksIndicesUpdate\";}i:79;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"oldimage\";i:2;s:11:\"oi_metadata\";i:3;s:21:\"patch-oi_metadata.sql\";}i:80;a:4:{i:0;s:8:\"addIndex\";i:1;s:7:\"archive\";i:2;s:18:\"usertext_timestamp\";i:3;s:28:\"patch-archive-user-index.sql\";}i:81;a:4:{i:0;s:8:\"addIndex\";i:1;s:5:\"image\";i:2;s:22:\"img_usertext_timestamp\";i:3;s:26:\"patch-image-user-index.sql\";}i:82;a:4:{i:0;s:8:\"addIndex\";i:1;s:8:\"oldimage\";i:2;s:21:\"oi_usertext_timestamp\";i:3;s:29:\"patch-oldimage-user-index.sql\";}i:83;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"archive\";i:2;s:10:\"ar_page_id\";i:3;s:25:\"patch-archive-page_id.sql\";}i:84;a:4:{i:0;s:8:\"addField\";i:1;s:5:\"image\";i:2;s:8:\"img_sha1\";i:3;s:18:\"patch-img_sha1.sql\";}i:85;a:3:{i:0;s:8:\"addTable\";i:1;s:16:\"protected_titles\";i:2;s:26:\"patch-protected_titles.sql\";}i:86;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:11:\"ipb_by_text\";i:3;s:21:\"patch-ipb_by_text.sql\";}i:87;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"page_props\";i:2;s:20:\"patch-page_props.sql\";}i:88;a:3:{i:0;s:8:\"addTable\";i:1;s:9:\"updatelog\";i:2;s:19:\"patch-updatelog.sql\";}i:89;a:3:{i:0;s:8:\"addTable\";i:1;s:8:\"category\";i:2;s:18:\"patch-category.sql\";}i:90;a:1:{i:0;s:20:\"doCategoryPopulation\";}i:91;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"archive\";i:2;s:12:\"ar_parent_id\";i:3;s:22:\"patch-ar_parent_id.sql\";}i:92;a:4:{i:0;s:8:\"addField\";i:1;s:12:\"user_newtalk\";i:2;s:19:\"user_last_timestamp\";i:3;s:29:\"patch-user_last_timestamp.sql\";}i:93;a:1:{i:0;s:18:\"doPopulateParentId\";}i:94;a:4:{i:0;s:8:\"checkBin\";i:1;s:16:\"protected_titles\";i:2;s:8:\"pt_title\";i:3;s:27:\"patch-pt_title-encoding.sql\";}i:95;a:1:{i:0;s:28:\"doMaybeProfilingMemoryUpdate\";}i:96;a:1:{i:0;s:26:\"doFilearchiveIndicesUpdate\";}i:97;a:4:{i:0;s:8:\"addField\";i:1;s:10:\"site_stats\";i:2;s:15:\"ss_active_users\";i:3;s:25:\"patch-ss_active_users.sql\";}i:98;a:1:{i:0;s:17:\"doActiveUsersInit\";}i:99;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"ipblocks\";i:2;s:18:\"ipb_allow_usertalk\";i:3;s:28:\"patch-ipb_allow_usertalk.sql\";}i:100;a:1:{i:0;s:14:\"doUniquePlTlIl\";}i:101;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"change_tag\";i:2;s:20:\"patch-change_tag.sql\";}i:102;a:3:{i:0;s:8:\"addTable\";i:1;s:11:\"tag_summary\";i:2;s:20:\"patch-change_tag.sql\";}i:103;a:3:{i:0;s:8:\"addTable\";i:1;s:9:\"valid_tag\";i:2;s:20:\"patch-change_tag.sql\";}i:104;a:3:{i:0;s:8:\"addTable\";i:1;s:15:\"user_properties\";i:2;s:25:\"patch-user_properties.sql\";}i:105;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"log_search\";i:2;s:20:\"patch-log_search.sql\";}i:106;a:1:{i:0;s:21:\"doLogSearchPopulation\";}i:107;a:4:{i:0;s:8:\"addField\";i:1;s:7:\"logging\";i:2;s:13:\"log_user_text\";i:3;s:23:\"patch-log_user_text.sql\";}i:108;a:3:{i:0;s:8:\"addTable\";i:1;s:10:\"l10n_cache\";i:2;s:20:\"patch-l10n_cache.sql\";}i:109;a:3:{i:0;s:8:\"addTable\";i:1;s:13:\"external_user\";i:2;s:23:\"patch-external_user.sql\";}i:110;a:4:{i:0;s:8:\"addIndex\";i:1;s:10:\"log_search\";i:2;s:12:\"ls_field_val\";i:3;s:33:\"patch-log_search-rename-index.sql\";}i:111;a:4:{i:0;s:8:\"addIndex\";i:1;s:10:\"change_tag\";i:2;s:17:\"change_tag_rc_tag\";i:3;s:28:\"patch-change_tag-indexes.sql\";}i:112;a:4:{i:0;s:8:\"addField\";i:1;s:8:\"redirect\";i:2;s:12:\"rd_interwiki\";i:3;s:22:\"patch-rd_interwiki.sql\";}i:113;a:1:{i:0;s:23:\"doUpdateTranscacheField\";}i:114;a:1:{i:0;s:14:\"renameEuWikiId\";}i:115;a:1:{i:0;s:22:\"doUpdateMimeMinorField\";}i:116;a:1:{i:0;s:16:\"doPopulateRevLen\";}i:117;a:3:{i:0;s:8:\"addTable\";i:1;s:7:\"iwlinks\";i:2;s:17:\"patch-iwlinks.sql\";}i:118;a:4:{i:0;s:8:\"addIndex\";i:1;s:7:\"iwlinks\";i:2;s:21:\"iwl_prefix_title_from\";i:3;s:27:\"patch-rename-iwl_prefix.sql\";}i:119;a:4:{i:0;s:8:\"addField\";i:1;s:9:\"updatelog\";i:2;s:8:\"ul_value\";i:3;s:18:\"patch-ul_value.sql\";}i:120;a:4:{i:0;s:8:\"addField\";i:1;s:9:\"interwiki\";i:2;s:6:\"iw_api\";i:3;s:27:\"patch-iw_api_and_wikiid.sql\";}i:121;a:4:{i:0;s:9:\"dropIndex\";i:1;s:7:\"iwlinks\";i:2;s:10:\"iwl_prefix\";i:3;s:25:\"patch-kill-iwl_prefix.sql\";}i:122;a:4:{i:0;s:9:\"dropIndex\";i:1;s:7:\"iwlinks\";i:2;s:21:\"iwl_prefix_from_title\";i:3;s:22:\"patch-kill-iwl_pft.sql\";}i:123;a:4:{i:0;s:8:\"addField\";i:1;s:13:\"categorylinks\";i:2;s:12:\"cl_collation\";i:3;s:40:\"patch-categorylinks-better-collation.sql\";}i:124;a:1:{i:0;s:16:\"doClFieldsUpdate\";}i:125;a:1:{i:0;s:17:\"doCollationUpdate\";}i:126;a:3:{i:0;s:8:\"addTable\";i:1;s:12:\"msg_resource\";i:2;s:22:\"patch-msg_resource.sql\";}i:127;a:3:{i:0;s:8:\"addTable\";i:1;s:11:\"module_deps\";i:2;s:21:\"patch-module_deps.sql\";}}');
-/*!40000 ALTER TABLE `mw_updatelog` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user`
---
-
-DROP TABLE IF EXISTS `mw_user`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user` (
- `user_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `user_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `user_real_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `user_password` tinyblob NOT NULL,
- `user_newpassword` tinyblob NOT NULL,
- `user_newpass_time` binary(14) DEFAULT NULL,
- `user_email` tinytext NOT NULL,
- `user_touched` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `user_token` binary(32) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `user_email_authenticated` binary(14) DEFAULT NULL,
- `user_email_token` binary(32) DEFAULT NULL,
- `user_email_token_expires` binary(14) DEFAULT NULL,
- `user_registration` binary(14) DEFAULT NULL,
- `user_editcount` int(11) DEFAULT NULL,
- PRIMARY KEY (`user_id`),
- UNIQUE KEY `user_name` (`user_name`),
- KEY `user_email_token` (`user_email_token`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user`
---
-
-LOCK TABLES `mw_user` WRITE;
-/*!40000 ALTER TABLE `mw_user` DISABLE KEYS */;
-INSERT INTO `mw_user` VALUES (1,'WikiSysop','',':B:9c595470:df2c1237ae75896744457e7dfbeb7f90','',NULL,'','','20110110173136','5e3b582786fa8150118cfa78f18de0c5',NULL,'\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',NULL,'20110107184113',1);
-/*!40000 ALTER TABLE `mw_user` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user_groups`
---
-
-DROP TABLE IF EXISTS `mw_user_groups`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user_groups` (
- `ug_user` int(10) unsigned NOT NULL DEFAULT '0',
- `ug_group` varbinary(16) NOT NULL DEFAULT '',
- UNIQUE KEY `ug_user_group` (`ug_user`,`ug_group`),
- KEY `ug_group` (`ug_group`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user_groups`
---
-
-LOCK TABLES `mw_user_groups` WRITE;
-/*!40000 ALTER TABLE `mw_user_groups` DISABLE KEYS */;
-INSERT INTO `mw_user_groups` VALUES (1,'bureaucrat'),(1,'sysop');
-/*!40000 ALTER TABLE `mw_user_groups` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user_newtalk`
---
-
-DROP TABLE IF EXISTS `mw_user_newtalk`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user_newtalk` (
- `user_id` int(11) NOT NULL DEFAULT '0',
- `user_ip` varbinary(40) NOT NULL DEFAULT '',
- `user_last_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- KEY `user_id` (`user_id`),
- KEY `user_ip` (`user_ip`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user_newtalk`
---
-
-LOCK TABLES `mw_user_newtalk` WRITE;
-/*!40000 ALTER TABLE `mw_user_newtalk` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_user_newtalk` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user_properties`
---
-
-DROP TABLE IF EXISTS `mw_user_properties`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user_properties` (
- `up_user` int(11) NOT NULL,
- `up_property` varbinary(32) NOT NULL,
- `up_value` blob,
- UNIQUE KEY `user_properties_user_property` (`up_user`,`up_property`),
- KEY `user_properties_property` (`up_property`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user_properties`
---
-
-LOCK TABLES `mw_user_properties` WRITE;
-/*!40000 ALTER TABLE `mw_user_properties` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_user_properties` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_valid_tag`
---
-
-DROP TABLE IF EXISTS `mw_valid_tag`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_valid_tag` (
- `vt_tag` varchar(255) NOT NULL,
- PRIMARY KEY (`vt_tag`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_valid_tag`
---
-
-LOCK TABLES `mw_valid_tag` WRITE;
-/*!40000 ALTER TABLE `mw_valid_tag` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_valid_tag` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_watchlist`
---
-
-DROP TABLE IF EXISTS `mw_watchlist`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_watchlist` (
- `wl_user` int(10) unsigned NOT NULL,
- `wl_namespace` int(11) NOT NULL DEFAULT '0',
- `wl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `wl_notificationtimestamp` varbinary(14) DEFAULT NULL,
- UNIQUE KEY `wl_user` (`wl_user`,`wl_namespace`,`wl_title`),
- KEY `namespace_title` (`wl_namespace`,`wl_title`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_watchlist`
---
-
-LOCK TABLES `mw_watchlist` WRITE;
-/*!40000 ALTER TABLE `mw_watchlist` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_watchlist` ENABLE KEYS */;
-UNLOCK TABLES;
-/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
-
-/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
-/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
-/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
-/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
-/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
-/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
-/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-
--- Dump completed on 2011-01-10 9:34:34
+++ /dev/null
--- MySQL dump 10.13 Distrib 5.1.41, for Win32 (ia32)
---
--- Host: localhost Database: test_wiki
--- ------------------------------------------------------
--- Server version 5.1.41
-
-/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
-/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
-/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
-/*!40101 SET NAMES utf8 */;
-/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
-/*!40103 SET TIME_ZONE='+00:00' */;
-/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
-/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
-/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
-/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
-
---
--- Table structure for table `mw_archive`
---
-
-DROP TABLE IF EXISTS `mw_archive`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_archive` (
- `ar_namespace` int(11) NOT NULL DEFAULT '0',
- `ar_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `ar_text` mediumblob NOT NULL,
- `ar_comment` tinyblob NOT NULL,
- `ar_user` int(10) unsigned NOT NULL DEFAULT '0',
- `ar_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `ar_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `ar_minor_edit` tinyint(4) NOT NULL DEFAULT '0',
- `ar_flags` tinyblob NOT NULL,
- `ar_rev_id` int(10) unsigned DEFAULT NULL,
- `ar_text_id` int(10) unsigned DEFAULT NULL,
- `ar_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `ar_len` int(10) unsigned DEFAULT NULL,
- `ar_page_id` int(10) unsigned DEFAULT NULL,
- `ar_parent_id` int(10) unsigned DEFAULT NULL,
- KEY `name_title_timestamp` (`ar_namespace`,`ar_title`,`ar_timestamp`),
- KEY `usertext_timestamp` (`ar_user_text`,`ar_timestamp`),
- KEY `ar_page_revid` (`ar_namespace`,`ar_title`,`ar_rev_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_archive`
---
-
-LOCK TABLES `mw_archive` WRITE;
-/*!40000 ALTER TABLE `mw_archive` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_archive` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_category`
---
-
-DROP TABLE IF EXISTS `mw_category`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_category` (
- `cat_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `cat_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `cat_pages` int(11) NOT NULL DEFAULT '0',
- `cat_subcats` int(11) NOT NULL DEFAULT '0',
- `cat_files` int(11) NOT NULL DEFAULT '0',
- `cat_hidden` tinyint(3) unsigned NOT NULL DEFAULT '0',
- PRIMARY KEY (`cat_id`),
- UNIQUE KEY `cat_title` (`cat_title`),
- KEY `cat_pages` (`cat_pages`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_category`
---
-
-LOCK TABLES `mw_category` WRITE;
-/*!40000 ALTER TABLE `mw_category` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_category` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_categorylinks`
---
-
-DROP TABLE IF EXISTS `mw_categorylinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_categorylinks` (
- `cl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `cl_to` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `cl_sortkey` varbinary(230) NOT NULL DEFAULT '',
- `cl_sortkey_prefix` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `cl_timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
- `cl_collation` varbinary(32) NOT NULL DEFAULT '',
- `cl_type` enum('page','subcat','file') NOT NULL DEFAULT 'page',
- UNIQUE KEY `cl_from` (`cl_from`,`cl_to`),
- KEY `cl_sortkey` (`cl_to`,`cl_type`,`cl_sortkey`,`cl_from`),
- KEY `cl_timestamp` (`cl_to`,`cl_timestamp`),
- KEY `cl_collation` (`cl_collation`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_categorylinks`
---
-
-LOCK TABLES `mw_categorylinks` WRITE;
-/*!40000 ALTER TABLE `mw_categorylinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_categorylinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_change_tag`
---
-
-DROP TABLE IF EXISTS `mw_change_tag`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_change_tag` (
- `ct_rc_id` int(11) DEFAULT NULL,
- `ct_log_id` int(11) DEFAULT NULL,
- `ct_rev_id` int(11) DEFAULT NULL,
- `ct_tag` varchar(255) NOT NULL,
- `ct_params` blob,
- UNIQUE KEY `change_tag_rc_tag` (`ct_rc_id`,`ct_tag`),
- UNIQUE KEY `change_tag_log_tag` (`ct_log_id`,`ct_tag`),
- UNIQUE KEY `change_tag_rev_tag` (`ct_rev_id`,`ct_tag`),
- KEY `change_tag_tag_id` (`ct_tag`,`ct_rc_id`,`ct_rev_id`,`ct_log_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_change_tag`
---
-
-LOCK TABLES `mw_change_tag` WRITE;
-/*!40000 ALTER TABLE `mw_change_tag` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_change_tag` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_external_user`
---
-
-DROP TABLE IF EXISTS `mw_external_user`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_external_user` (
- `eu_local_id` int(10) unsigned NOT NULL,
- `eu_external_id` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- PRIMARY KEY (`eu_local_id`),
- UNIQUE KEY `eu_external_id` (`eu_external_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_external_user`
---
-
-LOCK TABLES `mw_external_user` WRITE;
-/*!40000 ALTER TABLE `mw_external_user` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_external_user` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_externallinks`
---
-
-DROP TABLE IF EXISTS `mw_externallinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_externallinks` (
- `el_from` int(10) unsigned NOT NULL DEFAULT '0',
- `el_to` blob NOT NULL,
- `el_index` blob NOT NULL,
- KEY `el_from` (`el_from`,`el_to`(40)),
- KEY `el_to` (`el_to`(60),`el_from`),
- KEY `el_index` (`el_index`(60))
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_externallinks`
---
-
-LOCK TABLES `mw_externallinks` WRITE;
-/*!40000 ALTER TABLE `mw_externallinks` DISABLE KEYS */;
-INSERT INTO `mw_externallinks` VALUES (1,'http://meta.wikimedia.org/wiki/Help:Contents','http://org.wikimedia.meta./wiki/Help:Contents');
-INSERT INTO `mw_externallinks` VALUES (1,'http://www.mediawiki.org/wiki/Manual:Configuration_settings','http://org.mediawiki.www./wiki/Manual:Configuration_settings');
-INSERT INTO `mw_externallinks` VALUES (1,'http://www.mediawiki.org/wiki/Manual:FAQ','http://org.mediawiki.www./wiki/Manual:FAQ');
-INSERT INTO `mw_externallinks` VALUES (1,'https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce','https://org.wikimedia.lists./mailman/listinfo/mediawiki-announce');
-/*!40000 ALTER TABLE `mw_externallinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_filearchive`
---
-
-DROP TABLE IF EXISTS `mw_filearchive`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_filearchive` (
- `fa_id` int(11) NOT NULL AUTO_INCREMENT,
- `fa_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `fa_archive_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT '',
- `fa_storage_group` varbinary(16) DEFAULT NULL,
- `fa_storage_key` varbinary(64) DEFAULT '',
- `fa_deleted_user` int(11) DEFAULT NULL,
- `fa_deleted_timestamp` binary(14) DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `fa_deleted_reason` text,
- `fa_size` int(10) unsigned DEFAULT '0',
- `fa_width` int(11) DEFAULT '0',
- `fa_height` int(11) DEFAULT '0',
- `fa_metadata` mediumblob,
- `fa_bits` int(11) DEFAULT '0',
- `fa_media_type` enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') DEFAULT NULL,
- `fa_major_mime` enum('unknown','application','audio','image','text','video','message','model','multipart') DEFAULT 'unknown',
- `fa_minor_mime` varbinary(100) DEFAULT 'unknown',
- `fa_description` tinyblob,
- `fa_user` int(10) unsigned DEFAULT '0',
- `fa_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
- `fa_timestamp` binary(14) DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `fa_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- PRIMARY KEY (`fa_id`),
- KEY `fa_name` (`fa_name`,`fa_timestamp`),
- KEY `fa_storage_group` (`fa_storage_group`,`fa_storage_key`),
- KEY `fa_deleted_timestamp` (`fa_deleted_timestamp`),
- KEY `fa_user_timestamp` (`fa_user_text`,`fa_timestamp`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_filearchive`
---
-
-LOCK TABLES `mw_filearchive` WRITE;
-/*!40000 ALTER TABLE `mw_filearchive` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_filearchive` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_hitcounter`
---
-
-DROP TABLE IF EXISTS `mw_hitcounter`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_hitcounter` (
- `hc_id` int(10) unsigned NOT NULL
-) ENGINE=MEMORY DEFAULT CHARSET=latin1 MAX_ROWS=25000;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_hitcounter`
---
-
-LOCK TABLES `mw_hitcounter` WRITE;
-/*!40000 ALTER TABLE `mw_hitcounter` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_hitcounter` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_image`
---
-
-DROP TABLE IF EXISTS `mw_image`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_image` (
- `img_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `img_size` int(10) unsigned NOT NULL DEFAULT '0',
- `img_width` int(11) NOT NULL DEFAULT '0',
- `img_height` int(11) NOT NULL DEFAULT '0',
- `img_metadata` mediumblob NOT NULL,
- `img_bits` int(11) NOT NULL DEFAULT '0',
- `img_media_type` enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') DEFAULT NULL,
- `img_major_mime` enum('unknown','application','audio','image','text','video','message','model','multipart') NOT NULL DEFAULT 'unknown',
- `img_minor_mime` varbinary(100) NOT NULL DEFAULT 'unknown',
- `img_description` tinyblob NOT NULL,
- `img_user` int(10) unsigned NOT NULL DEFAULT '0',
- `img_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `img_timestamp` varbinary(14) NOT NULL DEFAULT '',
- `img_sha1` varbinary(32) NOT NULL DEFAULT '',
- PRIMARY KEY (`img_name`),
- KEY `img_usertext_timestamp` (`img_user_text`,`img_timestamp`),
- KEY `img_size` (`img_size`),
- KEY `img_timestamp` (`img_timestamp`),
- KEY `img_sha1` (`img_sha1`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_image`
---
-
-LOCK TABLES `mw_image` WRITE;
-/*!40000 ALTER TABLE `mw_image` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_image` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_imagelinks`
---
-
-DROP TABLE IF EXISTS `mw_imagelinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_imagelinks` (
- `il_from` int(10) unsigned NOT NULL DEFAULT '0',
- `il_to` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `il_from` (`il_from`,`il_to`),
- UNIQUE KEY `il_to` (`il_to`,`il_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_imagelinks`
---
-
-LOCK TABLES `mw_imagelinks` WRITE;
-/*!40000 ALTER TABLE `mw_imagelinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_imagelinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_interwiki`
---
-
-DROP TABLE IF EXISTS `mw_interwiki`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_interwiki` (
- `iw_prefix` varchar(32) NOT NULL,
- `iw_url` blob NOT NULL,
- `iw_api` blob NOT NULL,
- `iw_wikiid` varchar(64) NOT NULL,
- `iw_local` tinyint(1) NOT NULL,
- `iw_trans` tinyint(4) NOT NULL DEFAULT '0',
- UNIQUE KEY `iw_prefix` (`iw_prefix`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_interwiki`
---
-
-LOCK TABLES `mw_interwiki` WRITE;
-/*!40000 ALTER TABLE `mw_interwiki` DISABLE KEYS */;
-INSERT INTO `mw_interwiki` VALUES ('acronym','http://www.acronymfinder.com/af-query.asp?String=exact&Acronym=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('advogato','http://www.advogato.org/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('annotationwiki','http://www.seedwiki.com/page.cfm?wikiid=368&doc=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('arxiv','http://www.arxiv.org/abs/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('c2find','http://c2.com/cgi/wiki?FindPage&value=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('cache','http://www.google.com/search?q=cache:$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('commons','http://commons.wikimedia.org/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('corpknowpedia','http://corpknowpedia.org/wiki/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('dictionary','http://www.dict.org/bin/Dict?Database=*&Form=Dict1&Strategy=*&Query=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('disinfopedia','http://www.disinfopedia.org/wiki.phtml?title=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('docbook','http://wiki.docbook.org/topic/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('doi','http://dx.doi.org/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('drumcorpswiki','http://www.drumcorpswiki.com/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('dwjwiki','http://www.suberic.net/cgi-bin/dwj/wiki.cgi?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('elibre','http://enciclopedia.us.es/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('emacswiki','http://www.emacswiki.org/cgi-bin/wiki.pl?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('foldoc','http://foldoc.org/?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('foxwiki','http://fox.wikis.com/wc.dll?Wiki~$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('freebsdman','http://www.FreeBSD.org/cgi/man.cgi?apropos=1&query=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('gej','http://www.esperanto.de/cgi-bin/aktivikio/wiki.pl?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('gentoo-wiki','http://gentoo-wiki.com/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('google','http://www.google.com/search?q=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('googlegroups','http://groups.google.com/groups?q=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('hammondwiki','http://www.dairiki.org/HammondWiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('hewikisource','http://he.wikisource.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('hrwiki','http://www.hrwiki.org/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('imdb','http://us.imdb.com/Title?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('jargonfile','http://sunir.org/apps/meta.pl?wiki=JargonFile&redirect=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('jspwiki','http://www.jspwiki.org/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('keiki','http://kei.ki/en/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('kmwiki','http://kmwiki.wikispaces.com/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('linuxwiki','http://linuxwiki.de/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('lojban','http://www.lojban.org/tiki/tiki-index.php?page=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('lqwiki','http://wiki.linuxquestions.org/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('lugkr','http://lug-kr.sourceforge.net/cgi-bin/lugwiki.pl?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('mathsongswiki','http://SeedWiki.com/page.cfm?wikiid=237&doc=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('meatball','http://www.usemod.com/cgi-bin/mb.pl?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('mediawikiwiki','http://www.mediawiki.org/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('mediazilla','https://bugzilla.wikimedia.org/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('memoryalpha','http://www.memory-alpha.org/en/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('metawiki','http://sunir.org/apps/meta.pl?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('metawikimedia','http://meta.wikimedia.org/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('moinmoin','http://purl.net/wiki/moin/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('mozillawiki','http://wiki.mozilla.org/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('mw','http://www.mediawiki.org/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('oeis','http://www.research.att.com/cgi-bin/access.cgi/as/njas/sequences/eisA.cgi?Anum=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('openfacts','http://openfacts.berlios.de/index.phtml?title=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('openwiki','http://openwiki.com/?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('pmeg','http://www.bertilow.com/pmeg/$1.php','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('ppr','http://c2.com/cgi/wiki?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('pythoninfo','http://wiki.python.org/moin/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('rfc','http://www.rfc-editor.org/rfc/rfc$1.txt','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('s23wiki','http://is-root.de/wiki/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('seattlewiki','http://seattle.wikia.com/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('seattlewireless','http://seattlewireless.net/?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('senseislibrary','http://senseis.xmp.net/?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('sourceforge','http://sourceforge.net/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('squeak','http://wiki.squeak.org/squeak/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('susning','http://www.susning.nu/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('svgwiki','http://wiki.svg.org/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('tavi','http://tavi.sourceforge.net/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('tejo','http://www.tejo.org/vikio/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('theopedia','http://www.theopedia.com/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('tmbw','http://www.tmbw.net/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('tmnet','http://www.technomanifestos.net/?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('tmwiki','http://www.EasyTopicMaps.com/?page=$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('twiki','http://twiki.org/cgi-bin/view/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('uea','http://www.tejo.org/uea/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('unreal','http://wiki.beyondunreal.com/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('usemod','http://www.usemod.com/cgi-bin/wiki.pl?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('vinismo','http://vinismo.com/en/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('webseitzwiki','http://webseitz.fluxent.com/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('why','http://clublet.com/c/c/why?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wiki','http://c2.com/cgi/wiki?$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikia','http://www.wikia.com/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikibooks','http://en.wikibooks.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wikicities','http://www.wikia.com/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikif1','http://www.wikif1.org/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikihow','http://www.wikihow.com/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikimedia','http://wikimediafoundation.org/wiki/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikinews','http://en.wikinews.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wikinfo','http://www.wikinfo.org/index.php/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikipedia','http://en.wikipedia.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wikiquote','http://en.wikiquote.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wikisource','http://wikisource.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wikispecies','http://species.wikimedia.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wikitravel','http://wikitravel.org/en/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('wikiversity','http://en.wikiversity.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wikt','http://en.wiktionary.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wiktionary','http://en.wiktionary.org/wiki/$1','','',1,0);
-INSERT INTO `mw_interwiki` VALUES ('wlug','http://www.wlug.org.nz/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('zwiki','http://zwiki.org/$1','','',0,0);
-INSERT INTO `mw_interwiki` VALUES ('zzz wiki','http://wiki.zzz.ee/index.php/$1','','',0,0);
-/*!40000 ALTER TABLE `mw_interwiki` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_ipblocks`
---
-
-DROP TABLE IF EXISTS `mw_ipblocks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_ipblocks` (
- `ipb_id` int(11) NOT NULL AUTO_INCREMENT,
- `ipb_address` tinyblob NOT NULL,
- `ipb_user` int(10) unsigned NOT NULL DEFAULT '0',
- `ipb_by` int(10) unsigned NOT NULL DEFAULT '0',
- `ipb_by_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `ipb_reason` tinyblob NOT NULL,
- `ipb_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `ipb_auto` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_anon_only` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_create_account` tinyint(1) NOT NULL DEFAULT '1',
- `ipb_enable_autoblock` tinyint(1) NOT NULL DEFAULT '1',
- `ipb_expiry` varbinary(14) NOT NULL DEFAULT '',
- `ipb_range_start` tinyblob NOT NULL,
- `ipb_range_end` tinyblob NOT NULL,
- `ipb_deleted` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_block_email` tinyint(1) NOT NULL DEFAULT '0',
- `ipb_allow_usertalk` tinyint(1) NOT NULL DEFAULT '0',
- PRIMARY KEY (`ipb_id`),
- UNIQUE KEY `ipb_address` (`ipb_address`(255),`ipb_user`,`ipb_auto`,`ipb_anon_only`),
- KEY `ipb_user` (`ipb_user`),
- KEY `ipb_range` (`ipb_range_start`(8),`ipb_range_end`(8)),
- KEY `ipb_timestamp` (`ipb_timestamp`),
- KEY `ipb_expiry` (`ipb_expiry`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_ipblocks`
---
-
-LOCK TABLES `mw_ipblocks` WRITE;
-/*!40000 ALTER TABLE `mw_ipblocks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_ipblocks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_iwlinks`
---
-
-DROP TABLE IF EXISTS `mw_iwlinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_iwlinks` (
- `iwl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `iwl_prefix` varbinary(20) NOT NULL DEFAULT '',
- `iwl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `iwl_from` (`iwl_from`,`iwl_prefix`,`iwl_title`),
- UNIQUE KEY `iwl_prefix_title_from` (`iwl_prefix`,`iwl_title`,`iwl_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_iwlinks`
---
-
-LOCK TABLES `mw_iwlinks` WRITE;
-/*!40000 ALTER TABLE `mw_iwlinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_iwlinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_job`
---
-
-DROP TABLE IF EXISTS `mw_job`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_job` (
- `job_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `job_cmd` varbinary(60) NOT NULL DEFAULT '',
- `job_namespace` int(11) NOT NULL,
- `job_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `job_params` blob NOT NULL,
- PRIMARY KEY (`job_id`),
- KEY `job_cmd` (`job_cmd`,`job_namespace`,`job_title`,`job_params`(128))
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_job`
---
-
-LOCK TABLES `mw_job` WRITE;
-/*!40000 ALTER TABLE `mw_job` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_job` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_l10n_cache`
---
-
-DROP TABLE IF EXISTS `mw_l10n_cache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_l10n_cache` (
- `lc_lang` varbinary(32) NOT NULL,
- `lc_key` varchar(255) NOT NULL,
- `lc_value` mediumblob NOT NULL,
- KEY `lc_lang_key` (`lc_lang`,`lc_key`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
-
-
---
--- Table structure for table `mw_langlinks`
---
-
-DROP TABLE IF EXISTS `mw_langlinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_langlinks` (
- `ll_from` int(10) unsigned NOT NULL DEFAULT '0',
- `ll_lang` varbinary(20) NOT NULL DEFAULT '',
- `ll_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `ll_from` (`ll_from`,`ll_lang`),
- KEY `ll_lang` (`ll_lang`,`ll_title`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_langlinks`
---
-
-LOCK TABLES `mw_langlinks` WRITE;
-/*!40000 ALTER TABLE `mw_langlinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_langlinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_log_search`
---
-
-DROP TABLE IF EXISTS `mw_log_search`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_log_search` (
- `ls_field` varbinary(32) NOT NULL,
- `ls_value` varchar(255) NOT NULL,
- `ls_log_id` int(10) unsigned NOT NULL DEFAULT '0',
- UNIQUE KEY `ls_field_val` (`ls_field`,`ls_value`,`ls_log_id`),
- KEY `ls_log_id` (`ls_log_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_log_search`
---
-
-LOCK TABLES `mw_log_search` WRITE;
-/*!40000 ALTER TABLE `mw_log_search` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_log_search` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_logging`
---
-
-DROP TABLE IF EXISTS `mw_logging`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_logging` (
- `log_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `log_type` varbinary(32) NOT NULL DEFAULT '',
- `log_action` varbinary(32) NOT NULL DEFAULT '',
- `log_timestamp` binary(14) NOT NULL DEFAULT '19700101000000',
- `log_user` int(10) unsigned NOT NULL DEFAULT '0',
- `log_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `log_namespace` int(11) NOT NULL DEFAULT '0',
- `log_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `log_page` int(10) unsigned DEFAULT NULL,
- `log_comment` varchar(255) NOT NULL DEFAULT '',
- `log_params` blob NOT NULL,
- `log_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- PRIMARY KEY (`log_id`),
- KEY `type_time` (`log_type`,`log_timestamp`),
- KEY `user_time` (`log_user`,`log_timestamp`),
- KEY `page_time` (`log_namespace`,`log_title`,`log_timestamp`),
- KEY `times` (`log_timestamp`),
- KEY `log_user_type_time` (`log_user`,`log_type`,`log_timestamp`),
- KEY `log_page_id_time` (`log_page`,`log_timestamp`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_logging`
---
-
-LOCK TABLES `mw_logging` WRITE;
-/*!40000 ALTER TABLE `mw_logging` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_logging` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_math`
---
-
-DROP TABLE IF EXISTS `mw_math`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_math` (
- `math_inputhash` varbinary(16) NOT NULL,
- `math_outputhash` varbinary(16) NOT NULL,
- `math_html_conservativeness` tinyint(4) NOT NULL,
- `math_html` text,
- `math_mathml` text,
- UNIQUE KEY `math_inputhash` (`math_inputhash`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_math`
---
-
-LOCK TABLES `mw_math` WRITE;
-/*!40000 ALTER TABLE `mw_math` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_math` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_module_deps`
---
-
-DROP TABLE IF EXISTS `mw_module_deps`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_module_deps` (
- `md_module` varbinary(255) NOT NULL,
- `md_skin` varbinary(32) NOT NULL,
- `md_deps` mediumblob NOT NULL,
- UNIQUE KEY `md_module_skin` (`md_module`,`md_skin`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_module_deps`
---
-
-LOCK TABLES `mw_module_deps` WRITE;
-/*!40000 ALTER TABLE `mw_module_deps` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_module_deps` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_msg_resource`
---
-
-DROP TABLE IF EXISTS `mw_msg_resource`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_msg_resource` (
- `mr_resource` varbinary(255) NOT NULL,
- `mr_lang` varbinary(32) NOT NULL,
- `mr_blob` mediumblob NOT NULL,
- `mr_timestamp` binary(14) NOT NULL,
- UNIQUE KEY `mr_resource_lang` (`mr_resource`,`mr_lang`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_msg_resource`
---
-
-LOCK TABLES `mw_msg_resource` WRITE;
-/*!40000 ALTER TABLE `mw_msg_resource` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_msg_resource` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_msg_resource_links`
---
-
-DROP TABLE IF EXISTS `mw_msg_resource_links`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_msg_resource_links` (
- `mrl_resource` varbinary(255) NOT NULL,
- `mrl_message` varbinary(255) NOT NULL,
- UNIQUE KEY `mrl_message_resource` (`mrl_message`,`mrl_resource`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_msg_resource_links`
---
-
-LOCK TABLES `mw_msg_resource_links` WRITE;
-/*!40000 ALTER TABLE `mw_msg_resource_links` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_msg_resource_links` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_objectcache`
---
-
-DROP TABLE IF EXISTS `mw_objectcache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_objectcache` (
- `keyname` varbinary(255) NOT NULL DEFAULT '',
- `value` mediumblob,
- `exptime` datetime DEFAULT NULL,
- PRIMARY KEY (`keyname`),
- KEY `exptime` (`exptime`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_objectcache`
---
-
-LOCK TABLES `mw_objectcache` WRITE;
-/*!40000 ALTER TABLE `mw_objectcache` DISABLE KEYS */;
-INSERT INTO `mw_objectcache` VALUES ('test_wiki-mw_:messages:en','K�2��.�2�R\ns\r\n���S�δ2��\ 5\0','2010-12-31 13:16:31');
-INSERT INTO `mw_objectcache` VALUES ('test_wiki-mw_:pcache:idhash:1-0!*!*!!en!*','�V[o�F\14�g~��\ f��\12�\ 6B��P��m\12)$TK�\ fU�\ 6�\0�����8$\e�\7f�9�a\rI�l��X>��ܹ�q�\aSa,��ʕ�\vx��?[~ʃ|\ 6�.\18Z\1e��\ 3\1e$�8Y�\'�I�Y�K�\16�-\04�U����J�\'&�uB)�:I�\18��\10���E�m�\1csk`�`k\ 3�Q�v��a��\13�\rZ��t�0����+P%GE\a�ـ�JX;\n\10\12\18-\14s\ 4�\19P�@\17�B�b\13���8~�첒\19$�\18�ea\10\12�υ��f��+���0[,�F\18�x��d�\1d\'�\14z�0��BJ���=���\17J��c�\\��:�\14�&B��T��\'��C��Fdÿ׆Fq����Gd����%8G�0��A\16�I�\ 2�; Ԙ\1d`�7�5�LI\r\ 1��(���{�c�����\18g+��8Qr�&�ͦ��A)�V��ЕPT��\\UƧtn�\1e�Z�\ 3e�SfJZ\1f(V\ 1\ 1�\ fP�}��\b��0��O�N �=j�\\H�\v�y�\\�\1eU[h]T:�\f��bd��u��\10+�j%\'�6k��f:E�\1c;�@Y\18ך��\144���Ȁ�\b�q�\v��\7fZ�º6<b�3��TU(d�\17�,\n���Y|�e�\'\a�5��T�\ 1\13fU�8}�\"��\ 4m�\ 3��/\10���}Uk�\119o��;��\ 3��|*R?�n��� 3d��g1��y�\\f8gk\1e�����w\ 2��=�\18\1c\16\ 4�:/Y7���ۋ�^<�Ō����\15v#���i����\ 6C�#��6\Z�.0�Ua$4\19\11�=\Z���;�\ 1�4����\ 1Y=���5��\ 6�:kpΐq��Ŧ4��X���C��q\1fYߵ-��Lj�����D�f��\e��\f�:�\1e��\19�(3t��14C��J�#����\ 5����\15��WXT���Δy:�^�6�v�7����I�U�Ee�\a�(�p0��ga�6\7fMj��Sc�,ѫ@��ޅ+R\ 5\ f����A��xХ\'6���utǷbۛ��\17`j�8ؚ�G�IC<KS��\ 65�|�krJ\ 6\ry�\\b3xP���\ 3��ua�@�\ f���$SS�`��tQ.gw\17W��\r\19@\'���w�� ��\bxZ(�>5\ 4{�\v�\ f��\adw�>�=J)\r�6\15t ��X��\12��M��\b�B�\n�ŖT��\13��b>�qg���\12�\v\ 47�\f�z�n\ e7��vwr�-%u�-Qi�iX1��Ne\13���A#�v��\15ӧ�3��?','2010-12-31 13:16:31');
-INSERT INTO `mw_objectcache` VALUES ('test_wiki-mw_:pcache:idoptions:1','E��\ e�@\fD��\1f`�\v\"v�ƣ��Wh��,�b�!�\18⭙7�L+�\13\1c|}�t\f��I�$�<��\ 1�F\rpSl�4����OJN`\r\Z���\f�\f\17ծ���)�\a�PY��$�K�\ f���գ9�Vjp72��E���c�Wp�2��\acVxu7\1e��\e ����\b\12p#�r=.���[>y)\ f\ f\1fZp��\ 5','2010-12-31 13:16:31');
-INSERT INTO `mw_objectcache` VALUES ('test_wiki-mw_:resourceloader:filter:minify-css:3832ee25d9c44988461f5f339b9b6a48','+�26�Rr�MM�LTH�ɩV\0�Z(��(3�\ 4(R�d\r\0','2038-01-19 03:14:07');
-INSERT INTO `mw_objectcache` VALUES ('test_wiki-mw_:resourceloader:filter:minify-css:aa0df16258ad99a1d249e796b5067ed9','+�2��Rr�MM�LTH�ɩN��K-�Q.,�L�NJ,R\0��s�\12\r���V�\Z\0','2038-01-19 03:14:07');
-INSERT INTO `mw_objectcache` VALUES ('test_wiki-mw_:resourceloader:filter:minify-js:22814eeadc9cf0a9ebcd844e14198e66','m��r�0\f��y\f��\19��r�&Qޡמ!\n�\18qQ�Xq;}���$��ވ� �c!]]].o5S�\n�)Fq\f\ e��L^\18�\ e�?�s�F�\ 2!\1d�O\a�M\\�������\0���N��\18Ɂ���լ�\ e���:��-�j��F��{ۅ�G�\13\"i�\ e� \11\Z�6�K����!��Y]=�F[�\ f~竍\17�\12��䶃\16�\b\12���`��\a9N�Ǵ���@�K��\11\ f|z�?1�A��\1f@J#_ԁ�7\'�l\18�1)\vJ�͵�).�3\vz�f�T�A���H\ eњ�[#)�BzRA�7��\"T�*~SW�\a�\11\1c�/P���B�Ŏ;\Z�ay�6\1c����+U��?.$�6��-u\1dT�v@h��s�&�����Nإb\e�fJ�~\ 5�]\ 36\19��p��/q)�\12>\ f�E�1�\ 4�͔A\ne�L�g\ZE�`cW�����`fJ�E�a\19��>��b\n�ӑd�.u�do�\e�[\e�\nt��b�+�\1f��l\1f\Z?X*��Y�\1f(�օ\10;\e�L�\1cJqť\ 6ɝ\10���d$\19�\"�WzG�-@b~\ f+�#�kǞَ�Ƃ~������P)B ���\16�q�Җ2��\11�r�Rl�\15���\ 1`\1cz �\ f4�����ÝX�m�;�X݁t;r.�sA�\15�R��\ 5y)�kA�\nR�JT��J�U��*�W��_ߟ�4@�vt��f���\7f>\15�\ 6���x���\ 3','2038-01-19 03:14:07');
-INSERT INTO `mw_objectcache` VALUES ('test_wiki-mw_:resourceloader:filter:minify-js:dd9440c19c575629ac5ec90e489cf62e','+�21�R�\ 2��Ԕ�����L���Ĕ�\"��ĒT�j��̒T%+���ĔJ�ZMk.%k\0','2038-01-19 03:14:07');
-/*!40000 ALTER TABLE `mw_objectcache` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_oldimage`
---
-
-DROP TABLE IF EXISTS `mw_oldimage`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_oldimage` (
- `oi_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `oi_archive_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `oi_size` int(10) unsigned NOT NULL DEFAULT '0',
- `oi_width` int(11) NOT NULL DEFAULT '0',
- `oi_height` int(11) NOT NULL DEFAULT '0',
- `oi_bits` int(11) NOT NULL DEFAULT '0',
- `oi_description` tinyblob NOT NULL,
- `oi_user` int(10) unsigned NOT NULL DEFAULT '0',
- `oi_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `oi_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `oi_metadata` mediumblob NOT NULL,
- `oi_media_type` enum('UNKNOWN','BITMAP','DRAWING','AUDIO','VIDEO','MULTIMEDIA','OFFICE','TEXT','EXECUTABLE','ARCHIVE') DEFAULT NULL,
- `oi_major_mime` enum('unknown','application','audio','image','text','video','message','model','multipart') NOT NULL DEFAULT 'unknown',
- `oi_minor_mime` varbinary(100) NOT NULL DEFAULT 'unknown',
- `oi_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `oi_sha1` varbinary(32) NOT NULL DEFAULT '',
- KEY `oi_usertext_timestamp` (`oi_user_text`,`oi_timestamp`),
- KEY `oi_name_timestamp` (`oi_name`,`oi_timestamp`),
- KEY `oi_name_archive_name` (`oi_name`,`oi_archive_name`(14)),
- KEY `oi_sha1` (`oi_sha1`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_oldimage`
---
-
-LOCK TABLES `mw_oldimage` WRITE;
-/*!40000 ALTER TABLE `mw_oldimage` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_oldimage` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_page`
---
-
-DROP TABLE IF EXISTS `mw_page`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_page` (
- `page_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `page_namespace` int(11) NOT NULL,
- `page_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `page_restrictions` tinyblob NOT NULL,
- `page_counter` bigint(20) unsigned NOT NULL DEFAULT '0',
- `page_is_redirect` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `page_is_new` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `page_random` double unsigned NOT NULL,
- `page_touched` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `page_latest` int(10) unsigned NOT NULL,
- `page_len` int(10) unsigned NOT NULL,
- PRIMARY KEY (`page_id`),
- UNIQUE KEY `name_title` (`page_namespace`,`page_title`),
- KEY `page_random` (`page_random`),
- KEY `page_len` (`page_len`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_page`
---
-
-LOCK TABLES `mw_page` WRITE;
-/*!40000 ALTER TABLE `mw_page` DISABLE KEYS */;
-INSERT INTO `mw_page` VALUES (1,0,'Main_Page','',1,0,1,0.334989576352,'20101230131547',1,438);
-/*!40000 ALTER TABLE `mw_page` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_page_props`
---
-
-DROP TABLE IF EXISTS `mw_page_props`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_page_props` (
- `pp_page` int(11) NOT NULL,
- `pp_propname` varbinary(60) NOT NULL,
- `pp_value` blob NOT NULL,
- UNIQUE KEY `pp_page_propname` (`pp_page`,`pp_propname`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_page_props`
---
-
-LOCK TABLES `mw_page_props` WRITE;
-/*!40000 ALTER TABLE `mw_page_props` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_page_props` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_page_restrictions`
---
-
-DROP TABLE IF EXISTS `mw_page_restrictions`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_page_restrictions` (
- `pr_page` int(11) NOT NULL,
- `pr_type` varbinary(60) NOT NULL,
- `pr_level` varbinary(60) NOT NULL,
- `pr_cascade` tinyint(4) NOT NULL,
- `pr_user` int(11) DEFAULT NULL,
- `pr_expiry` varbinary(14) DEFAULT NULL,
- `pr_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- PRIMARY KEY (`pr_id`),
- UNIQUE KEY `pr_pagetype` (`pr_page`,`pr_type`),
- KEY `pr_typelevel` (`pr_type`,`pr_level`),
- KEY `pr_level` (`pr_level`),
- KEY `pr_cascade` (`pr_cascade`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_page_restrictions`
---
-
-LOCK TABLES `mw_page_restrictions` WRITE;
-/*!40000 ALTER TABLE `mw_page_restrictions` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_page_restrictions` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_pagelinks`
---
-
-DROP TABLE IF EXISTS `mw_pagelinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_pagelinks` (
- `pl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `pl_namespace` int(11) NOT NULL DEFAULT '0',
- `pl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `pl_from` (`pl_from`,`pl_namespace`,`pl_title`),
- UNIQUE KEY `pl_namespace` (`pl_namespace`,`pl_title`,`pl_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_pagelinks`
---
-
-LOCK TABLES `mw_pagelinks` WRITE;
-/*!40000 ALTER TABLE `mw_pagelinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_pagelinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_protected_titles`
---
-
-DROP TABLE IF EXISTS `mw_protected_titles`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_protected_titles` (
- `pt_namespace` int(11) NOT NULL,
- `pt_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `pt_user` int(10) unsigned NOT NULL,
- `pt_reason` tinyblob,
- `pt_timestamp` binary(14) NOT NULL,
- `pt_expiry` varbinary(14) NOT NULL DEFAULT '',
- `pt_create_perm` varbinary(60) NOT NULL,
- UNIQUE KEY `pt_namespace_title` (`pt_namespace`,`pt_title`),
- KEY `pt_timestamp` (`pt_timestamp`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_protected_titles`
---
-
-LOCK TABLES `mw_protected_titles` WRITE;
-/*!40000 ALTER TABLE `mw_protected_titles` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_protected_titles` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_querycache`
---
-
-DROP TABLE IF EXISTS `mw_querycache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_querycache` (
- `qc_type` varbinary(32) NOT NULL,
- `qc_value` int(10) unsigned NOT NULL DEFAULT '0',
- `qc_namespace` int(11) NOT NULL DEFAULT '0',
- `qc_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- KEY `qc_type` (`qc_type`,`qc_value`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_querycache`
---
-
-LOCK TABLES `mw_querycache` WRITE;
-/*!40000 ALTER TABLE `mw_querycache` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_querycache` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_querycache_info`
---
-
-DROP TABLE IF EXISTS `mw_querycache_info`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_querycache_info` (
- `qci_type` varbinary(32) NOT NULL DEFAULT '',
- `qci_timestamp` binary(14) NOT NULL DEFAULT '19700101000000',
- UNIQUE KEY `qci_type` (`qci_type`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_querycache_info`
---
-
-LOCK TABLES `mw_querycache_info` WRITE;
-/*!40000 ALTER TABLE `mw_querycache_info` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_querycache_info` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_querycachetwo`
---
-
-DROP TABLE IF EXISTS `mw_querycachetwo`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_querycachetwo` (
- `qcc_type` varbinary(32) NOT NULL,
- `qcc_value` int(10) unsigned NOT NULL DEFAULT '0',
- `qcc_namespace` int(11) NOT NULL DEFAULT '0',
- `qcc_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `qcc_namespacetwo` int(11) NOT NULL DEFAULT '0',
- `qcc_titletwo` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- KEY `qcc_type` (`qcc_type`,`qcc_value`),
- KEY `qcc_title` (`qcc_type`,`qcc_namespace`,`qcc_title`),
- KEY `qcc_titletwo` (`qcc_type`,`qcc_namespacetwo`,`qcc_titletwo`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_querycachetwo`
---
-
-LOCK TABLES `mw_querycachetwo` WRITE;
-/*!40000 ALTER TABLE `mw_querycachetwo` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_querycachetwo` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_recentchanges`
---
-
-DROP TABLE IF EXISTS `mw_recentchanges`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_recentchanges` (
- `rc_id` int(11) NOT NULL AUTO_INCREMENT,
- `rc_timestamp` varbinary(14) NOT NULL DEFAULT '',
- `rc_cur_time` varbinary(14) NOT NULL DEFAULT '',
- `rc_user` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
- `rc_namespace` int(11) NOT NULL DEFAULT '0',
- `rc_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rc_comment` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rc_minor` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_bot` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_new` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_cur_id` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_this_oldid` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_last_oldid` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_type` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_moved_to_ns` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_moved_to_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rc_patrolled` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_ip` varbinary(40) NOT NULL DEFAULT '',
- `rc_old_len` int(11) DEFAULT NULL,
- `rc_new_len` int(11) DEFAULT NULL,
- `rc_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rc_logid` int(10) unsigned NOT NULL DEFAULT '0',
- `rc_log_type` varbinary(255) DEFAULT NULL,
- `rc_log_action` varbinary(255) DEFAULT NULL,
- `rc_params` blob,
- PRIMARY KEY (`rc_id`),
- KEY `rc_timestamp` (`rc_timestamp`),
- KEY `rc_namespace_title` (`rc_namespace`,`rc_title`),
- KEY `rc_cur_id` (`rc_cur_id`),
- KEY `new_name_timestamp` (`rc_new`,`rc_namespace`,`rc_timestamp`),
- KEY `rc_ip` (`rc_ip`),
- KEY `rc_ns_usertext` (`rc_namespace`,`rc_user_text`),
- KEY `rc_user_text` (`rc_user_text`,`rc_timestamp`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_recentchanges`
---
-
-LOCK TABLES `mw_recentchanges` WRITE;
-/*!40000 ALTER TABLE `mw_recentchanges` DISABLE KEYS */;
-INSERT INTO `mw_recentchanges` VALUES (1,'20101230131547','20101230131547',0,'MediaWiki Default',0,'Main_Page','',0,0,1,1,1,0,1,0,'',0,'::1',0,438,0,0,NULL,'','');
-/*!40000 ALTER TABLE `mw_recentchanges` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_redirect`
---
-
-DROP TABLE IF EXISTS `mw_redirect`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_redirect` (
- `rd_from` int(10) unsigned NOT NULL DEFAULT '0',
- `rd_namespace` int(11) NOT NULL DEFAULT '0',
- `rd_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rd_interwiki` varchar(32) DEFAULT NULL,
- `rd_fragment` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin DEFAULT NULL,
- PRIMARY KEY (`rd_from`),
- KEY `rd_ns_title` (`rd_namespace`,`rd_title`,`rd_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_redirect`
---
-
-LOCK TABLES `mw_redirect` WRITE;
-/*!40000 ALTER TABLE `mw_redirect` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_redirect` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_revision`
---
-
-DROP TABLE IF EXISTS `mw_revision`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_revision` (
- `rev_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `rev_page` int(10) unsigned NOT NULL,
- `rev_text_id` int(10) unsigned NOT NULL,
- `rev_comment` tinyblob NOT NULL,
- `rev_user` int(10) unsigned NOT NULL DEFAULT '0',
- `rev_user_text` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `rev_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `rev_minor_edit` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rev_deleted` tinyint(3) unsigned NOT NULL DEFAULT '0',
- `rev_len` int(10) unsigned DEFAULT NULL,
- `rev_parent_id` int(10) unsigned DEFAULT NULL,
- PRIMARY KEY (`rev_id`),
- UNIQUE KEY `rev_page_id` (`rev_page`,`rev_id`),
- KEY `rev_timestamp` (`rev_timestamp`),
- KEY `page_timestamp` (`rev_page`,`rev_timestamp`),
- KEY `user_timestamp` (`rev_user`,`rev_timestamp`),
- KEY `usertext_timestamp` (`rev_user_text`,`rev_timestamp`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 MAX_ROWS=10000000 AVG_ROW_LENGTH=1024;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_revision`
---
-
-LOCK TABLES `mw_revision` WRITE;
-/*!40000 ALTER TABLE `mw_revision` DISABLE KEYS */;
-INSERT INTO `mw_revision` VALUES (1,1,1,'',0,'MediaWiki Default','20101230131547',0,0,438,0);
-/*!40000 ALTER TABLE `mw_revision` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_searchindex`
---
-
-DROP TABLE IF EXISTS `mw_searchindex`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_searchindex` (
- `si_page` int(10) unsigned NOT NULL,
- `si_title` varchar(255) NOT NULL DEFAULT '',
- `si_text` mediumtext NOT NULL,
- UNIQUE KEY `si_page` (`si_page`),
- FULLTEXT KEY `si_title` (`si_title`),
- FULLTEXT KEY `si_text` (`si_text`)
-) ENGINE=MyISAM DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_searchindex`
---
-
-LOCK TABLES `mw_searchindex` WRITE;
-/*!40000 ALTER TABLE `mw_searchindex` DISABLE KEYS */;
-INSERT INTO `mw_searchindex` VALUES (1,'main page',' mediawiki hasu800 been successfully installed. consult theu800 user user\'su800 guide foru800 information onu800 using theu800 wiki software. getting started getting started getting started configuration settings list mediawiki faqu800 mediawiki release mailing list ');
-/*!40000 ALTER TABLE `mw_searchindex` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_site_stats`
---
-
-DROP TABLE IF EXISTS `mw_site_stats`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_site_stats` (
- `ss_row_id` int(10) unsigned NOT NULL,
- `ss_total_views` bigint(20) unsigned DEFAULT '0',
- `ss_total_edits` bigint(20) unsigned DEFAULT '0',
- `ss_good_articles` bigint(20) unsigned DEFAULT '0',
- `ss_total_pages` bigint(20) DEFAULT '-1',
- `ss_users` bigint(20) DEFAULT '-1',
- `ss_active_users` bigint(20) DEFAULT '-1',
- `ss_admins` int(11) DEFAULT '-1',
- `ss_images` int(11) DEFAULT '0',
- UNIQUE KEY `ss_row_id` (`ss_row_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_site_stats`
---
-
-LOCK TABLES `mw_site_stats` WRITE;
-/*!40000 ALTER TABLE `mw_site_stats` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_site_stats` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_tag_summary`
---
-
-DROP TABLE IF EXISTS `mw_tag_summary`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_tag_summary` (
- `ts_rc_id` int(11) DEFAULT NULL,
- `ts_log_id` int(11) DEFAULT NULL,
- `ts_rev_id` int(11) DEFAULT NULL,
- `ts_tags` blob NOT NULL,
- UNIQUE KEY `tag_summary_rc_id` (`ts_rc_id`),
- UNIQUE KEY `tag_summary_log_id` (`ts_log_id`),
- UNIQUE KEY `tag_summary_rev_id` (`ts_rev_id`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_tag_summary`
---
-
-LOCK TABLES `mw_tag_summary` WRITE;
-/*!40000 ALTER TABLE `mw_tag_summary` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_tag_summary` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_templatelinks`
---
-
-DROP TABLE IF EXISTS `mw_templatelinks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_templatelinks` (
- `tl_from` int(10) unsigned NOT NULL DEFAULT '0',
- `tl_namespace` int(11) NOT NULL DEFAULT '0',
- `tl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- UNIQUE KEY `tl_from` (`tl_from`,`tl_namespace`,`tl_title`),
- UNIQUE KEY `tl_namespace` (`tl_namespace`,`tl_title`,`tl_from`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_templatelinks`
---
-
-LOCK TABLES `mw_templatelinks` WRITE;
-/*!40000 ALTER TABLE `mw_templatelinks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_templatelinks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_text`
---
-
-DROP TABLE IF EXISTS `mw_text`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_text` (
- `old_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `old_text` mediumblob NOT NULL,
- `old_flags` tinyblob NOT NULL,
- PRIMARY KEY (`old_id`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1 MAX_ROWS=10000000 AVG_ROW_LENGTH=10240;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_text`
---
-
-LOCK TABLES `mw_text` WRITE;
-/*!40000 ALTER TABLE `mw_text` DISABLE KEYS */;
-INSERT INTO `mw_text` VALUES (1,'\'\'\'MediaWiki has been successfully installed.\'\'\'\n\nConsult the [http://meta.wikimedia.org/wiki/Help:Contents User\'s Guide] for information on using the wiki software.\n\n== Getting started ==\n* [http://www.mediawiki.org/wiki/Manual:Configuration_settings Configuration settings list]\n* [http://www.mediawiki.org/wiki/Manual:FAQ MediaWiki FAQ]\n* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]','utf-8');
-/*!40000 ALTER TABLE `mw_text` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_trackbacks`
---
-
-DROP TABLE IF EXISTS `mw_trackbacks`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_trackbacks` (
- `tb_id` int(11) NOT NULL AUTO_INCREMENT,
- `tb_page` int(11) DEFAULT NULL,
- `tb_title` varchar(255) NOT NULL,
- `tb_url` blob NOT NULL,
- `tb_ex` text,
- `tb_name` varchar(255) DEFAULT NULL,
- PRIMARY KEY (`tb_id`),
- KEY `tb_page` (`tb_page`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_trackbacks`
---
-
-LOCK TABLES `mw_trackbacks` WRITE;
-/*!40000 ALTER TABLE `mw_trackbacks` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_trackbacks` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_transcache`
---
-
-DROP TABLE IF EXISTS `mw_transcache`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_transcache` (
- `tc_url` varbinary(255) NOT NULL,
- `tc_contents` text,
- `tc_time` binary(14) NOT NULL,
- UNIQUE KEY `tc_url_idx` (`tc_url`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_transcache`
---
-
-LOCK TABLES `mw_transcache` WRITE;
-/*!40000 ALTER TABLE `mw_transcache` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_transcache` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_updatelog`
---
-
-DROP TABLE IF EXISTS `mw_updatelog`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_updatelog` (
- `ul_key` varchar(255) NOT NULL,
- `ul_value` blob,
- PRIMARY KEY (`ul_key`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_updatelog`
---
-
-LOCK TABLES `mw_updatelog` WRITE;
-/*!40000 ALTER TABLE `mw_updatelog` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_updatelog` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user`
---
-
-DROP TABLE IF EXISTS `mw_user`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user` (
- `user_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
- `user_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `user_real_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `user_password` tinyblob NOT NULL,
- `user_newpassword` tinyblob NOT NULL,
- `user_newpass_time` binary(14) DEFAULT NULL,
- `user_email` tinytext NOT NULL,
- `user_touched` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `user_token` binary(32) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- `user_email_authenticated` binary(14) DEFAULT NULL,
- `user_email_token` binary(32) DEFAULT NULL,
- `user_email_token_expires` binary(14) DEFAULT NULL,
- `user_registration` binary(14) DEFAULT NULL,
- `user_editcount` int(11) DEFAULT NULL,
- PRIMARY KEY (`user_id`),
- UNIQUE KEY `user_name` (`user_name`),
- KEY `user_email_token` (`user_email_token`)
-) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user`
---
-
-LOCK TABLES `mw_user` WRITE;
-/*!40000 ALTER TABLE `mw_user` DISABLE KEYS */;
-INSERT INTO `mw_user` VALUES (1,'WikiSysop','',':B:b1373470:f7e87db0c9596055f39a1225b0c31508','',NULL,'','','20101230131552','de4ddde7c4eef6e3609f4287324a0a18',NULL,'\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0',NULL,'20101230131547',0);
-/*!40000 ALTER TABLE `mw_user` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user_groups`
---
-
-DROP TABLE IF EXISTS `mw_user_groups`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user_groups` (
- `ug_user` int(10) unsigned NOT NULL DEFAULT '0',
- `ug_group` varbinary(16) NOT NULL DEFAULT '',
- UNIQUE KEY `ug_user_group` (`ug_user`,`ug_group`),
- KEY `ug_group` (`ug_group`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user_groups`
---
-
-LOCK TABLES `mw_user_groups` WRITE;
-/*!40000 ALTER TABLE `mw_user_groups` DISABLE KEYS */;
-INSERT INTO `mw_user_groups` VALUES (1,'bureaucrat');
-INSERT INTO `mw_user_groups` VALUES (1,'sysop');
-/*!40000 ALTER TABLE `mw_user_groups` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user_newtalk`
---
-
-DROP TABLE IF EXISTS `mw_user_newtalk`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user_newtalk` (
- `user_id` int(11) NOT NULL DEFAULT '0',
- `user_ip` varbinary(40) NOT NULL DEFAULT '',
- `user_last_timestamp` binary(14) NOT NULL DEFAULT '\0\0\0\0\0\0\0\0\0\0\0\0\0\0',
- KEY `user_id` (`user_id`),
- KEY `user_ip` (`user_ip`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user_newtalk`
---
-
-LOCK TABLES `mw_user_newtalk` WRITE;
-/*!40000 ALTER TABLE `mw_user_newtalk` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_user_newtalk` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_user_properties`
---
-
-DROP TABLE IF EXISTS `mw_user_properties`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_user_properties` (
- `up_user` int(11) NOT NULL,
- `up_property` varbinary(32) NOT NULL,
- `up_value` blob,
- UNIQUE KEY `user_properties_user_property` (`up_user`,`up_property`),
- KEY `user_properties_property` (`up_property`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_user_properties`
---
-
-LOCK TABLES `mw_user_properties` WRITE;
-/*!40000 ALTER TABLE `mw_user_properties` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_user_properties` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_valid_tag`
---
-
-DROP TABLE IF EXISTS `mw_valid_tag`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_valid_tag` (
- `vt_tag` varchar(255) NOT NULL,
- PRIMARY KEY (`vt_tag`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_valid_tag`
---
-
-LOCK TABLES `mw_valid_tag` WRITE;
-/*!40000 ALTER TABLE `mw_valid_tag` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_valid_tag` ENABLE KEYS */;
-UNLOCK TABLES;
-
---
--- Table structure for table `mw_watchlist`
---
-
-DROP TABLE IF EXISTS `mw_watchlist`;
-/*!40101 SET @saved_cs_client = @@character_set_client */;
-/*!40101 SET character_set_client = utf8 */;
-CREATE TABLE `mw_watchlist` (
- `wl_user` int(10) unsigned NOT NULL,
- `wl_namespace` int(11) NOT NULL DEFAULT '0',
- `wl_title` varchar(255) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
- `wl_notificationtimestamp` varbinary(14) DEFAULT NULL,
- UNIQUE KEY `wl_user` (`wl_user`,`wl_namespace`,`wl_title`),
- KEY `namespace_title` (`wl_namespace`,`wl_title`)
-) ENGINE=InnoDB DEFAULT CHARSET=latin1;
-/*!40101 SET character_set_client = @saved_cs_client */;
-
---
--- Dumping data for table `mw_watchlist`
---
-
-LOCK TABLES `mw_watchlist` WRITE;
-/*!40000 ALTER TABLE `mw_watchlist` DISABLE KEYS */;
-/*!40000 ALTER TABLE `mw_watchlist` ENABLE KEYS */;
-UNLOCK TABLES;
-/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
-
-/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
-/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
-/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
-/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
-/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
-/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
-/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-
--- Dump completed on 2010-12-31 1:20:11
+++ /dev/null
-<?php
-/**
- * MediaWikiButtonsAvailabilityTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 30 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name :'Back' and 'Continue' button availability
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiButtonsAvailabilityTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Verify only 'Continue' button available on 'Language' page
- public function testOnlyContinueButtonAvailability() {
- parent::navigateLanguagePage();
-
- // Verify only 'Continue' button avaialble
- $this->assertTrue( $this->isElementPresent( "submit-continue" ) );
-
- // 'Back' button is not avaialble
- $this->assertElementNotPresent( "submit-back" );
- }
-
- // Verify 'Continue' and 'Back' buttons availability
- public function testBothButtonsAvailability() {
- // Verify buttons availability on 'Welcome to MediaWiki' page
- parent::navigateWelcometoMediaWikiPage();
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- $this->assertTrue( $this->isElementPresent( "submit-continue" ) );
- parent::restartInstallation();
-
- // Verify buttons availability on 'Connect to Database' page
- parent::navigateConnetToDatabasePage();
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- $this->assertTrue( $this->isElementPresent( "submit-continue" ) );
- parent::restartInstallation();
-
- // Verify buttons availability on 'Database settings' page
- $databaseName = DB_NAME_PREFIX . "_db_settings";
- parent::navigateDatabaseSettingsPage( $databaseName );
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- $this->assertTrue( $this->isElementPresent( "submit-continue" ) );
- parent::restartInstallation();
-
- // Verify buttons availability on 'Name' page
- $databaseName = DB_NAME_PREFIX . "_name";
- parent::navigateNamePage( $databaseName );
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- $this->assertTrue( $this->isElementPresent( "submit-continue" ) );
- parent::restartInstallation();
-
- // Verify buttons availability on 'Options' page
- $databaseName = DB_NAME_PREFIX . "_options";
- parent::navigateOptionsPage( $databaseName );
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- $this->assertTrue( $this->isElementPresent( "submit-continue" ) );
- parent::restartInstallation();
-
- // Verify buttons availability on 'Install' page
- $databaseName = DB_NAME_PREFIX . "_install";
- parent::navigateInstallPage( $databaseName );
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- $this->assertTrue( $this->isElementPresent( "submit-continue" ) );
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiDifferentDatabaseAccountTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 04 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Install MediaWiki with different Database accounts for web access.
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiDifferentDatabaseAccountTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Install Mediawiki using 'MySQL' database type.
- public function testDifferentDatabaseAccount() {
- $databaseName = DB_NAME_PREFIX . "_dif_accounts";
-
- // Navigate to the 'Database settings' page
- parent::navigateDatabaseSettingsPage( $databaseName );
-
- // Click on the 'Use the same account as for installation' check box
- $this->click( "mysql__SameAccount" );
-
- // Change the 'Database username'
- $this->type( "mysql_wgDBuser", DB_WEB_USER );
-
- // Enter 'Database password:'
- $this->type( "mysql_wgDBpassword", DB_WEB_USER_PASSWORD );
-
- // Select 'Create the account if it does not already exist' check box
- $this->click( "mysql__CreateDBAccount" );
- parent::clickContinueButton();
-
- // 'Name' page
- parent::completeNamePage();
-
- // 'Options' page
- parent::clickContinueButton();
-
- // 'Install' page
- $this->assertEquals( "Creating database user... done",
- $this->getText( LINK_FORM . "ul/li[3]" ) );
- parent::clickContinueButton();
-
- // 'Complete' page
- parent::completePageSuccessfull();
- $this->chooseCancelOnNextConfirmation();
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiDifferntDatabasePrefixTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 02 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Install MediaWiki with the same database and the different
- * database prefixes(Share one database between multiple wikis).
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiDifferntDatabasePrefixTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Install Mediawiki using 'MySQL' database type.
- public function testDifferentDatabasePrefix() {
- $databaseName = DB_NAME_PREFIX . "_db_prefix";
- parent::navigateInstallPage( $databaseName );
-
- // To 'Options' page
- parent::clickBackButton();
-
- // To 'Name' page
- parent::clickBackButton();
-
- // To 'Database settings' page
- parent::clickBackButton();
-
- // To 'Connect to database' page
- parent::clickBackButton();
-
- // From 'Connect to database' page without database prefix
- parent::clickContinueButton();
-
- // Verify upgrade existing message
- $this->assertEquals( "Upgrade existing installation",
- $this->getText( LINK_DIV . "h2" ) );
-
- // To 'Connect to database' page
- parent::clickBackButton();
-
- // Input the database prefix
- $this->type( "mysql_wgDBprefix", DATABASE_PREFIX );
-
- // From 'Connect to database' page with database prefix
- parent::clickContinueButton();
-
- // To 'Complete' page
- parent::clickContinueButton();
- parent::completeNamePage();
- parent::clickContinueButton();
-
- // Verify already installed warning message
- $this->assertEquals( "Install",
- $this->getText( LINK_DIV . "h2" ) );
- $this->assertEquals( "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.",
- $this->getText( LINK_FORM . "div[1]" ) );
-
- parent::clickContinueButton();
- parent::completePageSuccessfull();
- $this->chooseCancelOnNextConfirmation();
- parent::restartInstallation();
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiErrorsConnectToDatabasePageTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 09 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Invalid/ blank values for fields in 'Connect to database' page.
- * Version : MediaWiki 1.18alpha
- */
-
-class MediaWikiErrorsConnectToDatabasePageTestCase extends MediaWikiInstallationCommonFunction {
-
- function setUp() {
- parent::setUp();
- }
-
- // Verify warning messages for the 'Connet to database' page
- public function testErrorsConnectToDatabasePage() {
- parent::navigateConnetToDatabasePage();
-
- // Verify warning mesage for invalid database host
- $this->type( "mysql_wgDBserver", INVALID_DB_HOST );
- parent::clickContinueButton();
- $this->assertEquals( "DB connection error: php_network_getaddresses: getaddrinfo failed: No such host is known. (" . INVALID_DB_HOST . ").",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[1]" ) );
- $this->assertEquals( "Check the host, username and password below and try again.",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[2]" ) );
- // Verify warning message for the blank database host
- $this->type( "mysql_wgDBserver", "" );
- parent::clickContinueButton();
- $this->assertEquals( "MySQL 4.0.14 or later is required, you have .",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // Valid Database Host
- $this->type( "mysql_wgDBserver", VALID_DB_HOST );
-
- // Verify warning message for the invalid database name
- $this->type( "mysql_wgDBname", INVALID_DB_NAME );
- parent::clickContinueButton();
- $this->assertEquals( "Invalid database name \"" . INVALID_DB_NAME . "\". Use only ASCII letters (a-z, A-Z), numbers (0-9) and underscores (_).",
- $this->getText( LINK_DIV . "div[2]/div[2]/p" ) );
-
- // Verify warning message for the blank database name
- $this->type( "mysql_wgDBname", "" );
- parent::clickContinueButton();
- $this->assertEquals( "You must enter a value for \"Database name\"",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // valid Database name
- $this->type( "mysql_wgDBname", VALID_DB_NAME );
-
- // Verify warning message for the invalid databaase prefix
- $this->type( "mysql_wgDBprefix", INVALID_DB_PREFIX );
- parent::clickContinueButton();
- $this->assertEquals( "Invalid database prefix \"" . INVALID_DB_PREFIX . "\". Use only ASCII letters (a-z, A-Z), numbers (0-9) and underscores (_).",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // Valid Database prefix
- $this->type( "mysql_wgDBprefix", VALID_DB_PREFIX );
-
- // Verify warning message for the invalid database user name
- $this->type( "mysql__InstallUser", INVALID_DB_USER_NAME );
- parent::clickContinueButton();
- $this->assertEquals( "DB connection error: Access denied for user '" . INVALID_DB_USER_NAME . "'@'localhost' (using password: NO) (localhost).",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[1]" ) );
- $this->assertEquals( "Check the host, username and password below and try again.",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[2]" ) );
-
- // Verify warning message for the blank database user name
- $this->type( "mysql__InstallUser", "" );
- parent::clickContinueButton();
- $this->assertEquals( "DB connection error: Access denied for user 'SYSTEM'@'localhost' (using password: NO) (localhost).",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[1]" ) );
- $this->assertEquals( "Check the host, username and password below and try again.",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[2]" ) );
-
- // Valid Database username
- $this->type( "mysql__InstallUser", VALID_DB_USER_NAME );
-
- // Verify warning message for the invalid password
- $this->type( "mysql__InstallPassword", INVALID_DB_PASSWORD );
- parent::clickContinueButton();
-
- $this->assertEquals( "DB connection error: Access denied for user 'root'@'localhost' (using password: YES) (localhost).",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[1]" ) );
- $this->assertEquals( "Check the host, username and password below and try again.",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[2]" ) );
-
- // Verify warning message for the invalid username and password
- $this->type( "mysql__InstallUser", INVALID_DB_USER_NAME );
- $this->type( "mysql__InstallPassword", INVALID_DB_PASSWORD );
- parent::clickContinueButton();
- $this->assertEquals( "DB connection error: Access denied for user '" . INVALID_DB_USER_NAME . "'@'localhost' (using password: YES) (localhost).",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[1]" ) );
- $this->assertEquals( "Check the host, username and password below and try again.",
- $this->getText( LINK_DIV . "div[2]/div[2]/p[2]" ) );
-
- // Valid username and valid password
- $this->type( "mysql__InstallUser", VALID_DB_USER_NAME );
- $this->type( "mysql__InstallPassword", "" );
- parent::clickContinueButton();
-
- // successfully completes the 'Connect to database' page
- $this->assertEquals( "Database settings",
- $this->getText( LINK_DIV . "h2" ) );
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiErrorsNamepageTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 10 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Invalid/ blank values for fields in 'Name' page.
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiErrorsNamepageTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Verify warning message for the 'Name' page
- public function testErrorsNamePage() {
-
- $databaseName = DB_NAME_PREFIX . "_error_name";
-
- parent::navigateNamePage( $databaseName );
-
- // Verify warning message for all blank fields
- parent::clickContinueButton();
- $this->assertEquals( "Enter a site name.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
- $this->assertEquals( "Enter an administrator username.",
- $this->getText( LINK_DIV . "div[3]/div[2]" ) );
- $this->assertEquals( "Enter a password for the administrator account.",
- $this->getText( LINK_DIV . "div[4]/div[2]" ) );
-
- // Verify warning message for the blank 'Site name'
- $this->type( "config__AdminName", VALID_YOUR_NAME );
- $this->type( "config__AdminPassword", VALID_PASSWORD );
- $this->type( "config__AdminPassword2", VALID_PASSWORD_AGAIN );
- parent::clickContinueButton();
- $this->assertEquals( "Enter a site name.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // Input valid 'Site name'
- $this->type( "config_wgSitename", VALID_WIKI_NAME );
-
- // Verify warning message for the invalid "Project namespace'
- $this->click( "config__NamespaceType_other" );
- $this->type( "config_wgMetaNamespace", INVALID_NAMESPACE );
- parent::clickContinueButton();
- $this->assertEquals( "The specified namespace \"\" is invalid. Specify a different project namespace.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // Verify warning message for the blank 'Project namespace'
- $this->type( "config_wgSitename", VALID_WIKI_NAME );
- $this->click( "config__NamespaceType_other" );
- $this->type( "config_wgMetaNamespace", "" );
- parent::clickContinueButton();
- $this->assertEquals( "The specified namespace \"\" is invalid. Specify a different project namespace.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // Valid 'Project namespace'
- $this->click( "config__NamespaceType_other" );
- $this->type( "config_wgMetaNamespace", VALID_NAMESPACE );
- parent::clickContinueButton();
-
- // Valid 'Site name'
- $this->click( "config__NamespaceType_site-name" );
- $this->type( "config_wgSitename", VALID_WIKI_NAME );
-
- // Verify warning message for blank 'Your name'
- $this->type( "config__AdminName", " " );
- parent::clickContinueButton();
- $this->assertEquals( "Enter an administrator username.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- $this->type( "config_wgSitename", VALID_WIKI_NAME );
- // Verify warning message for blank 'Password'
- $this->type( "config__AdminName", VALID_YOUR_NAME );
- $this->type( "config__AdminPassword", " " );
- parent::clickContinueButton();
- $this->assertEquals( "Enter a password for the administrator account.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // Verify warning message for the blank 'Password again'
- $this->type( "config_wgSitename", VALID_WIKI_NAME );
- $this->type( "config__AdminPassword", VALID_PASSWORD );
- $this->type( "config__AdminPassword2", " " );
- parent::clickContinueButton();
- $this->assertEquals( "The two passwords you entered do not match.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
-
- // Verify warning message for the different'Password' and 'Password again'
- $this->type( "config_wgSitename", VALID_WIKI_NAME );
- $this->type( "config__AdminPassword", VALID_PASSWORD );
- $this->type( "config__AdminPassword2", INVALID_PASSWORD_AGAIN );
- parent::clickContinueButton();
- $this->assertEquals( "The two passwords you entered do not match.",
- $this->getText( LINK_DIV . "div[2]/div[2]" ) );
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiHelpFieldHintTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 29 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Help field hint availability for the fields.
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiHelpFieldHintTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Verify help field availability for the fields
- public function testMySQLConnectToDatabaseFieldHint() {
-
- parent::navigateConnetToDatabasePage();
-
- // Verify help field for 'Database host'
- $this->click( "//div[@id='DB_wrapper_mysql']/div/div[1]/div/span[1]" );
- $this->assertEquals( MYSQL_DATABASE_HOST_HELP,
- $this->getText( "//div[@id='DB_wrapper_mysql']/div/div[1]/div/span[2]" ) );
-
- // Verify help field for 'Database name'
- $this->click( "//div[@id='DB_wrapper_mysql']/fieldset[1]/div[1]/div[1]/div/span[1]" );
- $this->assertEquals( MYSQL_DATABASE_NAME_HELP,
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[1]/div[1]/div[1]/div/span[2]" ) );
-
-
- // Verify help field for 'Database table prefix'
- $this->click( "//div[@id='DB_wrapper_mysql']/fieldset[1]/div[2]/div[1]/div/span[1]" );
- $this->assertEquals( MYSQL_DATABASE_TABLE_PREFIX_HELP,
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[1]/div[1]/div[1]/div/span[2]/p[1]" ) );
-
- // Verify help field for 'Database username'
- $this->click( "//div[@id='DB_wrapper_mysql']/fieldset[2]/div[1]/div[1]/div/span[1]" );
- $this->assertEquals( MYSQL_DATBASE_USERNAME_HELP,
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[2]/div[1]/div[1]/div/span[2]" ) );
-
- // Verify help field for 'Database password'
- $this->click( "//div[@id='DB_wrapper_mysql']/fieldset[2]/div[2]/div[1]/div/span[1]" );
- $this->assertEquals( MYSQL_DATABASE_PASSWORD_HELP,
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[2]/div[2]/div[1]/div/span[2]/p" ) );
- }
-
- public function testSQLiteConnectToDatabaseFieldHint() {
- parent::navigateConnetToDatabasePage();
- $this->click( "DBType_sqlite" );
-
- // Verify help field for 'SQLite data directory'
- $this->click( "//div[@id='DB_wrapper_sqlite']/div[1]/div[1]/div/span[1]" );
- $this->assertEquals( SQLITE_DATA_DIRECTORY_HELP,
- $this->getText( "//div[@id='DB_wrapper_sqlite']/div[1]/div[1]/div/span[2]" ) );
-
- // Verify help field for 'Database name'
- $this->click( "//div[@id='DB_wrapper_sqlite']/div[2]/div[1]/div/span[1]" );
- $this->assertEquals( SQLITE_DATABASE_NAME_HELP, $this->getText( "//div[@id='DB_wrapper_sqlite']/div[2]/div[1]/div/span[2]/p" ) );
- }
-
- public function testDatabaseSettingsFieldHint() {
-
- $databaseName = DB_NAME_PREFIX . "_db_field";
- parent::navigateDatabaseSettingsPage( $databaseName );
-
- // Verify help field for 'Search engine'
- $this->click( LINK_FORM . "div[2]/span[1]" );
- $this->assertEquals( SEARCH_ENGINE_HELP,
- $this->getText( LINK_FORM . "div[2]/span[2]" ) );
-
- // Verify help field for 'Database character set'
- $this->click( LINK_FORM . "div[4]/span[1]" );
- $this->assertEquals( DATABASE_CHARACTER_SET_HELP,
- $this->getText( LINK_FORM . "div[4]/span[2]" ) );
- parent::restartInstallation();
- }
-
- public function testNameFieldHint() {
- $databaseName = DB_NAME_PREFIX . "_name_field";
- parent::navigateNamePage( $databaseName );
-
- // Verify help field for 'Name of Wiki'
- $this->click( LINK_FORM . "div[1]/div[1]/div/span[1]" );
- $this->assertEquals( NAME_OF_WIKI_HELP,
- $this->getText( LINK_FORM . "div[1]/div[1]/div/span[2]/p" ) );
-
- // Verify help field for 'Project namespace'
- $this->click( LINK_FORM . "div[2]/div[1]/div/span[1]" );
- $this->assertEquals( PROJECT_NAMESPACE_HELP,
- $this->getText( LINK_FORM . "div[2]/div[1]/div/span[2]/p" ) );
-
- // Verify help field for 'Your Name'
- $this->click( LINK_FORM . "fieldset/div[1]/div[1]/div/span[1]" );
- $this->assertEquals( USER_NAME_HELP,
- $this->getText( LINK_FORM . "fieldset/div[1]/div[1]/div/span[2]/p" ) );
-
- // Verify help field for 'E mail address'
- $this->click( LINK_FORM . "fieldset/div[4]/div[1]/div/span[1]" );
- $this->assertEquals( EMAIL_ADDRESS_HELP,
- $this->getText( LINK_FORM . "fieldset/div[4]/div[1]/div/span[2]/p" ) );
-
- parent::restartInstallation();
- }
-}
-
+++ /dev/null
-<?php
-/**
- * MediaWikiInstallationCommonFunction
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once 'PHPUnit/Extensions/SeleniumTestCase.php';
-require_once ( __DIR__ . '/MediaWikiInstallationConfig.php' );
-require_once ( __DIR__ . '/MediaWikiInstallationMessage.php' );
-require_once ( __DIR__ . '/MediaWikiInstallationVariables.php' );
-
-class MediaWikiInstallationCommonFunction extends PHPUnit_Extensions_SeleniumTestCase {
- function setUp() {
- $this->setBrowser( TEST_BROWSER );
- $this->setBrowserUrl( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/" );
- }
-
- public function navigateInitialpage() {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/" );
- }
-
- // Navigate to the 'Language' page
- public function navigateLanguagePage() {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
- }
-
- // Navigate to the 'Welcome to MediaWiki' page
- public function navigateWelcometoMediaWikiPage() {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
- $this->click( "submit-continue " );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Navigate yo 'Connect to Database' page
- public function navigateConnetToDatabasePage() {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // 'Welcome to MediaWiki!' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Connect to Database' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Navigate to the 'Database Settings' page
- public function navigateDatabaseSettingsPage( $databaseName ) {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // 'Welcome to MediaWiki!' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Connect to Database' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- $this->type( "mysql_wgDBname", $databaseName );
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Navigate to the 'Name' page
- public function navigateNamePage( $databaseName ) {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // 'Welcome to MediaWiki!' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Connect to Database' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- $this->type( "mysql_wgDBname", $databaseName );
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Database settings
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Navigate 'Options' page
- public function navigateOptionsPage( $databaseName ) {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // 'Welcome to MediaWiki!' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Connect to Database' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- $this->type( "mysql_wgDBname", $databaseName );
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Database settings
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Name
- $this->type( "config_wgSitename", NAME_OF_WIKI );
- $this->type( "config__AdminName", ADMIN_USER_NAME );
- $this->type( "config__AdminPassword", ADMIN_PASSWORD );
- $this->type( "config__AdminPassword2", ADMIN_RETYPE_PASSWORD );
- $this->type( "config__AdminEmail", ADMIN_EMAIL_ADDRESS );
-
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Navigate 'Install' page
- public function navigateInstallPage( $databaseName ) {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // 'Welcome to MediaWiki!' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Connect to Database' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- $this->type( "mysql_wgDBname", $databaseName );
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Database settings
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Name
- $this->type( "config_wgSitename", NAME_OF_WIKI );
- $this->type( "config__AdminName", ADMIN_USER_NAME );
- $this->type( "config__AdminPassword", ADMIN_PASSWORD );
- $this->type( "config__AdminPassword2", ADMIN_RETYPE_PASSWORD );
- $this->type( "config__AdminEmail", ADMIN_EMAIL_ADDRESS );
-
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Options page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Navigate to 'Complete' page
- public function navigateCompletePage( $databaseName ) {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // 'Welcome to MediaWiki!' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Connect to Database' page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- $this->type( "mysql_wgDBname", $databaseName );
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Database settings
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Name
- $this->type( "config_wgSitename", NAME_OF_WIKI );
- $this->type( "config__AdminName", ADMIN_USER_NAME );
- $this->type( "config__AdminPassword", ADMIN_PASSWORD );
- $this->type( "config__AdminPassword2", ADMIN_RETYPE_PASSWORD );
- $this->type( "config__AdminEmail", ADMIN_EMAIL_ADDRESS );
-
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Options page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Install page
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- $this->chooseCancelOnNextConfirmation();
- }
-
- // Complete the Name page fields
- public function completeNamePage() {
- $this->type( "config_wgSitename", NAME_OF_WIKI );
- $this->type( "config__AdminName", ADMIN_USER_NAME );
- $this->type( "config__AdminPassword", ADMIN_PASSWORD );
- $this->type( "config__AdminPassword2", ADMIN_RETYPE_PASSWORD );
- $this->type( "config__AdminEmail", ADMIN_EMAIL_ADDRESS );
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Clicking on the 'Continue' button in any MediaWiki page
- public function clickContinueButton() {
- $this->click( "submit-continue" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Clicking on the 'Back' button in any MediaWiki page
- public function clickBackButton() {
- $this->click( "submit-back" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Restarting the installation
- public function restartInstallation() {
- $this->click( "link=Restart installation" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- $this->click( "submit-restart" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- }
-
- // Verify 'MediaWiki' logo available in the initial screen
- public function mediaWikiLogoPresentInitialScreen() {
- $this->assertTrue( $this->isElementPresent( "//img[@alt='The MediaWiki logo']" ) );
- }
-
- // Verify 'MediaWiki' logo available
- public function mediaWikiLogoPresent() {
- $this->assertTrue( $this->isElementPresent( "//div[@id='p-logo']/a" ) );
- }
-
- public function completePageSuccessfull() {
- $this->assertEquals( "Complete!",
- $this->getText( "//div[@id='bodyContent']/div/div/h2" ) );
-
- // 'Congratulations!' text should be available in the 'Complete!' page.
- $this->assertEquals( "Congratulations!",
- $this->getText( "//div[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]/p[1]/b" ) );
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiInstallationConfig
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-
-/**
- * MediaWikiInstallerTestSuite.php can be run one time successfully
- * with current value of the 'DB_NAME_PREFIX'.
- * If you wish to run the suite more than one time, you need to change
- * the value of the 'DB_NAME_PREFIX'.
- */
-define( 'DB_NAME_PREFIX', "database_name" );
-define( 'DIRECTORY_NAME', "mediawiki" );
-define( 'PORT', "8080" );
-define( 'HOST_NAME', "localhost" );
-
-/**
- * Use the followings to run the test suite in different browsers.
- * Firefox : *firefox
- * IE : *iexplore
- * Google chrome : *googlechrome
- * Opera : *opera
- */
-define ( 'TEST_BROWSER', "*firefox" );
+++ /dev/null
-<?php
-/**
- * MediaWikiInstallationConfig
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-
-// 'MySQL' database type help field hint
-define( 'MYSQL_DATABASE_HOST_HELP', "If your database server is on different server, enter the host name or IP address here. \nIf you are using shared web hosting, your hosting provider should give you the correct host name in their documentation. \nIf you are installing on a Windows server and using MySQL, using \"localhost\" may not work for the server name. If it does not, try \"127.0.0.1\" for the local IP address." );
-define( 'MYSQL_DATABASE_NAME_HELP', "Choose a name that identifies your wiki. It should not contain spaces or hyphens. \nIf you are using shared web hosting, your hosting provider will either give you a specific database name to use or let you create databases via a control panel." );
-define( 'MYSQL_DATABASE_TABLE_PREFIX_HELP', "Choose a name that identifies your wiki. It should not contain spaces or hyphens." );
-define( 'MYSQL_DATBASE_USERNAME_HELP', "Enter the username that will be used to connect to the database during the installation process. This is not the username of the MediaWiki account; this is the username for your database." );
-define( 'MYSQL_DATABASE_PASSWORD_HELP', "Enter the password that will be used to connect to the database during the installation process. This is not the password for the MediaWiki account; this is the password for your database." );
-
-
-// 'SQLite' database type help field hint
-define( 'SQLITE_DATA_DIRECTORY_HELP', "SQLite stores all data in a single file. \nThe directory you provide must be writable by the webserver during installation. \nIt should not be accessible via the web, this is why we're not putting it where your PHP files are. \nThe installer will write a .htaccess file along with it, but if that fails someone can gain access to your raw database. That includes raw user data (e-mail addresses, hashed passwords) as well as deleted revisions and other restricted data on the wiki. \nConsider putting the database somewhere else altogether, for example in /var/lib/mediawiki/yourwiki." );
-define( 'SQLITE_DATABASE_NAME_HELP', "Choose a name that identifies your wiki. Do not use spaces or hyphens. This will be used for the SQLite data file name." );
-
-
-// 'Database settings' page hel0p field hint
-define( 'SEARCH_ENGINE_HELP', "InnoDB is almost always the best option, since it has good concurrency support. \nMyISAM may be faster in single-user or read-only installations. MyISAM databases tend to get corrupted more often than InnoDB databases." );
-define( 'DATABASE_CHARACTER_SET_HELP', "In binary mode, MediaWiki stores UTF-8 text to the database in binary fields. This is more efficient than MySQL's UTF-8 mode, and allows you to use the full range of Unicode characters. \nIn UTF-8 mode, MySQL will know what character set your data is in, and can present and convert it appropriately, but it will not let you store characters above the Basic Multilingual Plane." );
-
-
-// 'Name' page help field hint
-define( 'NAME_OF_WIKI_HELP', "This will appear in the title bar of the browser and in various other places." );
-define( 'PROJECT_NAMESPACE_HELP', "Following Wikipedia's example, many wikis keep their policy pages separate from their content pages, in a \"project namespace\". All page titles in this namespace start with a certain prefix, which you can specify here. Traditionally, this prefix is derived from the name of the wiki, but it cannot contain punctuation characters such as \"#\" or \":\"." );
-define( 'USER_NAME_HELP', "Enter your preferred username here, for example \"Joe Bloggs\". This is the name you will use to log in to the wiki." );
-define( 'EMAIL_ADDRESS_HELP', "Enter an e-mail address here to allow you to receive e-mail from other users on the wiki, reset your password, and be notified of changes to pages on your watchlist." );
-define( 'SUBSCRIBE_MAILING_LIST_HELP', "This is a low-volume mailing list used for release announcements, including important security announcements. You should subscribe to it and update your MediaWiki installation when new versions come out." );
-
-
-
+++ /dev/null
-<?php
-/**
- * MediaWikiInstallationConfig
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-
-// Common variables
-define( 'PAGE_LOAD_TIME', "80000" );
-
-// Common links
-define( 'LINK_DIV', "//div[@id='bodyContent']/div/div/" );
-define( 'LINK_FORM', "//div[@id='bodyContent']/div/div/div[2]/form/" );
-define( 'LINK_RIGHT_FRAMEWORK', "//div[@id='bodyContent']/div/div/div[1]/ul[1]/" );
-
-// 'Name' page input values
-define( 'NAME_OF_WIKI', "Site Name" );
-define( 'ADMIN_USER_NAME', "My Name" );
-define( 'ADMIN_PASSWORD', "12345" );
-define ( 'ADMIN_RETYPE_PASSWORD', "12345" );
-define ( 'ADMIN_EMAIL_ADDRESS', "admin@example.com" );
-
-
-// 'Name' page input values for warning messages
-define( 'VALID_WIKI_NAME', "MyWiki" );
-define( 'VALID_YOUR_NAME', "FirstName LastName" );
-define( 'VALID_PASSWORD', "12345" );
-define( 'VALID_PASSWORD_AGAIN', "12345" );
-define( 'INVALID_PASSWORD_AGAIN', "123" );
-define( 'VALID_NAMESPACE', "Mynamespace" );
-define( 'INVALID_NAMESPACE', "##..##" );
-
-
-// 'Database settings' page input values
-define( 'DB_WEB_USER', "different" );
-define( 'DB_WEB_USER_PASSWORD', "12345" );
-
-
-// 'Connet to database' page input values
-define( 'DATABASE_PREFIX', "databaseprefix" );
-
-
-// 'Connet to database' page input values for warning messages
-define( 'VALID_DB_HOST', "localhost" );
-define( 'INVALID_DB_HOST', "local" );
-define( 'INVALID_DB_NAME', "my-wiki" );
-define( 'VALID_DB_NAME', "my_wiki1" );
-define( 'INVALID_DB_PREFIX', "database prefix" );
-define( 'VALID_DB_PREFIX', "database_prefix" );
-define( 'INVALID_DB_USER_NAME', "roots" );
-define( 'VALID_DB_USER_NAME', "root" );
-define( 'INVALID_DB_PASSWORD', "12345" );
-
-
+++ /dev/null
-<?php
-/**
- * MediaWikiInstallerTestSuite
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-if ( PHP_SAPI != 'cli' ) {
- die( "Run me from the command line please.\n" );
-}
-
-require_once 'PHPUnit/Framework/TestSuite.php';
-
-require_once ( __DIR__ . '/MediaWikiUserInterfaceTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiButtonsAvailabilityTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiHelpFieldHintTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiRightFrameworkLinksTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiRestartInstallationTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiErrorsConnectToDatabasePageTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiErrorsNamepageTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiMySQLDataBaseTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiMySQLiteDataBaseTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiUpgradeExistingDatabaseTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiDifferntDatabasePrefixTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiDifferentDatabaseAccountTestCase.php' );
-require_once ( __DIR__ . '/MediaWikiOnAlreadyInstalledTestCase.php' );
-
-$suite = new PHPUnit_Framework_TestSuite( 'ArrayTest' );
-$result = new PHPUnit_Framework_TestResult;
-
-$suite->run( $result );
+++ /dev/null
-<?php
-/**
- * MediaWikiOnAlreadyInstalledTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 01 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Install Mediawiki using 'MySQL' database type successfully
- * Version : MediaWiki 1.18alpha
- */
-
-class MediaWikiMySQLDataBaseTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Verify MediaWiki installation using 'MySQL' database type
- public function testMySQLDatabaseSuccess() {
- $databaseName = DB_NAME_PREFIX . "_sql_db";
-
- parent::navigateConnetToDatabasePage();
-
- // Verify 'MySQL" is selected as the default database type
- $this->assertEquals( "MySQL settings", $this->getText( "//div[@id='DB_wrapper_mysql']/h3" ) );
-
- // Change 'Database name'
- $defaultDbName = $this->getText( "mysql_wgDBname" );
- $this->type( "mysql_wgDBname", " " );
- $this->type( "mysql_wgDBname", $databaseName );
- $this->assertNotEquals( $defaultDbName, $databaseName );
-
- // 'Database settings' page
- parent::clickContinueButton();
-
- // 'Name' page
- parent::clickContinueButton();
- parent::completeNamePage();
-
- // 'Options page
- parent::clickContinueButton();
-
- // 'Install' page
- parent::clickContinueButton();
-
- // 'Complete' page
- parent::completePageSuccessfull();
- parent::restartInstallation();
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiMySQLiteataBaseTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 06 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Install Mediawiki using 'MySQL' database type successfully
- * Version : MediaWiki 1.18alpha
- */
-
-class MediaWikiMySQLiteDataBaseTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Verify MediaWiki installation using 'MySQL' database type
- public function testMySQLDatabaseSuccess() {
- $databaseName = DB_NAME_PREFIX . "_sqlite_db";
-
- parent::navigateConnetToDatabasePage();
- $this->click( "DBType_sqlite" );
-
- // Select 'SQLite' database type
- $this->assertEquals( "SQLite settings", $this->getText( "//div[@id='DB_wrapper_sqlite']/h3" ) );
-
- // Change database name
- $defaultDbName = $this->getText( "sqlite_wgDBname" );
- $this->type( "sqlite_wgDBname", " " );
- $this->type( "sqlite_wgDBname", $databaseName );
- $this->assertNotEquals( $defaultDbName, $databaseName );
-
- // 'Database settings' page
- parent::clickContinueButton();
-
- // 'Name' page
- parent::clickContinueButton();
- parent::completeNamePage();
-
- // 'Options page
- parent::clickContinueButton();
-
- // 'Install' page
- parent::clickContinueButton();
-
- // 'Complete' page
- parent::completePageSuccessfull();
- parent::restartInstallation();
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-
-/**
- * Test Case ID : 03 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Install mediawiki on a already installed Mediawiki.]
- * Version : MediaWiki 1.18alpha
- */
-
-class MediaWikiOnAlreadyInstalledTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Install Mediawiki using 'MySQL' database type.
- public function testInstallOnAlreadyInstalled() {
- $databaseName = DB_NAME_PREFIX . "_already_installed";
- parent::navigateInstallPage( $databaseName );
-
- // 'Options' page
- parent::clickBackButton();
-
- // Install page
- parent::clickContinueButton();
-
- // 'Install' page should display after the 'Option' page
- $this->assertEquals( "Install", $this->getText( LINK_DIV . "h2" ) );
-
- // Verify warning text displayed
- $this->assertEquals( "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.",
- $this->getText( LINK_FORM . "div[1]/div[2]" ) );
-
- // Complete page
- parent::clickContinueButton();
- parent::completePageSuccessfull();
- $this->chooseCancelOnNextConfirmation();
- parent::restartInstallation();
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiRestartInstallationTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 11, 12 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Install mediawiki on a already installed Mediawiki.
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiRestartInstallationTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Verify restarting the installation
- public function testSuccessRestartInstallation() {
- $dbNameBeforeRestart = DB_NAME_PREFIX . "_db_before";
- parent::navigateDatabaseSettingsPage( $dbNameBeforeRestart );
-
- // Verify 'Restart installation' link available
- $this->assertTrue( $this->isElementPresent( "link=Restart installation" ) );
-
- // Click 'Restart installation'
- $this->click( "link=Restart installation " );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Restart Installation' page displayed
- $this->assertEquals( "Restart installation", $this->getText( LINK_DIV . "h2" ) );
-
- // Restart warning message displayed
- $this->assertTrue( $this->isTextPresent( "exact:Do you want to clear all saved data that you have entered and restart the installation process?" ) );
-
- // Click on the 'Yes, restart' button
- $this->click( "submit-restart" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Navigate to the initial installation page(Language).
- $this->assertEquals( "Language", $this->getText( LINK_DIV . "h2" ) );
-
- // 'Welcome to MediaWiki!' page
- parent::clickContinueButton();
-
- // 'Connect to database' page
- parent::clickContinueButton();
-
- // saved data should be deleted
- $dbNameAfterRestart = $this->getValue( "mysql_wgDBname" );
- $this->assertNotEquals( $dbNameBeforeRestart, $dbNameAfterRestart );
- }
-
- // Verify cancelling restart
- public function testCancelRestartInstallation() {
- $dbNameBeforeRestart = DB_NAME_PREFIX . "_cancel_restart";
-
- parent::navigateDatabaseSettingsPage( $dbNameBeforeRestart );
- // Verify 'Restart installation' link available
- $this->assertTrue( $this->isElementPresent( "link=Restart installation" ) );
-
- $this->click( "link=Restart installation" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Restart Installation' page displayed
- $this->assertEquals( "Restart installation", $this->getText( LINK_DIV . "h2" ) );
-
- // Restart warning message displayed
- $this->assertTrue( $this->isTextPresent( "Do you want to clear all saved data that you have entered and restart the installation process?" ) );
-
- // Click on the 'Back' button
- parent::clickBackButton();
-
- // Navigates to the previous page
- $this->assertEquals( "Database settings", $this->getText( LINK_DIV . "h2" ) );
-
- // 'Connect to database' page
- parent::clickBackButton();
-
- // Saved data remain on the page.
- $dbNameAfterRestart = $this->getValue( "mysql_wgDBname" );
- $this->assertEquals( $dbNameBeforeRestart, $dbNameAfterRestart );
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiRightFrameworkLinksTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 14, 15, 16, 17 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : User selects 'Read me' link.
- * User selects 'Release notes' link.
- * User selects 'Copying' link.
- * User selects 'Upgrading' link.
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiRightFrameworkLinksTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- public function testLinksAvailability() {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // Verify 'Read me' link availability
- $this->assertTrue( $this->isElementPresent( "link=Read me" ) );
-
- // Verify 'Release notes' link availability
- $this->assertTrue( $this->isElementPresent( "link=Release notes" ) );
-
- // Verify 'Copying' link availability
- $this->assertTrue( $this->isElementPresent( "link=Copying" ) );
- }
-
- public function testPageNavigation() {
- $this->open( "http://" . HOST_NAME . ":" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
-
- // Navigate to the 'Read me' page
- $this->click( "link=Read me" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- $this->assertEquals( "Read me", $this->getText( LINK_DIV . "h2[1]" ) );
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- parent::clickBackButton();
-
- // Navigate to the 'Release notes' page
- $this->click( "link=Release notes" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- $this->assertEquals( "Release notes", $this->getText( LINK_DIV . "h2[1]" ) );
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- parent::clickBackButton();
-
- // Navigate to the 'Copying' page
- $this->click( "link=Copying" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- $this->assertEquals( "Copying", $this->getText( LINK_DIV . "h2[1]" ) );
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
- parent::clickBackButton();
-
- // Navigate to the 'Upgrading' page
- $this->click( "link=Upgrading" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- $this->assertEquals( "Upgrading", $this->getText( LINK_DIV . "h2[1]" ) );
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiUpgradeExistingDatabaseTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 05 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : Install Mediawiki by updating the existing database.
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiUpgradeExistingDatabaseTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- // Install Mediawiki using 'MySQL' database type.
- public function testUpgradeExistingDatabase() {
-
- $databaseName = DB_NAME_PREFIX . "_upgrade_existing";
- parent::navigateInstallPage( $databaseName );
-
- $this->open( "http://localhost:" . PORT . "/" . DIRECTORY_NAME . "/config/index.php" );
- $this->assertEquals( "Install", $this->getText( LINK_DIV . "h2" ) );
- $this->assertEquals(
- "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.",
- $this->getText( LINK_DIV . "div[2]/form/div[1]/div[2]" )
- );
-
- // 'Optionis' page
- parent::clickBackButton();
-
- // 'Name' page
- parent::clickBackButton();
-
- // 'Database settings' page
- parent::clickBackButton();
-
- // 'Connect to database' page
- parent::clickBackButton();
- $this->type( "mysql_wgDBname", $databaseName );
- parent::clickContinueButton();
-
- // 'Upgrade existing installation' page displayed next to the 'Connect to database' page.
- $this->assertEquals( "Upgrade existing installation", $this->getText( LINK_DIV . "h2" ) );
-
- // Warning message displayed.
- $this->assertEquals( "There are MediaWiki tables in this database. To upgrade them to MediaWiki 1.18alpha, click Continue.",
- $this->getText( LINK_DIV . "div[2]/form/div[1]/div[2]" ) );
-
- parent::clickContinueButton();
- $this->assertEquals( "Upgrade existing installation",
- $this->getText( LINK_DIV . "h2" ) );
-
- // 'Upgrade complete.' text display
- $this->assertEquals( "Upgrade complete.",
- $this->getText( "//div[@id='bodyContent']/div/div[1]/div[4]/form/div[1]/div[2]/p[1]" ) );
-
- $this->assertEquals( "You can now Folder/index.php start using your wiki.",
- $this->getText( "//div[@id='bodyContent']/div/div[1]/div[4]/form/div[1]/div[2]/p[2]" ) );
-
- $this->assertEquals( "Folder/index.php start using your wiki",
- $this->getText( "link=Folder/index.php start using your wiki" ) );
-
- $this->assertTrue( $this->isElementPresent( "submit-regenerate" ) );
- $this->click( "submit-regenerate" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
- $this->assertEquals( "Database settings",
- $this->getText( LINK_DIV . "h2" ) );
-
- // 'Database settings' page
- parent::clickContinueButton();
-
- // Name page
- parent::completeNamePage();
-
- // Options page
- parent::clickContinueButton();
-
- // Install page
- $this->assertEquals( "Warning: You seem to have already installed MediaWiki and are trying to install it again. Please proceed to the next page.",
- $this->getText( LINK_FORM . "div[1]/div[2]" ) );
- parent::clickContinueButton();
-
- // complete
- parent::completePageSuccessfull();
- $this->chooseCancelOnNextConfirmation();
- parent::restartInstallation();
- }
-}
+++ /dev/null
-<?php
-/**
- * MediaWikiUserInterfaceTestCase
- *
- * @file
- * @ingroup Maintenance
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once ( __DIR__ . '/MediaWikiInstallationCommonFunction.php' );
-
-/**
- * Test Case ID : 18 - 27 (http://www.mediawiki.org/wiki/New_installer/Test_plan)
- * Test Case Name : UI of MediaWiki initial/ Language/ Welcome to MediaWiki!/ Connect to database/
- * Database settings/ Name/ Options/ Install/ Complete/ Restart Inslation pages
- * Version : MediaWiki 1.18alpha
- */
-class MediaWikiUserInterfaceTestCase extends MediaWikiInstallationCommonFunction {
- function setUp() {
- parent::setUp();
- }
-
- public function testInitialPageUI() {
-
- parent::navigateInitialpage();
-
- // MediaWiki logo available
- $this->assertTrue( $this->isElementPresent( "//img[@alt='The MediaWiki logo']" ) );
-
- // 'MediaWiki 1.18alpha' text available
- $this->assertEquals( "MediaWiki 1.18alpha", $this->getText( "//h1" ) );
-
- // 'LocalSettings.php not found.' text available
- $this->assertEquals( "LocalSettings.php not found.", $this->getText( "//p[1]" ) );
-
- // 'Please set up the wiki first' text available
- $this->assertEquals( "Please set up the wiki first.", $this->getText( "//p[2]" ) );
-
- // 'set up the wiki' link available
- $this->assertTrue( $this->isElementPresent( "link=set up the wiki" ) );
- }
-
- public function testlanguagePageUI() {
- parent::navigateLanguagePage();
-
- // Verify 'Language' heading
- $this->assertEquals( "Language", $this->getText( LINK_DIV . "h2" ) );
-
- // 'Your language' label available
- $this->assertEquals( "Your language:",
- $this->getText( LINK_FORM . "div[1]/div[1]/label" ) );
-
- // 'Your language' dropdown available
- $this->assertTrue( $this->isElementPresent( "UserLang" ) );
-
- // 'Wiki language' label available
- $this->assertEquals( "Wiki language:",
- $this->getText( LINK_FORM . "div[2]/div[1]/label" ) );
-
- // 'Wiki language' dropdown available
- $this->assertTrue( $this->isElementPresent( "ContLang" ) );
- }
-
- public function testWelcometoMediaWikiUI() {
- parent::navigateWelcometoMediaWikiPage();
-
- // Verify 'Welcome to MediaWiki!' heading
- $this->assertEquals( "Welcome to MediaWiki!",
- $this->getText( LINK_DIV . "h2" ) );
-
- // Verify environment ok text displayed.
- $this->assertEquals( "The environment has been checked.You can install MediaWiki.",
- $this->getText( LINK_DIV . "div[6]/span" ) );
- }
-
- public function testConnectToDatabaseUI() {
- parent::navigateConnetToDatabasePage();
-
- // 'MYSQL radio button available
- $this->assertEquals( "MySQL",
- $this->getText( LINK_FORM . "div[2]/div[2]/ul/li[1]/label" ) );
- $this->assertTrue( $this->isElementPresent( LINK_FORM . "div[2]/div[2]/ul/li[1]" ) );
-
- // 'SQLite' radio button available
- $this->assertTrue( $this->isElementPresent( LINK_FORM . "div[2]/div[2]/ul/li[2]" ) );
- $this->assertEquals( "SQLite", $this->getText( LINK_FORM . "div[2]/div[2]/ul/li[2]/label " ) );
-
- // 'Database host' label available
- $this->assertEquals( "Database host:", $this->getText( "//div[@id='DB_wrapper_mysql']/div/div[1]/label" ) );
-
- // 'Database host' text box default to 'localhost'
- $this->assertEquals( "localhost", $this->getValue( "mysql_wgDBserver" ) );
-
- // 'Identify this wiki' section available
- $this->assertTrue( $this->isElementPresent( "//div[@id='DB_wrapper_mysql']/fieldset[1]/legend" ) );
-
- // 'Identify this wiki' label available
- $this->assertEquals( "Identify this wiki", $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[1]/legend" ) );
-
- // 'Database name' lable available
- $this->assertEquals( "Database name:",
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[1]/div[1]/div[1]/label" ) );
-
- // Verify 'Database name:' text box is default to 'my_wiki'
- $this->assertEquals( "my_wiki", $this->getValue( "mysql_wgDBname" ) );
-
- // Verify 'Database table prefix:' label available
- $this->assertEquals( "Database table prefix:",
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[1]/div[2]/div[1]/label" ) );
-
- // 'User account for installation' section available
- $this->assertTrue( $this->isElementPresent( "//div[@id='DB_wrapper_mysql']/fieldset[2]/legend" ) );
-
- // 'User account for installation' label available
- $this->assertEquals( "User account for installation", $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[2]/legend" ) );
-
- // 'Database username' label available
- $this->assertEquals( "Database username:",
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[2]/div[1]/div[1]/label" ) );
-
- // 'Database username' text box defaults to 'root'
- $this->assertEquals( "root", $this->getValue( "mysql__InstallUser" ) );
-
- // 'Database password' label available
- $this->assertEquals( "Database password:",
- $this->getText( "//div[@id='DB_wrapper_mysql']/fieldset[2]/div[2]/div[1]/label" ) );
- }
-
- public function testDatabaseSettingsUI() {
- $databaseName = DB_NAME_PREFIX . "_db_settings_UI";
- parent::navigateDatabaseSettingsPage( $databaseName );
-
- // 'Database settings' text available.
- $this->assertEquals( "Database settings", $this->getText( LINK_DIV . "h2" ) );
-
- // 'Database account for web access' section available
- $this->assertTrue( $this->isElementPresent( LINK_FORM . "fieldset" ) );
-
- // 'Database account for web access' label available
- $this->assertEquals( "Database account for web access", $this->getText( LINK_FORM . "fieldset/legend" ) );
-
- // 'Use the same account as for installation' check box available
- $this->assertEquals( "Use the same account as for installation", $this->getText( LINK_FORM . "fieldset/div[1]/label" ) );
-
- // 'Use the same account as for installation' check box is selected by default
- $this->assertEquals( "on", $this->getValue( "mysql__SameAccount" ) );
-
- // 'Use the same account as for installation' check box deselected
- $this->click( "mysql__SameAccount" );
-
- // verify 'Use the same account as for installation' check box is not selected
- $this->assertEquals( "off", $this->getValue( "mysql__SameAccount" ) );
-
- // 'Database username' label available
- $this->assertEquals( "Database username:", $this->getText( "//div[@id='dbOtherAccount']/div[1]/div[1]/label" ) );
-
- // 'Database username' text box is default to the 'wikiuser'
- $this->assertEquals( "wikiuser", $this->getValue( "mysql_wgDBuser" ) );
-
- // 'Database password' label available
- $this->assertEquals( "Database password:", $this->getText( "//div[@id='dbOtherAccount']/div[2]/div[1]/label" ) );
-
- // 'Create the account if it does not already exist' label available
- $this->assertEquals( "Create the account if it does not already exist", $this->getText( "//div[@id='dbOtherAccount']/div[4]/label" ) );
-
- // 'Create the account if it does not already exist' check box is not selected by default
- $this->assertEquals( "off", $this->getValue( "mysql__CreateDBAccount" ) );
-
- // 'Create the account if it does not already exist' check box selected
- $this->click( "mysql__CreateDBAccount" );
-
- // Verify 'Create the account if it does not already exist' check box is selected
- $this->assertEquals( "on", $this->getValue( "mysql__CreateDBAccount" ) );
- $this->click( "mysql__SameAccount" );
- $this->assertEquals( "on", $this->getValue( "mysql__SameAccount" ) );
-
- // 'Storage engine' label available
- $this->assertEquals( "Storage engine:",
- $this->getText( LINK_FORM . "div[1]/div[1]/label" ) );
-
- // 'InnoDB' label available
- $this->assertEquals( "InnoDB",
- $this->getText( LINK_FORM . "div[1]/div[2]/ul/li[1]/label" ) );
-
- // 'InnoDB' radio button available
- $this->assertTrue( $this->isElementPresent( "mysql__MysqlEngine_InnoDB" ) );
-
- // 'MyISAM' label available
- $this->assertEquals( "MyISAM", $this->getText( LINK_FORM . "div[1]/div[2]/ul/li[2]/label" ) );
-
- // 'MyISAM' radio button available
- $this->assertTrue( $this->isElementPresent( "mysql__MysqlEngine_MyISAM" ) );
-
- // 'Database character set' label available
- $this->assertEquals( "Database character set:",
- $this->getText( LINK_FORM . "div[3]/div[1]/label" ) );
-
- // 'Binary' radio button available
- $this->assertTrue( $this->isElementPresent( "mysql__MysqlCharset_binary" ) );
-
- // 'Binary' radio button available
- $this->assertEquals( "Binary", $this->getText( LINK_FORM . "div[3]/div[2]/ul/li[1]/label" ) );
-
- // 'UTF-8' radio button available
- $this->assertTrue( $this->isElementPresent( "mysql__MysqlCharset_utf8" ) );
-
- // 'UTF-8' label available
- $this->assertEquals( "UTF-8", $this->getText( LINK_FORM . "div[3]/div[2]/ul/li[2]/label" ) );
-
- // 'Binary' radio button is selected
- $this->assertEquals( "on", $this->getValue( "mysql__MysqlCharset_binary" ) );
- }
-
- public function testNamePageUI() {
- $databaseName = DB_NAME_PREFIX . "_name_UI";
- parent::navigateNamePage( $databaseName );
-
- // 'Name of wiki' text box available
- $this->assertEquals( "Name of wiki:",
- $this->getText( LINK_FORM . "div[1]/div[1]/label" ) );
-
- $this->assertTrue( $this->isElementPresent( "config_wgSitename" ) );
-
- // 'Project namespace' label available
- $this->assertEquals( "Project namespace:",
- $this->getText( LINK_FORM . "div[2]/div[1]/label" ) );
-
- // 'Same as the wiki name' radio button available
- $this->assertTrue( $this->isElementPresent( "config__NamespaceType_site-name" ) );
-
- // 'Project' radio button available
- $this->assertTrue( $this->isElementPresent( "config__NamespaceType_generic" ) );
-
- // 'Project' radio button available
- $this->assertTrue( $this->isElementPresent( "config__NamespaceType_other" ) );
-
- // 'Same as the wiki name' label available
- $this->assertEquals( "Same as the wiki name:",
- $this->getText( LINK_FORM . "div[2]/div[2]/ul/li[1]/label" ) );
-
- // 'Project' label available
- $this->assertEquals( "Project",
- $this->getText( LINK_FORM . "div[2]/div[2]/ul/li[2]/label" ) );
-
- // 'Project' label available
- $this->assertEquals( "Other (specify)",
- $this->getText( LINK_FORM . "div[2]/div[2]/ul/li[3]/label" ) );
-
- // 'Same as the wiki name' radio button selected by default
- $this->assertEquals( "on", $this->getValue( "config__NamespaceType_site-name" ) );
-
- // 'Administrator account' section available
- $this->assertTrue( $this->isElementPresent( LINK_FORM . "fieldset" ) );
-
- // 'Administrator account' label available
- $this->assertEquals( "Administrator account",
- $this->getText( LINK_FORM . "fieldset/legend" ) );
-
- // 'Your Name' label available
- $this->assertEquals( "Your name:",
- $this->getText( LINK_FORM . "fieldset/div[1]/div[1]/label" ) );
-
- // 'Your Name' text box available
- $this->assertTrue( $this->isElementPresent( "config__AdminName" ) );
-
- // 'Password' label available
- $this->assertEquals( "Password:",
- $this->getText( LINK_FORM . "fieldset/div[2]/div[1]/label" ) );
-
- // 'Password' text box available
- $this->assertTrue( $this->isElementPresent( "config__AdminPassword" ) );
-
- // 'Password again' label available
- $this->assertEquals( "Password again:",
- $this->getText( LINK_FORM . "fieldset/div[3]/div[1]/label" ) );
-
- // 'Password again' text box available
- $this->assertTrue( $this->isElementPresent( "config__AdminPassword2" ) );
-
- // 'Email address' label avaialble
- $this->assertEquals( "E-mail address:",
- $this->getText( LINK_FORM . "fieldset/div[4]/div[1]/label" ) );
-
- // 'Email address' text box available
- $this->assertTrue( $this->isElementPresent( "config__AdminEmail" ) );
-
- // Message displayed
- $this->assertEquals( "You are almost done! You can now skip the remaining configuration and install the wiki right now.",
- $this->getText( LINK_FORM . "/div[4]/div[2]/p" ) );
-
- // 'Ask me more questions.' radio button available
- $this->assertTrue( $this->isElementPresent( "config__SkipOptional_continue" ) );
-
- // 'Ask me more questions.' label available
- $this->assertEquals( "Ask me more questions.",
- $this->getText( LINK_FORM . "div[5]/div[2]/ul/li[1]/label" ) );
-
- // 'I'm bored already, just install the wiki' radio button is avaiable
- $this->assertTrue( $this->isElementPresent( "config__SkipOptional_skip" ) );
-
- // 'I'm bored already, just install the wiki' label available
- $this->assertEquals( "I'm bored already, just install the wiki.",
- $this->getText( LINK_FORM . "div[5]/div[2]/ul/li[2]/label" ) );
-
- // 'Ask me more questions.' radio button is default selected
- $this->assertEquals( "on", $this->getValue( "config__SkipOptional_continue" ) );
- }
-
- public function testOptionPageUI() {
- $databaseName = DB_NAME_PREFIX . "_options_UI";
- parent::navigateOptionsPage( $databaseName );
-
- // 'Options' label available
- $this->assertEquals( "Options", $this->getText( LINK_DIV . "h2" ) );
-
- // 'Return e-mail address' label available
- $this->assertEquals( "Return e-mail address:", $this->getText( "//div[@id='emailwrapper']/div[1]/div[1]/label" ) );
-
- // 'Return e-mail address' text box available
- $this->assertTrue( $this->isElementPresent( "config_wgPasswordSender" ) );
-
- // Text 'apache@localhost' is default value of the 'Return e-mail address' text box
- $this->assertEquals( "apache@localhost", $this->getValue( "config_wgPasswordSender" ) );
-
- // 'Logo URL' label available
- $this->assertEquals( "Logo URL:", $this->getText( LINK_FORM . "fieldset[2]/div[3]/div[1]/label" ) );
-
- // 'Logo URL' text box available
- $this->assertTrue( $this->isElementPresent( "config_wgLogo" ) );
-
- // Correct path available in the 'Logo URL' text box
- $this->assertEquals( "/wiki/skins/common/images/wiki.png", $this->getValue( "config_wgLogo" ) );
-
- // 'Enable file uploads' radio button available
- $this->assertTrue( $this->isElementPresent( "config_wgEnableUploads" ) );
-
- // 'Enable file uploads' label available
- $this->assertEquals( "Enable file uploads",
- $this->getText( LINK_FORM . "fieldset[2]/div[1]/label" ) );
-
- // 'Enable file uploads' check box is not selected
- $this->assertEquals( "off", $this->getValue( "config_wgEnableUploads" ) );
-
- $this->click( "config_wgEnableUploads" );
-
- // 'Directory for deleted files' label available
- $this->assertEquals( "Directory for deleted files:",
- $this->getText( "//div[@id='uploadwrapper']/div/div[1]/label" ) );
-
- // 'Directory for deleted files' text box available
- $this->assertTrue( $this->isElementPresent( "config_wgDeletedDirectory" ) );
-
- // Correct path available in the 'Directory for deleted files' text box
- $this->assertEquals( "C:\\wamp\\www\\" . DIRECTORY_NAME . "/images/deleted",
- $this->getValue( "config_wgDeletedDirectory" ) );
- }
-
- public function testInstallPageUI() {
- $databaseName = DB_NAME_PREFIX . "_install_UI";
- parent::navigateInstallPage( $databaseName );
-
- // Verify installation done messages display
- $this->assertEquals( "Setting up database... done",
- $this->getText( LINK_FORM . "ul/li[1]" ) );
- $this->assertEquals( "Creating tables... done",
- $this->getText( LINK_FORM . "ul/li[2]" ) );
- $this->assertEquals( "Creating database user... done",
- $this->getText( LINK_FORM . "ul/li[3]" ) );
- $this->assertEquals( "Populating default interwiki table... done",
- $this->getText( LINK_FORM . "ul/li[4]" ) );
- $this->assertEquals( "Generating secret key... done",
- $this->getText( LINK_FORM . "ul/li[5]" ) );
- $this->assertEquals( "Generating default upgrade key... done",
- $this->getText( LINK_FORM . "ul/li[6]" ) );
- $this->assertEquals( "Creating administrator user account... done",
- $this->getText( LINK_FORM . "ul/li[7]" ) );
- $this->assertEquals( "Creating main page with default content... done",
- $this->getText( LINK_FORM . "ul/li[8]" ) );
- }
-
- public function testCompletePageUI() {
- $databaseName = DB_NAME_PREFIX . "_complete_UI";
- parent::navigateCompletePage( $databaseName );
-
- // 'Congratulations!' text display
- $this->assertEquals( "Congratulations!",
- $this->getText( LINK_FORM . "div[1]/div[2]/p[1]/b" ) );
- // 'LocalSettings.php' generated message display
- $this->assertEquals( "The installer has generated a LocalSettings.php file. It contains all your configuration.",
- $this->getText( LINK_FORM . "div[1]/div[2]/p[2]" ) );
-
- // 'Download LocalSettings.php'' link available
- $this->assertTrue( $this->isElementPresent( "link=Download LocalSettings.php" ) );
-
- // 'enter your wiki' link available
- $this->assertTrue( $this->isElementPresent( "link=Folder/index.php enter your wiki" ) );
- }
-
- public function testRestartInstallation() {
- parent::navigateConnetToDatabasePage();
- $this->click( "link=Restart installation" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // Restart installation' label should be available.
- $this->assertEquals( "Restart installation", $this->getText( LINK_DIV . "h2" ) );
-
- //'Do you want to clear all saved data that you have entered and restart the installation process?' label available
- $this->assertEquals( "Do you want to clear all saved data that you have entered and restart the installation process?",
- $this->getText( "//*[@id='bodyContent']/div/div/div[2]/form/div[1]/div[2]" ) );
- // 'Back' button available
- $this->assertTrue( $this->isElementPresent( "submit-back" ) );
-
- // 'Restart' button available
- $this->assertTrue( $this->isElementPresent( "submit-restart" ) );
- }
-
- public function testMediaWikiLogoAvailability() {
- $databaseName = DB_NAME_PREFIX . "_mediawiki_logo";
- parent::navigateInitialpage();
- parent::mediaWikiLogoPresentInitialScreen();
- $this->click( "link=set up the wiki" );
- $this->waitForPageToLoad( PAGE_LOAD_TIME );
-
- // 'Language' page
- parent::mediaWikiLogoPresent();
- parent::clickContinueButton();
-
- // 'Welcome to MediaWiki' page
- parent::mediaWikiLogoPresent();
- parent::clickContinueButton();
-
- // 'Connet to database' page
- parent::mediaWikiLogoPresent();
- $this->type( "mysql_wgDBname", $databaseName );
- parent::clickContinueButton();
-
- // 'Database setting' page
- parent::mediaWikiLogoPresent();
- parent::clickContinueButton();
-
- // 'Name' page
- parent::mediaWikiLogoPresent();
- parent::completeNamePage();
- parent::clickContinueButton();
-
- // 'Options' page
- parent::mediaWikiLogoPresent();
- parent::clickContinueButton();
-
- // 'Install' page
- parent::mediaWikiLogoPresent();
- }
-
- public function testRightFramework() {
- parent::navigateLanguagePage();
- // Verfy right framework texts display
- $this->assertEquals( "Language",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[1]" ) );
- $this->assertEquals( "Existing wiki",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[2]" ) );
- $this->assertEquals( "Welcome to MediaWiki!",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[3]" ) );
- $this->assertEquals( "Connect to database",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[4]" ) );
- $this->assertEquals( "Upgrade existing installation",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[5]" ) );
- $this->assertEquals( "Database settings",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[6]" ) );
- $this->assertEquals( "Name",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[7]" ) );
- $this->assertEquals( "Options",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[8]" ) );
- $this->assertEquals( "Install",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[9]" ) );
- $this->assertEquals( "Complete!",
- $this->getText( LINK_RIGHT_FRAMEWORK . "li[10]/span" ) );
- }
-}
+++ /dev/null
-== Details==
-
-Automated Selenium test scripts written for MediaWiki Installer is available at https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/core.git;a=tree;f=tests/selenium/installer;hb=HEAD.
-Detailed test cases available at http://www.mediawiki.org/wiki/New_installer/Test_plan.
-
-Version : MediaWiki 1.18alpha
-Date : 27/12/2010
-
-== Running tests ==
-
-Test cases can be run independently or can run all the test cases using MediaWikiInstallerTestSuite.php within PHPUnit/Selenium.
-
-
-== Dependencies ==
-
-MediaWikiInstallationConfig.php
-
-Value of the 'DB_NAME_PREFIX' should be replace with the database name prefix. Several DB instances will get created to cover different installation scenarios starting with the above prefix.
-You need to change the value of the 'DB_NAME_PREFIX' in MediaWikiInstallationConfig everytime you planned to
-run the tests.
-'DIRECTORY_NAME', 'PORT' and the 'HOST_NAME' should be replaced with your local values.
-You may specify the test browser you wish to run the test using 'TEST_BROWSER'. Default browser is Firefox.
-
-Note : MediaWikiInstallerTestSuite.php has no dependency on 'Selenium' test framework.
-
-
-== Known problems ==
-
-If you run the MediaWikiInstallerTestSuite.php twice without changing the name of the database, the second run should be falied.
-(Please read the more information on how to change the database name which is avaialable under 'Dependencies' section)
-
-
+++ /dev/null
-[SeleniumSettings]
-
-; Set up the available browsers that Selenium can control.
-browsers[firefox] = "*firefox"
-browsers[iexplorer] = "*iexploreproxy"
-browsers[chrome] = "*chrome"
-
-; The simple configurations above usually work on Linux, but Windows and
-; Mac OS X hosts may need to specify a full path:
-;browsers[firefox] = "*firefox /Applications/Firefox.app/Contents/MacOS/firefox-bin"
-;browsers[firefox] = "*firefox C:\Program Files\Mozilla Firefox\firefox.exe"
-
-host = "localhost"
-port = "4444"
-wikiUrl = "http://localhost/deployment"
-username = "wikiuser"
-userPassword = "wikipass"
-testBrowser = "firefox"
-startserver =
-stopserver =
-jUnitLogFile =
-runAgainstGrid = false
-
-; To let the test runner start and stop the selenium server, it needs the full
-; path to selenium-server.jar from the selenium-remote-control package.
-seleniumserverexecpath = "/opt/local/selenium-remote-control-1.0.3/selenium-server-1.0.3/selenium-server.jar"
-
-[SeleniumTests]
-
-testSuite[SimpleSeleniumTestSuite] = "tests/selenium/suites/SimpleSeleniumTestSuite.php"
-testSuite[WikiEditorTestSuite] = "extensions/WikiEditor/selenium/WikiEditorTestSuite.php"
-
+++ /dev/null
-[SeleniumSettings]
-
-host = "grid.tesla.usability.wikimedia.org"
-port = "4444"
-wikiUrl = "http://208.80.152.253:5001"
-username = "wikiuser"
-userPassword = "wikipass"
-testBrowser = "Safari on OS X Snow Leopard"
-jUnitLogFile =
-runAgainstGrid = true
-startserver = false
-stopserver = false
-
-[SeleniumTests]
-
-testSuite[SimpleSeleniumTestSuite] = "tests/selenium/suites/SimpleSeleniumTestSuite.php"
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class AddContentToNewPageTestCase extends SeleniumTestCase {
- // Add bold text and verify output
- public function testAddBoldText() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "//*[@id='mw-editbutton-bold']" );
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify bold text displayed on mediawiki preview
- $this->assertTrue( $this->isElementPresent( "//div[@id='wikiPreview']/p/b" ) );
- $this->assertTrue( $this->isTextPresent( "Bold text" ) );
- }
-
- // Add italic text and verify output
- public function testAddItalicText() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "//*[@id='mw-editbutton-italic']" );
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify italic text displayed on mediawiki preview
- $this->assertTrue( $this->isElementPresent( "//div[@id='wikiPreview']/p/i" ) );
- $this->assertTrue( $this->isTextPresent( "Italic text" ) );
- }
-
- // Add internal link for a new page and verify output in the preview
- public function testAddInternalLinkNewPage() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "//*[@id='mw-editbutton-link']" );
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify internal link displayed on mediawiki preview
- $source = $this->getText( "//*[@id='wikiPreview']/p/a" );
- $correct = strstr( $source, "Link title" );
- $this->assertEquals( $correct, true );
-
- $this->click( SeleniumTestConstants::LINK_START . "Link title" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify internal link open as a new page - editing mode
- $source = $this->getText( "firstHeading" );
- $correct = strstr( $source, "Editing Link title" );
- $this->assertEquals( $correct, true );
- }
-
- // Add external link and verify output in the preview
- public function testAddExternalLink() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "//*[@id='mw-editbutton-extlink']" );
- $this->type( SeleniumTestConstants::TEXT_EDITOR, "[http://www.google.com Google]" );
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify external links displayed on mediawiki preview
- $source = $this->getText( "//*[@id='wikiPreview']/p/a" );
- $correct = strstr( $source, "Google" );
- $this->assertEquals( $correct, true );
-
- $this->click( SeleniumTestConstants::LINK_START . "Google" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify external link opens
- $source = $this->getTitle();
- $correct = strstr( $source, "Google" );
- $this->assertEquals( $correct, true );
- }
-
- // Add level 2 headline and verify output in the preview
- public function testAddLevel2HeadLine() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "mw-editbutton-headline" );
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertTrue( $this->isElementPresent( "//div[@id='wikiPreview']/h2" ) );
-
- // Verify level 2 headline displayed on mediawiki preview
- $source = $this->getText( "//*[@id='Headline_text']" );
- $correct = strstr( $source, "Headline text" );
- $this->assertEquals( $correct, true );
- }
-
- // Add text with ignore wiki format and verify output the preview
- public function testAddNoWikiFormat() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "//*[@id='mw-editbutton-nowiki']" );
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify ignore wiki format text displayed on mediawiki preview
- $source = $this->getText( "//div[@id='wikiPreview']/p" );
- $correct = strstr( $source, "Insert non-formatted text here" );
- $this->assertEquals( $correct, true );
- }
-
- // Add signature and verify output in the preview
- public function testAddUserSignature() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "mw-editbutton-signature" );
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify signature displayed on mediawiki preview
- $source = $this->getText( "//*[@id='wikiPreview']/p/a" );
- $username = $this->getText( "//*[@id='pt-userpage']/a" );
- $correct = strstr( $source, $username );
- $this->assertEquals( $correct, true );
- }
-
- // Add horizontal line and verify output in the preview
- public function testHorizontalLine() {
- $this->getExistingPage();
- $this->clickEditLink();
- $this->loadWikiEditor();
- $this->clearWikiEditor();
- $this->click( "mw-editbutton-hr" );
-
- $this->clickShowPreviewBtn();
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify horizontal line displayed on mediawiki preview
- $this->assertTrue( $this->isElementPresent( "//div[@id='wikiPreview']/hr" ) );
- $this->deletePage( "new" );
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class AddNewPageTestCase extends SeleniumTestCase {
- // Verify adding a new page
- public function testAddNewPage() {
- $newPage = "new";
- $displayName = "New";
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->type( "searchInput", $newPage );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify 'Search results' text available
- $source = $this->gettext( "firstHeading" );
- $correct = strstr( $source, "Search results" );
- $this->assertEquals( $correct, true );
-
- // Verify 'Create the page "<page name>" on this wiki' text available
- $source = $this->gettext( "//div[@id='bodyContent']/div[4]/p/b" );
- $correct = strstr( $source, "Create the page \"New\" on this wiki!" );
- $this->assertEquals( $correct, true );
-
- $this->click( SeleniumTestConstants::LINK_START . $displayName );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->assertTrue( $this->isElementPresent( SeleniumTestConstants::LINK_START . "Create" ) );
- $this->type( "wpTextbox1", "add new test page" );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
-
- // Verify new page added
- $source = $this->gettext( "firstHeading" );
- $correct = strstr( $source, $displayName );
- $this->assertEquals( $correct, true );
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-Class CreateAccountTestCase extends SeleniumTestCase {
- // Change these values before run the test
- private $userName = "yourname4000";
- private $password = "yourpass4000";
-
- // Verify 'Log in/create account' link existance in Main page.
- public function testMainPageLink() {
-
- $this->click( "link=Log out" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->open( $this->getUrl() . '/index.php?title=Main_Page' );
- $this->assertTrue( $this->isElementPresent( "link=Log in / create account" ) );
- }
-
- // Verify 'Create an account' link existance in 'Log in / create account' Page.
- public function testCreateAccountPageLink() {
-
- $this->click( "link=Log out" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->open( $this->getUrl() . '/index.php?title=Main_Page' );
-
- // click Log in / create account link to open Log in / create account' page
- $this->click( "link=Log in / create account" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertTrue( $this->isElementPresent( "link=Create an account" ) );
- }
-
- // Verify Create account
- public function testCreateAccount() {
-
- $this->click( "link=Log out" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->open( $this->getUrl() . '/index.php?title=Main_Page' );
-
- $this->click( "link=Log in / create account" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->click( "link=Create an account" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify for blank user name
- $this->type( "wpName2", "" );
- $this->click( "wpCreateaccount" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "Login error\n You have not specified a valid user name.",
- $this->getText( "//div[@id='bodyContent']/div[4]" ) );
-
- // Verify for invalid user name
- $this->type( "wpName2", "@" );
- $this->click( "wpCreateaccount" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "Login error\n You have not specified a valid user name.",
- $this->getText( "//div[@id='bodyContent']/div[4]" ) );
-
- // start of test for blank password
- $this->type( "wpName2", $this->userName );
- $this->type( "wpPassword2", "" );
- $this->click( "wpCreateaccount" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "Login error\n Passwords must be at least 1 character.",
- $this->getText( "//div[@id='bodyContent']/div[4]" ) );
-
- $this->type( "wpName2", $this->userName );
- $this->type( "wpPassword2", $this->password );
- $this->click( "wpCreateaccount" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "Login error\n The passwords you entered do not match.",
- $this->getText( "//div[@id='bodyContent']/div[4]" ) );
-
- $this->type( "wpName2", $this->userName );
- $this->type( "wpPassword2", $this->password );
- $this->type( "wpRetype", $this->password );
- $this->click( "wpCreateaccount" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify successful account creation for valid combination of 'Username', 'Password', 'Retype password'
- $this->assertEquals( "Welcome, " . ucfirst( $this->userName ) . "!",
- $this->getText( "Welcome,_" . ucfirst( $this->userName ) . "!" ) );
- }
-}
-
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class DeletePageAdminTestCase extends SeleniumTestCase {
- // Verify adding a new page
- public function testDeletePage() {
-
- $newPage = "new";
- $displayName = "New";
-
- $this->open( $this->getUrl() . '/index.php?title=Main_Page' );
-
- $this->type( "searchInput", $newPage );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( SeleniumTestConstants::LINK_START . $displayName );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->type( SeleniumTestConstants::TEXT_EDITOR, $newPage . " text" );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->click( SeleniumTestConstants::LINK_START . "Log out" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( SeleniumTestConstants::LINK_START . "Log in / create account" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( "wpName1", $this->selenium->getUser() );
- $this->type( "wpPassword1", $this->selenium->getPass() );
- $this->click( "wpLoginAttempt" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->type( "searchInput", "new" );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify 'Delete' link displayed
- $source = $this->gettext( SeleniumTestConstants::LINK_START . "Delete" );
- $correct = strstr( $source, "Delete" );
- $this->assertEquals( $correct, true );
-
- $this->click( SeleniumTestConstants::LINK_START . "Delete" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify 'Delete' button available
- $this->assertTrue( $this->isElementPresent( "wpConfirmB" ) );
-
- $this->click( "wpConfirmB" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify 'Action complete' text displayed
- $source = $this->gettext( "firstHeading" );
- $correct = strstr( $source, "Action complete" );
- $this->assertEquals( $correct, true );
-
- // Verify '<Page Name> has been deleted. See deletion log for a record of recent deletions.' text displayed
- $source = $this->gettext( "//div[@id='bodyContent']/p[1]" );
- $correct = strstr( $source, "\"New\" has been deleted. See deletion log for a record of recent deletions." );
- $this->assertEquals( $correct, true );
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class EmailPasswordTestCase extends SeleniumTestCase {
- // change user name for each and every test (with in 24 hours)
- private $userName = "test1";
-
- public function testEmailPasswordButton() {
- $this->click( SeleniumTestConstants::LINK_START . "Log out" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->open( $this->getUrl() . '/index.php?title=Main_Page' );
-
- // click Log in / create account link to open Log in / create account' page
- $this->click( SeleniumTestConstants::LINK_START . "Log in / create account" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertTrue( $this->isElementPresent( "wpMailmypassword" ) );
- }
-
- // Verify Email password functionality
- public function testEmailPasswordMessages() {
- $this->click( SeleniumTestConstants::LINK_START . "Log out" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->open( $this->getUrl() . '/index.php?title=Main_Page' );
-
- // click Log in / create account link to open Log in / create account' page
- $this->click( SeleniumTestConstants::LINK_START . "Log in / create account" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( "wpName1", "" );
- $this->click( "wpMailmypassword" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "Login error\n You have not specified a valid user name.",
- $this->getText( "//div[@id='bodyContent']/div[4]" ) );
-
- $this->type( "wpName1", $this->userName );
- $this->click( "wpMailmypassword" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Can not run on localhost
- $this->assertEquals( "A new password has been sent to the e-mail address registered for " . ucfirst( $this->userName ) . ". Please log in again after you receive it.",
- $this->getText( "//div[@id='bodyContent']/div[4]" ) );
-
- $this->type( "wpName1", $this->userName );
- $this->click( "wpMailmypassword" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "Login error\n A password reminder has already been sent, within the last 24 hours. To prevent abuse, only one password reminder will be sent per 24 hours.",
- $this->getText( "//div[@id='bodyContent']/div[4]" ) );
- }
-}
-
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class MediaWikiEditorConfig {
- public static function getSettings( &$includeFiles, &$globalConfigs ) {
- $includes = array(
- //files that needed to be included would go here
- //commenting out because this does not exist
- //'tests/selenium/suites/MediaWikiCommonFunction.php'
- );
- $configs = array(
- 'wgPageLoadTime' => "600000"
- );
- $includeFiles = array_merge( $includeFiles, $includes );
- $globalConfigs = array_merge( $globalConfigs, $configs );
- return true;
- }
-}
-
+++ /dev/null
-<?php
-
-class MediaWikiEditorTestSuite extends SeleniumTestSuite {
- public function setUp() {
- $this->setLoginBeforeTests( true );
- parent::setUp();
- }
-
- public function addTests() {
- $testFiles = array(
- 'tests/selenium/suites/AddNewPageTestCase.php',
- 'tests/selenium/suites/AddContentToNewPageTestCase.php',
- 'tests/selenium/suites/PreviewPageTestCase.php',
- 'tests/selenium/suites/SavePageTestCase.php',
- );
- parent::addTestFiles( $testFiles );
- }
-}
-
+++ /dev/null
-<?php
-
-class MediaWikiExtraTestSuite extends SeleniumTestSuite {
- public function setUp() {
- $this->setLoginBeforeTests( true );
- parent::setUp();
- }
-
- public function addTests() {
- $testFiles = array(
- 'tests/selenium/suites/MyContributionsTestCase.php',
- 'tests/selenium/suites/MyWatchListTestCase.php',
- 'tests/selenium/suites/UserPreferencesTestCase.php',
- 'tests/selenium/suites/MovePageTestCase.php',
- 'tests/selenium/suites/PageSearchTestCase.php',
- 'tests/selenium/suites/EmailPasswordTestCase.php',
- 'tests/selenium/suites/CreateAccountTestCase.php'
- );
- parent::addTestFiles( $testFiles );
- }
-}
+++ /dev/null
-<?php
-/*
- * Stub of tests be need as part of the hack-a-ton
- */
-class MediawikiCoreSmokeTestCase extends SeleniumTestCase {
- public function testUserLogin() {
-
- }
-
- public function testChangeUserPreference() {
-
- }
-
- /**
- * TODO: generalize this test to be reusable for different skins
- */
- public function testCreateNewPageVector() {
-
- }
-
- /**
- * TODO: generalize this test to be reusable for different skins
- */
- public function testEditExistingPageVector() {
-
- }
-
- /**
- * TODO: generalize this test to be reusable for different skins
- */
- public function testCreateNewPageMonobook() {
-
- }
-
- /**
- * TODO: generalize this test to be reusable for different skins
- */
- public function testEditExistingPageMonobook() {
-
- }
-
- public function testImageUpload() {
- $this->login();
- $this->open( $this->getUrl() .
- '/index.php?title=Special:Upload' );
- $this->type( 'wpUploadFile', __DIR__ .
- "\\..\\data\\Wikipedia-logo-v2-de.png" );
- $this->check( 'wpIgnoreWarning' );
- $this->click( 'wpUpload' );
- $this->waitForPageToLoad( 30000 );
-
- $this->assertSeleniumHTMLContains(
- '//h1[@class="firstHeading"]', "Wikipedia-logo-v2-de.png"
- );
-
- /*
- $this->open( $this->getUrl() . '/index.php?title=Image:'
- . ucfirst( $this->filename ) . '&action=delete' );
- $this->type( 'wpReason', 'Remove test file' );
- $this->click( 'mw-filedelete-submit' );
- $this->waitForPageToLoad( 10000 );
-
- // Todo: This message is localized
- $this->assertSeleniumHTMLContains( '//div[@id="bodyContent"]/p',
- ucfirst( $this->filename ) . '.*has been deleted.' );
- */
- }
-
-
-}
+++ /dev/null
-<?php
-/**
- * Stubs for now. We're going to start populating this test.
- */
-class MediawikiCoreSmokeTestSuite extends SeleniumTestSuite {
- public function setUp() {
- $this->setLoginBeforeTests( false );
- parent::setUp();
- }
-
- public function addTests() {
- $testFiles = array(
- 'tests/selenium/suites/MediawikiCoreSmokeTestCase.php'
- );
- parent::addTestFiles( $testFiles );
- }
-
-
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class MovePageTestCase extends SeleniumTestCase {
- // Verify move(rename) wiki page
- public function testMovePage() {
- $newPage = "mypage99";
- $displayName = "Mypage99";
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->type( "searchInput", $newPage );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( "link=" . $displayName );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->type( SeleniumTestConstants::TEXT_EDITOR, $newPage . " text" );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify link 'Move' available
- $this->assertTrue( $this->isElementPresent( "link=Move" ) );
-
- $this->click( "link=Move" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify correct page name displayed under 'Move Page' field
- $this->assertEquals( $displayName,
- $this->getText( "//table[@id='mw-movepage-table']/tbody/tr[1]/td[2]/strong/a" ) );
- $movePageName = $this->getText( "//table[@id='mw-movepage-table']/tbody/tr[1]/td[2]/strong/a" );
-
- // Verify 'To new title' field has current page name as the default name
- $newTitle = $this->getValue( "wpNewTitle" );
- $correct = strstr( $movePageName, $newTitle );
- $this->assertEquals( $correct, true );
-
- $this->type( "wpNewTitle", $displayName );
- $this->click( "wpMove" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify warning message for the same source and destination titles
- $this->assertEquals( "Source and destination titles are the same; cannot move a page over itself.",
- $this->getText( "//div[@id='bodyContent']/p[4]/strong" ) );
-
- // Verify warning message for the blank title
- $this->type( "wpNewTitle", "" );
- $this->click( "wpMove" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify warning message for the blank title
- $this->assertEquals( "The requested page title was invalid, empty, or an incorrectly linked inter-language or inter-wiki title. It may contain one or more characters which cannot be used in titles.",
- $this->getText( "//div[@id='bodyContent']/p[4]/strong" ) );
-
- // Verify warning messages for the invalid titles
- $this->type( "wpNewTitle", "# < > [ ] | { }" );
- $this->click( "wpMove" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "The requested page title was invalid, empty, or an incorrectly linked inter-language or inter-wiki title. It may contain one or more characters which cannot be used in titles.",
- $this->getText( "//div[@id='bodyContent']/p[4]/strong" ) );
-
- $this->type( "wpNewTitle", $displayName . "move" );
- $this->click( "wpMove" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify move success message displayed correctly
- $this->assertEquals( "\"" . $displayName . "\" has been moved to \"" . $displayName . "move" . "\"",
- $this->getText( "//div[@id='bodyContent']/p[1]/b" ) );
-
- $this->type( "searchInput", $newPage . "move" );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify search using new page name
- $this->assertEquals( $displayName . "move", $this->getText( "firstHeading" ) );
-
- $this->type( "searchInput", $newPage );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify search using old page name
- $redirectPageName = $this->getText( "//*[@id='contentSub']" );
- $this->assertEquals( "(Redirected from " . $displayName . ")", $redirectPageName );
-
- // newpage delete
- $this->deletePage( $newPage . "move" );
- $this->deletePage( $newPage );
- }
-}
-
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once dirname( __DIR__ ) . '/SeleniumTestConstants.php';
-
-class MyContributionsTestCase extends SeleniumTestCase {
- // Verify user contributions
- public function testRecentChangesAvailability() {
- $newPage = $this->createNewTestPage( "MyContributionsTest" );
-
- // Verify My contributions Link available
- $this->assertTrue( $this->isElementPresent( "link=Contributions" ) );
-
-
- $this->click( "link=Contributions" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify recent page adding available on My Contributions list
- $this->assertEquals( $newPage, $this->getText( "link=" . $newPage ) );
-
- $this->type( SeleniumTestConstants::INPUT_SEARCH_BOX, $newPage );
- $this->click( SeleniumTestConstants::BUTTON_SEARCH );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->click( SeleniumTestConstants::LINK_EDIT );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->type( SeleniumTestConstants::TEXT_EDITOR, $newPage . " text changed" );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( "link=Contributions" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify recent page changes available on My Contributions
- $this->assertTrue( $this->isTextPresent( $newPage ) );
- }
-}
-
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-require_once dirname( __DIR__ ) . '/SeleniumTestConstants.php';
-
-class MyWatchListTestCase extends SeleniumTestCase {
- // Verify user watchlist
- public function testMyWatchlist() {
- $pageName = $this->createNewTestPage( "MyWatchListTest", true );
- // Verify link 'My Watchlist' available
- $this->assertTrue( $this->isElementPresent( SeleniumTestConstants::LINK_START . "Watchlist" ) );
-
- $this->click( SeleniumTestConstants::LINK_START . "Watchlist" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify newly added page to the watchlist is available
- $this->assertEquals( $pageName, $this->getText( SeleniumTestConstants::LINK_START . $pageName ) );
-
- $this->click( SeleniumTestConstants::LINK_START . $pageName );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( SeleniumTestConstants::LINK_EDIT );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( "wpWatchthis" );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
- $this->assertFalse( $this->isElementPresent( SeleniumTestConstants::LINK_START . $pageName ) );
- //todo watch using the dropdown menu
- }
-}
-
+++ /dev/null
-<?php
-
-class PageDeleteTestSuite extends SeleniumTestSuite {
- public function setUp() {
- $this->setLoginBeforeTests( true );
- parent::setUp();
- }
-
- public function addTests() {
- $testFiles = array(
- 'tests/selenium/suites/DeletePageAdminTestCase.php'
- );
- parent::addTestFiles( $testFiles );
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class PageSearchTestCase extends SeleniumTestCase {
- // Verify the functionality of the 'Go' button
- public function testPageSearchBtnGo() {
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->type( SeleniumTestConstants::INPUT_SEARCH_BOX, "calcey qa" );
- $this->click( "searchGoButton" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify no page matched with the entered search text
- $source = $this->gettext( "//div[@id='bodyContent']/div[4]/p/b" );
- $correct = strstr( $source, "Create the page \"Calcey qa\" on this wiki!" );
- $this->assertEquals( $correct, true );
-
- $this->click( "link=Calcey qa" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( SeleniumTestConstants::TEXT_EDITOR, "Calcey QA team" );
- $this->click( "wpSave" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- }
-
- // Verify the functionality of the 'Search' button
- public function testPageSearchBtnSearch() {
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->type( SeleniumTestConstants::INPUT_SEARCH_BOX, "Calcey web" );
- $this->click( SeleniumTestConstants::BUTTON_SEARCH );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify no page is available as the search text
- $source = $this->gettext( "//div[@id='bodyContent']/div[4]/p[2]/b" );
- $correct = strstr( $source, "Create the page \"Calcey web\" on this wiki!" );
- $this->assertEquals( $correct, true );
-
- $this->click( "link=Calcey web" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( SeleniumTestConstants::TEXT_EDITOR, "Calcey web team" );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify saved page is opened when the exact page name is given
- $this->type( SeleniumTestConstants::INPUT_SEARCH_BOX, "Calcey web" );
- $this->click( SeleniumTestConstants::BUTTON_SEARCH );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify exact page matched with the entered search text using 'Search' button
- $source = $this->getText( "//*[@id='bodyContent']/div[4]/p/b" );
- $correct = strstr( $source, "There is a page named \"Calcey web\" on this wiki." );
- $this->assertEquals( $correct, true );
-
- // Verify resutls available when partial page name is entered as the search text
- $this->type( SeleniumTestConstants::INPUT_SEARCH_BOX, "Calcey" );
- $this->click( SeleniumTestConstants::BUTTON_SEARCH );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify text avaialble in the search result under the page titles
- if ( $this->isElementPresent( "Page_title_matches" ) ) {
- $textPageTitle = $this->getText( "//*[@id='bodyContent']/div[4]/ul[1]/li[1]/div[1]/a" );
- $this->assertContains( 'Calcey', $textPageTitle );
- }
-
- // Verify text avaialble in the search result under the page text
- if ( $this->isElementPresent( "Page_text_matches" ) ) {
- $textPageText = $this->getText( "//*[@id='bodyContent']/div[4]/ul[2]/li[2]/div[2]/span" );
- $this->assertContains( 'Calcey', $textPageText );
- }
- $this->deletePage( "Calcey QA" );
- $this->deletePage( "Calcey web" );
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class PreviewPageTestCase extends SeleniumTestCase {
- // Verify adding a new page
- public function testPreviewPage() {
- $wikiText = "Adding this page to test the \n Preview button functionality";
- $newPage = "Test Preview Page";
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->getNewPage( $newPage );
- $this->type( SeleniumTestConstants::TEXT_EDITOR, $wikiText . "" );
- $this->assertTrue( $this->isElementPresent( "//*[@id='wpPreview']" ) );
-
- $this->click( "wpPreview" );
-
- // Verify saved page available
- $source = $this->gettext( "firstHeading" );
- $correct = strstr( $source, "Test Preview Page" );
- $this->assertEquals( $correct, true );
-
- // Verify page content previewed succesfully
- $contentOfPreviewPage = $this->getText( "//*[@id='content']" );
- $this->assertContains( $wikiText, $contentOfPreviewPage );
- }
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class SavePageTestCase extends SeleniumTestCase {
- // Verify adding a new page
- public function testSavePage() {
- $wikiText = "Adding this page to test the Save button functionality";
- $newPage = "Test Save Page";
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->getNewPage( $newPage );
- $this->type( SeleniumTestConstants::TEXT_EDITOR, $wikiText );
-
- // verify 'Save' button available
- $this->assertTrue( $this->isElementPresent( SeleniumTestConstants::BUTTON_SAVE ) );
- $this->click( SeleniumTestConstants::BUTTON_SAVE );
-
- // Verify saved page available
- $source = $this->gettext( "firstHeading" );
- $correct = strstr( $source, "Test Save Page" );
-
- // Verify Saved page name displayed correctly
- $this->assertEquals( $correct, true );
-
- // Verify page content saved succesfully
- $contentOfSavedPage = $this->getText( "//*[@id='content']" );
- $this->assertContains( $wikiText, $contentOfSavedPage );
- $this->deletePage( $newPage );
- }
-}
+++ /dev/null
-<?php
-class SimpleSeleniumConfig {
-
- public static function getSettings( &$includeFiles, &$globalConfigs, &$resourceFiles ) {
- global $IP;
- $includes = array(
- //files that needed to be included would go here
- );
- $configs = array(
- 'wgDBprefix' => 'mw_',
- 'wgDBTableOptions' => 'ENGINE=InnoDB, DEFAULT CHARSET=binary',
- 'wgDBmysql5' => 'false',
- 'wgMainCacheType' => 'CACHE_NONE',
- 'wgParserCacheType' => 'CACHE_NONE',
- 'wgMemCachedServers' => array(),
- 'wgLanguageCode' => 'en',
- 'wgSitename' => 'test_wiki',
- 'wgDefaultSkin' => 'chick'
- );
- $resources = array(
- 'db' => "$IP/tests/selenium/data/SimpleSeleniumTestDB.sql",
- 'images' => "$IP/tests/selenium/data/SimpleSeleniumTestImages.zip"
- );
-
- $includeFiles = array_merge( $includeFiles, $includes );
- $globalConfigs = array_merge( $globalConfigs, $configs );
- $resourceFiles = array_merge( $resourceFiles, $resources );
- return true;
- }
-}
+++ /dev/null
-<?php
-/*
- * This test case is part of the SimpleSeleniumTestSuite.
- * Configuration for these tests are documented as part of SimpleSeleniumTestSuite.php
- */
-class SimpleSeleniumTestCase extends SeleniumTestCase {
- public function testBasic() {
- $this->open( $this->getUrl() .
- '/index.php?title=Selenium&action=edit' );
- $this->type( "wpTextbox1", "This is a basic test" );
- $this->click( "wpPreview" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // check result
- $source = $this->getText( "//div[@id='wikiPreview']/p" );
- $correct = strstr( $source, "This is a basic test" );
- $this->assertEquals( $correct, true );
- }
-
- /**
- * All this test really does is verify that a global var was set.
- * It depends on $wgDefaultSkin = 'chick'; being set
- */
- public function testGlobalVariableForDefaultSkin() {
- $this->open( $this->getUrl() . '/index.php' );
- $bodyClass = $this->getAttribute( "//body/@class" );
- $this->assertContains( 'skin-chick', $bodyClass, 'Chick skin not set' );
- }
-
- /**
- * Just verify that the test db was loaded correctly
- */
- public function testDatabaseResourceLoadedCorrectly() {
- $this->open( $this->getUrl() . '/index.php/TestResources?action=purge' );
- $testString = $this->gettext( "//body//*[@id='firstHeading']" );
- $this->assertEquals( 'TestResources', $testString, 'Article that should be present in the test db was not found.' );
- }
-
-}
+++ /dev/null
-<?php
-/**
- * Sample test suite.
- * Two ways to configure MW for these tests
- * 1) If you are running multiple test suites, add the following in LocalSettings.php
- * require_once("tests/selenium/SimpleSeleniumConfig.php");
- * $wgSeleniumTestConfigs['SimpleSeleniumTestSuite'] = 'SimpleSeleniumConfig::getSettings';
- * OR
- * 2) Add the following to your Localsettings.php
- * $wgDefaultSkin = 'chick';
- */
-class SimpleSeleniumTestSuite extends SeleniumTestSuite {
- public function setUp() {
- $this->setLoginBeforeTests( false );
- parent::setUp();
- }
-
- public function addTests() {
- $testFiles = array(
- 'selenium/suites/SimpleSeleniumTestCase.php'
- );
- parent::addTestFiles( $testFiles );
- }
-
-
-}
+++ /dev/null
-<?php
-/**
- * Selenium server manager
- *
- * @file
- * @ingroup Testing
- * Copyright (C) 2010 Nadeesha Weerasinghe <nadeesha@calcey.com>
- * http://www.calcey.com/
- *
- * 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.,
- * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-class UserPreferencesTestCase extends SeleniumTestCase {
- // Verify user information
- public function testUserInfoDisplay() {
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->click( SeleniumTestConstants::LINK_START . "My preferences" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify correct username displayed in User Preferences
- $this->assertEquals( $this->getText( "//li[@id='pt-userpage']/a" ),
- $this->getText( "//table[@id='mw-htmlform-info']/tbody/tr[1]/td[2]" ) );
-
- // Verify existing Signature Displayed correctly
- $this->assertEquals( $this->selenium->getUser(),
- $this->getTable( "mw-htmlform-signature.0.1" ) );
- }
-
- // Verify change password
- public function testChangePassword() {
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->click( SeleniumTestConstants::LINK_START . "My preferences" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->click( SeleniumTestConstants::LINK_START . "Change password" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( "wpPassword", "12345" );
- $this->type( "wpNewPassword", "54321" );
- $this->type( "wpRetype", "54321" );
- $this->click( "//input[@value='Change password']" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->assertEquals( "Preferences", $this->getText( "firstHeading" ) );
-
- $this->click( SeleniumTestConstants::LINK_START . "Change password" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( "wpPassword", "54321" );
- $this->type( "wpNewPassword", "12345" );
- $this->type( "wpRetype", "12345" );
- $this->click( "//input[@value='Change password']" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->assertEquals( "Preferences", $this->getText( "firstHeading" ) );
-
- $this->click( SeleniumTestConstants::LINK_START . "Change password" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( "wpPassword", "54321" );
- $this->type( "wpNewPassword", "12345" );
- $this->type( "wpRetype", "12345" );
- $this->click( "//input[@value='Change password']" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- }
-
- // Verify successful preferences save
- public function testSuccessfullSave() {
-
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->click( SeleniumTestConstants::LINK_START . "My preferences" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( "mw-input-realname", "Test User" );
- $this->click( "prefcontrol" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify "Your preferences have been saved." message
- $this->assertEquals( "Your preferences have been saved.",
- $this->getText( "//div[@id='bodyContent']/div[4]/strong/p" ) );
- $this->type( "mw-input-realname", "" );
- $this->click( "prefcontrol" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- }
-
- // Verify change signature
- public function testChangeSignature() {
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->click( SeleniumTestConstants::LINK_START . "My preferences" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->type( "mw-input-nickname", "TestSignature" );
- $this->click( "prefcontrol" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify change user signature
- $this->assertEquals( "TestSignature", $this->getText( SeleniumTestConstants::LINK_START . "TestSignature" ) );
- $this->type( "mw-input-nickname", "Test" );
- $this->click( "prefcontrol" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- }
-
- // Verify change date format
- public function testChangeDateFormatTimeZone() {
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
-
- $this->click( SeleniumTestConstants::LINK_START . "My preferences" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
- $this->click( SeleniumTestConstants::LINK_START . "Date and time" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- $this->click( "mw-input-date-dmy" );
- $this->select( "mw-input-timecorrection", "label=Asia/Colombo" );
- $this->click( "prefcontrol" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify Date format and time zome saved
- $this->assertEquals( "Your preferences have been saved.",
- $this->getText( "//div[@id='bodyContent']/div[4]/strong/p" ) );
- }
-
- // Verify restoring all default settings
- public function testSetAllDefault() {
- $this->open( $this->getUrl() .
- '/index.php?title=Main_Page&action=edit' );
- $this->click( SeleniumTestConstants::LINK_START . "My preferences" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify restoring all default settings
- $this->assertEquals( "Restore all default settings",
- $this->getText( SeleniumTestConstants::LINK_START . "Restore all default settings" ) );
-
- $this->click( "//*[@id='preferences']/div/a" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify 'This can not be undone' warning message displayed
- $this->assertTrue( $this->isElementPresent( "//input[@value='Restore all default settings']" ) );
-
- // Verify 'Restore all default settings' button available
- $this->assertEquals( "You can use this page to reset your preferences to the site defaults. This cannot be undone.",
- $this->getText( "//div[@id='bodyContent']/p" ) );
-
- $this->click( "//input[@value='Restore all default settings']" );
- $this->waitForPageToLoad( SeleniumTestConstants::WIKI_TEST_WAIT_TIME );
-
- // Verify preferences saved successfully
- $this->assertEquals( "Your preferences have been saved.",
- $this->getText( "//div[@id='bodyContent']/div[4]/strong/p" ) );
- }
-}
-
# Execute thumb.php, having set THUMB_HANDLER so that
# it knows to extract params from a thumbnail file URL.
-require( __DIR__ . '/thumb.php' );
+require __DIR__ . '/thumb.php';
<?php
// stub file for compatibility with older versions
-include_once('./index.php');
+include_once './index.php';