Add message keys to the message files to define that messages and show it on Special...
[lhc/web/wiklou.git] / languages / messages / MessagesEn.php
index 58f4d28..11fa636 100644 (file)
@@ -287,7 +287,6 @@ $magicWords = array(
        'localurl'               => array( 0,    'LOCALURL:'              ),
        'localurle'              => array( 0,    'LOCALURLE:'             ),
        'articlepath'            => array( 0,    'ARTICLEPATH'            ),
-       'pageid'                 => array( 0,    'PAGEID'                 ),
        'server'                 => array( 0,    'SERVER'                 ),
        'servername'             => array( 0,    'SERVERNAME'             ),
        'scriptpath'             => array( 0,    'SCRIPTPATH'             ),
@@ -393,6 +392,7 @@ $specialPageAliases = array(
        'Filepath'                  => array( 'FilePath' ),
        'Import'                    => array( 'Import' ),
        'Invalidateemail'           => array( 'InvalidateEmail' ),
+       'JavaScriptTest'            => array( 'JavaScriptTest' ),
        'BlockList'                 => array( 'BlockList', 'ListBlocks', 'IPBlockList' ),
        'LinkSearch'                => array( 'LinkSearch' ),
        'Listadmins'                => array( 'ListAdmins' ),
@@ -499,42 +499,46 @@ $preloadedMessages = array(
        'accesskey-ca-history',
        'accesskey-ca-nstab-main',
        'accesskey-ca-talk',
+       'accesskey-ca-view',
        'accesskey-n-currentevents',
        'accesskey-n-help',
        'accesskey-n-mainpage-description',
        'accesskey-n-portal',
        'accesskey-n-randompage',
        'accesskey-n-recentchanges',
-       'accesskey-n-sitesupport',
        'accesskey-p-logo',
        'accesskey-pt-login',
        'accesskey-search',
        'accesskey-search-fulltext',
        'accesskey-search-go',
        'accesskey-t-permalink',
-       'accesskey-t-print',
        'accesskey-t-recentchangeslinked',
        'accesskey-t-specialpages',
        'accesskey-t-whatlinkshere',
+       'actions',
        'anonnotice',
-       'colon-separator',
        'currentevents',
        'currentevents-url',
        'disclaimerpage',
        'disclaimers',
        'edit',
+       'editsection',
+       'editsection-brackets',
+       'editsectionhint',
        'help',
        'helppage',
-       'history_short',
        'jumpto',
        'jumptonavigation',
        'jumptosearch',
        'lastmodifiedat',
        'mainpage',
        'mainpage-description',
-       'nav-login-createaccount',
+       'mainpage-nstab',
+       'namespaces',
        'navigation',
+       'nav-login-createaccount',
        'nstab-main',
+       'nstab-talk',
        'opensearch-desc',
        'pagecategories',
        'pagecategorieslink',
@@ -550,15 +554,14 @@ $preloadedMessages = array(
        'randompage',
        'randompage-url',
        'recentchanges',
-       'recentchanges-url',
        'recentchangeslinked-toolbox',
+       'recentchanges-url',
        'retrievedfrom',
        'search',
        'searcharticle',
        'searchbutton',
        'sidebar',
        'site-atom-feed',
-       'site-rss-feed',
        'sitenotice',
        'specialpages',
        'tagline',
@@ -568,24 +571,29 @@ $preloadedMessages = array(
        'tooltip-ca-history',
        'tooltip-ca-nstab-main',
        'tooltip-ca-talk',
+       'tooltip-ca-view',
        'tooltip-n-currentevents',
        'tooltip-n-help',
        'tooltip-n-mainpage-description',
        'tooltip-n-portal',
        'tooltip-n-randompage',
        'tooltip-n-recentchanges',
-       'tooltip-n-sitesupport',
        'tooltip-p-logo',
        'tooltip-p-navigation',
+       'tooltip-p-tb',
        'tooltip-pt-login',
        'tooltip-search',
        'tooltip-search-fulltext',
        'tooltip-search-go',
        'tooltip-t-permalink',
-       'tooltip-t-print',
        'tooltip-t-recentchangeslinked',
        'tooltip-t-specialpages',
        'tooltip-t-whatlinkshere',
+       'variants',
+       'vector-view-edit',
+       'vector-view-history',
+       'vector-view-view',
+       'viewcount',
        'views',
        'whatlinkshere',
 );
@@ -999,8 +1007,8 @@ It may have already been deleted by someone else.',
 'badtitle'             => 'Bad title',
 'badtitletext'         => '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.',
-'perfcached'           => 'The following data is cached and may not be up to date.',
-'perfcachedts'         => 'The following data is cached, and was last updated $1.',
+'perfcached'           => 'The following data is cached and may not be up to date. A maximum of {{PLURAL:$1|one result is|$1 results are}} available in the cache.',
+'perfcachedts'         => 'The following data is cached, and was last updated $1. A maximum of {{PLURAL:$4|one result is|$4 results are}} available in the cache.',
 'querypage-no-updates' => 'Updates for this page are currently disabled.
 Data here will not presently be refreshed.',
 'wrong_wfQuery_params' => 'Incorrect parameters to wfQuery()<br />
@@ -1398,7 +1406,7 @@ You are also promising us that you wrote this yourself, or copied it from a publ
 '''Do not submit copyrighted work without permission!'''",
 'editpage-tos-summary'             => '-', # do not translate or duplicate this message to other languages
 'longpage-hint'                    => '-', # do not translate or duplicate this message to other languages
-'longpageerror'                    => "'''Error: The text you have submitted is $1 kilobytes long, which is longer than the maximum of $2 kilobytes.'''
+'longpageerror'                    => "'''Error: The text you have submitted is {{PLURAL:$1|one kilobyte|$1 kilobytes}} long, which is longer than the maximum of {{PLURAL:$2|one kilobyte|$2 kilobytes}}.'''
 It cannot be saved.",
 'readonlywarning'                  => "'''Warning: The database has been locked for maintenance, so you will not be able to save your edits right now.'''
 You may wish to cut-n-paste the text into a text file and save it for later.
@@ -1783,6 +1791,7 @@ Note that their indexes of {{SITENAME}} content may be out of date.',
 'prefs-editing'                 => 'Editing',
 'prefs-edit-boxsize'            => 'Size of the edit window.',
 'rows'                          => 'Rows:',
+'columns'                       => 'Columns:',
 'searchresultshead'             => 'Search',
 'resultsperpage'                => 'Hits per page:',
 'stub-threshold'                => 'Threshold for <a href="#" class="stub">stub link</a> formatting (bytes):',
@@ -2061,6 +2070,7 @@ Your e-mail address is not revealed when other users contact you.',
 'rc_categories'                     => 'Limit to categories (separate with "|")',
 'rc_categories_any'                 => 'Any',
 'rc-change-size'                    => '$1', # only translate this message to other languages if you have to change it
+'rc-change-size-new'                => '$1 {{PLURAL:$1|byte|bytes}} after change',
 'newsectionsummary'                 => '/* $1 */ new section',
 'rc-enhanced-expand'                => 'Show details (requires JavaScript)',
 'rc-enhanced-hide'                  => 'Hide details',
@@ -2114,11 +2124,11 @@ See the [[Special:NewFiles|gallery of new files]] for a more visual overview.',
 'uploadedfiles'               => 'Uploaded files',
 'ignorewarning'               => 'Ignore warning and save file anyway',
 'ignorewarnings'              => 'Ignore any warnings',
-'minlength1'                  => 'File names must be at least one letter.',
+'minlength1'                  => 'Filenames must be at least one letter.',
 'illegalfilename'             => 'The filename "$1" contains characters that are not allowed in page titles.
 Please rename the file and try uploading it again.',
-'filename-toolong'            => 'File names may not be longer than 240 bytes.',
-'badfilename'                 => 'File name has been changed to "$1".',
+'filename-toolong'            => 'Filenames may not be longer than 240 bytes.',
+'badfilename'                 => 'Filename has been changed to "$1".',
 'filetype-mime-mismatch'      => 'File extension ".$1" does not match the detected MIME type of the file ($2).',
 'filetype-badmime'            => 'Files of the MIME type "$1" are not allowed to be uploaded.',
 'filetype-bad-ie-mime'        => 'Cannot upload this file because Internet Explorer would detect it as "$1", which is a disallowed and potentially dangerous file type.',
@@ -2132,7 +2142,7 @@ Permitted {{PLURAL:$3|file type is|file types are}} $2.',
 'filename-tooshort'           => 'The filename is too short.',
 'filetype-banned'             => 'This type of file is banned.',
 'verification-error'          => 'This file did not pass file verification.',
-'hookaborted'                 => 'The modification you tried to make was aborted by an extension hook.',
+'hookaborted'                 => 'The modification you tried to make was aborted by an extension.',
 'illegal-filename'            => 'The filename is not allowed.',
 'overwrite'                   => 'Overwriting an existing file is not allowed.',
 'unknown-error'               => 'An unknown error occured.',
@@ -2142,7 +2152,7 @@ Permitted {{PLURAL:$3|file type is|file types are}} $2.',
 this file is $2.',
 'largefileserver'             => 'This file is bigger than the server is configured to allow.',
 'emptyfile'                   => 'The file you uploaded seems to be empty.
-This might be due to a typo in the file name.
+This might be due to a typo in the filename.
 Please check whether you really want to upload this file.',
 'windows-nonascii-filename'   => 'This wiki does not support filenames with special characters.',
 'fileexists'                  => "A file with this name exists already, please check '''<tt>[[:$1]]</tt>''' if you are not sure if you want to change it.
@@ -2161,7 +2171,7 @@ Please check the file '''<tt>[[:$1]]</tt>'''.
 If the checked file is the same image of original size it is not necessary to upload an extra thumbnail.",
 'file-thumbnail-no'           => "The filename begins with '''<tt>$1</tt>'''.
 It seems to be an image of reduced size ''(thumbnail)''.
-If you have this image in full resolution upload this one, otherwise change the file name please.",
+If you have this image in full resolution upload this one, otherwise change the filename please.",
 'fileexists-forbidden'        => 'A file with this name already exists, and cannot be overwritten.
 If you still want to upload your file, please go back and use a new name.
 [[File:$1|thumb|center|$1]]',
@@ -2202,7 +2212,7 @@ Please choose a more descriptive name for your file.",
 'filename-prefix-blacklist'   => ' #<!-- leave this line exactly as it is --> <pre>
 # Syntax is as follows:
 #   * Everything from a "#" character to the end of the line is a comment
-#   * Every non-blank line is a prefix for typical file names assigned automatically by digital cameras
+#   * Every non-blank line is a prefix for typical filenames assigned automatically by digital cameras
 CIMG # Casio
 DSC_ # Nikon
 DSCF # Fuji
@@ -2222,18 +2232,19 @@ $1',
 'upload-warning-subj'         => 'Upload warning',
 'upload-warning-msg'          => 'There was a problem with your upload from [$2]. You may return to the [[Special:Upload/stash/$1|upload form]] to correct this problem.',
 
-'upload-proto-error'        => 'Incorrect protocol',
-'upload-proto-error-text'   => 'Remote upload requires URLs beginning with <code>http://</code> or <code>ftp://</code>.',
-'upload-file-error'         => 'Internal error',
-'upload-file-error-text'    => 'An internal error occurred when attempting to create a temporary file on the server.
+'upload-proto-error'                => 'Incorrect protocol',
+'upload-proto-error-text'           => 'Remote upload requires URLs beginning with <code>http://</code> or <code>ftp://</code>.',
+'upload-file-error'                 => 'Internal error',
+'upload-file-error-text'            => 'An internal error occurred when attempting to create a temporary file on the server.
 Please contact an [[Special:ListUsers/sysop|administrator]].',
-'upload-misc-error'         => 'Unknown upload error',
-'upload-misc-error-text'    => 'An unknown error occurred during the upload.
+'upload-misc-error'                 => 'Unknown upload error',
+'upload-misc-error-text'            => 'An unknown error occurred during the upload.
 Please verify that the URL is valid and accessible and try again.
 If the problem persists, contact an [[Special:ListUsers/sysop|administrator]].',
-'upload-too-many-redirects' => 'The URL contained too many redirects',
-'upload-unknown-size'       => 'Unknown size',
-'upload-http-error'         => 'An HTTP error occured: $1',
+'upload-too-many-redirects'         => 'The URL contained too many redirects',
+'upload-unknown-size'               => 'Unknown size',
+'upload-http-error'                 => 'An HTTP error occured: $1',
+'upload-copy-upload-invalid-domain' => 'Copy uploads are not available from this domain.',
 
 # File backend
 'backend-fail-stream'        => 'Could not stream file $1.',
@@ -2252,6 +2263,12 @@ If the problem persists, contact an [[Special:ListUsers/sysop|administrator]].',
 'backend-fail-closetemp'     => 'Could not close temporary file.',
 'backend-fail-read'          => 'Could not read file $1.',
 'backend-fail-create'        => 'Could not create file $1.',
+'backend-fail-readonly'      => 'The storage backend "$1" is currently read-only. The reason given was: "$2"',
+'backend-fail-synced'        => 'The file "$1" is in an inconsistent state within the internal storage backends',
+'backend-fail-connect'       => 'Could not connect to storage backend "$1".',
+'backend-fail-internal'      => 'An unknown error occurred in storage backend "$1".',
+'backend-fail-contenttype'   => 'Could not determine the content type of the file to store at "$1".',
+'backend-fail-batchsize'     => 'Storage backend given a batch of $1 file {{PLURAL:$1|operation|operations}}; the limit is $2 {{PLURAL:$2|operation|operations}}.',
 
 # Lock manager
 'lockmanager-notlocked'        => 'Could not unlock "$1"; it is not locked.',
@@ -2287,7 +2304,7 @@ It cannot be properly checked for security.',
 'img-auth-nopathinfo'       => 'Missing PATH_INFO.
 Your server is not set up to pass this information.
 It may be CGI-based and cannot support img_auth.
-[//www.mediawiki.org/wiki/Manual:Image_Authorization See image authorization.]',
+See https://www.mediawiki.org/wiki/Manual:Image_Authorization.',
 'img-auth-notindir'         => 'Requested path is not in the configured upload directory.',
 'img-auth-badtitle'         => 'Unable to construct a valid title from "$1".',
 'img-auth-nologinnWL'       => 'You are not logged in and "$1" is not in the whitelist.',
@@ -2737,6 +2754,7 @@ The e-mail address you entered in [[Special:Preferences|your user preferences]]
 
 # Watchlist
 'watchlist'            => 'My watchlist',
+'watchlist-summary'    => '', # do not translate or duplicate this message to other languages
 'mywatchlist'          => 'My watchlist',
 'watchlistfor2'        => 'For $1 $2',
 'nowatchlist'          => 'You have no items on your watchlist.',
@@ -2888,7 +2906,7 @@ See the [[Special:ProtectedPages|protected pages list]] for the list of currentl
 'protect_expiry_invalid'      => 'Expiry time is invalid.',
 'protect_expiry_old'          => 'Expiry time is in the past.',
 'protect-unchain-permissions' => 'Unlock further protect options',
-'protect-text'                => "You may view and change the protection level here for the page '''$1'''.",
+'protect-text'                => "Here you may view and change the protection level for the page '''$1'''.",
 'protect-locked-blocked'      => "You cannot change protection levels while blocked.
 Here are the current settings for the page '''$1''':",
 'protect-locked-dblock'       => "Protection levels cannot be changed due to an active database lock.
@@ -3287,7 +3305,7 @@ cannot move a page over itself.',
 'imagenocrossnamespace'        => 'Cannot move file to non-file namespace',
 'nonfile-cannot-move-to-file'  => 'Cannot move non-file to file namespace',
 'imagetypemismatch'            => 'The new file extension does not match its type',
-'imageinvalidfilename'         => 'The target file name is invalid',
+'imageinvalidfilename'         => 'The target filename is invalid',
 'fix-double-redirects'         => 'Update any redirects that point to the original title',
 'move-leave-redirect'          => 'Leave a redirect behind',
 'protectedpagemovewarning'     => "'''Warning:''' This page has been protected so that only users with administrator privileges can move it.
@@ -3296,7 +3314,7 @@ The latest log entry is provided below for reference:",
 The latest log entry is provided below for reference:",
 'move-over-sharedrepo'         => '== File exists ==
 [[:$1]] exists on a shared repository. Moving a file to this title will override the shared file.',
-'file-exists-sharedrepo'       => 'The file name chosen is already in use on a shared repository.
+'file-exists-sharedrepo'       => 'The filename chosen is already in use on a shared repository.
 Please choose another name.',
 
 # Export
@@ -3307,6 +3325,7 @@ This can be imported into another wiki using MediaWiki via the [[Special:Import|
 To export pages, enter the titles in the text box below, one title per line, and select whether you want the current revision as well as all old revisions, with the page history lines, or the current revision with the info about the last edit.
 
 In the latter case you can also use a link, for example [[{{#Special:Export}}/{{MediaWiki:Mainpage}}]] for the page "[[{{MediaWiki:Mainpage}}]]".',
+'exportall'         => 'Export all pages',
 'exportcuronly'     => 'Include only the current revision, not the full history',
 'exportnohistory'   => "----
 '''Note:''' Exporting the full history of pages through this form has been disabled due to performance reasons.",
@@ -3395,6 +3414,9 @@ Please try again.',
 'import-invalid-interwiki'   => 'Cannot import from the specified wiki.',
 'import-error-edit'          => 'Page "$1" is not imported because you are not allowed to edit it.',
 'import-error-create'        => 'Page "$1" is not imported because you are not allowed to create it.',
+'import-error-interwiki'     => 'Page "$1" is not imported because its name is reserved for external linking (interwiki).',
+'import-error-special'       => 'Page "$1" is not imported because it belongs to a special namespace that does not allow pages.',
+'import-error-invalid'       => 'Page "$1" is not imported because its name is invalid.',
 
 # Import log
 'importlogpage'                    => 'Import log',
@@ -3404,141 +3426,158 @@ Please try again.',
 'import-logentry-interwiki'        => 'transwikied $1',
 'import-logentry-interwiki-detail' => '$1 {{PLURAL:$1|revision|revisions}} from $2',
 
+# JavaScriptTest
+'javascripttest'                           => 'JavaScript testing',
+'javascripttest-backlink'                  => '< $1', # do not translate or duplicate this message to other languages
+'javascripttest-disabled'                  => 'This function is disabled.',
+'javascripttest-title'                     => 'Running $1 tests',
+'javascripttest-pagetext-noframework'      => 'This page is reserved for running JavaScript tests.',
+'javascripttest-pagetext-unknownframework' => 'Unknown testing framework "$1".',
+'javascripttest-pagetext-frameworks'       => 'Please choose one of the following testing frameworks: $1',
+'javascripttest-pagetext-skins'            => 'Choose a skin to run the tests with:',
+'javascripttest-qunit-name'                => 'QUnit', # do not translate or duplicate this message to other languages
+'javascripttest-qunit-intro'               => 'See [$1 testing documentation] on mediawiki.org.',
+'javascripttest-qunit-heading'             => 'MediaWiki JavaScript QUnit test suite',
+
 # Keyboard access keys for power users
-'accesskey-pt-userpage'             => '.', # do not translate or duplicate this message to other languages
-'accesskey-pt-anonuserpage'         => '.', # do not translate or duplicate this message to other languages
-'accesskey-pt-mytalk'               => 'n', # do not translate or duplicate this message to other languages
-'accesskey-pt-anontalk'             => 'n', # do not translate or duplicate this message to other languages
-'accesskey-pt-preferences'          => '', # do not translate or duplicate this message to other languages
-'accesskey-pt-watchlist'            => 'l', # do not translate or duplicate this message to other languages
-'accesskey-pt-mycontris'            => 'y', # do not translate or duplicate this message to other languages
-'accesskey-pt-login'                => 'o', # do not translate or duplicate this message to other languages
-'accesskey-pt-anonlogin'            => 'o', # do not translate or duplicate this message to other languages
-'accesskey-pt-logout'               => '', # do not translate or duplicate this message to other languages
-'accesskey-ca-talk'                 => 't', # do not translate or duplicate this message to other languages
-'accesskey-ca-edit'                 => 'e', # do not translate or duplicate this message to other languages
-'accesskey-ca-addsection'           => '+', # do not translate or duplicate this message to other languages
-'accesskey-ca-viewsource'           => 'e', # do not translate or duplicate this message to other languages
-'accesskey-ca-history'              => 'h', # do not translate or duplicate this message to other languages
-'accesskey-ca-protect'              => '=', # do not translate or duplicate this message to other languages
-'accesskey-ca-unprotect'            => '=', # do not translate or duplicate this message to other languages
-'accesskey-ca-delete'               => 'd', # do not translate or duplicate this message to other languages
-'accesskey-ca-undelete'             => 'd', # do not translate or duplicate this message to other languages
-'accesskey-ca-move'                 => 'm', # do not translate or duplicate this message to other languages
-'accesskey-ca-watch'                => 'w', # do not translate or duplicate this message to other languages
-'accesskey-ca-unwatch'              => 'w', # do not translate or duplicate this message to other languages
-'accesskey-search'                  => 'f', # do not translate or duplicate this message to other languages
-'accesskey-search-go'               => '', # do not translate or duplicate this message to other languages
-'accesskey-search-fulltext'         => '', # do not translate or duplicate this message to other languages
-'accesskey-p-logo'                  => '', # do not translate or duplicate this message to other languages
-'accesskey-n-mainpage'              => 'z', # do not translate or duplicate this message to other languages
-'accesskey-n-mainpage-description'  => 'z', # do not translate or duplicate this message to other languages
-'accesskey-n-portal'                => '', # do not translate or duplicate this message to other languages
-'accesskey-n-currentevents'         => '', # do not translate or duplicate this message to other languages
-'accesskey-n-recentchanges'         => 'r', # do not translate or duplicate this message to other languages
-'accesskey-n-randompage'            => 'x', # do not translate or duplicate this message to other languages
-'accesskey-n-help'                  => '', # do not translate or duplicate this message to other languages
-'accesskey-t-whatlinkshere'         => 'j', # do not translate or duplicate this message to other languages
-'accesskey-t-recentchangeslinked'   => 'k', # do not translate or duplicate this message to other languages
-'accesskey-feed-rss'                => '', # do not translate or duplicate this message to other languages
-'accesskey-feed-atom'               => '', # do not translate or duplicate this message to other languages
-'accesskey-t-contributions'         => '', # do not translate or duplicate this message to other languages
-'accesskey-t-emailuser'             => '', # do not translate or duplicate this message to other languages
-'accesskey-t-permalink'             => '', # do not translate or duplicate this message to other languages
-'accesskey-t-print'                 => 'p', # do not translate or duplicate this message to other languages
-'accesskey-t-upload'                => 'u', # do not translate or duplicate this message to other languages
-'accesskey-t-specialpages'          => 'q', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-main'           => 'c', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-user'           => 'c', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-media'          => 'c', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-special'        => '', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-project'        => 'a', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-image'          => 'c', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-mediawiki'      => 'c', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-template'       => 'c', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-help'           => 'c', # do not translate or duplicate this message to other languages
-'accesskey-ca-nstab-category'       => 'c', # do not translate or duplicate this message to other languages
-'accesskey-minoredit'               => 'i', # do not translate or duplicate this message to other languages
-'accesskey-save'                    => 's', # do not translate or duplicate this message to other languages
-'accesskey-preview'                 => 'p', # do not translate or duplicate this message to other languages
-'accesskey-diff'                    => 'v', # do not translate or duplicate this message to other languages
-'accesskey-compareselectedversions' => 'v', # do not translate or duplicate this message to other languages
-'accesskey-watch'                   => 'w', # do not translate or duplicate this message to other languages
-'accesskey-upload'                  => 's', # do not translate or duplicate this message to other languages
-'accesskey-preferences-save'        => 's', # do not translate or duplicate this message to other languages
-'accesskey-summary'                 => 'b', # do not translate or duplicate this message to other languages
-'accesskey-userrights-set'          => 's', # do not translate or duplicate this message to other languages
-'accesskey-blockip-block'           => 's', # do not translate or duplicate this message to other languages
-'accesskey-export'                  => 's', # do not translate or duplicate this message to other languages
-'accesskey-import'                  => 's', # do not translate or duplicate this message to other languages
+'accesskey-pt-userpage'                 => '.', # do not translate or duplicate this message to other languages
+'accesskey-pt-anonuserpage'             => '.', # do not translate or duplicate this message to other languages
+'accesskey-pt-mytalk'                   => 'n', # do not translate or duplicate this message to other languages
+'accesskey-pt-anontalk'                 => 'n', # do not translate or duplicate this message to other languages
+'accesskey-pt-preferences'              => '', # do not translate or duplicate this message to other languages
+'accesskey-pt-watchlist'                => 'l', # do not translate or duplicate this message to other languages
+'accesskey-pt-mycontris'                => 'y', # do not translate or duplicate this message to other languages
+'accesskey-pt-login'                    => 'o', # do not translate or duplicate this message to other languages
+'accesskey-pt-anonlogin'                => 'o', # do not translate or duplicate this message to other languages
+'accesskey-pt-logout'                   => '', # do not translate or duplicate this message to other languages
+'accesskey-ca-talk'                     => 't', # do not translate or duplicate this message to other languages
+'accesskey-ca-edit'                     => 'e', # do not translate or duplicate this message to other languages
+'accesskey-ca-addsection'               => '+', # do not translate or duplicate this message to other languages
+'accesskey-ca-viewsource'               => 'e', # do not translate or duplicate this message to other languages
+'accesskey-ca-history'                  => 'h', # do not translate or duplicate this message to other languages
+'accesskey-ca-protect'                  => '=', # do not translate or duplicate this message to other languages
+'accesskey-ca-unprotect'                => '=', # do not translate or duplicate this message to other languages
+'accesskey-ca-delete'                   => 'd', # do not translate or duplicate this message to other languages
+'accesskey-ca-undelete'                 => 'd', # do not translate or duplicate this message to other languages
+'accesskey-ca-move'                     => 'm', # do not translate or duplicate this message to other languages
+'accesskey-ca-watch'                    => 'w', # do not translate or duplicate this message to other languages
+'accesskey-ca-unwatch'                  => 'w', # do not translate or duplicate this message to other languages
+'accesskey-search'                      => 'f', # do not translate or duplicate this message to other languages
+'accesskey-search-go'                   => '', # do not translate or duplicate this message to other languages
+'accesskey-search-fulltext'             => '', # do not translate or duplicate this message to other languages
+'accesskey-p-logo'                      => '', # do not translate or duplicate this message to other languages
+'accesskey-n-mainpage'                  => 'z', # do not translate or duplicate this message to other languages
+'accesskey-n-mainpage-description'      => 'z', # do not translate or duplicate this message to other languages
+'accesskey-n-portal'                    => '', # do not translate or duplicate this message to other languages
+'accesskey-n-currentevents'             => '', # do not translate or duplicate this message to other languages
+'accesskey-n-recentchanges'             => 'r', # do not translate or duplicate this message to other languages
+'accesskey-n-randompage'                => 'x', # do not translate or duplicate this message to other languages
+'accesskey-n-help'                      => '', # do not translate or duplicate this message to other languages
+'accesskey-t-whatlinkshere'             => 'j', # do not translate or duplicate this message to other languages
+'accesskey-t-recentchangeslinked'       => 'k', # do not translate or duplicate this message to other languages
+'accesskey-feed-rss'                    => '', # do not translate or duplicate this message to other languages
+'accesskey-feed-atom'                   => '', # do not translate or duplicate this message to other languages
+'accesskey-t-contributions'             => '', # do not translate or duplicate this message to other languages
+'accesskey-t-emailuser'                 => '', # do not translate or duplicate this message to other languages
+'accesskey-t-permalink'                 => '', # do not translate or duplicate this message to other languages
+'accesskey-t-print'                     => 'p', # do not translate or duplicate this message to other languages
+'accesskey-t-upload'                    => 'u', # do not translate or duplicate this message to other languages
+'accesskey-t-specialpages'              => 'q', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-main'               => 'c', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-user'               => 'c', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-media'              => 'c', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-special'            => '', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-project'            => 'a', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-image'              => 'c', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-mediawiki'          => 'c', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-template'           => 'c', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-help'               => 'c', # do not translate or duplicate this message to other languages
+'accesskey-ca-nstab-category'           => 'c', # do not translate or duplicate this message to other languages
+'accesskey-minoredit'                   => 'i', # do not translate or duplicate this message to other languages
+'accesskey-save'                        => 's', # do not translate or duplicate this message to other languages
+'accesskey-preview'                     => 'p', # do not translate or duplicate this message to other languages
+'accesskey-diff'                        => 'v', # do not translate or duplicate this message to other languages
+'accesskey-compareselectedversions'     => 'v', # do not translate or duplicate this message to other languages
+'accesskey-watch'                       => 'w', # do not translate or duplicate this message to other languages
+'accesskey-upload'                      => 's', # do not translate or duplicate this message to other languages
+'accesskey-preferences-save'            => 's', # do not translate or duplicate this message to other languages
+'accesskey-summary'                     => 'b', # do not translate or duplicate this message to other languages
+'accesskey-userrights-set'              => 's', # do not translate or duplicate this message to other languages
+'accesskey-blockip-block'               => 's', # do not translate or duplicate this message to other languages
+'accesskey-export'                      => 's', # do not translate or duplicate this message to other languages
+'accesskey-import'                      => 's', # do not translate or duplicate this message to other languages
+'accesskey-watchlistedit-normal-submit' => 's', # do not translate or duplicate this message to other languages
+'accesskey-watchlistedit-raw-submit'    => 's', # do not translate or duplicate this message to other languages
 
 # Tooltip help for the actions
-'tooltip-pt-userpage'             => 'Your user page',
-'tooltip-pt-anonuserpage'         => 'The user page for the IP address you are editing as',
-'tooltip-pt-mytalk'               => 'Your talk page',
-'tooltip-pt-anontalk'             => 'Discussion about edits from this IP address',
-'tooltip-pt-preferences'          => 'Your preferences',
-'tooltip-pt-watchlist'            => 'A list of pages you are monitoring for changes',
-'tooltip-pt-mycontris'            => 'A list of your contributions',
-'tooltip-pt-login'                => 'You are encouraged to log in; however, it is not mandatory',
-'tooltip-pt-anonlogin'            => 'You are encouraged to log in; however, it is not mandatory',
-'tooltip-pt-logout'               => 'Log out',
-'tooltip-ca-talk'                 => 'Discussion about the content page',
-'tooltip-ca-edit'                 => 'You can edit this page. Please use the preview button before saving',
-'tooltip-ca-addsection'           => 'Start a new section',
-'tooltip-ca-viewsource'           => 'This page is protected.
+'tooltip-pt-userpage'                 => 'Your user page',
+'tooltip-pt-anonuserpage'             => 'The user page for the IP address you are editing as',
+'tooltip-pt-mytalk'                   => 'Your talk page',
+'tooltip-pt-anontalk'                 => 'Discussion about edits from this IP address',
+'tooltip-pt-preferences'              => 'Your preferences',
+'tooltip-pt-watchlist'                => 'A list of pages you are monitoring for changes',
+'tooltip-pt-mycontris'                => 'A list of your contributions',
+'tooltip-pt-login'                    => 'You are encouraged to log in; however, it is not mandatory',
+'tooltip-pt-anonlogin'                => 'You are encouraged to log in; however, it is not mandatory',
+'tooltip-pt-logout'                   => 'Log out',
+'tooltip-ca-talk'                     => 'Discussion about the content page',
+'tooltip-ca-edit'                     => 'You can edit this page. Please use the preview button before saving',
+'tooltip-ca-addsection'               => 'Start a new section',
+'tooltip-ca-viewsource'               => 'This page is protected.
 You can view its source',
-'tooltip-ca-history'              => 'Past revisions of this page',
-'tooltip-ca-protect'              => 'Protect this page',
-'tooltip-ca-unprotect'            => 'Change protection of this page',
-'tooltip-ca-delete'               => 'Delete this page',
-'tooltip-ca-undelete'             => 'Restore the edits done to this page before it was deleted',
-'tooltip-ca-move'                 => 'Move this page',
-'tooltip-ca-watch'                => 'Add this page to your watchlist',
-'tooltip-ca-unwatch'              => 'Remove this page from your watchlist',
-'tooltip-search'                  => 'Search {{SITENAME}}',
-'tooltip-search-go'               => 'Go to a page with this exact name if exists',
-'tooltip-search-fulltext'         => 'Search the pages for this text',
-'tooltip-p-logo'                  => 'Visit the main page',
-'tooltip-n-mainpage'              => 'Visit the main page',
-'tooltip-n-mainpage-description'  => 'Visit the main page',
-'tooltip-n-portal'                => 'About the project, what you can do, where to find things',
-'tooltip-n-currentevents'         => 'Find background information on current events',
-'tooltip-n-recentchanges'         => 'A list of recent changes in the wiki',
-'tooltip-n-randompage'            => 'Load a random page',
-'tooltip-n-help'                  => 'The place to find out',
-'tooltip-t-whatlinkshere'         => 'A list of all wiki pages that link here',
-'tooltip-t-recentchangeslinked'   => 'Recent changes in pages linked from this page',
-'tooltip-feed-rss'                => 'RSS feed for this page',
-'tooltip-feed-atom'               => 'Atom feed for this page',
-'tooltip-t-contributions'         => 'A list of contributions of this user',
-'tooltip-t-emailuser'             => 'Send an e-mail to this user',
-'tooltip-t-upload'                => 'Upload files',
-'tooltip-t-specialpages'          => 'A list of all special pages',
-'tooltip-t-print'                 => 'Printable version of this page',
-'tooltip-t-permalink'             => 'Permanent link to this revision of the page',
-'tooltip-ca-nstab-main'           => 'View the content page',
-'tooltip-ca-nstab-user'           => 'View the user page',
-'tooltip-ca-nstab-media'          => 'View the media page',
-'tooltip-ca-nstab-special'        => 'This is a special page, you cannot edit the page itself',
-'tooltip-ca-nstab-project'        => 'View the project page',
-'tooltip-ca-nstab-image'          => 'View the file page',
-'tooltip-ca-nstab-mediawiki'      => 'View the system message',
-'tooltip-ca-nstab-template'       => 'View the template',
-'tooltip-ca-nstab-help'           => 'View the help page',
-'tooltip-ca-nstab-category'       => 'View the category page',
-'tooltip-minoredit'               => 'Mark this as a minor edit',
-'tooltip-save'                    => 'Save your changes',
-'tooltip-preview'                 => 'Preview your changes, please use this before saving!',
-'tooltip-diff'                    => 'Show which changes you made to the text',
-'tooltip-compareselectedversions' => 'See the differences between the two selected revisions of this page',
-'tooltip-watch'                   => 'Add this page to your watchlist',
-'tooltip-recreate'                => 'Recreate the page even though it has been deleted',
-'tooltip-upload'                  => 'Start upload',
-'tooltip-rollback'                => '"Rollback" reverts edit(s) to this page of the last contributor in one click',
-'tooltip-undo'                    => '"Undo" reverts this edit and opens the edit form in preview mode. It allows adding a reason in the summary.',
-'tooltip-preferences-save'        => 'Save preferences',
-'tooltip-summary'                 => 'Enter a short summary',
+'tooltip-ca-history'                  => 'Past revisions of this page',
+'tooltip-ca-protect'                  => 'Protect this page',
+'tooltip-ca-unprotect'                => 'Change protection of this page',
+'tooltip-ca-delete'                   => 'Delete this page',
+'tooltip-ca-undelete'                 => 'Restore the edits done to this page before it was deleted',
+'tooltip-ca-move'                     => 'Move this page',
+'tooltip-ca-watch'                    => 'Add this page to your watchlist',
+'tooltip-ca-unwatch'                  => 'Remove this page from your watchlist',
+'tooltip-search'                      => 'Search {{SITENAME}}',
+'tooltip-search-go'                   => 'Go to a page with this exact name if exists',
+'tooltip-search-fulltext'             => 'Search the pages for this text',
+'tooltip-p-logo'                      => 'Visit the main page',
+'tooltip-n-mainpage'                  => 'Visit the main page',
+'tooltip-n-mainpage-description'      => 'Visit the main page',
+'tooltip-n-portal'                    => 'About the project, what you can do, where to find things',
+'tooltip-n-currentevents'             => 'Find background information on current events',
+'tooltip-n-recentchanges'             => 'A list of recent changes in the wiki',
+'tooltip-n-randompage'                => 'Load a random page',
+'tooltip-n-help'                      => 'The place to find out',
+'tooltip-t-whatlinkshere'             => 'A list of all wiki pages that link here',
+'tooltip-t-recentchangeslinked'       => 'Recent changes in pages linked from this page',
+'tooltip-feed-rss'                    => 'RSS feed for this page',
+'tooltip-feed-atom'                   => 'Atom feed for this page',
+'tooltip-t-contributions'             => 'A list of contributions of this user',
+'tooltip-t-emailuser'                 => 'Send an e-mail to this user',
+'tooltip-t-upload'                    => 'Upload files',
+'tooltip-t-specialpages'              => 'A list of all special pages',
+'tooltip-t-print'                     => 'Printable version of this page',
+'tooltip-t-permalink'                 => 'Permanent link to this revision of the page',
+'tooltip-ca-nstab-main'               => 'View the content page',
+'tooltip-ca-nstab-user'               => 'View the user page',
+'tooltip-ca-nstab-media'              => 'View the media page',
+'tooltip-ca-nstab-special'            => 'This is a special page, you cannot edit the page itself',
+'tooltip-ca-nstab-project'            => 'View the project page',
+'tooltip-ca-nstab-image'              => 'View the file page',
+'tooltip-ca-nstab-mediawiki'          => 'View the system message',
+'tooltip-ca-nstab-template'           => 'View the template',
+'tooltip-ca-nstab-help'               => 'View the help page',
+'tooltip-ca-nstab-category'           => 'View the category page',
+'tooltip-minoredit'                   => 'Mark this as a minor edit',
+'tooltip-save'                        => 'Save your changes',
+'tooltip-preview'                     => 'Preview your changes, please use this before saving!',
+'tooltip-diff'                        => 'Show which changes you made to the text',
+'tooltip-compareselectedversions'     => 'See the differences between the two selected revisions of this page',
+'tooltip-watch'                       => 'Add this page to your watchlist',
+'tooltip-watchlistedit-normal-submit' => 'Remove titles',
+'tooltip-watchlistedit-raw-submit'    => 'Update watchlist',
+'tooltip-recreate'                    => 'Recreate the page even though it has been deleted',
+'tooltip-upload'                      => 'Start upload',
+'tooltip-rollback'                    => '"Rollback" reverts edit(s) to this page of the last contributor in one click',
+'tooltip-undo'                        => '"Undo" reverts this edit and opens the edit form in preview mode. It allows adding a reason in the summary.',
+'tooltip-preferences-save'            => 'Save preferences',
+'tooltip-summary'                     => 'Enter a short summary',
 
 # Stylesheets
 'common.css'              => '/* CSS placed here will be applied to all skins */', # only translate this message to other languages if you have to change it
@@ -4387,25 +4426,25 @@ Please confirm that you really want to recreate this page.",
 *207.200.112.0/21', # do not translate or duplicate this message to other languages
 
 # Size units
-'size-bytes'     => '$1 B', # only translate this message to other languages if you have to change it
-'size-kilobytes' => '$1 KB', # only translate this message to other languages if you have to change it
-'size-megabytes' => '$1 MB', # only translate this message to other languages if you have to change it
-'size-gigabytes' => '$1 GB', # only translate this message to other languages if you have to change it
-'size-terabytes' => '$1 TB', # only translate this message to other languages if you have to change it
-'size-petabytes' => '$1 PB', # only translate this message to other languages if you have to change it
-'size-exabytes' => '$1 EB', # only translate this message to other languages if you have to change it
-'size-zetabytes' => '$1 ZB', # only translate this message to other languages if you have to change it
+'size-bytes'      => '$1 B', # only translate this message to other languages if you have to change it
+'size-kilobytes'  => '$1 KB', # only translate this message to other languages if you have to change it
+'size-megabytes'  => '$1 MB', # only translate this message to other languages if you have to change it
+'size-gigabytes'  => '$1 GB', # only translate this message to other languages if you have to change it
+'size-terabytes'  => '$1 TB', # only translate this message to other languages if you have to change it
+'size-petabytes'  => '$1 PB', # only translate this message to other languages if you have to change it
+'size-exabytes'   => '$1 EB', # only translate this message to other languages if you have to change it
+'size-zetabytes'  => '$1 ZB', # only translate this message to other languages if you have to change it
 'size-yottabytes' => '$1 YB', # only translate this message to other languages if you have to change it
 
 # Bitrate units
-'bitrate-bits'     => '$1bps', # only translate this message to other languages if you have to change it
-'bitrate-kilobits' => '$1kbps', # only translate this message to other languages if you have to change it
-'bitrate-megabits' => '$1Mbps', # only translate this message to other languages if you have to change it
-'bitrate-gigabits' => '$1Gbps', # only translate this message to other languages if you have to change it
-'bitrate-terabits' => '$1Tbps', # only translate this message to other languages if you have to change it
-'bitrate-petabits' => '$1Pbps', # only translate this message to other languages if you have to change it
-'bitrate-exabits' => '$1Ebps', # only translate this message to other languages if you have to change it
-'bitrate-zetabits' => '$1Zbps', # only translate this message to other languages if you have to change it
+'bitrate-bits'      => '$1bps', # only translate this message to other languages if you have to change it
+'bitrate-kilobits'  => '$1kbps', # only translate this message to other languages if you have to change it
+'bitrate-megabits'  => '$1Mbps', # only translate this message to other languages if you have to change it
+'bitrate-gigabits'  => '$1Gbps', # only translate this message to other languages if you have to change it
+'bitrate-terabits'  => '$1Tbps', # only translate this message to other languages if you have to change it
+'bitrate-petabits'  => '$1Pbps', # only translate this message to other languages if you have to change it
+'bitrate-exabits'   => '$1Ebps', # only translate this message to other languages if you have to change it
+'bitrate-zetabits'  => '$1Zbps', # only translate this message to other languages if you have to change it
 'bitrate-yottabits' => '$1Ybps', # only translate this message to other languages if you have to change it
 
 # Live preview
@@ -4648,17 +4687,17 @@ This site is experiencing technical difficulties.',
 'sqlite-no-fts'  => '$1 without full-text search support',
 
 # New logging system
-'logentry-delete-delete'              => '$1 {{GENDER:$2|deleted}} page $3',
-'logentry-delete-restore'             => '$1 {{GENDER:$2|restored}} page $3',
-'logentry-delete-event'               => '$1 {{GENDER:$2|changed}} visibility of {{PLURAL:$5|a log event|$5 log events}} on $3: $4',
-'logentry-delete-revision'            => '$1 {{GENDER:$2|changed}} visibility of {{PLURAL:$5|a revision|$5 revisions}} on page $3: $4',
-'logentry-delete-event-legacy'        => '$1 {{GENDER:$2|changed}} visibility of log events on $3',
-'logentry-delete-revision-legacy'     => '$1 {{GENDER:$2|changed}} visibility of revisions on page $3',
-'logentry-suppress-delete'            => '$1 {{GENDER:$2|suppressed}} page $3',
-'logentry-suppress-event'             => '$1 secretly {{GENDER:$2|changed}} visibility of {{PLURAL:$5|a log event|$5 log events}} on $3: $4',
-'logentry-suppress-revision'          => '$1 secretly {{GENDER:$2|changed}} visibility of {{PLURAL:$5|a revision|$5 revisions}} on page $3: $4',
-'logentry-suppress-event-legacy'      => '$1 secretly {{GENDER:$2|changed}} visibility of log events on $3',
-'logentry-suppress-revision-legacy'   => '$1 secretly {{GENDER:$2|changed}} visibility of revisions on page $3',
+'logentry-delete-delete'              => '$1 deleted page $3',
+'logentry-delete-restore'             => '$1 restored page $3',
+'logentry-delete-event'               => '$1 changed visibility of {{PLURAL:$5|a log event|$5 log events}} on $3: $4',
+'logentry-delete-revision'            => '$1 changed visibility of {{PLURAL:$5|a revision|$5 revisions}} on page $3: $4',
+'logentry-delete-event-legacy'        => '$1 changed visibility of log events on $3',
+'logentry-delete-revision-legacy'     => '$1 changed visibility of revisions on page $3',
+'logentry-suppress-delete'            => '$1 suppressed page $3',
+'logentry-suppress-event'             => '$1 secretly changed visibility of {{PLURAL:$5|a log event|$5 log events}} on $3: $4',
+'logentry-suppress-revision'          => '$1 secretly changed visibility of {{PLURAL:$5|a revision|$5 revisions}} on page $3: $4',
+'logentry-suppress-event-legacy'      => '$1 secretly changed visibility of log events on $3',
+'logentry-suppress-revision-legacy'   => '$1 secretly changed visibility of revisions on page $3',
 'revdelete-content-hid'               => 'content hidden',
 'revdelete-summary-hid'               => 'edit summary hidden',
 'revdelete-uname-hid'                 => 'username hidden',
@@ -4667,16 +4706,16 @@ This site is experiencing technical difficulties.',
 'revdelete-uname-unhid'               => 'username unhidden',
 'revdelete-restricted'                => 'applied restrictions to administrators',
 'revdelete-unrestricted'              => 'removed restrictions for administrators',
-'logentry-move-move'                  => '$1 {{GENDER:$2|moved}} page $3 to $4',
-'logentry-move-move-noredirect'       => '$1 {{GENDER:$2|moved}} page $3 to $4 without leaving a redirect',
-'logentry-move-move_redir'            => '$1 {{GENDER:$2|moved}} page $3 to $4 over redirect',
-'logentry-move-move_redir-noredirect' => '$1 {{GENDER:$2|moved}} page $3 to $4 over a redirect without leaving a redirect',
-'logentry-patrol-patrol'              => '$1 {{GENDER:$2|marked}} revision $4 of page $3 patrolled',
-'logentry-patrol-patrol-auto'         => '$1 automatically {{GENDER:$2|marked}} revision $4 of page $3 patrolled',
-'logentry-newusers-newusers'          => '$1 {{GENDER:$2|created}} a user account',
-'logentry-newusers-create'            => '$1 {{GENDER:$2|created}} a user account',
-'logentry-newusers-create2'           => '$1 {{GENDER:$2|created}} {{GENDER:$4|a user account}} $3',
-'logentry-newusers-autocreate'        => 'Account $1 was {{GENDER:$2|created}} automatically',
+'logentry-move-move'                  => '$1 moved page $3 to $4',
+'logentry-move-move-noredirect'       => '$1 moved page $3 to $4 without leaving a redirect',
+'logentry-move-move_redir'            => '$1 moved page $3 to $4 over redirect',
+'logentry-move-move_redir-noredirect' => '$1 moved page $3 to $4 over a redirect without leaving a redirect',
+'logentry-patrol-patrol'              => '$1 marked revision $4 of page $3 patrolled',
+'logentry-patrol-patrol-auto'         => '$1 automatically marked revision $4 of page $3 patrolled',
+'logentry-newusers-newusers'          => '$1 created a user account',
+'logentry-newusers-create'            => '$1 created a user account',
+'logentry-newusers-create2'           => '$1 created a user account $3',
+'logentry-newusers-autocreate'        => 'Account $1 was created automatically',
 'newuserlog-byemail'                  => 'password sent by e-mail',
 
 # Feedback
@@ -4695,4 +4734,42 @@ Otherwise, you can use the easy form below. Your comment will be added to the pa
 'feedback-bugcheck'  => 'Great! Just check that it is not already one of the [$1 known bugs].',
 'feedback-bugnew'    => 'I checked. Report a new bug',
 
+# API errors
+'api-error-badaccess-groups'              => 'You are not permitted to upload files to this wiki.',
+'api-error-badtoken'                      => 'Internal error: Bad token.',
+'api-error-copyuploaddisabled'            => 'Uploading by URL is disabled on this server.',
+'api-error-duplicate'                     => 'There {{PLURAL:$1|is [$2 another file]|are [$2 some other files]}} already on the site with the same content.',
+'api-error-duplicate-archive'             => 'There {{PLURAL:$1|was [$2 another file]|were [$2 some other files]}} already on the site with the same content, but {{PLURAL:$1|it was|they were}} deleted.',
+'api-error-duplicate-archive-popup-title' => 'Duplicate {{PLURAL:$1|file that has|files that have}} already been deleted.',
+'api-error-duplicate-popup-title'         => 'Duplicate {{PLURAL:$1|file|files}}.',
+'api-error-empty-file'                    => 'The file you submitted was empty.',
+'api-error-emptypage'                     => 'Creating new, empty pages is not allowed.',
+'api-error-fetchfileerror'                => 'Internal error: Something went wrong while fetching the file.',
+'api-error-file-too-large'                => 'The file you submitted was too large.',
+'api-error-filename-tooshort'             => 'The filename is too short.',
+'api-error-filetype-banned'               => 'This type of file is banned.',
+'api-error-filetype-missing'              => 'The filename is missing an extension.',
+'api-error-hookaborted'                   => 'The modification you tried to make was aborted by an extension.',
+'api-error-http'                          => 'Internal error: Unable to connect to server.',
+'api-error-illegal-filename'              => 'The filename is not allowed.',
+'api-error-internal-error'                => 'Internal error: Something went wrong with processing your upload on the wiki.',
+'api-error-invalid-file-key'              => 'Internal error: File was not found in temporary storage.',
+'api-error-missingparam'                  => 'Internal error: Missing parameters on request.',
+'api-error-missingresult'                 => 'Internal error: Could not determine if the copy succeeded.',
+'api-error-mustbeloggedin'                => 'You must be logged in to upload files.',
+'api-error-mustbeposted'                  => 'Internal error: Request requires HTTP POST.',
+'api-error-noimageinfo'                   => 'The upload succeeded, but the server did not give us any information about the file.',
+'api-error-nomodule'                      => 'Internal error: No upload module set.',
+'api-error-ok-but-empty'                  => 'Internal error: No response from server.',
+'api-error-overwrite'                     => 'Overwriting an existing file is not allowed.',
+'api-error-stashfailed'                   => 'Internal error: Server failed to store temporary file.',
+'api-error-timeout'                       => 'The server did not respond within the expected time.',
+'api-error-unclassified'                  => 'An unknown error occurred.',
+'api-error-unknown-code'                  => 'Unknown error: "$1".',
+'api-error-unknown-error'                 => 'Internal error: Something went wrong when trying to upload your file.',
+'api-error-unknown-warning'               => 'Unknown warning: "$1".',
+'api-error-unknownerror'                  => 'Unknown error: "$1".',
+'api-error-uploaddisabled'                => 'Uploading is disabled on this wiki.',
+'api-error-verification-error'            => 'This file might be corrupt, or have the wrong extension.',
+
 );