'remembermypassword' => 'Remember my login on this browser (for a maximum of $1 {{PLURAL:$1|day|days}})',
'securelogin-stick-https' => 'Stay connected to HTTPS after login',
'yourdomainname' => 'Your domain:',
+'password-change-forbidden' => 'You cannot change passwords on this wiki.',
'externaldberror' => 'There was either an authentication database error or you are not allowed to update your external account.',
'login' => 'Log in',
'nav-login-createaccount' => 'Log in / create account',
You can [[Special:Search/{{PAGENAME}}|search for this page title]] in other pages,
or <span class="plainlinks">[{{fullurl:{{#Special:Log}}|page={{FULLPAGENAMEE}}}} search the related logs]</span>.',
'noarticletextanon' => '{{int:noarticletext}}', # do not translate or duplicate this message to other languages
+'missing-revision' => 'The revision #$1 of the page named "{{PAGENAME}}" does not exist.
+
+This is usually caused by following an outdated history link to a page that has been deleted.
+Details can be found in the [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} deletion log].',
'userpage-userdoesnotexist' => 'User account "$1" is not registered.
Please check if you want to create/edit this page.',
'userpage-userdoesnotexist-view' => 'User account "$1" is not registered.',
'mergelogpagetext' => 'Below is a list of the most recent merges of one page history into another.',
# Diffs
-'history-title' => 'Revision history of "$1"',
-'difference-title' => 'Difference between revisions of "$1"',
-'difference-title-multipage' => 'Difference between pages "$1" and "$2"',
-'difference-multipage' => '(Difference between pages)',
-'lineno' => 'Line $1:',
-'compareselectedversions' => 'Compare selected revisions',
-'showhideselectedversions' => 'Show/hide selected revisions',
-'editundo' => 'undo',
-'diff-multi' => '({{PLURAL:$1|One intermediate revision|$1 intermediate revisions}} by {{PLURAL:$2|one user|$2 users}} not shown)',
-'diff-multi-manyusers' => '({{PLURAL:$1|One intermediate revision|$1 intermediate revisions}} by more than $2 {{PLURAL:$2|user|users}} not shown)',
+'history-title' => 'Revision history of "$1"',
+'difference-title' => 'Difference between revisions of "$1"',
+'difference-title-multipage' => 'Difference between pages "$1" and "$2"',
+'difference-multipage' => '(Difference between pages)',
+'lineno' => 'Line $1:',
+'compareselectedversions' => 'Compare selected revisions',
+'showhideselectedversions' => 'Show/hide selected revisions',
+'editundo' => 'undo',
+'diff-multi' => '({{PLURAL:$1|One intermediate revision|$1 intermediate revisions}} by {{PLURAL:$2|one user|$2 users}} not shown)',
+'diff-multi-manyusers' => '({{PLURAL:$1|One intermediate revision|$1 intermediate revisions}} by more than $2 {{PLURAL:$2|user|users}} not shown)',
+'difference-missing-revision' => '{{PLURAL:$2|One revision|$2 revisions}} of this difference ($1) {{PLURAL:$2|was|were}} not found.
+
+This is usually caused by following an outdated diff link to a page that has been deleted.
+Details can be found in the [{{fullurl:{{#Special:Log}}/delete|page={{FULLPAGENAMEE}}}} deletion log].',
# Search results
'search-summary' => '', # do not translate or duplicate this message to other languages
'upload-copy-upload-invalid-domain' => 'Copy uploads are not available from this domain.',
# File backend
-'backend-fail-stream' => 'Could not stream file $1.',
-'backend-fail-backup' => 'Could not backup file $1.',
+'backend-fail-stream' => 'Could not stream file "$1".',
+'backend-fail-backup' => 'Could not backup file "$1".',
'backend-fail-notexists' => 'The file $1 does not exist.',
'backend-fail-hashes' => 'Could not get file hashes for comparison.',
-'backend-fail-notsame' => 'A non-identical file already exists at $1.',
-'backend-fail-invalidpath' => '$1 is not a valid storage path.',
-'backend-fail-delete' => 'Could not delete file $1.',
-'backend-fail-alreadyexists' => 'The file $1 already exists.',
-'backend-fail-store' => 'Could not store file $1 at $2.',
-'backend-fail-copy' => 'Could not copy file $1 to $2.',
-'backend-fail-move' => 'Could not move file $1 to $2.',
+'backend-fail-notsame' => 'A non-identical file already exists at "$1".',
+'backend-fail-invalidpath' => '"$1" is not a valid storage path.',
+'backend-fail-delete' => 'Could not delete file "$1".',
+'backend-fail-alreadyexists' => 'The file "$1" already exists.',
+'backend-fail-store' => 'Could not store file "$1" at "$2".',
+'backend-fail-copy' => 'Could not copy file "$1" to "$2".',
+'backend-fail-move' => 'Could not move file "$1" to "$2".',
'backend-fail-opentemp' => 'Could not open temporary file.',
'backend-fail-writetemp' => 'Could not write to temporary file.',
'backend-fail-closetemp' => 'Could not close temporary file.',
-'backend-fail-read' => 'Could not read file $1.',
-'backend-fail-create' => 'Could not write file $1.',
-'backend-fail-maxsize' => 'Could not write file $1 because it is larger than {{PLURAL:$2|one byte|$2 bytes}}.',
+'backend-fail-read' => 'Could not read file "$1".',
+'backend-fail-create' => 'Could not write file "$1".',
+'backend-fail-maxsize' => 'Could not write file "$1" because it is larger than {{PLURAL:$2|one byte|$2 bytes}}.',
'backend-fail-readonly' => 'The storage backend "$1" is currently read-only. The reason given is: "\'\'$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}}.',
-'backend-fail-usable' => 'Could not write file $1 due to insufficient permissions or missing directories/containers.',
+'backend-fail-batchsize' => 'The storage backend was given a batch of $1 file {{PLURAL:$1|operation|operations}}; the limit is $2 {{PLURAL:$2|operation|operations}}.',
+'backend-fail-usable' => 'Could not write file "$1" due to insufficient permissions or missing directories/containers.',
# File journal errors
'filejournal-fail-dbconnect' => 'Could not connect to the journal database for storage backend "$1".',
'disambiguations' => 'Pages linking to disambiguation pages',
'disambiguations-summary' => '', # do not translate or duplicate this message to other languages
'disambiguationspage' => 'Template:disambig',
-'disambiguations-text' => "The following pages link to a '''disambiguation page'''.
-They should link to the appropriate topic instead.<br />
+'disambiguations-text' => "The following pages contain at least one link to a '''disambiguation page'''.
+They may have to link to a more appropriate page instead.<br />
A page is treated as disambiguation page if it uses a template which is linked from [[MediaWiki:Disambiguationspage]].",
'doubleredirects' => 'Double redirects',
proceed with caution.',
# Rollback
-'rollback' => 'Roll back edits',
-'rollback_short' => 'Rollback',
-'rollbacklink' => 'rollback',
-'rollbacklinkcount' => 'rollback $1 {{PLURAL:$1|edit|edits}}',
+'rollback' => 'Roll back edits',
+'rollback_short' => 'Rollback',
+'rollbacklink' => 'rollback',
+'rollbacklinkcount' => 'rollback $1 {{PLURAL:$1|edit|edits}}',
'rollbacklinkcount-morethan' => 'rollback more than $1 {{PLURAL:$1|edit|edits}}',
-'rollbackfailed' => 'Rollback failed',
-'cantrollback' => 'Cannot revert edit;
+'rollbackfailed' => 'Rollback failed',
+'cantrollback' => 'Cannot revert edit;
last contributor is only author of this page.',
-'alreadyrolled' => 'Cannot rollback last edit of [[:$1]] by [[User:$2|$2]] ([[User talk:$2|talk]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]);
+'alreadyrolled' => 'Cannot rollback last edit of [[:$1]] by [[User:$2|$2]] ([[User talk:$2|talk]]{{int:pipe-separator}}[[Special:Contributions/$2|{{int:contribslink}}]]);
someone else has edited or rolled back the page already.
The last edit to the page was by [[User:$3|$3]] ([[User talk:$3|talk]]{{int:pipe-separator}}[[Special:Contributions/$3|{{int:contribslink}}]]).',
-'editcomment' => "The edit summary was: \"''\$1''\".",
-'revertpage' => 'Reverted edits by [[Special:Contributions/$2|$2]] ([[User talk:$2|talk]]) to last revision by [[User:$1|$1]]',
-'revertpage-nouser' => 'Reverted edits by (username removed) to last revision by [[User:$1|$1]]',
-'rollback-success' => 'Reverted edits by $1;
+'editcomment' => "The edit summary was: \"''\$1''\".",
+'revertpage' => 'Reverted edits by [[Special:Contributions/$2|$2]] ([[User talk:$2|talk]]) to last revision by [[User:$1|$1]]',
+'revertpage-nouser' => 'Reverted edits by (username removed) to last revision by [[User:$1|$1]]',
+'rollback-success' => 'Reverted edits by $1;
changed back to last revision by $2.',
# Edit tokens
Since you do not have the hideuser right, you cannot see or edit the user's block.",
'ipbblocked' => 'You cannot block or unblock other users, because you are yourself blocked',
'ipbnounblockself' => 'You are not allowed to unblock yourself',
+'ipb-default-expiry' => '', # do not translate or duplicate this message to other languages
# Developer tools
'lockdb' => 'Lock database',
'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-banned-type' => '$1 {{PLURAL:$4|is not a permitted file type|are not permitted file types}}. Permitted {{PLURAL:$3|file type is|file types are}} $2.',
'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.',