diff --git a/.eslint-plugin-local.js b/.eslint-plugin-local.js new file mode 100644 index 0000000000..0e0f2cf9d9 --- /dev/null +++ b/.eslint-plugin-local.js @@ -0,0 +1,3 @@ +'use strict'; + +module.exports = require( './lib/ve/.eslint-plugin-local' ); diff --git a/.gitignore b/.gitignore index 4f6919b0dc..d94eedefd5 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ tests/selenium/log # OS .DS_Store +/.stylelintcache diff --git a/.stylelintrc.json b/.stylelintrc.json index a20327c166..120a32fc11 100644 --- a/.stylelintrc.json +++ b/.stylelintrc.json @@ -5,6 +5,6 @@ ], "rules": { "no-descending-specificity": null, - "selector-class-pattern": "^(ve|mw|oo-ui|client|skin)-" + "selector-class-pattern": "^(ve|mw|oo-ui|client|skin|vector)-" } } diff --git a/.svgo.config.js b/.svgo.config.js new file mode 100644 index 0000000000..d9f22edc6e --- /dev/null +++ b/.svgo.config.js @@ -0,0 +1,39 @@ +/** + * SVGO Configuration + * Compatible with v4.0.0+ + * Recommended options from: + * https://www.mediawiki.org/wiki/Manual:Coding_conventions/SVG#Exemplified_safe_configuration + */ +'use strict'; +module.exports = { + plugins: [ + { + // Set of built-in plugins enabled by default. + name: 'preset-default', + params: { + overrides: { + cleanupIds: false, + removeDesc: false, + // If the SVG doesn't start with an XML declaration, then its MIME type will + // be detected as "text/plain" rather than "image/svg+xml" by libmagic and, + // consequently, MediaWiki's CSSMin CSS minifier. libmagic's default database + // currently requires that SVGs contain an XML declaration: + // https://github.com/threatstack/libmagic/blob/master/magic/Magdir/sgml#L5 + removeXMLProcInst: false + } + } + }, + 'removeRasterImages', + 'sortAttrs' + ], + // Set whitespace according to Wikimedia Coding Conventions. + // @see https://github.com/svg/svgo/blob/main/lib/stringifier.js#L39 for available options. + js2svg: { + eol: 'lf', + finalNewline: true, + // Configure the indent to tabs (default 4 spaces) used by `--pretty` here. + indent: '\t', + pretty: true + }, + multipass: true +}; diff --git a/Gruntfile.js b/Gruntfile.js index 6c6cdf616f..66179578c8 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -34,7 +34,6 @@ module.exports = function ( grunt ) { grunt.loadNpmTasks( 'grunt-banana-checker' ); grunt.loadNpmTasks( 'grunt-contrib-watch' ); grunt.loadNpmTasks( 'grunt-eslint' ); - grunt.loadNpmTasks( 'grunt-image' ); grunt.loadNpmTasks( 'grunt-mocha-test' ); grunt.loadNpmTasks( 'grunt-stylelint' ); grunt.loadNpmTasks( 'grunt-tyops' ); @@ -60,41 +59,6 @@ module.exports = function ( grunt ) { src: [ 'build/screenshots.diffs.js' ] } }, - image: { - pngs: { - options: { - zopflipng: true, - pngout: true, - optipng: true, - advpng: true, - pngcrush: true - }, - 'screenshots-en': { - expand: true, - src: 'screenshots/*-en.png' - }, - 'screenshots-all': { - expand: true, - src: 'screenshots/*.png' - } - }, - svgs: { - options: { - svgo: [ - '--pretty', - '--enable=removeRasterImages', - '--enable=sortAttrs', - '--disable=cleanupIDs', - '--disable=removeDesc', - '--disable=removeTitle', - '--disable=removeViewBox', - '--disable=removeXMLProcInst' - ] - }, - expand: true, - src: 'images/*.svg' - } - }, tyops: { options: { typos: 'build/typos.json' @@ -120,7 +84,8 @@ module.exports = function ( grunt ) { }, stylelint: { options: { - reportNeedlessDisables: true + reportNeedlessDisables: true, + cache: true }, all: [ '**/*.{css,less}', @@ -165,14 +130,14 @@ module.exports = function ( grunt ) { grunt.registerTask( 'test', [ 'tyops', 'eslint', 'stylelint', 'banana' ] ); grunt.registerTask( 'test-ci', [ 'git-status' ] ); - grunt.registerTask( 'screenshots', [ 'mochaTest:screenshots-en', 'image:pngs' ] ); - grunt.registerTask( 'screenshots-all', [ 'mochaTest:screenshots-all', 'image:pngs' ] ); + grunt.registerTask( 'screenshots', [ 'mochaTest:screenshots-en' ] ); + grunt.registerTask( 'screenshots-all', [ 'mochaTest:screenshots-all' ] ); grunt.registerTask( 'default', 'test' ); if ( process.env.JENKINS_HOME ) { grunt.renameTask( 'test', 'test-internal' ); grunt.registerTask( 'test', [ 'test-internal', 'test-ci' ] ); } else { - grunt.registerTask( 'ci', [ 'test', 'image:svgs', 'test-ci' ] ); + grunt.registerTask( 'ci', [ 'test', 'test-ci' ] ); } }; diff --git a/bin/updateSubmodule.sh b/bin/updateSubmodule.sh index 399864e9f7..b46ac2a5e1 100755 --- a/bin/updateSubmodule.sh +++ b/bin/updateSubmodule.sh @@ -46,18 +46,28 @@ fi # Generate commit summary NEWCHANGES=$(git log ..$TARGET --oneline --no-merges --topo-order --reverse --color=never) + +if [ -z "$NEWCHANGES" ]; then + echo >&2 "No new changes" + exit 1 +fi + +LOCALISATION_UPDATES=$(echo "$NEWCHANGES" | grep "Localisation updates from https://translatewiki.net" | awk '{print $1}' | paste -sd, - | sed -E 's/,/, /g' | sed -E 's/(([^,]+, ?){6}) /\1\n/g') +NEWCHANGES=$(echo "$NEWCHANGES" | grep -v "Localisation updates from https://translatewiki.net") TASKS=$(git log ..$TARGET --no-merges --format=format:%B | grep "Bug: T" | sort | uniq) # Ensure script continues if grep "fails" (returns nothing) with || : (due to -e flag in bash) -# Addede/removed i18n keys +# Added/removed i18n keys ADDED_I18N_KEYS=$(git diff HEAD..$TARGET -- i18n/en.json | grep -E '^\+' | grep --color=never -vE '^\+\+\+' | sed -E 's/^\+\s*"([^"]+)":.*/\1/' | sed 's/^/- /' || :) DELETED_I18N_KEYS=$(git diff HEAD..$TARGET -- i18n/en.json | grep -E '^\-' | grep --color=never -vE '^\-\-\-' | sed -E 's/^\-\s*"([^"]+)":.*/\1/' | sed 's/^/- /' || :) + # Find common keys (modified keys) MODIFIED_KEYS=$(echo -e "$ADDED_I18N_KEYS\n$DELETED_I18N_KEYS" | sort | uniq -d) + # Remove modified keys from the added and removed lists - ADDED_I18N_KEYS=$(echo "$ADDED_I18N_KEYS" | grep -vxF -f <(echo "$MODIFIED_KEYS") | sed 's/^/- /') -DELETED_I18N_KEYS=$(echo "$DELETED_I18N_KEYS" | grep -vxF -f <(echo "$MODIFIED_KEYS") | sed 's/^/- /') + ADDED_I18N_KEYS=$(echo "$ADDED_I18N_KEYS" | grep -vxF -f <(echo "$MODIFIED_KEYS") || :) +DELETED_I18N_KEYS=$(echo "$DELETED_I18N_KEYS" | grep -vxF -f <(echo "$MODIFIED_KEYS") || :) # Added/removed files ADDED_FILES=$(git diff HEAD..$TARGET --name-only --diff-filter=A | grep --color=never -E "\.(js|css|less)$" | sed 's/^/- /' || :) @@ -68,6 +78,13 @@ COMMITMSG="Update VE core submodule to $TARGETDESC New changes: $NEWCHANGES" +if [ -n "$LOCALISATION_UPDATES" ]; then + COMMITMSG+=" + +Localisation Updates: +$LOCALISATION_UPDATES" +fi + if [ -n "$ADDED_I18N_KEYS" ]; then COMMITMSG+=" diff --git a/build/checkModules.js b/build/checkModules.js index 4d29b626f4..278cdeb6c6 100644 --- a/build/checkModules.js +++ b/build/checkModules.js @@ -1,3 +1,12 @@ +/** + * Checks that all files referenced in lib/ve/build/modules.json are either: + * - referenced by a ResourceModule's veModules in extension.json (and thus loaded dynamically), or + * - explicitly listed in scripts/styles in extension.json, or + * - ignored via the ignore list in this script. + * + * Warns about unused "ignored" entries and errors on missing files. + */ + 'use strict'; const path = require( 'path' ); @@ -5,6 +14,11 @@ const path = require( 'path' ); const extensionJson = require( '../extension.json' ); const modulesJson = require( '../lib/ve/build/modules.json' ); +/** + * List of file/directory patterns to ignore. + * + * @type {string[]} + */ const ignored = [ 'node_modules/', 'lib/', @@ -28,8 +42,20 @@ const ignored = [ 'tests/dm/ve.dm.TransportServer.test.js' ]; +/** + * Ignored entries which haven't been used yet. + * + * @type {Set} + */ const unusedIgnores = new Set( ignored ); +/** + * Add file or files to a Set, prefixing with basePath. + * + * @param {string|string[]|Object[]} files + * @param {Set} set + * @param {string} [basePath=''] + */ function addFilesToSet( files, set, basePath = '' ) { if ( Array.isArray( files ) ) { files.forEach( ( file ) => set.add( path.join( basePath, file.file || file ) ) ); @@ -38,6 +64,14 @@ function addFilesToSet( files, set, basePath = '' ) { } } +/** + * Check if the filePath matches any 'ignored' entry. + * + * If matched, the entry is removed from unusedIgnores. + * + * @param {string} filePath + * @return {boolean} + */ function isIgnored( filePath ) { return ignored.some( ( ignorePath ) => { const fullIgnorePath = path.join( 'lib/ve', ignorePath ); @@ -49,6 +83,13 @@ function isIgnored( filePath ) { } ); } +/** + * Add all scripts and styles files from a modules object to a Set. + * + * @param {Object} modules + * @param {Set} set + * @param {string} [basePath] + */ function addModulesToSet( modules, set, basePath = '' ) { Object.values( modules ).forEach( ( module ) => { [ @@ -68,34 +109,38 @@ function addModulesToSet( modules, set, basePath = '' ) { } ); } -function checkFiles() { - const extensionFiles = new Set(); - addModulesToSet( extensionJson.ResourceModules, extensionFiles ); - addModulesToSet( { QUnitTestModule: extensionJson.QUnitTestModule }, extensionFiles ); - - const modulesFiles = new Set(); - addModulesToSet( modulesJson, modulesFiles, 'lib/ve' ); +const extensionFiles = new Set(); +addModulesToSet( extensionJson.ResourceModules, extensionFiles ); +addModulesToSet( { QUnitTestModule: extensionJson.QUnitTestModule }, extensionFiles ); - const missingFiles = Array.from( modulesFiles ).filter( ( file ) => !extensionFiles.has( file ) && !isIgnored( file ) ); - - if ( unusedIgnores.size ) { - console.warn( - 'Unused ignore path(s) in checkModules.js:\n\n' + - Array.from( unusedIgnores ).map( ( ignore ) => `* ${ ignore }\n` ).join( '' ) - ); +// Modules listed in veModules of ResourceModules are loaded automatically. +Object.values( extensionJson.ResourceModules ).forEach( ( module ) => { + if ( module.veModules ) { + module.veModules.forEach( ( veModule ) => { + addModulesToSet( { [ veModule ]: modulesJson[ veModule ] || {} }, extensionFiles, 'lib/ve' ); + } ); } +} ); - if ( missingFiles.length ) { - console.error( - `${ missingFiles.length } file(s) from lib/ve/modules.json are missing from extension.json:\n\n` + - missingFiles.map( ( file ) => `* ${ file }\n` ).join( '' ) + - '\nIf any of these files are not required, add them to the ignore list in build/checkModules.js.' - ); - // eslint-disable-next-line n/no-process-exit - process.exit( 1 ); - } else { - console.log( 'No missing files.' ); - } +const modulesFiles = new Set(); +addModulesToSet( modulesJson, modulesFiles, 'lib/ve' ); +const missingFiles = Array.from( modulesFiles ).filter( ( file ) => !extensionFiles.has( file ) && !isIgnored( file ) ); + +if ( unusedIgnores.size ) { + console.warn( + 'Unused ignore path(s) in checkModules.js:\n\n' + + Array.from( unusedIgnores ).map( ( ignore ) => `* ${ ignore }\n` ).join( '' ) + ); } -checkFiles(); +if ( missingFiles.length ) { + console.error( + `${ missingFiles.length } file(s) from lib/ve/modules.json are missing from extension.json:\n\n` + + missingFiles.map( ( file ) => `* ${ file }\n` ).join( '' ) + + '\nIf any of these files are not required, add them to the ignore list in build/checkModules.js.' + ); + // eslint-disable-next-line n/no-process-exit + process.exit( 1 ); +} else { + console.log( 'No missing files.' ); +} diff --git a/build/screenshots-client/userGuide.js b/build/screenshots-client/userGuide.js index 759e0955a6..603883d66c 100644 --- a/build/screenshots-client/userGuide.js +++ b/build/screenshots-client/userGuide.js @@ -136,7 +136,7 @@ module.exports = { const done = arguments[ arguments.length - 1 ], surface = ve.init.target.surface; - surface.getToolbarDialogs().once( 'opening', ( win, opening ) => { + surface.getToolbarDialogs( 'above' ).once( 'opening', ( win, opening ) => { opening.then( () => { setTimeout( () => { done( @@ -153,7 +153,7 @@ module.exports = { specialCharactersTeardown: function () { const done = arguments[ arguments.length - 1 ], surface = ve.init.target.surface; - surface.getToolbarDialogs().currentWindow.close().closed.then( done ); + surface.getToolbarDialogs( 'above' ).currentWindow.close().closed.then( done ); }, formula: function () { const done = arguments[ arguments.length - 1 ], diff --git a/build/screenshots-client/utils.js b/build/screenshots-client/utils.js index b26830d1e6..f29e69f820 100644 --- a/build/screenshots-client/utils.js +++ b/build/screenshots-client/utils.js @@ -3,28 +3,9 @@ module.exports = function () { window.seleniumUtils = { getBoundingRect: function ( elements ) { - let boundingRect; - for ( let i = 0, l = elements.length; i < l; i++ ) { - const rect = elements[ i ].getBoundingClientRect(); - if ( !boundingRect ) { - boundingRect = { - left: rect.left, - top: rect.top, - right: rect.right, - bottom: rect.bottom - }; - } else { - boundingRect.left = Math.min( boundingRect.left, rect.left ); - boundingRect.top = Math.min( boundingRect.top, rect.top ); - boundingRect.right = Math.max( boundingRect.right, rect.right ); - boundingRect.bottom = Math.max( boundingRect.bottom, rect.bottom ); - } - } - if ( boundingRect ) { - boundingRect.width = boundingRect.right - boundingRect.left; - boundingRect.height = boundingRect.bottom - boundingRect.top; - } - return boundingRect; + return ve.getBoundingRect( + elements.map( ( element ) => element.getBoundingClientRect() ) + ); }, collapseToolbar: function () { ve.init.target.toolbar.items.forEach( ( group ) => { diff --git a/bundlesize.config.json b/bundlesize.config.json new file mode 100644 index 0000000000..bbe764c192 --- /dev/null +++ b/bundlesize.config.json @@ -0,0 +1,42 @@ +[ + { + "resourceModule": "ext.visualEditor.desktopArticleTarget.noscript", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.desktopArticleTarget.init", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.targetLoader", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.progressBarWidget", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.desktopArticleTarget.init", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.supportCheck", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.tempWikitextEditorWidget", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.core.utils.parsing", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.track", + "maxSize": null + }, + { + "resourceModule": "ext.visualEditor.ve", + "maxSize": null + } +] diff --git a/composer.json b/composer.json index 6fb0f8eaac..4e9d33d7ef 100644 --- a/composer.json +++ b/composer.json @@ -1,7 +1,7 @@ { "require-dev": { - "mediawiki/mediawiki-codesniffer": "44.0.0", - "mediawiki/mediawiki-phan-config": "0.14.0", + "mediawiki/mediawiki-codesniffer": "48.0.0", + "mediawiki/mediawiki-phan-config": "0.17.0", "mediawiki/minus-x": "1.1.3", "php-parallel-lint/php-console-highlighter": "1.0.0", "php-parallel-lint/php-parallel-lint": "1.4.0" diff --git a/editcheck/i18n/ar.json b/editcheck/i18n/ar.json index 506cfc6c5e..aa96e89ca6 100644 --- a/editcheck/i18n/ar.json +++ b/editcheck/i18n/ar.json @@ -1,13 +1,22 @@ { "@metadata": { "authors": [ - "Dyolf77 (WMF)" + "Dyolf77 (WMF)", + "Meno25", + "Mohammed Qays", + "محمد أحمد عبد الفتاح", + "Kopmil" ] }, "editcheck-dialog-action-no": "لا", "editcheck-dialog-action-yes": "نعم", + "editcheck-dialog-action-decline": "رفض", + "editcheck-dialog-action-revise": "مراجعة", + "editcheck-dialog-action-recheck": "إعادة فحص", + "editcheck-dialog-action-back": "رجوع", + "editcheck-dialog-action-submit": "إرسال", "editcheck-dialog-addref-description": "ساعدوا القراء على فهم مصدر هذه المعلومات عن طريق إضافة استشهاد.", - "editcheck-dialog-addref-reject-question": "لماذا لن تضيفوا استشهادًا؟", + "editcheck-dialog-addref-reject-question": "لماذا لا تُضيف استشهادًا؟", "editcheck-dialog-addref-reject-description": "سيقدر المحرّرون الآخرون معرفة المزيد عن قرارك بتجاوز الاستشهاد.", "editcheck-dialog-addref-reject-irrelevant": "لا أعتقد أن الاستشهادات ضروريّة للتعديل الذي أقوم به", "editcheck-dialog-addref-reject-common-knowledge": "المعلومات التي أقوم بإضافتها معروفة على نطاق واسع", @@ -16,6 +25,28 @@ "editcheck-dialog-addref-success-notify": "شكرًا لكم على إضافة استشهاد!", "editcheck-dialog-addref-title": "إضافة استشهاد", "editcheck-dialog-title": "قبل النشر", + "editcheck-copyvio-title": "محتوى ملصوق", + "editcheck-copyvio-description": "يرجى تجنب نسخ النصوص من مصادر أخرى، حتى لو أُعيدت صياغتها أو استُشهد بها. قد يُعدّ هذا [$1 انتهاكًا لحقوق الطبع والنشر أو انتحالًا]، وقد يؤدي إلى إزالة محتواك أو حظر حسابك.", + "editcheck-copyvio-prompt": "هل كتبت هذا النص؟", + "editcheck-copyvio-action-keep": "نعم، احتفظ به", + "editcheck-copyvio-action-remove": "لا، أزله", + "editcheck-copyvio-keep-description": "من فضلك ساعد المحررين الآخرين في فهم سبب احتفاظك بالنص الملصق.", + "editcheck-copyvio-keep-wrote": "لقد كتبت هذا المحتوى ولم يتم نشره في أي مكان آخر", + "editcheck-copyvio-keep-permission": "هذا المحتوى ذو رخصة حرّة", + "editcheck-copyvio-keep-other": "لا ينطبق أي مما سبق", + "editcheck-copyvio-keep-notify": "شكرًا لك على مشاركة سببك للاحتفاظ بالنص الملصق!", + "editcheck-copyvio-remove-notify": "شكراً لمساعدتك على إبقاء المعرفة متاحة بحرية!", + "editcheck-tone-title": "إعادة النظر في الأسلوب؟", + "editcheck-tone-description": "غالبًا ما يقوم المستخدمون الآخرون بمراجعة هذا النوع من العبارات، استنادًا على أنّ الأسلوب غير متّزن. [$1 التعرف على المزيد]", + "editcheck-tone-footer": "تم التحديد باستخدام [$1 نموذج BERT]", + "editcheck-tone-title-acted": "مراجعة الأسلوب", + "editcheck-tone-description-acted": "الحذر من التعبيرات المجاملة، أو المهينة، أو الغامضة، أو المبتذلة، أو المؤيدة لوجهة نظر معينة.", + "editcheck-tone-reject-appropriate": "الأسلوب مناسب", + "editcheck-tone-reject-uncertain": "أنا لست متيقنًا من كيفية مراجعة الأسلوب", + "editcheck-tone-reject-other": "غيرها", + "editcheck-tone-thank": "شكرا لك على مراجعة الأسلوب!", + "editcheck-reject-description": "سيكون من المفيد للمحررين الآخرين معرفة سبب اختيارك لهذا.", + "editcheck-review-title": "مراجعة التغييرات", "tag-editcheck-reference-decline-common-knowledge": "تم رفض (ثقافة عامة) التحقّق من التحرير (مراجع)", "tag-editcheck-reference-decline-common-knowledge-description": "تم رفض مرجع EditCheck (أداة التحقّق) باعتباره ثقافةً عامة", "tag-editcheck-reference-decline-irrelevant": "تم رفض (غير ذي صلة) التحقّق من التحرير (مراجع)", diff --git a/editcheck/i18n/az.json b/editcheck/i18n/az.json index 9572629086..601b93a9c5 100644 --- a/editcheck/i18n/az.json +++ b/editcheck/i18n/az.json @@ -7,6 +7,11 @@ }, "editcheck-dialog-action-no": "Xeyr", "editcheck-dialog-action-yes": "Bəli", + "editcheck-dialog-action-decline": "Rədd et", + "editcheck-dialog-action-revise": "Nəzərdən keçir", + "editcheck-dialog-action-recheck": "Yenidən yoxla", + "editcheck-dialog-action-back": "Geriyə", + "editcheck-dialog-action-submit": "Təsdiq et", "editcheck-dialog-addref-description": "İstinad əlavə etməklə oxuculara bu məlumatın haradan gəldiyini anlamağa kömək edin.", "editcheck-dialog-addref-reject-question": "Niyə mənbə əlavə etmirsiniz?", "editcheck-dialog-addref-reject-description": "Digər redaktorlar sizin mənbə əlavə etmək istəməmə qərarınız haqqında daha çox məlumat əldə etmək istəyəcəklər.", @@ -17,6 +22,28 @@ "editcheck-dialog-addref-success-notify": "İstinad əlavə etdiyiniz üçün təşəkkür edirik!", "editcheck-dialog-addref-title": "İstinad əlavə et", "editcheck-dialog-title": "Yayımlamadan əvvəl", + "editcheck-copyvio-title": "Yapışdırılmış məzmun", + "editcheck-copyvio-description": "Zəhmət olmasa, mətni başqa mənbələrdən kopiyalamaqdan çəkinin, hətta cümlələr sıfırdan yazılsa və ya istinad edilsə belə. Bu [$1 müəllif hüquqları pozuntusu və ya plagiat] hesab edilə bilər və məzmununuzun silinməsi və ya hesabınızın bloklanması ilə nəticələnə bilər.", + "editcheck-copyvio-prompt": "Bu mətni siz özünüz yazmısınız?", + "editcheck-copyvio-action-keep": "Bəli, saxla", + "editcheck-copyvio-action-remove": "Xeyr, sil", + "editcheck-copyvio-keep-description": "Zəhmət olmasa, bu məqalənin digər redaktorlarına yapışdırılmış mətni saxlamağınızın səbəbini anlamağa kömək edin.", + "editcheck-copyvio-keep-wrote": "Bu məzmunu mən özüm yazmışam və başqa bir yerdə dərc olunmayıb", + "editcheck-copyvio-keep-permission": "Bu məzmun azad lisenziyalıdır", + "editcheck-copyvio-keep-other": "Yuxarıda göstərilənlərin heç biri aid deyil", + "editcheck-copyvio-keep-notify": "Yapışdırılmış mətni saxlamaq səbəbinizi paylaşdığınız üçün təşəkkür edirik!", + "editcheck-copyvio-remove-notify": "Biliyin sərbəst şəkildə mövcud olmasına kömək etdiyiniz üçün təşəkkür edirik!", + "editcheck-tone-title": "Tona yenidən baxılsın?", + "editcheck-tone-description": "Digər istifadəçilər tez-tez tonun balanssız olduğunu söyləyərək bu cür ifadələri başdan yazırlar. [$1 Ətraflı məlumat]", + "editcheck-tone-footer": "[$1 BERT modeli] istifadə edilməklə müəyyən edilmişdir", + "editcheck-tone-title-acted": "Tonu yenidən nəzərdən keçirmək", + "editcheck-tone-description-acted": "Mübaliğəli, aşağılayıcı, qeyri-müəyyən, klişe və ya müəyyən bir nöqteyi-nəzərə dəstək verən ifadələrə diqqət yetirin.", + "editcheck-tone-reject-appropriate": "Ton uyğun gəlir", + "editcheck-tone-reject-uncertain": "Tonu necə dəyişdirəcəyimi bilmirəm", + "editcheck-tone-reject-other": "Digər", + "editcheck-tone-thank": "Tonu nəzərə aldığınız üçün təşəkkür edirik!", + "editcheck-reject-description": "Digər redaktorlar niyə bu seçimi etdiyinizi bilmək istəyəcəklər.", + "editcheck-review-title": "Dəyişiklikləri yoxla", "tag-editcheck-reference-decline-common-knowledge": "Redaktə Yoxlanışı (istinadlar) rədd edildi (hamının bildiyi)", "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck istinadı hamının bildiyi məlumat kimi rədd edildi", "tag-editcheck-reference-decline-irrelevant": "Redaktə yoxlanışı (istinadlar) rədd edildi (aidiyyatsız)", diff --git a/editcheck/i18n/be-tarask.json b/editcheck/i18n/be-tarask.json new file mode 100644 index 0000000000..21cd325c0a --- /dev/null +++ b/editcheck/i18n/be-tarask.json @@ -0,0 +1,31 @@ +{ + "@metadata": { + "authors": [ + "Renessaince", + "Ucukor" + ] + }, + "editcheck-dialog-action-no": "Не", + "editcheck-dialog-action-yes": "Так", + "editcheck-dialog-addref-description": "Дапамажыце чытачам зразумець, адкуль узятая гэтая інфармацыя, дадаўшы крыніцу.", + "editcheck-dialog-addref-reject-question": "Чаму вы не дадалі крыніцу?", + "editcheck-dialog-addref-reject-description": "Іншыя рэдактары хацелі б даведацца прычыны, зь якіх вы не дадалі крыніцу.", + "editcheck-dialog-addref-reject-irrelevant": "Я ня думаю, што да маіх зьмяненьняў прыдатныя крыніцы", + "editcheck-dialog-addref-reject-common-knowledge": "Дададзеная мною інфармацыя шырока вядомая", + "editcheck-dialog-addref-reject-uncertain": "Я пэўна ня ведаю, якую крыніцу дадаць", + "editcheck-dialog-addref-reject-other": "Іншае", + "editcheck-dialog-addref-success-notify": "Дзякуем, што дадалі крыніцу!", + "editcheck-dialog-addref-title": "Дадаць цытату", + "editcheck-dialog-title": "Перад публікацыяй", + "editcheck-copyvio-title": "Устаўлены зьмест", + "editcheck-copyvio-description": "Звычайна тэкст зь іншых крыніцаў не капіюецца. Такі ўчынак адначасна будзе і парушэньнем аўтарскіх правоў, і плягіятам.", + "editcheck-review-title": "Праверце зьмены", + "tag-editcheck-reference-decline-common-knowledge": "Праверка рэдагаваньня (крыніцы) адхіленая (агульныя веды)", + "tag-editcheck-reference-decline-common-knowledge-description": "Праверка рэдагаваньня была адхіленая, бо гэта агульныя веды", + "tag-editcheck-reference-decline-irrelevant": "Праверка рэдагаваньня (крыніцы) адхіленая (не датычыцца)", + "tag-editcheck-reference-decline-irrelevant-description": "Праверка рэдагаваньня была адхіленая, бо не датычыць", + "tag-editcheck-reference-decline-other": "Праверка рэдагаваньня (крыніцы) адхіленая (іншае)", + "tag-editcheck-reference-decline-other-description": "Праверка рэдагаваньня (крыніцы) адхіленая зь іншай прычыны", + "tag-editcheck-reference-decline-uncertain": "Праверка рэдагаваньня (крыніцы) адхіленая (няпэўна)", + "tag-editcheck-reference-decline-uncertain-description": "Праверка рэдагаваньня (крыніцы) адхіленая як няпэўная" +} diff --git a/editcheck/i18n/bg.json b/editcheck/i18n/bg.json new file mode 100644 index 0000000000..4688de1240 --- /dev/null +++ b/editcheck/i18n/bg.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "StanProg" + ] + }, + "editcheck-dialog-action-no": "Не", + "editcheck-dialog-action-yes": "Да" +} diff --git a/editcheck/i18n/bn.json b/editcheck/i18n/bn.json index ca82e26f01..cfabd5bbfd 100644 --- a/editcheck/i18n/bn.json +++ b/editcheck/i18n/bn.json @@ -1,11 +1,17 @@ { "@metadata": { "authors": [ + "Asked42", "আফতাবুজ্জামান" ] }, "editcheck-dialog-action-no": "না", "editcheck-dialog-action-yes": "হ্যাঁ", + "editcheck-dialog-action-decline": "প্রত্যাখ্যান করুন", + "editcheck-dialog-action-revise": "সংশোধন করুন", + "editcheck-dialog-action-recheck": "পুনঃপরীক্ষা করুন", + "editcheck-dialog-action-back": "পিছনে যান", + "editcheck-dialog-action-submit": "জমা দিন", "editcheck-dialog-addref-description": "একটি উদ্ধৃতি যুক্ত করে পাঠকদের এই তথ্যটি কোথা থেকে আসছে তা বুঝতে সহায়তা করুন।", "editcheck-dialog-addref-reject-question": "আপনি কেন একটি উদ্ধৃতি যোগ করতে চান না?", "editcheck-dialog-addref-reject-description": "উদ্ধৃতিটি খারিজ করার কারণ জানিয়ে অন্যান্য সম্পাদকদের এটি নিয়ে বুঝতে সহায়তা করুন।", @@ -16,6 +22,18 @@ "editcheck-dialog-addref-success-notify": "একটি উদ্ধৃতি যোগ করার জন্য আপনাকে ধন্যবাদ!", "editcheck-dialog-addref-title": "উদ্ধৃতি যোগ করুন", "editcheck-dialog-title": "প্রকাশের আগে", + "editcheck-copyvio-title": "অনুলিপিকৃত বিষয়বস্তু", + "editcheck-copyvio-prompt": "আপনি কি এই লেখাটি লিখেছেন?", + "editcheck-copyvio-action-keep": "হ্যাঁ, এটি রাখুন", + "editcheck-copyvio-action-remove": "না, সরিয়ে ফেলুন", + "editcheck-copyvio-keep-description": "অনুগ্রহ করে এই নিবন্ধের অন্যান্য সম্পাদকদের আপনি কেন অনুলিপি করা লেখাটি রাখতে চান তা বুঝাতে সাহায্য করুন।", + "editcheck-copyvio-keep-wrote": "আমি এই লেখাটি লিখেছি এবং এটি অন্য কোথাও প্রকাশিত হয়নি।", + "editcheck-copyvio-keep-permission": "এই লেখাটি বিনামূল্যে লাইসেন্সকৃত", + "editcheck-copyvio-keep-other": "উপরের কোনটিই প্রযোজ্য নয়", + "editcheck-copyvio-keep-notify": "অনুলিপি করা লেখাটি রাখার কারণ শেয়ার করার জন্য আপনাকে ধন্যবাদ!", + "editcheck-copyvio-remove-notify": "জ্ঞানকে সবার জন্য উন্মুক্ত রাখতে সহায়তা করার জন্য আপনাকে ধন্যবাদ!", + "editcheck-tone-reject-other": "অন্যান্য", + "editcheck-review-title": "পরিবর্তন পর্যালোচনা করুন", "tag-editcheck-reference-decline-common-knowledge": "সম্পাদনা পরীক্ষা (তথ্যসূত্র) প্রত্যাখ্যান (সাধারণ জ্ঞান)", "tag-editcheck-reference-decline-common-knowledge-description": "সম্পাদনা পরীক্ষা তথ্যসূত্র সাধারণ জ্ঞান হিসেবে প্রত্যাখ্যান করা হয়েছে", "tag-editcheck-reference-decline-irrelevant": "সম্পাদনা পরীক্ষা (তথ্যসূত্র) প্রত্যাখ্যান (অপ্রাসঙ্গিক)", diff --git a/editcheck/i18n/bo.json b/editcheck/i18n/bo.json new file mode 100644 index 0000000000..e9708dd405 --- /dev/null +++ b/editcheck/i18n/bo.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Tenzin Thoesam" + ] + }, + "editcheck-copyvio-prompt": "ཁྱོད་ཀྱིས་ཡིག་ཆ་འདི་བྲིས་པ་ཡིན་ནམ།" +} diff --git a/editcheck/i18n/br.json b/editcheck/i18n/br.json index c121710bbe..feba09aac8 100644 --- a/editcheck/i18n/br.json +++ b/editcheck/i18n/br.json @@ -7,6 +7,11 @@ }, "editcheck-dialog-action-no": "Ket", "editcheck-dialog-action-yes": "Ya", + "editcheck-dialog-action-decline": "Nac'hañ", + "editcheck-dialog-action-revise": "Adwelet", + "editcheck-dialog-action-recheck": "Adwiriañ", + "editcheck-dialog-action-back": "Distreiñ", + "editcheck-dialog-action-submit": "Kas", "editcheck-dialog-addref-description": "Menegit un dave evit skoazellañ lennerien da gompren eus pelec’h e teu an titouroù-mañ.", "editcheck-dialog-addref-reject-question": "Perak ne lakait ket un daveen ?", "editcheck-dialog-addref-reject-description": "Fellout a rafe da aozerien all gouzout hiroc’h a-zivout ho tiviz chom hep menegiñ un dave.", @@ -17,6 +22,25 @@ "editcheck-dialog-addref-success-notify": "Trugarez eus bezañ meneget un daveǃ", "editcheck-dialog-addref-title": "Menegiñ un dave", "editcheck-dialog-title": "A-raok embann", + "editcheck-copyvio-title": "Endalc’had peget", + "editcheck-copyvio-prompt": "C'hwi an hini eo hoc'h eus skrivet an destenn-mañ ?", + "editcheck-copyvio-action-keep": "Ya, mirout anezhi", + "editcheck-copyvio-action-remove": "Ket, tennit anezhi", + "editcheck-copyvio-keep-description": "Sikourit aozerien all ar pennad-mañ da gompren hoc'h abeg da virout an destenn peget.", + "editcheck-copyvio-keep-wrote": "Skrivet am eus an endalc'had-mañ ha n'eo ket bet embannet e lec'h all ebet", + "editcheck-copyvio-keep-permission": "Hervez aotreoù implijout frank eo embannet an endalc’h-mañ.", + "editcheck-copyvio-keep-other": "Ne dalvez netra eus ar pezh skrivet a-us", + "editcheck-copyvio-keep-notify": "Trugarez deoc'h da vezañ roet hoc’h abeg evit mirout an destenn peget !", + "editcheck-copyvio-remove-notify": "Trugarez deoc'h da sikouriñ da virout ar ouiziegezh frank !", + "editcheck-tone-title": "Adwelet an ton?", + "editcheck-tone-title-acted": "Adwelet an ton", + "editcheck-tone-description-acted": "Taolit evezh ouzh gerioù meulus, disprizus, amsklaer, re voutin, pe gant ur savboent nann-neptu.", + "editcheck-tone-reject-appropriate": "Dereat eo an ton", + "editcheck-tone-reject-uncertain": "N'on ket sur penaos adwelet an ton", + "editcheck-tone-reject-other": "Abeg all", + "editcheck-tone-thank": "Trugarez da vezañ graet war-dro an ton!", + "editcheck-reject-description": "Plijout a rafe d'an aozerien all gouzout perak hoc'h eus graet an dibab-se.", + "editcheck-review-title": "Adwelet ar c'hemmoù", "tag-editcheck-reference-decline-common-knowledge": "Gwiriañ Kemm (daveoù) nac’het (gouiziegezh voutin)", "tag-editcheck-reference-decline-common-knowledge-description": "Nac’het eo bet dave Gwiriañ Kemm evel gouiziegezh voutin", "tag-editcheck-reference-decline-irrelevant": "Gwiriañ Kemm (daveoù) nac’het (dizereat)", diff --git a/editcheck/i18n/bs.json b/editcheck/i18n/bs.json new file mode 100644 index 0000000000..2baf0316af --- /dev/null +++ b/editcheck/i18n/bs.json @@ -0,0 +1,50 @@ +{ + "@metadata": { + "authors": [ + "Srđan" + ] + }, + "editcheck-dialog-action-no": "Ne", + "editcheck-dialog-action-yes": "Da", + "editcheck-dialog-action-decline": "Odbij", + "editcheck-dialog-action-revise": "Prepravi", + "editcheck-dialog-action-recheck": "Ponovo provjeri", + "editcheck-dialog-action-back": "Nazad", + "editcheck-dialog-action-submit": "Potvrdi", + "editcheck-dialog-addref-description": "Pomozite čitaocima razumjeti odakle informacija dolazi dodavanjem reference.", + "editcheck-dialog-addref-reject-question": "Zašto ne dodajete referencu?", + "editcheck-dialog-addref-reject-irrelevant": "Mislim da reference nisu bitne za izmjenu koju pravim", + "editcheck-dialog-addref-reject-common-knowledge": "Informacija koju dodajem opće je poznata", + "editcheck-dialog-addref-reject-uncertain": "Ne znam koju referencu dodati", + "editcheck-dialog-addref-reject-other": "Drugo", + "editcheck-dialog-addref-success-notify": "Hvala što ste dodali referencu!", + "editcheck-dialog-addref-title": "Dodavanje reference", + "editcheck-dialog-title": "Prije objave", + "editcheck-copyvio-title": "Prekopirani sadržaj", + "editcheck-copyvio-prompt": "Jeste li Vi napisali tekst?", + "editcheck-copyvio-action-keep": "Jesam, zadrži ga", + "editcheck-copyvio-action-remove": "Nisam, ukloni ga", + "editcheck-copyvio-keep-description": "Pomozite drugim urednicima članka da razumiju zašto ste odlučili zadržati prekopirani tekst.", + "editcheck-copyvio-keep-wrote": "Ovo je moj tekst i nigdje drugdje nije objavljen", + "editcheck-copyvio-keep-permission": "Tekst je pod slobodnom licencom", + "editcheck-copyvio-keep-other": "Ništa od navedenog", + "editcheck-copyvio-keep-notify": "Hvala što ste podijelili razloge zadržavanja prekopiranog teksta!", + "editcheck-copyvio-remove-notify": "Hvala što ste pomogli da znanje ostane slobodno dostupno!", + "editcheck-tone-title": "Prepravi ton?", + "editcheck-tone-title-acted": "Prepravljanje tona", + "editcheck-tone-description-acted": "Obratite pažnju na izraze koji su laskavi, omalovažavajući, nejasni, kliširani ili koji podržavaju samo jedno gledište na temu.", + "editcheck-tone-reject-appropriate": "Ton je odgovarajući", + "editcheck-tone-reject-uncertain": "Ne znam kako prepraviti ton", + "editcheck-tone-reject-other": "Drugo", + "editcheck-tone-thank": "Hvala što ste uzeli u obzir ton!", + "editcheck-reject-description": "Druge će korisnike zanimati zašto ste se odlučili za ovaj izbor.", + "editcheck-review-title": "Pregled izmjena", + "tag-editcheck-reference-decline-common-knowledge": "Provjera izmjena (reference): odbijeno (općepoznato)", + "tag-editcheck-reference-decline-common-knowledge-description": "Referenca je odbijena jer je općepoznata", + "tag-editcheck-reference-decline-irrelevant": "Provjera izmjena (reference): odbijeno (nerelevantno)", + "tag-editcheck-reference-decline-irrelevant-description": "Referenca je odbijena jer je nerelevantna", + "tag-editcheck-reference-decline-other": "Provjera izmjena (reference): odbijeno (drugo)", + "tag-editcheck-reference-decline-other-description": "Referenca je odbijena iz nekog drugog, nenavedenog razloga", + "tag-editcheck-reference-decline-uncertain": "Provjera izmjena (reference): odbijeno (nedoumica)", + "tag-editcheck-reference-decline-uncertain-description": "Referenca je odbijena jer je korisnik bio u nedoumici" +} diff --git a/editcheck/i18n/cak.json b/editcheck/i18n/cak.json new file mode 100644 index 0000000000..3f8e5b88aa --- /dev/null +++ b/editcheck/i18n/cak.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "CeciMagi" + ] + } +} diff --git a/editcheck/i18n/ccp.json b/editcheck/i18n/ccp.json new file mode 100644 index 0000000000..5efe7ca4d8 --- /dev/null +++ b/editcheck/i18n/ccp.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "BivutiChakma" + ] + } +} diff --git a/editcheck/i18n/ce.json b/editcheck/i18n/ce.json index 6cd26c2ac6..2ccbb4d6dc 100644 --- a/editcheck/i18n/ce.json +++ b/editcheck/i18n/ce.json @@ -6,5 +6,36 @@ }, "editcheck-dialog-action-no": "ХӀан-хӀа", "editcheck-dialog-action-yes": "ХӀаъ", - "editcheck-dialog-addref-reject-other": "Кхийерг" + "editcheck-dialog-action-decline": "Йухатоха", + "editcheck-dialog-action-revise": "Йуха хьажа", + "editcheck-dialog-action-recheck": "Йуха талла", + "editcheck-dialog-action-back": "Йуха", + "editcheck-dialog-action-submit": "ДӀадахьийта", + "editcheck-dialog-addref-description": "Википеди тӀехь йолу информаци авторитетан хьосташца тӀечӀагӀйина хила йеза. Дехар ду, арахьара хьажорг тӀетоха гӀо де, хӀунда аьлча тӀечӀагӀйаза йолу информаци йаззаман йукъара дӀайаккха тарло. ТӀетовжам санна Википедин шен хьажоргах (ингалсан йа кхин мел йолчу маттахь) лело мегар дац.", + "editcheck-dialog-addref-reject-question": "Хьост хӀунда ца тӀетоьхна ахьа?", + "editcheck-dialog-addref-reject-irrelevant": "Суна ца хета ас бинчу хийцамашна хьосташ оьшуш ду аьлла.", + "editcheck-dialog-addref-reject-common-knowledge": "Ас тӀетоьхна информаци массарна а йевзаш йу", + "editcheck-dialog-addref-reject-uncertain": "Суна нийса ца хаьа, муьлха хьост тӀетоха йеза", + "editcheck-dialog-addref-reject-other": "Кхийерг", + "editcheck-dialog-addref-success-notify": "Хьост тӀетохарна баркалла!", + "editcheck-dialog-addref-title": "Хьост тӀетоха", + "editcheck-dialog-title": "Публикаци йале", + "editcheck-copyvio-title": "Копийина контент", + "editcheck-copyvio-prompt": "ХӀара текст йазйина ахь?", + "editcheck-copyvio-action-keep": "ХӀаъ, Ӏалашйе", + "editcheck-copyvio-action-remove": "ХӀан-хӀа, дӀадаккха", + "editcheck-copyvio-keep-description": "Дехар ду, хӀокху йаззаман кхечу редакторшна а кхетийта гӀо дар, аша кхуза копийина текст йита сацам хӀунда бина.", + "editcheck-copyvio-keep-wrote": "ХӀара текст ас йазйина йу, иза кхин цхьанхьа а йац", + "editcheck-copyvio-keep-permission": "ХӀара материал маьршачу лицензица тӀекхочуш йу", + "editcheck-copyvio-keep-other": "Дагардинчух цхьа а мегаш дац", + "editcheck-copyvio-keep-notify": "Баркалла, копи йаьккхина текст Ӏалашйан сацам баран бахьана довзийтарна!", + "editcheck-copyvio-remove-notify": "Баркалла хааршна маьрша тӀекхочийла Ӏалашйарехь гӀо дарна!", + "editcheck-tone-title": "Тон карлайаккхар?", + "editcheck-tone-title-acted": "Тон хийцар", + "editcheck-tone-description-acted": "Тергаме хила: хастаме, сий доцу, билгал боцу, маьӀна доцу йа цхьа агӀо хьехош долу дешнаш ма леладелаш.", + "editcheck-tone-reject-appropriate": "Тон мегаш йу.", + "editcheck-tone-reject-uncertain": "Тон хийца хаац суна", + "editcheck-tone-reject-other": "Кхийерг", + "editcheck-tone-thank": "Баркалла, тон тидаме эцарна!", + "editcheck-review-title": "Хийцамаш талла" } diff --git a/editcheck/i18n/cs.json b/editcheck/i18n/cs.json index 44b6c5095d..66e80f5f69 100644 --- a/editcheck/i18n/cs.json +++ b/editcheck/i18n/cs.json @@ -1,13 +1,22 @@ { "@metadata": { "authors": [ + "Bilykralik16", "Martin Urbanec", - "Matěj Suchánek" + "Matěj Suchánek", + "WikipedistaOndra", + "Mormegil", + "Jkjk" ] }, "editcheck-dialog-action-no": "Ne", "editcheck-dialog-action-yes": "Ano", - "editcheck-dialog-addref-description": "Pomozte čtenářům pochopit, odkud vámi přidaná informace pochází tím, že přidáte referenci.", + "editcheck-dialog-action-decline": "Zamítnout", + "editcheck-dialog-action-revise": "Revidovat", + "editcheck-dialog-action-recheck": "Znovu zkontrolovat", + "editcheck-dialog-action-back": "Zpět", + "editcheck-dialog-action-submit": "Odeslat", + "editcheck-dialog-addref-description": "Pomozte čtenářům pochopit, odkud vámi přidaná informace pochází, tím, že přidáte referenci.", "editcheck-dialog-addref-reject-question": "Z jakého důvodu nepřidáváte žádnou referenci?", "editcheck-dialog-addref-reject-description": "Ostatní wikipedisté by rádi věděli více o tom, proč jste se {{GENDER:|rozhodl|rozhodla|rozhodl(a)}} nepřidat žádnou referenci.", "editcheck-dialog-addref-reject-irrelevant": "Nemyslím si, že reference je pro mou změnu relevantní", @@ -17,6 +26,25 @@ "editcheck-dialog-addref-success-notify": "Děkujeme za přidání reference!", "editcheck-dialog-addref-title": "Přidat referenci", "editcheck-dialog-title": "Před zveřejněním", + "editcheck-copyvio-title": "Vložený obsah", + "editcheck-copyvio-prompt": "Napsal jste tento text?", + "editcheck-copyvio-action-keep": "Ano, ponechat", + "editcheck-copyvio-action-remove": "Ne, odstranit", + "editcheck-copyvio-keep-description": "Pomozte prosím ostatním editorům tohoto článku pochopit váš důvod pro ponechání vloženého textu.", + "editcheck-copyvio-keep-wrote": "Tento obsah jsem {{GENDER:|napsal|napsala|napsal(a)}} já a není publikován nikde jinde", + "editcheck-copyvio-keep-permission": "Tento obsah je volně licencován", + "editcheck-copyvio-keep-other": "Nic z výše uvedeného neplatí", + "editcheck-copyvio-keep-notify": "Děkujeme za sdílení důvodu, proč ponechat tento vložený text!", + "editcheck-copyvio-remove-notify": "Děkujeme, že pomáháte udržovat znalosti volně dostupné!", + "editcheck-tone-title": "Upravit tón?", + "editcheck-tone-title-acted": "Úprava tónu", + "editcheck-tone-description-acted": "Dávejte si pozor na výrazy, které jsou lichotivé, znevažující, vágní, klišovité nebo podporují konkrétní názor.", + "editcheck-tone-reject-appropriate": "Tón je přiměřený", + "editcheck-tone-reject-uncertain": "Nejsem si {{GENDER:|jist|jista}}, jak tón upravit", + "editcheck-tone-reject-other": "Další", + "editcheck-tone-thank": "Děkujeme za zvážení tónu!", + "editcheck-reject-description": "Ostatní editoři by se rádi dozvěděli, proč jste {{GENDER:|zvolil|zvolila|zvolili}} tuto možnost.", + "editcheck-review-title": "Zkontrolovat změny", "tag-editcheck-reference-decline-common-knowledge": "Kontrola editace (reference) odmítnuta (všeobecné znalosti)", "tag-editcheck-reference-decline-common-knowledge-description": "Kontrola editace (reference) odmítnuta jako všeobecná znalost", "tag-editcheck-reference-decline-irrelevant": "Kontrola editace (reference) odmítnuta (irelevantní)", diff --git a/editcheck/i18n/cy.json b/editcheck/i18n/cy.json index f6b6435af2..334b273adb 100644 --- a/editcheck/i18n/cy.json +++ b/editcheck/i18n/cy.json @@ -6,6 +6,7 @@ }, "editcheck-dialog-action-no": "Nac ydw", "editcheck-dialog-action-yes": "Ydw", + "editcheck-dialog-action-submit": "Cyflwyno", "editcheck-dialog-addref-reject-other": "Arall", "editcheck-dialog-addref-title": "Ychwanegu dyfyniad" } diff --git a/editcheck/i18n/da.json b/editcheck/i18n/da.json new file mode 100644 index 0000000000..0681e04f52 --- /dev/null +++ b/editcheck/i18n/da.json @@ -0,0 +1,51 @@ +{ + "@metadata": { + "authors": [ + "Steenth" + ] + }, + "editcheck-dialog-action-no": "Nej", + "editcheck-dialog-action-yes": "Ja", + "editcheck-dialog-action-decline": "Afslå", + "editcheck-dialog-action-revise": "Revidere", + "editcheck-dialog-action-recheck": "Tjek igen", + "editcheck-dialog-action-back": "Tilbage", + "editcheck-dialog-action-submit": "Indsend", + "editcheck-dialog-addref-description": "Hjælp læserne med at forstå, hvor disse oplysninger kommer fra, ved at tilføje et reference.", + "editcheck-dialog-addref-reject-question": "Hvorfor tilføjer du ikke et reference?", + "editcheck-dialog-addref-reject-description": "Andre bidragsydere ville værdsætte at lære mere om din beslutning om at afvise referencen.", + "editcheck-dialog-addref-reject-irrelevant": "Jeg tror ikke, at referencer er relevante for den ændring, jeg laver", + "editcheck-dialog-addref-reject-common-knowledge": "De oplysninger, jeg tilføjer, er almindeligt kendte", + "editcheck-dialog-addref-reject-uncertain": "Jeg er ikke sikker på, hvilket reference jeg skal tilføje", + "editcheck-dialog-addref-reject-other": "Andet", + "editcheck-dialog-addref-success-notify": "Tak fordi du tilføjede en reference!", + "editcheck-dialog-addref-title": "Tilføj en reference", + "editcheck-dialog-title": "Før offentliggørelse", + "editcheck-copyvio-title": "Indsat indhold", + "editcheck-copyvio-prompt": "Har du skrevet denne tekst?", + "editcheck-copyvio-action-keep": "Ja, behold den", + "editcheck-copyvio-action-remove": "Nej, fjern det", + "editcheck-copyvio-keep-description": "Hjælp venligst andre bidragsydere af denne artikel med at forstå din grund til at beholde den indsatte tekst.", + "editcheck-copyvio-keep-wrote": "Jeg skrev dette indhold, og det er ikke udgivet andre steder", + "editcheck-copyvio-keep-permission": "Dette indhold er frit licenseret", + "editcheck-copyvio-keep-other": "Intet af ovenstående gælder", + "editcheck-copyvio-keep-notify": "Tak fordi du delte din grund til at beholde den indsatte tekst!", + "editcheck-copyvio-remove-notify": "Tak for din hjælp til at holde viden frit tilgængelig!", + "editcheck-tone-title": "Revider tone?", + "editcheck-tone-title-acted": "Revidering af tone", + "editcheck-tone-description-acted": "Vær opmærksom på udtryk, der er smigrende, nedsættende, vage, klichéagtige eller støtter et bestemt synspunkt.", + "editcheck-tone-reject-appropriate": "Tonen er passende", + "editcheck-tone-reject-uncertain": "Jeg er ikke sikker på, hvordan jeg skal justere tonen", + "editcheck-tone-reject-other": "Andet", + "editcheck-tone-thank": "Tak fordi du overvejede tonen!", + "editcheck-reject-description": "Andre bidragsydere ville sætte pris på at kunne se, hvorfor du traf dette valg.", + "editcheck-review-title": "Gennemgå ændringer", + "tag-editcheck-reference-decline-common-knowledge": "Redigeringstjek (referencer) afvist (almindelig viden)", + "tag-editcheck-reference-decline-common-knowledge-description": "Redigeringstjek-reference blev afvist som almindelig viden", + "tag-editcheck-reference-decline-irrelevant": "Redigeringstjek (referencer) afvist (irrelevant)", + "tag-editcheck-reference-decline-irrelevant-description": "Redigeringstjek-reference blev afvist som irrelevant", + "tag-editcheck-reference-decline-other": "Redigeringstjek (referencer) afvist (andet)", + "tag-editcheck-reference-decline-other-description": "EditCheck-reference blev afvist af en ikke-opført grund", + "tag-editcheck-reference-decline-uncertain": "Redigeringstjek (referencer) afvist (usikker)", + "tag-editcheck-reference-decline-uncertain-description": "Redigeringstjek-reference blev afvist som værende usikker" +} diff --git a/editcheck/i18n/de.json b/editcheck/i18n/de.json index c36c0dee6d..1099ac7f64 100644 --- a/editcheck/i18n/de.json +++ b/editcheck/i18n/de.json @@ -1,9 +1,18 @@ { "@metadata": { - "authors": [] + "authors": [ + "Brettchenweber", + "Volvox", + "Johannnes89" + ] }, "editcheck-dialog-action-no": "Nein", "editcheck-dialog-action-yes": "Ja", + "editcheck-dialog-action-decline": "Ablehnen", + "editcheck-dialog-action-revise": "Überarbeiten", + "editcheck-dialog-action-recheck": "Erneut überprüfen", + "editcheck-dialog-action-back": "Zurück", + "editcheck-dialog-action-submit": "Speichern", "editcheck-dialog-addref-description": "Hilf den Lesern zu verstehen, woher diese Informationen stammen, indem du einen Beleg hinzufügst.", "editcheck-dialog-addref-reject-question": "Warum fügst du keinen Beleg hinzu?", "editcheck-dialog-addref-reject-description": "Andere Benutzer würden es begrüßen, mehr über deine Entscheidung, keinen Beleg einzutragen, zu erfahren.", @@ -14,6 +23,28 @@ "editcheck-dialog-addref-success-notify": "Vielen Dank für das Hinzufügen eines Belegs!", "editcheck-dialog-addref-title": "Einen Beleg hinzufügen", "editcheck-dialog-title": "Vor der Veröffentlichung", + "editcheck-copyvio-title": "Eingefügter Inhalt", + "editcheck-copyvio-description": "Bitte vermeide das Kopieren von Texten aus anderen Quellen, auch wenn diese umformuliert oder zitiert werden. Dies könnte als [$1 Urheberrechtsverletzung oder Plagiat] angesehen werden und zur Entfernung deiner Inhalte oder zur Sperrung deines Kontos führen.", + "editcheck-copyvio-prompt": "Hast du diesen Text geschrieben?", + "editcheck-copyvio-action-keep": "Ja, behalten", + "editcheck-copyvio-action-remove": "Nein, entfernen", + "editcheck-copyvio-keep-description": "Bitte hilf anderen Benutzern dieses Artikels, deinen Grund zu verstehen, den eingefügten Text beizubehalten.", + "editcheck-copyvio-keep-wrote": "Ich habe diesen Inhalt geschrieben und er ist nirgendwo anders veröffentlicht", + "editcheck-copyvio-keep-permission": "Dieser Inhalt ist frei lizenziert", + "editcheck-copyvio-keep-other": "Keines der oben genannten trifft zu", + "editcheck-copyvio-keep-notify": "Danke, dass du uns deinen Grund für die Beibehaltung des eingefügten Textes genannt hast!", + "editcheck-copyvio-remove-notify": "Vielen Dank, dass du dazu beiträgst, Wissen frei verfügbar zu halten!", + "editcheck-tone-title": "Tonfall überarbeiten?", + "editcheck-tone-description": "Andere Benutzer überarbeiteten diese Art der Formulierung häufig, weil sie den Tonfall als unausgewogen ansehen. [$1 Mehr erfahren]", + "editcheck-tone-footer": "Identifiziert mit dem [$1 Sprachmodell BERT]", + "editcheck-tone-title-acted": "Tonfall überarbeiten", + "editcheck-tone-description-acted": "Achte auf Ausdrücke, die schmeichelhaft, abfällig, vage, klischeehaft oder die Unterstützung eines bestimmten Standpunkts sind.", + "editcheck-tone-reject-appropriate": "Der Tonfall ist angemessen", + "editcheck-tone-reject-uncertain": "Ich bin nicht sicher, wie ich den Tonfall ändern soll", + "editcheck-tone-reject-other": "Andere", + "editcheck-tone-thank": "Danke, dass du den Tonfall überarbeitet hast!", + "editcheck-reject-description": "Andere Benutzer würden es schätzen, zu erfahren, warum du diese Wahl getroffen hast.", + "editcheck-review-title": "Änderungen überprüfen", "tag-editcheck-reference-decline-common-knowledge": "Bearbeitungsprüfung (Belege) abgelehnt (Allgemeinwissen)", "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck: Beleg wurde als allgemein bekannt abgelehnt", "tag-editcheck-reference-decline-irrelevant": "Bearbeitungsprüfung (Belege) abgelehnt (irrelevant)", diff --git a/editcheck/i18n/diq.json b/editcheck/i18n/diq.json new file mode 100644 index 0000000000..6d568b9001 --- /dev/null +++ b/editcheck/i18n/diq.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Mirzali" + ] + }, + "editcheck-dialog-action-back": "Peyser", + "editcheck-copyvio-keep-other": "Sewbi", + "editcheck-tone-reject-other": "Sewbi" +} diff --git a/editcheck/i18n/el.json b/editcheck/i18n/el.json new file mode 100644 index 0000000000..ef02945e54 --- /dev/null +++ b/editcheck/i18n/el.json @@ -0,0 +1,55 @@ +{ + "@metadata": { + "authors": [ + "Geraki", + "Jimkats" + ] + }, + "editcheck-dialog-action-no": "Όχι", + "editcheck-dialog-action-yes": "Ναι", + "editcheck-dialog-action-decline": "Άρνηση", + "editcheck-dialog-action-revise": "Αναθεώρηση", + "editcheck-dialog-action-recheck": "Επανέλεγχος", + "editcheck-dialog-action-back": "Πίσω", + "editcheck-dialog-action-submit": "Υποβολή", + "editcheck-dialog-addref-description": "Βοηθήστε τους αναγνώστες να κατανοήσουν από πού προέρχονται αυτές οι πληροφορίες προσθέτοντας μια παραπομπή.", + "editcheck-dialog-addref-reject-question": "Γιατί δεν προσθέτεις μια παραπομπή;", + "editcheck-dialog-addref-reject-description": "Άλλοι συντάκτες θα εκτιμούσαν να μάθουν περισσότερα σχετικά με την απόφασή σας να απορρίψετε την παραπομπή.", + "editcheck-dialog-addref-reject-irrelevant": "Δεν νομίζω ότι οι παραπομπές είναι σχετικές με την αλλαγή που κάνω", + "editcheck-dialog-addref-reject-common-knowledge": "Οι πληροφορίες που προσθέτω είναι ευρέως γνωστές", + "editcheck-dialog-addref-reject-uncertain": "Δεν είμαι σίγουρος ποια παραπομπή να προσθέσω", + "editcheck-dialog-addref-reject-other": "Άλλο", + "editcheck-dialog-addref-success-notify": "Ευχαριστούμε που προσθέσατε μια παραπομπή!", + "editcheck-dialog-addref-title": "Προσθήκη παραπομπής", + "editcheck-dialog-title": "Πριν τη δημοσίευση", + "editcheck-copyvio-title": "Επικολλημένο περιεχόμενο", + "editcheck-copyvio-description": "Αποφύγετε την αντιγραφή κειμένου από άλλες πηγές, ακόμα και αν έχει αναδιατυπωθεί ή παρατεθεί. Αυτό θα μπορούσε να θεωρηθεί [$1 παραβίαση πνευματικών δικαιωμάτων ή λογοκλοπή] και μπορεί να οδηγήσει στην αφαίρεση του περιεχομένου σας ή στον αποκλεισμό του λογαριασμού σας.", + "editcheck-copyvio-prompt": "Εσείς γράψατε αυτό το κείμενο;", + "editcheck-copyvio-action-keep": "Ναι, κράτησέ το", + "editcheck-copyvio-action-remove": "Όχι, αφαιρέστε το.", + "editcheck-copyvio-keep-description": "Παρακαλώ βοηθήστε τους άλλους συντάκτες αυτού του λήμματος να κατανοήσουν τον λόγο για τον οποίο διατηρείτε το επικολλημένο κείμενο.", + "editcheck-copyvio-keep-wrote": "Εγώ έγραψα αυτό το περιεχόμενο και δεν έχει δημοσιευτεί αλλού", + "editcheck-copyvio-keep-permission": "Αυτό το περιεχόμενο διατίθεται με ελεύθερη άδεια χρήσης", + "editcheck-copyvio-keep-other": "Δεν ισχύει τίποτα από τα παραπάνω", + "editcheck-copyvio-keep-notify": "Ευχαριστούμε που μοιραστήκατε τον λόγο για τον οποίο θέλετε να διατηρήσετε το επικολλημένο κείμενο!", + "editcheck-copyvio-remove-notify": "Σας ευχαριστούμε που βοηθάτε να διατηρείται η γνώση ελεύθερα διαθέσιμη!", + "editcheck-tone-title": "Αναθεώρηση Τόνου;", + "editcheck-tone-description": "Άλλοι χρήστες συχνά αναθεωρούν αυτό το είδος διατύπωσης, λέγοντας ότι ο τόνος είναι ανισορροπημένος. [$1 Μάθετε περισσότερα]", + "editcheck-tone-footer": "Προσδιορίστηκε χρησιμοποιώντας ένα [$1 μοντέλο BERT]", + "editcheck-tone-title-acted": "Αναθεώρηση Τόνου", + "editcheck-tone-description-acted": "Προσέξτε για εκφράσεις που είναι κολακευτικές, υποτιμητικές, αόριστες, κλισέ ή υποστηρίζουν μια συγκεκριμένη οπτική γωνία.", + "editcheck-tone-reject-appropriate": "Ο τόνος είναι κατάλληλος", + "editcheck-tone-reject-uncertain": "Δεν είμαι σίγουρος/η πώς να διορθώσω τον τόνο", + "editcheck-tone-reject-other": "Άλλο", + "editcheck-tone-thank": "Ευχαριστούμε που λάβατε υπόψη τον τόνο!", + "editcheck-reject-description": "Άλλοι συντάκτες θα εκτιμούσαν να μάθουν γιατί κάνατε αυτήν την επιλογή.", + "editcheck-review-title": "Έλεγχος αλλαγών", + "tag-editcheck-reference-decline-common-knowledge": "Ο Έλεγχος Επεξεργασίας (παραπομπές) απορρίφθηκε (κοινή γνώση)", + "tag-editcheck-reference-decline-common-knowledge-description": "Η αναφορά EditCheck απορρίφθηκε ως κοινή γνώση.", + "tag-editcheck-reference-decline-irrelevant": "Ο Έλεγχος Επεξεργασίας (παραπομπές) απορρίφθηκε (άσχετο)", + "tag-editcheck-reference-decline-irrelevant-description": "Η EditCheck παραπομπής απορρίφθηκε ως άσχετη.", + "tag-editcheck-reference-decline-other": "Ο Έλεγχος Επεξεργασίας (παραπομπές) απορρίφθηκε (άλλο)", + "tag-editcheck-reference-decline-other-description": "Η αναφορά EditCheck απορρίφθηκε για μη καταχωρημένο λόγο.", + "tag-editcheck-reference-decline-uncertain": "Ο Έλεγχος Επεξεργασίας (παραπομπές) απορρίφθηκε =(αβέβαιο)", + "tag-editcheck-reference-decline-uncertain-description": "Η αναφορά EditCheck απορρίφθηκε ως αβέβαιη" +} diff --git a/editcheck/i18n/en.json b/editcheck/i18n/en.json index d45ae646c4..1843e29c76 100644 --- a/editcheck/i18n/en.json +++ b/editcheck/i18n/en.json @@ -8,6 +8,11 @@ "editcheck-config.json": "null", "editcheck-dialog-action-no": "No", "editcheck-dialog-action-yes": "Yes", + "editcheck-dialog-action-decline": "Decline", + "editcheck-dialog-action-revise": "Revise", + "editcheck-dialog-action-recheck": "Recheck", + "editcheck-dialog-action-back": "Back", + "editcheck-dialog-action-submit": "Submit", "editcheck-dialog-addref-description": "Help readers understand where this information is coming from by adding a citation.", "editcheck-dialog-addref-reject-question": "Why are you not adding a citation?", "editcheck-dialog-addref-reject-description": "Other editors would value learning more about your decision to dismiss the citation.", @@ -18,6 +23,31 @@ "editcheck-dialog-addref-success-notify": "Thank you for adding a citation!", "editcheck-dialog-addref-title": "Add a citation", "editcheck-dialog-title": "Before publishing", + "editcheck-copyvio-title": "Pasted content", + "editcheck-copyvio-description": "Please avoid copying text from other sources, even if rephrased or cited. This could be considered [$1 copyright violation or plagiarism] and may result in your content being removed or your account being blocked.", + "editcheck-copyvio-descriptionlink": "//foundation.wikimedia.org/wiki/Special:MyLanguage/Resolution:Licensing_policy#Resolution", + "editcheck-copyvio-prompt": "Did you write this text?", + "editcheck-copyvio-action-keep": "Yes, keep it", + "editcheck-copyvio-action-remove": "No, remove it", + "editcheck-copyvio-keep-description": "Please help other editors of this article understand your reason to keep the pasted text.", + "editcheck-copyvio-keep-wrote": "I wrote this content and it's not published elsewhere", + "editcheck-copyvio-keep-permission": "This content is freely licensed", + "editcheck-copyvio-keep-other": "None of the above applies", + "editcheck-copyvio-keep-notify": "Thank you for sharing your reason to keep the pasted text!", + "editcheck-copyvio-remove-notify": "Thank you for helping to keep knowledge freely available!", + "editcheck-tone-title": "Revise Tone?", + "editcheck-tone-description": "Other users often revise this kind of wording, saying the tone is unbalanced. [$1 Learn more]", + "editcheck-tone-descriptionlink": "//meta.wikimedia.org/wiki/Special:MyLanguage/Neutral_point_of_view", + "editcheck-tone-footer": "Identified using a [$1 BERT model]", + "editcheck-tone-footerlink": "//meta.wikimedia.org/wiki/Special:MyLanguage/Machine_learning_models/Proposed/Tone_Check", + "editcheck-tone-title-acted": "Revising Tone", + "editcheck-tone-description-acted": "Look out for expressions that are flattering, disparaging, vague, cliché, or endorsing of a particular viewpoint.", + "editcheck-tone-reject-appropriate": "The tone is appropriate", + "editcheck-tone-reject-uncertain": "I'm not sure how to revise the tone", + "editcheck-tone-reject-other": "Other", + "editcheck-tone-thank": "Thank you for considering tone!", + "editcheck-reject-description": "Other editors would value learning why you made this choice.", + "editcheck-review-title": "Review changes", "tag-editcheck-reference-decline-common-knowledge": "Edit Check (references) declined (common knowledge)", "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck reference was declined as common knowledge", "tag-editcheck-reference-decline-irrelevant": "Edit Check (references) declined (irrelevant)", diff --git a/editcheck/i18n/es.json b/editcheck/i18n/es.json index 3521b1fdad..5f08f6d971 100644 --- a/editcheck/i18n/es.json +++ b/editcheck/i18n/es.json @@ -2,11 +2,24 @@ "@metadata": { "authors": [ "Dbsnp", - "ZebaX2010" + "ZebaX2010", + "CeciMagi", + "IZapico (WMF)", + "Monicapozo03", + "Ed g2s", + "Kookoriko", + "Superzerocool", + "Johannes Richter (WMDE)", + "MONUMENTA" ] }, "editcheck-dialog-action-no": "No", "editcheck-dialog-action-yes": "Sí", + "editcheck-dialog-action-decline": "Declinar", + "editcheck-dialog-action-revise": "Revisar", + "editcheck-dialog-action-recheck": "Volver a comprobar", + "editcheck-dialog-action-back": "Atrás", + "editcheck-dialog-action-submit": "Enviar", "editcheck-dialog-addref-description": "Ayuda a que los lectores entiendan de dónde proviene esta información agregando una cita.", "editcheck-dialog-addref-reject-question": "¿Por qué no añades una cita?", "editcheck-dialog-addref-reject-description": "Otros editores desearían saber más sobre tu decisión de descartar la cita.", @@ -16,5 +29,32 @@ "editcheck-dialog-addref-reject-other": "Otro", "editcheck-dialog-addref-success-notify": "¡Gracias por añadir una cita!", "editcheck-dialog-addref-title": "Añade una cita", - "editcheck-dialog-title": "Antes de publicar" + "editcheck-dialog-title": "Antes de publicar", + "editcheck-copyvio-title": "Contenido pegado", + "editcheck-copyvio-prompt": "¿Has escrito este texto?", + "editcheck-copyvio-action-keep": "Sí, mantener", + "editcheck-copyvio-action-remove": "No, eliminar", + "editcheck-copyvio-keep-description": "Por favor, ayuda al resto de editores a comprender tus motivos para conservar el texto pegado.", + "editcheck-copyvio-keep-wrote": "Escribí este contenido y no está publicado en otro lugar.", + "editcheck-copyvio-keep-permission": "Este contenido tiene licencia libre", + "editcheck-copyvio-keep-other": "Ninguna de las anteriores", + "editcheck-copyvio-keep-notify": "¡Gracias por compartir tu motivo para conservar el texto pegado!", + "editcheck-copyvio-remove-notify": "¡Gracias por ayudar a que el conocimiento sea libre y accesible!", + "editcheck-tone-title": "¿Revisar el tono?", + "editcheck-tone-title-acted": "Revisión del tono", + "editcheck-tone-description-acted": "Busca expresiones que sean halagadoras, despectivas, vagas, clichés o que respalden un punto de vista concreto.", + "editcheck-tone-reject-appropriate": "El tono es inapropiado", + "editcheck-tone-reject-uncertain": "No sé cómo revisar el tono", + "editcheck-tone-reject-other": "Otro", + "editcheck-tone-thank": "¡Gracias por revisar el tono!", + "editcheck-reject-description": "Otros editores apreciarán saber por qué has tomado esta decisión.", + "editcheck-review-title": "Revisar cambios", + "tag-editcheck-reference-decline-common-knowledge": "Revisión de edición (referencias) rechazada (conocimiento común)", + "tag-editcheck-reference-decline-common-knowledge-description": "La referencia de EditCheck fue rechazada por ser de conocimiento general.", + "tag-editcheck-reference-decline-irrelevant": "Revisión de edición (referencias) rechazada (irrelevante)", + "tag-editcheck-reference-decline-irrelevant-description": "La referencia EditCheck fue rechazada por irrelevante.", + "tag-editcheck-reference-decline-other": "Revisión de edición (referencias) rechazada (otros)", + "tag-editcheck-reference-decline-other-description": "La referencia EditCheck fue rechazada por un motivo no especificado.", + "tag-editcheck-reference-decline-uncertain": "Revisión de edición (referencias) rechazada (incierta)", + "tag-editcheck-reference-decline-uncertain-description": "La referencia EditCheck fue rechazada por irrelevante." } diff --git a/editcheck/i18n/et.json b/editcheck/i18n/et.json index 2db861a877..9daa42eedf 100644 --- a/editcheck/i18n/et.json +++ b/editcheck/i18n/et.json @@ -6,6 +6,11 @@ }, "editcheck-dialog-action-no": "Ei", "editcheck-dialog-action-yes": "Jah", + "editcheck-dialog-action-decline": "Lükka tagasi", + "editcheck-dialog-action-revise": "Kohenda", + "editcheck-dialog-action-recheck": "Kontrolli uuesti", + "editcheck-dialog-action-back": "Tagasi", + "editcheck-dialog-action-submit": "Saada", "editcheck-dialog-addref-description": "Aita lugejatel aru saada, kust see teave pärineb, lisades viite.", "editcheck-dialog-addref-reject-question": "Miks sa viidet ei lisa?", "editcheck-dialog-addref-reject-description": "Teistel toimetajatel on kasulik teada, miks otsustasid viite ära jätta.", @@ -16,6 +21,27 @@ "editcheck-dialog-addref-success-notify": "Aitäh, et viite lisasid!", "editcheck-dialog-addref-title": "Viite lisamine", "editcheck-dialog-title": "Enne avaldamist", + "editcheck-copyvio-title": "Kleebitud sisu", + "editcheck-copyvio-prompt": "Kas kirjutasid selle teksti ise?", + "editcheck-copyvio-action-keep": "Jah, säilita see", + "editcheck-copyvio-action-remove": "Ei, eemalda see", + "editcheck-copyvio-keep-description": "Palun aita toimetajatel aru saada, miks kleebitud teksti alles jätsid.", + "editcheck-copyvio-keep-wrote": "Kirjutasin selle sisu ise ja seda ei ole mujal avaldatud", + "editcheck-copyvio-keep-permission": "See sisu kuulub vaba litsentsi alla", + "editcheck-copyvio-keep-other": "Eelnevad põhjused ei sobi", + "editcheck-copyvio-keep-notify": "Aitäh selgitamast, miks kleebitud teksti alles jätsid!", + "editcheck-copyvio-remove-notify": "Aitäh, et aitad hoida teadmised vabalt kättesaadavana!", + "editcheck-tone-title": "Kas kohendada tooni?", + "editcheck-tone-description": "Teised kasutajad kohendavad sageli sellist sõnastust, öeldes et toon ei ole tasakaalukas. [$1 Loe veel]", + "editcheck-tone-footer": "Tuvastatud kasutades mudelit [$1 BERT]", + "editcheck-tone-title-acted": "Tooni kohendamine", + "editcheck-tone-description-acted": "Pööra tähelepanu väljendusviisile, mis avaldab poolehoidu või on halvustav, ebamäärane või sisutühi või mis toetab teatud seisukohta.", + "editcheck-tone-reject-appropriate": "Toon on sobiv", + "editcheck-tone-reject-uncertain": "Ma ei ole kindel, kuidas tooni kohendada", + "editcheck-tone-reject-other": "Muu", + "editcheck-tone-thank": "Aitäh kaalumast, millist tooni kasutada!", + "editcheck-reject-description": "Teistel toimetajatel on hea teada, miks sellise sõnastuse kasuks otsustasid.", + "editcheck-review-title": "Vaata muudatused üle", "tag-editcheck-reference-decline-common-knowledge": "Muudatuse kontroll (viited) tagasi lükatud (üldteada)", "tag-editcheck-reference-decline-common-knowledge-description": "EditChecki viide tagasi lükatud, kuna väide on üldteada.", "tag-editcheck-reference-decline-irrelevant": "Muudatuse kontroll (viited) tagasi lükatud (ebavajalik)", diff --git a/editcheck/i18n/eu.json b/editcheck/i18n/eu.json new file mode 100644 index 0000000000..ea91a9998c --- /dev/null +++ b/editcheck/i18n/eu.json @@ -0,0 +1,54 @@ +{ + "@metadata": { + "authors": [ + "Theklan" + ] + }, + "editcheck-dialog-action-no": "Ez", + "editcheck-dialog-action-yes": "Bai", + "editcheck-dialog-action-decline": "Ukatu", + "editcheck-dialog-action-revise": "Berrikusi", + "editcheck-dialog-action-recheck": "Berriro egiaztatu", + "editcheck-dialog-action-back": "Atzera", + "editcheck-dialog-action-submit": "Bidali", + "editcheck-dialog-addref-description": "Lagundu irakurleei ulertzen nondik datorren informazio hau erreferentzia bat gehituz.", + "editcheck-dialog-addref-reject-question": "Zergatik ez duzu erreferentzia bat gehitzen?", + "editcheck-dialog-addref-reject-description": "Beste editore batzuek jakin nahiko dute zergatik ez duzun erreferentzia bat jartzeko beharrik ikusi.", + "editcheck-dialog-addref-reject-irrelevant": "Ez dut uste erreferentziak beharrezkoak direla egin dudan aldaketan", + "editcheck-dialog-addref-reject-common-knowledge": "Gehitu dudan informazioa oso ezaguna da", + "editcheck-dialog-addref-reject-uncertain": "Ez nago ziur zein erreferentzia gehitu", + "editcheck-dialog-addref-reject-other": "Bestelakoa", + "editcheck-dialog-addref-success-notify": "Eskerrik asko erreferentzia bat gehitzeagatik!", + "editcheck-dialog-addref-title": "Erreferentzia gehitu", + "editcheck-dialog-title": "Argitaratu aurretik", + "editcheck-copyvio-title": "Itsatsitako edukia", + "editcheck-copyvio-description": "Mesedez, ez kopiatu zuzenean testua beste iturri batzuetatik, birformulatuta edo aipatuta ere. Hau [$1 copyright urraketa edo plagiotzat har daiteke] eta zure edukia kentzea edo zure kontua blokeatzea ekar dezake.", + "editcheck-copyvio-prompt": "Testua zuk idatzi al duzu?", + "editcheck-copyvio-action-keep": "Bai, gorde ezazu", + "editcheck-copyvio-action-remove": "Ez, ezabatu ezazu", + "editcheck-copyvio-keep-description": "Mesedez, lagundu artikulu honen beste editoreei itsatsitako testua mantentzeko arrazoia ulertzen.", + "editcheck-copyvio-keep-wrote": "Edukia nik idatzi dut eta ez dago beste inon argitaratuta", + "editcheck-copyvio-keep-permission": "Eduki hau berrerabiltzeko baimena dut", + "editcheck-copyvio-keep-other": "Goikoetatik bat ere ez", + "editcheck-copyvio-keep-notify": "Eskerrik asko itsatsitako testua mantentzeko arrazoia partekatzeagatik!", + "editcheck-copyvio-remove-notify": "Eskerrik asko testu hau kentzeagatik!", + "editcheck-tone-title": "Tonua berrikusi?", + "editcheck-tone-description": "Beste editore batzuek maiz begiratzen dute erabilitako hitz hauetako batzuk, eta esango dute tonua ez dela neutrala. [$1 Gehiago ikasi]", + "editcheck-tone-footer": "[$1 BERT eredua] erabiliz identifikatua", + "editcheck-tone-title-acted": "Tonua Berrikusten", + "editcheck-tone-description-acted": "Bilatu lausengarriak, gutxiesgarriak, lausoak, klixeak edo ikuspuntu jakin bat babesten duten adierazpenak.", + "editcheck-tone-reject-appropriate": "Tonua egokia da", + "editcheck-tone-reject-uncertain": "Ez dakit ondo nola berrikusi tonua", + "editcheck-tone-reject-other": "Bestelakoa", + "editcheck-tone-thank": "Eskerrik asko tonua kontuan hartzeagatik!", + "editcheck-reject-description": "Beste wikilari batzuek jakin nahiko dute zergatik egin duzun aukera hau.", + "editcheck-review-title": "Aldaketak ikusi", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check (erreferentziak) ukatua (ezagutza orokorra)", + "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck erreferentzia ukatu da ezagutza orokorra delako", + "tag-editcheck-reference-decline-irrelevant": "Edit Check (erreferentziak) ukatua (garrantzirik gabekoa)", + "tag-editcheck-reference-decline-irrelevant-description": "EditChek erreferentzia ukatu da garrantzirik gabekoa delako", + "tag-editcheck-reference-decline-other": "Edit Check (erreferentziak) ukatua (beste bat)", + "tag-editcheck-reference-decline-other-description": "EditCheck erreferentzia ukatu da zerrendan ez zegoen arrazoi baten ondorioz", + "tag-editcheck-reference-decline-uncertain": "EditChek (erreferentziak) ukatua (ez dago ziur)", + "tag-editcheck-reference-decline-uncertain-description": "EditChek erreferentzia ukatu da ez dagoelako ziur" +} diff --git a/editcheck/i18n/fa.json b/editcheck/i18n/fa.json new file mode 100644 index 0000000000..b48dfc13f4 --- /dev/null +++ b/editcheck/i18n/fa.json @@ -0,0 +1,56 @@ +{ + "@metadata": { + "authors": [ + "Jeeputer", + "LordProfo", + "Darafsh", + "Mohammad ebz" + ] + }, + "editcheck-dialog-action-no": "خیر", + "editcheck-dialog-action-yes": "بله", + "editcheck-dialog-action-decline": "رد کردن", + "editcheck-dialog-action-revise": "بازنگری", + "editcheck-dialog-action-recheck": "بررسی دوباره", + "editcheck-dialog-action-back": "بازگشت", + "editcheck-dialog-action-submit": "ثبت", + "editcheck-dialog-addref-description": "با افزودن یک یادکرد، به مخاطبان در یافتن مبدأ این اطلاعات کمک کنید.", + "editcheck-dialog-addref-reject-question": "چرا نمی‌خواهید یادکرد اضافه کنید؟", + "editcheck-dialog-addref-reject-description": "سایر ویرایشگران ممکن است بخواهند از دلیل تصمیم شما برای رد کردن یادکرد آگاه شوند.", + "editcheck-dialog-addref-reject-irrelevant": "معتقدم یادکردها با تغییراتی که اعمال کرده‌ام مرتبط نیستند", + "editcheck-dialog-addref-reject-common-knowledge": "اطلاعاتی که اضافه کرده‌ام به‌طور گسترده‌ای محرز است", + "editcheck-dialog-addref-reject-uncertain": "از این که چه یادکردی باید اضافه کنم، مطمئن نیستم", + "editcheck-dialog-addref-reject-other": "سایر", + "editcheck-dialog-addref-success-notify": "بابت افزودن یادکرد از شما ممنونیم!", + "editcheck-dialog-addref-title": "افزودن یک یادکرد", + "editcheck-dialog-title": "پیش از انتشار", + "editcheck-copyvio-title": "متن چسبانده‌شده", + "editcheck-copyvio-description": "به‌عنوان یک قاعدهٔ کلی، متن را از سایر منابع کپی نکنید. چنین کاری معمولاً ترکیبی است از نقض حق تکثیر و سرقت ادبی.", + "editcheck-copyvio-prompt": "این متن رو خودت نوشتی؟", + "editcheck-copyvio-action-keep": "بله، نگهش دار", + "editcheck-copyvio-action-remove": "خیر، حذفش کن", + "editcheck-copyvio-keep-description": "لطفاً به دیگر ویراستاران این مقاله کمک کنید تا دلیل شما برای نگه داشتن متن قرار داده شده را درک کنند.", + "editcheck-copyvio-keep-wrote": "خودم این متن را نوشته‌ام و جای دیگری منتشر نشده است", + "editcheck-copyvio-keep-permission": "این محتوا اجازه‌نامهٔ آزاد دارد", + "editcheck-copyvio-keep-other": "هیچ یک از موارد فوق صدق نمی‌کند", + "editcheck-copyvio-keep-notify": "از این که دلیل نگه داشتن متن چسبانده‌شده را به اشتراک گذاشتید ممنونیم!", + "editcheck-copyvio-remove-notify": "از شما بابت کمک به در دسترس نگه‌داشتن دانش به صورت رایگان متشکریم!", + "editcheck-tone-title": "اصلاح لحن؟", + "editcheck-tone-description": "کاربران دیگر معمولاً چنین جمله‌بندی‌هایی را اصلاح می‌کنند، زیرا معتقدند که لحن آن نامتعادل است. [$1 بیشتر بدانید]", + "editcheck-tone-title-acted": "بازنگری لحن", + "editcheck-tone-description-acted": "به دنبال عباراتی باشید که چاپلوسانه، تحقیرآمیز، مبهم، کلیشه‌ای یا در تأیید یک دیدگاه خاص هستند.", + "editcheck-tone-reject-appropriate": "لحن نامناسب است", + "editcheck-tone-reject-uncertain": "مطمئن نیستم چطور لحن را اصلاح کنم", + "editcheck-tone-reject-other": "سایر", + "editcheck-tone-thank": "ممنون که لحن را بازبینی کردید!", + "editcheck-reject-description": "برای سایر ویراستاران ارزشمند است که بدانند چرا این انتخاب را کرده‌اید.", + "editcheck-review-title": "بازبینی تغییرات", + "tag-editcheck-reference-decline-common-knowledge": "بررسی ویرایش (ارجاعات) رد شد (دانش عمومی)", + "tag-editcheck-reference-decline-common-knowledge-description": "ارجاع بررسی ویرایش تحت عنوان دانش عمومی رد شد", + "tag-editcheck-reference-decline-irrelevant": "بررسی ویرایش (ارجاعات) رد شد (نامرتبط)", + "tag-editcheck-reference-decline-irrelevant-description": "ارجاع بررسی ویرایش تحت عنوان نامرتبط رد شد", + "tag-editcheck-reference-decline-other": "بررسی ویرایش (ارجاعات) رد شد (سایر)", + "tag-editcheck-reference-decline-other-description": "ارجاع بررسی ویرایش به دلیل که در فهرست موجود نیست، رد شد", + "tag-editcheck-reference-decline-uncertain": "بررسی ویرایش (ارجاعات) رد شد (نامطمئن)", + "tag-editcheck-reference-decline-uncertain-description": "ارجاع بررسی ویرایش تحت عنوان مطمئن نبودن رد شد" +} diff --git a/editcheck/i18n/fi.json b/editcheck/i18n/fi.json index b84b51de5b..afd290f793 100644 --- a/editcheck/i18n/fi.json +++ b/editcheck/i18n/fi.json @@ -8,18 +8,49 @@ }, "editcheck-dialog-action-no": "Ei", "editcheck-dialog-action-yes": "Kyllä", - "editcheck-dialog-addref-description": "Auta lukijoita ymmärtämään, mistä tämä tieto on peräisin lisäämällä viittaus.", - "editcheck-dialog-addref-reject-question": "Mikset lisää viittausta?", - "editcheck-dialog-addref-reject-description": "Muut muokkaajat arvostaisivat kuulla päätöksestäsi olla lisäämättä viittausta.", - "editcheck-dialog-addref-reject-irrelevant": "En usko, että viittaukset ovat tarpeen tekemässäni muokkauksessa", - "editcheck-dialog-addref-reject-common-knowledge": "Tieto, jota olen lisäämässä on yleistä tietoa", - "editcheck-dialog-addref-reject-uncertain": "En ole varma, minkä viittauksen lisäisin", - "editcheck-dialog-addref-reject-other": "Muu", - "editcheck-dialog-addref-success-notify": "Kiitos viittauksen lisäämisestä!", - "editcheck-dialog-addref-title": "Lisää viittaus", - "editcheck-dialog-title": "Ennen julkaisua", + "editcheck-dialog-action-decline": "Hylkää", + "editcheck-dialog-action-revise": "Muokkaa", + "editcheck-dialog-action-recheck": "Tarkista uudelleen", + "editcheck-dialog-action-back": "Takaisin", + "editcheck-dialog-action-submit": "Lähetä", + "editcheck-dialog-addref-description": "Auta lukijoita ymmärtämään, mistä tämä tieto on peräisin lisäämällä lähdeviite.", + "editcheck-dialog-addref-reject-question": "Mikset lisää lähdeviitettä?", + "editcheck-dialog-addref-reject-description": "Muut muokkaajat arvostaisivat kuulla, mistä syystä päätit olla lisäämättä lähdeviitettä.", + "editcheck-dialog-addref-reject-irrelevant": "En usko, että lähdeviitteet ovat tarpeen tekemässäni muokkauksessa", + "editcheck-dialog-addref-reject-common-knowledge": "Lisäämäni tieto on yleisesti tunnettua", + "editcheck-dialog-addref-reject-uncertain": "En ole varma, minkä lähdeviitteen lisäisin", + "editcheck-dialog-addref-reject-other": "Muu syy", + "editcheck-dialog-addref-success-notify": "Kiitos lähdeviitteen lisäämisestä!", + "editcheck-dialog-addref-title": "Lisää lähdeviite", + "editcheck-dialog-title": "Ennen julkaisemista", + "editcheck-copyvio-title": "Liitetty sisältö", + "editcheck-copyvio-description": "Vältä tekstin kopiointia muista lähteistä, vaikka muotoilisit sen uudelleen tai lisäisit lähdeviitteen. Kopiointia pidetään [$1 tekijänoikeusrikkomuksena tai plagiarismia], ja se voi johtaa lisäämäsi sisällön poistamiseen tai tunnuksesi estoon.", + "editcheck-copyvio-prompt": "Kirjoititko tämän tekstin itse?", + "editcheck-copyvio-action-keep": "Kyllä, säilytä", + "editcheck-copyvio-action-remove": "Ei, poista", + "editcheck-copyvio-keep-description": "Auta tämän artikkelin muita muokkaajia ymmärtämään, mistä syystä säilytit tämän liitetyn sisällön.", + "editcheck-copyvio-keep-wrote": "Kirjoitin tämän sisällön, eikä sitä ole julkaistu muualla", + "editcheck-copyvio-keep-permission": "Tämä sisältö on vapaasti lisensoitua", + "editcheck-copyvio-keep-other": "Ei mikään yllä mainituista", + "editcheck-copyvio-keep-notify": "Kiitos, kun kerroit syysi liitetyn tekstin säilyttämiseksi!", + "editcheck-copyvio-remove-notify": "Kiitos, kun autat pitämään sisällön vapaana!", + "editcheck-tone-title": "Korjaa sävyä?", + "editcheck-tone-description": "Muut käyttäjät korjaavat usein tämänkaltaisia ilmauksia, koska niitä pidetään sävyltään epäneutraaleina. [$1 Lisätietoja]", + "editcheck-tone-footer": "Tunnistettu [$1 BERT-mallin] avulla", + "editcheck-tone-title-acted": "Sävyn korjaus", + "editcheck-tone-description-acted": "Varo ylistäviä, väheksyviä, ympäripyöreitä tai tiettyä näkökulmaa tukevia ilmauksia.", + "editcheck-tone-reject-appropriate": "Sävy on sopiva", + "editcheck-tone-reject-uncertain": "En ole varma, miten korjata sävyä", + "editcheck-tone-reject-other": "Muu syy", + "editcheck-tone-thank": "Kiitos sävyn tarkastamisesta!", + "editcheck-reject-description": "Muut muokkaajat arvostaisivat kuulla, miksi teit tämän valinnan.", + "editcheck-review-title": "Tarkasta muutokset", "tag-editcheck-reference-decline-common-knowledge": "Muokkaustarkistin (lähteet) hylätty (yleistietoa)", + "tag-editcheck-reference-decline-common-knowledge-description": "Muokkaustarkistimen ehdotus hylättiin, koska lisäystä pidettiin yleisenä tietona", "tag-editcheck-reference-decline-irrelevant": "Muokkaustarkistin (lähteet) hylätty (epäolennaista)", + "tag-editcheck-reference-decline-irrelevant-description": "Muokkaustarkistimen ehdotus hylättiin, koska sitä pidettiin epäolennaisena", "tag-editcheck-reference-decline-other": "Muokkaustarkistin (lähteet) hylätty (muu syy)", - "tag-editcheck-reference-decline-uncertain": "Muokkaustarkistin (lähteet) hylätty (epävarma)" + "tag-editcheck-reference-decline-other-description": "Muokkaustarkistimen ehdotus hylättiin muusta syystä", + "tag-editcheck-reference-decline-uncertain": "Muokkaustarkistin (lähteet) hylätty (epävarma)", + "tag-editcheck-reference-decline-uncertain-description": "Muokkaustarkistimen ehdotus hylättiin, koska käyttäjä oli epävarma" } diff --git a/editcheck/i18n/fr.json b/editcheck/i18n/fr.json index cb9ecf4e51..0432e5e431 100644 --- a/editcheck/i18n/fr.json +++ b/editcheck/i18n/fr.json @@ -1,21 +1,64 @@ { "@metadata": { "authors": [ - "Gomoko" + "Derugon", + "Escargot bleu", + "Gomoko", + "JLTRY", + "Mahabarata", + "Trizek (WMF)", + "SleaY", + "Urhixidur", + "Wladek92", + "Danÿa", + "Ed g2s", + "Pols12", + "Sik666", + "Antimuonium", + "Pa2chant.bis", + "Jdforrester", + "Jérémy-Günther-Heinz Jähnick" ] }, "editcheck-dialog-action-no": "Non", "editcheck-dialog-action-yes": "Oui", - "editcheck-dialog-addref-description": "Aidez les lecteurs à comprendre d'où proviennent ces informations en ajoutant une source.", + "editcheck-dialog-action-decline": "Refuser", + "editcheck-dialog-action-revise": "Réviser", + "editcheck-dialog-action-recheck": "Revérifier", + "editcheck-dialog-action-back": "Retour", + "editcheck-dialog-action-submit": "Soumettre", + "editcheck-dialog-addref-description": "Aidez les lecteurs et lectrices à comprendre d'où proviennent ces informations en ajoutant une source.", "editcheck-dialog-addref-reject-question": "Pourquoi n'ajoutez-vous pas une source ?", "editcheck-dialog-addref-reject-description": "Les autres éditeurs aimeraient en savoir plus sur votre décision de ne pas ajouter une source.", - "editcheck-dialog-addref-reject-irrelevant": "Je ne pense pas que les citations sont en phase avec le changement que j’ai fait", - "editcheck-dialog-addref-reject-common-knowledge": "L’information que j’ai ajouté est largement connue", + "editcheck-dialog-addref-reject-irrelevant": "Je ne pense pas que des sources soient adaptées pour le changement que j’ai fait", + "editcheck-dialog-addref-reject-common-knowledge": "L’information que j’ai ajoutée est largement connue", "editcheck-dialog-addref-reject-uncertain": "Je ne sais pas quelle source ajouter", "editcheck-dialog-addref-reject-other": "Autre", "editcheck-dialog-addref-success-notify": "Merci d'avoir ajouté une source !", "editcheck-dialog-addref-title": "Ajouter une source", "editcheck-dialog-title": "Avant de publier", + "editcheck-copyvio-title": "Contenu copié-collé", + "editcheck-copyvio-description": "Veuillez éviter de copier du texte provenant d'autres sources, même reformulé ou cité. Cela pourrait être considéré comme [$1 violation du droit d'auteur ou un plagiat] et entraîner la suppression de votre contenu ou le blocage de votre compte.", + "editcheck-copyvio-prompt": "Avez-vous écrit ce texte ?", + "editcheck-copyvio-action-keep": "Oui, gardez-le", + "editcheck-copyvio-action-remove": "Non, enlevez-le", + "editcheck-copyvio-keep-description": "Veuillez aider les autres éditeurs et éditrices de cet article à comprendre votre raison de conserver le texte recopié.", + "editcheck-copyvio-keep-wrote": "J'ai écrit ce contenu et il n'est pas publié ailleurs", + "editcheck-copyvio-keep-permission": "Ce contenu est sous licence libre.", + "editcheck-copyvio-keep-other": "Autre", + "editcheck-copyvio-keep-notify": "Merci d'avoir partagé votre raison de conserver le texte collé !", + "editcheck-copyvio-remove-notify": "Merci de contribuer à maintenir la connaissance librement accessible !", + "editcheck-tone-title": "Réviser le ton ?", + "editcheck-tone-description": "D'autres utilisateurs révisent souvent ce genre de formulation, disant que le ton est déséquilibré. [$1 En savoir plus]", + "editcheck-tone-footer": "Identifié à l'aide d'un [$1 modèle BERT]", + "editcheck-tone-title-acted": "Révision du ton", + "editcheck-tone-description-acted": "Faites attention aux expressions flatteuses, désobligeantes, vagues, clichés ou qui soutiennent un point de vue particulier.", + "editcheck-tone-reject-appropriate": "Le ton est approprié", + "editcheck-tone-reject-uncertain": "Je ne sais pas comment réviser le ton.", + "editcheck-tone-reject-other": "Autre", + "editcheck-tone-thank": "Merci d’avoir réfléchi au ton !", + "editcheck-reject-description": "D'autres rédacteurs et rédactrices apprécieront d'apprendre pourquoi vous avez fait ce choix.", + "editcheck-review-title": "Relire les modifications", "tag-editcheck-reference-decline-common-knowledge": "Vérification de modification (références) refusée (savoir commun)", "tag-editcheck-reference-decline-common-knowledge-description": "La référence EditCheck a été refusée comme étant un savoir commun", "tag-editcheck-reference-decline-irrelevant": "Vérification de modification (références) refusée (non pertinent)", diff --git a/editcheck/i18n/gl.json b/editcheck/i18n/gl.json new file mode 100644 index 0000000000..666af315ed --- /dev/null +++ b/editcheck/i18n/gl.json @@ -0,0 +1,54 @@ +{ + "@metadata": { + "authors": [ + "Toliño" + ] + }, + "editcheck-dialog-action-no": "Non", + "editcheck-dialog-action-yes": "Si", + "editcheck-dialog-action-decline": "Rexeitar", + "editcheck-dialog-action-revise": "Revisar", + "editcheck-dialog-action-recheck": "Volver comprobar", + "editcheck-dialog-action-back": "Volver", + "editcheck-dialog-action-submit": "Enviar", + "editcheck-dialog-addref-description": "Axuda aos lectores a comprender de onde provén esta información engadindo unha cita.", + "editcheck-dialog-addref-reject-question": "Por que non engades unha cita?", + "editcheck-dialog-addref-reject-description": "As demais persoas editoras queren saber máis sobre a túa decisión non engadir unha cita.", + "editcheck-dialog-addref-reject-irrelevant": "Non creo que as citas sexan relevantes para o cambio que estou a facer", + "editcheck-dialog-addref-reject-common-knowledge": "A información que estou a engadir é amplamente coñecida", + "editcheck-dialog-addref-reject-uncertain": "Non teño certeza de que cita engadir", + "editcheck-dialog-addref-reject-other": "Outro", + "editcheck-dialog-addref-success-notify": "Grazas por engadires unha cita!", + "editcheck-dialog-addref-title": "Engadir unha cita", + "editcheck-dialog-title": "Antes de publicares", + "editcheck-copyvio-title": "Contido pegado", + "editcheck-copyvio-description": "Evita copiar textos doutras fontes, mesmo se as reformulas ou citas. Isto adoita considerarse [$1 unha violación dos dereitos de autoría ou un plaxio] e pode resultar na eliminación do contido ou no bloqueo da túa conta.", + "editcheck-copyvio-prompt": "Escribiches ti este texto?", + "editcheck-copyvio-action-keep": "Si, mantelo", + "editcheck-copyvio-action-remove": "Non, eliminalo", + "editcheck-copyvio-keep-description": "Axuda a que outros editores do artigo comprendan o motivo para conservar o texto pegado.", + "editcheck-copyvio-keep-wrote": "Escribín este contido e non está publicado en ningures", + "editcheck-copyvio-keep-permission": "Este contido atópase baixo unha licenza libre", + "editcheck-copyvio-keep-other": "Non se aplica nada do anterior", + "editcheck-copyvio-keep-notify": "Grazas por compartires o motivo polo que conservaches o texto pegado!", + "editcheck-copyvio-remove-notify": "Grazas por axudares a manter o coñecemento libre!", + "editcheck-tone-title": "Revisar o ton?", + "editcheck-tone-description": "Outros usuarios adoitan revisar este tipo de redacción, porque consideran que o ton non é axeitado. [$1 Máis información]", + "editcheck-tone-footer": "Identificado usando un [$1 modelo BERT]", + "editcheck-tone-title-acted": "Revisión do ton", + "editcheck-tone-description-acted": "Busca expresións aduladoras, despectivas, vagas, clichés ou que apoien un punto de vista en particular.", + "editcheck-tone-reject-appropriate": "O ton é axeitado", + "editcheck-tone-reject-uncertain": "Non sei como revisar o ton", + "editcheck-tone-reject-other": "Outro", + "editcheck-tone-thank": "Grazas por revisares o ton!", + "editcheck-reject-description": "Outros editores apreciarán saber por que tomaches esta decisión.", + "editcheck-review-title": "Revisar os cambios", + "tag-editcheck-reference-decline-common-knowledge": "Verificación de edición (referencias) rexeitada (coñecemento común)", + "tag-editcheck-reference-decline-common-knowledge-description": "A referencia da verificación de edición rexeitouse por ser un coñecemento común", + "tag-editcheck-reference-decline-irrelevant": "Verificación de edición (referencias) rexeitada (irrelevante)", + "tag-editcheck-reference-decline-irrelevant-description": "A referencia da verificación de edición rexeitouse por ser irrelevante", + "tag-editcheck-reference-decline-other": "Verificación de edición (referencias) rexeitada (outro)", + "tag-editcheck-reference-decline-other-description": "A referencia da verificación de edición rexeitouse por un motivo non indicado", + "tag-editcheck-reference-decline-uncertain": "Verificación de edición (referencias) rexeitada (incerteza)", + "tag-editcheck-reference-decline-uncertain-description": "A referencia da verificación de edición rexeitouse por non ter certeza" +} diff --git a/editcheck/i18n/gpe.json b/editcheck/i18n/gpe.json new file mode 100644 index 0000000000..5ada6d104e --- /dev/null +++ b/editcheck/i18n/gpe.json @@ -0,0 +1,51 @@ +{ + "@metadata": { + "authors": [ + "Abdul-Rauf Moshie", + "DaSupremo" + ] + }, + "editcheck-dialog-action-no": "Nah", + "editcheck-dialog-action-yes": "Yh", + "editcheck-dialog-action-decline": "Decline", + "editcheck-dialog-action-revise": "Revise", + "editcheck-dialog-action-recheck": "San check", + "editcheck-dialog-action-back": "Back", + "editcheck-dialog-action-submit": "Submit", + "editcheck-dialog-addref-description": "Help readers make dem barb wer dis information dey cam from by adding a citation.", + "editcheck-dialog-addref-reject-question": "Why you no dey add citation?", + "editcheck-dialog-addref-reject-irrelevant": "I no dey think say citations be relevant to de change wey adey make", + "editcheck-dialog-addref-reject-common-knowledge": "De information wey adey add be widely known", + "editcheck-dialog-addref-reject-uncertain": "Ano sure wey citation ago add", + "editcheck-dialog-addref-reject-other": "Oda", + "editcheck-dialog-addref-success-notify": "Thanks say you add citation!", + "editcheck-dialog-addref-title": "Add a citation", + "editcheck-dialog-title": "Before dem publish", + "editcheck-copyvio-title": "Content wey dem paste", + "editcheck-copyvio-prompt": "You dey write dis text?", + "editcheck-copyvio-action-keep": "Yh, keep am", + "editcheck-copyvio-action-remove": "Nah, komot am", + "editcheck-copyvio-keep-description": "Abeg help oda editors of dis article make dem barb why you keep de pasted text.", + "editcheck-copyvio-keep-wrote": "Me per dey write dis content wey eno dey any wer else", + "editcheck-copyvio-keep-permission": "Dis content bi free license", + "editcheck-copyvio-keep-other": "All de above no dey ply", + "editcheck-copyvio-keep-notify": "Thanks say you share your reason to keep de pasted text!", + "editcheck-copyvio-remove-notify": "Thanks say you help keep knowledge freely available!", + "editcheck-tone-title": "You fi revise Tone?", + "editcheck-tone-title-acted": "Revising Tone", + "editcheck-tone-description-acted": "Look out for expressions wey be flattering, disparaging, vague, cliché, anaa endorsing of a particular viewpoint.", + "editcheck-tone-reject-appropriate": "De tone bi appropriate", + "editcheck-tone-reject-uncertain": "Ano sure how afi revise de tone", + "editcheck-tone-reject-other": "Oda", + "editcheck-tone-thank": "Thanks say you consider tone!", + "editcheck-reject-description": "Oda editors go dey appreciate why you dey make this choice.", + "editcheck-review-title": "Review changes", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check (references) decline (common knowledge)", + "tag-editcheck-reference-decline-common-knowledge-description": "Dem decline EditCheck reference as common knowledge", + "tag-editcheck-reference-decline-irrelevant": "Edit Check (references) decline (irrelevant)", + "tag-editcheck-reference-decline-irrelevant-description": "Dem decline EditCheck reference as irrelevant", + "tag-editcheck-reference-decline-other": "Edit Check (references) decline (oda)", + "tag-editcheck-reference-decline-other-description": "Dem decline editCheck reference for reason wey dem no list", + "tag-editcheck-reference-decline-uncertain": "Edit Check (references) decline (uncertain)", + "tag-editcheck-reference-decline-uncertain-description": "Dem dey decline editCheck reference sekof eno certain" +} diff --git a/editcheck/i18n/he.json b/editcheck/i18n/he.json index 7c485c8b61..32b1e235ee 100644 --- a/editcheck/i18n/he.json +++ b/editcheck/i18n/he.json @@ -2,13 +2,21 @@ "@metadata": { "authors": [ "Amire80", - "מקף" + "Neriah", + "מקף", + "YaronSh", + "ערן" ] }, "editcheck-dialog-action-no": "לא", "editcheck-dialog-action-yes": "כן", - "editcheck-dialog-addref-description": "{{GENDER:|עזור|עזרי}} לקוראים להבין מאיפה המידע הזה מגיע על־ידי הוספת הערת שוליים.", - "editcheck-dialog-addref-reject-question": "למה אינך {{GENDER:|מוסיף|מוסיפה}} ציטוט?", + "editcheck-dialog-action-decline": "דחייה", + "editcheck-dialog-action-revise": "תיקון", + "editcheck-dialog-action-recheck": "בדיקה חוזרת", + "editcheck-dialog-action-back": "חזרה", + "editcheck-dialog-action-submit": "שליחה", + "editcheck-dialog-addref-description": "{{GENDER:|עזור|עזרי}} לקוראים להבין מאין המידע הזה מגיע על־ידי הוספת הערת שוליים.", + "editcheck-dialog-addref-reject-question": "למה אינך {{GENDER:|מוסיף|מוסיפה}} הערת שוליים?", "editcheck-dialog-addref-reject-description": "עורכים אחרים ישמחו לדעת למה החלטת לוותר על הערת שוליים.", "editcheck-dialog-addref-reject-irrelevant": "לא נראה לי שהערות שוליים רלוונטיות לשינוי שאני עושה", "editcheck-dialog-addref-reject-common-knowledge": "המידע שאני {{GENDER:|מוסיף|מוסיפה}} ידוע לכול", @@ -17,6 +25,28 @@ "editcheck-dialog-addref-success-notify": "תודה על הוספת הערת שוליים!", "editcheck-dialog-addref-title": "הוספת הערת שוליים", "editcheck-dialog-title": "לפני הפרסום", + "editcheck-copyvio-title": "תוכן מודבק", + "editcheck-copyvio-description": "נא להימנע מהעתקת טקסט ממקורות אחרים, גם אם הוא מנוסח מחדש או מצוטט. זה עלול להיחשב [$1 הפרת זכויות יוצרים או גניבה ספרותית] ועלול לגרום להסרת התוכן שלך או לחסימת החשבון שלך.", + "editcheck-copyvio-prompt": "האם כתבת את הטקסט הזה?", + "editcheck-copyvio-action-keep": "כן, להשאיר את זה", + "editcheck-copyvio-action-remove": "לא, להסיר את זה", + "editcheck-copyvio-keep-description": "אנא {{GENDER:|עזור|עזרי}} לעורכים אחרים של הערך הזה להבין את הסיבה שלך להשארת הטקסט המודבק הזה.", + "editcheck-copyvio-keep-wrote": "כתבתי את התוכן הזה והוא לא פורסם במקום אחר", + "editcheck-copyvio-keep-permission": "זהו תוכן ברישיון חופשי", + "editcheck-copyvio-keep-other": "שום דבר מהאמור למעלה אינו מתאים", + "editcheck-copyvio-keep-notify": "תודה ששיתפת את הסיבה שלך להשארת הטקסט המודבק!", + "editcheck-copyvio-remove-notify": "תודה על העזרה בשמירה על כך שידע יהיה חופשי!", + "editcheck-tone-title": "לתקן את הנימה?", + "editcheck-tone-description": "משתמשים אחרים נוטים לתקן ניסוח מסוג כזה, ואומרים שהנימה אינה מאוזנת. [$1 למידע נוסף]", + "editcheck-tone-footer": "זוהה באמצעות [$1 מודל BERT]", + "editcheck-tone-title-acted": "תיקון נימה", + "editcheck-tone-description-acted": "יש להיזהר משימוש בביטויים מחמיאים, מזלזלים, מעורפלים, קלישאתיים או תומכים בנקודת מבט מסוימת.", + "editcheck-tone-reject-appropriate": "הנימה הזאת הולמת", + "editcheck-tone-reject-uncertain": "לא ברור לי איך לתקן את הנימה", + "editcheck-tone-reject-other": "אחר", + "editcheck-tone-thank": "תודה שחשבת על הנימה!", + "editcheck-reject-description": "עורכים אחרים ישמחו לדעת למה בחרת בזה.", + "editcheck-review-title": "סקירת שינויים", "tag-editcheck-reference-decline-common-knowledge": "מערכת בדיקת עריכה (הערות שוליים) – נדחה (ידוע לכול)", "tag-editcheck-reference-decline-common-knowledge-description": "הערת שוליים שהוצעה דרך מערכת בדיקת עריכה נדחתה בשל היותה ידועה לכול", "tag-editcheck-reference-decline-irrelevant": "מערכת בדיקת עריכה (הערות שוליים) – נדחה (לא רלוונטי)", diff --git a/editcheck/i18n/hi.json b/editcheck/i18n/hi.json new file mode 100644 index 0000000000..f8f9c4ce29 --- /dev/null +++ b/editcheck/i18n/hi.json @@ -0,0 +1,54 @@ +{ + "@metadata": { + "authors": [ + "Abijeet Patro", + "Saurmandal" + ] + }, + "editcheck-dialog-action-no": "नहीं", + "editcheck-dialog-action-yes": "हाँ", + "editcheck-dialog-action-decline": "अस्वीकार करें", + "editcheck-dialog-action-revise": "संशोधित करें", + "editcheck-dialog-action-recheck": "पुनः जाँच करें", + "editcheck-dialog-action-back": "पीछे", + "editcheck-dialog-action-submit": "जमा करें", + "editcheck-dialog-addref-description": "एक उद्धरण जोड़कर पाठकों की यह समझने में मदद करें कि जानकारी कहाँ से आई है।", + "editcheck-dialog-addref-reject-question": "आप एक उद्धरण क्यों नहीं जोड़ रहे हैं?", + "editcheck-dialog-addref-reject-irrelevant": "मुझे नहीं लगता कि उद्धरण मेरे द्वारा किए जा रहे बदलाव के लिए प्रासंगिक हैं", + "editcheck-dialog-addref-reject-common-knowledge": "मैं जो जानकारी जोड़ रहा/रही हूँ वह सामान्य ज्ञान है", + "editcheck-dialog-addref-reject-uncertain": "मुझे नहीं पता कौन-सा उद्धरण जोड़ना है", + "editcheck-dialog-addref-reject-other": "अन्य", + "editcheck-dialog-addref-success-notify": "उद्धरण जोड़ने के लिए धन्यवाद!", + "editcheck-dialog-addref-title": "उद्धरण जोड़ें", + "editcheck-dialog-title": "प्रकाशन से पहले", + "editcheck-copyvio-title": "पेस्ट की गई सामग्री", + "editcheck-copyvio-description": "कृपया दूसरे स्रोतों से टेक्स्ट कॉपी करने से बचें, भले ही उसमें शब्द बदले गए हों या फिर उसे उद्धृत किया गया हो। यह [$1 कॉपीराइट का उल्लंघन या फिर साहित्यिक चोरी] मानी जा सकती है और इसके चलते आपकी सामग्री हटा दी जा सकती है या फिर आपका खाता अवरोधित कर दिया जा सकता है।", + "editcheck-copyvio-prompt": "क्या यह टेक्स्ट आपने लिखा है?", + "editcheck-copyvio-action-keep": "हाँ, इसे रखें", + "editcheck-copyvio-action-remove": "नहीं, इसे हटा दें", + "editcheck-copyvio-keep-description": "कृपया पेस्ट किए गए टेक्स्ट को रखने का आपका कारण समझने में लेख के दूसरे सम्पादकों की मदद करें।", + "editcheck-copyvio-keep-wrote": "यह सामग्री मैंने लिखी है और यह कहीं और प्रकाशित नहीं है", + "editcheck-copyvio-keep-permission": "यह सामग्री मुक्त लाइसेंस के अंतर्गत है", + "editcheck-copyvio-keep-other": "उपरोक्त में से कुछ भी लागू नहीं होता", + "editcheck-copyvio-keep-notify": "पेस्ट किए गए टेक्स्ट को रखने का अपना कारण साझा करने के लिए धन्यवाद!", + "editcheck-copyvio-remove-notify": "ज्ञान को मुक्त रूप से उपलब्ध रखने के लिए धन्यवाद!", + "editcheck-tone-title": "लहजा संशोधित करें?", + "editcheck-tone-description": "दूसरे सदस्य अक्सर इस प्रकार के शब्दों के प्रयोग को संशोधित करते हैं, यह कहते हुए कि लहजा असंतुलित है। [$1 अधिक जानें]", + "editcheck-tone-footer": "[$1 BERT मॉडल] की मदद से पहचाना गया", + "editcheck-tone-title-acted": "लहजा संशोधित करें", + "editcheck-tone-description-acted": "चापलूस, अपमानजनक, अस्पष्ट, घिसी-पिटी बात दोहराने वाली, या फिर किसी विशिष्ट दृष्टिकोण का समर्थन करने वाली अभिव्यक्तियों का ध्यान रखें।", + "editcheck-tone-reject-appropriate": "लहजा स्वीकार्य है", + "editcheck-tone-reject-uncertain": "मुझे नहीं पता मैं लहजा कैसे संशोधित करूँ", + "editcheck-tone-reject-other": "अन्य", + "editcheck-tone-thank": "लहजे पर ध्यान देने के लिए धन्यवाद!", + "editcheck-reject-description": "दूसरे सम्पादक यह जानना पसंद करेंगे कि आपने यह चुनाव क्यों किया।", + "editcheck-review-title": "बदलावों की समीक्षा करें", + "tag-editcheck-reference-decline-common-knowledge": "सम्पादन जाँच (संदर्भ) अस्वीकृत (सामान्य ज्ञान)", + "tag-editcheck-reference-decline-common-knowledge-description": "सम्पादन जाँच संदर्भ को सामान्य ज्ञान होने के नाते अस्वीकार किया गया था", + "tag-editcheck-reference-decline-irrelevant": "सम्पादन जाँच (संदर्भ) अस्वीकृत (अप्रासंगिक)", + "tag-editcheck-reference-decline-irrelevant-description": "सम्पादन जाँच संदर्भ को अप्रासंगिक होने के नाते अस्वीकार किया गया था", + "tag-editcheck-reference-decline-other": "सम्पादन जाँच (संदर्भ) अस्वीकृत (अन्य)", + "tag-editcheck-reference-decline-other-description": "सम्पादन जाँच संदर्भ को किसी अन्य कारण से अस्वीकार किया गया था", + "tag-editcheck-reference-decline-uncertain": "सम्पादन जाँच (संदर्भ) अस्वीकृत (अनिश्चित)", + "tag-editcheck-reference-decline-uncertain-description": "सम्पादन जाँच संदर्भ को अनिश्चित होने के कारण अस्वीकार किया गया था" +} diff --git a/editcheck/i18n/hr.json b/editcheck/i18n/hr.json index dd2f4c50d1..9fbfd40d12 100644 --- a/editcheck/i18n/hr.json +++ b/editcheck/i18n/hr.json @@ -1,11 +1,17 @@ { "@metadata": { "authors": [ - "Ponor" + "Ponor", + "MaGa" ] }, "editcheck-dialog-action-no": "Zanemari", "editcheck-dialog-action-yes": "Dodajmo izvor", + "editcheck-dialog-action-decline": "Odbijam popravak", + "editcheck-dialog-action-revise": "Pokušajmo popraviti", + "editcheck-dialog-action-recheck": "Ponovi provjeru", + "editcheck-dialog-action-back": "Natrag", + "editcheck-dialog-action-submit": "Potvrdi", "editcheck-dialog-addref-description": "Dodavanjem citata pomozite čitateljima razumjeti odakle informacije dolaze.", "editcheck-dialog-addref-reject-question": "Zašto ne želite dodati referenciju?", "editcheck-dialog-addref-reject-description": "Ostali urednici rado bi znali zašto ste odlučili ne dodati citat.", @@ -16,6 +22,25 @@ "editcheck-dialog-addref-success-notify": "Hvala što ste dodali izvor!", "editcheck-dialog-addref-title": "Dodavanje izvora", "editcheck-dialog-title": "Prije objave", + "editcheck-copyvio-title": "Zalijepljen sadržaj", + "editcheck-copyvio-prompt": "Jeste li Vi napisali zalijepljeni tekst?", + "editcheck-copyvio-action-keep": "Da, zadržimo ga", + "editcheck-copyvio-action-remove": "Ne, uklonimo ga", + "editcheck-copyvio-keep-description": "Pomozite drugim urednicima ovoga članka razumjeti zašto ste se odlučili za zadržavanje kopiranog i zalijepljenog teksta.", + "editcheck-copyvio-keep-wrote": "Ovo je moj tekst i nije objavljen nigdje drugdje.", + "editcheck-copyvio-keep-permission": "Sadržaj je objavljen sa slobodnom licencijom", + "editcheck-copyvio-keep-other": "Nešto drugo", + "editcheck-copyvio-keep-notify": "Hvala što ste podijelili razloge zadržavanja kopiranog i zalijepljenog teksta!", + "editcheck-copyvio-remove-notify": "Hvala vam što ste pomogli da znanje ostane slobodno dostupno!", + "editcheck-tone-title": "Preispitivanje tona", + "editcheck-tone-title-acted": "Popravak tona", + "editcheck-tone-description-acted": "Obratite pozornost na izraze koji su laskavi, omalovažavajući, nejasni, klišejizirani ili podržavaju samo jedno moguće gledište.", + "editcheck-tone-reject-appropriate": "Ton je prikladan", + "editcheck-tone-reject-uncertain": "Ne znam kako popraviti ton", + "editcheck-tone-reject-other": "Ostalo", + "editcheck-tone-thank": "Hvala Vam što ste razmislili o tonu unesenog teksta!", + "editcheck-reject-description": "Vaše će suradnike zanimati zašto ste se odlučili za taj izbor.", + "editcheck-review-title": "Pregled promjena", "tag-editcheck-reference-decline-common-knowledge": "EditCheck: referencija odbijena, općepoznato", "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck: dodavanje referencije odbijeno je zato što je tvrdnja svima poznata", "tag-editcheck-reference-decline-irrelevant": "EditCheck: referencija odbijena, nevažno", diff --git a/editcheck/i18n/hy.json b/editcheck/i18n/hy.json new file mode 100644 index 0000000000..80ec0fe6d0 --- /dev/null +++ b/editcheck/i18n/hy.json @@ -0,0 +1,21 @@ +{ + "@metadata": { + "authors": [ + "Kareyac", + "Սահակ" + ] + }, + "editcheck-dialog-action-no": "Ոչ", + "editcheck-dialog-action-yes": "Այո", + "editcheck-dialog-action-decline": "Մերժել", + "editcheck-dialog-action-revise": "Վերանայել", + "editcheck-dialog-action-recheck": "Վերստուգել", + "editcheck-dialog-action-back": "Հետ", + "editcheck-dialog-action-submit": "Ուղարկել", + "editcheck-dialog-addref-reject-other": "Այլ", + "editcheck-dialog-addref-success-notify": "Շնորհակալություն մեջբերում ավելացնելու համար", + "editcheck-dialog-addref-title": "Ավելացնել մեջբերում", + "editcheck-dialog-title": "Հրապարակումից առաջ", + "editcheck-copyvio-keep-other": "Վերը նշվածներից ոչ մեկը չի վերաբերում", + "editcheck-tone-reject-other": "Այլ" +} diff --git a/editcheck/i18n/ia.json b/editcheck/i18n/ia.json index 76dbc9be67..815189f132 100644 --- a/editcheck/i18n/ia.json +++ b/editcheck/i18n/ia.json @@ -6,6 +6,11 @@ }, "editcheck-dialog-action-no": "No", "editcheck-dialog-action-yes": "Si", + "editcheck-dialog-action-decline": "Declinar", + "editcheck-dialog-action-revise": "Revisar", + "editcheck-dialog-action-recheck": "Reverificar", + "editcheck-dialog-action-back": "Retornar", + "editcheck-dialog-action-submit": "Submitter", "editcheck-dialog-addref-description": "Adde un citation pro adjutar le lectores a comprender de ubi proveni iste information.", "editcheck-dialog-addref-reject-question": "Proque non adde tu un citation?", "editcheck-dialog-addref-reject-description": "Altere redactores vole saper proque tu ha decidite de non adder un citation.", @@ -16,6 +21,28 @@ "editcheck-dialog-addref-success-notify": "Gratias pro haber addite un citation!", "editcheck-dialog-addref-title": "Adder un citation", "editcheck-dialog-title": "Ante de publicar", + "editcheck-copyvio-title": "Contento collate", + "editcheck-copyvio-description": "Evita copiar texto de altere fontes, mesmo si tu lo reformula o cita. Isto pote esser considerate como un [$1 violation del derecto de autor o un plagiato] e pote resultar in le elimination de tu contento o le blocada de tu conto.", + "editcheck-copyvio-prompt": "Ha tu scribite iste texto?", + "editcheck-copyvio-action-keep": "Si, mantener", + "editcheck-copyvio-action-remove": "No, remover", + "editcheck-copyvio-keep-description": "Adjuta altere redactores de iste articulo a cognoscer tu ration pro conservar iste texto collate.", + "editcheck-copyvio-keep-wrote": "Io ha scribite iste contento e illo non ha essite publicate alterubi", + "editcheck-copyvio-keep-permission": "Iste contento es sub licentia libere", + "editcheck-copyvio-keep-other": "Necun option supra es applicabile", + "editcheck-copyvio-keep-notify": "Gratias pro indicar tu ration pro conservar le texto collate!", + "editcheck-copyvio-remove-notify": "Gratias pro adjutar a mantener le cognoscentia a disposition libere!", + "editcheck-tone-title": "Revisar le tono?", + "editcheck-tone-description": "Altere usatores sovente corrige iste genere de formulation perque le tono non se considera como equilibrate. [$1 Leger plus]", + "editcheck-tone-footer": "Identificate usante un [$1 modello BERT]", + "editcheck-tone-title-acted": "Revision del tono", + "editcheck-tone-description-acted": "Presta attention al expressiones flattante, denigrante, vage, stereotypate o que sustene un puncto de vista particular.", + "editcheck-tone-reject-appropriate": "Le tono es appropriate", + "editcheck-tone-reject-uncertain": "Io non es secur como revisar le tono", + "editcheck-tone-reject-other": "Altere", + "editcheck-tone-thank": "Gratias pro considerar le tono!", + "editcheck-reject-description": "Altere redactores appreciarea saper proque tu ha optate pro isto.", + "editcheck-review-title": "Revider cambiamentos", "tag-editcheck-reference-decline-common-knowledge": "Verification de modification (referentias) declinate (cognoscentia commun)", "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck: referentia declinate perque es cognoscentia commun", "tag-editcheck-reference-decline-irrelevant": "Verification de modification (referentias) declinate (irrelevante)", diff --git a/editcheck/i18n/id.json b/editcheck/i18n/id.json new file mode 100644 index 0000000000..846809d7a8 --- /dev/null +++ b/editcheck/i18n/id.json @@ -0,0 +1,54 @@ +{ + "@metadata": { + "authors": [ + "NikolasKHF" + ] + }, + "editcheck-dialog-action-no": "Tidak", + "editcheck-dialog-action-yes": "Ya", + "editcheck-dialog-action-decline": "Tolak", + "editcheck-dialog-action-revise": "Revisi", + "editcheck-dialog-action-recheck": "Periksa ulang", + "editcheck-dialog-action-back": "Kembali", + "editcheck-dialog-action-submit": "Kirim", + "editcheck-dialog-addref-description": "Bantu pembaca memahami dari mana informasi ini datang dengan menambahkan sebuah kutipan.", + "editcheck-dialog-addref-reject-question": "Mengapa Anda tidak menambahkan kutipan?", + "editcheck-dialog-addref-reject-description": "Penyunting lain akan senang mempelajari keputusan Anda untuk tidak menambahkan kutipan.", + "editcheck-dialog-addref-reject-irrelevant": "Saya rasa kutipan tidak relevan pada perubahan yang saya buat", + "editcheck-dialog-addref-reject-common-knowledge": "Informasi yang saya tambahkan diketahui secara luas", + "editcheck-dialog-addref-reject-uncertain": "Saya tidak yakin kutipan apa yang harus saya tambahkan", + "editcheck-dialog-addref-reject-other": "Lainnya", + "editcheck-dialog-addref-success-notify": "Terima kasih sudah menambahkan kutipan!", + "editcheck-dialog-addref-title": "Tambahkan kutipan", + "editcheck-dialog-title": "Sebelum diterbitkan", + "editcheck-copyvio-title": "Konten yang ditempel", + "editcheck-copyvio-description": "Mohon hindari menyalin teks dari sumber lain, bahkan jika Anda meparafrasekan atau mengutipnya. Ini dapat dianggap sebagai [$1 pelanggaran hak cipta atau plagiarisme] dan dapat membuat konten Anda dihapus atau akun Anda diblokir.", + "editcheck-copyvio-prompt": "Apakah Anda menulis teks ini?", + "editcheck-copyvio-action-keep": "Ya, simpan", + "editcheck-copyvio-action-remove": "Tidak, hapus", + "editcheck-copyvio-keep-description": "Mohon bantu penyunting lain pada artikel ini memahami alasan Anda menyimpan teks yang ditempel.", + "editcheck-copyvio-keep-wrote": "Saya menulis konten ini dan teks ini tidak dipublikasikan di tempat lain", + "editcheck-copyvio-keep-permission": "Konten ini berlisensi bebas", + "editcheck-copyvio-keep-other": "Tidak satu pun yang di atas berlaku", + "editcheck-copyvio-keep-notify": "Terima kasih telah membagikan alasan Anda menyimpan teks yang ditempel!", + "editcheck-copyvio-remove-notify": "Terima kasih telah membantu menjaga agar pengetahuan ini tersedia dengan bebas!", + "editcheck-tone-title": "Revisi gaya penulisan?", + "editcheck-tone-description": "Pengguna lain sering merevisi bentuk kalimat seperti ini, dengan menyatakan bahwa gaya penulisan yang tidak seimbang. [$1 Pelajari lebih lanjut]", + "editcheck-tone-footer": "Identifikasikan menggunakan [$1 Model BERT]", + "editcheck-tone-title-acted": "Merevisi Gaya Penulisan", + "editcheck-tone-description-acted": "Perhatikan ekspresi yang bersifat memuji, mengejek, tidak jelas, klise, atau mendukung sudut pandang tertentu.", + "editcheck-tone-reject-appropriate": "Gaya penulisan ini sesuai", + "editcheck-tone-reject-uncertain": "Saya tidak yakin cara merevisi gaya penulisan ini", + "editcheck-tone-reject-other": "Lainnya", + "editcheck-tone-thank": "Terima kasih sudah mempertimbangkan gaya penulisan!", + "editcheck-reject-description": "Penyunting lain akan senang mempelajari mengapa Anda memilih pilihan ini.", + "editcheck-review-title": "Tinjau perubahan", + "tag-editcheck-reference-decline-common-knowledge": "Pemeriksaan Suntingan (referensi) ditolak (pengetahuan umum)", + "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck referensi ditolak karena merupakan pengetahuan umum", + "tag-editcheck-reference-decline-irrelevant": "Pemeriksaan Suntingan (referensi) ditolak (tidak relevan)", + "tag-editcheck-reference-decline-irrelevant-description": "EditCheck referensi ditolak karena tidak relevan", + "tag-editcheck-reference-decline-other": "Pemeriksaan Suntingan (referensi) ditolak (lainnya)", + "tag-editcheck-reference-decline-other-description": "EditCheck referensi ditolak untuk alasan yang tidak tercantum", + "tag-editcheck-reference-decline-uncertain": "Pemeriksaan Suntingan (referensi) ditolak (tidak pasti)", + "tag-editcheck-reference-decline-uncertain-description": "EditCheck referensi ditolak karena tidak pasti" +} diff --git a/editcheck/i18n/ig.json b/editcheck/i18n/ig.json new file mode 100644 index 0000000000..f85c81d3a0 --- /dev/null +++ b/editcheck/i18n/ig.json @@ -0,0 +1,30 @@ +{ + "@metadata": { + "authors": [ + "Victor chukwuemerie Mbah" + ] + }, + "editcheck-dialog-action-no": "Mba", + "editcheck-dialog-action-yes": "Eeh", + "editcheck-dialog-addref-description": "Nyere ndị na-agụ akwụkwọ aka ịghọta ebe ozi a si abịa site na ịgbakwunye nkwupụta.", + "editcheck-dialog-addref-reject-question": "Kedu ihe kpatara na ị naghị agbakwunye nkwupụta?", + "editcheck-dialog-addref-reject-description": "Ndị editọ ndị ọzọ ga-enwe mmasị ịmụtakwu banyere mkpebi gị ịchụpụ nkwupụta ahụ.", + "editcheck-dialog-addref-reject-irrelevant": "Ekwetaghị m na ihe ndị a na-agbanwe agbanwe na-agbanwe agbanwe nke m na-eme", + "editcheck-dialog-addref-reject-common-knowledge": "Ozi m na-agbakwunye bụ nke a maara nke ọma.", + "editcheck-dialog-addref-reject-uncertain": "Amaghị m ihe m ga-agbakwunye", + "editcheck-dialog-addref-reject-other": "Nke ozor", + "editcheck-dialog-addref-success-notify": "Kedu ihe kpatara na ị naghị agbakwunye nkwupụta?", + "editcheck-dialog-addref-title": "Tinye edensibịa", + "editcheck-dialog-title": "Tupu ebipụta ya", + "editcheck-copyvio-title": "Plado ọdịnaya", + "editcheck-copyvio-description": "Dị ka iwu n'ozuzu, egbula ederede sitere na isi mmalite ndị ọzọ. Ime nke a na-abụkarị mmebi iwu nwebisiinka na plagiarism.", + "editcheck-review-title": "Lelee mgbanwe", + "tag-editcheck-reference-decline-common-knowledge": "Nyocha edezi (Edensibịa) jụrụ (ihe ọmụma a na-ahụkarị)", + "tag-editcheck-reference-decline-common-knowledge-description": "A jụrụ Edensibịa EditCheck dị ka ihe ọmụma nkịtị", + "tag-editcheck-reference-decline-irrelevant": "Dezie nlele (Edensibịa) jụrụ (adịghị mkpa)", + "tag-editcheck-reference-decline-irrelevant-description": "Ajụjụ Edensibịa EditCheck ka ọ dịghị mkpa", + "tag-editcheck-reference-decline-other": "Dezie Lelee (Edensibịa) jụrụ (ndị ọzọ)", + "tag-editcheck-reference-decline-other-description": "A jụrụ Edensibịa EditCheck maka ihe a na-edeghị aha", + "tag-editcheck-reference-decline-uncertain": "Dezie Lelee (Edensibịa) jụrụ (ndị ọzọ)", + "tag-editcheck-reference-decline-uncertain-description": "Ajụjụ Edensibịa EditCheck ka ọ dịghị mkpa" +} diff --git a/editcheck/i18n/io.json b/editcheck/i18n/io.json new file mode 100644 index 0000000000..0095597032 --- /dev/null +++ b/editcheck/i18n/io.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Joao Xavier" + ] + }, + "editcheck-dialog-addref-reject-common-knowledge": "L'informo quan me adjuntes esas ample konocata", + "tag-editcheck-reference-decline-common-knowledge": "Kontrolo di redakturi (referi) refuzita (ordinara konoco)", + "tag-editcheck-reference-decline-common-knowledge-description": "Referi de EditCheck refuzesis pro esar ordinara konoco", + "tag-editcheck-reference-decline-irrelevant": "Kontrolo di redakturi (referi) refuzita (senimporta)", + "tag-editcheck-reference-decline-other": "Kontrolo di redakturi (referi) refuzita (altra motivo)", + "tag-editcheck-reference-decline-uncertain": "Kontrolo di redakturi (referi) refuzita (necerta)" +} diff --git a/editcheck/i18n/isv-latn.json b/editcheck/i18n/isv-latn.json new file mode 100644 index 0000000000..93a3ceae60 --- /dev/null +++ b/editcheck/i18n/isv-latn.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "IJzeren Jan" + ] + } +} diff --git a/editcheck/i18n/it.json b/editcheck/i18n/it.json index fcb9e7832d..0a4c743999 100644 --- a/editcheck/i18n/it.json +++ b/editcheck/i18n/it.json @@ -2,10 +2,44 @@ "@metadata": { "authors": [ "Beta16", - "Pierpao" + "Pierpao", + "McDutchie", + "FL2226", + "Daimona Eaytoy", + "Valepert" ] }, "editcheck-dialog-action-no": "No", "editcheck-dialog-action-yes": "Sì", + "editcheck-dialog-action-decline": "Rifiuta", + "editcheck-dialog-action-recheck": "Ricontrolla", + "editcheck-dialog-action-back": "Indietro", + "editcheck-dialog-action-submit": "Invia", + "editcheck-dialog-addref-description": "Aiuta i lettori a capire da dove provengono queste informazioni aggiungendo una fonte.", + "editcheck-dialog-addref-reject-question": "Perché non aggiungi una fonte?", + "editcheck-dialog-addref-reject-description": "Altri editori apprezzerebbero saperne di più sulla tua decisione di non inserire la fonte.", + "editcheck-dialog-addref-reject-irrelevant": "Non credo che le fonti siano rilevanti per la modifica che sto apportando", + "editcheck-dialog-addref-reject-common-knowledge": "Le informazioni che sto aggiungendo sono ampiamente conosciute.", + "editcheck-dialog-addref-reject-uncertain": "Non sono sicuro di quale fonte aggiungere", + "editcheck-dialog-addref-reject-other": "Altro", + "editcheck-dialog-addref-success-notify": "Grazie per aver aggiunto una fonte!", + "editcheck-dialog-addref-title": "Aggiungi una fonte", + "editcheck-dialog-title": "Prima della pubblicazione", + "editcheck-copyvio-title": "Contenuto incollato", + "editcheck-copyvio-prompt": "Hai scritto tu questo testo?", + "editcheck-copyvio-action-keep": "Sì, mantienilo", + "editcheck-copyvio-action-remove": "No, rimuovilo", + "editcheck-copyvio-keep-wrote": "Io ho scritto questo contenuto e non è pubblicato altrove", + "editcheck-copyvio-keep-permission": "Questo contenuto è liberamente distribuito.", + "editcheck-copyvio-keep-other": "Non si applica nessuna delle precedenti", + "editcheck-copyvio-keep-notify": "Grazie per aver condiviso il motivo per cui hai deciso di mantenere il testo incollato!", + "editcheck-copyvio-remove-notify": "Grazie per aver contribuito a rendere la conoscenza liberamente accessibile!", + "editcheck-tone-title": "Rivedere il tono?", + "editcheck-tone-title-acted": "Revisione del tono", + "editcheck-tone-reject-appropriate": "Il tono è appropriato", + "editcheck-tone-reject-uncertain": "Non sono certo di come rivedere il tono", + "editcheck-tone-reject-other": "Altro", + "editcheck-tone-thank": "Grazie per aver preso in considerazione il tono!", + "editcheck-review-title": "Rivedi modifiche", "tag-editcheck-reference-decline-other": "Edit Check (citazioni) rifiutato (altro)" } diff --git a/editcheck/i18n/ja.json b/editcheck/i18n/ja.json index ada01aeed1..436c816f92 100644 --- a/editcheck/i18n/ja.json +++ b/editcheck/i18n/ja.json @@ -3,27 +3,56 @@ "authors": [ "Ant176", "JNakayama-WMF", - "Omotecho" + "Omotecho", + "Shirayuki", + "Shulmj", + "YeBoy371", + "Cookie4782" ] }, "editcheck-dialog-action-no": "いいえ", "editcheck-dialog-action-yes": "はい", - "editcheck-dialog-addref-description": "出典を追加することで、読者がこの情報の典拠を理解できるようにします。", + "editcheck-dialog-action-decline": "表現を修正しない", + "editcheck-dialog-action-revise": "表現を修正する", + "editcheck-dialog-action-recheck": "もう一度チェックを受ける", + "editcheck-dialog-action-back": "戻る", + "editcheck-dialog-action-submit": "送信", + "editcheck-dialog-addref-description": "出典を追加することで、読者がこの情報の根拠や情報源を理解できるようにしてください。", "editcheck-dialog-addref-reject-question": "出典を追加しない理由はなんですか。", - "editcheck-dialog-addref-reject-description": "「出典は不要」というあなたの判断について、他の編集者は「もっと知りたい」と思うはずです。", - "editcheck-dialog-addref-reject-irrelevant": "私が加えている変更と、出典とは、関係がないと思います", - "editcheck-dialog-addref-reject-common-knowledge": "私が付け加える情報は、広く知られています", - "editcheck-dialog-addref-reject-uncertain": "どの出典をつければよいか、わかりません", + "editcheck-dialog-addref-reject-description": "出典が不要だと判断した理由を、さらに詳しく教えてください。", + "editcheck-dialog-addref-reject-irrelevant": "私が行った変更は、出典とは無関係だと思います", + "editcheck-dialog-addref-reject-common-knowledge": "私が付け加えた情報は、既に広く知られています", + "editcheck-dialog-addref-reject-uncertain": "どのような出典を追加すればよいか、わかりません", "editcheck-dialog-addref-reject-other": "その他", - "editcheck-dialog-addref-success-notify": "出典を追加していただき、ありがとうございます!", + "editcheck-dialog-addref-success-notify": "出典を追加していただき、ありがとうございます!", "editcheck-dialog-addref-title": "出典を追加する", "editcheck-dialog-title": "公開前", - "tag-editcheck-reference-decline-common-knowledge": "編集チェック(出典)を却下(一般的な知識)", - "tag-editcheck-reference-decline-common-knowledge-description": "編集チェックによる出典は、一般知識であるため、却下されました", - "tag-editcheck-reference-decline-irrelevant": "編集チェック(出典) を却下(不適切)", - "tag-editcheck-reference-decline-irrelevant-description": "編集チェックによる出典は、不適切として却下されました", - "tag-editcheck-reference-decline-other": "編集チェック(出典)を却下(その他)", - "tag-editcheck-reference-decline-other-description": "編集チェックによる出典は却下され、理由の記載はありません", - "tag-editcheck-reference-decline-uncertain": "編集チェック(出典)を却下(不確実)", - "tag-editcheck-reference-decline-uncertain-description": "編集チェックによる出典は、確実ではないとして却下されました" + "editcheck-copyvio-title": "貼り付けられたコンテンツ", + "editcheck-copyvio-description": "原則として、他の情報源からテキストをコピーしないでください。多くの場合、このような行為は剽窃に該当し、著作権を侵害します。", + "editcheck-copyvio-prompt": "この文章はあなたが書いたものですか?", + "editcheck-copyvio-action-keep": "はい、文章を保持してください", + "editcheck-copyvio-action-remove": "いいえ、文章を除去してください", + "editcheck-copyvio-keep-description": "他の編集者のために、なぜあなたが貼り付けられた文章を保持するのかを教えてください。", + "editcheck-copyvio-keep-wrote": "この文章は私が書いたものであり、他の場所では公開されていません", + "editcheck-copyvio-keep-permission": "この文章は自由ライセンスです", + "editcheck-copyvio-keep-other": "上記のいずれにも該当しない", + "editcheck-copyvio-keep-notify": "貼り付けられた文章を保持する理由を教えてくださり、ありがとうございます!", + "editcheck-copyvio-remove-notify": "知識を自由に利用できるようにすることへご協力くださり、ありがとうございます!", + "editcheck-tone-title": "語調を修正する", + "editcheck-tone-title-acted": "語調の見直し", + "editcheck-tone-description-acted": "お世辞、軽蔑、曖昧な表現、陳腐な表現、あるいは特定の見解を支持するような表現には注意しましょう。", + "editcheck-tone-reject-appropriate": "これは適切な表現です", + "editcheck-tone-reject-uncertain": "どのような表現に修正すればよいのかわかりません", + "editcheck-tone-reject-other": "その他", + "editcheck-tone-thank": "語調について考慮してくださり、ありがとうございます!", + "editcheck-reject-description": "他の編集者のために、なぜあなたが提案をスキップをしたのかを教えてください。", + "editcheck-review-title": "変更をレビュー", + "tag-editcheck-reference-decline-common-knowledge": "編集チェック(出典)を拒否(一般的な知識)", + "tag-editcheck-reference-decline-common-knowledge-description": "編集チェックが提案した出典は、一般的な知識であるという理由により却下された", + "tag-editcheck-reference-decline-irrelevant": "編集チェック(出典)を拒否(無関係)", + "tag-editcheck-reference-decline-irrelevant-description": "編集チェックが提案した出典は、無関係であるという理由により却下された", + "tag-editcheck-reference-decline-other": "編集チェック(出典)を拒否(その他)", + "tag-editcheck-reference-decline-other-description": "編集チェックが提案した出典は、その他の理由により却下された", + "tag-editcheck-reference-decline-uncertain": "編集チェック(出典)を拒否(不確定)", + "tag-editcheck-reference-decline-uncertain-description": "編集チェックが提案した出典は、不確定であるという理由により却下された" } diff --git a/editcheck/i18n/jax.json b/editcheck/i18n/jax.json new file mode 100644 index 0000000000..6229b86346 --- /dev/null +++ b/editcheck/i18n/jax.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "Muhamad Izzul Fiqih" + ] + } +} diff --git a/editcheck/i18n/ka.json b/editcheck/i18n/ka.json index 8e2ef054a7..3d2812e000 100644 --- a/editcheck/i18n/ka.json +++ b/editcheck/i18n/ka.json @@ -6,6 +6,17 @@ }, "editcheck-dialog-action-no": "არა", "editcheck-dialog-action-yes": "დიახ", - "editcheck-dialog-addref-description": "დამოწმების დამატებით დაეხმარეთ მკითხველებს გაიგონ, საიდან მოდის ეს ინფორმაცია.", - "editcheck-dialog-addref-reject-question": "დამოწმებას რატომ არ ამატებთ?" + "editcheck-dialog-addref-description": "წყაროს დამატებით დაეხმარეთ მკითხველებს გაიგონ, საიდან მოდის ეს ინფორმაცია.", + "editcheck-dialog-addref-reject-question": "წყაროს რატომ არ ამატებთ?", + "editcheck-dialog-addref-reject-description": "სხვა რედაქტორებისათვის სასარგებლო იქნება გაიგონ, თუ რატომ გადაწყვიტეთ, რომ წყარო არ დაგემატებინათ.", + "editcheck-dialog-addref-reject-irrelevant": "არ მგონია, რომ წყარო იყოს შესაბამისი იმ ცვლილებასთან, რომელიც მე გავაკეთე", + "editcheck-dialog-addref-reject-common-knowledge": "ინფორმაცია, რომელიც დავამატე, ფართოდაა ცნობილია.", + "editcheck-dialog-addref-reject-uncertain": "არ ვიცი რომელი წყარო დავამატო", + "editcheck-dialog-addref-reject-other": "სხვა", + "editcheck-dialog-addref-success-notify": "გმადლობთ წყაროს დამატებისთვის!", + "editcheck-dialog-addref-title": "წყაროს დამატება", + "editcheck-dialog-title": "გამოქვეყნებამდე", + "editcheck-copyvio-title": "ჩასმული შიგთავსი", + "editcheck-copyvio-description": "ზოგადი წესია, რომ არ უნდა გადმოწეროთ ტექსტი სხვა წყაროებიდან. ამგვარი ქმედება როგორც საავტორო უფლებების დარღვევას, ისე პლაგიატიზმს წარმოადგენს.", + "editcheck-review-title": "ცვლილებების გადახედვა" } diff --git a/editcheck/i18n/ko.json b/editcheck/i18n/ko.json index 94e2a0d633..faf327f638 100644 --- a/editcheck/i18n/ko.json +++ b/editcheck/i18n/ko.json @@ -2,10 +2,20 @@ "@metadata": { "authors": [ "Markingdots", + "YeBoy371", "Ykhwong", - "밥풀떼기" + "밥풀떼기", + "Tensama0415" ] }, + "editcheck-dialog-action-no": "아니오", + "editcheck-dialog-action-yes": "예", + "editcheck-dialog-action-decline": "거부", + "editcheck-dialog-action-revise": "개정", + "editcheck-dialog-action-recheck": "다시 확인", + "editcheck-dialog-action-back": "뒤로", + "editcheck-dialog-action-submit": "제출", + "editcheck-dialog-addref-description": "독자들이 이 정보의 출처를 이해할 수 있도록 출처를 추가하세요.", "editcheck-dialog-addref-reject-question": "인용을 추가하지 않으신 이유는 무엇인가요?", "editcheck-dialog-addref-reject-description": "출처 인용이 누락된 이유를 다른 편집자들이 알 수 있도록 알려주세요.", "editcheck-dialog-addref-reject-irrelevant": "출처 인용과는 관련 없는 편집입니다", @@ -14,6 +24,26 @@ "editcheck-dialog-addref-reject-other": "그 외", "editcheck-dialog-addref-success-notify": "인용 추가해주셔서 감사합니다!", "editcheck-dialog-addref-title": "인용 추가", + "editcheck-dialog-title": "게시하기 전에", + "editcheck-copyvio-title": "붙여넣은 내용", + "editcheck-copyvio-prompt": "이 글을 직접 쓰셨나요?", + "editcheck-copyvio-action-keep": "네, 유지해 주세요", + "editcheck-copyvio-action-remove": "아니요, 제거해 주세요", + "editcheck-copyvio-keep-description": "붙여넣은 텍스트를 유지하려는 이유를 이 문서의 다른 편집자들이 이해할 수 있도록 설명해 주세요.", + "editcheck-copyvio-keep-wrote": "이 내용은 제가 직접 작성했으며 다른 곳에는 게시되지 않았습니다", + "editcheck-copyvio-keep-permission": "이 내용은 자유 라이선스입니다", + "editcheck-copyvio-keep-other": "위의 어느 것도 해당되지 않습니다", + "editcheck-copyvio-keep-notify": "붙여넣은 텍스트를 유지해야 하는 이유를 알려주셔서 감사합니다!", + "editcheck-copyvio-remove-notify": "지식을 누구나 자유롭게 이용할 수 있도록 도와주셔서 감사합니다!", + "editcheck-tone-title": "어조를 수정하시겠습니까?", + "editcheck-tone-title-acted": "어조 수정", + "editcheck-tone-description-acted": "칭찬하는 표현, 폄하하는 표현, 모호한 표현, 진부한 표현, 또는 특정 관점을 지지하는 표현에 주의하세요.", + "editcheck-tone-reject-appropriate": "어조가 적절합니다", + "editcheck-tone-reject-uncertain": "어조를 어떻게 바꿔야 할지 잘 모르겠어요", + "editcheck-tone-reject-other": "기타", + "editcheck-tone-thank": "어조을 고려해 주셔서 감사합니다!", + "editcheck-reject-description": "다른 편집자들은 당신이 왜 그런 선택을 했는지 아는 것을 중요하게 생각할 것입니다.", + "editcheck-review-title": "변경사항 검토", "tag-editcheck-reference-decline-common-knowledge": "편집 검사(출처)를 거부함 (상식)", "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck 출처가 상식을 이유로 거부되었습니다", "tag-editcheck-reference-decline-irrelevant": "편집 검사(출처)를 거부함 (부적절)", diff --git a/editcheck/i18n/kum.json b/editcheck/i18n/kum.json new file mode 100644 index 0000000000..468e1522ab --- /dev/null +++ b/editcheck/i18n/kum.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "Кумнац" + ] + } +} diff --git a/editcheck/i18n/lb.json b/editcheck/i18n/lb.json index ec43be2c3e..23d2fd3488 100644 --- a/editcheck/i18n/lb.json +++ b/editcheck/i18n/lb.json @@ -1,9 +1,54 @@ { "@metadata": { "authors": [ - "Volvox" + "Volvox", + "GilPe", + "Robby", + "Ed g2s" ] }, - "editcheck-dialog-action-no": "Neen", - "editcheck-dialog-action-yes": "Jo" + "editcheck-dialog-action-no": "Nee", + "editcheck-dialog-action-yes": "Jo", + "editcheck-dialog-action-decline": "Ofleenen", + "editcheck-dialog-action-revise": "Iwwerschaffen", + "editcheck-dialog-action-recheck": "Nach eng Kéier iwwerpréiwen", + "editcheck-dialog-action-back": "Zeréck", + "editcheck-dialog-action-submit": "Ofschécken", + "editcheck-dialog-addref-description": "Hëlleft de Lieser ze verstoen, wou dës Informatioun hierkënnt, andeems Dir eng Referenz derbäisetzt.", + "editcheck-dialog-addref-reject-question": "Firwat setzt Dir keng Referenz derbäi?", + "editcheck-dialog-addref-reject-irrelevant": "Menger Meenung no si Referenze fir d'Ännerung, déi ech maachen, net relevant", + "editcheck-dialog-addref-reject-common-knowledge": "D'Informatiounen, déi ech derbäisetzen, sinn allgemeng bekannt", + "editcheck-dialog-addref-reject-uncertain": "Ech si mer net sécher, wat fir eng Referenz ech derbäisetze sollt", + "editcheck-dialog-addref-reject-other": "Anerer", + "editcheck-dialog-addref-success-notify": "Merci, datt Dir eng Referenz derbäigesat hutt!", + "editcheck-dialog-addref-title": "Eng Referenz derbäisetzen", + "editcheck-dialog-title": "Virum Verëffentlechen", + "editcheck-copyvio-title": "Agepechten Inhalt", + "editcheck-copyvio-prompt": "Hutt Dir dësen Text geschriwwen?", + "editcheck-copyvio-action-keep": "Jo, Text halen", + "editcheck-copyvio-action-remove": "Nee, Text ewechhuelen", + "editcheck-copyvio-keep-description": "Hëlleft aneren Editeure vun dësem Artikel Äre Grond, fir den agepechten Text ze halen, ze verstoen.", + "editcheck-copyvio-keep-wrote": "Ech hunn dësen Inhalt geschriwwen an en ass soss néierens verëffentlecht", + "editcheck-copyvio-keep-permission": "Dësen Inhalt ass fräi lizenzéiert", + "editcheck-copyvio-keep-other": "Näischt vun deem uewe genannte passt", + "editcheck-copyvio-keep-notify": "Merci, datt Dir Äre Grond, fir den agepechten Text ze halen, gedeelt hutt", + "editcheck-copyvio-remove-notify": "Merci, datt Dir hëlleft, fir Wësse fräi verfügbar ze halen!", + "editcheck-tone-title": "Tounfall iwwerschaffen?", + "editcheck-tone-description": "Aner Benotzer iwwerschaffen dës Zort vu Ausdrocksweis dacks, well se fannen, datt den Tounfall net equilibréiert ass. [$1 Méi gewuer ginn]", + "editcheck-tone-title-acted": "Tounfall iwwerschaffen", + "editcheck-tone-description-acted": "Passt op Ausdréck op, déi schmeechleresch, offälleg, vag oder klischeehaft sinn oder e bestëmmte Standpunkt anhuelen.", + "editcheck-tone-reject-appropriate": "Den Tounfall ass passend", + "editcheck-tone-reject-uncertain": "Ech si mer net sécher, wéi ech den Tounfall iwwerschaffe soll", + "editcheck-tone-reject-other": "Anerer", + "editcheck-tone-thank": "Merci, datt Dir den Tounfall iwwerpréift hutt!", + "editcheck-reject-description": "Aner Editeure géifen et appreciéiere fir gewuer ze ginn, firwat Dir dëse Choix gemaach hutt.", + "editcheck-review-title": "Ännerungen nokucken", + "tag-editcheck-reference-decline-common-knowledge": "Ännerungsiwwerpréiwung (Referenzen) ofgeleent (Allgemengwëssen)", + "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck: Referenz ofgeleent, well Allgemengwëssen", + "tag-editcheck-reference-decline-irrelevant": "Ännerungsiwwerpréiwung (Referenzen) ofgeleent (irrelevant)", + "tag-editcheck-reference-decline-irrelevant-description": "EditCheck: Referenz ofgeleent, well irrelevant", + "tag-editcheck-reference-decline-other": "Ännerungsiwwerpréiwung (Referenzen) ofgeleent (anerer)", + "tag-editcheck-reference-decline-other-description": "EditCheck: Referenz aus engem net opgefouerte Grond ofgeleent", + "tag-editcheck-reference-decline-uncertain": "Ännerungsiwwerpréiwung (Referenzen) ofgeleent (onsécher)", + "tag-editcheck-reference-decline-uncertain-description": "EditCheck: Referenz ofgeleent, well onsécher" } diff --git a/editcheck/i18n/lij.json b/editcheck/i18n/lij.json new file mode 100644 index 0000000000..b22001fa7d --- /dev/null +++ b/editcheck/i18n/lij.json @@ -0,0 +1,53 @@ +{ + "@metadata": { + "authors": [ + "N. Longo" + ] + }, + "editcheck-dialog-action-no": "No", + "editcheck-dialog-action-yes": "Scì", + "editcheck-dialog-action-decline": "Refûa", + "editcheck-dialog-action-revise": "Védde tórna", + "editcheck-dialog-action-recheck": "Contròlla tórna", + "editcheck-dialog-action-back": "Inderê", + "editcheck-dialog-action-submit": "Mànda", + "editcheck-dialog-addref-description": "Agiùtta i letoî a capî da dónde vêgnan st'informaçioìn chi azonzéndoghe 'na nòtta.", + "editcheck-dialog-addref-reject-question": "Perché ti no gh'azónzi 'na nòtta?", + "editcheck-dialog-addref-reject-description": "Di âtri editoî dexidiéivan savéine de ciù in sciâ tò decixón de no métte de nòtte.", + "editcheck-dialog-addref-reject-irrelevant": "No créddo che de nòtte séggian inportànti pe-a modìfica che véuggio fâ.", + "editcheck-dialog-addref-reject-common-knowledge": "E informaçioìn che són aprêuvo a-azónze són bén bén sconpartîe", + "editcheck-dialog-addref-reject-uncertain": "No són segûo de che nòtta azónzighe", + "editcheck-dialog-addref-reject-other": "Âtro", + "editcheck-dialog-addref-success-notify": "Gràçie p'avéighe azónto 'na nòtta!", + "editcheck-dialog-addref-title": "Azónzi 'na çitaçión", + "editcheck-dialog-title": "Prìmma de pubricâ", + "editcheck-copyvio-title": "Contegnûo inpastetòu", + "editcheck-copyvio-description": "Cómme régola generâle, no copiâ do tèsto da de âtre vivàgne. De sòlito st'açión chi a l'é tànto 'na violaçión do dirìtto d'outô che 'n plâgio.", + "editcheck-copyvio-action-keep": "Scì, tégnilo", + "editcheck-copyvio-action-remove": "No, lévilo", + "editcheck-copyvio-keep-description": "Di âtri editoî poriéivan aprexâ de savéine de ciù in scê tò raxoìn pe conservâ sto tèsto copiòu chi.", + "editcheck-copyvio-keep-wrote": "Mi ò scrîto sto contegnûo chi e no l'é pubricòu da de âtre pàrte", + "editcheck-copyvio-keep-permission": "Mi ò o permìsso pe dêuviâ tórna sto contegnûo chi", + "editcheck-copyvio-keep-other": "Âtro", + "editcheck-copyvio-keep-notify": "Gràçie p'avéi sconpartîo a tò raxón pe tegnî o tèsto incolòu!", + "editcheck-copyvio-remove-notify": "Gràçie p'avéi levòu sto tèsto chi!", + "editcheck-tone-title": "Rivédde o tón?", + "editcheck-tone-description": "Di âtri uténti revixónn-an de spesso sta ménn-a de formolaçión, da-o tón ch'o no l'é neotrâle. [$1 Savéine de ciù]", + "editcheck-tone-footer": "Identificòu pe mêzo de 'n [$1 modéllo BERT].", + "editcheck-tone-title-acted": "Rivedéndo o tón", + "editcheck-tone-description-acted": "Fæ atençión a de esprescioìn che són afascinànti, desprexànti, vâghe, cliché ò che sostêgnan 'n çèrto pónto de vìsta.", + "editcheck-tone-reject-appropriate": "O tón o l'é apropiòu", + "editcheck-tone-reject-uncertain": "No són segûo de cómme rivédde o tón", + "editcheck-tone-reject-other": "Âtro", + "editcheck-tone-thank": "Gràçie p'avéi revìsto o tón!", + "editcheck-reject-description": "Di âtri editoî dexidiéivan savéine de ciù in sciô perché t'æ fæto sta çèrnia chi.", + "editcheck-review-title": "Rivéddi modìfiche", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check (nòtte) refuòu (conoscénsa sconpartîa)", + "tag-editcheck-reference-decline-common-knowledge-description": "O riferiménto a l'EditCheck o l'é stæto refuòu cómme conoscénsa sconpartîa", + "tag-editcheck-reference-decline-irrelevant": "Edit Check (nòtte) refuòu (sénsa d'inportànsa)", + "tag-editcheck-reference-decline-irrelevant-description": "O riferiménto a l'EditCheck o l'é stæto refuòu cómme sénsa d'inportànsa", + "tag-editcheck-reference-decline-other": "Edit Check (nòtte) refuòu (âtro)", + "tag-editcheck-reference-decline-other-description": "O riferiménto a l'EditCheck o l'é stæto refuòu pe 'na raxón no indicâ", + "tag-editcheck-reference-decline-uncertain": "Edit Check (nòtte) refuòu (no segûo)", + "tag-editcheck-reference-decline-uncertain-description": "O riferiménto a l'EditCheck o l'é stæto refuòu cómme no segûo" +} diff --git a/editcheck/i18n/lt.json b/editcheck/i18n/lt.json new file mode 100644 index 0000000000..2f1e54c653 --- /dev/null +++ b/editcheck/i18n/lt.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Homo" + ] + }, + "tag-editcheck-reference-decline-common-knowledge": "Redagavimo patikra (išnašos) atmesta (bendrosios žinios)" +} diff --git a/editcheck/i18n/lv.json b/editcheck/i18n/lv.json index 275e674843..f09e18f9bf 100644 --- a/editcheck/i18n/lv.json +++ b/editcheck/i18n/lv.json @@ -6,6 +6,9 @@ }, "editcheck-dialog-action-no": "Nē", "editcheck-dialog-action-yes": "Jā", + "editcheck-dialog-action-recheck": "Pārbaudīt vēlreiz", + "editcheck-dialog-action-back": "Atpakaļ", + "editcheck-dialog-action-submit": "Iesniegt", "editcheck-dialog-addref-description": "Palīdzi lasītājiem saprast, no kurienes nāk šī informācija, pievienojot atsauci.", "editcheck-dialog-addref-reject-question": "Kāpēc tu nepievienoji atsauci?", "editcheck-dialog-addref-reject-description": "Citi redaktori vēlētos uzzināt vairāk par tavu lēmumu noraidīt atsauci.", @@ -15,5 +18,10 @@ "editcheck-dialog-addref-reject-other": "Cits", "editcheck-dialog-addref-success-notify": "Paldies, ka pievienoji atsauci!", "editcheck-dialog-addref-title": "Pievienot atsauci", - "editcheck-dialog-title": "Pirms publicēšanas" + "editcheck-dialog-title": "Pirms publicēšanas", + "editcheck-copyvio-title": "Iekopētais saturs", + "editcheck-copyvio-prompt": "Vai tu uzrakstīji šo tekstu?", + "editcheck-copyvio-action-keep": "Jā, paturēt to", + "editcheck-copyvio-action-remove": "Nē, noņemt to", + "editcheck-review-title": "Pārskatīt izmaiņas" } diff --git a/editcheck/i18n/mk.json b/editcheck/i18n/mk.json index ecdb64334c..275d303151 100644 --- a/editcheck/i18n/mk.json +++ b/editcheck/i18n/mk.json @@ -6,6 +6,11 @@ }, "editcheck-dialog-action-no": "Не", "editcheck-dialog-action-yes": "Да", + "editcheck-dialog-action-decline": "Одбиј", + "editcheck-dialog-action-revise": "Преработи", + "editcheck-dialog-action-recheck": "Провери повторно", + "editcheck-dialog-action-back": "Назад", + "editcheck-dialog-action-submit": "Поднеси", "editcheck-dialog-addref-description": "Помогнете им на читателите да разберат од каде доаѓаат информациите ставајќи навод.", "editcheck-dialog-addref-reject-question": "Зошто не додавате навод?", "editcheck-dialog-addref-reject-description": "Другите уредници би ценеле ако дознаат зошто сте решиле да не ставите навод.", @@ -16,6 +21,28 @@ "editcheck-dialog-addref-success-notify": "Ви благодариме што ставивте навод!", "editcheck-dialog-addref-title": "Додај навод", "editcheck-dialog-title": "Пред да објавите", + "editcheck-copyvio-title": "Налепена содржина", + "editcheck-copyvio-description": "Избегнувајте да копирате текстови од други извори, дури и ако се пресрочени или цитирани. Ова може да се смета за [$1 авторскоправен прекршок или плагијат] и може да доведе до остранување на вашата содржина или блокирање на вашата сметка.", + "editcheck-copyvio-prompt": "Дали вие го имате напишано текстов?", + "editcheck-copyvio-action-keep": "Да, задржи", + "editcheck-copyvio-action-remove": "Не, отстрани", + "editcheck-copyvio-keep-description": "Помогнете им на другите уредници на статијава да разберат зошто го задржувате овој прекопиран текст.", + "editcheck-copyvio-keep-wrote": "Јас ја напишав оваа соржина, и истата не е објавена на друго место", + "editcheck-copyvio-keep-permission": "Содржинава е слободно лиценцирана", + "editcheck-copyvio-keep-other": "Ниедно од горенаведените", + "editcheck-copyvio-keep-notify": "Ви благодариме што ја споделивте причината за задржување на прекопираниот текст.", + "editcheck-copyvio-remove-notify": "Ви благодариме за придонесот кон слободното знаење!", + "editcheck-tone-title": "Да се преработи тонот?", + "editcheck-tone-description": "Други корисници често преработуваат вакви срочувања велејќи дека тонот не е урамнотежен. [$1 Дознајте повеќе]", + "editcheck-tone-footer": "Утврдено користејќи [$1 BERT-модел]", + "editcheck-tone-title-acted": "Преработка на тонот", + "editcheck-tone-description-acted": "Внимавајте на изрази кои се ласкави, омаловажувачки, нејасни, клиширани или што се застапуваат за одредено гледиште.", + "editcheck-tone-reject-appropriate": "Тонот е соодветен.", + "editcheck-tone-reject-uncertain": "Не знам како да го преработам тонот", + "editcheck-tone-reject-other": "Друго", + "editcheck-tone-thank": "Ви благодариме што обративте внимание на тонот!", + "editcheck-reject-description": "Другите корисници би ценеле да дознаат зошто го направивте овој избор.", + "editcheck-review-title": "Прегледај промени", "tag-editcheck-reference-decline-common-knowledge": "Проверката на уредувањето (наводи) е одбиена (општопознато)", "tag-editcheck-reference-decline-common-knowledge-description": "Наводот со EditCheck е одбиен како општопознат", "tag-editcheck-reference-decline-irrelevant": "Проверката на уредувањето (наводи) е одбиена (нерелевантно)", diff --git a/editcheck/i18n/ms.json b/editcheck/i18n/ms.json index 24a541c2a5..7c745617da 100644 --- a/editcheck/i18n/ms.json +++ b/editcheck/i18n/ms.json @@ -1,11 +1,18 @@ { "@metadata": { "authors": [ - "Hakimi97" + "Hakimi97", + "Tofeiku", + "Ed g2s" ] }, "editcheck-dialog-action-no": "Tidak", "editcheck-dialog-action-yes": "Ya", + "editcheck-dialog-action-decline": "Tolak", + "editcheck-dialog-action-revise": "Semak semula", + "editcheck-dialog-action-recheck": "Semak semula", + "editcheck-dialog-action-back": "Kembali", + "editcheck-dialog-action-submit": "Hantar", "editcheck-dialog-addref-description": "Bantu pembaca memahami dari mana maklumat ini datang dengan menambahkan petikan.", "editcheck-dialog-addref-reject-question": "Kenapa anda tidak menambah sumber rujukan?", "editcheck-dialog-addref-reject-description": "Penyunting akan menilai dan mengetahui tentang keputusan anda untuk menggugurkan rujukan dengan lebih lanjut.", @@ -16,12 +23,34 @@ "editcheck-dialog-addref-success-notify": "Terima kasih kerana menambah sumber rujukan!", "editcheck-dialog-addref-title": "Tambah sumber rujukan", "editcheck-dialog-title": "Sebelum diterbitkan", + "editcheck-copyvio-title": "Kandungan yang ditampal", + "editcheck-copyvio-description": "Satu peraturan umum yang perlu diikut ialah: jangan salin teks daripada sumber lain. Penyalinan teks bulat-bulat biasanya melanggar hak cipta dan merupakan suatu aktiviti plagiarisme.", + "editcheck-copyvio-prompt": "Adakah anda yang menulis teks ini?", + "editcheck-copyvio-action-keep": "Ya, simpanlah", + "editcheck-copyvio-action-remove": "Tidak, buangnya", + "editcheck-copyvio-keep-description": "Sila bantu para penyunting rencana ini yang lain untuk memahami sebab anda menyimpan teks yang ditampal.", + "editcheck-copyvio-keep-wrote": "Saya menulis kandungan ini dan ia tidak diterbitkan di tempat lain", + "editcheck-copyvio-keep-permission": "Kandungan ini dilesenkan secara bebas", + "editcheck-copyvio-keep-other": "Tiada satu pun daripada perkara di atas terpakai", + "editcheck-copyvio-keep-notify": "Terima kasih kerana berkongsi sebab anda menyimpan teks yang ditampal!", + "editcheck-copyvio-remove-notify": "Terima kasih kerana membantu memastikan ilmu pengetahuan tersedia secara percuma!", + "editcheck-tone-title": "Semak Nada?", + "editcheck-tone-description": "Pengguna lain seringkali membetulkan olahan kata seperti ini, dengan menyatakan bahawa nada ayat yang digunakan tidak seimbang. [$1 Ketahui lebih lanjut]", + "editcheck-tone-footer": "Dikenal pasti menggunakan [$1 model BERT]", + "editcheck-tone-title-acted": "Menyemak Nada", + "editcheck-tone-description-acted": "Perhatikan ungkapan kata yang bersifat mengampu, memperkecil, kabur, klise atau terlalu menyokong sudut pandangan tertentu.", + "editcheck-tone-reject-appropriate": "Nada suntingan ini sesuai", + "editcheck-tone-reject-uncertain": "Saya tidak pasti bagaimana untuk semak nada pada sesuatu suntingan", + "editcheck-tone-reject-other": "Lain-lain", + "editcheck-tone-thank": "Terima kasih kerana mengambil kira berkenaan nada!", + "editcheck-reject-description": "Penyunting lain akan belajar dan menilai mengapa anda melakukan pilihan sedemikian", + "editcheck-review-title": "Semak perubahan", "tag-editcheck-reference-decline-common-knowledge": "Semak Suntingan (rujukan) ditolak (pengetahuan umum)", - "tag-editcheck-reference-decline-common-knowledge-description": "Sumber rujukan SemakSuntingan ditolak kerana ia merupakan pengetahuan am", + "tag-editcheck-reference-decline-common-knowledge-description": "Rujukan SemakSuntingan ditolak kerana ia merupakan pengetahuan am", "tag-editcheck-reference-decline-irrelevant": "Semak Suntingan (rujukan) ditolak (tidak berkaitan)", "tag-editcheck-reference-decline-irrelevant-description": "Rujukan SemakSuntingan ditolak kerana tidak berkaitan", "tag-editcheck-reference-decline-other": "Semak Suntingan (rujukan) ditolak (sebab lain)", "tag-editcheck-reference-decline-other-description": "Rujukan SemakSuntingan ditolak disebabkan oleh sebab yang tidak dinyatakan", "tag-editcheck-reference-decline-uncertain": "Semak Suntingan (rujukan) ditolak (kurang kepastian)", - "tag-editcheck-reference-decline-uncertain-description": "SemakSuntingan rujukan ditolak kerana kurang pasti akan rujukan yang ingin ditambah" + "tag-editcheck-reference-decline-uncertain-description": "Rujukan SemakSuntingan ditolak kerana kurang pasti akan rujukan yang ingin ditambah" } diff --git a/editcheck/i18n/nb.json b/editcheck/i18n/nb.json index cc4830f61f..adde2e828c 100644 --- a/editcheck/i18n/nb.json +++ b/editcheck/i18n/nb.json @@ -7,6 +7,11 @@ }, "editcheck-dialog-action-no": "Nei", "editcheck-dialog-action-yes": "Ja", + "editcheck-dialog-action-decline": "Avvis", + "editcheck-dialog-action-revise": "Endre", + "editcheck-dialog-action-recheck": "Sjekk på nytt", + "editcheck-dialog-action-back": "Tilbake", + "editcheck-dialog-action-submit": "Send inn", "editcheck-dialog-addref-description": "Hjelp leserne med å forstå hvor denne informasjonen kommer fra ved å legge til en referanse.", "editcheck-dialog-addref-reject-question": "Hvorfor legger du ikke til en referanse?", "editcheck-dialog-addref-reject-description": "Andre bidragsytere vil sette pris på å lære mer om hvorfor du ikke legger til en referanse.", @@ -17,6 +22,28 @@ "editcheck-dialog-addref-success-notify": "Takk for at du la til en referanse!", "editcheck-dialog-addref-title": "Legg til en referanse", "editcheck-dialog-title": "Før publisering", + "editcheck-copyvio-title": "Innhold som er limt inn", + "editcheck-copyvio-description": "Unngå å kopiere tekst fra andre kilder, selv om du parafraserer eller siterer den. Dette kan anses som [$1 opphavsrettsbrudd eller plagiat], og kan føre til at innholdet blir fjernet eller kontoen din blir blokkert.", + "editcheck-copyvio-prompt": "Skrev du denne teksten?", + "editcheck-copyvio-action-keep": "Ja, behold den", + "editcheck-copyvio-action-remove": "Nei, fjern den", + "editcheck-copyvio-keep-description": "La andre bidragsytere forstå grunnen til at du beholder den innlimte teksten.", + "editcheck-copyvio-keep-wrote": "Jeg skrev dette innholdet og det er ikke publisert andre steder", + "editcheck-copyvio-keep-permission": "Dette innholdet er fritt lisensiert", + "editcheck-copyvio-keep-other": "Ingen av de ovennevnte årsakene gjelder", + "editcheck-copyvio-keep-notify": "Takk for at du delte grunnen din for å beholde den innlimte teksten!", + "editcheck-copyvio-remove-notify": "Takk for at du bidrar til å sørge for at kunnskap er fritt tilgjengelig!", + "editcheck-tone-title": "Endre tonen?", + "editcheck-tone-description": "Andre brukere endrer ofte ordbruk som dette, ettersom de opplever tonen som ubalansert. [$1 Les mer]", + "editcheck-tone-footer": "Identifisert med en [$1 BERT-modell]", + "editcheck-tone-title-acted": "Endrer tone", + "editcheck-tone-description-acted": "Vær obs på uttrykk som framstår som smigrende, nedsettende, vage, klisjéaktige eller som støtter et bestemt synspunkt.", + "editcheck-tone-reject-appropriate": "Tonen er passende", + "editcheck-tone-reject-uncertain": "Jeg vet ikke hvordan jeg skal endre tonen", + "editcheck-tone-reject-other": "Annet", + "editcheck-tone-thank": "Takk for at du reviderte tonen!", + "editcheck-reject-description": "Andre bidragsytere ville satt pris på å lære hvorfor du gjorde dette valget.", + "editcheck-review-title": "Gjennomgå endringer", "tag-editcheck-reference-decline-common-knowledge": "Redigeringssjekk (referanser) avvist (allmennkunnskap)", "tag-editcheck-reference-decline-common-knowledge-description": "Redigeringssjekk for referanser ble avvist som allmennkunnskap", "tag-editcheck-reference-decline-irrelevant": "Redigeringssjekk (referanser) avvist (irrelevant)", diff --git a/editcheck/i18n/ne.json b/editcheck/i18n/ne.json index d2b4afdd16..cdc2e82f3d 100644 --- a/editcheck/i18n/ne.json +++ b/editcheck/i18n/ne.json @@ -1,8 +1,39 @@ { "@metadata": { "authors": [ - "पर्वत सुबेदी" + "पर्वत सुबेदी", + "बडा काजी" ] }, + "editcheck-dialog-action-no": "होइन", + "editcheck-dialog-action-yes": "हो", + "editcheck-dialog-action-decline": "असहमत", + "editcheck-dialog-action-revise": "संशोधन गर्नुहोस्", + "editcheck-dialog-action-recheck": "पुन: जाँच गर्नुहोस्", + "editcheck-dialog-action-back": "पछाडि", + "editcheck-dialog-action-submit": "पेस गर्नुहोस्", + "editcheck-dialog-addref-description": "उद्धरण थपेर पाठकहरूलाई यो जानकारी कहाँबाट आउँदैछ भनेर बुझ्न मद्दत गर्नुहोस्।", + "editcheck-dialog-addref-reject-question": "तपाईँ किन उद्धरण थप्दै हुनुहुन्न?", + "editcheck-dialog-addref-reject-irrelevant": "मलाई लाग्दैन कि उद्धरणहरू मैले गरिरहेको परिवर्तनसँग सान्दर्भिक छन्।", + "editcheck-dialog-addref-reject-common-knowledge": "मैले थपिरहेको जानकारी व्यापक रूपमा परिचित छ।", + "editcheck-dialog-addref-reject-uncertain": "मलाई कुन उद्धरण थप्ने भन्ने कुरा निश्चित छैन।", + "editcheck-dialog-addref-reject-other": "अन्य", + "editcheck-dialog-addref-success-notify": "उद्धरण थप्नुभएकोमा धन्यवाद!", + "editcheck-dialog-addref-title": "सन्दर्भ थप्नुहोस्", + "editcheck-dialog-title": "प्रकाशन गर्नु अघि", + "editcheck-copyvio-prompt": "के तपाईंले यो पाठ लेख्नुभएको हो?", + "editcheck-copyvio-action-keep": "हो, राख्नुहोस्।", + "editcheck-copyvio-action-remove": "होइन, यसलाई हटाउनुहोस्", + "editcheck-copyvio-keep-description": "कृपया यस लेखका अन्य सम्पादकहरूलाई टाँसिएको पाठ राख्ने तपाईंको कारण बुझ्न मद्दत गर्नुहोस्।", + "editcheck-copyvio-keep-wrote": "यो सामग्री मैले लेखेको हुँ र यो अन्यत्र प्रकाशित भएको छैन।", + "editcheck-copyvio-keep-permission": "यो सामग्री नि:शुल्क इजाजतपत्र प्राप्त छ।", + "editcheck-copyvio-keep-other": "माथिका कुनै पनि लागू हुँदैनन्।", + "editcheck-copyvio-keep-notify": "टाँसिएको पाठ राख्नुको कारण साझा गर्नुभएकोमा धन्यवाद!", + "editcheck-copyvio-remove-notify": "ज्ञान निःशुल्क उपलब्ध गराउन मद्दत गर्नुभएकोमा धन्यवाद!", + "editcheck-tone-title": "स्वर संशोधन गर्ने?", + "editcheck-tone-title-acted": "स्वर परिमार्जन गर्दै", + "editcheck-tone-reject-appropriate": "स्वर उपयुक्त छ।", + "editcheck-tone-reject-other": "अन्य", + "editcheck-tone-thank": "स्वरलाई विचार गर्नुभएकोमा धन्यवाद!", "tag-editcheck-reference-decline-other": "सम्पादन जाँच गर्नुहोस् (सन्दर्भ) अस्वीकृत भयो (अन्य)" } diff --git a/editcheck/i18n/nl-informal.json b/editcheck/i18n/nl-informal.json index f5fe4b55b7..7bed4534b5 100644 --- a/editcheck/i18n/nl-informal.json +++ b/editcheck/i18n/nl-informal.json @@ -1,7 +1,8 @@ { "@metadata": { "authors": [ - "Jeroen N" + "Jeroen N", + "McDutchie" ] }, "editcheck-dialog-action-no": "Nee", diff --git a/editcheck/i18n/nl.json b/editcheck/i18n/nl.json index 6ed991db07..6b2992c9b5 100644 --- a/editcheck/i18n/nl.json +++ b/editcheck/i18n/nl.json @@ -1,13 +1,22 @@ { "@metadata": { "authors": [ + "ABPMAB", "Jeroen N", "Mainframe98", - "McDutchie" + "McDutchie", + "Siebrand", + "HanV", + "ItsNyoty" ] }, "editcheck-dialog-action-no": "Nee", "editcheck-dialog-action-yes": "Ja", + "editcheck-dialog-action-decline": "Afwijzen", + "editcheck-dialog-action-revise": "Herzien", + "editcheck-dialog-action-recheck": "Opnieuw controleren", + "editcheck-dialog-action-back": "Terug", + "editcheck-dialog-action-submit": "Indienen", "editcheck-dialog-addref-description": "Help lezers te begrijpen waar deze informatie vandaan komt door een referentie toe te voegen.", "editcheck-dialog-addref-reject-question": "Waarom voegt u geen referentie toe?", "editcheck-dialog-addref-reject-description": "Andere redacteuren willen graag weten waarom u het verzoek een referentie op te geven afwijst.", @@ -18,12 +27,34 @@ "editcheck-dialog-addref-success-notify": "Bedankt voor het toevoegen van een referentie!", "editcheck-dialog-addref-title": "Referentie toevoegen", "editcheck-dialog-title": "Voordat u dit publiceert", - "tag-editcheck-reference-decline-common-knowledge": "EditCheck (referenties) afgewezen (algemene kennis)", + "editcheck-copyvio-title": "Geplakte inhoud", + "editcheck-copyvio-description": "Kopieer geen tekst van andere bronnen, ook niet door de tekst te herformuleren of te citeren. Dit kan worden beschouwd als [$1 schending van het auteursrecht of plagiaat] en kan ertoe leiden dat uw tekst wordt verwijderd of uw account wordt geblokkeerd.", + "editcheck-copyvio-prompt": "Hebt u deze tekst zelf geschreven?", + "editcheck-copyvio-action-keep": "Ja, behouden", + "editcheck-copyvio-action-remove": "Nee, verwijderen", + "editcheck-copyvio-keep-description": "Help andere bewerkers van deze pagina te begrijpen waarom u de geplakte tekst behoudt.", + "editcheck-copyvio-keep-wrote": "Ik heb dit geschreven en het is nergens anders gepubliceerd", + "editcheck-copyvio-keep-permission": "Deze inhoud heeft een vrije licentie", + "editcheck-copyvio-keep-other": "Geen van bovenstaande is van toepassing", + "editcheck-copyvio-keep-notify": "Bedankt dat u uw reden voor het behouden van de geplakte tekst hebt aangegeven.", + "editcheck-copyvio-remove-notify": "Dank u wel voor uw hulp om kennis vrij beschikbaar te houden!", + "editcheck-tone-title": "Toon wijzigen?", + "editcheck-tone-description": "Andere gebruikers herzien dit soort formuleringen vaak omdat ze de toon onevenwichtig vinden. [$1 Meer informatie]", + "editcheck-tone-footer": "Geïdentificeerd met behulp van een [$1 BERT-model]", + "editcheck-tone-title-acted": "De toon herzien", + "editcheck-tone-description-acted": "Let op uitingen die vleiend, denigrerend, vaag of clichématig zijn, of een bepaald standpunt innemen.", + "editcheck-tone-reject-appropriate": "De toon is passend", + "editcheck-tone-reject-uncertain": "Ik weet niet goed hoe ik de toon moet aanpassen", + "editcheck-tone-reject-other": "Overige", + "editcheck-tone-thank": "Bedankt dat u rekening hebt gehouden met de toon!", + "editcheck-reject-description": "Andere bewerkers willen graag weten waarom u deze keuze hebt gemaakt.", + "editcheck-review-title": "Wijzigingen controleren", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check (referenties) afgewezen (algemene kennis)", "tag-editcheck-reference-decline-common-knowledge-description": "De EditCheck-referentie is afgewezen als algemeen bekend", - "tag-editcheck-reference-decline-irrelevant": "Edit Check (referenties) afgewezen (irrelevant)", + "tag-editcheck-reference-decline-irrelevant": "Edit Check (referenties) afgewezen (niet relevant)", "tag-editcheck-reference-decline-irrelevant-description": "De EditCheck-referentie is afgewezen omdat deze niet relevant is", - "tag-editcheck-reference-decline-other": "EditCheck (referenties) geweigerd (overig)", + "tag-editcheck-reference-decline-other": "Edit Check (referenties) afgewezen (overig)", "tag-editcheck-reference-decline-other-description": "De EditCheck-referentie is geweigerd om een overige reden", - "tag-editcheck-reference-decline-uncertain": "EditCheck (referenties) geweigerd (onzeker)", + "tag-editcheck-reference-decline-uncertain": "Edit Check (referenties) afgewezen (twijfel)", "tag-editcheck-reference-decline-uncertain-description": "De EditCheck-referentie is afgewezen als onzeker" } diff --git a/editcheck/i18n/nn.json b/editcheck/i18n/nn.json index 8e3332e8cf..99f63fcee8 100644 --- a/editcheck/i18n/nn.json +++ b/editcheck/i18n/nn.json @@ -7,5 +7,7 @@ "editcheck-dialog-addref-reject-common-knowledge": "Informasjonen eg legg til er ålmennkunnskap", "tag-editcheck-reference-decline-common-knowledge": "Endringssjekk (referansar) avvist (ålmennkunnskap)", "tag-editcheck-reference-decline-common-knowledge-description": "Endringssjekk for referansar vart avvist som ålmennkunnskap", - "tag-editcheck-reference-decline-other": "Endringssjekk (referansar) avvist (anna)" + "tag-editcheck-reference-decline-irrelevant": "Endringssjekk (referansar) avvist (irrelevant)", + "tag-editcheck-reference-decline-other": "Endringssjekk (referansar) avvist (anna)", + "tag-editcheck-reference-decline-uncertain": "Endringssjekk (referansar) avvist (uviss)" } diff --git a/editcheck/i18n/pa.json b/editcheck/i18n/pa.json new file mode 100644 index 0000000000..30fcf666ab --- /dev/null +++ b/editcheck/i18n/pa.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Cabal" + ] + }, + "editcheck-review-title": "ਤਬਦੀਲੀਆਂ ਪਰਖੋ" +} diff --git a/editcheck/i18n/pl.json b/editcheck/i18n/pl.json index 6a54c92c2d..6c968afdb8 100644 --- a/editcheck/i18n/pl.json +++ b/editcheck/i18n/pl.json @@ -1,14 +1,21 @@ { "@metadata": { "authors": [ + "IOIOI", "Msz2001", "Rail", "Tufor2", - "Woytecr" + "Woytecr", + "MarMi wiki" ] }, "editcheck-dialog-action-no": "Nie", "editcheck-dialog-action-yes": "Tak", + "editcheck-dialog-action-decline": "Odrzuć", + "editcheck-dialog-action-revise": "Popraw", + "editcheck-dialog-action-recheck": "Sprawdź ponownie", + "editcheck-dialog-action-back": "Cofnij", + "editcheck-dialog-action-submit": "Wyślij", "editcheck-dialog-addref-description": "Pomóż czytelnikom, dodając przypis, mówiący skąd pochodzą te informacje.", "editcheck-dialog-addref-reject-question": "Dlaczego nie dodajesz przypisu?", "editcheck-dialog-addref-reject-description": "Inni edytorzy docenią informację o tym, dlaczego decydujesz się nie dodawać przypisu.", @@ -19,6 +26,26 @@ "editcheck-dialog-addref-success-notify": "Dziękujemy za dodanie przypisu!", "editcheck-dialog-addref-title": "Dodaj przypis", "editcheck-dialog-title": "Przed publikacją", + "editcheck-copyvio-title": "Wklejona zawartość", + "editcheck-copyvio-description": "Prosimy unikać kopiowania tekstu z innych źródeł, nawet jeśli jest przeformułowany lub cytowany. Może to zostać uznane za [$1 naruszenie praw autorskich lub plagiat] i może skutkować usunięciem treści lub zablokowaniem konta.", + "editcheck-copyvio-prompt": "Czy to Ty {{GENDER:|napisałeś|napisałaś|napisałeś(-aś)}} ten tekst?", + "editcheck-copyvio-action-keep": "Tak, zachowaj to", + "editcheck-copyvio-action-remove": "Nie, usuń to", + "editcheck-copyvio-keep-description": "Pomóż innym redaktorom tego artykułu zrozumieć, dlaczego chcesz zachować wklejony tekst.", + "editcheck-copyvio-keep-wrote": "Napisałem tę treść i nie jest ona nigdzie indziej publikowana", + "editcheck-copyvio-keep-permission": "Ta treść jest objęta wolną licencją", + "editcheck-copyvio-keep-other": "Żadne z powyższych nie ma zastosowania", + "editcheck-copyvio-keep-notify": "Dziękujemy za podanie powodu, dla którego zachowałeś wklejony tekst!", + "editcheck-copyvio-remove-notify": "Dziękujemy za pomoc w utrzymaniu wolnego dostępu do wiedzy!", + "editcheck-tone-title": "Brzmienie do poprawy?", + "editcheck-tone-title-acted": "Zmiana tonu", + "editcheck-tone-description-acted": "Zwróć uwagę na wyrażenia pochlebne, lekceważące, niejasne, banalne lub popierające określony punkt widzenia.", + "editcheck-tone-reject-appropriate": "Ton jest odpowiedni", + "editcheck-tone-reject-uncertain": "Nie wiem jak mogę poprawić brzmienie", + "editcheck-tone-reject-other": "Inny", + "editcheck-tone-thank": "Dziękujemy za przyjrzenie się brzmieniu!", + "editcheck-reject-description": "Inni redaktorzy chcieliby dowiedzieć się, dlaczego dokonałeś takiego wyboru.", + "editcheck-review-title": "Przejrzyj zmiany", "tag-editcheck-reference-decline-common-knowledge": "Automatyczny pomocnik (przypisy): odrzucono (wiedza powszechna)", "tag-editcheck-reference-decline-common-knowledge-description": "Automatyczny pomocnik: użytkownik odrzucił sugestię dodania przypisu, ponieważ uznał informację za wiedzę powszechną", "tag-editcheck-reference-decline-irrelevant": "Automatyczny pomocnik (przypisy): odrzucono (nieistotne)", diff --git a/editcheck/i18n/ps.json b/editcheck/i18n/ps.json new file mode 100644 index 0000000000..2a53a97989 --- /dev/null +++ b/editcheck/i18n/ps.json @@ -0,0 +1,53 @@ +{ + "@metadata": { + "authors": [ + "شاه زمان پټان" + ] + }, + "editcheck-dialog-action-no": "نه", + "editcheck-dialog-action-yes": "هو", + "editcheck-dialog-action-decline": "ناگاره‌شوی", + "editcheck-dialog-action-revise": "بیا کتنه", + "editcheck-dialog-action-recheck": "بياځلي‌سم‌کتنه", + "editcheck-dialog-action-back": "پر شا کېدل", + "editcheck-dialog-action-submit": "سپارل", + "editcheck-dialog-addref-description": "د اخځ په ورگډولو له لوستونکو سره مرسته وکړئ چې پوه شي چې دا مالومات له کوم ځايه راغلې دي.", + "editcheck-dialog-addref-reject-question": "تاسو ولې اخځ نه ورگډوئ؟", + "editcheck-dialog-addref-reject-irrelevant": "زما په اند چې اخځونه د هغه بدلون سره تړاو نه لري چې زه يې کوم.", + "editcheck-dialog-addref-reject-common-knowledge": "هغه مالومات چې زه يې ورگډوم په پراخه کچه پېژندل شوې دي", + "editcheck-dialog-addref-reject-uncertain": "زه نه پوهېږم چې کوم اخځ ورگډ کړم", + "editcheck-dialog-addref-reject-other": "نور", + "editcheck-dialog-addref-success-notify": "د اخځ له ورگډولو مو مننه!", + "editcheck-dialog-addref-title": "اخځ ورگډول", + "editcheck-dialog-title": "له خپرولو دمخه", + "editcheck-copyvio-title": "لېښل‌شوې منځپانگه", + "editcheck-copyvio-description": "مهرباني وکړئ، له نورو سرچينو ليکنه مه رالمېسئ، ولو که بياتکرار شوې وي يا اخځ شوې هم وي. دا ښايي [$1 د لمېسې رښتې څخه سرغړونه يا ادبي غلا] وگڼل شي او ښايي ستاسو منځپانگه لرې شي يا ستاسو گڼون باندې بنديز ولگېږي.", + "editcheck-copyvio-prompt": "دا ليک تا ليکلی؟", + "editcheck-copyvio-action-keep": "هو، ويې ساته", + "editcheck-copyvio-action-remove": "نه، لرې يې کړه", + "editcheck-copyvio-keep-description": "مهرباني وکړئ د دې ليکنې نورو سموونکو سره مرسته وکړئ چې ستاسو د لېښل شوي ليک د ساتلو په دليل پوه شي.", + "editcheck-copyvio-keep-wrote": "دا منځپانگه ما ليکلې ده او بل ځای نه ده خپره شوې", + "editcheck-copyvio-keep-permission": "دا منځپانگه وړيا منښتليک لري", + "editcheck-copyvio-keep-other": "له پورته څخه يو يې هم نه پلی کېږي", + "editcheck-copyvio-keep-notify": "مننه! چې د خپل لېښل شوي ليک د ساتلو دليل مو وليکه!", + "editcheck-copyvio-remove-notify": "د وړيا پوهې په چمتو کولو مو له مرستې مننه!", + "editcheck-tone-title": "د تگلارې بياکتنه وکړي؟", + "editcheck-tone-description": "نور کارنان ډېری وخت د دا ډول ويوکو بياکتنه کوي، او وايي چې وينگ يې نامتوازن دی. [$1 نور ولولئ]", + "editcheck-tone-footer": "د [$1 BERT نمونې] په کارولو سره پېژندل شوی", + "editcheck-tone-title-acted": "د وينگ بياکتنه", + "editcheck-tone-description-acted": "د هغه څرگندونو څخه ځان وساتئ چې چاپلوسي، سپکاوی کوونکي، گونگ، بې ادبه يا د يو ځانگړي اند ملاتړ کوونکې وي.", + "editcheck-tone-reject-appropriate": "وينگ مناسب دی", + "editcheck-tone-reject-uncertain": "زه ډاډه نه يم چې څنگه وينگ کره کړم", + "editcheck-tone-reject-other": "نور", + "editcheck-tone-thank": "د وينگ په پام‌ کې نيولو لپاره مننه!", + "editcheck-reject-description": "نور سمونگر به دې ته ارزښت ورکړي چې ولې تاسو دا خوښ کړی.", + "editcheck-review-title": "د بدلونونو بياکتنه", + "tag-editcheck-reference-decline-common-knowledge": "سمون سم‌کتنې (سرچينې) ناگاره شوې (ټولگړې پوهه)", + "tag-editcheck-reference-decline-common-knowledge-description": "سمون‌سم‌کتنې سرچينې د ټولگړې پوهې په توگه ناگاره شوې", + "tag-editcheck-reference-decline-irrelevant": "سمون سم‌کتنې (سرچينې) ناگاره شوې (بې تړواوه)", + "tag-editcheck-reference-decline-irrelevant-description": "سمون سم‌کتنې سرچينه د بې تړاوه په توگه ناگاره شوه", + "tag-editcheck-reference-decline-other": "سمون سم‌کتنې (سرچينې) ناگاره شوې (نور)", + "tag-editcheck-reference-decline-other-description": "د سمون‌سم‌کتنې سرچينه د ناليکل‌شوي لامل له امله ناگاره شوه", + "tag-editcheck-reference-decline-uncertain": "سمون سم‌کتن (سرچينې) ناگاره شوې (ناڅرگند)", + "tag-editcheck-reference-decline-uncertain-description": "سمون سم‌کتنې سرچينه د ناڅرگنده په توگه ناگاره شوه" +} diff --git a/editcheck/i18n/pt-br.json b/editcheck/i18n/pt-br.json index ccf080b648..b6fd8f006d 100644 --- a/editcheck/i18n/pt-br.json +++ b/editcheck/i18n/pt-br.json @@ -1,11 +1,20 @@ { "@metadata": { "authors": [ - "Fúlvio" + "BraunOBruno", + "Eduardoaddad", + "Fúlvio", + "Erol", + "Albertoleoncio" ] }, "editcheck-dialog-action-no": "Não", "editcheck-dialog-action-yes": "Sim", + "editcheck-dialog-action-decline": "Rejeitar", + "editcheck-dialog-action-revise": "Revisar", + "editcheck-dialog-action-recheck": "Reverificar", + "editcheck-dialog-action-back": "Voltar", + "editcheck-dialog-action-submit": "Enviar", "editcheck-dialog-addref-description": "Ajuda os leitores a entender de onde vêm essas informações ao adicionar uma citação.", "editcheck-dialog-addref-reject-question": "Por que você não está adicionando uma citação?", "editcheck-dialog-addref-reject-description": "Outros editores gostariam de saber mais sobre sua decisão de descartar a citação.", @@ -16,11 +25,33 @@ "editcheck-dialog-addref-success-notify": "Agradecemos por adicionar uma citação!", "editcheck-dialog-addref-title": "Adicionar uma citação", "editcheck-dialog-title": "Antes de publicar", - "tag-editcheck-reference-decline-common-knowledge": "Verificação de edição (referências) recusada (conhecimento comum)", + "editcheck-copyvio-title": "Conteúdo copiado", + "editcheck-copyvio-description": "Como regra geral, não copie textos de outras fontes. Isso geralmente constitui uma violação de direitos autorais e plágio.", + "editcheck-copyvio-prompt": "Você escreveu este texto?", + "editcheck-copyvio-action-keep": "Sim, manter", + "editcheck-copyvio-action-remove": "Não, remover", + "editcheck-copyvio-keep-description": "Por favor, ajude os outros editores deste artigo a entender o motivo pelo qual você deseja manter o texto colado.", + "editcheck-copyvio-keep-wrote": "Eu escrevi este conteúdo e ele não está publicado em nenhum outro lugar.", + "editcheck-copyvio-keep-permission": "Este conteúdo está licenciado livremente.", + "editcheck-copyvio-keep-other": "Nenhuma das opções acima se aplica", + "editcheck-copyvio-keep-notify": "Obrigado por compartilhar o motivo pelo qual você deseja manter o texto colado!", + "editcheck-copyvio-remove-notify": "Obrigado por ajudar a manter o conhecimento disponível gratuitamente!", + "editcheck-tone-title": "Revisar tom?", + "editcheck-tone-description": "Outros usuários frequentemente revisam esse tipo de redação, dizendo que o tom é desequilibrado. [$1 Saiba mais]", + "editcheck-tone-footer": "Identificado usando um [$1 modelo BERT]", + "editcheck-tone-title-acted": "Revisando tom", + "editcheck-tone-description-acted": "Fique atento a expressões que sejam lisonjeiras, depreciativas, vagas, clichês ou que endossem um ponto de vista específico.", + "editcheck-tone-reject-appropriate": "O tom é apropriado", + "editcheck-tone-reject-uncertain": "Eu não tenho a certeza de como revisar o tom", + "editcheck-tone-reject-other": "Outros", + "editcheck-tone-thank": "Obrigado por considerar o tom!", + "editcheck-reject-description": "Outros editores gostariam de saber por que você fez essa escolha.", + "editcheck-review-title": "Revisar mudanças", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check (referências) recusada (conhecimento comum)", "tag-editcheck-reference-decline-common-knowledge-description": "A referência do EditCheck foi recusada como conhecimento comum", - "tag-editcheck-reference-decline-irrelevant": "Verificação de edição (referências) recusada (irrelevante)", + "tag-editcheck-reference-decline-irrelevant": "Edit Check (referências) recusada (irrelevante)", "tag-editcheck-reference-decline-irrelevant-description": "A referência do EditCheck foi recusada como irrelevante", - "tag-editcheck-reference-decline-other": "Verificação de edição (referências) recusada (outro)", + "tag-editcheck-reference-decline-other": "Edit Check (referências) recusada (outro)", "tag-editcheck-reference-decline-other-description": "A referência do EditCheck foi recusada por um motivo não listado", "tag-editcheck-reference-decline-uncertain": "Edit Check (references) declined (incerto)", "tag-editcheck-reference-decline-uncertain-description": "A referência do EditCheck foi recusada por ser incerta" diff --git a/editcheck/i18n/pt.json b/editcheck/i18n/pt.json index 5f8c08aee6..c77c267602 100644 --- a/editcheck/i18n/pt.json +++ b/editcheck/i18n/pt.json @@ -1,11 +1,19 @@ { "@metadata": { "authors": [ - "Hamilton Abreu" + "BraunOBruno", + "Hamilton Abreu", + "Mansil alfalb", + "Albertoleoncio" ] }, "editcheck-dialog-action-no": "Não", "editcheck-dialog-action-yes": "Sim", + "editcheck-dialog-action-decline": "Rejeitar", + "editcheck-dialog-action-revise": "Rever", + "editcheck-dialog-action-recheck": "Reverificar", + "editcheck-dialog-action-back": "Anterior", + "editcheck-dialog-action-submit": "Submeter", "editcheck-dialog-addref-description": "Ajude os leitores a entender de onde vêm estas informações, adicionando uma citação.", "editcheck-dialog-addref-reject-question": "Porque não adicionou uma citação?", "editcheck-dialog-addref-reject-description": "Os outros editores gostariam de saber mais sobre a sua decisão de não adicionar uma citação.", @@ -16,6 +24,26 @@ "editcheck-dialog-addref-success-notify": "Obrigado por acrescentar uma citação!", "editcheck-dialog-addref-title": "Adicionar uma citação", "editcheck-dialog-title": "Antes de publicar", + "editcheck-copyvio-title": "Conteúdo copiado", + "editcheck-copyvio-prompt": "Você escreveu este texto?", + "editcheck-copyvio-action-keep": "Sim, manter", + "editcheck-copyvio-action-remove": "Não, remover", + "editcheck-copyvio-keep-description": "Por favor, ajude os outros editores deste artigo a entenderem o motivo pelo qual você deseja manter o texto colado.", + "editcheck-copyvio-keep-wrote": "Eu escrevi este conteúdo e ele não está publicado em nenhum outro lugar", + "editcheck-copyvio-keep-permission": "Este conteúdo esta licenciado livremente", + "editcheck-copyvio-keep-other": "Nenhuma das opções acima se aplica", + "editcheck-copyvio-keep-notify": "Obrigado por compartilhar o motivo pelo qual você manteve o texto colado!", + "editcheck-copyvio-remove-notify": "Obrigado por ajudar a manter o conhecimento livre!", + "editcheck-tone-title": "Revisar tom?", + "editcheck-tone-description": "Outros utilizadores costumam revisar esse tipo de redação, dizendo que o tom é desequilibrado. [$1 Saiba mais]", + "editcheck-tone-footer": "Identificado usando um [$1 modelo BERT]", + "editcheck-tone-title-acted": "Revisando tom", + "editcheck-tone-description-acted": "Fique atento a expressões que sejam lisonjeiras, depreciativas, vagas, clichês ou que endossem um ponto de vista específico.", + "editcheck-tone-reject-appropriate": "O tom é apropriado", + "editcheck-tone-reject-uncertain": "Eu não tenho a certeza de como rever o tom", + "editcheck-tone-reject-other": "Outros", + "editcheck-tone-thank": "Obrigado por considerar o tom!", + "editcheck-review-title": "Rever alterações", "tag-editcheck-reference-decline-common-knowledge": "Verificação de Edições (referências) recusada (conhecimento comum)", "tag-editcheck-reference-decline-common-knowledge-description": "A referência da Verificação de Edições foi recusada como conhecimento comum", "tag-editcheck-reference-decline-irrelevant": "Verificação de Edições (referências) recusada (irrelevante)", diff --git a/editcheck/i18n/qqq.json b/editcheck/i18n/qqq.json index 036425a2a1..55e273d98f 100644 --- a/editcheck/i18n/qqq.json +++ b/editcheck/i18n/qqq.json @@ -1,24 +1,55 @@ { "@metadata": { "authors": [ + "Amire80", "David Lynch", "Ed Sanders", "Stjn" ] }, "editcheck-config.json": "{{notranslate}}\n{{ignored}}\nJSON object configuring some edit check behavior.", - "editcheck-dialog-action-no": "Label for the no option when asking users if they want to add a citation.\n\n{{Identical|No}}", - "editcheck-dialog-action-yes": "Label for the no option when asking users if they want to add a citation.\n\n{{Identical|Yes}}", + "editcheck-dialog-action-no": "Label for the no option when asking users if they want to act on a check.\n\n{{Identical|No}}", + "editcheck-dialog-action-yes": "Label for the yes option when asking users if they want to act on a check.\n\n{{Identical|Yes}}", + "editcheck-dialog-action-decline": "Label for the decline option when asking users if they want to act on a check.\n\n{{Identical|Decline}}", + "editcheck-dialog-action-revise": "Label for the revise option when asking users if they want to act on a check.\n\n{{Identical|Revise}}", + "editcheck-dialog-action-recheck": "Label for the revise option when asking users if they want to re-run a check.", + "editcheck-dialog-action-back": "Label for the back option when asking users if they want to act on a check.\n\n{{Identical|Back}}", + "editcheck-dialog-action-submit": "Label for the submit option when asking users if they want to act on a check.\n\n{{Identical|Submit}}", "editcheck-dialog-addref-description": "Help text explaining why it is helpful to add a citation.", "editcheck-dialog-addref-reject-question": "Heading for form question asking why the user didn't add a citation.", "editcheck-dialog-addref-reject-description": "Help text for form question asking why the user didn't add a citation.", - "editcheck-dialog-addref-reject-irrelevant": "Answer option in repsonse to {{msg-mw|editcheck-dialog-addref-reject-question}}", + "editcheck-dialog-addref-reject-irrelevant": "Answer option in response to {{msg-mw|editcheck-dialog-addref-reject-question}}", "editcheck-dialog-addref-reject-common-knowledge": "Answer option in response to {{msg-mw|editcheck-dialog-addref-reject-question}}", "editcheck-dialog-addref-reject-uncertain": "Answer option in response to {{msg-mw|editcheck-dialog-addref-reject-question}}", "editcheck-dialog-addref-reject-other": "Answer option in response to {{msg-mw|editcheck-dialog-addref-reject-question}}", "editcheck-dialog-addref-success-notify": "Notification messages shown after a citation is added successfully.", "editcheck-dialog-addref-title": "Title for the edit check context asking user to add a citation.", "editcheck-dialog-title": "Title shown in the toolbar while the user is in the add a citation workflow.", + "editcheck-copyvio-title": "Title of pasted content / copyvio check", + "editcheck-copyvio-description": "Description of pasted content / copyvio check", + "editcheck-copyvio-descriptionlink": "{{notranslate}}\nLink to a policy page on copyright violation and plagiarism", + "editcheck-copyvio-prompt": "Prompt shown before pasted content / copyvio check questions, asking whether to keep or remove the content", + "editcheck-copyvio-action-keep": "Label for the keep option in response to {{msg-mw|editcheck-copyvio-prompt}}", + "editcheck-copyvio-action-remove": "Label for the remove option in response to {{msg-mw|editcheck-copyvio-prompt}}", + "editcheck-copyvio-keep-description": "Heading for form question asking why the user wants to keep pasted content", + "editcheck-copyvio-keep-wrote": "Answer option for pasted content check in response to {{msg-mw|editcheck-copyvio-keep-description}}", + "editcheck-copyvio-keep-permission": "Answer option for pasted content check in response to {{msg-mw|editcheck-copyvio-keep-description}}", + "editcheck-copyvio-keep-other": "Answer option for pasted content check in response to {{msg-mw|editcheck-copyvio-keep-description}}", + "editcheck-copyvio-keep-notify": "Notification message shown after pasted content is kept", + "editcheck-copyvio-remove-notify": "Notification message shown after pasted content is removed", + "editcheck-tone-title": "Title of tone check", + "editcheck-tone-description": "Help text explaining the tone check", + "editcheck-tone-descriptionlink": "{{notranslate}}\nLink to learn more about paste check, shown as part of {{msg-mw|editcheck-tone-description}", + "editcheck-tone-footer": "Footer explaining the tone check model", + "editcheck-tone-footerlink": "{{notranslate}}\nLink to learn more about the tone check model, shown as part of {{msg-mw|editcheck-tone-footer}}", + "editcheck-tone-title-acted": "Title of tone check after it has been acted on", + "editcheck-tone-description-acted": "Help text explaining the tone check after it has been acted on. \"Look out\" here means \"Be aware of\" or \"Be careful of\".", + "editcheck-tone-reject-appropriate": "Answer option for tone check in response to {{msg-mw|editcheck-reject-description}}", + "editcheck-tone-reject-uncertain": "Answer option for tone check in response to {{msg-mw|editcheck-reject-description}}", + "editcheck-tone-reject-other": "Answer option for tone check in response to {{msg-mw|editcheck-reject-description}}", + "editcheck-tone-thank": "Toast pop up to thank the user for considering the tone, whether they dismissed the check or revised the text", + "editcheck-reject-description": "Other editors would value learning more about your decision to skip this check.", + "editcheck-review-title": "Title shown in the sidebar / drawer while checks are displayed", "tag-editcheck-reference-decline-common-knowledge": "Short description of the editcheck-reference-decline-common-knowledge tag.\n\nTag added when a user declines to add a suggested reference and selects the \"common knowledge\" reason.\n\nSee also:\n* {{msg-mw|editcheck-dialog-addref-reject-common-knowledge}}", "tag-editcheck-reference-decline-common-knowledge-description": "Long description of the editcheck-reference-decline-common-knowledge tag.\n\nTag added when a user declines to add a suggested reference and selects the \"common knowledge\" reason.\n\nSee also:\n* {{msg-mw|editcheck-dialog-addref-reject-common-knowledge}}", "tag-editcheck-reference-decline-irrelevant": "Short description of the editcheck-reference-decline-irrelevant tag.\n\nTag added when a user declines to add a suggested reference and selects the \"irrelevant\" reason.\n\nSee also:\n* {{msg-mw|editcheck-dialog-addref-reject-irrelevant}}", diff --git a/editcheck/i18n/ro.json b/editcheck/i18n/ro.json index 02c88d5918..fbf579168e 100644 --- a/editcheck/i18n/ro.json +++ b/editcheck/i18n/ro.json @@ -9,6 +9,11 @@ }, "editcheck-dialog-action-no": "Nu", "editcheck-dialog-action-yes": "Da", + "editcheck-dialog-action-decline": "Refuză", + "editcheck-dialog-action-revise": "Revizuiește", + "editcheck-dialog-action-recheck": "Verifică din nou", + "editcheck-dialog-action-back": "Înapoi", + "editcheck-dialog-action-submit": "Trimite", "editcheck-dialog-addref-description": "Ajutați cititorii să înțeleagă de unde provin aceste informații, adăugând o citare.", "editcheck-dialog-addref-reject-question": "De ce nu adăugați o citare?", "editcheck-dialog-addref-reject-description": "Alți editori ar aprecia să afle mai multe despre decizia dvs. de a respinge citarea.", @@ -19,12 +24,24 @@ "editcheck-dialog-addref-success-notify": "Vă mulțumim pentru că adăugați o citare!", "editcheck-dialog-addref-title": "Adăugați o citare", "editcheck-dialog-title": "Înainte de publicare", + "editcheck-copyvio-title": "Conținut lipit", + "editcheck-copyvio-prompt": "Dvs. ați scris acest text?", + "editcheck-copyvio-action-keep": "Da, păstrează-l", + "editcheck-copyvio-action-remove": "Nu, înlătură-l", + "editcheck-copyvio-keep-description": "Vă rugăm să ajutați alți editori de-ai acestui articol să înțeleagă motivul pentru care ați păstrat textul lipit.", + "editcheck-copyvio-keep-wrote": "Eu am scris acest conținut, iar acesta nu este publicat altundeva", + "editcheck-copyvio-keep-permission": "Acest conținut se află sub o licență liberă", + "editcheck-copyvio-keep-other": "Niciuna dintre cele de mai sus nu se aplică", + "editcheck-copyvio-keep-notify": "Vă mulțumim că ați împărtășiți motivul pentru care ați păstrat textul lipit!", + "editcheck-copyvio-remove-notify": "Vă mulțumim pentru că ajutați la a menține cunoașterea disponibilă la liber!", + "editcheck-reject-description": "Alți editori ar aprecia să afle de ce ați făcut această decizie.", + "editcheck-review-title": "Revizuiți schimbările", "tag-editcheck-reference-decline-common-knowledge": "Edit Check (referințe) respins (cunoștințe generale)", - "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck referința a fost respinsă ca fiind cunoscut pe scară largă", + "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck: referința a fost respinsă pe motiv de cunoștințe generale", "tag-editcheck-reference-decline-irrelevant": "Edit Check (referințe) respins (irelevant)", - "tag-editcheck-reference-decline-irrelevant-description": "Referința EditCheck a fost respinsă că fiind irelevantă", + "tag-editcheck-reference-decline-irrelevant-description": "EditCheck: referința a fost respinsă ca fiind irelevantă", "tag-editcheck-reference-decline-other": "Edit Check (referințe) respins (alt motiv)", - "tag-editcheck-reference-decline-other-description": "EditCheck citarea a fost respinsă din motive necunoscute", + "tag-editcheck-reference-decline-other-description": "EditCheck: referința a fost respinsă din motive necunoscute", "tag-editcheck-reference-decline-uncertain": "Edit Check (referințe) respins (incert)", - "tag-editcheck-reference-decline-uncertain-description": "Referința EditCheck a fost respinsă ca fiind incertă" + "tag-editcheck-reference-decline-uncertain-description": "EditCheck: referința a fost respinsă ca fiind incertă" } diff --git a/editcheck/i18n/ru.json b/editcheck/i18n/ru.json index c94a2216bd..c0d686ba05 100644 --- a/editcheck/i18n/ru.json +++ b/editcheck/i18n/ru.json @@ -1,12 +1,24 @@ { "@metadata": { "authors": [ - "Stjn" + "Kareyac", + "Okras", + "Stjn", + "Vonavy", + "Mitte27", + "Vlad5250", + "Lvova", + "Well very well" ] }, "editcheck-dialog-action-no": "Нет", "editcheck-dialog-action-yes": "Да", - "editcheck-dialog-addref-description": "Добавьте источник, чтобы помочь читателям понять, откуда взята эта информация.", + "editcheck-dialog-action-decline": "Отклонить", + "editcheck-dialog-action-revise": "Пересмотреть", + "editcheck-dialog-action-recheck": "Перепроверить", + "editcheck-dialog-action-back": "Назад", + "editcheck-dialog-action-submit": "Отправить", + "editcheck-dialog-addref-description": "Информация в Википедии должна быть подтверждена авторитетными источниками. Пожалуйста, помогите добавить внешнюю ссылку, поскольку неподтверждённая информация может быть удалена из статьи. В качестве сноски не следует использовать ссылку на Википедию (на английском или любом другом языке).", "editcheck-dialog-addref-reject-question": "Почему вы не добавили источник?", "editcheck-dialog-addref-reject-description": "Другим редакторам будет полезно узнать, почему вы решили не добавлять источник.", "editcheck-dialog-addref-reject-irrelevant": "Мне не кажется, что источники имеют отношение к совершаемому мной изменению", @@ -16,6 +28,25 @@ "editcheck-dialog-addref-success-notify": "Спасибо за добавление источника!", "editcheck-dialog-addref-title": "Добавить источник", "editcheck-dialog-title": "До публикации", + "editcheck-copyvio-title": "Скопированный контент", + "editcheck-copyvio-prompt": "Вы написали этот текст?", + "editcheck-copyvio-action-keep": "Да, сохранить", + "editcheck-copyvio-action-remove": "Нет, удалить", + "editcheck-copyvio-keep-description": "Пожалуйста, помогите другим редакторам этой статьи понять причину, по которой вы решили оставить скопированный текст.", + "editcheck-copyvio-keep-wrote": "Этот текст написан мной, и он нигде больше не опубликован", + "editcheck-copyvio-keep-permission": "Этот материал доступен по свободной лицензии", + "editcheck-copyvio-keep-other": "Ничего из перечисленного не подходит", + "editcheck-copyvio-keep-notify": "Спасибо, что поделились причиной, по которой решили сохранить скопированный текст!", + "editcheck-copyvio-remove-notify": "Спасибо за помощь в сохранении свободного доступа к знаниям!", + "editcheck-tone-title": "Изменить тон?", + "editcheck-tone-title-acted": "Изменение тона", + "editcheck-tone-description-acted": "Остерегайтесь выражений, которые являются лестными, уничижительными, расплывчатыми, банальными или поддерживающими определенную точку зрения.", + "editcheck-tone-reject-appropriate": "Тон уместен.", + "editcheck-tone-reject-uncertain": "Я не знаю, как пересмотреть тон", + "editcheck-tone-reject-other": "Другое", + "editcheck-tone-thank": "Спасибо за то, что вы учли тон!", + "editcheck-reject-description": "Другим редакторам было бы важно узнать, почему вы сделали именно такой выбор.", + "editcheck-review-title": "Проверить изменения", "tag-editcheck-reference-decline-common-knowledge": "Проверка правок (источники) отклонена (общеизвестно)", "tag-editcheck-reference-decline-irrelevant": "Проверка правок (источники) отклонена (неуместно)", "tag-editcheck-reference-decline-other": "Проверка правок (источники) отклонена (другое)", diff --git a/editcheck/i18n/sas.json b/editcheck/i18n/sas.json new file mode 100644 index 0000000000..ec22a57a40 --- /dev/null +++ b/editcheck/i18n/sas.json @@ -0,0 +1,14 @@ +{ + "@metadata": { + "authors": [ + "NikolasKHF" + ] + }, + "editcheck-dialog-action-no": "Ndéq", + "editcheck-dialog-action-yes": "Aoq", + "editcheck-dialog-action-decline": "Tolak", + "editcheck-dialog-action-revise": "Kerisaq", + "editcheck-dialog-action-recheck": "Peréksa ulang", + "editcheck-dialog-action-back": "Balik", + "editcheck-dialog-action-submit": "Kirim" +} diff --git a/editcheck/i18n/sjd.json b/editcheck/i18n/sjd.json new file mode 100644 index 0000000000..1d2048767e --- /dev/null +++ b/editcheck/i18n/sjd.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "Merrahtar" + ] + } +} diff --git a/editcheck/i18n/sk.json b/editcheck/i18n/sk.json new file mode 100644 index 0000000000..a8e30f2b18 --- /dev/null +++ b/editcheck/i18n/sk.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "KormiSK" + ] + } +} diff --git a/editcheck/i18n/skr-arab.json b/editcheck/i18n/skr-arab.json new file mode 100644 index 0000000000..a312cf6666 --- /dev/null +++ b/editcheck/i18n/skr-arab.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Saraiki" + ] + }, + "editcheck-dialog-action-decline": "انکار کرو" +} diff --git a/editcheck/i18n/sms.json b/editcheck/i18n/sms.json new file mode 100644 index 0000000000..c66aaf1db7 --- /dev/null +++ b/editcheck/i18n/sms.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "Yupik" + ] + } +} diff --git a/editcheck/i18n/so.json b/editcheck/i18n/so.json new file mode 100644 index 0000000000..be41e279bb --- /dev/null +++ b/editcheck/i18n/so.json @@ -0,0 +1,50 @@ +{ + "@metadata": { + "authors": [ + "AhmedG612" + ] + }, + "editcheck-dialog-action-no": "Maya", + "editcheck-dialog-action-yes": "Haa", + "editcheck-dialog-action-decline": "Diid", + "editcheck-dialog-action-revise": "Dib u eeg", + "editcheck-dialog-action-recheck": "Dib u hubi", + "editcheck-dialog-action-back": "Dib u noqo", + "editcheck-dialog-action-submit": "Gudbi", + "editcheck-dialog-addref-description": "Ka caawi akhristayaasha inay fahmaan halka macluumaadkani ka yimid adigoo ku daraya tixraac.", + "editcheck-dialog-addref-reject-question": "Maxaad u ku darin tixraac?", + "editcheck-dialog-addref-reject-irrelevant": "Uma malaynayo in tixraacyadu khuseeyaan isbeddelka aan samaynayo", + "editcheck-dialog-addref-reject-common-knowledge": "Macluumaadka aan ku darayo waa mid si ballaaran loo yaqaan", + "editcheck-dialog-addref-reject-uncertain": "Ma hubo tixraaca aan ku darayo", + "editcheck-dialog-addref-reject-other": "Kale", + "editcheck-dialog-addref-success-notify": "Waad ku mahadsan tahay inaad ku dartay xigasho!", + "editcheck-dialog-addref-title": "Ku dar xigasho", + "editcheck-dialog-title": "Ka hor inta aan la daabicin", + "editcheck-copyvio-title": "Nuxur la dhejiyay", + "editcheck-copyvio-prompt": "Ma adigaa qoray qoraalkan?", + "editcheck-copyvio-action-keep": "Haa, hayso", + "editcheck-copyvio-action-remove": "Maya, ka saar", + "editcheck-copyvio-keep-description": "Fadlan ka caawi tifaftirayaasha kale ee maqaalka inay fahmaan sababta aad u rabto in qoraalka la dhajiyay la sii hayo.", + "editcheck-copyvio-keep-wrote": "Waxaan anigu qoray qoraalkan mana lagu daabicin meel kale", + "editcheck-copyvio-keep-permission": "Qoraalkan si xor ah ayaa loo shatiyeeyay", + "editcheck-copyvio-keep-other": "Midkoodna kuwa kor ku xusan ma khuseeyo", + "editcheck-copyvio-keep-notify": "Waad ku mahadsan tahay inaad la wadaagtay sababta aad u rabto in qoraalka la dhajiyay la sii hayo!", + "editcheck-copyvio-remove-notify": "Waad ku mahadsan tahay ka qayb qaadashada ilaalinta in aqoontu si xor ah u heli karo!", + "editcheck-tone-title": "Ma dib u habeynayaa codka?", + "editcheck-tone-title-acted": "Dib u habeynaya codka", + "editcheck-tone-description-acted": "Ka fiirso hadallo ama erayo ammaan xad dhaaf ah, meel ka dhac ah, aan caddeyn, caadi noqday, ama taageeraya aragti gaar ah.", + "editcheck-tone-reject-appropriate": "Codku waa ku habboon yahay", + "editcheck-tone-reject-uncertain": "Ma hubo sida loo hagaajiyo codka", + "editcheck-tone-reject-other": "Kale", + "editcheck-tone-thank": "Waad ku mahadsan tahay inaad tixgelisay codka!", + "editcheck-reject-description": "Tifaftirayaal kale waxay jeclaan lahaayeen inay bartaan sababta aad u samaysay doorashadan.", + "editcheck-review-title": "Dib u eeg isbeddellada", + "tag-editcheck-reference-decline-common-knowledge": "Hubinta tafatirka (tixraacyada) waa la diiday (aqoon guud)", + "tag-editcheck-reference-decline-common-knowledge-description": "Tixraaca EditCheck waxaa loo diiday inuu yahay aqoon guud", + "tag-editcheck-reference-decline-irrelevant": "Hubinta tafatirka (tixraacyada) waa la diiday (aan khusayn)", + "tag-editcheck-reference-decline-irrelevant-description": "Tixraaca EditCheck waa la diiday maadaama uusan khusayn.", + "tag-editcheck-reference-decline-other": "Hubinta tafatirka (tixraacyada) waa la diiday (sabab kale)", + "tag-editcheck-reference-decline-other-description": "Tixraaca EditCheck waxaa loo diiday sabab aan ku jirin liiska", + "tag-editcheck-reference-decline-uncertain": "EditCheck (tixraacyo) waa la diiday (aan la hubin)", + "tag-editcheck-reference-decline-uncertain-description": "Tixraaca EditCheck waxaa loo diiday sababo la xiriira hubanti la'aan" +} diff --git a/editcheck/i18n/sq.json b/editcheck/i18n/sq.json new file mode 100644 index 0000000000..ce73f38831 --- /dev/null +++ b/editcheck/i18n/sq.json @@ -0,0 +1,7 @@ +{ + "@metadata": { + "authors": [ + "INNERLMNT" + ] + } +} diff --git a/editcheck/i18n/sr-ec.json b/editcheck/i18n/sr-ec.json index a470cd89ea..cd1968a65e 100644 --- a/editcheck/i18n/sr-ec.json +++ b/editcheck/i18n/sr-ec.json @@ -1,10 +1,47 @@ { "@metadata": { "authors": [ - "Milicevic01" + "Milicevic01", + "Kizule" ] }, "editcheck-dialog-action-no": "Не", "editcheck-dialog-action-yes": "Да", - "editcheck-dialog-addref-reject-other": "Друго" + "editcheck-dialog-action-decline": "Одбаци", + "editcheck-dialog-action-revise": "Ревидирај", + "editcheck-dialog-action-recheck": "Провери", + "editcheck-dialog-action-back": "Назад", + "editcheck-dialog-action-submit": "Проследи", + "editcheck-dialog-addref-description": "Помозите читаоцима да знају одакле информација долази додавањем референце.", + "editcheck-dialog-addref-reject-question": "Зашто не додајете референцу?", + "editcheck-dialog-addref-reject-description": "Остали уредници радо би знали зашто сте одлучили не додати референцу.", + "editcheck-dialog-addref-reject-irrelevant": "Референцирање је небитно за моју измену", + "editcheck-dialog-addref-reject-common-knowledge": "Информација коју додајем је опште позната", + "editcheck-dialog-addref-reject-uncertain": "Не знам коју референцу навести", + "editcheck-dialog-addref-reject-other": "Друго", + "editcheck-dialog-addref-success-notify": "Хвала на додавању референце!", + "editcheck-dialog-addref-title": "Додавање референце", + "editcheck-dialog-title": "Пре објављивања", + "editcheck-copyvio-title": "Налепљен садржај", + "editcheck-copyvio-description": "Опште правило је да се не копира текст из других извора. Копирање туђих текстова је [$1 кршење ауторских права и плагијат]. И такође може довести до уклањања садржаја и блокаде.", + "editcheck-copyvio-prompt": "Јесте ли ви написали текст?", + "editcheck-copyvio-action-keep": "Да, задржи", + "editcheck-copyvio-action-remove": "Не, уклони", + "editcheck-copyvio-keep-wrote": "Ја сам ово написао и није другде објављено", + "editcheck-copyvio-keep-permission": "Овај садржај је под слободном лиценцом", + "editcheck-copyvio-keep-other": "Друго", + "editcheck-tone-title": "Ревидирај тон?", + "editcheck-tone-reject-appropriate": "Тон је примеран", + "editcheck-tone-reject-uncertain": "Не знам како да ревидирам тон", + "editcheck-tone-reject-other": "Друго", + "editcheck-reject-description": "Други уредници ће ценити да знају зашто сте направили овај избор.", + "editcheck-review-title": "Преглед измена", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check референцирање одбачено (опште знање)", + "tag-editcheck-reference-decline-common-knowledge-description": "Референцирање је одбачено зато што је у питању опште знање", + "tag-editcheck-reference-decline-irrelevant": "Edit Check референцирање одбачено (нерелевантно)", + "tag-editcheck-reference-decline-irrelevant-description": "Референцирање је небитно за конкретну измену", + "tag-editcheck-reference-decline-other": "Edit Check референцирање одбачено (друго)", + "tag-editcheck-reference-decline-other-description": "Референцирање је одбачено из неког другог разлога", + "tag-editcheck-reference-decline-uncertain": "Edit Check референцирање одбачено (нисам сигуран/на)", + "tag-editcheck-reference-decline-uncertain-description": "Референцирање је одбачено из незнања" } diff --git a/editcheck/i18n/sr-el.json b/editcheck/i18n/sr-el.json new file mode 100644 index 0000000000..efd567bf55 --- /dev/null +++ b/editcheck/i18n/sr-el.json @@ -0,0 +1,28 @@ +{ + "@metadata": { + "authors": [] + }, + "editcheck-dialog-action-no": "Ne", + "editcheck-dialog-action-yes": "Da", + "editcheck-dialog-addref-description": "Pomozite čitaocima da znaju odakle informacija dolazi dodavanjem reference.", + "editcheck-dialog-addref-reject-question": "Zašto ne dodajete referencu?", + "editcheck-dialog-addref-reject-description": "Ostali urednici rado bi znali zašto ste odlučili ne dodati referencu.", + "editcheck-dialog-addref-reject-irrelevant": "Referenciranje je nebitno za moju izmenu", + "editcheck-dialog-addref-reject-common-knowledge": "Informacija koju dodajem je opšte poznata", + "editcheck-dialog-addref-reject-uncertain": "Ne znam koju referencu navesti", + "editcheck-dialog-addref-reject-other": "Drugo", + "editcheck-dialog-addref-success-notify": "Hvala na dodavanju reference!", + "editcheck-dialog-addref-title": "Dodavanje reference", + "editcheck-dialog-title": "Pre objavljivanja", + "editcheck-copyvio-title": "Nalepljen sadržaj", + "editcheck-copyvio-description": "Opšte pravilo je da se ne kopira tekst iz drugih izvora. Kopiranje teksta je kršenje autorskih prava i plagijat.", + "editcheck-review-title": "Pregled izmena", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check referenciranje odbačeno (opšte znanje)", + "tag-editcheck-reference-decline-common-knowledge-description": "Referenciranje je odbačeno zato što je u pitanju opšte znanje", + "tag-editcheck-reference-decline-irrelevant": "Edit Check referenciranje odbačeno (nerelevantno)", + "tag-editcheck-reference-decline-irrelevant-description": "Referenciranje je nebitno za konkretnu izmenu", + "tag-editcheck-reference-decline-other": "Edit Check referenciranje odbačeno (drugo)", + "tag-editcheck-reference-decline-other-description": "Referenciranje je odbačeno iz nekog drugog razloga", + "tag-editcheck-reference-decline-uncertain": "Edit Check referenciranje odbačeno (nisam siguran/na)", + "tag-editcheck-reference-decline-uncertain-description": "Referenciranje je odbačeno iz neznanja" +} diff --git a/editcheck/i18n/sv.json b/editcheck/i18n/sv.json index 92efc1a1b8..e68c2a0eae 100644 --- a/editcheck/i18n/sv.json +++ b/editcheck/i18n/sv.json @@ -1,12 +1,55 @@ { "@metadata": { "authors": [ - "WikiPhoenix" + "WikiPhoenix", + "Stefan2255", + "Ainali" ] }, "editcheck-dialog-action-no": "Nej", "editcheck-dialog-action-yes": "Ja", + "editcheck-dialog-action-decline": "Neka", + "editcheck-dialog-action-revise": "Revidera", + "editcheck-dialog-action-recheck": "Kontrollera igen", + "editcheck-dialog-action-back": "Tillbaka", + "editcheck-dialog-action-submit": "Skicka", + "editcheck-dialog-addref-description": "Hjälp läsarna att förstå var informationen kommer ifrån genom att lägga till en källa.", + "editcheck-dialog-addref-reject-question": "Varför lägger du inte till en källa?", + "editcheck-dialog-addref-reject-irrelevant": "Jag tror inte att källor är relevanta för den ändring jag gör", "editcheck-dialog-addref-reject-common-knowledge": "Informationen jag lägger till är allmänt känd", + "editcheck-dialog-addref-reject-uncertain": "Jag är inte säker på vilken källa jag ska lägga till", "editcheck-dialog-addref-reject-other": "Övrigt", - "editcheck-dialog-title": "Innan publicering" + "editcheck-dialog-addref-success-notify": "Tack för att du lade till en källa!", + "editcheck-dialog-addref-title": "Lägg till källa", + "editcheck-dialog-title": "Innan publicering", + "editcheck-copyvio-title": "Inklistrat innehåll", + "editcheck-copyvio-description": "Undvik att kopiera text från andra källor, även om den är omformulerad eller citerad. Detta kan betraktas som [$1 upphovsrättsintrång eller plagiat] och kan leda till att ditt innehåll tas bort eller att ditt konto blockeras.", + "editcheck-copyvio-prompt": "Skrev du den här texten?", + "editcheck-copyvio-action-keep": "Ja, behåll den", + "editcheck-copyvio-action-remove": "Nej, ta bort den", + "editcheck-copyvio-keep-description": "Hjälp andra redaktörer av den här artikeln att förstå din anledning att behålla den inklistrade texten.", + "editcheck-copyvio-keep-wrote": "Jag skrev detta innehåll och det är inte publicerat någon annanstans", + "editcheck-copyvio-keep-permission": "Detta innehåll är fritt licensierat", + "editcheck-copyvio-keep-other": "Inget av ovanstående gäller", + "editcheck-copyvio-keep-notify": "Tack för att du delar med dig av din anledning till att behålla den inklistrade texten!", + "editcheck-copyvio-remove-notify": "Tack för att du hjälper till att hålla kunskap fritt tillgänglig!", + "editcheck-tone-title": "Revidera tonen?", + "editcheck-tone-description": "Andra användare reviderar ofta den här typen av formuleringar och säger att tonen är obalanserad. [$1 Läs mer]", + "editcheck-tone-footer": "Identifierad med hjälp av en [$1 BERT-modell]", + "editcheck-tone-title-acted": "Revidera ton", + "editcheck-tone-description-acted": "Se upp för uttryck som är smickrande, nedsättande, vaga, klichéaktiga eller stöder en viss synvinkel.", + "editcheck-tone-reject-appropriate": "Tonen är lämplig", + "editcheck-tone-reject-uncertain": "Jag är inte säker på hur jag ska justera tonen", + "editcheck-tone-reject-other": "Andra", + "editcheck-tone-thank": "Tack för att du funderade över tonen!", + "editcheck-reject-description": "Andra användare skulle uppskatta att få veta varför du gjorde detta val.", + "editcheck-review-title": "Granska ändringar", + "tag-editcheck-reference-decline-common-knowledge": "Edit Check (referenser) avvisad (allmän kunskap)", + "tag-editcheck-reference-decline-common-knowledge-description": "EditCheck referensen avvisades som allmänt kunskap", + "tag-editcheck-reference-decline-irrelevant": "Edit Check (referenser) avvisad (irrelevant)", + "tag-editcheck-reference-decline-irrelevant-description": "EditCheck-referensen avvisades som irrelevant", + "tag-editcheck-reference-decline-other": "Edit Check (referenser) avvisad (annat)", + "tag-editcheck-reference-decline-other-description": "EditCheck referensen avvisades av en icke listad anledning", + "tag-editcheck-reference-decline-uncertain": "EditCheck (referenser) avvisad (osäker)", + "tag-editcheck-reference-decline-uncertain-description": "EditCheck referensen avvisades som osäker" } diff --git a/editcheck/i18n/syl.json b/editcheck/i18n/syl.json new file mode 100644 index 0000000000..aa45acf2d3 --- /dev/null +++ b/editcheck/i18n/syl.json @@ -0,0 +1,27 @@ +{ + "@metadata": { + "authors": [ + "LittleGun" + ] + }, + "editcheck-dialog-action-no": "Nej", + "editcheck-dialog-action-yes": "Ja", + "editcheck-dialog-action-decline": "Avböj", + "editcheck-dialog-action-revise": "Ändra", + "editcheck-dialog-action-recheck": "Kontrollera", + "editcheck-dialog-action-back": "Tillbaka", + "editcheck-dialog-action-submit": "Skicka in", + "editcheck-dialog-addref-description": "Hjälp läsarna förstå var informationen kommer ifrån genom att lägga till källa.", + "editcheck-dialog-addref-reject-question": "Varför lägger du inte till en källa?", + "editcheck-dialog-addref-reject-irrelevant": "Jag anser att källor inte tillför något till den ändring jag gör,", + "editcheck-dialog-addref-reject-common-knowledge": "Den information jag lägger till är allmänt känd.", + "editcheck-dialog-addref-reject-uncertain": "Jag är osäker på vilken källa jag ska lägga till", + "editcheck-dialog-addref-reject-other": "Annat", + "editcheck-dialog-addref-success-notify": "Tack för att du lade till en källa!", + "editcheck-dialog-addref-title": "Lägg till en källa", + "editcheck-dialog-title": "Innan publicering", + "editcheck-copyvio-title": "Inkopierat", + "editcheck-copyvio-prompt": "Har du skrivit denna text?", + "editcheck-copyvio-action-keep": "Ja, behåll den", + "editcheck-copyvio-action-remove": "Nej, ta bort den" +} diff --git a/editcheck/i18n/ta.json b/editcheck/i18n/ta.json new file mode 100644 index 0000000000..e82463c168 --- /dev/null +++ b/editcheck/i18n/ta.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "ElangoRamanujam" + ] + }, + "editcheck-dialog-action-recheck": "மறு ஆய்வு" +} diff --git a/editcheck/i18n/te.json b/editcheck/i18n/te.json new file mode 100644 index 0000000000..e6df44ab42 --- /dev/null +++ b/editcheck/i18n/te.json @@ -0,0 +1,43 @@ +{ + "@metadata": { + "authors": [ + "Chaduvari" + ] + }, + "editcheck-dialog-action-no": "లేదు", + "editcheck-dialog-action-yes": "సరే", + "editcheck-dialog-action-decline": "తిరస్కరించండి", + "editcheck-dialog-action-revise": "పునఃపరిశీలించండి", + "editcheck-dialog-action-recheck": "తిరిగి తనిఖీ చేయండి", + "editcheck-dialog-action-back": "వెనక్కి", + "editcheck-dialog-action-submit": "పంపించు", + "editcheck-dialog-addref-description": "ఒక మూలాన్ని చేర్చి, ఈ సమాచారం ఎక్కడి నుండి వచ్చిందో పాఠకులకు తెలియజేయండి.", + "editcheck-dialog-addref-reject-question": "మీరు మూలాన్ని ఎందుకు చేర్చడం లేదు?", + "editcheck-dialog-addref-reject-irrelevant": "నేను చేస్తున్న మార్పుకు మూలాలు అవసరమని నేను అనుకోవడం లేదు", + "editcheck-dialog-addref-reject-common-knowledge": "నేను చేరుస్తున్న సమాచారం విస్తృతంగా తెలిసినదే", + "editcheck-dialog-addref-reject-uncertain": "ఏ మూలాన్ని చేర్చాలో నాకు ఖచ్చితంగా తెలియదు", + "editcheck-dialog-addref-reject-other": "ఇతర", + "editcheck-dialog-addref-success-notify": "మూలాన్ని చేర్చినందుకు ధన్యవాదాలు!", + "editcheck-dialog-addref-title": "మూలాన్ని చేర్చండి", + "editcheck-dialog-title": "ప్రచురించే ముందు", + "editcheck-copyvio-title": "పేస్టు చేసిన కంటెంటు", + "editcheck-copyvio-prompt": "ఈ పాఠ్యాన్ని మీరే రాశారా?", + "editcheck-copyvio-action-keep": "అవును, దాన్ని ఉంచు", + "editcheck-copyvio-action-remove": "లేదు, దాన్ని తీసివేయి", + "editcheck-copyvio-keep-description": "మీరు అతికించిన ఈ పాఠ్యాన్ని ఎందుకు ఉంచాలో తోటి ఎడిటర్లు అర్థం చేసుకోవడంలో తోడ్పడండి.", + "editcheck-copyvio-keep-wrote": "ఈ పాఠ్యాన్ని నేనే రాశాను, ఇది మరెక్కడా ప్రచురితమైనది కాదు", + "editcheck-copyvio-keep-permission": "ఈ కంటెంటుకు స్వేచ్ఛా లైసెన్సు ఉంది", + "editcheck-copyvio-keep-other": "పైన పేర్కొన్న వాటిలో ఏదీ వర్తించదు", + "editcheck-copyvio-keep-notify": "అతికించిన పాఠ్యాన్ని ఎందుకు ఉంచాలో కారణాన్ని చెప్పినందుకు ధన్యవాదాలు!", + "editcheck-tone-reject-other": "ఇతర", + "editcheck-reject-description": "మీరు దీన్ని ఎందుకు ఎంచుకున్నారో ఇతర ఎడిటర్లు తెలుసుకోవడం విలువైనది.", + "editcheck-review-title": "మార్పులను సమీక్షించండి", + "tag-editcheck-reference-decline-common-knowledge": "ఎడిట్ చెక్ (మూలాలు) తిరస్కరించబడింది (అందరికీ తెలిసిన సంగతే)", + "tag-editcheck-reference-decline-common-knowledge-description": "అందరికీ తెలిసిన సంగతే అని తిరస్కరించిన మూలం ఎడిట్‌చెక్", + "tag-editcheck-reference-decline-irrelevant": "ఎడిట్ చెక్ (మూలాలు) తిరస్కరించబడింది (సంబంధం లేదు)", + "tag-editcheck-reference-decline-irrelevant-description": "సంబంధం లేదనే కారణంతో తిరస్కరించిన మూలం ఎడిట్‌చెక్", + "tag-editcheck-reference-decline-other": "ఎడిట్ చెక్ (మూలాలు) తిరస్కరించబడింది (ఇతర)", + "tag-editcheck-reference-decline-other-description": "జాబితాలో లేని కారణంతో తిరస్కరించిన మూలం ఎడిట్‌చెక్", + "tag-editcheck-reference-decline-uncertain": "ఎడిట్ చెక్ (మూలాలు) తిరస్కరించబడింది (అనిశ్చితం)", + "tag-editcheck-reference-decline-uncertain-description": "అనిశ్చితంగా ఉందనే కారణంతో తిరస్కరించిన మూలం ఎడిట్‌చెక్" +} diff --git a/editcheck/i18n/tr.json b/editcheck/i18n/tr.json index af5c32f180..32ebf81edd 100644 --- a/editcheck/i18n/tr.json +++ b/editcheck/i18n/tr.json @@ -1,17 +1,58 @@ { "@metadata": { "authors": [ - "Hedda" + "Hedda", + "Joseph", + "Leo", + "Jelican9", + "ToprakM" ] }, "editcheck-dialog-action-no": "Hayır", "editcheck-dialog-action-yes": "Evet", + "editcheck-dialog-action-decline": "Reddet", + "editcheck-dialog-action-revise": "Yeniden düzelt", + "editcheck-dialog-action-recheck": "Yeniden kontrol et", + "editcheck-dialog-action-back": "Geri", + "editcheck-dialog-action-submit": "Gönder", "editcheck-dialog-addref-description": "Bir kaynak ekleyerek okuyucuların bu bilgilerin nereden geldiğini anlamalarına yardımcı olun.", "editcheck-dialog-addref-reject-question": "Neden kaynak eklemiyorsunuz?", "editcheck-dialog-addref-reject-description": "Diğer editörler, kaynağı reddetme kararınız hakkında daha fazla bilgi edinmeyi isteyecektir.", + "editcheck-dialog-addref-reject-irrelevant": "Yaptığım değişiklikle ilgili alıntıların alakalı olduğunu düşünmüyorum", + "editcheck-dialog-addref-reject-common-knowledge": "Eklediğim bilgi herkes tarafından biliniyor", "editcheck-dialog-addref-reject-uncertain": "Hangi kaynağı ekleyeceğimden emin değilim", "editcheck-dialog-addref-reject-other": "Diğer", "editcheck-dialog-addref-success-notify": "Kaynak eklediğiniz için teşekkür ederiz!", "editcheck-dialog-addref-title": "Kaynak ekle", - "editcheck-dialog-title": "Yayınlanmadan önce" + "editcheck-dialog-title": "Yayınlanmadan önce", + "editcheck-copyvio-title": "Yapıştırılan içerik", + "editcheck-copyvio-description": "Lütfen başka kaynaklardan metin kopyalamaktan kaçının, hatta yeniden ifade edilmiş ya da alıntılanmış olsa bile. Bu, [$1 telif hakkı ihlali ya da intihal] olarak değerlendirilebilir ve içeriğinizin kaldırılmasına ya da hesabınızın engellenmesine neden olabilir.", + "editcheck-copyvio-prompt": "Bu metni siz mi yazdınız?", + "editcheck-copyvio-action-keep": "Evet, sakla", + "editcheck-copyvio-action-remove": "Hayır, çıkar", + "editcheck-copyvio-keep-description": "Lütfen bu maddenin diğer düzenleyicilerinin yapıştırılan metni neden sakladığınızı anlamalarına yardımcı olun.", + "editcheck-copyvio-keep-wrote": "Bu içeriği ben yazdım ve başka bir yerde yayımlanmadı", + "editcheck-copyvio-keep-permission": "Bu içerik özgür olarak lisanslanmıştır", + "editcheck-copyvio-keep-other": "Yukarıdakilerin hiçbiri geçerli değil", + "editcheck-copyvio-keep-notify": "Yapıştırılan metni saklama nedeninizi paylaştığınız için teşekkürler!", + "editcheck-copyvio-remove-notify": "Bilginin özgürce erişilebilir kalmasına yardımcı olduğunuz için teşekkürler!", + "editcheck-tone-title": "Tonu Gözden Geçir?", + "editcheck-tone-description": "Diğer kullanıcılar bu tür ifadeleri sık sık gözden geçirip tonun dengesiz olduğunu söylüyorlar. [$1 Daha fazlasını öğrenin]", + "editcheck-tone-footer": "Bir [$1 BERT modeli] kullanılarak tanımlandı", + "editcheck-tone-title-acted": "Ton Gözden Geçiriliyor", + "editcheck-tone-description-acted": "Övgü dolu, aşağılayıcı, belirsiz, klişe ya da belirli bir bakış açısını destekleyen ifadelere dikkat edin.", + "editcheck-tone-reject-appropriate": "Ton uygun", + "editcheck-tone-reject-uncertain": "Tonu nasıl düzelteceğimden emin değilim", + "editcheck-tone-reject-other": "Diğer", + "editcheck-tone-thank": "Tonlamayı dikkate aldığınız için teşekkürler!", + "editcheck-reject-description": "Diğer düzenleyiciler neden bu seçimi yaptığınızı öğrenmeyi değerli bulacaktır.", + "editcheck-review-title": "Değişiklikleri gözden geçir", + "tag-editcheck-reference-decline-common-knowledge": "Düzenleme Kontrolü (kaynakça) reddedildi (genel bilgi)", + "tag-editcheck-reference-decline-common-knowledge-description": "DüzenlemeKontrolü kaynağı genel bilgi olduğu için reddedildi", + "tag-editcheck-reference-decline-irrelevant": "Düzenleme Kontrolü (kaynakça) reddedildi (ilgisiz)", + "tag-editcheck-reference-decline-irrelevant-description": "DüzenlemeKontrolü kaynağı ilgisiz olduğu için reddedildi", + "tag-editcheck-reference-decline-other": "Düzenleme Kontrolü (kaynakça) reddedildi (diğer)", + "tag-editcheck-reference-decline-other-description": "DüzenlemeKontrolü kaynağı belirtilmeyen bir sebepten dolayı reddedildi", + "tag-editcheck-reference-decline-uncertain": "Düzenleme Kontrolü (kaynakça) reddedildi (belirsiz)", + "tag-editcheck-reference-decline-uncertain-description": "DüzenlemeKontrolü kaynağı belirsiz olduğu için reddedildi" } diff --git a/editcheck/i18n/uk.json b/editcheck/i18n/uk.json index ac172d5ea8..c158fca08c 100644 --- a/editcheck/i18n/uk.json +++ b/editcheck/i18n/uk.json @@ -1,11 +1,18 @@ { "@metadata": { "authors": [ - "Ата" + "Ата", + "Movses", + "Repakr" ] }, "editcheck-dialog-action-no": "Ні", "editcheck-dialog-action-yes": "Так", + "editcheck-dialog-action-decline": "Відхилити", + "editcheck-dialog-action-revise": "Виправити", + "editcheck-dialog-action-recheck": "Перевірити ще раз", + "editcheck-dialog-action-back": "Назад", + "editcheck-dialog-action-submit": "Надіслати", "editcheck-dialog-addref-description": "Допоможіть читачам зрозуміти, звідки ця інформація, додавши вказівку на джерело.", "editcheck-dialog-addref-reject-question": "Чому ви не додаєте вказівку на джерело?", "editcheck-dialog-addref-reject-description": "Інші редактори хотіли б дізнатися більше про ваше рішення відхилити додавання джерела.", @@ -16,6 +23,28 @@ "editcheck-dialog-addref-success-notify": "Дякуємо, що вказали джерело!", "editcheck-dialog-addref-title": "Додати джерело", "editcheck-dialog-title": "Перед публікацією", + "editcheck-copyvio-title": "Вставлений вміст", + "editcheck-copyvio-description": "Будь ласка, не копіюйте текст з інших джерел, навіть якщо ви його переклали чи поставили примітку. Це може вважатися [$1 порушенням авторських прав чи плагіатом] і в результаті доданий вами текст можуть вилучити, а ваш обліковий запис — заблокувати.", + "editcheck-copyvio-prompt": "Ви самі написали цей текст?", + "editcheck-copyvio-action-keep": "Так, залишити це.", + "editcheck-copyvio-action-remove": "Ні, прибрати це", + "editcheck-copyvio-keep-description": "Будь ласка, допоможіть іншим редакторам цієї статті зрозуміти причину, чому ви зберігаєте вставлений текст.", + "editcheck-copyvio-keep-wrote": "Цей контент написано мною, і це ще ніде не опубліковано", + "editcheck-copyvio-keep-permission": "Цей вміст вільно ліцензований", + "editcheck-copyvio-keep-other": "Жодне з перерахованого не підходить", + "editcheck-copyvio-keep-notify": "Дякуємо вам, що поділилися своєю причиною, чому ви зберігаєте вставлений текст!", + "editcheck-copyvio-remove-notify": "Дякую, що допомагаєте зберігати знання вільно доступними!", + "editcheck-tone-title": "Виправити тон?", + "editcheck-tone-description": "Інші користувачі часто переписують подібні формулювання, кажучи, що тон незбалансований. [$1 Дізнатися більше]", + "editcheck-tone-footer": "Визначено за допомогою [$1 моделі BERT]", + "editcheck-tone-title-acted": "Виправнення тону", + "editcheck-tone-description-acted": "Уникайте висловлювань, які є улесливими, зневажливими, розпливчастими, клішованими або такими, що схвалюють певну точку зору.", + "editcheck-tone-reject-appropriate": "Тон відповідний", + "editcheck-tone-reject-uncertain": "Я не знаю, як змінити тон", + "editcheck-tone-reject-other": "Інше", + "editcheck-tone-thank": "Дякуємо, що врахували тон!", + "editcheck-reject-description": "Іншим редакторам буде цінно дізнатися, чому ви зробили такий вибір.", + "editcheck-review-title": "Переглянути зміни", "tag-editcheck-reference-decline-common-knowledge": "Підказку додати посилання відхилено через загальновідомість", "tag-editcheck-reference-decline-common-knowledge-description": "Підказку додати примітку на джерело відхилено через загальновідомість", "tag-editcheck-reference-decline-irrelevant": "Підказку додати примітку на джерело відхилено («не стосується»)", diff --git a/editcheck/i18n/vi.json b/editcheck/i18n/vi.json index e7381b1de7..57e7e8fbec 100644 --- a/editcheck/i18n/vi.json +++ b/editcheck/i18n/vi.json @@ -1,27 +1,57 @@ { "@metadata": { "authors": [ - "Bluetpp" + "Bluetpp", + "NgocAnMaster", + "Như Gây Mê", + "Nvdtn19" ] }, "editcheck-dialog-action-no": "Không", "editcheck-dialog-action-yes": "Có", + "editcheck-dialog-action-decline": "Từ chối", + "editcheck-dialog-action-revise": "Xem lại", + "editcheck-dialog-action-recheck": "Kiểm tra lại", + "editcheck-dialog-action-back": "Quay lại", + "editcheck-dialog-action-submit": "Xác nhận", "editcheck-dialog-addref-description": "Giúp người đọc hiểu thông tin này đến từ đâu bằng cách thêm trích dẫn.", - "editcheck-dialog-addref-reject-question": "Tại sao bạn không thêm trích dẫn?", - "editcheck-dialog-addref-reject-description": "Các biên tập viên khác sẽ đánh giá cao việc được hiểu thêm về quyết định loại bỏ trích dẫn của bạn.", - "editcheck-dialog-addref-reject-irrelevant": "Tôi không nghĩ các trích dẫn có liên quan đến sự thay đổi mà tôi đang thực hiện", + "editcheck-dialog-addref-reject-question": "Tại sao bạn không thêm chú thích?", + "editcheck-dialog-addref-reject-description": "Các biên tập viên khác sẽ đánh giá cao việc được hiểu thêm về quyết định loại bỏ chú thích của bạn.", + "editcheck-dialog-addref-reject-irrelevant": "Tôi không nghĩ chú thích có liên quan đến thay đổi tôi đang thực hiện", "editcheck-dialog-addref-reject-common-knowledge": "Thông tin tôi đang thêm được biết đến rộng rãi", - "editcheck-dialog-addref-reject-uncertain": "Tôi không chắc nên thêm trích dẫn nào", + "editcheck-dialog-addref-reject-uncertain": "Tôi không chắc nên thêm chú thích nào", "editcheck-dialog-addref-reject-other": "Khác", - "editcheck-dialog-addref-success-notify": "Cảm ơn bạn đã thêm một trích dẫn!", - "editcheck-dialog-addref-title": "Thêm một trích dẫn", + "editcheck-dialog-addref-success-notify": "Cảm ơn bạn đã thêm chú thích!", + "editcheck-dialog-addref-title": "Thêm chú thích", "editcheck-dialog-title": "Trước khi xuất bản", - "tag-editcheck-reference-decline-common-knowledge": "Kiểm tra chỉnh sửa (tài liệu tham khảo) bị từ chối (kiến thức chung)", - "tag-editcheck-reference-decline-common-knowledge-description": "Tham khảo Kiểm tra Chỉnh sửa bị từ chối vì là kiến thức chung", - "tag-editcheck-reference-decline-irrelevant": "Kiểm tra chỉnh sửa (tài liệu tham khảo) bị từ chối (không liên quan)", - "tag-editcheck-reference-decline-irrelevant-description": "Tham khảo Kiểm tra Chỉnh sửa bị từ chối vì không liên quan", - "tag-editcheck-reference-decline-other": "Kiểm tra chỉnh sửa (tài liệu tham khảo) bị từ chối (khác)", - "tag-editcheck-reference-decline-other-description": "Tham khảo Kiểm tra Chỉnh sửa bị từ chối vì lý do không được nêu", - "tag-editcheck-reference-decline-uncertain": "Kiểm tra chỉnh sửa (tài liệu tham khảo) bị từ chối (không chắc chắn)", - "tag-editcheck-reference-decline-uncertain-description": "Tham khảo Kiểm tra Chỉnh sửa bị từ chối vì không chắc chắn" + "editcheck-copyvio-title": "Nội dung được dán", + "editcheck-copyvio-description": "Vui lòng tránh sao chép văn bản từ các nguồn khác, ngay cả khi đã diễn đạt lại hoặc trích dẫn. Hành động này có thể bị coi là [$1 vi phạm bản quyền hoặc đạo văn] và có thể dẫn đến việc nội dung của bạn bị xóa hoặc tài khoản của bạn bị cấm.", + "editcheck-copyvio-prompt": "Bạn có viết văn bản này không?", + "editcheck-copyvio-action-keep": "Có, hãy giữ nó", + "editcheck-copyvio-action-remove": "Không, hãy xoá nó", + "editcheck-copyvio-keep-description": "Vui lòng giúp những biên tập viên khác của bài viết này hiểu rõ lý do bạn giữ lại văn bản đã dán.", + "editcheck-copyvio-keep-wrote": "Tôi đã viết nội dung này và nó chưa được xuất bản ở nơi khác", + "editcheck-copyvio-keep-permission": "Nội dung này được cấp phép tự do", + "editcheck-copyvio-keep-other": "Không có điều nào ở trên áp dụng", + "editcheck-copyvio-keep-notify": "Cảm ơn bạn đã chia sẻ lý do giữ lại văn bản đã dán!", + "editcheck-copyvio-remove-notify": "Cảm ơn bạn vì đã giúp cho kiến thức được tiếp cận tự do!", + "editcheck-tone-title": "Sửa lại giọng điệu?", + "editcheck-tone-description": "Những thành viên khác thường sửa lại cách diễn đạt này vì cho rằng giọng điệu không được cân bằng lắm. [$1 Tìm hiểu thêm]", + "editcheck-tone-footer": "Được xác định sử dụng [$1 mô hình BERT]", + "editcheck-tone-title-acted": "Sửa lại giọng điệu", + "editcheck-tone-description-acted": "Hãy cẩn thận với các đoạn có biểu hiện tăng bốc, coi thường, mơ hồ, sáo rỗng hoặc tán thành một quan điểm cụ thể.", + "editcheck-tone-reject-appropriate": "Giọng điệu này phù hợp", + "editcheck-tone-reject-uncertain": "Tôi không biết cách sửa lại giọng điệu thế nào", + "editcheck-tone-reject-other": "Khác", + "editcheck-tone-thank": "Cảm ơn bạn đã cân nhắc đến ngữ điệu!", + "editcheck-reject-description": "Các biên tập viên khác sẽ đánh giá cao việc tìm hiểu lý do tại sao bạn đưa ra lựa chọn này.", + "editcheck-review-title": "Xem lại thay đổi", + "tag-editcheck-reference-decline-common-knowledge": "Kiểm tra Sửa đổi (nguồn tham khảo) bị từ chối (kiến thức chung)", + "tag-editcheck-reference-decline-common-knowledge-description": "Kiểm tra Sửa đổi nguồn tham khảo bị từ chối vì là kiến thức chung", + "tag-editcheck-reference-decline-irrelevant": "Kiểm tra Sửa đổi (nguồn tham khảo) bị từ chối (không liên quan)", + "tag-editcheck-reference-decline-irrelevant-description": "Kiểm tra Sửa đổi nguồn tham khảo bị từ chối vì không liên quan", + "tag-editcheck-reference-decline-other": "Kiểm tra Sửa đổi (nguồn tham khảo) bị từ chối (khác)", + "tag-editcheck-reference-decline-other-description": "Kiểm tra Sửa đổi nguồn tham khảo bị từ chối vì lý do không được nêu", + "tag-editcheck-reference-decline-uncertain": "Kiểm tra Sửa đổi (nguồn tham khảo) bị từ chối (không chắc chắn)", + "tag-editcheck-reference-decline-uncertain-description": "Kiểm tra Sửa đổi nguồn tham khảo bị từ chối vì không chắc chắn" } diff --git a/editcheck/i18n/yue-hant.json b/editcheck/i18n/yue-hant.json new file mode 100644 index 0000000000..67347f38e8 --- /dev/null +++ b/editcheck/i18n/yue-hant.json @@ -0,0 +1,47 @@ +{ + "@metadata": { + "authors": [ + "JeffreyKim", + "Ktchankt" + ] + }, + "editcheck-dialog-action-no": "唔係", + "editcheck-dialog-action-yes": "係", + "editcheck-dialog-action-decline": "拒絕", + "editcheck-dialog-action-revise": "修改", + "editcheck-dialog-action-recheck": "重新檢查", + "editcheck-dialog-action-back": "返去", + "editcheck-dialog-action-submit": "遞交", + "editcheck-dialog-addref-description": "加個文獻引用去幫讀者了解呢項資料係邊度嚟。", + "editcheck-dialog-addref-reject-question": "點解你唔加文獻引用?", + "editcheck-dialog-addref-reject-description": "其他編者想知點解你唔加文獻引用。", + "editcheck-dialog-addref-reject-irrelevant": "我唔認為文獻引用關我改嘅嘢事。", + "editcheck-dialog-addref-reject-common-knowledge": "我加嘅嘢好多人都識。", + "editcheck-dialog-addref-reject-uncertain": "我唔肯定要加咩文獻引用。", + "editcheck-dialog-addref-reject-other": "其他", + "editcheck-dialog-addref-success-notify": "多謝你加文獻引用!", + "editcheck-dialog-addref-title": "加文獻引用", + "editcheck-dialog-title": "發佈前", + "editcheck-copyvio-title": "貼上嘅內容", + "editcheck-copyvio-description": "一般情況下唔好由其他來源直接複製文字貼過嚟。咁做多數都係侵犯版權同抄襲。", + "editcheck-copyvio-prompt": "你係咪寫咗呢段文字?", + "editcheck-copyvio-action-keep": "好,保留佢", + "editcheck-copyvio-action-remove": "唔好,剷走佢", + "editcheck-copyvio-keep-description": "其他編者想知點解你貼呢堆字。", + "editcheck-copyvio-keep-wrote": "呢啲內容係我自己寫,冇喺其他地方發佈過", + "editcheck-copyvio-keep-permission": "我獲授權去重用呢啲內容", + "editcheck-copyvio-keep-other": "其他", + "editcheck-copyvio-keep-notify": "多謝你解釋點解你貼呢堆字!", + "editcheck-copyvio-remove-notify": "多謝你剷走呢堆字!", + "editcheck-tone-reject-other": "其他", + "editcheck-tone-thank": "多謝晒你修改啲語氣!", + "editcheck-review-title": "審核改動", + "tag-editcheck-reference-decline-common-knowledge": "編輯檢查(參考)被拒(常識)", + "tag-editcheck-reference-decline-common-knowledge-description": "編輯檢查參考功能被拒,畀嘅原因係加嘅內容係常識", + "tag-editcheck-reference-decline-irrelevant": "編輯檢查(參考)被拒(唔關事)", + "tag-editcheck-reference-decline-irrelevant-description": "編輯檢查參考功能被拒,畀嘅原因係加嘅內容係唔關事", + "tag-editcheck-reference-decline-other": "編輯檢查(參考)被拒(其他)", + "tag-editcheck-reference-decline-other-description": "編輯檢查參考功能被拒,畀嘅係其他原因", + "tag-editcheck-reference-decline-uncertain": "編輯檢查(參考)被拒(唔肯定)", + "tag-editcheck-reference-decline-uncertain-description": "編輯檢查參考功能被拒,畀嘅原因係唔肯定加咩參考" +} diff --git a/editcheck/i18n/zh-hans.json b/editcheck/i18n/zh-hans.json index 89a3439dd5..bdefbf9cc4 100644 --- a/editcheck/i18n/zh-hans.json +++ b/editcheck/i18n/zh-hans.json @@ -2,13 +2,26 @@ "@metadata": { "authors": [ "Anterdc99", + "GuoPC", + "Hakimi97", "LittlePaw365", + "Peterxy12", "SCP-2000", - "星海" + "人间百态", + "星海", + "沈澄心", + "Yfdyh000", + "PexEric", + "Peterxy" ] }, "editcheck-dialog-action-no": "否", "editcheck-dialog-action-yes": "是", + "editcheck-dialog-action-decline": "拒绝", + "editcheck-dialog-action-revise": "修订", + "editcheck-dialog-action-recheck": "重新检查", + "editcheck-dialog-action-back": "返回", + "editcheck-dialog-action-submit": "提交", "editcheck-dialog-addref-description": "添加引证来帮助读者了解此信息的出处。", "editcheck-dialog-addref-reject-question": "您为何未添加引证?", "editcheck-dialog-addref-reject-description": "其他编者会想要进一步了解您作出拒绝引证的决定的原因。", @@ -19,12 +32,34 @@ "editcheck-dialog-addref-success-notify": "感谢您添加引证!", "editcheck-dialog-addref-title": "添加引证", "editcheck-dialog-title": "发布前", + "editcheck-copyvio-title": "粘贴的内容", + "editcheck-copyvio-description": "请避免从其他来源复制文字。即使经改写或注明出处也一样。此举可能被视为[$1 版权侵权或剽窃行为],致使您的内容遭移除或账号被封禁。", + "editcheck-copyvio-prompt": "是您编纂了这段文字吗?", + "editcheck-copyvio-action-keep": "是,保留", + "editcheck-copyvio-action-remove": "否,删除", + "editcheck-copyvio-keep-description": "请帮助本条目的其他编者了解您保留粘贴文本的原因。", + "editcheck-copyvio-keep-wrote": "此内容由我撰写,且没有在其他地方发布过", + "editcheck-copyvio-keep-permission": "此内容为自由协议授权", + "editcheck-copyvio-keep-other": "以上均不适用", + "editcheck-copyvio-keep-notify": "感谢您分享保留粘贴文本的原因!", + "editcheck-copyvio-remove-notify": "感谢您帮助维持知识的自由传播!", + "editcheck-tone-title": "修改语气?", + "editcheck-tone-description": "其他用户经常会修改这种措辞,认为其语气不平衡。[ $1了解更多]", + "editcheck-tone-footer": "使用[$1 BERT模型]进行识别", + "editcheck-tone-title-acted": "修改语气", + "editcheck-tone-description-acted": "注意那些奉承、贬损、含糊、陈词滥调或偏向特定观点的表达方式。", + "editcheck-tone-reject-appropriate": "语气恰当", + "editcheck-tone-reject-uncertain": "我不知道该如何修改语气", + "editcheck-tone-reject-other": "其他", + "editcheck-tone-thank": "感谢您留意语气!", + "editcheck-reject-description": "其他编者会希望了解您做出此选择的原因。", + "editcheck-review-title": "查看更改", "tag-editcheck-reference-decline-common-knowledge": "拒绝(参考资料)编辑检查(常识)", - "tag-editcheck-reference-decline-common-knowledge-description": "参考资料编辑检查以常识作为原因而拒绝", + "tag-editcheck-reference-decline-common-knowledge-description": "参考资料编辑检查以常识为由被拒绝", "tag-editcheck-reference-decline-irrelevant": "拒绝(参考资料)编辑检查(无关)", - "tag-editcheck-reference-decline-irrelevant-description": "参考资料编辑检查以无关作为原因而拒绝", + "tag-editcheck-reference-decline-irrelevant-description": "参考资料编辑检查以无关为由而被拒绝", "tag-editcheck-reference-decline-other": "拒绝(参考资料)编辑检查(其他)", - "tag-editcheck-reference-decline-other-description": "参考资料编辑检查以未列出的原因拒绝", + "tag-editcheck-reference-decline-other-description": "参考资料编辑检查以其他原因被拒绝", "tag-editcheck-reference-decline-uncertain": "拒绝(参考资料)编辑检查(不确定)", - "tag-editcheck-reference-decline-uncertain-description": "参考资料编辑检查以不确定作为原因而拒绝" + "tag-editcheck-reference-decline-uncertain-description": "参考资料编辑检查以不确定为由被拒绝" } diff --git a/editcheck/i18n/zh-hant.json b/editcheck/i18n/zh-hant.json index 23410f5a67..66e727ad66 100644 --- a/editcheck/i18n/zh-hant.json +++ b/editcheck/i18n/zh-hant.json @@ -3,11 +3,18 @@ "authors": [ "Cookai1205", "Kly", - "SCP-2000" + "LowensteinYang", + "SCP-2000", + "Peterxy12" ] }, "editcheck-dialog-action-no": "否", "editcheck-dialog-action-yes": "是", + "editcheck-dialog-action-decline": "拒絕", + "editcheck-dialog-action-revise": "修改", + "editcheck-dialog-action-recheck": "重新檢查", + "editcheck-dialog-action-back": "返回", + "editcheck-dialog-action-submit": "提交", "editcheck-dialog-addref-description": "新增引註來幫助讀者了解此資訊的出處。", "editcheck-dialog-addref-reject-question": "為何不新增引註?", "editcheck-dialog-addref-reject-description": "其他編者希望能更了解您拒絕新增引註的原因。", @@ -18,6 +25,28 @@ "editcheck-dialog-addref-success-notify": "感謝您新增引註!", "editcheck-dialog-addref-title": "新增引註", "editcheck-dialog-title": "發布前", + "editcheck-copyvio-title": "貼上內容", + "editcheck-copyvio-description": "請避免從其他來源複製文字。即使經改寫或註明出處亦然。此舉可能被視為[$1 版權侵權或剽竊行為],導致您的內容遭移除或帳號被封鎖。", + "editcheck-copyvio-prompt": "您有編寫此段文字嗎?", + "editcheck-copyvio-action-keep": "是的,保留", + "editcheck-copyvio-action-remove": "沒有,移除", + "editcheck-copyvio-keep-description": "請協助該條目的其他編輯者理解您保留所貼文字的理由。", + "editcheck-copyvio-keep-wrote": "此段內容由我撰寫,而且沒有在其他地方發布過", + "editcheck-copyvio-keep-permission": "此內容為自由協議授權。", + "editcheck-copyvio-keep-other": "以上皆不適用", + "editcheck-copyvio-keep-notify": "感謝您分享保留粘貼文字的原因!", + "editcheck-copyvio-remove-notify": "感謝您對自由傳播知識所做出的協助!", + "editcheck-tone-title": "修改語氣?", + "editcheck-tone-description": "其他使用者經常修改這種措辭,稱其語氣不中立。[$1 了解更多]", + "editcheck-tone-footer": "使用 [$1 BERT 模型]辨識", + "editcheck-tone-title-acted": "修改語氣", + "editcheck-tone-description-acted": "注意那些奉承、貶損、模糊、陳腔濫調,或是支持特定觀點的表達內容。", + "editcheck-tone-reject-appropriate": "語氣恰當", + "editcheck-tone-reject-uncertain": "我不確定如何修改語氣", + "editcheck-tone-reject-other": "其他", + "editcheck-tone-thank": "感謝您留意語氣!", + "editcheck-reject-description": "其他編者會希望了解為何您做出此選擇的原因。", + "editcheck-review-title": "審核變更", "tag-editcheck-reference-decline-common-knowledge": "編輯檢查(參考資料)遭拒(常識)", "tag-editcheck-reference-decline-common-knowledge-description": "編輯檢查參考文獻功能因「常識」而被拒絕", "tag-editcheck-reference-decline-irrelevant": "編輯檢查(參考資料)遭拒(無關)", diff --git a/editcheck/includes/ApiEditCheckReferenceUrl.php b/editcheck/includes/ApiEditCheckReferenceUrl.php index a76a92bde7..37e7f51e24 100644 --- a/editcheck/includes/ApiEditCheckReferenceUrl.php +++ b/editcheck/includes/ApiEditCheckReferenceUrl.php @@ -5,7 +5,8 @@ use MediaWiki\Api\ApiBase; use MediaWiki\Api\ApiMain; use MediaWiki\Api\ApiUsageException; -use MediaWiki\Extension\AbuseFilter\BlockedDomainStorage; +use MediaWiki\Extension\AbuseFilter\BlockedDomains\BlockedDomainValidator; +use MediaWiki\Extension\AbuseFilter\BlockedDomains\IBlockedDomainStorage; use MediaWiki\Extension\SpamBlacklist\BaseBlacklist; use MediaWiki\Registration\ExtensionRegistry; use Wikimedia\ParamValidator\ParamValidator; @@ -13,16 +14,22 @@ class ApiEditCheckReferenceUrl extends ApiBase { /** @phan-suppress-next-line PhanUndeclaredTypeProperty */ - private ?BlockedDomainStorage $blockedDomainStorage; + private ?IBlockedDomainStorage $blockedDomainStorage; + + /** @phan-suppress-next-line PhanUndeclaredTypeProperty */ + private ?BlockedDomainValidator $blockedDomainValidator; public function __construct( ApiMain $main, string $name, // @phan-suppress-next-line PhanUndeclaredTypeParameter - ?BlockedDomainStorage $blockedDomainStorage + ?IBlockedDomainStorage $blockedDomainStorage, + // @phan-suppress-next-line PhanUndeclaredTypeParameter + ?BlockedDomainValidator $blockedDomainValidator ) { parent::__construct( $main, $name ); $this->blockedDomainStorage = $blockedDomainStorage; + $this->blockedDomainValidator = $blockedDomainValidator; } /** @@ -44,12 +51,12 @@ public function execute() { } private function isInBlockedExternalDomains( string $url ): bool { - if ( !$this->blockedDomainStorage ) { + if ( !$this->blockedDomainValidator ) { return false; } // @phan-suppress-next-line PhanUndeclaredClassMethod - $domain = $this->blockedDomainStorage->validateDomain( $url ); + $domain = $this->blockedDomainValidator->validateDomain( $url ); // @phan-suppress-next-line PhanUndeclaredClassMethod $blockedDomains = $this->blockedDomainStorage->loadComputed(); return !empty( $blockedDomains[ $domain ] ); diff --git a/editcheck/includes/Hooks.php b/editcheck/includes/Hooks.php new file mode 100644 index 0000000000..b6caeaa659 --- /dev/null +++ b/editcheck/includes/Hooks.php @@ -0,0 +1,50 @@ +getConfigFactory()->makeConfig( 'visualeditor' ); + $experimentalConfig = $veConfig->get( 'VisualEditorEditCheckLoadExperimental' ); + + $experimentalDir = dirname( __DIR__ ) . '/modules/editchecks/experimental'; + $files = array_diff( scandir( $experimentalDir ), [ '..', '.' ] ); + if ( is_array( $experimentalConfig ) ) { + $files = array_intersect( $files, $experimentalConfig ); + } + $veResourceTemplate = [ + 'localBasePath' => $experimentalDir, + 'remoteExtPath' => 'VisualEditor', + ]; + $resourceLoader->register( [ + 'ext.visualEditor.editCheck.experimental' => $veResourceTemplate + [ + 'group' => 'visualEditorA', + 'packageFiles' => $files + [ + [ + "name" => "init.js", + "main" => true, + "content" => array_reduce( $files, static function ( $carry, $file ) { + return $carry . "require('./$file');\n"; + }, "" ), + ], + ], + "dependencies" => [ 'ext.visualEditor.editCheck' ], + ] ] ); + } +} diff --git a/editcheck/includes/ResourceLoaderData.php b/editcheck/includes/ResourceLoaderData.php index 2cb80026f8..912502f341 100644 --- a/editcheck/includes/ResourceLoaderData.php +++ b/editcheck/includes/ResourceLoaderData.php @@ -13,19 +13,6 @@ class ResourceLoaderData { - private const DEFAULTS = [ - 'addReference' => [ - 'minimumCharacters' => 50, - 'beforePunctuation' => false, - // TODO: when we have multiple edit checks this will likely be a generic block: - // account: loggedin, loggedout, anything non-truthy means allow either - 'account' => false, - 'maximumEditcount' => 100, - 'ignoreSections' => [], - 'ignoreLeadSection' => false, - ], - ]; - /** * Return configuration data for edit checks, fetched from an on-wiki JSON message * @@ -35,6 +22,6 @@ class ResourceLoaderData { public static function getConfig( MessageLocalizer $context ): array { $raw_config = json_decode( $context->msg( 'editcheck-config.json' )->inContentLanguage()->plain(), true ); - return array_replace_recursive( self::DEFAULTS, $raw_config ?? [] ); + return $raw_config ?? []; } } diff --git a/editcheck/modules/.eslintrc.json b/editcheck/modules/.eslintrc.json index 3f51c58354..2320d1888b 100644 --- a/editcheck/modules/.eslintrc.json +++ b/editcheck/modules/.eslintrc.json @@ -1,7 +1,9 @@ { "root": true, - "extends": [ "../../modules/.eslintrc" ], - "parserOptions": { - "sourceType": "commonjs" + "extends": [ + "../../modules/.eslintrc" + ], + "rules": { + "no-jquery/no-done-fail": "warn" } } diff --git a/editcheck/modules/BaseEditCheck.js b/editcheck/modules/BaseEditCheck.js deleted file mode 100644 index e5d8a81a51..0000000000 --- a/editcheck/modules/BaseEditCheck.js +++ /dev/null @@ -1,141 +0,0 @@ -mw.editcheck.BaseEditCheck = function MWBaseEditCheck( config ) { - this.config = config; -}; - -OO.initClass( mw.editcheck.BaseEditCheck ); - -mw.editcheck.BaseEditCheck.static.onlyCoveredNodes = false; - -mw.editcheck.BaseEditCheck.static.choices = [ - { - action: 'accept', - label: ve.msg( 'editcheck-dialog-action-yes' ), - icon: 'check' - }, - { - action: 'reject', - label: ve.msg( 'editcheck-dialog-action-no' ), - icon: 'close' - } -]; - -mw.editcheck.BaseEditCheck.static.description = ve.msg( 'editcheck-dialog-addref-description' ); - -/** - * @param {ve.dm.Surface} surfaceModel - * @return {mw.editcheck.EditCheckAction[]} - */ -mw.editcheck.BaseEditCheck.prototype.onBeforeSave = null; - -/** - * @param {ve.dm.Surface} surfaceModel - * @return {mw.editcheck.EditCheckAction[]} - */ -mw.editcheck.BaseEditCheck.prototype.onDocumentChange = null; - -/** - * @param {string} choice `action` key from static.choices - * @param {mw.editcheck.EditCheckAction} action - * @param {ve.ui.EditCheckContextItem} contextItem - */ -mw.editcheck.BaseEditCheck.prototype.act = null; - -/** - * @param {mw.editcheck.EditCheckAction} action - * @return {Object[]} - */ -mw.editcheck.BaseEditCheck.prototype.getChoices = function () { - return this.constructor.static.choices; -}; - -/** - * @param {mw.editcheck.EditCheckAction} action - * @return {string} - */ -mw.editcheck.BaseEditCheck.prototype.getDescription = function () { - return this.constructor.static.description; -}; - -/** - * Find out whether the check should be applied - * - * This is a general check for its applicability to the viewer / page, rather - * than a specific check based on the current edit. It's used to filter out - * checks before any maybe-expensive content analysis happens. - * - * @return {boolean} Whether the check should be shown - */ -mw.editcheck.BaseEditCheck.prototype.canBeShown = function () { - // all checks are only in the main namespace for now - if ( mw.config.get( 'wgNamespaceNumber' ) !== mw.config.get( 'wgNamespaceIds' )[ '' ] ) { - return false; - } - // some checks are configured to only be for logged in / out users - if ( mw.editcheck.ecenable ) { - return true; - } - // account status: - // loggedin, loggedout, or any-other-value meaning 'both' - // we'll count temporary users as "logged out" by using isNamed here - if ( this.config.account === 'loggedout' && mw.user.isNamed() ) { - return false; - } - if ( this.config.account === 'loggedin' && !mw.user.isNamed() ) { - return false; - } - // some checks are only shown for newer users - if ( this.config.maximumEditcount && mw.config.get( 'wgUserEditCount', 0 ) > this.config.maximumEditcount ) { - return false; - } - return true; -}; - -/** - * Get content ranges where at least the minimum about of text has been changed - * - * @param {ve.dm.Document} documentModel - * @return {ve.Range[]} - */ -mw.editcheck.BaseEditCheck.prototype.getModifiedContentRanges = function ( documentModel ) { - return mw.editcheck.getModifiedRanges( documentModel, this.constructor.static.onlyCoveredNodes ) - .filter( - ( range ) => range.getLength() >= this.config.minimumCharacters && - this.isRangeInValidSection( range, documentModel ) - ); -}; - -/** - * Check if a modified range is a section we don't ignore (config.ignoreSections) - * - * @param {ve.Range} range - * @param {ve.dm.Document} documentModel - * @return {boolean} - */ -mw.editcheck.BaseEditCheck.prototype.isRangeInValidSection = function ( range, documentModel ) { - const ignoreSections = this.config.ignoreSections || []; - if ( ignoreSections.length === 0 && !this.config.ignoreLeadSection ) { - // Nothing is forbidden, so everything is permitted - return true; - } - const isHeading = ( nodeType ) => nodeType === 'mwHeading'; - // Note: we set a limit of 1 here because otherwise this will turn around - // to keep looking when it hits the document boundary: - const heading = documentModel.getNearestNodeMatching( isHeading, range.start, -1, 1 ); - if ( !heading ) { - // There's no preceding heading, so work out if we count as being in a - // lead section. It's only a lead section if there's more headings - // later in the document, otherwise it's just a stub article. - return !( - this.config.ignoreLeadSection && - !!documentModel.getNearestNodeMatching( isHeading, range.start, 1 ) - ); - } - if ( ignoreSections.length === 0 ) { - // There's nothing left to deny - return true; - } - const compare = new Intl.Collator( documentModel.getLang(), { sensitivity: 'accent' } ).compare; - const headingText = documentModel.data.getText( false, heading.getRange() ); - // If the heading text matches any of ignoreSections, return false. - return !ignoreSections.some( ( section ) => compare( headingText, section ) === 0 ); -}; diff --git a/editcheck/modules/ConvertReferenceEditCheck.js b/editcheck/modules/ConvertReferenceEditCheck.js deleted file mode 100644 index 1ef08e3df0..0000000000 --- a/editcheck/modules/ConvertReferenceEditCheck.js +++ /dev/null @@ -1,36 +0,0 @@ -mw.editcheck.ConvertReferenceEditCheck = function MWConvertReferenceEditCheck( /* config */ ) { - // Parent constructor - mw.editcheck.ConvertReferenceEditCheck.super.apply( this, arguments ); -}; - -OO.inheritClass( mw.editcheck.ConvertReferenceEditCheck, mw.editcheck.BaseEditCheck ); - -mw.editcheck.ConvertReferenceEditCheck.static.name = 'convertReference'; - -mw.editcheck.ConvertReferenceEditCheck.prototype.onDocumentChange = function ( surfaceModel ) { - const seenIndexes = {}; - const documentModel = surfaceModel.getDocument(); - return documentModel.getNodesByType( 'mwReference' ).map( ( node ) => { - const refModel = ve.dm.MWReferenceModel.static.newFromReferenceNode( node ); - const index = refModel.getListIndex(); - if ( seenIndexes[ index ] ) { - return null; - } - seenIndexes[ index ] = true; - const referenceNode = documentModel.getInternalList().getItemNode( index ); - const href = ve.ui.CitoidReferenceContextItem.static.getConvertibleHref( referenceNode ); - if ( href ) { - const fragment = surfaceModel().getFragment( new ve.dm.LinearSelection( node.getOuterRange() ) ); - return new mw.editcheck.EditCheckAction( { - highlight: fragment, - selection: fragment, - message: ve.msg( 'citoid-referencecontextitem-convert-message' ), - check: this - } ); - } else { - return null; - } - } ).filter( ( obj ) => obj ); -}; - -mw.editcheck.editCheckFactory.register( mw.editcheck.ConvertReferenceEditCheck ); diff --git a/editcheck/modules/EditCheck.less b/editcheck/modules/EditCheck.less index ad1b7538b0..9c450fc836 100644 --- a/editcheck/modules/EditCheck.less +++ b/editcheck/modules/EditCheck.less @@ -1,24 +1,105 @@ -/* Toolbar */ +@import '../../lib/codex-design-tokens/theme-wikimedia-ui.less'; -.ve-ui-editCheck-toolbar { - .oo-ui-toolbar-bar { - display: flex; +.skin-vector-2022 { + .ve-editcheck-available & { + .mw-page-container-inner { + transition: grid-template-columns 250ms, column-gap 250ms; /* stylelint-disable-line plugin/no-unsupported-browser-features */ + } + + .mw-body { + transition: padding 250ms; + padding-right: 0; + + .vector-column-end { + transition: width 250ms; + } + } + + .ve-init-mw-desktopArticleTarget .ve-init-mw-target-surface .ve-ui-sidebarDialog { + // Sidebar fades in and slides in from the right side of the screen + margin-right: -300px; + overflow-x: visible; + opacity: 0; + left: 150px; + transition: opacity 250ms, left 250ms; + } + + .mw-body .vector-column-end, + .vector-pinnable-header-pin-button { + @media screen and ( max-width: 1492px ) { + // Pre-emptively hide right sidebar below width at which it would start + // squashing the main content area. Not 100% necessary but reduces amount + // of movement when EditCheck opens at these widths. + display: none !important; /* stylelint-disable-line declaration-no-important */ + } + } } - .oo-ui-toolbar-tools { - flex: 1; - display: flex; + .ve-editcheck-enabled &, + .ve-editcheck-transitioning & { + .mw-body .vector-column-end, + .vector-main-menu-landmark, + .vector-pinnable-header-pin-button { + // Hide sidebars during transitions as they reflow their own text when the change width + display: none !important; /* stylelint-disable-line declaration-no-important */ + } } - .oo-ui-toolbar-tools.oo-ui-toolbar-after { - flex: 0; + /* stylelint-disable-next-line selector-not-notation */ + .ve-editcheck-enabled:not( .vector-feature-main-menu-pinned-disabled.vector-toc-not-available, .vector-feature-main-menu-pinned-disabled.vector-feature-toc-pinned-clientpref-0 ) & { + .mw-page-container-inner { + // At maximum width: + // 7rem is approximate half the difference between the maximum width + // of the main page container and VE + EditCheck, so this places VE + // in the center. Using a numeric value for centering allows the + // transition to animate correctly. + grid-template-columns: ~'7rem minmax( 0, 1fr )'; + column-gap: 0; + + @media screen and ( max-width: @max-width-breakpoint-desktop ) { + // Width constrained by viewport: + // Calculate centering value as ( 100vw - ) / 2 + grid-template-columns: ~'calc(50vw - 44rem) minmax( 0, 1fr )'; + } + } } - &.ve-init-mw-mobileArticleTarget-toolbar .oo-ui-toolbar-tools.oo-ui-toolbar-after { - display: none; + .ve-editcheck-enabled & { + .mw-body { + // Padding to prevent EditCheck sidebar from going off screen + padding-right: 300px; + } + + .ve-init-mw-desktopArticleTarget .ve-init-mw-target-surface .ve-ui-sidebarDialog { + opacity: 1; + left: 0; + } + } + + .ve-editcheck-transitioning.vector-feature-main-menu-pinned-disabled.vector-toc-not-available &, + .ve-editcheck-enabled.vector-feature-main-menu-pinned-disabled.vector-toc-not-available &, + .ve-editcheck-transitioning.vector-feature-main-menu-pinned-disabled.vector-feature-toc-pinned-clientpref-0 &, + .ve-editcheck-enabled.vector-feature-main-menu-pinned-disabled.vector-feature-toc-pinned-clientpref-0 & { + @media screen and ( min-width: @min-width-breakpoint-desktop ) { + .mw-body { + padding-right: 0; + } + } + + .mw-body .vector-column-end { + display: block !important; /* stylelint-disable-line declaration-no-important */ + visibility: hidden; + width: 300px; + } } } +/* Toolbar */ + +.ve-ui-editCheck-toolbar-tools { + display: flex; +} + .ve-ui-toolbar-group-title { font-weight: bold; flex: 5 !important; /* stylelint-disable-line declaration-no-important */ @@ -26,51 +107,397 @@ text-align: center; } -/* Context item */ +/* Actions */ + +.ve-ui-editCheckDialog { + &-footer { + display: flex; + justify-content: flex-end; + gap: 0; + + > .oo-ui-labelWidget { + align-content: center; + margin-right: @spacing-50; + color: @color-subtle; + + &.oo-ui-widget-disabled { + color: @color-disabled; + } + } + } + + .ve-ui-editCheckActionWidget { + box-sizing: border-box; + white-space: normal; // Minerva needs this + margin: @spacing-50 0; + padding: @spacing-50 @spacing-75; + cursor: pointer; + overflow: hidden; + border-radius: @border-radius-base; + + > .oo-ui-iconElement-icon { + // Fixes icon placement in WMUI theme + top: -@spacing-50; + } + + > .oo-ui-labelElement-label { + font-weight: @font-weight-semi-bold; + } + + &-body { + cursor: auto; + background-color: @background-color-base; + margin: @spacing-50 -@spacing-75 -@spacing-50 -@spacing-75; + padding: @spacing-75; + } + + &-prompt { + margin-bottom: @spacing-75; + font-weight: @font-weight-semi-bold; + display: block; + } + + &-actions { + margin-top: @spacing-100; + + &-prompted { + margin-top: @spacing-75; + } + } + + &-footer { + margin-top: @spacing-100; + color: @color-subtle; + } + + &:not( .ve-ui-editCheckActionWidget-collapsed ) { + box-shadow: 0 2px 2px 0 rgba( 0, 0, 0, 0.2 ); + } + + &.ve-ui-editCheckActionWidget-collapsed { + filter: grayscale( 1 ); + + > .ve-ui-editCheckActionWidget-body { + display: none; + } + } + + &.oo-ui-flaggedElement-warning { + border-color: @border-color-warning; + + > .ve-ui-editCheckActionWidget-head { + background-color: @background-color-warning-subtle; + } + } + + &.oo-ui-flaggedElement-error { + border-color: @border-color-error; + + > .ve-ui-editCheckActionWidget-head { + background-color: @background-color-error-subtle; + } + } + + &.oo-ui-flaggedElement-success { + border-color: @border-color-success; + + > .ve-ui-editCheckActionWidget-head { + background-color: @background-color-success-subtle; + } + } + + &.oo-ui-flaggedElement-notice { + border-color: @border-color-notice; + + > .ve-ui-editCheckActionWidget-head { + background-color: @background-color-notice-subtle; + } + } + + .ve-ui-editCheckActionWidget-feedback { + .oo-ui-fieldLayout-header, + .oo-ui-radioSelectWidget { + padding-bottom: @spacing-100; + } + + .oo-ui-labelElement-label { + font-size: inherit; + } + } + + .ve-ui-editCheckActionWidget-feedback ~ * { + display: none; + } + + &-suggestion { + background: @background-color-success-subtle; + + > .oo-ui-labelElement-label { + color: @color-success; + } + } + } + + &.ve-ui-editCheckDialog-singleAction .ve-ui-editCheckActionWidget-collapsed { + display: none; + } + + // See: .ve-ui-mobileContext, which this is closely mimicking + .mw-mf & { + top: auto; + /* Match toolbar border & shadow */ + border-top: @border-subtle; + box-shadow: 0 -1px 1px 0 rgba( 0, 0, 0, 0.1 ); + /* Transition out faster, as keyboard may be coming up */ + transition: transform 100ms; + transform: translateY( 0% ); + // See: .ve-init-mw-target-surface in ve.init.mw.MobileArticleTarget.less + max-width: calc( 993.3px + (2 * 1em) ); + margin: 0 auto; + + &-close { + position: absolute; + right: 0; + top: 2px; + z-index: 1; + } + + &-footer { + border-top: @border-subtle; + padding: @spacing-12 @spacing-100; + } + + &.ve-ui-editCheckDialog-collapsed { + display: block; + transition: transform 250ms; + transform: translateY( calc( 100% - 2.5em ) ); + } -.ve-ui-editCheckContextItem { - > .ve-ui-linearContextItem-head { - background: #fce7fe; + .oo-ui-window-body { + padding: 0; + } + + .ve-ui-editCheckActionWidget { + margin: 0; + padding: 0.5em 1em; + border-width: 0; + box-shadow: none; + background-color: transparent !important; /* stylelint-disable-line declaration-no-important */ + + /* Matches .ve-ui-mobileContext .ve-ui-linearContextItem-body */ + &-body { + border-top: @border-subtle; + background-color: transparent; + margin: 0.5em -1em 0 -1em; + padding: 0.5em 1em; + } + } } +} + +.mw-mf .ve-ce-surface-reviewMode.ve-ce-surface-deactivated { + // Otherwise the content will be covered by the mobile context at the end + // of the document. (Upstream this?) + margin-bottom: 100%; +} + +/* Mobile sidebar */ - &-actions { - margin-top: 16px; +.ve-ui-editCheck-gutter-active { + div.ve-ui-gutterSidebarEditCheckDialog { + background-color: @background-color-interactive-subtle; + + .ve-ui-editCheck-gutter-action { + position: absolute; + width: 42px; + text-align: center; + margin-top: -3px; + min-height: 24px; + + > .oo-ui-iconElement-icon { + width: 20px; + height: 20px; + margin-top: -4px; + } + + label { + position: absolute; + top: 16px; + right: 5px; + display: block; + border-radius: 3px; + background-color: @accent-color-base; + color: @color-inverted; + font-size: @font-size-x-small; + line-height: 0.9; + padding: 3px; + } + + &-error { + border-left: 2px solid @color-error; + } + + &-warning { + border-left: 2px solid @color-warning; + } + + &-notice { + border-left: 2px solid @color-notice; + } + + &-success { + border-left: 2px solid @color-success; + } + + &-inactive { + border-left: 2px solid @border-color-base; + } + + &-quickaction { + border-left: 0; + + .oo-ui-buttonElement-button { + background: @background-color-progressive; + margin-top: -6px; + } + + .oo-ui-widget-disabled .oo-ui-buttonElement-button { + background: @background-color-disabled; + } + } + } } } -/* Fix the callout border color in browsers which support :has */ -/* stylelint-disable-next-line plugin/no-unsupported-browser-features */ -.ve-ui-desktopContext > .oo-ui-popupWidget:has( .ve-ui-editCheckContextItem:first-child ) .oo-ui-popupWidget-anchor::after { - border-bottom-color: #fce7fe; +.ve-editcheck-available .mw-mf .ve-ce-surface { + margin-right: 16px; } -/* Selections */ +@media all and ( max-width: 993.4px ) { + .ve-editcheck-available .mw-mf { + .ve-init-mw-target-surface { + margin: 0 0 1em; + } -.ve-ce-surface-reviewMode + .ve-ui-overlay .ve-ce-surface-selections-editCheck .ve-ce-surface-selection { - opacity: 0.2; - pointer-events: auto; + .ve-ce-surface { + // Stop reflow during the transition + max-width: calc( 100% - (44px + 16px + 16px) ); + margin: 0 16px 0 32px; + } + + .ve-ui-editCheck-sidebar-active .ve-ce-surface { + margin-left: 16px; + } + + .ve-ui-editCheck-sidebar-active .ve-init-mw-target-surface { + margin: 0; + } + } +} + +@media all and ( min-width: 993.4px ) and ( max-width: @min-width-breakpoint-desktop ) { + .mw-mf .ve-ui-editCheck-sidebar-active .ve-ui-sidebarDialogWindowManager { + margin-right: -44px; + } } -.ve-ce-surface-selections-editCheck .ve-ce-surface-selection > div { - mix-blend-mode: darken; - // Adjust target colours to account for 50% opacity - background: ( #fce7fe - 0.8 * ( #fff ) ) / 0.2; - // border: 1px solid ( ( #d02aac - 0.8 * ( #fff ) ) / 0.2 ); - border-radius: 2px; - padding: 2px; - margin: -2px 0 0 -2px; +@media all and ( min-width: @min-width-breakpoint-desktop ) { + /* stylelint-disable-next-line selector-class-pattern */ + .mw-mf .ve-ui-editCheck-sidebar-active .overlay-content { + width: auto; + } } -.ve-ce-surface-selections-editCheckWarning .ve-ce-surface-selection { - opacity: 0.2; - - > div { - mix-blend-mode: darken; - // Adjust target colours to account for 50% opacity - background: ( #fef6e7 - 0.8 * ( #fff ) ) / 0.2; - border: 1px solid ( ( #a66200 - 0.8 * ( #fff ) ) / 0.2 ); - border-radius: 2px; - padding: 2px; - margin: -2px 0 0 -2px; +/* Selections */ + +.ve-ce-surface-selections-editCheck { + &-active { + .ve-ce-surface-selection { + &-rects { + opacity: 0.2; + } + + &-rect { + // Adjust target colours to account for 50% opacity + background: ( ( #fef6e7 - 0.8 * ( #fff ) ) / 0.2 ); + // border: 1px solid ( ( #a66200 - 0.8 * ( #fff ) ) / 0.2 ); + border-radius: 2px; + padding: 2px; + margin: -2px 0 0 -2px; + } + + &-bounding { + @padding: 3px; + @border: 2px; + @color: #36c; + padding: @padding; + margin: -( @padding + @border ) 0 0 -@padding; + border-style: solid; + border-color: @color; + border-width: @border 0; + @triangleSize: 5px; + + &::before, + &::after { + content: ''; + position: absolute; + width: 0; + height: 0; + } + + &::before { + left: 0; + top: 0; + border-left: @triangleSize solid @color; + border-bottom: @triangleSize solid transparent; + } + + &::after { + right: 0; + bottom: 0; + border-right: @triangleSize solid @color; + border-top: @triangleSize solid transparent; + } + } + + &-editCheck-pending .ve-ce-surface-selection-bounding { + border-color: @color-disabled; + + &::before { + border-left-color: @color-disabled; + } + + &::after { + border-right-color: @color-disabled; + } + } + } + + .ve-ce-surface-selection-gutter { + background-color: @color-base; + z-index: 1; + } + + .ve-ce-surface-selection-editCheck { + &-error .ve-ce-surface-selection-gutter { + background-color: @color-error; + } + + &-warning .ve-ce-surface-selection-gutter { + background-color: @color-warning; + } + + &-notice .ve-ce-surface-selection-gutter { + background-color: @color-notice; + } + + &-success .ve-ce-surface-selection-gutter { + background-color: @color-success; + } + } + } + + &-inactive .ve-ce-surface-selection-gutter { + background-color: @border-color-base; } } diff --git a/editcheck/modules/EditCheckAction.js b/editcheck/modules/EditCheckAction.js index a979e6879d..9a8d5a949e 100644 --- a/editcheck/modules/EditCheckAction.js +++ b/editcheck/modules/EditCheckAction.js @@ -1,16 +1,316 @@ +/** + * EditCheckAction + * + * @class + * @mixes OO.EventEmitter + * + * @param {Object} config Configuration options + * @param {mw.editcheck.BaseEditCheck} config.check Check which created this action + * @param {ve.dm.SurfaceFragment[]} config.fragments Affected fragments + * @param {ve.dm.SurfaceFragment} [config.focusFragment] Fragment to focus + * @param {jQuery|string|Function|OO.ui.HtmlSnippet} [config.title] Title + * @param {jQuery|string|Function|OO.ui.HtmlSnippet} [config.message] Body message + * @param {jQuery|string|Function|OO.ui.HtmlSnippet} [config.prompt] Prompt to show before choices + * @param {string} [config.id] Optional unique identifier + * @param {string} [config.icon] Optional icon name + * @param {string} [config.type='warning'] Type of message (e.g., 'warning', 'error') + * @param {boolean} [config.suggestion] Whether this is a suggestion + * @param {Object[]} [config.choices] User choices + */ mw.editcheck.EditCheckAction = function MWEditCheckAction( config ) { + // Mixin constructor + OO.EventEmitter.call( this ); + + this.mode = config.mode || ''; this.check = config.check; - this.highlight = config.highlight; - this.selection = config.selection; + this.fragments = config.fragments; + this.originalText = this.fragments.map( ( fragment ) => fragment.getText() ); + this.focusFragment = config.focusFragment; this.message = config.message; + this.prompt = config.prompt; + this.footer = config.footer; + this.id = config.id; + this.title = config.title; + this.icon = config.icon; + this.type = config.type || 'warning'; + this.choices = config.choices || config.check.constructor.static.choices; + this.suggestion = config.suggestion; +}; + +/* Inheritance */ + +OO.mixinClass( mw.editcheck.EditCheckAction, OO.EventEmitter ); + +/* Events */ + +/** + * Fired when the user selects an action (e.g., clicks a suggestion button). + * + * @event mw.editcheck.EditCheckAction#act + * @param {jQuery.Promise} promise A promise that resolves when the action is complete + */ + +/* Methods */ + +/** + * Compare the start offsets of two actions. + * + * @param {mw.editcheck.EditCheckAction} a + * @param {mw.editcheck.EditCheckAction} b + * @return {number} + */ +mw.editcheck.EditCheckAction.static.compareStarts = function ( a, b ) { + const aStart = a.getHighlightSelections()[ 0 ].getCoveringRange().start; + const bStart = b.getHighlightSelections()[ 0 ].getCoveringRange().start; + return aStart - bStart; +}; + +/** + * Get the action's title + * + * @return {jQuery|string|Function|OO.ui.HtmlSnippet} + */ +mw.editcheck.EditCheckAction.prototype.getTitle = function () { + return this.title || this.check.getTitle( this ); }; -OO.initClass( mw.editcheck.EditCheckAction ); +/** + * Get the action's footer, if any + * + * @return {jQuery|string|Function|OO.ui.HtmlSnippet|undefined} + */ +mw.editcheck.EditCheckAction.prototype.getFooter = function () { + return this.footer || this.check.getFooter( this ); +}; +/** + * Get the prompt question for the current choices + * + * @return {jQuery|string|Function|OO.ui.HtmlSnippet|undefined} + */ +mw.editcheck.EditCheckAction.prototype.getPrompt = function () { + return this.prompt || this.check.getPrompt( this ); +}; + +/** + * Get the available choices + * + * @return {Object[]} + */ mw.editcheck.EditCheckAction.prototype.getChoices = function () { - return this.check.getChoices( this ); + return this.choices; +}; + +/** + * Get selections to highlight for this check + * + * @return {ve.dm.Selection[]} + */ +mw.editcheck.EditCheckAction.prototype.getHighlightSelections = function () { + return this.fragments.map( ( fragment ) => fragment.getSelection() ); }; +/** + * Get the selection to focus for this check + * + * @return {ve.dm.Selection} + */ +mw.editcheck.EditCheckAction.prototype.getFocusSelection = function () { + // TODO: Instead of fragments[0], create a fragment that covers all fragments? + return ( this.focusFragment || this.fragments[ 0 ] ).getSelection(); +}; + +/** + * Get a description of the check + * + * @return {string} + */ mw.editcheck.EditCheckAction.prototype.getDescription = function () { - return this.check.getDescription( this ); + return this.message || this.check.getDescription( this ); +}; + +/** + * Get the type of this action (e.g., 'warning', 'error') + * + * @return {string} + */ +mw.editcheck.EditCheckAction.prototype.getType = function () { + if ( this.suggestion ) { + return 'success'; + } + return this.type; +}; + +/** + * Get the name of the check type + * + * @return {string} Check type name + */ +mw.editcheck.EditCheckAction.prototype.getName = function () { + return this.check.getName(); +}; + +/** + * Whether this is a suggestion + * + * @return {boolean} + */ +mw.editcheck.EditCheckAction.prototype.isSuggestion = function () { + return this.suggestion; +}; + +/** + * Render as an EditCheckActionWidget + * + * @param {boolean} collapsed Start collapsed + * @param {boolean} singleAction This is the only action shown + * @param {ve.ui.Surface} surface Surface + * @return {mw.editcheck.EditCheckActionWidget} + */ +mw.editcheck.EditCheckAction.prototype.render = function ( collapsed, singleAction, surface ) { + const widget = new mw.editcheck.EditCheckActionWidget( { + type: this.getType(), + icon: this.icon, + name: this.getName(), + label: this.getTitle(), + message: this.getDescription(), + footer: this.getFooter(), + prompt: this.getPrompt(), + mode: this.mode, + singleAction: singleAction, + suggestion: this.suggestion + } ); + widget.actions.connect( this, { + click: [ 'onActionClick', surface ] + } ); + widget.actions.add( this.getChoices().map( + ( choice ) => new OO.ui.ActionWidget( ve.extendObject( { modes: [ '' ], framed: true }, choice ) ) + ) ); + widget.toggleCollapse( collapsed ); + + return widget; +}; + +mw.editcheck.EditCheckAction.prototype.setMode = function ( mode ) { + this.mode = mode; +}; + +/** + * Handle click events from an action button + * + * @param {ve.ui.Surface} surface Surface + * @param {OO.ui.ActionWidget} actionWidget Clicked action widget + * @fires mw.editcheck.EditCheckAction#act + */ +mw.editcheck.EditCheckAction.prototype.onActionClick = function ( surface, actionWidget ) { + const promise = this.check.act( actionWidget.action, this, surface ); + this.emit( 'act', promise || ve.createDeferred().resolve().promise() ); + ve.track( 'activity.editCheck-' + this.getName(), { + action: 'action-' + ( actionWidget.getAction() || 'unknown' ) + } ); +}; + +/** + * Compare to another action + * + * @param {mw.editcheck.EditCheckAction} other Other action + * @param {boolean} allowOverlaps Count overlaps rather than a perfect match + * @return {boolean} + */ +mw.editcheck.EditCheckAction.prototype.equals = function ( other, allowOverlaps ) { + if ( this.check.constructor !== other.check.constructor ) { + return false; + } + if ( this.id || other.id ) { + return this.id === other.id; + } + if ( this.fragments.length !== other.fragments.length ) { + return false; + } + return this.fragments.every( ( fragment ) => { + const selection = fragment.getSelection(); + return other.fragments.some( ( otherFragment ) => { + if ( allowOverlaps ) { + return otherFragment.getSelection().getCoveringRange().overlapsRange( selection.getCoveringRange() ); + } else { + return otherFragment.getSelection().equals( selection ); + } + } ); + } ); +}; + +/** + * Force the action into a stale or not-stale state + * + * @param {boolean} stale + */ +mw.editcheck.EditCheckAction.prototype.setStale = function ( stale ) { + const previousState = this.isStale(); + this.originalText = stale ? null : this.fragments.map( ( fragment ) => fragment.getText() ); + if ( previousState !== this.isStale() ) { + this.emit( 'stale', this.isStale() ); + } +}; + +/** + * Check whether the text has changed since this action was created + * + * @return {boolean} Whether the text has changed since this action was created + */ +mw.editcheck.EditCheckAction.prototype.isStale = function () { + return this.check.canBeStale() && ( + !this.originalText || !OO.compare( + this.originalText, + this.fragments.map( ( fragment ) => fragment.getText() ) + ) + ); +}; + +/** + * Method called by the controller when the action is removed from the action list + */ +mw.editcheck.EditCheckAction.prototype.discarded = function () { + this.emit( 'discard' ); +}; + +/** + * Tag this action + * + * @param {string} tag + */ +mw.editcheck.EditCheckAction.prototype.tag = function ( tag ) { + this.check.tag( tag, this ); +}; + +/** + * Untag this action + * + * @param {string} tag + * @return {boolean} Whether anything was untagged + */ +mw.editcheck.EditCheckAction.prototype.untag = function ( tag ) { + return this.check.untag( tag, this ); +}; + +/** + * Is this action tagged? + * + * @param {string} tag + * @return {boolean} + */ +mw.editcheck.EditCheckAction.prototype.isTagged = function ( tag ) { + if ( this.id ) { + return this.check.isTaggedId( tag, this.id ); + } else { + return this.fragments.some( ( fragment ) => this.check.isTaggedRange( tag, fragment.getSelection().getRange() ) ); + } +}; + +/** + * Get unique tag name for this action + * + * @return {string} + */ +mw.editcheck.EditCheckAction.prototype.getTagName = function () { + return this.check.constructor.static.name; }; diff --git a/editcheck/modules/EditCheckActionWidget.js b/editcheck/modules/EditCheckActionWidget.js new file mode 100644 index 0000000000..a656820ded --- /dev/null +++ b/editcheck/modules/EditCheckActionWidget.js @@ -0,0 +1,208 @@ +/** + * EditCheckActionWidget + * + * @class + * @extends OO.ui.MessageWidget + * + * @param {Object} config Configuration options + * @param {string} config.type Type of message (e.g., 'warning', 'error') + * @param {string|jQuery|Function|OO.ui.HtmlSnippet} config.label Title + * @param {string|jQuery|Function|OO.ui.HtmlSnippet} config.message Body message + * @param {string|jQuery|Function|OO.ui.HtmlSnippet} [config.footer] Footer message + * @param {string} [config.icon] Icon name + * @param {boolean} [config.singleAction] This is the only action shown + * @param {string} [config.mode] Mode for the action set widget + * @param {boolean} [config.suggestion] This is a suggestion + */ +mw.editcheck.EditCheckActionWidget = function MWEditCheckActionWidget( config ) { + this.singleAction = config.singleAction; + this.mode = config.mode || ''; + this.suggestion = config.suggestion; + + this.name = config.name; + + this.actions = new OO.ui.ActionSet(); + this.actions.connect( this, { + change: 'onActionsChange' + } ); + + mw.editcheck.EditCheckActionWidget.super.call( this, config ); + + this.feedbackDeferred = null; + + this.collapsed = false; + this.message = new OO.ui.LabelWidget( { label: config.message } ); + this.prompt = config.prompt && new OO.ui.LabelWidget( { + label: config.prompt, + classes: [ 've-ui-editCheckActionWidget-prompt' ] + } ); + this.footer = config.footer && new OO.ui.LabelWidget( { + label: config.footer, + classes: [ 've-ui-editCheckActionWidget-footer' ] + } ); + this.$actions = $( '
' ).addClass( 've-ui-editCheckActionWidget-actions oo-ui-element-hidden' ); + if ( this.prompt ) { + this.$actions.addClass( 've-ui-editCheckActionWidget-actions-prompted' ) + .append( this.prompt.$element ); + } + + this.$element.on( 'click', this.onClick.bind( this ) ); + + this.$body = $( '
' ) + .append( this.message.$element, this.$actions ) + .addClass( 've-ui-editCheckActionWidget-body' ); + + if ( this.footer ) { + this.$body.append( this.footer.$element ); + } + + if ( this.suggestion ) { + this.$element.addClass( 've-ui-editCheckActionWidget-suggestion' ); + } + + this.$element + .append( this.$body ) + .addClass( 've-ui-editCheckActionWidget' ); +}; + +/* Inheritance */ + +OO.inheritClass( mw.editcheck.EditCheckActionWidget, OO.ui.MessageWidget ); + +/* Events */ + +/** + * Fired when the user toggles the collapsed state of the widget. + * + * @event mw.editcheck.EditCheckActionWidget#togglecollapse + */ + +/* Methods */ + +/** + * Handle change events on the action set + */ +mw.editcheck.EditCheckActionWidget.prototype.onActionsChange = function () { + this.$actions.addClass( 'oo-ui-element-hidden' ).find( '.oo-ui-actionWidget' ).remove(); + this.actions.get( { modes: [ this.mode ] } ).forEach( ( actionWidget ) => { + this.$actions.append( actionWidget.$element ).removeClass( 'oo-ui-element-hidden' ); + } ); +}; + +/** + * @inheritdoc + */ +mw.editcheck.EditCheckActionWidget.prototype.setDisabled = function ( disabled ) { + // Calling setDisabled on the parent doesn't do anything useful, + // and causes the icon to become the wrong color due to an + // upstream bug + // Parent method + // OO.ui.Widget.prototype.setDisabled.call( this, disabled ); + this.actions.forEach( null, ( action ) => { + action.setDisabled( disabled ); + } ); +}; + +/** + * Handle click events anywhere on the widget + * + * @param {jQuery.Event} e Click event + * @fires mw.editcheck.EditCheckActionWidget#togglecollapse + */ +mw.editcheck.EditCheckActionWidget.prototype.onClick = function ( e ) { + if ( this.singleAction ) { + return; + } + if ( this.$body[ 0 ].contains( e.target ) ) { + return; + } + this.emit( 'togglecollapse' ); + + e.preventDefault(); +}; + +/** + * Toggle the collapsed state of the widget + * + * @param {boolean} [collapsed] The new collapsed state, toggles if unset + */ +mw.editcheck.EditCheckActionWidget.prototype.toggleCollapse = function ( collapsed ) { + const previousState = this.collapsed; + this.collapsed = collapsed !== undefined ? collapsed : !this.collapsed; + this.$element.toggleClass( 've-ui-editCheckActionWidget-collapsed', this.collapsed ); + + if ( this.collapsed && previousState !== this.collapsed && this.feedbackDeferred ) { + this.feedbackDeferred.reject(); + } +}; + +/** + * Show a feedback panel + * + * @param {Object} data + * @param {string} data.title + * @param {string} [data.description] + * @param {Object[]} data.choices + * @return {jQuery.Promise} Promise which resolves when feedback is submitted or is rejected when back is chosen + */ +mw.editcheck.EditCheckActionWidget.prototype.showFeedback = function ( data ) { + const deferred = this.feedbackDeferred = ve.createDeferred(); + if ( this.suggestion ) { + // Suggestions bypass feedback surveys + return deferred.resolve().promise(); + } + + const form = new OO.ui.FieldsetLayout( { + classes: [ 've-ui-editCheckActionWidget-feedback' ] + } ); + const answerRadioSelect = new OO.ui.RadioSelectWidget( { + items: data.choices.map( ( choice ) => new OO.ui.RadioOptionWidget( choice ) ) + } ); + const submit = new OO.ui.ButtonInputWidget( { + label: ve.msg( 'editcheck-dialog-action-submit' ), + flags: [ 'progressive', 'primary' ], + disabled: true + } ); + const back = new OO.ui.ButtonInputWidget( { + label: ve.msg( 'editcheck-dialog-action-back' ), + flags: [ 'safe', 'back' ], + icon: 'previous' + } ); + answerRadioSelect.on( 'select', () => { + submit.setDisabled( !answerRadioSelect.findSelectedItem() ); + } ); + form.addItems( [ + new OO.ui.FieldLayout( answerRadioSelect, { + label: data.description || ve.msg( 'editcheck-reject-description' ), + align: 'top' + } ), + new OO.ui.HorizontalLayout( { + items: [ + new OO.ui.FieldLayout( back ), + new OO.ui.FieldLayout( submit ) + ] + } ) + ] ); + submit.on( 'click', () => { + const selectedItem = answerRadioSelect.findSelectedItem(); + const reason = selectedItem && selectedItem.getData(); + if ( reason ) { + deferred.resolve( reason ); + ve.track( 'activity.editCheck-' + this.name, { action: 'edit-check-feedback-reason-' + reason } ); + } + } ); + back.on( 'click', () => { + deferred.reject(); + } ); + + this.$body.prepend( form.$element ); + + ve.track( 'activity.editCheck-' + this.name, { action: 'edit-check-feedback-shown' } ); + return deferred.promise().always( () => { + // HACK: This causes the answerRadioSelect.onDocumentKeyDownHandler to be unbound + // Otherwise, it'll swallow certain key events (arrow keys, enter, pagedown/up) forever. + answerRadioSelect.$element.blur(); + form.$element.remove(); + this.feedbackDeferred = null; + } ); +}; diff --git a/editcheck/modules/EditCheckContextItem.js b/editcheck/modules/EditCheckContextItem.js deleted file mode 100644 index 4f82dbf8a0..0000000000 --- a/editcheck/modules/EditCheckContextItem.js +++ /dev/null @@ -1,81 +0,0 @@ -/*! - * VisualEditor EditCheckContextItem class. - * - * @copyright See AUTHORS.txt - */ - -/** - * Context item shown after a rich text paste. - * - * @class - * @extends ve.ui.PersistentContextItem - * - * @constructor - * @param {ve.ui.LinearContext} context Context the item is in - * @param {ve.dm.Model} model Model the item is related to - * @param {Object} [config] - */ -ve.ui.EditCheckContextItem = function VeUiEditCheckContextItem() { - // Parent constructor - ve.ui.EditCheckContextItem.super.apply( this, arguments ); - - // Initialization - this.$element.addClass( 've-ui-editCheckContextItem' ); -}; - -/* Inheritance */ - -OO.inheritClass( ve.ui.EditCheckContextItem, ve.ui.PersistentContextItem ); - -/* Static Properties */ - -ve.ui.EditCheckContextItem.static.name = 'editCheckReferences'; - -ve.ui.EditCheckContextItem.static.icon = 'quotes'; - -ve.ui.EditCheckContextItem.static.label = OO.ui.deferMsg( 'editcheck-dialog-addref-title' ); - -/* Methods */ - -/** - * @inheritdoc - */ -ve.ui.EditCheckContextItem.prototype.renderBody = function () { - const $actions = $( '
' ).addClass( 've-ui-editCheckContextItem-actions' ); - - this.data.action.getChoices().forEach( ( choice ) => { - const button = new OO.ui.ButtonWidget( choice ); - button.connect( this, { - click: () => { - this.onChoiceClick( choice.action ); - } - } ); - $actions.append( button.$element ); - } ); - - // HACK: Suppress close button on mobile context - if ( this.context.isMobile() ) { - this.context.closeButton.toggle( false ); - } - - this.$body.append( - $( '

' ).text( this.data.action.getDescription() ), - $actions - ); -}; - -ve.ui.EditCheckContextItem.prototype.close = function ( data ) { - // HACK: Un-suppress close button on mobile context - if ( this.context.isMobile() ) { - this.context.closeButton.toggle( true ); - } - this.data.callback( data, this.data ); -}; - -ve.ui.EditCheckContextItem.prototype.onChoiceClick = function ( choice ) { - this.data.action.check.act( choice, this.data.action, this ); -}; - -/* Registration */ - -ve.ui.contextItemFactory.register( ve.ui.EditCheckContextItem ); diff --git a/editcheck/modules/EditCheckDialog.js b/editcheck/modules/EditCheckDialog.js deleted file mode 100644 index 5bf2a0dbdd..0000000000 --- a/editcheck/modules/EditCheckDialog.js +++ /dev/null @@ -1,129 +0,0 @@ -/*! - * VisualEditor UserInterface EditCheckDialog class. - * - * @copyright See AUTHORS.txt - */ - -/** - * Find and replace dialog. - * - * @class - * @extends ve.ui.ToolbarDialog - * - * @constructor - * @param {Object} [config] Configuration options - */ -ve.ui.EditCheckDialog = function VeUiEditCheckDialog( config ) { - // Parent constructor - ve.ui.EditCheckDialog.super.call( this, config ); - - // Pre-initialization - this.$element.addClass( 've-ui-editCheckDialog' ); -}; - -/* Inheritance */ - -OO.inheritClass( ve.ui.EditCheckDialog, ve.ui.ToolbarDialog ); - -ve.ui.EditCheckDialog.static.name = 'editCheckDialog'; - -ve.ui.EditCheckDialog.static.position = 'side'; - -ve.ui.EditCheckDialog.static.size = 'medium'; - -ve.ui.EditCheckDialog.static.framed = false; - -// // Invisible title for accessibility -// ve.ui.EditCheckDialog.static.title = -// OO.ui.deferMsg( 'visualeditor-find-and-replace-title' ); - -/* Methods */ - -/** - * @inheritdoc - */ -ve.ui.EditCheckDialog.prototype.initialize = function () { - // Parent method - ve.ui.EditCheckDialog.super.prototype.initialize.call( this ); - - this.updateDebounced = ve.debounce( this.update.bind( this ), 100 ); -}; - -ve.ui.EditCheckDialog.prototype.update = function () { - const surfaceView = this.surface.getView(); - const checks = mw.editcheck.editCheckFactory.createAllByListener( 'onDocumentChange', this.surface.getModel() ); - const $checks = $( '

' ); - const selections = []; - checks.forEach( ( check ) => { - $checks.append( new OO.ui.MessageWidget( { - type: 'warning', - label: check.message, - framed: false - } ).$element ); - selections.push( ve.ce.Selection.static.newFromModel( check.highlight.getSelection(), surfaceView ) ); - } ); - surfaceView.drawSelections( 'editCheckWarning', selections ); - this.$body.empty().append( $checks ); -}; - -/** - * @inheritdoc - */ -ve.ui.EditCheckDialog.prototype.getSetupProcess = function ( data ) { - return ve.ui.EditCheckDialog.super.prototype.getSetupProcess.call( this, data ) - .first( () => { - this.surface = data.surface; - this.surface.getModel().on( 'undoStackChange', this.updateDebounced ); - this.update(); - }, this ); -}; - -/** - * @inheritdoc - */ -ve.ui.EditCheckDialog.prototype.getReadyProcess = function ( data ) { - return ve.ui.EditCheckDialog.super.prototype.getReadyProcess.call( this, data ) - .next( () => { - }, this ); -}; - -/** - * @inheritdoc - */ -ve.ui.EditCheckDialog.prototype.getTeardownProcess = function ( data ) { - return ve.ui.EditCheckDialog.super.prototype.getTeardownProcess.call( this, data ) - .next( () => { - this.surface.getModel().off( 'undoStackChange', this.updateDebounced ); - }, this ); -}; - -/* Registration */ - -ve.ui.windowFactory.register( ve.ui.EditCheckDialog ); - -ve.ui.commandRegistry.register( - new ve.ui.Command( - 'editCheckDialog', 'window', 'toggle', { args: [ 'editCheckDialog' ] } - ) -); - -/** - * @class - * @extends ve.ui.ToolbarDialogTool - * @constructor - * @param {OO.ui.ToolGroup} toolGroup - * @param {Object} [config] Configuration options - */ -ve.ui.EditCheckDialogTool = function VeUiEditCheckDialogTool() { - ve.ui.EditCheckDialogTool.super.apply( this, arguments ); -}; -OO.inheritClass( ve.ui.EditCheckDialogTool, ve.ui.ToolbarDialogTool ); -ve.ui.EditCheckDialogTool.static.name = 'editCheckDialog'; -ve.ui.EditCheckDialogTool.static.group = 'notices'; -ve.ui.EditCheckDialogTool.static.icon = 'robot'; -ve.ui.EditCheckDialogTool.static.title = 'Edit check'; // OO.ui.deferMsg( 'visualeditor-dialog-command-help-title' ); -ve.ui.EditCheckDialogTool.static.autoAddToCatchall = false; -ve.ui.EditCheckDialogTool.static.commandName = 'editCheckDialog'; - -// Demo button for opening edit check sidebar -// ve.ui.toolFactory.register( ve.ui.EditCheckDialogTool ); diff --git a/editcheck/modules/EditCheckFactory.js b/editcheck/modules/EditCheckFactory.js index 1d32e9ef37..9c5fbcf1cf 100644 --- a/editcheck/modules/EditCheckFactory.js +++ b/editcheck/modules/EditCheckFactory.js @@ -1,9 +1,22 @@ -mw.editcheck.EditCheckFactory = function MWEditEditCheckFactory() { +/** + * EditCheckFactory + * + * This class provides a registry of Edit Checks, and instantiates and calls them when createAllActionsByListener() is called. + * + * The controller keeps track of the actions which have been returned by previous invocations, and deduplicates actions + * which it has seen before. This allows us to keep state (mostly) out of the checks and EditCheckFactory itself. + * + * @class + * @constructor + * @extends OO.Factory + */ +mw.editcheck.EditCheckFactory = function MWEditCheckFactory() { // Parent constructor - mw.editcheck.EditCheckFactory.super.call( this, this.arguments ); + mw.editcheck.EditCheckFactory.super.call( this, arguments ); this.checksByListener = { onDocumentChange: [], + onBranchNodeChange: [], onBeforeSave: [] }; }; @@ -14,6 +27,9 @@ OO.inheritClass( mw.editcheck.EditCheckFactory, OO.Factory ); /* Methods */ +/** + * @inheritdoc + */ mw.editcheck.EditCheckFactory.prototype.register = function ( constructor, name ) { name = name || ( constructor.static && constructor.static.name ); @@ -32,12 +48,30 @@ mw.editcheck.EditCheckFactory.prototype.register = function ( constructor, name // Parent method mw.editcheck.EditCheckFactory.super.prototype.register.call( this, constructor, name ); - if ( constructor.prototype.onDocumentChange ) { - this.checksByListener.onDocumentChange.push( name ); - } - if ( constructor.prototype.onBeforeSave ) { - this.checksByListener.onBeforeSave.push( name ); + Object.keys( this.checksByListener ).forEach( ( listener ) => { + if ( constructor.prototype[ listener ] ) { + this.checksByListener[ listener ].push( name ); + } + } ); +}; + +/** + * @inheritdoc + */ +mw.editcheck.EditCheckFactory.prototype.unregister = function ( key ) { + if ( typeof key === 'function' ) { + key = key.key || ( key.static && key.static.name ); } + + // Parent method + mw.editcheck.EditCheckFactory.super.prototype.unregister.apply( this, arguments ); + + Object.keys( this.checksByListener ).forEach( ( listener ) => { + const index = this.checksByListener[ listener ].indexOf( key ); + if ( index !== -1 ) { + this.checksByListener[ listener ].splice( index, 1 ); + } + } ); }; /** @@ -53,22 +87,83 @@ mw.editcheck.EditCheckFactory.prototype.getNamesByListener = function ( listener return this.checksByListener[ listener ]; }; -mw.editcheck.EditCheckFactory.prototype.createAllByListener = function ( listener, surfaceModel ) { - const newChecks = []; - this.getNamesByListener( listener ).forEach( ( checkName ) => { - const check = this.create( checkName, mw.editcheck.config[ checkName ] ); +/** + * Create all checks actions for a given listener + * + * Invoked by Controller.prototype.updateForListener, which itself is called in response to user actions such as + * navigating away from a paragraph, making changes to the document, or clicking 'Save changes...' + * + * Checks are created statelessly and then mapped to their 'originals' by the controller. This way if we track state + * on the original, or use object identity with the actions to track UI updates, the object remains stable. + * + * @param {mw.editcheck.Controller} controller + * @param {string} listenerName Listener name + * @param {ve.dm.Surface} surfaceModel Surface model + * @param {boolean} [includeSuggestions=false] + * @return {Promise} Promise that resolves with an updated list of Actions + */ +mw.editcheck.EditCheckFactory.prototype.createAllActionsByListener = function ( controller, listenerName, surfaceModel, includeSuggestions ) { + const actionOrPromiseList = []; + this.getNamesByListener( listenerName ).forEach( ( checkName ) => { + const check = this.create( checkName, controller, {}, includeSuggestions ); if ( !check.canBeShown() ) { return; } - const actions = check[ listener ]( surfaceModel ); - if ( actions.length > 0 ) { - ve.batchPush( newChecks, actions ); + const checkListener = check[ listenerName ]; + let actionOrPromise; + try { + actionOrPromise = checkListener.call( check, surfaceModel ); + } catch ( ex ) { + // HACK: ensure that synchronous exceptions are returned as rejected promises. + // TODO: Consider making all checks return promises. This would unify exception + // handling, at the cost of making debugging be async. + actionOrPromise = Promise.reject( ex ); + } + if ( actionOrPromise ) { + ve.batchPush( actionOrPromiseList, actionOrPromise ); } } ); - newChecks.sort( - ( a, b ) => a.highlight.getSelection().getCoveringRange().start - b.highlight.getSelection().getCoveringRange().start + return Promise.all( actionOrPromiseList ) + .then( ( actions ) => actions.filter( ( action ) => action !== null ) ) + .then( ( actions ) => { + actions.forEach( ( action ) => { + action.suggestion = includeSuggestions; + } ); + actions.sort( mw.editcheck.EditCheckAction.static.compareStarts ); + return actions; + } ); +}; + +/** + * Create a check + * + * This generates the configuration to pass to the check from the various overrides. + * + * @param {string} checkName + * @param {mw.editcheck.Controller} controller + * @param {Object} [extraConfig={}] extra configuration to apply + * @param {boolean} [includeSuggestions=false] + * @return {mw.editcheck.BaseEditCheck} + */ +mw.editcheck.EditCheckFactory.prototype.create = function ( checkName, controller, extraConfig = {}, includeSuggestions = false ) { + return this.constructor.super.prototype.create.call( + this, + checkName, + controller, + this.buildConfig( checkName, extraConfig ), + includeSuggestions ); - return newChecks; +}; + +/** + * Build the config for a check + * + * @param {string} checkName + * @param {Object} [extraConfig={}] extra configuration to apply + * @return {Object} + */ +mw.editcheck.EditCheckFactory.prototype.buildConfig = function ( checkName, extraConfig ) { + return ve.extendObject( {}, mw.editcheck.config[ '*' ], mw.editcheck.config[ checkName ], extraConfig ); }; mw.editcheck.editCheckFactory = new mw.editcheck.EditCheckFactory(); diff --git a/editcheck/modules/EditCheckGutterSectionWidget.js b/editcheck/modules/EditCheckGutterSectionWidget.js new file mode 100644 index 0000000000..dbc560d173 --- /dev/null +++ b/editcheck/modules/EditCheckGutterSectionWidget.js @@ -0,0 +1,162 @@ +/** + * EditCheckGutterSectionWidget + * + * @class + * + * @param {Object} config Configuration options + * @param {mw.editcheck.Controller} config.controller + * @param {mw.editcheck.EditCheckAction[]} config.actions + */ +mw.editcheck.EditCheckGutterSectionWidget = function MWEditCheckGutterSectionWidget( config ) { + this.controller = config.controller; + this.actions = config.actions; + + this.icon = new OO.ui.IconWidget(); + this.iconLabel = new OO.ui.LabelWidget( { + label: this.actions.length.toString(), + invisibleLabel: this.actions.length === 1 + } ); + + this.actionButton = new OO.ui.ButtonWidget( { + icon: 'check', + flags: [ 'invert' ], + label: 'act', + invisibleLabel: true, + framed: false + } ); + this.actionButton.toggle( false ); + + this.$element = $( '
' ) + .addClass( 've-ui-editCheck-gutter-action' ) + .append( this.icon.$element, this.iconLabel.$element, this.actionButton.$element ) + .on( 'click', this.onClick.bind( this ) ); + + if ( config.rect ) { + this.setPosition( config.rect ); + } +}; + +OO.initClass( mw.editcheck.EditCheckGutterSectionWidget ); + +/* Methods */ + +mw.editcheck.EditCheckGutterSectionWidget.prototype.isFocused = function () { + return this.actions.includes( this.controller.focusedAction ); +}; + +mw.editcheck.EditCheckGutterSectionWidget.prototype.getPrimaryAction = function () { + if ( this.controller.focusedAction && this.actions.includes( this.controller.focusedAction ) ) { + return this.controller.focusedAction; + } + return this.actions[ 0 ]; +}; + +mw.editcheck.EditCheckGutterSectionWidget.prototype.update = function () { + const action = this.getPrimaryAction(); + + this.$element + .removeClass( ( index, classes ) => ( + classes.split( ' ' ).filter( ( cls ) => cls.startsWith( 've-ui-editCheck-gutter-action-' ) ) + ) ) + // The following classes are used here: + // * ve-ui-editCheck-gutter-action-error + // * ve-ui-editCheck-gutter-action-warning + // * ve-ui-editCheck-gutter-action-notice + // * ve-ui-editCheck-gutter-action-success + .addClass( 've-ui-editCheck-gutter-action-' + action.getType() ) + .toggleClass( 've-ui-editCheck-gutter-action-inactive', !this.isFocused() ) + .toggleClass( 've-ui-editCheck-gutter-action-stale', action.isStale() ) + .toggleClass( 've-ui-editCheck-gutter-action-suggestion', action.isSuggestion() ); + + if ( action.gutterQuickAction ) { + this.$element.addClass( 've-ui-editCheck-gutter-action-quickaction' ); + this.icon.toggle( false ); + this.iconLabel.toggle( false ); + this.actionButton.toggle( true ); + } else { + this.icon.setIcon( mw.editcheck.EditCheckActionWidget.static.iconMap[ action.getType() ] || 'notice' ); + this.icon.toggle( true ); + this.iconLabel.toggle( true ); + this.actionButton.toggle( false ); + if ( this.actions.includes( this.controller.focusedAction ) ) { + this.icon.setFlags( this.controller.focusedAction.getType() ); + } else { + this.icon.clearFlags(); + } + } +}; + +mw.editcheck.EditCheckGutterSectionWidget.prototype.setPosition = function ( rect ) { + this.$element.css( { + top: rect.top + 2, + height: rect.height + } ); + + this.update(); +}; + +mw.editcheck.EditCheckGutterSectionWidget.prototype.onClick = function () { + if ( this.acting ) { + return; + } + const action = this.getPrimaryAction(); + this.controller.focusAction( action, true ); + // Should we trigger the popup? By default yes, unless + // we're in the onBeforeSave mode where we can assume + // something else is handling it. + if ( this.controller.inBeforeSave ) { + return; + } + // mid-edit + const controller = this.controller; + const surface = controller.surface; + if ( action.gutterQuickAction ) { + // This is an abridged set of what ve.ui.EditCheckDialog.prototype.onAct does + const promise = action.check.act( action.gutterQuickAction, action, surface ); + this.actionButton.setDisabled( true ); + this.acting = true; + promise.then( () => { + this.actionButton.setDisabled( false ); + this.acting = false; + controller.updatePositionsDebounced(); + if ( controller.getActions().includes( action ) ) { + // The action wasn't removed, so show its dialog again + this.showDialogWithAction( action ); + } + } ); + return; + } + const currentWindow = surface.getToolbarDialogs( ve.ui.FixedEditCheckDialog.static.position ).getCurrentWindow(); + if ( !currentWindow || currentWindow.constructor.static.name !== 'fixedEditCheckDialog' ) { + this.showDialogWithAction( action ); + } else if ( this.actions.every( ( sact ) => currentWindow.hasAction( sact ) ) ) { + // Second click: defocus and close + return this.controller.closeDialog(); + } else { + currentWindow.showActions( this.actions, [ action ] ); + currentWindow.footer.toggle( this.actions.length !== 1 ); + } +}; + +mw.editcheck.EditCheckGutterSectionWidget.prototype.showDialogWithAction = function ( action ) { + const windowAction = ve.ui.actionFactory.create( 'window', this.controller.surface, 'check' ); + windowAction.open( + 'fixedEditCheckDialog', + { + controller: this.controller, + inBeforeSave: false, + actions: this.actions, + footer: this.actions.length !== 1, + // just filter out any discarded actions from the allowed set + updateFilter: ( updatedActions, newActions, discardedActions, prevActions ) => prevActions.filter( ( pact ) => !discardedActions.includes( pact ) ) + } + ); + this.controller.focusAction( action, true ); +}; + +mw.editcheck.EditCheckGutterSectionWidget.prototype.teardown = function () { + this.$element.remove(); + + this.controller = null; + this.surface = null; +}; diff --git a/editcheck/modules/EditCheckInspector.js b/editcheck/modules/EditCheckInspector.js deleted file mode 100644 index 74f0b9b33f..0000000000 --- a/editcheck/modules/EditCheckInspector.js +++ /dev/null @@ -1,157 +0,0 @@ -/*! - * VisualEditor UserInterface EditCheckInspector class. - * - * @copyright See AUTHORS.txt - */ - -/** - * Edit check inspector - * - * @class - * @extends ve.ui.FragmentInspector - * - * @constructor - * @param {Object} [config] Configuration options - */ -ve.ui.EditCheckInspector = function VeUiEditCheckInspector( config ) { - // Parent constructor - ve.ui.EditCheckInspector.super.call( this, config ); - - // Pre-initialization - this.$element.addClass( 've-ui-editCheckInspector' ); -}; - -/* Inheritance */ - -OO.inheritClass( ve.ui.EditCheckInspector, ve.ui.FragmentInspector ); - -ve.ui.EditCheckInspector.static.name = 'editCheckReferencesInspector'; - -// ve.ui.EditCheckInspector.static.title = OO.ui.deferMsg( 'editcheck-dialog-title' ); -ve.ui.EditCheckInspector.static.title = OO.ui.deferMsg( 'editcheck-dialog-addref-title' ); - -// ve.ui.EditCheckInspector.static.size = 'context'; - -ve.ui.EditCheckInspector.static.actions = [ - { - label: OO.ui.deferMsg( 'visualeditor-dialog-action-cancel' ), - flags: [ 'safe', 'back' ], - modes: [ 'mobile', 'desktop' ] - }, - { - action: 'continue', - icon: 'next', - flags: [ 'primary', 'progressive' ], - modes: [ 'mobile' ] - } -]; - -/* Methods */ - -/** - * @inheritdoc - */ -ve.ui.EditCheckInspector.prototype.initialize = function () { - // Parent method - ve.ui.EditCheckInspector.super.prototype.initialize.call( this ); - - // Survey panel - this.answerRadioSelect = new OO.ui.RadioSelectWidget( { - items: [ - new OO.ui.RadioOptionWidget( { - data: 'uncertain', - label: ve.msg( 'editcheck-dialog-addref-reject-uncertain' ) - } ), - new OO.ui.RadioOptionWidget( { - data: 'common-knowledge', - label: ve.msg( 'editcheck-dialog-addref-reject-common-knowledge' ) - } ), - new OO.ui.RadioOptionWidget( { - data: 'irrelevant', - label: ve.msg( 'editcheck-dialog-addref-reject-irrelevant' ) - } ), - new OO.ui.RadioOptionWidget( { - data: 'other', - label: ve.msg( 'editcheck-dialog-addref-reject-other' ) - } ) - ] - } ); - this.answerRadioSelect.connect( this, { select: 'updateActions' } ); - - this.answerConfirm = new OO.ui.ButtonWidget( { - flags: [ 'progressive' ], - framed: false, - label: ve.msg( 'ooui-dialog-process-continue' ), - disabled: true - } ); - this.answerConfirm.toggle( !OO.ui.isMobile() ); - this.answerConfirm.connect( this, { click: [ 'executeAction', 'continue' ] } ); - - this.form.addItems( - new OO.ui.FieldsetLayout( { - label: ve.msg( 'editcheck-dialog-addref-reject-question' ), - items: [ - new OO.ui.FieldLayout( this.answerRadioSelect, { - label: ve.msg( 'editcheck-dialog-addref-reject-description' ), - align: 'top' - } ), - new OO.ui.FieldLayout( this.answerConfirm, { - align: 'left' - } ) - ] - } ) - ); -}; - -ve.ui.EditCheckInspector.prototype.updateActions = function () { - const isSelected = !!this.answerRadioSelect.findSelectedItem(); - // desktop - this.answerConfirm.setDisabled( !isSelected ); - // mobile - this.actions.setAbilities( { continue: isSelected } ); -}; - -/** - * @inheritdoc - */ -ve.ui.EditCheckInspector.prototype.getSetupProcess = function ( data ) { - data = data || {}; - return ve.ui.EditCheckInspector.super.prototype.getSetupProcess.call( this, data ) - .first( function () { - this.surface = data.surface; - this.saveProcessDeferred = data.saveProcessDeferred; - this.answerRadioSelect.selectItem( null ); - }, this ); -}; - -/** - * @inheritdoc - */ -ve.ui.EditCheckInspector.prototype.getReadyProcess = function ( data ) { - return ve.ui.EditCheckInspector.super.prototype.getReadyProcess.call( this, data ) - .first( function () { - this.actions.setMode( OO.ui.isMobile() ? 'mobile' : 'desktop' ); - this.updateActions(); - }, this ); -}; - -ve.ui.EditCheckInspector.prototype.getActionProcess = function ( action ) { - if ( action === '' ) { - return new OO.ui.Process( function () { - this.close(); - }, this ); - } - - if ( action === 'continue' ) { - return new OO.ui.Process( function () { - this.close( { action: 'reject', reason: this.answerRadioSelect.findSelectedItem().getData() } ); - ve.track( 'activity.editCheckReferences', { action: 'dialog-choose-' + this.answerRadioSelect.findSelectedItem().getData() } ); - }, this ); - } - - return ve.ui.EditCheckInspector.super.prototype.getActionProcess.call( this, action ); -}; - -/* Registration */ - -ve.ui.windowFactory.register( ve.ui.EditCheckInspector ); diff --git a/editcheck/modules/EditCheckPreSaveToolbarTools.js b/editcheck/modules/EditCheckPreSaveToolbarTools.js new file mode 100644 index 0000000000..db20eee2fc --- /dev/null +++ b/editcheck/modules/EditCheckPreSaveToolbarTools.js @@ -0,0 +1,38 @@ +ve.ui.EditCheckBack = function VeUiEditCheckBack() { + // Parent constructor + ve.ui.EditCheckBack.super.apply( this, arguments ); + + this.setDisabled( false ); +}; +OO.inheritClass( ve.ui.EditCheckBack, ve.ui.Tool ); +ve.ui.EditCheckBack.static.name = 'editCheckBack'; +ve.ui.EditCheckBack.static.icon = 'previous'; +ve.ui.EditCheckBack.static.autoAddToCatchall = false; +ve.ui.EditCheckBack.static.autoAddToGroup = false; +ve.ui.EditCheckBack.static.title = + OO.ui.deferMsg( 'visualeditor-backbutton-tooltip' ); +ve.ui.EditCheckBack.prototype.onSelect = function () { + const surface = this.toolbar.getSurface(); + surface.getContext().hide(); + surface.execute( 'window', 'close', 'fixedEditCheckDialog' ); + this.setActive( false ); + ve.track( 'activity.' + this.getName(), { action: 'tool-used' } ); +}; +ve.ui.EditCheckBack.prototype.onUpdateState = function () { + this.setDisabled( false ); +}; +ve.ui.toolFactory.register( ve.ui.EditCheckBack ); + +ve.ui.EditCheckSaveDisabled = function VeUiEditCheckSaveDisabled() { + // Parent constructor + ve.ui.EditCheckSaveDisabled.super.apply( this, arguments ); +}; +OO.inheritClass( ve.ui.EditCheckSaveDisabled, ve.ui.MWSaveTool ); +ve.ui.EditCheckSaveDisabled.static.name = 'showSaveDisabled'; +ve.ui.EditCheckSaveDisabled.static.autoAddToCatchall = false; +ve.ui.EditCheckSaveDisabled.static.autoAddToGroup = false; +ve.ui.EditCheckSaveDisabled.prototype.onUpdateState = function () { + this.setDisabled( true ); +}; + +ve.ui.toolFactory.register( ve.ui.EditCheckSaveDisabled ); diff --git a/editcheck/modules/TextMatchEditCheck.js b/editcheck/modules/TextMatchEditCheck.js deleted file mode 100644 index d07c38fc44..0000000000 --- a/editcheck/modules/TextMatchEditCheck.js +++ /dev/null @@ -1,36 +0,0 @@ -mw.editcheck.TextMatchEditCheck = function MWTextMatchEditCheck( /* config */ ) { - // Parent constructor - mw.editcheck.TextMatchEditCheck.super.apply( this, arguments ); -}; - -OO.inheritClass( mw.editcheck.TextMatchEditCheck, mw.editcheck.BaseEditCheck ); - -mw.editcheck.TextMatchEditCheck.static.name = 'textMatch'; - -mw.editcheck.TextMatchEditCheck.static.replacers = [ - // TODO: Load text replacement rules from community config - { - query: 'unfortunately', - message: new OO.ui.HtmlSnippet( 'Use of adverbs such as "unfortunately" should usually be avoided so as to maintain an impartial tone. Read more.' ) - } -]; - -mw.editcheck.TextMatchEditCheck.prototype.onDocumentChange = function ( surfaceModel ) { - const actions = []; - this.constructor.static.replacers.forEach( ( replacer ) => { - surfaceModel.getDocument().findText( replacer.query ).forEach( ( range ) => { - const fragment = surfaceModel.getFragment( new ve.dm.LinearSelection( range ) ); - actions.push( - new mw.editcheck.EditCheckAction( { - highlight: fragment, - selection: fragment, - message: replacer.message, - check: this - } ) - ); - } ); - } ); - return actions; -}; - -mw.editcheck.editCheckFactory.register( mw.editcheck.TextMatchEditCheck ); diff --git a/editcheck/modules/controller.js b/editcheck/modules/controller.js new file mode 100644 index 0000000000..76b6db6dcd --- /dev/null +++ b/editcheck/modules/controller.js @@ -0,0 +1,875 @@ +'use strict'; + +const midEditListeners = [ 'onDocumentChange', 'onBranchNodeChange' ]; + +/** + * EditCheck controller + * + * Manages triggering and updating edit checks. + * + * @class + * @constructor + * @mixes OO.EventEmitter + * @param {ve.init.mw.Target} target The VisualEditor target + * @param {Object} config + * @param {boolean} config.suggestions Enable suggestion mode + */ +function Controller( target, config ) { + // Mixin constructors + OO.EventEmitter.call( this ); + + this.actionsByListener = {}; + + this.target = target; + + this.surface = null; + this.inBeforeSave = false; + this.branchNode = null; + this.focusedAction = null; + this.suggestionsMode = config.suggestions; + + this.taggedFragments = {}; + this.taggedIds = {}; + + const debounceWithTeardownCheck = ( func, wait, immediate ) => ve.debounce( ( ...args ) => { + // This could potentially be called after teardown + if ( !this.surface ) { + return; + } + return func( ...args ); + }, wait, immediate ); + + this.onDocumentChangeDebounced = debounceWithTeardownCheck( this.onDocumentChange.bind( this ), 100 ); + this.onPositionDebounced = debounceWithTeardownCheck( this.onPosition.bind( this ), 100 ); + this.onSelectDebounced = debounceWithTeardownCheck( this.onSelect.bind( this ), 100 ); + this.onContextChangeDebounced = debounceWithTeardownCheck( this.onContextChange.bind( this ), 100 ); + this.updatePositionsDebounced = debounceWithTeardownCheck( this.updatePositions.bind( this ) ); + + // Don't run a scroll if the previous animation is still running (which is jQuery 'fast' === 200ms) + this.scrollActionIntoViewDebounced = debounceWithTeardownCheck( this.scrollActionIntoView.bind( this ), 200, true ); +} + +/* Inheritance */ + +OO.mixinClass( Controller, OO.EventEmitter ); + +/* Events */ + +/** + * Actions for a given listener are updated + * + * @event Controller#actionsUpdated + * @param {string} listener The listener type (e.g. 'onBeforeSave') + * @param {mw.editcheck.EditCheckAction[]} actions All current actions + * @param {mw.editcheck.EditCheckAction[]} newActions Actions newly added + * @param {mw.editcheck.EditCheckAction[]} discardedActions Actions newly removed + * @param {boolean} rejected The update was due to a user rejecting/dismissing a check + */ + +/** + * An action is focused + * + * @event Controller#focusAction + * @param {mw.editcheck.EditCheckAction} action Action + * @param {number} index Index of the action in #getActions + * @param {boolean} scrollTo Scroll the action's selection into view + */ + +/** + * Actions have been redrawn or repositioned + * + * @event Controller#position + */ + +/** + * Set up controller + */ +Controller.prototype.setup = function () { + const target = this.target; + target.on( 'surfaceReady', () => { + this.surface = target.getSurface(); + + if ( this.surface.getMode() !== 'visual' ) { + // Some checks will entirely work in source mode for most cases. + // But others will fail spectacularly -- e.g. reference check + // isn't aware of tags and so will suggest that all content + // has references added. As such, disable in source mode for now. + return; + } + if ( !this.editChecksArePossible() ) { + return; + } + // Ideally this would happen slightly earlier: + $( document.documentElement ).addClass( 've-editcheck-available' ); + // Adding the class can cause large layout changes (e.g. hiding Vector + // side panels), so emit a window resize event to notify any components + // that may be affected, e.g. the VE toolbar + window.dispatchEvent( new Event( 'resize' ) ); + + this.surface.getView().on( 'position', this.onPositionDebounced ); + this.surface.getModel().connect( this, { + undoStackChange: 'onDocumentChangeDebounced', + select: 'onSelectDebounced', + contextChange: 'onContextChangeDebounced' + } ); + + this.surface.getSidebarDialogs().connect( this, { + opening: 'onSidebarDialogsOpeningOrClosing', + closing: 'onSidebarDialogsOpeningOrClosing' + } ); + + this.on( 'branchNodeChange', this.onBranchNodeChange, null, this ); + this.on( 'actionsUpdated', this.onActionsUpdated, null, this ); + + // Run on load (e.g. recovering from auto-save) + setTimeout( () => this.refresh(), 100 ); + + this.surface.on( 'destroy', () => { + this.off( 'actionsUpdated' ); + + const win = this.surface.getSidebarDialogs().getCurrentWindow(); + if ( win ) { + win.close(); + } + + this.surface = null; + this.actionsByListener = {}; + this.focusedAction = null; + + this.taggedFragments = {}; + this.taggedIds = {}; + + mw.editcheck.checksShown = {}; + + $( document.documentElement ).removeClass( 've-editcheck-available' ); + window.dispatchEvent( new Event( 'resize' ) ); + } ); + }, null, this ); + + this.setupPreSaveProcess(); +}; + +/** + * Handle sidebar dialog open/close events + * + * Transition skin/VE components around to make room for sidebar + * + * @param {OO.ui.Window} win The window instance + * @param {jQuery.Promise} openingOrClosing Promise that resolves when closing finishes + */ +Controller.prototype.onSidebarDialogsOpeningOrClosing = function ( win, openingOrClosing ) { + if ( win.constructor.static.name !== 'sidebarEditCheckDialog' ) { + return; + } + const isOpening = !win.isOpened(); + // Wait for sidebar to render before applying CSS which starts transitions + requestAnimationFrame( () => { + $( document.documentElement ).toggleClass( 've-editcheck-enabled', isOpening ); + } ); + if ( isOpening ) { + $( document.documentElement ).addClass( 've-editcheck-transitioning' ); + } else { + openingOrClosing.then( () => { + $( document.documentElement ).removeClass( 've-editcheck-transitioning' ); + } ); + } + // Adjust toolbar position after animation ends + setTimeout( () => { + // Check the toolbar still exists (i.e. we haven't closed the editor) + if ( this.target.toolbar ) { + this.target.toolbar.onWindowResize(); + } + }, OO.ui.theme.getDialogTransitionDuration() ); +}; + +/** + * Check if any edit checks could be run for the current user/context + * + * @return {boolean} + */ +Controller.prototype.editChecksArePossible = function () { + return [ 'onBeforeSave', 'onDocumentChange' ].some( + ( listener ) => mw.editcheck.editCheckFactory.getNamesByListener( listener ).some( + ( checkName ) => { + const check = mw.editcheck.editCheckFactory.create( checkName, this ); + return check.canBeShown(); + } + ) + ); +}; + +/** + * Update position of edit check highlights + * + * @fires Controller#position + */ +Controller.prototype.updatePositions = function () { + this.drawSelections(); + + this.emit( 'position' ); +}; + +/** + * Update edit check list + * + * @fires Controller#actionsUpdated + */ +Controller.prototype.refresh = function () { + if ( this.target.deactivating || !this.target.active ) { + return; + } + if ( this.inBeforeSave ) { + // These shouldn't be recalculated + this.emit( 'actionsUpdated', 'onBeforeSave', this.getActions(), [], [], false ); + } else { + // Use a process so that updateForListener doesn't run twice in parallel, + // which causes problems as the active actions list can change. + // TODO: this causes problems if the refresh triggers a sidebar opening + // and both listeners have actions, as the second actionsUpdated won't be + // caught by the still-opening sidebar. + const process = new OO.ui.Process(); + midEditListeners.forEach( + ( listener ) => process.next( () => this.updateForListener( listener, true ) ) + ); + process.execute(); + } +}; + +Controller.prototype.toggleSuggestionsMode = function () { + this.suggestionsMode = !this.suggestionsMode; + this.actionsByListener = {}; + this.refresh(); +}; + +/** + * Fires all edit checks associated with a given listener. + * + * Actions are created anew for every run, but we want continuity for certain state changes. We therefore match them up + * to existing actions by checking for equality, ie, the same constructor and same ID or fragments. + * + * We return a promise so that UI actions such as opening the pre-save dialog + * do not occur until checks have completed. + * + * @param {string} listener e.g. onBeforeSave, onDocumentChange, onBranchNodeChange + * @param {boolean} fromRefresh Update comes from a manual refresh, not a real event + * @return {Promise} An updated set of actions. + * @fires Controller#actionsUpdated + */ +Controller.prototype.updateForListener = function ( listener, fromRefresh ) { + // Get the existing actions for this listener + const existing = this.getActions( listener ); + + let actionsPromise = mw.editcheck.editCheckFactory.createAllActionsByListener( this, listener, this.surface.getModel(), false ); + // Create all actions for this listener + if ( this.suggestionsMode && !this.inBeforeSave ) { + // eslint-disable-next-line no-jquery/no-when + actionsPromise = $.when( + actionsPromise, + mw.editcheck.editCheckFactory.createAllActionsByListener( this, listener, this.surface.getModel(), true ) + ).then( ( checkActions, suggestionActions ) => [ + ...checkActions, + // Discard any suggestions that have an equivalent non-suggestion + ...suggestionActions.filter( ( suggestion ) => !checkActions.find( ( action ) => action.equals( suggestion, true ) ) ) + ] ); + } + return actionsPromise + .then( ( actionsFromListener ) => { + // Try to match each new action to an existing one (to preserve state) + const actions = actionsFromListener.map( ( action ) => { + const oldAction = existing.find( ( existingAction ) => action.equals( existingAction ) ); + if ( oldAction && !( oldAction.isSuggestion() && !action.isSuggestion() ) ) { + // Let a new non-suggestion take over from an old suggestion + return oldAction; + } + return action; + } ); + + let staleUpdated = false; + if ( !fromRefresh ) { + actions.forEach( ( action ) => { + if ( action.isStale() ) { + action.setStale( false ); + staleUpdated = true; + } + } ); + } + + // Update the actions for this listener + this.actionsByListener[ listener ] = actions; + + const newActions = actions.filter( ( action ) => existing.every( ( oldAction ) => !action.equals( oldAction ) ) ); + const discardedActions = existing.filter( ( action ) => actions.every( ( newAction ) => !action.equals( newAction ) ) ); + + // If the actions list changed, update + if ( fromRefresh || staleUpdated || actions.length !== existing.length || newActions.length || discardedActions.length ) { + // TODO: We need to consider a consistency check here as the document state may have changed since the + // action within the promise was created + // Notify listeners that actions have been updated + this.emit( 'actionsUpdated', listener, this.getActions(), newActions, discardedActions, false ); + } + // Return the updated actions + return actions; + } ); +}; + +/** + * Remove an edit check action + * + * @param {string} listener Listener which triggered the action + * @param {mw.editcheck.EditCheckAction} action Action to remove + * @param {boolean} rejected The action was rejected + * @fires Controller#actionsUpdated + */ +Controller.prototype.removeAction = function ( listener, action, rejected ) { + const actions = this.getActions( listener ); + const index = actions.indexOf( action ); + if ( index === -1 ) { + return; + } + const removed = actions.splice( index, 1 ); + + if ( action === this.focusedAction ) { + this.focusedAction = null; + } + + this.emit( 'actionsUpdated', listener, this.getActions(), [], removed, rejected ); +}; + +/** + * Trigger a focus state for a given action + * + * Will emit a focusAction event if the focused action changed or if scrolling + * was requested. + * + * @param {mw.editcheck.EditCheckAction} action Action to focus + * @param {boolean} [scrollTo] Scroll action's selection into view + * @param {boolean} [alignToTop] Align selection to top of page when scrolling + * @fires Controller#focusAction + * @fires Controller#position + */ +Controller.prototype.focusAction = function ( action, scrollTo, alignToTop ) { + if ( !scrollTo && action === this.focusedAction ) { + // Don't emit unnecessary events if there is no change or scroll + return; + } + + this.focusedAction = action; + + if ( scrollTo ) { + this.scrollActionIntoViewDebounced( action, alignToTop ); + } + + this.emit( 'focusAction', action, this.getActions().indexOf( action ), scrollTo ); + + this.updatePositionsDebounced(); +}; + +/** + * Get actions by listener + * + * If no listener is specified, then get all actions relevant to the current moment, i.e.: + * - During beforeSave, get onBeforeSave listeners + * - Otherwise, get all mid-edit listeners + * + * @param {string} [listener] The listener; if omitted, get all relevant actions + * @return {mw.editcheck.EditCheckAction[]} Actions + */ +Controller.prototype.getActions = function ( listener ) { + if ( listener ) { + return this.actionsByListener[ listener ] || []; + } + const listeners = this.inBeforeSave ? [ 'onBeforeSave' ] : midEditListeners; + const actions = [].concat( ...listeners.map( ( lr ) => this.actionsByListener[ lr ] || [] ) ); + actions.sort( mw.editcheck.EditCheckAction.static.compareStarts ); + return actions; +}; + +/** + * Handle select events from the surface model + * + * @param {ve.dm.Selection} selection New selection + */ +Controller.prototype.onSelect = function () { + if ( OO.ui.isMobile() ) { + // On mobile we want to close the drawer if the keyboard is shown + if ( this.surface.getView().hasNativeCursorSelection() ) { + // A native cursor selection means the keyboard will be visible + this.closeDialog( 'mobile-keyboard' ); + } + } + this.updateActions(); +}; + +/** + * Update actions based on the current selection + * + * @fires Controller#actionsUpdated + * @fires Controller#focusAction + */ +Controller.prototype.updateActions = function () { + if ( !this.surface ) { + // This is debounced, and could potentially be called after teardown + return; + } + if ( this.surface.getView().reviewMode ) { + // In review mode the selection and display of checks is being managed by the dialog + return; + } + + const selection = this.surface.getModel().getSelection(); + + if ( !this.inBeforeSave && this.updateCurrentBranchNodeFromSelection( selection ) ) { + this.emit( 'branchNodeChange', this.branchNode ); + } + + if ( this.getActions().length === 0 || selection.isNull() ) { + // Nothing to do + return; + } + const actions = this.getActions().filter( + ( check ) => check.getHighlightSelections().some( + ( highlight ) => highlight.getCoveringRange().containsRange( selection.getCoveringRange() ) ) ); + + if ( actions.length > 0 ) { + // Focus the last action returned, because it should be the most-specific + this.focusAction( actions[ actions.length - 1 ], false ); + } +}; + +/** + * Handle contextChange events from the surface model + */ +Controller.prototype.onContextChange = function () { + if ( OO.ui.isMobile() && this.surface.getContext().isVisible() ) { + // The context overlaps the drawer on mobile, so we should get rid of the drawer + this.closeDialog( 'context' ); + } +}; + +/** + * Handle position events from the surface view + * + * @param {boolean} passive Event is passive (don't scroll) + */ +Controller.prototype.onPosition = function ( passive ) { + this.updatePositionsDebounced(); + + if ( !passive && this.getActions().length && this.focusedAction && this.surface.getView().reviewMode ) { + this.scrollActionIntoViewDebounced( this.focusedAction, !OO.ui.isMobile() ); + } +}; + +/** + * Handle changes to the document model (undoStackChange) + */ +Controller.prototype.onDocumentChange = function () { + if ( !this.inBeforeSave ) { + this.updateForListener( 'onDocumentChange' ); + } +}; + +/** + * Handle changes to the selection moving between branch nodes + */ +Controller.prototype.onBranchNodeChange = function () { + if ( !this.surface ) { + // This is debounced, and could potentially be called after teardown + return; + } + if ( !this.inBeforeSave ) { + this.updateForListener( 'onBranchNodeChange' ); + } +}; + +/** + * Handler when 'actionsUpdated' fires. + * + * Updates gutter and highlights when the action list has changed. + * Displays the edit check dialog if it is not already on screen. + * + * @param {string} listener e.g. onBeforeSave, onDocumentChange, onBranchNodeChange + * @param {mw.editcheck.EditCheckAction[]} actions + * @param {mw.editcheck.EditCheckAction[]} newActions + * @param {mw.editcheck.EditCheckAction[]} discardedActions + */ +Controller.prototype.onActionsUpdated = function ( listener, actions, newActions, discardedActions ) { + // do we need to redraw anything? + if ( newActions.length || discardedActions.length ) { + if ( this.focusedAction && discardedActions.includes( this.focusedAction ) ) { + this.focusedAction = null; + } + this.updatePositionsDebounced(); + } + + // Let actions know they've been discarded + for ( const action of discardedActions ) { + action.discarded(); + } + + // do we need to show mid-edit actions? + if ( listener === 'onBeforeSave' ) { + return; + } + if ( !actions.length ) { + return; + } + const windowName = OO.ui.isMobile() ? 'gutterSidebarEditCheckDialog' : 'sidebarEditCheckDialog'; + let shownPromise; + const currentWindow = this.surface.getSidebarDialogs().getCurrentWindow(); + if ( !currentWindow || currentWindow.constructor.static.name !== windowName ) { + this.target.$element.addClass( 've-ui-editCheck-sidebar-active' ); + const windowAction = ve.ui.actionFactory.create( 'window', this.surface, 'check' ); + shownPromise = windowAction.open( + windowName, + { inBeforeSave: this.inBeforeSave, actions: actions, controller: this } + ).then( ( instance ) => { + ve.track( 'activity.editCheckDialog', { action: 'window-open-from-check-midedit' } ); + instance.closed.then( () => { + this.target.$element.removeClass( 've-ui-editCheck-sidebar-active' ); + } ); + } ); + } else { + shownPromise = ve.createDeferred().resolve().promise(); + } + shownPromise.then( () => { + this.updateShownStats( newActions, 'midedit' ); + + if ( newActions.length ) { + // Check if any new actions are relevant to our current selection: + this.updateActions(); + } + } ); +}; + +/** + * Adds the pre-save edit check dialog before the normal page commit dialog. + * Handles closing the mid-edit dialog, as well as restoring it if the user + * exits the pre-save check dialog. + * + * We execute all pre-save checks, which may be asynchronous, and wait for them + * to complete before opening the pre-save dialog. + * + * TODO: Set a time-out so that we don't hang forever if an async check takes + * too long. + */ +Controller.prototype.setupPreSaveProcess = function () { + const target = this.target; + const preSaveProcess = target.getPreSaveProcess(); + preSaveProcess.next( () => { + const surface = target.getSurface(); + if ( surface.getMode() !== 'visual' ) { + return; + } + ve.track( 'stats.mediawiki_editcheck_preSaveChecks_total', 1, { kind: 'Available' } ); + + const oldFocusedAction = this.focusedAction; + this.inBeforeSave = true; + return this.updateForListener( 'onBeforeSave' ).then( ( actions ) => { + if ( actions.length ) { + ve.track( 'stats.mediawiki_editcheck_preSaveChecks_total', 1, { kind: 'Shown' } ); + + this.setupToolbar( target ); + + let $contextContainer, contextPadding; + if ( surface.context.popup ) { + contextPadding = surface.context.popup.containerPadding; + $contextContainer = surface.context.popup.$container; + surface.context.popup.$container = surface.$element; + surface.context.popup.containerPadding = 20; + } + + return this.closeSidebars( 'preSaveProcess' ).then( () => this.closeDialog( 'preSaveProcess' ).then( () => { + target.onContainerScroll(); + const windowAction = ve.ui.actionFactory.create( 'window', surface, 'check' ); + return windowAction.open( 'fixedEditCheckDialog', { inBeforeSave: true, actions: actions, controller: this } ) + .then( ( instance ) => { + ve.track( 'activity.editCheckDialog', { action: 'window-open-from-check-presave' } ); + this.updateShownStats( actions, 'presave' ); + + this.scrollActionIntoViewDebounced( this.focusedAction, true ); + + instance.closed.then( () => {}, () => {} ).then( () => { + surface.getView().setReviewMode( false ); + this.inBeforeSave = false; + this.focusedAction = oldFocusedAction; + // Re-open the mid-edit sidebar if necessary. + this.refresh(); + } ); + return instance.closing.then( ( data ) => { + if ( target.deactivating || !target.active ) { + // Someone clicking "read" to leave the article + // will trigger the closing of this; in that + // case, just abandon what we're doing + ve.track( 'stats.mediawiki_editcheck_preSaveChecks_total', 1, { kind: 'Abandoned' } ); + return ve.createDeferred().reject().promise(); + } + this.restoreToolbar( target ); + + if ( $contextContainer ) { + surface.context.popup.$container = $contextContainer; + surface.context.popup.containerPadding = contextPadding; + } + + target.onContainerScroll(); + + if ( data ) { + const delay = ve.createDeferred(); + // If they inserted, wait 2 seconds on desktop + // before showing save dialog to give user time + // to see success notification. + setTimeout( () => { + ve.track( 'stats.mediawiki_editcheck_preSaveChecks_total', 1, { kind: 'Completed' } ); + delay.resolve(); + }, !OO.ui.isMobile() && data.action !== 'reject' ? 2000 : 0 ); + return delay.promise(); + } else { + // closed via "back" or otherwise + ve.track( 'stats.mediawiki_editcheck_preSaveChecks_total', 1, { kind: 'Abandoned' } ); + return ve.createDeferred().reject().promise(); + } + } ); + } ); + } ) ); + } else { + this.inBeforeSave = false; + // Counterpart to earlier preSaveChecksShown, for use in tracking + // errors in check-generation: + ve.track( 'stats.mediawiki_editcheck_preSaveChecks_total', 1, { kind: 'NotShown' } ); + } + } ); + } ); +}; + +/** + * Replace toolbar tools for review mode during pre-save checks. + * + * @param {ve.init.mw.ArticleTarget} target + */ +Controller.prototype.setupToolbar = function ( target ) { + const surface = target.getSurface(); + const toolbar = target.getToolbar(); + this.$originalToolbarTools = toolbar.$group.add( toolbar.$after ).addClass( 'oo-ui-element-hidden' ); + + const reviewToolbar = new ve.ui.TargetToolbar( target, target.toolbarConfig ); + reviewToolbar.setup( [ + { + name: 'back', + type: 'bar', + include: [ 'editCheckBack' ] + }, + { + name: 'title', + type: 'label', + label: ve.msg( 'editcheck-dialog-title' ) + }, + { + name: 'save', + type: 'bar', + include: [ 'showSaveDisabled' ] + } + ], surface ); + + reviewToolbar.items[ 1 ].$element.removeClass( 'oo-ui-toolGroup-empty' ); + // Just append the $group of the new toolbar, so we don't have to wire up all the toolbar events. + this.$reviewToolbarGroup = reviewToolbar.$group.addClass( 've-ui-editCheck-toolbar-tools' ); + toolbar.$group.after( this.$reviewToolbarGroup ); + + toolbar.onWindowResize(); +}; + +/** + * Restores the original toolbar tools after review mode is complete. + * + * @param {ve.init.mw.ArticleTarget} target + */ +Controller.prototype.restoreToolbar = function ( target ) { + if ( !this.$reviewToolbarGroup ) { + return; + } + const toolbar = target.getToolbar(); + + this.$reviewToolbarGroup.remove(); + this.$reviewToolbarGroup = null; + + this.$originalToolbarTools.removeClass( 'oo-ui-element-hidden' ); + + toolbar.onWindowResize(); +}; + +/** + * Redraw selection highlights + */ +Controller.prototype.drawSelections = function () { + const surfaceView = this.surface.getView(); + const activeSelections = this.focusedAction ? this.focusedAction.getHighlightSelections().map( + ( selection ) => ve.ce.Selection.static.newFromModel( selection, surfaceView ) + ) : []; + const isStale = !!this.focusedAction && this.focusedAction.isStale(); + const showGutter = !isStale && !OO.ui.isMobile(); + const activeOptions = { showGutter: showGutter, showRects: !isStale, showBounding: isStale }; + + if ( this.inBeforeSave ) { + // Review mode grays out everything that's not highlighted: + const highlightNodes = []; + this.getActions().forEach( ( action ) => { + action.getHighlightSelections().forEach( ( selection ) => { + highlightNodes.push( ...surfaceView.getDocument().selectNodes( selection.getCoveringRange(), 'branches' ).map( ( spec ) => spec.node ) ); + } ); + } ); + surfaceView.setReviewMode( true, highlightNodes ); + // The following classes are used here: + // * ve-ce-surface-selections-editCheck-active + surfaceView.getSelectionManager().drawSelections( 'editCheck-active', activeSelections, activeOptions ); + return; + } + + const actions = this.getActions(); + if ( actions.length === 0 ) { + // Clear any previously drawn selections + surfaceView.getSelectionManager().drawSelections( 'editCheck-active', [] ); + surfaceView.getSelectionManager().drawSelections( 'editCheck-inactive', [] ); + return; + } + const inactiveOptions = { showGutter: showGutter, showRects: false }; + + const inactiveSelections = []; + // Optimization: When showGutter is false inactive selections currently render nothing + if ( showGutter ) { + actions.forEach( ( action ) => { + const isActive = ( action === this.focusedAction ); + action.getHighlightSelections().forEach( ( selection ) => { + const selectionView = ve.ce.Selection.static.newFromModel( selection, surfaceView ); + if ( isActive ) { + activeSelections.push( selectionView ); + } else { + inactiveSelections.push( selectionView ); + } + } ); + } ); + } + + // The following classes are used here: + // * ve-ce-surface-selections-editCheck-active + // * ve-ce-surface-selections-editCheck-inactive + surfaceView.getSelectionManager().drawSelections( 'editCheck-active', activeSelections, activeOptions ); + surfaceView.getSelectionManager().drawSelections( 'editCheck-inactive', inactiveSelections, inactiveOptions ); + + // Add 'type' classes + actions.forEach( ( action ) => { + const type = action.getType(); + const isActive = action === this.focusedAction; + const isPending = action.isTagged( 'pending' ); + action.getHighlightSelections().forEach( ( selection ) => { + if ( !isActive && !showGutter ) { + // Optimization: When showGutter is false inactive selections currently render nothing + return; + } + const selectionElements = surfaceView.getSelectionManager().getCachedSelectionElements( + isActive ? 'editCheck-active' : 'editCheck-inactive', selection, isActive ? activeOptions : inactiveOptions + ); + if ( selectionElements ) { + // The following classes are used here: + // * ve-ce-surface-selection-editCheck-error + // * ve-ce-surface-selection-editCheck-warning + // * ve-ce-surface-selection-editCheck-notice + // * ve-ce-surface-selection-editCheck-success + selectionElements.$selection.addClass( 've-ce-surface-selection-editCheck-' + type ); + if ( isPending ) { + selectionElements.$selection.addClass( 've-ce-surface-selection-editCheck-pending' ); + } + } + } ); + } ); +}; + +/** + * Scrolls an action's selection into view + * + * @param {mw.editcheck.EditCheckAction} action + * @param {boolean} [alignToTop] Align the selection to the top of the viewport + */ +Controller.prototype.scrollActionIntoView = function ( action, alignToTop ) { + // scrollSelectionIntoView scrolls to the focus of a selection, but we + // want the very beginning to be in view, so collapse it: + const selection = action.getHighlightSelections()[ 0 ].collapseToStart(); + const padding = ve.copy( this.surface.getPadding() ); + + padding.top += 10; + padding.bottom += 10; + + if ( ve.ui.FixedEditCheckDialog.static.position === 'below' ) { + // TODO: ui.surface getPadding should really be fixed for this + const currentWindow = this.surface.getToolbarDialogs( ve.ui.FixedEditCheckDialog.static.position ).getCurrentWindow(); + if ( currentWindow ) { + padding.bottom += currentWindow.getContentHeight(); + } + } + this.surface.scrollSelectionIntoView( selection, { + animate: true, + padding: padding, + alignToTop: alignToTop + } ); +}; + +/** + * Closes the fixed edit check dialog (pre-save). + * + * @param {string} [action] Name of action which triggered the close ('mobile-keyboard', 'context', 'preSaveProcess') + * @return {jQuery.Promise} + */ +Controller.prototype.closeDialog = function ( action ) { + if ( !this.focusedAction ) { + return ve.createDeferred().resolve().promise(); + } + this.focusAction( undefined ); + const windowAction = ve.ui.actionFactory.create( 'window', this.surface, 'check' ); + return windowAction.close( 'fixedEditCheckDialog', action ? { action: action } : undefined ).closed.then( () => {}, () => {} ); +}; + +/** + * Closes the sidebar edit check dialogs (mid-edit). + * + * @param {string} [action] Name of action which triggered the close (currently only 'preSaveProcess') + * @return {jQuery.Promise} + */ +Controller.prototype.closeSidebars = function ( action ) { + const currentWindow = this.surface.getSidebarDialogs().getCurrentWindow(); + if ( currentWindow ) { + // .always is not chainable + return currentWindow.close( action ? { action: action } : undefined ).closed.then( () => {}, () => {} ); + } + return ve.createDeferred().resolve().promise(); +}; + +/** + * Set the current branch node from a selection + * + * @param {ve.dm.Selection} selection New selection + * @return {boolean} whether the branch node changed + */ +Controller.prototype.updateCurrentBranchNodeFromSelection = function ( selection ) { + let newBranchNode = null; + if ( selection instanceof ve.dm.LinearSelection ) { + newBranchNode = this.surface.model.documentModel.getBranchNodeFromOffset( selection.range.to ); + } + if ( newBranchNode !== this.branchNode ) { + this.branchNode = newBranchNode; + return true; + } + return false; +}; + +Controller.prototype.updateShownStats = function ( actions, moment ) { + actions.forEach( ( action ) => { + if ( action.isSuggestion() ) { + ve.track( 'activity.editCheck-' + action.getName(), { action: 'suggestion-shown-' + moment } ); + } else { + mw.editcheck.checksShown[ action.getName() ] = true; + ve.track( 'activity.editCheck-' + action.getName(), { action: 'check-shown-' + moment } ); + } + } ); +}; + +module.exports = { + Controller: Controller +}; diff --git a/editcheck/modules/dialogs/EditCheckDialog.js b/editcheck/modules/dialogs/EditCheckDialog.js new file mode 100644 index 0000000000..b8ddff16f9 --- /dev/null +++ b/editcheck/modules/dialogs/EditCheckDialog.js @@ -0,0 +1,442 @@ +/*! + * VisualEditor UserInterface EditCheckDialog class. + * + * @copyright See AUTHORS.txt + */ + +/** + * EditCheckDialog constructor. + * + * Abstract mixin for FixedEditCheckDialog and SidebarEditCheckDialog. + * + * @class + * @abstract + * + * @constructor + */ +ve.ui.EditCheckDialog = function VeUiEditCheckDialog() { + // Pre-initialization + this.$element.addClass( 've-ui-editCheckDialog' ); + + this.acting = false; +}; + +/* Inheritance */ + +OO.initClass( ve.ui.EditCheckDialog ); + +/* Static Properties */ + +// TODO: Keep surface active on mobile for some checks? +ve.ui.EditCheckDialog.static.activeSurface = !OO.ui.isMobile(); + +// Invisible title for accessibility +ve.ui.EditCheckDialog.static.title = OO.ui.deferMsg( 'editcheck-review-title' ); + +ve.ui.EditCheckDialog.static.alwaysFocusAction = false; + +/* Methods */ + +/** + * @inheritdoc + */ +ve.ui.EditCheckDialog.prototype.initialize = function () { + // FIXME: click handlers are getting unbound when the window is closed + + this.closeButton = new OO.ui.ButtonWidget( { + classes: [ 've-ui-editCheckDialog-close' ], + framed: false, + label: ve.msg( 'visualeditor-contextitemwidget-label-close' ), + invisibleLabel: true, + icon: 'expand' + } ).connect( this, { + click: 'onCloseButtonClick' + } ); + + this.currentOffset = null; + this.currentActions = null; + + this.footerLabel = new OO.ui.LabelWidget(); + this.previousButton = new OO.ui.ButtonWidget( { + icon: 'collapse', + title: ve.msg( 'last' ), + invisibleLabel: true, + framed: false + } ).connect( this, { + click: 'onPreviousButtonClick' + } ); + this.nextButton = new OO.ui.ButtonWidget( { + icon: 'expand', + title: ve.msg( 'next' ), + invisibleLabel: true, + framed: false + } ).connect( this, { + click: 'onNextButtonClick' + } ); + this.footer = new OO.ui.HorizontalLayout( { + classes: [ 've-ui-editCheckDialog-footer' ], + items: [ + this.footerLabel, + this.previousButton, + this.nextButton + ] + } ); + + this.$actions = $( '
' ); + this.$body.append( this.closeButton.$element, this.$actions, this.footer.$element ); + if ( mw.editcheck.experimental ) { + const $warning = new OO.ui.MessageWidget( { + type: 'error', + label: 'Currently using experimental edit checks. For testing purposes only.', + inline: true + } ).$element.css( { + 'white-space': 'normal', + margin: '0.5em 1em' + } ); + if ( OO.ui.isMobile() ) { + this.footer.$element.before( $warning ); + } else { + this.$body.append( $warning ); + } + } +}; + +/** + * Handle updates to the list of edit check actions. + * + * @param {string} listener Check listener + * @param {mw.editcheck.EditCheckAction[]} actions All current actions + * @param {mw.editcheck.EditCheckAction[]} newActions Newly added actions + * @param {mw.editcheck.EditCheckAction[]} discardedActions Newly removed actions + * @param {boolean} rejected The last action was rejected/dismissed + */ +ve.ui.EditCheckDialog.prototype.onActionsUpdated = function ( listener, actions, newActions, discardedActions, rejected ) { + if ( this.inBeforeSave !== ( listener === 'onBeforeSave' ) ) { + return; + } + if ( this.updateFilter ) { + actions = this.updateFilter( actions, newActions, discardedActions, this.currentActions ); + } + this.showActions( actions, newActions, rejected ); +}; + +/** + * Show the actions list + * + * @param {mw.editcheck.EditCheckAction[]} actions Actions + * @param {mw.editcheck.EditCheckAction[]} newActions Newly added actions + * @param {boolean} lastActionRejected Last action was rejected/dismissed + */ +ve.ui.EditCheckDialog.prototype.showActions = function ( actions, newActions, lastActionRejected ) { + let currentAction; + if ( this.currentActions && this.currentOffset !== null && actions.includes( this.currentActions[ this.currentOffset ] ) ) { + currentAction = this.currentActions[ this.currentOffset ]; + } + this.currentActions = actions; + if ( actions.length === 0 ) { + this.close( { action: lastActionRejected ? 'reject' : 'complete' } ); + return; + } + + this.refresh(); + + if ( currentAction ) { + // This just adjusts so the previously selected check remains selected: + this.setCurrentOffset( actions.indexOf( currentAction ), false, true ); + } else if ( newActions.length > 0 ) { + this.setCurrentOffset( actions.indexOf( newActions[ 0 ] ), false, false ); + } else if ( this.constructor.static.alwaysFocusAction ) { + // This dialog always wants to have an action focused, so slip the focus onto + // a nearby action if the current one was removed. + const newOffset = Math.min( this.currentOffset, actions.length - 1 ); + this.setCurrentOffset( newOffset, true, false ); + } +}; + +/** + * Check if an action exists in the current actions. + * + * @param {Object} action Action + * @return {boolean} + */ +ve.ui.EditCheckDialog.prototype.hasAction = function ( action ) { + return this.currentActions.some( ( a ) => action.equals( a ) ); +}; + +/** + * Refresh the action list + */ +ve.ui.EditCheckDialog.prototype.refresh = function () { + this.$actions.empty(); + + this.currentActions.forEach( ( action, index ) => { + const widget = action.render( index !== this.currentOffset, this.singleAction, this.surface ); + widget.on( 'togglecollapse', this.onToggleCollapse, [ action, index ], this ); + action.off( 'act' ).on( 'act', this.onAct, [ action, widget ], this ); + + this.$actions.append( widget.$element ); + + // for scrolling later + action.widget = widget; + } ); + + // Update positions immediately to prevent flicker + this.controller.updatePositions(); +}; + +/** + * Set the offset of the current check, within the list of all checks. + * + * @param {number|null} offset New offset + * @param {boolean} fromUserAction The change was triggered by a user action + * @param {boolean} [internal] Change was triggered internally + */ +ve.ui.EditCheckDialog.prototype.setCurrentOffset = function ( offset, fromUserAction, internal ) { + // TODO: work out how to tell the window to recalculate height here + + if ( offset === null || offset === -1 ) { + /* That's valid, carry on */ + offset = null; + } else if ( !Number.isSafeInteger( offset ) || ( offset < 0 || offset > ( this.currentActions.length - 1 ) ) ) { + throw new Error( `Bad offset ${ offset }, expected an integer between 0 and ${ this.currentActions.length - 1 }` ); + } + + this.currentOffset = offset; + + this.currentActions.forEach( ( action, i ) => { + action.widget.toggleCollapse( i !== this.currentOffset ); + } ); + + if ( this.currentOffset !== null ) { + this.footerLabel.setLabel( + ve.msg( 'visualeditor-find-and-replace-results', + ve.init.platform.formatNumber( this.currentOffset + 1 ), + ve.init.platform.formatNumber( this.currentActions.length ) + ) + ); + } else { + this.footerLabel.setLabel( '' ); + } + + // Warning: the toggleCollapse calls above may result in a promise's + // `always` unsetting this.acting. This currently only happens for an + // action widget's feedback form. If we switch away from jquery promises + // or add anything which isn't completely synchronous, this call may need + // to be deferred until this.acting settles: + this.updateNavigationState(); + this.updateSize(); + + if ( !internal ) { + this.controller.focusAction( + this.currentActions[ this.currentOffset ], + // Scroll selection into view if user interacted with dialog + fromUserAction, + // Scroll to top of page in desktop fixed dialog (pre-save) + this.constructor.static.name === 'fixedEditCheckDialog' && !OO.ui.isMobile() + ); + } +}; + +/** + * Update the disabled state of the navigation buttons + */ +ve.ui.EditCheckDialog.prototype.updateNavigationState = function () { + const currentAction = this.currentActions[ this.currentOffset ]; + if ( currentAction ) { + currentAction.widget.setDisabled( this.acting ); + } + this.footerLabel.setDisabled( this.acting ); + this.nextButton.setDisabled( + this.acting || + ( this.currentOffset !== null && this.currentOffset >= this.currentActions.length - 1 ) + ); + this.previousButton.setDisabled( + this.acting || + this.currentOffset === null || this.currentOffset <= 0 + ); +}; + +/** + * Handle focusAction events from the controller + * + * @param {mw.editcheck.EditCheckAction} action Action + * @param {number} index Index of the action in #getActions + * @param {boolean} scrollTo Scroll the action's selection into view + */ +ve.ui.EditCheckDialog.prototype.onFocusAction = function ( action, index, scrollTo ) { + this.setCurrentOffset( this.currentActions.indexOf( action ), scrollTo, true ); +}; + +/** + * @inheritdoc + */ +ve.ui.EditCheckDialog.prototype.getSetupProcess = function ( data, process ) { + return process.first( () => { + this.controller = data.controller; + this.controller.on( 'actionsUpdated', this.onActionsUpdated, false, this ); + this.controller.on( 'focusAction', this.onFocusAction, false, this ); + + const actions = data.actions || this.controller.getActions(); + + if ( !Object.prototype.hasOwnProperty.call( data, 'inBeforeSave' ) ) { + throw new Error( 'inBeforeSave argument required' ); + } + this.inBeforeSave = data.inBeforeSave; + this.surface = data.surface; + this.updateFilter = data.updateFilter; + + // Reset currentOffset so that reusing the dialog multiple times in a + // session won't produce unexpected behavior. (T404661) + this.currentOffset = null; + + this.singleAction = this.inBeforeSave || OO.ui.isMobile(); + + this.closeButton.toggle( OO.ui.isMobile() ); + if ( data.footer !== undefined ) { + this.footer.toggle( data.footer ); + } else { + this.footer.toggle( this.singleAction ); + } + this.$element.toggleClass( 've-ui-editCheckDialog-singleAction', this.singleAction ); + + this.surface.context.hide(); + + this.showActions( actions, actions ); + if ( this.onPosition ) { + // This currently only applies to SidebarEditCheckDialog but needs to be + // called immediately so margin-top is set before the animation starts. + this.onPosition(); + } + }, this ); +}; + +/** + * @inheritdoc + */ +ve.ui.EditCheckDialog.prototype.getTeardownProcess = function ( data, process ) { + return process.next( () => { + this.controller.off( 'actionsUpdated', this.onActionsUpdated, this ); + this.controller.off( 'focusAction', this.onFocusAction, this ); + this.$actions.empty(); + }, this ); +}; + +/** + * HACK: Override #ready to prevent trying to focus $content + * + * @param {Object} data + * @return {jQuery.Promise} + */ +ve.ui.EditCheckDialog.prototype.ready = function ( data ) { + return this.getReadyProcess( data ).execute().then( () => { + // Force redraw by asking the browser to measure the elements' widths + this.$element.addClass( 'oo-ui-window-ready' ).width(); + this.$content.addClass( 'oo-ui-window-content-ready' ).width(); + } ); +}; + +/** + * Handle 'act' events from the mw.widget.EditCheckActionWidget. + * + * @param {mw.editcheck.EditCheckAction} action Action + * @param {mw.editcheck.EditCheckActionWidget} widget Action's widget + * @param {jQuery.Promise} promise Promise which resolves when the action is complete + */ +ve.ui.EditCheckDialog.prototype.onAct = function ( action, widget, promise ) { + this.acting = true; + this.updateNavigationState(); + this.updateSize(); + promise.then( ( data ) => { + if ( data && this.inBeforeSave ) { + // If an action has been taken, we want to linger for a brief moment + // to show the result of the action before moving away + // TODO: This was written for AddReferenceEditCheck but should be + // more generic + const pause = data.action !== 'reject' ? 500 : 0; + setTimeout( () => { + const rejected = [ 'reject', 'dismiss' ].includes( data.action ); + this.controller.removeAction( 'onBeforeSave', action, rejected ); + }, pause ); + } else { + this.controller.refresh(); + } + } ).always( () => { + this.acting = false; + this.updateNavigationState(); + } ); +}; + +/** + * Handle 'togglecollapse' events from the mw.widget.EditCheckActionWidget. + * + * @param {mw.editcheck.EditCheckAction} action Action being expanded/collapsed + * @param {number} index Index of action in list + */ +ve.ui.EditCheckDialog.prototype.onToggleCollapse = function ( action ) { + if ( action.widget.collapsed ) { + // Expand + this.setCurrentOffset( this.currentActions.indexOf( action ), true ); + if ( !OO.ui.isMobile() ) { + const surfaceModel = this.surface.getModel(); + const checkRange = action.getFocusSelection().getCoveringRange(); + const surfaceRange = surfaceModel.getSelection().getCoveringRange(); + // Collapse and move the selection to the nearest part of the check range + // Don't alter it if it touches the check range + if ( surfaceRange === null || surfaceRange.end < checkRange.start ) { + surfaceModel.setLinearSelection( new ve.Range( checkRange.start ) ); + this.surface.getView().activate(); + this.surface.getView().focus(); + } else if ( surfaceRange.start > checkRange.end ) { + surfaceModel.setLinearSelection( new ve.Range( checkRange.end ) ); + this.surface.getView().activate(); + this.surface.getView().focus(); + } + } + } else { + this.setCurrentOffset( null ); + } +}; + +/** + * Handle click events from the close button. + */ +ve.ui.EditCheckDialog.prototype.onCloseButtonClick = function () { + // eslint-disable-next-line no-jquery/no-class-state + const collapse = !this.$element.hasClass( 've-ui-editCheckDialog-collapsed' ); + this.$element.toggleClass( 've-ui-editCheckDialog-collapsed', collapse ); + this.closeButton.setIcon( collapse ? 'collapse' : 'expand' ); +}; + +/** + * Handle click events from the next button. + */ +ve.ui.EditCheckDialog.prototype.onNextButtonClick = function () { + this.setCurrentOffset( this.currentOffset === null ? 0 : this.currentOffset + 1, true ); +}; + +/** + * Handle click events from the previous button. + */ +ve.ui.EditCheckDialog.prototype.onPreviousButtonClick = function () { + this.setCurrentOffset( this.currentOffset === null ? this.currentActions.length - 1 : this.currentOffset - 1, true ); +}; + +/* Command registration */ + +ve.ui.commandRegistry.register( + new ve.ui.Command( + 'editCheckDialogInProcessOpen', 'window', 'open', { args: [ 'editCheckDialog', { listener: 'onDocumentChange' } ] } + ) +); + +ve.ui.commandRegistry.register( + new ve.ui.Command( + 'editCheckDialogInProcessToggle', 'window', 'toggle', { args: [ 'editCheckDialog', { listener: 'onDocumentChange' } ] } + ) +); + +ve.ui.commandRegistry.register( + new ve.ui.Command( + 'editCheckDialogBeforeSave', 'window', 'toggle', { args: [ 'editCheckDialog', { listener: 'onBeforeSave' } ] } + ) +); diff --git a/editcheck/modules/dialogs/EditCheckDialogTool.js b/editcheck/modules/dialogs/EditCheckDialogTool.js new file mode 100644 index 0000000000..a6b9f79492 --- /dev/null +++ b/editcheck/modules/dialogs/EditCheckDialogTool.js @@ -0,0 +1,23 @@ +/** + * Adds a robot button to the toolbar to enable/disable edit check. + * Note: Not currently added to extension.json or init.js, and therefore does not load. + * + * @class + * @extends ve.ui.ToolbarDialogTool + * @constructor + * @param {OO.ui.ToolGroup} toolGroup + * @param {Object} [config] Configuration options + */ +ve.ui.EditCheckDialogTool = function VeUiEditCheckDialogTool() { + ve.ui.EditCheckDialogTool.super.apply( this, arguments ); +}; +OO.inheritClass( ve.ui.EditCheckDialogTool, ve.ui.ToolbarDialogTool ); +ve.ui.EditCheckDialogTool.static.name = 'editCheckDialog'; +ve.ui.EditCheckDialogTool.static.group = 'notices'; +ve.ui.EditCheckDialogTool.static.icon = 'robot'; +ve.ui.EditCheckDialogTool.static.title = 'Edit check'; // OO.ui.deferMsg( 'visualeditor-dialog-command-help-title' ); +ve.ui.EditCheckDialogTool.static.autoAddToCatchall = false; +ve.ui.EditCheckDialogTool.static.commandName = 'editCheckDialogInProcessToggle'; + +// Demo button for opening edit check sidebar +ve.ui.toolFactory.register( ve.ui.EditCheckDialogTool ); diff --git a/editcheck/modules/dialogs/FixedEditCheckDialog.js b/editcheck/modules/dialogs/FixedEditCheckDialog.js new file mode 100644 index 0000000000..781c27f2de --- /dev/null +++ b/editcheck/modules/dialogs/FixedEditCheckDialog.js @@ -0,0 +1,82 @@ +/** + * FixedEditCheckDialog constructor. + * + * This dialog displays edit checks in the pre-save moment, and shows single edit checks at the bottom of the display + * while on mobile. + * + * @class + * @extends ve.ui.ToolbarDialog + * @mixes ve.ui.EditCheckDialog + * @param {Object} config + */ +ve.ui.FixedEditCheckDialog = function VeUiFixedEditCheckDialog( config ) { + // Parent constructor + ve.ui.FixedEditCheckDialog.super.call( this, config ); + + // Mixin constructor + ve.ui.EditCheckDialog.call( this, config ); +}; + +/* Inheritance */ + +OO.inheritClass( ve.ui.FixedEditCheckDialog, ve.ui.ToolbarDialog ); + +OO.mixinClass( ve.ui.FixedEditCheckDialog, ve.ui.EditCheckDialog ); + +/* Static properties */ + +ve.ui.FixedEditCheckDialog.static.name = 'fixedEditCheckDialog'; + +ve.ui.FixedEditCheckDialog.static.position = OO.ui.isMobile() ? 'below' : 'side'; + +ve.ui.FixedEditCheckDialog.static.size = OO.ui.isMobile() ? 'full' : 'medium'; + +ve.ui.FixedEditCheckDialog.static.alwaysFocusAction = true; + +/* Methods */ + +/** + * @inheritdoc + */ +ve.ui.FixedEditCheckDialog.prototype.initialize = function () { + // Parent method + ve.ui.FixedEditCheckDialog.super.prototype.initialize.call( this ); + // Mixin method + return ve.ui.EditCheckDialog.prototype.initialize.call( this ); +}; + +/** + * @inheritdoc + */ +ve.ui.FixedEditCheckDialog.prototype.getSetupProcess = function ( data ) { + // Parent method + const process = ve.ui.FixedEditCheckDialog.super.prototype.getSetupProcess.call( this, data ); + // Mixin method + return ve.ui.EditCheckDialog.prototype.getSetupProcess.call( this, data, process ); +}; + +/** + * @inheritdoc + */ +ve.ui.FixedEditCheckDialog.prototype.getTeardownProcess = function ( data ) { + // Parent method + const process = ve.ui.FixedEditCheckDialog.super.prototype.getTeardownProcess.call( this, data ); + // Mixin method + return ve.ui.EditCheckDialog.prototype.getTeardownProcess.call( this, data, process ); +}; + +/** + * @inheritdoc ve.ui.EditCheckDialog + */ +ve.ui.FixedEditCheckDialog.prototype.onFocusAction = function ( action, index, scrollTo ) { + if ( this.singleAction && action === null ) { + // Can't unset the offset in single-action mode, because it hides the sidebar contents + return; + } + // Mixin method + return ve.ui.EditCheckDialog.prototype.onFocusAction.call( this, action, index, scrollTo ); +}; + +/* Registration */ + +ve.ui.windowFactory.register( ve.ui.FixedEditCheckDialog ); diff --git a/editcheck/modules/dialogs/GutterSidebarEditCheckDialog.js b/editcheck/modules/dialogs/GutterSidebarEditCheckDialog.js new file mode 100644 index 0000000000..b41c2f1bfd --- /dev/null +++ b/editcheck/modules/dialogs/GutterSidebarEditCheckDialog.js @@ -0,0 +1,179 @@ +/*! + * VisualEditor UserInterface GutterSidebarEditCheckDialog class. + * + * @copyright See AUTHORS.txt + */ + +/** + * GutterSidebarEditCheckDialog constructor. + * + * The edit check dialog which is created when the user is on mobile. It adds a narrow gutter wide enough to show an + * icon. When clicked, we create (or reuse) a ve.ui.FixedEditCheckDialog instance to show the check details. + * + * @class + * @extends ve.ui.SidebarDialog + * @constructor + * @param {Object} config Configuration options + */ +ve.ui.GutterSidebarEditCheckDialog = function VeUiGutterSidebarEditCheckDialog( config ) { + // Parent constructor + ve.ui.GutterSidebarEditCheckDialog.super.call( this, config ); + + this.$element.addClass( 've-ui-gutterSidebarEditCheckDialog' ); +}; + +/* Inheritance */ + +OO.inheritClass( ve.ui.GutterSidebarEditCheckDialog, ve.ui.SidebarDialog ); + +/* Static properties */ + +ve.ui.GutterSidebarEditCheckDialog.static.name = 'gutterSidebarEditCheckDialog'; + +ve.ui.GutterSidebarEditCheckDialog.static.size = 'gutter'; + +// The gutter should never steal the focus, as it's intended to be a discreet notification +ve.ui.GutterSidebarEditCheckDialog.static.activeSurface = true; + +/* Methods */ + +/** + * @inheritdoc + */ +ve.ui.GutterSidebarEditCheckDialog.prototype.initialize = function () { + // Parent method + ve.ui.GutterSidebarEditCheckDialog.super.prototype.initialize.call( this ); +}; + +/** + * @inheritdoc + */ +ve.ui.GutterSidebarEditCheckDialog.prototype.getSetupProcess = function ( data ) { + const process = this.constructor.super.prototype.getSetupProcess.call( this, data ); + return process.first( () => { + this.controller = data.controller; + if ( !Object.prototype.hasOwnProperty.call( data, 'inBeforeSave' ) ) { + throw new Error( 'inBeforeSave argument required' ); + } + this.inBeforeSave = data.inBeforeSave; + this.surface = data.controller.surface; + this.surface.getTarget().$element.addClass( 've-ui-editCheck-gutter-active' ); + + this.controller.on( 'actionsUpdated', this.onActionsUpdated, null, this ); + this.controller.on( 'position', this.onPosition, null, this ); + + this.renderActions( data.actions || this.controller.getActions() ); + }, this ); +}; + +/** + * @inheritdoc + */ +ve.ui.GutterSidebarEditCheckDialog.prototype.getTeardownProcess = function ( data ) { + // Parent method + const process = ve.ui.GutterSidebarEditCheckDialog.super.prototype.getTeardownProcess.call( this, data ); + return process.first( () => { + this.controller.disconnect( this ); + + this.widgets.forEach( ( widget ) => widget.teardown() ); + this.widgets = []; + + this.surface = null; + this.controller = null; + }, this ); +}; + +/** + * @inheritdoc + */ +ve.ui.GutterSidebarEditCheckDialog.prototype.onActionsUpdated = function ( listener, actions ) { + if ( ( this.inBeforeSave && listener !== 'onBeforeSave' ) || ( !this.inBeforeSave && listener === 'onBeforeSave' ) ) { + return; + } + this.renderActions( actions ); +}; + +/** + * @inheritdoc + */ +ve.ui.GutterSidebarEditCheckDialog.prototype.onPosition = function () { + this.renderActions( this.controller.getActions() ); +}; + +/** + * Render the edit check actions as gutter icons, grouping overlapping actions. + * + * @param {mw.editcheck.EditCheckAction[]} actions List of actions to render + */ +ve.ui.GutterSidebarEditCheckDialog.prototype.renderActions = function ( actions ) { + if ( actions.length === 0 ) { + this.close( 'complete' ); + return; + } + + const surfaceView = this.surface.getView(); + const sections = []; + + // First join overlapping actions into "sections" + actions.forEach( ( action ) => { + const rects = action.getHighlightSelections().map( ( selection ) => { + const selectionView = ve.ce.Selection.static.newFromModel( selection, surfaceView ); + return selectionView.getSelectionBoundingRect(); + } ).filter( ( rect ) => rect ); + const boundingRect = ve.getBoundingRect( rects ); + if ( !boundingRect ) { + return; + } + + // Look for any other section that the new one overlaps with + // TODO: join when two other sections are joined by the new one? + const prev = sections.find( ( p ) => !( p.rect.bottom < boundingRect.top || boundingRect.bottom < p.rect.top ) ); + if ( prev ) { + // overlap, so merge + prev.actions.push( action ); + // top, bottom, left, right, width, height + prev.rect.top = Math.min( prev.rect.top, boundingRect.top ); + prev.rect.bottom = Math.max( prev.rect.bottom, boundingRect.bottom ); + prev.rect.height = prev.rect.bottom - prev.rect.top; + return; + } + sections.push( { actions: [ action ], rect: boundingRect } ); + } ); + + // Now try to reuse old widgets if possible, to avoid icons flickering + const oldWidgets = this.widgets || []; + let shown = false; + this.widgets = []; + sections.forEach( ( section ) => { + let widget; + const index = oldWidgets.findIndex( + ( owidget ) => owidget.actions.length === section.actions.length && + owidget.actions.every( ( oact ) => section.actions.includes( oact ) ) + ); + let actionToShow; + if ( index !== -1 ) { + widget = oldWidgets.splice( index, 1 )[ 0 ]; + } else { + widget = new mw.editcheck.EditCheckGutterSectionWidget( { + actions: section.actions, + controller: this.controller + } ); + if ( !shown ) { + actionToShow = section.actions.find( ( action ) => action.check.constructor.static.takesFocus ); + } + this.$body.append( widget.$element ); + } + widget.setPosition( section.rect ); + this.widgets.push( widget ); + if ( actionToShow ) { + widget.showDialogWithAction( actionToShow ); + shown = true; + } + } ); + + oldWidgets.forEach( ( widget ) => widget.teardown() ); +}; + +/* Registration */ + +ve.ui.windowFactory.register( ve.ui.GutterSidebarEditCheckDialog ); diff --git a/editcheck/modules/dialogs/SidebarEditCheckDialog.js b/editcheck/modules/dialogs/SidebarEditCheckDialog.js new file mode 100644 index 0000000000..de927f5880 --- /dev/null +++ b/editcheck/modules/dialogs/SidebarEditCheckDialog.js @@ -0,0 +1,109 @@ +/** + * SidebarEditCheckDialog constructor. + * + * This dialog is shown to the side of a desktop editing session while the user is editing. + * + * @class + * @extends ve.ui.SidebarDialog + * @mixes ve.ui.EditCheckDialog + * @param {Object} config + */ +ve.ui.SidebarEditCheckDialog = function VeUiSidebarEditCheckDialog( config ) { + // Parent constructor + ve.ui.SidebarEditCheckDialog.super.call( this, config ); + + // Mixin constructor + ve.ui.EditCheckDialog.call( this, config ); +}; + +/* Inheritance */ + +OO.inheritClass( ve.ui.SidebarEditCheckDialog, ve.ui.SidebarDialog ); + +OO.mixinClass( ve.ui.SidebarEditCheckDialog, ve.ui.EditCheckDialog ); + +/* Static properties */ + +ve.ui.SidebarEditCheckDialog.static.name = 'sidebarEditCheckDialog'; + +ve.ui.SidebarEditCheckDialog.static.size = 'medium'; + +/* Methods */ + +/** + * @inheritdoc + */ +ve.ui.SidebarEditCheckDialog.prototype.initialize = function () { + // Parent method + ve.ui.SidebarEditCheckDialog.super.prototype.initialize.call( this ); + // Mixin method + return ve.ui.EditCheckDialog.prototype.initialize.call( this ); +}; + +/** + * @inheritdoc + */ +ve.ui.SidebarEditCheckDialog.prototype.getSetupProcess = function ( data ) { + // Parent method + const process = ve.ui.SidebarEditCheckDialog.super.prototype.getSetupProcess.call( this, data ); + // Mixin method + return ve.ui.EditCheckDialog.prototype.getSetupProcess.call( this, data, process ).next( () => { + this.controller.on( 'position', this.onPosition, null, this ); + } ); +}; + +/** + * @inheritdoc + */ +ve.ui.SidebarEditCheckDialog.prototype.getTeardownProcess = function ( data ) { + // Parent method + const process = ve.ui.SidebarEditCheckDialog.super.prototype.getTeardownProcess.call( this, data ); + // Mixin method + return ve.ui.EditCheckDialog.prototype.getTeardownProcess.call( this, data, process ).next( () => { + this.controller.off( 'position', this.onPosition, this ); + } ); +}; + +/** + * Handle position events from the controller + */ +ve.ui.SidebarEditCheckDialog.prototype.onPosition = function () { + if ( this.inBeforeSave ) { + return; + } + const surfaceView = this.surface.getView(); + const surfaceTop = surfaceView.$element.offset().top + 10; + this.currentActions.forEach( ( action ) => { + const widget = action.widget; + if ( widget ) { + let top = Infinity; + action.getHighlightSelections().forEach( ( selection ) => { + const selectionView = ve.ce.Selection.static.newFromModel( selection, surfaceView ); + const rect = selectionView.getSelectionBoundingRect(); + if ( !rect ) { + return; + } + top = Math.min( top, rect.top ); + } ); + widget.$element.css( 'margin-top', '' ); + widget.$element.css( + 'margin-top', + Math.max( 0, top + surfaceTop - widget.$element.offset().top ) + ); + } + } ); +}; + +/** + * @inheritdoc ve.ui.EditCheckDialog + */ +ve.ui.SidebarEditCheckDialog.prototype.onToggleCollapse = function () { + // mixin + ve.ui.EditCheckDialog.prototype.onToggleCollapse.apply( this, arguments ); + + this.onPosition(); +}; + +/* Registration */ + +ve.ui.windowFactory.register( ve.ui.SidebarEditCheckDialog ); diff --git a/editcheck/modules/AddReferenceEditCheck.js b/editcheck/modules/editchecks/AddReferenceEditCheck.js similarity index 64% rename from editcheck/modules/AddReferenceEditCheck.js rename to editcheck/modules/editchecks/AddReferenceEditCheck.js index c3d8a0dd2b..542e2c283a 100644 --- a/editcheck/modules/AddReferenceEditCheck.js +++ b/editcheck/modules/editchecks/AddReferenceEditCheck.js @@ -1,28 +1,50 @@ -mw.editcheck.AddReferenceEditCheck = function MWAddReferenceEditCheck( config ) { +mw.editcheck.AddReferenceEditCheck = function MWAddReferenceEditCheck() { // Parent constructor - mw.editcheck.AddReferenceEditCheck.super.call( this, config ); + mw.editcheck.AddReferenceEditCheck.super.apply( this, arguments ); }; OO.inheritClass( mw.editcheck.AddReferenceEditCheck, mw.editcheck.BaseEditCheck ); mw.editcheck.AddReferenceEditCheck.static.name = 'addReference'; +mw.editcheck.AddReferenceEditCheck.static.title = ve.msg( 'editcheck-dialog-addref-title' ); + mw.editcheck.AddReferenceEditCheck.static.description = ve.msg( 'editcheck-dialog-addref-description' ); +mw.editcheck.AddReferenceEditCheck.static.defaultConfig = ve.extendObject( {}, mw.editcheck.BaseEditCheck.static.defaultConfig, { + minimumCharacters: 50, + beforePunctuation: false +} ); + +mw.editcheck.AddReferenceEditCheck.static.onlyCoveredNodes = true; + mw.editcheck.AddReferenceEditCheck.prototype.onBeforeSave = function ( surfaceModel ) { - return this.findAddedContent( surfaceModel.getDocument() ).map( ( range ) => { - const fragment = surfaceModel.getFragment( new ve.dm.LinearSelection( range ) ); - return new mw.editcheck.EditCheckAction( { - highlight: fragment, - selection: this.adjustForPunctuation( fragment.collapseToEnd() ), - check: this - } ); - } ); + return this.findAddedContent( surfaceModel.getDocument() ).filter( ( range ) => !this.isDismissedRange( range ) ) + .map( + ( range ) => new mw.editcheck.EditCheckAction( { + fragments: [ surfaceModel.getLinearFragment( range ) ], + check: this + } ) + ); +}; +// Only show these before save (for now) +mw.editcheck.AddReferenceEditCheck.prototype.onBranchNodeChange = function () { + if ( this.includeSuggestions || mw.editcheck.suggestions ) { + return mw.editcheck.AddReferenceEditCheck.prototype.onBeforeSave.apply( this, arguments ); + } + return []; }; +/** + * Find content ranges which have been inserted + * + * @param {ve.dm.Document} documentModel + * @param {boolean} includeReferencedContent Include contents that already contains a reference + * @return {ve.Range[]} + */ mw.editcheck.AddReferenceEditCheck.prototype.findAddedContent = function ( documentModel, includeReferencedContent ) { // Broken out so a helper for tagging can call it - const ranges = this.getModifiedContentRanges( documentModel ).filter( ( range ) => { + const ranges = this.getAddedContentRanges( documentModel ).filter( ( range ) => { if ( !includeReferencedContent ) { // 4. Exclude any ranges that already contain references for ( let i = range.start; i < range.end; i++ ) { @@ -42,20 +64,21 @@ mw.editcheck.AddReferenceEditCheck.prototype.findAddedContent = function ( docum return ranges; }; -mw.editcheck.AddReferenceEditCheck.prototype.act = function ( choice, action, contextItem ) { +mw.editcheck.AddReferenceEditCheck.prototype.act = function ( choice, action, surface ) { // The complex citoid workflow means that we can't just count on a single "windowAction" here... - const windowAction = ve.ui.actionFactory.create( 'window', contextItem.context.getSurface(), 'check' ); + const windowAction = ve.ui.actionFactory.create( 'window', surface, 'check' ); switch ( choice ) { case 'accept': ve.track( 'activity.editCheckReferences', { action: 'edit-check-confirm' } ); - action.selection.select(); + + this.adjustForPunctuation( action.fragments[ 0 ].collapseToEnd() ).select(); return windowAction.open( 'citoid' ).then( ( instance ) => instance.closing ).then( ( citoidData ) => { const citoidOrCiteDataDeferred = ve.createDeferred(); if ( citoidData && citoidData.action === 'manual-choose' ) { // The plain reference dialog has been launched. Wait for the data from // the basic Cite closing promise instead. - contextItem.context.getSurface().getDialogs().once( 'closing', ( win, closed, citeData ) => { + surface.getDialogs().once( 'closing', ( win, closed, citeData ) => { citoidOrCiteDataDeferred.resolve( citeData ); } ); } else { @@ -63,45 +86,55 @@ mw.editcheck.AddReferenceEditCheck.prototype.act = function ( choice, action, co // use the data form the Citoid closing promise. citoidOrCiteDataDeferred.resolve( citoidData ); } - citoidOrCiteDataDeferred.promise().then( ( data ) => { - if ( !data ) { - // Reference was not inserted - re-open this context - setTimeout( () => { - // Deactivate again for mobile after teardown has modified selections - contextItem.context.getSurface().getView().deactivate(); - contextItem.context.afterContextChange(); - }, 500 ); - } else { + const citoidOrCiteDataPromise = citoidOrCiteDataDeferred.promise(); + citoidOrCiteDataPromise.then( ( data ) => { + if ( data ) { // Edit check inspector is already closed by this point, but // we need to end the workflow. - contextItem.close( citoidData ); + mw.notify( ve.msg( 'editcheck-dialog-addref-success-notify' ), { type: 'success' } ); } } ); + return citoidOrCiteDataPromise; } ); case 'reject': ve.track( 'activity.editCheckReferences', { action: 'edit-check-reject' } ); - return windowAction.open( - 'editCheckReferencesInspector', - { - fragment: action.highlight, - callback: contextItem.data.callback, - saveProcessDeferred: contextItem.data.saveProcessDeferred - } - // eslint-disable-next-line arrow-body-style - ).then( ( instance ) => { - // contextItem.openingCitoid = false; - return instance.closing; - } ).then( ( data ) => { - if ( !data ) { - // Form was closed, re-open this context - contextItem.context.afterContextChange(); - } else { - contextItem.close( data ); - } + return action.widget.showFeedback( { + title: ve.msg( 'editcheck-dialog-addref-reject-question' ), + description: ve.msg( 'editcheck-dialog-addref-reject-description' ), + choices: [ + { + data: 'uncertain', + label: ve.msg( 'editcheck-dialog-addref-reject-uncertain' ) + }, + { + data: 'common-knowledge', + label: ve.msg( 'editcheck-dialog-addref-reject-common-knowledge' ) + }, + { + data: 'irrelevant', + label: ve.msg( 'editcheck-dialog-addref-reject-irrelevant' ) + }, + { + data: 'other', + label: ve.msg( 'editcheck-dialog-addref-reject-other' ) + } + ] + } ).then( ( reason ) => { + ve.track( 'activity.editCheckReferences', { action: 'dialog-choose-' + reason } ); + this.dismiss( action ); + return ve.createDeferred().resolve( { action: choice, reason: reason } ).promise(); } ); } }; +/** + * @inheritdoc + */ +mw.editcheck.AddReferenceEditCheck.prototype.isRangeValid = function ( range, documentModel ) { + return range.getLength() >= ( this.config.minimumCharacters || 0 ) && + mw.editcheck.AddReferenceEditCheck.super.prototype.isRangeValid.call( this, range, documentModel ); +}; + /** * Adjust a fragment to include/exclude trailing punctuation * @@ -134,4 +167,6 @@ mw.editcheck.AddReferenceEditCheck.prototype.adjustForPunctuation = function ( i return insertionPointFragment; }; +// Register + mw.editcheck.editCheckFactory.register( mw.editcheck.AddReferenceEditCheck ); diff --git a/editcheck/modules/editchecks/AsyncTextCheck.js b/editcheck/modules/editchecks/AsyncTextCheck.js new file mode 100644 index 0000000000..dd7809be56 --- /dev/null +++ b/editcheck/modules/editchecks/AsyncTextCheck.js @@ -0,0 +1,172 @@ +/*! + * EditCheck ContentBranchNode check class + * + * @copyright See AUTHORS.txt + */ + +/** + * Abstract class for async checks that run on the plain text of a ContentBranchNode. + * + * The check runs when selection focus changes branch node, or on pre-save. The subclass + * implements `.checkAsync`. This is called with the ContentBranchNode's plain text + * and returns an outcome, which gets processed by the subclass's `.newAction` method, + * returning a new EditCheckAction if appropriate. + * + * @class + * @constructor + * @param {mw.editcheck.Controller} controller + * @param {Object} [config] + */ +mw.editcheck.AsyncTextCheck = function MWAsyncTextCheck() { + // Parent constructor + mw.editcheck.AsyncTextCheck.super.apply( this, arguments ); + + // Construct memoizeCheckAsync if running for the first time for this constructor + if ( this.constructor.static.memoizedCheckAsync === null ) { + this.constructor.static.memoizedCheckAsync = mw.editcheck.memoize( + ( text ) => this.constructor.static.checkAsync( text ) + ); + } +}; + +/* Inheritance */ + +OO.inheritClass( mw.editcheck.AsyncTextCheck, mw.editcheck.BaseEditCheck ); + +/* Static properties */ + +mw.editcheck.AsyncTextCheck.static.name = null; + +mw.editcheck.AsyncTextCheck.static.canBeStale = true; + +/** + * This static method gets implemented inside the AsyncTextCheck constructor. It + * memoizes the subclass's static method `checkAsync`. + * + * @static + * @param {string} text The text to check + * @return {Promise|any} The outcome of the check + */ +mw.editcheck.AsyncTextCheck.static.memoizedCheckAsync = null; + +/** + * Perform a possibly-asynchronous check on the plaintext of a ContentBranchNode. + * + * The check must be deterministic; i.e. it must always return the same value for the same + * arguments. This allows the result to be memoized. + * + * @abstract + * @static + * @param {string} text The plaintext of the ContentBranchNode + * @return {Promise|any} The outcome of the check, to be passed into #newAction + */ +mw.editcheck.AsyncTextCheck.static.checkAsync = null; + +/* Methods */ + +/** + * @param {string} listener Type of listener, such as 'onBeforeSave' or 'onBranchNodeChange' + * @param {ve.dm.Surface} surfaceModel The surface + * @return {Promise[]} An array of promises containing either an action or null + */ +mw.editcheck.AsyncTextCheck.prototype.handleListener = function ( listener, surfaceModel ) { + const documentModel = surfaceModel.getDocument(); + const selection = surfaceModel.getSelection(); + // TODO let currentBranchNode = null; + if ( selection instanceof ve.dm.LinearSelection && listener !== 'onBeforeSave' ) { + // TODO currentBranchNode = surfaceModel.getDocument().getBranchNodeFromOffset( selection.getRange().to ); + } + + const actionPromises = []; + this.getModifiedContentBranchNodes( documentModel ).forEach( ( node ) => { + const nodeFragment = new ve.dm.SurfaceFragment( surfaceModel, new ve.dm.LinearSelection( node.getRange() ) ); + const range = node.getRange(); + if ( + ( listener === 'onBeforeSave' && this.isTaggedRange( 'interacted', range ) ) || + // mw.editcheck.hasAddedContentFailingToneCheck wants to check for any violations, even dismissed ones. + // Used for tagging. + ( listener !== 'onCheckAll' && this.isDismissedRange( range ) ) + ) { + return; + } + + actionPromises.push( this.checkText( documentModel.data.getText( true, node.getRange() ) ).then( ( outcome ) => { + if ( !outcome ) { + return null; + } + return this.newAction( nodeFragment, outcome ); + } ) ); + } ); + return actionPromises; +}; + +/** + * @inheritdoc + */ +mw.editcheck.AsyncTextCheck.prototype.onBeforeSave = function ( ...args ) { + return this.handleListener( 'onBeforeSave', ...args ); +}; + +/** + * @inheritdoc + */ +mw.editcheck.AsyncTextCheck.prototype.onBranchNodeChange = function ( ...args ) { + return this.handleListener( 'onBranchNodeChange', ...args ); +}; + +/** + * Build an action (or not), depending on the outcome of #checkAsync + * + * Caution: The ContentBranchNode may have changed while waiting for #checkAsync to settle. + * For example, the fragment could be empty if the ContentBranchNode has been deleted. + * + * @param {ve.dm.SurfaceFragment} fragment Fragment whose range was the ContentBranchNode + * @param {any} outcome The outcome returned by #checkAsync + * @return {mw.editcheck.EditCheckAction|null} A new action if appropriate, else null + */ +mw.editcheck.AsyncTextCheck.prototype.newAction = null; + +/** + * Check provided text + * + * @param {string} text + * @param {boolean} [bypass] Whether to bypass any memoized result + * @return {Promise} + */ +mw.editcheck.AsyncTextCheck.prototype.checkText = function ( text, bypass ) { + return Promise.resolve( + this.constructor.static.memoizedCheckAsync( text, bypass ) + ).then( + ( outcome ) => this.afterMemoized( outcome ) + ); +}; + +/** + * A filter to apply after the memoized call has occurred + * + * This is where instance-specific configuration would be applied + * + * @param {any} outcome The outcome returned by #checkAsync + * @return {any} + */ +mw.editcheck.AsyncTextCheck.prototype.afterMemoized = function ( outcome ) { + return outcome; +}; + +/** + * @inheritdoc + */ +mw.editcheck.AsyncTextCheck.prototype.act = function ( choice, action, surface ) { + this.tag( 'interacted', action ); + if ( choice === 'dismiss' ) { + this.dismiss( action ); + // HACK: Recalculate check list + this.controller.updateForListener( 'onBranchNodeChange' ); + return ve.createDeferred().resolve( { action: choice } ).promise(); + } else if ( choice === 'edit' && surface ) { + return this.controller.closeDialog().then( () => { + surface.getView().activate(); + action.fragments[ action.fragments.length - 1 ].collapseToEnd().select(); + } ); + } +}; diff --git a/editcheck/modules/editchecks/BaseEditCheck.js b/editcheck/modules/editchecks/BaseEditCheck.js new file mode 100644 index 0000000000..6210d5bb33 --- /dev/null +++ b/editcheck/modules/editchecks/BaseEditCheck.js @@ -0,0 +1,558 @@ +/** + * BaseEditCheck + * + * Abstract base class for edit checks. Provides common configuration, tagging, + * and utility methods for subclasses implementing specific edit check logic. + * + * Subclasses should implement event handler methods such as onBeforeSave and onDocumentChange. + * + * @class + * @abstract + * @param {mw.editcheck.Controller} controller Edit check controller + * @param {Object} [config] Configuration options + * @param {boolean} [includeSuggestions=false] + */ +mw.editcheck.BaseEditCheck = function MWBaseEditCheck( controller, config, includeSuggestions ) { + this.controller = controller; + this.config = ve.extendObject( {}, this.constructor.static.defaultConfig, config ); + this.includeSuggestions = includeSuggestions; +}; + +/* Inheritance */ + +OO.initClass( mw.editcheck.BaseEditCheck ); + +/* Static properties */ + +mw.editcheck.BaseEditCheck.static.onlyCoveredNodes = false; + +mw.editcheck.BaseEditCheck.static.choices = [ + { + action: 'accept', + label: ve.msg( 'editcheck-dialog-action-yes' ), + icon: 'check' + }, + { + action: 'reject', + label: ve.msg( 'editcheck-dialog-action-no' ), + icon: 'close' + } +]; + +mw.editcheck.BaseEditCheck.static.defaultConfig = { + enabled: true, + account: false, // 'loggedin', 'loggedout', anything non-truthy means allow either + maximumEditcount: 100, + ignoreSections: [], + ignoreLeadSection: false +}; + +mw.editcheck.BaseEditCheck.static.title = ve.msg( 'editcheck-review-title' ); + +mw.editcheck.BaseEditCheck.static.description = ve.msg( 'editcheck-dialog-addref-description' ); + +mw.editcheck.BaseEditCheck.static.canBeStale = false; + +/** + * Takes focus from the surface to show the check as soon as it is detected (on mobile) + * + * On desktop the check cards are always visible so + * this config does nothing. + * + * @type {boolean} + */ +mw.editcheck.BaseEditCheck.static.takesFocus = false; + +/* Static methods */ + +/** + * Find out if any conditions in the provided config are met + * + * @param {Object} [config] Configuration options + * @return {boolean} Whether the config matches + */ +mw.editcheck.BaseEditCheck.static.doesConfigMatch = function ( config ) { + if ( !config.enabled ) { + return false; + } + // account status: + // loggedin, loggedout, or any-other-value meaning 'both' + // we'll count temporary users as "logged out" by using isNamed here + if ( config.account === 'loggedout' && mw.user.isNamed() ) { + return false; + } + if ( config.account === 'loggedin' && !mw.user.isNamed() ) { + return false; + } + // some checks are only shown for newer users + if ( config.maximumEditcount && mw.config.get( 'wgUserEditCount', 0 ) > config.maximumEditcount ) { + return false; + } + return true; +}; + +/* Methods */ + +/** + * Get the name of the check type + * + * @return {string} Check type name + */ +mw.editcheck.BaseEditCheck.prototype.getName = function () { + return this.constructor.static.name; +}; + +/** + * Check if the edit check can be stale + * + * @return {boolean} + */ +mw.editcheck.BaseEditCheck.prototype.canBeStale = function () { + return this.constructor.static.canBeStale; +}; + +/** + * Get actions to show before save + * + * @abstract + * @param {ve.dm.Surface} surfaceModel + * @return {mw.editcheck.EditCheckAction[]|void} + */ +mw.editcheck.BaseEditCheck.prototype.onBeforeSave = null; + +/** + * Get actions to show when document changed + * + * @abstract + * @param {ve.dm.Surface} surfaceModel + * @return {mw.editcheck.EditCheckAction[]|void} + */ +mw.editcheck.BaseEditCheck.prototype.onDocumentChange = null; + +/** + * Get actions to show when the focused branch node changed + * + * @abstract + * @param {ve.dm.Surface} surfaceModel + * @return {mw.editcheck.EditCheckAction[]|void} + */ +mw.editcheck.BaseEditCheck.prototype.onBranchNodeChange = null; + +/** + * User performs an action on an check + * + * @abstract + * @param {string} choice `action` key from static.choices + * @param {mw.editcheck.EditCheckAction} action + * @param {ve.ui.Surface} surface + * @return {jQuery.Promise} Promise which resolves when action is complete + */ +mw.editcheck.BaseEditCheck.prototype.act = null; + +/** + * Get the title of the check + * + * @param {mw.editcheck.EditCheckAction} action + * @return {jQuery|string|Function|OO.ui.HtmlSnippet} + */ +mw.editcheck.BaseEditCheck.prototype.getTitle = function () { + return this.constructor.static.title; +}; + +/** + * Get the prompt for the check's actions, if any + * + * @param {mw.editcheck.EditCheckAction} action + * @return {jQuery|string|Function|OO.ui.HtmlSnippet|undefined} + */ +mw.editcheck.BaseEditCheck.prototype.getPrompt = function () { + return this.constructor.static.prompt || undefined; +}; + +/** + * Get the footer of the check, if any + * + * @param {mw.editcheck.EditCheckAction} action + * @return {jQuery|string|Function|OO.ui.HtmlSnippet|undefined} + */ +mw.editcheck.BaseEditCheck.prototype.getFooter = function () { + return this.constructor.static.footer || undefined; +}; + +/** + * @param {mw.editcheck.EditCheckAction} action + * @return {string} + */ +mw.editcheck.BaseEditCheck.prototype.getDescription = function () { + return this.constructor.static.description; +}; + +/** + * Find out whether the check should be applied + * + * This is a general check for its applicability to the viewer / page, rather + * than a specific check based on the current edit. It's used to filter out + * checks before any maybe-expensive content analysis happens. + * + * @return {boolean} Whether the check should be shown + */ +mw.editcheck.BaseEditCheck.prototype.canBeShown = function () { + // all checks are only in the main namespace for now + if ( mw.config.get( 'wgNamespaceNumber' ) !== mw.config.get( 'wgNamespaceIds' )[ '' ] ) { + return false; + } + // some checks are configured to only be for logged in / out users + if ( mw.editcheck.forceEnable ) { + return true; + } + if ( !this.constructor.static.doesConfigMatch( this.config ) ) { + return false; + } + return true; +}; + +/** + * Get content ranges where at least the minimum about of text has been changed + * + * @param {ve.dm.Document} documentModel + * @return {ve.Range[]} + */ +mw.editcheck.BaseEditCheck.prototype.getModifiedContentRanges = function ( documentModel ) { + return this.getModifiedRanges( documentModel, this.constructor.static.onlyCoveredNodes, true ); +}; + +/** + * Get content ranges where at least the minimum about of text has been added + * + * @param {ve.dm.Document} documentModel + * @return {ve.Range[]} + */ +mw.editcheck.BaseEditCheck.prototype.getAddedContentRanges = function ( documentModel ) { + return this.getAddedRanges( documentModel, this.constructor.static.onlyCoveredNodes, true ); +}; + +/** + * Get ContentBranchNodes where some text has been changed + * + * @param {ve.dm.Document} documentModel + * @return {ve.dm.ContentBranchNode[]} + */ +mw.editcheck.BaseEditCheck.prototype.getModifiedContentBranchNodes = function ( documentModel ) { + const modified = new Set(); + this.getModifiedRanges( documentModel, false, true ).forEach( ( range ) => { + if ( !range.isCollapsed() ) { + modified.add( documentModel.getBranchNodeFromOffset( range.start ) ); + } + } ); + return Array.from( modified ); +}; + +/** + * Find nodes that were added during the edit session + * + * @param {ve.dm.Document} documentModel + * @param {string} [type] Type of nodes to find, or all nodes if false + * @return {ve.dm.Node[]} + */ +mw.editcheck.BaseEditCheck.prototype.getAddedNodes = function ( documentModel, type ) { + const matchedNodes = []; + if ( this.includeSuggestions ) { + if ( type ) { + return documentModel.getNodesByType( type, true ); + } + return documentModel.selectNodes( documentModel.getDocumentRange(), 'covered' ) + .map( ( node ) => node.node ); + } + this.getModifiedRanges( documentModel ).forEach( ( range ) => { + const nodes = documentModel.selectNodes( range, 'covered' ); + nodes.forEach( ( node ) => { + if ( !type || node.node.getType() === type ) { + matchedNodes.push( node.node ); + } + } ); + } ); + return matchedNodes; +}; + +/** + * Get content ranges which have been inserted + * + * @param {ve.dm.Document} documentModel + * @param {boolean} coveredNodesOnly Only include ranges which cover the whole of their node + * @param {boolean} onlyContentRanges Only return ranges which are content branch node interiors + * @return {ve.Range[]} + */ +mw.editcheck.BaseEditCheck.prototype.getAddedRanges = function ( documentModel, coveredNodesOnly, onlyContentRanges ) { + return this.getModifiedRanges( documentModel, coveredNodesOnly, onlyContentRanges, true ); +}; + +/** + * Get content ranges which have been modified + * + * @param {ve.dm.Document} documentModel + * @param {boolean} coveredNodesOnly Only include ranges which cover the whole of their node + * @param {boolean} onlyContentRanges Only return ranges which are content branch node interiors + * @param {boolean} onlyPureInsertions Only return ranges which didn't replace any other content + * @return {ve.Range[]} + */ +mw.editcheck.BaseEditCheck.prototype.getModifiedRanges = function ( documentModel, coveredNodesOnly, onlyContentRanges, onlyPureInsertions ) { + if ( !documentModel.completeHistory.getLength() ) { + return []; + } + let candidates = []; + if ( this.includeSuggestions ) { + candidates = documentModel.getDocumentNode().getChildren() + .filter( ( branchNode ) => !( branchNode instanceof ve.dm.InternalListNode ) ) + .map( ( branchNode ) => branchNode.getRange() ); + } else { + let operations; + try { + operations = documentModel.completeHistory.squash().transactions[ 0 ].operations; + } catch ( err ) { + // TransactionSquasher can sometimes throw errors; until T333710 is + // fixed just count this as not needing a reference. + mw.errorLogger.logError( err, 'error.visualeditor' ); + return []; + } + + let offset = 0; + const endOffset = documentModel.getDocumentRange().end; + operations.every( ( op ) => { + if ( op.type === 'retain' ) { + offset += op.length; + } else if ( op.type === 'replace' ) { + const insertedRange = new ve.Range( offset, offset + op.insert.length ); + offset += op.insert.length; + // 1. Only trigger if the check is a pure insertion with no + // adjacent content removed (T340088), or if we're allowing + // non-pure insertions. Either way, a pure removal won't be included. + if ( ( !onlyPureInsertions && op.insert.length > 0 ) || op.remove.length === 0 ) { + candidates.push( insertedRange ); + } + } + // Reached the end of the doc / start of internal list, stop searching + return offset < endOffset; + } ); + } + const ranges = []; + candidates.forEach( ( range ) => { + if ( onlyContentRanges ) { + ve.batchPush( + ranges, + // 2. Only fully inserted paragraphs (ranges that cover the whole node) (T345121) + this.getContentRangesFromRange( documentModel, range, coveredNodesOnly ) + ); + } else { + ranges.push( range ); + } + } ); + return ranges.filter( ( range ) => this.isRangeValid( range, documentModel ) ); +}; + +/** + * Return the content ranges (content branch node interiors) contained within a range + * + * For a content branch node entirely contained within the range, its entire interior + * range will be included. For a content branch node overlapping with the range boundary, + * only the covered part of its interior range will be included. + * + * @param {ve.dm.Document} documentModel The documentModel to search + * @param {ve.Range} range The range to include + * @param {boolean} covers Only include ranges which cover the whole of their node + * @return {ve.Range[]} The contained content ranges (content branch node interiors) + */ +mw.editcheck.BaseEditCheck.prototype.getContentRangesFromRange = function ( documentModel, range, covers ) { + const ranges = []; + documentModel.selectNodes( range, 'branches' ).forEach( ( spec ) => { + if ( + spec.node.canContainContent() && ( + !covers || ( + !spec.range || // an empty range means the node is covered + spec.range.equalsSelection( spec.nodeRange ) + ) + ) + ) { + ranges.push( spec.range || spec.nodeRange ); + } + } ); + return ranges; +}; + +/** + * Test whether the range is valid for the check to apply + * + * @param {ve.Range} range + * @param {ve.dm.Document} documentModel + * @return {boolean} + */ +mw.editcheck.BaseEditCheck.prototype.isRangeValid = function ( range, documentModel ) { + return this.isRangeInValidSection( range, documentModel ); +}; + +/** + * Check if a modified range is a section we don't ignore (config.ignoreSections) + * + * @param {ve.Range} range + * @param {ve.dm.Document} documentModel + * @return {boolean} Whether the range is in a section we don't ignore + */ +mw.editcheck.BaseEditCheck.prototype.isRangeInValidSection = function ( range, documentModel ) { + const ignoreSections = this.config.ignoreSections || []; + if ( ignoreSections.length === 0 && !this.config.ignoreLeadSection ) { + // Nothing is forbidden, so everything is permitted + return true; + } + const isHeading = ( nodeType ) => nodeType === 'mwHeading'; + // Note: we set a limit of 1 here because otherwise this will turn around + // to keep looking when it hits the document boundary: + const heading = documentModel.getNearestNodeMatching( isHeading, range.start, -1, 1 ); + if ( !heading ) { + // There's no preceding heading, so work out if we count as being in a + // lead section. It's only a lead section if there's more headings + // later in the document, otherwise it's just a stub article. + return !( + this.config.ignoreLeadSection && + !!documentModel.getNearestNodeMatching( isHeading, range.start, 1 ) + ); + } + if ( ignoreSections.length === 0 ) { + // There's nothing left to deny + return true; + } + const compare = new Intl.Collator( documentModel.getLang(), { sensitivity: 'accent' } ).compare; + const headingText = documentModel.data.getText( false, heading.getRange() ); + // If the heading text matches any of ignoreSections, return false. + return !ignoreSections.some( ( section ) => compare( headingText, section ) === 0 ); +}; + +/** + * Dismiss a check action + * + * @param {mw.editCheck.EditCheckAction} action + */ +mw.editcheck.BaseEditCheck.prototype.dismiss = function ( action ) { + this.tag( 'dismissed', action ); +}; + +/** + * Tag a check action + * + * TODO: This is asymmetrical. Do we want to split this into two functions, or + * unify isTaggedRange/isTaggedId into one function? + * + * @param {string} tag + * @param {mw.editCheck.EditCheckAction} action + */ +mw.editcheck.BaseEditCheck.prototype.tag = function ( tag, action ) { + const name = action.getTagName(); + if ( action.id ) { + const taggedIds = this.controller.taggedIds; + taggedIds[ name ] = taggedIds[ name ] || {}; + taggedIds[ name ][ tag ] = taggedIds[ name ][ tag ] || new Set(); + taggedIds[ name ][ tag ].add( action.id ); + } else { + const taggedFragments = this.controller.taggedFragments; + taggedFragments[ name ] = taggedFragments[ name ] || {}; + taggedFragments[ name ][ tag ] = taggedFragments[ name ][ tag ] || []; + taggedFragments[ name ][ tag ].push( + // Exclude insertions so we don't accidentally block unrelated changes: + ...action.fragments.map( ( fragment ) => fragment.clone().setExcludeInsertions( true ) ) + ); + } +}; + +/** + * Untag a check action + * + * TODO: This is asymmetrical. Do we want to split this into two functions, or + * unify isTaggedRange/isTaggedId into one function? + * + * @param {string} tag + * @param {mw.editCheck.EditCheckAction} action + * @return {boolean} Whether anything was untagged + */ +mw.editcheck.BaseEditCheck.prototype.untag = function ( tag, action ) { + const name = action.getTagName(); + if ( action.id ) { + const taggedIds = this.controller.taggedIds; + if ( taggedIds[ name ] && taggedIds[ name ][ tag ] ) { + taggedIds[ name ][ tag ].delete( action.id ); + return true; + } + } else { + const taggedFragments = this.controller.taggedFragments; + if ( taggedFragments[ name ] && taggedFragments[ name ][ tag ] ) { + action.fragments.forEach( ( fragment ) => { + const selection = fragment.getSelection(); + const index = taggedFragments[ name ][ tag ].findIndex( + ( taggedFragment ) => taggedFragment.getSelection().equals( selection ) + ); + if ( index !== -1 ) { + taggedFragments[ name ][ tag ].splice( index, 1 ); + return true; + } + } ); + } + } + return false; +}; + +/** + * Check if this type of check has been dismissed covering a specific range + * + * @param {ve.Range} range + * @param {string} name of the tag + * @return {boolean} + */ +mw.editcheck.BaseEditCheck.prototype.isDismissedRange = function ( range, name ) { + if ( !name ) { + name = this.constructor.static.name; + } + return this.isTaggedRange( 'dismissed', range, name ); +}; + +/** + * Check if this type of check has a given tag + * + * @param {string} tag + * @param {ve.Range} range + * @param {string} name of the tag + * @return {boolean} + */ +mw.editcheck.BaseEditCheck.prototype.isTaggedRange = function ( tag, range, name ) { + const tags = this.controller.taggedFragments[ name ]; + if ( tags === undefined ) { + return false; + } + + const fragments = tags[ tag ]; + return !!fragments && fragments.some( + ( fragment ) => fragment.getSelection().getCoveringRange().containsRange( range ) + ); +}; + +/** + * Check if an action with a given ID has been dismissed + * + * @param {string} id + * @return {boolean} + */ +mw.editcheck.BaseEditCheck.prototype.isDismissedId = function ( id ) { + return this.isTaggedId( 'dismissed', id ); +}; + +/** + * Check if an action with a given ID has a given tag + * + * @param {string} tag + * @param {string} id + * @return {boolean} + */ +mw.editcheck.BaseEditCheck.prototype.isTaggedId = function ( tag, id ) { + const tags = this.controller.taggedIds[ this.constructor.static.name ]; + if ( tags === undefined ) { + return false; + } + const ids = tags[ tag ]; + return !!ids && ids.has( id ); +}; diff --git a/editcheck/modules/editchecks/PasteCheck.js b/editcheck/modules/editchecks/PasteCheck.js new file mode 100644 index 0000000000..990177ee57 --- /dev/null +++ b/editcheck/modules/editchecks/PasteCheck.js @@ -0,0 +1,99 @@ +mw.editcheck.PasteCheck = function MWPasteCheck() { + // Parent constructor + mw.editcheck.PasteCheck.super.apply( this, arguments ); +}; + +OO.inheritClass( mw.editcheck.PasteCheck, mw.editcheck.BaseEditCheck ); + +mw.editcheck.PasteCheck.static.defaultConfig = ve.extendObject( {}, mw.editcheck.BaseEditCheck.static.defaultConfig, { + enabled: false, + minimumCharacters: 50 +} ); + +mw.editcheck.PasteCheck.static.title = ve.msg( 'editcheck-copyvio-title' ); + +mw.editcheck.PasteCheck.static.description = ve.msg( 'editcheck-copyvio-description' ); + +mw.editcheck.PasteCheck.static.prompt = ve.msg( 'editcheck-copyvio-prompt' ); + +mw.editcheck.PasteCheck.static.name = 'paste'; + +mw.editcheck.PasteCheck.static.choices = [ + { + action: 'keep', + label: ve.msg( 'editcheck-copyvio-action-keep' ) + }, + { + action: 'remove', + label: ve.msg( 'editcheck-copyvio-action-remove' ) + } +]; + +mw.editcheck.PasteCheck.static.takesFocus = true; + +mw.editcheck.PasteCheck.prototype.onDocumentChange = function ( surfaceModel ) { + const pastesById = {}; + surfaceModel.documentModel.documentNode.getAnnotationRanges().forEach( ( annRange ) => { + const annotation = annRange.annotation; + if ( annotation instanceof ve.dm.ImportedDataAnnotation && !annotation.getAttribute( 'source' ) ) { + const id = annotation.getAttribute( 'eventId' ); + if ( this.isDismissedId( id ) ) { + return; + } + if ( annRange.range.getLength() < this.config.minimumCharacters ) { + return; + } + pastesById[ id ] = pastesById[ id ] || []; + pastesById[ id ].push( annRange.range ); + } + } ); + return Object.keys( pastesById ).map( ( id ) => { + const fragments = pastesById[ id ].map( ( range ) => surfaceModel.getLinearFragment( range ) ); + return new mw.editcheck.EditCheckAction( { + fragments: fragments, + // eslint-disable-next-line no-jquery/no-append-html + message: $( '' ).append( ve.htmlMsg( 'editcheck-copyvio-description', ve.msg( 'editcheck-copyvio-descriptionlink' ) ) ) + .find( 'a' ).attr( 'target', '_blank' ).on( 'click', () => { + ve.track( 'activity.editCheck-' + this.getName(), { action: 'click-learn-more' } ); + } ).end(), + id: id, + check: this + } ); + } ); +}; + +mw.editcheck.PasteCheck.prototype.act = function ( choice, action, surface ) { + switch ( choice ) { + case 'keep': + return action.widget.showFeedback( { + description: ve.msg( 'editcheck-copyvio-keep-description' ), + choices: [ 'wrote', 'permission', 'other' ].map( + ( key ) => ( { + data: key, + // Messages that can be used here: + // * editcheck-copyvio-keep-wrote + // * editcheck-copyvio-keep-permission + // * editcheck-copyvio-keep-other + label: ve.msg( 'editcheck-copyvio-keep-' + key ) + } ) ) + } ).then( ( reason ) => { + this.dismiss( action ); + mw.notify( ve.msg( 'editcheck-copyvio-keep-notify' ), { type: 'success' } ); + return ve.createDeferred().resolve( { action: choice, reason: reason } ).promise(); + } ); + case 'remove': + action.fragments.forEach( ( fragment ) => { + fragment.removeContent(); + } ); + // Auto-scrolling causes selection and focus changes... + setTimeout( () => { + action.fragments[ action.fragments.length - 1 ].select(); + surface.getView().focus(); + }, 500 ); + + mw.notify( ve.msg( 'editcheck-copyvio-remove-notify' ), { type: 'success' } ); + break; + } +}; + +mw.editcheck.editCheckFactory.register( mw.editcheck.PasteCheck ); diff --git a/editcheck/modules/editchecks/ToneCheck.js b/editcheck/modules/editchecks/ToneCheck.js new file mode 100644 index 0000000000..e5855861ae --- /dev/null +++ b/editcheck/modules/editchecks/ToneCheck.js @@ -0,0 +1,244 @@ +mw.editcheck.ToneCheck = function MWToneCheck() { + // Parent constructor + mw.editcheck.ToneCheck.super.apply( this, arguments ); + + this.showThankToast = () => { + mw.notify( ve.msg( 'editcheck-tone-thank' ), { type: 'success' } ); + }; +}; + +OO.inheritClass( mw.editcheck.ToneCheck, mw.editcheck.AsyncTextCheck ); + +/* Static properties */ + +mw.editcheck.ToneCheck.static.name = 'tone'; + +mw.editcheck.ToneCheck.static.allowedContentLanguages = [ 'en', 'es', 'fr', 'ja', 'pt' ]; + +mw.editcheck.ToneCheck.static.defaultConfig = ve.extendObject( {}, mw.editcheck.BaseEditCheck.static.defaultConfig, { + predictionThreshold: 0.8 +} ); + +mw.editcheck.AsyncTextCheck.static.queue = []; + +/* Static methods */ + +/** + * Perform an asynchronous check + * + * @param {string} text The plaintext to check + * @return {Promise|any} + */ +mw.editcheck.ToneCheck.static.checkAsync = function ( text ) { + /* Don't send requests for short strings */ + if ( text.trim().length <= 0 ) { + return false; + } + + const deferred = ve.createDeferred(); + + // we don't need to think about deduplication because the memoization has + // handled that for us + this.queue.push( { text, deferred } ); + + this.doCheckRequestsDebounced(); + + return deferred.promise(); +}; + +/** + * Make the actual API request, batching together all pending checks + */ +mw.editcheck.ToneCheck.static.doCheckRequests = function () { + const title = mw.Title.newFromText( mw.config.get( 'wgRelevantPageName' ) ); + const titleText = title ? title.getMainText() : ''; + + // API will only accept at most 100 instances + const batchSize = 100; + while ( this.queue.length ) { + const subqueue = this.queue.splice( 0, batchSize ); + mw.editcheck.fetchTimeout( 'https://api.wikimedia.org/service/lw/inference/v1/models/edit-check:predict', { + method: 'POST', + headers: { + 'Content-Type': 'text/html' + }, + body: JSON.stringify( { instances: subqueue.map( ( item ) => ( + /* eslint-disable camelcase */ + { + modified_text: item.text, + page_title: titleText, + original_text: '', + check_type: 'tone', + lang: mw.config.get( 'wgContentLanguage' ) + } + /* eslint-enable camelcase */ + ) ) } ) + } ) + .then( ( response ) => response.json() ) + .then( ( data ) => { + if ( data && data.predictions && subqueue.length === data.predictions.length ) { + subqueue.forEach( ( item, index ) => { + const prediction = data.predictions[ index ]; + item.deferred.resolve( prediction ); + } ); + } else { + subqueue.forEach( ( item ) => { + item.deferred.reject(); + } ); + } + } ); + } + this.queue = []; +}; + +mw.editcheck.ToneCheck.static.doCheckRequestsDebounced = ve.debounce( mw.editcheck.ToneCheck.static.doCheckRequests, 1 ); + +/* Instance methods */ + +/** + * @inheritdoc + */ +mw.editcheck.ToneCheck.prototype.canBeShown = function ( ...args ) { + if ( !this.constructor.static.allowedContentLanguages.includes( mw.config.get( 'wgContentLanguage' ) ) ) { + return false; + } + + return mw.editcheck.ToneCheck.super.prototype.canBeShown.call( this, ...args ); +}; + +mw.editcheck.ToneCheck.prototype.afterMemoized = function ( data ) { + return !!( data.prediction && data.probability >= this.config.predictionThreshold ); +}; + +mw.editcheck.ToneCheck.prototype.newAction = function ( fragment, outcome ) { + if ( !outcome ) { + return null; + } + // TODO: variant message/labels when in back-from-presave state + return new mw.editcheck.EditCheckAction( { + fragments: [ fragment ], + title: ve.msg( 'editcheck-tone-title' ), + // eslint-disable-next-line no-jquery/no-append-html + message: $( '' ).append( ve.htmlMsg( 'editcheck-tone-description', ve.msg( 'editcheck-tone-descriptionlink' ) ) ) + .find( 'a' ).attr( 'target', '_blank' ).on( 'click', () => { + ve.track( 'activity.editCheck-' + this.getName(), { action: 'click-learn-more' } ); + } ).end(), + // eslint-disable-next-line no-jquery/no-append-html + footer: $( '' ).append( ve.htmlMsg( 'editcheck-tone-footer', ve.msg( 'editcheck-tone-footerlink' ) ) ) + .find( 'a' ).attr( 'target', '_blank' ).on( 'click', () => { + ve.track( 'activity.editCheck-' + this.getName(), { action: 'click-model-card' } ); + } ).end(), + check: this, + choices: [ + { + action: 'edit', + label: ve.msg( 'editcheck-dialog-action-revise' ), + modes: [ '' ] + }, + { + action: 'recheck', + label: ve.msg( 'editcheck-dialog-action-recheck' ), + flags: [ 'primary', 'progressive' ], + icon: 'check', + modes: [ 'revising' ] + }, + { + action: 'dismiss', + label: ve.msg( 'editcheck-dialog-action-decline' ), + modes: [ '', 'revising' ] + } + ] + } ); +}; + +mw.editcheck.ToneCheck.prototype.act = function ( choice, action, surface ) { + action.off( 'discard', this.showThankToast ); + this.tag( 'interacted', action ); + if ( choice === 'dismiss' ) { + return action.widget.showFeedback( { + choices: [ + { + data: 'appropriate', + label: ve.msg( 'editcheck-tone-reject-appropriate' ) + }, + { + data: 'uncertain', + label: ve.msg( 'editcheck-tone-reject-uncertain' ) + }, + { + data: 'other', + label: ve.msg( 'editcheck-tone-reject-other' ) + } + ] + } ).then( ( reason ) => { + this.dismiss( action ); + this.showThankToast(); + return ve.createDeferred().resolve( { action: choice, reason: reason } ).promise(); + } ); + } else if ( choice === 'edit' && surface ) { + action.gutterQuickAction = 'recheck'; + action.setStale( true ); + action.setMode( 'revising' ); + // Once revising has started the user will either make enough of an + // edit that this action is discarded, or will `act` again and this + // event-handler will be removed above: + action.once( 'discard', this.showThankToast ); + action.once( 'stale', () => { + // Clean up the mode after we're done; any other act or anything + // that can trigger an update should un-stale the action. + action.setMode( '' ); + action.gutterQuickAction = null; + } ); + // If in pre-save mode, close the check dialog + const closePromise = this.controller.inBeforeSave ? this.controller.closeDialog() : ve.createDeferred().resolve().promise(); + return closePromise.then( () => { + const fragment = action.fragments[ action.fragments.length - 1 ].collapseToEnd(); + // prevent triggering branch node change listeners and thus clearing staleness immediately: + this.controller.updateCurrentBranchNodeFromSelection( fragment.getSelection() ); + fragment.select(); + // select won't have refocused the article if it didn't change: + surface.getView().focus(); + } ); + } else if ( choice === 'recheck' ) { + const recheckDeferred = ve.createDeferred(); + + const progress = new OO.ui.ProgressBarWidget( { + progress: false, + inline: true + } ); + action.widget.$body.prepend( progress.$element ); + + this.checkText( action.fragments[ action.fragments.length - 1 ].getText() ) + .then( ( result ) => { + recheckDeferred.resolve( result ); + } ); + + const minimumTimeDeferred = ve.createDeferred(); + setTimeout( () => { + minimumTimeDeferred.resolve(); + }, 500 ); + + setTimeout( () => { + /* Silently fail if it takes too long */ + recheckDeferred.resolve(); + }, 3000 ); + + action.tag( 'pending' ); + + // Caller requires a Deferred as it then calls '.always()' + // eslint-disable-next-line no-jquery/no-when + return $.when( recheckDeferred, minimumTimeDeferred ).then( ( result ) => { + action.gutterQuickAction = null; + action.setStale( false ); + action.untag( 'pending' ); + + progress.$element.remove(); + if ( !result ) { + this.showThankToast(); + this.controller.removeAction( 'onBranchNodeChange', action, false ); + } + } ); + } +}; + +mw.editcheck.editCheckFactory.register( mw.editcheck.ToneCheck ); diff --git a/editcheck/modules/editchecks/experimental/ConvertReferenceEditCheck.js b/editcheck/modules/editchecks/experimental/ConvertReferenceEditCheck.js new file mode 100644 index 0000000000..b953b1367a --- /dev/null +++ b/editcheck/modules/editchecks/experimental/ConvertReferenceEditCheck.js @@ -0,0 +1,64 @@ +mw.editcheck.ConvertReferenceEditCheck = function MWConvertReferenceEditCheck() { + // Parent constructor + mw.editcheck.ConvertReferenceEditCheck.super.apply( this, arguments ); +}; + +OO.inheritClass( mw.editcheck.ConvertReferenceEditCheck, mw.editcheck.BaseEditCheck ); + +mw.editcheck.ConvertReferenceEditCheck.static.title = ve.msg( 'citoid-referencecontextitem-convert-button' ); + +mw.editcheck.ConvertReferenceEditCheck.static.name = 'convertReference'; + +mw.editcheck.ConvertReferenceEditCheck.static.choices = [ + { + action: 'convert', + label: ve.msg( 'citoid-referencecontextitem-convert-button' ) + }, + { + action: 'dismiss', + label: ve.msg( 'ooui-dialog-process-dismiss' ) + } +]; + +mw.editcheck.ConvertReferenceEditCheck.prototype.onDocumentChange = function ( surfaceModel ) { + const seenIndexes = {}; + const documentModel = surfaceModel.getDocument(); + return this.getAddedNodes( documentModel, 'mwReference' ).map( ( node ) => { + const index = node.getIndexNumber(); + if ( seenIndexes[ index ] ) { + return null; + } + seenIndexes[ index ] = true; + const referenceNode = node.getInternalItem(); + const href = ve.ui.CitoidReferenceContextItem.static.getConvertibleHref( referenceNode ); + if ( href ) { + return node.getOuterRange(); + } else { + return null; + } + } ).filter( ( obj ) => obj ).filter( ( range ) => !this.isDismissedRange( range ) ).map( ( range ) => ( + new mw.editcheck.EditCheckAction( { + fragments: [ surfaceModel.getLinearFragment( range ) ], + message: ve.msg( 'citoid-referencecontextitem-convert-message' ), + check: this + } ) + ) ); +}; + +mw.editcheck.ConvertReferenceEditCheck.prototype.act = function ( choice, action, surface ) { + switch ( choice ) { + case 'convert': { + action.fragments[ 0 ].select(); + const node = action.fragments[ 0 ].getSelectedNode(); + const href = ve.ui.CitoidReferenceContextItem.static.getConvertibleHref( node.getInternalItem() ); + const citoidAction = ve.ui.actionFactory.create( 'citoid', surface ); + citoidAction.open( true, href ); + break; + } + case 'dismiss': + this.dismiss( action ); + break; + } +}; + +mw.editcheck.editCheckFactory.register( mw.editcheck.ConvertReferenceEditCheck ); diff --git a/editcheck/modules/editchecks/experimental/DisambiguationEditCheck.js b/editcheck/modules/editchecks/experimental/DisambiguationEditCheck.js new file mode 100644 index 0000000000..d2bf584d2b --- /dev/null +++ b/editcheck/modules/editchecks/experimental/DisambiguationEditCheck.js @@ -0,0 +1,57 @@ +mw.editcheck.DisambiguationEditCheck = function MWDisambiguationEditCheck() { + // Parent constructor + mw.editcheck.DisambiguationEditCheck.super.apply( this, arguments ); +}; + +OO.inheritClass( mw.editcheck.DisambiguationEditCheck, mw.editcheck.BaseEditCheck ); + +mw.editcheck.DisambiguationEditCheck.static.title = 'Disambiguation link'; + +mw.editcheck.DisambiguationEditCheck.static.name = 'disambiguation'; + +mw.editcheck.DisambiguationEditCheck.static.description = 'Link to a specific page instead.'; + +mw.editcheck.DisambiguationEditCheck.static.choices = [ + { + action: 'edit', + label: 'Edit link', // ve.msg( 'editcheck-dialog-action-yes' ), + icon: 'edit' + }, + { + action: 'dismiss', + label: 'Ignore', // ve.msg( 'editcheck-dialog-action-no' ), + icon: 'check' + } +]; + +mw.editcheck.DisambiguationEditCheck.prototype.onDocumentChange = function ( surfaceModel ) { + const isDisambig = ( annotation ) => { + const linkData = ve.init.platform.linkCache.getCached( annotation.getAttribute( 'lookupTitle' ) ); + return linkData && linkData.disambiguation; + }; + return surfaceModel.documentModel.documentNode.getAnnotationRanges().filter( + ( annRange ) => annRange.annotation instanceof ve.dm.MWInternalLinkAnnotation && + isDisambig( annRange.annotation ) && + this.isRangeInValidSection( annRange.range, surfaceModel.documentModel ) && + !this.isDismissedRange( annRange.range ) + ).map( ( annRange ) => new mw.editcheck.EditCheckAction( { + fragments: [ surfaceModel.getLinearFragment( annRange.range ) ], + check: this + } ) ); +}; + +mw.editcheck.DisambiguationEditCheck.prototype.act = function ( choice, action, surface ) { + switch ( choice ) { + case 'dismiss': + this.dismiss( action ); + break; + case 'edit': + setTimeout( () => { + action.fragments[ 0 ].select(); + surface.execute( 'window', 'open', 'link' ); + } ); + break; + } +}; + +mw.editcheck.editCheckFactory.register( mw.editcheck.DisambiguationEditCheck ); diff --git a/editcheck/modules/editchecks/experimental/ExternalLinksEditCheck.js b/editcheck/modules/editchecks/experimental/ExternalLinksEditCheck.js new file mode 100644 index 0000000000..c76158c24e --- /dev/null +++ b/editcheck/modules/editchecks/experimental/ExternalLinksEditCheck.js @@ -0,0 +1,58 @@ +mw.editcheck.ExternalLinksEditCheck = function MWExternalLinksEditCheck() { + // Parent constructor + mw.editcheck.ExternalLinksEditCheck.super.apply( this, arguments ); +}; + +OO.inheritClass( mw.editcheck.ExternalLinksEditCheck, mw.editcheck.BaseEditCheck ); + +mw.editcheck.ExternalLinksEditCheck.static.title = 'External link'; + +mw.editcheck.ExternalLinksEditCheck.static.name = 'externalLink'; + +mw.editcheck.ExternalLinksEditCheck.static.description = 'Generally, external links should not appear in the body of the article. Please refer to WP:ELNO. Edit this link?'; + +mw.editcheck.ExternalLinksEditCheck.static.defaultConfig = ve.extendObject( {}, mw.editcheck.BaseEditCheck.static.defaultConfig, { + ignoreSections: [ 'External links' ] +} ); + +mw.editcheck.ExternalLinksEditCheck.static.choices = [ + { + action: 'edit', + label: 'Edit link', + icon: 'edit' + }, + { + action: 'dismiss', + label: ve.msg( 'editcheck-dialog-action-no' ), + icon: 'check' + } +]; + +mw.editcheck.ExternalLinksEditCheck.prototype.onDocumentChange = function ( surfaceModel ) { + const modified = this.getModifiedContentRanges( surfaceModel.getDocument() ); + return surfaceModel.documentModel.documentNode.getAnnotationRanges() + .filter( ( annRange ) => annRange.annotation instanceof ve.dm.MWExternalLinkAnnotation && + !this.isDismissedRange( annRange.range ) && + this.isRangeInValidSection( annRange.range, surfaceModel.documentModel ) && + modified.some( ( modifiedRange ) => modifiedRange.containsRange( annRange.range ) ) + ).map( ( annRange ) => new mw.editcheck.EditCheckAction( { + fragments: [ surfaceModel.getLinearFragment( annRange.range ) ], + check: this + } ) ); +}; + +mw.editcheck.ExternalLinksEditCheck.prototype.act = function ( choice, action, surface ) { + switch ( choice ) { + case 'dismiss': + this.dismiss( action ); + break; + case 'edit': + setTimeout( () => { + action.fragments[ 0 ].select(); + surface.execute( 'window', 'open', 'link' ); + } ); + break; + } +}; + +mw.editcheck.editCheckFactory.register( mw.editcheck.ExternalLinksEditCheck ); diff --git a/editcheck/modules/editchecks/experimental/ImageCaptionCheck.js b/editcheck/modules/editchecks/experimental/ImageCaptionCheck.js new file mode 100644 index 0000000000..76724b5bc9 --- /dev/null +++ b/editcheck/modules/editchecks/experimental/ImageCaptionCheck.js @@ -0,0 +1,36 @@ +mw.editcheck.ImageCaptionEditCheck = function () { + // Parent constructor + mw.editcheck.ImageCaptionEditCheck.super.apply( this, arguments ); +}; + +OO.inheritClass( mw.editcheck.ImageCaptionEditCheck, mw.editcheck.BaseEditCheck ); + +mw.editcheck.ImageCaptionEditCheck.static.name = 'imageCaption'; +mw.editcheck.ImageCaptionEditCheck.static.title = 'Image needs caption'; +mw.editcheck.ImageCaptionEditCheck.static.description = 'This image is lacking a caption, which can be important to readers to explain why the image is present. Not every image needs a caption; some are simply decorative. Relatively few may be genuinely self-explanatory. Does this image need a caption?'; + +mw.editcheck.ImageCaptionEditCheck.prototype.onBeforeSave = function ( surfaceModel ) { + return this.getAddedNodes( surfaceModel.getDocument(), 'mwBlockImage' ) + .filter( ( image ) => !this.isDismissedRange( image.getOuterRange() ) ) + .filter( ( image ) => image.children[ 0 ] && image.children[ 0 ].getType() === 'mwImageCaption' && image.children[ 0 ].length === 2 ) + .map( ( image ) => new mw.editcheck.EditCheckAction( { + check: this, + fragments: [ surfaceModel.getFragment( new ve.dm.LinearSelection( image.getOuterRange() ) ) ] + } ) ); +}; + +mw.editcheck.ImageCaptionEditCheck.prototype.onBranchNodeChange = mw.editcheck.ImageCaptionEditCheck.prototype.onBeforeSave; + +mw.editcheck.ImageCaptionEditCheck.prototype.act = function ( choice, action, surface ) { + const windowAction = ve.ui.actionFactory.create( 'window', surface, 'check' ); + switch ( choice ) { + case 'accept': + action.fragments[ 0 ].select(); + return windowAction.open( 'media' ).then( ( instance ) => instance.closing ); + case 'reject': + this.dismiss( action ); + return ve.createDeferred().resolve( true ).promise(); + } +}; + +mw.editcheck.editCheckFactory.register( mw.editcheck.ImageCaptionEditCheck ); diff --git a/editcheck/modules/editchecks/experimental/TextMatchEditCheck.js b/editcheck/modules/editchecks/experimental/TextMatchEditCheck.js new file mode 100644 index 0000000000..241cbd8458 --- /dev/null +++ b/editcheck/modules/editchecks/experimental/TextMatchEditCheck.js @@ -0,0 +1,399 @@ +mw.editcheck.TextMatchEditCheck = function MWTextMatchEditCheck() { + // Parent constructor + mw.editcheck.TextMatchEditCheck.super.apply( this, arguments ); + + this.lang = mw.config.get( 'wgContentLanguage' ); + this.sensitivity = 'accent'; // TODO figure out how to determine this on an editcheck level + this.collator = new Intl.Collator( this.lang, { sensitivity: this.sensitivity } ); + + const rawMatchItems = [ + ...this.constructor.static.matchItems, + ...( this.config.matchItems || [] ) + ]; + + // Create matchItem instances + this.matchItems = rawMatchItems.map( + ( matchItem, index ) => new mw.editcheck.TextMatchItem( matchItem, index, this.collator ) + ); + + // Initialize lookup maps + this.matchItemsSensitiveByTerm = {}; + this.matchItemsInsensitiveByTerm = {}; + + this.matchItems.forEach( ( matchItem ) => { + const targetMap = matchItem.isCaseSensitive() ? + this.matchItemsSensitiveByTerm : + this.matchItemsInsensitiveByTerm; + + Object.keys( matchItem.query ).forEach( ( key ) => { + if ( !targetMap[ key ] ) { + targetMap[ key ] = []; + } + targetMap[ key ].push( matchItem ); + } ); + } ); + +}; + +OO.inheritClass( mw.editcheck.TextMatchEditCheck, mw.editcheck.BaseEditCheck ); + +mw.editcheck.TextMatchEditCheck.static.name = 'textMatch'; + +/** + * The configs of TextMatchEditCheck take priority over individual matchItem configs. + * So we make TextMatch’s defaults nonrestrictive, + * and let the finer limitations be handled by individual matchItems. + */ +mw.editcheck.TextMatchEditCheck.static.defaultConfig = ve.extendObject( {}, mw.editcheck.BaseEditCheck.static.defaultConfig, { + maximumEditcount: null +} ); + +mw.editcheck.TextMatchEditCheck.static.choices = [ + { + action: 'dismiss', + label: ve.msg( 'ooui-dialog-process-dismiss' ), + modes: [ '', 'info', 'replace', 'delete' ] + }, + { + action: 'accept', + label: ve.msg( 'ooui-dialog-message-accept' ), + modes: [ 'replace' ] + }, + { + action: 'delete', + label: ve.msg( 'visualeditor-contextitemwidget-label-remove' ), + modes: [ 'delete' ] + } +]; + +mw.editcheck.TextMatchEditCheck.static.matchItems = []; + +/** + * Given a term, find all the equivalent keys that exist in case-insensitive matchItem queries + * + * @param {string} term Term to find keys for + * @return {string} Array of keys that match + */ +mw.editcheck.TextMatchEditCheck.prototype.getMatchingKeys = function ( term ) { + const matches = Object.keys( this.matchItemsInsensitiveByTerm ).filter( + ( key ) => this.collator.compare( key, term ) === 0 + ); + return matches; +}; + +mw.editcheck.TextMatchEditCheck.prototype.handleListener = function ( surfaceModel, listener ) { + const actions = []; + const document = surfaceModel.getDocument(); + const modified = this.getModifiedContentRanges( document ); + + const matchConfigs = [ + { + caseSensitive: true, + terms: Object.keys( this.matchItemsSensitiveByTerm ), + lookup: ( term ) => this.matchItemsSensitiveByTerm[ term ] || [ ] + }, + { + caseSensitive: false, + terms: Object.keys( this.matchItemsInsensitiveByTerm ), + lookup: ( term ) => { + const keys = this.getMatchingKeys( term ); + return keys + .map( ( key ) => this.matchItemsInsensitiveByTerm[ key ] || [] ) + .reduce( ( acc, arr ) => acc.concat( arr ), [] ); + } + } + ]; + + for ( const { caseSensitive, terms, lookup } of matchConfigs ) { + const ranges = document.findText( + new Set( terms ), + { + caseSensitiveString: caseSensitive, + wholeWord: true + } + ); + + for ( const range of ranges ) { + if ( !modified.some( ( modRange ) => range.touchesRange( modRange ) ) ) { + continue; + } + if ( !this.isRangeInValidSection( range, surfaceModel.documentModel ) ) { + continue; + } + const term = surfaceModel.getLinearFragment( range ).getText(); + + const relevantMatchItems = lookup( term ); + if ( !relevantMatchItems ) { + continue; + } + for ( const matchItem of relevantMatchItems ) { + const name = this.getTagNameByMatchItem( matchItem, term ); + if ( this.isDismissedRange( range, name ) ) { + continue; + } + if ( matchItem.listener && matchItem.listener !== listener ) { + continue; + } + if ( matchItem.config && !this.constructor.static.doesConfigMatch( matchItem.config ) ) { + continue; + } + + let fragment = surfaceModel.getLinearFragment( range ); + fragment = matchItem.getExpandedFragment( fragment ); + const isValidMode = this.constructor.static.choices.some( + ( choice ) => choice.modes.includes( matchItem.mode ) + ); + const mode = isValidMode ? matchItem.mode : ''; + actions.push( + new mw.editcheck.TextMatchEditCheckAction( { + fragments: [ fragment ], + title: matchItem.title, + message: matchItem.message, + check: this, + mode: mode, + matchItem: matchItem + } ) + ); + } + } + } + return actions; +}; + +mw.editcheck.TextMatchEditCheck.prototype.onDocumentChange = function ( surfaceModel ) { + return this.handleListener( surfaceModel, 'onDocumentChange' ); +}; + +/** + * Get a unique tag name for a given matchItem-term pair. + * Builds the tag name from: + * - the name of this editcheck + * - and the unique subtag of this matchitem-term pair + * + * @param {Object} matchItem + * @param {string} term + * @return {string} A tag name in the format 'textMatch-{subtag}' + */ +mw.editcheck.TextMatchEditCheck.prototype.getTagNameByMatchItem = function ( matchItem, term ) { + return this.constructor.static.name + matchItem.getSubTag( term ); +}; + +// For now it doesn't make sense to run a TextMatchEditCheck in review mode +// as there isn't a way to edit the text. +mw.editcheck.TextMatchEditCheck.prototype.onBeforeSave = null; + +mw.editcheck.TextMatchEditCheck.prototype.act = function ( choice, action /* , surface */ ) { + switch ( choice ) { + case 'dismiss': + this.dismiss( action ); + break; + case 'delete': + action.fragments[ 0 ].removeContent(); + break; + case 'accept': { + const fragment = action.fragments[ 0 ]; + const oldWord = fragment.getText(); + const matchItem = action.matchItem; + if ( !matchItem ) { + ve.log( `mw.editcheck.TextMatchEditCheck.prototype.act(): did not find matchItem for ${ oldWord }` ); + return; + } + const newWord = matchItem.getReplacement( oldWord ); + // TODO match case of old word + if ( !newWord ) { + ve.log( `mw.editcheck.TextMatchEditCheck.prototype.act(): did not find replacement for ${ oldWord }` ); + return; + } + fragment.removeContent().insertContent( newWord ); + } + + } + return ve.createDeferred().resolve( {} ); +}; + +mw.editcheck.editCheckFactory.register( mw.editcheck.TextMatchEditCheck ); + +/** + * TextMatchEditCheckAction + * + * Subclass of EditCheckAction to include information + * about the matchItem associated with this action + * + * @class + * + * @param {Object} config Configuration options + * @param {Object} config.matchItem the associated matchItem for this action + */ +mw.editcheck.TextMatchEditCheckAction = function MWTextMatchEditCheckAction( config ) { + mw.editcheck.TextMatchEditCheckAction.super.call( this, config ); + this.matchItem = config.matchItem; +}; + +/* Inheritance */ + +OO.inheritClass( mw.editcheck.TextMatchEditCheckAction, mw.editcheck.EditCheckAction ); + +/* Events */ + +/** + * Fired when the user selects an action (e.g., clicks a suggestion button). + * + * @event mw.editcheck.EditCheckAction#act + * @param {jQuery.Promise} promise A promise that resolves when the action is complete + */ + +/* Methods */ + +/** + * Compare to another action + * + * @param {mw.editcheck.EditCheckAction} other Other action + * @return {boolean} + */ +mw.editcheck.TextMatchEditCheckAction.prototype.equals = function ( other ) { + if ( !( other instanceof mw.editcheck.TextMatchEditCheckAction ) || + this.check.constructor !== other.check.constructor ) { + return false; + } + if ( this.matchItem !== other.matchItem ) { + return false; + } + if ( this.fragments.length !== other.fragments.length ) { + return false; + } + return this.fragments.every( ( fragment ) => { + const selection = fragment.getSelection(); + return other.fragments.some( ( otherFragment ) => otherFragment.getSelection().equals( selection ) ); + } ); +}; + +/** + * Get unique tag name for this action + * + * @return {string} unique tag + */ +mw.editcheck.TextMatchEditCheckAction.prototype.getTagName = function () { + if ( !this.matchItem ) { + return this.check.getName(); + } + return this.check.getTagNameByMatchItem( this.matchItem, this.originalText[ 0 ] ); +}; + +/** + * TextMatchItem + * + * Class to represent a single matchItem for TextMatchEditCheck + * + * @class + * + * @param {Object} matchItem + * @param item + * @param {number} index of this matchitem in the TextMatchEditCheck's collection of all match items + * @param {Collator} collator to use for comparisons + */ +mw.editcheck.TextMatchItem = function MWTextMatchItem( item, index, collator ) { + this.title = item.title; + this.mode = item.mode || ''; + this.message = item.message; + this.config = item.config || {}; + this.expand = item.expand; + this.listener = item.listener || null; + + this.index = index; + this.collator = collator; + + // Normalize queries to allow support for both objects and arrays + this.query = this.normalizeQuery( item.query ); +}; + +/* Methods */ + +/** + * Transform any query type into a dictionary of terms and their replacements, + * with a null replacement if none exists + * + * @param {Object.|string[]} query + * @return {Object.} Dictionary of each term and its replacement + */ +mw.editcheck.TextMatchItem.prototype.normalizeQuery = function ( query ) { + if ( Array.isArray( query ) ) { + const normalized = Object.create( null ); + for ( const word of query ) { + normalized[ word ] = null; + } + return normalized; + } + return query || Object.create( null ); +}; + +/** + * @return {boolean} if this matchItem is configured to be case sensitive + */ +mw.editcheck.TextMatchItem.prototype.isCaseSensitive = function () { + return this.config && this.config.caseSensitive; +}; + +/** + * Return the corresponding replacement word, + * as defined for the given word in this matchItem's query + * + * @param {string} term to get replacement for + * @return {string} replacement term + */ +mw.editcheck.TextMatchItem.prototype.getReplacement = function ( term ) { + if ( this.isCaseSensitive() ) { + return this.query[ term ]; + } + const key = Object.keys( this.query ).find( + ( k ) => this.collator.compare( k, term ) === 0 + ); + return key ? this.query[ key ] : null; +}; + +/** + * Expand a fragment given the match item's config + * + * @param {ve.dm.SurfaceFragment} fragment + * @return {ve.dm.SurfaceFragment} Expanded fragment + */ +mw.editcheck.TextMatchItem.prototype.getExpandedFragment = function ( fragment ) { + switch ( this.expand ) { + case 'sentence': + // TODO: implement once unicodejs support is added + break; + case 'paragraph': + fragment = fragment.expandLinearSelection( 'closest', ve.dm.ContentBranchNode ) + // …but that covered the entire CBN, we only want the contents + .adjustLinearSelection( 1, -1 ); + break; + case 'word': + case 'siblings': + case 'parent': + fragment = fragment.expandLinearSelection( this.expand ); + break; + } + return fragment; +}; + +/** + * Get a unique subtag for this matchitem-term pair. + * Builds the subtag from: + * - the index of the matchItem when created + * - and the index of the term in the list of keys from the matchItem's query + * + * @param {string} term + * @return {string} A subtag in the format '-{matchIndex}-{termIndex}' + */ +mw.editcheck.TextMatchItem.prototype.getSubTag = function ( term ) { + const queries = Object.keys( this.query ); + let termIndex; + if ( this.caseSensitive ) { + termIndex = queries.indexOf( term ); + } else { + termIndex = queries.findIndex( ( q ) => this.collator.compare( q, term ) === 0 ); + } + if ( this.index === -1 || termIndex === -1 ) { + return ''; + } + return `-${ this.index }-${ termIndex }`; +}; diff --git a/editcheck/modules/init.js b/editcheck/modules/init.js index c860a02183..a6a18be81a 100644 --- a/editcheck/modules/init.js +++ b/editcheck/modules/init.js @@ -1,97 +1,99 @@ +/* + * `ecenable` query string: + * 1: override user eligibility criteria for all checks + * 2: also load experimental checks + * Can also be a comma-separated series of flags: + * experimental: also load experimental checks + * suggestions: enable suggestions mode + */ +const ecenable = mw.libs.ve.initialUrl.searchParams.get( 'ecenable' ); +const abCheck = mw.config.get( 'wgVisualEditorConfig' ).editCheckABTest; +const abGroup = mw.config.get( 'wgVisualEditorConfig' ).editCheckABTestGroup; + mw.editcheck = { config: require( './config.json' ), - ecenable: !!( new URL( location.href ).searchParams.get( 'ecenable' ) || window.MWVE_FORCE_EDIT_CHECK_ENABLED ) + forceEnable: !!( ecenable || window.MWVE_FORCE_EDIT_CHECK_ENABLED ), + experimental: !!( mw.config.get( 'wgVisualEditorConfig' ).editCheckExperimental || ecenable === '2' ), + checksShown: {} }; -require( './EditCheckContextItem.js' ); -require( './EditCheckInspector.js' ); -require( './EditCheckDialog.js' ); +if ( ecenable && /^[\w,]+$/.test( ecenable ) ) { + const ecenableFlags = ecenable.split( ',' ); + mw.editcheck.experimental = mw.editcheck.experimental || ecenableFlags.includes( 'experimental' ); + mw.editcheck.suggestions = mw.editcheck.suggestions || ecenableFlags.includes( 'suggestions' ); +} + +// Checks which are loaded for logging but shouldn't show by default yet +const nonDefaultChecks = new Set(); + +require( './utils.js' ); +require( './EditCheckPreSaveToolbarTools.js' ); require( './EditCheckFactory.js' ); require( './EditCheckAction.js' ); -require( './BaseEditCheck.js' ); +require( './EditCheckActionWidget.js' ); +require( './EditCheckGutterSectionWidget.js' ); +require( './dialogs/EditCheckDialog.js' ); +require( './dialogs/FixedEditCheckDialog.js' ); +require( './dialogs/SidebarEditCheckDialog.js' ); +require( './dialogs/GutterSidebarEditCheckDialog.js' ); +require( './editchecks/BaseEditCheck.js' ); +require( './editchecks/AsyncTextCheck.js' ); +require( './editchecks/AddReferenceEditCheck.js' ); +require( './editchecks/ToneCheck.js' ); +require( './editchecks/PasteCheck.js' ); + +nonDefaultChecks.add( 'tone' ); + +if ( mw.editcheck.experimental ) { + mw.loader.using( 'ext.visualEditor.editCheck.experimental' ); + nonDefaultChecks.clear(); +} +if ( abGroup === 'test' ) { + nonDefaultChecks.delete( abCheck ); +} + +for ( const check of nonDefaultChecks ) { + mw.editcheck.editCheckFactory.unregister( check ); +} + +if ( abCheck === 'paste' ) { + // In the a/b test, force-enable/disable the check + mw.editcheck.config.paste = ve.extendObject( mw.editcheck.config.paste || {}, { enabled: abGroup === 'test' } ); +} -// TODO: Load these checks behind feature flags -// require( './ConvertReferenceEditCheck.js' ); -// require( './TextMatchEditCheck.js' ); -require( './AddReferenceEditCheck.js' ); +const isMainNamespace = mw.config.get( 'wgNamespaceNumber' ) === mw.config.get( 'wgNamespaceIds' )[ '' ]; + +// Helper functions for ve.init.mw.ArticleTarget save-tagging, keep logic +// in-sync with AddReferenceEditCheck and ToneCheck. /** - * Return the content ranges (content branch node interiors) contained within a range - * - * For a content branch node entirely contained within the range, its entire interior - * range will be included. For a content branch node overlapping with the range boundary, - * only the covered part of its interior range will be included. + * Check if the document has content needing a reference, for AddReferenceEditCheck * - * @param {ve.dm.Document} documentModel The documentModel to search - * @param {ve.Range} range The range to include - * @param {boolean} covers Only include ranges which cover the whole of their node - * @return {ve.Range[]} The contained content ranges (content branch node interiors) + * @param {ve.dm.Document} documentModel + * @param {boolean} includeReferencedContent Include content that already contains a reference + * @return {boolean} */ -mw.editcheck.getContentRanges = function ( documentModel, range, covers ) { - const ranges = []; - documentModel.selectNodes( range, 'branches' ).forEach( ( spec ) => { - if ( - spec.node.canContainContent() && ( - !covers || ( - !spec.range || // an empty range means the node is covered - spec.range.equalsSelection( spec.nodeRange ) - ) - ) - ) { - ranges.push( spec.range || spec.nodeRange ); - } - } ); - return ranges; -}; - mw.editcheck.hasAddedContentNeedingReference = function ( documentModel, includeReferencedContent ) { - // helper for ve.init.mw.ArticleTarget save-tagging, keep logic below in-sync with AddReferenceEditCheck. - // This is bypassing the normal "should this check apply?" logic for creation, so we need to manually - // apply the "only the main namespace" rule. - if ( mw.config.get( 'wgNamespaceNumber' ) !== mw.config.get( 'wgNamespaceIds' )[ '' ] ) { + // Tag anything in the main namespace, regardless of other eligibility checks + if ( !isMainNamespace ) { return false; } - const check = mw.editcheck.editCheckFactory.create( 'addReference', mw.editcheck.config.addReference ); + // TODO: This should be factored out into a static method so we don't have to construct a dummy check + const check = mw.editcheck.editCheckFactory.create( 'addReference', null, { enabled: true } ); return check.findAddedContent( documentModel, includeReferencedContent ).length > 0; }; -mw.editcheck.getModifiedRanges = function ( documentModel, coveredNodesOnly ) { - if ( !documentModel.completeHistory.getLength() ) { - return []; +mw.editcheck.hasFailingToneCheck = function ( surfaceModel ) { + // Check might not be registered so we can't use the factory. + const check = new mw.editcheck.ToneCheck( null, mw.editcheck.editCheckFactory.buildConfig( 'tone', { enabled: true } ) ); + // Run actual check eligibility before calling API + if ( !check.canBeShown() ) { + return ve.createDeferred().resolve( false ).promise(); } - const operations = documentModel.completeHistory.squash().transactions[ 0 ].operations; - const ranges = []; - let offset = 0; - const endOffset = documentModel.getDocumentRange().end; - operations.every( ( op ) => { - if ( op.type === 'retain' ) { - offset += op.length; - } else if ( op.type === 'replace' ) { - const insertedRange = new ve.Range( offset, offset + op.insert.length ); - offset += op.insert.length; - // 1. Only trigger if the check is a pure insertion, with no adjacent content removed (T340088) - if ( op.remove.length === 0 ) { - ve.batchPush( - ranges, - // 2. Only fully inserted paragraphs (ranges that cover the whole node) (T345121) - mw.editcheck.getContentRanges( documentModel, insertedRange, coveredNodesOnly ) - ); - } - } - // Reached the end of the doc / start of internal list, stop searching - return offset < endOffset; - } ); - return ranges; + return Promise.all( check.handleListener( 'onCheckAll', surfaceModel ) ) + .then( ( results ) => results.some( ( result ) => result !== null ) ); }; -mw.editcheck.rejections = []; - -mw.editcheck.getRejectionReasons = function () { - return mw.editcheck.rejections; -}; - -mw.editcheck.refCheckShown = false; - if ( mw.config.get( 'wgVisualEditorConfig' ).editCheckTagging ) { mw.hook( 've.activationComplete' ).add( () => { const target = ve.init.target; @@ -106,6 +108,17 @@ if ( mw.config.get( 'wgVisualEditorConfig' ).editCheckTagging ) { return group ? group.firstNodes || [] : []; } + let hasFailingToneCheck = null; + target.getPreSaveProcess().first( () => { + // Start checking for tone in the pre-save process, but don't block the save dialog + // from appearing. If the tone check isn't finished by save time we will just log + // an error. + hasFailingToneCheck = null; + mw.editcheck.hasFailingToneCheck( target.getSurface().getModel() ).then( ( result ) => { + hasFailingToneCheck = result; + } ); + } ); + const initLength = getRefNodes().length; target.saveFields.vetags = function () { const refNodes = getRefNodes(); @@ -121,8 +134,19 @@ if ( mw.config.get( 'wgVisualEditorConfig' ).editCheckTagging ) { if ( newNodesInDoc ) { tags.push( 'editcheck-newreference' ); } - if ( mw.editcheck.refCheckShown ) { - tags.push( 'editcheck-references-activated' ); + if ( mw.editcheck.checksShown.addReference ) { + tags.push( 'editcheck-references-shown' ); + } + if ( mw.editcheck.checksShown.tone ) { + tags.push( 'editcheck-tone-shown' ); + } + if ( mw.editcheck.checksShown.paste ) { + tags.push( 'editcheck-paste-shown' ); + } + if ( hasFailingToneCheck ) { + tags.push( 'editcheck-tone' ); + } else if ( hasFailingToneCheck === null ) { + ve.track( 'activity.editCheck-tone', { action: 'save-before-check-finalized' } ); } return tags.join( ',' ); }; @@ -133,231 +157,51 @@ if ( mw.config.get( 'wgVisualEditorConfig' ).editCheckTagging ) { } ); } -if ( mw.config.get( 'wgVisualEditorConfig' ).editCheck || mw.editcheck.ecenable ) { - let saveProcessDeferred; - - mw.hook( 've.preSaveProcess' ).add( ( saveProcess, target ) => { - const surface = target.getSurface(); - - if ( surface.getMode() !== 'visual' ) { - // Some checks will entirely work in source mode for most cases. - // But others will fail spectacularly -- e.g. reference check - // isn't aware of tags and so will suggest that all content - // has references added. As such, disable in source mode for now. +if ( mw.config.get( 'wgVisualEditorConfig' ).editCheck || mw.editcheck.forceEnable ) { + const Controller = require( './controller.js' ).Controller; + mw.hook( 've.newTarget' ).add( ( target ) => { + if ( target.constructor.static.name !== 'article' ) { return; } - - ve.track( 'counter.editcheck.preSaveChecksAvailable' ); - - // clear rejection-reasons between runs of the save process, so only the last one counts - mw.editcheck.rejections.length = 0; - - let checks = mw.editcheck.editCheckFactory.createAllByListener( 'onBeforeSave', surface.getModel() ); - if ( checks.length ) { - ve.track( 'counter.editcheck.preSaveChecksShown' ); - mw.editcheck.refCheckShown = true; - - const surfaceView = surface.getView(); - const toolbar = target.getToolbar(); - const reviewToolbar = new ve.ui.PositionedTargetToolbar( target, target.toolbarConfig ); - reviewToolbar.setup( [ - { - name: 'back', - type: 'bar', - include: [ 'editCheckBack' ] - }, - // Placeholder toolbar groups - // TODO: Make a proper TitleTool? - { - name: 'title', - type: 'bar', - include: [] - }, - { - name: 'save', - // TODO: MobileArticleTarget should ignore 'align' - align: OO.ui.isMobile() ? 'before' : 'after', - type: 'bar', - include: [ 'showSaveDisabled' ] - } - ], surface ); - reviewToolbar.$element.addClass( 've-ui-editCheck-toolbar' ); - - reviewToolbar.items[ 1 ].$element.removeClass( 'oo-ui-toolGroup-empty' ); - reviewToolbar.items[ 1 ].$group.append( - $( '' ).addClass( 've-ui-editCheck-toolbar-title' ).text( ve.msg( 'editcheck-dialog-title' ) ) - ); - if ( OO.ui.isMobile() ) { - reviewToolbar.$element.addClass( 've-init-mw-mobileArticleTarget-toolbar' ); - } - target.toolbar.$element.before( reviewToolbar.$element ); - target.toolbar = reviewToolbar; - - saveProcessDeferred = ve.createDeferred(); - const context = surface.getContext(); - - // TODO: Allow multiple checks to be shown when multicheck is enabled - checks = checks.slice( 0, 1 ); - - // eslint-disable-next-line no-shadow - const drawSelections = ( checks ) => { - const highlightNodes = []; - const selections = []; - checks.forEach( ( check ) => { - highlightNodes.push.apply( highlightNodes, surfaceView.getDocument().selectNodes( check.highlight.getSelection().getCoveringRange(), 'branches' ).map( ( spec ) => spec.node ) ); - const selection = ve.ce.Selection.static.newFromModel( check.highlight.getSelection(), surfaceView ); - selections.push( selection ); - } ); - // TODO: Make selections clickable when multicheck is enabled - surfaceView.drawSelections( - 'editCheck', - checks.map( ( check ) => ve.ce.Selection.static.newFromModel( check.highlight.getSelection(), surfaceView ) ) - ); - surfaceView.setReviewMode( true, highlightNodes ); - }; - - const contextDone = ( responseData, contextData ) => { - if ( !responseData ) { - // this is the back button - return saveProcessDeferred.resolve(); - } - const selectionIndex = checks.indexOf( contextData.action ); - - if ( responseData.action !== 'reject' ) { - mw.notify( ve.msg( 'editcheck-dialog-addref-success-notify' ), { type: 'success' } ); - } else if ( responseData.reason ) { - mw.editcheck.rejections.push( responseData.reason ); - } - // TODO: Move on to the next issue, when multicheck is enabled - // checks = mw.editcheck.editCheckFactory.createAllByListener( 'onBeforeSave', surface.getModel() ); - checks = []; - - if ( checks.length ) { - context.removePersistentSource( 'editCheckReferences' ); - setTimeout( () => { - // timeout needed to wait out the newly added content being focused - surface.getModel().setNullSelection(); - drawSelections( checks ); - setTimeout( () => { - // timeout needed to allow the context to reposition - showCheckContext( checks[ Math.min( selectionIndex, checks.length - 1 ) ] ); - } ); - }, 500 ); - } else { - saveProcessDeferred.resolve( true ); - } - }; - - // eslint-disable-next-line no-inner-declarations - function showCheckContext( check ) { - const fragment = check.highlight; - - // Select the found content to correctly position the context on desktop - fragment.select(); - - context.addPersistentSource( { - embeddable: false, - data: { - action: check, - fragment: fragment, - callback: contextDone, - saveProcessDeferred: saveProcessDeferred - }, - name: 'editCheckReferences' - } ); - - // Deactivate to prevent selection suppressing mobile context - surface.getView().deactivate(); - - // Once the context is positioned, clear the selection - setTimeout( () => { - surface.getModel().setNullSelection(); - } ); - } - - drawSelections( checks ); - toolbar.toggle( false ); - target.onContainerScroll(); - - saveProcess.next( () => { - showCheckContext( checks[ 0 ] ); - - return saveProcessDeferred.promise().then( ( data ) => { - context.removePersistentSource( 'editCheckReferences' ); - - surfaceView.drawSelections( 'editCheck', [] ); - surfaceView.setReviewMode( false ); - - reviewToolbar.$element.remove(); - toolbar.toggle( true ); - target.toolbar = toolbar; - target.onContainerScroll(); - - // Check the user inserted a citation - if ( data ) { - const delay = ve.createDeferred(); - // If they inserted, wait 2 seconds on desktop before showing save dialog - setTimeout( () => { - ve.track( 'counter.editcheck.preSaveChecksCompleted' ); - delay.resolve(); - }, !OO.ui.isMobile() && data.action !== 'reject' ? 2000 : 0 ); - return delay.promise(); - } else { - ve.track( 'counter.editcheck.preSaveChecksAbandoned' ); - return ve.createDeferred().reject().promise(); + const controller = new Controller( target, { + suggestions: mw.editcheck.suggestions + } ); + controller.setup(); + + target.editcheckController = controller; + + // Temporary logging for T394952 + if ( abCheck === 'tone' && abGroup === 'control' ) { + const checkForTone = function ( listener ) { + mw.editcheck.hasFailingToneCheck( controller.surface.getModel() ).then( ( result ) => { + if ( result ) { + ve.track( 'activity.editCheck-tone', { action: 'check-control-' + listener } ); } } ); + }; + controller.on( 'branchNodeChange', () => { + checkForTone( 'branchNodeChange' ); + } ); + controller.on( 'onBeforeSave', () => { + checkForTone( 'onBeforeSave' ); } ); - } else { - // Counterpart to earlier preSaveChecksShown, for use in tracking - // errors in check-generation: - ve.track( 'counter.editcheck.preSaveChecksNotShown' ); - } - } ); - mw.hook( 've.deactivationComplete' ).add( () => { - if ( saveProcessDeferred ) { - saveProcessDeferred.reject(); } + // Temporary logging for T402460 + target.on( 'surfaceReady', () => { + target.getSurface().getView().on( 'paste', ( data ) => { + const defaults = mw.editcheck.editCheckFactory.buildConfig( 'paste' ); + const check = mw.editcheck.editCheckFactory.create( 'paste', null, { enabled: true } ); + if ( check.canBeShown() && data.fragment.getSelection().getCoveringRange().getLength() >= check.config.minimumCharacters ) { + // The check would be shown for the current viewer, and there's enough content that we care about it: + if ( data.source ) { + // Known-source pastes that we're not showing regardless of the check being enabled/disabled + ve.track( 'activity.editCheck-paste', { action: 'ignored-paste-' + data.source } ); + } else if ( !defaults.enabled ) { + // The check is disabled, and there's no source so we would have shown the check otherwise + ve.track( 'activity.editCheck-paste', { action: 'relevant-paste' } ); + } + } + } ); + } ); } ); } - -ve.ui.EditCheckBack = function VeUiEditCheckBack() { - // Parent constructor - ve.ui.EditCheckBack.super.apply( this, arguments ); - - this.setDisabled( false ); -}; -OO.inheritClass( ve.ui.EditCheckBack, ve.ui.Tool ); -ve.ui.EditCheckBack.static.name = 'editCheckBack'; -ve.ui.EditCheckBack.static.icon = 'previous'; -ve.ui.EditCheckBack.static.autoAddToCatchall = false; -ve.ui.EditCheckBack.static.autoAddToGroup = false; -ve.ui.EditCheckBack.static.title = - OO.ui.deferMsg( 'visualeditor-backbutton-tooltip' ); -ve.ui.EditCheckBack.prototype.onSelect = function () { - const context = this.toolbar.getSurface().getContext(); - if ( context.inspector ) { - context.inspector.close(); - } else { - context.items[ 0 ].close(); - } - this.setActive( false ); -}; -ve.ui.EditCheckBack.prototype.onUpdateState = function () { - this.setDisabled( false ); -}; -ve.ui.toolFactory.register( ve.ui.EditCheckBack ); - -ve.ui.EditCheckSaveDisabled = function VeUiEditCheckSaveDisabled() { - // Parent constructor - ve.ui.EditCheckSaveDisabled.super.apply( this, arguments ); -}; -OO.inheritClass( ve.ui.EditCheckSaveDisabled, ve.ui.MWSaveTool ); -ve.ui.EditCheckSaveDisabled.static.name = 'showSaveDisabled'; -ve.ui.EditCheckSaveDisabled.static.autoAddToCatchall = false; -ve.ui.EditCheckSaveDisabled.static.autoAddToGroup = false; -ve.ui.EditCheckSaveDisabled.prototype.onUpdateState = function () { - this.setDisabled( true ); -}; - -ve.ui.toolFactory.register( ve.ui.EditCheckSaveDisabled ); diff --git a/editcheck/modules/utils.js b/editcheck/modules/utils.js new file mode 100644 index 0000000000..d93d56d6ef --- /dev/null +++ b/editcheck/modules/utils.js @@ -0,0 +1,34 @@ +/** + * @param {Function} handler A deterministic asynchronous function taking a string and returning Any + * @return {Function} Memoized version (returns the original promise on subsequent calls) + */ +mw.editcheck.memoize = function ( handler ) { + const memory = new Map(); + return ( arg, bypass ) => { + if ( typeof arg !== 'string' ) { + throw new Error( 'Argument must be a string' ); + } + + if ( bypass || !memory.has( arg ) ) { + memory.set( arg, handler( arg ) ); + } + return memory.get( arg ); + }; +}; + +mw.editcheck.fetchTimeout = function ( resource, options = {} ) { + // eslint-disable-next-line compat/compat + const abortController = window.AbortController ? new AbortController() : + { signal: undefined, abort: () => {} }; + const timeoutID = setTimeout( () => abortController.abort(), options.timeout || 6000 ); + + options.signal = abortController.signal; + return fetch( resource, options ).then( ( response ) => { + clearTimeout( timeoutID ); + return response; + } ).catch( ( error ) => { + clearTimeout( timeoutID ); + // If we want to specifically handle the abort case, check for an AbortError here + throw error; + } ); +}; diff --git a/extension.json b/extension.json index 584d2b65a8..fc2874fe48 100644 --- a/extension.json +++ b/extension.json @@ -23,7 +23,7 @@ "license-name": "MIT", "type": "editor", "requires": { - "MediaWiki": ">= 1.43" + "MediaWiki": ">= 1.45" }, "callback": "MediaWiki\\Extension\\VisualEditor\\Hooks::onRegistration", "ServiceWiringFiles": [ @@ -62,6 +62,7 @@ "value": true }, "VisualEditorEnableVisualSectionEditing": { + "description": "When opened from a section edit link, only show that section in the editor (like in the wikitext editor). Can be boolean true for desktop and mobile, or 'mobile' for just mobile.", "value": "mobile" }, "VisualEditorEnableWikitext": { @@ -105,6 +106,10 @@ "VisualEditorSourceFeedbackTitle": { "value": false }, + "VisualEditorMobileInsertMenu": { + "description": "Temporary deployment flag for adding an insert menu on mobile. If true, includes all tools. If an array of strings, includes only the listed tools.", + "value": false + }, "VisualEditorTabMessages": { "value": { "edit": null, @@ -136,9 +141,13 @@ "value": false, "description": "Enable experimental Edit Check feature. Can also be enabled using ?ecenable=1." }, + "VisualEditorEditCheckLoadExperimental": { + "value": false, + "description": "Load experimental edit checks from the `editchecks/experimental` directory. Can be `false` to not load anything, `true` to load everything, or an array of filenames to load only those checks" + }, "VisualEditorEditCheckABTest": { "value": false, - "description": "A/B test Edit Check for all users. A/B bucket status will override VisualEditorEditCheck." + "description": "A/B test Edit Check for all users. A/B bucket status will override VisualEditorEditCheck. Value is a check name to test." }, "VisualEditorUseSingleEditTab": { "value": false @@ -154,7 +163,7 @@ "UserOptionsLookup", "WatchlistManager", "ContentTransformer", - "StatsdDataFactory", + "StatsFactory", "WikiPageFactory", "IntroMessageBuilder", "PreloadedContentBuilder", @@ -166,7 +175,7 @@ "class": "MediaWiki\\Extension\\VisualEditor\\ApiVisualEditorEdit", "services": [ "HookContainer", - "StatsdDataFactory", + "StatsFactory", "PageEditStash", "SkinFactory", "WikiPageFactory", @@ -177,7 +186,8 @@ "editcheckreferenceurl": { "class": "MediaWiki\\Extension\\VisualEditor\\EditCheck\\ApiEditCheckReferenceUrl", "optional_services": [ - "AbuseFilterBlockedDomainStorage" + "AbuseFilterBlockedDomainStorage", + "AbuseFilterBlockedDomainValidator" ] } }, @@ -213,14 +223,24 @@ "RecentChange_save": "VisualEditorHooks", "RedirectSpecialArticleRedirectParams": "VisualEditorHooks", "ResourceLoaderGetConfigVars": "VisualEditorHooks", - "ResourceLoaderRegisterModules": "VisualEditorHooks", + "ResourceLoaderRegisterModules": [ + "VisualEditorHooks", + "EditCheckHooks" + ], "SkinEditSectionLinks": "VisualEditorHooks", "SkinTemplateNavigation::Universal": "VisualEditorHooks", "UserLoggedIn": "VisualEditorHooks" }, "HookHandlers": { "VisualEditorHooks": { - "class": "MediaWiki\\Extension\\VisualEditor\\Hooks" + "class": "MediaWiki\\Extension\\VisualEditor\\Hooks", + "services": [ + "ExtensionRegistry", + "VisualEditor.VisualEditorAvailabilityLookup" + ] + }, + "EditCheckHooks": { + "class": "MediaWiki\\Extension\\VisualEditor\\EditCheck\\Hooks" }, "betapreferences": { "class": "MediaWiki\\Extension\\VisualEditor\\BetaPreferenceHooks", @@ -269,14 +289,18 @@ "scripts": "lib/ve/lib/spark-md5/spark-md5.js" }, "ext.visualEditor.supportCheck": { - "group": "visualEditorA", - "scripts": "lib/ve/src/init/ve.init.SupportCheck.js" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.supportCheck" + ], + "group": "visualEditorA" }, "ext.visualEditor.sanitize": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ve.sanitize.js" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.sanitize" ], + "group": "visualEditorA", "dependencies": [ "ext.visualEditor.base", "dompurify" @@ -285,13 +309,13 @@ "ext.visualEditor.progressBarWidget": { "group": "visualEditorA", "scripts": "modules/ve-mw/preinit/ve.init.mw.ProgressBarWidget.js", - "styles": "modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.css", + "styles": "modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.less", "skinStyles": { "default": [ - "modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.css" + "modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.less" ], "monobook": [ - "modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.css" + "modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.less" ] } }, @@ -317,19 +341,19 @@ "styles": "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init.less", "skinStyles": { "default": [ - "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.css" + "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.less" ], "vector": [ - "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.css", + "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.less", "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-vector.less" ], "vector-2022": [ - "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.css", + "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.less", "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-vector-2022.less" ], "monobook": [ - "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.css", - "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-monobook.css" + "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.less", + "modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-monobook.less" ] }, "dependencies": [ @@ -348,7 +372,8 @@ "ext.visualEditor.tempWikitextEditorWidget" ], "messages": [ - "accesskey-ca-ve-edit" + "accesskey-ca-ve-edit", + "editsection" ] }, "ext.visualEditor.desktopArticleTarget.noscript": { @@ -427,7 +452,6 @@ "messages": [ "creating", "editing", - "lastmodifiedat", "mw-widgets-abandonedit", "pagetitle", "visualeditor-section-body-placeholder", @@ -552,29 +576,17 @@ }, "ext.visualEditor.collabTarget.init.styles": { "styles": [ - "modules/ve-mw-collab/ve.init.mw.CollabTarget.css" + "modules/ve-mw-collab/ve.init.mw.CollabTarget.less" ] }, "ext.visualEditor.collab": { + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.collab" + ], "scripts": [ - "lib/ve/rebaser/src/dm/ve.dm.RebaseDocState.js", - "lib/ve/rebaser/src/dm/ve.dm.RebaseServer.js", - "lib/ve/rebaser/src/dm/ve.dm.DocumentStore.js", - "lib/ve/rebaser/src/dm/ve.dm.ProtocolServer.js", - "lib/ve/src/dm/ve.dm.RebaseClient.js", - "lib/ve/src/dm/ve.dm.SurfaceSynchronizer.js", - "lib/ve/src/ui/widgets/ve.ui.AuthorItemWidget.js", - "lib/ve/src/ui/tools/ve.ui.AuthorListPopupTool.js", - "lib/ve/src/ve.FakePeer.js", - "lib/ve/collab/ve.collab.js", - "lib/ve/collab/ve.dm.CollabTransportServer.js", - "lib/ve/collab/ve.ui.CollabProcessDialog.js", - "lib/ve/collab/ve.ui.CollabTool.js", "modules/ve-mw-collab/ve.init.mw.collab.init.js" ], - "styles": [ - "lib/ve/src/ui/styles/widgets/ve.ui.AuthorItemWidget.less" - ], "dependencies": [ "color-picker", "peerjs", @@ -600,8 +612,11 @@ ] }, "ext.visualEditor.ve": { - "group": "visualEditorA", - "scripts": "lib/ve/src/ve.js" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.core.ve" + ], + "group": "visualEditorA" }, "ext.visualEditor.track": { "group": "visualEditorA", @@ -612,15 +627,22 @@ "group": "visualEditorA", "packageFiles": [ "editcheck/modules/init.js", - "editcheck/modules/EditCheckContextItem.js", - "editcheck/modules/EditCheckInspector.js", - "editcheck/modules/EditCheckDialog.js", + "editcheck/modules/utils.js", + "editcheck/modules/controller.js", + "editcheck/modules/EditCheckPreSaveToolbarTools.js", "editcheck/modules/EditCheckFactory.js", "editcheck/modules/EditCheckAction.js", - "editcheck/modules/BaseEditCheck.js", - "editcheck/modules/AddReferenceEditCheck.js", - "editcheck/modules/ConvertReferenceEditCheck.js", - "editcheck/modules/TextMatchEditCheck.js", + "editcheck/modules/EditCheckActionWidget.js", + "editcheck/modules/EditCheckGutterSectionWidget.js", + "editcheck/modules/dialogs/EditCheckDialog.js", + "editcheck/modules/dialogs/FixedEditCheckDialog.js", + "editcheck/modules/dialogs/SidebarEditCheckDialog.js", + "editcheck/modules/dialogs/GutterSidebarEditCheckDialog.js", + "editcheck/modules/editchecks/BaseEditCheck.js", + "editcheck/modules/editchecks/AsyncTextCheck.js", + "editcheck/modules/editchecks/AddReferenceEditCheck.js", + "editcheck/modules/editchecks/ToneCheck.js", + "editcheck/modules/editchecks/PasteCheck.js", { "name": "editcheck/modules/config.json", "callback": "\\MediaWiki\\Extension\\VisualEditor\\EditCheck\\ResourceLoaderData::getConfig" @@ -637,6 +659,11 @@ "messages": [ "editcheck-dialog-action-no", "editcheck-dialog-action-yes", + "editcheck-dialog-action-decline", + "editcheck-dialog-action-revise", + "editcheck-dialog-action-recheck", + "editcheck-dialog-action-back", + "editcheck-dialog-action-submit", "editcheck-dialog-addref-description", "editcheck-dialog-addref-reject-question", "editcheck-dialog-addref-reject-description", @@ -647,19 +674,42 @@ "editcheck-dialog-addref-success-notify", "editcheck-dialog-addref-title", "editcheck-dialog-title", - "visualeditor-backbutton-tooltip" + "editcheck-copyvio-title", + "editcheck-copyvio-description", + "editcheck-copyvio-descriptionlink", + "editcheck-copyvio-prompt", + "editcheck-copyvio-action-keep", + "editcheck-copyvio-action-remove", + "editcheck-copyvio-keep-description", + "editcheck-copyvio-keep-wrote", + "editcheck-copyvio-keep-permission", + "editcheck-copyvio-keep-other", + "editcheck-copyvio-keep-notify", + "editcheck-copyvio-remove-notify", + "editcheck-tone-title", + "editcheck-tone-title-acted", + "editcheck-tone-description", + "editcheck-tone-descriptionlink", + "editcheck-tone-footer", + "editcheck-tone-footerlink", + "editcheck-tone-description-acted", + "editcheck-tone-reject-appropriate", + "editcheck-tone-reject-uncertain", + "editcheck-tone-reject-other", + "editcheck-tone-thank", + "editcheck-reject-description", + "editcheck-review-title", + "visualeditor-backbutton-tooltip", + "next", + "last" ] }, "ext.visualEditor.core.utils": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ve.utils.js", - "lib/ve/src/ve.TriggerListener.js" - ], - "debugScripts": [ - "lib/ve/src/ve.debug.js", - "lib/ve/src/ve.freeze.js" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.core.utils" ], + "group": "visualEditorA", "dependencies": [ "ext.visualEditor.ve", "ext.visualEditor.track", @@ -667,24 +717,22 @@ ] }, "ext.visualEditor.core.utils.parsing": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ve.utils.parsing.js" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.core.utils.parsing" ], + "group": "visualEditorA", "dependencies": [ "ext.visualEditor.ve" ] }, "ext.visualEditor.base": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ve.utils.client.js", - "lib/ve/src/init/ve.init.js", - "lib/ve/src/init/ve.init.SafeStorage.js", - "lib/ve/src/init/ve.init.ConflictableStorage.js", - "lib/ve/src/init/ve.init.Platform.js", - "lib/ve/src/init/ve.init.Target.js" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.core.utils.client", + "visualEditor.core.init" ], + "group": "visualEditorA", "dependencies": [ "oojs", "oojs-ui", @@ -704,6 +752,7 @@ "modules/ve-mw/init/apiresponsecache/ve.init.mw.GalleryImageInfoCache.js", "modules/ve-mw/init/ve.init.mw.Platform.js", "modules/ve-mw/init/ve.init.mw.Platform.init.js", + "modules/ve-mw/init/ve.init.mw.TargetFactory.js", "modules/ve-mw/init/targets/ve.init.mw.Target.js" ], "styles": [ @@ -723,6 +772,7 @@ "ext.visualEditor.base", "ext.visualEditor.track", "ext.visualEditor.targetLoader", + "mediawiki.language.names", "jquery.uls.data" ], "messages": [ @@ -828,6 +878,7 @@ "visualeditor-mweditmodeve-progress", "visualeditor-pagemenu-tooltip", "visualeditor-recreate", + "ooui-dialog-process-continue", "visualeditor-redirect-description", "visualeditor-savedialog-identify-anon", "visualeditor-savedialog-identify-temp", @@ -839,386 +890,14 @@ "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorDataModule" }, "ext.visualEditor.core": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ve.Range.js", - "lib/ve/src/ve.SelectionState.js", - "lib/ve/src/ve.Node.js", - "lib/ve/src/ve.PositionStep.js", - "lib/ve/src/ve.BranchNode.js", - "lib/ve/src/ve.LeafNode.js", - "lib/ve/src/ve.Document.js", - "lib/ve/src/ve.EventSequencer.js", - "lib/ve/src/ve.Scheduler.js", - "lib/ve/src/dm/ve.dm.js", - "lib/ve/src/dm/ve.dm.Model.js", - "lib/ve/src/dm/ve.dm.ModelRegistry.js", - "lib/ve/src/dm/ve.dm.ModelFactory.js", - "lib/ve/src/dm/ve.dm.NodeFactory.js", - "lib/ve/src/dm/ve.dm.AnnotationFactory.js", - "lib/ve/src/dm/ve.dm.AnnotationSet.js", - "lib/ve/src/dm/ve.dm.Node.js", - "lib/ve/src/dm/ve.dm.ClassAttributeNode.js", - "lib/ve/src/dm/ve.dm.AlignableNode.js", - "lib/ve/src/dm/ve.dm.FocusableNode.js", - "lib/ve/src/dm/ve.dm.ResizableNode.js", - "lib/ve/src/dm/ve.dm.TableCellableNode.js", - "lib/ve/src/dm/ve.dm.Scalable.js", - "lib/ve/src/dm/ve.dm.BranchNode.js", - "lib/ve/src/dm/ve.dm.ContentBranchNode.js", - "lib/ve/src/dm/ve.dm.LeafNode.js", - "lib/ve/src/dm/ve.dm.Annotation.js", - "lib/ve/src/dm/ve.dm.InternalList.js", - "lib/ve/src/dm/ve.dm.MetaItem.js", - "lib/ve/src/dm/ve.dm.MetaList.js", - "lib/ve/src/dm/ve.dm.TableMatrix.js", - "lib/ve/src/dm/ve.dm.TransactionProcessor.js", - "lib/ve/src/dm/ve.dm.Transaction.js", - "lib/ve/src/dm/ve.dm.TransactionBuilder.js", - "lib/ve/src/dm/ve.dm.TransactionSquasher.js", - "lib/ve/src/dm/ve.dm.Change.js", - "lib/ve/src/dm/ve.dm.TreeCursor.js", - "lib/ve/src/dm/ve.dm.TreeModifier.js", - "lib/ve/src/dm/ve.dm.Selection.js", - "lib/ve/src/dm/ve.dm.Surface.js", - "lib/ve/src/dm/ve.dm.SurfaceFragment.js", - "lib/ve/src/dm/ve.dm.SourceSurfaceFragment.js", - "lib/ve/src/dm/ve.dm.DataString.js", - "lib/ve/src/dm/ve.dm.Document.js", - "lib/ve/src/dm/ve.dm.DocumentSlice.js", - "lib/ve/src/dm/ve.dm.TableSlice.js", - "lib/ve/src/dm/ve.dm.LinearData.js", - "lib/ve/src/dm/ve.dm.HashValueStore.js", - "lib/ve/src/dm/ve.dm.Converter.js", - "lib/ve/src/dm/ve.dm.SourceConverter.js", - "lib/ve/src/dm/selections/ve.dm.LinearSelection.js", - "lib/ve/src/dm/selections/ve.dm.NullSelection.js", - "lib/ve/src/dm/selections/ve.dm.TableSelection.js", - "lib/ve/src/dm/lineardata/ve.dm.FlatLinearData.js", - "lib/ve/src/dm/lineardata/ve.dm.ElementLinearData.js", - "lib/ve/src/dm/nodes/ve.dm.GeneratedContentNode.js", - "lib/ve/src/dm/nodes/ve.dm.AlienNode.js", - "lib/ve/src/dm/nodes/ve.dm.AlienBlockNode.js", - "lib/ve/src/dm/nodes/ve.dm.AlienInlineNode.js", - "lib/ve/src/dm/nodes/ve.dm.AlienTableCellNode.js", - "lib/ve/src/dm/nodes/ve.dm.ArticleNode.js", - "lib/ve/src/dm/nodes/ve.dm.BlockquoteNode.js", - "lib/ve/src/dm/nodes/ve.dm.BreakNode.js", - "lib/ve/src/dm/nodes/ve.dm.CenterNode.js", - "lib/ve/src/dm/nodes/ve.dm.CommentNode.js", - "lib/ve/src/dm/nodes/ve.dm.FakeCommentNode.js", - "lib/ve/src/dm/nodes/ve.dm.RealCommentNode.js", - "lib/ve/src/dm/nodes/ve.dm.DefinitionListItemNode.js", - "lib/ve/src/dm/nodes/ve.dm.DefinitionListNode.js", - "lib/ve/src/dm/nodes/ve.dm.DivNode.js", - "lib/ve/src/dm/nodes/ve.dm.DocumentNode.js", - "lib/ve/src/dm/nodes/ve.dm.HeadingNode.js", - "lib/ve/src/dm/nodes/ve.dm.HorizontalRuleNode.js", - "lib/ve/src/dm/nodes/ve.dm.InternalItemNode.js", - "lib/ve/src/dm/nodes/ve.dm.InternalListNode.js", - "lib/ve/src/dm/nodes/ve.dm.ListItemNode.js", - "lib/ve/src/dm/nodes/ve.dm.ListNode.js", - "lib/ve/src/dm/nodes/ve.dm.ParagraphNode.js", - "lib/ve/src/dm/nodes/ve.dm.PreformattedNode.js", - "lib/ve/src/dm/nodes/ve.dm.SectionNode.js", - "lib/ve/src/dm/nodes/ve.dm.TableCaptionNode.js", - "lib/ve/src/dm/nodes/ve.dm.TableCellNode.js", - "lib/ve/src/dm/nodes/ve.dm.TableNode.js", - "lib/ve/src/dm/nodes/ve.dm.TableRowNode.js", - "lib/ve/src/dm/nodes/ve.dm.TableSectionNode.js", - "lib/ve/src/dm/nodes/ve.dm.TextNode.js", - "lib/ve/src/dm/nodes/ve.dm.ImageNode.js", - "lib/ve/src/dm/nodes/ve.dm.BlockImageNode.js", - "lib/ve/src/dm/nodes/ve.dm.BlockImageCaptionNode.js", - "lib/ve/src/dm/nodes/ve.dm.InlineImageNode.js", - "lib/ve/src/dm/annotations/ve.dm.LinkAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.TextStyleAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.AbbreviationAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.BidiAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.BigAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.BoldAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.CodeSampleAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.CodeAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.DatetimeAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.DefinitionAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.DeleteAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.FontAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.HighlightAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.InsertAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.ItalicAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.QuotationAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.SmallAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.SpanAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.StrikethroughAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.SubscriptAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.SuperscriptAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.UnderlineAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.UserInputAnnotation.js", - "lib/ve/src/dm/annotations/ve.dm.VariableAnnotation.js", - "lib/ve/src/dm/metaitems/ve.dm.AlienMetaItem.js", - "lib/ve/src/dm/metaitems/ve.dm.RemovableAlienMetaItem.js", - "lib/ve/src/dm/metaitems/ve.dm.CommentMetaItem.js", - "lib/ve/src/ce/ve.ce.js", - "lib/ve/src/ce/ve.ce.TextStateChunk.js", - "lib/ve/src/ce/ve.ce.TextState.js", - "lib/ve/src/ce/ve.ce.RangeState.js", - "lib/ve/src/ce/ve.ce.AnnotationFactory.js", - "lib/ve/src/ce/ve.ce.NodeFactory.js", - "lib/ve/src/ce/ve.ce.Document.js", - "lib/ve/src/ce/ve.ce.View.js", - "lib/ve/src/ce/ve.ce.Annotation.js", - "lib/ve/src/ce/ve.ce.Node.js", - "lib/ve/src/ce/ve.ce.BranchNode.js", - "lib/ve/src/ce/ve.ce.ContentBranchNode.js", - "lib/ve/src/ce/ve.ce.LeafNode.js", - "lib/ve/src/ce/ve.ce.MetaItem.js", - "lib/ve/src/ce/ve.ce.ClassAttributeNode.js", - "lib/ve/src/ce/ve.ce.AlignableNode.js", - "lib/ve/src/ce/ve.ce.FocusableNode.js", - "lib/ve/src/ce/ve.ce.ResizableNode.js", - "lib/ve/src/ce/ve.ce.TableCellableNode.js", - "lib/ve/src/ce/ve.ce.Selection.js", - "lib/ve/src/ce/ve.ce.Surface.js", - "lib/ve/src/ce/ve.ce.SurfaceObserver.js", - "lib/ve/src/ce/ve.ce.KeyDownHandlerFactory.js", - "lib/ve/src/ce/ve.ce.KeyDownHandler.js", - "lib/ve/src/ce/selections/ve.ce.LinearSelection.js", - "lib/ve/src/ce/selections/ve.ce.NullSelection.js", - "lib/ve/src/ce/selections/ve.ce.TableSelection.js", - "lib/ve/src/ce/keydownhandlers/ve.ce.LinearArrowKeyDownHandler.js", - "lib/ve/src/ce/keydownhandlers/ve.ce.LinearDeleteKeyDownHandler.js", - "lib/ve/src/ce/keydownhandlers/ve.ce.LinearEnterKeyDownHandler.js", - "lib/ve/src/ce/keydownhandlers/ve.ce.LinearEscapeKeyDownHandler.js", - "lib/ve/src/ce/keydownhandlers/ve.ce.TableArrowKeyDownHandler.js", - "lib/ve/src/ce/keydownhandlers/ve.ce.TableDeleteKeyDownHandler.js", - "lib/ve/src/ce/keydownhandlers/ve.ce.LinearTabKeyDownHandler.js", - "lib/ve/src/ce/nodes/ve.ce.GeneratedContentNode.js", - "lib/ve/src/ce/nodes/ve.ce.ContentEditableNode.js", - "lib/ve/src/ce/nodes/ve.ce.ActiveNode.js", - "lib/ve/src/ce/nodes/ve.ce.AlienNode.js", - "lib/ve/src/ce/nodes/ve.ce.AlienBlockNode.js", - "lib/ve/src/ce/nodes/ve.ce.AlienInlineNode.js", - "lib/ve/src/ce/nodes/ve.ce.AlienTableCellNode.js", - "lib/ve/src/ce/nodes/ve.ce.ArticleNode.js", - "lib/ve/src/ce/nodes/ve.ce.BlockquoteNode.js", - "lib/ve/src/ce/nodes/ve.ce.BreakNode.js", - "lib/ve/src/ce/nodes/ve.ce.CenterNode.js", - "lib/ve/src/ce/nodes/ve.ce.CommentNode.js", - "lib/ve/src/ce/nodes/ve.ce.DefinitionListItemNode.js", - "lib/ve/src/ce/nodes/ve.ce.DefinitionListNode.js", - "lib/ve/src/ce/nodes/ve.ce.DivNode.js", - "lib/ve/src/ce/nodes/ve.ce.DocumentNode.js", - "lib/ve/src/ce/nodes/ve.ce.HeadingNode.js", - "lib/ve/src/ce/nodes/ve.ce.HorizontalRuleNode.js", - "lib/ve/src/ce/nodes/ve.ce.InternalItemNode.js", - "lib/ve/src/ce/nodes/ve.ce.InternalListNode.js", - "lib/ve/src/ce/nodes/ve.ce.ListItemNode.js", - "lib/ve/src/ce/nodes/ve.ce.ListNode.js", - "lib/ve/src/ce/nodes/ve.ce.ParagraphNode.js", - "lib/ve/src/ce/nodes/ve.ce.PreformattedNode.js", - "lib/ve/src/ce/nodes/ve.ce.SectionNode.js", - "lib/ve/src/ce/nodes/ve.ce.TableCaptionNode.js", - "lib/ve/src/ce/nodes/ve.ce.TableCellNode.js", - "lib/ve/src/ce/nodes/ve.ce.TableNode.js", - "lib/ve/src/ce/nodes/ve.ce.TableRowNode.js", - "lib/ve/src/ce/nodes/ve.ce.TableSectionNode.js", - "lib/ve/src/ce/nodes/ve.ce.TextNode.js", - "lib/ve/src/ce/nodes/ve.ce.UnrenderedNode.js", - "lib/ve/src/ce/nodes/ve.ce.ImageNode.js", - "lib/ve/src/ce/nodes/ve.ce.BlockImageNode.js", - "lib/ve/src/ce/nodes/ve.ce.BlockImageCaptionNode.js", - "lib/ve/src/ce/nodes/ve.ce.InlineImageNode.js", - "lib/ve/src/ce/annotations/ve.ce.NailedAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.LinkAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.TextStyleAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.AbbreviationAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.BidiAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.BigAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.BoldAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.CodeAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.CodeSampleAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.DatetimeAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.DefinitionAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.DeleteAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.FontAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.HighlightAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.InsertAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.ItalicAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.QuotationAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.SmallAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.SpanAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.StrikethroughAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.SubscriptAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.SuperscriptAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.UnderlineAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.UserInputAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.VariableAnnotation.js", - "lib/ve/src/ui/ve.ui.js", - "lib/ve/src/ui/ve.ui.Overlay.js", - "lib/ve/src/ui/ve.ui.Surface.js", - "lib/ve/src/ui/ve.ui.Context.js", - "lib/ve/src/ui/contexts/ve.ui.LinearContext.js", - "lib/ve/src/ui/contexts/ve.ui.TableLineContext.js", - "lib/ve/src/ui/ve.ui.ModeledFactory.js", - "lib/ve/src/ui/ve.ui.ContextItem.js", - "lib/ve/src/ui/ve.ui.ContextItemFactory.js", - "lib/ve/src/ui/ve.ui.Tool.js", - "lib/ve/src/ui/ve.ui.Toolbar.js", - "lib/ve/src/ui/ve.ui.TargetToolbar.js", - "lib/ve/src/ui/ve.ui.PositionedTargetToolbar.js", - "lib/ve/src/ui/ve.ui.ToolFactory.js", - "lib/ve/src/ui/ve.ui.Command.js", - "lib/ve/src/ui/ve.ui.CommandRegistry.js", - "lib/ve/src/ui/ve.ui.CommandHelpRegistry.js", - "lib/ve/src/ui/ve.ui.Trigger.js", - "lib/ve/src/ui/ve.ui.TriggerRegistry.js", - "lib/ve/src/ui/ve.ui.Sequence.js", - "lib/ve/src/ui/ve.ui.SequenceRegistry.js", - "lib/ve/src/ui/ve.ui.Action.js", - "lib/ve/src/ui/ve.ui.ActionFactory.js", - "lib/ve/src/ui/ve.ui.DataTransferHandler.js", - "lib/ve/src/ui/ve.ui.FileTransferHandler.js", - "lib/ve/src/ui/ve.ui.DataTransferHandlerFactory.js", - "lib/ve/src/ui/ve.ui.DataTransferItem.js", - "lib/ve/src/ui/ve.ui.WindowManager.js", - "lib/ve/src/ui/ve.ui.FragmentWindow.js", - "lib/ve/src/ui/ve.ui.NodeWindow.js", - "lib/ve/src/ui/ve.ui.TabIndexScope.js", - "lib/ve/src/ui/windowmanagers/ve.ui.SurfaceWindowManager.js", - "lib/ve/src/ui/actions/ve.ui.AnnotationAction.js", - "lib/ve/src/ui/actions/ve.ui.BlockquoteAction.js", - "lib/ve/src/ui/actions/ve.ui.CompletionAction.js", - "lib/ve/src/ui/actions/ve.ui.ContentAction.js", - "lib/ve/src/ui/actions/ve.ui.FormatAction.js", - "lib/ve/src/ui/actions/ve.ui.HelpCompletionAction.js", - "lib/ve/src/ui/actions/ve.ui.HistoryAction.js", - "lib/ve/src/ui/actions/ve.ui.IndentationAction.js", - "lib/ve/src/ui/actions/ve.ui.LinkAction.js", - "lib/ve/src/ui/actions/ve.ui.ListAction.js", - "lib/ve/src/ui/actions/ve.ui.TableAction.js", - "lib/ve/src/ui/actions/ve.ui.WindowAction.js", - "lib/ve/src/ui/contextitems/ve.ui.LinearContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.ToolContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.PersistentContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.AnnotationContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.TableLineContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.MobileActionsContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.AlignableContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.CommentContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.LinkContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.TableContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.MergeCellsContextItem.js", - "lib/ve/src/ui/contextitems/ve.ui.SumCellsContextItem.js", - "lib/ve/src/ui/commands/ve.ui.ClearAnnotationCommand.js", - "lib/ve/src/ui/commands/ve.ui.HistoryCommand.js", - "lib/ve/src/ui/commands/ve.ui.IndentationCommand.js", - "lib/ve/src/ui/commands/ve.ui.MergeCellsCommand.js", - "lib/ve/src/ui/dialogs/ve.ui.FragmentDialog.js", - "lib/ve/src/ui/dialogs/ve.ui.NodeDialog.js", - "lib/ve/src/ui/dialogs/ve.ui.ToolbarDialog.js", - "lib/ve/src/ui/dialogs/ve.ui.CommandHelpDialog.js", - "lib/ve/src/ui/dialogs/ve.ui.FindAndReplaceDialog.js", - "lib/ve/src/ui/dialogs/ve.ui.ProgressDialog.js", - "lib/ve/src/ui/dialogs/ve.ui.SpecialCharacterDialog.js", - "lib/ve/src/ui/dialogs/ve.ui.TableDialog.js", - "lib/ve/src/ui/datatransferhandlers/ve.ui.PlainTextStringTransferHandler.js", - "lib/ve/src/ui/datatransferhandlers/ve.ui.HTMLStringTransferHandler.js", - "lib/ve/src/ui/datatransferhandlers/ve.ui.DSVFileTransferHandler.js", - "lib/ve/src/ui/datatransferhandlers/ve.ui.PlainTextFileTransferHandler.js", - "lib/ve/src/ui/datatransferhandlers/ve.ui.HTMLFileTransferHandler.js", - "lib/ve/src/ui/datatransferhandlers/ve.ui.UrlStringTransferHandler.js", - "lib/ve/src/ui/elements/ve.ui.PreviewElement.js", - "lib/ve/src/ui/windowmanagers/ve.ui.ToolbarDialogWindowManager.js", - "lib/ve/src/ui/widgets/ve.ui.AlignWidget.js", - "lib/ve/src/ui/widgets/ve.ui.TargetWidget.js", - "lib/ve/src/ui/widgets/ve.ui.LinkAnnotationWidget.js", - "lib/ve/src/ui/widgets/ve.ui.CompletionWidget.js", - "lib/ve/src/ui/widgets/ve.ui.ContextSelectWidget.js", - "lib/ve/src/ui/widgets/ve.ui.ContextOptionWidget.js", - "lib/ve/src/ui/widgets/ve.ui.DimensionsWidget.js", - "lib/ve/src/ui/widgets/ve.ui.MediaSizeWidget.js", - "lib/ve/src/ui/widgets/ve.ui.NoFocusButtonWidget.js", - "lib/ve/src/ui/widgets/ve.ui.WhitespacePreservingTextInputWidget.js", - "lib/ve/src/ui/tools/ve.ui.AnnotationTool.js", - "lib/ve/src/ui/tools/ve.ui.ChangeDirectionalityTool.js", - "lib/ve/src/ui/tools/ve.ui.ClearAnnotationTool.js", - "lib/ve/src/ui/tools/ve.ui.WindowTool.js", - "lib/ve/src/ui/tools/ve.ui.FragmentWindowTool.js", - "lib/ve/src/ui/tools/ve.ui.FragmentInspectorTool.js", - "lib/ve/src/ui/tools/ve.ui.LinkInspectorTool.js", - "lib/ve/src/ui/tools/ve.ui.CommentInspectorTool.js", - "lib/ve/src/ui/tools/ve.ui.ToolbarDialogTool.js", - "lib/ve/src/ui/tools/ve.ui.FormatTool.js", - "lib/ve/src/ui/tools/ve.ui.HelpCompletionTool.js", - "lib/ve/src/ui/tools/ve.ui.HistoryTool.js", - "lib/ve/src/ui/tools/ve.ui.IndentationTool.js", - "lib/ve/src/ui/tools/ve.ui.ListTool.js", - "lib/ve/src/ui/tools/ve.ui.TableTool.js", - "lib/ve/src/ui/inspectors/ve.ui.FragmentInspector.js", - "lib/ve/src/ui/inspectors/ve.ui.AnnotationInspector.js", - "lib/ve/src/ui/inspectors/ve.ui.NodeInspector.js", - "lib/ve/src/ui/inspectors/ve.ui.CommentInspector.js", - "lib/ve/src/ui/inspectors/ve.ui.LinkAnnotationInspector.js", - "lib/ve/src/ui/layouts/ve.ui.SymbolListBookletLayout.js", - "lib/ve/src/ui/pages/ve.ui.SymbolListPage.js" - ], - "debugScripts": [ - "lib/ve/src/ce/ve.ce.debug.js", - "lib/ve/src/ui/ve.ui.DebugBar.js", - "lib/ve/src/ve.Filibuster.js" - ], - "styles": [ - "lib/ve/src/ce/styles/nodes/ve.ce.FocusableNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.ActiveNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.AlienNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.BranchNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.ContentBranchNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.ParagraphNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.RootNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.GeneratedContentNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.HorizontalRuleNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.CommentNode.less", - "lib/ve/src/ce/styles/annotations/ve.ce.LanguageAnnotation.less", - "lib/ve/src/ce/styles/annotations/ve.ce.LinkAnnotation.less", - "lib/ve/src/ce/styles/nodes/ve.ce.ResizableNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.SectionNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.TableCellNode.less", - "lib/ve/src/ce/styles/nodes/ve.ce.TableNode.less", - "lib/ve/src/ce/styles/ve.ce.less", - "lib/ve/src/ce/styles/ve.ce.Surface.less", - "lib/ve/src/ui/styles/ve.ui.icons.less", - "lib/ve/src/ui/styles/dialogs/ve.ui.ToolbarDialog.less", - "lib/ve/src/ui/styles/dialogs/ve.ui.CommandHelpDialog.less", - "lib/ve/src/ui/styles/dialogs/ve.ui.FindAndReplaceDialog.less", - "lib/ve/src/ui/styles/dialogs/ve.ui.ProgressDialog.less", - "lib/ve/src/ui/styles/dialogs/ve.ui.SpecialCharacterDialog.less", - "lib/ve/src/ui/styles/dialogs/ve.ui.TableDialog.less", - "lib/ve/src/ui/styles/tools/ve.ui.FormatTool.less", - "lib/ve/src/ui/styles/widgets/ve.ui.CompletionWidget.less", - "lib/ve/src/ui/styles/widgets/ve.ui.ContextOptionWidget.less", - "lib/ve/src/ui/styles/widgets/ve.ui.ContextSelectWidget.less", - "lib/ve/src/ui/styles/widgets/ve.ui.DimensionsWidget.less", - "lib/ve/src/ui/styles/widgets/ve.ui.MediaSizeWidget.less", - "lib/ve/src/ui/styles/inspectors/ve.ui.CommentInspector.less", - "lib/ve/src/ui/styles/inspectors/ve.ui.FragmentInspector.less", - "lib/ve/src/ui/styles/layouts/ve.ui.SymbolListBookletLayout.less", - "lib/ve/src/ui/styles/widgets/ve.ui.TargetWidget.less", - "lib/ve/src/ui/styles/ve.ui.Context.less", - "lib/ve/src/ui/styles/ve.ui.ContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.LinearContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.TableLineContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.AlignableContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.CommentContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.LanguageContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.LinkContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.MergeCellsContextItem.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.ToolContextItem.less", - "lib/ve/src/ui/styles/ve.ui.Overlay.less", - "lib/ve/src/ui/styles/ve.ui.Surface.less", - "lib/ve/src/ui/styles/ve.ui.Toolbar.less", - "lib/ve/src/ui/styles/ve.ui.TableLineContext.less", - "lib/ve/src/ui/styles/ve.ui.DebugBar.less" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.core.root", + "visualEditor.core.model", + "visualEditor.core.view", + "visualEditor.core.ui" ], + "group": "visualEditorA", "skinStyles": { "default": [ "lib/ve/src/themes/wikimediaui.less" @@ -1253,6 +932,7 @@ "visualeditor-annotationbutton-bold-tooltip", "visualeditor-annotationbutton-code-tooltip", "visualeditor-annotationbutton-italic-tooltip", + "visualeditor-annotationbutton-language-tooltip", "visualeditor-annotationbutton-link-tooltip", "visualeditor-annotationbutton-small-tooltip", "visualeditor-annotationbutton-strikethrough-tooltip", @@ -1295,6 +975,8 @@ "visualeditor-dialog-action-goback", "visualeditor-dialog-action-insert", "visualeditor-dialog-command-help-title", + "visualeditor-dialog-language-auto-direction", + "visualeditor-dialog-language-search-title", "visualeditor-dialog-table-caption", "visualeditor-dialog-table-title", "visualeditor-dimensionswidget-height", @@ -1351,7 +1033,15 @@ "visualeditor-key-space", "visualeditor-key-tab", "visualeditor-key-up", + "visualeditor-language-search-input-placeholder", + "visualeditor-languageannotation-description", + "visualeditor-languageannotation-description-with-dir", "visualeditor-languagecontext-remove", + "visualeditor-languageinspector-title", + "visualeditor-languageinspector-widget-changelang", + "visualeditor-languageinspector-widget-label-direction", + "visualeditor-languageinspector-widget-label-langcode", + "visualeditor-languageinspector-widget-label-language", "visualeditor-linkcontext-label-change", "visualeditor-linkcontext-label-fallback", "visualeditor-linkcontext-label-label", @@ -1377,6 +1067,7 @@ "visualeditor-shortcuts-text-style", "visualeditor-slug-insert", "visualeditor-specialcharacter-button-tooltip", + "visualeditor-specialcharacter-recentlyused", "visualeditor-table-context-col", "visualeditor-table-context-row", "visualeditor-table-contextitem-properties", @@ -1414,16 +1105,9 @@ }, "ext.visualEditor.commentAnnotation": { "group": "visualEditorA", - "scripts": [ - "lib/ve/src/dm/annotations/ve.dm.CommentAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.CommentAnnotation.js", - "lib/ve/src/ui/contextitems/ve.ui.CommentAnnotationContextItem.js", - "lib/ve/src/ui/tools/ve.ui.CommentAnnotationInspectorTool.js", - "lib/ve/src/ui/inspectors/ve.ui.CommentAnnotationInspector.js" - ], - "styles": [ - "lib/ve/src/ce/styles/annotations/ve.ce.CommentAnnotation.less", - "lib/ve/src/ui/styles/contextitems/ve.ui.CommentAnnotationContextItem.less" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.commentAnnotation" ], "dependencies": [ "ext.visualEditor.core" @@ -1433,16 +1117,11 @@ ] }, "ext.visualEditor.rebase": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/dm/ve.dm.RebaseClient.js", - "lib/ve/src/dm/ve.dm.SurfaceSynchronizer.js", - "lib/ve/src/ui/widgets/ve.ui.AuthorItemWidget.js", - "lib/ve/src/ui/tools/ve.ui.AuthorListPopupTool.js" - ], - "styles": [ - "lib/ve/src/ui/styles/widgets/ve.ui.AuthorItemWidget.less" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.rebase" ], + "group": "visualEditorA", "dependencies": [ "ext.visualEditor.core", "ext.visualEditor.sanitize", @@ -1462,27 +1141,21 @@ ] }, "ext.visualEditor.core.desktop": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ui/contexts/ve.ui.DesktopContext.js", - "lib/ve/src/ui/windowmanagers/ve.ui.DesktopInspectorWindowManager.js" - ], - "styles": [ - "lib/ve/src/ui/styles/ve.ui.DesktopContext.less" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.desktop.build" ], + "group": "visualEditorA", "dependencies": [ "ext.visualEditor.core" ] }, "ext.visualEditor.core.mobile": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ui/contexts/ve.ui.MobileContext.js", - "lib/ve/src/ui/windowmanagers/ve.ui.MobileWindowManager.js" - ], - "styles": [ - "lib/ve/src/ui/styles/ve.ui.MobileContext.less" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.mobile.build" ], + "group": "visualEditorA", "dependencies": [ "ext.visualEditor.core" ] @@ -1516,7 +1189,7 @@ "modules/ve-mw/preinit/ve.init.MWEditModeTool.js" ], "styles": [ - "modules/ve-mw/preinit/styles/ve.init.MWVESwitchConfirmDialog.css", + "modules/ve-mw/preinit/styles/ve.init.MWVESwitchConfirmDialog.less", "modules/ve-mw/preinit/styles/ve.init.MWVESwitchPopupWidget.less" ], "skinStyles": { @@ -1536,7 +1209,6 @@ "oojs-ui.styles.icons-accessibility" ], "messages": [ - "visualeditor-dialog-extension-abandonedit", "visualeditor-editingtabdialog-body", "visualeditor-editingtabdialog-ok", "visualeditor-editingtabdialog-title", @@ -1584,6 +1256,7 @@ "modules/ve-mw/ui/ve.ui.MWSurface.js", "modules/ve-mw/ui/ve.ui.MWExtensionWindow.js", "modules/ve-mw/ui/ve.ui.MWWikitextTransferRegistry.js", + "modules/ve-mw/ui/commands/ve.ui.MWLinkCommand.js", "modules/ve-mw/ui/commands/ve.ui.MWWikitextWarningCommand.js", "modules/ve-mw/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.js", "modules/ve-mw/ui/widgets/ve.ui.MWAceEditorWidget.js", @@ -1624,23 +1297,23 @@ "modules/ve-mw/ui/styles/elements/ve.ui.MWExpandableErrorElement.less", "modules/ve-mw/ui/styles/elements/ve.ui.MWFloatingHelpElement.less", "modules/ve-mw/ui/styles/elements/ve.ui.MWPreviewElement.less", - "modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.css", + "modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.less", "modules/ve-mw/ui/styles/toolgroups/ve.ui.MWHelpListToolGroup.less", "modules/ve-mw/ui/styles/widgets/ve.ui.MWAceEditorWidget.less", "modules/ve-mw/ui/styles/widgets/ve.ui.MWEducationPopupWidget.less" ], "skinStyles": { "default": [ - "modules/ve-mw/themes/wikimediaui.css" + "modules/ve-mw/themes/wikimediaui.less" ], "vector": [ - "modules/ve-mw/themes/wikimediaui.css" + "modules/ve-mw/themes/wikimediaui.less" ], "vector-2022": [ - "modules/ve-mw/themes/wikimediaui.css" + "modules/ve-mw/themes/wikimediaui.less" ], "monobook": [ - "modules/ve-mw/themes/apex.css" + "modules/ve-mw/themes/apex.less" ] }, "dependencies": [ @@ -1661,12 +1334,14 @@ "oojs-ui.styles.icons-editing-advanced" ], "messages": [ - "ooui-dialog-process-continue", "toc", "visualeditor-dialog-table-collapsed", "visualeditor-dialog-table-collapsible", "visualeditor-dialog-table-sortable", "visualeditor-dialog-table-wikitable", + "visualeditor-dialog-extension-abandonedit", + "mw-widgets-abandonedit-keep", + "mw-widgets-abandonedit-discard", "visualeditor-editnotices-tool", "visualeditor-editnotices-tooltip", "visualeditor-educationpopup-dismiss", @@ -1705,7 +1380,6 @@ "ext.visualEditor.mwgallery", "ext.visualEditor.mwimage", "ext.visualEditor.mwalienextension", - "ext.visualEditor.language", "ext.visualEditor.mwlanguage", "ext.visualEditor.icons" ] @@ -1729,16 +1403,16 @@ ], "skinStyles": { "vector": [ - "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.css" + "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.less" ], "vector-2022": [ - "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.css" + "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.less" ], "minerva": [ - "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.css" + "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.less" ], "monobook": [ - "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.css" + "modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.less" ] }, "dependencies": [ @@ -1866,7 +1540,7 @@ "styles": [ "modules/ve-mw/ui/styles/contextitems/ve.ui.MWInternalLinkContextItem.less", "modules/ve-mw/ui/styles/inspectors/ve.ui.MWLinkAnnotationInspector.less", - "modules/ve-mw/ui/styles/tools/ve.ui.MWLinkInspectorTool.css", + "modules/ve-mw/ui/styles/tools/ve.ui.MWLinkInspectorTool.less", "modules/ve-mw/ce/styles/annotations/ve.ce.MWExternalLinkAnnotation.less" ], "dependencies": [ @@ -1875,6 +1549,7 @@ "messages": [ "pubmedurl", "rfcurl", + "visualeditor-linkcontext-uneditable", "visualeditor-linkinspector-button-link-external", "visualeditor-linkinspector-button-link-internal", "visualeditor-linkinspector-convert-link-isbn", @@ -1928,7 +1603,7 @@ "modules/ve-mw/ui/styles/widgets/ve.ui.MWCategoryItemWidget.less", "modules/ve-mw/ui/styles/widgets/ve.ui.MWCategoryPopupWidget.less", "modules/ve-mw/ui/styles/widgets/ve.ui.MWCategoryWidget.less", - "modules/ve-mw/ui/styles/widgets/ve.ui.MWTocWidget.css", + "modules/ve-mw/ui/styles/widgets/ve.ui.MWTocWidget.less", "modules/ve-mw/ui/styles/dialogs/ve.ui.MWMetaDialog.less" ], "dependencies": [ @@ -2087,7 +1762,6 @@ "messages": [ "quotation-marks", "redirectedfrom", - "templatedata-doc-subpage", "visualeditor-changedesc-mwtransclusion", "visualeditor-dialog-template-title", "visualeditor-dialog-transclusion-action-save", @@ -2158,12 +1832,22 @@ "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single", "visualeditor-dialogbutton-template-tooltip", "visualeditor-expandable-less", - "visualeditor-expandable-more" - ] + "visualeditor-expandable-more", + "visualeditor-template-sandbox-subpage" + ], + "factory": "MediaWiki\\Extension\\VisualEditor\\VisualEditorDataModule::addOptional", + "optional": { + "TemplateData": { + "messages": [ + "templatedata-doc-subpage" + ] + } + } }, "treeDiffer": { "scripts": [ - "lib/ve/lib/treeDiffer/treeDiffer-dist.js" + "lib/ve/lib/treeDiffer/treeDiffer-dist.js", + "modules/ve-mw/treeDiffer-global.js" ] }, "diffMatchPatch": { @@ -2172,17 +1856,11 @@ ] }, "ext.visualEditor.checkList": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/dm/nodes/ve.dm.CheckListNode.js", - "lib/ve/src/dm/nodes/ve.dm.CheckListItemNode.js", - "lib/ve/src/ce/nodes/ve.ce.CheckListNode.js", - "lib/ve/src/ce/nodes/ve.ce.CheckListItemNode.js", - "lib/ve/src/ui/tools/ve.ui.CheckListTool.js" - ], - "styles": [ - "lib/ve/src/ce/styles/nodes/ve.ce.CheckListNode.less" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.checkList" ], + "group": "visualEditorA", "dependencies": [ "ext.visualEditor.core" ], @@ -2191,17 +1869,11 @@ ] }, "ext.visualEditor.diffing": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/ve.DiffTreeNode.js", - "lib/ve/src/ve.DiffMatchPatch.js", - "lib/ve/src/dm/ve.dm.VisualDiff.js", - "lib/ve/src/ui/elements/ve.ui.DiffElement.js", - "lib/ve/src/ui/widgets/ve.ui.ChangeDescriptionsSelectWidget.js" - ], - "styles": [ - "lib/ve/src/ui/styles/elements/ve.ui.DiffElement.less" + "class": "MediaWiki\\Extension\\VisualEditor\\VisualEditorFileModule", + "veModules": [ + "visualEditor.diffing" ], + "group": "visualEditorA", "skinStyles": { "vector": [ "modules/ve-mw/ui/styles/elements/ve.ui.DiffElement-vector.less" @@ -2246,9 +1918,12 @@ ] }, "ext.visualEditor.diffPage.init.styles": { - "styles": [ - "modules/ve-mw/preinit/styles/ve.init.mw.DiffPage.less" - ] + "styles": "modules/ve-mw/preinit/styles/ve.init.mw.DiffPage.less", + "skinStyles": { + "minerva": [ + "modules/ve-mw/preinit/styles/ve.init.mw.DiffPage-minerva.less" + ] + } }, "ext.visualEditor.diffLoader": { "group": "visualEditorA", @@ -2277,43 +1952,6 @@ "visualeditor-savedialog-review-wikitext" ] }, - "ext.visualEditor.language": { - "group": "visualEditorA", - "scripts": [ - "lib/ve/src/dm/annotations/ve.dm.LanguageAnnotation.js", - "lib/ve/src/ce/annotations/ve.ce.LanguageAnnotation.js", - "lib/ve/src/ui/contextitems/ve.ui.LanguageContextItem.js", - "lib/ve/src/ui/widgets/ve.ui.LanguageResultWidget.js", - "lib/ve/src/ui/widgets/ve.ui.LanguageSearchWidget.js", - "lib/ve/src/ui/dialogs/ve.ui.LanguageSearchDialog.js", - "lib/ve/src/ui/inspectors/ve.ui.LanguageInspector.js", - "lib/ve/src/ui/tools/ve.ui.LanguageInspectorTool.js", - "lib/ve/src/ui/widgets/ve.ui.LanguageInputWidget.js" - ], - "styles": [ - "lib/ve/src/ui/styles/inspectors/ve.ui.LanguageInspector.less", - "lib/ve/src/ui/styles/widgets/ve.ui.LanguageInputWidget.less", - "lib/ve/src/ui/styles/widgets/ve.ui.LanguageSearchWidget.less" - ], - "dependencies": [ - "ext.visualEditor.core", - "mediawiki.language.names", - "jquery.uls.data" - ], - "messages": [ - "visualeditor-annotationbutton-language-tooltip", - "visualeditor-dialog-language-auto-direction", - "visualeditor-dialog-language-search-title", - "visualeditor-language-search-input-placeholder", - "visualeditor-languageannotation-description", - "visualeditor-languageannotation-description-with-dir", - "visualeditor-languageinspector-title", - "visualeditor-languageinspector-widget-changelang", - "visualeditor-languageinspector-widget-label-direction", - "visualeditor-languageinspector-widget-label-langcode", - "visualeditor-languageinspector-widget-label-language" - ] - }, "ext.visualEditor.mwlanguage": { "group": "visualEditorA", "scripts": [ @@ -2401,6 +2039,7 @@ "scripts": [ "modules/ve-mw/dm/ve.dm.MWWikitextSurface.js", "modules/ve-mw/dm/ve.dm.MWWikitextSurfaceFragment.js", + "modules/ve-mw/ce/ve.ce.MWWikitextClipboardHandler.js", "modules/ve-mw/ce/ve.ce.MWWikitextSurface.js", "modules/ve-mw/ui/ve.ui.MWWikitextCommandRegistry.js", "modules/ve-mw/ui/ve.ui.MWWikitextSequenceRegistry.js", @@ -2412,7 +2051,7 @@ "modules/ve-mw/ui/datatransferhandlers/ve.ui.MWWikitextPlainTextStringTransferHandler.js" ], "styles": [ - "modules/ve-mw/ui/styles/ve.ui.MWWikitextSurface.css" + "modules/ve-mw/ui/styles/ve.ui.MWWikitextSurface.less" ], "dependencies": [ "mediawiki.editfont.styles", @@ -2582,6 +2221,7 @@ "modules/ve-mw/tests/dm/ve.dm.Document.test.js", "lib/ve/tests/dm/ve.dm.HashValueStore.test.js", "lib/ve/tests/dm/ve.dm.InternalList.test.js", + "lib/ve/tests/dm/ve.dm.InternalListNodeGroup.test.js", "lib/ve/tests/dm/ve.dm.LinearData.test.js", "lib/ve/tests/dm/ve.dm.Transaction.test.js", "lib/ve/tests/dm/ve.dm.TransactionBuilder.test.js", @@ -2598,8 +2238,6 @@ "lib/ve/tests/dm/selections/ve.dm.LinearSelection.test.js", "lib/ve/tests/dm/selections/ve.dm.NullSelection.test.js", "lib/ve/tests/dm/selections/ve.dm.TableSelection.test.js", - "lib/ve/tests/dm/lineardata/ve.dm.FlatLinearData.test.js", - "lib/ve/tests/dm/lineardata/ve.dm.ElementLinearData.test.js", "modules/ve-mw/tests/dm/ve.dm.mwExample.js", "modules/ve-mw/tests/dm/ve.dm.Converter.test.js", "modules/ve-mw/tests/dm/annotations/ve.dm.MWInternalLinkAnnotation.test.js", @@ -2611,8 +2249,10 @@ "lib/ve/tests/ce/ve.ce.test.js", "lib/ve/tests/ce/ve.ce.Document.test.js", "modules/ve-mw/tests/ce/ve.ce.Document.test.js", + "lib/ve/tests/ce/ve.ce.ClipboardHandler.test.js", + "modules/ve-mw/tests/ce/ve.ce.ClipboardHandler.test.js", + "lib/ve/tests/ce/ve.ce.DragDropHandler.test.js", "lib/ve/tests/ce/ve.ce.Surface.test.js", - "modules/ve-mw/tests/ce/ve.ce.Surface.test.js", "lib/ve/tests/ce/ve.ce.RangeState.test.js", "lib/ve/tests/ce/ve.ce.TextState.test.js", "lib/ve/tests/ce/ve.ce.NodeFactory.test.js", @@ -2729,9 +2369,9 @@ "ext.visualEditor.mwtransclusion", "ext.visualEditor.mwalienextension", "ext.visualEditor.mwwikitext", - "ext.visualEditor.language", "ext.visualEditor.desktopArticleTarget.init", "ext.visualEditor.desktopArticleTarget", + "ext.visualEditor.core.mobile", "ext.visualEditor.rebase" ] }, @@ -2762,7 +2402,7 @@ "MediaWiki\\Extension\\VisualEditor\\EditCheck\\": "editcheck/includes/" }, "ConfigRegistry": { - "visualeditor": "GlobalVarConfig::newInstance" + "visualeditor": "MediaWiki\\Config\\GlobalVarConfig::newInstance" }, "attributes": { "EventLogging": { diff --git a/i18n/ve-mw/ab.json b/i18n/ve-mw/ab.json index cf491cec7b..078731c3f3 100644 --- a/i18n/ve-mw/ab.json +++ b/i18n/ve-mw/ab.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Fraxinus.cs" ] }, diff --git a/i18n/ve-mw/abr.json b/i18n/ve-mw/abr.json index c7951116ff..89a6f8149a 100644 --- a/i18n/ve-mw/abr.json +++ b/i18n/ve-mw/abr.json @@ -2,9 +2,12 @@ "@metadata": { "authors": [ "Alicia Agyeiwaa", - "Obed554" + "Obed554", + "Yaw tuba" ] }, + "visualeditor-ca-createlocaldescriptionsource": "Fa ɛfitiasɛm ka ho", + "visualeditor-ca-createsource": "Yɛ fibea", "visualeditor-ca-editsource": "Sakra baabi ɔfiri mu", "visualeditor-ca-editsource-section": "Baabi a nsamu no firi" } diff --git a/i18n/ve-mw/abs.json b/i18n/ve-mw/abs.json index de96354e92..a551c2c49e 100644 --- a/i18n/ve-mw/abs.json +++ b/i18n/ve-mw/abs.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Anok kutai jang" ] }, diff --git a/i18n/ve-mw/ady-cyrl.json b/i18n/ve-mw/ady-cyrl.json index 76b915fa97..614bf5a746 100644 --- a/i18n/ve-mw/ady-cyrl.json +++ b/i18n/ve-mw/ady-cyrl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bedynokue.nart", "Highlander45temp", "Inyzh", diff --git a/i18n/ve-mw/af.json b/i18n/ve-mw/af.json index e97158c9af..8d49dd47b4 100644 --- a/i18n/ve-mw/af.json +++ b/i18n/ve-mw/af.json @@ -5,7 +5,8 @@ "Fwolff", "Naudefj", "Neil P. Quinn", - "Oesjaar" + "Oesjaar", + "Rooiratel" ] }, "tooltip-ca-ve-edit": "Redigeer hierdie bladsy", @@ -122,6 +123,7 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Gaan in elk geval voort", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Nodige {{PLURAL:$1|veld|velde}} ontbreek", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Wil u definitief voortgaan sonder om die $1 {{PLURAL:$2|veld|velde}} in te vul?", + "visualeditor-dialog-transclusion-title-insert-template": "Voeg 'n sjabloon in", "visualeditor-dialogbutton-media-tooltip": "Media", "visualeditor-dialogbutton-template-tooltip": "Sjabloon", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|kennisgewing|kennisgewings}}", diff --git a/i18n/ve-mw/aig.json b/i18n/ve-mw/aig.json new file mode 100644 index 0000000000..bfc4538bb7 --- /dev/null +++ b/i18n/ve-mw/aig.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "CROIX2" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Mek lokal diskripshan sarce", + "visualeditor-ca-createsource": "Mek sarce", + "visualeditor-ca-editsource": "Chienj sarce", + "visualeditor-ca-editsource-section": "chienj sarse" +} diff --git a/i18n/ve-mw/ami.json b/i18n/ve-mw/ami.json index 83c3ee7c07..c943e1eb57 100644 --- a/i18n/ve-mw/ami.json +++ b/i18n/ve-mw/ami.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Vickylin77s" ] }, diff --git a/i18n/ve-mw/ang.json b/i18n/ve-mw/ang.json index f42a1481c2..ed36bdbc71 100644 --- a/i18n/ve-mw/ang.json +++ b/i18n/ve-mw/ang.json @@ -4,14 +4,15 @@ "Gott wisst", "Heahwrita", "Hogweard", - "JJohnson1701" + "JJohnson1701", + "Rocioun" ] }, - "tooltip-ca-ve-edit": "Adiht þisne tramet", + "tooltip-ca-ve-edit": "Adihtan þisne tramet", "visualeditor-ca-createlocaldescriptionsource": "Besete stowlicre gemearcunge fruman", "visualeditor-ca-createsource": "Scippan fruman", "visualeditor-ca-editsource": "Adiht fruman", - "visualeditor-ca-editsource-section": "adiht fruman", + "visualeditor-ca-editsource-section": "adihtan fruman", "visualeditor-descriptionpagelink": "Project:VisualEditor", "visualeditor-linkinspector-convert-link-isbn": "Onwendaþ to ISBN hlenc", "visualeditor-magiclinknodeinspector-title-isbn": "ISBN hlenc" diff --git a/i18n/ve-mw/ann.json b/i18n/ve-mw/ann.json index 2ba181f42d..1bb0b4a6f7 100644 --- a/i18n/ve-mw/ann.json +++ b/i18n/ve-mw/ann.json @@ -7,7 +7,7 @@ "tooltip-ca-ve-edit": "Nen̄e akpọk yi ge", "visualeditor-ca-createlocaldescriptionsource": "Tap ebon mkpa-mwele eyi local", "visualeditor-ca-createsource": "Rom ebon", - "visualeditor-ca-editsource": "Nen̄e ere înan̄abe ge", + "visualeditor-ca-editsource": "Nen̄e me ebon", "visualeditor-ca-editsource-section": "nen̄e me ebon", "visualeditor-descriptionpagelink": "Project:ÒnweneEyiEkimun̄", "visualeditor-rebase-client-export-start": "Ria sibi", diff --git a/i18n/ve-mw/api/ar.json b/i18n/ve-mw/api/ar.json index 73c644101f..b4d9694620 100644 --- a/i18n/ve-mw/api/ar.json +++ b/i18n/ve-mw/api/ar.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Matma Rex", "Meno25", "ديفيد", @@ -33,6 +32,7 @@ "apihelp-visualeditoredit-param-cachekey": "استخدام نتيجة لتسلسل السابق لطلب مخبأ مع هذا المفتاح.\nيتجاوز $1html.", "apihelp-visualeditoredit-param-captchaid": "CAPTCHA ID (عندما تحفظ مع استجابة CAPTCHA).", "apihelp-visualeditoredit-param-captchaword": "الإجابة على اختبار CAPTCHA (عندما الادخار مع استجابة CAPTCHA).", + "apihelp-visualeditoredit-param-nocontent": "احذف محتوى HTML الخاص بالإصدار الجديد في الاستجابة.", "apihelp-visualeditoredit-param-plugins": "الإضافات المرتبطة بطلب API.", "apihelp-visualeditoredit-param-data-{plugin}": "تم إرسال البيانات التعسفية بواسطة مكون إضافي مع طلب واجهة برمجة التطبيقات.", "apihelp-visualeditoredit-param-etag": "ETag للإرسال.", diff --git a/i18n/ve-mw/api/ba.json b/i18n/ve-mw/api/ba.json index 6dbe789116..5e10c4c740 100644 --- a/i18n/ve-mw/api/ba.json +++ b/i18n/ve-mw/api/ba.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Lizalizaufa", "Азат Хәлилов", "Айсар", diff --git a/i18n/ve-mw/api/be-tarask.json b/i18n/ve-mw/api/be-tarask.json index b005b21a73..999e3e5819 100644 --- a/i18n/ve-mw/api/be-tarask.json +++ b/i18n/ve-mw/api/be-tarask.json @@ -2,15 +2,16 @@ "@metadata": { "authors": [ "Red Winged Duck", - "Renessaince" + "Renessaince", + "Ucukor" ] }, "apihelp-visualeditor-param-basetimestamp": "Пры захаваньні ўсталёўвае тут час вэрсіі, якая рэдагавалася. Выкарыстоўваецца дзеля выяўленьня канфліктаў рэдагаваньня.", "apihelp-visualeditor-param-cachekey": "Для serialize або diff выкарыстоўвае вынік папярэдняга запыту serializeforcache з гэтым ключом. Перазапісвае $1html.", "apihelp-visualeditor-param-etag": "ETag на адсыланьне.", "apihelp-visualeditor-param-html": "HTML дзеля адпраўкі ў Parsoid і канвэртаваньня ў вікітэкст.", - "apihelp-visualeditor-param-oldid": "Нумар вэрсіі для выкарыстаньня (дапомна — апошняя вэрсія).", - "apihelp-visualeditor-param-paction": "Дзеяньне, якое неабходна выканаць.", + "apihelp-visualeditor-param-oldid": "Нумар вэрсіі для ўжытку (перадвызначана — апошняя вэрсія).", + "apihelp-visualeditor-param-paction": "Дзея на выкананьне.", "apihelp-visualeditor-param-page": "Старонка для выкананьня дзеяньня.", "apihelp-visualeditor-param-pst": "Папярэдне захавайце ператварэньне вікітэксту перад адпраўкай яго ў Parsoid (paction=parsefragment).", "apihelp-visualeditor-param-starttimestamp": "Пры захаваньні, выстаўце час, калі старонка была загружаная. Выкарыстоўваецца для вызначэньня канфліктаў рэдагаваньня.", @@ -21,7 +22,7 @@ "apihelp-visualeditoredit-param-etag": "ETag на адсыланьне.", "apihelp-visualeditoredit-param-html": "HTML дзеля адпраўкі ў Parsoid у абмен на вікітэкст.", "apihelp-visualeditoredit-param-minor": "Сьцяг для дробнага рэдагаваньня.", - "apihelp-visualeditoredit-param-oldid": "Нумар вэрсіі для выкарыстаньня. Дапомна — апошняя вэрсія. 0 — новая старонка.", + "apihelp-visualeditoredit-param-oldid": "Нумар вэрсіі для ўжытку. Перадвызначана — апошняя вэрсія.", "apihelp-visualeditoredit-param-page": "Старонка для выкананьня дзеяньняў.", "apihelp-visualeditoredit-param-starttimestamp": "Пры захаваньні ўсталёўвае тут час вэрсіі, калі старонка была загружаная. Выкарыстоўваецца дзеля выяўленьня канфліктаў рэдагаваньня.", "apihelp-visualeditoredit-param-summary": "Апісаньне зьменаў." diff --git a/i18n/ve-mw/api/cdo.json b/i18n/ve-mw/api/cdo-hant.json similarity index 97% rename from i18n/ve-mw/api/cdo.json rename to i18n/ve-mw/api/cdo-hant.json index b52fcfe430..2bfccfae05 100644 --- a/i18n/ve-mw/api/cdo.json +++ b/i18n/ve-mw/api/cdo-hant.json @@ -1,9 +1,7 @@ { "@metadata": { "authors": [ - "Yejianfei", - "Ztl8702", - "唐吉訶德的侍從" + "Winston Sung" ] }, "apihelp-visualeditor-param-basetimestamp": "敆保存其辰候,起動汝共嚽設置成編輯茲萆修訂版本其時間戳。廮𡅏檢測編輯衝突。", diff --git a/i18n/ve-mw/api/ce.json b/i18n/ve-mw/api/ce.json index 3f40e804d7..475408f029 100644 --- a/i18n/ve-mw/api/ce.json +++ b/i18n/ve-mw/api/ce.json @@ -6,6 +6,14 @@ }, "apierror-visualeditor-difffailed": "Ӏалашйан цайелира", "apihelp-visualeditor-param-etag": "ETag дӀайахьийта.", + "apihelp-visualeditor-param-paction": "Кхочушбан безаш болу ардамаш.", + "apihelp-visualeditor-param-page": "Ардам кхочушбан беза агӀо.", + "apihelp-visualeditoredit-param-plugins": "API-н дехарца йоьзна плагинаш.", "apihelp-visualeditoredit-param-etag": "ETag дӀайахьийта.", - "apihelp-visualeditoredit-param-summary": "Хийцамах лаьцнарг тадар" + "apihelp-visualeditoredit-param-minor": "Жимачу хийцамашна байракх.", + "apihelp-visualeditoredit-param-paction": "Кхочушбан безаш болу ардамаш.", + "apihelp-visualeditoredit-param-page": "Ардам кхочушбан беза агӀо.", + "apihelp-visualeditoredit-param-sectiontitle": "Керлачу декъан цӀе.", + "apihelp-visualeditoredit-param-summary": "Хийцамах лаьцнарг тадар", + "apihelp-visualeditoredit-summary": "MediaWiki агӀо Ӏалашйе HTML5 форматехь (викитексте хийцина Parsoid лелош)." } diff --git a/i18n/ve-mw/api/diq.json b/i18n/ve-mw/api/diq.json index e5348e521a..39e80e27e7 100644 --- a/i18n/ve-mw/api/diq.json +++ b/i18n/ve-mw/api/diq.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "1917 Ekim Devrimi", - "Amire80", "Gırd", "Kumkumuk", "Mirzali", diff --git a/i18n/ve-mw/api/eo.json b/i18n/ve-mw/api/eo.json index 203c233c9f..9287b5a592 100644 --- a/i18n/ve-mw/api/eo.json +++ b/i18n/ve-mw/api/eo.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "KuboF", "Kvardek du", "Matma Rex", diff --git a/i18n/ve-mw/api/es.json b/i18n/ve-mw/api/es.json index 37cff54f42..c84f982bbb 100644 --- a/i18n/ve-mw/api/es.json +++ b/i18n/ve-mw/api/es.json @@ -29,17 +29,19 @@ "apihelp-visualeditoredit-param-cachekey": "Utilizar el resultado de una solicitud de \"serializeforcache\" anterior con éste código. Sobreescribe $1html.", "apihelp-visualeditoredit-param-captchaid": "Captcha ID (al guardar respondiendo un código de imágeen \"captcha\").", "apihelp-visualeditoredit-param-captchaword": "Respuesta al código de imagen (al guardar respondiendo un código de imágeen \"captcha\").", + "apihelp-visualeditoredit-param-nocontent": "Omitir el contenido HTML de la nueva revisión en la respuesta.", "apihelp-visualeditoredit-param-etag": "ETag que enviar.", "apihelp-visualeditoredit-param-html": "HTML para enviar a Parsoid en lugar del wikitexto.", "apihelp-visualeditoredit-param-minor": "Marca de edición menor.", "apihelp-visualeditoredit-param-needcheck": "Al guardar, establece este parámetro si la revisión puede tener problemas de \"roundtrip\". Esto hará que se etiquete la edición.", - "apihelp-visualeditoredit-param-oldid": "El número de revisión que utilizar. De manera predeterminada corresponde a la más reciente. Utiliza 0 para una página nueva.", + "apihelp-visualeditoredit-param-oldid": "El número de revisión que utilizar. Por defecto, el número de la revisión más reciente.", "apihelp-visualeditoredit-param-paction": "Acción que realizar.", "apihelp-visualeditoredit-param-page": "La página en la que se realizarán acciones.", "apihelp-visualeditoredit-param-section": "La sección donde actuar.", "apihelp-visualeditoredit-param-sectiontitle": "Título de la sección nueva.", "apihelp-visualeditoredit-param-starttimestamp": "Al guardar, establece esto a la fecha y hora en que la página se cargó. Se utiliza para detectar conflictos de edición.", "apihelp-visualeditoredit-param-summary": "Resumen de edición.", + "apihelp-visualeditoredit-param-tags": "Etiquetas de cambio que aplicar a la edición.", "apihelp-visualeditoredit-param-wikitext": "El wikicódigo que se utilizará.", "apihelp-visualeditoredit-summary": "Guardar una página HTML5 en MediaWiki (convertida en wikicódigo mediante el servicio Parsoid)." } diff --git a/i18n/ve-mw/api/eu.json b/i18n/ve-mw/api/eu.json index 6d5d0c0e28..a11c99c87c 100644 --- a/i18n/ve-mw/api/eu.json +++ b/i18n/ve-mw/api/eu.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Iñaki LL", "Sator" ] diff --git a/i18n/ve-mw/api/fa.json b/i18n/ve-mw/api/fa.json index d046dc9333..f73cca393e 100644 --- a/i18n/ve-mw/api/fa.json +++ b/i18n/ve-mw/api/fa.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Alireza Ivaz", - "Amire80", "Beginneruser", "Darafsh", "Ebrahim", @@ -47,7 +46,7 @@ "apihelp-visualeditoredit-param-needcheck": "در زمان ذخيره كردن اگر نسخه مشكلات رفت و برگشت داشت، پاراسويد را تنظيم كن. اين عمل در برچسب ويرايش داشتن تاثير دارد.", "apihelp-visualeditoredit-param-oldid": "شماره نسخه استفاده شود. پيش فرض بر آخرين نسخه است. صفحات تازه ٠ است", "apihelp-visualeditoredit-param-paction": "عمل برای انجام‌دادن.", - "apihelp-visualeditoredit-param-page": "صفحه برای انجام‌دادن عمل‌ها بر روی آن.", + "apihelp-visualeditoredit-param-page": "صفحه برای انجام‌دادن کنش‌ها بر روی آن.", "apihelp-visualeditoredit-param-section": "بخشی که برای انجام‌دادن است.", "apihelp-visualeditoredit-param-sectiontitle": "عنوان برای بخش جدید.", "apihelp-visualeditoredit-param-starttimestamp": "در زمان ذخیره کردن، این را برای زمان بارگیری نسخه تنظیم کنید. برای تشخیص تعارض ویرایش کاربرد دارد.", diff --git a/i18n/ve-mw/api/fr.json b/i18n/ve-mw/api/fr.json index 9998d46ce4..180283c5f3 100644 --- a/i18n/ve-mw/api/fr.json +++ b/i18n/ve-mw/api/fr.json @@ -7,6 +7,7 @@ "Gomoko", "Jdforrester", "Matma Rex", + "McDutchie", "MuratTheTurkish", "NemesisIII", "Thibaut120094", @@ -54,7 +55,7 @@ "apihelp-visualeditoredit-param-sectiontitle": "Titre de la nouvelle section.", "apihelp-visualeditoredit-param-starttimestamp": "Lors de l’enregistrement, règle ceci avec l’horodatage du moment où la page a été chargée. Utilisé pour détecter les conflits d’édition.", "apihelp-visualeditoredit-param-summary": "Modifier le résumé.", - "apihelp-visualeditoredit-param-tags": "Modifier les balises à appliquer à la modification.", + "apihelp-visualeditoredit-param-tags": "Les balises de modification à appliquer à la version.", "apihelp-visualeditoredit-param-wikitext": "Le wikicode avec lequel agir.", "apihelp-visualeditoredit-summary": "Enregistrer une page HTML5 en MediaWiki (convertie en wikicode via le service Parsoid)." } diff --git a/i18n/ve-mw/api/gl.json b/i18n/ve-mw/api/gl.json index 3827dbb123..616d30d680 100644 --- a/i18n/ve-mw/api/gl.json +++ b/i18n/ve-mw/api/gl.json @@ -4,6 +4,7 @@ "Banjo", "Elisardojm", "Matma Rex", + "McDutchie", "Toliño" ] }, @@ -30,7 +31,7 @@ "apihelp-visualeditoredit-param-basetimestamp": "Ao gardar, definir coa data e hora da revisión que foi editada. Úsase para detectar conflitos de edición.", "apihelp-visualeditoredit-param-cachekey": "Utilícese o resultado dunha petición serializeforcache anterior con esta clave. Invalida $1html.", "apihelp-visualeditoredit-param-captchaid": "Identificador do captcha (ao gardar cunha resposta do captcha).", - "apihelp-visualeditoredit-param-captchaword": "Resposta ao captcha (ao gardar cunha resposta do captcha).", + "apihelp-visualeditoredit-param-captchaword": "Resposta ao captcha (ao gardar cunha resposta ao captcha).", "apihelp-visualeditoredit-param-nocontent": "Omitir o contido HTML da nova revisión na resposta.", "apihelp-visualeditoredit-param-plugins": "Complementos asociados á solicitude da API.", "apihelp-visualeditoredit-param-data-{plugin}": "Datos arbitrarios enviados por un complemento coa solicitude da API.", @@ -45,7 +46,7 @@ "apihelp-visualeditoredit-param-sectiontitle": "Título para a nova sección.", "apihelp-visualeditoredit-param-starttimestamp": "Ao gardar, definir coa data e hora de cando se cargou a páxina. Úsase para detectar conflitos de edición.", "apihelp-visualeditoredit-param-summary": "Resumo de edición.", - "apihelp-visualeditoredit-param-tags": "Cambiar as etiquetas a aplicar á edición.", + "apihelp-visualeditoredit-param-tags": "As etiquetas de cambio que se aplicarán á edición.", "apihelp-visualeditoredit-param-wikitext": "O texto wiki co que traballar.", "apihelp-visualeditoredit-summary": "Gardar unha páxina HTML5 en MediaWiki (convertida en texto wiki mediante o servizo do Parsoid)." } diff --git a/i18n/ve-mw/api/id.json b/i18n/ve-mw/api/id.json index 81edacb92b..f982eec08a 100644 --- a/i18n/ve-mw/api/id.json +++ b/i18n/ve-mw/api/id.json @@ -4,7 +4,9 @@ "Daud I.F. Argana", "Gombang", "Rachmat04", - "William Surya Permana" + "William Surya Permana", + "Penyuwangi", + "Bennylin" ] }, "apierror-visualeditor-badcachekey": "Tidak ditemukan serialisasi tembolok dengan kunci tersebut", @@ -29,8 +31,8 @@ "apihelp-visualeditor-summary": "Mengembalikan HTML5 untuk halaman dari layanan Parsoid.", "apihelp-visualeditoredit-param-basetimestamp": "Ketika menyimpan, atur nilai ini menjadi waktu saat revisi ini dibuat. Digunakan untuk mendeteksi konflik penyuntingan.", "apihelp-visualeditoredit-param-cachekey": "Gunakan hasil dari permintaan serializeforcache dengan kunci ini sebelumnya. Menimpa $1html.", - "apihelp-visualeditoredit-param-captchaid": "ID Captcha (ketika menyimpan dengan respons captcha).", - "apihelp-visualeditoredit-param-captchaword": "Jawaban captcha (ketika menyimpan dengan respons captcha).", + "apihelp-visualeditoredit-param-captchaid": "ID Captcha (ketika menyimpan dengan tanggapan captcha).", + "apihelp-visualeditoredit-param-captchaword": "Jawaban captcha (ketika menyimpan dengan tanggapan captcha).", "apihelp-visualeditoredit-param-plugins": "Plugin yang terkait dengan permintaan API.", "apihelp-visualeditoredit-param-data-{plugin}": "Sembarang data yang dikirim oleh plugin dengan permintaan API.", "apihelp-visualeditoredit-param-etag": "ETag untuk dikirim.", @@ -44,7 +46,7 @@ "apihelp-visualeditoredit-param-sectiontitle": "Judul untuk bagian baru.", "apihelp-visualeditoredit-param-starttimestamp": "Ketika menyimpan, atur nilai ini menjadi waktu saat halaman ini dimuat. Digunakan untuk mendeteksi konflik penyuntingan.", "apihelp-visualeditoredit-param-summary": "Ringkasan suntingan", - "apihelp-visualeditoredit-param-tags": "Tag perubahan untuk diterapkan pada suntingan.", - "apihelp-visualeditoredit-param-wikitext": "Teks wiki dimana tindakan akan dilakukan.", + "apihelp-visualeditoredit-param-tags": "Tanda perubahan yang ingin diterapkan ke revisi.", + "apihelp-visualeditoredit-param-wikitext": "Teks wiki untuk dilakukan tindakan.", "apihelp-visualeditoredit-summary": "Simpan halaman HTML5 ke MediaWiki (dikonversi menjadi teks wiki melalui layanan Parsoid)." } diff --git a/i18n/ve-mw/api/ig.json b/i18n/ve-mw/api/ig.json new file mode 100644 index 0000000000..8b4e5af258 --- /dev/null +++ b/i18n/ve-mw/api/ig.json @@ -0,0 +1,49 @@ +{ + "@metadata": { + "authors": [ + "Aminwa 21", + "Victor chukwuemerie Mbah" + ] + }, + "apierror-visualeditor-badcachekey": "Enweghị usoro zoro ezo achọtara na igodo ahụ", + "apierror-visualeditor-difffailed": "Ihe dị iche dara", + "apihelp-visualeditor-param-basetimestamp": "Mgbe ị na-echekwa, debe nke a na timestamp nke nsụgharị ahụ edezi. A na-eji ya iji chọpụta esemokwu edezi.", + "apihelp-visualeditor-param-badetag": "Mgbe ị na-echekwa, debe nke a na timestamp nke nsụgharị ahụ edezi. A na-eji ya iji chọpụta esemokwu edezi.", + "apihelp-visualeditor-param-cachekey": "Maka serialize ma ọ bụ diff, jiri nsonaazụ nke arịrịọ serializeforcache gara aga na igodo a. Overrides $1html.", + "apihelp-visualeditor-param-editintro": "Dezie intro iji gbakwunye ọkwa.", + "apihelp-visualeditor-param-etag": "Daalụ maka izipu ya.", + "apihelp-visualeditor-param-format": "Usoro nke mmepụta.", + "apihelp-visualeditor-param-html": "HTML iji zipu na Parsoid iji tọghata na wikitext.", + "apihelp-visualeditor-param-oldid": "Nọmba nsụgharị iji mee ihe (ndabara na nsụgharị kachasị ọhụrụ).", + "apihelp-visualeditor-param-paction": "Ihe omume ime.", + "apihelp-visualeditor-param-page": "Ibe iji mee omume\n na ya", + "apihelp-visualeditor-param-preload": "Ibe a ga-eji ọdịnaya ma ọ bụrụ na ibe ewepụtara enweghị ọdịnaya.", + "apihelp-visualeditor-param-preloadparams": "Oke iji dochie n'ime ibe ebugoro, ọ bụrụ na ọ dị.", + "apihelp-visualeditor-param-pst": "Tupu ịchekwa mgbanwe wikitext tupu izipu ya na Parsoid (paction = parsefragment).", + "apihelp-visualeditor-param-section": "Akụkụ nke ime ihe.", + "apihelp-visualeditor-param-starttimestamp": "Mgbe ị na-echekwa, debe nke a na oge nke nsụgharị ahụ edezi. A na-eji ya iji chọpụta esemokwu edezi.", + "apihelp-visualeditor-param-stash": "Mgbe ị na-echekwa, tọọ nke a eziokwu ma ọ bụrụ na ịchọrọ iji API na-agbaji.", + "apihelp-visualeditor-param-wikitext": "Wikitext izipu na Parsoid iji tọghata na HTML (paction = parsefragment).", + "apihelp-visualeditor-summary": "Na-eweghachi HTML5 maka ibe sitere na ọrụ Parsoid.", + "apihelp-visualeditoredit-param-basetimestamp": "Mgbe ị na-echekwa, debe nke a na oge nso nke nsụgharị ahụ edezi. A na-eji ya iji chọpụta esemokwu edezi.", + "apihelp-visualeditoredit-param-cachekey": "Jiri nsonaazụ hazie n'usoro gara aga maka arịrịọ cache jiri igodo a.\nNa-ewepụ $1html.", + "apihelp-visualeditoredit-param-captchaid": "Captcha ID (mgbe ị na-azọpụta na nzaghachi captcha).", + "apihelp-visualeditoredit-param-captchaword": "Zaa na captcha (mgbe ị na-azọpụta ya na nzaghachi captcha).", + "apihelp-visualeditoredit-param-nocontent": "Wepụ ọdịnaya HTML nke nlegharị anya ọhụrụ na nzaghachi.", + "apihelp-visualeditoredit-param-plugins": "Ngwa mgbakwunye jikọtara na arịrịọ API.", + "apihelp-visualeditoredit-param-data-{plugin}": "A na-eziga data na-enweghị isi site na plugin na arịrịọ API.", + "apihelp-visualeditoredit-param-etag": "Daalụ maka izipu ya.", + "apihelp-visualeditoredit-param-html": "HTML iziga na Parsoid maka mgbanwe wikitext.", + "apihelp-visualeditoredit-param-minor": "Ọkọlọtọ maka obere edezi.", + "apihelp-visualeditoredit-param-needcheck": "Mgbe ị na-echekwa, tọọ oke a ma ọ bụrụ na mmezigharị ahụ nwere ike ịnwe nsogbu n'ịga azụ. Nke a ga-eme ka edezi ahụ.", + "apihelp-visualeditoredit-param-oldid": "Nọmba nsụgharị iji mee ihe (ndabara na nsụgharị kachasị ọhụrụ).", + "apihelp-visualeditoredit-param-paction": "Omume iji rụọ ọrụ.", + "apihelp-visualeditoredit-param-page": "Nke a bụ peeji nke ị ga-eme ihe n'ụzọ ziri ezi.", + "apihelp-visualeditoredit-param-section": "Ngalaba nke ị ga-eme ihe.", + "apihelp-visualeditoredit-param-sectiontitle": "Aha maka ngalaba ọhụrụ.", + "apihelp-visualeditoredit-param-starttimestamp": "Mgbe ị na-echekwa, debe nke a na timestamp nke mgbe a kwadoro ibe ahụ. A na-eji ya iji chọpụta esemokwu edezi.", + "apihelp-visualeditoredit-param-summary": "Nchịkọta ndezi", + "apihelp-visualeditoredit-param-tags": "Gbanwee mkpado iji tinye ya na edit.", + "apihelp-visualeditoredit-param-wikitext": "Wikitext iji mee ihe.", + "apihelp-visualeditoredit-summary": "Chekwaa peeji HTML5 na MediaWiki (gbanwere na wikitext site na ọrụ Parsoid)." +} diff --git a/i18n/ve-mw/api/ilo.json b/i18n/ve-mw/api/ilo.json index 02365b51b7..6d3d2c6361 100644 --- a/i18n/ve-mw/api/ilo.json +++ b/i18n/ve-mw/api/ilo.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Lam-ang" ] }, diff --git a/i18n/ve-mw/api/ja.json b/i18n/ve-mw/api/ja.json index 4505c9187c..24efa120b4 100644 --- a/i18n/ve-mw/api/ja.json +++ b/i18n/ve-mw/api/ja.json @@ -8,35 +8,50 @@ "Los688", "Omotecho", "Shirayuki", + "Shulmj", "SkyDaisy9", "Takot" ] }, + "apierror-visualeditor-badcachekey": "このキーを用いてキャッシュされたシリアライズが見つかりません", "apierror-visualeditor-difffailed": "差分の取得ができませんでした", "apihelp-visualeditor-param-basetimestamp": "保存する際に、編集した版のタイムスタンプとしてこれがセットされます。編集競合を検出するのに利用されます。", "apihelp-visualeditor-param-badetag": "RESTBase が返した ETag が間違っている場合と感じたは、ログを残すためここに転記してください。", "apihelp-visualeditor-param-cachekey": "serializeまたはdiffについては、このキーで以前に serializeforcache リクエストをした際の結果を使用する。$1html を上書きします。", "apihelp-visualeditor-param-editintro": "イントロを編集してお知らせに追加します。", - "apihelp-visualeditor-param-format": "出力のフォーマット。", + "apihelp-visualeditor-param-etag": "送信するETag", + "apihelp-visualeditor-param-format": "出力のフォーマット", "apihelp-visualeditor-param-html": "Parsoid 経由でウィキテキストに変換したいHTML", "apihelp-visualeditor-param-oldid": "使用する版番号 (既定では最新版)", "apihelp-visualeditor-param-paction": "実行したい操作", "apihelp-visualeditor-param-page": "操作を実行したいページ", + "apihelp-visualeditor-param-preload": "取得したページに内容が存在しなかった際に、コンテンツを読み込むためにプリロードするページ", + "apihelp-visualeditor-param-preloadparams": "プリロードページに代入するパラメーター(存在する場合)", "apihelp-visualeditor-param-pst": "Parsoid に送る前にwikitextをあらかじめ変換して保存する (paction=parsefragment)", + "apihelp-visualeditor-param-section": "操作対象となる節", "apihelp-visualeditor-param-starttimestamp": "保存する際に、ページが読み込まれた時のタイムスタンプとしてこれがセットされます。編集競合を検出するのに利用されます。", + "apihelp-visualeditor-param-stash": "保存する際に stashing API を使用する場合は true を指定する", "apihelp-visualeditor-param-wikitext": "HTMLに変換するため、Parsoidに送るウィキテキスト (paction=parsefragment)", + "apihelp-visualeditor-summary": "ParsoidサービスからページのHTML5を取得する。", "apihelp-visualeditoredit-param-basetimestamp": "保存する際に、編集した版のタイムスタンプとしてこれがセットされます。編集競合を検出するのに利用されます。", "apihelp-visualeditoredit-param-cachekey": "以前にこのキーで serializeforcache リクエストを送った結果を利用する。$1html を上書きします。", "apihelp-visualeditoredit-param-captchaid": "Captcha ID (captcha response で保存する場合)。", "apihelp-visualeditoredit-param-captchaword": "(captchaで保存するときの) captchaに対する回答", - "apihelp-visualeditoredit-param-html": "ウィキテキストを出力として得るために、Parsoidに送るHTML", + "apihelp-visualeditoredit-param-nocontent": "レスポンスから新しい版のHTMLコンテンツを省略する", + "apihelp-visualeditoredit-param-plugins": "APIリクエストに関連付けられたプラグイン", + "apihelp-visualeditoredit-param-data-{plugin}": "APIリクエストでプラグインから送信される任意のデータ", + "apihelp-visualeditoredit-param-etag": "送信するETag", + "apihelp-visualeditoredit-param-html": "ウィキテキストを出力として得るために、Parsoidに送るHTML。", "apihelp-visualeditoredit-param-minor": "細部の編集のしるし。", "apihelp-visualeditoredit-param-needcheck": "保存する際に、この版にroundtrip問題がある場合はこのパラメーターを使用する。その場合、編集はタグ付けされます。", "apihelp-visualeditoredit-param-oldid": "使用する版番号。既定では最新版です。", + "apihelp-visualeditoredit-param-paction": "実行したい操作", "apihelp-visualeditoredit-param-page": "操作を実行したいページ", - "apihelp-visualeditoredit-param-sectiontitle": "新しい節の名前です。", + "apihelp-visualeditoredit-param-section": "操作対象となる節", + "apihelp-visualeditoredit-param-sectiontitle": "新しい節のタイトル", "apihelp-visualeditoredit-param-starttimestamp": "保存する際に、ページが読み込まれた時のタイムスタンプとしてこれがセットされます。編集競合を検出するのに利用されます。", "apihelp-visualeditoredit-param-summary": "編集の要約", - "apihelp-visualeditoredit-param-wikitext": "動作を適用するウィキテキストです。", + "apihelp-visualeditoredit-param-tags": "編集時に適用されるタグを変更する", + "apihelp-visualeditoredit-param-wikitext": "操作対象となるウィキテキスト", "apihelp-visualeditoredit-summary": "HTML5ページを MediaWiki として保存する (Parsoidサービスを利用してウィキテキストに変換されます)" } diff --git a/i18n/ve-mw/api/ko.json b/i18n/ve-mw/api/ko.json index 9ea97382da..08a69f30e8 100644 --- a/i18n/ve-mw/api/ko.json +++ b/i18n/ve-mw/api/ko.json @@ -5,43 +5,49 @@ "MemphisA5", "Ykhwong", "렌즈", - "아라" + "아라", + "Tensama0415" ] }, "apierror-visualeditor-badcachekey": "해당 키로써 캐시된 직렬화를 찾을 수 없습니다", "apierror-visualeditor-difffailed": "차이 생성 실패", "apihelp-visualeditor-param-basetimestamp": "저장할 때, 편집한 판의 시간스탬프로 설정합니다. 편집 충돌을 감지하는 데 사용합니다.", - "apihelp-visualeditor-param-cachekey": "serialize 또는 diff를 위해, 이 키로 이전의 serializeforcache 요청 결과를 사용합니다. $1html을 덮어씁니다.", + "apihelp-visualeditor-param-badetag": "RESTBase 쿼리가 유효하지 않아 보이는 ETag를 반환하는 경우, 로깅을 위해 해당 ETag를 여기에 전달하세요.", + "apihelp-visualeditor-param-cachekey": "직렬화 또는 차이를 위해, 이 키로 이전의 serializeforcache 요청 결과를 사용합니다. $1html을 재정의합니다.", "apihelp-visualeditor-param-editintro": "알림에 추가할 편집 설명입니다.", "apihelp-visualeditor-param-etag": "보낼 ETag.", "apihelp-visualeditor-param-format": "출력값의 형식입니다.", "apihelp-visualeditor-param-html": "위키텍스트로 변환하기 위해 Parsoid로 보낼 HTML입니다.", "apihelp-visualeditor-param-oldid": "사용할 판 번호 (기본값은 최신 판).", - "apihelp-visualeditor-param-paction": "수행할 동작입니다.", - "apihelp-visualeditor-param-page": "동작을 수행할 문서입니다.", + "apihelp-visualeditor-param-paction": "수행할 작업입니다.", + "apihelp-visualeditor-param-page": "작업을 수행할 문서입니다.", "apihelp-visualeditor-param-preload": "가져온 문서에 아직 내용이 없을 경우 내용을 가져와 사용할 문서입니다.", - "apihelp-visualeditor-param-preloadparams": "존재할 경우 미리 불러들인 문서로 대체하기 위한 변수입니다.", + "apihelp-visualeditor-param-preloadparams": "존재할 경우 미리 불러들인 문서로 대체하기 위한 매개변수입니다.", "apihelp-visualeditor-param-pst": "Parsoid로 보내기 전에 위키텍스트를 미리 변환하여 저장합니다. (paction=parsefragment)", "apihelp-visualeditor-param-section": "동작을 적용할 문단입니다.", "apihelp-visualeditor-param-starttimestamp": "저장할 때, 문서를 불러왔을 때의 타임스탬프로 설정합니다. 편집 충돌을 감지하는 데 사용됩니다.", + "apihelp-visualeditor-param-stash": "저장할 때 스태싱 API를 사용하려면 이 값을 true로 설정하세요.", "apihelp-visualeditor-param-wikitext": "HTML로 변환하기 위해 Parsoid로 보낼 위키텍스트입니다. (paction=parsefragment)", "apihelp-visualeditor-summary": "Parsoid 서비스에서 문서를 위해 HTML5를 반환합니다.", "apihelp-visualeditoredit-param-basetimestamp": "저장할 때, 편집한 판의 시간스탬프로 설정합니다. 편집 충돌을 감지하는 데 사용합니다.", - "apihelp-visualeditoredit-param-cachekey": "이 키로 이전의 serializeforcache 요청 결과를 사용합니다. $1html을 덮어씁니다.", + "apihelp-visualeditoredit-param-cachekey": "이 키로 이전의 serializeforcache 요청 결과를 사용합니다. $1html을 재정의합니다.", "apihelp-visualeditoredit-param-captchaid": "캡차 ID입니다. (캡차 응답으로 저장할 때)", "apihelp-visualeditoredit-param-captchaword": "캡차의 응답입니다. (캡차 응답으로 저장할 때)", + "apihelp-visualeditoredit-param-nocontent": "새 판의 HTML 콘텐츠는 응답에서 생략합니다.", "apihelp-visualeditoredit-param-plugins": "API 요청과 관련된 플러그인입니다.", + "apihelp-visualeditoredit-param-data-{plugin}": "플러그인이 API 요청과 함께 전송하는 임의의 데이터입니다.", "apihelp-visualeditoredit-param-etag": "보낼 ETag.", "apihelp-visualeditoredit-param-html": "위키텍스트 대신 Parsoid로 보낼 HTML입니다.", "apihelp-visualeditoredit-param-minor": "사소한 편집의 표시입니다.", - "apihelp-visualeditoredit-param-needcheck": "저장할 때 판이 라운드트립 문제가 있으면 이 변수를 설정하십시오. 이 경우 이 편집은 태그될 것입니다.", + "apihelp-visualeditoredit-param-needcheck": "저장할 때 판이 라운드트립 문제가 있으면 이 매개변수를 설정하십시오. 이 경우 이 편집은 태그될 것입니다.", "apihelp-visualeditoredit-param-oldid": "사용할 판 번호. 기본값은 최신 판입니다.", - "apihelp-visualeditoredit-param-paction": "수행할 동작입니다.", - "apihelp-visualeditoredit-param-page": "동작을 수행할 문서입니다.", + "apihelp-visualeditoredit-param-paction": "수행할 작업입니다.", + "apihelp-visualeditoredit-param-page": "작업을 수행할 문서입니다.", "apihelp-visualeditoredit-param-section": "동작을 적용할 문단입니다.", "apihelp-visualeditoredit-param-sectiontitle": "새 문단을 위한 제목입니다.", "apihelp-visualeditoredit-param-starttimestamp": "저장할 때, 문서를 불러왔을 때의 타임스탬프로 설정합니다. 편집 충돌을 감지하는 데 사용됩니다.", "apihelp-visualeditoredit-param-summary": "편집 요약입니다.", + "apihelp-visualeditoredit-param-tags": "이 편집에 적용할 변경 태그입니다.", "apihelp-visualeditoredit-param-wikitext": "동작을 적용할 위키텍스트입니다.", "apihelp-visualeditoredit-summary": "HTML5 페이지를 미디어위키로 저장합니다. (Parsoid 서비스를 통해 위키텍스트로 변환)" } diff --git a/i18n/ve-mw/api/lb.json b/i18n/ve-mw/api/lb.json index e646d2ab1c..057f786f76 100644 --- a/i18n/ve-mw/api/lb.json +++ b/i18n/ve-mw/api/lb.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "GilPe", "Les Meloures", "Robby", "Soued031" @@ -18,6 +19,6 @@ "apihelp-visualeditoredit-param-paction": "Aktioun fir ze maachen.", "apihelp-visualeditoredit-param-page": "D'Säit op där Aktioune gemaach soll ginn.", "apihelp-visualeditoredit-param-sectiontitle": "Titel fir neien Abschnitt.", - "apihelp-visualeditoredit-param-summary": "Resumé änneren.", + "apihelp-visualeditoredit-param-summary": "Resümmee änneren.", "apihelp-visualeditoredit-param-wikitext": "De Wikitext mat deem geschafft gëtt." } diff --git a/i18n/ve-mw/api/lij.json b/i18n/ve-mw/api/lij.json new file mode 100644 index 0000000000..8cdf490873 --- /dev/null +++ b/i18n/ve-mw/api/lij.json @@ -0,0 +1,48 @@ +{ + "@metadata": { + "authors": [ + "N. Longo" + ] + }, + "apierror-visualeditor-badcachekey": "No se trêuva de serializaçioìn inta cache con quélla ciâve", + "apierror-visualeditor-difffailed": "Diff o l'é falîo", + "apihelp-visualeditor-param-basetimestamp": "Quànde ti sàrvi, çèrni o timestamp da revixón ch'a l'é stæta modificâ. O l'é dêuviòu pe rilevâ i conflìtti de modìfica.", + "apihelp-visualeditor-param-badetag": "Se a query RESTBase a restitoìsce 'n ETag ch'o no pâ vàlido, pasâlo chi pe-i fìn da registraçión.", + "apihelp-visualeditor-param-cachekey": "Pe serializâ ò diferençiâ, dêuvia o rizultâto de 'na domànda serializeforcache de prìmma con sta ciâve chi. O soviascrîve $1html.", + "apihelp-visualeditor-param-editintro": "Modìfica l'intro pe azónze a-i avîxi.", + "apihelp-visualeditor-param-etag": "ETag da mandâ.", + "apihelp-visualeditor-param-format": "Formâto de l'output.", + "apihelp-visualeditor-param-html": "HTML da mandâ a Parsoid pe convertîlo inte 'n wikitèsto.", + "apihelp-visualeditor-param-oldid": "O nùmero da versción da dêuviâ (predefinîo pe l'ùrtima versción).", + "apihelp-visualeditor-param-paction": "Açión da conpî.", + "apihelp-visualeditor-param-page": "A pàgina dónde conpî l'açión.", + "apihelp-visualeditor-param-preload": "A pàgina da dónde dêuviâ o contegnûo se a pàgina repigiâ a no gh'à ancón de contegnûo.", + "apihelp-visualeditor-param-preloadparams": "I paràmetri da sostitoî inta pàgina de precàrego, se prezénti.", + "apihelp-visualeditor-param-pst": "Sàrva o tèsto da trasformâ in wikitèsto prìmma de mandâlo a Parsoid (paction=parsefragment).", + "apihelp-visualeditor-param-section": "A seçión dónde agî.", + "apihelp-visualeditor-param-starttimestamp": "Quànde ti sàrvi, çèrni pe sto paràmetro chi o timestamp de quànte a pàgina a l'é stæta creâ. O l'é dêuviòu pe rilevâ i conflìtti de modìfica.", + "apihelp-visualeditor-param-stash": "Quànde ti sàrvi, çèrni sto chi a vêo se ti veu dêuviâ o stash de l'API.", + "apihelp-visualeditor-param-wikitext": "Wikitèsto da mandâ a Parsoid pe convertîlo inte HTML (paction=parsefragment).", + "apihelp-visualeditor-summary": "O restitoìsce HTML5 pe 'na pàgina do servìçio Parsoid.", + "apihelp-visualeditoredit-param-basetimestamp": "Quànde ti sàrvi, çèrni o timestamp da revixón ch'a l'é stæta modificâ. O l'é dêuviòu pe rilevâ i conflìtti de modìfica.", + "apihelp-visualeditoredit-param-cachekey": "Dêuvia o rizultâto de 'na domànda serializeforcache de prìmma con sta ciâve chi. O soviascrîve $1html.", + "apihelp-visualeditoredit-param-captchaid": "ID Captcha (quànde ti sàrvi co-ina rispòsta captcha).", + "apihelp-visualeditoredit-param-captchaword": "Rispóndi a-o captcha (quànde ti sàrvi co-ina rispòsta captcha).", + "apihelp-visualeditoredit-param-nocontent": "Tralasciâ o contegnûo HTML da nêuva versción inta rispòsta.", + "apihelp-visualeditoredit-param-plugins": "I plugin ligæ a-a domànda API.", + "apihelp-visualeditoredit-param-data-{plugin}": "I dæti arbitrâi mandæ da 'n plugin co-a domànda API.", + "apihelp-visualeditoredit-param-etag": "ETag da mandâ.", + "apihelp-visualeditoredit-param-html": "HTML da mandâ a Parsoid in càngio de 'n wikitèsto.", + "apihelp-visualeditoredit-param-minor": "Etichétta de modìfica minô.", + "apihelp-visualeditoredit-param-needcheck": "Quànte ti sàrva, çèrne sto paràmetro chi into câxo che a versción a gh'àgge di problêmi d'invîo. Sto chi o saiâ mostròu inta versción seleçionâ.", + "apihelp-visualeditoredit-param-oldid": "O nùmero da versción da dêuviâ. O predefinîo o l'é quéllo de l'ùrtima versción.", + "apihelp-visualeditoredit-param-paction": "Açión da conpî.", + "apihelp-visualeditoredit-param-page": "A pàgina dónde conpî l'açión.", + "apihelp-visualeditoredit-param-section": "A seçión dónde agî.", + "apihelp-visualeditoredit-param-sectiontitle": "O tìtolo pe-a nêuva seçión.", + "apihelp-visualeditoredit-param-starttimestamp": "Quànde ti sàrvi, çèrni pe sto paràmetro chi o timestamp de quànte a pàgina a l'é stæta creâ. O l'é dêuviòu pe rilevâ i conflìtti de modìfica.", + "apihelp-visualeditoredit-param-summary": "Ògètto da modìfica.", + "apihelp-visualeditoredit-param-tags": "I tag de cangiaménto da aplicâ a-a modìfica.", + "apihelp-visualeditoredit-param-wikitext": "O wikitèsto dónde agî.", + "apihelp-visualeditoredit-summary": "Sàrva 'na pàgina HTML5 inte MediaWiki (convertîa inte wikitèsto pe mêzo do servìçio Parsoid)." +} diff --git a/i18n/ve-mw/api/lki.json b/i18n/ve-mw/api/lki.json index 4a918093fb..160cc4861b 100644 --- a/i18n/ve-mw/api/lki.json +++ b/i18n/ve-mw/api/lki.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Hosseinblue" ] }, diff --git a/i18n/ve-mw/api/nl.json b/i18n/ve-mw/api/nl.json index 272cdd3623..1e0273f74a 100644 --- a/i18n/ve-mw/api/nl.json +++ b/i18n/ve-mw/api/nl.json @@ -7,7 +7,8 @@ "Mainframe98", "McDutchie", "Siebrand", - "Sjoerddebruin" + "Sjoerddebruin", + "Erik Baas" ] }, "apierror-visualeditor-badcachekey": "Er is geen serialisatie met die sleutel in de cache gevonden", @@ -29,12 +30,12 @@ "apihelp-visualeditor-param-starttimestamp": "Stel dit tijdens het opslaan in op de tijd waarop de pagina is geladen. Wordt gebruikt om bewerkingsconflicten te detecteren.", "apihelp-visualeditor-param-stash": "Stel dit bij het opslaan in op ‘true’ als u de stashing-API wilt gebruiken.", "apihelp-visualeditor-param-wikitext": "Wikitekst die naar Parsoid gestuurd moet worden om te converteren naar HTML (paction=parsefragment).", - "apihelp-visualeditor-summary": "Geeft HTML5 terug voor een pagina van de Parsoid-service.", + "apihelp-visualeditor-summary": "Geeft HTML5 terug voor een pagina van de Parsoid-dienst.", "apihelp-visualeditoredit-param-basetimestamp": "Stel dit in op de tijd waarop de versie is bewerkt tijdens het opslaan. Wordt gebruikt om bewerkingsconflicten te detecteren.", "apihelp-visualeditoredit-param-cachekey": "Gebruik het resultaat van een eerder \"serializeforcache\"-verzoek met deze sleutel. Heeft voorrang boven $1html.", "apihelp-visualeditoredit-param-captchaid": "Captcha-ID (bij het opslaan met een captcha-antwoord).", "apihelp-visualeditoredit-param-captchaword": "Antwoord op de captcha (bij het opslaan met een captcha-antwoord).", - "apihelp-visualeditoredit-param-nocontent": "Laat de HTML-inhoud van de nieuwe revisie weg in het antwoord.", + "apihelp-visualeditoredit-param-nocontent": "Laat de HTML-inhoud van de nieuwe versie weg in het antwoord.", "apihelp-visualeditoredit-param-plugins": "Plug-ins die zijn gekoppeld aan het API-verzoek.", "apihelp-visualeditoredit-param-data-{plugin}": "Willekeurige gegevens verzonden door een plug-in met het API-verzoek.", "apihelp-visualeditoredit-param-etag": "Te sturen ETag.", @@ -43,9 +44,9 @@ "apihelp-visualeditoredit-param-needcheck": "Stel deze parameter in tijdens het opslaan als de versie mogelijk roundtripproblemen heeft. Dit resulteert in het labelen van de bewerking.", "apihelp-visualeditoredit-param-oldid": "Het te gebruiken versienummer. Standaard de laatste versie.", "apihelp-visualeditoredit-param-paction": "De te verrichten handeling.", - "apihelp-visualeditoredit-param-page": "De pagina waarop handelingen worden uitgevoerd.", + "apihelp-visualeditoredit-param-page": "De pagina om de handelingen op te verrichten.", "apihelp-visualeditoredit-param-section": "De te behandelen sectie.", - "apihelp-visualeditoredit-param-sectiontitle": "De naam van de nieuw kopje.", + "apihelp-visualeditoredit-param-sectiontitle": "Titel van de nieuwe sectie.", "apihelp-visualeditoredit-param-starttimestamp": "Stel dit tijdens het opslaan in op de tijd waarop de pagina is geladen. Wordt gebruikt om bewerkingsconflicten te detecteren.", "apihelp-visualeditoredit-param-summary": "Bewerkingssamenvatting.", "apihelp-visualeditoredit-param-tags": "Wijzigingslabels om op de versie toe te passen.", diff --git a/i18n/ve-mw/api/pl.json b/i18n/ve-mw/api/pl.json index 6586d9bd27..bee82a97c5 100644 --- a/i18n/ve-mw/api/pl.json +++ b/i18n/ve-mw/api/pl.json @@ -9,7 +9,8 @@ "Sutan", "Tar Lócesilion", "The Polish", - "Woytecr" + "Woytecr", + "PanWor" ] }, "apierror-visualeditor-badcachekey": "Nie znaleziono seryjnej pamięci podręcznej dla tego klucza", @@ -26,7 +27,7 @@ "apihelp-visualeditor-param-page": "Strona, na której wykonuje się działania.", "apihelp-visualeditor-param-preload": "Strona, z której treści można korzystać, jeśli pobrana strona nie zawiera jeszcze żadnej treści.", "apihelp-visualeditor-param-preloadparams": "Parametry do zastąpienia na stronie wstępnego ładowania, jeśli są obecne.", - "apihelp-visualeditor-param-pst": "Wstępna transformacja wikitekstu przed zapisem, zanim zostanie wysłany do Parsoida (paction=parsefragment).", + "apihelp-visualeditor-param-pst": "Wstępna transformacja wikikodu przed zapisem, zanim zostanie wysłany do Parsoida (paction=parsefragment).", "apihelp-visualeditor-param-section": "Sekcja, na której działać.", "apihelp-visualeditor-param-starttimestamp": "Podczas zapisywania, ustaw znacznik czasu, kiedy strona została załadowana. Służy to do wykrywania konfliktów edycji.", "apihelp-visualeditor-param-stash": "Podczas zapisywania ustaw tę wartość na true, jeśli chcesz korzystać z interfejsu API do przechowywania.", diff --git a/i18n/ve-mw/api/ps.json b/i18n/ve-mw/api/ps.json index aad6898854..25f472a36f 100644 --- a/i18n/ve-mw/api/ps.json +++ b/i18n/ve-mw/api/ps.json @@ -1,11 +1,13 @@ { "@metadata": { "authors": [ - "Ahmed-Najib-Biabani-Ibrahimkhel" + "Ahmed-Najib-Biabani-Ibrahimkhel", + "شاه زمان پټان" ] }, "apihelp-visualeditor-param-paction": "د ترسره کولو کړنه.", "apihelp-visualeditor-param-page": "هغه مخ چې کړنې پرې ترسره کېږي.", "apihelp-visualeditoredit-param-minor": "د وړوکي سمون رپی.", + "apihelp-visualeditoredit-param-sectiontitle": "نوې برخې لپاره سرليک.", "apihelp-visualeditoredit-param-summary": "لنډيز سمول." } diff --git a/i18n/ve-mw/api/pt-br.json b/i18n/ve-mw/api/pt-br.json index 75ab014b6e..80f51267d8 100644 --- a/i18n/ve-mw/api/pt-br.json +++ b/i18n/ve-mw/api/pt-br.json @@ -5,6 +5,7 @@ "Eduardoaddad", "Felipe L. Ewald", "Fúlvio", + "McDutchie", "TheGabrielZaum" ] }, @@ -46,7 +47,7 @@ "apihelp-visualeditoredit-param-sectiontitle": "Título para nova seção.", "apihelp-visualeditoredit-param-starttimestamp": "Ao salvar, define isto à data e hora de quando a página foi carregada. Usado para detectar conflitos de edição.", "apihelp-visualeditoredit-param-summary": "Sumário de edição.", - "apihelp-visualeditoredit-param-tags": "Altere as etiquetas para aplicar à edição.", + "apihelp-visualeditoredit-param-tags": "As tags de alteração a serem aplicadas à edição.", "apihelp-visualeditoredit-param-wikitext": "O texto wiki para ser utilizado.", "apihelp-visualeditoredit-summary": "Salva uma página HTML5 em MediaWiki (convertida para texto wiki através do serviço Parsoid)." } diff --git a/i18n/ve-mw/api/pt.json b/i18n/ve-mw/api/pt.json index 196f9bc1fb..e17777642d 100644 --- a/i18n/ve-mw/api/pt.json +++ b/i18n/ve-mw/api/pt.json @@ -5,6 +5,7 @@ "Emma Franzen", "Fúlvio", "Hamilton Abreu", + "Mansil alfalb", "Vitorvicentevalente" ] }, @@ -17,7 +18,7 @@ "apihelp-visualeditor-param-etag": "ETag para enviar.", "apihelp-visualeditor-param-format": "O formato do resultado.", "apihelp-visualeditor-param-html": "HTML a enviar ao Parsoid, para convertê-lo em texto wiki.", - "apihelp-visualeditor-param-oldid": "O número da revisão (por omissão, a revisão mais recente).", + "apihelp-visualeditor-param-oldid": "O número da revisão a utilizar (predefine para a última revisão).", "apihelp-visualeditor-param-paction": "Operação a executar.", "apihelp-visualeditor-param-page": "A página na qual serão realizadas as operações.", "apihelp-visualeditor-param-preload": "A página cujo conteúdo será utilizado se a página obtida ainda não tem conteúdo.", @@ -39,7 +40,7 @@ "apihelp-visualeditoredit-param-html": "HTML a enviar ao Parsoid, para obter o texto wiki equivalente.", "apihelp-visualeditoredit-param-minor": "Sinalização para edição menor.", "apihelp-visualeditoredit-param-needcheck": "Ao gravar, defina este parâmetro se a revisão puder vir a ter problemas de ida e volta (roundtrip). Isto resultará na etiquetagem da edição.", - "apihelp-visualeditoredit-param-oldid": "O número de revisão a utilizar. Por omissão, é a última revisão.", + "apihelp-visualeditoredit-param-oldid": "O número de revisão a utilizar. Predefine para a última revisão.", "apihelp-visualeditoredit-param-paction": "Operação a executar.", "apihelp-visualeditoredit-param-page": "A página na qual serão realizadas as operações.", "apihelp-visualeditoredit-param-section": "A secção na qual serão realizadas as operações.", diff --git a/i18n/ve-mw/api/sd.json b/i18n/ve-mw/api/sd.json index 705411047b..0038a6974c 100644 --- a/i18n/ve-mw/api/sd.json +++ b/i18n/ve-mw/api/sd.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Mehtab ahmed" ] }, diff --git a/i18n/ve-mw/api/sh-latn.json b/i18n/ve-mw/api/sh-latn.json index 15b823971c..5fc9725be5 100644 --- a/i18n/ve-mw/api/sh-latn.json +++ b/i18n/ve-mw/api/sh-latn.json @@ -1,42 +1,43 @@ { "@metadata": { "authors": [ - "Winston Sung" + "Winston Sung", + "Aca" ] }, - "apierror-visualeditor-badcachekey": "Nisam našao međuspremljenu serijalizaciju za taj ključ", + "apierror-visualeditor-badcachekey": "Nije pronađena serijalizacija u predmemoriji s tim ključem", "apierror-visualeditor-difffailed": "Prikaz razlike nije uspjeo", "apihelp-visualeditor-param-basetimestamp": "Kada snimate, postavite ovo za vremenski pečat revizije koja je bila uređena. Koristi se za otkrivanje sukoba uređivanja.", - "apihelp-visualeditor-param-badetag": "Ako je RESTBase upit vratio naizgled nevažeći ETag, proslijedi ga ovdje za potrebe zapisivanja.", + "apihelp-visualeditor-param-badetag": "Ako je RESTBase upit vratio naizgled neispravan ETag, proslijedite ga ovdje za potrebe zapisivanja.", "apihelp-visualeditor-param-cachekey": "Za serialize ili diff, koristite rezultat prethodnog serializeforcache zahtjeva sa ovim ključem. Premošćuje $1html.", "apihelp-visualeditor-param-editintro": "Izmijenite uvod da biste dodali obavještenja.", "apihelp-visualeditor-param-etag": "ETag za slanje.", "apihelp-visualeditor-param-format": "Format izlaza.", "apihelp-visualeditor-param-html": "HTML poslan Parsoidu kako bi se konvertirao u wikitest.", "apihelp-visualeditor-param-oldid": "Broj revizija za korišćenje (zadano za posljednje revizije).", - "apihelp-visualeditor-param-paction": "Akcija za izvesti.", - "apihelp-visualeditor-param-page": "Stranica na kojoj se izvode akcije.", + "apihelp-visualeditor-param-paction": "Radnja za izvođenje.", + "apihelp-visualeditor-param-page": "Stranica na koju treba izvršiti radnje.", "apihelp-visualeditor-param-preload": "Sa koje stranice koristiti sadržaj ako dobavljena stranica još nema sadržaja.", "apihelp-visualeditor-param-preloadparams": "Koje parametre zamijeniti na predučitanu stranicu, ako je zadana.", "apihelp-visualeditor-param-pst": "Transformirani wikitekst prije snimanja odnosno slanja na Parsoid (paction=parsefragment).", "apihelp-visualeditor-param-section": "Na kome podnaslovu treba djelovati.", "apihelp-visualeditor-param-starttimestamp": "Kada snimate, postavite ovo za vremenski pečat trenutka kada je revizija učitana. Koristi se za otkrivanje sukoba uređivanja.", - "apihelp-visualeditor-param-stash": "Prilikom spremanja, zadajte mu točno (istinito) ako želite koristiti skladišni priložnik.", + "apihelp-visualeditor-param-stash": "Pri čuvanju postavite na tačno ako želite koristiti skladišni API.", "apihelp-visualeditor-param-wikitext": "Wikitekst za poslati Parsoidu radi konverzije u HTML (paction=parsefragment).", "apihelp-visualeditor-summary": "Vraća HTML5 za stranicu sa servisa Parsoid.", "apihelp-visualeditoredit-param-basetimestamp": "Kada snimate, postavite ovo za vremenski pečat revizije koja je bila uređena. Koristi se za otkrivanje sukoba uređivanja.", "apihelp-visualeditoredit-param-cachekey": "Koristite rezultat prethodnog serializeforcache zahtjeva sa ovim ključem. Premošćuje $1html.", "apihelp-visualeditoredit-param-captchaid": "Captcha ID (za snimanje uz captcha odgovor).", "apihelp-visualeditoredit-param-captchaword": "Odgovorite captchi (za snimanje sa captcha odgovorom).", - "apihelp-visualeditoredit-param-plugins": "Dodaci povezani s ovim priložničkim zahtjevom.", - "apihelp-visualeditoredit-param-data-{plugin}": "Proizvoljni podaci koje šalje dodatak s priložničkim zahtjevom.", + "apihelp-visualeditoredit-param-plugins": "Dodaci povezani s ovim API zahtjevom.", + "apihelp-visualeditoredit-param-data-{plugin}": "Proizvoljni podaci koje šalje dodatak s API zahtjevom.", "apihelp-visualeditoredit-param-etag": "ETag za slanje.", "apihelp-visualeditoredit-param-html": "HTML poslan Parsoidu u zamjenu za wikitest.", "apihelp-visualeditoredit-param-minor": "Označite kao manje uređivanje.", "apihelp-visualeditoredit-param-needcheck": "Kada snimate, postavite ovaj parametar ako revizija ima cirkulrane probleme. To će rezultati u tagiranom uređivanju.", "apihelp-visualeditoredit-param-oldid": "Broj izmjena za korištenje. Zadano za posljednju izmjenu.", - "apihelp-visualeditoredit-param-paction": "Akcija za izvesti.", - "apihelp-visualeditoredit-param-page": "Stranica na kojoj se izvode akcije.", + "apihelp-visualeditoredit-param-paction": "Radnja za izvođenje.", + "apihelp-visualeditoredit-param-page": "Stranica na koju treba izvršiti radnje.", "apihelp-visualeditoredit-param-section": "Na kome podnaslovu treba djelovati.", "apihelp-visualeditoredit-param-sectiontitle": "Naziv na novi podnaslov", "apihelp-visualeditoredit-param-starttimestamp": "Kada snimate, postavite ovo za vremenski pečat trenutka kada je revizija učitana. Koristi se za otkrivanje sukoba uređivanja.", diff --git a/i18n/ve-mw/api/sl.json b/i18n/ve-mw/api/sl.json index dee1b89374..93f8aabfa8 100644 --- a/i18n/ve-mw/api/sl.json +++ b/i18n/ve-mw/api/sl.json @@ -3,14 +3,15 @@ "authors": [ "Eleassar", "Janezdrilc", - "Pinky sl" + "Pinky sl", + "Ed g2s" ] }, "apierror-visualeditor-badcachekey": "Za ta ključ ni bilo mogoče najti predpomnjene serializacije", "apierror-visualeditor-difffailed": "Prikaz primerjalne strani je spodletel", "apihelp-visualeditor-param-basetimestamp": "Pri shranjevanju, nastavite to časovnemu žigu urejene revizije. Uporablja se za odkrivanje konfliktov pri urejanju.", "apihelp-visualeditor-param-badetag": "Če je poizvedba RESTBase vrnila na videz neveljavno značko ETag, jo posredujte sem za namene beleženja.", - "apihelp-visualeditor-param-cachekey": "Za serializacijo ali razliko uporabite rezultat predhodnega zahtevka serializeforchache s tem ključem. Povozi $1html.", + "apihelp-visualeditor-param-cachekey": "Za serializacijo ali razliko uporabite rezultat predhodnega zahtevka serializeforcache s tem ključem. Povozi $1html.", "apihelp-visualeditor-param-editintro": "Urejanje intra za dodajanje obvestil.", "apihelp-visualeditor-param-etag": "ETag za pošiljanje.", "apihelp-visualeditor-param-format": "Oblika izhoda.", diff --git a/i18n/ve-mw/api/so.json b/i18n/ve-mw/api/so.json new file mode 100644 index 0000000000..62f219f956 --- /dev/null +++ b/i18n/ve-mw/api/so.json @@ -0,0 +1,48 @@ +{ + "@metadata": { + "authors": [ + "AhmedG612" + ] + }, + "apierror-visualeditor-badcachekey": "Ma jiro kaydin hore oo taxane samaynta ah oo leh furahaas", + "apierror-visualeditor-difffailed": "Kala duwanaanshaha wuu fashilmay", + "apihelp-visualeditor-param-basetimestamp": "Marka la kaydinayo, u dhig wakhtiga dib u eegista la tafatiray. Waxaa loo adeegsadaa in lagu ogaado isku dhacyada wax ka beddelka.", + "apihelp-visualeditor-param-badetag": "Haddii RESTBase weydiintu soo celiso ETag u muuqda mid aan sax ahayn, halkan ku gudbi si loo diiwaan geliyo.", + "apihelp-visualeditor-param-cachekey": "Si loo taxane sameeyo ama kala duwanaansho loo sameeyo, isticmaal natiijada codsi serializeforcache oo hore oo leh furahan. Waxay beddeshaa $1html.", + "apihelp-visualeditor-param-editintro": "Wax ka beddel hordhaca si loogu daro ogeysiisyada.", + "apihelp-visualeditor-param-etag": "ETag la dirayo.", + "apihelp-visualeditor-param-format": "Qaabka wax soo saarka.", + "apihelp-visualeditor-param-html": "HTML loo dirayo Parsoid si loogu beddelo wikitext.", + "apihelp-visualeditor-param-oldid": "Lambarka dib u eegista la isticmaalayo (waxay si toos ah u noqotaa dib u eegista ugu dambeysa).", + "apihelp-visualeditor-param-paction": "Ficilka la fulinayo.", + "apihelp-visualeditor-param-page": "Bogga lagu fulinayo falalka.", + "apihelp-visualeditor-param-preload": "Bogga laga isticmaalo nuxurka haddii bogga la soo helay aanu weli lahayn nuxur.", + "apihelp-visualeditor-param-preloadparams": "Halbeegyada lagu beddelayo bogga hore loo soo raray, haddii uu jiro.", + "apihelp-visualeditor-param-pst": "Ka hor kaydinta u beddel wikitext ka hor inta aan loo dirin Parsoid (paction=parsefragment).", + "apihelp-visualeditor-param-section": "Qaybta lagu falgalayo.", + "apihelp-visualeditor-param-starttimestamp": "Marka la kaydinayo, tan dhig waqtiga la soo raray bogga. Waxaa loo isticmaalaa in lagu ogaado isku dhaca wax ka beddelka.", + "apihelp-visualeditor-param-stash": "Marka la kaydinayo, tan u dhig run haddii aad rabto inaad isticmaasho API-ga kaydinta ku meel gaarka ah.", + "apihelp-visualeditor-param-wikitext": "Wikitext loo dirayo Parsoid si loogu beddelo HTML (paction=parsefragment).", + "apihelp-visualeditor-summary": "Waxay soo celisaa HTML5 ee bogga laga helo adeegga Parsoid.", + "apihelp-visualeditoredit-param-basetimestamp": "Marka la kaydinayo, tan dhig waqtiga dib u eegista la wax ka beddelay. Waxaa loo isticmaalaa in lagu ogaado isku dhaca wax ka beddelka.", + "apihelp-visualeditoredit-param-cachekey": "Isticmaal natiijada codsi serializeforcache oo hore oo leh furahan. Waxay beddeshaa $1html.", + "apihelp-visualeditoredit-param-captchaid": "Aqoonsiga CAPTCHA (marka la kaydinayo iyadoo la adeegsanayo jawaab CAPTCHA).", + "apihelp-visualeditoredit-param-captchaword": "Jawaabta captcha (marka la kaydinayo iyadoo la adeegsanayo jawaab captcha).", + "apihelp-visualeditoredit-param-nocontent": "Ka reeb nuxurka HTML ee dib u eegista cusub jawaabta.", + "apihelp-visualeditoredit-param-plugins": "Barnaamijyo dheeraad ah oo la xiriira codsiga API-ga.", + "apihelp-visualeditoredit-param-data-{plugin}": "Xog aan xadidnayn oo uu plugin-ku ku soo diro codsiga API-ga.", + "apihelp-visualeditoredit-param-etag": "ETag la dirayo.", + "apihelp-visualeditoredit-param-html": "HTML loo dirayo Parsoid si loogu beddelo wikitext.", + "apihelp-visualeditoredit-param-minor": "Calaamad wax ka beddel yar.", + "apihelp-visualeditoredit-param-needcheck": "Marka la kaydinayo, tan dhig haddii dib u eegistu yeelan karto dhibaatooyin safar wareeg ah. Tani waxay keeni doontaa in wax ka beddelka la calaamadeeyo.", + "apihelp-visualeditoredit-param-oldid": "Lambarka dib u eegista la adeegsanayo. Haddii aan la cayimin, waxaa la isticmaalayaa dib u eegista ugu dambeysa.", + "apihelp-visualeditoredit-param-paction": "Falka la fulinayo.", + "apihelp-visualeditoredit-param-page": "Bogga lagu fulinayo falalka.", + "apihelp-visualeditoredit-param-section": "Qaybta lagu shaqaynayo.", + "apihelp-visualeditoredit-param-sectiontitle": "Cinwaanka qaybta cusub.", + "apihelp-visualeditoredit-param-starttimestamp": "Marka la kaydinayo, u dhig wakhtiga boggu la raray. Waxaa loo isticmaalaa in lagu ogaado isku dhacyada wax ka beddelka.", + "apihelp-visualeditoredit-param-summary": "Soo koobida wax ka beddel", + "apihelp-visualeditoredit-param-tags": "Beddel calaamadaha lagu dabaqayo wax ka beddelka.", + "apihelp-visualeditoredit-param-wikitext": "Wikitext-ka lagu shaqaynayo.", + "apihelp-visualeditoredit-summary": "Ku keydi bog HTML5 ah MediaWiki (loogu beddelay wikitext iyadoo la adeegsanayo adeegga Parsoid)." +} diff --git a/i18n/ve-mw/api/sr-ec.json b/i18n/ve-mw/api/sr-ec.json index 96edab79e9..3a7834f8e0 100644 --- a/i18n/ve-mw/api/sr-ec.json +++ b/i18n/ve-mw/api/sr-ec.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Aca", "Acamicamacaraca", "BadDog", "Kizule", diff --git a/i18n/ve-mw/api/tw.json b/i18n/ve-mw/api/tw.json index 74e4af5578..f11ccb2560 100644 --- a/i18n/ve-mw/api/tw.json +++ b/i18n/ve-mw/api/tw.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Celestinesucess", "Robertjamal12" ] diff --git a/i18n/ve-mw/api/yue-hant.json b/i18n/ve-mw/api/yue-hant.json index a02b9d6efe..2eaa8dc0aa 100644 --- a/i18n/ve-mw/api/yue-hant.json +++ b/i18n/ve-mw/api/yue-hant.json @@ -1,19 +1,51 @@ { "@metadata": { "authors": [ - "Winston Sung" + "JeffreyKim", + "Ktchankt", + "Winston Sung", + "Yueman" ] }, + "apierror-visualeditor-badcachekey": "搵唔到嗰個密匙嘅緩存序列化", "apierror-visualeditor-difffailed": "比較失敗", "apihelp-visualeditor-param-basetimestamp": "保存嗰陣,將爾個設成編輯嘅版本嘅時間戳。用來檢測編輯衝突。", + "apihelp-visualeditor-param-badetag": "如果RESTBase查詢返返去一個看似無效嘅ETag,請將佢傳送到呢度嚟記錄。", + "apihelp-visualeditor-param-cachekey": "如果要序列化或者diff ,請用之前序列化嘅結果嚟用呢個鍵嚟進行緩存請求。覆寫$1html。", + "apihelp-visualeditor-param-editintro": "編輯簡介嚟加入通知。", + "apihelp-visualeditor-param-etag": "ETag要發送。", + "apihelp-visualeditor-param-format": "輸出嘅格式。", "apihelp-visualeditor-param-html": "發畀Parsoid來轉成維基代碼嘅HTML代碼", "apihelp-visualeditor-param-oldid": "所用嘅修訂版本號(默認設成上一個版本)", "apihelp-visualeditor-param-paction": "要操嘅作", + "apihelp-visualeditor-param-page": "要喺上面執行操作嘅頁面。", + "apihelp-visualeditor-param-preload": "如果攞咗嘅頁面仲未有內容,就要用嘅頁面。", + "apihelp-visualeditor-param-preloadparams": "如果有,要將參數替換入預載頁面。", + "apihelp-visualeditor-param-pst": "喺將轉換維基文字傳送去Parsoid之前預先儲存佢(paction = 解析片段)。", + "apihelp-visualeditor-param-section": "要採取行動嘅部分。", "apihelp-visualeditor-param-starttimestamp": "保存嗰陣,將爾個設成加載嘅版本嘅時間戳。用來檢測編輯衝突。", + "apihelp-visualeditor-param-stash": "儲存緊嗰陣,如果你想用儲存API,將呢個設定設做 true。", "apihelp-visualeditor-param-wikitext": "發畀Parsoid來轉成HTML代碼嘅維基代碼\n(paction=parsefragment)。", + "apihelp-visualeditor-summary": "返返左Parsoid服務嘅頁面嘅 HTML5。", + "apihelp-visualeditoredit-param-basetimestamp": "儲存嗰陣,將呢個設定做編輯咗嘅修訂版本嘅時間戳記,用嚟偵測編輯衝突。", + "apihelp-visualeditoredit-param-cachekey": "用呢個密匙用之前嘅序列化緩存請求嘅結果。覆寫$1html。", "apihelp-visualeditoredit-param-captchaid": "Captcha ID (保存captcha響應嗰時用)。", + "apihelp-visualeditoredit-param-captchaword": "回答驗證碼(當用驗證碼回應儲存嗰陣)。", + "apihelp-visualeditoredit-param-nocontent": "喺回應入面省略新修訂版本嘅HTML內容。", + "apihelp-visualeditoredit-param-plugins": "同API要求相關嘅外掛程式。", + "apihelp-visualeditoredit-param-data-{plugin}": "由外掛程式同API要求一齊傳送嘅任意資料。", + "apihelp-visualeditoredit-param-etag": "ETag要發送。", + "apihelp-visualeditoredit-param-html": "HTML要傳送去Parsoid換取維基文字。", "apihelp-visualeditoredit-param-minor": "細修改嘅標記。", - "apihelp-visualeditoredit-param-oldid": "所用修訂版本號。默認用上一個版本。用 0 表示新開版。", + "apihelp-visualeditoredit-param-needcheck": "儲存嗰陣,如果修訂版本可能會有來回問題,請設定呢個參數。噉樣會令到個編輯被標記。", + "apihelp-visualeditoredit-param-oldid": "要用嘅修訂版本冧巴。預設為最新修訂版本。", + "apihelp-visualeditoredit-param-paction": "要執行嘅動作。", + "apihelp-visualeditoredit-param-page": "要喺上面執行操作嘅頁面。", + "apihelp-visualeditoredit-param-section": "要採取行動嘅部分。", + "apihelp-visualeditoredit-param-sectiontitle": "新章節嘅標題。", "apihelp-visualeditoredit-param-starttimestamp": "保存嗰陣,將爾個設成加載嘅版本嘅時間戳。用來檢測編輯衝突。", - "apihelp-visualeditoredit-param-summary": "編輯摘要。" + "apihelp-visualeditoredit-param-summary": "編輯摘要。", + "apihelp-visualeditoredit-param-tags": "更改標籤嚟套用喺編輯。", + "apihelp-visualeditoredit-param-wikitext": "用嚟行動嘅維基文字。", + "apihelp-visualeditoredit-summary": "將HTML5頁面儲存到維基媒體(透過 Parsoid 服務轉換為維基文字)。" } diff --git a/i18n/ve-mw/ar.json b/i18n/ve-mw/ar.json index 1cba6ffa22..635e58597e 100644 --- a/i18n/ve-mw/ar.json +++ b/i18n/ve-mw/ar.json @@ -18,6 +18,7 @@ "Karim185.3", "Lolekek", "Maroen1990", + "Mdktb", "Meno25", "Mervat Salman", "Mido", @@ -44,12 +45,18 @@ "collabpad-import-subtitle": "مستورد من $1", "collabpad": "كولاب باد", "tooltip-ca-ve-edit": "عدل هذه الصفحة", + "tooltip-ca-ve-edit-local": "تعديل صفحة الوصف المحلية", "tooltip-ca-ve-create": "أنشئ صفحة بهذا العنوان", "tooltip-ca-ve-create-local": "أنشئ صفحة الوصف المحلية", "tooltip-ca-editsource": "عدل الكود المصدري لهذه الصفحة", + "tooltip-ca-editsource-local": "تعديل النص المصدري لصفحة الوصف المحلية", "tooltip-ca-createsource": "إنشاء الكود المصدري لهذه الصفحة", + "tooltip-ca-createsource-local": "إنشاء الكود المصدر لصفحة الوصف المحلية", "visualeditor-advancedsettings-tool": "إعدادات متقدمة", "visualeditor-annotations-default-description": "هذا الجزء من الصفحة هو جزء من نطاق التعليقات التوضيحية.", + "visualeditor-annotations-default-end": "نهاية النطاق الموضح", + "visualeditor-annotations-default-start": "بداية النطاق الموضح", + "visualeditor-annotations-extended-documentation": "تم توسيع نطاق التعليقات التوضيحية هذا لأن المحتوى الذي يتضمنه لم يكن متداخلاً بشكل جيد. يوصى بالتأكد من أن المحتوى المتضمن تعليقات توضيحية متداخل بشكل جيد قبل تحريره؛ وإلا، فقد يتم إضافة تعليقات توضيحية إلى نطاق أكبر من المتوقع.", "visualeditor-autosave-modified-prompt-accept": "استئناف التحرير", "visualeditor-autosave-modified-prompt-message": "تم تحرير هذه الصفحة منذ آخر تحميل لها. هل ترغب {{GENDER:|أنت}} في استئناف {{GENDER:|تعديلك}} للمراجعة القديمة، أو بدء تعديل جديد للمراجعة الأحدث؟", "visualeditor-autosave-modified-prompt-reject": "بدء تعديل جديد", @@ -57,22 +64,25 @@ "visualeditor-autosave-not-recovered-text": "تغييراتك غير المحفوظة لم يمكن استرجاعها.", "visualeditor-autosave-not-recovered-title": "استرجاع التغيير فشل", "visualeditor-autosave-recovered-text": "تغييراتك غير المحفوظة تم استرجاعها تلقائيا.", - "visualeditor-autosave-recovered-title": "تم استرجاع التغييرات", + "visualeditor-autosave-recovered-title": "استرجعت التغييرات", "visualeditor-backbutton-tooltip": "رجوع", "visualeditor-ca-createlocaldescriptionsource": "إضافة مصدر وصف محلي", "visualeditor-ca-createsource": "أنشئ المصدر", "visualeditor-ca-editlocaldescriptionsource": "تعديل مصدر الوصف المحلي", "visualeditor-ca-editsource": "عدل المصدر", "visualeditor-ca-editsource-section": "عدل المصدر", + "visualeditor-ca-editsource-section-hint": "تعديل النص المصدري للقسم: $1", "visualeditor-categories-tool": "التصنيفات", "visualeditor-changedesc-mwcategory-sortkey-changed": "تم تغيير مفتاح التصنيف من $1 إلى $2", "visualeditor-changedesc-mwcategory-sortkey-set": "تم تعيين مفتاح الفرز على $1", "visualeditor-changedesc-mwcategory-sortkey-unset": "لم يتم ضبط مفتاح الفرز من $1", "visualeditor-changedesc-mwlanguagevariant": "صيغة تنويعة اللغة تغيرت", - "visualeditor-changedesc-mwredirect": "تم تغيير التحويلة من $1 إلى $2", + "visualeditor-changedesc-mwredirect": "هدف التحويلة تغيّر من $1 إلى $2", "visualeditor-changedesc-mwtransclusion": "محددات القالب تغيرت", "visualeditor-desc": "المحرر المرئي لميدياويكي", "visualeditor-descriptionpagelink": "Project:المحرر المرئي", + "visualeditor-dialog-extension-abandonedit": "هل أنت متأكد أنك تريد إغلاق هذا الحوار دون تطبيق التغييرات الخاصة بك؟", + "visualeditor-dialog-media-alttext-checkbox": "استخدم التسمية التوضيحية كنص بديل", "visualeditor-dialog-media-alttext-section": "نص بديل", "visualeditor-dialog-media-alttext-section-help": "يمكنك استخدام هذا الحقل لإضافة وصف نصي للأشخاص الذين لا يستطيعون رؤية الملف. يجب أن يكون الوصف كافيًا لفهم الهدف والمعلومات التي يقدمها ملف الوسائط. وهذا حيوي للمستخدمين المكفوفين والأشخاص الذين يستخدمون برامج قراءة الشاشة أو المتصفحات النصية فقط.", "visualeditor-dialog-media-change-image": "غير الصورة", @@ -110,7 +120,7 @@ "visualeditor-dialog-media-type-section": "نوع الصورة", "visualeditor-dialog-media-type-section-help": "أنت يمكنك ضبط كيف يظهر عنصر الميديا على الصفحة. هذا نبغي أن يكون صيغة الصورة المصغرة ليكون متناسقا مع الصفحات الأخرى في كل الحالات تقريبا.", "visualeditor-dialog-media-type-thumb": "تصغير", - "visualeditor-dialog-media-upload": "ارفع", + "visualeditor-dialog-media-upload": "رفع", "visualeditor-dialog-meta-advancedsettings-label": "إعدادات متقدمة", "visualeditor-dialog-meta-advancedsettings-section": "إعدادات متقدمة", "visualeditor-dialog-meta-categories-addcategory-label": "أضف تصنيفا لهذه الصفحة", @@ -177,7 +187,16 @@ "visualeditor-dialog-template-title": "قالب", "visualeditor-dialog-transclusion-action-save": "احفظ", "visualeditor-dialog-transclusion-template-title-nonexistent": "هذا القالب غير موجود.", + "visualeditor-dialog-transclusion-template-title-modifier": "لا تتوفر وثائق القالب و[//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter parameters] (إذا كانت موجودة) عند تحرير القوالب باستخدام بناء الجملة المتداخل أو المعدلات، مثل [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst].", + "visualeditor-dialog-transclusion-template-widget-aria": "اضغط على مفتاح المسافة لتحديد القالب.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "اضغط على Ctrl+Del لحذف القالب ومعامِلاته وقيمها. اضغط على Ctrl+Shift+Arrows لتحريك القالب لأعلى أو لأسفل.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "اضغط على Ctrl+Del لحذف القالب ومعامِلاته وقيمها.", "visualeditor-dialog-transclusion-add-wikitext": "أضف نص ويكي", + "visualeditor-dialog-transclusion-add-param-error-alias": "\" $1 \" تمت إضافته بالفعل كـ \" $2 \". يرجى التحقق من الخيارات في الشريط الجانبي. يرجع هذا إما إلى استخدام [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases aliases] أو [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label labels].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "لا يمكن إضافة \"$1\" لأن المعلمة تم وضع علامة عليها كـ [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated deprecated].", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "لا يمكن إضافة المعلمة \"$2\" مرتين.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "المعلمة \"$2\" متاحة للاستخدام بالفعل. يرجى التحقق من الخيارات في الشريط الجانبي.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 هو حرف محظور. يرجى إزالته لإضافة المعلمة.", "visualeditor-dialog-transclusion-add-param-help": "أدخل أسماء [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters الوسائط غير الموثقة] إذا كنت تعرفها. انتبه إلى أن الوسائط المُعرّفة في القالب فقط هي التي سيكون لها تأثير. رُبما تجد معلوماتٍ إضافية عن الوسائط الموجودة في [[$1|صفحة القالب]].", "visualeditor-dialog-transclusion-add-param-placeholder": "اسم الوسيط", "visualeditor-dialog-transclusion-add-param-save": "أضف", @@ -197,6 +216,7 @@ "visualeditor-dialog-transclusion-filter-no-match": "لم يُعثر على تطابق", "visualeditor-dialog-transclusion-filter-placeholder": "جِد حقلًا", "visualeditor-dialog-transclusion-filter-show-all": "أظهر الكل", + "visualeditor-dialog-transclusion-filter-title": "البحث عن المعلمة لـ $1", "visualeditor-dialog-transclusion-help-title": "مساعدة تحرير القوالب", "visualeditor-dialog-transclusion-help-message": "توفّر القوالب تنسيقاتٍ للمحتوى. هذا المحرر يعرض أيّ خياراتٍ يوفرها القالب يمينًا والقيم التي يُمكن إضافتها لهذه الخيارات يسارًا.", "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates مساعدة عن تعديل القوالب]", @@ -210,6 +230,7 @@ "visualeditor-dialog-transclusion-no-template-parameters": "ليس لهذا القالب وسائط موثّقة وقد يكون الغرض منه استخدامه بدون وسائط.", "visualeditor-dialog-transclusion-param-default": "القيمة الافتراضية: $1", "visualeditor-dialog-transclusion-param-example-long": "مثال: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "اضغط على مفتاح المسافة لإضافة أو إزالة المعلمات. اضغط على مفتاح الإدخال لإضافة معلمة وتحرير قيمتها على الفور. عندما يتم تحديد معلمة بالفعل، اضغط على مفتاح الإدخال لتحرير القيمة.", "visualeditor-dialog-transclusion-param-selection-aria-label": "الوسائط في $1", "visualeditor-dialog-transclusion-param-undocumented": "(وسيط غير موثّق)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "ابحث عن قالب", @@ -227,6 +248,9 @@ "visualeditor-dialog-transclusion-template-search": "البحث عن قالب", "visualeditor-dialog-transclusion-template-search-help": "جِد القالب الذي تودّ إضافته بالبحث عبر كلماتٍ مفتاحيّة. من المرجح أن تعمل القوالب التي لها وصوف بشكلٍ جيّدٍ مع المحرر المرئي.", "visualeditor-dialog-transclusion-wikitext": "نص ويكي", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "اضغط على مفتاح المسافة لتحديد عنصر wikitext. اضغط على مفتاح الإدخال لتحديد وتحرير wikitext.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "اضغط على Ctrl+Del لحذف عنصر wikitext. اضغط على Ctrl+Shift+Arrows لتحريك العنصر لأعلى أو لأسفل.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "اضغط على Ctrl+Del لحذف عنصر wikitext.", "visualeditor-dialogbutton-media-tooltip": "الصور والوسائط", "visualeditor-dialogbutton-template-tooltip": "قالب", "visualeditor-editconflict": "تعذر حفظ التغييرات الخاصة لوجود تضارب تحرير. أتود{{GENDER:||ين}} تصويب التضارب يدويا؟", @@ -248,11 +272,17 @@ "visualeditor-formatdropdown-format-mw-heading5": "عنوان فرعي 3", "visualeditor-formatdropdown-format-mw-heading6": "عنوان فرعي 4", "visualeditor-generating-wikitext-progress": "توليد نص الويكي", + "visualeditor-includes-noinclude-start": "بداية المحتوى المستبعد من المقتطفات", + "visualeditor-includes-noinclude-end": "نهاية المحتوى المستبعد من المقتطفات", + "visualeditor-includes-onlyinclude-start": "بداية المحتوى المسموح به في المقتطفات", + "visualeditor-includes-onlyinclude-end": "نهاية المحتوى المسموح به في المقتطفات", + "visualeditor-includes-includeonly": "المحتوى للمقتطفات فقط", "visualeditor-includes-noinclude-description": "عندما يتم استخدام محتوى من هذه الصفحة بواسطة صفحة أخرى ، لن يتم تضمين المحتوى من هنا حتى علامة النهاية المطابقة. كن حذرًا عند تحرير المحتوى خارج هذه العلامات ، حيث قد تستخدمه الصفحات الأخرى.", "visualeditor-includes-onlyinclude-description": "عندما يتم استخدام محتوى من هذه الصفحة بواسطة صفحة أخرى ، سيتم تضمين المحتوى فقط من هنا حتى علامة النهاية المطابقة. كن حذرًا عند تحرير المحتوى بين هذه العلامات ، حيث قد تستخدمه الصفحات الأخرى.", "visualeditor-includes-includeonly-description": "عندما يتم استخدام محتوى من هذه الصفحة بواسطة صفحة أخرى ، سيتم تضمين المحتوى الإضافي التالي هنا:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion تعرف على المزيد حول التحويل الجزئي]", "visualeditor-languages-tool": "اللغات", + "visualeditor-linkcontext-uneditable": "عذراً، لا يمكن تعديل هذا الرابط إلا في وضع المصدر في الوقت الحالي.", "visualeditor-linkinspector-button-link-external": "موقع خارجي", "visualeditor-linkinspector-button-link-internal": "ابحث عن الصفحةالداخلية", "visualeditor-linkinspector-convert-link-isbn": "تحويل إلى الرابط ISBN", @@ -261,6 +291,7 @@ "visualeditor-linkinspector-educationpopup-text": "اربط الكلمات المهمة بمقالاتٍ أخرى في ويكيبيديا أو حتى بموقع آخر، لتمكين القارئ من فهم مرادها.", "visualeditor-linkinspector-educationpopup-title": "وصلات", "visualeditor-linkinspector-illegal-title": "عنوان الصفحة غير صحيح", + "visualeditor-linkinspector-invalid-blocked": "قرر القائمون على هذا الموقع حجب الروابط المؤدية إلى هذا الموقع. يرجى تجربة رابط آخر.", "visualeditor-linkinspector-invalid-external": "أدخل المسار كاملا، على سبيل المثال https://example.org", "visualeditor-linknodeinspector-add-label": "إضافة تسمية", "visualeditor-linknodeinspector-title": "وصلة بسيطة", @@ -320,6 +351,8 @@ "visualeditor-preference-tabs-prefer-ve": "أظهر المحرر المرئي كلما أمكن", "visualeditor-preference-tabs-prefer-wt": "أعطني محرر المصدر دائما", "visualeditor-preference-tabs-remember-last": "تذكر آخر محرر عدلت به", + "visualeditor-preference-collab-label": "التحرير التعاوني", + "visualeditor-preference-collab-description": "قم بدعوة مستخدمين آخرين للانضمام إلى جلسة التحرير الخاصة بك في المحرر المرئي.", "visualeditor-rebase-client-export": "تصدير", "visualeditor-rebase-client-export-start": "تصدير", "visualeditor-rebase-client-import": "استورد", @@ -327,7 +360,8 @@ "visualeditor-rebase-client-title-help": "ستتمكن من مراجعة التغييرات قبل الحفظ.", "visualeditor-recreate": "لقد تم حذف هذه الصفحة بعد أن بدأت بتحريرها. اضغط على «$1» لإعادة إنشائها.", "visualeditor-redirect-description": "تحويل إلى $1", - "visualeditor-savedialog-identify-anon": "هل تود عوضا عن ذلك حفظ هذه الصفحة على أنك مستخدم مجهول؟ سيتم تسجيل عنوان الآي بي الخاص بك في تاريخ تعديلات الصفحة.", + "visualeditor-savedialog-identify-anon": "لم تعد تسجيل الدخول إذا استمررت في ذلك، سيتم تسجيل عنوان IP الخاص بك في تاريخ تحرير هذه الصفحة.", + "visualeditor-savedialog-identify-temp": "أنت تستخدم الآن اسم المستخدم المؤقت $1 . إذا تابعت، فسيتم ربط تعديلك باسم المستخدم هذا.", "visualeditor-savedialog-identify-user": "لقد سجلت الدخول على أنك [[User:$1|$1]]. سيرتبط تعديلك بهذا الحساب إذا حفظت هذا التعديل.", "visualeditor-savedialog-keyboard-shortcut-submit": "يمكنك الضغط على $1 لحفظ تعديلك.", "visualeditor-savedialog-label-publish-short": "انشر", @@ -353,7 +387,7 @@ "visualeditor-special-characters-group-other": "مستخدمة عادة", "visualeditor-templatesused-tool": "القوالب المستخدمة", "visualeditor-title-error": "عنوان غير صحيح.", - "visualeditor-toload": "المحرر سيُحمَّل الآن. إذا كنت لا تزال ترى هذه الرسالة بعد بضع ثوان، يرجى [$1 إعادة تحميل الصفحة].", + "visualeditor-toload": "سيتم تحميل المحرر الآن. إذا استمرت هذه الرسالة بالظهور بعد ثوان قليلة، يُرجى [$1 تحديث الصفحة].", "visualeditor-tooltip-non-breaking-space": "مسافة غير منقسمة", "visualeditor-version-label": "نسخة", "visualeditor-wikitext-progress": "جار تحويل نص الويكي", diff --git a/i18n/ve-mw/arq.json b/i18n/ve-mw/arq.json index dade2e86f0..6a0e8d9583 100644 --- a/i18n/ve-mw/arq.json +++ b/i18n/ve-mw/arq.json @@ -36,7 +36,7 @@ "visualeditor-dialog-meta-languages-code-label": "رمز اللوغه", "visualeditor-dialog-meta-languages-label": "لوغات", "visualeditor-dialog-meta-languages-link-label": "صفحة مرتبطة", - "visualeditor-dialog-meta-languages-name-label": "اللوغه", + "visualeditor-dialog-meta-languages-name-label": "لوغه", "visualeditor-dialog-meta-languages-readonlynote": "هادي هنا ليستة تاع پاجات ب لوغات وحدخرة مربوطة ب هاد الپاجة، ما يمكنش نغيروها ف هاد الوقيتة غير يلا كان تعدّل المصدر ولا ويكي بايانات.", "visualeditor-dialog-meta-languages-section": "لوغات", "visualeditor-dialog-meta-settings-displaytitle": "عرض العنوان", diff --git a/i18n/ve-mw/ary.json b/i18n/ve-mw/ary.json index 309bdeb4a1..09f40df6a2 100644 --- a/i18n/ve-mw/ary.json +++ b/i18n/ve-mw/ary.json @@ -18,8 +18,10 @@ "visualeditor-ca-editsource": "بدل لكود", "visualeditor-ca-editsource-section": "بدل لكود", "visualeditor-descriptionpagelink": "Project:ليديتور د الشوفان", + "visualeditor-dialog-media-choose-image": "خدّم هاد التصويرة", "visualeditor-dialog-transclusion-no-template-description": "لموضيل \"$1\" ماعندوش شرح، والاكين يمكن تلقا معلومات عليه ف [[$2|صّفحة ديالو]].", - "visualeditor-dialogbutton-media-tooltip": "تصاور ؤ ملفات", + "visualeditor-dialogbutton-media-tooltip": "تصاور ؤ فيشيات", + "visualeditor-editsummary": "وصف داكشي لي بدّلتيه", "visualeditor-mweditmodeve-popup-body": "تقدر ترجع مرة خرة ل التبدال ب الشوفان ف أي وقت يلا كليكيتي على هاد لإيكون.", "visualeditor-mweditmodeve-tool-current": "التبدال ب الشوفان", "visualeditor-mweditmodeve-tool-unavailable": "التبدال ب الشوفان مامتوفّرش هنا", diff --git a/i18n/ve-mw/ast.json b/i18n/ve-mw/ast.json index 369eb3f1f8..4034d6d72c 100644 --- a/i18n/ve-mw/ast.json +++ b/i18n/ve-mw/ast.json @@ -49,11 +49,9 @@ "visualeditor-dialog-media-info-artist": "Xubida por $1", "visualeditor-dialog-media-info-audiofile": "Ficheru de soníu", "visualeditor-dialog-media-info-created": "Creada: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Artista: $1", "visualeditor-dialog-media-info-moreinfo": "Más información", "visualeditor-dialog-media-info-readmore": "Lleer más", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Xubida: $1", "visualeditor-dialog-media-page-advanced": "Avanzao", "visualeditor-dialog-media-page-general": "Xeneral", diff --git a/i18n/ve-mw/ay.json b/i18n/ve-mw/ay.json index 45cd0610be..216361f7c7 100644 --- a/i18n/ve-mw/ay.json +++ b/i18n/ve-mw/ay.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "AleElDestructor", "Jduranboger", "Macofe", "Vikytinta" @@ -40,7 +41,7 @@ "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Katiyuriy imantatanaka", "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Niya kipka katiyuriyanaka", "visualeditor-dialog-meta-categories-input-movecategorylabel": "Aka ..aksar jittayaña", - "visualeditor-dialog-meta-categories-input-newcategorylabel": "Machaq katiyuria", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Machaqa katiyuria", "visualeditor-dialog-meta-categories-input-placeholder": "Katiyuriy yapxataña", "visualeditor-dialog-meta-categories-options": "Ajllinaka", "visualeditor-dialog-meta-categories-section": "Katiyuriyanaka", diff --git a/i18n/ve-mw/az.json b/i18n/ve-mw/az.json index 1cd11eb995..a0452291db 100644 --- a/i18n/ve-mw/az.json +++ b/i18n/ve-mw/az.json @@ -5,6 +5,7 @@ "Cekli829", "Dağlı95", "Eminn", + "Gadir", "Interfase", "Jduranboger", "NMW03", @@ -12,7 +13,9 @@ "Toghrul Rahimli", "Vesely35", "Wertuose", - "Şeyx Şamil" + "Şeyx Şamil", + "Əkrəm", + "Əkrəm Cəfər" ] }, "collabpad-doctitle": "CollabPad: $1", @@ -22,9 +25,9 @@ "tooltip-ca-ve-edit-local": "Yerli təsvir səhifəsini redaktə et", "tooltip-ca-ve-create": "Bu səhifəni yarat", "tooltip-ca-ve-create-local": "Yerli təsvir səhifəsini yarat", - "tooltip-ca-editsource": "Səhifənin cari kodunu redaktə et", + "tooltip-ca-editsource": "Səhifənin vikimətnini redaktə et", "tooltip-ca-editsource-local": "Yerli təsvir səhifəsinin mənbə kodunu redaktə et", - "tooltip-ca-createsource": "Cari kod redaktorunda səhifəni yarat", + "tooltip-ca-createsource": "Bu səhifənin vikimətnini yarat", "tooltip-ca-createsource-local": "Yerli təsvir səhifəsinin mənbə kodunu yarat", "visualeditor-advancedsettings-tool": "Əlavə parametrlər", "visualeditor-annotations-default-description": "Səhifənin bu hissəsi annotasiya aralığının bir hissəsidir.", @@ -41,10 +44,10 @@ "visualeditor-autosave-recovered-title": "Dəyişikliklər bərpa edildi", "visualeditor-backbutton-tooltip": "Geri qayıt", "visualeditor-ca-createlocaldescriptionsource": "Lokal izah əlavə et", - "visualeditor-ca-createsource": "Mənbəni yarat", + "visualeditor-ca-createsource": "Vikimətni yarat", "visualeditor-ca-editlocaldescriptionsource": "Lokal izah kodunu redaktə et", - "visualeditor-ca-editsource": "Mənbəni redaktə et", - "visualeditor-ca-editsource-section": "mənbəni redaktə et", + "visualeditor-ca-editsource": "Vikimətni redaktə et", + "visualeditor-ca-editsource-section": "vikimətni redaktə et", "visualeditor-ca-editsource-section-hint": "Bölmənin mənbə kodunu redaktə et: $1", "visualeditor-categories-tool": "Kateqoriyalar", "visualeditor-changedesc-mwcategory-sortkey-changed": "Sıralama açarı dəyişdirildi: $1 -> $2", @@ -63,7 +66,7 @@ "visualeditor-dialog-media-choose-image": "Bu şəkli istifadə et", "visualeditor-dialog-media-content-description-link": "(izah səhifəsi)", "visualeditor-dialog-media-content-filename": "Fayl adı", - "visualeditor-dialog-media-content-section": "İmza", + "visualeditor-dialog-media-content-section": "Başlıq", "visualeditor-dialog-media-content-section-help": "Bütün oxucular üçün faylın yanında görünən bir etiket göstərmək üçün bundan istifadə edə bilərsiniz. Bu tez-tez faylın niyə bu kontekstə uyğun olduğunu izah etmək üçün istifadə olunur. Bu qısa və məlumatlandırıcı olmalıdır.", "visualeditor-dialog-media-goback": "Geri", "visualeditor-dialog-media-info-artist": "$1 tərəfindən yüklənilib", @@ -74,7 +77,7 @@ "visualeditor-dialog-media-info-readmore": "Daha çox oxu", "visualeditor-dialog-media-info-uploaded": "Yüklənmə tarixi: $1", "visualeditor-dialog-media-page-advanced": "Daha çox", - "visualeditor-dialog-media-page-general": "Əsas parametrlər", + "visualeditor-dialog-media-page-general": "Ümumi", "visualeditor-dialog-media-position-checkbox": "Məzmunu bu elementin ətrafına yay", "visualeditor-dialog-media-position-checkbox-help": "Bu media elementini üzən (floating) yerinə səhifənin mətninə uyğun olaraq göstərə bilərsiniz. Bunu nadir hallarda etməlisiniz, çünki bu qutunu işarələməsəniz mətn axını pozulacaq.", "visualeditor-dialog-media-position-section": "Mövqe", @@ -84,7 +87,7 @@ "visualeditor-dialog-media-search-tab-upload": "Yüklə", "visualeditor-dialog-media-size-section": "Şəklin ölçüsü", "visualeditor-dialog-media-size-section-help": "Səhifədə faylın nə qədər böyük görünəcəyini təyin edə bilərsiniz. Bu, demək olar ki, həmişə normal ölçüdə olmalıdır, çünki xüsusi bir ölçü oxucular üçün səhifənin tərtibatına müdaxilə edəcək və onu tutarsız hala gətirəcəkdir.", - "visualeditor-dialog-media-title": "Media-faylın parametrləri", + "visualeditor-dialog-media-title": "Media parametrləri", "visualeditor-dialog-media-type-border": "Sərhəd", "visualeditor-dialog-media-type-frame": "Çərçivə", "visualeditor-dialog-media-type-frameless": "Çərçivəsiz", @@ -93,61 +96,61 @@ "visualeditor-dialog-media-type-section-help": "Faylın səhifədə necə görünəcəyini təyin edə bilərsiniz. Demək olar ki, bütün hallarda digər səhifələrlə uyğun olmaq üçün bu kiçik şəkil formatı olmalıdır.", "visualeditor-dialog-media-type-thumb": "Miniatür", "visualeditor-dialog-media-upload": "Yüklə", - "visualeditor-dialog-meta-advancedsettings-label": "Təkmil parametrlər", - "visualeditor-dialog-meta-advancedsettings-section": "Təkmil parametrlər", + "visualeditor-dialog-meta-advancedsettings-label": "Qabaqcıl parametrlər", + "visualeditor-dialog-meta-advancedsettings-section": "Qabaqcıl parametrlər", "visualeditor-dialog-meta-categories-addcategory-label": "Bu səhifəyə kateqoriya əlavə et", "visualeditor-dialog-meta-categories-category": "Kateqoriya", "visualeditor-dialog-meta-categories-data-label": "Kateqoriyalar", "visualeditor-dialog-meta-categories-defaultsort-help": "Bunun əvəzinə sıralamaq üçün fərqli bir indeks təyin edərək bir kateqoriya daxilində göstərildikdə bu səhifənin necə sıralanacağını dəyişə bilərsiniz. Bu tez-tez insanlar haqqında səhifələrin soyadla göstərilməsini təmin etmək üçün istifadə olunur, lakin əvvəlcə adları göstərilir.", - "visualeditor-dialog-meta-categories-defaultsort-label": "Səhifəni susmaya görə sırala", - "visualeditor-dialog-meta-categories-hidden": "Bu kateqoriya əlavə edildiyi səhifələrdə görünmür.", + "visualeditor-dialog-meta-categories-defaultsort-label": "Səhifəni defolt olaraq bu cür çeşidlə:", + "visualeditor-dialog-meta-categories-hidden": "Bu kateqoriya əlavə olunduğu səhifələrdə göstərilməmək üçün təyin edilib.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Gizli kateqoriyalar", - "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Müvafiq kateqoriyalar", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Uyğun kateqoriyalar", "visualeditor-dialog-meta-categories-input-movecategorylabel": "Kateqoriyanı buraya köçür", "visualeditor-dialog-meta-categories-input-newcategorylabel": "Yeni kateqoriya", "visualeditor-dialog-meta-categories-input-placeholder": "Kateqoriya əlavə et", "visualeditor-dialog-meta-categories-missing": "Bu kateqoriyanın izah səhifəsi yoxdur.", - "visualeditor-dialog-meta-categories-options": "Nizamlamalar", + "visualeditor-dialog-meta-categories-options": "Seçimlər", "visualeditor-dialog-meta-categories-section": "Kateqoriyalar", - "visualeditor-dialog-meta-categories-sortkey-label": "Səhifəni adına görə sırala", + "visualeditor-dialog-meta-categories-sortkey-label": "Səhifəni bu formada çeşidlə:", "visualeditor-dialog-meta-languages-code-label": "Dil kodu", "visualeditor-dialog-meta-languages-label": "Dillər", - "visualeditor-dialog-meta-languages-link-label": "Əlaqəli səhifə", + "visualeditor-dialog-meta-languages-link-label": "Keçid verilmiş səhifə", "visualeditor-dialog-meta-languages-name-label": "Dil", - "visualeditor-dialog-meta-languages-readonlynote": "Bu digər dillərdə olan əlaqəli səhifələrin siyahısıdır. Hal-hazırda o yalnız əsas redaktə rejimində və ya VikiMəlumatda redaktə oluna bilər.", + "visualeditor-dialog-meta-languages-readonlynote": "Bu, digər dillərdə keçid verilmiş səhifələrin siyahısıdır. Hal-hazırda, o, yalnız əsas redaktə rejimində və ya Vikidatada redaktə oluna bilər.", "visualeditor-dialog-meta-languages-section": "Dillər", "visualeditor-dialog-meta-settings-displaytitle": "Göstərilən başlıq", "visualeditor-dialog-meta-settings-displaytitle-help": "Bunun əvəzinə fərqli bir başlıq təyin edərək bu səhifənin başlığının necə görünəcəyini dəyişə bilərsiniz.", "visualeditor-dialog-meta-settings-hiddencat-help": "Bu kateqoriyanın üzv səhifələrdəki kateqoriyalar siyahısında görünməsinin qarşısını ala bilərsiniz. Bu, redaktorlar üçün maraqlı olan, lakin oxucuların əksəriyyəti üçün olmayan, məsələn, şəkilə ehtiyacı olan səhifələr üçün faydalıdır.", "visualeditor-dialog-meta-settings-hiddencat-label": "Gizli kateqoriya", - "visualeditor-dialog-meta-settings-index-default": "Susmaya görə", + "visualeditor-dialog-meta-settings-index-default": "Defolt", "visualeditor-dialog-meta-settings-index-disable": "Xeyr", "visualeditor-dialog-meta-settings-index-force": "Bəli", "visualeditor-dialog-meta-settings-index-help": "Axtarış mühərriklərini bu səhifəni müvafiq nəticələr siyahısına salmağa və ya salmamağa məcbur edə bilərsiniz. Bu seçim sayt daxilində axtarışa təsir etmir.", - "visualeditor-dialog-meta-settings-index-label": "Axtarış sistemlərinin bu səhifəni indeksləşdirməsinə icazə ver", - "visualeditor-dialog-meta-settings-label": "Səhifənin parametrləri", - "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Susmaya görə", + "visualeditor-dialog-meta-settings-index-label": "Axtarış mühərriklərinin bu səhifəni indeksləşdirməsinə icazə ver", + "visualeditor-dialog-meta-settings-label": "Səhifə parametrləri", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Defolt", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Xeyr", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Bəli", "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Bu səhifədəki \"$1\" bölməsinin yanında əlavə bir nişanın göstərilməsini aktivləşdirə edə bilərsiniz, hansı ki yeni bir bölmə əlavə etməyi asanlaşdıracaq.", - "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Bu səhifədə yeni bölmə əlavə edilməsi üçün qoşmanı göstər", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Yeni bölmə əlavə etmək üçün bu səhifədə vərəqəni göstər", "visualeditor-dialog-meta-settings-nocontentconvert-help": "Bu səhifənin məzmununun avtomatik olaraq digər skriptlərə çevrilməsinin qarşısını ala bilərsiniz.", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Məzmunu dil variantları arasında çevirmə", "visualeditor-dialog-meta-settings-noeditsection-help": "Redaktə keçidlərinin qeyri-adi vəziyyətdə hər bölmənin yanında görünməsini ləğv edə bilərsiniz.", - "visualeditor-dialog-meta-settings-noeditsection-label": "Bu səhifədə hər bölmə başlığının yanındakı redaktə keçidlərini yığışdır.", + "visualeditor-dialog-meta-settings-noeditsection-label": "Bu səhifədəki hər başlığın yanındakı redaktə keçidlərini deaktiv et.", "visualeditor-dialog-meta-settings-nogallery-help": "Bu vəziyyətdə uyğun deyilsə, bu kateqoriyanın üzv fayllarını qalereya kimi göstərilməsini ləğv edə bilərsiniz.", "visualeditor-dialog-meta-settings-nogallery-label": "Qalereyanı deaktivləşdir", "visualeditor-dialog-meta-settings-notitleconvert-help": "Bu səhifənin başlığının avtomatik olaraq digər skriptlərə çevrilməsinin qarşısını ala bilərsiniz.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Başlığı dil variantları arasında çevirmə", "visualeditor-dialog-meta-settings-redirect-help": "Bu səhifəni oxucuları avtomatik olaraq bu vikidə başqa bir səhifəyə aparacaq bir yönləndirmə halına gətirə bilərsiniz. Bu səhv yazılışlar və alternativ adlar və ya anlayışlar üçün faydalıdır. Belə etsəniz, oxucular bu səhifənin məzmununu görməyəcəklər.", - "visualeditor-dialog-meta-settings-redirect-label": "Bu səhifəni bura yönləndir:", - "visualeditor-dialog-meta-settings-redirect-placeholder": "Yönləndirmə üçün hədəf səhifəsi", + "visualeditor-dialog-meta-settings-redirect-label": "Bu səhifəni bura istiqamətləndir:", + "visualeditor-dialog-meta-settings-redirect-placeholder": "İstiqamətləndirmə üçün hədəf səhifəsi", "visualeditor-dialog-meta-settings-redirect-statichelp": "Ehtiyac olduğu çox nadir hallarda, yönləndirdiyi səhifənin adı dəyişdirildikdə bu yönləndirmənin avtomatik olaraq yenilənməsinin qarşısını ala bilərsiniz.", "visualeditor-dialog-meta-settings-redirect-staticlabel": "Hədəf səhifəsinin adı dəyişdirildikdə bu yönləndirmənin yenilənməsinin qarşısını alın.", "visualeditor-dialog-meta-settings-section": "Səhifə parametrləri", "visualeditor-dialog-meta-settings-toc-default": "Ehtiyac varsa", "visualeditor-dialog-meta-settings-toc-disable": "Heç vaxt", - "visualeditor-dialog-meta-settings-toc-force": "Hər zaman", + "visualeditor-dialog-meta-settings-toc-force": "Həmişə", "visualeditor-dialog-meta-settings-toc-help": "Səhifədəki mündəricatı dörd başlıqdan az olan səhifələrdə göstərməyə məcbur edə bilərsiniz və ya ümumiyyətlə görünməməyə məcbur edə bilərsiniz. Defolt olaraq, səhifədə dörd və ya daha çox başlıq varsa görünür.", "visualeditor-dialog-meta-settings-toc-label": "Mündəricatı göstər", "visualeditor-dialog-meta-templatesused-noresults": "Heç bir şablon tapılmadı.", @@ -184,7 +187,7 @@ "visualeditor-dialog-transclusion-contextitem-description": "Yaradılan: $1", "visualeditor-dialog-transclusion-contextitem-loading": "Yüklənir…", "visualeditor-dialog-transclusion-expand-options": "Seçimləri göstər", - "visualeditor-dialog-transclusion-filter-hide-unused": "İstifadə edilməyənləri gizlə", + "visualeditor-dialog-transclusion-filter-hide-unused": "İstifadə olunmayanları gizlət", "visualeditor-dialog-transclusion-filter-no-match": "Heç bir nəticə tapılmadı", "visualeditor-dialog-transclusion-filter-placeholder": "Sahə tap", "visualeditor-dialog-transclusion-filter-show-all": "Hamısını göstər", @@ -199,7 +202,7 @@ "visualeditor-dialog-transclusion-multipart-message": "Siz hal-hazırda bir şablonu və [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content əlaqəli məzmunun] bir və ya daha çox hissəsini redaktə edirsiniz (vikimətn və/və ya əlavə şablonlar).", "visualeditor-dialog-transclusion-no-template-data-description": "Bu şablonda [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] yoxdur. Onun parametrləri [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters avtomatik olaraq yaradıldı]. Bunun nəticəsi olaraq şablon və onun parametrlərində izah bölməsi yoxdur. [[$1|Şablonun səhifəsində]] daha ətraflı məlumat ola bilər.", "visualeditor-dialog-transclusion-no-template-description": "\"$1\" şablonunun hələ ki izah bölməsi yoxdur amma [[$2|səhifəsində]] məlumat ola bilər.", - "visualeditor-dialog-transclusion-no-template-parameters": "Bu şablonun parametrlərinin izahı verilməyib və ya onlar olmadan istifadəsi nəzərdə tutulub.", + "visualeditor-dialog-transclusion-no-template-parameters": "Bu şablonun sənədləşdirilmiş parametrləri yoxdur və onlar olmadan istifadə üçün nəzərdə tutula bilər.", "visualeditor-dialog-transclusion-param-default": "Defolt: $1", "visualeditor-dialog-transclusion-param-example-long": "Məsələn: $1", "visualeditor-dialog-transclusion-param-selection-aria-description": "Parametrləri əlavə etmək və ya silmək üçün Space düyməsinə basın. Parametr əlavə etmək və dəyərini dərhal redaktə etmək üçün Enter düyməsinə basın. Parametr artıq seçildikdə, dəyəri redaktə etmək üçün Enter düyməsinə basın.", @@ -225,19 +228,19 @@ "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Vikimətn elementini silmək üçün Ctrl+Del düymələrinə basın.", "visualeditor-dialogbutton-media-tooltip": "Şəkillər və media", "visualeditor-dialogbutton-template-tooltip": "Şablon", - "visualeditor-editconflict": "Sizin dəyişikliklər redaktə münaqişəsinə görə yadda saxlanıla bilmir. {{GENDER:|Siz}} münaqişəni əllə həll etmək istəyirsinizmi?", + "visualeditor-editconflict": "Dəyişiklikləriniz redaktə münaqişəsinə görə yadda saxlanıla bilmir. Münaqişəni manual həll etmək istəyirsiniz?", "visualeditor-editingtabdialog-body": "{{SITENAME}} artıq hansı redaktora üstünlük verdiyini xatırlayır. Redaktə edərkən redaktə rejimlərini dəyişə və seçiminizi daha sonra dəyişə bilərsiniz.", "visualeditor-editingtabdialog-ok": "Son redaktəmdə istifadə etdiyim redaktordan istifadə et", "visualeditor-editingtabdialog-title": "Nişanları redaktə etmə", - "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|notice|notices}}", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|bildiriş}}", "visualeditor-editnotices-tooltip": "Redaktə bildirişləri", - "visualeditor-editsummary": "Edilən dəyişikliklərin izahı", + "visualeditor-editsummary": "Nəyi dəyişdiyinizi təsvir edin", "visualeditor-editsummary-characters-remaining": "Qalan simvolların sayı", - "visualeditor-educationpopup-dismiss": "Tamam, başa düşdüm", + "visualeditor-educationpopup-dismiss": "Oldu, başa düşdüm", "visualeditor-expandable-less": "Daha az", "visualeditor-expandable-more": "Daha çox", "visualeditor-feedback-defaultmessage": "URL: $1", - "visualeditor-formatdropdown-format-mw-heading1": "Səhifənin adı", + "visualeditor-formatdropdown-format-mw-heading1": "Səhifə başlığı", "visualeditor-formatdropdown-format-mw-heading2": "Başlıq", "visualeditor-formatdropdown-format-mw-heading3": "Alt başlıq 1", "visualeditor-formatdropdown-format-mw-heading4": "Alt başlıq 2", @@ -254,6 +257,7 @@ "visualeditor-includes-includeonly-description": "Bu səhifədəki məzmun başqa bir səhifə tərəfindən istifadə edildikdə, aşağıdakı əlavə məzmun buraya daxil olacaq:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Qismən keçid haqqında daha çox məlumat əldə edin]", "visualeditor-languages-tool": "Dillər", + "visualeditor-linkcontext-uneditable": "Təəssüf ki, hal-hazırda bu keçidin redaktəsi yalnız vikimətn rejimində mümkündür.", "visualeditor-linkinspector-button-link-external": "Xarici sayt", "visualeditor-linkinspector-button-link-internal": "Daxili səhifələrdə axtar", "visualeditor-linkinspector-convert-link-isbn": "ISBN keçidinə çevir", @@ -261,9 +265,9 @@ "visualeditor-linkinspector-convert-link-rfc": "RFC keçidinə çevir", "visualeditor-linkinspector-educationpopup-text": "Digər viki məqalələrinə və ya hətta digər veb saytlara vacib sözlərlə keçid verin. Bu oxucuların məzmunu anlamalarına kömək edəcək.", "visualeditor-linkinspector-educationpopup-title": "Keçidlər", - "visualeditor-linkinspector-illegal-title": "Yanlış səhifənin adı", + "visualeditor-linkinspector-illegal-title": "Etibarsız səhifə başlığı", "visualeditor-linkinspector-invalid-blocked": "Bu vikidəki insanlar bu sayta keçidləri bloklamaq qərarına gəliblər. Zəhmət olmasa, başqa link yoxlayın.", - "visualeditor-linkinspector-invalid-external": "URL əlavə edin, məs. https://numune.org", + "visualeditor-linkinspector-invalid-external": "URL daxil edin, məs. https://example.org", "visualeditor-linknodeinspector-add-label": "Etiket əlavə et", "visualeditor-linknodeinspector-title": "Sadə keçid", "visualeditor-magiclinknodeinspector-convert-link": "Sadə keçidə çevir", @@ -273,19 +277,19 @@ "visualeditor-media-title-audio": "Audio", "visualeditor-media-title-image": "Şəkil", "visualeditor-media-title-video": "Video", - "visualeditor-meta-tool": "Nizamlamalar", + "visualeditor-meta-tool": "Seçimlər", "visualeditor-mweditmode-tooltip": "Redaktoru dəyiş", "visualeditor-mweditmodesource-progress": "Mənbə redaktəsinə keçilir…", - "visualeditor-mweditmodesource-tool-current": "İlkin mətnin redaktəsi", - "visualeditor-mweditmodesource-tool-unavailable": "Mənbə redaktəsi burda mövcud deyil", - "visualeditor-mweditmodeve-popup-body": "Siz hər an bu təsvirə tıqlayaraq vizual redaktəyə keçə bilərsiniz.", - "visualeditor-mweditmodeve-popup-title": "Siz ilkin mətnin redaktəsinə keçid etdiniz", + "visualeditor-mweditmodesource-tool-current": "Mənbə kodunun redaktəsi", + "visualeditor-mweditmodesource-tool-unavailable": "Mənbə redaktəsi burada əlçatan deyil", + "visualeditor-mweditmodeve-popup-body": "İstənilən vaxt bu işarəyə klikləməklə vizual redaktəyə qayıda bilərsiniz.", + "visualeditor-mweditmodeve-popup-title": "Mənbə redaktəsinə keçdiniz", "visualeditor-mweditmodeve-progress": "Vizual redaktəyə keçilir…", - "visualeditor-mweditmodeve-showagain": "Bu bildirişi təkrar göstərmə", + "visualeditor-mweditmodeve-showagain": "Bu mesajı bir daha göstərmə", "visualeditor-mweditmodeve-tool-current": "Vizual redaktə", - "visualeditor-mweditmodeve-tool-unavailable": "Vizual redaktə burda mövcud deyil", - "visualeditor-mweditmodewt-popup-body": "Siz istənilən an bu nişana tıqlayaraq yenidən ilkin mətnin redaktəsinə keçid edə bilərsiniz.", - "visualeditor-mweditmodewt-popup-title": "Siz vizual redaktə alətinə keçid etdiniz", + "visualeditor-mweditmodeve-tool-unavailable": "Vizual redaktə burada əlçatan deyil", + "visualeditor-mweditmodewt-popup-body": "İstənilən vaxt bu işarəyə klikləməklə mənbə redaktəsinə qayıda bilərsiniz.", + "visualeditor-mweditmodewt-popup-title": "Siz vizual redaktəyə keçdiniz", "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|şəkil}}", "visualeditor-mwgallerydialog-caption-field-label": "Qalereya başlığı", "visualeditor-mwgallerydialog-card-images": "Şəkillər", @@ -313,9 +317,9 @@ "visualeditor-mwgallerydialog-widths-input-placeholder": "Defolt: $1 px", "visualeditor-mwpredialog-convert": "Mətn stilləşdirilməsinə icazə ver", "visualeditor-mwpredialog-title": "Öncədən formatlaşdırılmış düz mətn", - "visualeditor-mwsignature-tool": "Sizin imzanız", + "visualeditor-mwsignature-tool": "İmzanız", "visualeditor-preference-visualeditor": "Vizual redaktoru aktivləşdir", - "visualeditor-preference-newwikitexteditor-enable": "Fərqli bir vikimətn redaktoru yerinə vizual redaktorda vikimətn rejimini istifadə et", + "visualeditor-preference-newwikitexteditor-enable": "Fərqli vikimətn redaktoru əvəzinə vizual redaktor daxilində vikimətn rejimindən istifadə et", "visualeditor-preference-newwikitexteditor-help": "Bu funksiya bəzən \"2017 vikimətn redaktoru\" da adlanır.", "visualeditor-preference-tabs": "Redaktə rejimi:", "visualeditor-preference-tabs-multi-tab": "Mənə hər iki redaktor bölməsini də göstər", @@ -337,19 +341,19 @@ "visualeditor-savedialog-keyboard-shortcut-submit": "Redaktənizi saxlamaq üçün $1 basa bilərsiniz.", "visualeditor-savedialog-label-publish-short": "Yayımla", "visualeditor-savedialog-label-publish-short-start": "Yayımla...", - "visualeditor-savedialog-label-resolve-conflict": "Münaqişənin həlli", - "visualeditor-savedialog-label-resume-editing": "Redaktəyə qayıt", + "visualeditor-savedialog-label-resolve-conflict": "Münaqişəni həll et", + "visualeditor-savedialog-label-resume-editing": "Redaktəyə davam et", "visualeditor-savedialog-label-review": "Dəyişikliklərinizi gözdən keçirin", - "visualeditor-savedialog-label-review-good": "Qeydetmə formasına geri dön", + "visualeditor-savedialog-label-review-good": "Yadda saxlama formasına qayıt", "visualeditor-savedialog-label-save-short": "Yadda saxla", "visualeditor-savedialog-label-save-short-start": "Yadda saxla...", "visualeditor-savedialog-review-nosummary": "Redaktənin izahı yoxdur", "visualeditor-savedialog-review-visual": "Vizual", "visualeditor-savedialog-review-wikitext": "Vikimətn", - "visualeditor-savedialog-title-conflict": "Konflikt", + "visualeditor-savedialog-title-conflict": "Münaqişə", "visualeditor-savedialog-title-preview": "Dəyişikliklərinizi gözdən keçirin", - "visualeditor-savedialog-title-review": "Dəyişikliklərə bax", - "visualeditor-savedialog-title-save": "Yadda saxla", + "visualeditor-savedialog-title-review": "Dəyişikliklərinizi gözdən keçirin", + "visualeditor-savedialog-title-save": "Dəyişikliklərinizi yadda saxla", "visualeditor-section-body-placeholder": "Yeni bölmə", "visualeditor-section-title-placeholder": "Mövzu", "visualeditor-loaderror-revidconflict": "Serverdən qayıdan versiya nömrələri uyğun gəlmir (sənəd: $1, metadata: $2).", @@ -362,7 +366,7 @@ "visualeditor-tooltip-non-breaking-space": "Qırılmayan boşluq", "visualeditor-version-label": "Versiya", "visualeditor-wikitext-progress": "Vikimətn yaradılır", - "visualeditor-wikitext-warning": "Vizual redaktor istifadə edirsiniz - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|vikimətn]] burada işləmir. Dəyişikliklərinizi itirmədən istənilən vaxt mənbə redaktəsinə keçmək üçün dəyiş düyməsini basın.", + "visualeditor-wikitext-warning": "Siz vizual redaktor istifadə edirsiniz - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|vikimətn]] burada işləmir. Dəyişikliklərinizi itirmədən istənilən vaxt mənbə redaktəsinə keçmək üçün dəyiş düyməsini basın.", "visualeditor-wikitext-warning-title": "Vikimətn aşkarlandı", "visualeditor-wikitextconvert-title": "Formatlaşdırmanı vikimətnə çevir?", "visualeditor-wikitextconvert-message": "Zəngin formatlı məzmun yapışdırdınız. Bu formatlaşdırmanı vikimətnə çevirmək istəyirsiniz?", diff --git a/i18n/ve-mw/ba.json b/i18n/ve-mw/ba.json index e4a0c300cd..0188801f5f 100644 --- a/i18n/ve-mw/ba.json +++ b/i18n/ve-mw/ba.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "AiseluRB", - "Amire80", "Assele", "Bashkorttan", "Haqmar", diff --git a/i18n/ve-mw/ban.json b/i18n/ve-mw/ban.json index 7007e2b12f..541fa68b9a 100644 --- a/i18n/ve-mw/ban.json +++ b/i18n/ve-mw/ban.json @@ -12,6 +12,9 @@ "collabpad-import-subtitle": "Kaimpor saking $1", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Uah kaca puniki", + "tooltip-ca-ve-edit-local": "Uah kaca déskripsi lokal", + "tooltip-ca-ve-create": "Kardi kaca puniki", + "tooltip-ca-ve-create-local": "Kardi kaca déskripsi lokal", "tooltip-ca-editsource": "Uah kode wit kaca puniki", "tooltip-ca-createsource": "Kardi kode wit kaca puniki", "visualeditor-advancedsettings-tool": "Setélan lantur", @@ -45,11 +48,9 @@ "visualeditor-dialog-media-info-artist": "Kaunggah olih $1", "visualeditor-dialog-media-info-audiofile": "Berkas swara", "visualeditor-dialog-media-info-created": "Kakardi:$1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Pangripta: $1", "visualeditor-dialog-media-info-moreinfo": "Pidarta lianan", "visualeditor-dialog-media-info-readmore": "Wacén malih", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Kaunggahang:$1", "visualeditor-dialog-media-page-advanced": "Lanturan", "visualeditor-dialog-media-page-general": "Umum", diff --git a/i18n/ve-mw/be-tarask.json b/i18n/ve-mw/be-tarask.json index 04a5568535..d0df86db79 100644 --- a/i18n/ve-mw/be-tarask.json +++ b/i18n/ve-mw/be-tarask.json @@ -7,15 +7,19 @@ "TMg", "Wizardist", "Zedlik", - "Чаховіч Уладзіслаў" + "Чаховіч Уладзіслаў", + "Ucukor" ] }, "collabpad-doctitle": "CollabPad: $1", "collabpad-import-subtitle": "Імпартавана з $1", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Рэдагаваць гэтую старонку", - "tooltip-ca-editsource": "Рэдагаваць крынічны тэкст гэтай старонкі", + "tooltip-ca-ve-create": "Стварыць гэтую старонку", + "tooltip-ca-editsource": "Рэдагаваць крынічны код гэтай старонкі", + "tooltip-ca-editsource-local": "Рэдагаваць крынічны код старонкі лякальнага апісаньня", "tooltip-ca-createsource": "Стварыць крынічны код гэтай старонкі", + "tooltip-ca-createsource-local": "Стварыць крынічны код старонкі лякальнага апісаньня", "visualeditor-advancedsettings-tool": "Дадатковыя налады", "visualeditor-autosave-modified-prompt-accept": "Працягнуць рэдагаваньне", "visualeditor-autosave-modified-prompt-message": "Гэтая старонка была адрэдагаваная з моманту вашай апошняй загрузкі. {{GENDER:|Вы}} хочаце працягнуць рэдагаваньне старой вэрсіі ці пачаць новае рэдагаваньне апошняй?", @@ -26,11 +30,12 @@ "visualeditor-autosave-recovered-text": "Вашыя незахаваныя зьмены аўтаматычна адноўленыя.", "visualeditor-autosave-recovered-title": "Зьмены адноўленыя", "visualeditor-backbutton-tooltip": "Вярнуцца", - "visualeditor-ca-createlocaldescriptionsource": "Дадаць крыніцу лякальнага апісаньня", - "visualeditor-ca-createsource": "Стварыць крыніцу", - "visualeditor-ca-editlocaldescriptionsource": "Рэдагаваць крыніцу лякальнага апісаньня", - "visualeditor-ca-editsource": "Рэдагаваць крыніцу", - "visualeditor-ca-editsource-section": "рэдагаваць крыніцу", + "visualeditor-ca-createlocaldescriptionsource": "Дадаць код лякальнага апісаньня", + "visualeditor-ca-createsource": "Стварыць код", + "visualeditor-ca-editlocaldescriptionsource": "Рэдагаваць код лякальнага апісаньня", + "visualeditor-ca-editsource": "Рэдагаваць код", + "visualeditor-ca-editsource-section": "рэдагаваць код", + "visualeditor-ca-editsource-section-hint": "Рэдагаваць код разьдзелу: $1", "visualeditor-categories-tool": "Катэгорыі", "visualeditor-changedesc-mwlanguagevariant": "Зьмененая разьметка варыянту мовы", "visualeditor-changedesc-mwredirect": "Мэта перанакіраваньня зьмененая з $1 на $2", @@ -40,11 +45,11 @@ "visualeditor-dialog-media-alttext-section": "Альтэрнатыўны тэкст", "visualeditor-dialog-media-alttext-section-help": "Вы можаце падаць тут тэкст апісаньня для людзей, якія ня бачаць элемэнту. Апісаньне мусіць быць дастаткова падрабязным, каб яны зразумелі прызначэньне і зьмест, перададзеныя элемэнтам інфармацыі. Гэта неабходна сьляпым і іншым людзям, якія карыстаюцца экраннымі чытачамі альбо тэкставымі браўзэрамі.", "visualeditor-dialog-media-change-image": "Зьмяніць выяву", - "visualeditor-dialog-media-choose-image": "Выкарыстаць гэтую выяву", + "visualeditor-dialog-media-choose-image": "Ужыць гэтую выяву", "visualeditor-dialog-media-content-description-link": "(старонка апісаньня)", "visualeditor-dialog-media-content-filename": "Імя файла", "visualeditor-dialog-media-content-section": "Подпіс", - "visualeditor-dialog-media-content-section-help": "Вы можаце падаць тут загаловак, які будзе адлюстроўвацца для ўсіх чытачоў побач з элемэнтам. Часта гэта прымяняецца для тлумачэньня, чаму элемэнт мае дачыненьне да кантэксту, у якім выкарыстаны. Подпіс мае быць сьціслым і інфарматыўным.", + "visualeditor-dialog-media-content-section-help": "Вы можаце падаць тут загаловак, які будзе паказаны для ўсіх чытачоў побач з элемэнтам. Часта гэта прымяняецца для тлумачэньня, чаму элемэнт мае дачыненьне да кантэксту, у якім выкарыстаны. Подпіс мае быць сьціслым і інфарматыўным.", "visualeditor-dialog-media-goback": "Назад", "visualeditor-dialog-media-info-artist": "Загружана $1", "visualeditor-dialog-media-info-audiofile": "Аўдыёфайл", @@ -63,14 +68,14 @@ "visualeditor-dialog-media-search-tab-search": "Пошук", "visualeditor-dialog-media-search-tab-upload": "Загрузіць", "visualeditor-dialog-media-size-section": "Памер выявы", - "visualeditor-dialog-media-size-section-help": "Вы можаце пазначыць памэр гэтага мэдыяэлемэнту на старонцы. Амаль заўсёды гэта будзе звычайны памер, паколькі ўласныя памеры будуць перасякацца з выглядам старонкі і зробяць яе нязручнаю для чытачоў.", + "visualeditor-dialog-media-size-section-help": "Вы можаце пазначыць памэр гэтага мэдыяэлемэнту на старонцы. Амаль заўсёды гэта будзе звычайны памер, бо ўласныя памеры будуць перасякацца з выглядам старонкі і зробяць яе нязручнаю для чытачоў.", "visualeditor-dialog-media-title": "Налады мэдыяў", "visualeditor-dialog-media-type-border": "Граніца", "visualeditor-dialog-media-type-frame": "Рамка", "visualeditor-dialog-media-type-frameless": "Бяз рамкі", "visualeditor-dialog-media-type-none": "Базавая", "visualeditor-dialog-media-type-section": "Тып выявы", - "visualeditor-dialog-media-type-section-help": "Вы можаце пазначыць, як мэдыяэлемэнт будзе адлюстроўвацца на старонцы. У большасьці выпадкаў гэта мусіць быць фармат мініятуры, каб адпавядаць іншым старонкам.", + "visualeditor-dialog-media-type-section-help": "Вы можаце пазначыць, як мэдыяэлемэнт будзе паказаны на старонцы. У большасьці выпадкаў гэта мусіць быць фармат мініятуры, каб адпавядаць іншым старонкам.", "visualeditor-dialog-media-type-thumb": "Мініятура", "visualeditor-dialog-media-upload": "Загрузіць", "visualeditor-dialog-meta-advancedsettings-label": "Дадатковыя налады", @@ -78,8 +83,8 @@ "visualeditor-dialog-meta-categories-category": "Катэгорыя", "visualeditor-dialog-meta-categories-data-label": "Катэгорыі", "visualeditor-dialog-meta-categories-defaultsort-help": "Вы можаце перапрызначыць сартаваньне гэтай старонкі ў катэгорыі, задаўшы іншы індэкс для сартаваньня. Звычайна гэта робіцца ў старонках пра асобаў, якія мусяць быць адсартаваныя паводле прозьвішчаў, але пачынацца зь імені.", - "visualeditor-dialog-meta-categories-defaultsort-label": "Сартыраваць гэтую старонку дапомна як", - "visualeditor-dialog-meta-categories-hidden": "Гэтая катэгорыя не адлюстроўваецца на старонках, на якія дададзеная.", + "visualeditor-dialog-meta-categories-defaultsort-label": "Сартаваць гэтую старонку перадвызначана як", + "visualeditor-dialog-meta-categories-hidden": "Гэтая катэгорыя не паказваецца на старонках, на якія дададзеная.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Схаваныя катэгорыі", "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Пасуючыя катэгорыі", "visualeditor-dialog-meta-categories-input-movecategorylabel": "Перасунуць гэтую катэгорыю сюды", @@ -93,22 +98,22 @@ "visualeditor-dialog-meta-languages-label": "Мовы", "visualeditor-dialog-meta-languages-link-label": "Злучаная старонка", "visualeditor-dialog-meta-languages-name-label": "Мова", - "visualeditor-dialog-meta-languages-readonlynote": "Гэта сьпіс старонак на іншых мовах, зь якімі злучаная гэтая старонка. Пакуль што яго можна зьмяніць толькі ў рэжыме рэдагаваньня тэксту або ў Вікізьвестках.", + "visualeditor-dialog-meta-languages-readonlynote": "Гэта сьпіс старонак на іншых мовах, зь якімі злучаная гэтая старонка. Пакуль што яго можна зьмяніць толькі ў рэжыме рэдагаваньня коду або ў Вікізьвестках.", "visualeditor-dialog-meta-languages-section": "Мовы", - "visualeditor-dialog-meta-settings-displaytitle": "Загаловак для адлюстраваньня", - "visualeditor-dialog-meta-settings-displaytitle-help": "Вы можаце перавызначыць адлюстраваньне загалоўку гэтае старонкі, задаўшы іншую метку.", - "visualeditor-dialog-meta-settings-hiddencat-help": "Вы можаце прадухіліць адлюстраваньне гэтай катэгорыі ў сьпісе катэгорыяў на старонках, залічаных у яе. Гэта зручна для катэгорыяў, патрэбных рэдактарам, а не чытачам (напрыклад, старонкі, якім не стае выяваў).", + "visualeditor-dialog-meta-settings-displaytitle": "Загаловак для паказваньня", + "visualeditor-dialog-meta-settings-displaytitle-help": "Вы можаце перавызначыць паказ загалоўку гэтае старонкі, задаўшы іншую метку.", + "visualeditor-dialog-meta-settings-hiddencat-help": "Вы можаце прадухіліць паказ гэтай катэгорыі ў сьпісе катэгорыяў на старонках, што належаць да яе. Гэта зручна для катэгорыяў, патрэбных рэдактарам, а не чытачам (напрыклад, старонкі, якім не стае выяваў).", "visualeditor-dialog-meta-settings-hiddencat-label": "Схаваная катэгорыя", - "visualeditor-dialog-meta-settings-index-default": "Дапомна", + "visualeditor-dialog-meta-settings-index-default": "Перадвызначана", "visualeditor-dialog-meta-settings-index-disable": "Не", "visualeditor-dialog-meta-settings-index-force": "Так", "visualeditor-dialog-meta-settings-index-help": "Вы можаце прымусова пазначыць, каб пошукавыя рухавікі ўключалі гэтую старонку ў вынікі па адпаведных запытах, ці наадварот, не рабілі гэтага. Гэтая налада не ўплывае на ўнутраны пошук сайту.", "visualeditor-dialog-meta-settings-index-label": "Дазволіць індэксаваньне гэтай старонкі пошукавымі сыстэмамі", "visualeditor-dialog-meta-settings-label": "Парамэтры старонкі", - "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Дапомна", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Перадвызначана", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Не", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Так", - "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Вы можаце прымусова адлюстраваць на гэтай старонцы побач з закладкай «$1» дадатковую закладку, якая спросьціць даданьне новага разьдзелу, ці наадварот, прымусова не адлюстроўваць яе, калі яна адлюстроўваецца.", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Вы можаце прымусова паказаць на гэтай старонцы побач з закладкай «$1» дадатковую закладку, якая спросьціць даданьне новага разьдзелу, ці наадварот, прымусова не паказваць яе, калі яна паказваецца.", "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Паказваць на гэтай старонцы закладку для даданьня новага разьдзелу", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Не канвэртаваць зьмест паміж моўнымі варыянтамі", "visualeditor-dialog-meta-settings-noeditsection-label": "Адключыць спасылкі на рэдагаваньне побач з кожным загалоўкам на гэтай старонцы.", @@ -127,20 +132,21 @@ "visualeditor-dialog-transclusion-add-template": "Дадаць шаблён", "visualeditor-dialog-transclusion-collapse-options": "Схаваць парамэтры", "visualeditor-dialog-transclusion-contextitem-description": "Атрымана з: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Ладаваньне...", "visualeditor-dialog-transclusion-expand-options": "Паказаць парамэтры", "visualeditor-dialog-transclusion-deprecated-parameter": "Састарэлае поле", "visualeditor-dialog-transclusion-deprecated-parameter-description": "Поле састарэла. $1", "visualeditor-dialog-transclusion-loading": "Загрузка…", "visualeditor-dialog-transclusion-no-template-description": "Шаблён «$1» яшчэ ня мае апісаньня, але некаторыя зьвесткі могуць утрымлівацца на [[$2|старонцы шаблёну]].", - "visualeditor-dialog-transclusion-param-default": "Дапомна: $1", + "visualeditor-dialog-transclusion-param-default": "Перадвызначана: $1", "visualeditor-dialog-transclusion-required-parameter": "Абавязковае поле", "visualeditor-dialog-transclusion-required-parameter-description": "Поле зьяўляецца абавязковым.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Вярнуцца", - "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Усё адно працягнуць", - "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|1=Адсутнічае абавязковы парамэтар|Адсутнічаюць абавязковыя парамэтры}}", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Працягнуць так ці інакш", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|1=Бракуе абавязковага парамэтру|Бракуе абавязковых парамэтраў}}", "visualeditor-dialogbutton-media-tooltip": "Выявы і мультымэдыі", "visualeditor-dialogbutton-template-tooltip": "Шаблён", - "visualeditor-editconflict": "Не атрымалася захаваць вашыя зьмены з-за канфлікту рэдагаваньняў. Ці {{GENDER:|не жадаеце}} разьвязаць канфлікт уласнаруч?", + "visualeditor-editconflict": "Не ўдалося захаваць вашыя зьмены праз канфлікт рэдагаваньняў. Ці {{GENDER:|не жадаеце}} разьвязаць канфлікт уласнаруч?", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|заўвага|заўвагі|заўваг}}", "visualeditor-editnotices-tooltip": "Заўвагі да рэдагаваньня", "visualeditor-editsummary": "Апішыце вашыя зьмены", @@ -153,6 +159,7 @@ "visualeditor-formatdropdown-format-mw-heading5": "Падзагаловак 3", "visualeditor-formatdropdown-format-mw-heading6": "Падзагаловак 4", "visualeditor-languages-tool": "Мовы", + "visualeditor-linkcontext-uneditable": "На жаль, гэтую спасылку можна зьмяніць толькі ў рэдактары коду.", "visualeditor-linkinspector-button-link-external": "Вонкавая бачына", "visualeditor-linkinspector-button-link-internal": "Пошук унутраных старонак", "visualeditor-linkinspector-educationpopup-text": "Рабіце спасылкі з важных тэрмінаў на іншыя артыкулы або нават сайты. Гэта дапаможа чытачам зразумець кантэкст.", @@ -162,17 +169,22 @@ "visualeditor-linknodeinspector-title": "Простая спасылка", "visualeditor-magiclinknodeinspector-convert-link": "Ператварыць у простую спасылку", "visualeditor-meta-tool": "Налады", - "visualeditor-mweditmodeve-popup-body": "Вы можаце вярнуцца да візуальнага рэдагаваньня ў любы момант, калі націсьніце на гэты значак.", - "visualeditor-mweditmodeve-popup-title": "Вы перайшлі да рэдагаваньня вікітэксту", + "visualeditor-mweditmodesource-progress": "Пераход да рэдагаваньня коду...", + "visualeditor-mweditmodesource-tool-current": "Рэдагаваньне коду", + "visualeditor-mweditmodesource-tool-unavailable": "Рэдагаваньне коду тут немагчымае", + "visualeditor-mweditmodeve-popup-body": "Вы можаце вярнуцца да візуальнага рэдагаваньня ў будзь-які момант, калі націсьніце на гэты значак.", + "visualeditor-mweditmodeve-popup-title": "Вы перайшлі да рэдагаваньня коду", "visualeditor-mweditmodeve-tool-current": "Візуальнае рэдагаваньне", "visualeditor-mweditmodeve-tool-unavailable": "Візуальнае рэдагаваньне тут немагчымае", + "visualeditor-mweditmodewt-popup-body": "Заўжды можна павяртацца да рэдагаваньня коду, націснуўшы гэтую кнопку.", "visualeditor-mwgallerydialog-title": "Галерэя", "visualeditor-mwsignature-tool": "Ваш подпіс", "visualeditor-preference-visualeditor": "Уключыць візуальны рэдактар", "visualeditor-preference-newwikitexteditor-enable": "Выкарыстоўваць рэжым вікіразьметкі ўнутры візуальнага рэдактара замест іншага рэдактара вікіразьметкі.", "visualeditor-preference-newwikitexteditor-help": "Часам яго называюць „рэдактарам вікітэксту-2017“.", + "visualeditor-preference-tabs-prefer-wt": "Заўжды адкрываць рэдактар коду", "visualeditor-savedialog-identify-anon": "Вы болей не ў сыстэме. Калі працягнеце, ваш IP-адрас трапіць у гісторыю рэдагаваньняў гэтай старонкі.", - "visualeditor-savedialog-identify-user": "Вы ўвайшлі як [[User:$1|$1]]. Калі працягнеце, вашая праўка будзе запісаная на ваш рахунак.", + "visualeditor-savedialog-identify-user": "Вы ўвайшлі як [[User:$1|$1]]. Калі працягнеце, вашае рэдагаваньне будзе запісанае на ваш рахунак.", "visualeditor-savedialog-label-resolve-conflict": "Разьвязаць канфлікт", "visualeditor-savedialog-label-review": "Праверыць зьмены", "visualeditor-savedialog-label-review-good": "Вярнуцца да захаваньня", @@ -184,6 +196,6 @@ "visualeditor-savedialog-title-save": "Захаваць зьмены", "visualeditor-settings-tool": "Парамэтры старонкі", "visualeditor-version-label": "Вэрсія", - "visualeditor-wikitext-warning": "Вы карыстаецеся візуальным рэдактарам — [[{{MediaWiki:visualeditor-wikitext-warning-link}}|вікітэкст]] тут не працуе. Каб пераключыцца на рэдагаваньне вікітэксту ў любы момант бяз страты зьменаў, націсьніце кнопку пераключэньня.", + "visualeditor-wikitext-warning": "Вы карыстаецеся візуальным рэдактарам — [[{{MediaWiki:visualeditor-wikitext-warning-link}}|вікітэкст]] тут не працуе. Каб пераключыцца на рэдагаваньне вікітэксту ў будзь-які момант бяз страты зьменаў, націсьніце кнопку пераключэньня.", "visualeditor-wikitext-warning-title": "Выяўленае ўжываньне вікітэксту" } diff --git a/i18n/ve-mw/be.json b/i18n/ve-mw/be.json index 10259a9a2b..abe56f1c6b 100644 --- a/i18n/ve-mw/be.json +++ b/i18n/ve-mw/be.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Artificial123", "Artsiom91", "Chadyka", @@ -15,7 +14,8 @@ "Tīgelika", "ZlyiLev", "Дзяніс Тутэйшы", - "Чаховіч Уладзіслаў" + "Чаховіч Уладзіслаў", + "Ucukor" ] }, "collabpad-doctitle": "CollabPad: $1", @@ -170,10 +170,10 @@ "visualeditor-dialog-transclusion-add-template-button": "Дадаць шаблон", "visualeditor-dialog-transclusion-add-template-save": "Дадаць", "visualeditor-dialog-transclusion-add-undocumented-param": "Дадаць недакументаваны параметр", - "visualeditor-dialog-transclusion-back-confirmation-prompt": "Вярнуцца да пошуку? Вашы змяненні будуць страчаны і гэта нельга будзе адмяніць.", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Вярнуцца да пошуку? Вашы змяненні будуць страчаны і гэта нельга будзе адрабіць.", "visualeditor-dialog-transclusion-close-confirmation-prompt": "Закрыць рэдактар шаблонаў? Вашы змены страцяцца і іх нельга будзе вярнуць.", "visualeditor-dialog-transclusion-collapse-options": "Схаваць параметры", - "visualeditor-dialog-transclusion-confirmation-discard": "Адмяніць змены", + "visualeditor-dialog-transclusion-confirmation-discard": "Адхіліць праўкі", "visualeditor-dialog-transclusion-confirmation-reject": "Працягнуць праўку", "visualeditor-dialog-transclusion-contextitem-description": "Атрымана з: $1", "visualeditor-dialog-transclusion-contextitem-loading": "Загрузка...", @@ -192,7 +192,7 @@ "visualeditor-dialog-transclusion-loading": "Загрузка...", "visualeditor-dialog-transclusion-multipart-message": "Зараз вы правіце шаблон і адну або некалькі частак [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content звязанага зместу] (вікі-тэкст ці дадатковыя шаблоны).", "visualeditor-dialog-transclusion-no-template-data-description": "У гэтым шаблоне адсутнічаюць [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData], і яго параметры былі [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters згенераваны аўтаматычна]. У выніку ў шаблоне і яго параметрах няма апісанняў. Дадатковая інфармацыя можа знайсціся на [[$1|старонцы шаблону]].", - "visualeditor-dialog-transclusion-no-template-description": "Шаблон «$1» яшчэ не мае апісання, але некаторыя звесткі могуць утрымлівацца на [[$2|старонцы шаблону]].", + "visualeditor-dialog-transclusion-no-template-description": "Шаблон «$1» пакуль не мае апісання, але некаторая інфармацыя можа быць на [[$2|старонцы шаблона]].", "visualeditor-dialog-transclusion-no-template-parameters": "Гэты шаблон не мае дакументаваных параметраў і можа быць прызначаны для выкарыстання без іх.", "visualeditor-dialog-transclusion-param-default": "Прадвызначана: $1", "visualeditor-dialog-transclusion-param-example-long": "Прыклад: $1", @@ -219,7 +219,7 @@ "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Націсніце Ctrl+Del, каб выдаліць элемент вікіразметкі.", "visualeditor-dialogbutton-media-tooltip": "Выявы і медыя", "visualeditor-dialogbutton-template-tooltip": "Шаблон", - "visualeditor-editconflict": "Вашы змены не атрымалася запісаць, таму што адбыўся канфлікт правак. Жадаеце вырашыць канфлікт уручную?", + "visualeditor-editconflict": "Вашы змены не атрымалася запісаць, таму што адбыўся канфлікт правак. Жадаеце развязаць канфлікт самастойна?", "visualeditor-editingtabdialog-body": "Цяпер пляцоўка {{SITENAME}} запомніла якому рэдактару вы аддаеце перавагу. Вы можаце пераключаць рэжым падчас праўкі і змяняць свае перавагі пазней.", "visualeditor-editingtabdialog-ok": "Выкарыстоўваць рэдактар, як у сваёй апошняй праўцы", "visualeditor-editingtabdialog-title": "Укладкі праўкі", diff --git a/i18n/ve-mw/bg.json b/i18n/ve-mw/bg.json index ff629b7174..ae6262f2f1 100644 --- a/i18n/ve-mw/bg.json +++ b/i18n/ve-mw/bg.json @@ -54,7 +54,6 @@ "visualeditor-dialog-media-info-meta-artist": "Автор: $1", "visualeditor-dialog-media-info-moreinfo": "Допълнителна информация", "visualeditor-dialog-media-info-readmore": "Прочетете повече", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Качено: $1", "visualeditor-dialog-media-page-advanced": "Разширени", "visualeditor-dialog-media-page-general": "Основни", @@ -187,7 +186,7 @@ "visualeditor-mweditmodeve-popup-title": "Превключили сте на режим редактиране на кода", "visualeditor-mweditmodeve-progress": "Преминаване към визуално редактиране...", "visualeditor-mweditmodeve-showagain": "Не искам това съобщение да се показва отново", - "visualeditor-mweditmodeve-tool-current": "Визуален редактор", + "visualeditor-mweditmodeve-tool-current": "Визуално редактиране", "visualeditor-mweditmodeve-tool-unavailable": "Визуалното редактиране не е достъпно тук", "visualeditor-mweditmodewt-popup-body": "Можете във всеки момент да се върнете отново към редактиране на кода, като щракнете на тази икона.", "visualeditor-mweditmodewt-popup-title": "Превключили сте на режим визуално редактиране", @@ -255,7 +254,7 @@ "visualeditor-special-characters-group-other": "Често използвани", "visualeditor-templatesused-tool": "Използвани шаблони", "visualeditor-title-error": "Невалидно заглавие.", - "visualeditor-toload": "Режимът на редактиране ще зареди всеки момент. Ако все още виждате това съобщение след няколко секунди, моля [$1 презаредете страницата].", + "visualeditor-toload": "Редакторът ще се зареди сега. Ако все още виждате това съобщение след няколко секунди, моля, [$1 опреснете страницата].", "visualeditor-tooltip-non-breaking-space": "Несекаем интервал", "visualeditor-version-label": "Версия", "visualeditor-wikitext-progress": "Преобразуване на уикитекст", diff --git a/i18n/ve-mw/blc.json b/i18n/ve-mw/blc.json index 4ba09ca5ac..d0962ed0aa 100644 --- a/i18n/ve-mw/blc.json +++ b/i18n/ve-mw/blc.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Muskwatch" ] }, diff --git a/i18n/ve-mw/blk.json b/i18n/ve-mw/blk.json index 793408b362..e20bac7426 100644 --- a/i18n/ve-mw/blk.json +++ b/i18n/ve-mw/blk.json @@ -2,6 +2,7 @@ "@metadata": { "authors": [ "Khun Kt", + "Matma Rex", "Ninjastrikers", "လွိုင်ႏအာထင်ႏထိုထဲင်း", "咽頭べさ" @@ -131,8 +132,8 @@ "visualeditor-mwsignature-tool": "နာꩻစူမုဲင်", "visualeditor-preference-tabs": "ခြပ်ချော်ꩻမုꩻ အနယ်ꩻ:", "visualeditor-preference-tabs-multi-tab": "အွောန်ႏနယ် မွဉ်းဖျင်စနိစ်နီဗာႏလွုမ်း", - "visualeditor-preference-tabs-prefer-ve": "မိဉ်ႏထွာနွောင်ꩻနဝ်ꩻ ဖေႏခါꩻသေႏသေႏသွော့ မွဉ်းဖျင်ထာꩻထီႏစနိစ်သြ", - "visualeditor-preference-tabs-prefer-wt": "မိဉ်ႏထွာနွောင်ꩻနဝ်ꩻ ဖေႏခါꩻသေႏသေႏသွော့ မွဉ်းဖျင်ထာꩻထီႏစနိစ်သြ", + "visualeditor-preference-tabs-prefer-ve": "Always give me the visual editor if possible", + "visualeditor-preference-tabs-prefer-wt": "Always give me the source editor", "visualeditor-preference-tabs-remember-last": "တောင်ꩻယူႏလꩻ အဆုဲင်ꩻသွတ်ꩻ မွဉ်းဖျင်စနိစ်", "visualeditor-rebase-client-export": "ဒင်ႏပသာ", "visualeditor-rebase-client-import": "ဒင်ႏသွင်ꩻသော့ꩻ", diff --git a/i18n/ve-mw/bn.json b/i18n/ve-mw/bn.json index de0eaa54a2..8192eb6c08 100644 --- a/i18n/ve-mw/bn.json +++ b/i18n/ve-mw/bn.json @@ -7,6 +7,7 @@ "Aishik Rehman", "Al Riaz Uddin Ripon", "Ankan", + "Asked42", "Bellayet", "Elias Ahmmad", "Jayantanth", @@ -22,7 +23,8 @@ "YahyA", "Yahya", "আজিজ", - "আফতাবুজ্জামান" + "আফতাবুজ্জামান", + "Bodhisattwa" ] }, "collabpad-doctitle": "কোলাবপ্যাড: $1", @@ -79,7 +81,7 @@ "visualeditor-dialog-media-info-moreinfo": "আরও তথ্য", "visualeditor-dialog-media-info-readmore": "আরও পড়ুন", "visualeditor-dialog-media-info-uploaded": "আপলোড হয়েছে: $1", - "visualeditor-dialog-media-page-advanced": "উচ্চতর", + "visualeditor-dialog-media-page-advanced": "উন্নত", "visualeditor-dialog-media-page-general": "সাধারণ", "visualeditor-dialog-media-position-checkbox": "এই আইটেমটির চারপাশে লেখা মোড়ান", "visualeditor-dialog-media-position-checkbox-help": "আপনি এই মিডিয়া আইটেমটিকে ভাসমান অবস্থায় থাকার পরিবর্তে লাইনের মধ্যে এই পাতার লেখার সঙ্গে দেখাতে পারেন। তবে অতি প্রয়োজন ছাড়া এটি ব্যবহার করবেন না, কারণ আপনি যদি বাক্সটিতে টিকচিহ্ন না দেন তাহলে এটি লেখার প্রবাহকে ভেঙ্গে ফেলবে।", @@ -120,7 +122,7 @@ "visualeditor-dialog-meta-languages-label": "ভাষাসমূহ", "visualeditor-dialog-meta-languages-link-label": "সংযুক্ত নিবন্ধ", "visualeditor-dialog-meta-languages-name-label": "ভাষা", - "visualeditor-dialog-meta-languages-readonlynote": "এটি অন্য ভাষায় পাতার তালিকা যা এই পাতার সাথে সংযুক্ত রয়েছে। এখনকার জন্য এটি শুধুমাত্র উৎস মোডে বা উইকিউপাত্তে সম্পাদনা করা যাবে।", + "visualeditor-dialog-meta-languages-readonlynote": "এটি অন্য ভাষায় পাতার তালিকা যা এই পাতার সাথে সংযুক্ত রয়েছে। এখনকার জন্য এটি শুধু উৎস মোডে বা উইকিউপাত্তে সম্পাদনা করা যাবে।", "visualeditor-dialog-meta-languages-section": "ভাষাসমূহ", "visualeditor-dialog-meta-settings-displaytitle": "শিরোনাম প্রদর্শন", "visualeditor-dialog-meta-settings-displaytitle-help": "আপনি একটি ভিন্ন লেবেল নির্ধারণ করে এই পাতার প্রদর্শনের শিরোনাম প্রতিস্থাপন করতে পারেন।", @@ -308,6 +310,7 @@ "visualeditor-preference-tabs-prefer-ve": "সবসময় দৃশ্যমান সম্পাদনা ব্যবহার করুন, যদি সম্ভব হয়", "visualeditor-preference-tabs-prefer-wt": "সবসময় উৎস সম্পাদক ব্যবহার করুন", "visualeditor-preference-tabs-remember-last": "আমার সর্বশেষ সম্পাদক মনে রেখো", + "visualeditor-preference-collab-label": "সহযোগিতামূলক সম্পাদনা", "visualeditor-rebase-client-export": "রপ্তানি", "visualeditor-rebase-client-export-start": "রপ্তানি...", "visualeditor-rebase-client-import": "আমদানি করুন", diff --git a/i18n/ve-mw/bo.json b/i18n/ve-mw/bo.json index 456a02b18d..cabdbd3685 100644 --- a/i18n/ve-mw/bo.json +++ b/i18n/ve-mw/bo.json @@ -2,9 +2,15 @@ "@metadata": { "authors": [ "Phurbutsering", - "ཁ་བཏགས་ནག་པོ" + "Tenzin Thoesam", + "ཁ་བཏགས་ནག་པོ", + "Dhondup" ] }, "tooltip-ca-ve-edit": "དྲ་ངོས་དེ་རྩོམ་སྒྲིག་བྱ་བ།", + "visualeditor-ca-createlocaldescriptionsource": "ས་གནས་གསལ་བཤད་ཀྱི་ཁུངས་སྣོན།", + "visualeditor-ca-createsource": "མ་ཕྱི་བཟོས།", + "visualeditor-ca-editsource": "མ་ཡིག་དག་བཅོས།", + "visualeditor-ca-editsource-section": "མ་ངོས་ཞུ་དག", "visualeditor-dialog-meta-languages-readonlynote": "འདི་དང་སྐད་ཡིག་གཞན་གྱི་ཝེ་ཁེ་དང་སྦྲེལ་མཐུད་བྱས་ཡོད་པའི་ཤོགངོས་གི་ཐོ་གཞུང། ད་ལྟའི་ཆར་ཡོངས་ཁུངས་ལམ་འམ་ཝེ་ཁེ་གྲངས་མཛོང་ནང་རྩོམ་སྒྲིག་བྱེད་ཆོག།" } diff --git a/i18n/ve-mw/bol.json b/i18n/ve-mw/bol.json index afa2a77972..483636e333 100644 --- a/i18n/ve-mw/bol.json +++ b/i18n/ve-mw/bol.json @@ -1,12 +1,13 @@ { "@metadata": { "authors": [ - "El-hussain14" + "El-hussain14", + "Mbfika" ] }, - "visualeditor-ca-createlocaldescriptionsource": "In sawwe kadi mosa ga konni", + "visualeditor-ca-createlocaldescriptionsource": "In zowa tushe bayani in harshe", "visualeditor-ca-createsource": "Ƙirƙiri tushe", - "visualeditor-ca-editsource": "Ramu zalo", - "visualeditor-ca-editsource-section": "Ramu zalo", + "visualeditor-ca-editsource": "Ramu ko pari", + "visualeditor-ca-editsource-section": "ramu ko pari", "visualeditor-descriptionpagelink": "Project:VisualEditor" } diff --git a/i18n/ve-mw/bom.json b/i18n/ve-mw/bom.json new file mode 100644 index 0000000000..597d87e2bd --- /dev/null +++ b/i18n/ve-mw/bom.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Kambai Akau", + "Rwang PS" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Gwe ha numa tinse", + "visualeditor-ca-createsource": "Wunta tinse", + "visualeditor-ca-editsource": "Yong tin ha", + "visualeditor-ca-editsource-section": "wunta tin" +} diff --git a/i18n/ve-mw/br.json b/i18n/ve-mw/br.json index 42848b6cf8..63eaef6d61 100644 --- a/i18n/ve-mw/br.json +++ b/i18n/ve-mw/br.json @@ -40,12 +40,16 @@ "visualeditor-ca-editlocaldescriptionsource": "Kemmañ deskrivadur lec'hel (mammenn)", "visualeditor-ca-editsource": "Kemmañ ar vammenn", "visualeditor-ca-editsource-section": "kemmañ ar vammenn", + "visualeditor-ca-editsource-section-hint": "Kemmañ kod tarzh ar rann : $1", "visualeditor-categories-tool": "Rummadoù", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Kemmet eo bet an alc'hwez urzhiañ eus $1 da $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Alc'hwez urzhiañ lakaet da $1", "visualeditor-changedesc-mwlanguagevariant": "Balizenn adstumm yezh kemmet", "visualeditor-changedesc-mwredirect": "Pal an adkas kemmet eus $1 da $2", "visualeditor-changedesc-mwtransclusion": "Arventennoù patrom kemmet", "visualeditor-desc": "Gwelaozer evit MediaWiki", "visualeditor-descriptionpagelink": "Project:Gwelaozer", + "visualeditor-dialog-extension-abandonedit": "Ha sur oc'h e fell deoc'h serriñ ar prenestr-mañ hep lakaat ho kemmoù da dalvezout ?", "visualeditor-dialog-media-alttext-checkbox": "Ober gant an alc’hwez evel an destenn all", "visualeditor-dialog-media-alttext-section": "Testenn all", "visualeditor-dialog-media-alttext-section-help": "Gant se e c’hallit aozañ un deskrivadur destenn evit ar re ne c’hallont ket gwelout an elfenn. A-walc’h e tlefe bezañ an deskrivadur evit lakaat anezho da gompren ar pal hag an titouroù roet gant an elfenn media. A-bouez eo evit an implijerien zall ha re all a ra gant meziantoù lennerien skramm pe merdeerioù testenn hepken.", @@ -59,7 +63,6 @@ "visualeditor-dialog-media-info-artist": "Bet karget gant $1", "visualeditor-dialog-media-info-audiofile": "Restr son", "visualeditor-dialog-media-info-created": "Krouet : $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Aozer : $1", "visualeditor-dialog-media-info-moreinfo": "Muioc'h a ditouroù", "visualeditor-dialog-media-info-readmore": "Lenn muioc'h", @@ -135,6 +138,7 @@ "visualeditor-dialog-template-title": "Patrom", "visualeditor-dialog-transclusion-action-save": "Enrollañ", "visualeditor-dialog-transclusion-template-title-nonexistent": "N’eus ket eus ar patrom-mañ.", + "visualeditor-dialog-transclusion-template-widget-aria": "Pouezit war Esaouenn evit dibab ar patrom.", "visualeditor-dialog-transclusion-add-wikitext": "Ouzhpennañ wikitestenn", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "N'haller ket ouzhpennañ div arventenn \"$2\".", "visualeditor-dialog-transclusion-add-param-placeholder": "Anv an arventenn", @@ -172,9 +176,14 @@ "visualeditor-dialog-transclusion-wikitext": "Wikitestenn", "visualeditor-dialogbutton-media-tooltip": "Skeudennoù ha mediaoù", "visualeditor-dialogbutton-template-tooltip": "Patrom", + "visualeditor-editconflict": "N’eo ket bet posupl enrollañ ho kemmoù abalamour d'un tabut kemmañ. Ha fellout a ra {{GENDER:|deoc’h}} diskoulmañ an tabut dre zorn ?", + "visualeditor-editingtabdialog-body": "{{SITENAME}} a zalc'h soñj bremañ pe aozer a gavit gwellañ. Gallout a rit cheñch mod kemmañ pa vezit o kemmañ, ha cheñch ho penndibab diwezhatoc'h.", + "visualeditor-editingtabdialog-ok": "Ober gant an embanner am eus implijet e-kerzh ma c'hemm diwezhañ", + "visualeditor-editingtabdialog-title": "Ivinelloù kemmañ", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|c'hemenn|kemenn}}", "visualeditor-editnotices-tooltip": "Kemennoù aozañ", "visualeditor-editsummary": "Deskrivit ar pezh hoc'h eus cheñchet", + "visualeditor-editsummary-characters-remaining": "An niver a arouezennoù a chom", "visualeditor-educationpopup-dismiss": "Mat eo, deomp dezhi", "visualeditor-expandable-less": "Nebeutoc'h", "visualeditor-expandable-more": "Muioc'h", @@ -244,6 +253,8 @@ "visualeditor-preference-tabs-prefer-ve": "Ober gant ar gwelaozer atav ma c’heller", "visualeditor-preference-tabs-prefer-wt": "Ober gant an aozer mammenn atav", "visualeditor-preference-tabs-remember-last": "Derc'hel soñj eus ma aozer diwezhañ", + "visualeditor-preference-collab-label": "Kemmañ-kenlabour", + "visualeditor-preference-collab-description": "Pediñ implijerien all da gemer perzh en ho talc'h kemmañ er gwelaozer.", "visualeditor-rebase-client-export": "Ezporzhiañ", "visualeditor-rebase-client-export-start": "Ezporzhiañ...", "visualeditor-rebase-client-import": "Enporzhiañ", @@ -252,6 +263,7 @@ "visualeditor-recreate": "Diverket eo bet ar bajen-mañ goude m’ho peus kroget kemmañ anezhi. Pouezit war \"$1$ evit adkrouiñ anezhi.", "visualeditor-redirect-description": "Adkas war-zu $1", "visualeditor-savedialog-identify-anon": "N’oc’h ket kevreet ken. Ma kendalc’hit e vo enrollet ho chomlec’h IP en istor kemmoù ar bajenn-mañ.", + "visualeditor-savedialog-identify-temp": "Emaoc’h oc’h ober gant an anv implijer berrbad $1 . Ma kendalc'hit e vo liammet ho kemm ouzh an anv implijer-mañ.", "visualeditor-savedialog-identify-user": "Kevreet oc’h bremañ evel [[User:$1|$1]]. Ma kendalc’hit e vo liammet ho kemmoù ouzh ar gont-mañ.", "visualeditor-savedialog-keyboard-shortcut-submit": "Gallout a rit klikañ war $1 evit enrollañ ho kemmoù.", "visualeditor-savedialog-label-publish-short": "Embann", @@ -271,15 +283,19 @@ "visualeditor-savedialog-title-save": "Enrollañ ho kemmoù", "visualeditor-section-body-placeholder": "Rann nevez", "visualeditor-section-title-placeholder": "Danvez", + "visualeditor-loaderror-revidconflict": "N'eo ket heñvel an IDoù stumm degaset gant ar servijer (teul : $1, metaroadennoù : $2).", + "visualeditor-loaderror-wrongmode": "Klasket eo bet kargañ an aozer en un doare fall (seurt roadennoù : \"$1\", mod embanner : \"$2\").", "visualeditor-settings-tool": "Arventennoù ar bajenn", "visualeditor-special-characters-group-other": "Implijet alies", "visualeditor-templatesused-tool": "Patromoù implijet", "visualeditor-title-error": "Titl fall.", - "visualeditor-toload": "Emañ ar Gwelaozer o vont da gargañ. Ma welit c'hoazh ar gemennadenn-mañ a-benn un nebeut eilennoù, [$1 kargit ar bajenn en-dro].", + "visualeditor-toload": "Emañ ar gwelaozer o vont da gargañ. Ma welit c'hoazh ar gemennadenn-mañ a-benn un nebeut eilennoù, [$1 freskait ar bajenn].", + "visualeditor-tooltip-non-breaking-space": "Esaouenn zidroc’hadus", "visualeditor-version-label": "Stumm", "visualeditor-wikitext-progress": "O treuzkemm wikitestenn", "visualeditor-wikitext-warning": "Emaoc’h oc’h implijout ar gwelaozer - ne c’heller ket ober gant [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitext]] amañ. Evit mont d’an aozer mammenn pa garit hep koll kemmoù, klikit war Mammenn.", "visualeditor-wikitext-warning-title": "Balizennoù wikitestenn kavet", + "visualeditor-wikitextconvert-title": "Treuzkemm ar furmad e wikitestenn ?", "visualeditor-wikitextconvert-message": "Peget ho peus endalc’had pinvidik e furmad. Ha fellout a re deoc’h treuzkemm ar furmadiñ da wikitestenn?", "visualeditor-wikitextconvert-convert": "Treuzkemm da wikitestenn" } diff --git a/i18n/ve-mw/bs.json b/i18n/ve-mw/bs.json index 80ffed4ecd..aac16682a1 100644 --- a/i18n/ve-mw/bs.json +++ b/i18n/ve-mw/bs.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Aca", "BadDog", "DzWiki", "KWiki", @@ -30,6 +31,7 @@ "visualeditor-changedesc-mwtransclusion": "Promijenjeni parametri šablona", "visualeditor-desc": "Vizualni uređivač za MediaWiki", "visualeditor-descriptionpagelink": "Project:Vizualni uređivač", + "visualeditor-dialog-extension-abandonedit": "Jeste li sigurni da želite zatvoriti ovaj dijaloški okvir bez čuvanja izmjena?", "visualeditor-dialog-media-alttext-section": "Alternativni tekst", "visualeditor-dialog-media-alttext-section-help": "Ovo možete koristiti kako biste napisali opis za osobe koje ne mogu vidjeti ovu stavku. Opis bi trebao biti toliko sadržajan da osobe mogu razumjeti svrhu i informaciju koje im pruža ova stavka. Ovo je od velikog značaja slijepim korisnicima i drugim osobama koje koriste softver za čitanje stavki s ekrana ili preglednike koji samo prikazuju tekst.", "visualeditor-dialog-media-change-image": "Promijeni sliku", @@ -244,6 +246,8 @@ "visualeditor-mwpredialog-title": "Unaprijed formatirani obični tekst", "visualeditor-mwsignature-tool": "Vaš potpis", "visualeditor-preference-visualeditor": "Uključi vizualni uređivač", + "visualeditor-preference-newwikitexteditor-enable": "Koristi režim uređivanja wikiteksta unutar vizualnog uređivača umjesto prebacivanja na drugi uređivač", + "visualeditor-preference-newwikitexteditor-help": "Ponekad se naziva \"uređivač wikiteksta iz 2017.\"", "visualeditor-preference-tabs": "Režim uređivanja:", "visualeditor-preference-tabs-multi-tab": "Prikaži kartice oba uređivača", "visualeditor-preference-tabs-prefer-ve": "Otvori vizualni uređivač kad god je moguće", @@ -272,7 +276,7 @@ "visualeditor-section-body-placeholder": "Novi odlomak", "visualeditor-section-title-placeholder": "Naslov", "visualeditor-settings-tool": "Postavke stranice", - "visualeditor-special-characters-group-other": "Često korišteni", + "visualeditor-special-characters-group-other": "Često korišteno", "visualeditor-templatesused-tool": "Korišteni šabloni", "visualeditor-toload": "Uređivač će se sad učitati. Ako i nakon nekoliko sekundi budete vidjeli ovu poruku, [$1 osvježite stranicu].", "visualeditor-version-label": "Verzija", diff --git a/i18n/ve-mw/btm.json b/i18n/ve-mw/btm.json index 06f0e4bc6c..ad37bdf352 100644 --- a/i18n/ve-mw/btm.json +++ b/i18n/ve-mw/btm.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Simartampua" ] }, diff --git a/i18n/ve-mw/bto.json b/i18n/ve-mw/bto.json index cbeb6c5c3e..05ea2ce9c6 100644 --- a/i18n/ve-mw/bto.json +++ b/i18n/ve-mw/bto.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Filipinayzd" ] }, diff --git a/i18n/ve-mw/bug-bugi.json b/i18n/ve-mw/bug-bugi.json index bf6836b39d..b608f8f5fc 100644 --- a/i18n/ve-mw/bug-bugi.json +++ b/i18n/ve-mw/bug-bugi.json @@ -1,8 +1,11 @@ { "@metadata": { "authors": [ - "Amire80" + "Rdwnnr" ] }, - "tooltip-ca-ve-edit": "ᨄᨉᨙᨌᨙᨂᨗ ᨕᨗᨐᨕᨙ ᨒᨛᨄᨂᨙ" + "tooltip-ca-ve-edit": "ᨄᨉᨙᨌᨙᨂᨗ ᨕᨗᨐᨕᨙ ᨒᨛᨄᨂᨙ", + "visualeditor-ca-createsource": "ᨕᨙᨅᨘ ᨕᨄᨚᨒᨙ", + "visualeditor-ca-editsource": "ᨄᨉᨙᨌᨙ ᨕᨄᨚᨒᨙ", + "visualeditor-ca-editsource-section": "ᨄᨉᨙᨌᨙ ᨕᨄᨚᨒᨙ" } diff --git a/i18n/ve-mw/bug.json b/i18n/ve-mw/bug.json new file mode 100644 index 0000000000..a3ad7cbb29 --- /dev/null +++ b/i18n/ve-mw/bug.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Rdwnnr" + ] + }, + "visualeditor-ca-editsource-section": "padéccéng pabbéré", + "visualeditor-dialog-template-title": "Accuwang", + "visualeditor-dialog-transclusion-add-param-save": "Tambai", + "visualeditor-dialog-transclusion-add-template": "Tambai accuwang", + "visualeditor-dialog-transclusion-add-template-save": "Tambai" +} diff --git a/i18n/ve-mw/ca.json b/i18n/ve-mw/ca.json index 7e4cc229b0..c909ee6d1d 100644 --- a/i18n/ve-mw/ca.json +++ b/i18n/ve-mw/ca.json @@ -12,6 +12,7 @@ "Galactic Thrasher", "Jmarchn", "Kippelboy", + "Lhanars", "Lluis Cat", "Maceleiro", "Macofe", @@ -68,11 +69,9 @@ "visualeditor-dialog-media-info-artist": "Pujat per $1", "visualeditor-dialog-media-info-audiofile": "Fitxer d'àudio", "visualeditor-dialog-media-info-created": "Creat: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Autor: $1", "visualeditor-dialog-media-info-moreinfo": "Més informació", "visualeditor-dialog-media-info-readmore": "Més informació", - "visualeditor-dialog-media-info-separator": ".", "visualeditor-dialog-media-info-uploaded": "Carregat: $1", "visualeditor-dialog-media-page-advanced": "Avançat", "visualeditor-dialog-media-page-general": "General", @@ -157,9 +156,11 @@ "visualeditor-dialog-table-wikitable": "Amb estil (Wikitable)", "visualeditor-dialog-template-title": "Plantilla", "visualeditor-dialog-transclusion-template-title-nonexistent": "Aquesta plantilla no existeix.", + "visualeditor-dialog-transclusion-add-wikitext": "Afegeix el codi wiki", "visualeditor-dialog-transclusion-add-template": "Afegeix una plantilla", "visualeditor-dialog-transclusion-add-template-button": "Afegeix una plantilla", "visualeditor-dialog-transclusion-add-template-save": "Afegeix", + "visualeditor-dialog-transclusion-add-undocumented-param": "Afegeix un paràmetre no documentat.", "visualeditor-dialog-transclusion-close-confirmation-prompt": "Voleu tancar l'editor de plantilles? Perdreu tots els canvis. Aquesta acció no es pot desfer.", "visualeditor-dialog-transclusion-collapse-options": "Amaga les opcions", "visualeditor-dialog-transclusion-confirmation-discard": "Descarta les modificacions.", @@ -175,6 +176,7 @@ "visualeditor-dialog-transclusion-deprecated-parameter": "Camp obsolet", "visualeditor-dialog-transclusion-deprecated-parameter-description": "El camp és obsolet. $1", "visualeditor-dialog-transclusion-loading": "Carregant...", + "visualeditor-dialog-transclusion-multipart-message": "Actualment, editeu una plantilla i una part o més de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content contingut connectat] (sintaxi wiki o plantilles addicionals).", "visualeditor-dialog-transclusion-no-template-data-description": "Aquesta plantilla no posseeix [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] i els seus paràmetres han estat generats [//https://www.mediawiki.org/wiki/Help:VisualEditor/User_guide/ca#Par%C3%A0metres_generats_autom%C3%A0ticament automàticament]. A causa d'això, la plantilla i els seus paràmetres no tenen descripcions. Hi pot haver informació addicional a la [[$1|pàgina de la plantilla]].", "visualeditor-dialog-transclusion-no-template-description": "La plantilla «$1» encara no té descripció, però hi pot haver alguna informació a la [[$2|pàgina de la plantilla]].", "visualeditor-dialog-transclusion-no-template-parameters": "Aquesta plantilla no té paràmetres documentats i potser s'ha d'utilitzar sense.", @@ -186,7 +188,7 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Continua igualment", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Obligatori, hi {{PLURAL:$1|manca $1 paràmetre|manquen $1 paràmetres}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Esteu segur que voleu continuar sense omplir {{PLURAL:$2|el camp|els camps}} $1?", - "visualeditor-dialog-transclusion-see-template": "Les plantilles les generen els usuaris i els poden faltar descripcions completes. Pot ser que hi hagi informació addicional sobre això a [[$2|la pàgina de la plantilla]].", + "visualeditor-dialog-transclusion-see-template": "Les plantilles les generen els usuaris i els poden faltar descripcions completes. Pot ser que hi hagi informació addicional sobre això a la [[$2|pàgina de la plantilla]].", "visualeditor-dialog-transclusion-title-insert-template": "Insereix una plantilla", "visualeditor-dialog-transclusion-title-insert-known-template": "Insereix: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Modifica: $1", @@ -266,6 +268,8 @@ "visualeditor-mwpredialog-convert": "Permet estils de text", "visualeditor-mwpredialog-title": "Text senzill preformatat", "visualeditor-mwsignature-tool": "La vostra signatura", + "visualeditor-preference-visualeditor": "Activa l'editor visual", + "visualeditor-preference-newwikitexteditor-enable": "Utilitza el mode wikitext dins de l'editor visual, en comptes d'un editor de wikitext diferent", "visualeditor-preference-tabs": "Pestanyes d'edició:", "visualeditor-preference-tabs-multi-tab": "Mostra’m les dues opcions d’editor", "visualeditor-preference-tabs-prefer-ve": "Sempre fes servir l’editor visual si és possible", diff --git a/i18n/ve-mw/cak.json b/i18n/ve-mw/cak.json index fbbbae4d17..71f0dfa7c9 100644 --- a/i18n/ve-mw/cak.json +++ b/i18n/ve-mw/cak.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Chocoj" ] }, diff --git a/i18n/ve-mw/cbk-zam.json b/i18n/ve-mw/cbk-zam.json index 4d4ad8692f..304824b3a5 100644 --- a/i18n/ve-mw/cbk-zam.json +++ b/i18n/ve-mw/cbk-zam.json @@ -1,8 +1,13 @@ { "@metadata": { "authors": [ + "Aristorkle", + "Noooote", "WikiEditor50" ] }, - "visualeditor-ca-editsource-section": "revisa codigo" + "visualeditor-ca-createlocaldescriptionsource": "Aumenta origen de descripcion local", + "visualeditor-ca-createsource": "Crea texto de codigo", + "visualeditor-ca-editsource": "Edita texto de codigo", + "visualeditor-ca-editsource-section": "edita texto de codigo" } diff --git a/i18n/ve-mw/cdo-hans.json b/i18n/ve-mw/cdo-hans.json new file mode 100644 index 0000000000..f9bc51d4bf --- /dev/null +++ b/i18n/ve-mw/cdo-hans.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Winston Sung" + ] + }, + "visualeditor-dialog-meta-languages-link-label": "链接遘其頁面" +} diff --git a/i18n/ve-mw/cdo.json b/i18n/ve-mw/cdo-hant.json similarity index 95% rename from i18n/ve-mw/cdo.json rename to i18n/ve-mw/cdo-hant.json index cb1e246907..f4c5aff307 100644 --- a/i18n/ve-mw/cdo.json +++ b/i18n/ve-mw/cdo-hant.json @@ -1,15 +1,9 @@ { "@metadata": { "authors": [ - "Amire80", - "Davidzdh", - "GnuDoyng", - "Yejianfei", - "Ztl8702", - "唐吉訶德的侍從" + "Winston Sung" ] }, - "tooltip-ca-ve-edit": "Siŭ-gāi cī hiĕk", "tooltip-ca-editsource": "編輯茲蜀頁其源代碼", "tooltip-ca-createsource": "創建茲蜀頁其源代碼", "visualeditor-advancedsettings-tool": "高級設置", @@ -17,11 +11,8 @@ "visualeditor-ca-createlocaldescriptionsource": "添加本地描述源代碼", "visualeditor-ca-createsource": "創建源代碼", "visualeditor-ca-editlocaldescriptionsource": "編輯本地描述源代碼", - "visualeditor-ca-editsource": "Gāi nguòng-dâi-mā", - "visualeditor-ca-editsource-section": "gāi nguòng-dâi-mā", "visualeditor-categories-tool": "類別", "visualeditor-desc": "MediaWiki其可視化編輯器", - "visualeditor-descriptionpagelink": "Project:Kō̤-sê-huá biĕng-cĭk-ké", "visualeditor-dialog-media-alttext-section": "替代文本", "visualeditor-dialog-media-alttext-section-help": "汝會使使嚽來為無法看遘項目其人寫蜀段文字描述。描述應該當著讓伊各儂有能耐理解媒體項目提供其目的共信息。嚽對青盲用戶共其他使屏幕閱讀器軟件或者純文本瀏覽器其人來講是嘢重要其。", "visualeditor-dialog-media-change-image": "更改圖片", @@ -68,7 +59,6 @@ "visualeditor-dialog-meta-categories-section": "類別", "visualeditor-dialog-meta-languages-code-label": "語言代碼", "visualeditor-dialog-meta-languages-label": "語言", - "visualeditor-dialog-meta-languages-link-label": "链接遘其頁面", "visualeditor-dialog-meta-languages-name-label": "語言", "visualeditor-dialog-meta-languages-section": "語言", "visualeditor-dialog-meta-settings-displaytitle": "顯示其標題", diff --git a/i18n/ve-mw/cdo-latn.json b/i18n/ve-mw/cdo-latn.json new file mode 100644 index 0000000000..298bed6590 --- /dev/null +++ b/i18n/ve-mw/cdo-latn.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Winston Sung" + ] + }, + "tooltip-ca-ve-edit": "Siŭ-gāi cī hiĕk", + "visualeditor-ca-editsource": "Gāi nguòng-dâi-mā", + "visualeditor-ca-editsource-section": "gāi nguòng-dâi-mā", + "visualeditor-descriptionpagelink": "Project:Kō̤-sê-huá biĕng-cĭk-ké" +} diff --git a/i18n/ve-mw/ce.json b/i18n/ve-mw/ce.json index 641dbbc374..7cdf673489 100644 --- a/i18n/ve-mw/ce.json +++ b/i18n/ve-mw/ce.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "TMg", "Исмаил Садуев", "Умар" @@ -11,8 +10,13 @@ "collabpad-import-subtitle": "Импортйина $1 чуьра", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "ХӀара агӀо тайар", + "tooltip-ca-ve-edit-local": "Локалан гайтаран агӀо редактци йар", + "tooltip-ca-ve-create": "Кхолла хӀара агӀо", + "tooltip-ca-ve-create-local": "Кхолла локалан гайтаран агӀо", "tooltip-ca-editsource": "АгӀонан йуьхьанцара текст нисйан", + "tooltip-ca-editsource-local": "Локалан дийцаран агӀонан йуьхьанцара код хийца", "tooltip-ca-createsource": "\"Йуьхьанцара текст\" редактор чохь агӀо кхолла", + "tooltip-ca-createsource-local": "Локалан дийцаран агӀонан йуьхьанцара код кхолла", "visualeditor-advancedsettings-tool": "Кхин тӀе гӀирс нисбар", "visualeditor-annotations-default-description": "ХӀара агӀонан дакъа аннотацин диапазонан дакъа ду.", "visualeditor-annotations-default-end": "Аннотацин диапазонан чаккхе", @@ -32,15 +36,17 @@ "visualeditor-ca-editlocaldescriptionsource": "Тайе локалан хьост", "visualeditor-ca-editsource": "Нисйан", "visualeditor-ca-editsource-section": "нисйан", - "visualeditor-ca-editsource-section-hint": "«$1» декъаран код нисйан", + "visualeditor-ca-editsource-section-hint": "«$1» декъан код нисйан", "visualeditor-categories-tool": "Категореш", "visualeditor-changedesc-mwcategory-sortkey-changed": "ДӀасакъастаран догӀа хийцина $1 → $2", "visualeditor-changedesc-mwcategory-sortkey-set": "ДӀасакъастаран догӀана хӀоттина $1 маьӀна", + "visualeditor-changedesc-mwcategory-sortkey-unset": "ДӀасакъастаран догӀа $1 дуьйна хӀоттийна дац", "visualeditor-changedesc-mwlanguagevariant": "Меттан вариантан билгалйаккхар хийцина", "visualeditor-changedesc-mwredirect": "ДӀасахьажоран Ӏалашо хийцина $1 → $2", "visualeditor-changedesc-mwtransclusion": "Кепан параметраш хийцина", "visualeditor-desc": "MediaWiki-на бӀаьран редактор", "visualeditor-descriptionpagelink": "Project:БӀаьран редактор", + "visualeditor-dialog-extension-abandonedit": "Баккъалла, хьайн хийцамаш ца лелош, хӀара диалог дӀакъовла лаьий хьуна?", "visualeditor-dialog-media-alttext-checkbox": "Лелабе корта альтернативан текст санна", "visualeditor-dialog-media-alttext-section": "Альтернативин текст", "visualeditor-dialog-media-alttext-section-help": "Нагахь дакъолг гуш дацахь, лелор долу могӀамо гайта деза. Дийцар хила деза дакъолг чуьра Ӏалашо а, хаам а гойтуш. Иза чӀогӀа оьшу бӀаьрзе а, кхин болчу а экранан йа могӀамийн браузеран дешаран программа лелорхошна.", @@ -54,7 +60,6 @@ "visualeditor-dialog-media-info-artist": "Чуйаьккхина: $1", "visualeditor-dialog-media-info-audiofile": "Аудиофайл", "visualeditor-dialog-media-info-created": "Кхоьллина: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Автор: $1", "visualeditor-dialog-media-info-moreinfo": "Ма-дарра", "visualeditor-dialog-media-info-readmore": "Ма-дарра", @@ -240,6 +245,7 @@ "visualeditor-includes-includeonly-description": "ХӀокху агӀонан чулацам кхечу агӀонан тӀехь лелийча, кхузахь тӀетоьхна кхин тӀе болу рогӀера чулацам хир бу:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Дакъа йукъадаккхарх лаьцна кхин дӀа а довза]", "visualeditor-languages-tool": "Меттанаш", + "visualeditor-linkcontext-uneditable": "Бехк ма билла, хӀара хьажорг цкъачунна хьостан рожехь бен хийца йиш йац.", "visualeditor-linkinspector-button-link-external": "Арахьара вебсайт", "visualeditor-linkinspector-button-link-internal": "Чоьхьара агӀонаш лахар", "visualeditor-linkinspector-convert-link-isbn": "ISBN-хьажорг тӀе хийца", @@ -248,6 +254,7 @@ "visualeditor-linkinspector-educationpopup-text": "Ладаме дешнашна кхолла вики-хьажоргаш кхечу йаззамийн а, сайтийн а тӀе. ТӀакха йешархошна йозанах кхетта атта хира ду.", "visualeditor-linkinspector-educationpopup-title": "Хьажоргаш", "visualeditor-linkinspector-illegal-title": "АгӀонан мегашбоцу корта", + "visualeditor-linkinspector-invalid-blocked": "ХӀокху вики чохь болчу наха сацам бира хӀокху сайтан тӀе хьажоргаш дӀакъовла. Дехар до, кхин хьажоргаш хьажа.", "visualeditor-linkinspector-invalid-external": "Дехар до, йуьззина URL йукъайаккха, масала https://example.org", "visualeditor-linknodeinspector-add-label": "ТӀетоха куьг", "visualeditor-linknodeinspector-title": "Атта хьажорг", @@ -307,6 +314,8 @@ "visualeditor-preference-tabs-prefer-ve": "Гуттара а аьтто белахь бӀаьра редактор схьайелла", "visualeditor-preference-tabs-prefer-wt": "Гуттара а схьайелла йуьхьанцара текстан редактор", "visualeditor-preference-tabs-remember-last": "Дагахь йита сан тӀаьххьара редактор", + "visualeditor-preference-collab-label": "Цхьаьна болх баран редакци", + "visualeditor-preference-collab-description": "Кхин декъашхой кхайкха хьайн хийцаран сеансах дӀакхета бӀаьра редакторехь.", "visualeditor-rebase-client-export": "Экспорт", "visualeditor-rebase-client-export-start": "Экспорт...", "visualeditor-rebase-client-import": "Импорт йан", @@ -319,14 +328,14 @@ "visualeditor-savedialog-identify-user": "Ахьа хӀинца [[User:$1|$1]] санна авторизаци йина. Ахьа кхидӀа а хийцамаш бахь, хьан хийцамаш оцу аккаунтаца боьзна хира бу.", "visualeditor-savedialog-keyboard-shortcut-submit": "Хьайн нисдар Ӏалашдан, ахьа $1 тӀетаӀо мегар ду.", "visualeditor-savedialog-label-publish-short": "ДӀайазйан", - "visualeditor-savedialog-label-publish-short-start": "ДӀайазйо...", + "visualeditor-savedialog-label-publish-short-start": "ДӀайазйан...", "visualeditor-savedialog-label-resolve-conflict": "Машар бан", "visualeditor-savedialog-label-resume-editing": "Кхин дӀа тадар", "visualeditor-savedialog-label-review": "Бина хийцамашка хьажа", "visualeditor-savedialog-label-review-good": "дӀайазйен форме гӀо", "visualeditor-savedialog-label-save-short": "Ӏалашйан", "visualeditor-savedialog-label-save-short-start": "Ӏалашйан...", - "visualeditor-savedialog-review-nosummary": "Нисдарах лаьцна йаздина дац", + "visualeditor-savedialog-review-nosummary": "Нисдарх лаьцна йаздина дац", "visualeditor-savedialog-review-visual": "БӀаьра", "visualeditor-savedialog-review-wikitext": "Вики-текст", "visualeditor-savedialog-title-conflict": "Дов", @@ -341,7 +350,7 @@ "visualeditor-special-characters-group-other": "Дукха лелораш", "visualeditor-templatesused-tool": "Лелина кепаш", "visualeditor-title-error": "ГӀалате цӀе.", - "visualeditor-toload": "Массийта секунд йаьлча а хӀара хаам гуш хилахь, дехар до, [$1 агӀо йухасхьайелла]", + "visualeditor-toload": "Редактор кеста схьайоьллур йу. Нагахь масех секунд йаьлча а хьуна хӀара хаам гуш белахь, [$1 карлайаккха агӀо].", "visualeditor-tooltip-non-breaking-space": "Хаддаза кӀайдарг", "visualeditor-version-label": "Верси", "visualeditor-wikitext-progress": "Вики-текст хийцар", diff --git a/i18n/ve-mw/ckb.json b/i18n/ve-mw/ckb.json index 1cfae76771..bce49fc73f 100644 --- a/i18n/ve-mw/ckb.json +++ b/i18n/ve-mw/ckb.json @@ -4,7 +4,6 @@ "Aram", "Asoxor", "Calak", - "Diyariq", "Lost Whispers", "Muhammed taha", "Pirehelokan", @@ -198,7 +197,7 @@ "visualeditor-mweditmodeve-tool-unavailable": "دەستکاریکردنی دیداری لێرەدا بەردەست نییە", "visualeditor-mweditmodewt-popup-body": "ھەرکاتێک ویستت دەتوانیت بە کرتەکردن لەسەر ئەم وێنۆچکەیە بگەڕێیتەوە بۆ دەستکاریکردنی سەرچاوە.", "visualeditor-mweditmodewt-popup-title": "بۆ دەستکاریکردنی دیداری گوێزرایتەوە", - "visualeditor-mwgallerycontext-description": "$1 وێنە", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|وێنە}}", "visualeditor-mwgallerydialog-caption-field-label": "شرۆڤەی پێشانگا", "visualeditor-mwgallerydialog-card-images": "وێنەکان", "visualeditor-mwgallerydialog-card-options": "ھەڵبژاردەکان", diff --git a/i18n/ve-mw/cko.json b/i18n/ve-mw/cko.json new file mode 100644 index 0000000000..0c3b5c068d --- /dev/null +++ b/i18n/ve-mw/cko.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Biema", + "Nachim", + "Yaw-kan" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "fa nana nu dɛɛ kereewa buka su", + "visualeditor-ca-createsource": "Yi fite biri se", + "visualeditor-ca-editsource": "Kpokpo fiteeri biri n nu", + "visualeditor-ca-editsource-section": "Fifiti nu nyanbiri" +} diff --git a/i18n/ve-mw/cnr-latn.json b/i18n/ve-mw/cnr-latn.json index 146322c65b..01a4a908a3 100644 --- a/i18n/ve-mw/cnr-latn.json +++ b/i18n/ve-mw/cnr-latn.json @@ -1,10 +1,13 @@ { "@metadata": { "authors": [ - "Bellatrix10" + "Bellatrix10", + "ITZQing" ] }, "tooltip-ca-ve-edit": "Uredi ovu stranicu", + "visualeditor-ca-createlocaldescriptionsource": "Dodaj lokalni opis (u kôdu)", + "visualeditor-ca-createsource": "Napravi izvor", "visualeditor-ca-editsource": "Izmijeni izvor", "visualeditor-ca-editsource-section": "uredi kôd", "visualeditor-descriptionpagelink": "Project:Vizuelno uređivanje" diff --git a/i18n/ve-mw/cop.json b/i18n/ve-mw/cop.json index e625fa317a..63251ab880 100644 --- a/i18n/ve-mw/cop.json +++ b/i18n/ve-mw/cop.json @@ -7,8 +7,9 @@ ] }, "tooltip-ca-ve-edit": "ⲫⲱⲛϩ ⲛ̀ⲧⲁⲓⲥⲉⲗⲓⲥ", - "visualeditor-ca-createsource": "ⲥⲱⲛⲧ ⲛ̀ϯⲁⲣⲭⲏ", - "visualeditor-ca-editsource": "ⲫⲱⲛϩ ⲛ̀ϯⲡⲏⲅⲏ", - "visualeditor-ca-editsource-section": "ⲫⲱⲛϩ ⲛ̀ϯⲡⲏⲅⲏ", + "visualeditor-ca-createlocaldescriptionsource": "Ⲧⲟⲩϩⲟ ⲛ̀ⲟⲩⲡⲏⲅⲏ ⲛ̀ⲧⲉⲧⲥⲩⲅⲅⲣⲁⲫⲏ ⲙ̀ⲙⲁ", + "visualeditor-ca-createsource": "Ⲑⲁⲙⲓⲟ̀ ⲛ̀ⲟⲩⲁⲣⲭⲏ", + "visualeditor-ca-editsource": "Ϣⲉⲃⲓⲱ̀ ⲛ̀ϯⲁⲣⲭⲏ", + "visualeditor-ca-editsource-section": "ϣⲉⲃⲓⲱ̀ ⲛ̀ϯⲁⲣⲭⲏ", "visualeditor-descriptionpagelink": "Project:ⲣⲉϥϣⲓⲃϯ ⲛ̀ⲛⲁⲩ" } diff --git a/i18n/ve-mw/crh-latn.json b/i18n/ve-mw/crh-latn.json index 04c75e5546..bda0373707 100644 --- a/i18n/ve-mw/crh-latn.json +++ b/i18n/ve-mw/crh-latn.json @@ -10,8 +10,26 @@ "visualeditor-ca-createsource": "Kodunı yarat", "visualeditor-ca-editsource": "Kodunı deñiştir", "visualeditor-ca-editsource-section": "kodunı deñiştir", + "visualeditor-desc": "MediaViki içün vizual türlendirgiç", "visualeditor-descriptionpagelink": "Project:Vizual türlendirgiç", "visualeditor-dialog-meta-categories-addcategory-label": "Bu saifege bir kategoriya qoş", "visualeditor-dialog-meta-categories-input-placeholder": "Bir kategoriya qoş", - "visualeditor-dialog-meta-languages-link-label": "Bağlanğan saife" + "visualeditor-dialog-meta-languages-link-label": "Bağlanğan saife", + "visualeditor-mweditmodesource-tool-current": "Viki metnini deñiştirüv", + "visualeditor-mweditmodeve-tool-current": "Vizual deñiştirüv", + "visualeditor-preference-visualeditor": "Vizual türlendirgiçni işlet", + "visualeditor-preference-newwikitexteditor-enable": "Ayrı bir vikimetin türlendirgiçi yerine vizual türlendirgiçniñ içindeki vikimetin rejimini qullan", + "visualeditor-preference-newwikitexteditor-help": "Bu funktsiyağa bazıda \"2017 vikimetin türlendirgiçi\" de aytıla.", + "visualeditor-preference-tabs": "Deñiştirüv rejimi:", + "visualeditor-preference-tabs-multi-tab": "Maña er eki türlendirgiç variantını da köster", + "visualeditor-preference-tabs-prefer-ve": "Mümkün olğan er vaqıt vizual türlendirgiçni qullan", + "visualeditor-preference-tabs-prefer-wt": "Er vaqıt menba kodu türlendirgiçini qullan", + "visualeditor-preference-tabs-remember-last": "Soñki türlendirgiçimni hatırla", + "visualeditor-preference-collab-label": "İşbirlikçi deñiştirüv", + "visualeditor-preference-collab-description": "Başqa qullanıcılarnı vizual türlendirgiçteki deñiştirüv oturımıñızğa qoşulmağa çağırıñız.", + "visualeditor-savedialog-review-visual": "Vizual", + "visualeditor-savedialog-review-wikitext": "Vikimetin", + "visualeditor-savedialog-title-conflict": "Çatışma", + "visualeditor-savedialog-title-preview": "Yapqan deñiştirmeleriñizni baqıp çıqıñız", + "visualeditor-special-characters-group-other": "Sıq qullanılğan" } diff --git a/i18n/ve-mw/crh-ro.json b/i18n/ve-mw/crh-ro.json index 84cb460a51..060d99c7d9 100644 --- a/i18n/ve-mw/crh-ro.json +++ b/i18n/ve-mw/crh-ro.json @@ -4,7 +4,7 @@ "Zolgoyo" ] }, - "visualeditor-ca-createlocaldescriptionsource": "Mîntîka taswirí úşín memba", + "visualeditor-ca-createlocaldescriptionsource": "Mîntîka taswirí úşún memba", "visualeditor-ca-createsource": "Membadî yasa", "visualeditor-ca-editsource": "Membadî deñíştír", "visualeditor-ca-editsource-section": "membadî deñíştír" diff --git a/i18n/ve-mw/cs.json b/i18n/ve-mw/cs.json index 3c7ffbb878..da9bf61079 100644 --- a/i18n/ve-mw/cs.json +++ b/i18n/ve-mw/cs.json @@ -84,7 +84,6 @@ "visualeditor-dialog-media-info-meta-artist": "Autor: $1", "visualeditor-dialog-media-info-moreinfo": "Další informace", "visualeditor-dialog-media-info-readmore": "Číst dál", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Načteno: $1", "visualeditor-dialog-media-page-advanced": "Pokročilá nastavení", "visualeditor-dialog-media-page-general": "Obecná nastavení", @@ -272,6 +271,7 @@ "visualeditor-linkinspector-educationpopup-text": "Důležitá slova provažte s dalšími články na wiki či dokonce jinými weby. Čtenářům to pomůže lépe pochopit kontext.", "visualeditor-linkinspector-educationpopup-title": "Odkazy", "visualeditor-linkinspector-illegal-title": "Neplatný název stránky", + "visualeditor-linkinspector-invalid-blocked": "Komunita této wiki se rozhodla zablokovat odkazy na tento web. Zkuste prosím jiný odkaz.", "visualeditor-linkinspector-invalid-external": "Zadejte celé URL, např. https://example.org", "visualeditor-linknodeinspector-add-label": "Přidat popisek", "visualeditor-linknodeinspector-title": "Jednoduchý odkaz", diff --git a/i18n/ve-mw/csb.json b/i18n/ve-mw/csb.json index 1ec6c639aa..090aa5c551 100644 --- a/i18n/ve-mw/csb.json +++ b/i18n/ve-mw/csb.json @@ -2,13 +2,14 @@ "@metadata": { "authors": [ "Kaszeba", - "Kirsan" + "Kirsan", + "Terrus38" ] }, "tooltip-ca-ve-edit": "Editëjë nã starnã.", "visualeditor-ca-createlocaldescriptionsource": "Ùsôdzë zdrojowi kòd lokalnegò òpisënka", "visualeditor-ca-createsource": "Ùsôdzë zdrojowi kòd", - "visualeditor-ca-editsource": "Editëjë zdrojowi kòd", - "visualeditor-ca-editsource-section": "editëjë zdrój", + "visualeditor-ca-editsource": "Edituj zdrojowi kòd", + "visualeditor-ca-editsource-section": "edituj kòd", "visualeditor-descriptionpagelink": "Project:Wizualny Editora" } diff --git a/i18n/ve-mw/cy.json b/i18n/ve-mw/cy.json index d4314930a3..b910fbd21e 100644 --- a/i18n/ve-mw/cy.json +++ b/i18n/ve-mw/cy.json @@ -116,11 +116,11 @@ "visualeditor-dialog-table-wikitable": "Arddull (wicitabl)", "visualeditor-dialog-template-title": "Templed", "visualeditor-dialog-transclusion-action-save": "Cadw", - "visualeditor-dialog-transclusion-template-title-nonexistent": "Nid yw'r nodyn hwn yn bodoli.", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Nid yw'r templed hwn yn bodoli.", "visualeditor-dialog-transclusion-add-param-placeholder": "Enw'r paramedr", "visualeditor-dialog-transclusion-add-param-save": "Ychwanegu", - "visualeditor-dialog-transclusion-add-template": "Ychwanegu nodyn", - "visualeditor-dialog-transclusion-add-template-button": "Ychwanegu nodyn", + "visualeditor-dialog-transclusion-add-template": "Ychwanegu templed", + "visualeditor-dialog-transclusion-add-template-button": "Ychwanegu templed", "visualeditor-dialog-transclusion-add-template-save": "Ychwanegu", "visualeditor-dialog-transclusion-collapse-options": "Cuddio'r dewisiadau", "visualeditor-dialog-transclusion-confirmation-reject": "Parhau i olygu", @@ -136,12 +136,12 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Parhau sut bynnag", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Maes|Meysydd}} gofynnol ar goll", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Ydych chi wir eisiau parhau heb lenwi'r {{PLURAL:$2|maes|$1 o feysydd}}?", - "visualeditor-dialog-transclusion-title-insert-template": "Mewnosod nodyn", + "visualeditor-dialog-transclusion-title-insert-template": "Mewnosod templed", "visualeditor-dialog-transclusion-title-insert-known-template": "Mewnosod: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Golygu: $1", "visualeditor-dialog-transclusion-wikitext": "Cystrawen wici", "visualeditor-dialogbutton-media-tooltip": "Delweddau a chyfryngau", - "visualeditor-dialogbutton-template-tooltip": "Nodyn", + "visualeditor-dialogbutton-template-tooltip": "Templed", "visualeditor-editconflict": "Nid oedd modd cadw'ch newidiadau oherwydd gwrthdaro golygu. Hoffech chi ddatrys y gwrthdaro eich hunan?", "visualeditor-editingtabdialog-body": "Nawr mae {{SITENAME}} yn cofio eich hoff olygydd. Gallwch newydd y modd golygu wrth olygu, yna newid eich dewis nes ymlaen.", "visualeditor-editingtabdialog-ok": "Yr un golygydd â'r tro diwethaf", diff --git a/i18n/ve-mw/da.json b/i18n/ve-mw/da.json index a16b59587e..10cf7ed1cf 100644 --- a/i18n/ve-mw/da.json +++ b/i18n/ve-mw/da.json @@ -21,6 +21,7 @@ "Sarrus", "Simeondahl", "SimmeD", + "Steenth", "Tehnix", "Weblars" ] @@ -29,9 +30,18 @@ "collabpad-import-subtitle": "Importeret fra $1", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Redigér denne side", + "tooltip-ca-ve-edit-local": "Rediger den lokale beskrivelsesside", + "tooltip-ca-ve-create": "Opret denne side", + "tooltip-ca-ve-create-local": "Opret den lokale beskrivelsesside", "tooltip-ca-editsource": "Rediger kildekoden for denne side", + "tooltip-ca-editsource-local": "Rediger kildekoden til den lokale beskrivelsesside", "tooltip-ca-createsource": "Opret kildekoden til denne side", + "tooltip-ca-createsource-local": "Opret kildekoden til den lokale beskrivelsesside", "visualeditor-advancedsettings-tool": "Avancerede indstillinger", + "visualeditor-annotations-default-description": "Denne del af siden er del af et kommentarområde.", + "visualeditor-annotations-default-end": "Slut på kommentarområde", + "visualeditor-annotations-default-start": "Starten af kommentarområde", + "visualeditor-annotations-extended-documentation": "Dette kommentarområde er blevet udvidet, fordi det indhold, det indeholdt, ikke var velindlejret. Det anbefales at sikre, at det kommenteret indhold er velindlejret, før det redigeres. Ellers kan et større område end forventet blive kommenteret.", "visualeditor-autosave-modified-prompt-accept": "Fortsæt med at redigere", "visualeditor-autosave-modified-prompt-message": "Denne side er blevet ændret siden du indlæste den. Vil {{GENDER:|du}} fortsætte {{GENDER:|din}} redigering af den gamle version eller påbegynde en ny redigering af den seneste version?", "visualeditor-autosave-modified-prompt-reject": "Start en ny redigering", @@ -46,51 +56,68 @@ "visualeditor-ca-editlocaldescriptionsource": "Rediger kilde for lokal beskrivelse", "visualeditor-ca-editsource": "Rediger kildekode", "visualeditor-ca-editsource-section": "rediger kildetekst", + "visualeditor-ca-editsource-section-hint": "Rediger sektionens kildekode: $1", "visualeditor-categories-tool": "Kategorier", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Sorteringsnøgle ændret fra $1 til $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Sorteringsnøgle sat til $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Sorteringsnøgle fjernet fra $1", + "visualeditor-changedesc-mwlanguagevariant": "Sprogvariantmarkering ændret", "visualeditor-changedesc-mwredirect": "Omdirigeringsmål ændret fra $1 til $2", "visualeditor-changedesc-mwtransclusion": "Ændrede skabelonparametre", "visualeditor-desc": "Visual editor for MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", + "visualeditor-dialog-extension-abandonedit": "Er du sikker på, at du vil lukke denne dialogboks uden at anvende dine ændringer?", + "visualeditor-dialog-media-alttext-checkbox": "Brug billedteksten som alternativ tekst", "visualeditor-dialog-media-alttext-section": "Alternativ tekst", - "visualeditor-dialog-media-alttext-section-help": "Du kan bruge dette til at skrive en beskrivelse for folk der ikke kan se objektet. Beskrivelsen skal være tilstrækkelig til at de kan forstå meningen og den information, som medieobjektet indeholder. Dette er afgørende for blinde og andre, som bruger skærmlæsersoftware eller browsere, der kun kan vise tekst.", + "visualeditor-dialog-media-alttext-section-help": "Du kan bruge dette til at skrive en beskrivelse for folk der ikke kan se elementet. Beskrivelsen skal være tilstrækkelig til at de kan forstå meningen og den information, som medieobjektet indeholder. Dette er afgørende for blinde og andre, som bruger skærmlæsersoftware eller browsere, der kun kan vise tekst.", "visualeditor-dialog-media-change-image": "Ændr billede", "visualeditor-dialog-media-choose-image": "Brug dette billede", "visualeditor-dialog-media-content-description-link": "(beskrivelsesside)", "visualeditor-dialog-media-content-filename": "Filnavn", "visualeditor-dialog-media-content-section": "Billedtekst", + "visualeditor-dialog-media-content-section-help": "Du kan bruge dette til at vise en etiket, der vises ved siden af elementet for alle læsere. Dette bruges ofte til at forklare, hvorfor elementet er relevant i den kontekst, det vises i. Det skal være kortfattet og informativt.", "visualeditor-dialog-media-goback": "Tilbage", "visualeditor-dialog-media-info-artist": "Lagt op af $1", "visualeditor-dialog-media-info-audiofile": "Lydfil", "visualeditor-dialog-media-info-created": "Oprettet: $1", - "visualeditor-dialog-media-info-meta-artist": "Kunstner: $1", + "visualeditor-dialog-media-info-meta-artist": "Forfatter: $1", "visualeditor-dialog-media-info-moreinfo": "Flere oplysninger", "visualeditor-dialog-media-info-readmore": "Læs mere", "visualeditor-dialog-media-info-uploaded": "Uploadet: $1", "visualeditor-dialog-media-page-advanced": "Avanceret", "visualeditor-dialog-media-page-general": "Generelt", + "visualeditor-dialog-media-position-checkbox": "Ombryd tekst omkring dette element", + "visualeditor-dialog-media-position-checkbox-help": "Du kan få dette medieelement til at vises integreret med sidens tekst i stedet for at flyde. Du bør kun gøre dette sjældent, da det vil afbryde tekstens flow, hvis du fjerner markeringen i dette felt.", "visualeditor-dialog-media-position-section": "Placering", + "visualeditor-dialog-media-position-section-help": "Du kan indstille, hvor dette medieelement skal vises på siden. Dette bruges nogle gange til at opdele en lang række billeder på den ene side af siden.", "visualeditor-dialog-media-save": "Gem", "visualeditor-dialog-media-search-tab-search": "Søg", "visualeditor-dialog-media-search-tab-upload": "Læg op", "visualeditor-dialog-media-size-section": "Billedstørrelse", + "visualeditor-dialog-media-size-section-help": "Du kan indstille, hvor stort medieelementet skal vises på siden. Dette bør næsten altid være den normale størrelse, da en brugerdefineret størrelse vil forstyrre sidens layout for læserne og gøre den inkonsekvent.", "visualeditor-dialog-media-title": "Medieindstillinger", "visualeditor-dialog-media-type-border": "Kant", "visualeditor-dialog-media-type-frame": "Ramme", "visualeditor-dialog-media-type-frameless": "Uden ramme", "visualeditor-dialog-media-type-none": "Grundlæggende", "visualeditor-dialog-media-type-section": "Billedtype", + "visualeditor-dialog-media-type-section-help": "Du kan indstille, hvordan medieelementet vises på siden. Dette bør være miniatureformatet for at være i overensstemmelse med andre sider i næsten alle tilfælde.", + "visualeditor-dialog-media-type-thumb": "Miniaturebillede", + "visualeditor-dialog-media-upload": "Upload", "visualeditor-dialog-meta-advancedsettings-label": "Avancerede indstillinger", "visualeditor-dialog-meta-advancedsettings-section": "Avancerede indstillinger", "visualeditor-dialog-meta-categories-addcategory-label": "Tilføj en kategori til denne side", "visualeditor-dialog-meta-categories-category": "Kategori", "visualeditor-dialog-meta-categories-data-label": "Kategorier", + "visualeditor-dialog-meta-categories-defaultsort-help": "Du kan tilsidesætte sorteringen af denne side, når den vises i en kategori, ved at indstille et andet indeks at sortere med i stedet. Dette bruges ofte til at få sider om personer vist efter efternavn, men navngivet med deres fornavn vist først.", "visualeditor-dialog-meta-categories-defaultsort-label": "Sorter denne side som standard som", "visualeditor-dialog-meta-categories-hidden": "Denne kategori er indstillet til ikke at blive vist på sider hvor den er tilføjet.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Skjulte kategorier", - "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Passende kategorier", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Matchende kategorier", "visualeditor-dialog-meta-categories-input-movecategorylabel": "Flyt denne kategori her", "visualeditor-dialog-meta-categories-input-newcategorylabel": "Ny kategori", "visualeditor-dialog-meta-categories-input-placeholder": "Tilføj en kategori", + "visualeditor-dialog-meta-categories-missing": "Denne kategori mangler en beskrivelsesside.", "visualeditor-dialog-meta-categories-options": "Valgmuligheder", "visualeditor-dialog-meta-categories-section": "Kategorier", "visualeditor-dialog-meta-categories-sortkey-label": "Sorter denne side hvis den kaldes", @@ -98,50 +125,128 @@ "visualeditor-dialog-meta-languages-label": "Sprog", "visualeditor-dialog-meta-languages-link-label": "Linket side", "visualeditor-dialog-meta-languages-name-label": "Sprog", - "visualeditor-dialog-meta-languages-readonlynote": "Dette er en liste over sider på andre sprog, der er knyttet til denne side. Foreløbig kan den kun redigeres i wikikode-tilstand eller på Wikidata.", + "visualeditor-dialog-meta-languages-readonlynote": "Dette er en liste over sider på andre sprog, der er linket til denne. Indtil videre kan den kun redigeres i kildekodetilstand eller på Wikidata.", "visualeditor-dialog-meta-languages-section": "Sprog", "visualeditor-dialog-meta-settings-displaytitle": "Vist sidetitel", + "visualeditor-dialog-meta-settings-displaytitle-help": "Du kan tilsidesætte, hvordan denne sides titel vises, ved at angive en anden etiket, der skal vises i stedet.", + "visualeditor-dialog-meta-settings-hiddencat-help": "Du kan forhindre denne kategori i at blive vist på listen over kategorier på medlemssider. Dette er nyttigt for kategorier, der er af interesse for redaktører, men ikke for de fleste læsere, f.eks. sider, der har brug for en illustration.", "visualeditor-dialog-meta-settings-hiddencat-label": "Skjult kategori", "visualeditor-dialog-meta-settings-index-default": "Standard", "visualeditor-dialog-meta-settings-index-disable": "Nej", "visualeditor-dialog-meta-settings-index-force": "Ja", + "visualeditor-dialog-meta-settings-index-help": "Du kan bede søgemaskiner til at vise denne side i deres relevante resultater, eller om at ikke gøre det. Denne indstilling påvirker ikke søgning på siden.", "visualeditor-dialog-meta-settings-index-label": "Lad denne side blive indekseret af søgemaskiner", "visualeditor-dialog-meta-settings-label": "Sideindstillinger", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Standard", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Nej", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Ja", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Du kan tvinge visning af en ekstra fane udover fanen \"$1\" på denne side, hvilket gør det nemt at tilføje en ny sektion, eller tvinge den til ikke at blive vist, hvis den ellers ville.", "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Vis en fane på denne side til at tilføje et nyt afsnit", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "Du kan forhindre, at denne sides indhold automatisk konverteres til andre skriftsystemer.", + "visualeditor-dialog-meta-settings-nocontentconvert-label": "Konverter ikke indhold mellem sprogvarianter", + "visualeditor-dialog-meta-settings-noeditsection-help": "Du kan forhindre redigeringslinkene i at blive vist ud for hvert afsnit i det usædvanlige tilfælde, hvor det er passende.", "visualeditor-dialog-meta-settings-noeditsection-label": "Deaktiver rediger-links ved siden af hver overskrift på denne side.", + "visualeditor-dialog-meta-settings-nogallery-help": "Du kan forhindre denne kategori i at vise medlemsfiler som et galleri, hvis det er upassende i dette tilfælde.", "visualeditor-dialog-meta-settings-nogallery-label": "Deaktiver galleri", + "visualeditor-dialog-meta-settings-notitleconvert-help": "Du kan forhindre, at denne sides titel automatisk konverteres til andre skriftsystemer.", + "visualeditor-dialog-meta-settings-notitleconvert-label": "Konverter ikke titlen mellem sprogvarianter", + "visualeditor-dialog-meta-settings-redirect-help": "Du kan omdirigere denne side, en side der automatisk fører læserne til en anden side på denne wiki. Dette er nyttigt ved stavefejl og alternative navne eller begreber. Hvis du gør det, vil læserne ikke se indholdet af denne side.", "visualeditor-dialog-meta-settings-redirect-label": "Omdiriger denne side til", "visualeditor-dialog-meta-settings-redirect-placeholder": "Målsiden for omdirigering", + "visualeditor-dialog-meta-settings-redirect-statichelp": "Du kan forhindre, at denne omdirigering opdateres automatisk, når den side, den omdirigerer til, flyttes, i det meget sjældne tilfælde, at dette er nødvendigt.", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Forhindr denne omdirigering i at blive opdateret, hvis målsiden flyttes.", "visualeditor-dialog-meta-settings-section": "Sideindstillinger", "visualeditor-dialog-meta-settings-toc-default": "Hvis det er nødvendigt", "visualeditor-dialog-meta-settings-toc-disable": "Aldrig", "visualeditor-dialog-meta-settings-toc-force": "Altid", + "visualeditor-dialog-meta-settings-toc-help": "Du kan tvinge en indholdsfortegnelse, der viser hver overskrift på siden, til at blive vist på sider med færre end fire overskrifter, eller tvinge den til slet ikke at blive vist. Som standard vises den, hvis siden har fire eller flere overskrifter.", "visualeditor-dialog-meta-settings-toc-label": "Vis indholdsfortegnelsen", "visualeditor-dialog-meta-templatesused-noresults": "Ingen skabeloner fundet.", "visualeditor-dialog-meta-title": "Indstillinger", + "visualeditor-dialog-table-collapsed": "Sammenklap oprindeligt", + "visualeditor-dialog-table-collapsible": "Sammenklappelig", "visualeditor-dialog-table-sortable": "Sorterbar", + "visualeditor-dialog-table-wikitable": "Stylet (wikitable)", "visualeditor-dialog-template-title": "Skabelon", "visualeditor-dialog-transclusion-action-save": "Gem", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Denne skabelon findes ikke.", + "visualeditor-dialog-transclusion-template-title-modifier": "Skabelondokumentation og [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter parameter]-navne (hvis de findes) er ikke tilgængelige, når du redigerer skabeloner, der bruger indlejret syntaks eller modifikatorer, såsom [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst].", + "visualeditor-dialog-transclusion-template-widget-aria": "Tryk på mellemrumstasten for at vælge skabelonen.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Tryk Ctrl+Del for at slette skabelonen, dens parametre og deres værdier. Tryk Ctrl+Shift+Piletaster for at flytte skabelonen op eller ned.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Tryk Ctrl+Del for at slette skabelonen med parametre og værdier.", + "visualeditor-dialog-transclusion-add-wikitext": "Tilføj wikitekst", + "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\" er allerede tilføjet som \"$2\". Tjek venligst mulighederne i sidebjælken. Dette skyldes enten brugen af [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases aliasses] eller [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label labels].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" kan ikke tilføjes, fordi parameteren er markeret som [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated forældret].", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Parameteren \"$2\" kan ikke tilføjes to gange.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Parameteren \"$2\" er allerede tilgængelig til brug. Tjek venligst mulighederne i sidebjælken.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 er et forbudt tegn. Fjern det venligst for at tilføje parameteren.", + "visualeditor-dialog-transclusion-add-param-help": "Hvis kendt, indtast [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters udokumenterede parameter] navne. Bemærk, at kun parametre, der er kendt af skabelonen, vil have en effekt. Du kan finde oplysninger om eksisterende parametre på [[$1|skabelonens side]].", + "visualeditor-dialog-transclusion-add-param-placeholder": "Parameternavn", + "visualeditor-dialog-transclusion-add-param-save": "Tilføj", "visualeditor-dialog-transclusion-add-template": "Tilføj skabelon", + "visualeditor-dialog-transclusion-add-template-button": "Tilføj skabelon", + "visualeditor-dialog-transclusion-add-template-save": "Tilføj", + "visualeditor-dialog-transclusion-add-undocumented-param": "Tilføj udokumenteret parameter", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Vil du tilbage til søgningen? Dine ændringer vil gå tabt, og dette kan ikke hentes tilbage igen.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Vil du lukke skabeloneditoren? Dine ændringer vil gå tabt, og dette kan ikke fortrydes.", "visualeditor-dialog-transclusion-collapse-options": "Skjul valgmuligheder", + "visualeditor-dialog-transclusion-confirmation-discard": "Kasser redigeringer", + "visualeditor-dialog-transclusion-confirmation-reject": "Fortsæt med at redigere", "visualeditor-dialog-transclusion-contextitem-description": "Genereret af: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Indlæser...", "visualeditor-dialog-transclusion-expand-options": "Vis valgmuligheder", + "visualeditor-dialog-transclusion-filter-hide-unused": "Skjul ubrugte", + "visualeditor-dialog-transclusion-filter-no-match": "Ingen matchende resultater blev fundet.", + "visualeditor-dialog-transclusion-filter-placeholder": "Find felt", + "visualeditor-dialog-transclusion-filter-show-all": "Vis alle", + "visualeditor-dialog-transclusion-filter-title": "Parametersøgning for $1", + "visualeditor-dialog-transclusion-help-title": "Understøttelse af skabelonredigering", + "visualeditor-dialog-transclusion-help-message": "Skabeloner gør det muligt at formatere indhold. Denne editor viser, hvilke muligheder en skabelon tilbyder, til venstre, og værdier kan derefter tilføjes til disse muligheder til højre.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Hjælp til redigering af skabeloner]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Tastaturgenveje]", + "visualeditor-dialog-transclusion-deprecated-parameter": "Forældet felt", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "Feltet er forældet. $1", "visualeditor-dialog-transclusion-loading": "Indlæser...", + "visualeditor-dialog-transclusion-multipart-message": "Du redigerer i øjeblikket en skabelon og en eller flere dele af [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content forbundet indhold] (wikitekst og/eller flere skabeloner).", + "visualeditor-dialog-transclusion-no-template-data-description": "Denne skabelon mangler [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData], og dens parametre er blevet [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters autogenereret]. Som følge heraf mangler skabelonen og dens parametre beskrivelser. Der kan være yderligere oplysninger på [[$1|skabelonens side]].", + "visualeditor-dialog-transclusion-no-template-description": "Skabelonen \"$1\" har endnu ikke en beskrivelse, men der kan være nogle oplysninger på [[$2|skabelonens side]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Denne skabelon har ingen dokumenterede parametre og er muligvis beregnet til brug uden dem.", "visualeditor-dialog-transclusion-param-default": "Standard: $1", "visualeditor-dialog-transclusion-param-example-long": "Eksempel: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Tryk på mellemrumstasten for at tilføje eller fjerne parametre. Tryk på Enter for at tilføje en parameter og redigere dens værdi med det samme. Når en parameter allerede er valgt, skal du trykke på Enter for at redigere værdien.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Parametre i $1", + "visualeditor-dialog-transclusion-param-undocumented": "(udokumenteret parameter)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Find skabelon", "visualeditor-dialog-transclusion-required-parameter": "Påkrævet felt", + "visualeditor-dialog-transclusion-required-parameter-description": "Feltet er påkrævet.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Gå tilbage", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Fortsæt alligevel", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Obligatorisk {{PLURAL:$1|felt|felter}} mangler", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "Er du sikker på, at du vil fortsætte uden at udfylde $1 {{PLURAL:$2|feltet|felterne}}?", + "visualeditor-dialog-transclusion-see-template": "Skabeloner er brugergenererede og mangler muligvis fuldstændige beskrivelser. Der kan være yderligere oplysninger på denne [[$2|skabelonside]].", + "visualeditor-dialog-transclusion-title-insert-template": "Indsæt en skabelon", + "visualeditor-dialog-transclusion-title-insert-known-template": "Indsæt: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Rediger: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Skabelonindhold", + "visualeditor-dialog-transclusion-template-search": "Skabelonsøgning", + "visualeditor-dialog-transclusion-template-search-help": "Find den skabelon, du vil indsætte, ved at søge efter et identificerende nøgleord. Skabeloner med beskrivelser fungerer sandsynligvis bedre med den visuelle editor.", + "visualeditor-dialog-transclusion-wikitext": "Wikitekst", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Tryk på mellemrumstasten for at vælge wikitekst-elementet. Tryk på Enter for at vælge og redigere wikiteksten.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Tryk Ctrl+Del for at slette wikitext-elementet. Tryk Ctrl+Shift+Piletaster for at flytte elementet op eller ned.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Tryk Ctrl+Del for at slette wikitext-elementet.", "visualeditor-dialogbutton-media-tooltip": "Billeder og medier", "visualeditor-dialogbutton-template-tooltip": "Skabelon", "visualeditor-editconflict": "Dine ændringer kunne ikke gemmes på grund af en redigeringskonflikt. Vil {{GENDER:|du}} løse konflikten manuelt?", + "visualeditor-editingtabdialog-body": "{{SITENAME}} husker nu, hvilken editor du foretrækker. Du kan skifte redigeringstilstand, mens du redigerer, og ændre dine præferencer senere.", + "visualeditor-editingtabdialog-ok": "Brug den editor, jeg brugte i min sidste redigering", + "visualeditor-editingtabdialog-title": "Redigeringsfaner", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|meddelelse|meddelelser}}", "visualeditor-editnotices-tooltip": "Redigeringsbemærkninger", "visualeditor-editsummary": "Beskriv hvad du har ændret", + "visualeditor-editsummary-characters-remaining": "Antallet af tegn tilbage", "visualeditor-educationpopup-dismiss": "Ok, jeg forstår", + "visualeditor-expandable-less": "Mindre", + "visualeditor-expandable-more": "Mere", "visualeditor-feedback-defaultmessage": "URL: $1", "visualeditor-formatdropdown-format-mw-heading1": "Sidetitel", "visualeditor-formatdropdown-format-mw-heading2": "Overskrift", @@ -149,18 +254,42 @@ "visualeditor-formatdropdown-format-mw-heading4": "Underoverskrift 2", "visualeditor-formatdropdown-format-mw-heading5": "Underoverskrift 3", "visualeditor-formatdropdown-format-mw-heading6": "Underoverskrift 4", + "visualeditor-generating-wikitext-progress": "Generering af wikitekst", + "visualeditor-includes-noinclude-start": "Start på indhold, der er udelukket fra uddrag", + "visualeditor-includes-noinclude-end": "Slut på indhold, der er ekskluderet fra uddrag", + "visualeditor-includes-onlyinclude-start": "Start af indhold tilladt i uddrag", + "visualeditor-includes-onlyinclude-end": "Slut på tilladt indhold i uddrag", + "visualeditor-includes-includeonly": "Indhold kun til uddrag", + "visualeditor-includes-noinclude-description": "Når indhold fra denne side bruges af en anden side, vil indhold herfra indtil den matchende slutmarkør ikke blive inkluderet. Vær forsigtig, når du redigerer indhold uden for disse markører, da andre sider kan bruge det.", + "visualeditor-includes-onlyinclude-description": "Når indhold fra denne side bruges af en anden side, vil kun indholdet herfra indtil den matchende slutmarkør blive inkluderet. Vær forsigtig, når du redigerer indholdet mellem disse markører, da andre sider kan bruge det.", + "visualeditor-includes-includeonly-description": "Når indhold fra denne side bruges af en anden side, vil følgende yderligere indhold blive inkluderet her:", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Lær mere om delvis transklusion]", "visualeditor-languages-tool": "Sprog", - "visualeditor-linkinspector-button-link-external": "Ekstern henvisning", + "visualeditor-linkcontext-uneditable": "Beklager, dette link kan kun redigeres i kildetilstand for nu.", + "visualeditor-linkinspector-button-link-external": "Ekstern hjemmeside", "visualeditor-linkinspector-button-link-internal": "Søg interne sider", + "visualeditor-linkinspector-convert-link-isbn": "Konvertér til ISBN-link", + "visualeditor-linkinspector-convert-link-pmid": "Konverter til PMID-link", + "visualeditor-linkinspector-convert-link-rfc": "Konvertér til RFC-link", "visualeditor-linkinspector-educationpopup-text": "Lav links fra vigtige ord til andre wikiartikler eller endda andre websider. Det hjælper læserne med at forstå sammenhængen.", + "visualeditor-linkinspector-educationpopup-title": "Henvisninger", "visualeditor-linkinspector-illegal-title": "Ugyldig sidetitel", + "visualeditor-linkinspector-invalid-blocked": "Brugere på denne wiki har besluttet at blokere links til dette websted. Prøv venligst et andet link.", + "visualeditor-linkinspector-invalid-external": "Indtast en fuld URL, f.eks. https://example.org", "visualeditor-linknodeinspector-add-label": "Tilføj etiket", + "visualeditor-linknodeinspector-title": "Simpelt link", + "visualeditor-magiclinknodeinspector-convert-link": "Konverter til simpelt link", + "visualeditor-magiclinknodeinspector-title-isbn": "ISBN-link", + "visualeditor-magiclinknodeinspector-title-pmid": "PMID-link", + "visualeditor-magiclinknodeinspector-title-rfc": "RFC-link", "visualeditor-media-title-audio": "Lyd", "visualeditor-media-title-image": "Billede", "visualeditor-media-title-video": "Video", "visualeditor-meta-tool": "Indstillinger", "visualeditor-mweditmode-tooltip": "Skift editor", + "visualeditor-mweditmodesource-progress": "Skifter til kilderedigering…", "visualeditor-mweditmodesource-tool-current": "Wikikode", + "visualeditor-mweditmodesource-tool-unavailable": "Kilderedigering er ikke tilgængelig her", "visualeditor-mweditmodeve-popup-body": "Du kan skifte tilbage til visuel redigering når som helst ved at klikke på dette ikon.", "visualeditor-mweditmodeve-popup-title": "Du har skiftet til kilderedigering", "visualeditor-mweditmodeve-progress": "Skifter til visuel redigering...", @@ -189,19 +318,34 @@ "visualeditor-mwgallerydialog-remove-button-label": "Fjern billede", "visualeditor-mwgallerydialog-search-button-label": "Tilføj nyt billede", "visualeditor-mwgallerydialog-show-filename-field-label": "Vis filnavne", + "visualeditor-mwgallerydialog-styles-field-label": "CSS-stile", + "visualeditor-mwgallerydialog-styles-input-placeholder": "CSS-regler, adskilt af semikolon", "visualeditor-mwgallerydialog-title": "Galleri", "visualeditor-mwgallerydialog-widths-field-label": "Billedbredde", "visualeditor-mwgallerydialog-widths-input-placeholder": "Standardbredde: $1 px", + "visualeditor-mwpredialog-convert": "Tillad tekstformatering", + "visualeditor-mwpredialog-title": "Forhåndsformateret ren tekst", "visualeditor-mwsignature-tool": "Din signatur", + "visualeditor-preference-visualeditor": "Aktiver visuel redigering", + "visualeditor-preference-newwikitexteditor-enable": "Brug wikitekst-tilstanden i visuel redigering fremfor en egen wikitekstredigering", + "visualeditor-preference-newwikitexteditor-help": "Dette kaldes undertiden '2017 wikitekstredigering'.", "visualeditor-preference-tabs": "Redigeringstilstand:", "visualeditor-preference-tabs-multi-tab": "Vis mig begge redigeringsfaneblade", + "visualeditor-preference-tabs-prefer-ve": "Giv mig altid den visuelle redigering, hvis det er muligt", + "visualeditor-preference-tabs-prefer-wt": "Giv mig altid kildekode-redigering", + "visualeditor-preference-tabs-remember-last": "Husk min sidst brugte editor", + "visualeditor-preference-collab-label": "Samarbejdsredigering", + "visualeditor-preference-collab-description": "Inviter andre brugere til at deltage i din redigeringssession i den visuelle editor.", "visualeditor-rebase-client-export": "Eksporter", "visualeditor-rebase-client-export-start": "Eksporter...", "visualeditor-rebase-client-import": "Importer", "visualeditor-rebase-client-import-name": "Sidetitel", + "visualeditor-rebase-client-title-help": "Du vil kunne gennemgå ændringerne, før du gemmer.", + "visualeditor-recreate": "Siden er blevet slettet, siden du begyndte at redigere. Tryk på \"$1\" for at genskabe den.", "visualeditor-redirect-description": "Omdiriger til $1", - "visualeditor-savedialog-identify-anon": "Vil du gemme siden som en anonym bruger i stedet? Din IP adresse vil blive registreret i denne sides versionshistorik.", - "visualeditor-savedialog-identify-user": "Du er nu logget på som [[User:$1|$1]]. Din redigering vil blive forbundet med denne konto, hvis du gemmer denne redigering.", + "visualeditor-savedialog-identify-anon": "Du er ikke længere logget ind. Hvis du fortsætter, vil din IP-adresse blive registreret i denne sides redigeringshistorik.", + "visualeditor-savedialog-identify-temp": "Du bruger nu det midlertidige brugernavn $1. Hvis du fortsætter, vil din redigering blive knyttet til dette brugernavn.", + "visualeditor-savedialog-identify-user": "Du er nu logget ind som [[User:$1|$1]]. Hvis du fortsætter, vil din redigering blive knyttet til denne konto.", "visualeditor-savedialog-keyboard-shortcut-submit": "Du kan trykke på $1 for at gemme din redigering.", "visualeditor-savedialog-label-publish-short": "Offentliggør", "visualeditor-savedialog-label-publish-short-start": "Offentliggør...", @@ -215,14 +359,24 @@ "visualeditor-savedialog-review-visual": "Visuelt", "visualeditor-savedialog-review-wikitext": "Wikitekst", "visualeditor-savedialog-title-conflict": "Konflikt", + "visualeditor-savedialog-title-preview": "Forhåndsvis dine ændringer", "visualeditor-savedialog-title-review": "Gennemse dine ændringer", "visualeditor-savedialog-title-save": "Gem dine ændringer", "visualeditor-section-body-placeholder": "Nyt afsnit", + "visualeditor-section-title-placeholder": "Emne", + "visualeditor-loaderror-revidconflict": "Sideversion-ID'erne returneret af serveren stemmer ikke overens (dokument: $1 , metadata: $2 ).", + "visualeditor-loaderror-wrongmode": "Forsøgte at indlæse editoren i forkert tilstand (datatype: \"$1\", editortilstand: \"$2\").", "visualeditor-settings-tool": "Sideindstillinger", "visualeditor-special-characters-group-other": "Ofte brugte", "visualeditor-templatesused-tool": "Brugte skabeloner", "visualeditor-title-error": "Ugyldig titel.", + "visualeditor-toload": "Redigeringsværktøjet indlæses nu. Hvis du stadig ser denne besked efter et par sekunder, skal du venligst [$1 genindlæse siden].", + "visualeditor-tooltip-non-breaking-space": "Hårdt mellemrum", "visualeditor-version-label": "Version", + "visualeditor-wikitext-progress": "Konvertering af wikitekst", "visualeditor-wikitext-warning": "Du bruger visuel redigering - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitext]] virker ikke her. Du kan når som helst skifte til kilderedigering uden at miste dine ændringer, ved at åbne nedfalds-menuen ud for \"{{int:visualeditor-toolbar-savedialog}}\" og vælge \"{{int:visualeditor-mweditmodesource-title}}\".", - "visualeditor-wikitext-warning-title": "Wikitekst-markup opdaget" + "visualeditor-wikitext-warning-title": "Wikitekst-markup opdaget", + "visualeditor-wikitextconvert-title": "Konvertér formatering til wikitekst?", + "visualeditor-wikitextconvert-message": "Du indsatte indhold med rich formatting. Vil du konvertere denne formatering til wikitekst?", + "visualeditor-wikitextconvert-convert": "Konverter til wikitekst" } diff --git a/i18n/ve-mw/dag.json b/i18n/ve-mw/dag.json index 0b9468aa53..3470cdaea6 100644 --- a/i18n/ve-mw/dag.json +++ b/i18n/ve-mw/dag.json @@ -3,7 +3,6 @@ "authors": [ "Adam Tuferu", "Alhaj Darajaati", - "Amire80", "Bashiru Nurideen Pona", "Chirifo", "Din-nani1", diff --git a/i18n/ve-mw/de-formal.json b/i18n/ve-mw/de-formal.json deleted file mode 100644 index d2e278d1b1..0000000000 --- a/i18n/ve-mw/de-formal.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "@metadata": { - "authors": [ - "Hwboehm", - "Kghbln", - "Se4598", - "Zabe" - ] - }, - "visualeditor-autosave-modified-prompt-message": "Diese Seite wurde bearbeitet, seit Sie sie das letzte mal geladen haben. Möchten {{GENDER:|Sie}} die Bearbeitung der alten Version fortsetzen oder die aktuelle Version bearbeiten?", - "visualeditor-autosave-modified-prompt-title": "{{GENDER:|Ihre}} Bearbeitung wiederherstellen?", - "visualeditor-autosave-not-recovered-text": "Ihre ungespeicherten Änderungen konnten nicht wiederhergestellt werden.", - "visualeditor-autosave-not-recovered-title": "Die Wiederherstellung Ihrer Änderungen ist fehlgeschlagen", - "visualeditor-autosave-recovered-text": "Ihre ungespeicherten Änderungen wurden automatisch wiederhergestellt.", - "visualeditor-ca-editsource-section": "Quelltext bearbeiten", - "visualeditor-dialog-media-alttext-section-help": "Sie können dies verwenden, um eine Textbeschreibung für Menschen zu schreiben, die das Element nicht sehen können. Die Beschreibung sollte genug für sie zum Verstehen des Zwecks und der Information sein, die vom Medienelement gegeben wird. Dies ist wichtig für blinde Benutzer und andere Menschen, die Screenreader-Software oder Nur-Text-Browser verwenden.", - "visualeditor-dialog-media-content-section-help": "Sie können dies verwenden, um eine Bezeichnung anzuzeigen, die neben dem Element für alle Leser angezeigt wird. Dies wird oft verwendet, um zu erklären, warum das Element für den Kontext relevant ist, in dem es angezeigt wird. Sie sollte knapp und informativ sein.", - "visualeditor-dialog-media-position-checkbox-help": "Sie können dieses Medienelement in der Zeile mit dem Seitentext anstatt umgebend erscheinen lassen. Sie sollten dies nur selten tun, da es den Textfluss aufbricht, wenn Sie die Markierung dieses Kästchens aufheben.", - "visualeditor-dialog-media-position-section-help": "Sie können festlegen, wo dieses Medienelement auf der Seite erscheinen soll. Dies wird manchmal verwendet, um eine lange Zeile von Bildern auf einer Seite umzubrechen.", - "visualeditor-dialog-media-size-section-help": "Sie können festlegen, wie groß das Medienelement auf der Seite erscheinen soll. Dies sollte fast immer die normale Größe sein, da eine benutzerdefinierte Größe die Seitengestaltung für Leser beeinflusst und sie inkonsistent macht.", - "visualeditor-dialog-media-type-section-help": "Sie können festlegen, wie das Medienelement auf der Seite erscheinen soll. Dies sollte das Vorschaubildformat sein, um mit anderen Seiten in fast allen Fällen konsistent zu sein.", - "visualeditor-dialog-meta-categories-defaultsort-help": "Sie können überschreiben, wie diese Seite innerhalb einer Kategorie sortiert wird durch Festlegen eines anderen zu sortierenden Indexes. Dies wird oft verwendet, um Seiten über Personen bei ihrem Nachnamen anzuzeigen, jedoch wird der Vorname zuerst angezeigt.", - "visualeditor-dialog-meta-settings-displaytitle-help": "Sie können durch eine andere Bezeichnung überschreiben, wie der Titel dieser Seite angezeigt wird.", - "visualeditor-dialog-meta-settings-hiddencat-help": "Sie können verhindern, dass diese Kategorie in der Kategorieliste auf Mitgliedsseiten angezeigt wird. Dies ist nützlich für Kategorien, die für Autoren interessant sind, jedoch nicht für die meisten Leser, wie z. B. Seiten, die eine Illustration erfordern.", - "visualeditor-dialog-meta-settings-index-help": "Sie können Suchmaschinen zwingen, diese Seite in ihren relevanten Ergebnissen aufzulisten oder nicht. Diese Option beeinflusst nicht die Suche in der Website.", - "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Sie können die Anzeige einer zusätzlichen Registerkarte neben der Registerkarte „$1“ auf dieser Seite zum einfachen Hinzufügen eines neuen Abschnitts erzwingen oder die Anzeige unterdrücken.", - "visualeditor-dialog-meta-settings-nocontentconvert-help": "Sie können verhindern, dass die Inhalte dieser Seite automatisch in andere Schriften konvertiert werden.", - "visualeditor-dialog-meta-settings-noeditsection-help": "Sie können verhindern, dass die Bearbeitungslinks neben jedem Abschnitt erscheinen in dem ungewöhnlichen Fall, wo es angebracht ist.", - "visualeditor-dialog-meta-settings-nogallery-help": "Sie können verhindern, dass diese Kategorie Mitgliedsdateien als Galerie anzeigt, falls dies unangebracht ist.", - "visualeditor-dialog-meta-settings-notitleconvert-help": "Sie können verhindern, dass der Titel dieser Seite automatisch in andere Schriften umgewandelt wird.", - "visualeditor-dialog-meta-settings-redirect-help": "Sie können diese Seite in eine Weiterleitung verwandeln, einer Seite, die andere Leser automatisch auf eine andere Seite auf diesem Wiki führt. Dies ist nützlich für Fehlschreibungen und alternative Namen oder Konzepte. Falls Sie sich dazu entschließen, sehen Leser nicht die Inhalte dieser Seite.", - "visualeditor-dialog-meta-settings-redirect-statichelp": "Sie können verhindern, dass diese Weiterleitung bei Verschiebung der Zielseite automatisch aktualisiert wird. In sehr seltenen Fällen ist dies erforderlich.", - "visualeditor-dialog-transclusion-required-parameter-is-blank": "Sind Sie sich sicher, dass Sie ohne das Ausfüllen {{PLURAL:$2|des Feldes|der $1 Felder}} fortfahren möchten?", - "visualeditor-editconflict": "Ihre Änderungen konnten aufgrund eines Bearbeitungskonflikts nicht gespeichert werden. Wollen {{GENDER:|Sie}} den Konflikt manuell beheben?", - "visualeditor-editingtabdialog-body": "{{SITENAME}} merkt sich jetzt, welchen Editor Sie bevorzugen. Sie können zwischen Bearbeitungsmodi wechseln und Ihre Einstellung später ändern.", - "visualeditor-editsummary": "Beschreiben Sie, was Sie geändert haben.", - "visualeditor-mweditmodeve-popup-body": "Sie können jederzeit zur visuellen Bearbeitung zurückkehren, indem Sie auf dieses Symbol klicken.", - "visualeditor-mweditmodeve-popup-title": "Sie haben zum Quelltext-Editor gewechselt", - "visualeditor-mweditmodewt-popup-body": "Sie können jederzeit zur Quelltextbearbeitung zurückkehren, indem Sie dieses Symbol anklicken.", - "visualeditor-mweditmodewt-popup-title": "Sie haben zur visuellen Bearbeitung gewechselt", - "visualeditor-mwsignature-tool": "Ihre Unterschrift", - "visualeditor-recreate": "Die Seite wurde gelöscht, nachdem Sie zum Bearbeiten angefangen haben. Wählen Sie „$1“, um sie neu zu erstellen.", - "visualeditor-savedialog-identify-anon": "Wollen Sie stattdessen diese Seite als anonymer Benutzer speichern? Ihre IP-Adresse wird in der Versionsgeschichte dieser Seite aufgezeichnet.", - "visualeditor-savedialog-identify-user": "Sie sind jetzt als [[User:$1|$1]] angemeldet. Wenn Sie speichern, wird Ihre Bearbeitung diesem Benutzerkonto zugeordnet.", - "visualeditor-savedialog-keyboard-shortcut-submit": "Sie können $1 drücken, um Ihre Bearbeitung zu speichern.", - "visualeditor-savedialog-label-review": "Überprüfen Sie Ihre Änderungen", - "visualeditor-savedialog-title-preview": "Eine Vorschau Ihrer Änderungen anzeigen", - "visualeditor-toload": "Der Editor wird jetzt geladen. Wenn Sie diese Meldung nach einigen Sekunden noch sehen, [$1 laden Sie bitte die Seite] neu.", - "visualeditor-wikitext-warning": "Sie benutzen den visuellen Editor. [[{{MediaWiki:visualeditor-wikitext-warning-link}}|Wikitext]] funktioniert hier nicht. Um jederzeit ohne Verlust deiner Änderungen zur Quelltextbearbeitung zurückzukehren, klicken Sie auf den Wechseln-Button." -} diff --git a/i18n/ve-mw/de.json b/i18n/ve-mw/de.json index 12c4477d55..a055f18d36 100644 --- a/i18n/ve-mw/de.json +++ b/i18n/ve-mw/de.json @@ -47,12 +47,12 @@ "visualeditor-annotations-default-start": "Beginn des mit einem Kommentar versehenen Bereichs", "visualeditor-annotations-extended-documentation": "Dieser mit einem Kommentar versehenen Bereich wurde erweitert, weil der darin enthaltene Inhalt nicht gut verschachtelt war. Es wird empfohlen, sicherzustellen, dass der kommentierte Inhalt korrekt verschachtelt ist, bevor er bearbeitet wird; andernfalls könnte ein größerer Bereich als erwartet kommentiert werden.", "visualeditor-autosave-modified-prompt-accept": "Bearbeitung fortsetzen", - "visualeditor-autosave-modified-prompt-message": "Diese Seite wurde bearbeitet, seit du sie das letzte Mal geladen hast. Möchtest {{GENDER:|du}} die Bearbeitung der alten Version fortsetzen oder die aktuelle Version bearbeiten?", + "visualeditor-autosave-modified-prompt-message": "Diese Seite wurde bearbeitet, seit {{#FORMAL:du|Sie}} sie das letzte {{#FORMAL:Mal|mal}} geladen {{#FORMAL:hast|haben}}. {{#FORMAL:Möchtest|Möchten}} {{GENDER:|{{#FORMAL:du|Sie}}}} die Bearbeitung der alten Version fortsetzen oder die aktuelle Version bearbeiten?", "visualeditor-autosave-modified-prompt-reject": "Aktuelle Version bearbeiten", - "visualeditor-autosave-modified-prompt-title": "{{GENDER:|Deine}} Bearbeitung wiederherstellen?", - "visualeditor-autosave-not-recovered-text": "Deine ungespeicherten Änderungen konnten nicht wiederhergestellt werden.", - "visualeditor-autosave-not-recovered-title": "Die Wiederherstellung deiner Änderungen ist fehlgeschlagen", - "visualeditor-autosave-recovered-text": "Deine ungespeicherten Änderungen wurden automatisch wiederhergestellt.", + "visualeditor-autosave-modified-prompt-title": "{{GENDER:|{{#FORMAL:Deine|Ihre}}}} Bearbeitung wiederherstellen?", + "visualeditor-autosave-not-recovered-text": "{{#FORMAL:Deine|Ihre}} ungespeicherten Änderungen konnten nicht wiederhergestellt werden.", + "visualeditor-autosave-not-recovered-title": "Die Wiederherstellung {{#FORMAL:deiner|Ihrer}} Änderungen ist fehlgeschlagen", + "visualeditor-autosave-recovered-text": "{{#FORMAL:Deine|Ihre}} ungespeicherten Änderungen wurden automatisch wiederhergestellt.", "visualeditor-autosave-recovered-title": "Änderungen wiederhergestellt", "visualeditor-backbutton-tooltip": "Zurück gehen", "visualeditor-ca-createlocaldescriptionsource": "Lokalen Beschreibungsquelltext hinzufügen", @@ -73,13 +73,13 @@ "visualeditor-dialog-extension-abandonedit": "Möchtest du diesen Dialog wirklich schließen, ohne deine Änderungen zu übernehmen?", "visualeditor-dialog-media-alttext-checkbox": "Die Bildunterschrift als Alternativtext verwenden", "visualeditor-dialog-media-alttext-section": "Alternativtext", - "visualeditor-dialog-media-alttext-section-help": "Du kannst dies verwenden, um eine Textbeschreibung für Menschen zu schreiben, die das Element nicht sehen können. Die Beschreibung sollte geeignet sein, um den Zweck und die Angaben des Medienelements verstehen zu können. Dies ist wichtig für blinde Benutzer und andere Menschen, die Screenreader-Software oder Nur-Text-Browser verwenden.", + "visualeditor-dialog-media-alttext-section-help": "{{#FORMAL:Du kannst|Sie können}} dies verwenden, um eine Textbeschreibung für Menschen zu schreiben, die das Element nicht sehen können. Die Beschreibung sollte geeignet sein, um den Zweck und die Angaben des Medienelements verstehen zu können. Dies ist wichtig für blinde Benutzer und andere Menschen, die Screenreader-Software oder Nur-Text-Browser verwenden.", "visualeditor-dialog-media-change-image": "Bild ändern", "visualeditor-dialog-media-choose-image": "Dieses Bild weiterverwenden", "visualeditor-dialog-media-content-description-link": "(Beschreibungsseite)", "visualeditor-dialog-media-content-filename": "Dateiname", "visualeditor-dialog-media-content-section": "Beschriftung", - "visualeditor-dialog-media-content-section-help": "Du kannst dies verwenden, um eine Bezeichnung anzuzeigen, die neben dem Element für alle Leser angezeigt wird. Dies wird oft verwendet, um zu erklären, warum das Element für den Kontext relevant ist, in dem es angezeigt wird. Sie sollte knapp und informativ sein.", + "visualeditor-dialog-media-content-section-help": "{{#FORMAL:Du kannst|Sie können}} dies verwenden, um eine Bezeichnung anzuzeigen, die neben dem Element für alle Leser angezeigt wird. Dies wird oft verwendet, um zu erklären, warum das Element für den Kontext relevant ist, in dem es angezeigt wird. Sie sollte knapp und informativ sein.", "visualeditor-dialog-media-goback": "Zurück", "visualeditor-dialog-media-info-artist": "Hochgeladen von $1", "visualeditor-dialog-media-info-audiofile": "Audiodatei", @@ -91,21 +91,21 @@ "visualeditor-dialog-media-page-advanced": "Erweitert", "visualeditor-dialog-media-page-general": "Allgemein", "visualeditor-dialog-media-position-checkbox": "Text um dieses Objekt umbrechen", - "visualeditor-dialog-media-position-checkbox-help": "Du kannst dieses Medienelement in der Zeile mit dem Seitentext anstatt umgebend erscheinen lassen. Du solltest dies nur selten tun, da es den Textfluss aufbricht, falls du die Markierung dieses Kästchens aufhebst.", + "visualeditor-dialog-media-position-checkbox-help": "{{#FORMAL:Du kannst|Sie können}} dieses Medienelement in der Zeile mit dem Seitentext anstatt umgebend erscheinen lassen. {{#FORMAL:Du solltest|Sie sollten}} dies nur selten tun, da es den Textfluss aufbricht, {{#FORMAL:falls du|wenn Sie}} die Markierung dieses Kästchens {{#FORMAL:aufhebst|aufheben}}.", "visualeditor-dialog-media-position-section": "Position", - "visualeditor-dialog-media-position-section-help": "Du kannst festlegen, wo dieses Medienelement auf der Seite erscheinen soll. Dies wird manchmal verwendet, um eine lange Zeile von Bildern auf einer Seite umzubrechen.", + "visualeditor-dialog-media-position-section-help": "{{#FORMAL:Du kannst|Sie können}} festlegen, wo dieses Medienelement auf der Seite erscheinen soll. Dies wird manchmal verwendet, um eine lange Zeile von Bildern auf einer Seite umzubrechen.", "visualeditor-dialog-media-save": "Speichern", "visualeditor-dialog-media-search-tab-search": "Suchen", "visualeditor-dialog-media-search-tab-upload": "Hochladen", "visualeditor-dialog-media-size-section": "Bildgröße", - "visualeditor-dialog-media-size-section-help": "Du kannst festlegen, wie groß das Medienelement auf der Seite erscheinen soll. Dies sollte fast immer die normale Größe sein, da eine benutzerdefinierte Größe die Seitengestaltung für Leser beeinflusst und sie inkonsistent macht.", + "visualeditor-dialog-media-size-section-help": "{{#FORMAL:Du kannst|Sie können}} festlegen, wie groß das Medienelement auf der Seite erscheinen soll. Dies sollte fast immer die normale Größe sein, da eine benutzerdefinierte Größe die Seitengestaltung für Leser beeinflusst und sie inkonsistent macht.", "visualeditor-dialog-media-title": "Medieneinstellungen", "visualeditor-dialog-media-type-border": "Umrandung", "visualeditor-dialog-media-type-frame": "Rahmen", "visualeditor-dialog-media-type-frameless": "Rahmenlos", "visualeditor-dialog-media-type-none": "Einfach", "visualeditor-dialog-media-type-section": "Bildtyp", - "visualeditor-dialog-media-type-section-help": "Du kannst festlegen, wie das Medienelement auf der Seite erscheinen soll. Dies sollte das Vorschaubildformat sein, um mit anderen Seiten in fast allen Fällen konsistent zu sein.", + "visualeditor-dialog-media-type-section-help": "{{#FORMAL:Du kannst|Sie können}} festlegen, wie das Medienelement auf der Seite erscheinen soll. Dies sollte das Vorschaubildformat sein, um mit anderen Seiten in fast allen Fällen konsistent zu sein.", "visualeditor-dialog-media-type-thumb": "Vorschaubild", "visualeditor-dialog-media-upload": "Hochladen", "visualeditor-dialog-meta-advancedsettings-label": "Erweiterte Einstellungen", @@ -113,7 +113,7 @@ "visualeditor-dialog-meta-categories-addcategory-label": "Eine Kategorie zu dieser Seite hinzufügen", "visualeditor-dialog-meta-categories-category": "Kategorie", "visualeditor-dialog-meta-categories-data-label": "Kategorien", - "visualeditor-dialog-meta-categories-defaultsort-help": "Um eine Seite innerhalb einer Kategorie anders als nach dem Anfangsbuchstaben (Sortierindex) zu sortieren, kannst du hier einen anderen Index festlegen. Damit überschreibst du den Standard. Das wird meist verwendet, wenn Seiten über Personen nach ihrem Nachnamen sortiert werden sollen, obwohl der Artikel mit dem Vornamen beginnt.", + "visualeditor-dialog-meta-categories-defaultsort-help": "Um eine Seite innerhalb einer Kategorie anders als nach dem Anfangsbuchstaben (Sortierindex) zu sortieren, {{#FORMAL:kannst du|können Sie}} hier einen anderen Index festlegen. Damit {{#FORMAL:überschreibst du|überschreiben Sie}} den Standard. Das wird meist verwendet, wenn Seiten über Personen nach ihrem Nachnamen sortiert werden sollen, obwohl der Artikel mit dem Vornamen beginnt.", "visualeditor-dialog-meta-categories-defaultsort-label": "Diese Seite standardmäßig sortieren als", "visualeditor-dialog-meta-categories-hidden": "Diese Kategorie wird nicht auf Seiten angezeigt, auf denen sie hinzugefügt wurde.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Versteckte Kategorien", @@ -132,32 +132,32 @@ "visualeditor-dialog-meta-languages-readonlynote": "Dies ist eine Liste von Seiten in anderen Sprachen, die auf dieser Seite verlinkt sind. Sie kann derzeit nur im Quelltextmodus oder auf Wikidata bearbeitet werden.", "visualeditor-dialog-meta-languages-section": "Sprachen", "visualeditor-dialog-meta-settings-displaytitle": "Anzeigetitel", - "visualeditor-dialog-meta-settings-displaytitle-help": "Du kannst durch eine andere Bezeichnung überschreiben, wie der Titel dieser Seite angezeigt wird.", - "visualeditor-dialog-meta-settings-hiddencat-help": "Du kannst verhindern, dass diese Kategorie in der Kategorieliste auf Mitgliedsseiten angezeigt wird. Dies ist nützlich für Kategorien, die für Autoren interessant sind, jedoch nicht für die meisten Leser, wie z. B. Seiten, die eine Illustration erfordern.", + "visualeditor-dialog-meta-settings-displaytitle-help": "{{#FORMAL:Du kannst|Sie können}} durch eine andere Bezeichnung überschreiben, wie der Titel dieser Seite angezeigt wird.", + "visualeditor-dialog-meta-settings-hiddencat-help": "{{#FORMAL:Du kannst|Sie können}} verhindern, dass diese Kategorie in der Kategorieliste auf Mitgliedsseiten angezeigt wird. Dies ist nützlich für Kategorien, die für Autoren interessant sind, jedoch nicht für die meisten Leser, wie z. B. Seiten, die eine Illustration erfordern.", "visualeditor-dialog-meta-settings-hiddencat-label": "Versteckte Kategorie", "visualeditor-dialog-meta-settings-index-default": "Standard", "visualeditor-dialog-meta-settings-index-disable": "Nein", "visualeditor-dialog-meta-settings-index-force": "Ja", - "visualeditor-dialog-meta-settings-index-help": "Du kannst Suchmaschinen zwingen, diese Seite in ihren relevanten Ergebnissen aufzulisten oder nicht. Diese Option beeinflusst nicht die Suche in der Website.", + "visualeditor-dialog-meta-settings-index-help": "{{#FORMAL:Du kannst|Sie können}} Suchmaschinen zwingen, diese Seite in ihren relevanten Ergebnissen aufzulisten oder nicht. Diese Option beeinflusst nicht die Suche in der Website.", "visualeditor-dialog-meta-settings-index-label": "Diese Seite von Suchmaschinen indexieren lassen", "visualeditor-dialog-meta-settings-label": "Seiteneinstellungen", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Standard", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Nein", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Ja", - "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Du kannst die Anzeige einer zusätzlichen Registerkarte neben der Registerkarte „$1“ auf dieser Seite zum einfachen Hinzufügen eines neuen Abschnitts erzwingen oder die Anzeige unterdrücken.", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "{{#FORMAL:Du kannst|Sie können}} die Anzeige einer zusätzlichen Registerkarte neben der Registerkarte „$1“ auf dieser Seite zum einfachen Hinzufügen eines neuen Abschnitts erzwingen oder die Anzeige unterdrücken.", "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Eine Registerkarte auf dieser Seite zum Hinzufügen eines neuen Abschnitts anzeigen", - "visualeditor-dialog-meta-settings-nocontentconvert-help": "Du kannst verhindern, dass die Inhalte dieser Seite automatisch in andere Schriften konvertiert werden.", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "{{#FORMAL:Du kannst|Sie können}} verhindern, dass die Inhalte dieser Seite automatisch in andere Schriften konvertiert werden.", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Inhalt zwischen den Sprachvarianten nicht konvertieren", - "visualeditor-dialog-meta-settings-noeditsection-help": "Du kannst verhindern, dass die Bearbeitungslinks neben jedem Abschnitt erscheinen in dem ungewöhnlichen Fall, wo es angebracht ist.", + "visualeditor-dialog-meta-settings-noeditsection-help": "{{#FORMAL:Du kannst|Sie können}} verhindern, dass die Bearbeitungslinks neben jedem Abschnitt erscheinen in dem ungewöhnlichen Fall, wo es angebracht ist.", "visualeditor-dialog-meta-settings-noeditsection-label": "Die Bearbeiten-Links neben den Seitenüberschriften ausblenden.", - "visualeditor-dialog-meta-settings-nogallery-help": "Du kannst verhindern, dass diese Kategorie Mitgliedsdateien als Galerie anzeigt, falls dies unangebracht ist.", + "visualeditor-dialog-meta-settings-nogallery-help": "{{#FORMAL:Du kannst|Sie können}} verhindern, dass diese Kategorie Mitgliedsdateien als Galerie anzeigt, falls dies unangebracht ist.", "visualeditor-dialog-meta-settings-nogallery-label": "Galerie deaktivieren", - "visualeditor-dialog-meta-settings-notitleconvert-help": "Du kannst verhindern, dass der Titel dieser Seite automatisch in andere Schriften umgewandelt wird.", + "visualeditor-dialog-meta-settings-notitleconvert-help": "{{#FORMAL:Du kannst|Sie können}} verhindern, dass der Titel dieser Seite automatisch in andere Schriften umgewandelt wird.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Titel zwischen den Sprachvarianten nicht konvertieren", - "visualeditor-dialog-meta-settings-redirect-help": "Du kannst diese Seite in eine Weiterleitung verwandeln, einer Seite, die andere Leser automatisch auf eine andere Seite auf diesem Wiki führt. Dies ist nützlich für Fehlschreibungen und alternative Namen oder Konzepte. Falls du dich dazu entschließt, sehen Leser nicht die Inhalte dieser Seite.", + "visualeditor-dialog-meta-settings-redirect-help": "{{#FORMAL:Du kannst|Sie können}} diese Seite in eine Weiterleitung verwandeln, einer Seite, die andere Leser automatisch auf eine andere Seite auf diesem Wiki führt. Dies ist nützlich für Fehlschreibungen und alternative Namen oder Konzepte. Falls {{#FORMAL:du dich|Sie sich}} dazu {{#FORMAL:entschließt|entschließen}}, sehen Leser nicht die Inhalte dieser Seite.", "visualeditor-dialog-meta-settings-redirect-label": "Diese Seite weiterleiten nach", "visualeditor-dialog-meta-settings-redirect-placeholder": "Zielseite für die Weiterleitung", - "visualeditor-dialog-meta-settings-redirect-statichelp": "Du kannst verhindern, dass diese Weiterleitung bei Verschiebung der Zielseite automatisch aktualisiert wird. In sehr seltenen Fällen ist dies erforderlich.", + "visualeditor-dialog-meta-settings-redirect-statichelp": "{{#FORMAL:Du kannst|Sie können}} verhindern, dass diese Weiterleitung bei Verschiebung der Zielseite automatisch aktualisiert wird. In sehr seltenen Fällen ist dies erforderlich.", "visualeditor-dialog-meta-settings-redirect-staticlabel": "Diese Weiterleitung nicht aktualisieren, wenn die Zielseite verschoben wird.", "visualeditor-dialog-meta-settings-section": "Seiteneinstellungen", "visualeditor-dialog-meta-settings-toc-default": "Falls nötig", @@ -226,7 +226,7 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Zurück gehen", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Trotzdem fortfahren", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Es {{PLURAL:$1|fehlt ein erforderlicher Parameter|fehlen erforderliche Parameter}}", - "visualeditor-dialog-transclusion-required-parameter-is-blank": "Bist du sicher, dass du ohne das Ausfüllen {{PLURAL:$2|des Parameters|der $1 Parameter}} fortfahren möchtest?", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "{{#FORMAL:Bist du|Sind Sie sich}} sicher, dass {{#FORMAL:du|Sie}} ohne das Ausfüllen {{PLURAL:$2|des Parameters|der $1 Parameter}} fortfahren {{#FORMAL:möchtest|möchten}}?", "visualeditor-dialog-transclusion-see-template": "Die Vorlagen werden von den Benutzern erstellt und können unvollständige Beschreibungen enthalten. Möglicherweise gibt es zusätzliche Informationen auf der [[$2|Vorlagenseite]].", "visualeditor-dialog-transclusion-title-insert-template": "Eine Vorlage einfügen", "visualeditor-dialog-transclusion-title-insert-known-template": "Einfügen: $1", @@ -240,13 +240,13 @@ "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Drücke Strg+Entf, um das Wikitext-Element zu löschen.", "visualeditor-dialogbutton-media-tooltip": "Bilder und Medien", "visualeditor-dialogbutton-template-tooltip": "Vorlage", - "visualeditor-editconflict": "Deine Änderungen konnten aufgrund eines Bearbeitungskonflikts nicht gespeichert werden. Willst {{GENDER:|du}} den Konflikt manuell beheben?", - "visualeditor-editingtabdialog-body": "{{SITENAME}} merkt sich jetzt, welchen Editor du bevorzugst. Du kannst zwischen Bearbeitungsmodi wechseln und deine Einstellung später ändern.", + "visualeditor-editconflict": "{{#FORMAL:Deine|Ihre}} Änderungen konnten aufgrund eines Bearbeitungskonflikts nicht gespeichert werden. {{#FORMAL:Willst|Wollen}} {{GENDER:|{{#FORMAL:du|Sie}}}} den Konflikt manuell beheben?", + "visualeditor-editingtabdialog-body": "{{SITENAME}} merkt sich jetzt, welchen Editor {{#FORMAL:du bevorzugst|Sie bevorzugen}}. {{#FORMAL:Du kannst|Sie können}} zwischen Bearbeitungsmodi wechseln und {{#FORMAL:deine|Ihre}} Einstellung später ändern.", "visualeditor-editingtabdialog-ok": "Den Editor verwenden, den ich bei meiner letzten Bearbeitung verwendet habe.", "visualeditor-editingtabdialog-title": "Bearbeitungs-Registerkarten", "visualeditor-editnotices-tool": "{{PLURAL:$1|Eine Notiz|$1 Notizen}}", "visualeditor-editnotices-tooltip": "Bearbeitungshinweise", - "visualeditor-editsummary": "Bitte erläutere kurz deine Änderungen", + "visualeditor-editsummary": "Bitte {{#FORMAL:erläutere|erläutern Sie}} kurz {{#FORMAL:deine|Ihre}} Änderungen", "visualeditor-editsummary-characters-remaining": "Die verbleibende Anzahl der Zeichen", "visualeditor-educationpopup-dismiss": "Okay, verstanden.", "visualeditor-expandable-less": "Weniger", @@ -269,6 +269,7 @@ "visualeditor-includes-includeonly-description": "Wenn Inhalt von dieser Seite von einer anderen Seite verwendet wird, wird der folgende zusätzliche Inhalt hier aufgenommen:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Erfahre mehr über partielle Tranklusion]", "visualeditor-languages-tool": "Sprachen", + "visualeditor-linkcontext-uneditable": "Entschuldigung, dieser Link kann derzeit nur im Quelltextmodus bearbeitet werden.", "visualeditor-linkinspector-button-link-external": "Externe Seite", "visualeditor-linkinspector-button-link-internal": "Interne Seiten suchen", "visualeditor-linkinspector-convert-link-isbn": "In einen ISBN-Link konvertieren", @@ -293,14 +294,14 @@ "visualeditor-mweditmodesource-progress": "Wechsle zur Quelltextbearbeitung …", "visualeditor-mweditmodesource-tool-current": "Quelltextbearbeitung", "visualeditor-mweditmodesource-tool-unavailable": "Quelltextbearbeitung ist hier nicht verfügbar", - "visualeditor-mweditmodeve-popup-body": "Du kannst jederzeit zur visuellen Bearbeitung zurückkehren, indem du auf dieses Symbol klickst.", - "visualeditor-mweditmodeve-popup-title": "Du hast zum Quelltext-Editor gewechselt", + "visualeditor-mweditmodeve-popup-body": "{{#FORMAL:Du kannst|Sie können}} jederzeit zur visuellen Bearbeitung zurückkehren, indem {{#FORMAL:du|Sie}} auf dieses Symbol {{#FORMAL:klickst|klicken}}.", + "visualeditor-mweditmodeve-popup-title": "{{#FORMAL:Du hast|Sie haben}} zum Quelltext-Editor gewechselt", "visualeditor-mweditmodeve-progress": "Wechsle zur visuellen Bearbeitung …", "visualeditor-mweditmodeve-showagain": "Diese Nachricht nicht mehr anzeigen", "visualeditor-mweditmodeve-tool-current": "Visuelle Bearbeitung", "visualeditor-mweditmodeve-tool-unavailable": "Visuelles Bearbeiten ist hier nicht verfügbar", - "visualeditor-mweditmodewt-popup-body": "Du kannst jederzeit zur Quelltextbearbeitung zurückkehren, indem du dieses Symbol anklickst.", - "visualeditor-mweditmodewt-popup-title": "Du hast zur visuellen Bearbeitung gewechselt", + "visualeditor-mweditmodewt-popup-body": "{{#FORMAL:Du kannst|Sie können}} jederzeit zur Quelltextbearbeitung zurückkehren, indem {{#FORMAL:du|Sie}} dieses Symbol {{#FORMAL:anklickst|anklicken}}.", + "visualeditor-mweditmodewt-popup-title": "{{#FORMAL:Du hast|Sie haben}} zur visuellen Bearbeitung gewechselt", "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|Bild|Bilder}}", "visualeditor-mwgallerydialog-caption-field-label": "Galerieüberschrift", "visualeditor-mwgallerydialog-card-images": "Bilder", @@ -328,8 +329,8 @@ "visualeditor-mwgallerydialog-widths-input-placeholder": "Standardbreite: $1 Pixel", "visualeditor-mwpredialog-convert": "Textgestaltung erlauben", "visualeditor-mwpredialog-title": "Vorformatierter Klartext", - "visualeditor-mwsignature-tool": "Deine Unterschrift", - "visualeditor-preference-visualeditor": "Aktivieren des visuellen Editors", + "visualeditor-mwsignature-tool": "{{#FORMAL:Deine|Ihre}} Unterschrift", + "visualeditor-preference-visualeditor": "Visuellen Editor aktivieren", "visualeditor-preference-newwikitexteditor-enable": "Wikitextmodus innerhalb des visuellen Editors anstelle eines anderen Wikitexteditors verwenden", "visualeditor-preference-newwikitexteditor-help": "Dies wird manchmal als „Wikitext-Editor von 2017“ bezeichnet.", "visualeditor-preference-tabs": "Bearbeitungsmodus:", @@ -344,17 +345,17 @@ "visualeditor-rebase-client-import": "Importieren", "visualeditor-rebase-client-import-name": "Seitentitel", "visualeditor-rebase-client-title-help": "Du kannst die Änderungen vor dem Speichern überprüfen.", - "visualeditor-recreate": "Die Seite wurde gelöscht, nachdem du mit der Bearbeitung angefangen hast. Wähle „$1“, um sie neu zu erstellen.", + "visualeditor-recreate": "Die Seite wurde gelöscht, nachdem {{#FORMAL:du|Sie}} mit der Bearbeitung angefangen {{#FORMAL:hast|haben}}. {{#FORMAL:Wähle|Wählen Sie}} „$1“, um sie neu zu erstellen.", "visualeditor-redirect-description": "Weiterleitung auf $1", - "visualeditor-savedialog-identify-anon": "Du bist nicht mehr angemeldet. Wenn du fortfährst, wird deine IP-Adresse in der Versionsgeschichte dieser Seite erfasst .", + "visualeditor-savedialog-identify-anon": "{{#FORMAL:Du bist|Sie sind}} nicht mehr angemeldet. Wenn {{#FORMAL:du fortfährst|Sie fortfahren}}, wird {{#FORMAL:deine|Ihre}} IP-Adresse in der Versionsgeschichte dieser Seite erfasst .", "visualeditor-savedialog-identify-temp": "Du verwendest jetzt den temporären Benutzernamen $1. Wenn du fortfährst, wird deine Bearbeitung mit diesem Benutzernamen verknüpft.", - "visualeditor-savedialog-identify-user": "Du bist jetzt als [[User:$1|$1]] angemeldet. Wenn du fortfährst, wird deine Bearbeitung mit diesem Konto verknüpft.", - "visualeditor-savedialog-keyboard-shortcut-submit": "Du kannst $1 drücken, um deine Bearbeitung zu speichern.", + "visualeditor-savedialog-identify-user": "{{#FORMAL:Du bist|Sie sind}} jetzt als [[User:$1|$1]] angemeldet. Wenn {{#FORMAL:du fortfährst|Sie fortfahren}}, wird {{#FORMAL:deine|Ihre}} Bearbeitung mit diesem Konto verknüpft.", + "visualeditor-savedialog-keyboard-shortcut-submit": "{{#FORMAL:Du kannst|Sie können}} $1 drücken, um {{#FORMAL:deine|Ihre}} Bearbeitung zu speichern.", "visualeditor-savedialog-label-publish-short": "Veröffentlichen", "visualeditor-savedialog-label-publish-short-start": "Veröffentlichen …", "visualeditor-savedialog-label-resolve-conflict": "Konflikt lösen", "visualeditor-savedialog-label-resume-editing": "Bearbeitung fortsetzen", - "visualeditor-savedialog-label-review": "Überprüfe deine Änderungen", + "visualeditor-savedialog-label-review": "{{#FORMAL:Überprüfe deine|Überprüfen Sie Ihre}} Änderungen", "visualeditor-savedialog-label-review-good": "Zurück zum Speicherformular", "visualeditor-savedialog-label-save-short": "Speichern", "visualeditor-savedialog-label-save-short-start": "Speichern …", @@ -362,7 +363,7 @@ "visualeditor-savedialog-review-visual": "Visuell", "visualeditor-savedialog-review-wikitext": "Wikitext", "visualeditor-savedialog-title-conflict": "Konflikt", - "visualeditor-savedialog-title-preview": "Eine Vorschau deiner Änderungen anzeigen", + "visualeditor-savedialog-title-preview": "Eine Vorschau {{#FORMAL:deiner|Ihrer}} Änderungen anzeigen", "visualeditor-savedialog-title-review": "Änderungen überprüfen", "visualeditor-savedialog-title-save": "Änderungen speichern", "visualeditor-section-body-placeholder": "Neuer Abschnitt", @@ -373,11 +374,11 @@ "visualeditor-special-characters-group-other": "Oft verwendet", "visualeditor-templatesused-tool": "Verwendete Vorlagen", "visualeditor-title-error": "Ungültiger Titel.", - "visualeditor-toload": "Der Editor wird jetzt geladen. Wenn du diese Meldung nach einigen Sekunden noch siehst, [$1 lade bitte die Seite] neu.", + "visualeditor-toload": "Der Editor wird jetzt geladen. Wenn {{#FORMAL:du|Sie}} diese Meldung nach einigen Sekunden noch {{#FORMAL:siehst|sehen}}, [$1 bitte {{#FORMAL:aktualisiere|aktualisieren Sie}} die Seite].", "visualeditor-tooltip-non-breaking-space": "Nicht umbrechendes Leerzeichen", "visualeditor-version-label": "Version", "visualeditor-wikitext-progress": "Konvertiere Wikitext", - "visualeditor-wikitext-warning": "Du benutzt den visuellen Editor. [[{{MediaWiki:visualeditor-wikitext-warning-link}}|Wikitext]] funktioniert hier nicht. Um jederzeit ohne Verlust deiner Änderungen zur Quelltextbearbeitung zurückzukehren, klicke auf den Wechseln-Button.", + "visualeditor-wikitext-warning": "{{#FORMAL:Du benutzt|Sie benutzen}} den visuellen Editor. [[{{MediaWiki:visualeditor-wikitext-warning-link}}|Wikitext]] funktioniert hier nicht. Um jederzeit ohne Verlust deiner Änderungen zur Quelltextbearbeitung zurückzukehren, {{#FORMAL:klicke|klicken Sie}} auf den Wechseln-Button.", "visualeditor-wikitext-warning-title": "Wikitext entdeckt", "visualeditor-wikitextconvert-title": "Formatierung in Wikitext konvertieren?", "visualeditor-wikitextconvert-message": "Du hast formatierte Inhalte eingefügt. Möchtest du diese Formatierung in Wikitext umwandeln?", diff --git a/i18n/ve-mw/dga.json b/i18n/ve-mw/dga.json index ffd401eb62..183925e731 100644 --- a/i18n/ve-mw/dga.json +++ b/i18n/ve-mw/dga.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Alhassan Mohammed Awal", - "Amire80", "Joachim Yirkang", "Linus Konkor", "Zakaria Tunsung" diff --git a/i18n/ve-mw/din.json b/i18n/ve-mw/din.json index e1ba6787e6..c33276370a 100644 --- a/i18n/ve-mw/din.json +++ b/i18n/ve-mw/din.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Dinkawiki" ] }, diff --git a/i18n/ve-mw/diq.json b/i18n/ve-mw/diq.json index 5bdde989a8..80b410e088 100644 --- a/i18n/ve-mw/diq.json +++ b/i18n/ve-mw/diq.json @@ -6,6 +6,7 @@ "Asmen", "Erdemaslancan", "Gambollar", + "GolyatGeri", "Gorizon", "Gırd", "Kghbln", @@ -101,7 +102,7 @@ "visualeditor-dialog-meta-languages-label": "Zıwani", "visualeditor-dialog-meta-languages-link-label": "Pela gıreyıne", "visualeditor-dialog-meta-languages-name-label": "Zıwan", - "visualeditor-dialog-meta-languages-readonlynote": "Ena yew lista zıwananê binana ke yew gıre ra bestiyê. Nıka, tenya çımeyê terzi de ya zi Wikidata de vurnayış beno.", + "visualeditor-dialog-meta-languages-readonlynote": "Ena yew lista zıwananê binana ke yew gıre ra bestiyê. Nıka, tenya çımeyê terzi de ya zi Wikidayıt de vurnayış beno.", "visualeditor-dialog-meta-languages-section": "Zıwani", "visualeditor-dialog-meta-settings-displaytitle": "Sernuşte", "visualeditor-dialog-meta-settings-displaytitle-help": "Sernamey ena perrer herunda babetna ju etiketer asnayışa cı ravêrde şenê bıkarnê.", diff --git a/i18n/ve-mw/dlg.json b/i18n/ve-mw/dlg.json new file mode 100644 index 0000000000..cca588ddb9 --- /dev/null +++ b/i18n/ve-mw/dlg.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Sauit" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Локально код курдук тэрий", + "visualeditor-ca-createsource": "Куоду тэрий", + "visualeditor-ca-editsource": "Куоду уларыт", + "visualeditor-ca-editsource-section": "куоду уларыт" +} diff --git a/i18n/ve-mw/dua.json b/i18n/ve-mw/dua.json index b3d74dbd88..b062567234 100644 --- a/i18n/ve-mw/dua.json +++ b/i18n/ve-mw/dua.json @@ -1,8 +1,8 @@ { "@metadata": { "authors": [ - "Amire80", "EbelleMarcel", + "NdumbèNdumbè", "Olivier Moukodi" ] }, diff --git a/i18n/ve-mw/dz.json b/i18n/ve-mw/dz.json new file mode 100644 index 0000000000..9d595f1be6 --- /dev/null +++ b/i18n/ve-mw/dz.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Sonamdargay" + ] + }, + "visualeditor-ca-editsource-section": "འབྱུང་ཁུངས་ཞུན་དག་འབད།" +} diff --git a/i18n/ve-mw/en-gb.json b/i18n/ve-mw/en-gb.json index 36ee5231c5..a0518285f4 100644 --- a/i18n/ve-mw/en-gb.json +++ b/i18n/ve-mw/en-gb.json @@ -14,9 +14,5 @@ "Shirayuki" ] }, - "visualeditor-dialog-media-position-checkbox-help": "You can make this media item appear in line with the text of the page instead of floating. You should do this sparingly, as it will break up the flow of the text if you uncheck this box.", - "visualeditor-dialog-media-size-section-help": "You can set how large the media item appears on the page. This should almost always be the normal size, as a custom size will interfere with the layout of the page for readers and make the media items seem inconsistent.", - "visualeditor-dialog-meta-categories-defaultsort-help": "You can over-ride how this page is sorted when displayed within a category by setting a different index to sort with instead. This is often used to make pages about people show by last name, but be named with their first name shown first.", - "visualeditor-dialog-meta-settings-displaytitle-help": "You can over-ride how this page's title is displayed by setting a different label to show instead.", "visualeditor-dialog-transclusion-template-title-modifier": "Template documentation and [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter parameter] names (if existing) are not available when editing templates utilising nested syntax or modifiers, such as [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst]." } diff --git a/i18n/ve-mw/en.json b/i18n/ve-mw/en.json index 532491a8e8..25a2542e7f 100644 --- a/i18n/ve-mw/en.json +++ b/i18n/ve-mw/en.json @@ -266,6 +266,7 @@ "visualeditor-includes-includeonly-description": "When content from this page is used by another page, the following additional content will be included here:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Learn more about partial transclusion]", "visualeditor-languages-tool": "Languages", + "visualeditor-linkcontext-uneditable": "Sorry, this link can only be edited in source mode for now.", "visualeditor-linkinspector-button-link-external": "External site", "visualeditor-linkinspector-button-link-internal": "Search internal pages", "visualeditor-linkinspector-convert-link-isbn": "Convert to ISBN link", @@ -371,10 +372,11 @@ "visualeditor-loaderror-wrongmode": "Tried to load the editor in wrong mode (data type: \"$1\", editor mode: \"$2\").", "visualeditor-settings-tool": "Page settings", "visualeditor-special-characters-group-other": "Often used", + "visualeditor-template-sandbox-subpage": "sandbox", "visualeditor-template-tools-definition.json": "null", "visualeditor-templatesused-tool": "Templates used", "visualeditor-title-error": "Invalid title.", - "visualeditor-toload": "The editor will now load. If you still see this message after a few seconds, please [$1 reload the page].", + "visualeditor-toload": "The editor will now load. If you still see this message after a few seconds, please [$1 refresh the page].", "visualeditor-tooltip-non-breaking-space": "Non-breaking space", "visualeditor-version-label": "Version", "visualeditor-wikitext-progress": "Converting wikitext", diff --git a/i18n/ve-mw/es.json b/i18n/ve-mw/es.json index e7884c982b..f41fb8ef63 100644 --- a/i18n/ve-mw/es.json +++ b/i18n/ve-mw/es.json @@ -110,11 +110,9 @@ "visualeditor-dialog-media-info-artist": "Subido por $1", "visualeditor-dialog-media-info-audiofile": "Archivo de audio", "visualeditor-dialog-media-info-created": "Creado el: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Autor: $1", "visualeditor-dialog-media-info-moreinfo": "Más información", "visualeditor-dialog-media-info-readmore": "Más información", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Subido el: $1", "visualeditor-dialog-media-page-advanced": "Avanzado", "visualeditor-dialog-media-page-general": "General", @@ -385,7 +383,7 @@ "visualeditor-section-body-placeholder": "Nueva sección", "visualeditor-section-title-placeholder": "Asunto", "visualeditor-settings-tool": "Configuración de página", - "visualeditor-special-characters-group-other": "Usado a menudo", + "visualeditor-special-characters-group-other": "Utilizados a menudo", "visualeditor-templatesused-tool": "Plantillas utilizadas", "visualeditor-title-error": "Título inválido.", "visualeditor-toload": "El editor se cargará ahora. Si sigue apareciendo este mensaje después de unos segundos, [$1 recarga la página].", diff --git a/i18n/ve-mw/et.json b/i18n/ve-mw/et.json index d9aa813d8f..c064e0f250 100644 --- a/i18n/ve-mw/et.json +++ b/i18n/ve-mw/et.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Adeliine", - "Amire80", "Avjoska", "Boxmein", "Cumbril", @@ -100,7 +99,7 @@ "visualeditor-dialog-meta-languages-label": "Keeled", "visualeditor-dialog-meta-languages-link-label": "Lingitud lehekülg", "visualeditor-dialog-meta-languages-name-label": "Keel", - "visualeditor-dialog-meta-languages-readonlynote": "See on loend muukeelsetest lehekülgedest, mis viitavad siia. Loendit saab praegu redigeerida vaid lähtekoodirežiimis või Vikiandmetes.", + "visualeditor-dialog-meta-languages-readonlynote": "See on loend muukeelsetest lehekülgedest, mis viitavad siia. Loendit saab praegu redigeerida vaid lähtekoodirežiimis või Wikidatas.", "visualeditor-dialog-meta-languages-section": "Keeled", "visualeditor-dialog-meta-settings-displaytitle": "Kuvatav pealkiri", "visualeditor-dialog-meta-settings-displaytitle-help": "Saad lehekülje kuvatava pealkirja üle kirjutada, kui määrad näitamiseks erineva sildi.", diff --git a/i18n/ve-mw/eu.json b/i18n/ve-mw/eu.json index 7bb9689df6..e8f737466e 100644 --- a/i18n/ve-mw/eu.json +++ b/i18n/ve-mw/eu.json @@ -52,11 +52,9 @@ "visualeditor-dialog-media-info-artist": "Nork igota:$1", "visualeditor-dialog-media-info-audiofile": "Audio fitxategia", "visualeditor-dialog-media-info-created": "Sortze-data: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Egilea:$1", "visualeditor-dialog-media-info-moreinfo": "Informazio gehiago", "visualeditor-dialog-media-info-readmore": "Irakurri gehiago", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Noiz igota:$1", "visualeditor-dialog-media-page-advanced": "Aurreratua", "visualeditor-dialog-media-page-general": "Orokorra", @@ -116,7 +114,7 @@ "visualeditor-dialog-meta-settings-notitleconvert-label": "Ez bihurtu izenburua hizkuntza aldaeren artean", "visualeditor-dialog-meta-settings-redirect-label": "Birzuzendu orri hau", "visualeditor-dialog-meta-settings-redirect-placeholder": "Helburu den birzuzenketa orria", - "visualeditor-dialog-meta-settings-redirect-staticlabel": "Ez utzi birzuzenketa eguneratzen helburu den orria mugitzen denean.", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Ez utzi birzuzenketa eguneratzen, helburu den orria mugitzen denean.", "visualeditor-dialog-meta-settings-section": "Orrialde-konfigurazioa", "visualeditor-dialog-meta-settings-toc-default": "Behar balitz", "visualeditor-dialog-meta-settings-toc-disable": "Inoiz ez", diff --git a/i18n/ve-mw/ext.json b/i18n/ve-mw/ext.json index 10672de87c..4593f725a1 100644 --- a/i18n/ve-mw/ext.json +++ b/i18n/ve-mw/ext.json @@ -8,8 +8,91 @@ ] }, "tooltip-ca-ve-edit": "Edital esta página", + "tooltip-ca-ve-edit-local": "Adital la página de descrición local", + "tooltip-ca-ve-create": "Crial esta página", + "tooltip-ca-ve-create-local": "Crial la página de descrición local", + "tooltip-ca-editsource": "Adital el cóigu huenti desta página", + "visualeditor-autosave-modified-prompt-accept": "Acontinal adición", + "visualeditor-autosave-modified-prompt-reject": "Mençal una nuea adición", + "visualeditor-autosave-modified-prompt-title": "Quiel acontinal la {{GENDER:|su}} adición?", + "visualeditor-autosave-not-recovered-text": "Non se púun arrecuperal las muas muacionis non guardás.", + "visualeditor-autosave-recovered-title": "Muacionis arrecuperás", + "visualeditor-backbutton-tooltip": "Golvel", + "visualeditor-ca-createlocaldescriptionsource": "Añidil huenti de descrición local", "visualeditor-ca-createsource": "Crial huenti", - "visualeditor-ca-editsource": "Editá'l códigu", - "visualeditor-ca-editsource-section": "Editá'l códigu", - "visualeditor-descriptionpagelink": "Project:EitolVisual" + "visualeditor-ca-editsource": "Adital cóigu", + "visualeditor-ca-editsource-section": "adital cóigu", + "visualeditor-descriptionpagelink": "Project:EitolVisual", + "visualeditor-dialog-media-change-image": "Mual santu.", + "visualeditor-dialog-media-choose-image": "Gastal esti santu", + "visualeditor-dialog-media-content-filename": "Nombri d'archivu", + "visualeditor-dialog-media-info-created": "Criau el: $1", + "visualeditor-dialog-media-info-meta-artist": "Utol: $1", + "visualeditor-dialog-media-info-moreinfo": "Más información", + "visualeditor-dialog-media-info-readmore": "Leyel más", + "visualeditor-dialog-media-info-uploaded": "Subíu el: $1", + "visualeditor-dialog-media-page-general": "General", + "visualeditor-dialog-media-save": "Guardal", + "visualeditor-dialog-media-search-tab-search": "Precural", + "visualeditor-dialog-media-size-section": "Grandol del santu.", + "visualeditor-dialog-media-type-none": "Básicu", + "visualeditor-dialog-meta-categories-category": "Categoría", + "visualeditor-dialog-meta-categories-data-label": "Categorías", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Categorías incultas", + "visualeditor-dialog-meta-categories-input-movecategorylabel": "Mual esta categoría aquina", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Nuea categoría", + "visualeditor-dialog-meta-categories-input-placeholder": "Añidil categoría", + "visualeditor-dialog-meta-categories-options": "Ocionis", + "visualeditor-dialog-meta-languages-code-label": "Cóidu d'idioma", + "visualeditor-dialog-meta-languages-label": "Idiomas", + "visualeditor-dialog-meta-languages-link-label": "Página enganchá", + "visualeditor-dialog-meta-languages-name-label": "Idioma", + "visualeditor-dialog-meta-settings-displaytitle": "Muestral títalu", + "visualeditor-dialog-meta-settings-hiddencat-label": "Categoría inculta", + "visualeditor-dialog-meta-settings-index-disable": "Non", + "visualeditor-dialog-meta-settings-index-force": "Sí", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Non", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Sí", + "visualeditor-dialog-meta-settings-toc-disable": "Jamás", + "visualeditor-dialog-meta-title": "Ocionis", + "visualeditor-dialog-transclusion-add-param-save": "Añidil", + "visualeditor-dialog-transclusion-add-template": "Añidil prantilla", + "visualeditor-dialog-transclusion-add-template-button": "Añidil prantilla", + "visualeditor-dialog-transclusion-add-template-save": "Añidil", + "visualeditor-dialog-transclusion-collapse-options": "Incultal ocionis", + "visualeditor-dialog-transclusion-filter-show-all": "Muestral tou", + "visualeditor-dialog-transclusion-param-example-long": "Ponel: $1", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Golvel", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Acontinal de tolas hormas", + "visualeditor-dialog-transclusion-title-insert-template": "Enxertal una prantilla", + "visualeditor-dialog-transclusion-title-insert-known-template": "Enxertal: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Adital: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Conteníu dela prantilla", + "visualeditor-dialog-transclusion-template-search": "Precura de prantillas", + "visualeditor-formatdropdown-format-mw-heading1": "Títalu de página", + "visualeditor-formatdropdown-format-mw-heading2": "Títalu", + "visualeditor-formatdropdown-format-mw-heading3": "Sutítalu 1", + "visualeditor-formatdropdown-format-mw-heading4": "Sutítalu 2", + "visualeditor-formatdropdown-format-mw-heading5": "Sutítalu 3", + "visualeditor-formatdropdown-format-mw-heading6": "Sutítalu 4", + "visualeditor-languages-tool": "Idiomas", + "visualeditor-linkinspector-button-link-external": "Sitiu d'ahuera", + "visualeditor-linkinspector-educationpopup-title": "Atijus", + "visualeditor-media-title-video": "Vídiu", + "visualeditor-meta-tool": "Ocionis", + "visualeditor-mweditmode-tooltip": "Mual d'aditol", + "visualeditor-mwgallerydialog-card-options": "Ocionis", + "visualeditor-mwgallerydialog-classes-field-label": "Crassis de CSS", + "visualeditor-mwgallerydialog-widths-field-label": "Anchol del santu", + "visualeditor-mwsignature-tool": "La tu hirma", + "visualeditor-rebase-client-export": "Esportal", + "visualeditor-rebase-client-export-start": "Esportal...", + "visualeditor-rebase-client-import": "Emportal", + "visualeditor-rebase-client-import-name": "Títalu de página", + "visualeditor-savedialog-label-publish-short": "Espubrical", + "visualeditor-savedialog-label-publish-short-start": "Espubrical...", + "visualeditor-savedialog-label-save-short": "Guardal", + "visualeditor-savedialog-label-save-short-start": "Guardal...", + "visualeditor-savedialog-review-nosummary": "Sin ressumi d'adición", + "visualeditor-version-label": "Vessión" } diff --git a/i18n/ve-mw/fa.json b/i18n/ve-mw/fa.json index 94f10d2e6b..f647799d57 100644 --- a/i18n/ve-mw/fa.json +++ b/i18n/ve-mw/fa.json @@ -20,6 +20,7 @@ "Jeeputer", "Ladsgroup", "Leyth", + "LordProfo", "MRG90", "Mcuteangel", "Mjbmr", @@ -76,6 +77,7 @@ "visualeditor-changedesc-mwtransclusion": "متغیرهای الگو تغییریافت", "visualeditor-desc": "ویرایشگر دیداری برای مدیاویکی", "visualeditor-descriptionpagelink": "Project:ویرایشگر دیداری", + "visualeditor-dialog-extension-abandonedit": "آیا از بستن این پنجره بدون اعمال تغییرات خود مطمئن هستید؟", "visualeditor-dialog-media-alttext-checkbox": "استفاده از توضیح به‌عنوان متن جایگزین", "visualeditor-dialog-media-alttext-section": "متن جایگزین", "visualeditor-dialog-media-alttext-section-help": "شما می‌توانید از این برای توضیحات متنی که افراد نمی‌توانند آیتم را ببینند استفاده کنید. توضیحات برای آنها برای درک بهتری از رسانه و اهدافش باید کافی باشد. این مورد برای افراد نابینا یا افرادی که از نرم‌افزارهای نمایش‌دهنده فقط-متن استفاده می‌کنند حیاتی است.", @@ -89,11 +91,9 @@ "visualeditor-dialog-media-info-artist": "بارگذاری‌شده توسط $1", "visualeditor-dialog-media-info-audiofile": "پرونده صوتی", "visualeditor-dialog-media-info-created": "ایجادشده: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "مؤلف: $1", "visualeditor-dialog-media-info-moreinfo": "اطلاعات بیشتر", "visualeditor-dialog-media-info-readmore": "بیشتر بخوانید", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "بارگذاری‌شده: $1", "visualeditor-dialog-media-page-advanced": "پیشرفته", "visualeditor-dialog-media-page-general": "عمومی", @@ -253,7 +253,7 @@ "visualeditor-editingtabdialog-title": "ویرایش زبانه‌ها", "visualeditor-editnotices-tool": "$1 آگاه‌سازی", "visualeditor-editnotices-tooltip": "اعلامیه‌های ویرایش", - "visualeditor-editsummary": "آن‌چه را تغییر دادید، توصیف کنید", + "visualeditor-editsummary": "آنچه را تغییر داده‌اید، توصیف کنید", "visualeditor-editsummary-characters-remaining": "تعداد نویسه‌های باقی‌مانده", "visualeditor-educationpopup-dismiss": "باشه، فهمیدم", "visualeditor-expandable-less": "کمتر", @@ -276,6 +276,7 @@ "visualeditor-includes-includeonly-description": "هنگامی که محتوای این صفحه در صفحه‌ای دیگر استفاده شده باشد، محتوای اضافی زیر در اینجا قرار خواهد گرفت:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion دربارهٔ تراگنجانش جزئی بیشتر بدانید]", "visualeditor-languages-tool": "زبان‌ها", + "visualeditor-linkcontext-uneditable": "متأسفیم، این پیوند در حال حاضر تنها در حالت ویرایش متنی قابل ویرایش است.", "visualeditor-linkinspector-button-link-external": "وب‌گاه بیرونی", "visualeditor-linkinspector-button-link-internal": "جستجوی صفحه‌های داخلی", "visualeditor-linkinspector-convert-link-isbn": "تبدیل به پیوند ISBN", @@ -284,6 +285,7 @@ "visualeditor-linkinspector-educationpopup-text": "پیوند دادن کلمات مهم به سایر مقالات ویکی یا سایر وب‌گاه‌ها. این کار باعث می‌شود که خواننده مطلب را بهتر متوجه شود.", "visualeditor-linkinspector-educationpopup-title": "پیوندها", "visualeditor-linkinspector-illegal-title": "عنوان صفحهٔ نامعتبر", + "visualeditor-linkinspector-invalid-blocked": "افراد در این ویکی تصمیم گرفته‌اند که پیوندها به این وبگاه مسدود شوند. لطفاً پیوند دیگری را بیازمایید.", "visualeditor-linkinspector-invalid-external": "یک نشانی اینترنتی کامل را وارد کنید؛ برای مثال: https://example.org", "visualeditor-linknodeinspector-add-label": "افزودن برچسب", "visualeditor-linknodeinspector-title": "پیوند ساده", @@ -333,7 +335,7 @@ "visualeditor-mwgallerydialog-widths-field-label": "پهنای تصویر", "visualeditor-mwgallerydialog-widths-input-placeholder": "عرض پیش‌فرض: $1 px", "visualeditor-mwpredialog-convert": "اجازهٔ تغییر سبک متن", - "visualeditor-mwpredialog-title": "ساختاربندی مجدد متن ساده", + "visualeditor-mwpredialog-title": "متن سادهٔ از پیش قالب‌بندی شده", "visualeditor-mwsignature-tool": "امضای شما", "visualeditor-preference-visualeditor": "فعال‌سازی ویرایشگر دیداری", "visualeditor-preference-newwikitexteditor-enable": "به جای استفاده از ویرایشگرهای متفاوت، استفاده از حالت ویکی‌متن درون ویرایشگر دیداری", @@ -350,7 +352,7 @@ "visualeditor-rebase-client-import": "درون‌ریزی", "visualeditor-rebase-client-import-name": "عنوان صفحه", "visualeditor-rebase-client-title-help": "شما پیش از ذخیره قادر به بازبینی تغییرات خواهید بود.", - "visualeditor-recreate": "صفحه از زمانی که شما مشغول ویرایش شدید حذف شد. برای ساخت مجدد صفحه \"$1\" را فشار دهید.", + "visualeditor-recreate": "صفحه از زمانی که شما مشغول ویرایش شدید حذف شد. برای ساخت دوبارهٔ صفحه \"$1\" را فشار دهید.", "visualeditor-redirect-description": "تغییرمسیر به $1", "visualeditor-savedialog-identify-anon": "شما از سامانه خارج شده‌اید. اگر به کار ادامه دهید، نشانی آی‌پی شما در تاریخچهٔ ویرایش صفحه ذخیره خواهد شد.", "visualeditor-savedialog-identify-temp": "شما اکنون در حال استفاده از نام کاربری موقت $1 هستید. اگر ادامه دهید، ویرایش شما به این نام کاربری منتسب خواهد شد.", diff --git a/i18n/ve-mw/fax.json b/i18n/ve-mw/fax.json new file mode 100644 index 0000000000..1daeb57fd7 --- /dev/null +++ b/i18n/ve-mw/fax.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Caro de Segeda" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Añadil fónti de descripción local", + "visualeditor-ca-createsource": "Creal fónti", + "visualeditor-ca-editsource": "Edital códigu", + "visualeditor-ca-editsource-section": "edital códigu" +} diff --git a/i18n/ve-mw/fi.json b/i18n/ve-mw/fi.json index a6ebb46552..97a6bd1fc5 100644 --- a/i18n/ve-mw/fi.json +++ b/i18n/ve-mw/fi.json @@ -43,10 +43,10 @@ "tooltip-ca-ve-edit-local": "Muokkaa paikallista kuvaussivua", "tooltip-ca-ve-create": "Luo tämä sivu", "tooltip-ca-ve-create-local": "Luo paikallinen kuvaussivu", - "tooltip-ca-editsource": "Muokkaa tämän sivun lähdekoodia", - "tooltip-ca-editsource-local": "Muokkaa paikallisen kuvaussivun lähdekoodia", - "tooltip-ca-createsource": "Luo sivun lähdekoodi", - "tooltip-ca-createsource-local": "Luo paikallisen kuvaussivun lähdekoodi", + "tooltip-ca-editsource": "Muokkaa tämän sivun wikitekstiä", + "tooltip-ca-editsource-local": "Muokkaa paikallisen kuvaussivun wikitekstiä", + "tooltip-ca-createsource": "Luo tämän sivun wikiteksti", + "tooltip-ca-createsource-local": "Luo paikallisen kuvaussivun wikiteksti", "visualeditor-advancedsettings-tool": "Lisäasetukset", "visualeditor-annotations-default-description": "Tämä sivun osa on osa huomautusaluetta.", "visualeditor-annotations-default-end": "Huomautusalueen loppu", @@ -60,18 +60,19 @@ "visualeditor-autosave-recovered-text": "Tallentamattomat muutoksesi on palautettu automaattisesti.", "visualeditor-autosave-recovered-title": "Muutokset palautettu", "visualeditor-backbutton-tooltip": "Siirry takaisin", - "visualeditor-ca-createlocaldescriptionsource": "Luo paikallisen kuvauksen lähdeteksti", + "visualeditor-ca-createlocaldescriptionsource": "Luo paikallisen kuvauksen wikiteksti", "visualeditor-ca-createsource": "Luo wikiteksti", - "visualeditor-ca-editlocaldescriptionsource": "Muokkaa paikallisen kuvauksen lähdetekstiä", + "visualeditor-ca-editlocaldescriptionsource": "Muokkaa paikallisen kuvauksen wikitekstiä", "visualeditor-ca-editsource": "Muokkaa wikitekstiä", "visualeditor-ca-editsource-section": "muokkaa wikitekstiä", - "visualeditor-ca-editsource-section-hint": "Muokkaa osion lähdekoodia: $1", + "visualeditor-ca-editsource-section-hint": "Muokkaa osion wikitekstiä: $1", "visualeditor-categories-tool": "Luokat", "visualeditor-changedesc-mwcategory-sortkey-changed": "Luokitusavain vaihdettu: $1 → $2", "visualeditor-changedesc-mwcategory-sortkey-set": "Luokitusavaimeksi asetettu $1", "visualeditor-changedesc-mwcategory-sortkey-unset": "Luokitusavain $1 poistettu", - "visualeditor-changedesc-mwredirect": "Ohjauksen kohdesivu muutettu: $1 → $2", - "visualeditor-changedesc-mwtransclusion": "Mallineen parametreja muutettu", + "visualeditor-changedesc-mwlanguagevariant": "Muutettu kielivariantin merkintätapaa", + "visualeditor-changedesc-mwredirect": "Muutettu ohjauksen kohdesivua: $1 → $2", + "visualeditor-changedesc-mwtransclusion": "Muutettu mallineen parametreja", "visualeditor-desc": "Visuaalinen muokkain MediaWikille", "visualeditor-descriptionpagelink": "Project:Visuaalinen muokkain", "visualeditor-dialog-extension-abandonedit": "Oletko varma, että haluat sulkea tämän valikon hyväksymättä muutoksia?", @@ -88,11 +89,9 @@ "visualeditor-dialog-media-info-artist": "Tallentanut $1", "visualeditor-dialog-media-info-audiofile": "Äänitiedosto", "visualeditor-dialog-media-info-created": "Luotu: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Tekijä: $1", "visualeditor-dialog-media-info-moreinfo": "Lisätietoja", "visualeditor-dialog-media-info-readmore": "Lue lisää", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Tallennettu $1", "visualeditor-dialog-media-page-advanced": "Lisäasetukset", "visualeditor-dialog-media-page-general": "Yleiset", @@ -101,7 +100,7 @@ "visualeditor-dialog-media-position-section": "Sijainti", "visualeditor-dialog-media-position-section-help": "Voit asettaa, missä tämä mediakohde näkyy sivulla. Toiminnolla voi katkaista pitkät, kuvista koostuvat rivit sivun toisessa reunassa.", "visualeditor-dialog-media-save": "Tallenna", - "visualeditor-dialog-media-search-tab-search": "Etsi", + "visualeditor-dialog-media-search-tab-search": "Haku", "visualeditor-dialog-media-search-tab-upload": "Tallenna", "visualeditor-dialog-media-size-section": "Kuvan koko", "visualeditor-dialog-media-size-section-help": "Valitse, minkäkokoisena kuva näkyy sivulla. Tämä olisi lähes aina olla normaali koko: mukautettu koko häiritsee sivun asettelua ja tekee niistä epäjohdonmukaisia.", @@ -155,7 +154,7 @@ "visualeditor-dialog-meta-settings-nocontentconvert-help": "Voit estää tämän sivun sisällön automaattisen muunnoksen toisiin kirjoitusjärjestelmiin.", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Älä muunna sisältöä kielivarianttien välillä", "visualeditor-dialog-meta-settings-noeditsection-help": "Voit poistaa Muokkaa-linkit pääotsikoiden vierestä, jos se on jostain syystä tarpeellista.", - "visualeditor-dialog-meta-settings-noeditsection-label": "Poista tällä sivulla olevat Muokkaa-linkit kunkin otsikon vierestä", + "visualeditor-dialog-meta-settings-noeditsection-label": "Poista tällä sivulla olevat Muokkaa-linkit kunkin väliotsikon vierestä", "visualeditor-dialog-meta-settings-nogallery-help": "Voit estää tätä luokkaa näyttämästä siihen kuuluvia tiedostoja gallerian muodossa, jos sellainen olisi sopimatonta tässä tapauksessa.", "visualeditor-dialog-meta-settings-nogallery-label": "Poista galleria", "visualeditor-dialog-meta-settings-notitleconvert-help": "Voit estää tämän sivun otsikon automaattisen muunnoksen toisiin kirjoitusjärjestelmiin.", @@ -169,7 +168,7 @@ "visualeditor-dialog-meta-settings-toc-default": "Tarvittaessa", "visualeditor-dialog-meta-settings-toc-disable": "Ei koskaan", "visualeditor-dialog-meta-settings-toc-force": "Aina", - "visualeditor-dialog-meta-settings-toc-help": "Voit lisätä sisällysluettelon näkyviin sivulle, vaikka sivulla olisi vain neljä pääotsikkoa tai estää sen näkymisen kokonaan. Oletuksena sisällysluettelo lisätään sivulle automaattisesti, jos pääotsikoita on vähintään neljä.", + "visualeditor-dialog-meta-settings-toc-help": "Voit pakottaa sisällysluettelon näkyviin sivulle, vaikka sivulla olisi vain neljä väliotsikkoa tai estää sen näkymisen kokonaan. Oletuksena sisällysluettelo lisätään sivulle automaattisesti, kun väliotsikoita on vähintään neljä.", "visualeditor-dialog-meta-settings-toc-label": "Näytä sisällysluettelo", "visualeditor-dialog-meta-templatesused-noresults": "Mallineita ei löytynyt.", "visualeditor-dialog-meta-title": "Valinnat", @@ -197,7 +196,7 @@ "visualeditor-dialog-transclusion-add-template-save": "Lisää", "visualeditor-dialog-transclusion-add-undocumented-param": "Lisää dokumentoimaton parametri", "visualeditor-dialog-transclusion-back-confirmation-prompt": "Palaa hakuun? Muutoksesi menetetään eikä tätä toimintoa voi kumota.", - "visualeditor-dialog-transclusion-close-confirmation-prompt": "Sulje mallinemuokkain? Muutoksesi menetetään eikä tätä voida kumota.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Sulje mallinemuokkain? Muutoksesi menetetään eikä tätä voi peruuttaa.", "visualeditor-dialog-transclusion-collapse-options": "Piilota valinnat", "visualeditor-dialog-transclusion-confirmation-discard": "Hylkää muutokset", "visualeditor-dialog-transclusion-confirmation-reject": "Jatka muokkaamista", @@ -217,8 +216,8 @@ "visualeditor-dialog-transclusion-deprecated-parameter-description": "Kenttä on vanhentunut. $1", "visualeditor-dialog-transclusion-loading": "Ladataan...", "visualeditor-dialog-transclusion-multipart-message": "Muokkaat nyt mallinetta ja yhtä tai useampaa siihen [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content yhdistettyä sisältöä] (wikitekstiä ja/tai muita mallineita).", - "visualeditor-dialog-transclusion-no-template-data-description": "Tästä mallineesta puuttuu [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData], joten sen parametrit on [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters automaattisesti generoitu]. Tämän vuoksi mallineelta ja sen parametreilta puuttuu kuvaukset. Lisätietoa saattaa olla [[$1|mallinesivulla]].", - "visualeditor-dialog-transclusion-no-template-description": "Mallineella ”$1” ei ole vielä kuvausta, mutta jotain tietoa saattaa olla [[$2|mallineen sivulla]].", + "visualeditor-dialog-transclusion-no-template-data-description": "Tästä mallineesta puuttuu [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData], joten sen parametrit on [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters luotu automaattisesti]. Tämän vuoksi mallineelta ja sen parametreilta puuttuvat kuvaukset. Lisätietoa saattaa löytyä [[$1|mallineen sivulta]].", + "visualeditor-dialog-transclusion-no-template-description": "Mallineella ”$1” ei ole vielä kuvausta, mutta jotain tietoa saattaa löytyä [[$2|mallineen sivulta]].", "visualeditor-dialog-transclusion-no-template-parameters": "Tällä mallineella ei ole dokumentoituja parametreja, ja se voi olla tarkoitettu käytettäväksi ilman niitä.", "visualeditor-dialog-transclusion-param-default": "Oletusarvo: $1", "visualeditor-dialog-transclusion-param-example-long": "Esimerkki: $1", @@ -229,10 +228,10 @@ "visualeditor-dialog-transclusion-required-parameter": "Pakollinen kenttä", "visualeditor-dialog-transclusion-required-parameter-description": "Kenttä vaaditaan.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Takaisin", - "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Jatka", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Jatka silti", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Vaadittava kenttä puuttuu|Vaadittavat kentät puuttuvat}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Haluatko varmasti jatkaa, vaikka et ole täyttänyt $1 {{PLURAL:$2|kenttää}}?", - "visualeditor-dialog-transclusion-see-template": "Mallineet ovat käyttäjien tekemiä, ja niiden selitteet voivat olla puutteellisia. Lisätietoa saattaa olla [[$2|mallineen sivulla]].", + "visualeditor-dialog-transclusion-see-template": "Mallineet ovat käyttäjien tekemiä, ja niiden kuvaukset voivat olla puutteellisia. [[$2|Mallineen sivulla]] saattaa olla lisätietoja.", "visualeditor-dialog-transclusion-title-insert-template": "Lisää malline", "visualeditor-dialog-transclusion-title-insert-known-template": "Lisää: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Muokkaa: $1", @@ -258,7 +257,7 @@ "visualeditor-expandable-more": "Laajenna", "visualeditor-feedback-defaultmessage": "URL: $1", "visualeditor-formatdropdown-format-mw-heading1": "Sivun otsikko", - "visualeditor-formatdropdown-format-mw-heading2": "Otsikko", + "visualeditor-formatdropdown-format-mw-heading2": "Väliotsikko", "visualeditor-formatdropdown-format-mw-heading3": "Alaotsikko 1", "visualeditor-formatdropdown-format-mw-heading4": "Alaotsikko 2", "visualeditor-formatdropdown-format-mw-heading5": "Alaotsikko 3", @@ -274,12 +273,13 @@ "visualeditor-includes-includeonly-description": "Kun tällä sivulla olevaa sisältöä käytetään toisella sivulla, seuraava sisältö tullaan lisäksi sisällyttämään tähän kohtaan:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Lisätietoja osittaisesta sisällytyksestä]", "visualeditor-languages-tool": "Kielet", + "visualeditor-linkcontext-uneditable": "Pahoittelut, tätä linkkiä voi muokata tällä hetkellä vain wikitekstitilassa.", "visualeditor-linkinspector-button-link-external": "Ulkoinen sivusto", "visualeditor-linkinspector-button-link-internal": "Hae sisäisiä sivuja", "visualeditor-linkinspector-convert-link-isbn": "Muunna ISBN-linkiksi", "visualeditor-linkinspector-convert-link-pmid": "Muunna PMID-linkiksi", "visualeditor-linkinspector-convert-link-rfc": "Muunna RFC-linkiksi", - "visualeditor-linkinspector-educationpopup-text": "Linkitä tärkeät sanat muihin wikiartikkeleihin tai jopa muille verkkosivustoille. Se auttaa lukijoita ymmärtämään kontekstin.", + "visualeditor-linkinspector-educationpopup-text": "Linkitä tärkeät sanat muihin wikiartikkeleihin tai jopa muille verkkosivustoille. Tämä auttaa lukijoita ymmärtämään kontekstia.", "visualeditor-linkinspector-educationpopup-title": "Linkit", "visualeditor-linkinspector-illegal-title": "Virheellinen sivun otsikko", "visualeditor-linkinspector-invalid-blocked": "Tämän wikin käyttäjät ovat päättäneet estää linkit tälle sivustolle. Kokeile toista linkkiä.", @@ -334,8 +334,8 @@ "visualeditor-mwpredialog-convert": "Salli tekstin muotoilu", "visualeditor-mwpredialog-title": "Esimuotoiltu yksinkertainen teksti", "visualeditor-mwsignature-tool": "Allekirjoituksesi", - "visualeditor-preference-visualeditor": "Ota visuaalinen muokkain käyttöön", - "visualeditor-preference-newwikitexteditor-enable": "Käytä wikitekstitilaa visuaalisen muokkaimen sisällä toisen wikitekstitilan sijaan", + "visualeditor-preference-visualeditor": "Ota käyttöön visuaalinen muokkain", + "visualeditor-preference-newwikitexteditor-enable": "Käytä visuaalisen muokkaimen sisäistä wikitekstitilaa toisen wikitekstimuokkaimen sijaan", "visualeditor-preference-newwikitexteditor-help": "Tätä kutsutaan joskus ”wikitekstimuokkaimeksi 2017”.", "visualeditor-preference-tabs": "Muokkaustila:", "visualeditor-preference-tabs-multi-tab": "Näytä minulle molemmat muokkausvälilehdet", @@ -352,7 +352,7 @@ "visualeditor-recreate": "Sivu on poistettu sillä aikaa kun muokkasit sitä. Luo sivu uudelleen painamalla ”$1”.", "visualeditor-redirect-description": "Ohjaus sivulle $1", "visualeditor-savedialog-identify-anon": "Et ole enää kirjautuneena sisään. Jos jatkat, IP-osoitteesi kirjataan tämän sivun muutoshistoriaan.", - "visualeditor-savedialog-identify-temp": "Käytät tällä hetkellä väliaikaista käyttäjänimeä $1. Jos jatkat, muokkauksesi liitetään tähän käyttäjänimeen.", + "visualeditor-savedialog-identify-temp": "Käytät tällä hetkellä tilapäistä tunnusta $1. Jos jatkat, muokkauksesi liitetään tähän käyttäjänimeen.", "visualeditor-savedialog-identify-user": "Olet kirjautunut käyttäjänä [[User:$1|$1]]. Jos jatkat, muokkauksesi liitetään tähän tunnukseen.", "visualeditor-savedialog-keyboard-shortcut-submit": "Tallenna muutokset painamalla $1.", "visualeditor-savedialog-label-publish-short": "Julkaise", diff --git a/i18n/ve-mw/fon.json b/i18n/ve-mw/fon.json index 811166a1b7..0613f72cb5 100644 --- a/i18n/ve-mw/fon.json +++ b/i18n/ve-mw/fon.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Mahuton" ] }, diff --git a/i18n/ve-mw/fr.json b/i18n/ve-mw/fr.json index 488a15f991..69a1c66518 100644 --- a/i18n/ve-mw/fr.json +++ b/i18n/ve-mw/fr.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Automatik", "Benoit Rochon", "Boniface", @@ -16,6 +15,7 @@ "Drongou", "Elitre", "Eneelk", + "Escargot bleu", "Gomoko", "Guillom", "Harmonia Amanda", @@ -121,7 +121,6 @@ "visualeditor-dialog-media-info-meta-artist": "Auteur : $1", "visualeditor-dialog-media-info-moreinfo": "Davantage d’informations", "visualeditor-dialog-media-info-readmore": "Lire la suite", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Téléversé : $1", "visualeditor-dialog-media-page-advanced": "Avancé", "visualeditor-dialog-media-page-general": "Général", @@ -304,6 +303,7 @@ "visualeditor-includes-includeonly-description": "Lorsque le contenu de cette page est utilisé par une autre page, le contenu supplémentaire suivant y sera inclus :", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion En savoir plus sur l’inclusion partielle]", "visualeditor-languages-tool": "Langues", + "visualeditor-linkcontext-uneditable": "Désolé, ce lien ne peut pour l'instant être modifié qu'en mode source.", "visualeditor-linkinspector-button-link-external": "Site externe", "visualeditor-linkinspector-button-link-internal": "Chercher des pages internes", "visualeditor-linkinspector-convert-link-isbn": "Convertir en lien ISBN", @@ -333,7 +333,7 @@ "visualeditor-mweditmodeve-progress": "Basculer vers l’éditeur visuel...", "visualeditor-mweditmodeve-showagain": "Ne plus afficher ce message", "visualeditor-mweditmodeve-tool-current": "Éditeur visuel", - "visualeditor-mweditmodeve-tool-unavailable": "La modification visuelle n’est pas disponible ici", + "visualeditor-mweditmodeve-tool-unavailable": "La modification visuelle n’est pas disponible pour cette page", "visualeditor-mweditmodewt-popup-body": "Vous pouvez revenir à la modification du code source à tout moment en cliquant sur cette icône.", "visualeditor-mweditmodewt-popup-title": "Vous êtes passé à la modification visuelle", "visualeditor-mwgallerycontext-description": "$1 image{{PLURAL:$1||s}}", diff --git a/i18n/ve-mw/frp.json b/i18n/ve-mw/frp.json index cd9a664783..0910699596 100644 --- a/i18n/ve-mw/frp.json +++ b/i18n/ve-mw/frp.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "ChrisPtDe" ] }, diff --git a/i18n/ve-mw/frs.json b/i18n/ve-mw/frs.json new file mode 100644 index 0000000000..3165f54d21 --- /dev/null +++ b/i18n/ve-mw/frs.json @@ -0,0 +1,15 @@ +{ + "@metadata": { + "authors": [ + "Neronno", + "WikiFayo95", + "VanModers" + ] + }, + "tooltip-ca-ve-edit": "Disser siid mit däi VisualEditor beaarbaiden", + "visualeditor-ca-createlocaldescriptionsource": "Lokóóel beskriivensweltekst taufaugen", + "visualeditor-ca-createsource": "Weltekst erstellen", + "visualeditor-ca-editsource": "Weltekst beaarbaiden", + "visualeditor-ca-editsource-section": "Weltekst beaarbaiden", + "visualeditor-descriptionpagelink": "Project:VisualEditor" +} diff --git a/i18n/ve-mw/fvr.json b/i18n/ve-mw/fvr.json new file mode 100644 index 0000000000..4f2860d87f --- /dev/null +++ b/i18n/ve-mw/fvr.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Dinkawiki" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Inlóó'ŋ jáwli'ŋ ka̠rɨŋas jányi", + "visualeditor-ca-createsource": "Ka̠rɨŋa jetéré", + "visualeditor-ca-editsource": "Ka̠rɨŋas jaáŋo", + "visualeditor-ca-editsource-section": "Ka̠rɨŋas jaáŋo" +} diff --git a/i18n/ve-mw/ga.json b/i18n/ve-mw/ga.json index e7cbd74986..61cfc4df56 100644 --- a/i18n/ve-mw/ga.json +++ b/i18n/ve-mw/ga.json @@ -7,10 +7,12 @@ "MinecraftAustralia", "Moilleadóir", "Nmacu", - "Tem" + "Tem", + "Aindriu80" ] }, "tooltip-ca-ve-edit": "Cuir an leathanach seo in eagar", + "visualeditor-ca-createlocaldescriptionsource": "Cuir foinse cur síos áitiúil leis", "visualeditor-ca-createsource": "Cruthaigh foinse", "visualeditor-ca-editsource": "Cuir foinse in eagar", "visualeditor-ca-editsource-section": "athraigh foinse", diff --git a/i18n/ve-mw/gaa.json b/i18n/ve-mw/gaa.json index 7573a39f24..0225d26e8f 100644 --- a/i18n/ve-mw/gaa.json +++ b/i18n/ve-mw/gaa.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Flixtey", "Mybluberet", "NanaYawBotar" diff --git a/i18n/ve-mw/gl.json b/i18n/ve-mw/gl.json index 96edc38858..e822898aef 100644 --- a/i18n/ve-mw/gl.json +++ b/i18n/ve-mw/gl.json @@ -60,7 +60,7 @@ "visualeditor-dialog-extension-abandonedit": "Queres pechar esta ventá sen aplicar os teus cambios?", "visualeditor-dialog-media-alttext-checkbox": "Usar o pé de foto como texto alternativo", "visualeditor-dialog-media-alttext-section": "Texto alternativo", - "visualeditor-dialog-media-alttext-section-help": "Podes usar isto para escribir unha descrición textual para as persoas que non poden ver o elemento. A descrición debe ser suficiente para que poidan entender a finalidade e a información que proporciona o elemento multimedia. Isto é vital para as persoas cegas ou para aquelas que empreguen programas de lectura de pantalla ou navegadores de só texto.", + "visualeditor-dialog-media-alttext-section-help": "Podes usar isto para escribir unha descrición textual para as persoas que non poden ver o elemento. A descrición debe ser suficiente para que poidan entender a finalidade e a información que proporciona o elemento multimedia. Isto é vital para as persoas cegas ou para aquelas que empreguen programas de lectura de pantalla ou navegadores de texto só.", "visualeditor-dialog-media-change-image": "Cambiar a imaxe", "visualeditor-dialog-media-choose-image": "Utilizar esta imaxe", "visualeditor-dialog-media-content-description-link": "(páxina de descrición)", @@ -71,11 +71,9 @@ "visualeditor-dialog-media-info-artist": "Subido por $1", "visualeditor-dialog-media-info-audiofile": "Ficheiro de son", "visualeditor-dialog-media-info-created": "Creado o $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Autoría: $1", "visualeditor-dialog-media-info-moreinfo": "Máis información", "visualeditor-dialog-media-info-readmore": "Ler máis", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Subido o $1", "visualeditor-dialog-media-page-advanced": "Avanzado", "visualeditor-dialog-media-page-general": "Xeral", @@ -114,7 +112,7 @@ "visualeditor-dialog-meta-categories-options": "Opcións", "visualeditor-dialog-meta-categories-section": "Categorías", "visualeditor-dialog-meta-categories-sortkey-label": "Ordenar esta páxina como se o seu nome fose", - "visualeditor-dialog-meta-languages-code-label": "Código da lingua", + "visualeditor-dialog-meta-languages-code-label": "Código de lingua", "visualeditor-dialog-meta-languages-label": "Linguas", "visualeditor-dialog-meta-languages-link-label": "Páxina ligada", "visualeditor-dialog-meta-languages-name-label": "Lingua", @@ -258,6 +256,7 @@ "visualeditor-includes-includeonly-description": "Cando outra páxina utiliza contidos desta páxina, incluirase aquí o seguinte contido adicional:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Máis información sobre a transclusión parcial]", "visualeditor-languages-tool": "Linguas", + "visualeditor-linkcontext-uneditable": "Sentímolo, polo de agora esta ligazón só se pode editar no modo fonte.", "visualeditor-linkinspector-button-link-external": "Sitio externo", "visualeditor-linkinspector-button-link-internal": "Procurar páxinas internas", "visualeditor-linkinspector-convert-link-isbn": "Converter a ligazón de ISBN", @@ -285,7 +284,7 @@ "visualeditor-mweditmodeve-popup-body": "Podes volver ó modo de edición visual en calquera momento facendo clic nesta icona.", "visualeditor-mweditmodeve-popup-title": "Cambiaches ó modo de edición de código wiki", "visualeditor-mweditmodeve-progress": "Cambiando ó editor visual…", - "visualeditor-mweditmodeve-showagain": "Non amosar esta mensaxe outra vez", + "visualeditor-mweditmodeve-showagain": "Non amosar esta mensaxe de novo", "visualeditor-mweditmodeve-tool-current": "Edición visual", "visualeditor-mweditmodeve-tool-unavailable": "A edición visual non está dispoñible aquí", "visualeditor-mweditmodewt-popup-body": "Podes volver ó modo de edición de código en calquera momento facendo clic nesta icona.", @@ -362,7 +361,7 @@ "visualeditor-special-characters-group-other": "Usado frecuentemente", "visualeditor-templatesused-tool": "Modelos usados", "visualeditor-title-error": "Título non válido.", - "visualeditor-toload": "O editor estase a cargar nestes momentos. Se aínda ves esta mensaxe tras uns poucos segundos, [$1 recarga a páxina].", + "visualeditor-toload": "O editor estase a cargar nestes momentos. Se aínda ves esta mensaxe tras uns poucos segundos, [$1 actualiza a páxina].", "visualeditor-tooltip-non-breaking-space": "Espazo inseparable", "visualeditor-version-label": "Versión", "visualeditor-wikitext-progress": "Convertendo o texto wiki", diff --git a/i18n/ve-mw/gld.json b/i18n/ve-mw/gld.json index 6080a43886..81f6209041 100644 --- a/i18n/ve-mw/gld.json +++ b/i18n/ve-mw/gld.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "RFScott" ] }, diff --git a/i18n/ve-mw/gom-latn.json b/i18n/ve-mw/gom-latn.json index 1d9f1974cd..a5fb4f3745 100644 --- a/i18n/ve-mw/gom-latn.json +++ b/i18n/ve-mw/gom-latn.json @@ -1,10 +1,14 @@ { "@metadata": { "authors": [ + "QW90", "The Discoverer" ] }, + "collabpad-import-subtitle": "$1 savn aayat kelolem", "tooltip-ca-ve-edit": "Hem pan bodol", + "tooltip-ca-ve-create": "Hem pan roch", + "visualeditor-advancedsettings-tool": "Sudarit mandavoll", "visualeditor-backbutton-tooltip": "Fattim voch", "visualeditor-ca-createlocaldescriptionsource": "Thollavem vornonachem strot zod", "visualeditor-ca-createsource": "Strot roch", @@ -15,45 +19,108 @@ "visualeditor-descriptionpagelink": "Project:DixttiSompadok", "visualeditor-dialog-media-content-description-link": "(vornnonachem pan)", "visualeditor-dialog-media-content-filename": "Faylichem nanv", + "visualeditor-dialog-media-content-section": "Mathallo", "visualeditor-dialog-media-goback": "Fattim", "visualeditor-dialog-media-info-created": "Rocham: $1", "visualeditor-dialog-media-info-moreinfo": "Anik mahiti", "visualeditor-dialog-media-info-readmore": "Anik vach", + "visualeditor-dialog-media-page-advanced": "Sudarit", + "visualeditor-dialog-media-page-general": "Samanio", "visualeditor-dialog-media-save": "Samball", "visualeditor-dialog-media-search-tab-search": "Sod", "visualeditor-dialog-media-type-thumb": "Lhan-imaz", + "visualeditor-dialog-meta-advancedsettings-label": "Sudarit mandavoll", + "visualeditor-dialog-meta-advancedsettings-section": "Sudarit mandavoll", "visualeditor-dialog-meta-categories-category": "Vorg", "visualeditor-dialog-meta-categories-data-label": "Vorgam", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Lipoileleo vorgam", "visualeditor-dialog-meta-categories-input-newcategorylabel": "Novo vorg", + "visualeditor-dialog-meta-categories-input-placeholder": "Vorg zodd", + "visualeditor-dialog-meta-categories-options": "Poriai", "visualeditor-dialog-meta-categories-section": "Vorgam", + "visualeditor-dialog-meta-languages-code-label": "Bhaxecho sonket", "visualeditor-dialog-meta-languages-label": "Bhaso", "visualeditor-dialog-meta-languages-link-label": "Zodlelem pan", "visualeditor-dialog-meta-languages-name-label": "Bhas", "visualeditor-dialog-meta-languages-section": "Bhaso", + "visualeditor-dialog-meta-settings-displaytitle": "Prodorxit mathallo", "visualeditor-dialog-meta-settings-hiddencat-label": "Lipoilolo vorg", + "visualeditor-dialog-meta-settings-index-default": "Default", "visualeditor-dialog-meta-settings-index-disable": "Na", "visualeditor-dialog-meta-settings-index-force": "Hoi", + "visualeditor-dialog-meta-settings-label": "Panachi mandavoll", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Default", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Na", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Hoi", "visualeditor-dialog-meta-settings-redirect-label": "Hea panak punornirdexit kor", + "visualeditor-dialog-meta-settings-section": "Panachi mandavoll", "visualeditor-dialog-meta-settings-toc-default": "Goroz zalear", "visualeditor-dialog-meta-settings-toc-disable": "Kednach nhoi", "visualeditor-dialog-meta-settings-toc-force": "Sod'dam", + "visualeditor-dialog-meta-title": "Poriai", + "visualeditor-dialog-template-title": "Sancho", + "visualeditor-dialog-transclusion-action-save": "Samball", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Ho sancho ostitvant na", + "visualeditor-dialog-transclusion-add-wikitext": "Wikimozkur zodd", + "visualeditor-dialog-transclusion-add-param-save": "Zodd", + "visualeditor-dialog-transclusion-add-template": "Sancho zodd", + "visualeditor-dialog-transclusion-add-template-button": "Sancho zodd", + "visualeditor-dialog-transclusion-add-template-save": "Zodd", + "visualeditor-dialog-transclusion-collapse-options": "Poriai lipoi", + "visualeditor-dialog-transclusion-contextitem-loading": "Load zatam...", + "visualeditor-dialog-transclusion-expand-options": "Poriai dakhoi", + "visualeditor-dialog-transclusion-filter-show-all": "Soglle dakhoi", + "visualeditor-dialog-transclusion-loading": "Load zata...", + "visualeditor-dialog-transclusion-param-default": "Default: $1", + "visualeditor-dialog-transclusion-param-example-long": "Udharonn: $1", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Sancho sod", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Fattim voch", + "visualeditor-dialog-transclusion-title-insert-template": "Sancho zodd", + "visualeditor-dialog-transclusion-title-insert-known-template": "Ghal: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Sompadon: $1", + "visualeditor-dialog-transclusion-wikitext": "Wikimozkur", "visualeditor-dialogbutton-media-tooltip": "Chitram ani madheomam", + "visualeditor-dialogbutton-template-tooltip": "Sancho", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|kollovnni|kollovnnio}}", + "visualeditor-editnotices-tooltip": "Sompadon kollovnnio", "visualeditor-educationpopup-dismiss": "Borem asa, {{GENDER:|somzolom|somzolim|somzolom/somzolim}}", + "visualeditor-expandable-less": "Unnem", + "visualeditor-expandable-more": "Anik", + "visualeditor-formatdropdown-format-mw-heading1": "Panacho mathallo", "visualeditor-formatdropdown-format-mw-heading2": "Mathallo", + "visualeditor-formatdropdown-format-mw-heading3": "Up-mathallo 1", + "visualeditor-formatdropdown-format-mw-heading4": "Up-mathallo 2", + "visualeditor-formatdropdown-format-mw-heading5": "Up-mathallo 3", + "visualeditor-formatdropdown-format-mw-heading6": "Up-mathallo 4", "visualeditor-languages-tool": "Bhaso", "visualeditor-linkinspector-button-link-external": "Bhaili sayt", "visualeditor-linkinspector-button-link-internal": "Bhitorle panam sod", "visualeditor-linkinspector-educationpopup-title": "Duve", + "visualeditor-linkinspector-illegal-title": "Ovoid panacho mathallo", + "visualeditor-linknodeinspector-add-label": "Kurvechitt zodd", "visualeditor-linknodeinspector-title": "Sadho duvo", + "visualeditor-media-title-image": "Chitr", + "visualeditor-meta-tool": "Poriai", + "visualeditor-mweditmode-tooltip": "Sompadok bodol", "visualeditor-mweditmodeve-showagain": "Ho sondex portun dakhoi nakai", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|chitr|chitram}}", + "visualeditor-mwgallerydialog-card-images": "Chitram", + "visualeditor-mwgallerydialog-card-options": "Poriai", + "visualeditor-mwgallerydialog-title": "Chitramsall", + "visualeditor-preference-visualeditor": "Dixtti sompadok sokxom kor", + "visualeditor-rebase-client-import-name": "Panacho mathallo", "visualeditor-redirect-description": "$1 ak punornirdexit", "visualeditor-savedialog-label-publish-short": "Uzvaddai", + "visualeditor-savedialog-label-publish-short-start": "Uzvaddai…", "visualeditor-savedialog-label-save-short": "Samball", + "visualeditor-savedialog-label-save-short-start": "Samball…", + "visualeditor-savedialog-review-wikitext": "Wikimozkur", "visualeditor-savedialog-title-save": "Tuje bodol samball", + "visualeditor-section-body-placeholder": "Novo vibhag", + "visualeditor-section-title-placeholder": "Vixoy", + "visualeditor-settings-tool": "Panachi mandavoll", "visualeditor-special-characters-group-other": "Zaite pautt upeog kel'le", + "visualeditor-templatesused-tool": "Vaporlele sanche", + "visualeditor-title-error": "Ovoid mathallo.", "visualeditor-version-label": "Avrutti" } diff --git a/i18n/ve-mw/got.json b/i18n/ve-mw/got.json index 0f2311e2d2..c1bc72337a 100644 --- a/i18n/ve-mw/got.json +++ b/i18n/ve-mw/got.json @@ -5,8 +5,9 @@ ] }, "tooltip-ca-ve-edit": "𐌹𐌽𐌼𐌰𐌹𐌳𐌴𐌹 𐌸𐌰𐌽𐌰 𐌻𐌰𐌿𐍆", - "visualeditor-ca-createsource": "𐍃𐌺𐌰𐍀𐌴𐌹 𐌱𐍂𐌿𐌽𐌽𐌰𐌽", - "visualeditor-ca-editsource": "𐌹𐌽𐌼𐌰𐌹𐌳𐌴𐌹 𐌱𐍂𐌿𐌽𐌽𐌰𐌽", - "visualeditor-ca-editsource-section": "𐌹𐌽𐌼𐌰𐌹𐌳𐌴𐌹 𐌱𐍂𐌿𐌽𐌽𐌰𐌽", + "visualeditor-ca-createlocaldescriptionsource": "𐍃𐍄𐌰𐌳𐌴𐌹𐌽𐌰𐌹𐌶𐍉𐍃 𐍃𐌺𐌴𐌹𐍂𐌴𐌹𐌽𐌰𐌹𐍃 𐌱𐍂𐌿𐌽𐌽𐌰𐌽 𐌰𐌽𐌰𐌰𐌿𐌺𐌰𐌽", + "visualeditor-ca-createsource": "𐌱𐍂𐌿𐌽𐌽𐌰𐌽 𐍃𐌺𐌰𐍀𐌾𐌰𐌽", + "visualeditor-ca-editsource": "𐌱𐍂𐌿𐌽𐌽𐌰𐌽 𐌹𐌽𐌼𐌰𐌹𐌳𐌾𐌰𐌽", + "visualeditor-ca-editsource-section": "𐌱𐍂𐌿𐌽𐌽𐌰𐌽 𐌹𐌽𐌼𐌰𐌹𐌳𐌾𐌰𐌽", "visualeditor-descriptionpagelink": "Project:𐌼𐌰𐌽𐌻𐌴𐌹𐌺𐌾𐌰-𐌹𐌽𐌼𐌰𐌹𐌳𐌾𐍉" } diff --git a/i18n/ve-mw/gur.json b/i18n/ve-mw/gur.json index 2ed230eae2..d570d30228 100644 --- a/i18n/ve-mw/gur.json +++ b/i18n/ve-mw/gur.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Akakiiri", - "Amire80", "Atalata Gumah", "Ayire Adongo" ] diff --git a/i18n/ve-mw/gv.json b/i18n/ve-mw/gv.json index b64fd950f8..59f0ff2402 100644 --- a/i18n/ve-mw/gv.json +++ b/i18n/ve-mw/gv.json @@ -1,8 +1,16 @@ { "@metadata": { "authors": [ - "Xð" + "Xð", + "MacTire02" ] }, - "tooltip-ca-ve-edit": "Reagh y ghuillag shoh" + "tooltip-ca-ve-edit": "Reagh y duillag shoh", + "tooltip-ca-ve-create": "Croo yn duillag shoh", + "tooltip-ca-editsource": "Reagh bun-choad y duillag shoh", + "tooltip-ca-createsource": "Croo bun-choad y duillag shoh", + "visualeditor-ca-createlocaldescriptionsource": "Cur stiagh moir ynnydagh da cur-sheese", + "visualeditor-ca-createsource": "Croo bun", + "visualeditor-ca-editsource": "Reagh y bun", + "visualeditor-ca-editsource-section": "reagh y bun" } diff --git a/i18n/ve-mw/ha.json b/i18n/ve-mw/ha.json index 53676ccf46..756f5717a9 100644 --- a/i18n/ve-mw/ha.json +++ b/i18n/ve-mw/ha.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bashir Gwanki", "Bello Na'im", "DonCamillo", diff --git a/i18n/ve-mw/hak.json b/i18n/ve-mw/hak-latn.json similarity index 88% rename from i18n/ve-mw/hak.json rename to i18n/ve-mw/hak-latn.json index 298d507a97..332214b98d 100644 --- a/i18n/ve-mw/hak.json +++ b/i18n/ve-mw/hak-latn.json @@ -1,9 +1,7 @@ { "@metadata": { "authors": [ - "Amire80", - "Hakka", - "唐吉訶德的侍從" + "Winston Sung" ] }, "tooltip-ca-ve-edit": "Phiên-siá pún-ya̍p", diff --git a/i18n/ve-mw/hav.json b/i18n/ve-mw/hav.json new file mode 100644 index 0000000000..a862ce9c9b --- /dev/null +++ b/i18n/ve-mw/hav.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Joeamj" + ] + }, + "visualeditor-ca-editsource-section": "hindura isoko" +} diff --git a/i18n/ve-mw/he.json b/i18n/ve-mw/he.json index d6243dfb90..136c169d1f 100644 --- a/i18n/ve-mw/he.json +++ b/i18n/ve-mw/he.json @@ -264,6 +264,7 @@ "visualeditor-includes-includeonly-description": "כאשר תוכן מהדף הזה משמש בדף אחר, התוכן הנוסף הבא ייכלל כאן:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion מידע נוסף על הכללה חלקית]", "visualeditor-languages-tool": "שפות", + "visualeditor-linkcontext-uneditable": "מצטערים, בינתיים ניתן לערוך את הקישור הזה רק במצב \"קוד מקור\".", "visualeditor-linkinspector-button-link-external": "אתר חיצוני", "visualeditor-linkinspector-button-link-internal": "חיפוש בדפים פנימיים", "visualeditor-linkinspector-convert-link-isbn": "המרה לקישור ISBN", diff --git a/i18n/ve-mw/hi.json b/i18n/ve-mw/hi.json index 7855f09347..2c03c64f9e 100644 --- a/i18n/ve-mw/hi.json +++ b/i18n/ve-mw/hi.json @@ -4,6 +4,7 @@ "Abijeet Patro", "Ankita-ks", "Ansumang", + "Bunnypranav", "Devayon", "Goelujjwal", "Hindustanilanguage", @@ -28,9 +29,14 @@ "collabpad-doctitle": "CollabPad: $1", "collabpad-import-subtitle": "$1 से आयात किया गया", "collabpad": "CollabPad", - "tooltip-ca-ve-edit": "इस पृष्ठ को संपादित करें", + "tooltip-ca-ve-edit": "इस पृष्ठ को सम्पादित करें", + "tooltip-ca-ve-edit-local": "स्थानीय विवरण पृष्ठ सम्पादित करें", + "tooltip-ca-ve-create": "यह पृष्ठ बनाएँ", + "tooltip-ca-ve-create-local": "स्थानीय विवरण पृष्ठ बनाएँ", "tooltip-ca-editsource": "इस पृष्ठ के स्रोत कोड को संपादित करें", + "tooltip-ca-editsource-local": "स्थानीय विवरण पृष्ठ को स्रोत कोड को सम्पादित करें", "tooltip-ca-createsource": "इस पृष्ठ का स्रोत कोड बनाएँ", + "tooltip-ca-createsource-local": "स्थानीय विवरण पृष्ठ का स्रोत कोड बनाएँ", "visualeditor-advancedsettings-tool": "उन्नत विकल्प", "visualeditor-annotations-default-description": "यह पृष्ठ एक भाष्य रेंज के हिस्सा है।", "visualeditor-annotations-default-end": "भाष्य रेंज का अंत", @@ -50,12 +56,17 @@ "visualeditor-ca-editlocaldescriptionsource": "स्थानीय विवरण स्रोत संपादित करें", "visualeditor-ca-editsource": "स्रोत सम्पादित करें", "visualeditor-ca-editsource-section": "स्रोत सम्पादित करें", + "visualeditor-ca-editsource-section-hint": "अनुभाग का स्रोत कोड सम्पादित करें: $1", "visualeditor-categories-tool": "श्रेणियाँ", + "visualeditor-changedesc-mwcategory-sortkey-changed": "क्रमांकन कुँजी $1 से $2 में बदली गई", + "visualeditor-changedesc-mwcategory-sortkey-set": "क्रमांकन कुँजी $1 पर सेट की गई", + "visualeditor-changedesc-mwcategory-sortkey-unset": "क्रमांकन कुँजी $1 पर से अनसेट की गई", "visualeditor-changedesc-mwlanguagevariant": "भाषा प्रकार का मार्कअप बदला गया", "visualeditor-changedesc-mwredirect": "अनुप्रेषण का लक्ष्य $1 से $2 में बदला गया", "visualeditor-changedesc-mwtransclusion": "साँचे के पैरामीटर बदले गए", "visualeditor-desc": "मीडियाविकि के लिए यथादृश्य संपादिका", "visualeditor-descriptionpagelink": "Project:यथादृश्य संपादिका", + "visualeditor-dialog-extension-abandonedit": "क्या आप वाकई में अपने बदलाव लागू किए बिना इस डायलॉग को बंद करना चाहते हैं?", "visualeditor-dialog-media-alttext-checkbox": "कैप्शन का इस्तेमाल वैकल्पिक टेक्स्ट के रूप में करें", "visualeditor-dialog-media-alttext-section": "वैकल्पिक (ऑल्ट) टेक्स्ट", "visualeditor-dialog-media-alttext-section-help": "आप इसका इस्तेमाल एक टेक्स्ट विवरण देने के लिए कर सकते हैं जो उन लोगों के लिए इस्तेमाल होगा जो यह आयटम को नहीं देख सकते। उन्हें मीडिया आयटम द्वारा दिए गए उद्देश्य और जानकारी को समझने के लिए विवरण बहुत अच्छा होना चाहिए। यह स्क्रीन रीडर सॉफ्टवेयर या केवल-पठन ब्राउज़रों का इस्तेमाल करने वाले अंधे सदस्यों और दूसरे लोगों के लिए ज़रूरी है।", @@ -173,6 +184,7 @@ "visualeditor-dialog-transclusion-add-param-placeholder": "पैरामीटर का नाम", "visualeditor-dialog-transclusion-add-param-save": "जोड़ें", "visualeditor-dialog-transclusion-add-template": "साँचा जोड़ें", + "visualeditor-dialog-transclusion-add-template-button": "साँचा जोड़ें", "visualeditor-dialog-transclusion-add-template-save": "जोड़ें", "visualeditor-dialog-transclusion-add-undocumented-param": "अप्रलेखित पैरामीटर जोड़ें", "visualeditor-dialog-transclusion-back-confirmation-prompt": "खोज पर वापस जाएँ? आपके बदलाव रद्द कर दिए जाएँगे और इसे पूर्ववत नहीं किया जा सकता।", @@ -189,13 +201,13 @@ "visualeditor-dialog-transclusion-filter-show-all": "सभी दिखाएँ", "visualeditor-dialog-transclusion-filter-title": "$1 के लिए पैरामीटर खोजें", "visualeditor-dialog-transclusion-help-title": "साँचा संपादन में सहायता", - "visualeditor-dialog-transclusion-help-message": "साँचें सामग्री के लिए प्रारूपण प्रदान करते हैं। इस एडिटर के बाएँ तरफ दिखाया गया है कि साँचे में कौन-से विकल्प प्रदान किए जाते हैं, और दाएँ तरफ उन विकल्पों के वैल्यू जोड़े जा सकते हैं।", + "visualeditor-dialog-transclusion-help-message": "साँचे सामग्री के लिए प्रारूपण प्रदान करते हैं। इस एडिटर के बाएँ तरफ दिखाया गया है कि साँचे में कौन-से विकल्प प्रदान किए जाते हैं, और दाएँ तरफ उन विकल्पों के वैल्यू जोड़े जा सकते हैं।", "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates नामस्थानों को संपादित करने के लिए सहायता]", "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions कीबोर्ड शॉर्टकट्स]", "visualeditor-dialog-transclusion-deprecated-parameter": "कालग्रस्त फ़ील्ड", "visualeditor-dialog-transclusion-deprecated-parameter-description": "फ़ील्ड कालग्रस्त है। $1", "visualeditor-dialog-transclusion-loading": "लोड हो रहा है...", - "visualeditor-dialog-transclusion-multipart-message": "आप वर्तमान में एक साँचे को, और साथ में [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content जुड़ी हुई सामग्री] के एक या एकाधिक हिस्सों को संपादित कर रहे हैं (विकिटेक्स्ट और/या अतिरिक्त साँचें)।", + "visualeditor-dialog-transclusion-multipart-message": "आप वर्तमान में एक साँचे को, और साथ में [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content जुड़ी हुई सामग्री] (विकिटेक्स्ट और/या अतिरिक्त साँचे) के एक या एकाधिक हिस्सों को सम्पादित कर रहे हैं।", "visualeditor-dialog-transclusion-no-template-data-description": "इस साँचे पर [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] गायब है, और इसके पैरामीटरों को [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters अपने आप बनाया गया है]। इस वजह से साँचे और इसके पैरामीटरों पर कोई विवरण नहीं है। [[$1|साँचे के पृष्ठ]] पर अधिक जानकारी हो सकती है।", "visualeditor-dialog-transclusion-no-template-description": "\"$1\" साँचे पर अब तक कोई विवरण नहीं है, मगर [[$2|साँचे के पृष्ठ]] पर कुछ जानकारी हो सकती है।", "visualeditor-dialog-transclusion-no-template-parameters": "इस साँचे में कोई प्रलेखित पैरामीटर नहीं है और शायद इसका इस्तेमाल उनके बिना ही किया जाता है।", @@ -211,7 +223,7 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "फिर भी जारी रखें", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "आवश्यक {{PLURAL:$1|फ़ील्ड गायब है|फ़ील्ड्स गायब हैं}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "क्या आपको यकीन है कि आप $1 {{PLURAL:$2|फ़ील्ड|फ़ील्ड्स}} को भरे बिना भी जारी रखना चाहते हैं?", - "visualeditor-dialog-transclusion-see-template": "साँचें सदस्यों द्वारा बनाए जाते हैं और उनमें पूर्ण विवरण न भी हो सकते हैं। इस [[$2|साँचे के पृष्ठ]] पर अधिक जानकारी हो सकती है।", + "visualeditor-dialog-transclusion-see-template": "साँचे सदस्यों द्वारा बनाए जाते हैं और उनमें पूर्ण विवरण न भी हो सकते हैं। इस [[$2|साँचे के पृष्ठ]] पर अधिक जानकारी हो सकती है।", "visualeditor-dialog-transclusion-title-insert-template": "साँचा जोड़ें", "visualeditor-dialog-transclusion-title-insert-known-template": "जोड़ें: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "संपादित करें: $1", @@ -253,6 +265,7 @@ "visualeditor-includes-includeonly-description": "जब इस पृष्ठ की सामग्री का इस्तेमाल किसी दूसरे पृष्ठ द्वारा किया जाए, निम्नलिखित सामग्री को भी जोड़ा जाएगा:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion अर्ध ट्रांसक्लूशन के बारे में अधिक जानें]", "visualeditor-languages-tool": "भाषाएँ", + "visualeditor-linkcontext-uneditable": "क्षमा करें, इस कड़ी को अभी सिर्फ स्रोत सम्पादन में सम्पादित किया जा सकता है।", "visualeditor-linkinspector-button-link-external": "बाहरी साइट", "visualeditor-linkinspector-button-link-internal": "आंतरिक पृष्ठ खोजें", "visualeditor-linkinspector-convert-link-isbn": "ISBN कड़ी में बदलें", @@ -261,6 +274,7 @@ "visualeditor-linkinspector-educationpopup-text": "ज़रूरी शब्दों को दूसरे विकि लेखों या दूसरे वेबसाइटों से जोड़ें। इससे पाठकों को प्रसंग समझ में आएगा।", "visualeditor-linkinspector-educationpopup-title": "कड़ियाँ", "visualeditor-linkinspector-illegal-title": "अमान्य पृष्ठ नाम", + "visualeditor-linkinspector-invalid-blocked": "इस विकि के लोगों ने इस साइट से कड़ियों को अवरोधित करने का फैसला लिया है। कृपया कोई दूसरी कड़ी जोड़ें।", "visualeditor-linkinspector-invalid-external": "एक पूरा URL दर्ज करें, जैसे https://example.org", "visualeditor-linknodeinspector-add-label": "लेबल जोड़ें", "visualeditor-linknodeinspector-title": "सरल कड़ी", @@ -310,14 +324,17 @@ "visualeditor-mwgallerydialog-widths-field-label": "चित्र की चौड़ाई", "visualeditor-mwgallerydialog-widths-input-placeholder": "डिफ़ॉल्ट चौड़ाई: $1 px", "visualeditor-mwpredialog-convert": "टेक्स्ट स्टाइलिंग की अनुमति दें", - "visualeditor-mwpredialog-title": "प्रीफॉर्मेट किया गया सादा टेक्स्ट", + "visualeditor-mwpredialog-title": "पूर्व-प्रारूपित सादा टेक्स्ट", "visualeditor-mwsignature-tool": "आपका हस्ताक्षर", - "visualeditor-preference-newwikitexteditor-enable": "अलग विकिटेक्स्ट एडिटर की जगह यथादृश्य संपादिका के अंदर ही विकिटेक्स्ट मोड का इस्तेमाल करें।", + "visualeditor-preference-visualeditor": "यथादृश्य सम्पादिका सक्षम करें", + "visualeditor-preference-newwikitexteditor-enable": "अलग विकिटेक्स्ट एडिटर की जगह यथादृश्य संपादिका के अंदर ही विकिटेक्स्ट मोड का इस्तेमाल करें", + "visualeditor-preference-newwikitexteditor-help": "इसे कभी-कभी '2017 विकिटेक्स्ट एडिटर' भी कहा जाता है।", "visualeditor-preference-tabs": "सम्पादन मोड:", "visualeditor-preference-tabs-multi-tab": "मुझे दोनों संपादक टैब दिखाएँ", "visualeditor-preference-tabs-prefer-ve": "मुझे यथासंभव हमेशा यथादृश्य संपादिका दिखाएँ", "visualeditor-preference-tabs-prefer-wt": "मुझे हमेशा स्रोत एडिटर दिखाएँ", "visualeditor-preference-tabs-remember-last": "आखिरी बार मेरे इस्तेमाल किए गए एडिटर को याद रखें", + "visualeditor-preference-collab-label": "सहयोगात्मक सम्पादन", "visualeditor-rebase-client-export": "निर्यात करें", "visualeditor-rebase-client-export-start": "निर्यात करें…", "visualeditor-rebase-client-import": "आयात करें", @@ -325,8 +342,8 @@ "visualeditor-rebase-client-title-help": "आप सहेजने से पहले बदलावों का झलक देख पाएँगे।", "visualeditor-recreate": "आपके संपादन शुरू करने के बाद से पृष्ठ को हटा दिया गया है। पुनः निर्माण करने के लिए \"$1\" दबाएँ।", "visualeditor-redirect-description": "$1 को अनुप्रेषण", - "visualeditor-savedialog-identify-anon": "क्या आप इस पृष्ठ को एक गुमनाम सदस्य की तरह सहेजना चाहेंगे? आपका IP पता पृष्ठ इतिहास में रिकॉर्ड किया जाएगा।", - "visualeditor-savedialog-identify-user": "आप अब [[User:$1|$1]] नाम से लॉग-इन कर चुके हैं। अगर अब आप सम्पादन सहेजते हैं तो इस सम्पादन को इस खाते से जोड़ दिया जाएगा।", + "visualeditor-savedialog-identify-anon": "अब आप लॉग इन नहीं हैं। यदि आप जारी रखते हैं, तो आपका IP पता इस पृष्ठ के संपादन इतिहास में दर्ज किया जाएगा।", + "visualeditor-savedialog-identify-user": "आप अब [[User:$1|$1]] नाम से लॉग-इन कर चुके हैं। अगर अब आप सम्पादन सहेजते हैं तो आपके सम्पादन को इस खाते से जोड़ दिया जाएगा।", "visualeditor-savedialog-keyboard-shortcut-submit": "आप अपने संपादन को सहेजने के लिए $1 दबा सकते हैं।", "visualeditor-savedialog-label-publish-short": "प्रकाशित करें", "visualeditor-savedialog-label-publish-short-start": "प्रकाशित करें…", @@ -349,7 +366,7 @@ "visualeditor-loaderror-wrongmode": "गलत मोड में एडिटर को लोड करने का प्रयास किया गया (डेटा प्रकार: \"$1\", एडिटर मोड: \"$2\")।", "visualeditor-settings-tool": "पृष्ठ विकल्प", "visualeditor-special-characters-group-other": "अकसर उपयुक्त", - "visualeditor-templatesused-tool": "प्रयुक्त साँचें", + "visualeditor-templatesused-tool": "प्रयुक्त साँचे", "visualeditor-title-error": "अमान्य शीर्षक।", "visualeditor-toload": "एडिटर अभी लोड होगा। अगर कुछ मिनट तक यह संदेश दिखाई दे तो इसे [$1 फिर खोलें]।", "visualeditor-tooltip-non-breaking-space": "नॉन-ब्रेकिंग स्पेस", diff --git a/i18n/ve-mw/hke.json b/i18n/ve-mw/hke.json index 3c949635fb..3ada28618b 100644 --- a/i18n/ve-mw/hke.json +++ b/i18n/ve-mw/hke.json @@ -4,7 +4,7 @@ "Muisha wiki hke" ] }, - "visualeditor-ca-createlocaldescriptionsource": "Ongerera xoko ̃ya bushonchomotsi", + "visualeditor-ca-createlocaldescriptionsource": "Ongerera nganuliro y'abinwa ibyo", "visualeditor-ca-createsource": "Tangira xoko", "visualeditor-ca-editsource": "Hingya axoko", "visualeditor-ca-editsource-section": "hingya axoko", diff --git a/i18n/ve-mw/hoc-latn.json b/i18n/ve-mw/hoc-latn.json new file mode 100644 index 0000000000..42980cd8e2 --- /dev/null +++ b/i18n/ve-mw/hoc-latn.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Singkiring57" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Local Kajisartal Namsaṅ olmisae", + "visualeditor-ca-createsource": "Namsaṅ baie", + "visualeditor-ca-editsource": "Namsaṅ olùraae", + "visualeditor-ca-editsource-section": "Namsaṅ olùraae" +} diff --git a/i18n/ve-mw/hoc.json b/i18n/ve-mw/hoc.json index fbca9247db..e860519686 100644 --- a/i18n/ve-mw/hoc.json +++ b/i18n/ve-mw/hoc.json @@ -4,8 +4,5 @@ "Singkiring57" ] }, - "tooltip-ca-ve-edit": "𑢳𑣈𑣓 𑣞𑣌𑣈𑣓 𑣕𑣋𑣈𑣓𑣈", - "visualeditor-ca-createsource": "𑢧𑣓𑣔𑣃𑣗-𑣞𑣁𑣓𑣆 𑣗𑣆𑣂", - "visualeditor-ca-editsource": "𑢧𑣓𑣔𑣃𑣗-𑣞𑣁𑣓𑣆 𑣉𑣚-𑣞𑣁𑣋𑣉𑣖 𑣜𑣃𑣈𑣈", - "visualeditor-ca-editsource-section": "𑣇𑣓𑣔𑣃𑣗-𑣞𑣁𑣓𑣁𑣆 𑣉𑣚-𑣞𑣁𑣋𑣉𑣖 𑣜𑣃𑣈𑣈" + "tooltip-ca-ve-edit": "𑢳𑣈𑣓 𑣞𑣌𑣈𑣓 𑣕𑣋𑣈𑣓𑣈" } diff --git a/i18n/ve-mw/hr.json b/i18n/ve-mw/hr.json index 33bea3b86a..534154d9b7 100644 --- a/i18n/ve-mw/hr.json +++ b/i18n/ve-mw/hr.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Aca", "BadDog", "Bugoslav", "Ex13", diff --git a/i18n/ve-mw/hu.json b/i18n/ve-mw/hu.json index e68eafcf15..7fec4e40da 100644 --- a/i18n/ve-mw/hu.json +++ b/i18n/ve-mw/hu.json @@ -30,6 +30,9 @@ "tooltip-ca-createsource": "Az oldal forráskódjának létrehozása", "tooltip-ca-createsource-local": "A helyi leírólap forráskódjának létrehozása", "visualeditor-advancedsettings-tool": "Haladó beállítások", + "visualeditor-annotations-default-description": "A lapnak ez a része egy annotált tartományhoz tartozik.", + "visualeditor-annotations-default-end": "Az annotált tartomány vége", + "visualeditor-annotations-default-start": "Az annotált tartomány kezdete", "visualeditor-autosave-modified-prompt-accept": "Szerkesztés folytatása", "visualeditor-autosave-modified-prompt-message": "Valaki megváltoztatta a lapot, mióta elkezdted szerkeszteni. Szeretnéd folytatni a régi változat szerkesztését, vagy szeretnél új szerkesztést kezdeni a legújabb változat alapján?", "visualeditor-autosave-modified-prompt-reject": "Új szerkesztés kezdése", @@ -316,6 +319,8 @@ "visualeditor-preference-tabs-prefer-ve": "Mindig a vizuálisat", "visualeditor-preference-tabs-prefer-wt": "Mindig a forráskódot", "visualeditor-preference-tabs-remember-last": "Emlékezzen, melyiket használtam legutóbb", + "visualeditor-preference-collab-label": "Közös szerkesztés", + "visualeditor-preference-collab-description": "Hívj meg más felhasználókat, hogy csatlakozzanak a szerkesztési munkamenetedhez a vizuális szerkesztőben.", "visualeditor-rebase-client-export": "Exportálás", "visualeditor-rebase-client-export-start": "Exportálás…", "visualeditor-rebase-client-import": "Importálás", diff --git a/i18n/ve-mw/hy.json b/i18n/ve-mw/hy.json index 1c96a201ed..e3513350c1 100644 --- a/i18n/ve-mw/hy.json +++ b/i18n/ve-mw/hy.json @@ -53,11 +53,9 @@ "visualeditor-dialog-media-info-artist": "Վերբեռնել է $1 մասնակիցը", "visualeditor-dialog-media-info-audiofile": "Աուդիո նիշք", "visualeditor-dialog-media-info-created": "Ստեղծել է՝ $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Նկարիչ` $1", "visualeditor-dialog-media-info-moreinfo": "Մանրամասն տեղեկատվություն", "visualeditor-dialog-media-info-readmore": "Կարդալ ավելին", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Վերբեռնել է՝ $1", "visualeditor-dialog-media-page-advanced": "Ընդլայնված", "visualeditor-dialog-media-page-general": "Հիմնական", diff --git a/i18n/ve-mw/ia.json b/i18n/ve-mw/ia.json index 131d90ad52..1ce16149cc 100644 --- a/i18n/ve-mw/ia.json +++ b/i18n/ve-mw/ia.json @@ -20,7 +20,7 @@ "visualeditor-annotations-default-description": "Iste parte del pagina face parte de un intervallo annotate.", "visualeditor-annotations-default-end": "Fin del intervallo annotate", "visualeditor-annotations-default-start": "Initio del intervallo annotate", - "visualeditor-annotations-extended-documentation": "Iste rango annotate ha essite extendite perque le contento que illo includeva non esseva ben annidate. Es recommendate assecurar se que le contento annotate es ben annidate ante de modificar lo; alteremente, un intervallo plus grande que expectate poterea esser annotate.", + "visualeditor-annotations-extended-documentation": "Iste intervallo de annotation ha essite extendite perque le contento que illo includeva non esseva ben annidate. Es recommendate assecurar se que le contento annotate es ben annidate ante de modificar lo; alteremente, un intervallo plus grande que expectate poterea esser annotate.", "visualeditor-autosave-modified-prompt-accept": "Reprender modification", "visualeditor-autosave-modified-prompt-message": "Iste pagina ha essite modificate post que tu lo cargava pro le ultime vice. Vole tu reprender tu modification del version ancian, o comenciar un nove modification del ultime version?", "visualeditor-autosave-modified-prompt-reject": "Comenciar un nove modification", @@ -189,7 +189,7 @@ "visualeditor-dialog-transclusion-multipart-message": "Tu modifica actualmente un patrono e al minus un pecia de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content contento connectite] (wikitexto e/o patronos additional).", "visualeditor-dialog-transclusion-no-template-data-description": "Iste patrono non ha [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters datos TemplateData], e su parametros ha essite [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters generate automaticamente]. Per consequente, le patrono e su parametros non ha descriptiones. Il pote haber information additional sur le [[$1|pagina del patrono]].", "visualeditor-dialog-transclusion-no-template-description": "Le patrono \"$1\" non ha ancora un description, ma il pote haber information in le [[$2|pagina del patrono]].", - "visualeditor-dialog-transclusion-no-template-parameters": "Iste patrono non ha parametros documentate e pote esser que illo ha essite concipite pro uso sin parametros.", + "visualeditor-dialog-transclusion-no-template-parameters": "Iste patrono non ha parametros documentate. Illo ha probabilemente essite concipite pro uso sin parametros.", "visualeditor-dialog-transclusion-param-default": "Predefinite: $1", "visualeditor-dialog-transclusion-param-example-long": "Exemplo: $1", "visualeditor-dialog-transclusion-param-selection-aria-description": "Preme Spatio pro adder o remover parametros. Preme Enter pro adder un parametro e modificar immediatemente su valor. Quando un parametro es ja seligite, preme Enter pro modificar su valor.", @@ -244,6 +244,7 @@ "visualeditor-includes-includeonly-description": "Quando contento de iste pagina es usate per un altere pagina, le sequente contento additional essera includite hic:", "visualeditor-includes-documentation": "[https://www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Leger plus sur le transclusion partial]", "visualeditor-languages-tool": "Linguas", + "visualeditor-linkcontext-uneditable": "Iste ligamine pote solmente esser modificate con le editor de codice fonte.", "visualeditor-linkinspector-button-link-external": "Sito externe", "visualeditor-linkinspector-button-link-internal": "Cercar in paginas interne", "visualeditor-linkinspector-convert-link-isbn": "Converter in ligamine ISBN", @@ -348,7 +349,7 @@ "visualeditor-special-characters-group-other": "Sovente usate", "visualeditor-templatesused-tool": "Patronos usate", "visualeditor-title-error": "Titulo invalide.", - "visualeditor-toload": "Le editor se carga ora. Si tu vide ancora iste message post poc secundas, per favor [$1 recarga le pagina].", + "visualeditor-toload": "Le editor se carga ora. Si tu vide ancora iste message post poc secundas, per favor [$1 refresca le pagina].", "visualeditor-tooltip-non-breaking-space": "Spatio insecabile", "visualeditor-version-label": "Version", "visualeditor-wikitext-progress": "Conversion de wikitexto", diff --git a/i18n/ve-mw/iba.json b/i18n/ve-mw/iba.json index 0aca2fc112..e858d44e70 100644 --- a/i18n/ve-mw/iba.json +++ b/i18n/ve-mw/iba.json @@ -341,7 +341,7 @@ "visualeditor-savedialog-title-save": "Simpan ubah nuan", "visualeditor-section-body-placeholder": "Bagi baru", "visualeditor-section-title-placeholder": "Subjek", - "visualeditor-loaderror-revidconflict": "ID revisyen ti dipulaika server enda setipak (dokumen: $1 , metadata: $2).", + "visualeditor-loaderror-revidconflict": "ID revisyen ti dipulaika penginta enda setipak (dokumen: $1 , metadata: $2).", "visualeditor-loaderror-wrongmode": "Uji muat editor dalam mod ti salah (bansa data: \"$1\", mod editor: \"$2\").", "visualeditor-settings-tool": "Atur lambar", "visualeditor-special-characters-group-other": "Suah dikena", diff --git a/i18n/ve-mw/id.json b/i18n/ve-mw/id.json index db5bf69455..891d32195a 100644 --- a/i18n/ve-mw/id.json +++ b/i18n/ve-mw/id.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Ahdan", - "Amire80", "Beeyan", "Bennylin", "Chinamoonroll", @@ -29,13 +28,18 @@ "TMg", "Veracious", "William Surya Permana", - "WillsonEP09" + "WillsonEP09", + "Penyuwangi", + "AhmedG612" ] }, "collabpad-doctitle": "CollabPad: $1", "collabpad-import-subtitle": "Diimpor dari $1", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Sunting halaman ini", + "tooltip-ca-ve-edit-local": "Sunting halaman deskripsi lokal", + "tooltip-ca-ve-create": "Buat halaman ini", + "tooltip-ca-ve-create-local": "Buat halaman deskripsi lokal", "tooltip-ca-editsource": "Sunting kode sumber halaman ini", "tooltip-ca-createsource": "Buat kode sumber halaman ini", "visualeditor-advancedsettings-tool": "Pengaturan lanjut", @@ -76,11 +80,9 @@ "visualeditor-dialog-media-info-artist": "Diunggah oleh $1", "visualeditor-dialog-media-info-audiofile": "Berkas audio", "visualeditor-dialog-media-info-created": "Dibuat: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Pembuat: $1", "visualeditor-dialog-media-info-moreinfo": "Informasi selengkapnya", "visualeditor-dialog-media-info-readmore": "Pelajari selengkapnya", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Diunggah: $1", "visualeditor-dialog-media-page-advanced": "Lanjutan", "visualeditor-dialog-media-page-general": "Umum", @@ -129,13 +131,13 @@ "visualeditor-dialog-meta-settings-displaytitle-help": "Anda dapat menimpa bagaimana judul halaman ini ditampilkan dengan menetapkan label yang berbeda untuk ditampilkan.", "visualeditor-dialog-meta-settings-hiddencat-help": "Anda dapat mencegah kategori ini muncul di daftar kategori pada setiap halaman yang memiliki kategori ini. Hal ini berguna untuk kategori yang perlu diperhatikan oleh para penyunting namun tidak oleh kebanyakan pembaca, misalnya halaman yang memerlukan ilustrasi.", "visualeditor-dialog-meta-settings-hiddencat-label": "Kategori tersembunyi", - "visualeditor-dialog-meta-settings-index-default": "Baku", + "visualeditor-dialog-meta-settings-index-default": "Bawaan", "visualeditor-dialog-meta-settings-index-disable": "Tidak", "visualeditor-dialog-meta-settings-index-force": "Ya", "visualeditor-dialog-meta-settings-index-help": "Anda dapat memaksa mesin pencari untuk menyenaraikan halaman ini pada hasil pencarian mereka yang sesuai, maupun memaksa mereka untuk tidak melakukannya. Opsi ini tidak memengaruhi pencarian dalam situs.", "visualeditor-dialog-meta-settings-index-label": "Biarkan halaman ini diindeks mesin pencari", "visualeditor-dialog-meta-settings-label": "Pengaturan halaman", - "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Baku", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Bawaan", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Tidak", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Ya", "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Anda dapat memaksa ditampilkannya tab tambahan di samping tab \"$1\" pada halaman ini yang akan mempermudah penambahan bagian baru, atau memaksanya untuk tidak tampil jika biasanya tab tersebut ditampilkan.", @@ -186,7 +188,7 @@ "visualeditor-dialog-transclusion-add-template-save": "Tambah", "visualeditor-dialog-transclusion-add-undocumented-param": "Tambah parameter tanpa dokumentasi", "visualeditor-dialog-transclusion-back-confirmation-prompt": "Kembali ke pencarian? Suntingan Anda akan hilang dan tidak bisa disimpan.", - "visualeditor-dialog-transclusion-close-confirmation-prompt": "Tutup editor templat? Perubahan Anda akan hilang dan tidak bisa disimpan.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Tutup penyunting templat? Perubahan Anda akan hilang dan tidak bisa disimpan.", "visualeditor-dialog-transclusion-collapse-options": "Sembunyikan opsi", "visualeditor-dialog-transclusion-confirmation-discard": "Buang suntingan", "visualeditor-dialog-transclusion-confirmation-reject": "Lanjut menyunting", @@ -199,7 +201,7 @@ "visualeditor-dialog-transclusion-filter-show-all": "Tampilkan semua", "visualeditor-dialog-transclusion-filter-title": "Pencarian parameter untuk $1", "visualeditor-dialog-transclusion-help-title": "Dukungan penyuntingan templat", - "visualeditor-dialog-transclusion-help-message": "Templat memberikan pemformatan untuk konten. Editor ini menampilkan pilihan apa saja yang disediakan oleh templat di sisi kiri dan nilai-nilainya bisa ditambahkan ke pilihan tersebut di sisi kanan.", + "visualeditor-dialog-transclusion-help-message": "Templat memberikan pemformatan untuk konten. Penyunting ini menampilkan pilihan apa saja yang disediakan oleh templat di sisi kiri dan nilai-nilainya bisa ditambahkan ke pilihan tersebut di sisi kanan.", "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Bantuan untuk menyunting templat]", "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Pintasan papan ketik]", "visualeditor-dialog-transclusion-deprecated-parameter": "Bidang usang", @@ -227,7 +229,7 @@ "visualeditor-dialog-transclusion-title-edit-known-template": "Sunting: $1", "visualeditor-dialog-transclusion-title-edit-transclusion": "Konten templat", "visualeditor-dialog-transclusion-template-search": "Cari templat", - "visualeditor-dialog-transclusion-template-search-help": "Temukan templat yang ingin Anda sisipkan dengan mencari kata kunci pengenal. Templat yang memiliki deskripsi akan bekerja lebih baik dengan editor visual.", + "visualeditor-dialog-transclusion-template-search-help": "Temukan templat yang ingin Anda sisipkan dengan mencari kata kunci pengenal. Templat yang punya deskripsi akan bekerja lebih baik dengan penyunting visual.", "visualeditor-dialog-transclusion-wikitext": "Teks wiki", "visualeditor-dialog-transclusion-wikitext-widget-aria": "Tekan Spasi untuk memilih elemen teks wiki. Tekan Enter untuk memilih dan mengubah teks wiki.", "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Tekan Ctrl+Del untuk menghapus elemen teks wiki. Tekan Ctrl+Shift+Anak Panah untuk memindahkan elemen ke atas atau bawah.", diff --git a/i18n/ve-mw/ig.json b/i18n/ve-mw/ig.json index 7b1a5823cb..d2b4b6db0a 100644 --- a/i18n/ve-mw/ig.json +++ b/i18n/ve-mw/ig.json @@ -1,28 +1,39 @@ { "@metadata": { "authors": [ - "Amire80", + "Aminwa 21", "Edith Nwobu", "Izuchi Onyeike", + "King ChristLike", "Olugold", "Sayvhior", "Timzy D'Great", "Tochiprecious", "Ukabia", - "Uzoma Ozurumba" + "Uzoma Ozurumba", + "Victor chukwuemerie Mbah" ] }, + "collabpad-doctitle": "CollabPad: $1", + "collabpad-import-subtitle": "Mbubata site na $1", "collabpad": "CollabPadì", "tooltip-ca-ve-edit": "Mèzi ihu â", + "tooltip-ca-ve-edit-local": "Dezie ihu nkọwaya ókùgwù", + "tooltip-ca-ve-create": "Ké ihü nka", + "tooltip-ca-ve-create-local": "Dezie ihu nkọwaya ókùgwù", "tooltip-ca-editsource": "Dezie koodu isi mmalite nke ibe a", + "tooltip-ca-editsource-local": "Dezie koodu isi iyi nke mpaghara nkọwa peeji nke.", "tooltip-ca-createsource": "Mepụta koodu mmalite nke ibe a", + "tooltip-ca-createsource-local": "Mepụta koodu isi iyi nke peeji nke nkọwa mpaghara.", "visualeditor-advancedsettings-tool": "Ntọala dị elu", "visualeditor-annotations-default-description": "Akụkụ nke ibe a bụ akụkụ nke oke nkọwa.", "visualeditor-annotations-default-end": "Ọgwụgwụ nke oke nkọwapụta", "visualeditor-annotations-default-start": "mmalite nke nkọwapụta.", "visualeditor-annotations-extended-documentation": "Agbatịla ọkwa nkọwaputa a n'ihi na ọdịnaya ọ gbachiri emeghị nke ọma. A na-atụ aro ka ị hụ na etinyere ọdịnaya edeputara nke ọma tupu edezie ya; ma ọ bụghị ya, enwere ike ịkọwa oke oke karịa ka a tụrụ anya ya.", "visualeditor-autosave-modified-prompt-accept": "Malitegharịa ndezi", + "visualeditor-autosave-modified-prompt-message": "Edeziri ibe a kemgbe ị bugoro ya ikpeazụ. {{GENDER:|ị}} ọ ga-amasị ịmalitegharị {{GENDER:|gị}} nke ụdị ochie, ma ọ bụ malite ndezi ọhụrụ nke ụdị ọhụrụ?", "visualeditor-autosave-modified-prompt-reject": "Bido ndezi ọhụrụ", + "visualeditor-autosave-modified-prompt-title": "Malitegharịa {{GENDER:|}} gị ndezi?", "visualeditor-autosave-not-recovered-text": "Enweghị ike ị nwetaghachi mgbanwe gị na-echekwabeghị.", "visualeditor-autosave-not-recovered-title": "Gbanwee mgbake agaghị", "visualeditor-autosave-recovered-text": "E nwetaghachila mgbanwe gị echekwara na akpaghị aka.", @@ -30,20 +41,330 @@ "visualeditor-backbutton-tooltip": "Laghachi azụ", "visualeditor-ca-createlocaldescriptionsource": "Tinye nkọwa ebe o si", "visualeditor-ca-createsource": "Mepụta isi mmalite", + "visualeditor-ca-editlocaldescriptionsource": "Tinye nkọwa ebe o si", "visualeditor-ca-editsource": "Dezie ebe osi", "visualeditor-ca-editsource-section": "dezie ebe o si", - "visualeditor-categories-tool": "Ụdàkọ", + "visualeditor-ca-editsource-section-hint": "Dezie ngalaba isi iyi: $1", + "visualeditor-categories-tool": "Otú", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Nkwupụta gbanwere site na $1 gaa na $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Họrọ igodo na $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Ihichapụta igodo unset site na $1", + "visualeditor-changedesc-mwlanguagevariant": "Asụsụ variant markup gbanwere", + "visualeditor-changedesc-mwredirect": "Ebumnuche redirect gbanwere site na $1 ruo $2", + "visualeditor-changedesc-mwtransclusion": "Template parameters gbanwere", + "visualeditor-desc": "Nchịkọta akụkọ anya maka MediaWiki", "visualeditor-descriptionpagelink": "Project:Ihe ndozi nke anya nahu", + "visualeditor-dialog-extension-abandonedit": "Ì ji n'aka na ịchọrọ imechi mkparịta ụka a n'etinyeghị mgbanwe gị?", + "visualeditor-dialog-media-alttext-checkbox": "Jiri ederede ederede dị ka ederede ọzọ", + "visualeditor-dialog-media-alttext-section": "Ederede nwere ike isote", + "visualeditor-dialog-media-alttext-section-help": "I nwere ike iji mpa nke n'egosipụta ịchọọ were dee nkọwa ederede nye ndị n'enweghị ike ịhụ faịlụ ahụ. Nkọwa a kwesịrị ga ezuru ha ịghọta ihe mere na ihe akụkọ gbasara irighiri nsèrè foto. Nke a ka dị mkpa n'etiti ndi kpuruisi na ụfọdụ ndị n'eji akurungwa ihu onyonyo ma ọ bụ brawzer nke naanị ederede.", + "visualeditor-dialog-media-change-image": "Gbanwee onyonyo", + "visualeditor-dialog-media-choose-image": "Tinye deeti na onyonyo a", + "visualeditor-dialog-media-content-description-link": "(Nkọwa peeji)", + "visualeditor-dialog-media-content-filename": "Aha faịlụ", + "visualeditor-dialog-media-content-section": "Nkowapụta", + "visualeditor-dialog-media-content-section-help": "Ị nwere ike iji nke a iji gosipụta akara nke na-egosi n'akụkụ isiokwu ahụ maka ndị niile na-agụ ya. A na-ejikarị nke a eme ihe iji kọwaa ihe kpatara isiokwu ahụ ji dị mkpa na gburugburu ebe e gosipụtara ya. O kwesịrị ịdị nkenke ma na-enye ihe ọmụma.", + "visualeditor-dialog-media-goback": "Azụ", + "visualeditor-dialog-media-info-artist": "Ebugoro site na $1", + "visualeditor-dialog-media-info-audiofile": "Faịlụ ọdịyo", + "visualeditor-dialog-media-info-created": "Emepụtara: $1", "visualeditor-dialog-media-info-meta-artist": "Odee: $1", - "visualeditor-dialog-media-save": "Dònye", - "visualeditor-dialog-media-search-tab-search": "Tùwe", + "visualeditor-dialog-media-info-moreinfo": "Ozi ndị ọzọ", + "visualeditor-dialog-media-info-readmore": "Gụkwuo", + "visualeditor-dialog-media-info-uploaded": "Ebugoro site na $1", + "visualeditor-dialog-media-page-advanced": "Ogo dị elu", + "visualeditor-dialog-media-page-general": "Izugbe", + "visualeditor-dialog-media-position-checkbox": "Bue ngwe gburugburu otu isiokwu a.", + "visualeditor-dialog-media-position-checkbox-help": "Ị nwere ike ime ka ihe mgbasa ozi a gosipụta n'ụzọ ziri ezi na ederede nke ibe ahụ kama ịmị n'elu mmiri. Ị ga-eme nke a naanị mgbe niile, n'ihi na ọ ga-agbaji ederede ahụ ma ọ bụrụ na ị gbanyụọ igbe a.", + "visualeditor-dialog-media-position-section": "Ọnọdụ", + "visualeditor-dialog-media-position-section-help": "Ị nwere ike ịtọ ebe ihe mgbasa ozi a pụtara na ibe. A na-eji nke a mgbe ụfọdụ agbajie ogologo ahịrị nke onyonyo n'otu akụkụ nke ibe ahụ.", + "visualeditor-dialog-media-save": "Chekwa", + "visualeditor-dialog-media-search-tab-search": "chọọ", + "visualeditor-dialog-media-search-tab-upload": "Bulite", + "visualeditor-dialog-media-size-section": "Ogo onyonyo", + "visualeditor-dialog-media-size-section-help": "Ị nwere ike ịtọ otú nnukwu ihe mgbasa ozi ga esi egosi na ibe. Nke a kwesịrị ịbụ ihe fọrọ nke nta ka ọ bụrụ mgbe ọ bụla, n'ihi na ogo omenala ga-egbochi nhazi nke ibe maka ndị na-agụ akwụkwọ ma mee ka ọ ghara ikwekọ.", + "visualeditor-dialog-media-title": "Ntọala mgbasa ozi", + "visualeditor-dialog-media-type-border": "Oke", + "visualeditor-dialog-media-type-frame": "etiti", + "visualeditor-dialog-media-type-frameless": "Enweghị ntụpọ", + "visualeditor-dialog-media-type-none": "Isi", + "visualeditor-dialog-media-type-section": "Ụdị onyonyo", + "visualeditor-dialog-media-type-section-help": "Ị nwere ike ịtọ ka ihe mgbasa ozi si egosi na ibe. Nke a kwesịrị ịbụ usoro thumbnail ka ọ dabara na ibe ndị ọzọ n'ihe fọrọ nke nta ka ọ bụrụ ọnọdụ niile.", + "visualeditor-dialog-media-type-thumb": "thumbnail", + "visualeditor-dialog-media-upload": "Bulite", + "visualeditor-dialog-meta-advancedsettings-label": "Ntọala dị elu", + "visualeditor-dialog-meta-advancedsettings-section": "Ntọala dị elu", + "visualeditor-dialog-meta-categories-addcategory-label": "Tinye otu udi na ibe a", "visualeditor-dialog-meta-categories-category": "Ụdàkọ", "visualeditor-dialog-meta-categories-data-label": "Ụdàkọ", + "visualeditor-dialog-meta-categories-defaultsort-help": "Ị nwere ike ịkwụsị otu esi ahazi ibe a mgbe egosipụtara n'ime ụdị site na ịtọ ndeksi dị iche iche iji hazie kama. A na-ejikarị nke a eme ihe iji mee ka ibe banyere ndị mmadụ gosipụta site na aha ikpeazụ, ma a ga-akpọ ya aha mbụ ha.", + "visualeditor-dialog-meta-categories-defaultsort-label": "Hazie ihuakwụkwọ a site n'ọfụụ dị ka", + "visualeditor-dialog-meta-categories-hidden": "A na-ahazi ụdị a ka ọ ghara igosi na peeji nke agbakwunyere ya.", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Ébéanọr zonari a zonari", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Ụdị ndị kwekọrọ na ya", + "visualeditor-dialog-meta-categories-input-movecategorylabel": "Bugharịa ụdị a ebe a", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Tinyé ụdàkọ", + "visualeditor-dialog-meta-categories-input-placeholder": "Tinyé ụdàkọ", + "visualeditor-dialog-meta-categories-missing": "Ụdị a enweghị peeji nke nkọwa.", + "visualeditor-dialog-meta-categories-options": "Nhọrọ", "visualeditor-dialog-meta-categories-section": "Ụdàkọ", + "visualeditor-dialog-meta-categories-sortkey-label": "Dezie peeji a dị ka a ga-asị na a na-akpọ ya.", + "visualeditor-dialog-meta-languages-code-label": "Koodu asụsụ", + "visualeditor-dialog-meta-languages-label": "Asụsụ", + "visualeditor-dialog-meta-languages-link-label": "Njikọ peeji", + "visualeditor-dialog-meta-languages-name-label": "Asụsụ", + "visualeditor-dialog-meta-languages-readonlynote": "Nke a bụ ndepụta nke peeji nke n'asụsụ ndị ọzọ jikọtara na nke a. Maka ugbu a, enwere ike idezi ya naanị na ọnọdụ isi mmalite ma ọ bụ na Wikidata.", + "visualeditor-dialog-meta-languages-section": "Asụsụ", + "visualeditor-dialog-meta-settings-displaytitle": "Gosi isiokwu", + "visualeditor-dialog-meta-settings-displaytitle-help": "Ị nwere ike ịkwụsị otu esi egosipụta aha ibe a site na ịtọ akara dị iche iche iji gosipụta kama.", + "visualeditor-dialog-meta-settings-hiddencat-help": "Ị nwere ike igbochi ụdị a ka ọ ghara igosi na ndepụta nke edemede na ibe ndị otu. Nke a bara uru maka edemede ndị na-amasị ndị editọ ma ọ bụghị ọtụtụ ndị na-agụ akwụkwọ, dị ka ibe ndị chọrọ ihe atụ.", + "visualeditor-dialog-meta-settings-hiddencat-label": "Ébéanọr zonari a zonari", + "visualeditor-dialog-meta-settings-index-default": "Nke éjị bịdó", + "visualeditor-dialog-meta-settings-index-disable": "Mba", + "visualeditor-dialog-meta-settings-index-force": "Ee", + "visualeditor-dialog-meta-settings-index-help": "Ị nwere ike ịmanye engines ọchụchọ ka ha depụta ibe a na nsonaazụ ha dị mkpa, ma ọ bụ manye ha ka ha ghara ime otú ahụ. Nhọrọ a anaghị emetụta ọchụchọ n'ime saịtị.", + "visualeditor-dialog-meta-settings-index-label": "Mee ka peeji a dị iche iche site na engines ọchụchọ.", + "visualeditor-dialog-meta-settings-label": "Nhazi ihuakwụkwọ", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Nke éjị bịdó", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Mba", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Eeh", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Ị nwere ike ịmanye ngosipụta nke taabụ ọzọ ma e wezụga taabụ \"$1\" na ibe a nke ga-eme ka ọ dị mfe ịgbakwunye ngalaba ọhụrụ, ma ọ bụ manye ya ka ọ ghara ịpụta ma ọ bụrụ na ọ ga-eme.", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Gosi taabụ na peeji a iji gbakwunye ngalaba ọhụrụ.", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "Ị nwere ike igbochi ọdịnaya nke ibe a na-akpaghị aka gbanwee n'ime edemede ndị ọzọ.", + "visualeditor-dialog-meta-settings-nocontentconvert-label": "Ejila ihe dị iche iche dị iche iche na-agbanwe agbanwe n'etiti asụsụ dị iche iche.", + "visualeditor-dialog-meta-settings-noeditsection-help": "Ị nwere ike ịkwụsị njikọ edezi site na ịpụta n'akụkụ ngalaba ọ bụla n'ọnọdụ a na-adịghị ahụkebe ebe nke ahụ kwesịrị ekwesị.", + "visualeditor-dialog-meta-settings-noeditsection-label": "Gbanyụọ njikọ dezie dị n'akụkụ isi okwu ọ bụla na ibe a.", + "visualeditor-dialog-meta-settings-nogallery-help": "Ị nwere ike igbochi ụdị a site na igosipụta faịlụ ndị otu dị ka gallery, ma ọ bụrụ na nke ahụ ekwesịghị ekwesị na nke a.", + "visualeditor-dialog-meta-settings-nogallery-label": "Kwụsị ngosi ihe ngosi ochie", + "visualeditor-dialog-meta-settings-notitleconvert-help": "Ị nwere ike igbochi ọdịnaya nke ibe a na-akpaghị aka gbanwee n'ime edemede ndị ọzọ.", + "visualeditor-dialog-meta-settings-notitleconvert-label": "Ejila ihe dị iche iche dị iche iche na-agbanwe agbanwe n'etiti asụsụ dị iche iche.", + "visualeditor-dialog-meta-settings-redirect-help": "Ị nwere ike ime ka ibe a bụrụ redirect, peeji nke ga-eme ka ndị na-agụ akwụkwọ gaa na ibe ọzọ na wiki a. Nke a bara uru maka nsụpe na-ezighi ezi na aha ndị ọzọ ma ọ bụ echiche. Ọ bụrụ na ị na-eme otú ahụ, ndị na-agụ akwụkwọ agaghị ahụ ọdịnaya nke ibe a.", + "visualeditor-dialog-meta-settings-redirect-label": "Bugharịa peeji a na peeji a", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Peeji mgbaru ọsọ maka redirection", + "visualeditor-dialog-meta-settings-redirect-statichelp": "Ị nwere ike igbochi nke a redirect si na-emelitere na-akpaghị aka mgbe peeji nke ọ redirects na-kwaga, na nnọọ obere ikpe na nke a dị mkpa.", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Gbochie redirect a ka a na-emelite mgbe a na-ebugharị peeji ezubere iche.", + "visualeditor-dialog-meta-settings-section": "Nhazi ihuakwụkwọ", + "visualeditor-dialog-meta-settings-toc-default": "Ọ bụrụ na ọ dị mkpa", "visualeditor-dialog-meta-settings-toc-disable": "Emelaème", + "visualeditor-dialog-meta-settings-toc-force": "M̀gbèọbụlà", + "visualeditor-dialog-meta-settings-toc-help": "Ị nwere ike ịmanye tebụl nke ọdịnaya nke na-edepụta isiokwu ọ bụla na ibe ahụ ka ọ pụta na ibe ndị nwere ihe na-erughị isiokwu anọ, ma ọ bụ manye ya ka ọ ghara ịpụta ma ọlị. Site na ndabara, ọ ga-apụta ma ọ bụrụ na ibe ahụ nwere isi okwu anọ ma ọ bụ karịa.", + "visualeditor-dialog-meta-settings-toc-label": "Gosi tebụl ndịna", + "visualeditor-dialog-meta-templatesused-noresults": "Enweghị ndebiri achọtara.", + "visualeditor-dialog-meta-title": "Nhọrọ", + "visualeditor-dialog-table-collapsed": "Ọdịda na mbido", + "visualeditor-dialog-table-collapsible": "A na-agbagha agbagha", + "visualeditor-dialog-table-sortable": "Chịm", + "visualeditor-dialog-table-wikitable": "Ụdị (wikitable)", + "visualeditor-dialog-template-title": "Àtụ", + "visualeditor-dialog-transclusion-action-save": "Dònye", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Ihe ndebiri a adịghị.", + "visualeditor-dialog-transclusion-template-title-modifier": "Akwụkwọ ndebiri na [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter parameter] aha (ma ọ bụrụ na ọ dị) adịghị mgbe a na-edezi ndebiri na-eji akwu syntax ma ọ bụ modifiers, dị ka [//www.mediawiki.org/wiki/Special:MyLanguage/Help].", + "visualeditor-dialog-transclusion-template-widget-aria": "Pịa Space iji họrọ template.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Pịa Ctrl + Del iji hichapụ ndebiri ahụ, ụkpụrụ ya na ụkpụrụ ha. Pịa Ctrl + Shift + Arrows iji mee ka template ahụ gbagoo ma ọ bụ ala.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Pịa Ctrl + Del iji hichapụ ndebiri ahụ, ụkpụrụ ya na ụkpụrụ ha.", + "visualeditor-dialog-transclusion-add-wikitext": "Tinye wikitext", + "visualeditor-dialog-transclusion-add-param-error-alias": "agbakwunyela \"$1\" ka \"$2\". Biko lelee nhọrọ ndị dị na sidebar. Nke a bụ n'ihi iji [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases aliases] ma ọ bụ [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label labels].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "Enweghị ike ịgbakwunye \"$1\" n'ihi na akara akara ahụ dị ka [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated deprecated].", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "E nweghị ike itinye ntụ \"$2\" ugboro abụọ.", "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Nke\n oke \"$2\" adịlarị maka ojiji. Biko lelee nhọrọ ndị dị na sidebar.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 bụ ihe a machibidoro iwu. Biko wepụ ya iji gbakwunye parameter.", + "visualeditor-dialog-transclusion-add-param-help": "Ọ bụrụ na ị maara, tinye aha [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters undocumented parameter]. Rịba ama na ọ bụ naanị ihe ndị a maara site na template ga-enwe mmetụta. Ị nwere ike ịchọta ozi gbasara paramita ndị dị ugbu a na [[$1|template si page]].", + "visualeditor-dialog-transclusion-add-param-placeholder": "Parameter aha", + "visualeditor-dialog-transclusion-add-param-save": "Tinye", + "visualeditor-dialog-transclusion-add-template": "Tinye ndebiri", + "visualeditor-dialog-transclusion-add-template-button": "Tinye ndebiri", + "visualeditor-dialog-transclusion-add-template-save": "Tinye", + "visualeditor-dialog-transclusion-add-undocumented-param": "Tinye oke na-enweghị akwụkwọ", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Kedu ihe ị ga-eme iji chọọ ya? Mgbanwe gị ga-efu, ma a agaghị emebi ya.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Mechie template editor? Mgbanwe gị ga-efu, ma a agaghị emebi ya.", + "visualeditor-dialog-transclusion-collapse-options": "nhọrọ ndị ọzọ", + "visualeditor-dialog-transclusion-confirmation-discard": "Tụfuo ndezi gasị", + "visualeditor-dialog-transclusion-confirmation-reject": "Gaa n'ihu n'idezi", + "visualeditor-dialog-transclusion-contextitem-description": "E sitere na: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "ọ ka na-ebudata", + "visualeditor-dialog-transclusion-expand-options": "Gosi nhọrọ", + "visualeditor-dialog-transclusion-filter-hide-unused": "Zóghachi ejighị ya eme ihe", + "visualeditor-dialog-transclusion-filter-no-match": "Achọtaghị egwuregwu ọ bụla", + "visualeditor-dialog-transclusion-filter-placeholder": "Chọta ubi", + "visualeditor-dialog-transclusion-filter-show-all": "Gosi ha niine", + "visualeditor-dialog-transclusion-filter-title": "Ọchụchọ parameter maka $1", + "visualeditor-dialog-transclusion-help-title": "Nkwado ndebiri edezi", + "visualeditor-dialog-transclusion-help-message": "Templates na-enye formatting maka ọdịnaya. Onye nchịkọta akụkọ a na-egosi nhọrọ nke template na-enye n'aka ekpe na ụkpụrụ nwere ike ịgbakwunye na nhọrọ ndị ahụ n'aka nri.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Enyemaka maka idezi ndebiri]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions mkpirisi ahụigodo]", + "visualeditor-dialog-transclusion-deprecated-parameter": "Ubi na-emebi emebi", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "A na-emebi ubi ahụ. $1", + "visualeditor-dialog-transclusion-loading": "Ọ biágó...", + "visualeditor-dialog-transclusion-multipart-message": "Ị na-edezi ndebiri ugbu a na otu ma ọ bụ karịa iberibe [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content ejikọrọ ọdịnaya] (wikitext na / ma ọ bụ ndebiri ndị ọzọ).", + "visualeditor-dialog-transclusion-no-template-data-description": "Template a na-efu [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData], na ya parameters e [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters autogenerated]. N'ihi ya, template na parameters ya enweghị nkọwa. Enwere ike inwe ozi ndị ọzọ na [[$1|peeji nke template]].", + "visualeditor-dialog-transclusion-no-template-description": "Ndebiri \"$1\" enwebeghị nkọwa, mana enwere ike ịnwe ụfọdụ ozi na [[$2|template peeji nke]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Ihe ndebiri a enweghị parampat edeputara na enwere ike ebu ya maka ojiji na-enweghị ha.", + "visualeditor-dialog-transclusion-param-default": "Nke mbụ: $1", + "visualeditor-dialog-transclusion-param-example-long": "Ihe Nlereanya: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Pịa Space iji gbakwunye ma ọ bụ wepu parameters. Pịa Tinye iji gbakwunye paramita ma dezie uru ya ozugbo. Mgbe a họọrọ parameter, pịa Tinye iji dezie uru ahụ.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Oke na $1", + "visualeditor-dialog-transclusion-param-undocumented": "Tinye oke na-enweghị akwụkwọ", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Chọta ndebiri", + "visualeditor-dialog-transclusion-required-parameter": "Ubi achọrọ", + "visualeditor-dialog-transclusion-required-parameter-description": "A chọrọ ubi.", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Laghachi azụ", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Gaa n'ihu n'agbanyeghị", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Achọrọ {{PLURAL:$1|ubi}} na-efu", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "Ì ji n'aka na ịchọrọ ịga n'ihu na-enweghị ijupụta $1 {{PLURAL:$2|ubi}}?", + "visualeditor-dialog-transclusion-see-template": "A na-emepụta ndebiri ndị ọrụ ma nwee ike ọ gaghị enwe nkọwa zuru ezu. Enwere ike inwe ozi ndị ọzọ na nke a [[$2|peeji nke template]].", + "visualeditor-dialog-transclusion-title-insert-template": "Tinye template", + "visualeditor-dialog-transclusion-title-insert-known-template": "Tinye: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Dezie: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Ndebiri ọdịnaya", + "visualeditor-dialog-transclusion-template-search": "Nchọchọ ndebiri", + "visualeditor-dialog-transclusion-template-search-help": "Chọta template ịchọrọ ịgbakwunye site na ịchọ isi okwu na-amata. Ndebiri ndị nwere nkọwa nwere ike ịrụ ọrụ nke ọma na nchịkọta akụkọ anya.", + "visualeditor-dialog-transclusion-wikitext": "Wikitext", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Pịa Space iji họrọ Wikitext element. Pịa Tinye iji họrọ ma dezie wikitext.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Pịa Ctrl+Del iji hichapụ ihe wikitext. Pịa Ctrl + Shift + Arrows iji mee ka mmewere ahụ gbagoo ma ọ bụ gbadaa.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Pịa Ctrl+Del iji hichapụ ihe wikitext.", + "visualeditor-dialogbutton-media-tooltip": "Ihe oyiyi na mgbasa ozi", + "visualeditor-dialogbutton-template-tooltip": "Àtụ̀", + "visualeditor-editconflict": "Enweghị ike ịchekwa mgbanwe gị n'ihi esemokwu ndezi. {{GENDER:|ị}} ọ ga-amasị gị iji aka dozie esemokwu ahụ?", + "visualeditor-editingtabdialog-body": "{{SITENAME\n}} ugbu a na-echeta onye editọ ị họọrọ. Ị nwere ike ịgbanwe ụdị dezie ka ị na-edezi, ma gbanwee mmasị gị mgbe e mesịrị.", + "visualeditor-editingtabdialog-ok": "Jiri onye editọ m jiri mee ihe na ndezi ikpeazụ m", + "visualeditor-editingtabdialog-title": "Edezi taabụ", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|notice|notices}}", + "visualeditor-editnotices-tooltip": "Dezie ọkwa", + "visualeditor-editsummary": "Kọwaa ihe ị gbanwere", + "visualeditor-editsummary-characters-remaining": "Ọnụ ọgụgụ nke ihe odide fọdụrụnụ.", + "visualeditor-educationpopup-dismiss": "Ọdịmma, Aghọtara m ya.", + "visualeditor-expandable-less": "Obere", + "visualeditor-expandable-more": "Ọzọkwa", + "visualeditor-feedback-defaultmessage": "URL: $1", + "visualeditor-formatdropdown-format-mw-heading1": "Íshí ihü", + "visualeditor-formatdropdown-format-mw-heading2": "Íshí édé", + "visualeditor-formatdropdown-format-mw-heading3": "Isiokwu dị n'okpuru 1", + "visualeditor-formatdropdown-format-mw-heading4": "Isiokwu dị n'okpuru 2", + "visualeditor-formatdropdown-format-mw-heading5": "Isiokwu dị n'okpuru 3", + "visualeditor-formatdropdown-format-mw-heading6": "Isiokwu dị n'okpuru 4", + "visualeditor-generating-wikitext-progress": "Ịmepụta wikitext", + "visualeditor-includes-noinclude-start": "A na-ewepụ ihe ndị a na-ewepụ site na ihe ndị na-adịghị mma.", + "visualeditor-includes-noinclude-end": "Ọgwụgwụ nke ọdịnaya wepụrụ site na excerpts", + "visualeditor-includes-onlyinclude-start": "Mbido ọdịnaya e kwere n'ihe odide", + "visualeditor-includes-onlyinclude-end": "Ọgwụgwụ nke ọdịnaya kwere na excerpts", + "visualeditor-includes-includeonly": "Ọdịnaya maka edemede Naanị", + "visualeditor-includes-noinclude-description": "Mgbe ọdịnaya sitere na ibe a na-eji ibe ọzọ, ọdịnaya sitere na ebe a ruo mgbe akara njedebe kwekọrọ ekwekọ agaghị agụnye. Kpachara anya mgbe ị na-edezi ọdịnaya n'èzí akara ndị a, dịka ibe ndị ọzọ nwere ike iji ya.", + "visualeditor-includes-onlyinclude-description": "Mgbe ọdịnaya sitere na ibe a na-eji ibe ọzọ, naanị ọdịnaya site na ebe a ruo mgbe akara njedebe kwekọrọ na ya ga-agụnye. Kpachara anya mgbe ị na-edezi ọdịnaya n'etiti akara ndị a, dịka ibe ndị ọzọ nwere ike iji ya.", + "visualeditor-includes-includeonly-description": "Mgbe ọdịnaya sitere na ibe a na-eji ibe ọzọ, a ga-etinye ọdịnaya ndị ọzọ ebe a:", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Mụta ihe banyere transclusion akụkụ]", + "visualeditor-languages-tool": "Asụsụ", + "visualeditor-linkcontext-uneditable": "Ndo, njikọ a nwere ike dezie naanị na ọnọdụ isi iyi maka ugbu a.", + "visualeditor-linkinspector-button-link-external": "Jikodo di èzí", + "visualeditor-linkinspector-button-link-internal": "Chọọ peeji ndị dị n'ime", + "visualeditor-linkinspector-convert-link-isbn": "Tọghata ka ISBN njikọ", + "visualeditor-linkinspector-convert-link-pmid": "Tọghata na PMID njikọ", + "visualeditor-linkinspector-convert-link-rfc": "Tọghata ka ISBN njikọ", + "visualeditor-linkinspector-educationpopup-text": "Jikọọ okwu ndị dị mkpa na isiokwu wiki ndị ọzọ ma ọ bụ ọbụna weebụsaịtị ndị ọzọ. Ọ ga-enyere ndị na-agụ akwụkwọ aka ịghọta ihe gbara ya gburugburu.", "visualeditor-linkinspector-educationpopup-title": "Òjikọ", + "visualeditor-linkinspector-illegal-title": "Isiokwu ihuakwụkwọ na-enweghị isi", + "visualeditor-linkinspector-invalid-blocked": "Ndị mmadụ nọ na wiki a kpebiri igbochi njikọ na saịtị a. Biko gbalịa njikọ ọzọ.", + "visualeditor-linkinspector-invalid-external": "Tinye URL zuru ezu, dịka https://example.org", + "visualeditor-linknodeinspector-add-label": "Tinye labeelu", + "visualeditor-linknodeinspector-title": "Njikọ dị mfe", + "visualeditor-magiclinknodeinspector-convert-link": "Tọghata na mfe njikọ", + "visualeditor-magiclinknodeinspector-title-isbn": "Njikọ ISBN", + "visualeditor-magiclinknodeinspector-title-pmid": "Njikọ PMID", + "visualeditor-magiclinknodeinspector-title-rfc": "Njikọ RFC", + "visualeditor-media-title-audio": "Ọdịyo", + "visualeditor-media-title-image": "Onyonyo", + "visualeditor-media-title-video": "Vidiyo", + "visualeditor-meta-tool": "Nhọrọ", + "visualeditor-mweditmode-tooltip": "Gbanye odezi", + "visualeditor-mweditmodesource-progress": "N'ịgbanwee gaa na ebenwu iyindo edezi...", + "visualeditor-mweditmodesource-tool-current": "Isi mmalite edezi", + "visualeditor-mweditmodesource-tool-unavailable": "Isi mmalite edezi adịghị ebe a", + "visualeditor-mweditmodeve-popup-body": "Ị nwere ike ịlaghachi na nhazi anya n'oge ọ bụla site na ịpị akara ngosi a.", + "visualeditor-mweditmodeve-popup-title": "N'ihi ya, ị na-agbanwe agbanwe na isi iyi na-agbanwe agbanwe.", + "visualeditor-mweditmodeve-progress": "Gbanwee banye na ndezi anya", + "visualeditor-mweditmodeve-showagain": "Egosila ozi a ọzọ.", + "visualeditor-mweditmodeve-tool-current": "Nhazi ngosi", + "visualeditor-mweditmodeve-tool-unavailable": "A naghị edezi ihe oyiyi ebe a.", + "visualeditor-mweditmodewt-popup-body": "Ị nwere ike ịlaghachi na isi iyi edezi n'oge ọ bụla site na ịpị akara ngosi a.", + "visualeditor-mweditmodewt-popup-title": "N'ihi ya, ị na-agbanwe agbanwe na Visual Edit.", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|onyinyo}}", + "visualeditor-mwgallerydialog-caption-field-label": "Nkọwa ihe osise", + "visualeditor-mwgallerydialog-card-images": "Onyonyo", + "visualeditor-mwgallerydialog-card-options": "Nhọrọ", + "visualeditor-mwgallerydialog-classes-field-label": "CSS klas", + "visualeditor-mwgallerydialog-classes-input-placeholder": " Aha klas, kewapụrụ", + "visualeditor-mwgallerydialog-empty-gallery-message": "Gallery ahụ tọgbọ chakoo.", + "visualeditor-mwgallerydialog-heights-field-label": "Ogologo foto", + "visualeditor-mwgallerydialog-heights-input-placeholder": "Ndabara elu: $1 px", + "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Omenala na-enweghị nkọwa", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Nchịkọta", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "A na-ekpuchi ihe ndị a na-eme na hover", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Jujuru ya na nkọwa okwu machie", + "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Ihe ngosi", + "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Omenala", + "visualeditor-mwgallerydialog-mode-field-label": "Ọnọdụ ngosi", + "visualeditor-mwgallerydialog-perrow-field-label": "Foto n'ahịrị ọ bụla", + "visualeditor-mwgallerydialog-remove-button-label": "Wepụ onyinyo", + "visualeditor-mwgallerydialog-search-button-label": "Tinye onyonyo ọhụrụ", + "visualeditor-mwgallerydialog-show-filename-field-label": "Gosi aha faịlụ", + "visualeditor-mwgallerydialog-styles-field-label": "Ụdị CSS", + "visualeditor-mwgallerydialog-styles-input-placeholder": "Iwu CSS, nkewapụrụ na ọkara", + "visualeditor-mwgallerydialog-title": "Galari", + "visualeditor-mwgallerydialog-widths-field-label": "Obosara nke onyinyo", + "visualeditor-mwgallerydialog-widths-input-placeholder": "Ndabara elu: $1 px", + "visualeditor-mwpredialog-convert": "Kwe ka ụkpụrụ ngwe", + "visualeditor-mwpredialog-title": "Ederede dị larịị etinyegoro nke ọma", + "visualeditor-mwsignature-tool": "Mbinye aka gị", + "visualeditor-preference-visualeditor": "N'ekwe odezi anya.", + "visualeditor-preference-newwikitexteditor-enable": "Jiri ọnọdụ wikitext n'ime nchịkọta akụkọ anya, kama nchịkọta akụkọ wikitext dị iche iche.", + "visualeditor-preference-newwikitexteditor-help": "A na-akpọkarị nke a '2017 wikitext editor'.", + "visualeditor-preference-tabs": "Nhazi ọnọdụ:", + "visualeditor-preference-tabs-multi-tab": "Gosi m taabụ editezi abụọ", + "visualeditor-preference-tabs-prefer-ve": "Nye m onye editọ ọhụụ mgbe niile ma ọ bụrụ na ọ ga-ekwe omume.", + "visualeditor-preference-tabs-prefer-wt": "Nye m onye nchịkọta akụkọ mgbe niile", + "visualeditor-preference-tabs-remember-last": "Cheta onye nchịkọta akụkọ ikpeazụ m", + "visualeditor-preference-collab-label": "Nhazi mmekọrịta", + "visualeditor-preference-collab-description": "Kpọọ ndị ọrụ ndị ọzọ ka ha sonye na nnọkọ ndezi gị na nchịkọta akụkọ anya.", + "visualeditor-rebase-client-export": "Dọwá fú", + "visualeditor-rebase-client-export-start": "Dọwá fú", + "visualeditor-rebase-client-import": "Bubata", + "visualeditor-rebase-client-import-name": "Isiokwu peeji", + "visualeditor-rebase-client-title-help": "Ị ga-enwe ike nyochaa mgbanwe tupu ịzọpụta.", + "visualeditor-recreate": "A na-ehichapụ peeji ahụ kemgbe ị malitere idezi ya. Pịa \"$1\" iji weghachite ya.", + "visualeditor-redirect-description": "Bugharịa gaa na $1", + "visualeditor-savedialog-identify-anon": "Ị naghịzi abanye n'ime ya. Ọ bụrụ na ị na-aga n'ihu, a ga-edekọ adreesị IP gị na akụkọ ihe mere eme nke ibe a.", + "visualeditor-savedialog-identify-temp": "Ugbu a, ị na-eji aha njirimara nwa oge $1. Ọ bụrụ na ị gaa n'ihu, a ga-ejikọta ndezi gị na aha njirimara a.", + "visualeditor-savedialog-identify-user": "Ị na-abanye ugbu a dị ka [[User:$1|$1]]. Ọ bụrụ na ị na-aga n'ihu, a ga-ejikọta ndezi gị na akaụntụ a.", + "visualeditor-savedialog-keyboard-shortcut-submit": "Ị nwere ike pịa $1 iji chekwaa ndezi gị.", + "visualeditor-savedialog-label-publish-short": "Bipụta", + "visualeditor-savedialog-label-publish-short-start": "Bipụta", + "visualeditor-savedialog-label-resolve-conflict": "Dozie esemokwu", + "visualeditor-savedialog-label-resume-editing": "Malitegharịa ndezi", + "visualeditor-savedialog-label-review": "Nyochaa mgbanwe gị", + "visualeditor-savedialog-label-review-good": "Laghachi na Mpempe akwụkwọ Nchekwa", "visualeditor-savedialog-label-save-short": "Dònye", - "visualeditor-savedialog-label-save-short-start": "Dònye…" + "visualeditor-savedialog-label-save-short-start": "Dònye…", + "visualeditor-savedialog-review-nosummary": "Enweghị nchịkọta nchịkọta", + "visualeditor-savedialog-review-visual": "Nhụrụ anya", + "visualeditor-savedialog-review-wikitext": "Wikitext", + "visualeditor-savedialog-title-conflict": "Esemokwu", + "visualeditor-savedialog-title-preview": "Hụchanụ mgbanwe gị", + "visualeditor-savedialog-title-review": "Nyochaa mgbanwe gị", + "visualeditor-savedialog-title-save": "Domá ihe í gbanwere", + "visualeditor-section-body-placeholder": "Ngalaba ọhụrụ", + "visualeditor-section-title-placeholder": "Isiokwu", + "visualeditor-loaderror-revidconflict": "Ntughari ID nke ihe nkesa ahụ weghachitere adabaghị (akwụkwọ: $1, metadata: $2).", + "visualeditor-loaderror-wrongmode": "Gbalịrị ibudata nchịkọta akụkọ na ọnọdụ na-ezighi ezi (ụdị data: \"$1\", ọnọdụ nchịkọta akụkọ: \"$2\").", + "visualeditor-settings-tool": "Nhazi ihuakwụkwọ", + "visualeditor-special-characters-group-other": "A na-ejikarị ya eme ihe", + "visualeditor-templatesused-tool": "Ndebiri eji eme ihe", + "visualeditor-title-error": "Aha na ezighi ezi", + "visualeditor-toload": "Onye ndezi ga-ebughari ugbu a. Ọ bụrụ na ị ka na-ahụ ozi a ka nwa tịnkọm tịnkọm ole na ole gachara, biko [$1 bugharịa ibe ahụ].", + "visualeditor-tooltip-non-breaking-space": "Igwe anaghị agba nchara", + "visualeditor-version-label": "Ùdị", + "visualeditor-wikitext-progress": "Ịtụgharị wikitext", + "visualeditor-wikitext-warning": "Ị na-eji visual editor - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitext]] anaghị arụ ọrụ ebe a. Iji gbanwee gaa na isi iyi edezi n'oge ọ bụla na-enweghị ịhapụ mgbanwe gị, pịa bọtịnụ mgba ọkụ.", + "visualeditor-wikitext-warning-title": "Achọpụtara akara Wikitext", + "visualeditor-wikitextconvert-title": "Gbanwee nhazi ka ọ bụrụ wikitext?", + "visualeditor-wikitextconvert-message": "Ị mado ọdịnaya na ọgaranya formatting. Ị ga-achọ ịgbanwe usoro a na wikitext?", + "visualeditor-wikitextconvert-convert": "Gbanwee na wikitext" } diff --git a/i18n/ve-mw/igl.json b/i18n/ve-mw/igl.json index b815682fbe..424478f39a 100644 --- a/i18n/ve-mw/igl.json +++ b/i18n/ve-mw/igl.json @@ -1,8 +1,7 @@ { "@metadata": { "authors": [ - "AgnesAbah", - "Amire80" + "AgnesAbah" ] }, "visualeditor-ca-createlocaldescriptionsource": "Dí ujuwé érané manwu", diff --git a/i18n/ve-mw/ike-cans.json b/i18n/ve-mw/ike-cans.json new file mode 100644 index 0000000000..cde70963e3 --- /dev/null +++ b/i18n/ve-mw/ike-cans.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "MysticVoyager" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "ᑐᓴᖃᐅᕈᓯᓐᓂᕐᒥᒃ ᐊᐅᓪᓚᕆᐅᑎᒃ ᓇᑭᙶᕈᓯᔭᓐᓂᕐᒥᒃ", + "visualeditor-ca-createsource": "ᓴᖅᑭᑦᑎᓂᕐᒥᒃ ᓇᑭᙶᐅᑦ", + "visualeditor-ca-editsource": "ᐊᓯᔾᔨᖅᑎᖅᐸᖕᒋᑦ ᓴᖅᑯᖅ", + "visualeditor-ca-editsource-section": "ᐊᓯᔾᔨᖅᑎᖅᐸᖕᒋᑦ ᓴᖅᑯᖅ" +} diff --git a/i18n/ve-mw/ike-latn.json b/i18n/ve-mw/ike-latn.json new file mode 100644 index 0000000000..310cc4dc46 --- /dev/null +++ b/i18n/ve-mw/ike-latn.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "MysticVoyager" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "tukisigiarutiksat aullaqattarnirmut nakinngaarmangaata", + "visualeditor-ca-createsource": "saqqittinirmik tukisigiarviksanik", + "visualeditor-ca-editsource": "asijjiqpagit", + "visualeditor-ca-editsource-section": "asijjiqpagit" +} diff --git a/i18n/ve-mw/inh.json b/i18n/ve-mw/inh.json index 89a0154392..911b6afa38 100644 --- a/i18n/ve-mw/inh.json +++ b/i18n/ve-mw/inh.json @@ -30,7 +30,10 @@ "visualeditor-dialogbutton-media-tooltip": "Сурташи медиафайлаши", "visualeditor-dialogbutton-template-tooltip": "Ло", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|хоам}}", + "visualeditor-editsummary": "Ӏайха даьча хувцамех лаьца язде лоацца", "visualeditor-linkinspector-educationpopup-title": "Тӏатовжамаш", "visualeditor-mweditmodeve-popup-body": "МоллагӀча хана юха дӀатоха йиш я хьа визуальни хувцамаш деча ражагахьа, укх хьарака тӀа тоӀабаь.", - "visualeditor-mweditmodeve-showagain": "Кхы хьа ма гойта ер хоам" + "visualeditor-mweditmodeve-showagain": "Кхы хьа ма гойта ер хоам", + "visualeditor-savedialog-label-review": "Хьадаь хувцамаш", + "visualeditor-savedialog-title-save": "ДӀаязде хьай хувцамаш" } diff --git a/i18n/ve-mw/io.json b/i18n/ve-mw/io.json index ce5b050b68..a2eedee7f7 100644 --- a/i18n/ve-mw/io.json +++ b/i18n/ve-mw/io.json @@ -53,6 +53,7 @@ "visualeditor-dialog-meta-advancedsettings-section": "Specala figurizo", "visualeditor-dialog-meta-categories-category": "Kategorio", "visualeditor-dialog-meta-categories-data-label": "Kategorii", + "visualeditor-dialog-meta-categories-defaultsort-help": "Vu povas modifikar quale ca pagino ordinesas kande montrata en kategorio, establisanta diferanta indexo por ordinar ol. To ofte facesas por ke pagini pri personi klasifikesez segun surnomo, malgre ke la nomo montresas avane, en la titulo.", "visualeditor-dialog-meta-categories-hidden": "Ica kategorio ne montresos en pagini a qui ol adjuntesas.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Celita kategorii", "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Konkordanta kategorii", @@ -90,6 +91,7 @@ "visualeditor-dialog-meta-settings-toc-default": "Se necesa", "visualeditor-dialog-meta-settings-toc-disable": "Nultempe", "visualeditor-dialog-meta-settings-toc-force": "Sempre", + "visualeditor-dialog-meta-settings-toc-help": "Vu povas krear indexo-tabelo qui montros la titulo qua aparos en pagini kun min kam 4 paragrafi, o koaktigar por ke ol ne aparez. Implicite, ol aparos se la pagino havas 4 paragrafi o plusa.", "visualeditor-dialog-meta-settings-toc-label": "Montrar la Tabelo de kontenajo", "visualeditor-dialog-meta-templatesused-noresults": "Nula shabloni esis trovata.", "visualeditor-dialog-meta-title": "Selekti", @@ -183,7 +185,9 @@ "visualeditor-mwgallerydialog-widths-field-label": "Imajo-larjeso", "visualeditor-mwgallerydialog-widths-input-placeholder": "Normala larjeso: $1 px", "visualeditor-mwsignature-tool": "Vua signaturo", + "visualeditor-preference-visualeditor": "Kapabligar la redaktilo vidala (''visual editor'')", "visualeditor-preference-newwikitexteditor-enable": "Uzez \"wikitext mode\" che visuala redaktilo, vice altra redaktilo diferanta.", + "visualeditor-preference-newwikitexteditor-help": "To kelkafoye nomizesas 'redaktilo di wikitexto de 2017'.", "visualeditor-preference-tabs": "Redakto-maniero:", "visualeditor-preference-tabs-prefer-ve": "Me volas sempre uzar VisualEditor se posibla", "visualeditor-preference-tabs-prefer-wt": "Me volas sempre uzar la bazala redaktilo", @@ -191,7 +195,7 @@ "visualeditor-recreate": "La pagino efacesis dum ke vu redaktis ol. Kliktez $1 por rikrear ol.", "visualeditor-redirect-description": "Ridirektar a $1", "visualeditor-savedialog-identify-user": "Vu nun ja enrejistresis kom [[User:$1|$1]]. Vua redakti asociesos kun ca konto, se vu konzervez ca redakti.", - "visualeditor-savedialog-label-publish-short": "Editar", + "visualeditor-savedialog-label-publish-short": "Publikigez", "visualeditor-savedialog-label-publish-short-start": "Publikigar...", "visualeditor-savedialog-label-resolve-conflict": "Solvar konflikto", "visualeditor-savedialog-label-resume-editing": "Rikomencar redakto", diff --git a/i18n/ve-mw/is.json b/i18n/ve-mw/is.json index fca1fa2ee9..9c24ce9876 100644 --- a/i18n/ve-mw/is.json +++ b/i18n/ve-mw/is.json @@ -173,6 +173,7 @@ "visualeditor-mwgallerydialog-title": "Myndasafn", "visualeditor-mwgallerydialog-widths-field-label": "Breidd myndar", "visualeditor-mwsignature-tool": "Undirskriftin þín", + "visualeditor-preference-visualeditor": "Virkja myndræna ritilinn", "visualeditor-preference-tabs": "Breytinga aðferð:", "visualeditor-preference-tabs-multi-tab": "Sýndu mér flipa fyrir báða ritlana", "visualeditor-preference-tabs-prefer-ve": "Nota alltaf sýnilegar breytingar þegar það er mögulegt", diff --git a/i18n/ve-mw/ish.json b/i18n/ve-mw/ish.json new file mode 100644 index 0000000000..8a41f9bd57 --- /dev/null +++ b/i18n/ve-mw/ish.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Hackesan" + ] + }, + "visualeditor-ca-editsource-section": "Hèhin otolé" +} diff --git a/i18n/ve-mw/isv-latn.json b/i18n/ve-mw/isv-latn.json index 67bb8bfdaa..fbc23123fb 100644 --- a/i18n/ve-mw/isv-latn.json +++ b/i18n/ve-mw/isv-latn.json @@ -122,6 +122,7 @@ "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Pokazati na tutoj stranici zakladku za dodanje novogo razděla", "visualeditor-dialog-meta-settings-nocontentconvert-help": "Vy možete unemožniti avtomatično prěobračenje sodržanja tutoj stranice v ine pisma.", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Ne prěobratite sodržanje medžu jezyčnymi variantami", + "visualeditor-dialog-meta-settings-noeditsection-help": "V rědkyh slučajah, kogda to jest uměstno, vy možete sdělati tako, že pored zaglavij razdělov ne pojavjajut se linky za pravjenje.", "visualeditor-dialog-meta-settings-noeditsection-label": "Izključiti linky za pravjenje pored vsakogo zaglavja na tutoj stranici.", "visualeditor-dialog-meta-settings-nogallery-help": "Vy možete sdělati tako, že fajly v tutoj kategoriji ne izobražajut se kako galerija, ako to ne jest poželano.", "visualeditor-dialog-meta-settings-nogallery-label": "Izključiti galeriju", @@ -139,6 +140,65 @@ "visualeditor-dialog-meta-settings-toc-label": "Pokazati spisok sodržanja", "visualeditor-dialog-meta-templatesused-noresults": "Ne najden nijedin šablon.", "visualeditor-dialog-meta-title": "Opcije", + "visualeditor-dialog-template-title": "Šablon", + "visualeditor-dialog-transclusion-action-save": "Zapisati", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Tutoj šablon ne istnuje.", + "visualeditor-dialog-transclusion-template-widget-aria": "Za izbor šablona natisknite prostrannu klavišu.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Natisknite Ctrl+Del za udaljenje šablona, jegovyh parametrov i jihnyh značenij. Natisknite Ctrl+Shift+strělky za prěsuvanje šablona vgoru ili vdol.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Natisknite Ctrl+Del za udaljenje šablona, jegovyh parametrov i jihnyh značenij.", + "visualeditor-dialog-transclusion-add-wikitext": "Dodatiti vikitekst", + "visualeditor-dialog-transclusion-add-param-placeholder": "Nazva parametra", + "visualeditor-dialog-transclusion-add-param-save": "Dodati", + "visualeditor-dialog-transclusion-add-template": "Dodati šablon", + "visualeditor-dialog-transclusion-add-template-button": "Dodati šablon", + "visualeditor-dialog-transclusion-add-template-save": "Dodati", + "visualeditor-dialog-transclusion-add-undocumented-param": "Dodati nedokumentovany parametr", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Vrnuti se k poisku? Vaše izměne budut utračene nepovratno.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Zatvoriti redaktor šablonov? Vaše izměny budut utračene nepovratno.", + "visualeditor-dialog-transclusion-collapse-options": "Skryti opcije", + "visualeditor-dialog-transclusion-confirmation-discard": "Odkydnuti pravky", + "visualeditor-dialog-transclusion-confirmation-reject": "Prodolžiti pravjenje", + "visualeditor-dialog-transclusion-contextitem-description": "Generovano iz: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Včityvanje...", + "visualeditor-dialog-transclusion-expand-options": "Pokazati opcije", + "visualeditor-dialog-transclusion-filter-hide-unused": "Skryti nekoristane", + "visualeditor-dialog-transclusion-filter-no-match": "Nemaje najdenyh sovpadenij", + "visualeditor-dialog-transclusion-filter-placeholder": "Najdti polje", + "visualeditor-dialog-transclusion-filter-show-all": "Pokazati vse", + "visualeditor-dialog-transclusion-filter-title": "Iskanje parametrov za $1", + "visualeditor-dialog-transclusion-help-title": "Poddržka redaktovanja šablonov", + "visualeditor-dialog-transclusion-deprecated-parameter": "Ustarělo polje", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "Polje jest ustarělo. $1", + "visualeditor-dialog-transclusion-loading": "Včityvanje...", + "visualeditor-dialog-transclusion-multipart-message": "Vy tutčas pravite šablon i jednu ili veče čestij [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content povezanogo sodržanja] (vikiteksta i/ili dodatočnyh šablonov).", + "visualeditor-dialog-transclusion-no-template-parameters": "Tutoj šablon ne imaje dokumentovane parametry i može byti prěznačany za koristanje bez njih.", + "visualeditor-dialog-transclusion-param-default": "Standardno: $1", + "visualeditor-dialog-transclusion-param-example-long": "Priklad: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Natisknite prostrannu klavišu za dodanje ili udaljenje parametrov. Natisknite Enter za dodanje parametra i bezposrědnjego redaktovanja jegovogo značenja. Ako parametr uže jest izbrany, natisknite Enter za pravjenje jegovogo značenja.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Parametry v $1", + "visualeditor-dialog-transclusion-param-undocumented": "(nedokumentovany parametr)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Najdti šablon", + "visualeditor-dialog-transclusion-required-parameter": "Obvezno polje", + "visualeditor-dialog-transclusion-required-parameter-description": "Polje jest obvezno.", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Nazad", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Vse jedno prodolžiti", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Obvezno polje jest nezapoljeno|Obvezne polja sut nezapoljene}}", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "Jeste li vy uvěrjeni, že hočete prodolžiti bez zapoljnenja {{PLURAL:$2|polja|polj}} $1?", + "visualeditor-dialog-transclusion-see-template": "Šablony tvoret koristniki i v svezi s tym opisy mogut byti odsutne. Može byti, že na tutoj [[$2|stranici šablona]] nahodi se dodatočna informacija.", + "visualeditor-dialog-transclusion-title-insert-template": "Vstaviti šablon", + "visualeditor-dialog-transclusion-title-insert-known-template": "Vstavjenje: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Pravjenje: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Sodržanje šablona", + "visualeditor-dialog-transclusion-template-search": "Poiskanje šablona", + "visualeditor-dialog-transclusion-wikitext": "Vikitekst", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Natisknite prostrannu klavišu za izbranje elementa vikiteksta. Natisknite Enter za izbranje i pravjenje vikiteksta.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Natisknite Ctrl+Del za udaljenje elementa vikiteksta. Natisknite Ctrl+Shift+strělky za prěsuvanje elementa vgoru ili vdol.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Natisknite Ctrl+Del za udaljenje elementa vikiteksta.", + "visualeditor-dialogbutton-media-tooltip": "Obrazky i multimedija", + "visualeditor-dialogbutton-template-tooltip": "Šablon", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|uvědomjenje|uvědomjenja|uvědomjenij}}", + "visualeditor-editnotices-tooltip": "Uvědomjenja o pravkah", + "visualeditor-editsummary": "Opišite, čto vy jeste izměnili", "visualeditor-educationpopup-dismiss": "Dobro, razuměju", "visualeditor-expandable-less": "Menje", "visualeditor-expandable-more": "Veče", @@ -158,12 +218,93 @@ "visualeditor-linkinspector-convert-link-rfc": "Prěobratiti v RFC-link", "visualeditor-linkinspector-educationpopup-title": "Linky", "visualeditor-linkinspector-illegal-title": "Nepravilna nazva stranice", + "visualeditor-linkinspector-invalid-external": "Vvedite polny URL-adres, napr. https://priklad.org", + "visualeditor-linknodeinspector-add-label": "Dodati etiketku", + "visualeditor-linknodeinspector-title": "Prosty link", + "visualeditor-magiclinknodeinspector-convert-link": "Prětvoriti v prosty link", + "visualeditor-magiclinknodeinspector-title-isbn": "ISBN-link", + "visualeditor-magiclinknodeinspector-title-pmid": "PMID-link", + "visualeditor-magiclinknodeinspector-title-rfc": "RTC-link", + "visualeditor-media-title-audio": "Audiofajl", + "visualeditor-media-title-image": "Obrazok", + "visualeditor-media-title-video": "Videofajl", + "visualeditor-meta-tool": "Opcije", + "visualeditor-mweditmode-tooltip": "Prěključiti redaktor", + "visualeditor-mweditmodesource-progress": "Prěključiti na pravjenje izvornogo koda", + "visualeditor-mweditmodesource-tool-current": "Pravjenje izvornogo koda", + "visualeditor-mweditmodesource-tool-unavailable": "Pravjenje izvornogo koda tu ne jest dostupna", + "visualeditor-mweditmodeve-popup-body": "Vy vsegda možete povrnuti se do vizualnogo pravjenja, naklikajuči tutu ikonku.", + "visualeditor-mweditmodeve-popup-title": "Vy jeste prěključili se na pravjenje izvornogo koda", + "visualeditor-mweditmodeve-progress": "Prěhod na vizualno pravjenje...", + "visualeditor-mweditmodeve-showagain": "Veče ne pokazyvati tuto soobčenje", + "visualeditor-mweditmodeve-tool-current": "Vizualno pravjenje", + "visualeditor-mweditmodeve-tool-unavailable": "Vizualno pravjenje tu ne jest dostupno", + "visualeditor-mweditmodewt-popup-body": "Vy vsegda možete povrnuti se do pravjenja izvornogo koda, naklikajuči tutu ikonku.", + "visualeditor-mweditmodewt-popup-title": "Vy jeste prěključili se na vizualno pravjenje", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|obrazok|obrazky|obrazkov}}", + "visualeditor-mwgallerydialog-caption-field-label": "Nadpis galerije", + "visualeditor-mwgallerydialog-card-images": "Obrazky", + "visualeditor-mwgallerydialog-card-options": "Opcije", + "visualeditor-mwgallerydialog-classes-field-label": "CSS-klasy", + "visualeditor-mwgallerydialog-empty-gallery-message": "Galerija jest prazdna.", + "visualeditor-mwgallerydialog-heights-field-label": "Vyšina obrazka", + "visualeditor-mwgallerydialog-heights-input-placeholder": "Standardna vyšina: $1 px", + "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Tradicijna bez ramok", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Kompaktno", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Kompaktno s nadpisami pri navedenju", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Kompaktno s nakladenymi nadpisami", + "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Slajd-šou", + "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Tradicijny", + "visualeditor-mwgallerydialog-mode-field-label": "Režim izobraženja", + "visualeditor-mwgallerydialog-perrow-field-label": "Obrazkov na redok", + "visualeditor-mwgallerydialog-remove-button-label": "Udaliti obrazok", + "visualeditor-mwgallerydialog-search-button-label": "Dodati novy obrazok", + "visualeditor-mwgallerydialog-show-filename-field-label": "Pokazati nazvy fajlov", + "visualeditor-mwgallerydialog-styles-field-label": "CSS-stily", + "visualeditor-mwgallerydialog-styles-input-placeholder": "CSS-pravila, razděljene točkoju s zapetoju", + "visualeditor-mwgallerydialog-title": "Galerija", + "visualeditor-mwgallerydialog-widths-field-label": "Širina obrazka", + "visualeditor-mwgallerydialog-widths-input-placeholder": "Standarna širina: $1 px", + "visualeditor-mwpredialog-convert": "Dozvoliti formatovanje teksta", + "visualeditor-mwpredialog-title": "Prědformatovany prosty tekst", + "visualeditor-mwsignature-tool": "Vaš podpis", + "visualeditor-preference-visualeditor": "Vključiti vizualny redaktor", "visualeditor-preference-newwikitexteditor-help": "Poněkogda nazyvaje se «Redaktor vikiteksta 2017».", + "visualeditor-rebase-client-export": "Eksportovati", + "visualeditor-rebase-client-export-start": "Eksportovati…", + "visualeditor-rebase-client-import": "Importovati", + "visualeditor-rebase-client-import-name": "Nazva stranice", + "visualeditor-rebase-client-title-help": "Prěd zapisanjem vy smožete prěgleděti izměny.", + "visualeditor-recreate": "Stranica, ktoru vy jeste začeli praviti, v medžučasu byla odstranjena. Natisknite «$1», da byste ju ponovno stvorili.", + "visualeditor-redirect-description": "Prěnapravjenje na $1", + "visualeditor-savedialog-identify-anon": "Vy uže ne jeste prijavjeni. Ako vy prodolžite, vaš IP-adres bude zapisany v historiji versij tutoj stranice.", + "visualeditor-savedialog-identify-temp": "Vy tutčas upotrěbjajete začasno koristničsko ime $1. Ako vy prodolžite, vaša pravka bude pripisana tomu imeni.", + "visualeditor-savedialog-identify-user": "Vy tutčas jeste prijavjeni kako [[User:$1|$1]]. Ako vy prodolžite, vaša pravka bude pripisana tomu koristničskomu kontu.", + "visualeditor-savedialog-keyboard-shortcut-submit": "Vy možete natisknuti $1, da byste zapisali svoju pravku.", + "visualeditor-savedialog-label-publish-short": "Publikovati", + "visualeditor-savedialog-label-publish-short-start": "Publikovati…", + "visualeditor-savedialog-label-resolve-conflict": "Razrěšiti konflikt", + "visualeditor-savedialog-label-resume-editing": "Prodolžiti pravjenje", + "visualeditor-savedialog-label-review": "Prěgleděti vaše izměny", + "visualeditor-savedialog-label-review-good": "Vrnuti se k formularu za zapisanje", + "visualeditor-savedialog-label-save-short": "Zapisati", + "visualeditor-savedialog-label-save-short-start": "Zapisati…", + "visualeditor-savedialog-review-nosummary": "Bez opisa pravky", + "visualeditor-savedialog-review-visual": "Vizualno", + "visualeditor-savedialog-review-wikitext": "Vikitekst", + "visualeditor-savedialog-title-conflict": "Konflikt", + "visualeditor-savedialog-title-preview": "Pokazati prědgled vaših izměn", + "visualeditor-savedialog-title-review": "Prověriti vaše izměny", + "visualeditor-savedialog-title-save": "Zapisati vaše izměny", + "visualeditor-section-body-placeholder": "Novy razděl", "visualeditor-section-title-placeholder": "Prědmet", + "visualeditor-loaderror-revidconflict": "Identifikatory versij, vračene serverom, ne sovpadajut (dokument: $1, metadany: $2).", + "visualeditor-loaderror-wrongmode": "Proba včitanja redaktora v nepravilnom režimu (tip danyh: «$1», režim redaktora: «$2»).", "visualeditor-settings-tool": "Nastavjenja stranice", "visualeditor-special-characters-group-other": "Često koristajeme", "visualeditor-templatesused-tool": "Upotrěbjene šablony", "visualeditor-title-error": "Nepravilna nazva.", + "visualeditor-toload": "Redaktor skoro včitaje se. Ako poslě několikyh sekund ješče uvidite tuto soobčenje, [$1 osvěžite stranicu].", "visualeditor-version-label": "Versija", "visualeditor-wikitext-progress": "Prěobračanje vikiteksta" } diff --git a/i18n/ve-mw/it.json b/i18n/ve-mw/it.json index f458ec5f98..517ee843dc 100644 --- a/i18n/ve-mw/it.json +++ b/i18n/ve-mw/it.json @@ -46,11 +46,13 @@ "Una giornata uggiosa '94", "Valepert", "Vivbod", - "Wikitoni" + "Wikitoni", + "ZandDev" ] }, "collabpad-import-subtitle": "Importato da $1", "tooltip-ca-ve-edit": "Modifica questa pagina", + "tooltip-ca-ve-create": "Crea questa pagina", "tooltip-ca-editsource": "Modifica il wikitesto di questa pagina", "tooltip-ca-createsource": "Crea il codice sorgente di questa pagina", "visualeditor-advancedsettings-tool": "Impostazioni avanzate", @@ -58,6 +60,7 @@ "visualeditor-autosave-modified-prompt-message": "Questa pagina è stata modificata dopo che l'hai caricata. {{GENDER:|Vuoi}} riprendere la modifica della vecchia versione o iniziare una nuova modifica dell'ultima versione della pagina?", "visualeditor-autosave-modified-prompt-reject": "Inizia una nuova modifica", "visualeditor-autosave-modified-prompt-title": "Riprendere la {{GENDER:|tua}} modifica?", + "visualeditor-autosave-not-recovered-text": "Le tue modifiche non salvate non possono essere recuperate.", "visualeditor-autosave-recovered-text": "Le tue modifiche non salvate sono state automaticamente ripristinate.", "visualeditor-autosave-recovered-title": "Modifiche ripristinate", "visualeditor-backbutton-tooltip": "Indietro", @@ -102,7 +105,7 @@ "visualeditor-dialog-media-title": "Impostazioni file multimediali", "visualeditor-dialog-media-type-border": "Bordo", "visualeditor-dialog-media-type-frame": "Frame", - "visualeditor-dialog-media-type-frameless": "Senza frame", + "visualeditor-dialog-media-type-frameless": "Senza cornice", "visualeditor-dialog-media-type-none": "Base", "visualeditor-dialog-media-type-section": "Tipo immagine", "visualeditor-dialog-media-type-section-help": "Puoi selezionare in che modo viene visualizzato l'elemento multimediale. Dovrebbe essere in formato miniatura per essere coerente con la maggioranza delle altre pagine.", @@ -176,6 +179,7 @@ "visualeditor-dialog-transclusion-template-title-nonexistent": "Questo template non esiste.", "visualeditor-dialog-transclusion-template-widget-aria": "Premi Spazio per selezionare il template.", "visualeditor-dialog-transclusion-add-wikitext": "Aggiungi wikitesto", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "Non è possibile aggiungere \"$1\" perché il parametro è stato contrassegnato come [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated obsoleto]", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Impossibile aggiungere il parametro \"$2\" due volte.", "visualeditor-dialog-transclusion-add-param-help": "Se ne sei a conoscenza, puoi inserire nomi di [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters parametri non documentati]. Nota che solamente i parametri previsti dal template avranno effetto. Puoi trovare informazioni sui parametri previsti nella [[$1|pagina del template]].", "visualeditor-dialog-transclusion-add-param-placeholder": "Nome del parametro", @@ -250,6 +254,7 @@ "visualeditor-formatdropdown-format-mw-heading6": "Sottotitolo 4", "visualeditor-generating-wikitext-progress": "Genera wikitesto", "visualeditor-languages-tool": "Lingue", + "visualeditor-linkcontext-uneditable": "Spiacenti, attualmente questo collegamento può essere modificato solo in modalità sorgente.", "visualeditor-linkinspector-button-link-external": "Sito esterno", "visualeditor-linkinspector-button-link-internal": "Cerca nelle pagine interne", "visualeditor-linkinspector-convert-link-isbn": "Converti in collegamento ISBN", @@ -343,7 +348,7 @@ "visualeditor-special-characters-group-other": "Usato spesso", "visualeditor-templatesused-tool": "Template utilizzati", "visualeditor-title-error": "Titolo non valido.", - "visualeditor-toload": "Verrà caricato l'editor. Se vedi ancora questo messaggio dopo alcuni secondi, [$1 ricarica la pagina].", + "visualeditor-toload": "Verrà caricato l'editor. Se vedi ancora questo messaggio dopo alcuni secondi, [$1 aggiorna la pagina].", "visualeditor-tooltip-non-breaking-space": "Spazio unificatore", "visualeditor-version-label": "Versione", "visualeditor-wikitext-progress": "Conversione wikitesto", diff --git a/i18n/ve-mw/ja.json b/i18n/ve-mw/ja.json index 1832ffc5ee..0fbe5ce923 100644 --- a/i18n/ve-mw/ja.json +++ b/i18n/ve-mw/ja.json @@ -32,6 +32,7 @@ "Rxy", "Ryoya3", "Shirayuki", + "Shulmj", "SkyDaisy9", "Sou0012", "Suchichi02", @@ -47,16 +48,21 @@ "Yusuke1109", "しぃ", "ネイ", - "春春眠眠" + "春春眠眠", + "Tensama0415" ] }, "collabpad-doctitle": "CollabPad: $1", "collabpad-import-subtitle": "$1 からインポートしました", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "このページを編集", + "tooltip-ca-ve-edit-local": "ローカルの記述ページを編集します", "tooltip-ca-ve-create": "このページを作成", + "tooltip-ca-ve-create-local": "ローカルの記述ページを作成します", "tooltip-ca-editsource": "このページのソースコードを編集する", + "tooltip-ca-editsource-local": "ローカルの記述ページのソースコードを編集します", "tooltip-ca-createsource": "このページのソースコードを作成する", + "tooltip-ca-createsource-local": "ローカルの記述ページのソースコードを作成します", "visualeditor-advancedsettings-tool": "高度な設定", "visualeditor-annotations-default-description": "この部分は注釈範囲の一部です。", "visualeditor-annotations-default-end": "注釈付き範囲の終了", @@ -78,6 +84,7 @@ "visualeditor-ca-editsource-section": "ソースを編集", "visualeditor-ca-editsource-section-hint": "節のソースコードを編集する: $1", "visualeditor-categories-tool": "カテゴリ", + "visualeditor-changedesc-mwcategory-sortkey-changed": "ソートキーを $1 から $2 へ変更しました", "visualeditor-changedesc-mwlanguagevariant": "言語変種のマークアップを変更しました", "visualeditor-changedesc-mwredirect": "転送先を $1 から $2 へ変更しました", "visualeditor-changedesc-mwtransclusion": "テンプレートのパラメーターを変更しました", @@ -85,7 +92,7 @@ "visualeditor-descriptionpagelink": "Project:ビジュアルエディター", "visualeditor-dialog-media-alttext-checkbox": "キャプションを代替テキストとして使用する", "visualeditor-dialog-media-alttext-section": "代替テキスト", - "visualeditor-dialog-media-alttext-section-help": "アイテムが見えない人のためにテキストによる説明を記述することができます。説明文はこのメディアによって与えられる目的と情報を理解するために十分なものでなければいけません。目が見えない人や、スクリーンリーダー・ソフトウェア、テキストブラウザなどを利用する人たちにとって、必要不可欠なものです。", + "visualeditor-dialog-media-alttext-section-help": "この機能を使うと、アイテムが見えない人のためにテキストによる説明を書けます。説明文は、そのメディアアイテムが伝える目的や情報を理解できるような内容でなければなりません。これは、視覚障害のある利用者や、スクリーンリーダーやテキスト専用ブラウザーを利用している人々にとって極めて重要です。", "visualeditor-dialog-media-change-image": "画像を変更", "visualeditor-dialog-media-choose-image": "この画像を使用", "visualeditor-dialog-media-content-description-link": "(説明ページ)", @@ -96,11 +103,9 @@ "visualeditor-dialog-media-info-artist": "アップロード: $1", "visualeditor-dialog-media-info-audiofile": "音声ファイル", "visualeditor-dialog-media-info-created": "作成: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "作者: $1", "visualeditor-dialog-media-info-moreinfo": "詳細情報", "visualeditor-dialog-media-info-readmore": "さらに読む", - "visualeditor-dialog-media-info-separator": "。", "visualeditor-dialog-media-info-uploaded": "アップロード: $1", "visualeditor-dialog-media-page-advanced": "詳細", "visualeditor-dialog-media-page-general": "全般", @@ -147,12 +152,12 @@ "visualeditor-dialog-meta-languages-section": "他言語", "visualeditor-dialog-meta-settings-displaytitle": "表示されるページ名", "visualeditor-dialog-meta-settings-displaytitle-help": "タイトルとして代替表示させたいラベル名を設定することにより、このページのタイトルの表示名が上書きされます。", - "visualeditor-dialog-meta-settings-hiddencat-help": "このカテゴリを、ページ内においてカテゴリ表示を行わないようにすることができます。これは、ほとんどの読者にとっては関心がありませんが、例えば'このページには図解が必要'等、編集者にとって有益なカテゴリとして使用できます。", + "visualeditor-dialog-meta-settings-hiddencat-help": "このカテゴリを、カテゴリに属するページ内のカテゴリ一覧に表示しないようにできます。これは「図解が必要なページ」のように、編集者には有用でも大半の読者には関心がないカテゴリに便利です。", "visualeditor-dialog-meta-settings-hiddencat-label": "隠しカテゴリ", "visualeditor-dialog-meta-settings-index-default": "既定", "visualeditor-dialog-meta-settings-index-disable": "いいえ", "visualeditor-dialog-meta-settings-index-force": "はい", - "visualeditor-dialog-meta-settings-index-help": "強制的にこのページを検索エンジンの検索対象とし、それらの検索結果に表示されるようにすることができます。同様に、検索エンジンの検索対象から外すこともできます。この設定はサイト内検索に影響しません。", + "visualeditor-dialog-meta-settings-index-help": "検索エンジンに対して、このページを検索結果に表示するよう強制したり、逆に表示しないように強制したりできます。このオプションはサイト内検索には影響しません。", "visualeditor-dialog-meta-settings-index-label": "検索エンジンがこのページを検索対象にすることを許可する", "visualeditor-dialog-meta-settings-label": "ページの設定", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "既定", @@ -168,7 +173,7 @@ "visualeditor-dialog-meta-settings-nogallery-label": "ギャラリーを無効にする", "visualeditor-dialog-meta-settings-notitleconvert-help": "その他のスクリプトによる、このページのタイトルの自動的な言語変換を防ぐことができます。", "visualeditor-dialog-meta-settings-notitleconvert-label": "言語の変種間でタイトルの言語変換をしない", - "visualeditor-dialog-meta-settings-redirect-help": "このページを、リダイレクト(転送)のページとすることができます。これは、読者を自動的に、ウィキ内の別のページに誘導します。この方法は、綴り間違いや別称・別コンセプトの際に有用です。これを設定した場合、読者にはリダイレクト・ページの内容は表示されません。", + "visualeditor-dialog-meta-settings-redirect-help": "このページをリダイレクト (転送) ページにできます。これは、読者をこのウィキ内の別のページへ自動的に遷移させるものです。誤った綴りや別名、類似の概念に対して便利です。設定すると、読者にはこのページの内容は表示されません。", "visualeditor-dialog-meta-settings-redirect-label": "このページを以下のページにリダイレクト", "visualeditor-dialog-meta-settings-redirect-placeholder": "リダイレクト先のページ", "visualeditor-dialog-meta-settings-redirect-statichelp": "これが必要とされるのは非常に稀なケースですが、リダイレクト先のページが移動された際に、ここのリダイレクトが自動的に更新されることを防ぐことができます。", @@ -193,10 +198,10 @@ "visualeditor-dialog-transclusion-template-widget-aria-selected": "Ctrl+Delを押すと、テンプレートとそのパラメーターおよびその値が削除されます。Ctrl+Shift+矢印を押すと、テンプレートが上下に移動します。", "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Ctrl+Delを押すと、テンプレートとそのパラメータおよびその値が削除されます。", "visualeditor-dialog-transclusion-add-wikitext": "wikitextの追加", - "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\" が \"$2\" としてすでに追加されています。サイドバーのオプションを確認してください。これは、[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases エイリアス]または[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label ラベル]のいずれかを使用していることが原因です。", + "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\" が \"$2\" として既に追加されています。サイドバーのオプションを確認してください。これは、[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases エイリアス]または[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label ラベル]のいずれかを使用していることが原因です。", "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" は、パラメータが[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated 非推奨]とされているため、追加できません。", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "同名のパラメーター$2を2つ追加できません。", - "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "パラメータ$2はすでに使用可能です。サイドバーのオプションをご確認ください。", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "パラメーター $2 は既に使用可能です。サイドバーのオプションをご確認ください。", "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1は禁則文字です。パラメータを追加するには、これを削除してください。", "visualeditor-dialog-transclusion-add-param-help": "既知の場合は、[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters 文書化されていないパラメータ名]を入力します。テンプレートが知っているパラメータだけが効果を発揮することに注意してください。既存のパラメータに関する情報は、[[$1|テンプレートページ]]に記載されています。", "visualeditor-dialog-transclusion-add-param-placeholder": "パラメータ名", @@ -219,7 +224,7 @@ "visualeditor-dialog-transclusion-filter-show-all": "すべて表示", "visualeditor-dialog-transclusion-filter-title": "$1でパラメータ検索", "visualeditor-dialog-transclusion-help-title": "テンプレート編集サポート", - "visualeditor-dialog-transclusion-help-message": "テンプレートは、コンテンツのフォーマットを提供するものです。このエディタでは、左にテンプレートが提供するオプションを示し、右にそれらのオプションに値を追加することができます。", + "visualeditor-dialog-transclusion-help-message": "テンプレートはコンテンツの書式設定を提供します。このエディターでは、テンプレートが提供するオプションが左側に表示され、それぞれのオプションに対して右側で値を追加できます。", "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates テンプレートの編集に関するヘルプ]", "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions キーボード ショートカット]", "visualeditor-dialog-transclusion-deprecated-parameter": "非推奨のフィールド", @@ -231,7 +236,7 @@ "visualeditor-dialog-transclusion-no-template-parameters": "このテンプレートにはパラメータの解説文書がなく、設計意図として何も参照せずに使えるようにした可能性があります。", "visualeditor-dialog-transclusion-param-default": "既定値: $1", "visualeditor-dialog-transclusion-param-example-long": "例:$1", - "visualeditor-dialog-transclusion-param-selection-aria-description": "パラメータを追加または削除するには、スペースを押します。パラメータの追加は Enter キーを押して直後にその値を編集します。すでに選択してあるパラメータの値を編集するには、Enter キーを押します。", + "visualeditor-dialog-transclusion-param-selection-aria-description": "パラメーターを追加/除去するには、スペースを押します。パラメーターの追加は Enter キーを押して直後にその値を編集します。既に選択してあるパラメーターの値を編集するには、Enter キーを押します。", "visualeditor-dialog-transclusion-param-selection-aria-label": "$1のパラメータ", "visualeditor-dialog-transclusion-param-undocumented": "(文書化されていないパラメーター)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "テンプレートを検索", @@ -357,7 +362,7 @@ "visualeditor-rebase-client-title-help": "保存する前に変更を確認してください。", "visualeditor-recreate": "このページはあなたが編集を始めた後に削除されました。もう一度作成するには「$1」を押してください。", "visualeditor-redirect-description": "$1 へのリダイレクト", - "visualeditor-savedialog-identify-anon": "代わりに匿名利用者としてこのページに保存しますか? このページの編集履歴にあなたの IP アドレスが記録されます。", + "visualeditor-savedialog-identify-anon": "あなたはログインしていません。続けると、このページの編集履歴にあなたの IP アドレスが記録されます。", "visualeditor-savedialog-identify-user": "あなたは現在[[User:$1|$1]]としてログインしています。この編集を保存すると、編集内容はこのアカウントと関連付けられます。", "visualeditor-savedialog-keyboard-shortcut-submit": "$1 を押すと編集を保存できます", "visualeditor-savedialog-label-publish-short": "投稿", @@ -383,7 +388,7 @@ "visualeditor-special-characters-group-other": "よく使われるもの", "visualeditor-templatesused-tool": "テンプレート一覧", "visualeditor-title-error": "無効なページ名です。", - "visualeditor-toload": "エディターを読み込んでいます。このメッセージが引き続き表示される場合、[$1 ページを再読み込み]してください。", + "visualeditor-toload": "エディターを読み込んでいます。このメッセージが引き続き表示される場合、[$1 ページを更新]してください。", "visualeditor-tooltip-non-breaking-space": "改行しない半角スペース", "visualeditor-version-label": "バージョン", "visualeditor-wikitext-progress": "ウィキテキストを変換中", diff --git a/i18n/ve-mw/jax.json b/i18n/ve-mw/jax.json new file mode 100644 index 0000000000..835c7ab432 --- /dev/null +++ b/i18n/ve-mw/jax.json @@ -0,0 +1,12 @@ +{ + "@metadata": { + "authors": [ + "Pitchrigi", + "Muhamad Izzul Fiqih" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Tambah sumber deskripsi lokal", + "visualeditor-ca-createsource": "Bikin (teks wiki)", + "visualeditor-ca-editsource": "Sunting sumber", + "visualeditor-ca-editsource-section": "sunting sumber" +} diff --git a/i18n/ve-mw/jv-java.json b/i18n/ve-mw/jv-java.json new file mode 100644 index 0000000000..e65cd75eba --- /dev/null +++ b/i18n/ve-mw/jv-java.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Bennylin" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "ꦮꦸꦮꦸꦃꦲꦶ​ꦱꦸꦩ꧀ꦧꦼꦂ​ꦮꦼꦝꦂꦫꦤ꧀ꦲꦼꦁꦒꦺꦴꦤ꧀ꦤꦤ꧀", + "visualeditor-ca-createsource": "ꦒꦮꦺ​ꦱꦸꦩ꧀ꦧꦼꦂ", + "visualeditor-ca-editsource": "ꦧꦼꦱꦸꦠ꧀ꦱꦸꦩ꧀ꦧꦼꦂ", + "visualeditor-ca-editsource-section": "ꦧꦼꦱꦸꦠ꧀ꦱꦸꦩ꧀ꦧꦼꦂ" +} diff --git a/i18n/ve-mw/ka.json b/i18n/ve-mw/ka.json index 10892d12cb..7d55c25397 100644 --- a/i18n/ve-mw/ka.json +++ b/i18n/ve-mw/ka.json @@ -52,7 +52,6 @@ "visualeditor-dialog-media-info-meta-artist": "ავტორი: $1", "visualeditor-dialog-media-info-moreinfo": "მეტი ინფორმაცია", "visualeditor-dialog-media-info-readmore": "წაიკითხე მეტი", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "ატვირთულია: $1", "visualeditor-dialog-media-page-advanced": "გაფართოებული", "visualeditor-dialog-media-page-general": "ძირითადი", diff --git a/i18n/ve-mw/kaj.json b/i18n/ve-mw/kaj.json index a9bf639aed..19b9ab16b6 100644 --- a/i18n/ve-mw/kaj.json +++ b/i18n/ve-mw/kaj.json @@ -1,12 +1,13 @@ { "@metadata": { "authors": [ + "Kambai Akau", "Kuzayet" ] }, "visualeditor-ca-createlocaldescriptionsource": "Mbrang ka̱tyyei du̱tyin ka̱ryyi", "visualeditor-ca-createsource": "Yrang du̱tyin", "visualeditor-ca-editsource": "Shang du̱tyin ti", - "visualeditor-ca-editsource-section": "Shang du̱tyin ti", + "visualeditor-ca-editsource-section": "shang du̱tyin ti", "visualeditor-descriptionpagelink": "Project:a̱ssu̱ a̱shang" } diff --git a/i18n/ve-mw/kcg.json b/i18n/ve-mw/kcg.json index 9b4a46c750..5343bac9cf 100644 --- a/i18n/ve-mw/kcg.json +++ b/i18n/ve-mw/kcg.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Kambai Akau" ] }, diff --git a/i18n/ve-mw/kea.json b/i18n/ve-mw/kea.json index 0547a89307..1c3db7bebb 100644 --- a/i18n/ve-mw/kea.json +++ b/i18n/ve-mw/kea.json @@ -3,11 +3,362 @@ "authors": [ "Quintino Lopes Castro Tavares", "Waldir", - "Waldyrious" + "Waldyrious", + "GrogeXaKaba", + "Letra.berdi" ] }, - "tooltip-ca-ve-edit": "Muda es pájina li", - "visualeditor-ca-editsource": "Muda kódigu", - "visualeditor-ca-editsource-section": "muda kódigu", - "visualeditor-descriptionpagelink": "Project:Editor Vizual" + "collabpad-doctitle": "CollabPad: $1", + "collabpad-import-subtitle": "Nportadu di $1", + "collabpad": "CollabPad", + "tooltip-ca-ve-edit": "Idita es pájina li", + "tooltip-ca-ve-edit-local": "Idita pájina di diskrison lukal", + "tooltip-ca-ve-create": "Kiria es pájina", + "tooltip-ca-ve-create-local": "Kiria pájina di diskrison lukal", + "tooltip-ca-editsource": "Idita kódi-fonti di es pájina", + "tooltip-ca-editsource-local": "Idita kódi-fonti di pájina di diskrison lukal", + "tooltip-ca-createsource": "Kiria kódi-fonti di es pájina", + "tooltip-ca-createsource-local": "Kiria kódi-fonti di pájina di diskrison lukal", + "visualeditor-advancedsettings-tool": "Kunfigurasons vansadu", + "visualeditor-annotations-default-description": "Es ária di pájina ta fasi párti di un ntervalu di anotason.", + "visualeditor-annotations-default-end": "Fin di ntervalu anotadu", + "visualeditor-annotations-default-start": "Kumésu di ntervalu anotadu", + "visualeditor-annotations-extended-documentation": "Es ntervalu di anotason foi omentadu pamodi kuntiúdu ki el ta nkluíba ka staba nterkaladu kuretamenti. Ta rakumendadu birifika si kuntiúdu anotadu sta nterkaladu kuretamenti antis di idita-l; ukontrári, un ntervalu más grandi ki speradu pode kaba anotadu.", + "visualeditor-autosave-modified-prompt-accept": "Kuntinua idison", + "visualeditor-autosave-modified-prompt-message": "Es pájina foi iditadu désdi últimu bes ki bu karaga-l. Bu kre bolta pa idison di si verson bédju, o bu kre kunsa un idison nobu di verson más rasenti?", + "visualeditor-autosave-modified-prompt-reject": "Kunsa un idison nobu", + "visualeditor-autosave-modified-prompt-title": "Kuntinua {{GENDER:|bu}} idison?", + "visualeditor-autosave-not-recovered-text": "Ka foi pusívi rakupera kes idison ki bu ka garda.", + "visualeditor-autosave-not-recovered-title": "Rakuperason di alterasons fadja", + "visualeditor-autosave-recovered-text": "Kes idison ki bu ka garda foi rakuperadu otumatikamenti.", + "visualeditor-autosave-recovered-title": "Alterasons rakuperadu", + "visualeditor-backbutton-tooltip": "Bolta tras", + "visualeditor-ca-createlocaldescriptionsource": "Kirsenta fonti di diskrison lukal", + "visualeditor-ca-createsource": "Kiria kódi-fonti", + "visualeditor-ca-editlocaldescriptionsource": "Idita fonti di diskrison lukal", + "visualeditor-ca-editsource": "Idita kódi-fonti", + "visualeditor-ca-editsource-section": "idita kódi", + "visualeditor-ca-editsource-section-hint": "Idita kódi-fonti di sekson: $1", + "visualeditor-categories-tool": "Katigurias", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Txabi di ordenason alteradu di $1 pa $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Txabi di ordenason difinidu kumó $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Txabi di ordenason $1 ramovedu", + "visualeditor-changedesc-mwlanguagevariant": "Markason di barianti di linga alteradu", + "visualeditor-changedesc-mwredirect": "Distinu di radiresonamentu alteradu di $1 pa $2", + "visualeditor-changedesc-mwtransclusion": "Parámitrus di mudelu pridifinidu alteradu", + "visualeditor-desc": "Iditor vizual uzadu na MídiaUiki", + "visualeditor-descriptionpagelink": "Project:Iditor Vizual", + "visualeditor-dialog-extension-abandonedit": "Bu tene sertésa ma bu kre fitxa es djanéla sin publika alterason ki bu fasi?", + "visualeditor-dialog-media-alttext-checkbox": "Uza lijénda móda testu alternativu", + "visualeditor-dialog-media-alttext-section": "Testu alternativu", + "visualeditor-dialog-media-alttext-section-help": "Bu podi uza es kaxa di testu pa skrebi un diskrison testual pa tudu kenha ki ka ta kunsigi udja es ilimentu. Diskrison debi ser sufisienti pa es ntendi prupózitu i nfurmason prizenti na es ilimentu multimídia. Kel-li é mutu npurtanti pa uzuáris ségu i pa otus argen ki ta uza pugrama nfurmátiku di letura di ekran o nabegadoris so di testu.", + "visualeditor-dialog-media-change-image": "Altera imáji", + "visualeditor-dialog-media-choose-image": "Uza es imáji", + "visualeditor-dialog-media-content-description-link": "(pájina di diskrison)", + "visualeditor-dialog-media-content-filename": "Nómi di fixeru", + "visualeditor-dialog-media-content-section": "Lijénda", + "visualeditor-dialog-media-content-section-help": "Bu podi uza es faraménta pa izibi un splikason ki ta parsi pértu di ilimentu pa tudu ledor. Txeu bes, kel-li é uzadu pa splika kal ki é ralivánsa di ilimentu pa kuntestu na kal el é izibidu. Itikéta debi ser kurtu i nfurmativu.", + "visualeditor-dialog-media-goback": "Bolta", + "visualeditor-dialog-media-info-artist": "Nviadu pa $1", + "visualeditor-dialog-media-info-audiofile": "Fixeru di áudiu", + "visualeditor-dialog-media-info-created": "Kiriadu na: $1", + "visualeditor-dialog-media-info-meta-artist": "Otor: $1", + "visualeditor-dialog-media-info-moreinfo": "Más nfurmason", + "visualeditor-dialog-media-info-readmore": "Le más", + "visualeditor-dialog-media-info-uploaded": "Nviadu na: $1", + "visualeditor-dialog-media-page-advanced": "Vansadu", + "visualeditor-dialog-media-page-general": "Jeral", + "visualeditor-dialog-media-position-checkbox": "Dispui testu na rudói di es ilimentu", + "visualeditor-dialog-media-position-checkbox-help": "Bu podi pui es ilimentu multimídia na linha, djuntu ku testu di pájina, na nbes di txa-l ta flutua. Bu podi fasi kel-li so okazionalmenti, pamodi dismarkason di es kaxa ta skangadja flúksu di testu.", + "visualeditor-dialog-media-position-section": "Puzison", + "visualeditor-dialog-media-position-section-help": "Bu podi difini napundi es ilimentu multimídia ta parsi na pájina. Albes, es kontrol é uzadu pa kebra un sakuénsa kunpridu di imájis na un ladu di pájina.", + "visualeditor-dialog-media-save": "Garda", + "visualeditor-dialog-media-search-tab-search": "Piskiza", + "visualeditor-dialog-media-search-tab-upload": "Nvia", + "visualeditor-dialog-media-size-section": "Tamóin di imáji", + "visualeditor-dialog-media-size-section-help": "Bu podi difini kal ta ser tamóin di ilimentu multimídia ki ta parsi na pájina. In jeral, e debi ten tamóin nurmal, pabia skódja di un tamóin kustumizadu podi ntirfiri ku dispuzison di pájina, u-ki ta txa-l nkunsistenti pa ledoris.", + "visualeditor-dialog-media-title": "Kunfigurasons multimídia", + "visualeditor-dialog-media-type-border": "Bórda", + "visualeditor-dialog-media-type-frame": "Muldura", + "visualeditor-dialog-media-type-frameless": "Sin muldura", + "visualeditor-dialog-media-type-none": "Báziku", + "visualeditor-dialog-media-type-section": "Tipu di imáji", + "visualeditor-dialog-media-type-section-help": "Bu podi difini módi ki ilimentu multimídia ta parsi na pájina. In jeral, e debi sta na furmatu di miniatura pa-l ser kunsistenti ku otus pájina na kuazi tudu kazu.", + "visualeditor-dialog-media-type-thumb": "Miniatura", + "visualeditor-dialog-media-upload": "Nvia", + "visualeditor-dialog-meta-advancedsettings-label": "Kunfigurasons vansadu", + "visualeditor-dialog-meta-advancedsettings-section": "Kunfigurasons vansadu", + "visualeditor-dialog-meta-categories-addcategory-label": "Kirsenta un katiguria pa es pájina", + "visualeditor-dialog-meta-categories-category": "Katiguria", + "visualeditor-dialog-meta-categories-data-label": "Katigurias", + "visualeditor-dialog-meta-categories-defaultsort-help": "Bu podi radifini módi ki es pájina é ordiadu óki el é izibidu déntu un katiguria, trabés di difinison di un índisi di klasifikason diferenti. Ku frikuénsa ta uzadu kel-li pa izibi pájinas sobri pisoas pa sis burnómi, mas antis ser numiadu ku sis purmeru nómi.", + "visualeditor-dialog-meta-categories-defaultsort-label": "Pa difinison padron, ordia es pájina móda", + "visualeditor-dialog-meta-categories-hidden": "Es katiguria sta kunfiguradu pa el ka parsi na pájinas na kas el é kirsentadu.", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Katigurias sukundidu", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Katigurias kuruspondenti", + "visualeditor-dialog-meta-categories-input-movecategorylabel": "Move es katiguria pa li", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Katiguria nobu", + "visualeditor-dialog-meta-categories-input-placeholder": "Kirsenta un katiguria", + "visualeditor-dialog-meta-categories-missing": "Es katiguria ka tene un pájina di diskrison.", + "visualeditor-dialog-meta-categories-options": "Opusons", + "visualeditor-dialog-meta-categories-section": "Katigurias", + "visualeditor-dialog-meta-categories-sortkey-label": "Ordia es pájina móda si el txumaba", + "visualeditor-dialog-meta-languages-code-label": "Kódi di linga", + "visualeditor-dialog-meta-languages-label": "Lingas", + "visualeditor-dialog-meta-languages-link-label": "Pájina nterligadu", + "visualeditor-dialog-meta-languages-name-label": "Linga", + "visualeditor-dialog-meta-languages-readonlynote": "Es é un lista di pájinas na otus linga ki sta nterligadu ku pájina atual. Na es mumentu, e so podi iditadu na módi kódi-fonti o na Uikidadus.", + "visualeditor-dialog-meta-languages-section": "Lingas", + "visualeditor-dialog-meta-settings-displaytitle": "Izibi titlu", + "visualeditor-dialog-meta-settings-displaytitle-help": "Bu podi subustitui módi ki titlu di es pájina é prizentadu trabés di izibison di un titlu alternativu na si lugar.", + "visualeditor-dialog-meta-settings-hiddencat-help": "Bu podi npidi es katiguria di parsi na lista di katigurias di pájinas ki sta nkluídu na el. Kel-li é adikuadu pa kes katiguria ki ta nteresa iditoris, mas ki ka é di nteresi di maiuria di ledoris, sima pájinas nas kas mestedu un ilustrason.", + "visualeditor-dialog-meta-settings-hiddencat-label": "Katiguria sukundidu", + "visualeditor-dialog-meta-settings-index-default": "Padron", + "visualeditor-dialog-meta-settings-index-disable": "Non", + "visualeditor-dialog-meta-settings-index-force": "Aian", + "visualeditor-dialog-meta-settings-index-help": "Bu podi forsa mutoris di buska pa es lista es pájina na bus trabói ralivanti o pa es ka lista-l. Es opuson ka ta afeta piskizas déntu es uiki.", + "visualeditor-dialog-meta-settings-index-label": "Txa es pájina ser ndeksadu pa mutoris di buska", + "visualeditor-dialog-meta-settings-label": "Kunfigurasons di pájina", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Padron", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Non", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Aian", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Bu podi forsa izibison di un siparador éstra, len di \"$1\", na es pájina, u-ki ta ba fasilita kirsentason di un sekson nobu. Ukontrári, si el dja ta parseba, bu podi fase-l disparsi.", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Izibi un siparador na es pájina pa kirsenta un sekson nobu", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "Bu podi npidi kuntiúdu di es pájina di ser otumatikamenti kunvertedu na otus barianti di linga.", + "visualeditor-dialog-meta-settings-nocontentconvert-label": "Sin kunverson di kuntiúdu entri bariantis di linga", + "visualeditor-dialog-meta-settings-noeditsection-help": "Bu podi npidi izibison di ligasons di idison na ladu di titlu di kada sekson — na kazus isesional na kas kel-li é prupiadu.", + "visualeditor-dialog-meta-settings-noeditsection-label": "Dizativa ligasons di idison na ladu di kada titlu na es pájina.", + "visualeditor-dialog-meta-settings-nogallery-help": "Bu podi npidi es katiguria di izibi na fórma di un galiria kes fixeru nkluídu na el, si kel-li ka é prupiadu na es kazu.", + "visualeditor-dialog-meta-settings-nogallery-label": "Dizativa galiria", + "visualeditor-dialog-meta-settings-notitleconvert-help": "Bu podi npidi titlu di es pájina di ser otumatikamenti kunvertedu na otus barianti di linga.", + "visualeditor-dialog-meta-settings-notitleconvert-label": "Sin kunverson di titlu entri bariantis di linga", + "visualeditor-dialog-meta-settings-redirect-help": "Bu podi fasi es pájina bira un radiresonamentu, u-ki ta liba ledoris otumatikamenti pa un otu pájina na es uiki. Kel-li é adikuadu pa kazu di érus ortugráfiku, i di nómis o kunsetus alternativu. Si bu fase-l, ledoris ka ta ba udja kuntiúdu di pájina.", + "visualeditor-dialog-meta-settings-redirect-label": "Radiresona es pájina pa", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Pájina di distinu pa radiresonamentu", + "visualeditor-dialog-meta-settings-redirect-statichelp": "Bu podi npidi es radiresonamentu di ser atualizadu otumatikamenti kandu pájina pa kal e ta radiresona é ranumiadu — na kazu mutu isesional na kal kel-li é nisisári.", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Npidi es radiresonamentu di ser atualizadu kandu pájina di distinu é ranumiadu.", + "visualeditor-dialog-meta-settings-section": "Kunfigurasons di pájina", + "visualeditor-dialog-meta-settings-toc-default": "Si mestedu", + "visualeditor-dialog-meta-settings-toc-disable": "Nunka", + "visualeditor-dialog-meta-settings-toc-force": "Tudóra", + "visualeditor-dialog-meta-settings-toc-help": "Bu podi forsa — o npidi — izibison di un índisi ki ta lista kada titlu di pájina na pájinas ku ménus di kuatu titlu. Pa difinison padron, es índisi ta ba parsi na tudu pájina ki tene kuatu o más titlu.", + "visualeditor-dialog-meta-settings-toc-label": "Izibi Índisi", + "visualeditor-dialog-meta-templatesused-noresults": "Niun mudelu pridifinidu ka foi utxadu.", + "visualeditor-dialog-meta-title": "Opusons", + "visualeditor-dialog-table-collapsed": "Rakodjedu na inísi", + "visualeditor-dialog-table-collapsible": "Rakodjívi", + "visualeditor-dialog-table-sortable": "Ordenávi", + "visualeditor-dialog-table-wikitable": "Stilu (wikitable)", + "visualeditor-dialog-template-title": "Mudelu pridifinidu", + "visualeditor-dialog-transclusion-action-save": "Garda", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Es mudelu pridifinidu ka ta izisti.", + "visualeditor-dialog-transclusion-template-title-modifier": "Dukumentason di mudelus pridifinidu i nómi di [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter parámitrus] (si es ta izisti) ka sta dispunívi kantu mudelus pridifinidu é iditadu ku uzu di sintasi nterkaladu kuretamenti o di mudifikadoris, suma [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subustituson].", + "visualeditor-dialog-transclusion-template-widget-aria": "Perta bara di spasu pa skodji es mudelu pridifinidu.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Perta Ctrl+Del pa ilimina es mudelu pridifinidu, sis parámitru i sis balor. Perta Ctrl+Shift+Sétas pa move-l pa riba o p baxu.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Perta Ctrl+Del pa ilimina es mudelu pridifinidu, sis parámitru i sis balor.", + "visualeditor-dialog-transclusion-add-wikitext": "Kirsenta testu uiki", + "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\" dja foi kirsentadu móda \"$2\". Di smóla, birifika opusons na bara lateral. Kel-li kuntisi pamodi uzu di [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases nómis alternativu] o [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label nómi di parámitru na nterfási].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "Parámitru \"$1\" ka podi kirsentadu pamodi e foi markadu kuma [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated obusuletu].", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Parámitru \"$2\" ka podi kirsentadu dos bes.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Parámitru \"$2\" dja sta dispunívi pa uzu. Di smóla, birifika opusons na bara lateral.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 é un karaktéri pruibidu. Di sumóla, ramuve-l antis di kirsenta es parámitru.", + "visualeditor-dialog-transclusion-add-param-help": "Si es é kunxedu, dijita nómi di [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters parámitrus sin dukumentu]. Ozerba ma so parámitrus ki kunxedu pa mudelu pridifinidu ta ten ifetu. Bu podi kontra nfurmason sobri parámitrus izistenti na [[$1|pájina di mudelu]].", + "visualeditor-dialog-transclusion-add-param-placeholder": "Nómi di parámitru", + "visualeditor-dialog-transclusion-add-param-save": "Kirsenta", + "visualeditor-dialog-transclusion-add-template": "Kirsenta mudelu pridifinidu", + "visualeditor-dialog-transclusion-add-template-button": "Kirsenta mudelu pridifinidu", + "visualeditor-dialog-transclusion-add-template-save": "Kirsenta", + "visualeditor-dialog-transclusion-add-undocumented-param": "Kirsenta un parámitru sin dukumentason", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Bolta pa piskiza? Bus alterason ta ser pirdidu, i kel-li ka podi disfasedu.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Fitxa iditor di mudelu pridifinidu? Bus alterason ta ser pirdidu, i kel-li ka podi disfasedu.", + "visualeditor-dialog-transclusion-collapse-options": "Sukundi opusons", + "visualeditor-dialog-transclusion-confirmation-discard": "Diskarta idisons", + "visualeditor-dialog-transclusion-confirmation-reject": "Kuntinua ku idison", + "visualeditor-dialog-transclusion-contextitem-description": "Jeradu di: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Sa-ta karagadu...", + "visualeditor-dialog-transclusion-expand-options": "Izibi opusons", + "visualeditor-dialog-transclusion-filter-hide-unused": "Sukundi kes non uzadu", + "visualeditor-dialog-transclusion-filter-no-match": "Nun kuruspondénsa ka foi atxadu", + "visualeditor-dialog-transclusion-filter-placeholder": "Utxa parámitru", + "visualeditor-dialog-transclusion-filter-show-all": "Izibi tudu", + "visualeditor-dialog-transclusion-filter-title": "Piskiza di parámitrus pa $1", + "visualeditor-dialog-transclusion-help-title": "Djuda ku idison di mudelu pridifinidu", + "visualeditor-dialog-transclusion-help-message": "Mudelus pridifinidu ta furnisi furmatason pa kuntiúdu. Es iditor ta izibi, na ladu skérda, opusons ki un mudelu ta feresi; na ladu zdreta, ta izisti baloris ki podi kirsentadu na kes opuson.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Djuda ku idison di mudelus pridifinidu]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Atadjus di tekladu]", + "visualeditor-dialog-transclusion-deprecated-parameter": "Kanpu obusuletu", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "Es kanpu sta obusuletu. $1", + "visualeditor-dialog-transclusion-loading": "Sa-ta karagadu...", + "visualeditor-dialog-transclusion-multipart-message": "Grinhasin bu sa-ta idita un mudelu pridifinidu i un o más ilimentu di [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content kuntiúdu susiadu na el] (testu uiki i/o mudelus pridifinidu kunplimentar).", + "visualeditor-dialog-transclusion-no-template-data-description": "Alguns [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters dadu] di es mudelu pridifinidu sta ozenti, i sis parámitru foi [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters jeradu otumatikamenti]. Kuma razultadu, ta ozerbadu ozénsa di diskrison di mudelu pridifinidu i di sis parámitru. Podi izisti nfurmason kunplimentar na [[$1|si pájina]].", + "visualeditor-dialog-transclusion-no-template-description": "Mudelu pridifinidu \"$1\" inda ka tene nun diskrison, mas podi izisti algun nfurmason na [[$2|si pájina]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Es mudelu pridifinidu ka tene parámitrus dukumentadu; e podi ser distinadu pa uzu sin nun parámitru.", + "visualeditor-dialog-transclusion-param-default": "Padron: $1", + "visualeditor-dialog-transclusion-param-example-long": "Izénplu: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Perta bara di spasu pa kirsenta o ramove parámitrus. Perta tékla Enter pa kirsenta un parámitru i pa idita, na kelóra, si balor. Óki un parámitru dja sta skodjedu, perta Enter pa idita si balor.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Parámitrus di $1", + "visualeditor-dialog-transclusion-param-undocumented": "(parámitru sin nun dukumentason)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Utxa mudelu pridifinidu", + "visualeditor-dialog-transclusion-required-parameter": "Kanpu obrigatóri", + "visualeditor-dialog-transclusion-required-parameter-description": "Es kanpu é obrigatóri.", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Bolta tras", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Kuntinua mésmu si", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Ozénsa di {{PLURAL:$1|kanpu}} obrigatóri", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "Bu tene sertésa ma bu kre kuntinua sin prenxi $1 {{PLURAL:$2|kanpu}}?", + "visualeditor-dialog-transclusion-see-template": "Mudelus pridifinidu é kiriadu pa uzuáris i albes es podi ten un diskrison nkunplétu. Podi izisti nfurmason kunplimentar na [[$2|pájina di es mudelu]].", + "visualeditor-dialog-transclusion-title-insert-template": "Nsiri un mudelu pridifinidu", + "visualeditor-dialog-transclusion-title-insert-known-template": "Nsiri: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Idita: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Kuntiúdu di mudelu pridifinidu", + "visualeditor-dialog-transclusion-template-search": "Djobi un mudelu pridifinidu", + "visualeditor-dialog-transclusion-template-search-help": "Bu podi utxa un mudelu pridifinidu ki bu kre nsiri si bu djobi pa un palabra-txabi. In jeral, kes mudelu pridifinidu ki tene diskrison ta funsona midjór ku iditor vizual.", + "visualeditor-dialog-transclusion-wikitext": "Testu uiki", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Perta bara di spasu pa skodji ilimentu di testu uiki. Perta tékla Enter pa skodji i pa idita testu uiki.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Perta Ctrl+Del pa paga ilimentu di testu uiki. Perta Ctrl+Shift+Sétas pa move ilimentu pa riba o pa baxu.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Perta Ctrl+Del pa paga ilimentu di testu uiki.", + "visualeditor-dialogbutton-media-tooltip": "Imájis i multimídia", + "visualeditor-dialogbutton-template-tooltip": "Mudelu pridifinidu", + "visualeditor-editconflict": "Bus alterason ka foi gardadu parabia un kunflitu di idison. Bu kre razolbi es kunflitu manualmenti?", + "visualeditor-editingtabdialog-body": "Uiki {{SITENAME}} gósi ta rakorda kal é bu iditor prifiridu. Bu podi alterna módi di idison óki bu idita, i bu tánbi podi altera kel iditor prifiridu.", + "visualeditor-editingtabdialog-ok": "Izibi kel iditor ki N uza na nha deraderu idison", + "visualeditor-editingtabdialog-title": "Siparadoris di idison", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|abizu}}", + "visualeditor-editnotices-tooltip": "Abizus di idison", + "visualeditor-editsummary": "Diskrebi kusé ki bu altera", + "visualeditor-editsummary-characters-remaining": "Nunbru di karaktéris restanti", + "visualeditor-educationpopup-dismiss": "Ntendedu", + "visualeditor-expandable-less": "Ménus", + "visualeditor-expandable-more": "Más", + "visualeditor-feedback-defaultmessage": "Nderésu URL: $1", + "visualeditor-formatdropdown-format-mw-heading1": "Titlu di pájina", + "visualeditor-formatdropdown-format-mw-heading2": "Titlu di nívi 2", + "visualeditor-formatdropdown-format-mw-heading3": "Titlu di nívi 3", + "visualeditor-formatdropdown-format-mw-heading4": "Titlu di nívi 4", + "visualeditor-formatdropdown-format-mw-heading5": "Titlu di nívi 5", + "visualeditor-formatdropdown-format-mw-heading6": "Titlu di nívi 6", + "visualeditor-generating-wikitext-progress": "Testu uiki sa-ta jeradu", + "visualeditor-includes-noinclude-start": "Kumésu di kuntiúdu ki ta ser skluídu di trexus", + "visualeditor-includes-noinclude-end": "Fin di kuntiúdu ki ta ser skluídu di trexus", + "visualeditor-includes-onlyinclude-start": "Kumésu di kuntiúdu ki ta ser nkluídu na trexus", + "visualeditor-includes-onlyinclude-end": "Fin di kuntiúdu ki ta ser nkluídu na trexus", + "visualeditor-includes-includeonly": "Kuntiúdu so pa trexus", + "visualeditor-includes-noinclude-description": "Óki kuntiúdu di es pájina é uzadu pa otu pájina, kuntiúdu di es markador li ti markador final kuruspondenti ka ta ser nkluídu. Unton, toma xintidu si bu idita kuntiúdu dipafóra di tudu es dos markador, pabia otus pájina podi uza-l.", + "visualeditor-includes-onlyinclude-description": "Óki kuntiúdu di es pájina é uzadu pa otu pájina, so kuntiúdu désdi es markador li ti markador final kuruspondenti ta ser nkluídu. Unton, toma xintidu si bu idita kuntiúdu na mei di tudu es dos markador, pabia otus pájina podi uza-l.", + "visualeditor-includes-includeonly-description": "Óki kuntiúdu di es pájina é uzadu pa otu pájina, kuntiúdu kunplimentar siginti ta ser nkluídu li:", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Prendi más sobri transkluzon parsial]", + "visualeditor-languages-tool": "Lingas", + "visualeditor-linkcontext-uneditable": "Skulpa, gósi es ligason so podi iditadu na módi kódi-fonti.", + "visualeditor-linkinspector-button-link-external": "Sáiti stérnu", + "visualeditor-linkinspector-button-link-internal": "Djobi pájinas ntérnu", + "visualeditor-linkinspector-convert-link-isbn": "Kunverti pa ligason ISBN", + "visualeditor-linkinspector-convert-link-pmid": "Kunverti pa ligason PMID", + "visualeditor-linkinspector-convert-link-rfc": "Kunverti pa ligason RFC", + "visualeditor-linkinspector-educationpopup-text": "Nterliga palabras npurtanti ku otus artigu di es uiki o ti mésmu ku otus sáiti uébi. Kel-li ta djuda tudu ledor na kunprenson di kuntestu.", + "visualeditor-linkinspector-educationpopup-title": "Ligasons", + "visualeditor-linkinspector-illegal-title": "Titlu nbálidu", + "visualeditor-linkinspector-invalid-blocked": "Uzuáris di es uiki disidi blokia ligasons pa kel sáiti. Di sumóla, tenta otu ligason.", + "visualeditor-linkinspector-invalid-external": "Dijita un nderésu URL kunplétu, pa izénplu, https://example.org", + "visualeditor-linknodeinspector-add-label": "Kirsenta testu na ligason", + "visualeditor-linknodeinspector-title": "Ligason sinplis", + "visualeditor-magiclinknodeinspector-convert-link": "Kunverti pa ligason sinplis", + "visualeditor-magiclinknodeinspector-title-isbn": "Ligason ISBN", + "visualeditor-magiclinknodeinspector-title-pmid": "Ligason PMID", + "visualeditor-magiclinknodeinspector-title-rfc": "Ligason RFC", + "visualeditor-media-title-audio": "Áudiu", + "visualeditor-media-title-image": "Imáji", + "visualeditor-media-title-video": "Vídiu", + "visualeditor-meta-tool": "Opusons", + "visualeditor-mweditmode-tooltip": "Alterna módi di idison", + "visualeditor-mweditmodesource-progress": "Sa-ta alternadu pa idison di kódi-fonti...", + "visualeditor-mweditmodesource-tool-current": "Idison di kódi-fonti", + "visualeditor-mweditmodesource-tool-unavailable": "Idison di kódi-fonti ka sta dispunívi li", + "visualeditor-mweditmodeve-popup-body": "Bu podi bolta pa módi di idison vizual na kolker mumentu ku un kliki na es íkuni.", + "visualeditor-mweditmodeve-popup-title": "Bu alterna pa módi di idison di kódi-fonti", + "visualeditor-mweditmodeve-progress": "Sa-ta alternadu pa idison vizual...", + "visualeditor-mweditmodeve-showagain": "Ka izibi-m es mensáji otu bes", + "visualeditor-mweditmodeve-tool-current": "Iditor Vizual", + "visualeditor-mweditmodeve-tool-unavailable": "Iditor Vizual ka sta dispunívi li", + "visualeditor-mweditmodewt-popup-body": "Bu podi bolta pa módi di idison di kódi-fonti na kolker mumentu ku un kliki na es íkuni.", + "visualeditor-mweditmodewt-popup-title": "Bu alterna pa módi di idison vizual", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|imáji}}", + "visualeditor-mwgallerydialog-caption-field-label": "Lijénda di galiria", + "visualeditor-mwgallerydialog-card-images": "Imájis", + "visualeditor-mwgallerydialog-card-options": "Opusons", + "visualeditor-mwgallerydialog-classes-field-label": "Klasis CSS", + "visualeditor-mwgallerydialog-classes-input-placeholder": "Tudu nómi di klasi, siparadu pa spasu", + "visualeditor-mwgallerydialog-empty-gallery-message": "Galiria sta baziu.", + "visualeditor-mwgallerydialog-heights-field-label": "Oltura di imáji", + "visualeditor-mwgallerydialog-heights-input-placeholder": "Oltura padron: $1 píksel", + "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Tradisonal sin kuntornu", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Kunplétu", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Lijéndas ta parsi óki bu pasa ratu na imáji", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Lijéndas ta parsi subripodu na imáji", + "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Prizentason di slaidi", + "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Tradisonal", + "visualeditor-mwgallerydialog-mode-field-label": "Módi di izibison", + "visualeditor-mwgallerydialog-perrow-field-label": "Imájis pa linha", + "visualeditor-mwgallerydialog-remove-button-label": "Ramove imáji", + "visualeditor-mwgallerydialog-search-button-label": "Kirsenta imáji nobu", + "visualeditor-mwgallerydialog-show-filename-field-label": "Izibi tudu nómi di fixeru", + "visualeditor-mwgallerydialog-styles-field-label": "Stilus CSS", + "visualeditor-mwgallerydialog-styles-input-placeholder": "Régras CSS, siparadu pa pontu-virgla", + "visualeditor-mwgallerydialog-title": "Galiria", + "visualeditor-mwgallerydialog-widths-field-label": "Largéza di imáji", + "visualeditor-mwgallerydialog-widths-input-placeholder": "Largéza padron: $1 píksel", + "visualeditor-mwpredialog-convert": "Pirmiti stilus di testu", + "visualeditor-mwpredialog-title": "Testu sinplis prifurmatadu", + "visualeditor-mwsignature-tool": "Bu sinatura", + "visualeditor-preference-visualeditor": "Ativa iditor vizual", + "visualeditor-preference-newwikitexteditor-enable": "Uza módi di testu uiki déntu di iditor vizual, na nbes di un iditor di testu diferenti", + "visualeditor-preference-newwikitexteditor-help": "Albes el é txumadu di 'iditor di testu uiki di 2017'.", + "visualeditor-preference-tabs": "Módi di idison:", + "visualeditor-preference-tabs-multi-tab": "Izibi-m tudu dos siparador di iditor", + "visualeditor-preference-tabs-prefer-ve": "Izibi-m iditor vizual sénpri ki pusívi", + "visualeditor-preference-tabs-prefer-wt": "Izibi-m iditor di kódi-fonti tudóra", + "visualeditor-preference-tabs-remember-last": "Rakorda-m nha deraderu iditor", + "visualeditor-preference-collab-label": "Idison kulaburativu", + "visualeditor-preference-collab-description": "Kunbida otus uzuári pa es djunta na bu sison di idison na iditor vizual.", + "visualeditor-rebase-client-export": "Sporta", + "visualeditor-rebase-client-export-start": "Sporta...", + "visualeditor-rebase-client-import": "Nporta", + "visualeditor-rebase-client-import-name": "Titlu di pájina", + "visualeditor-rebase-client-title-help": "Bu podi raviza alterasons antis di publika-s.", + "visualeditor-recreate": "Pájina foi iliminadu désdi ki bu kunsa ta idita-l. Klika \"$1\" pa rakiria-l.", + "visualeditor-redirect-description": "Radiresona pa $1", + "visualeditor-savedialog-identify-anon": "Bu txa di sta kunetadu. Si bu kuntinua, bu nderésu di IP ta ser rajistadu na stóriku di idisons di es pájina.", + "visualeditor-savedialog-identify-temp": "Gósi bu sa-ta uza nómi di uzuári tenpurári $1. Si bu kuntinua, bu idison ta ser susiadu ku el.", + "visualeditor-savedialog-identify-user": "Gósi bu sta kunetadu kuma [[User:$1|$1]]. Si bu kuntinua, bu idison ta ser susiadu ku tal kónta.", + "visualeditor-savedialog-keyboard-shortcut-submit": "Bu podi perta $1 pa garda bu idison.", + "visualeditor-savedialog-label-publish-short": "Publika", + "visualeditor-savedialog-label-publish-short-start": "Publika...", + "visualeditor-savedialog-label-resolve-conflict": "Razolbi kunflitu", + "visualeditor-savedialog-label-resume-editing": "Kuntinua idison", + "visualeditor-savedialog-label-review": "Raviza bus alterason", + "visualeditor-savedialog-label-review-good": "Bolta pa garda furmulári", + "visualeditor-savedialog-label-save-short": "Garda", + "visualeditor-savedialog-label-save-short-start": "Garda...", + "visualeditor-savedialog-review-nosummary": "Sin razumu di idison", + "visualeditor-savedialog-review-visual": "Vizual", + "visualeditor-savedialog-review-wikitext": "Testu uiki", + "visualeditor-savedialog-title-conflict": "Kunflitu", + "visualeditor-savedialog-title-preview": "Privizualiza bus alterason", + "visualeditor-savedialog-title-review": "Raviza bus alterason", + "visualeditor-savedialog-title-save": "Garda bus alterason", + "visualeditor-section-body-placeholder": "Sekson nobu", + "visualeditor-section-title-placeholder": "Asuntu", + "visualeditor-loaderror-revidconflict": "Idintifikadoris di ravizon furnisedu pa sirbidor ka ta kuruspondi (dukumentu: $1; metadadus: $2).", + "visualeditor-loaderror-wrongmode": "Bu tenta karaga iditor na módi eradu (tipu di dadus: \"$1\"; módi di iditor: \"$2\").", + "visualeditor-settings-tool": "Kunfigurasons di pájina", + "visualeditor-special-characters-group-other": "Uzadus ku frikuénsa", + "visualeditor-templatesused-tool": "Mudelus pridifinidu uzadu", + "visualeditor-title-error": "Titlu nbálidu.", + "visualeditor-toload": "Gurinhasin iditor ta karaga. Si bu inda udja es mensáji dispos di alguns sugundu, di asmóla [$1 atualiza pájina].", + "visualeditor-tooltip-non-breaking-space": "Spasu nsiparávi", + "visualeditor-version-label": "Verson", + "visualeditor-wikitext-progress": "Testu uiki sa-ta kunvertedu", + "visualeditor-wikitext-warning": "Bu sa-ta uza Iditor Vizual - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|testu uiki]] ka ta funsona li. Pa bolta pa módi di idison di kódi-fonti na kalker mumentu, sin perdi bus alterason, klika na buton di alternason.", + "visualeditor-wikitext-warning-title": "Markason di testu uiki ditetadu", + "visualeditor-wikitextconvert-title": "Kunverte furmatason pa testu uiki?", + "visualeditor-wikitextconvert-message": "Kuntiúdu koladu tene furmatason vansadu. Bu kre kunverte-l pa testu uiki?", + "visualeditor-wikitextconvert-convert": "Kunverte pa testu uiki" } diff --git a/i18n/ve-mw/kg.json b/i18n/ve-mw/kg.json index fe11d61020..860e5cd6ea 100644 --- a/i18n/ve-mw/kg.json +++ b/i18n/ve-mw/kg.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "BOKOBA VEROLY", "Cgmbo" ] }, diff --git a/i18n/ve-mw/kge.json b/i18n/ve-mw/kge.json index 5af775b1fc..5e856f5ee8 100644 --- a/i18n/ve-mw/kge.json +++ b/i18n/ve-mw/kge.json @@ -1,12 +1,13 @@ { "@metadata": { "authors": [ - "Es Krim 5 Juta Rasa" + "Es Krim 5 Juta Rasa", + "Jawadywn" ] }, "visualeditor-ca-createlocaldescriptionsource": "Tambahko sumbor panjabaran lokal", "visualeditor-ca-createsource": "Guway sumbor", "visualeditor-ca-editsource": "Dandani sumbor", - "visualeditor-ca-editsource-section": "Sunting sumbor", + "visualeditor-ca-editsource-section": "dandani sumbor", "visualeditor-descriptionpagelink": "Project:VisualEditor" } diff --git a/i18n/ve-mw/kgp.json b/i18n/ve-mw/kgp.json new file mode 100644 index 0000000000..732aee12db --- /dev/null +++ b/i18n/ve-mw/kgp.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Arcstur" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Kã nῖm fonte tỹ descrição ki", + "visualeditor-ca-createsource": "Kóniko-fonte han", + "visualeditor-ca-editsource": "Rán mãn kóniko-to ve ke", + "visualeditor-ca-editsource-section": "kónhiko fonte rán ra" +} diff --git a/i18n/ve-mw/kjh.json b/i18n/ve-mw/kjh.json index ea0a91bcc1..27085b56f4 100644 --- a/i18n/ve-mw/kjh.json +++ b/i18n/ve-mw/kjh.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "AlexandrL714", - "Amire80", "Oxianboal", "Андрей Саг." ] diff --git a/i18n/ve-mw/kk-cyrl.json b/i18n/ve-mw/kk-cyrl.json index b1813f7bc0..6d5308b350 100644 --- a/i18n/ve-mw/kk-cyrl.json +++ b/i18n/ve-mw/kk-cyrl.json @@ -6,19 +6,25 @@ "Darzz", "TMg", "Нұрлан Рахымжанов", - "СеніңШешең" + "СеніңШешең", + "Moonborn" ] }, "tooltip-ca-ve-edit": "Бұл бетті өңдеу", "tooltip-ca-editsource": "Бұл беттің қайнар мәтінін өңдеу", "tooltip-ca-createsource": "Бұл беттің қайнар мәтінін бастау", "visualeditor-advancedsettings-tool": "Кеңейтілген параметрлер", + "visualeditor-autosave-modified-prompt-accept": "Өңдеуді жалғастыру", + "visualeditor-autosave-modified-prompt-message": "Бұл бет сіз жаңа ғана жүктегенге дейін өңделген. Алдыңғы нұсқадағы {{GENDER:|өңдеуді}} {{GENDER:|жалғастырасыз}} ба, әлде соңғы нұсқадағы жаңа өңдеме жасағыңыз келе ме?", + "visualeditor-autosave-modified-prompt-reject": "Жаңа өңдеме жасау", + "visualeditor-autosave-modified-prompt-title": "{{GENDER:|Өңдеуді}} жалғастырғыңыз келе ме?", "visualeditor-backbutton-tooltip": "Артқа қайту", "visualeditor-ca-createlocaldescriptionsource": "Жергілікті сипаттама көзін қосу", "visualeditor-ca-createsource": "Қайнарын құру", - "visualeditor-ca-editlocaldescriptionsource": "Жергілікті сипаттама қайнарын өңдеу", - "visualeditor-ca-editsource": "Қайнарын өңдеу", - "visualeditor-ca-editsource-section": "қайнарын өңдеу", + "visualeditor-ca-editlocaldescriptionsource": "Жергілікті сипаттама дереккөзін өңдеу", + "visualeditor-ca-editsource": "Дереккөзін өңдеу", + "visualeditor-ca-editsource-section": "дереккөзін өңдеу", + "visualeditor-ca-editsource-section-hint": "Бөлімнің қайнар кодын өңдеу: $1", "visualeditor-categories-tool": "Санаттар", "visualeditor-desc": "МедиаУики үшін визуальды өңдегіш", "visualeditor-descriptionpagelink": "Project:VisualEditor", @@ -32,11 +38,9 @@ "visualeditor-dialog-media-info-artist": "$1 жүктеген", "visualeditor-dialog-media-info-audiofile": "Дыбыстық файл", "visualeditor-dialog-media-info-created": "Құрылған кезі: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Әртіс: $1", "visualeditor-dialog-media-info-moreinfo": "Толығырақ мәлімет", "visualeditor-dialog-media-info-readmore": "Көбірек оқу", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Жүктелген кезі: $1", "visualeditor-dialog-media-page-advanced": "Кеңейтілген баптаулар", "visualeditor-dialog-media-page-general": "Негізгі баптаулар", @@ -73,7 +77,7 @@ "visualeditor-dialog-meta-languages-label": "Тілдер", "visualeditor-dialog-meta-languages-link-label": "Бет сілтенді", "visualeditor-dialog-meta-languages-name-label": "Тіл", - "visualeditor-dialog-meta-languages-readonlynote": "Бұл осы бетке сілтенген басқа тілдердегі беттер тізімі, ол тек қайнарын өңдеу арқылы немесе Уикидеректен өңдеуге болады.", + "visualeditor-dialog-meta-languages-readonlynote": "Бұл осы бетке сілтенген басқа тілдердегі беттер тізімі, ол тек дереккөзін өңдеу арқылы немесе Уикидеректен өңдеуге болады.", "visualeditor-dialog-meta-languages-section": "Тілдер", "visualeditor-dialog-meta-settings-displaytitle": "Көрініс атауы", "visualeditor-dialog-meta-settings-hiddencat-label": "Жасырын санат", @@ -145,6 +149,7 @@ "visualeditor-linkinspector-educationpopup-text": "Басқа уики мақалаларына немесе тіпті басқа сайттарға маңызды сөздерді сілтеңіз. Бұл оқырмандарға контекст түсінуге көмектеседі.", "visualeditor-linkinspector-educationpopup-title": "Сілтемелер", "visualeditor-linkinspector-illegal-title": "Жарамсыз бет атауы", + "visualeditor-linkinspector-invalid-external": "Толық URL енгізіңіз, мысалы https://example.org", "visualeditor-linknodeinspector-add-label": "Деңгей қосу", "visualeditor-linknodeinspector-title": "Мысал сілтеме", "visualeditor-magiclinknodeinspector-convert-link": "Қарапайым сілтемеге түрлендіру", @@ -152,11 +157,12 @@ "visualeditor-magiclinknodeinspector-title-pmid": "PMID сілтеме", "visualeditor-magiclinknodeinspector-title-rfc": "RFC сілтеме", "visualeditor-meta-tool": "Параметрлер", - "visualeditor-mweditmodesource-tool-current": "Қайнарын өңдеу", - "visualeditor-mweditmodeve-popup-body": "Сіз кез келген уақытта бұл белгішені басу арқылы көріп өңдеуге ауысуға қайта аласыз.", + "visualeditor-mweditmodesource-tool-current": "Дереккөзін өңдеу", + "visualeditor-mweditmodeve-popup-body": "Кез келген уақытта осы белгішені басу арқылы көріп өңдеуге қайта ауыса аласыз.", "visualeditor-mweditmodeve-popup-title": "Қайнарын өңдеуге ауыстыңыз", - "visualeditor-mweditmodeve-showagain": "Бұл хабарламаны қайтадан көрсетпе", + "visualeditor-mweditmodeve-showagain": "Бұл хабарламаны қайта көрсетпе", "visualeditor-mweditmodeve-tool-current": "Көріп өңдеу", + "visualeditor-mweditmodewt-popup-body": "Кез келген уақытта осы белгішені басу арқылы қайнарын өңдеуге қайта ауыса аласыз.", "visualeditor-mwgallerydialog-title": "Галерея", "visualeditor-mwsignature-tool": "Қолтаңбаңыз", "visualeditor-preference-tabs": "Өңдеу режимі", diff --git a/i18n/ve-mw/kn.json b/i18n/ve-mw/kn.json index dc3f28521e..52eeddea7b 100644 --- a/i18n/ve-mw/kn.json +++ b/i18n/ve-mw/kn.json @@ -2,6 +2,7 @@ "@metadata": { "authors": [ "Ananth subray", + "Anzx", "Nayvik", "Omshivaprakash", "Shushruth", @@ -139,7 +140,7 @@ "visualeditor-mwgallerydialog-widths-field-label": "ಚಿತ್ರದ ಅಗಲ", "visualeditor-mwsignature-tool": "ನಿಮ್ಮ ಸಹಿ", "visualeditor-rebase-client-import-name": "ಪುಟದ ಶೀರ್ಷಿಕೆ", - "visualeditor-savedialog-label-publish-short": "ಪ್ರಕಟಿಸು", + "visualeditor-savedialog-label-publish-short": "ಪ್ರಕಟಿಸಿ", "visualeditor-savedialog-label-publish-short-start": "ಪ್ರಕಟಿಸು...", "visualeditor-savedialog-label-resolve-conflict": "ಸಮಸ್ಯೆಗಳನ್ನು ಸರೀಮಾಡಿ", "visualeditor-savedialog-label-resume-editing": "ಸಂಪಾದನೆ ಮುಂದುವರಿಸಿ", diff --git a/i18n/ve-mw/knc.json b/i18n/ve-mw/knc.json index 7265f049e8..f605f7d320 100644 --- a/i18n/ve-mw/knc.json +++ b/i18n/ve-mw/knc.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Mohammedbama123" ] }, diff --git a/i18n/ve-mw/ko.json b/i18n/ve-mw/ko.json index 16b475c23d..4005922c0f 100644 --- a/i18n/ve-mw/ko.json +++ b/i18n/ve-mw/ko.json @@ -27,23 +27,33 @@ "Ryuch", "SeoJeongHo", "Tyey", + "YeBoy371", "Ykhwong", "고기랑", "고솜", "렌즈", "밥풀떼기", "아라", - "콩가루" + "콩가루", + "Tensama0415" ] }, "collabpad-doctitle": "CollabPad: $1", "collabpad-import-subtitle": "$1에서 가져옴", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "이 문서 편집", + "tooltip-ca-ve-edit-local": "로컬 설명 페이지 편집", "tooltip-ca-ve-create": "이 문서 만들기", + "tooltip-ca-ve-create-local": "로컬 설명 페이지 만들기", "tooltip-ca-editsource": "이 문서의 원본 코드를 편집", + "tooltip-ca-editsource-local": "로컬 설명 페이지의 소스 코드 편집", "tooltip-ca-createsource": "이 문서의 원본 코드를 만들기", + "tooltip-ca-createsource-local": "로컬 설명 페이지의 소스 코드 만들기", "visualeditor-advancedsettings-tool": "고급 설정", + "visualeditor-annotations-default-description": "이 문서 부분은 주석 범위의 일부입니다.", + "visualeditor-annotations-default-end": "주석 범위의 끝", + "visualeditor-annotations-default-start": "주석 범위의 시작", + "visualeditor-annotations-extended-documentation": "이 주석 범위는 포함된 내용의 중첩 구조가 올바르지 않아 확장되었습니다. 주석이 달린 내용을 편집하기 전에 중첩 구조를 올바르게 조정하는 것이 좋습니다. 그렇지 않으면 예상보다 넓은 범위에 주석이 달릴 수 있습니다.", "visualeditor-autosave-modified-prompt-accept": "편집 재개", "visualeditor-autosave-modified-prompt-message": "이 문서는 마지막으로 불러온 이후 편집되었습니다. 오래된 판의 편집을 재개하거나 최신 판의 새 편집을 시작하시겠습니까?", "visualeditor-autosave-modified-prompt-reject": "새 편집 시작하기", @@ -60,10 +70,15 @@ "visualeditor-ca-editsource-section": "원본 편집", "visualeditor-ca-editsource-section-hint": "문단의 원본 코드 편집: $1", "visualeditor-categories-tool": "분류", + "visualeditor-changedesc-mwcategory-sortkey-changed": "정렬 키가 $1에서 $2(으)로 바뀌었습니다", + "visualeditor-changedesc-mwcategory-sortkey-set": "정렬 키가 $1(으)로 설정됨", + "visualeditor-changedesc-mwcategory-sortkey-unset": "$1에서 정렬 키가 설정되지 않음", + "visualeditor-changedesc-mwlanguagevariant": "언어 변종 마크업 변경됨", "visualeditor-changedesc-mwredirect": "넘겨주기 대상이 $1에서 $2 문서로 바뀌었습니다", - "visualeditor-changedesc-mwtransclusion": "틀의 변수가 변경되었습니다", + "visualeditor-changedesc-mwtransclusion": "틀의 매개변수가 변경되었습니다", "visualeditor-desc": "미디어위키를 위한 시각편집기", "visualeditor-descriptionpagelink": "Project:시각편집기", + "visualeditor-dialog-extension-abandonedit": "변경사항을 적용하지 않고 이 대화 상자를 닫으시겠습니까?", "visualeditor-dialog-media-alttext-checkbox": "캡션을 대체 텍스트로 사용", "visualeditor-dialog-media-alttext-section": "대체 텍스트", "visualeditor-dialog-media-alttext-section-help": "이것을 사용하면 항목을 볼 수 없는 사람들을 위해 텍스트 내용을 기술할 수 있습니다. 관련 설명은 이 미디어 항목이 제공되는 목적과 정보를 해당 사람들이 충분히 이해할 수 있어야 합니다. 스크린 리더 소프트웨어나 텍스트 전용 브라우저를 이용하는 시각 장애인 등의 사람들에게 중요합니다.", @@ -167,27 +182,28 @@ "visualeditor-dialog-template-title": "틀", "visualeditor-dialog-transclusion-action-save": "저장", "visualeditor-dialog-transclusion-template-title-nonexistent": "이 틀은 존재하지 않습니다.", + "visualeditor-dialog-transclusion-template-title-modifier": "중첩 구문이나 조정(예: [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst])을 사용하는 틀을 편집할 때는 틀 설명문서와 [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter 매개변수] 이름 (존재하는 경우) 을 사용할 수 없습니다.", "visualeditor-dialog-transclusion-template-widget-aria": "틀을 선택하려면 Space를 누르십시오.", - "visualeditor-dialog-transclusion-template-widget-aria-selected": "틀, 틀의 변수, 틀의 값을 삭제하려면 Ctrl+Del을 누르십시오. 틀을 위아래로 이동하려면 Ctrl+Shift+방향키를 누르십시오.", - "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "틀, 틀 변수, 틀 값을 삭제하려면 Ctrl+Del을 누르십시오.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "틀, 틀 매개변수, 틀의 값을 삭제하려면 Ctrl+Del을 누르십시오. 틀을 위아래로 이동하려면 Ctrl+Shift+방향키를 누르십시오.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "틀, 틀 매개변수, 틀 값을 삭제하려면 Ctrl+Del을 누르십시오.", "visualeditor-dialog-transclusion-add-wikitext": "위키텍스트 추가", - "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\"은(는) 이미 \"$2\"로 추가되었습니다. 사이드바에서 옵션을 확인하세요. 이는 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases 다른 이름] 또는 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label 라벨]을 사용했기 때문입니다.", - "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" 값을 추가할 수 없습니다. 해당 변수는 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated 구식]으로 표기되어 있습니다.", - "visualeditor-dialog-transclusion-add-param-error-exists-selected": "\"$2\" 변수를 두 번 추가할 수 없습니다.", - "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "\"$2\" 변수는 이미 사용 가능합니다. 사이드바에서 옵션을 확인해 주십시오.", - "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 값은 금지된 문자입니다. 변수를 추가하려면 제거해 주십시오.", - "visualeditor-dialog-transclusion-add-param-help": "변수가 더 있다면 틀데이터에 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters 변수 정보를 추가]해 주세요. 틀 내에 존재하는 변수만 제대로 감지됩니다. [[$1|틀 문서]]에 기존 변수에 관한 정보가 있을 수 있습니다.", - "visualeditor-dialog-transclusion-add-param-placeholder": "변수 이름", + "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\"은(는) 이미 \"$2\"로 추가되었습니다. 사이드바에서 옵션을 확인하세요. 이는 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases 다른 이름] 또는 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label 레이블]을 사용했기 때문입니다.", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" 값을 추가할 수 없습니다. 해당 매개변수는 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated 구식]으로 표기되어 있습니다.", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "\"$2\" 매개변수를 두 번 추가할 수 없습니다.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "\"$2\" 매개변수는 이미 사용 가능합니다. 사이드바에서 옵션을 확인해 주십시오.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 값은 금지된 문자입니다. 매개변수를 추가하려면 제거해 주십시오.", + "visualeditor-dialog-transclusion-add-param-help": "매개변수가 더 있다면 틀데이터에 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters 매개변수 정보를 추가]해 주세요. 틀 내에 존재하는 매개변수만 제대로 감지됩니다. [[$1|틀 문서]]에 기존 매개변수에 관한 정보가 있을 수 있습니다.", + "visualeditor-dialog-transclusion-add-param-placeholder": "매개변수 이름", "visualeditor-dialog-transclusion-add-param-save": "추가", "visualeditor-dialog-transclusion-add-template": "틀 추가", "visualeditor-dialog-transclusion-add-template-button": "틀 추가", "visualeditor-dialog-transclusion-add-template-save": "추가", - "visualeditor-dialog-transclusion-add-undocumented-param": "틀데이터에 없는 변수 추가하기", + "visualeditor-dialog-transclusion-add-undocumented-param": "틀데이터에 없는 매개변수 추가하기", "visualeditor-dialog-transclusion-back-confirmation-prompt": "검색으로 돌아가시겠습니까? 변경사항은 소실되며 이 작업은 취소할 수 없습니다.", "visualeditor-dialog-transclusion-close-confirmation-prompt": "틀 편집기를 닫으시겠습니까? 변경사항은 소실되며 이 작업은 취소할 수 없습니다.", "visualeditor-dialog-transclusion-collapse-options": "옵션 숨기기", "visualeditor-dialog-transclusion-confirmation-discard": "편집 버리기", - "visualeditor-dialog-transclusion-confirmation-reject": "편집 계속", + "visualeditor-dialog-transclusion-confirmation-reject": "편집 계속하기", "visualeditor-dialog-transclusion-contextitem-description": "$1에서 생성됨", "visualeditor-dialog-transclusion-contextitem-loading": "불러오는 중...", "visualeditor-dialog-transclusion-expand-options": "옵션 보기", @@ -195,21 +211,28 @@ "visualeditor-dialog-transclusion-filter-no-match": "일치하는 항목이 없습니다", "visualeditor-dialog-transclusion-filter-placeholder": "필드 찾기", "visualeditor-dialog-transclusion-filter-show-all": "모두 표시", - "visualeditor-dialog-transclusion-filter-title": "$1의 변수 검색", + "visualeditor-dialog-transclusion-filter-title": "$1의 매개변수 검색", + "visualeditor-dialog-transclusion-help-title": "틀 편집 지원", + "visualeditor-dialog-transclusion-help-message": "틀은 콘텐츠를 위한 서식을 제공합니다. 이 편집기는 왼쪽에 틀에서 제공하는 옵션을 보여주고, 오른쪽에서 해당 옵션에 값을 추가할 수 있도록 합니다.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates 틀 편집 도움말]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions 키보드 단축키]", "visualeditor-dialog-transclusion-deprecated-parameter": "사용되지 않는 필드", "visualeditor-dialog-transclusion-deprecated-parameter-description": "필드는 구식입니다. $1", "visualeditor-dialog-transclusion-loading": "불러오는 중...", + "visualeditor-dialog-transclusion-multipart-message": "현재 틀과 하나 이상의 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content 연결된 콘텐츠] (위키텍스트 및/또는 추가 틀) 를 편집하고 있습니다.", "visualeditor-dialog-transclusion-no-template-data-description": "이 틀에는 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters 틀데이터]가 없으며 해당 매개변수가 [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters 자동 생성]되었습니다. 따라서 틀과 해당 매개변수에 대한 설명이 부족합니다. [[$1|틀 문서]]에 추가 정보가 있을 수 있습니다.", "visualeditor-dialog-transclusion-no-template-description": "\"$1\" 틀은 아직 설명이 없습니다. [[$2|틀 문서]]에 일부 정보가 있을 수 있습니다.", - "visualeditor-dialog-transclusion-no-template-parameters": "이 틀에는 문서화된 매개 변수가 없으며 이러한 매개 변수 없이 사용하기 위한 것일 수 있습니다.", + "visualeditor-dialog-transclusion-no-template-parameters": "이 틀에는 문서화된 매개변수가 없으며 이러한 매개변수 없이 사용하기 위한 것일 수 있습니다.", "visualeditor-dialog-transclusion-param-default": "기본값: $1", "visualeditor-dialog-transclusion-param-example-long": "예: $1", - "visualeditor-dialog-transclusion-param-undocumented": "(문서화되지 않은 변수)", + "visualeditor-dialog-transclusion-param-selection-aria-description": "스페이스 키를 눌러 매개변수를 추가하거나 제거할 수 있습니다. 엔터 키를 눌러 매개변수를 추가하고 값을 즉시 편집할 수 있습니다. 매개변수가 이미 선택된 경우 엔터 키를 눌러 값을 편집할 수 있습니다.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "$1의 매개변수", + "visualeditor-dialog-transclusion-param-undocumented": "(문서화되지 않은 매개변수)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "틀 찾기", "visualeditor-dialog-transclusion-required-parameter": "필수 필드", "visualeditor-dialog-transclusion-required-parameter-description": "이 필드는 필수입니다.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "돌아가기", - "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "어쨌든 계속하기", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "그래도 계속하기", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "필요한 {{PLURAL:$1|필드}} 없음", "visualeditor-dialog-transclusion-required-parameter-is-blank": "$1 {{PLURAL:$2|필드}}를 채우지 않고 계속하겠습니까?", "visualeditor-dialog-transclusion-see-template": "틀은 사용자가 생성한 것으로 전체 설명이 부족할 수 있습니다. 이 [[$2|틀 문서]]에 추가 정보가 있을 수 있습니다.", @@ -246,11 +269,15 @@ "visualeditor-generating-wikitext-progress": "위키텍스트를 만드는 중", "visualeditor-includes-noinclude-start": "발췌로부터 제외된 내용의 시작", "visualeditor-includes-noinclude-end": "발췌로부터 제외된 내용의 끝", + "visualeditor-includes-onlyinclude-start": "발췌로부터 허용된 내용의 시작", + "visualeditor-includes-onlyinclude-end": "발췌로부터 허용된 내용의 끝", + "visualeditor-includes-includeonly": "발췌만을 위한 콘텐츠", "visualeditor-includes-noinclude-description": "이 문서의 내용이 다른 문서에 의해 사용될 때 이곳부터 일치하는 종료 마커까지의 내용이 포함되지 않습니다. 이 마커들 바깥의 내용을 편집할 때에는 다른 문서들이 해당 내용을 사용할 수 있으므로 주의하십시오.", "visualeditor-includes-onlyinclude-description": "이 문서의 내용이 다른 문서에 의해 사용될 때 이곳부터 일치하는 종료 마커까지의 '''내용만이''' 포함됩니다. 이 마커들 사이의 내용을 편집할 때에는 다른 문서들이 해당 내용을 사용할 수 있으므로 주의하십시오.", "visualeditor-includes-includeonly-description": "이 문서의 내용이 다른 문서에 의해 사용될 때 다음의 추가 내용이 여기에 포함됩니다:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion 부분 끼워넣기에 대해 더 알아보기]", "visualeditor-languages-tool": "언어", + "visualeditor-linkcontext-uneditable": "죄송합니다, 이 링크는 지금은 원본 모드에서만 편집할 수 있습니다.", "visualeditor-linkinspector-button-link-external": "외부 사이트", "visualeditor-linkinspector-button-link-internal": "내부 문서 검색", "visualeditor-linkinspector-convert-link-isbn": "ISBN 링크로 변환", @@ -259,8 +286,9 @@ "visualeditor-linkinspector-educationpopup-text": "중요한 단어에 다른 위키의 문서나 웹사이트로 링크를 거세요. 이는 독자들이 문맥을 이해하기 쉽도록 도와줍니다.", "visualeditor-linkinspector-educationpopup-title": "링크", "visualeditor-linkinspector-illegal-title": "잘못된 문서 제목", + "visualeditor-linkinspector-invalid-blocked": "이 위키의 사람들이 해당 사이트로 연결되는 링크를 차단하기로 결정했습니다. 다른 링크를 시도해 주세요.", "visualeditor-linkinspector-invalid-external": "전체 URL을 입력하십시오 (예: https://example.org)", - "visualeditor-linknodeinspector-add-label": "라벨 추가", + "visualeditor-linknodeinspector-add-label": "레이블 추가", "visualeditor-linknodeinspector-title": "간단 링크", "visualeditor-magiclinknodeinspector-convert-link": "단순 링크로 변환", "visualeditor-magiclinknodeinspector-title-isbn": "ISBN 링크", @@ -292,6 +320,9 @@ "visualeditor-mwgallerydialog-heights-field-label": "그림 높이", "visualeditor-mwgallerydialog-heights-input-placeholder": "기본 높이: $1 px", "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "일반 (외곽선 없음)", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "압축", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "압축 (마우스를 올렸을 때 캡션이 보임)", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "압축 (캡션이 위에 겹쳐짐)", "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "슬라이드쇼", "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "일반", "visualeditor-mwgallerydialog-mode-field-label": "표시 모드", @@ -305,7 +336,7 @@ "visualeditor-mwgallerydialog-widths-field-label": "그림 너비", "visualeditor-mwgallerydialog-widths-input-placeholder": "기본 너비: $1 px", "visualeditor-mwpredialog-convert": "텍스트 서식 허용", - "visualeditor-mwpredialog-title": "서식을 미리 지정한 플레인 텍스트", + "visualeditor-mwpredialog-title": "서식이 미리 지정된 평문", "visualeditor-mwsignature-tool": "당신의 서명", "visualeditor-preference-visualeditor": "시각편집기 활성화", "visualeditor-preference-newwikitexteditor-enable": "다른 위키텍스트 편집기 대신 시각편집기 내의 위키텍스트 모드를 사용하기", @@ -315,14 +346,17 @@ "visualeditor-preference-tabs-prefer-ve": "가능하면 항상 시각편집기 사용하기", "visualeditor-preference-tabs-prefer-wt": "항상 원본 편집기 사용하기", "visualeditor-preference-tabs-remember-last": "마지막으로 사용한 편집기 기억하기", + "visualeditor-preference-collab-label": "협동 편집", + "visualeditor-preference-collab-description": "다른 사용자가 시각편집기에서 편집 세션에 참여하도록 초대하세요.", "visualeditor-rebase-client-export": "내보내기", "visualeditor-rebase-client-export-start": "내보내기...", "visualeditor-rebase-client-import": "가져오기", "visualeditor-rebase-client-import-name": "문서 제목", - "visualeditor-rebase-client-title-help": "저장하기 전에 변경 사항을 검토할 수 있습니다.", + "visualeditor-rebase-client-title-help": "저장하기 전에 변경사항을 검토할 수 있습니다.", "visualeditor-recreate": "문서가 편집을 시작한 이후로 삭제되었습니다. 다시 만드려면 \"$1\"을 누르세요.", "visualeditor-redirect-description": "$1 문서로 넘겨주기", "visualeditor-savedialog-identify-anon": "더 이상 로그인되어 있지 않습니다. 계속하면 당신의 IP 주소가 이 문서의 편집 역사에 기록됩니다.", + "visualeditor-savedialog-identify-temp": "현재 $1 임시 사용자 이름을 사용하고 있습니다. 계속 진행하시면 편집 내용이 이 사용자 이름과 연결됩니다.", "visualeditor-savedialog-identify-user": "지금 [[User:$1|$1]]님으로 로그인되어 있습니다. 계속하면 편집이 이 계정으로 연결됩니다.", "visualeditor-savedialog-keyboard-shortcut-submit": "$1를 누르면 편집을 저장할 수 있습니다.", "visualeditor-savedialog-label-publish-short": "게시", @@ -348,7 +382,7 @@ "visualeditor-special-characters-group-other": "자주 사용됨", "visualeditor-templatesused-tool": "사용된 틀", "visualeditor-title-error": "제목이 잘못되었습니다.", - "visualeditor-toload": "편집기가 지금 로드됩니다. 몇 초 후에도 이 메시지가 여전히 보이면, [$1 문서를 다시 로드]해 주십시오.", + "visualeditor-toload": "편집기가 지금 로드됩니다. 몇 초 후에도 이 메시지가 여전히 보이면, [$1 문서를 새로 고침]해 주십시오.", "visualeditor-tooltip-non-breaking-space": "줄 바꿈 없는 공백", "visualeditor-version-label": "버전", "visualeditor-wikitext-progress": "위키텍스트로 변환 중", diff --git a/i18n/ve-mw/krc.json b/i18n/ve-mw/krc.json index 2a593cd613..8e90d0b3dc 100644 --- a/i18n/ve-mw/krc.json +++ b/i18n/ve-mw/krc.json @@ -33,7 +33,7 @@ "visualeditor-autosave-recovered-title": "Тюрлениуле къутхарылдыла", "visualeditor-backbutton-tooltip": "Кери къайт", "visualeditor-ca-createlocaldescriptionsource": "Локал айгъакълауну къайнагъын къош", - "visualeditor-ca-createsource": "Вики-текстни къура", + "visualeditor-ca-createsource": "Къайнакъ болдур", "visualeditor-ca-editlocaldescriptionsource": "Локал айгъакълауну къайнагъын тюрлендириу", "visualeditor-ca-editsource": "Къайнакъны тюзет", "visualeditor-ca-editsource-section": "къайнакъны тюзет", @@ -43,7 +43,7 @@ "visualeditor-changedesc-mwcategory-sortkey-set": "Сафландырыу ачхычха $1 магъана берилди", "visualeditor-changedesc-mwcategory-sortkey-unset": "Сафландырыу ачхычны магъанасы $1 болуудан чыкъды", "visualeditor-changedesc-mwlanguagevariant": "Тил вариантны белгилениую тюрленди", - "visualeditor-changedesc-mwredirect": "Джангыдан джибериу нюзюр $1 нюзюрден $2 нюзюрге тюрленди", + "visualeditor-changedesc-mwredirect": "Джолландырыу нюзюр $1 нюзюрден $2 нюзюрге тюрленди", "visualeditor-changedesc-mwtransclusion": "Шаблон параметрле тюрлендиле", "visualeditor-desc": "MediaWiki ючюн визуал редактор", "visualeditor-descriptionpagelink": "Project:Визуал редактор", @@ -60,11 +60,9 @@ "visualeditor-dialog-media-info-artist": "$1 джюкледи", "visualeditor-dialog-media-info-audiofile": "Аудиофайл", "visualeditor-dialog-media-info-created": "Къуралгъаны: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Автор: $1", "visualeditor-dialog-media-info-moreinfo": "Аслам информация", "visualeditor-dialog-media-info-readmore": "Энтда окъу", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Джюкленнгенди: $1", "visualeditor-dialog-media-page-advanced": "Къошакъ", "visualeditor-dialog-media-page-general": "Баш", @@ -133,8 +131,8 @@ "visualeditor-dialog-meta-settings-notitleconvert-help": "Бу бетни башлыгъын башха скриптлеге автомат халда конвертация болууун тыяргъа боллукъсуз.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Бетни атын тил вариантланы арасында конвертация этмегиз", "visualeditor-dialog-meta-settings-redirect-help": "Бу бетни, автомат халда окъуучуланы бу викидеги башха бетге ашырырача джангыдан джибериуге бурургъа боллукъсуз. Бу джангылыч джазылыуда эмда альтернатив атла неда концепцияла ючюн хайырланырчады. Буну этсегиз, окъуучула бу бетни ичиндегисин кёрлюк тюлдюле.", - "visualeditor-dialog-meta-settings-redirect-label": "Бу бетге редирект эт", - "visualeditor-dialog-meta-settings-redirect-placeholder": "Редирект ючюн нюзюрлю бет", + "visualeditor-dialog-meta-settings-redirect-label": "Бу бетге джолландыр", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Джолландырыу ючюн нюзюрлю бет", "visualeditor-dialog-meta-settings-redirect-statichelp": "Бу джангыдан джибериуню джибердиги бет кёчсе, автомат халда джангыртылыуун тыяргъа боллукъусуз, бу бек аз керек болады.", "visualeditor-dialog-meta-settings-redirect-staticlabel": "Нюзюрлю бетни аты тюрленнген сагъатда бу редиректни джангырмазча эт.", "visualeditor-dialog-meta-settings-section": "Бетни параметрлери", @@ -322,7 +320,7 @@ "visualeditor-rebase-client-import-name": "Бетни башлыгъы", "visualeditor-rebase-client-title-help": "Сакълауну аллы бла тюзетиулени къараргъа боллукъсуз.", "visualeditor-recreate": "Сиз редакторлукъ этиб башлагъанлы бу бет кетериглен этгенди. Аны джангыдан къурар ючюн «$1» тиекни басыгъыз.", - "visualeditor-redirect-description": "$1 джангыдан джиберилди", + "visualeditor-redirect-description": "$1 джолла", "visualeditor-savedialog-identify-anon": "Системадан чыгъыбсыз, IP-адресигиз бетни тюзетиу тарихинде сакъланныкъды.", "visualeditor-savedialog-identify-temp": "Мындан ары $1 болджаллы хайырланыучу атны хайырланасыз. Андан ары да бардырсагъыз, тюзетиуюгюз бу ат бла байламлы боллукъду.", "visualeditor-savedialog-identify-user": "Энди [[User:$1|$1]] болуб сессияны ачдыгъыз. Андан бардырсагъыз, тюзетиулеригиз бу хыйсаб бла байламлы боллукъдула.", @@ -350,7 +348,7 @@ "visualeditor-special-characters-group-other": "Кёб хайырланыучу", "visualeditor-templatesused-tool": "Хайырланнган шаблонла", "visualeditor-title-error": "Джарамагъан башлыкъ.", - "visualeditor-toload": "Редактор джюкленникди. Талай секундан бу билдириуню биягъынлай кёргенлей турсагъыз, тилейбиз, [$1 бетни джангыдан джюклегиз].", + "visualeditor-toload": "Редактор джюкленникди. Талай секундан бу билдириуню биягъынлай кёргенлей турсагъыз, тилейбиз, [$1 бетни джангыртыгъыз].", "visualeditor-tooltip-non-breaking-space": "Къырылмагъан бошлукъ", "visualeditor-version-label": "Версия", "visualeditor-wikitext-progress": "Викитекст конвертация бола турады", diff --git a/i18n/ve-mw/ks-arab.json b/i18n/ve-mw/ks.json similarity index 98% rename from i18n/ve-mw/ks-arab.json rename to i18n/ve-mw/ks.json index c5535ded87..007d71af1d 100644 --- a/i18n/ve-mw/ks-arab.json +++ b/i18n/ve-mw/ks.json @@ -1,10 +1,7 @@ { "@metadata": { "authors": [ - "Iflaq", - "Rishabhbhat", - "Shahwaqar", - "Teashae" + "Ayaat123" ] }, "collabpad-doctitle": "مُشتَرکہٕ پیڈ: $1", @@ -17,6 +14,7 @@ "visualeditor-autosave-modified-prompt-accept": "اؠڈِٹ تھٲوِو جٲری", "visualeditor-autosave-modified-prompt-reject": "نٔو اؠڈِٹ کٔرِو شُروٗع", "visualeditor-backbutton-tooltip": "واپَس گٔژھِو", + "visualeditor-ca-createlocaldescriptionsource": "مُقٲمی وَضاحَت آگُر لیٚکھِو", "visualeditor-ca-createsource": "کوڈ بَنٲیو", "visualeditor-ca-editsource": "کوڈ اؠڈِٹ کٔرِو", "visualeditor-ca-editsource-section": "کوڈ اؠڈِٹ کٔرِو", diff --git a/i18n/ve-mw/ksw.json b/i18n/ve-mw/ksw.json index 65057e7f36..5ce3b6711e 100644 --- a/i18n/ve-mw/ksw.json +++ b/i18n/ve-mw/ksw.json @@ -1,13 +1,13 @@ { "@metadata": { "authors": [ - "Amire80", "Jaeminlovetaejoon", - "SawJaemin" + "SawJaemin", + "SawEKP" ] }, "tooltip-ca-ve-edit": "အဲၣ်ဒံၣ်ကဘျံးပၤတခါအံၤ", - "visualeditor-ca-createsource": "တ့ထီၣ် source", + "visualeditor-ca-createsource": "မၤကဲထီၣ်တၢ်အခီၣ်ထံး", "visualeditor-ca-editsource": "အဲၣ်ဒံၣ်တၢ်ခီၣ်ထံး", "visualeditor-ca-editsource-section": "အဲၣ်ဒံၣ်တၢ်ခီၣ်ထံး", "visualeditor-descriptionpagelink": "Project:ဖ့စူလ်အဲးဒံးထၢ", diff --git a/i18n/ve-mw/ku-latn.json b/i18n/ve-mw/ku-latn.json index 0a03bd00fa..6b39979f93 100644 --- a/i18n/ve-mw/ku-latn.json +++ b/i18n/ve-mw/ku-latn.json @@ -29,10 +29,8 @@ "visualeditor-dialog-media-goback": "Paşve", "visualeditor-dialog-media-info-artist": "Ji aliyê $1 hate barkirin", "visualeditor-dialog-media-info-audiofile": "Pela dengê", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-moreinfo": "Zêdetir agahî", "visualeditor-dialog-media-info-readmore": "Zêdetir bixwîne", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Hat barkirinː $1", "visualeditor-dialog-media-page-advanced": "Pêşketî", "visualeditor-dialog-media-position-section": "Pozisyon", @@ -84,9 +82,9 @@ "visualeditor-dialog-transclusion-template-title-nonexistent": "Ev şablon tine ye.", "visualeditor-dialog-transclusion-add-wikitext": "Wîkînivîs tevlê bike", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Parametreya \"$2\" du car nayê tevlê kirin.", - "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Parametreya \"$2\" jixwe ji bo bikaranînê heye. Ji kerema xwe vebijarkên li kêlekê kontrol bikin.", - "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 karaktereke qedexe ye. Ji kerema xwe re wê jêbibin da ku parametreyê zêde bikin.", - "visualeditor-dialog-transclusion-add-param-help": "Heke dizanin, navên [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters parametreyeke nebelgekirî] lê zêde bike. Bizanin ku tenê parametreyên ku ji hêla şablonê ve tên zanîn dê bandorek hebe. Hûn dikarin li ser [[$1|rûpela şablonê]] li ser parametreyên heyî agahdarî bibînin.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Parametreya \"$2\" jixwe ji bo bikaranînê heye. Ji kerema xwe eyarên li panela kêlekê kontrol bikin.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 karaktereke yasax e. Ji kerema xwe re wê jêbibin da ku parametreyê zêde bikin.", + "visualeditor-dialog-transclusion-add-param-help": "Eger tu dizanî, navên [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters parametreyeke nebelgekirî] lê zêde bike. Ji bîr neke ku tenê van parametreyan tesîr li şablonê dikin yên ku ji hêla şablonê ve tên zanîn. Tu dikarî li ser [[$1|sahîfeya şablonê]] malûmatên li ser parametreyên heyî bibînî.", "visualeditor-dialog-transclusion-add-param-placeholder": "Navê parametreyê", "visualeditor-dialog-transclusion-add-param-save": "Tevlî bike", "visualeditor-dialog-transclusion-add-template": "Şablonekê lê zêde bike", @@ -101,34 +99,34 @@ "visualeditor-dialog-transclusion-contextitem-loading": "Tê barkirin...", "visualeditor-dialog-transclusion-expand-options": "Vebijarkan nîşan bide", "visualeditor-dialog-transclusion-filter-hide-unused": "Yên vala veşêre", - "visualeditor-dialog-transclusion-filter-no-match": "Ti encam nîne", + "visualeditor-dialog-transclusion-filter-no-match": "Ti netîce nîne", "visualeditor-dialog-transclusion-filter-placeholder": "Beşek lê bigere", "visualeditor-dialog-transclusion-filter-show-all": "Hemû nîşan bide", "visualeditor-dialog-transclusion-filter-title": "Lêgerîna parametreyê ji bo $1", "visualeditor-dialog-transclusion-help-title": "Alîkariya guhartina şablonê", "visualeditor-dialog-transclusion-loading": "Tê barkirin...", - "visualeditor-dialog-transclusion-no-template-data-description": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters DaneyênŞablonê] ya vê şablonê tine ye û [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters parametreyên wê] bi otomatîkî hatin çêkirin. Loma pênaseya şablonê û danasînên parametreyê tine ye. Li ser [[$1|rûpela şablonê]] dibe ku zêdetir agahî hebe.", + "visualeditor-dialog-transclusion-no-template-data-description": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters DaneyênŞablonê] ya vê şablonê tine ye û [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters parametreyên wê] bi otomatîkî hatin çêkirin. Loma îzaha şablonê û tarîfên parametreyê tine ne. Li ser [[$1|rûpela şablonê]] dibe ku zêdetir agahî hebe.", "visualeditor-dialog-transclusion-no-template-description": "Hîn danasîna şablona \"$1\" tine ye, lê dibe ku hin agahî li ser [[$2|rûpela şablonê]] hebin.", "visualeditor-dialog-transclusion-no-template-parameters": "Parametreyên vê şablonê yên belgekirî tine û dibe ku bêyî wan were bikaranîn.", "visualeditor-dialog-transclusion-param-default": "Standart:$1", - "visualeditor-dialog-transclusion-param-example-long": "Mînak: $1", + "visualeditor-dialog-transclusion-param-example-long": "Nimûne: $1", "visualeditor-dialog-transclusion-param-undocumented": "(parametreya nebelgekirî)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Şablonekê bibîne", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Vegere", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Ne muhîm e dewam bike", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Qisma hewce nehatiye|Qismên hewce nehatine}} nivîsin", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Bi rastî dixwazî bêyî nivîsina {{PLURAL:$2|qismê|qismên}} $1 dewam bikî?", - "visualeditor-dialog-transclusion-see-template": "Şablon ji hêla bikarhêneran ve tê çêkirin û dibe ku kêmasiyên ravekirinê hebin. Herwiha dibe ku li ser [[$2|rûpela vê şablonê]] agahiyên berfireh hebin.", + "visualeditor-dialog-transclusion-see-template": "Şablon ji hêla bikarhêneran ve tê çêkirin û dibe ku kêmasiyên îzahkirinê hebin. Herwiha dibe ku li ser [[$2|sahîfeya vê şablonê]] malûmatên berfireh hebin.", "visualeditor-dialog-transclusion-title-insert-template": "Şablonekê tevlî bike", "visualeditor-dialog-transclusion-title-insert-known-template": "Tevlî bike: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Biguhêre: $1", "visualeditor-dialog-transclusion-title-edit-transclusion": "Naveroka şablonê", - "visualeditor-dialog-transclusion-template-search": "Li şablonan bigere", - "visualeditor-dialog-transclusion-template-search-help": "Şablona ku dixwazî têxî bi lêgerîna bêjeyeke têkildar bibîne. Şablonên ku danasînên wan hene îhtîmal e ku bi edîtorê dîtbarî re baş bixebitin.", + "visualeditor-dialog-transclusion-template-search": "Şablonan lê bigere", + "visualeditor-dialog-transclusion-template-search-help": "Şablona ku dixwazî têxî bi lêgerîna kelîmeyeke eleqedar bibîne. Şablonên ku îzahên wan hene îhtîmal e ku bi edîtorê dîtbarî re baş bixebitin.", "visualeditor-dialog-transclusion-wikitext": "Wîkînivîs", "visualeditor-dialogbutton-media-tooltip": "Wêne û medya", "visualeditor-dialogbutton-template-tooltip": "Şablon", - "visualeditor-editsummary": "Tiştê ku te guhart rave bike", + "visualeditor-editsummary": "Îzah bike te çi guhart", "visualeditor-educationpopup-dismiss": "Baş e, min fêhm kir", "visualeditor-feedback-defaultmessage": "URL: $1", "visualeditor-formatdropdown-format-mw-heading1": "Sernavê rûpelê", @@ -142,7 +140,7 @@ "visualeditor-linkinspector-button-link-internal": "Li rûpelên daxilî bigere", "visualeditor-linkinspector-educationpopup-title": "Girêdan", "visualeditor-linkinspector-illegal-title": "Sernavê rûpelê ê nederbasbar", - "visualeditor-linkinspector-invalid-external": "URL-yeke temamî binivîsin, mînak: https://minak.org", + "visualeditor-linkinspector-invalid-external": "URL-yeke temamî binivîsin, nimûne: https://nimune.org", "visualeditor-linknodeinspector-title": "Girêdanê hêsan", "visualeditor-magiclinknodeinspector-title-isbn": "Girêdana ISBNê", "visualeditor-magiclinknodeinspector-title-pmid": "Girêdana PMIDê", diff --git a/i18n/ve-mw/ky.json b/i18n/ve-mw/ky.json index cff465d2f3..24e8142c14 100644 --- a/i18n/ve-mw/ky.json +++ b/i18n/ve-mw/ky.json @@ -23,10 +23,12 @@ "visualeditor-autosave-modified-prompt-accept": "Түзөтүүнү улантуу", "visualeditor-autosave-modified-prompt-reject": "Жаңыдан түзөтүү", "visualeditor-backbutton-tooltip": "Артка кайтуу", + "visualeditor-ca-createlocaldescriptionsource": "Жергиликтүү сыпаттаманы кошуу", "visualeditor-ca-createsource": "Булакты түзүү", "visualeditor-ca-editsource": "Булагын түзөтүү", "visualeditor-ca-editsource-section": "булагын түзөтүү", "visualeditor-categories-tool": "Категориялар", + "visualeditor-changedesc-mwtransclusion": "Калыптын параметрлери өзгөртүлдү", "visualeditor-desc": "МедиаВикинин визуалдык түзөткүчү", "visualeditor-descriptionpagelink": "Project:Визуалдык түзөткүч", "visualeditor-dialog-media-alttext-section": "Альтернативалуу текст", @@ -42,7 +44,6 @@ "visualeditor-dialog-media-info-meta-artist": "Автор: $1", "visualeditor-dialog-media-info-moreinfo": "Толук маалымат", "visualeditor-dialog-media-info-readmore": "Толук маалымат", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "$1 жүктөлгөн", "visualeditor-dialog-media-page-advanced": "Кошумча", "visualeditor-dialog-media-page-general": "Негизги", @@ -70,11 +71,13 @@ "visualeditor-dialog-meta-languages-link-label": "Байланыштырылган барак", "visualeditor-dialog-meta-languages-name-label": "Тил", "visualeditor-dialog-meta-languages-section": "Тилдер", - "visualeditor-dialog-meta-settings-displaytitle": "Көрсөтүүлүчү аталыш", + "visualeditor-dialog-meta-settings-displaytitle": "Көрсөтүлүүчү аталыш", "visualeditor-dialog-meta-settings-hiddencat-label": "Жашыруун категория", + "visualeditor-dialog-meta-settings-index-default": "Демейки", "visualeditor-dialog-meta-settings-index-disable": "Жок", "visualeditor-dialog-meta-settings-index-force": "Ооба", "visualeditor-dialog-meta-settings-label": "Барактын параметрлери", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Демейки", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Жок", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Ооба", "visualeditor-dialog-meta-settings-redirect-label": "Бул баракты төмөнкү баракка багыттоо:", @@ -107,20 +110,22 @@ "visualeditor-dialog-transclusion-filter-show-all": "Баарын көрсөтүү", "visualeditor-dialog-transclusion-loading": "Жүктөлүүдө...", "visualeditor-dialog-transclusion-no-template-data-description": "Бул калыпта [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] жок болгондуктан, параметрлер [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters автоматтык түрдө түзүлдү]. Натыйжада калыптын жана анын параметрлеринин сыпаттамасы жок. Керектүү маалымат [[$1|калыптын барагында]] болушу мүмкүн.", - "visualeditor-dialog-transclusion-no-template-description": "«$1» калыбынын сыпаттамасы жок, бирок [[$2|калыптын барагында]] керектүү маалымат болушу мүмкүн.", + "visualeditor-dialog-transclusion-no-template-description": "\"$1\" калыбынын сыпаттамасы жок, бирок [[$2|калыптын барагында]] керектүү маалымат болушу мүмкүн.", + "visualeditor-dialog-transclusion-param-default": "Демейки: $1", "visualeditor-dialog-transclusion-param-example-long": "Мисал: $1", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Калып табуу", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Артка кайтуу", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Баары бир улантуу", "visualeditor-dialog-transclusion-title-insert-template": "Калыпты кошуу", "visualeditor-dialog-transclusion-title-edit-known-template": "Түзөтүү: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Калыптын мазмуну", "visualeditor-dialog-transclusion-template-search": "Калып издөө", "visualeditor-dialog-transclusion-template-search-help": "Аныктоочу сөздү издөө аркылуу керек калыпты табыңыз. Сыпаттамасы бар калыптар визуалдык түзөткүч менен жакшыраак иштейт.", "visualeditor-dialog-transclusion-wikitext": "Викитекст", "visualeditor-dialogbutton-media-tooltip": "Медиа", "visualeditor-dialogbutton-template-tooltip": "Калып", "visualeditor-editnotices-tooltip": "Эскертме", - "visualeditor-editsummary": "Өзгөрткөнүңүздү түшүндүрүп бериңиз", + "visualeditor-editsummary": "Түзөтүүңүздү түшүндүрүп бериңиз", "visualeditor-educationpopup-dismiss": "Макул, түшүндүм", "visualeditor-expandable-more": "Көбүрөөк", "visualeditor-formatdropdown-format-mw-heading1": "Барактын аталышы", @@ -147,7 +152,7 @@ "visualeditor-meta-tool": "Параметрлер", "visualeditor-mweditmode-tooltip": "Башка түзөткүчтү колдонуу", "visualeditor-mweditmodesource-tool-current": "Булакты түзөтүү", - "visualeditor-mweditmodeve-showagain": "Бул билдирүү кайра көрсөтүлбөсүн", + "visualeditor-mweditmodeve-showagain": "Бул билдирме кайра көрсөтүлбөсүн", "visualeditor-mweditmodeve-tool-current": "Визуалдык түзөтүү", "visualeditor-mweditmodeve-tool-unavailable": "Бул жерде визуалдык түзөтүү колдонулбайт", "visualeditor-mweditmodewt-popup-body": "Каалаган убакта бул баскычты чыкылдатып, булакты түзөтүүгө кайта аласыз.", @@ -172,6 +177,7 @@ "visualeditor-mwsignature-tool": "Кол тамгаңыз", "visualeditor-preference-tabs": "Түзөтүү режими:", "visualeditor-rebase-client-export": "Экспорттоо", + "visualeditor-rebase-client-export-start": "Экспорттоо…", "visualeditor-rebase-client-import": "Импорттоо", "visualeditor-rebase-client-import-name": "Барактын аталышы", "visualeditor-redirect-description": "«$1» барагына багыттама", diff --git a/i18n/ve-mw/lad.json b/i18n/ve-mw/lad.json index 9fd634ee42..e5163a5d38 100644 --- a/i18n/ve-mw/lad.json +++ b/i18n/ve-mw/lad.json @@ -2,12 +2,13 @@ "@metadata": { "authors": [ "Universal Life", - "WikiiiTranslator" + "WikiiiTranslator", + "Maor X" ] }, "visualeditor-ca-createlocaldescriptionsource": "Agregar deskripsión local", "visualeditor-ca-createsource": "Criar fuente", - "visualeditor-ca-editsource": "Trocar el manadero", - "visualeditor-ca-editsource-section": "trocar el manadero", + "visualeditor-ca-editsource": "Trokar el manadero", + "visualeditor-ca-editsource-section": "trokar el manadero", "visualeditor-descriptionpagelink": "Project:Editor visual" } diff --git a/i18n/ve-mw/lb.json b/i18n/ve-mw/lb.json index 0ea5d5fb5d..a4b81468d1 100644 --- a/i18n/ve-mw/lb.json +++ b/i18n/ve-mw/lb.json @@ -3,6 +3,7 @@ "authors": [ "Autokrator", "Chorobek", + "GilPe", "Les Meloures", "McDutchie", "Robby", @@ -37,34 +38,37 @@ "visualeditor-autosave-not-recovered-title": "D'Restauratioun vun Ärer Ännerung huet net funktionéiert", "visualeditor-autosave-recovered-text": "Är net gespäichert Ännerunge goufen automatesch restauréiert.", "visualeditor-autosave-recovered-title": "Ännerunge restauréiert", - "visualeditor-backbutton-tooltip": "Zréck goen", - "visualeditor-ca-createlocaldescriptionsource": "Quell vun der lokaler Beschreiwung derbäisetzen", + "visualeditor-backbutton-tooltip": "Zeréck goen", + "visualeditor-ca-createlocaldescriptionsource": "Lokale Beschreiwungsquelltext derbäisetzen", "visualeditor-ca-createsource": "Quell uleeën", - "visualeditor-ca-editlocaldescriptionsource": "Quell vun der lokaler Beschreiwung änneren", + "visualeditor-ca-editlocaldescriptionsource": "Lokale Beschreiwungsquelltext änneren", "visualeditor-ca-editsource": "Quelltext änneren", "visualeditor-ca-editsource-section": "Quelltext änneren", + "visualeditor-ca-editsource-section-hint": "Quelltext vum Abschnitt änneren: $1", "visualeditor-categories-tool": "Kategorien", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Sortéierschlëssel vu(n) $1 op $2 geännert", + "visualeditor-changedesc-mwcategory-sortkey-set": "Sortéierschlëssel op $1 gesat", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Sortéierschlëssel $1 ewechgeholl", "visualeditor-changedesc-mwredirect": "Zil vun der Viruleedung vu(n) $1 op $2 geännert", "visualeditor-changedesc-mwtransclusion": "Parametere vun der Schabloun geännert", "visualeditor-desc": "Visuellen Editeur fir MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", "visualeditor-dialog-extension-abandonedit": "Sidd Dir sécher, datt Dir dësen Dialog zoumaache wëllt ouni Är Ännerungen ze späicheren?", - "visualeditor-dialog-media-alttext-section": "Alternativen Text", + "visualeditor-dialog-media-alttext-checkbox": "D'Beschrëftung als Alternativtext benotzen", + "visualeditor-dialog-media-alttext-section": "Alternativtext", "visualeditor-dialog-media-alttext-section-help": "Dir kënnt dëst benotze fir eng Text-Beschreiwung ze schreiwe fir Leit déi d'Element net kënne gesinn. D'Beschreiwung soll duergoe fir datt si den Zweck an d'Informatioun vum Medien-Element verstinn. Dëst ass vital fir blann Benotzer an aner Leit, déi Screen-Reader-Software oder Browseren déi just Text duerstellen, benotzen.", "visualeditor-dialog-media-change-image": "Bild änneren", "visualeditor-dialog-media-choose-image": "Dëst Bild benotzen", "visualeditor-dialog-media-content-description-link": "(Beschreiwungssäit)", "visualeditor-dialog-media-content-filename": "Numm vum Fichier", "visualeditor-dialog-media-content-section": "Beschrëftung", - "visualeditor-dialog-media-goback": "Zréck", + "visualeditor-dialog-media-goback": "Zeréck", "visualeditor-dialog-media-info-artist": "Eropgeluede vum $1", "visualeditor-dialog-media-info-audiofile": "Audiofichier", "visualeditor-dialog-media-info-created": "Ugeluecht: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Auteur: $1", "visualeditor-dialog-media-info-moreinfo": "Méi Informatiounen", "visualeditor-dialog-media-info-readmore": "Liest méi", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Eropgelueden: $1", "visualeditor-dialog-media-page-advanced": "Erweidert", "visualeditor-dialog-media-page-general": "Allgemeng", @@ -87,69 +91,82 @@ "visualeditor-dialog-meta-categories-addcategory-label": "Eng Kategorie op dës Säit derbäisetzen", "visualeditor-dialog-meta-categories-category": "Kategorie", "visualeditor-dialog-meta-categories-data-label": "Kategorien", - "visualeditor-dialog-meta-categories-defaultsort-help": "Dir kënnt iwwerschreiwe wéi dës Säit zortéiert gëtt, wa se an enger Kategorie ugewise gëtt, andeems Dir en aneren Index setzt fir mat ze sortéieren. Dëst gëtt dacks benotzt fir Säiten iwwer Leit ze weisen nom Familljennumm, awer hire Virnumm gëtt als éischt gewisen.", - "visualeditor-dialog-meta-categories-defaultsort-label": "Dës Säit standardméisseg zortéiere mat", + "visualeditor-dialog-meta-categories-defaultsort-help": "Dir kënnt iwwerschreiwen, wéi dës Säit sortéiert gëtt, wa se an enger Kategorie ugewise gëtt, andeems Dir en aneren Index fir ze sortéiere setzt. Dat gëtt dacks gemaach fir Säiten iwwer Persounen nom Familljennumm ze sortéieren, obwuel an hirem Numm de Virnumm als éischt ugewise gëtt.", + "visualeditor-dialog-meta-categories-defaultsort-label": "Dës Säit standardméisseg sortéieren als", "visualeditor-dialog-meta-categories-hidden": "Dës Kategorie ass esou agestallt datt se net op Säite gewise gëtt op déi se dobäigesat gëtt.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Verstoppt Kategorien", - "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Kategorie déi dorop passen", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Kategorien, déi dorop passen", "visualeditor-dialog-meta-categories-input-movecategorylabel": "Dës Kategorie heihi réckelen", "visualeditor-dialog-meta-categories-input-newcategorylabel": "Nei Kategorie", "visualeditor-dialog-meta-categories-input-placeholder": "Eng Kategorie derbäisetzen", "visualeditor-dialog-meta-categories-missing": "Dës Kategorie huet keng Beschreiwungssäit.", "visualeditor-dialog-meta-categories-options": "Optiounen", "visualeditor-dialog-meta-categories-section": "Kategorien", - "visualeditor-dialog-meta-categories-sortkey-label": "Dës Säit zortéiere wéi wa se esou géif heeschen", + "visualeditor-dialog-meta-categories-sortkey-label": "Dës Säit sortéieren, wéi wa se esou géif heeschen", "visualeditor-dialog-meta-languages-code-label": "Sproochecode", "visualeditor-dialog-meta-languages-label": "Sproochen", "visualeditor-dialog-meta-languages-link-label": "Verlinkt Säit", "visualeditor-dialog-meta-languages-name-label": "Sprooch", "visualeditor-dialog-meta-languages-readonlynote": "Dëst ass eng Lëscht vu Säiten an anere Sproochen déi mat dëser verlinkt sinn; déi kënne fir den Ament nëmmen am Quellmodus oder op Wikidata geännert ginn.", "visualeditor-dialog-meta-languages-section": "Sproochen", - "visualeditor-dialog-meta-settings-displaytitle": "Titel dee gewise gëtt", - "visualeditor-dialog-meta-settings-hiddencat-help": "Dir kënnt verhënneren datt dës Kategorie an der Lëscht vun de Kategorien op Membersäite gewise gëtt. Dat ass nëtzlech fir Kategorien déi fir Auteure vun Interessi sinn awer net fir déi meescht Lieser, zum Beispill Säiten op deenen eng Illustratioun feelt.", + "visualeditor-dialog-meta-settings-displaytitle": "Titel, deen ugewise gëtt", + "visualeditor-dialog-meta-settings-displaytitle-help": "Dir kënnt iwwerschreiwen, wéi den Titel vun dëser Säit ugewise gëtt, andeems Dir eng aner Bezeechnung fir unzeweise festleet.", + "visualeditor-dialog-meta-settings-hiddencat-help": "Dir kënnt verhënneren, datt dës Kategorie an der Lëscht vun de Kategorien op Membersäiten ugewise gëtt. Dat ass nëtzlech fir Kategorien, déi fir Auteure vun Interessi sinn, awer net fir déi meescht Lieser, zum Beispill Säiten, op deenen eng Illustratioun feelt.", "visualeditor-dialog-meta-settings-hiddencat-label": "Verstoppt Kategorie", "visualeditor-dialog-meta-settings-index-default": "Standard", - "visualeditor-dialog-meta-settings-index-disable": "Neen", + "visualeditor-dialog-meta-settings-index-disable": "Nee", "visualeditor-dialog-meta-settings-index-force": "Jo", - "visualeditor-dialog-meta-settings-index-label": "Dës Säit vu Suchmaschinnen indexéiere loossen", + "visualeditor-dialog-meta-settings-index-help": "Dir kënnt Sichmaschinne forcéieren, dës Säit an hire relevante Resultater opzelëschten, oder se forcéieren, dat net ze maachen. Dës Optioun huet keen Afloss op d'säitenintern Sich.", + "visualeditor-dialog-meta-settings-index-label": "Dës Säit vu Sichmaschinnen indexéiere loossen", "visualeditor-dialog-meta-settings-label": "Astellunge vun der Säit", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Standard", - "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Neen", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Nee", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Jo", "visualeditor-dialog-meta-settings-newsectioneditlink-label": "En Tab op dëser Säit weisen fir en neien Abschnitt derbäizesetzen", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Inhalt Tëscht de Sproochvarianten net ëmwandelen", - "visualeditor-dialog-meta-settings-noeditsection-help": "Dir kënnt verhënneren datt Ännerungslinken nieft all Abschnitt gewise ginn an deene spezielle Fäll wou dat ubruecht ass.", - "visualeditor-dialog-meta-settings-noeditsection-label": "D'Linken 'Änneren' niewent all Iwwerschrëft op dëser Säit ausschalten.", - "visualeditor-dialog-meta-settings-nogallery-help": "Dir kënnt verhënneren datt dës Kategorie Fichieren déi do dra sinn als Galerie weist, wann dat net ubruecht ass.", + "visualeditor-dialog-meta-settings-noeditsection-help": "Dir kënnt verhënneren, datt d'Ännerungslinken nieft all Abschnitt ugewise ginn, fir déi speziell Fäll, wou dat ubruecht ass.", + "visualeditor-dialog-meta-settings-noeditsection-label": "D'Linke fir z'änneren niewent all Iwwerschrëft op dëser Säit ausschalten.", + "visualeditor-dialog-meta-settings-nogallery-help": "Dir kënnt verhënneren, datt dës Kategorie d'Fichieren, déi an hir dra sinn, als Galerie uweist, falls dat net ubruecht ass.", "visualeditor-dialog-meta-settings-nogallery-label": "Galerie desaktivéieren", + "visualeditor-dialog-meta-settings-notitleconvert-help": "Dir kënnt verhënneren, datt den Titel vun dëser Säit automatesch an aner Schrëften ëmgewandelt gëtt.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Titel tëscht de Sproochvarianten net ëmwandelen", - "visualeditor-dialog-meta-settings-redirect-help": "Dir kënnt aus dëser Säit eng Viruleedung maachen, dat ass eng Säit déi Lieser automatesch op eng aner Säit vun dëser Wiki féiert. Dëst ass nëtzlech bei alternativen Nimm oder Konzepter. Wann Dir dat maacht da gesinn d'Lieser den Inhalt vun dëser Säit net.", + "visualeditor-dialog-meta-settings-redirect-help": "Dir kënnt aus dëser Säit eng Viruleedung maachen, d.&nbps;h. eng Säit, déi de Lieser automatesch op eng aner Säit vun dëser Wiki féiert. Dat ass nëtzlech bei falsche Schreifweisen an alternativen Nimm oder Konzepter. Wann Dir dat maacht, da gesinn d'Lieser den Inhalt vun dëser Säit net.", "visualeditor-dialog-meta-settings-redirect-label": "Dës Säit viruleeden op", "visualeditor-dialog-meta-settings-redirect-placeholder": "Zilsäit fir d'Viruleedung", + "visualeditor-dialog-meta-settings-redirect-statichelp": "Dir kënnt verhënneren, datt dës Viruleedung automatesch aktualiséiert gëtt, wann d'Säit, op déi virugeleet gëtt, geréckelt gëtt, fir de seelene Fall, wou dat néideg wier.", "visualeditor-dialog-meta-settings-redirect-staticlabel": "Dës Viruleedung net aktualiséiere wann d'Zilsäit geréckelt gëtt.", "visualeditor-dialog-meta-settings-section": "Astellunge vun der Säit", "visualeditor-dialog-meta-settings-toc-default": "Wann néideg", "visualeditor-dialog-meta-settings-toc-disable": "Ni", "visualeditor-dialog-meta-settings-toc-force": "Ëmmer", + "visualeditor-dialog-meta-settings-toc-help": "Dir kënnt d'Uweise vun engem Inhaltsverzeechnes, dat all Iwwerschrëft op der Säit oplëscht, op Säite mat manner véier Iwwerschrëften erzwéngen oder maachen, datt et guer net ugewise gëtt. Standardméisseg gëtt et ugewisen, wann d'Säit véier oder méi Iwwerschrëften huet.", "visualeditor-dialog-meta-settings-toc-label": "Inhaltsverzeechnes weisen", "visualeditor-dialog-meta-templatesused-noresults": "Keng Schabloune fonnt.", "visualeditor-dialog-meta-title": "Optiounen", "visualeditor-dialog-table-collapsed": "Fir d'éischt zougeklappt", "visualeditor-dialog-table-collapsible": "Aklappbar", "visualeditor-dialog-table-sortable": "Zortéierbar", + "visualeditor-dialog-table-wikitable": "Stiliséiert (wikitable)", "visualeditor-dialog-template-title": "Schabloun", "visualeditor-dialog-transclusion-action-save": "Späicheren", "visualeditor-dialog-transclusion-template-title-nonexistent": "Dës Schabloun gëtt et net.", + "visualeditor-dialog-transclusion-template-title-modifier": "Eng Dokumentatioun vun der Schabloun a [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter Parameter]-Nimm (falls et der gëtt) sinn net disponibel, wa Schabloune mat verschachtelter Syntax oder Modifikatore wéi [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst] geännert ginn.", "visualeditor-dialog-transclusion-template-widget-aria": "Dréckd d'Space-Tast fir d'Schabloun erauszesichen.", "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Dréckt CTrl+Del fir d'Schabloun nat hire Parameteren a Wäerter ze läschen.", "visualeditor-dialog-transclusion-add-wikitext": "Wikitext derbäisetzen", + "visualeditor-dialog-transclusion-add-param-error-alias": "„$1“ gouf schonn als „$2“ derbäigesat. Kuckt wgl. d'Optiounen an der säitlecher Läischt. Dat läit entweeder um Gebrauch vun [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases Aliasen] oder vun [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label Etiketten].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "„$1“ kann net derbäigesat ginn, well de Parameter als [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated vereelzt] markéiert gouf.", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "De Parameter \"$2\" kann net zweemol derbäigesat ginn.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "De Parameter „$2“ ass schonn disponibel fir benotzt ze ginn. Kuckt wgl. d'Optiounen an der säitlecher Läischt.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 ass e verbuedent Zeechen. Huelt et wgl. ewech fir de Parameter derbäizesetzen.", + "visualeditor-dialog-transclusion-add-param-help": "Falls bekannt, gitt [//\nwww.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters ondokumentéier Parameternimm] an. Denkt drun, datt nëmme Parameteren, déi der Schabloun bekannt sinn, en Effekt wäerten hunn. Dir fannt eventuell op der [[$1|Säit vun der Schabloun]] Informatiounen iwwer besteeënd Parameteren.", "visualeditor-dialog-transclusion-add-param-placeholder": "Numm vum Parameter", "visualeditor-dialog-transclusion-add-param-save": "Derbäisetzen", "visualeditor-dialog-transclusion-add-template": "Schabloun derbäisetzen", "visualeditor-dialog-transclusion-add-template-button": "Schabloun derbäisetzen", "visualeditor-dialog-transclusion-add-template-save": "Derbäisetzen", - "visualeditor-dialog-transclusion-add-undocumented-param": "Net dokumentéierte Parameter derbäisetzen", + "visualeditor-dialog-transclusion-add-undocumented-param": "Ondokumentéierte Parameter derbäisetzen", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Zréck bei d'Sich goen? Är Ännerunge gi verluer an dat kann net réckgängeg gemaach ginn.", "visualeditor-dialog-transclusion-close-confirmation-prompt": "Den Editeur vun der Schabloun zoumaachen? Är Ännerunge gi verluer a kënnen net méi restauréiert ginn.", "visualeditor-dialog-transclusion-collapse-options": "Optioune verstoppen", "visualeditor-dialog-transclusion-confirmation-discard": "Ännerungen ignoréieren", @@ -163,26 +180,28 @@ "visualeditor-dialog-transclusion-filter-show-all": "All weisen", "visualeditor-dialog-transclusion-filter-title": "No Parametere siche fir $1", "visualeditor-dialog-transclusion-help-title": "Ënnerstëtzung fir d'Ännere vu Schablounen", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Hëllef fir Schablounen z'änneren]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Tastekombinatiounen]", "visualeditor-dialog-transclusion-deprecated-parameter": "Vereelzt Feld", "visualeditor-dialog-transclusion-deprecated-parameter-description": "Feld ass vereelzt. $1", "visualeditor-dialog-transclusion-loading": "Lueden...", - "visualeditor-dialog-transclusion-no-template-data-description": "Dëser Schabloun feelen [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters Donnéeë vun de Parameter], an d'Parameter waren [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters autogenereréiert]. Als Resultat feelen der Schabloun hir Parameteren Beschreiwungen. Et kéint zousätzlech Informatiounen op der [[$1|Schabloune Säit]] ginn.", - "visualeditor-dialog-transclusion-no-template-description": "D'Schabloun \"$1\" huet nach keng Beschreiwung, awer e puer Informatioune kënnen op der [[$2|Säit vun der Schabloun]] disponibel sinn.", + "visualeditor-dialog-transclusion-no-template-data-description": "Bei dëser Schabloun feelen d'[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] an hir Parametere goufen [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters automatesch generéiert]. Dohier feelen d'Beschreiwunge fir d'Schabloun an hir Parameteren. Méiglecherweis gëtt et zousätzlech Informatiounen op der [[$1|Schablounesäit]].", + "visualeditor-dialog-transclusion-no-template-description": "D'Schabloun „$1“ huet nach keng Beschreiwung, awer et kéinte sech e puer Informatiounen op der [[$2|Säit vun der Schabloun]] fannen.", "visualeditor-dialog-transclusion-no-template-parameters": "Dës Schabloun huet keng dokumentéiert Parameteren a ka geduecht si fir ouni si benotzt ze ginn.", "visualeditor-dialog-transclusion-param-default": "Standard: $1", "visualeditor-dialog-transclusion-param-example-long": "Beispill: $1", "visualeditor-dialog-transclusion-param-selection-aria-label": "Parameteren an $1", - "visualeditor-dialog-transclusion-param-undocumented": "(Net dokumentéierte Parameter)", + "visualeditor-dialog-transclusion-param-undocumented": "(ondokumentéierte Parameter)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Schabloun fannen", "visualeditor-dialog-transclusion-required-parameter": "Obligatorescht Feld", "visualeditor-dialog-transclusion-required-parameter-description": "Feld ass obligatoresch.", - "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Zréck goen", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Zeréck goen", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Trotzdeem virufueren", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Et {{PLURAL:$1|feelt een obligatoresch Feld|feele(n) $1 obligatoresch Felder}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Sidd Dir sécher datt Dir virufuere wëllt ouni {{PLURAL:$2|d'Felder}} $1 auszefëllen?", "visualeditor-dialog-transclusion-see-template": "Schabloune gi vu Benotzer generéiert an hunn ënner Ëmstänn keng komplett Beschreiwung. Et gëtt eventuell zousätzlech Informatiounen op der [[$2|Säit vun der Schabloun]].", - "visualeditor-dialog-transclusion-title-insert-template": "Eng Schabloun drasetzen", - "visualeditor-dialog-transclusion-title-insert-known-template": "Drasetzen: $1", + "visualeditor-dialog-transclusion-title-insert-template": "Eng Schabloun asetzen", + "visualeditor-dialog-transclusion-title-insert-known-template": "Asetzen: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Änneren: $1", "visualeditor-dialog-transclusion-title-edit-transclusion": "Inhalt vun der Schabloun", "visualeditor-dialog-transclusion-template-search": "Sich no Schablounen", @@ -196,7 +215,7 @@ "visualeditor-editingtabdialog-title": "Ännerungs-Tabs", "visualeditor-editnotices-tool": "{{PLURAL:$1|Eng Notiz|$1 Notizen}}", "visualeditor-editnotices-tooltip": "Ännerungsnotizen", - "visualeditor-editsummary": "Beschreift wat Dir geännert hutt", + "visualeditor-editsummary": "Beschreift, wat Dir geännert hutt", "visualeditor-editsummary-characters-remaining": "D'Zuel vun den Zeechen déi nach iwwreg sinn", "visualeditor-educationpopup-dismiss": "OK, verstan", "visualeditor-expandable-less": "Manner", @@ -210,6 +229,7 @@ "visualeditor-formatdropdown-format-mw-heading6": "Ënneriwwerschrëft 4", "visualeditor-generating-wikitext-progress": "Wikitext gëtt generéiert", "visualeditor-includes-includeonly": "Inhalt deen nëmmen dragesat gëtt", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Gitt méi iwwer partiell Transklusioun gewuer]", "visualeditor-languages-tool": "Sproochen", "visualeditor-linkinspector-button-link-external": "Externe Site", "visualeditor-linkinspector-button-link-internal": "Op Interne Säite sichen", @@ -218,7 +238,7 @@ "visualeditor-linkinspector-convert-link-rfc": "An en RFC-Link ëmwandelen", "visualeditor-linkinspector-educationpopup-text": "Verlinkt wichteg Wierder mat anere Wiki-Artikelen oder esouguer mat aneren Internetsäiten. Et wäert de Lieser hëllefen de Kontext ze verstoen.", "visualeditor-linkinspector-educationpopup-title": "Linken", - "visualeditor-linkinspector-illegal-title": "Net valabele Säitentitel", + "visualeditor-linkinspector-illegal-title": "Ongültege Säitentitel", "visualeditor-linkinspector-invalid-external": "Gitt eng komplett URL un, z. B. https://example.org", "visualeditor-linknodeinspector-add-label": "Etikett dobäisetzen", "visualeditor-linknodeinspector-title": "Einfache Link", @@ -259,18 +279,21 @@ "visualeditor-mwgallerydialog-search-button-label": "Neit Bild derbäisetzen", "visualeditor-mwgallerydialog-show-filename-field-label": "Nimm vun de Fichiere weisen", "visualeditor-mwgallerydialog-styles-field-label": "CSS-Stiler", + "visualeditor-mwgallerydialog-styles-input-placeholder": "CSS-Reegelen, semikolongetrennt", "visualeditor-mwgallerydialog-title": "Gallerie", "visualeditor-mwgallerydialog-widths-field-label": "Breet vum Bild", "visualeditor-mwgallerydialog-widths-input-placeholder": "Standardbreet: $1 Pixel", + "visualeditor-mwpredialog-title": "Virformatéierte Kloertext", "visualeditor-mwsignature-tool": "Är Ënnerschrëft", "visualeditor-preference-visualeditor": "De visuellen Editeur aktivéieren", - "visualeditor-preference-newwikitexteditor-help": "Dëst gëtt heiansdo 'Wikitext-Editeur 2017' genannt.", + "visualeditor-preference-newwikitexteditor-help": "Dëst gëtt heiansdo „Wikitext-Editeur 2017“ genannt.", "visualeditor-preference-tabs": "Ännerungsmodus:", "visualeditor-preference-tabs-multi-tab": "Déi zwee Ännerungs-Tabs weisen", - "visualeditor-preference-tabs-prefer-ve": "De visuellen Editeur ëmmer benotze wann et méiglech ass", + "visualeditor-preference-tabs-prefer-ve": "De visuellen Editeur ëmmer benotzen, wann et méiglech ass", "visualeditor-preference-tabs-prefer-wt": "Mir ëmmer de Wikitext-Editeur proposéieren", "visualeditor-preference-tabs-remember-last": "Mäi leschten Auteur verhalen", "visualeditor-preference-collab-label": "Kollaborativ änneren", + "visualeditor-preference-collab-description": "Invitéiert aner Benotzer fir bei Ärer Ännerungssessioun am Visuellen Editeur matzemaachen.", "visualeditor-rebase-client-export": "Exportéieren", "visualeditor-rebase-client-export-start": "Exportéieren...", "visualeditor-rebase-client-import": "Importéieren", @@ -290,7 +313,7 @@ "visualeditor-savedialog-label-review-good": "Zréck op de Formulaire fir ze späicheren", "visualeditor-savedialog-label-save-short": "Späicheren", "visualeditor-savedialog-label-save-short-start": "Späicheren...", - "visualeditor-savedialog-review-nosummary": "Kee Resumé vun der Ännerung", + "visualeditor-savedialog-review-nosummary": "Kee Resümmee vun der Ännerung", "visualeditor-savedialog-review-visual": "Visuell", "visualeditor-savedialog-review-wikitext": "WikiText", "visualeditor-savedialog-title-conflict": "Konflikt", @@ -303,7 +326,7 @@ "visualeditor-special-characters-group-other": "Dacks benotzt", "visualeditor-templatesused-tool": "Benotzt Schablounen", "visualeditor-title-error": "Net valabelen Titel.", - "visualeditor-toload": "Den Editeur gëtt elo gelueden. Wann Dir dëse Message no e puer Sekonnen nach gesitt, da [$1 luet d'Säit wgl. nach eng Kéier].", + "visualeditor-toload": "Den Editeur gëtt elo gelueden. Wann Dir dëse Message no e puer Sekonnen nach gesitt, da [$1 luet d'Säit wgl. nei].", "visualeditor-tooltip-non-breaking-space": "Espace ouni Zeilenëmbroch", "visualeditor-version-label": "Versioun", "visualeditor-wikitext-progress": "Wikitext ëmwandelen", diff --git a/i18n/ve-mw/lez.json b/i18n/ve-mw/lez.json index 11b8aabc73..7608e9d309 100644 --- a/i18n/ve-mw/lez.json +++ b/i18n/ve-mw/lez.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Migraghvi", "Soul Train" ] diff --git a/i18n/ve-mw/lg.json b/i18n/ve-mw/lg.json index 2f8d7ac1cd..9f20643514 100644 --- a/i18n/ve-mw/lg.json +++ b/i18n/ve-mw/lg.json @@ -2,9 +2,12 @@ "@metadata": { "authors": [ "Ainali", - "Selwanga" + "Selwanga", + "Ssemmanda will" ] }, + "visualeditor-ca-editsource": "Omuko gwa Edit Source", + "visualeditor-ca-editsource-section": "kolera mu edit source", "visualeditor-dialog-media-page-advanced": "Ekyawaggulu", "visualeditor-dialog-media-page-general": "Ekyawamu", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Kale" diff --git a/i18n/ve-mw/lij.json b/i18n/ve-mw/lij.json index 98ec11e729..3f3cce4ab4 100644 --- a/i18n/ve-mw/lij.json +++ b/i18n/ve-mw/lij.json @@ -8,269 +8,356 @@ ] }, "collabpad-doctitle": "CollabPad: $1", - "collabpad-import-subtitle": "Importou da $1", + "collabpad-import-subtitle": "Inportòu da $1", "collabpad": "CollabPad", - "tooltip-ca-ve-edit": "Modìfica quésta pàgina", - "tooltip-ca-editsource": "Modiffica o wikitesto de questa paggina", - "tooltip-ca-createsource": "Crea o coddiçe vivagna de questa paggina", - "visualeditor-advancedsettings-tool": "Impostassioin avansæ", - "visualeditor-autosave-modified-prompt-accept": "Repiggia a modificâ", - "visualeditor-autosave-modified-prompt-message": "Sta paggina a l'è stæta modificâ doppo che ti l'hæ caregâ. {{GENDER:|Ti vœu}} repigiâ a modiffica da vegia verscion ò ti vœu inandiâ 'na nœuva modiffica de l'urtima verscion da paggina?", - "visualeditor-autosave-modified-prompt-reject": "Inandia 'na nœuva modiffica", - "visualeditor-autosave-modified-prompt-title": "Repigiâ a {{GENDER:|to}} modiffica?", - "visualeditor-autosave-not-recovered-text": "No s'è posciuo recuperâ i cangi che no ti t'aivi sarvou.", - "visualeditor-autosave-not-recovered-title": "Recuppero di cangi falio", - "visualeditor-autosave-recovered-text": "E to modiffiche non sarvæ son stæte aotomatticamente ripristinæ.", - "visualeditor-autosave-recovered-title": "Modiffiche ripristinæ", - "visualeditor-backbutton-tooltip": "Torna inderê", + "tooltip-ca-ve-edit": "Modìfica sta pàgina chi", + "tooltip-ca-ve-edit-local": "Modìfica a descriçión locâle de pàgina", + "tooltip-ca-ve-create": "Crêa sta pàgina chi", + "tooltip-ca-ve-create-local": "Crêa a descriçión locâle de pàgina", + "tooltip-ca-editsource": "Modìfica o wikitèsto de sta pàgina chi", + "tooltip-ca-editsource-local": "Modifìca o còdiçe vivàgna da pàgina de descriçión locâle", + "tooltip-ca-createsource": "Crêa o còdiçe vivàgna de sta pàgina chi", + "tooltip-ca-createsource-local": "Crêa o còdiçe vivàgna da pàgina de descriçión locâle", + "visualeditor-advancedsettings-tool": "Inpostaçioìn avansæ", + "visualeditor-annotations-default-description": "Sta pàrte da pàgina a l'é inte 'n intervàllo d'anotaçión", + "visualeditor-annotations-default-end": "Fìn de l'intervàllo d'anotaçión", + "visualeditor-annotations-default-start": "Coménso de l'intervàllo d'anotaçión", + "visualeditor-annotations-extended-documentation": "St'intervàllo d'anotaçión o l'é stæto estéizo perché o contegnûo ch'o l'à drénto o no l'êa bén aniòu. Se conscìdera de fâ de mòddo che o contegnûo anotòu o ségge bén aniòu avànti de modificâlo; in câxo contrâio, in intervàllo ciù grànde de quéllo prevìsto o poriéiva êse anotòu.", + "visualeditor-autosave-modified-prompt-accept": "Repìggia a modìfica", + "visualeditor-autosave-modified-prompt-message": "Sta pàgina chi a l'é stæta modificâ dòppo che ti l'æ caregâ. {{GENDER:|Ti veu}} repigiâ a modìfica da vêgia versción ò ti veu inandiâ 'na nêuva modìfica de l'ùrtima versción da pàgina?", + "visualeditor-autosave-modified-prompt-reject": "Inàndia 'na nêuva modìfica", + "visualeditor-autosave-modified-prompt-title": "Repigiâ a {{GENDER:|tò}} modìfica?", + "visualeditor-autosave-not-recovered-text": "No s'é posciûo repigiâ i càngi che no ti t'àivi sarvòu.", + "visualeditor-autosave-not-recovered-title": "Repìggio di càngi falîo", + "visualeditor-autosave-recovered-text": "E tò modìfiche no sarvæ són stæte ripristinæ in outomàtico.", + "visualeditor-autosave-recovered-title": "Modìfiche ripristinæ", + "visualeditor-backbutton-tooltip": "Tórna inderê", "visualeditor-ca-createlocaldescriptionsource": "Azónzi descriçión locâle con wikitèsto", "visualeditor-ca-createsource": "Crêa wikitèsto", - "visualeditor-ca-editlocaldescriptionsource": "Modiffica o wikitesto da descrission locale", + "visualeditor-ca-editlocaldescriptionsource": "Modìfica o wikitèsto da descriçión locâle", "visualeditor-ca-editsource": "Modìfica wikitèsto", "visualeditor-ca-editsource-section": "modìfica wikitèsto", - "visualeditor-categories-tool": "Categorie", - "visualeditor-changedesc-mwlanguagevariant": "Wikitesto da variante da lengoa modificou", - "visualeditor-changedesc-mwredirect": "Destinassion do rendrisso modificâ da $1 a $2", - "visualeditor-changedesc-mwtransclusion": "Parammetri do modello cangiæ", - "visualeditor-desc": "Editor vixivo pe MediaWiki", + "visualeditor-ca-editsource-section-hint": "Modìfica o còdiçe vivàgna da seçión: $1", + "visualeditor-categories-tool": "Categorîe", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Ciâve d'órdine cangiâ da $1 a $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Ciâve d'órdine cangiâ a $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Ciâve d'órdine no çernûa pe $1", + "visualeditor-changedesc-mwlanguagevariant": "Wikitèsto da variànte da léngoa modificòu", + "visualeditor-changedesc-mwredirect": "Destinaçión do rindirìsso modificâ da $1 a $2", + "visualeditor-changedesc-mwtransclusion": "Paràmetri do template cangiæ", + "visualeditor-desc": "Editor vixîvo pe MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", - "visualeditor-dialog-media-alttext-section": "Scrito alternativo", - "visualeditor-dialog-media-alttext-section-help": "Questo ti o pœu dœuviâ pe scrive 'na descrission pe chi n'ariesce a vixoalizâ l'elemento. A descrission a doviæ ese assæ da permettighe a comprenscion do scopo e e informassioin fornie da l'elemento. Questo o l'è de vitâ importansa pe-i utenti che no ghe veddan e pe-e person-e ch'adœuvian un software de lettua schermo ò di navegatoî che mostran solo o scrito.", - "visualeditor-dialog-media-change-image": "Cangia inmaggine", - "visualeditor-dialog-media-choose-image": "Dœuvia questa inmaggine", - "visualeditor-dialog-media-content-description-link": "(pagina de descrission)", - "visualeditor-dialog-media-content-filename": "Nomme do file", - "visualeditor-dialog-media-content-section": "Didascalia", - "visualeditor-dialog-media-content-section-help": "Ti pœu dœuviâ sta fonsion pe mostrâ 'n'etichetta ch'a compâ rente a l'elemento pe tutti i lettoî. A l'è dœuviâ soventi pe spiegâ perché l'elemento o pertocca a-o contesto into quæ o l'è mostrou. A doviæ ese curta e informativa.", + "visualeditor-dialog-extension-abandonedit": "Ti t'ê segûo che ti veu serâ sto barcón de diàlogo sénsa aplicâ e modìfiche?", + "visualeditor-dialog-media-alttext-checkbox": "Dêuvia a didascalîa cómme tèsto alternatîvo", + "visualeditor-dialog-media-alttext-section": "Scrîto alternatîvo", + "visualeditor-dialog-media-alttext-section-help": "Ti peu dêuviâ sto fæto chi pe scrîve 'na descriçión pe chi n'ariêsce a vizoalizâ l'eleménto. A descriçión a doviæ êse asæ da permétighe a conprensción do fìn e de informaçioìn fornîe da l'eleménto. Quésto o l'é de gràn inportànsa pe-i uténti che no ghe véddan e pe-e persónn-e ch'adêuvian in software de letûa schèrmo ò di navegatoî che móstran sôlo o scrîto.", + "visualeditor-dialog-media-change-image": "Càngia inmàgine", + "visualeditor-dialog-media-choose-image": "Dêuvia st'inmàgine chi", + "visualeditor-dialog-media-content-description-link": "(pàgina de descriçión)", + "visualeditor-dialog-media-content-filename": "Nómme do file", + "visualeditor-dialog-media-content-section": "Didascalîa", + "visualeditor-dialog-media-content-section-help": "Ti peu dêuviâ sta fonçión chi pe mostrâ 'n'etichétta ch'a conparìsce da-arénte a l'eleménto pe tùtti i letoî. A l'é dêuviâ sovénte pe mostrâ perché l'elemento o pertócca a-o contèsto dond'o l'é mostròu. A doviæ êse cùrta e informatîva.", "visualeditor-dialog-media-goback": "Inderê", - "visualeditor-dialog-media-info-artist": "Caregou da $1", - "visualeditor-dialog-media-info-audiofile": "File aodio", - "visualeditor-dialog-media-info-created": "Creou: $1", - "visualeditor-dialog-media-info-meta-artist": "Artista: $1", - "visualeditor-dialog-media-info-moreinfo": "Urteioî informaçioin", - "visualeditor-dialog-media-info-readmore": "Lezi de ciù", - "visualeditor-dialog-media-info-uploaded": "Caregou: $1", + "visualeditor-dialog-media-info-artist": "Caregòu da $1", + "visualeditor-dialog-media-info-audiofile": "File àodio", + "visualeditor-dialog-media-info-created": "Creòu: $1", + "visualeditor-dialog-media-info-meta-artist": "Outô: $1", + "visualeditor-dialog-media-info-moreinfo": "Ciù informaçioìn", + "visualeditor-dialog-media-info-readmore": "Lêzi de ciù", + "visualeditor-dialog-media-info-uploaded": "Caregòu: $1", "visualeditor-dialog-media-page-advanced": "Avansæ", "visualeditor-dialog-media-page-general": "Generâ", - "visualeditor-dialog-media-position-checkbox": "Agiusta o scrito in gio a questo elemento", - "visualeditor-dialog-media-position-checkbox-help": "Ti pœu fâ aparî st'elemento murtimediâ inte righe do scrito invece de fâlo stâ a galla a bordo paggina, ma ti o doviesci fâ de ræo, dæto che se ti desselession-i questa cazella, se stocca o scorimento do scrito.", - "visualeditor-dialog-media-position-section": "Poxission", - "visualeditor-dialog-media-position-section-help": "Ti pœu impostâ donde fâ aparî questo elemento murtimediâ inta paggina. O l'è dœuviou quarche votta pe evitâ che gh segge 'na riga d'inmaggine tutte da-o mæximo lato da paggina.", - "visualeditor-dialog-media-save": "Sarva", - "visualeditor-dialog-media-search-tab-search": "Çerca", - "visualeditor-dialog-media-search-tab-upload": "Carrega", - "visualeditor-dialog-media-size-section": "Dimenscion inmaggine", - "visualeditor-dialog-media-size-section-help": "Ti poeu impostâ a grandessa de l'elemento murtimediâ inta paggina. Questa a doviæ ese quæxi sempre a dimenscion normâ, da-o momento che 'na dimenscion personalizâ a l'interferisce con l'impaginassion pe-i letoî e a-a rende dizomogennia.", - "visualeditor-dialog-media-title": "Impostassioin file murtimediæ", - "visualeditor-dialog-media-type-border": "Bordo", - "visualeditor-dialog-media-type-frame": "Cornixe", - "visualeditor-dialog-media-type-frameless": "Sensa cornixe", - "visualeditor-dialog-media-type-none": "De baze", - "visualeditor-dialog-media-type-section": "Tipo d'inmaggine", - "visualeditor-dialog-media-type-section-help": "Ti poeu selessionâ comme fâ aparî l'elemento murtimediâ inta paggina. L'è megio fâlo in formato miniatua perch'o segge coerente co-a ciu gran parte di atre paggine.", - "visualeditor-dialog-media-type-thumb": "Miniatua", - "visualeditor-dialog-media-upload": "Carrega", - "visualeditor-dialog-meta-advancedsettings-label": "Impostassioin avansæ", - "visualeditor-dialog-meta-advancedsettings-section": "Impostassioin avansæ", - "visualeditor-dialog-meta-categories-addcategory-label": "Azonzi 'na categoria a sta paggina", - "visualeditor-dialog-meta-categories-category": "Categoria", - "visualeditor-dialog-meta-categories-data-label": "Categorie", - "visualeditor-dialog-meta-categories-defaultsort-help": "Ti peu cangiâ l'orde d'amersamento quande sta paggina a l'è elencâ inte 'na categoria impostando un endexo d'amersamento diferente. Questo s'adoeuvia soventi pe fâ de paggine con di nommi de person-e ordinæ pe cognomme, ma mostrando i tittoli co-o nomme de bateximo davanti.", - "visualeditor-dialog-meta-categories-defaultsort-label": "Ordina sta paggina pe difetto comme", - "visualeditor-dialog-meta-categories-hidden": "Sta categoria a l'è impostâ pe no ese vixibbile inte pagine a-e quæ a l'è azonta.", + "visualeditor-dialog-media-position-checkbox": "Agiùsta o scrîto in gîo a st'eleménto chi", + "visualeditor-dialog-media-position-checkbox-help": "Ti peu fâ aparî st'eleménto multimediâle inte rîghe do scrîto in càngio de fâlo stâ a gàlla a bórdo pàgina, ma ti o doviêsci fâ de ræo, dæto che se ti deseleçiónn-i sta cazélla chi o se stócca o scoriménto do scrîto.", + "visualeditor-dialog-media-position-section": "Poxiçión", + "visualeditor-dialog-media-position-section-help": "Ti peu çèrne dónde fâ aparî st'eleménto multimediâle chi inta pàgina. O l'é dêuviòu quàrche vòtta pe evitâ che ghe ségge 'na rîga d'inmàgine tùtte da-a mæxima pàrte da pàgina.", + "visualeditor-dialog-media-save": "Sàrva", + "visualeditor-dialog-media-search-tab-search": "Çèrca", + "visualeditor-dialog-media-search-tab-upload": "Càrega", + "visualeditor-dialog-media-size-section": "Dimensción inmàgine", + "visualeditor-dialog-media-size-section-help": "Ti peu çèrne a grandéssa de l'eleménto multimediâle inta pàgina. Quésta a doviæ êse quæxi sénpre a dimensción normâle, da-o moménto che 'na dimensción personalizâ a l'interferìsce con l'inpaginaçión pe-i letoî e a-a rénde dizomogénia.", + "visualeditor-dialog-media-title": "Inpostaçioìn file multimediâli", + "visualeditor-dialog-media-type-border": "Bórdo", + "visualeditor-dialog-media-type-frame": "Cornîxe", + "visualeditor-dialog-media-type-frameless": "Sénsa cornîxe", + "visualeditor-dialog-media-type-none": "Bâze", + "visualeditor-dialog-media-type-section": "Tîpo d'inmàgine", + "visualeditor-dialog-media-type-section-help": "Ti peu seleçionâ cómme fâ aparî l'eleménto multimediâle inta pàgina. L'é mêgio fâlo into formâto miniatûa de mòddo ch'o ségge coerénte co-a ciù gràn pàrte de âtre pàgine.", + "visualeditor-dialog-media-type-thumb": "Miniatûa", + "visualeditor-dialog-media-upload": "Càrega", + "visualeditor-dialog-meta-advancedsettings-label": "Inpostaçioìn avansæ", + "visualeditor-dialog-meta-advancedsettings-section": "Inpostaçioìn avansæ", + "visualeditor-dialog-meta-categories-addcategory-label": "Azónzi 'na categorîa a sta pàgina chi", + "visualeditor-dialog-meta-categories-category": "Categorîa", + "visualeditor-dialog-meta-categories-data-label": "Categorîe", + "visualeditor-dialog-meta-categories-defaultsort-help": "Ti peu cangiâ l'órdine de sta pàgina fra de quélle inte 'na categorîa çernéndo da ciâve d'órdine diferénte. Quésto s'adêuvia sovénte pe fâ de pàgine con di nómmi de persónn-e ordinæ pe cognómme, ma mostràndo i tìtoli co-o nómme de batézzo davànti.", + "visualeditor-dialog-meta-categories-defaultsort-label": "Órdina sta pàgina in mòddo predefinîo cómme", + "visualeditor-dialog-meta-categories-hidden": "Sta categorîa a l'é inpostâ pe no êse vixìbile inte pàgine dond'a l'é azónta.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Categorîe ascôze", - "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Categorie corispondente", - "visualeditor-dialog-meta-categories-input-movecategorylabel": "Mescia chie questa categoria", - "visualeditor-dialog-meta-categories-input-newcategorylabel": "Noeuva categoria", - "visualeditor-dialog-meta-categories-input-placeholder": "Azonzi 'na categoria", - "visualeditor-dialog-meta-categories-missing": "A sta categoria gh'amanca 'na paggina de descrission.", - "visualeditor-dialog-meta-categories-options": "Opçioin", - "visualeditor-dialog-meta-categories-section": "Categorie", - "visualeditor-dialog-meta-categories-sortkey-label": "Amersa sta paggina comme s'a se ciamesse", - "visualeditor-dialog-meta-languages-code-label": "Coddiçe lengua", - "visualeditor-dialog-meta-languages-label": "Lengoe", - "visualeditor-dialog-meta-languages-link-label": "Paggina inganciâ", - "visualeditor-dialog-meta-languages-name-label": "Lengua", - "visualeditor-dialog-meta-languages-readonlynote": "Sta chì a l'è 'na lista de paggine in atre lengue ch'en conligæ a questa; pe oua, o poeu vese modificao solo in wikitesto ò sciu Wikidata.", - "visualeditor-dialog-meta-languages-section": "Lengoe", - "visualeditor-dialog-meta-settings-displaytitle": "Tittolo vixoalizou", - "visualeditor-dialog-meta-settings-displaytitle-help": "Ti poeu cangiâ a vixualizassion do tittolo de sta paggina impostando un'etichetta da mostrâ diferente.", - "visualeditor-dialog-meta-settings-hiddencat-help": "Ti poeu impedî che sta categoria a segge mostrâ inta lista de categorie inte paggine che ne fan parte. Questo o l'è uttile pe-e categorie che servan a-i redatoî, ma a-a ciu gran parte di lettoî no gh'interessan, comme e paggine che g'han de bezoeugno de 'n'inlustrassion.", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Categorîe corispondénti", + "visualeditor-dialog-meta-categories-input-movecategorylabel": "Méscia chi sta categorîa", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Nêuva categorîa", + "visualeditor-dialog-meta-categories-input-placeholder": "Azónzi 'na categorîa", + "visualeditor-dialog-meta-categories-missing": "A sta categorîa gh'amànca 'na pàgina de descriçión.", + "visualeditor-dialog-meta-categories-options": "Opçioìn", + "visualeditor-dialog-meta-categories-section": "Categorîe", + "visualeditor-dialog-meta-categories-sortkey-label": "Órdina sta pàgina chi cómme s'a se ciamésse", + "visualeditor-dialog-meta-languages-code-label": "Còdiçe léngoa", + "visualeditor-dialog-meta-languages-label": "Léngoe", + "visualeditor-dialog-meta-languages-link-label": "Pàgina ligâ", + "visualeditor-dialog-meta-languages-name-label": "Léngoa", + "visualeditor-dialog-meta-languages-readonlynote": "Sta chi a l'é 'na lìsta de pàgine in âtre léngoe ch'én conligæ a quésta; pe òua, o peu êse modificòu sôlo in wikitèsto ò sciù Wikidata.", + "visualeditor-dialog-meta-languages-section": "Léngoe", + "visualeditor-dialog-meta-settings-displaytitle": "Tìtolo mostròu", + "visualeditor-dialog-meta-settings-displaytitle-help": "Ti peu cangiâ a vizoalizaçión do tìtolo de sta pàgina çernéndo 'n'etichétta da mostrâ diferénte.", + "visualeditor-dialog-meta-settings-hiddencat-help": "Ti peu inpedî che sta categorîa a ségge mostrâ inta lìsta de categorîe inte pàgine che ne fàn pàrte. Quésto o l'é ùtile pe-e categorîe che sèrvan a-i redatoî, ma a-a ciù gràn pàrte di letoî no gh'interèssan, cómme e pàgine che gh'àn de bezéugno de 'n'ilustraçión.", "visualeditor-dialog-meta-settings-hiddencat-label": "Categorîa ascôza", - "visualeditor-dialog-meta-settings-index-default": "Predefinio", + "visualeditor-dialog-meta-settings-index-default": "Predefinîo", "visualeditor-dialog-meta-settings-index-disable": "No", - "visualeditor-dialog-meta-settings-index-force": "Sci", - "visualeditor-dialog-meta-settings-index-help": "Ti poeu forsâ i motoî de serchia a elencâ sta paggina tra i so risultæ pertinenti, ò forsâli a no fâlo. Sta opsion a no l'influisce inta serchia interna do scito.", - "visualeditor-dialog-meta-settings-index-label": "Lascia che sta paggina chie a segge endexizâ da-i motoî de serchia", - "visualeditor-dialog-meta-settings-label": "Impostassioin paggina", - "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Predefinio", + "visualeditor-dialog-meta-settings-index-force": "Scì", + "visualeditor-dialog-meta-settings-index-help": "Ti peu forsâ i motoî de riçèrca a elencâ sta pàgina tra i sò rizultâti pertinénti, ò forsâli a no fâlo. St'opçión chi a no l'infloìsce inta riçèrca drent'a-o scîto.", + "visualeditor-dialog-meta-settings-index-label": "Làscia che sta pàgina chi a ségge indicizâ da-i motoî de riçèrca", + "visualeditor-dialog-meta-settings-label": "Inpostaçioìn da pàgina", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Predefinîo", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "No", - "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Sci", - "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Ti poeu forsâ a vixualizasion de 'n'atra scheda otr'a scheda \"$1\" sciu questa paggina, pe fassilitâ a zonta de 'na noeuva session, ò donque impedighe d'aparî s'a l'aviæ fæto.", - "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Mostra 'na scheda in questa paggina pe azonze 'na noeuva session", - "visualeditor-dialog-meta-settings-nocontentconvert-help": "Ti poeu impedî che-o contegnuo de sta paggina o segge aotomaticamente convertio inte di atre scritue.", - "visualeditor-dialog-meta-settings-nocontentconvert-label": "No convertî o contegnuo tra-e variante lenguisteghe", - "visualeditor-dialog-meta-settings-noeditsection-help": "Caxo mai ghe ne foise de bezoeugno, ti poeu impedî che rente a ciascun-a seçion ghe segge mostrou l'ingancio pe modificâla.", - "visualeditor-dialog-meta-settings-noeditsection-label": "Dizabillita l'ingancio de modiffica rente a ogni intestassion de sta paggina.", - "visualeditor-dialog-meta-settings-nogallery-help": "Ti poeu impedî che sta categoria a mette in mostra i so file in forma de galleria, into caxo ch'a no segge cosa oportun-a.", - "visualeditor-dialog-meta-settings-nogallery-label": "Dizattiva a galleria", - "visualeditor-dialog-meta-settings-notitleconvert-help": "Ti poeu impedî che-o tittolo de sta paggina o segge aotomaticamente convertio inte di atre scritue.", - "visualeditor-dialog-meta-settings-notitleconvert-label": "No convertî o tittolo tra variante lenguisteghe", - "visualeditor-dialog-meta-settings-redirect-help": "Ti poeu transformâ sta paggina inte 'n rendrisso, saiv'a dî 'na paggina ch'a porta aotomaticamente i lettoî a 'n'atra paggina de sta wiki. Quest'o ven ben pe-i ari d'ortografia, e i nommi ò i concetti equivalenti. Se ti o fæ, i letoî no vedian o contegnuo de questa paggina.", - "visualeditor-dialog-meta-settings-redirect-label": "Rendrissa sta paggina a", - "visualeditor-dialog-meta-settings-redirect-placeholder": "Paggina de destinassion pe-o rendrisso", - "visualeditor-dialog-meta-settings-redirect-statichelp": "Into rariscimo caxo che ghe ne segge de bezoeugno, ti poeu impedî che sto rendrisso o s'agiorne aotomaticamente quandi-a paggina dond'o l'aponta a vegne mesciâ.", - "visualeditor-dialog-meta-settings-redirect-staticlabel": "Impedisci che questo rendrisso o segge agiornou quande mescian a paggina de destinassion.", - "visualeditor-dialog-meta-settings-section": "Impostassioin paggina", - "visualeditor-dialog-meta-settings-toc-default": "Se necessaio", - "visualeditor-dialog-meta-settings-toc-disable": "Mai", - "visualeditor-dialog-meta-settings-toc-force": "Sempre", - "visualeditor-dialog-meta-settings-toc-help": "Ti fâ aparî 'na taoa di contegnui ch'a l'elenca i tittoli de ogni seçion inte de paggine con meno de quattro seçioin, ò donque no fâla aparî mai. Pe difetto a taoa di contegnui a compâ inte paggine che g'han aomanco quattro seçioin.", - "visualeditor-dialog-meta-settings-toc-label": "Mostra a Taoa di Contegnui", - "visualeditor-dialog-meta-templatesused-noresults": "Nisciun modello trovou.", - "visualeditor-dialog-meta-title": "Opçioin", - "visualeditor-dialog-table-collapsed": "Daprinsippio cegou", - "visualeditor-dialog-table-collapsible": "Cegæso", - "visualeditor-dialog-table-sortable": "Amerseive", - "visualeditor-dialog-table-wikitable": "Con stile (wikitable)", - "visualeditor-dialog-template-title": "Modello", - "visualeditor-dialog-transclusion-add-template": "Azonzi modello", - "visualeditor-dialog-transclusion-collapse-options": "Ascondi opsioin", - "visualeditor-dialog-transclusion-contextitem-description": "Generou da: $1", - "visualeditor-dialog-transclusion-expand-options": "Mostra i opsioin", - "visualeditor-dialog-transclusion-deprecated-parameter": "Campo obsoleto", - "visualeditor-dialog-transclusion-deprecated-parameter-description": "O campo o l'è obsoleto. $1", - "visualeditor-dialog-transclusion-loading": "Camallando…", - "visualeditor-dialog-transclusion-no-template-description": "O modello \"$1\" 'na descrission o no ghe l'ha ancon, ma poriæ vesighe de informassioin inta [[$2|paggina do modello]].", - "visualeditor-dialog-transclusion-param-default": "Predefinio: $1", - "visualeditor-dialog-transclusion-required-parameter": "Campo obrigatoio", - "visualeditor-dialog-transclusion-required-parameter-description": "O campo o l'è obrigatoio.", - "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Torna inderê", - "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Continnoa pægio", - "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Campo obrigatoio mancante|Campi obrigatori mancanti}}", - "visualeditor-dialog-transclusion-required-parameter-is-blank": "T'ê seguo de voei continoâ sensa impî {{PLURAL:$2|o campo|i campi}} $1?", - "visualeditor-dialogbutton-media-tooltip": "Inmaggine e file murtimediæ", - "visualeditor-dialogbutton-template-tooltip": "Modello", - "visualeditor-editconflict": "E modiffiche aportæ no poruan ese sarvæ pe via de 'n confrito d'edission. {{GENDER:|Ti voeu}} miga resciorve o confrito manualmente?", - "visualeditor-editingtabdialog-body": "{{SITENAME}} d'oua in avanti o s'aregorda quæ o l'è l'editor che ti prefeisci. Ti poeu scangiâ e modalitæ mentre t'ê aproeuvo a fâ modiffiche, e cangiâ e to preferense ciu tardi.", - "visualeditor-editingtabdialog-ok": "Doeuvia l'editor ch'ho doeuviou pe urtimo", - "visualeditor-editingtabdialog-title": "Schede de modiffica", - "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|avizo|avixi}}", - "visualeditor-editnotices-tooltip": "Avixi de modiffica", - "visualeditor-editsummary": "Descrivi cose t'hæ cangiou", - "visualeditor-editsummary-characters-remaining": "O nummero di caratteri che gh'arestan", - "visualeditor-educationpopup-dismiss": "Va ben, ho acapio.", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Scì", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Ti peu forsâ a vizoalizaçión de 'n'âtra schêda ciù che a schêda \"$1\" sciù sta pàgina chi, pe façilitâ l'azónta de 'na nêuva seçión, ò dónca inpedîghe d'aparî s'a l'aviæ fæto.", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Móstra 'na schêda inte sta pàgina chi pe'azónze 'na nêuva seçión", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "Ti peu inpedî che-o contegnûo de sta pàgina chi o ségge convertîo in outomàtico inte de âtre scritûe.", + "visualeditor-dialog-meta-settings-nocontentconvert-label": "No convertî o contegnûo tra e variànte lengoìstiche", + "visualeditor-dialog-meta-settings-noeditsection-help": "Câxo mâi ghe ne foîse de bezéugno, ti peu inpedî che da-arénte a ciaschedùnn-a seçión ghe ségge mostròu o ligàmme pe modificâla.", + "visualeditor-dialog-meta-settings-noeditsection-label": "Dizabìlita o ligàmme de modìfica da-arénte a ògni intestaçión de sta pàgina chi.", + "visualeditor-dialog-meta-settings-nogallery-help": "Ti peu inpedî che sta categorîa a métte in móstra i sò file in fórma de galerîa, into câxo ch'a no ségge cösa òportùnn-a.", + "visualeditor-dialog-meta-settings-nogallery-label": "Dizatîva a galerîa", + "visualeditor-dialog-meta-settings-notitleconvert-help": "Ti peu inpedî che-o tìtolo de sta pàgina chi o ségge convertîo in outomàtico inte de âtre scritûe.", + "visualeditor-dialog-meta-settings-notitleconvert-label": "No convertî o tìtolo tra e variànte lengoìstiche", + "visualeditor-dialog-meta-settings-redirect-help": "Ti peu transformâ sta pàgina inte 'n rindirìsso, saiv'a dî 'na pàgina ch'a pòrta in outomàtico i letoî a 'n'âtra pàgina de sta wiki. Quest'o ven a tàggio pe-i eroî d'ortografîa e i nómmi ò i concètti equivalénti. Se ti o fæ, i letoî no vediàn o contegnûo de sta pàgina chi.", + "visualeditor-dialog-meta-settings-redirect-label": "Rindirìssa sta pàgina a", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Pàgina de destinaçión pò-u rindirìsso", + "visualeditor-dialog-meta-settings-redirect-statichelp": "Into câxo rarìscimo che ghe ne ségge de bezéugno, ti peu inpedî che sto rindirìsso o s'agiórne in outomàtico quànde a pàgina dond'o pónta a vêgne mesciâ.", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Inpedìsci che sto rindirìsso chi o ségge agiornòu quànde l'é mesciòu a pàgina de destinaçión.", + "visualeditor-dialog-meta-settings-section": "Inpostaçioìn da pàgina", + "visualeditor-dialog-meta-settings-toc-default": "Se necesâio", + "visualeditor-dialog-meta-settings-toc-disable": "Mâi", + "visualeditor-dialog-meta-settings-toc-force": "De lóngo", + "visualeditor-dialog-meta-settings-toc-help": "Ti peu forsâ 'n ìndice co-a lìsta de tùtte e intestaçioìn inta pàgine in sce pàgine con mêno de quàttro seçioìn, ò dónca no fâla mâi aparî. Pe çèrnia predefinîa, o vêgne mostròu in outomàtico se a pàgina a gh'à quàttro o ciù seçioìn.", + "visualeditor-dialog-meta-settings-toc-label": "Móstra l'ìndice", + "visualeditor-dialog-meta-templatesused-noresults": "Nisciùn template trovòu.", + "visualeditor-dialog-meta-title": "Opçioìn", + "visualeditor-dialog-table-collapsed": "De bâze sequadrâ", + "visualeditor-dialog-table-collapsible": "Se peu sequadrâ", + "visualeditor-dialog-table-sortable": "Se peu ordinâ", + "visualeditor-dialog-table-wikitable": "Con stîle (wikitable)", + "visualeditor-dialog-template-title": "Template", + "visualeditor-dialog-transclusion-action-save": "Sàrva", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Sto template chi o no l'exìste.", + "visualeditor-dialog-transclusion-template-title-modifier": "A documentaçión di template e i nómmi di [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter paràmetri] (se existàn) no són a dispoxiçión quànde se modìfica di template che dêuvian 'na scintàsci ò di modificatoî aniæ, cómme [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst].", + "visualeditor-dialog-transclusion-template-widget-aria": "Sciàcca Spàçio pe seleçionâ o template.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Sciàcca Ctrl+Canc pe scancelâ o template, i sò paràmetri e i sò valoî. Sciàcca Ctrl+Maiusc+Frécce pe mesciâ o template in çìmma ò in bàsso.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Sciàcca Ctrl+Canc pe scancelâ o template, i sò paràmetri e i sò valoî.", + "visualeditor-dialog-transclusion-add-wikitext": "Azónzi wikitèsto", + "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\" o l'é za stæto azónto cómme \"$2\". Pe piâxéi, contròlla e opçioìn inta bâra laterâle. Sto fæto chi o l'é dovûo ò a l'ûzo de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases alias] ò de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label label].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" o no peu êse azónto perché o paràmetro o l'é stæto marcòu cómme [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated sconpasòu].", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "No se peu azónze o paràmetro \"$2\" dôe vòtte.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "O paràmetro \"$2\" o l'é za prónto a l'ûzo. Pe piâxéi, contròlla e opçioìn inta bâra laterâle.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 o l'é 'n caràtere vietòu. Pe piâxéi, lévilo pe azónze o paràmetro.", + "visualeditor-dialog-transclusion-add-param-help": "Se conosciûi, ti peu inserî di nómmi de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters paràmetri no documentæ]. Nòtta che sôlo i paràmetri prevìsti da-o template l'aviàn de efètto. Ti peu trovâ de informaçioìn in scî paràmetri prevìsti inta [[$1|pàgina do template]].", + "visualeditor-dialog-transclusion-add-param-placeholder": "Nómme do paràmetro", + "visualeditor-dialog-transclusion-add-param-save": "Azónzi", + "visualeditor-dialog-transclusion-add-template": "Azónzi template", + "visualeditor-dialog-transclusion-add-template-button": "Azónzi template", + "visualeditor-dialog-transclusion-add-template-save": "Azónzi", + "visualeditor-dialog-transclusion-add-undocumented-param": "Azónzi 'n paràmetro no documentòu", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Tornâ a-a riçèrca? I tò cangiaménti saiàn pèrsci, e sto fæto o no peu êse desfæto.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Serâ l'editor do template? I tò cangiaménti saiàn pèrsci, e sto fæto o no peu êse desfæto.", + "visualeditor-dialog-transclusion-collapse-options": "Ascóndi opçioìn", + "visualeditor-dialog-transclusion-confirmation-discard": "Làscia pèrde e modìfiche", + "visualeditor-dialog-transclusion-confirmation-reject": "Contìnoa a modificâ", + "visualeditor-dialog-transclusion-contextitem-description": "Generòu da: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Caregaménto in córso…", + "visualeditor-dialog-transclusion-expand-options": "Móstra e opçioìn", + "visualeditor-dialog-transclusion-filter-hide-unused": "Ascóndi no deuviæ", + "visualeditor-dialog-transclusion-filter-no-match": "Nisciùn rizultâto trovòu", + "visualeditor-dialog-transclusion-filter-placeholder": "Trêuva cànpo", + "visualeditor-dialog-transclusion-filter-show-all": "Móstra tùtti", + "visualeditor-dialog-transclusion-filter-title": "Riçèrca paràmetri pe $1", + "visualeditor-dialog-transclusion-help-title": "Agiùtto in sce l'ûzo di template", + "visualeditor-dialog-transclusion-help-message": "I template façìlitan a formataçión di contegnûi. St'editor chi o móstra in sciâ mancìnn-a e opçioìn a dispoxiçión pe 'n template e in sciâ drîta i valoî poscìbili pe ciaschedùnn-a opçión.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Agiùtto in sce l'ûzo di template]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Scorsaieu da tastêa]", + "visualeditor-dialog-transclusion-deprecated-parameter": "Cànpo sconpasòu", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "O cànpo o l'é sconpasòu. $1", + "visualeditor-dialog-transclusion-loading": "Caregaménto in córso...", + "visualeditor-dialog-transclusion-multipart-message": "Ti t'ê aprêuvo a modificâ 'n template e unn-a ò ciù parte de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content contegnûo ligòu] (wikitèsto e/ò template de ciù)", + "visualeditor-dialog-transclusion-no-template-data-description": "A sto template chi o gh'amànca de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] e i sò paràmetri són stæti generæ in mòddo outomàtico. Cómme rizultâto a-o template e a-i sò paràmetri gh'amàncan e descriçión. Poriæ êsighe de informaçioìn de ciù inta [[$1|pàgina do template]].", + "visualeditor-dialog-transclusion-no-template-description": "O template \"$1\" o no gh'à ancón de descriçión, ma poriæ êsighe de informaçioìn inta [[$2|pàgina do template]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Sto template chi o no gh'à de paràmetri documentæ e o poriæ êse destinòu a fonçionâ sénsa de sti chi.", + "visualeditor-dialog-transclusion-param-default": "Predefinîo: $1", + "visualeditor-dialog-transclusion-param-example-long": "Ezénpio: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Sciacâ Spàçio pe azónze ò levâ di paràmetri. Sciacâ Invîo pe azónze 'n paràmetro e modificâne in sciô moménto o valô. Quànde 'n paràmetro o l'é za çernûo, sciacâ in sce Invîo pe modificâne o valô.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Paràmetri inte $1", + "visualeditor-dialog-transclusion-param-undocumented": "(paràmetro no documentòu)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Trêuva template", + "visualeditor-dialog-transclusion-required-parameter": "Cànpo òbrigatöio", + "visualeditor-dialog-transclusion-required-parameter-description": "O cànpo o l'é òbrigatöio.", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Tórna inderê", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Contìnoa pægio", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Cànpo òbrigatöio mancànte|Cànpi òbrigatöi mancànti}}", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "T'ê segûo de voéi continoâ sénsa inpî {{PLURAL:$2|o cànpo|i cànpi}} $1?", + "visualeditor-dialog-transclusion-see-template": "I tempalte són generæ da l'uténte e pêuan mancâ de descriçioìn conplête. L'é poscìbile che ghe ségge de informaçioìn de ciù in sce sta [[$2|pàgina do template]].", + "visualeditor-dialog-transclusion-title-insert-template": "Inserìsci 'n template", + "visualeditor-dialog-transclusion-title-insert-known-template": "Inserìsci: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Modìfica: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Contegnûo do template", + "visualeditor-dialog-transclusion-template-search": "Riçèrca template", + "visualeditor-dialog-transclusion-template-search-help": "Trêuva o template che ti veu inserî çercàndolo co-ina pòula ciâve ch'o-o identìfiche. I template con de descriçioìn gh'àn ciù tànte poscibilitæ de fonçionâ bén con l'editô vixîvo.", + "visualeditor-dialog-transclusion-wikitext": "Wikitèsto", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Sciàcca Spàçio pe seleçionâ l'eleménto wikitèsto. Sciàcca Invîo pe seleçionâ e modificâ o wikitèsto.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Sciàcca Ctrl+Canc pe scancelâ l'eleménto wikitèsto. Sciàcca Ctrl+Maiusc+Frécce pe mesciâ l'eleménto in âto ò in bàsso.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Sciàcca Ctrl+Canc pe scancelâ l'eleménto wikitèsto.", + "visualeditor-dialogbutton-media-tooltip": "Inmàgine e file multimediâli", + "visualeditor-dialogbutton-template-tooltip": "Template", + "visualeditor-editconflict": "E modìfiche fæte no poriàn êse sarvæ pe vîa de 'n conflìtto d'ediçión. {{GENDER:|Ti veu}} mîga arangiâ o conflìtto a màn?", + "visualeditor-editingtabdialog-body": "{{SITENAME}} d'òua in avànti o s'aregòrda quæ o l'é l'editor che ti preferìsci. Ti peu scangiâ e modalitæ méntre t'ê aprêuvo a fâ de modìfiche, e cangiâ e tò preferénse ciù tàrdi.", + "visualeditor-editingtabdialog-ok": "Dêuvia l'editor ch'ò dêuviòu inta mæ ùrtima modìfica", + "visualeditor-editingtabdialog-title": "Schêde de modìfica", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|avîzo|avîxi}}", + "visualeditor-editnotices-tooltip": "Avîxi de modìfica", + "visualeditor-editsummary": "Descrîvi cöse t'æ cangiòu", + "visualeditor-editsummary-characters-remaining": "O nùmero di caràteri che gh'arèstan", + "visualeditor-educationpopup-dismiss": "Va bén, ò acapîo.", + "visualeditor-expandable-less": "Mêno", + "visualeditor-expandable-more": "Âtro", "visualeditor-feedback-defaultmessage": "URL: $1", - "visualeditor-formatdropdown-format-mw-heading1": "Tittolo da paggina", - "visualeditor-formatdropdown-format-mw-heading2": "Intestassion", - "visualeditor-formatdropdown-format-mw-heading3": "Sottintestassion 1", - "visualeditor-formatdropdown-format-mw-heading4": "Sottintestassion 2", - "visualeditor-formatdropdown-format-mw-heading5": "Sottintestassion 3", - "visualeditor-formatdropdown-format-mw-heading6": "Sottintestassion 4", - "visualeditor-generating-wikitext-progress": "Generassion do wikitesto", - "visualeditor-languages-tool": "Lengoe", - "visualeditor-linkinspector-button-link-external": "Scito esterno", - "visualeditor-linkinspector-button-link-internal": "Serca inte paggine interne", - "visualeditor-linkinspector-convert-link-isbn": "Converti in ingancio ISBN", - "visualeditor-linkinspector-convert-link-pmid": "Converti in ingancio PMID", - "visualeditor-linkinspector-convert-link-rfc": "Converti in ingancio RFC", - "visualeditor-linkinspector-educationpopup-text": "Ingancia de parolle importante a di atre voxe da wiki o scin-a di atri sciti web. Questo o l'agiutiâ i lettoî a capî o contesto.", - "visualeditor-linkinspector-educationpopup-title": "Inganci", - "visualeditor-linkinspector-illegal-title": "Tittolo de paggina non vallido", - "visualeditor-linkinspector-invalid-external": "Scrivi un URL completo, prezempio: https://example.org", - "visualeditor-linknodeinspector-add-label": "Azonzi etichetta", - "visualeditor-linknodeinspector-title": "Ingancio sencio", - "visualeditor-magiclinknodeinspector-convert-link": "Converti in ingancio sencio", - "visualeditor-magiclinknodeinspector-title-isbn": "Ingancio ISBN", - "visualeditor-magiclinknodeinspector-title-pmid": "Ingancio PMID", - "visualeditor-magiclinknodeinspector-title-rfc": "Ingancio RFC", - "visualeditor-media-title-audio": "Aodio", - "visualeditor-media-title-image": "Inmaggine", - "visualeditor-media-title-video": "Viddeo", - "visualeditor-meta-tool": "Opçioin", - "visualeditor-mweditmode-tooltip": "Cangia editor", - "visualeditor-mweditmodesource-progress": "Passaggio a-a modiffica wikitesto…", - "visualeditor-mweditmodesource-tool-current": "Modiffica wikitesto", - "visualeditor-mweditmodesource-tool-unavailable": "A modiffica do wikitesto chì a no l'è disponibbile", - "visualeditor-mweditmodeve-popup-body": "Ti poeu tornâ a-a modiffica vixoâ quande ti voeu clicando questa icon-a.", - "visualeditor-mweditmodeve-popup-title": "T'ê passou a-a modiffica wikitesto", - "visualeditor-mweditmodeve-progress": "Passaggio a-a modiffica vixoâ…", - "visualeditor-mweditmodeve-showagain": "No mostrâme ciù sto messaggio", - "visualeditor-mweditmodeve-tool-current": "Modiffica vixoâ", - "visualeditor-mweditmodeve-tool-unavailable": "A modiffica vixoâ chì a no l'è disponibbile", - "visualeditor-mweditmodewt-popup-body": "Ti poeu tornâ a-a modiffica wikitesto quande ti voeu clicando questa icon-a.", - "visualeditor-mweditmodewt-popup-title": "T'ê passou a-a modiffica vixoâ", - "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|inmaggine}}", - "visualeditor-mwgallerydialog-caption-field-label": "Didascalia galleria", - "visualeditor-mwgallerydialog-card-images": "Inmaggine", - "visualeditor-mwgallerydialog-card-options": "Opçioin", - "visualeditor-mwgallerydialog-classes-field-label": "Classe CSS", - "visualeditor-mwgallerydialog-classes-input-placeholder": "Nommi de classe, separæ da-i spaççi", - "visualeditor-mwgallerydialog-empty-gallery-message": "A galleria a l'è voeua.", - "visualeditor-mwgallerydialog-heights-field-label": "Ateçça inmaggine", - "visualeditor-mwgallerydialog-heights-input-placeholder": "Atessa predefinia: $1 px", - "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Tradissionâ sensa contorni", - "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Impachetou", - "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Impachetou con didascalie se ti ghe passi o pontatô", - "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Impachetou con didascalie sorvimposte", - "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Presentassion de diapoxitive", - "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Tradissionâ", - "visualeditor-mwgallerydialog-mode-field-label": "Modalitæ de vixoalizassion", - "visualeditor-mwgallerydialog-perrow-field-label": "Inmaggine pe riga", - "visualeditor-mwgallerydialog-remove-button-label": "Leva inmaggine", - "visualeditor-mwgallerydialog-search-button-label": "Metti noeuva inmaggine", - "visualeditor-mwgallerydialog-show-filename-field-label": "Mostra i nommi di file", - "visualeditor-mwgallerydialog-styles-field-label": "Stili CSS", - "visualeditor-mwgallerydialog-styles-input-placeholder": "Reggole CSS, separæ da ponto e virgola", - "visualeditor-mwgallerydialog-title": "Galleria", - "visualeditor-mwgallerydialog-widths-field-label": "Largheçça inmaggine", - "visualeditor-mwgallerydialog-widths-input-placeholder": "Larghessa predefinia: $1 px", - "visualeditor-mwpredialog-convert": "Consenti i stili de scrito", - "visualeditor-mwpredialog-title": "Scrito semplise preformattou", - "visualeditor-mwsignature-tool": "A to firma", - "visualeditor-preference-newwikitexteditor-enable": "Adoeuvia a modalitæ wikitesto drent'a l'editô vixoâ, invece che doeuviâ 'n atro editor de wikitesto.", - "visualeditor-preference-tabs": "Modalitæ de modiffica:", - "visualeditor-preference-tabs-multi-tab": "Mostrime tutte doe e schede de modiffica", - "visualeditor-preference-tabs-prefer-ve": "Damme sempre l'editor vixoâ, se poscibbile", - "visualeditor-preference-tabs-prefer-wt": "Damme sempre l'editor wikitesto", - "visualeditor-preference-tabs-remember-last": "Aregordite o mæ urtimo editor", - "visualeditor-rebase-client-export": "Esporta", - "visualeditor-rebase-client-import": "Importa", - "visualeditor-rebase-client-import-name": "Tittolo da paggina", - "visualeditor-recreate": "Sta pagina a l'è stæta eliminâ doppo che t'hæ inçou a modiffica. Sciacca \"$1\" pe ricreâla.", - "visualeditor-redirect-description": "Rendriçço a $1", - "visualeditor-savedialog-identify-anon": "T'oeu sarvâ sta paggina comme utente anonnimo? O to adresso IP o saiâ registrou inta cronologia da paggina.", - "visualeditor-savedialog-identify-user": "T'ê introu comme [[User:$1|$1]]. Se ti sarvi 'na modiffica, questa a saiâ associâ a questa utensa.", - "visualeditor-savedialog-keyboard-shortcut-submit": "Ti poeu sciacâ $1 pe sarvâ a to modiffica.", - "visualeditor-savedialog-label-publish-short": "Pubbrica", - "visualeditor-savedialog-label-publish-short-start": "Pubbrica…", - "visualeditor-savedialog-label-resolve-conflict": "Resciorvi o confrito", - "visualeditor-savedialog-label-resume-editing": "Repiggia a modificâ", - "visualeditor-savedialog-label-review": "Rilezi e modiffiche", - "visualeditor-savedialog-label-review-good": "Torna a-o moddulo de sarvataggio", - "visualeditor-savedialog-label-save-short": "Sarva", - "visualeditor-savedialog-label-save-short-start": "Sarva...", - "visualeditor-savedialog-review-nosummary": "Nisciun oggetto da modiffica", - "visualeditor-savedialog-review-visual": "Vixoâ", + "visualeditor-formatdropdown-format-mw-heading1": "Tìtolo da pàgina", + "visualeditor-formatdropdown-format-mw-heading2": "Intestaçión", + "visualeditor-formatdropdown-format-mw-heading3": "Sotintestaçión 1", + "visualeditor-formatdropdown-format-mw-heading4": "Sotintestaçión 2", + "visualeditor-formatdropdown-format-mw-heading5": "Sotintestaçión 3", + "visualeditor-formatdropdown-format-mw-heading6": "Sotintestaçión 4", + "visualeditor-generating-wikitext-progress": "Generaçión do wikitèsto", + "visualeditor-includes-noinclude-start": "Coménso do contegnûo levòu da-i estræti", + "visualeditor-includes-noinclude-end": "Fìn do contegnûo levòu da-i estræti", + "visualeditor-includes-onlyinclude-start": "Coménso do contegnûo permìsso inti estræti", + "visualeditor-includes-onlyinclude-end": "Fìn do contegnûo permìsso inti estræti", + "visualeditor-includes-includeonly": "Sôlo o contegnûo inti estræti", + "visualeditor-includes-noinclude-description": "Quànde o contegnûo de sta pàgina o l'é dêuviòu da 'n'âtra pàgina, o contegnûo da chi scìnn-a-o marcatô de fìn corispondénte o no saiâ conpréizo. Fànni atençión quànde ti modìfichi o contegnûo a-o de fêua de sti marcatoî chi, dæto che de âtre pàgine poriéivan dêuviâlo.", + "visualeditor-includes-onlyinclude-description": "Quànde o contegnûo de sta pàgina o l'é dêuviòu da 'n'âtra pàgina, sôlo che o contegnûo da chi scìnn-a-o marcatô de fìn corispondénte o saiâ conpréizo. Fànni atençión quànde ti modìfichi o contegnûo tra sti marcatoî, dæto che de âtre pàgine poriéivan deuviâlo.", + "visualeditor-includes-includeonly-description": "Quànde o contegnûo de sta pàgina o l'é dêuviòu inte 'n'âtra pàgina, o contegnûo aprêuvo de ciù o saiâ conpréizo chi:", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Informaçioìn de ciù in sciâ transcluxón parçiâle]", + "visualeditor-languages-tool": "Léngoe", + "visualeditor-linkcontext-uneditable": "Spiaxénti, pò-u moménto sto ligàmme chi o peu êse modificòu sôlo che in modalitæ wikitèsto.", + "visualeditor-linkinspector-button-link-external": "Scîto estèrno", + "visualeditor-linkinspector-button-link-internal": "Çèrca inte pàgine intèrne", + "visualeditor-linkinspector-convert-link-isbn": "Convèrti in ligàmme ISBN", + "visualeditor-linkinspector-convert-link-pmid": "Convèrti in ligàmme PMID", + "visualeditor-linkinspector-convert-link-rfc": "Convèrti in ligàmme RFC", + "visualeditor-linkinspector-educationpopup-text": "Lîga de pòule inportànte a de âtre vôxe inta wiki ò scìnn-a a di âtri scîti web. Quésto o l'agiutiâ i letoî a capî o contèsto.", + "visualeditor-linkinspector-educationpopup-title": "Ligàmmi", + "visualeditor-linkinspector-illegal-title": "Tìtolo de pàgina no vàlido", + "visualeditor-linkinspector-invalid-blocked": "I contribotoî da wiki àn decîzo de blocâ i ligàmmi a sto scîto chi. Pe piâxéi, dêuvia 'n âtro ligàmme.", + "visualeditor-linkinspector-invalid-external": "Scrîvi 'n URL conplêto, prezénpio: https://example.org", + "visualeditor-linknodeinspector-add-label": "Azónzi etichétta", + "visualeditor-linknodeinspector-title": "Ligàmme séncio", + "visualeditor-magiclinknodeinspector-convert-link": "Convèrti in ligàmme séncio", + "visualeditor-magiclinknodeinspector-title-isbn": "Ligàmme ISBN", + "visualeditor-magiclinknodeinspector-title-pmid": "Ligàmme PMID", + "visualeditor-magiclinknodeinspector-title-rfc": "Ligàmme RFC", + "visualeditor-media-title-audio": "Àodio", + "visualeditor-media-title-image": "Inmàgine", + "visualeditor-media-title-video": "Vìdeo", + "visualeditor-meta-tool": "Opçioìn", + "visualeditor-mweditmode-tooltip": "Càngia editor", + "visualeditor-mweditmodesource-progress": "Pasàggio a-a modìfica wikitèsto...", + "visualeditor-mweditmodesource-tool-current": "Modìfica wikitèsto", + "visualeditor-mweditmodesource-tool-unavailable": "A modìfica do wikitèsto chi a no l'é disponìbile", + "visualeditor-mweditmodeve-popup-body": "Ti peu tornâ a-a modìfica vizoâle quànde ti veu sciacàndo in sce st'icónn-a chi.", + "visualeditor-mweditmodeve-popup-title": "T'ê pasòu a-a modìfica wikitèsto", + "visualeditor-mweditmodeve-progress": "Pasàggio a-a modìfica vizoâle...", + "visualeditor-mweditmodeve-showagain": "No mostrâme ciù sto mesàggio", + "visualeditor-mweditmodeve-tool-current": "Modìfica vizoâle", + "visualeditor-mweditmodeve-tool-unavailable": "A modìfica vizoâle chi a no l'é disponìbile", + "visualeditor-mweditmodewt-popup-body": "Ti peu tornâ a-a modìfica wikitèsto quànde ti veu sciacàndo in sce st'icónn-a chi.", + "visualeditor-mweditmodewt-popup-title": "Ti t'ê pasòu a-a modìfica vizoâle", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|inmàgine}}", + "visualeditor-mwgallerydialog-caption-field-label": "Didascalîa da galerîa", + "visualeditor-mwgallerydialog-card-images": "Inmàgine", + "visualeditor-mwgallerydialog-card-options": "Opçioìn", + "visualeditor-mwgallerydialog-classes-field-label": "Clàsse CSS", + "visualeditor-mwgallerydialog-classes-input-placeholder": "Nómmi de clàsse, separæ da di spàççi", + "visualeditor-mwgallerydialog-empty-gallery-message": "A galerîa a l'é vêua.", + "visualeditor-mwgallerydialog-heights-field-label": "Ertéssa inmàgine", + "visualeditor-mwgallerydialog-heights-input-placeholder": "Ertéssa predefinîa: $1 px", + "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Tradiçionâle sénsa de contórni", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Inpachetòu", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Inpachetòu con didascalîe se ti ghe pàssi o pontatô", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Inpachetòu con didascalîe sorvinpòste", + "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Prezentaçión de diapoxitîve", + "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Tradiçionâle", + "visualeditor-mwgallerydialog-mode-field-label": "Modalitæ de vizoalizaçión", + "visualeditor-mwgallerydialog-perrow-field-label": "Inmàgine pe rîga", + "visualeditor-mwgallerydialog-remove-button-label": "Lêva inmàgine", + "visualeditor-mwgallerydialog-search-button-label": "Métti nêuva inmàgine", + "visualeditor-mwgallerydialog-show-filename-field-label": "Móstra i nómmi di file", + "visualeditor-mwgallerydialog-styles-field-label": "Stîli CSS", + "visualeditor-mwgallerydialog-styles-input-placeholder": "Régole CSS, separæ da pónto e vìrgola", + "visualeditor-mwgallerydialog-title": "Galerîa", + "visualeditor-mwgallerydialog-widths-field-label": "Larghéssa inmàgine", + "visualeditor-mwgallerydialog-widths-input-placeholder": "Larghéssa predefinîa: $1 px", + "visualeditor-mwpredialog-convert": "Consentî i stîli de scrîto", + "visualeditor-mwpredialog-title": "Scrîto sénplice preformatòu", + "visualeditor-mwsignature-tool": "A tò fìrma", + "visualeditor-preference-visualeditor": "Atîva l'editor vizoâle", + "visualeditor-preference-newwikitexteditor-enable": "Dêuvia a modalitæ wikitèsto drent'a l'editô vizoâle, in càngio che dêuviâ 'n âtro editor de wikitèsto", + "visualeditor-preference-newwikitexteditor-help": "Conosciûo ascì cómme 'l'editô de wikitèsto 2017'.", + "visualeditor-preference-tabs": "Modalitæ de modìfica:", + "visualeditor-preference-tabs-multi-tab": "Móstrime tùtte dôe e schêde de modìfica", + "visualeditor-preference-tabs-prefer-ve": "Dêuvia de lóngo l'editor vizoâle, se poscìbile", + "visualeditor-preference-tabs-prefer-wt": "Dêuvia de lóngo l'editor wikitèsto", + "visualeditor-preference-tabs-remember-last": "Aregòrdite o mæ ùrtimo editor", + "visualeditor-preference-collab-label": "Modìfica colaboratîva", + "visualeditor-preference-collab-description": "Invîta di âtri uténti a pigiâ pàrte a-a tò sesción de modìfica inte l'editor vizoâle.", + "visualeditor-rebase-client-export": "Espòrta", + "visualeditor-rebase-client-export-start": "Espòrta...", + "visualeditor-rebase-client-import": "Inpòrta", + "visualeditor-rebase-client-import-name": "Tìtolo da pàgina", + "visualeditor-rebase-client-title-help": "Ti poriæ riçéive e modìfiche prìmma de sarvâ.", + "visualeditor-recreate": "Sta pàgina a l'é stæta eliminâ dòppo che t'æ comensòu a modìfica. Sciàcca \"$1\" pe creâla tórna.", + "visualeditor-redirect-description": "Rindirìsso a $1", + "visualeditor-savedialog-identify-anon": "Ti no t'ê ciù conésso. Se ti væ avànti, o tò indirìsso IP o saiâ registròu inta cronologîa da pàgina.", + "visualeditor-savedialog-identify-temp": "Òua ti dêuvi o nómme uténte tenporànio $1. Se ti væ avànti, a tò modìfica a saiâ asociâ a sto nómme uténte chi.", + "visualeditor-savedialog-identify-user": "Ti t'ê introu cómme [[User:$1|$1]]. Se ti væ avànti, a tò modìfica a saiâ asociâ a st'uténsa chi.", + "visualeditor-savedialog-keyboard-shortcut-submit": "Ti peu sciacâ $1 pe sarvâ a tò modìfica.", + "visualeditor-savedialog-label-publish-short": "Pùbbrica", + "visualeditor-savedialog-label-publish-short-start": "Pùbbrica...", + "visualeditor-savedialog-label-resolve-conflict": "Arangiâ o conflìtto", + "visualeditor-savedialog-label-resume-editing": "Repìggia a modificâ", + "visualeditor-savedialog-label-review": "Véddi tórna e modìfiche", + "visualeditor-savedialog-label-review-good": "Tórna a-o mòdolo de sarvatàggio", + "visualeditor-savedialog-label-save-short": "Sàrva", + "visualeditor-savedialog-label-save-short-start": "Sàrva...", + "visualeditor-savedialog-review-nosummary": "Nisciùn ògètto da modìfica", + "visualeditor-savedialog-review-visual": "Vizoâle", "visualeditor-savedialog-review-wikitext": "Wikitèsto", - "visualeditor-savedialog-title-conflict": "Confrito", - "visualeditor-savedialog-title-preview": "Anteprimma de modiffiche", - "visualeditor-savedialog-title-review": "Rilezi e to modiffiche", - "visualeditor-savedialog-title-save": "Sarva e to modiffiche", - "visualeditor-section-body-placeholder": "Noeuva seçion", - "visualeditor-section-title-placeholder": "Ogetto", - "visualeditor-loaderror-revidconflict": "I ID de revixon restitoii da-o serviou no corispondan (documento: $1, metadæti: $2).", - "visualeditor-loaderror-wrongmode": "Tentativo de caregâ l'editô in modalitæ sbaliâ (tipo de dæti: \"$1\", modalitæ de l'editor: \"$2\").", - "visualeditor-settings-tool": "Impostassioin paggina", - "visualeditor-special-characters-group-other": "Doeuviou soventi", - "visualeditor-templatesused-tool": "Modelli utilizæ", - "visualeditor-title-error": "Tittolo non vallido.", - "visualeditor-toload": "Oua saiâ caregou l'editor. Se doppo quarche segondi ti veddi ancon sto messaggio [$1 ricarrega a paggina].", - "visualeditor-version-label": "Verscion", - "visualeditor-wikitext-progress": "Converscion wikitesto", - "visualeditor-wikitext-warning": "T'ê aprœuv'a dœuviâ l'editor vixoâ - o [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitesto]] chie o no fonsion-a. Pe passâ a-a modiffica wikitesto quandessessæ sensa perde e to modiffiche, clicca o pomello de cangio.", - "visualeditor-wikitext-warning-title": "Rilevou wikitesto", - "visualeditor-wikitextconvert-title": "Convertî a formatassion in wikitesto?", - "visualeditor-wikitextconvert-message": "O cotegnuo che t'hæ incolou o conten da formatassion. T'œu convertîlo in wikitesto ò inseilo comme scrito normale?", - "visualeditor-wikitextconvert-convert": "Converti in wikitesto" + "visualeditor-savedialog-title-conflict": "Conflìtto", + "visualeditor-savedialog-title-preview": "Anteprìmma de modìfiche", + "visualeditor-savedialog-title-review": "Rilêzi e tò modìfiche", + "visualeditor-savedialog-title-save": "Sàrva e tò modìfiche", + "visualeditor-section-body-placeholder": "Nêuva seçión", + "visualeditor-section-title-placeholder": "Ògètto", + "visualeditor-loaderror-revidconflict": "I ID de revixón restitoîi da-o server no corispóndan (documénto: $1, metadæti: $2).", + "visualeditor-loaderror-wrongmode": "Tentatîvo de caregâ l'editô in modalitæ sbaliâ (tîpo de dæti: \"$1\", modalitæ de l'editor: \"$2\").", + "visualeditor-settings-tool": "Inpostaçioìn da pàgina", + "visualeditor-special-characters-group-other": "Dêuviòu de spésso", + "visualeditor-templatesused-tool": "Template deuviæ", + "visualeditor-title-error": "Tìtolo no vàlido.", + "visualeditor-toload": "Òua saiâ caregòu l'editor. Se pasòu quàrche segóndo ti véddi ancón sto mesàggio chi, pe piâxéi [$1 càrega tórna a pàgina].", + "visualeditor-tooltip-non-breaking-space": "Spàçio unificatô", + "visualeditor-version-label": "Versción", + "visualeditor-wikitext-progress": "Conversción wikitèsto", + "visualeditor-wikitext-warning": "T'ê aprêuvo a dêuviâ l'editor vizoâle - o [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitèsto]] chi o no fonçiónn-a. Pe pasâ a-a modìfica wikitèsto quànde se sæ sénsa pèrde e tò modìfiche, sciàcca in sciô poméllo de càngio.", + "visualeditor-wikitext-warning-title": "Rilevòu wikitèsto", + "visualeditor-wikitextconvert-title": "Convertî a formataçión in wikitèsto?", + "visualeditor-wikitextconvert-message": "O contegnûo che ti t'æ inpastetòu o contêgne da formataçión. Ti veu convertîlo in wikitèsto ò inserîlo cómme scrîto normâle?", + "visualeditor-wikitextconvert-convert": "Convèrti in wikitèsto" } diff --git a/i18n/ve-mw/ljp.json b/i18n/ve-mw/ljp.json new file mode 100644 index 0000000000..f3d26b3d4b --- /dev/null +++ b/i18n/ve-mw/ljp.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "DedeKurnn" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Tambahko sumber penjabaran lokal", + "visualeditor-ca-createsource": "Guway sumber", + "visualeditor-ca-editsource": "Dandani sumber", + "visualeditor-ca-editsource-section": "dandani sumber" +} diff --git a/i18n/ve-mw/lkt.json b/i18n/ve-mw/lkt.json index 169a023f58..a6d90235b9 100644 --- a/i18n/ve-mw/lkt.json +++ b/i18n/ve-mw/lkt.json @@ -2,11 +2,15 @@ "@metadata": { "authors": [ "Peter57770", - "R12ntech" + "R12ntech", + "AmazingJus", + "Tuwewanzi" ] }, - "tooltip-ca-ve-edit": "Oyúblaye kiŋ lé yutȟókeča yo/ye", - "visualeditor-ca-editsource": "Óhiyu kiŋ yutȟókeča yo/ye", - "visualeditor-ca-editsource-section": "ohútkȟaŋ yutȟókeča", + "tooltip-ca-ve-edit": "Oyúblaye kiŋ lé yutȟókeča {{GENDER:|yo|ye|yo/ye}}", + "visualeditor-ca-createlocaldescriptionsource": "Léčhiya wópȟaȟta-oyákapi óhiyu káǧa {{GENDER:|yo|ye|yo/ye}}", + "visualeditor-ca-createsource": "Óhiyu kiŋ káǧa {{GENDER:|yo|ye|yo/ye}}", + "visualeditor-ca-editsource": "Óhiyu yutȟókeča", + "visualeditor-ca-editsource-section": "óhiyu yutȟókeča {{GENDER:|yo|ye|yo/ye}}", "visualeditor-dialog-media-search-tab-search": "Wóle" } diff --git a/i18n/ve-mw/lmo.json b/i18n/ve-mw/lmo.json index 82c8381cd2..3720b709da 100644 --- a/i18n/ve-mw/lmo.json +++ b/i18n/ve-mw/lmo.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Gloria sah", "Mondschein", "Ninonino", diff --git a/i18n/ve-mw/ln.json b/i18n/ve-mw/ln.json index 4dd138fc86..b55453aeaa 100644 --- a/i18n/ve-mw/ln.json +++ b/i18n/ve-mw/ln.json @@ -1,9 +1,12 @@ { "@metadata": { "authors": [ + "Lydie maliki", "Moyogo" ] }, + "visualeditor-ca-createlocaldescriptionsource": "Bakisa source ya description ya esika", + "visualeditor-ca-createsource": "Bosala source", "visualeditor-ca-editsource": "Kobɔngisa mosólo", "visualeditor-ca-editsource-section": "kobɔngisa mosólo", "visualeditor-dialog-transclusion-contextitem-description": "Ekelámí útá: $1" diff --git a/i18n/ve-mw/lo.json b/i18n/ve-mw/lo.json index f34eac17cb..a75a963760 100644 --- a/i18n/ve-mw/lo.json +++ b/i18n/ve-mw/lo.json @@ -3,10 +3,13 @@ "authors": [ "Aefgh39622", "Bebiezaza", - "Lookruk" + "Lookruk", + "RenKtv" ] }, "tooltip-ca-ve-edit": "ແກ້ໄຂໜ້ານີ້", + "visualeditor-ca-createlocaldescriptionsource": "ເພີ່ມຄຳອະທິບາຍທ້ອງຖິ່ນ", + "visualeditor-ca-createsource": "ສ້າງໜ້າ", "visualeditor-ca-editsource": "ດັດແກ້ຕົ້ນສະບັບ", "visualeditor-ca-editsource-section": "ດັດແກ້ຕົ້ນສະບັບ" } diff --git a/i18n/ve-mw/lt.json b/i18n/ve-mw/lt.json index 6979794b1e..39f500ea25 100644 --- a/i18n/ve-mw/lt.json +++ b/i18n/ve-mw/lt.json @@ -52,11 +52,9 @@ "visualeditor-dialog-media-info-artist": "Įkėlė $1", "visualeditor-dialog-media-info-audiofile": "Garso failas", "visualeditor-dialog-media-info-created": "Sukūrė: $1", - "visualeditor-dialog-media-info-ellipsis": "…", - "visualeditor-dialog-media-info-meta-artist": "Kūrėjas: $1", + "visualeditor-dialog-media-info-meta-artist": "Autorius: $1", "visualeditor-dialog-media-info-moreinfo": "Daugiau informacijos", "visualeditor-dialog-media-info-readmore": "Skaityti daugiau", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Įkelta: $1", "visualeditor-dialog-media-page-advanced": "Išplėstiniai", "visualeditor-dialog-media-page-general": "Bendrieji", diff --git a/i18n/ve-mw/lv.json b/i18n/ve-mw/lv.json index 7944888c72..eca5742079 100644 --- a/i18n/ve-mw/lv.json +++ b/i18n/ve-mw/lv.json @@ -52,6 +52,7 @@ "visualeditor-changedesc-mwtransclusion": "Veidnes parametri izmainīti", "visualeditor-desc": "Vizuālais MediaWiki redaktors", "visualeditor-descriptionpagelink": "Project:Vizuālais redaktors", + "visualeditor-dialog-extension-abandonedit": "Vai tiešām vēlies aizvērt šo dialoglodziņu, nepielietojot izmaiņas?", "visualeditor-dialog-media-alttext-checkbox": "Izmantot parakstu kā alternatīvo tekstu", "visualeditor-dialog-media-alttext-section": "Alternatīvais teksts", "visualeditor-dialog-media-change-image": "Mainīt attēlu", @@ -169,6 +170,7 @@ "visualeditor-dialog-transclusion-filter-placeholder": "Atrast lauku", "visualeditor-dialog-transclusion-filter-show-all": "Rādīt visus", "visualeditor-dialog-transclusion-help-title": "Veidņu labošanas atbalsts", + "visualeditor-dialog-transclusion-help-message": "Veidnes nodrošina satura formatējumu. Šis redaktors kreisajā pusē parāda, kādas opcijas nodrošina veidne, un pēc tam šīm opcijām labajā pusē var pievienot vērtības.", "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Palīdzība par veidņu labošanu]", "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Īsinājumtaustiņi]", "visualeditor-dialog-transclusion-deprecated-parameter": "Novecojis lauks", @@ -176,8 +178,10 @@ "visualeditor-dialog-transclusion-loading": "Ielādē…", "visualeditor-dialog-transclusion-no-template-data-description": "Šai veidnei trūkst [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] informācija un tās parametri ir [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters automātiski ģenerēti]. Tā rezultātā veidnei un tās parametriem trūkst apraksta. [[$1|Veidnes lapā]] var būt pieejama papildu informācija.", "visualeditor-dialog-transclusion-no-template-description": "Veidnei \"$1\" vēl nav apraksta, bet informācija var būt atrodama [[$2|veidnes lapā]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Šai veidnei nav dokumentētu parametru, un tā var būt paredzēta lietošanai bez tiem.", "visualeditor-dialog-transclusion-param-default": "Noklusējums: $1", "visualeditor-dialog-transclusion-param-example-long": "Piemērs: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Nospied atstarpes taustiņu, lai pievienotu vai noņemtu parametrus. Nospied Enter, lai pievienotu parametru un uzreiz labotu tā vērtību. Ja parametrs jau ir atlasīts, nospied taustiņu Enter, lai labotu vērtību.", "visualeditor-dialog-transclusion-param-selection-aria-label": "Parametri veidnē \"$1\"", "visualeditor-dialog-transclusion-param-undocumented": "(Nedokumentēts parametrs)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Atrast veidni", @@ -194,6 +198,7 @@ "visualeditor-dialog-transclusion-title-edit-transclusion": "Veidnes saturs", "visualeditor-dialog-transclusion-template-search": "Veidņu meklēšana", "visualeditor-dialog-transclusion-wikitext": "Vikiteksts", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Nospied atstarpes taustiņu, lai atlasītu vikiteksta elementu. Nospied Enter, lai atlasītu un rediģētu vikitekstu.", "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Nospied Ctrl+Del, lai dzēstu vikiteksta elementu. Nospied Ctrl+Shift+bultiņas, lai pārvietotu elementu uz augšu vai leju.", "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Nospied Ctrl+Del, lai dzēstu vikiteksta elementu.", "visualeditor-dialogbutton-media-tooltip": "Attēli un mediji", diff --git a/i18n/ve-mw/lzh.json b/i18n/ve-mw/lzh.json index 229833ec00..6e8dc8cc16 100644 --- a/i18n/ve-mw/lzh.json +++ b/i18n/ve-mw/lzh.json @@ -16,7 +16,7 @@ "visualeditor-ca-createlocaldescriptionsource": "增地言", "visualeditor-ca-createsource": "立碼", "visualeditor-ca-editsource": "纂碼", - "visualeditor-ca-editsource-section": "纂碼", + "visualeditor-ca-editsource-section": "溯源", "visualeditor-categories-tool": "類", "visualeditor-descriptionpagelink": "Project:呈纂", "visualeditor-dialog-media-info-moreinfo": "益訊", diff --git a/i18n/ve-mw/mad.json b/i18n/ve-mw/mad.json index e7f0cdd538..d7af98c743 100644 --- a/i18n/ve-mw/mad.json +++ b/i18n/ve-mw/mad.json @@ -3,6 +3,7 @@ "authors": [ "Abdiafrizal", "Boesenbergia", + "Munajad.MH", "NoiX180" ] }, @@ -22,15 +23,15 @@ "visualeditor-autosave-recovered-text": "Obâ'ânna dhika sè ghi' ta' èsèmpen ella otomatis èpabali.", "visualeditor-autosave-recovered-title": "Obâ'ân èpabâli", "visualeditor-backbutton-tooltip": "Abâli", - "visualeditor-ca-createlocaldescriptionsource": "Tambâ'aghi jhâjhârbâ'ân lokal", + "visualeditor-ca-createlocaldescriptionsource": "Tambâ sombher jhâjhârbâ'ân lokal", "visualeditor-ca-createsource": "Ghâbây sombher", - "visualeditor-ca-editlocaldescriptionsource": "Beccè' sombher ḍèskripsi lokal", + "visualeditor-ca-editlocaldescriptionsource": "Beccè' sombher jhâjhârbâ'ân lokal", "visualeditor-ca-editsource": "Beccè' sombher", "visualeditor-ca-editsource-section": "beccè' sombher", "visualeditor-categories-tool": "Bhângsa", "visualeditor-changedesc-mwlanguagevariant": "Markup varian bhâsa èyobâ", "visualeditor-changedesc-mwredirect": "Sekkèp pangallèyan aobâ ḍâri $1 dhâddhi $2", - "visualeditor-changedesc-mwtransclusion": "Paramèter cètha'an èyobâ", + "visualeditor-changedesc-mwtransclusion": "Paramèter cèṭa'an èyobâ", "visualeditor-desc": "Pameccè'an visual ka'angghuy MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", "visualeditor-dialog-media-alttext-section": "Tèks alternatif", @@ -45,7 +46,6 @@ "visualeditor-dialog-media-info-ellipsis": "...", "visualeditor-dialog-media-info-moreinfo": "Bâberta saghenna'na", "visualeditor-dialog-media-info-readmore": "Bâca terros", - "visualeditor-dialog-media-info-separator": ".", "visualeditor-dialog-media-page-advanced": "Terrosan", "visualeditor-dialog-media-page-general": "Omom", "visualeditor-dialog-media-position-checkbox": "Bhundhu' tèks è sakobhengnga butèr arèya", diff --git a/i18n/ve-mw/mag.json b/i18n/ve-mw/mag.json index 0d55ffb024..5360e640bc 100644 --- a/i18n/ve-mw/mag.json +++ b/i18n/ve-mw/mag.json @@ -5,29 +5,29 @@ ] }, "collabpad-doctitle": "CollabPad: $1", - "collabpad-import-subtitle": "$1 से आयात कैल गेल", + "collabpad-import-subtitle": "$1 से आयात कैल गेलै", "collabpad": "CollabPad", - "tooltip-ca-ve-edit": "ई पन्ना सम्पादित करी", - "tooltip-ca-ve-edit-local": "स्थानीय बिवरण पन्ना सम्पादित करी", - "tooltip-ca-ve-create": "ई पन्ना बनावी", - "tooltip-ca-ve-create-local": "स्थानीय बिवरण पन्ना बनावी", - "tooltip-ca-editsource": "ई पन्नाके स्रोतकोड् सम्पादित करी", - "tooltip-ca-editsource-local": "स्थानीय बिवरण पन्नाके स्रोतकोड् सम्पादित करी", - "tooltip-ca-createsource": "ई पन्नाके स्रोतकोड् बनावी", - "tooltip-ca-createsource-local": "स्थानीय बिवरण पन्नाके स्रोतकोड् बनावी", - "visualeditor-advancedsettings-tool": "उन्नत सेटिङ्ग्स्", + "tooltip-ca-ve-edit": "ई पन्ना सम्पादित करथिन", + "tooltip-ca-ve-edit-local": "स्थानीय विवरण पन्ना सम्पादित करथिन", + "tooltip-ca-ve-create": "ई पन्ना बनावथिन", + "tooltip-ca-ve-create-local": "स्थानीय विवरण पन्ना बनावथिन", + "tooltip-ca-editsource": "ई पन्नाके स्रोतकोड सम्पादित करथिन", + "tooltip-ca-editsource-local": "स्थानीय विवरण पन्नाके स्रोतकोड सम्पादित करथिन", + "tooltip-ca-createsource": "ई पन्नाके स्रोतकोड बनावथिन", + "tooltip-ca-createsource-local": "स्थानीय विवरण पन्नाके स्रोतकोड बनावथिन", + "visualeditor-advancedsettings-tool": "उन्नत सेटिङ्ग", "visualeditor-annotations-default-description": "ई पन्ना एगो भाष्यश्रेणीके भाग हे ।", "visualeditor-annotations-default-end": "भाष्यश्रेणीके अन्त", "visualeditor-annotations-default-start": "भाष्यश्रेणीके प्रारम्भ", - "visualeditor-autosave-modified-prompt-accept": "सम्पादन जारी रखी", - "visualeditor-autosave-modified-prompt-reject": "नया सम्पादन आरम्भ करी", - "visualeditor-autosave-modified-prompt-title": "{{GENDER:|अपन}} सम्पादन जारी रखेके?", - "visualeditor-backbutton-tooltip": "पाछे जायी", - "visualeditor-ca-createlocaldescriptionsource": "स्थानीय बिवरण स्रोत जोड़ी", - "visualeditor-ca-createsource": "स्रोत बनावी", - "visualeditor-ca-editsource": "स्रोत सम्पादित करी", - "visualeditor-ca-editsource-section": "स्रोत सम्पादित करी", - "visualeditor-categories-tool": "बर्गसब", + "visualeditor-autosave-modified-prompt-accept": "सम्पादन जारी रखथिन", + "visualeditor-autosave-modified-prompt-reject": "नया सम्पादन आरम्भ करथिन", + "visualeditor-autosave-modified-prompt-title": "{{GENDER:|अपन}} सम्पादन जारी रखेके ?", + "visualeditor-backbutton-tooltip": "पाछे जैथिन", + "visualeditor-ca-createlocaldescriptionsource": "स्थानीय विवरण स्रोत जोड़थिन", + "visualeditor-ca-createsource": "स्रोत बनावथिन", + "visualeditor-ca-editsource": "स्रोत सम्पादित करथिन", + "visualeditor-ca-editsource-section": "स्रोत सम्पादित करथिन", + "visualeditor-categories-tool": "श्रेणी", "visualeditor-descriptionpagelink": "Project:यथादृश्य सम्पादक", "visualeditor-dialog-media-goback": "पाछे", "visualeditor-dialog-media-info-artist": "$1 द्वारा उपारोपित", @@ -35,11 +35,11 @@ "visualeditor-dialog-media-info-created": "सृष्टि: $1", "visualeditor-dialog-media-info-meta-artist": "लेखक: $1", "visualeditor-dialog-media-info-moreinfo": "अधिक जानकारी", - "visualeditor-dialog-media-info-readmore": "आउ पढ़ी", + "visualeditor-dialog-media-info-readmore": "आउ पढ़थिन", "visualeditor-dialog-media-info-uploaded": "उपारोपक: $1", "visualeditor-dialog-media-page-advanced": "उन्नत", "visualeditor-dialog-media-page-general": "सामान्य", - "visualeditor-dialog-media-position-checkbox": "ई बस्तुके चारोदन्ने पाठ लपेटी", + "visualeditor-dialog-media-position-checkbox": "ई वस्तुके चारोदने पाठ लपेटथिन", "visualeditor-dialog-media-position-checkbox-help": "अपने ई मीडिया बस्तुके पन्नाके पाठ साथे पेरेके जगह इन्लाइन् प्रकट कर सकही । अपनेके शायदे कखनियो ई करेके चाहि न त ई डिब्बाके अचिन्हित करेपर पाठके प्रवाह तोड़ देतै ।", "visualeditor-dialog-media-position-section": "स्थिति", "visualeditor-dialog-media-position-section-help": "ई मीडिया बस्तु ई पन्नापर कन्ने लौकत ई अपने नियत कर सकही । ई कखनियो पन्नाके एक दन्ने चित्रके एक लम्बी कतारके तोड़ेला प्रयोग कैल जाहे ।", diff --git a/i18n/ve-mw/mak.json b/i18n/ve-mw/mak.json index 51a9f64ff5..17fe0a3444 100644 --- a/i18n/ve-mw/mak.json +++ b/i18n/ve-mw/mak.json @@ -4,6 +4,8 @@ "Han4299" ] }, + "visualeditor-ca-createlocaldescriptionsource": "Tambai pappakasingarak lokalak", + "visualeditor-ca-createsource": "Parek (tulisang wiki)", "visualeditor-ca-editsource": "Pakabajiki assalakna", "visualeditor-ca-editsource-section": "pakabajiki assalakna", "visualeditor-descriptionpagelink": "Project:VisualEditor" diff --git a/i18n/ve-mw/maw.json b/i18n/ve-mw/maw.json new file mode 100644 index 0000000000..f52e9aa573 --- /dev/null +++ b/i18n/ve-mw/maw.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Christian Yakubu" + ] + }, + "visualeditor-ca-createsource": "Nami din yi sheli na", + "visualeditor-ca-editsource": "Malinniŋ din yi sheeli na", + "visualeditor-ca-editsource-section": "Malinniŋ din yi sheeli na" +} diff --git a/i18n/ve-mw/mdh.json b/i18n/ve-mw/mdh.json new file mode 100644 index 0000000000..b6a4780aca --- /dev/null +++ b/i18n/ve-mw/mdh.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Bangsa Manusia" + ] + }, + "visualeditor-ca-createsource": "Mumbal sa ebpunan", + "visualeditor-ca-editsource": "Umbayan i ebpunan", + "visualeditor-ca-editsource-section": "Umbayan i ebpunan" +} diff --git a/i18n/ve-mw/mfa.json b/i18n/ve-mw/mfa.json new file mode 100644 index 0000000000..7cf2bffa68 --- /dev/null +++ b/i18n/ve-mw/mfa.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "EmpAhmadK", + "Lam Takuma", + "Mirlim" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Wak sumbo tterae hok stepak", + "visualeditor-ca-createsource": "Buwak sumbo", + "visualeditor-ca-editsource": "Suténg sumbo", + "visualeditor-ca-editsource-section": "suténg sumbo" +} diff --git a/i18n/ve-mw/mg.json b/i18n/ve-mw/mg.json index d593c818f2..bc8a576d53 100644 --- a/i18n/ve-mw/mg.json +++ b/i18n/ve-mw/mg.json @@ -8,6 +8,10 @@ "tooltip-ca-editsource": "Hanova ny fangon'ity pejy ty", "tooltip-ca-createsource": "Hamorona ny fangon'ity pejy ity", "visualeditor-advancedsettings-tool": "Safidy mandroso kokoa", + "visualeditor-annotations-extended-documentation": "Nohalavaina ity elanelana fanamarihana ity satria tsy voapetraka tsara ny votoaty nofefeny. Soso-kevitra ny hanamarinana fa voapetraka tsara ny votoaty voamarika alohan'ny hanovana azy; raha tsy izany, mety ho lehibe kokoa noho ny nampoizina ny elanelana voamarika.", + "visualeditor-autosave-modified-prompt-accept": "Hanohy ny fanovana", + "visualeditor-autosave-modified-prompt-message": "Nisy nanova ity pejy ity hatramin'ny nampidinanao azy farany. Tianao ve ny hanohy ny fanovanao tamin'ny kinova taloha, sa hanomboka fanovana vaovao amin'ny kinova farany indrindra?{{GENDER:}}", + "visualeditor-autosave-modified-prompt-reject": "Hanomboka fanovana vaovao", "visualeditor-ca-createlocaldescriptionsource": "Hanampy loharanom-pamaritana an-toerana", "visualeditor-ca-createsource": "Hamorona ny fango", "visualeditor-ca-editsource": "Hanova ny fango", @@ -63,7 +67,7 @@ "visualeditor-dialog-table-collapsible": "Azo afintina", "visualeditor-dialog-table-sortable": "Azo alamina", "visualeditor-dialog-template-title": "Endrika", - "visualeditor-dialog-transclusion-add-template": "Hampiditra endirka", + "visualeditor-dialog-transclusion-add-template": "Hampiditra endrika", "visualeditor-dialog-transclusion-collapse-options": "Hanafina safidy", "visualeditor-dialog-transclusion-contextitem-description": "Navoaka avy amin'i: $1", "visualeditor-dialog-transclusion-expand-options": "Aseho ny safidy", @@ -72,7 +76,7 @@ "visualeditor-dialog-transclusion-required-parameter": "Sahan'ita ilaina", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Hiverina", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Tohizana ihany", - "visualeditor-dialogbutton-media-tooltip": "Haino aman-jery", + "visualeditor-dialogbutton-media-tooltip": "Sary sy haino aman-jery", "visualeditor-dialogbutton-template-tooltip": "Endrika", "visualeditor-editnotices-tooltip": "Hanova ny famoahan-kevitra", "visualeditor-formatdropdown-format-mw-heading1": "Lohatenim-pejy", @@ -82,8 +86,8 @@ "visualeditor-formatdropdown-format-mw-heading5": "Zana-dohateny 3", "visualeditor-formatdropdown-format-mw-heading6": "Zana-dohateny 4", "visualeditor-languages-tool": "Fiteny", - "visualeditor-linkinspector-button-link-external": "Rohy ivelany", - "visualeditor-linkinspector-button-link-internal": "Hitady pejy", + "visualeditor-linkinspector-button-link-external": "Tranonkala ivelany", + "visualeditor-linkinspector-button-link-internal": "Hikaroka pejy anaty", "visualeditor-linkinspector-convert-link-isbn": "Avadika ho rohy ISBN", "visualeditor-linkinspector-educationpopup-title": "Rohy", "visualeditor-mweditmodeve-popup-body": "Afaka mivadika amin'ny fanovana ara-maso na oviana na oviana ianao amin'ny alalan'ny fanindriana ity sarikely ity.", diff --git a/i18n/ve-mw/mk.json b/i18n/ve-mw/mk.json index f3be340d84..e001831995 100644 --- a/i18n/ve-mw/mk.json +++ b/i18n/ve-mw/mk.json @@ -62,11 +62,9 @@ "visualeditor-dialog-media-info-artist": "Подигнато од $1", "visualeditor-dialog-media-info-audiofile": "Звучна снимка", "visualeditor-dialog-media-info-created": "Создадено: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Автор: $1", "visualeditor-dialog-media-info-moreinfo": "Повеќе информации", "visualeditor-dialog-media-info-readmore": "Прочитајте повеќе", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Подигнато: $1", "visualeditor-dialog-media-page-advanced": "Напредни", "visualeditor-dialog-media-page-general": "Општи", @@ -249,6 +247,7 @@ "visualeditor-includes-includeonly-description": "Кога содржина од оваа страница се користи во друга, овде ќе се вклучи следнава дополнителна содржина:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Дознајте повеќе за делумното превметнување]", "visualeditor-languages-tool": "Јазици", + "visualeditor-linkcontext-uneditable": "За жал, оваа врска засега може да се уредува само во изворен режим.", "visualeditor-linkinspector-button-link-external": "Надворешно мреж. место", "visualeditor-linkinspector-button-link-internal": "Пребарај внатрешни страници", "visualeditor-linkinspector-convert-link-isbn": "Претвори во ISBN-врска", @@ -310,7 +309,7 @@ "visualeditor-mwpredialog-title": "Претформатиран прост текст", "visualeditor-mwsignature-tool": "Ваш потпис", "visualeditor-preference-visualeditor": "Овозможи го нагледниот уредник", - "visualeditor-preference-newwikitexteditor-enable": "Користи викитекстуален режим во нагледниот уредник намсто различен уредник на викитекст", + "visualeditor-preference-newwikitexteditor-enable": "Користи викитекстуален режим во нагледниот уредник наместо различен уредник на викитекст", "visualeditor-preference-newwikitexteditor-help": "Ова понекогаш се нарекува „уредникот на викитекст од 2017 г“.", "visualeditor-preference-tabs": "Режим на уредување:", "visualeditor-preference-tabs-multi-tab": "Дај ги двете уреднички јазичиња", diff --git a/i18n/ve-mw/mn.json b/i18n/ve-mw/mn.json index d5f2d85569..9813fb2c2c 100644 --- a/i18n/ve-mw/mn.json +++ b/i18n/ve-mw/mn.json @@ -7,7 +7,8 @@ "Munkhzaya.E", "Sembuk", "Wisdom", - "Буцах" + "Буцах", + "Zorigt" ] }, "tooltip-ca-ve-edit": "Энэ хуудсыг VisualEditor-р засварлах", @@ -18,7 +19,7 @@ "visualeditor-descriptionpagelink": "Project:VisualEditor", "visualeditor-dialog-media-change-image": "Ялгаатай зураг сонгоно уу", "visualeditor-dialog-media-type-none": "Үндсэн", - "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Нуугдсан категориуд", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Нуугдсан ангиллууд", "visualeditor-dialog-transclusion-collapse-options": "Сонголтуудыг нуух", "visualeditor-dialog-transclusion-expand-options": "Сонголтуудыг харуулах", "visualeditor-savedialog-label-publish-short": "Нийтлэх" diff --git a/i18n/ve-mw/mnc.json b/i18n/ve-mw/mnc.json index 1f07dc1289..0b2adc6a0c 100644 --- a/i18n/ve-mw/mnc.json +++ b/i18n/ve-mw/mnc.json @@ -1,16 +1,15 @@ { "@metadata": { "authors": [ - "Amire80", "Chulsu463", "MiiCii" ] }, "tooltip-ca-ve-edit": "Ere afaha be banjibume arara", "visualeditor-backbutton-tooltip": "Marimbi", - "visualeditor-ca-createlocaldescriptionsource": "Tesu ba -i nirume fisembure sekiyen kode be nonggibure", - "visualeditor-ca-createsource": "Sekiyen kode be fukjileme ilibure", + "visualeditor-ca-createlocaldescriptionsource": "Tesu ba -i nirume fisembure sekiyen -i oroloho temgetu be nonggibure", + "visualeditor-ca-createsource": "Sekiyen -i oroloho temgetu be fukjileme ilibure", "visualeditor-ca-editsource": "Sekiyen isamjambi", - "visualeditor-ca-editsource-section": "Sekiyen kode be banjibume arara", + "visualeditor-ca-editsource-section": "Sekiyen -i oroloho temgetu be banjibume isabure", "visualeditor-descriptionpagelink": "Project:Tuwaci ojoro banjibume arara tetun" } diff --git a/i18n/ve-mw/mns.json b/i18n/ve-mw/mns.json new file mode 100644 index 0000000000..1b1788f88e --- /dev/null +++ b/i18n/ve-mw/mns.json @@ -0,0 +1,29 @@ +{ + "@metadata": { + "authors": [ + "Ewithu" + ] + }, + "visualeditor-ca-editsource": "код сё̄питэн", + "visualeditor-ca-editsource-section": "код сё̄питэн", + "visualeditor-dialog-media-content-filename": "файл нам", + "visualeditor-dialog-media-content-section": "Ёл ловинтап", + "visualeditor-dialog-media-search-tab-search": "Кисхатыл", + "visualeditor-dialog-meta-categories-category": "Категория", + "visualeditor-dialog-meta-categories-data-label": "Категорият", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Йильпи категория", + "visualeditor-dialog-meta-categories-section": "Категорият", + "visualeditor-dialog-meta-languages-code-label": "Ла̄тыӈ ко̄д", + "visualeditor-dialog-meta-languages-label": "Ла̄тӈыт", + "visualeditor-dialog-meta-languages-name-label": "Ла̄тыӈ", + "visualeditor-dialog-meta-languages-section": "Ла̄тӈыт", + "visualeditor-dialog-meta-settings-index-disable": "А̄ти", + "visualeditor-dialog-meta-settings-index-force": "А-а", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "А̄ти", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "А-а", + "visualeditor-expandable-less": "Мосьнув", + "visualeditor-expandable-more": "Са̄внув", + "visualeditor-languages-tool": "Ла̄тӈыт", + "visualeditor-media-title-image": "Хури", + "visualeditor-media-title-video": "Видео" +} diff --git a/i18n/ve-mw/mo.json b/i18n/ve-mw/mo.json index b919e9ba60..84242641ec 100644 --- a/i18n/ve-mw/mo.json +++ b/i18n/ve-mw/mo.json @@ -2,11 +2,12 @@ "@metadata": { "authors": [ "Cybernenea11", - "TheChampionMan1234" + "TheChampionMan1234", + "Orbitminis" ] }, "tooltip-ca-ve-edit": "Модификаць ачастэ паӂинэ", "visualeditor-ca-editsource": "Модификаре сурсэ", - "visualeditor-ca-editsource-section": "редактаря сурсей", + "visualeditor-ca-editsource-section": "модификаре сурсэ", "visualeditor-descriptionpagelink": "Project:РедакторВизуал" } diff --git a/i18n/ve-mw/mos.json b/i18n/ve-mw/mos.json index 30c515d9af..63cd968581 100644 --- a/i18n/ve-mw/mos.json +++ b/i18n/ve-mw/mos.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Abdul Fatawu 352", - "Amire80", "Hasslaebetch", "Raizkgh" ] diff --git a/i18n/ve-mw/mrt.json b/i18n/ve-mw/mrt.json new file mode 100644 index 0000000000..3f962355d5 --- /dev/null +++ b/i18n/ve-mw/mrt.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Galdiz" + ] + }, + "visualeditor-ca-createsource": "gurlagu gududa the" +} diff --git a/i18n/ve-mw/ms.json b/i18n/ve-mw/ms.json index 92585269ca..8b1abb3572 100644 --- a/i18n/ve-mw/ms.json +++ b/i18n/ve-mw/ms.json @@ -48,7 +48,7 @@ "visualeditor-changedesc-mwcategory-sortkey-changed": "Kunci isihan ditukar daripada $1 kepada $2", "visualeditor-changedesc-mwcategory-sortkey-set": "Kunci isih ditetapkan kepada $1", "visualeditor-changedesc-mwcategory-sortkey-unset": "Kunci isih dinyahtetap daripada $1", - "visualeditor-changedesc-mwlanguagevariant": "Markup varian bahasa diubah", + "visualeditor-changedesc-mwlanguagevariant": "Penanda kelainan bahasa diubah", "visualeditor-changedesc-mwredirect": "Sasaran lencongan diubah daripada $1 kepada $2", "visualeditor-changedesc-mwtransclusion": "Parameter templat diubah", "visualeditor-desc": "Alat sunting visual untuk MediaWiki", @@ -67,6 +67,7 @@ "visualeditor-dialog-media-info-artist": "Dimuat naik oleh $1", "visualeditor-dialog-media-info-audiofile": "Fail audio", "visualeditor-dialog-media-info-created": "Dicipta pada $1", + "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Pengarang: $1", "visualeditor-dialog-media-info-moreinfo": "Maklumat lanjut", "visualeditor-dialog-media-info-readmore": "Ketahui lebih lanjut", @@ -81,16 +82,19 @@ "visualeditor-dialog-media-search-tab-search": "Cari", "visualeditor-dialog-media-search-tab-upload": "Muat naik", "visualeditor-dialog-media-size-section": "Saiz gambar", + "visualeditor-dialog-media-size-section-help": "Anda boleh menetapkan berapa besar item media muncul pada laman tersebut. Media itu sepatutnya hampir selalu bersaiz biasa, kerana saiz tersuai akan mengganggu reka letak laman untuk pembaca dan menjadikannya tidak terlaras.", "visualeditor-dialog-media-title": "Tetapan media", "visualeditor-dialog-media-type-border": "Pinggir", "visualeditor-dialog-media-type-frame": "Bingkai", "visualeditor-dialog-media-type-frameless": "Tanpa bingkai", "visualeditor-dialog-media-type-none": "Asas", "visualeditor-dialog-media-type-section": "Jenis gambar", + "visualeditor-dialog-media-type-section-help": "Anda boleh menetapkan cara item media muncul pada laman tersebut. Tetapan ini sepatutnya merupakan format lakaran kenit untuk kekal terlaras dengan laman lain untuk hampir semua kes.", "visualeditor-dialog-media-type-thumb": "Gambar kenit", "visualeditor-dialog-media-upload": "Muat naik", "visualeditor-dialog-meta-advancedsettings-label": "Tetapan selanjutnya", "visualeditor-dialog-meta-advancedsettings-section": "Tetapan selanjutnya", + "visualeditor-dialog-meta-categories-addcategory-label": "Tambahkan kategori pada laman ini", "visualeditor-dialog-meta-categories-category": "Kategori", "visualeditor-dialog-meta-categories-data-label": "Kategori", "visualeditor-dialog-meta-categories-defaultsort-help": "Anda boleh menulis ganti bagaimana laman ini dipaparkan dalam kategorinya dengan menetapkan indeks yang berlainan sebagai isihan gantinya. Ini sering digunakan untuk memaparkan laman-laman tokoh mengikut nama akhir (marga atau nama keluarga), tetapi dinyatakan dengan nama pertama (nama berian) dahulu.", @@ -112,27 +116,32 @@ "visualeditor-dialog-meta-languages-readonlynote": "Ini merupakan senarai halaman dalam bahasa-bahasa lain yang terpaut dengan halaman ini; buat masa sekarang, ia hanya boleh disunting dalam mod sumber atau di Wikidata.", "visualeditor-dialog-meta-languages-section": "Bahasa", "visualeditor-dialog-meta-settings-displaytitle": "Tajuk paparan", - "visualeditor-dialog-meta-settings-displaytitle-help": "Anda boleh menggantikan cara paparan tajuk laman ini dengan menetapkan label yang lain untuk dipaparkan.", + "visualeditor-dialog-meta-settings-displaytitle-help": "Anda boleh mengatasi cara paparan tajuk laman ini dengan menetapkan label yang lain untuk dipaparkan.", "visualeditor-dialog-meta-settings-hiddencat-help": "Anda boleh mengelakkan kategori ini daripada terpapar dalam senarai kategori pada laman-laman anggotanya. Ini berguna untuk kategori yang diambil berat oleh penyunting tetapi tidak dipedulikan oleh kebanyakan pembaca, misalnya laman-laman yang memerlukan gambar ilustrasi.", "visualeditor-dialog-meta-settings-hiddencat-label": "Kategori tersembunyi", "visualeditor-dialog-meta-settings-index-default": "Asali", "visualeditor-dialog-meta-settings-index-disable": "Tidak", "visualeditor-dialog-meta-settings-index-force": "Ya", + "visualeditor-dialog-meta-settings-index-help": "Anda boleh memaksa enjin carian untuk menyenaraikan laman ini dalam hasil yang berkaitan, atau memaksa enjin ini untuk tidak berbuat demikian. Pilihan ini tidak menjejaskan carian dalam tapak.", "visualeditor-dialog-meta-settings-index-label": "Biarkan laman ini diindekskan oleh enjin carian", "visualeditor-dialog-meta-settings-label": "Tetapan halaman", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Asali", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Tidak", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Ya", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Anda boleh memaksa paparan tab tambahan selain tab \"$1\" pada laman ini yang akan memudahkan untuk menambah bahagian baharu atau memaksanya untuk tidak muncul jika sebaliknya.", "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Paparkan tab pada laman ini untuk menambah bahagian baru", "visualeditor-dialog-meta-settings-nocontentconvert-help": "Anda boleh menghalang isi kandungan laman ini daripada ditukar secara automatik kepada skrip (abjad) lain.", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Jangan mengubah kandungan antara varian bahasa", + "visualeditor-dialog-meta-settings-noeditsection-help": "Anda boleh menghentikan pautan suntingan daripada muncul di sebelah setiap bahagian dalam kes luar biasa yang bersesuaian.", "visualeditor-dialog-meta-settings-noeditsection-label": "Matikan pautan sunting yang berdekatan dengan setiap tajuk pada laman ini.", + "visualeditor-dialog-meta-settings-nogallery-help": "Anda boleh menghalang kategori ini daripada memaparkan fail ahli dalam bentuk galeri, jika hal tersebut tidak sesuai dalam kes ini.", "visualeditor-dialog-meta-settings-nogallery-label": "Matikan galeri", "visualeditor-dialog-meta-settings-notitleconvert-help": "Anda boleh menghalang tajuk laman ini daripada ditukar secara automatik kepada skrip (abjad) lain.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Jangan mengubah tajuk antara varian bahasa", + "visualeditor-dialog-meta-settings-redirect-help": "Anda boleh menjadikan laman ini sebagai satu lencongan, yakni sejenis laman yang secara automatik akan membawa pembaca ke laman lain di wiki ini. Hal ini berguna untuk salah ejaan serta nama atau konsep alternatif. Jika anda berbuat demikian, pembaca tidak akan melihat kandungan laman ini.", "visualeditor-dialog-meta-settings-redirect-label": "Lencongkan laman ini ke", "visualeditor-dialog-meta-settings-redirect-placeholder": "Laman sasaran untuk lencongan", - "visualeditor-dialog-meta-settings-redirect-statichelp": "Anda boleh mencegah pengemaskinian automatik bagi lencongan ini apabila laman yang ditujui oleh lencongan ini dipindahkan, seandai-andainya perlu.", + "visualeditor-dialog-meta-settings-redirect-statichelp": "Anda boleh mencegah lencongan ini daripada dikemas kini secara automatik apabila laman yang dilencongkannya dipindah, dalam kes yang sangat jarang hal tersebut perlu dilakukan.", "visualeditor-dialog-meta-settings-redirect-staticlabel": "Cegah lencongan ini dari dikemaskinikan apabila laman sasaran dipindahkan.", "visualeditor-dialog-meta-settings-section": "Tetapan laman", "visualeditor-dialog-meta-settings-toc-default": "Jika perlu", @@ -147,15 +156,54 @@ "visualeditor-dialog-table-sortable": "Boleh isih", "visualeditor-dialog-table-wikitable": "Bergaya (wikitable)", "visualeditor-dialog-template-title": "Templat", + "visualeditor-dialog-transclusion-action-save": "Simpan", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Templat ini tidak wujud.", + "visualeditor-dialog-transclusion-template-title-modifier": "Pendokumenan templat dan nama [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter parameter] (jika ada) tidak tersedia semasa menyunting templat menggunakan sintaks bersarang atau pengubah suai, seperti [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst].", + "visualeditor-dialog-transclusion-template-widget-aria": "Tekan kekunci Jarak (Space) untuk memilih templat.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Tekan Ctrl+Del untuk memadam templat, parameternya dan nilainya. Tekan Ctrl+Shift+Anak panah untuk mengalihkan templat ke atas atau ke bawah.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Tekan Ctrl+Del untuk memadam templat, parameternya dan nilainya.", + "visualeditor-dialog-transclusion-add-wikitext": "Tambah wikiteks", + "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\" sudah ditambah sebagai \"$2\". Sila semak pilihan di palang sisi. Hal ini disebabkan sama ada penggunaan [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases alias] atau [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label label].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" tidak boleh ditambah kerana parameter telah ditandakan sebagai [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated deprecated].", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Tidak boleh menambah parameter \"$2\" dua kali.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Parameter \"$2\" sudah tersedia untuk digunakan. Sila semak pilihan di palang sisi.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 ialah aksara terlarang. Sila alih keluar aksara tersebut untuk menambah parameter.", + "visualeditor-dialog-transclusion-add-param-help": "Jika diketahui, masukkan nama [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters parameter tidak berdokumen]. Ambil perhatian bahawa hanya parameter yang diketahui oleh templat akan mempunyai kesan. Anda boleh mendapatkan maklumat tentang parameter sedia ada pada [[$1|laman templat]].", + "visualeditor-dialog-transclusion-add-param-placeholder": "Nama parameter", + "visualeditor-dialog-transclusion-add-param-save": "Tambah", "visualeditor-dialog-transclusion-add-template": "Tambah templat", + "visualeditor-dialog-transclusion-add-template-button": "Tambah templat", + "visualeditor-dialog-transclusion-add-template-save": "Tambah", + "visualeditor-dialog-transclusion-add-undocumented-param": "Tambah parameter tidak berdokumen", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Kembali mencari? Perubahan anda akan hilang dan tidak boleh dikembalikan.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Tutup alat sunting templat? Perubahan anda akan hilang dan tidak boleh dikembalikan.", "visualeditor-dialog-transclusion-collapse-options": "Sembunyikan pilihan", + "visualeditor-dialog-transclusion-confirmation-discard": "Buang suntingan", + "visualeditor-dialog-transclusion-confirmation-reject": "Teruskan menyunting", "visualeditor-dialog-transclusion-contextitem-description": "Dihasilkan daripada: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Memuatkan…", "visualeditor-dialog-transclusion-expand-options": "Tunjukkan pilihan", + "visualeditor-dialog-transclusion-filter-hide-unused": "Sembunyikan yang tidak digunakan", + "visualeditor-dialog-transclusion-filter-no-match": "Tiada padanan dijumpai", + "visualeditor-dialog-transclusion-filter-placeholder": "Cari medan", + "visualeditor-dialog-transclusion-filter-show-all": "Tunjukkan semua", + "visualeditor-dialog-transclusion-filter-title": "Carian parameter untuk $1", + "visualeditor-dialog-transclusion-help-title": "Sokongan penyuntingan templat", + "visualeditor-dialog-transclusion-help-message": "Templat menyediakan pemformatan untuk kandungan. Alat sunting ini menunjukkan pilihan yang disediakan oleh templat di sebelah kiri dan kemudiannya nilai boleh ditambahkan pada pilihan tersebut di sebelah kanan.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Bantuan untuk menyunting templat]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Pintasan papan kekunci]", "visualeditor-dialog-transclusion-deprecated-parameter": "Parameter lupus", "visualeditor-dialog-transclusion-deprecated-parameter-description": "Parameter telah dilupuskan. $1", "visualeditor-dialog-transclusion-loading": "Memuatkan...", + "visualeditor-dialog-transclusion-multipart-message": "Anda sedang menyunting templat serta satu atau lebih banyak [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content kandungan bersambungan] (wikiteks dan/atau templat tambahan).", + "visualeditor-dialog-transclusion-no-template-data-description": "Templat ini kekurangan [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters DataTemplat], dan parameternya telah [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters dijana secara automatik]. Akibatnya, templat dan parameternya tidak mempunyai keterangan. Mungkin terdapat maklumat tambahan pada [[$1|laman templat]].", "visualeditor-dialog-transclusion-no-template-description": "Templat \"$1\" belum ada keterangan, tetapi mungkin ada maklumat di [[$2|halaman templat]] berkenaan.", + "visualeditor-dialog-transclusion-no-template-parameters": "Templat ini tidak mempunyai parameter yang didokumenkan dan mungkin bertujuan untuk digunakan tanpa parameter tersebut.", "visualeditor-dialog-transclusion-param-default": "Asali: $1", + "visualeditor-dialog-transclusion-param-example-long": "Contoh: $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Tekan kekunci jarak (Space) untuk menambah atau membuang parameter. Tekan Enter untuk menambah parameter dan segera menyunting nilainya. Jika parameter sudah dipilih, tekan Enter untuk menyunting nilai.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Parameter dalam $1", + "visualeditor-dialog-transclusion-param-undocumented": "(parameter tidak berdokumen)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Cari templat", "visualeditor-dialog-transclusion-required-parameter": "Parameter diperlukan", "visualeditor-dialog-transclusion-required-parameter-description": "Parameter diperlukan.", @@ -163,6 +211,17 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Teruskan sahaja", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Ruangan|Ruangan-ruangan}} yang diperlukan masih tertinggal", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Adakah anda betul-betul mahu teruskan tanpa mengisi {{PLURAL:$2|ruangan|ruangan-ruangan}} $1?", + "visualeditor-dialog-transclusion-see-template": "Templat tersebut dijana oleh pengguna dan mungkin kekurangan penerangan yang lengkap. Mungkin terdapat maklumat tambahan tentang [[$2|laman templat ini]].", + "visualeditor-dialog-transclusion-title-insert-template": "Masukkan templat", + "visualeditor-dialog-transclusion-title-insert-known-template": "Masukkan: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Sunting: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Kandungan templat", + "visualeditor-dialog-transclusion-template-search": "Carian templat", + "visualeditor-dialog-transclusion-template-search-help": "Cari templat yang ingin anda masukkan dengan mencari kata kunci untuk mengenal pasti. Templat yang mempunyai penerangan lebih berkemungkinan dapat berfungsi dengan alat sunting visual.", + "visualeditor-dialog-transclusion-wikitext": "Wikiteks", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Tekan kekunci jarak (Space) untuk memilih elemen wikiteks. Tekan Enter untuk memilih dan menyunting wikiteks.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Tekan Ctrl+Del untuk memadamkan elemen teks wiki. Tekan Ctrl+Shift+Anak panah untuk menggerakkan elemen ke atas atau ke bawah.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Tekan Ctrl+Del untuk memadamkan elemen teks wiki.", "visualeditor-dialogbutton-media-tooltip": "Imej dan media", "visualeditor-dialogbutton-template-tooltip": "Templat", "visualeditor-editconflict": "Suntingan anda tidak dapat disimpan disebabkan percanggahan antara suntingan. Adakah {{GENDER:|anda}} ingin menyelesaikan percanggahan ini secara manual?", @@ -172,7 +231,10 @@ "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|notis}}", "visualeditor-editnotices-tooltip": "Pemberitahuan suntingan", "visualeditor-editsummary": "Huraikan suntingan anda", + "visualeditor-editsummary-characters-remaining": "Bilangan aksara yang tinggal", "visualeditor-educationpopup-dismiss": "Baik, saya faham", + "visualeditor-expandable-less": "Kurang", + "visualeditor-expandable-more": "Lagi", "visualeditor-feedback-defaultmessage": "URL: $1", "visualeditor-formatdropdown-format-mw-heading1": "Tajuk laman", "visualeditor-formatdropdown-format-mw-heading2": "Judul", @@ -181,7 +243,17 @@ "visualeditor-formatdropdown-format-mw-heading5": "Subjudul 3", "visualeditor-formatdropdown-format-mw-heading6": "Subjudul 4", "visualeditor-generating-wikitext-progress": "Menghasilkan wikiteks", + "visualeditor-includes-noinclude-start": "Permulaan kandungan yang dikecualikan daripada petikan", + "visualeditor-includes-noinclude-end": "Akhiran kandungan dikecualikan daripada petikan", + "visualeditor-includes-onlyinclude-start": "Permulaan kandungan yang dibenarkan dalam petikan", + "visualeditor-includes-onlyinclude-end": "Akhiran kandungan yang dibenarkan dalam petikan", + "visualeditor-includes-includeonly": "Kandungan untuk petikan sahaja", + "visualeditor-includes-noinclude-description": "Apabila kandungan daripada laman ini digunakan pada laman lain, kandungan dari sini sehingga penanda akhir yang berpadanan tidak akan disertakan. Berhati-hati semasa menyunting kandungan di luar penanda ini, kerana laman-laman lain mungkin menggunakannya.", + "visualeditor-includes-onlyinclude-description": "Apabila kandungan dari laman ini digunakan pada laman lain, hanya kandungan dari sini sehingga penanda akhir yang berpadanan akan disertakan. Berhati-hati semasa menyunting kandungan antara penanda ini, kerana laman-laman lain mungkin menggunakannya.", + "visualeditor-includes-includeonly-description": "Apabila kandungan daripada laman ini digunakan pada laman lain, kandungan tambahan berikut akan disertakan di sini:", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Ketahui lebih lanjut tentang transklusi separa]", "visualeditor-languages-tool": "Bahasa", + "visualeditor-linkcontext-uneditable": "Minta maaf, elemen ini boleh disunting dalam mod “sunting sumber” sahaja buat masa sekarang.", "visualeditor-linkinspector-button-link-external": "Tapak luar", "visualeditor-linkinspector-button-link-internal": "Cari laman dalaman", "visualeditor-linkinspector-convert-link-isbn": "Tukarkan ke pautan ISBN", @@ -198,6 +270,9 @@ "visualeditor-magiclinknodeinspector-title-isbn": "Pautan ISBN", "visualeditor-magiclinknodeinspector-title-pmid": "Pautan PMID", "visualeditor-magiclinknodeinspector-title-rfc": "Pautan RFC", + "visualeditor-media-title-audio": "Audio", + "visualeditor-media-title-image": "Imej", + "visualeditor-media-title-video": "Video", "visualeditor-meta-tool": "Pilihan", "visualeditor-mweditmode-tooltip": "Tukar alat sunting", "visualeditor-mweditmodesource-progress": "Beralih kepada penyuntingan sumber...", @@ -211,6 +286,7 @@ "visualeditor-mweditmodeve-tool-unavailable": "Tidak boleh menyunting visual di sini", "visualeditor-mweditmodewt-popup-body": "Anda boleh bertukar kembali ke penyuntingan sumber bila-bila masa dengan mengklik ikon ini.", "visualeditor-mweditmodewt-popup-title": "Anda telah bertukar kepada penyuntingan visual", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|imej}}", "visualeditor-mwgallerydialog-caption-field-label": "Sari kata galeri", "visualeditor-mwgallerydialog-card-images": "Gambar", "visualeditor-mwgallerydialog-card-options": "Pilihan", @@ -220,6 +296,9 @@ "visualeditor-mwgallerydialog-heights-field-label": "Tinggi imej", "visualeditor-mwgallerydialog-heights-input-placeholder": "Tinggi asali: $1 px", "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Tradisional, tanpa garis luar", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Terpadat", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Terpadat dengan kapsyen pada tetimbul", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Terpadat dengan kapsyen bertindih", "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Slideshow", "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Tradisional", "visualeditor-mwgallerydialog-mode-field-label": "Mod paparan", @@ -243,10 +322,18 @@ "visualeditor-preference-tabs-prefer-ve": "Sentiasa paparkan alat sunting visual jika boleh", "visualeditor-preference-tabs-prefer-wt": "Sentiasa paparkan alat sunting sumber", "visualeditor-preference-tabs-remember-last": "Ingat alat sunting terkini saya", + "visualeditor-preference-collab-label": "Suntingan kolaboratif", + "visualeditor-preference-collab-description": "Jemput pengguna lain untuk menyertai sesi suntingan anda dalam alat sunting visual.", + "visualeditor-rebase-client-export": "Eksport", + "visualeditor-rebase-client-export-start": "Eksport…", + "visualeditor-rebase-client-import": "Import", + "visualeditor-rebase-client-import-name": "Tajuk laman", + "visualeditor-rebase-client-title-help": "Anda akan dapat menyemak perubahan sebelum menyimpan.", "visualeditor-recreate": "Laman ini telah dihapuskan sejak anda mula menyunting. Tekan \"$1\" untuk menciptanya semula.", "visualeditor-redirect-description": "Melencong ke $1", - "visualeditor-savedialog-identify-anon": "Adakah anda ingin menyimpan halaman ini sebagai pengguna awanama? Alamat IP anda akan direkodkan pada sejarah suntingan halaman ini.", - "visualeditor-savedialog-identify-user": "Anda telah log masuk sebagai [[User:$1|$1]]. Suntingan anda akan dikaitkan dengan akaun ini jika anda menyimpan suntingan ini.", + "visualeditor-savedialog-identify-anon": "Anda tidak lagi log masuk. Jika anda meneruskan, alamat IP anda akan direkodkan dalam sejarah suntingan laman ini.", + "visualeditor-savedialog-identify-temp": "Anda kini menggunakan nama pengguna sementara $1. Jika anda meneruskan, suntingan anda akan dikaitkan dengan nama pengguna sementara ini.", + "visualeditor-savedialog-identify-user": "Anda kini log masuk sebagai [[User:$1|$1]]. Jika anda meneruskan, suntingan anda akan dikaitkan dengan akaun ini.", "visualeditor-savedialog-keyboard-shortcut-submit": "Anda boleh tekan $1 untuk menyimpan suntingan.", "visualeditor-savedialog-label-publish-short": "Siarkan", "visualeditor-savedialog-label-publish-short-start": "Terbitkan…", @@ -255,6 +342,7 @@ "visualeditor-savedialog-label-review": "Semak perubahan anda", "visualeditor-savedialog-label-review-good": "Kembali ke borang simpan", "visualeditor-savedialog-label-save-short": "Simpan", + "visualeditor-savedialog-label-save-short-start": "Simpan…", "visualeditor-savedialog-review-nosummary": "Tiada ringkasan suntingan", "visualeditor-savedialog-review-visual": "Visual", "visualeditor-savedialog-review-wikitext": "Wikiteks", @@ -264,12 +352,19 @@ "visualeditor-savedialog-title-save": "Simpan suntingan anda", "visualeditor-section-body-placeholder": "Bahagian baru", "visualeditor-section-title-placeholder": "Subjek", + "visualeditor-loaderror-revidconflict": "ID semakan yang dikembalikan oleh pelayan tidak berpadanan (dokumen: $1, metadata: $2).", + "visualeditor-loaderror-wrongmode": "Cuba memuatkan alat sunting dalam mod yang salah (jenis data: \"$1\", mod alat sunting: \"$2\").", "visualeditor-settings-tool": "Tetapan laman", "visualeditor-special-characters-group-other": "Sering digunakan", "visualeditor-templatesused-tool": "Templat yang digunakan", - "visualeditor-toload": "Editor akan dimuatkan sekarang. Jika anda masih melihat mesej ini setelah beberapa ketika, sila [$1 muatkan semula halaman].", + "visualeditor-title-error": "Tajuk tidak sah.", + "visualeditor-toload": "Alat sunting akan dimuatkan sekarang. Jika anda masih melihat mesej ini setelah beberapa ketika, sila [$1 segarkan semula laman tersebut].", + "visualeditor-tooltip-non-breaking-space": "Jarak tak terpecah", "visualeditor-version-label": "Versi", "visualeditor-wikitext-progress": "Menukar wikiteks", "visualeditor-wikitext-warning": "Anda sedang menggunakan editor visual - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikiteks]] tidak digunakan di sini. Untuk beralih kepada mod sumber bila-bila masa tanpa menghilangkan pindaan, klik pada butang tukar.", - "visualeditor-wikitext-warning-title": "Penanda Wiki dikesan" + "visualeditor-wikitext-warning-title": "Penanda Wiki dikesan", + "visualeditor-wikitextconvert-title": "Tukar pemformatan kepada teks wiki?", + "visualeditor-wikitextconvert-message": "Anda menampal kandungan yang kaya pemformatan. Adakah anda ingin menukar pemformatan ini kepada teks wiki?", + "visualeditor-wikitextconvert-convert": "Menukar ke wikiteks" } diff --git a/i18n/ve-mw/msi.json b/i18n/ve-mw/msi.json index b7433ed9c2..1c3c27537a 100644 --- a/i18n/ve-mw/msi.json +++ b/i18n/ve-mw/msi.json @@ -4,6 +4,7 @@ "Tofeiku" ] }, + "visualeditor-ca-createlocaldescriptionsource": "Tambah sumber katarangan tampatan", "visualeditor-ca-createsource": "Buat sumber", "visualeditor-ca-editsource": "Idit sumber", "visualeditor-ca-editsource-section": "idit sumber", diff --git a/i18n/ve-mw/mt.json b/i18n/ve-mw/mt.json index 9d56ba4438..68e4ead5e4 100644 --- a/i18n/ve-mw/mt.json +++ b/i18n/ve-mw/mt.json @@ -28,7 +28,6 @@ "visualeditor-dialog-media-info-meta-artist": "Artista: $1", "visualeditor-dialog-media-info-moreinfo": "Iżjed informazzjoni", "visualeditor-dialog-media-info-readmore": "Aqra iżjed", - "visualeditor-dialog-media-info-separator": ".", "visualeditor-dialog-media-info-uploaded": "Tella': $1", "visualeditor-dialog-media-page-advanced": "Konfigurazzjonijiet avvanzati", "visualeditor-dialog-media-page-general": "Ġenerali", diff --git a/i18n/ve-mw/mui.json b/i18n/ve-mw/mui.json index ec3d8b38b3..35a9b28733 100644 --- a/i18n/ve-mw/mui.json +++ b/i18n/ve-mw/mui.json @@ -6,7 +6,9 @@ ] }, "tooltip-ca-ve-edit": "Robah laman ni", - "visualeditor-ca-editsource": "Robah sumber", - "visualeditor-ca-editsource-section": "robah sumber", + "visualeditor-ca-createlocaldescriptionsource": "Bûbû sumber keterangan sinila", + "visualeditor-ca-createsource": "Gawé' kodenyo", + "visualeditor-ca-editsource": "Dandani kodenyo", + "visualeditor-ca-editsource-section": "dandani kodenyo", "visualeditor-descriptionpagelink": "Project:VisualEditor" } diff --git a/i18n/ve-mw/mvf.json b/i18n/ve-mw/mvf.json index 44339de26a..bdd599d977 100644 --- a/i18n/ve-mw/mvf.json +++ b/i18n/ve-mw/mvf.json @@ -1,9 +1,10 @@ { "@metadata": { "authors": [ - "Enkhsaihan2005" + "Enkhsaihan2005", + "Anand.orkhon" ] }, - "visualeditor-ca-editsource": "ᠦᠨᠳᠦᠰᠦᠨ ᠪᠢᠴᠢᠭ ᠢ ᠵᠠᠰᠠᠪᠤᠷᠢᠯᠠᠬᠤ", - "visualeditor-ca-editsource-section": "ᠦᠨᠳᠦᠰᠦᠨ ᠪᠢᠴᠢᠭ ᠢ ᠵᠠᠰᠠᠪᠤᠷᠢᠯᠠᠬᠤ" + "visualeditor-ca-editsource": "ᠻᠣᠳ᠋᠎ᠢᠶᠠᠷ ᠵᠠᠰᠠᠪᠤᠷᠢᠯᠠᠬᠤ", + "visualeditor-ca-editsource-section": "ᠻᠣᠳ᠋᠎ᠢᠶᠠᠷ ᠵᠠᠰᠠᠪᠤᠷᠢᠯᠠᠬᠤ" } diff --git a/i18n/ve-mw/mwlanguagevariant/af.json b/i18n/ve-mw/mwlanguagevariant/af.json index db4258a8de..f0cff889a9 100644 --- a/i18n/ve-mw/mwlanguagevariant/af.json +++ b/i18n/ve-mw/mwlanguagevariant/af.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Biggs ZA", "Fwolff", "Rooiratel" diff --git a/i18n/ve-mw/mwlanguagevariant/ar.json b/i18n/ve-mw/mwlanguagevariant/ar.json index 5298979122..858c0f7ec4 100644 --- a/i18n/ve-mw/mwlanguagevariant/ar.json +++ b/i18n/ve-mw/mwlanguagevariant/ar.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Meno25", "محمد أحمد عبد الفتاح" ] diff --git a/i18n/ve-mw/mwlanguagevariant/as.json b/i18n/ve-mw/mwlanguagevariant/as.json index 1f7ad8d06a..073a1b816e 100644 --- a/i18n/ve-mw/mwlanguagevariant/as.json +++ b/i18n/ve-mw/mwlanguagevariant/as.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Simbu123" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/ast.json b/i18n/ve-mw/mwlanguagevariant/ast.json index 2cbe67608d..84cb2335dc 100644 --- a/i18n/ve-mw/mwlanguagevariant/ast.json +++ b/i18n/ve-mw/mwlanguagevariant/ast.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Xuacu" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/az.json b/i18n/ve-mw/mwlanguagevariant/az.json index a8a7bd7325..b9219dc26c 100644 --- a/i18n/ve-mw/mwlanguagevariant/az.json +++ b/i18n/ve-mw/mwlanguagevariant/az.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "NMW03", "Nemoralis" ] diff --git a/i18n/ve-mw/mwlanguagevariant/ban.json b/i18n/ve-mw/mwlanguagevariant/ban.json index 7072e4835b..cb37cf6291 100644 --- a/i18n/ve-mw/mwlanguagevariant/ban.json +++ b/i18n/ve-mw/mwlanguagevariant/ban.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Chinamoonroll" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/be-tarask.json b/i18n/ve-mw/mwlanguagevariant/be-tarask.json index a2560c97c1..2b9ccf4116 100644 --- a/i18n/ve-mw/mwlanguagevariant/be-tarask.json +++ b/i18n/ve-mw/mwlanguagevariant/be-tarask.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Renessaince" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/be.json b/i18n/ve-mw/mwlanguagevariant/be.json index eef3813a9c..d58c864cba 100644 --- a/i18n/ve-mw/mwlanguagevariant/be.json +++ b/i18n/ve-mw/mwlanguagevariant/be.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Artsiom91", "Chadyka" ] diff --git a/i18n/ve-mw/mwlanguagevariant/bg.json b/i18n/ve-mw/mwlanguagevariant/bg.json index ffdb13b890..27d7424843 100644 --- a/i18n/ve-mw/mwlanguagevariant/bg.json +++ b/i18n/ve-mw/mwlanguagevariant/bg.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "ShockD", "StanProg" ] diff --git a/i18n/ve-mw/mwlanguagevariant/blk.json b/i18n/ve-mw/mwlanguagevariant/blk.json index ac96bcc3aa..18c39a078a 100644 --- a/i18n/ve-mw/mwlanguagevariant/blk.json +++ b/i18n/ve-mw/mwlanguagevariant/blk.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Khun Kt", "咽頭べさ" ] diff --git a/i18n/ve-mw/mwlanguagevariant/bn.json b/i18n/ve-mw/mwlanguagevariant/bn.json index 08d4a58320..fbac4e2a8d 100644 --- a/i18n/ve-mw/mwlanguagevariant/bn.json +++ b/i18n/ve-mw/mwlanguagevariant/bn.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Ahm masum", - "Amire80", "আফতাবুজ্জামান" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/br.json b/i18n/ve-mw/mwlanguagevariant/br.json index 2c0f0558f1..ea32d0a36c 100644 --- a/i18n/ve-mw/mwlanguagevariant/br.json +++ b/i18n/ve-mw/mwlanguagevariant/br.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Adriendelucca", - "Amire80", "Y-M D" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/ce.json b/i18n/ve-mw/mwlanguagevariant/ce.json index 34c2c24890..2c60ce18e1 100644 --- a/i18n/ve-mw/mwlanguagevariant/ce.json +++ b/i18n/ve-mw/mwlanguagevariant/ce.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Умар" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/cs.json b/i18n/ve-mw/mwlanguagevariant/cs.json index 553a532dd0..c5bab27d95 100644 --- a/i18n/ve-mw/mwlanguagevariant/cs.json +++ b/i18n/ve-mw/mwlanguagevariant/cs.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Mormegil", "Patrik L." ] diff --git a/i18n/ve-mw/mwlanguagevariant/de.json b/i18n/ve-mw/mwlanguagevariant/de.json index d734755d44..d4cc9bc1e3 100644 --- a/i18n/ve-mw/mwlanguagevariant/de.json +++ b/i18n/ve-mw/mwlanguagevariant/de.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Metalhead64" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/diq.json b/i18n/ve-mw/mwlanguagevariant/diq.json index 7948e1bc59..f354f354bd 100644 --- a/i18n/ve-mw/mwlanguagevariant/diq.json +++ b/i18n/ve-mw/mwlanguagevariant/diq.json @@ -2,6 +2,7 @@ "@metadata": { "authors": [ "1917 Ekim Devrimi", + "GolyatGeri", "Mirzali", "Orbot707" ] @@ -16,6 +17,7 @@ "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Eno yew qaideyo nımteyo", "visualeditor-mwlanguagevariantcontextitem-flag-title": "Eno qaide sernamey pele rê tesir keno", "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Kodê zıwani", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Nêravêrde", "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Zıwan", "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Çıme", "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "İstiqamet", diff --git a/i18n/ve-mw/mwlanguagevariant/eo.json b/i18n/ve-mw/mwlanguagevariant/eo.json index a92a5ec9fe..f0a788b8bd 100644 --- a/i18n/ve-mw/mwlanguagevariant/eo.json +++ b/i18n/ve-mw/mwlanguagevariant/eo.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Mirin" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/es.json b/i18n/ve-mw/mwlanguagevariant/es.json index c88018914d..a2a6f744db 100644 --- a/i18n/ve-mw/mwlanguagevariant/es.json +++ b/i18n/ve-mw/mwlanguagevariant/es.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Fitoschido", "Macofe", "Rodney Araujo" diff --git a/i18n/ve-mw/mwlanguagevariant/eu.json b/i18n/ve-mw/mwlanguagevariant/eu.json index 0c9464b179..0feee13860 100644 --- a/i18n/ve-mw/mwlanguagevariant/eu.json +++ b/i18n/ve-mw/mwlanguagevariant/eu.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Iñaki LL", "Mikel Ibaiba", "Xabier Armendaritz" diff --git a/i18n/ve-mw/mwlanguagevariant/fi.json b/i18n/ve-mw/mwlanguagevariant/fi.json index 381f3dd37c..caa28a7c97 100644 --- a/i18n/ve-mw/mwlanguagevariant/fi.json +++ b/i18n/ve-mw/mwlanguagevariant/fi.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Alluk.", - "Amire80", "Hopea", "Nike", "Pyscowicz", diff --git a/i18n/ve-mw/mwlanguagevariant/fr.json b/i18n/ve-mw/mwlanguagevariant/fr.json index 53f5dfa64c..fd3adfda5c 100644 --- a/i18n/ve-mw/mwlanguagevariant/fr.json +++ b/i18n/ve-mw/mwlanguagevariant/fr.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "DePlusJean", "Gomoko", "Thibaut120094", diff --git a/i18n/ve-mw/mwlanguagevariant/fy.json b/i18n/ve-mw/mwlanguagevariant/fy.json index 67d170ca1f..f2b839af04 100644 --- a/i18n/ve-mw/mwlanguagevariant/fy.json +++ b/i18n/ve-mw/mwlanguagevariant/fy.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "PiefPafPier" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/gl.json b/i18n/ve-mw/mwlanguagevariant/gl.json index 8b3175aa67..719385ad06 100644 --- a/i18n/ve-mw/mwlanguagevariant/gl.json +++ b/i18n/ve-mw/mwlanguagevariant/gl.json @@ -1,9 +1,9 @@ { "@metadata": { "authors": [ - "Amire80", "Banjo", - "Elisardojm" + "Elisardojm", + "Toliño" ] }, "visualeditor-mwlanguagevariant-disabled": "Conversión de variante desactivada", @@ -29,7 +29,7 @@ "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Variante de lingua", "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "Texto protexido contra a conversión en variante", "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Linguas", - "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Código da lingua", + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Código de lingua", "visualeditor-mwlanguagevariantinspector-filter-text-label": "Contidos", "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "Texto filtrado", "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Engadir novo caso", diff --git a/i18n/ve-mw/mwlanguagevariant/hi.json b/i18n/ve-mw/mwlanguagevariant/hi.json index 1b1a7fb70b..b77918a9d0 100644 --- a/i18n/ve-mw/mwlanguagevariant/hi.json +++ b/i18n/ve-mw/mwlanguagevariant/hi.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Saurmandal" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/hr.json b/i18n/ve-mw/mwlanguagevariant/hr.json index 10f2bb11b1..f8304e06b6 100644 --- a/i18n/ve-mw/mwlanguagevariant/hr.json +++ b/i18n/ve-mw/mwlanguagevariant/hr.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Ivi104", "MaGa" ] diff --git a/i18n/ve-mw/mwlanguagevariant/hu.json b/i18n/ve-mw/mwlanguagevariant/hu.json index 45326d34ce..0318e74464 100644 --- a/i18n/ve-mw/mwlanguagevariant/hu.json +++ b/i18n/ve-mw/mwlanguagevariant/hu.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bencemac", "Tacsipacsi", "Tgr" diff --git a/i18n/ve-mw/mwlanguagevariant/hy.json b/i18n/ve-mw/mwlanguagevariant/hy.json index e245d921ab..ee5eba99fd 100644 --- a/i18n/ve-mw/mwlanguagevariant/hy.json +++ b/i18n/ve-mw/mwlanguagevariant/hy.json @@ -1,9 +1,9 @@ { "@metadata": { "authors": [ - "Amire80", "Kareyac", - "Դավիթ Սարոյան" + "Դավիթ Սարոյան", + "Սահակ" ] }, "visualeditor-mwlanguagevariant-disabled": "Գրերի փոխարկումն անջատված է", @@ -16,7 +16,7 @@ "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Սա թաքնված կանոն է։", "visualeditor-mwlanguagevariantcontextitem-flag-title": "Այս կանոնը ազդում է էջի վերնագրի վրա։", "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Լեզվի կոդը", - "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Սխալ", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Անվավեր", "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Լեզու", "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Աղբյուր", "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Նպատակակետ", diff --git a/i18n/ve-mw/mwlanguagevariant/ia.json b/i18n/ve-mw/mwlanguagevariant/ia.json index bcc93aa7db..8f2476a30c 100644 --- a/i18n/ve-mw/mwlanguagevariant/ia.json +++ b/i18n/ve-mw/mwlanguagevariant/ia.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "McDutchie" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/id.json b/i18n/ve-mw/mwlanguagevariant/id.json index 4b565ac1d3..f26a815093 100644 --- a/i18n/ve-mw/mwlanguagevariant/id.json +++ b/i18n/ve-mw/mwlanguagevariant/id.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Gombang", "Rachmat04", "William Surya Permana" diff --git a/i18n/ve-mw/mwlanguagevariant/ig.json b/i18n/ve-mw/mwlanguagevariant/ig.json new file mode 100644 index 0000000000..54ff385d3d --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/ig.json @@ -0,0 +1,45 @@ +{ + "@metadata": { + "authors": [ + "Victor chukwuemerie Mbah" + ] + }, + "visualeditor-mwlanguagevariant-disabled": "Mgbanwe dị iche iche nwere nkwarụ", + "visualeditor-mwlanguagevariant-filter": "Ụdị dị iche iche wee bụrụ $1", + "visualeditor-mwlanguagevariant-name": "Aha asụsụ: $1", + "visualeditor-mwlanguagevariant-oneway": "Otu ụzọ ntụgharị: $1", + "visualeditor-mwlanguagevariant-twoway": "Ntụgharị asụsụ: $1", + "visualeditor-mwlanguagevariant-unknown": "Asụsụ dị iche iche", + "visualeditor-mwlanguagevariantcontextitem-flag-describe": "Nke a bụ iwu a kọwara.", + "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Nke a bụ iwu zoro ezo.", + "visualeditor-mwlanguagevariantcontextitem-flag-title": "Iwu a na-emetụta aha peeji nke.", + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Koodu asụsụ", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Enweghị uru", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Asụsụ", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Mkpọlọ́gwụ̀", + "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Ebe a na-esi", + "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Ederede", + "visualeditor-mwlanguagevariantcontextitem-title-disabled": "Mgbanwe dị iche iche nwere nkwarụ", + "visualeditor-mwlanguagevariantcontextitem-title-filter": "Ihe nzacha dị iche iche", + "visualeditor-mwlanguagevariantcontextitem-title-name": "Áhạ asụsụ", + "visualeditor-mwlanguagevariantcontextitem-title-oneway": "Iwu ntụgharị otu ụzọ", + "visualeditor-mwlanguagevariantcontextitem-title-twoway": "Iwu ntụgharị asụsụ", + "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Asụsụ dị iche iche", + "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "Echebere ederede site na ntụgharị dị iche iche", + "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Asụsụ", + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Koodu asụsụ", + "visualeditor-mwlanguagevariantinspector-filter-text-label": "Ọdịnaya", + "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "Nzacha ngwe", + "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Tinye ikpe ọhụrụ", + "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "Wepụ ikpe", + "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "Ebe E Si Nweta Ngwe", + "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "Ederede dị iche", + "visualeditor-mwlanguagevariantinspector-title-disabled": "Mgbanwe dị iche iche nwere nkwarụ", + "visualeditor-mwlanguagevariantinspector-title-filter": "Ihe nzacha dị iche iche", + "visualeditor-mwlanguagevariantinspector-title-name": "Áhạ asụsụ", + "visualeditor-mwlanguagevariantinspector-title-oneway": "Iwu ntụgharị otu ụzọ", + "visualeditor-mwlanguagevariantinspector-title-twoway": "Iwu ntụgharị asụsụ", + "visualeditor-mwlanguagevariantinspector-twoway-add-button": "Tinye ikpe ọhụrụ", + "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "Wepụ ikpe", + "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "Ederede dị iche" +} diff --git a/i18n/ve-mw/mwlanguagevariant/it.json b/i18n/ve-mw/mwlanguagevariant/it.json index a203a5c201..86d02d2fb9 100644 --- a/i18n/ve-mw/mwlanguagevariant/it.json +++ b/i18n/ve-mw/mwlanguagevariant/it.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Beta16", "Greis", "S4b1nuz E.656", diff --git a/i18n/ve-mw/mwlanguagevariant/ja.json b/i18n/ve-mw/mwlanguagevariant/ja.json index 49b97ab703..3e230cf7ed 100644 --- a/i18n/ve-mw/mwlanguagevariant/ja.json +++ b/i18n/ve-mw/mwlanguagevariant/ja.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Aefgh39622", - "Amire80", "Delim", "Hinaloe", "Omotecho", diff --git a/i18n/ve-mw/mwlanguagevariant/kcg.json b/i18n/ve-mw/mwlanguagevariant/kcg.json index 67c303214d..265c9ef3ac 100644 --- a/i18n/ve-mw/mwlanguagevariant/kcg.json +++ b/i18n/ve-mw/mwlanguagevariant/kcg.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Kambai Akau" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/kea.json b/i18n/ve-mw/mwlanguagevariant/kea.json new file mode 100644 index 0000000000..2aef07a39d --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/kea.json @@ -0,0 +1,18 @@ +{ + "@metadata": { + "authors": [ + "GrogeXaKaba" + ] + }, + "visualeditor-mwlanguagevariant-name": "Nómi di linga: $1", + "visualeditor-mwlanguagevariant-unknown": "Barianti di linga", + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Kódi di linga", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Nbálidu", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Linga", + "visualeditor-mwlanguagevariantcontextitem-title-name": "Nómi di linga", + "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Barianti di linga", + "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Lingas", + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Kódi di linga", + "visualeditor-mwlanguagevariantinspector-filter-text-label": "Kuntiúdu", + "visualeditor-mwlanguagevariantinspector-title-name": "Nómi di linga" +} diff --git a/i18n/ve-mw/mwlanguagevariant/kn.json b/i18n/ve-mw/mwlanguagevariant/kn.json index cf9da3c6ab..e45574f7a8 100644 --- a/i18n/ve-mw/mwlanguagevariant/kn.json +++ b/i18n/ve-mw/mwlanguagevariant/kn.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "ಮಲ್ನಾಡಾಚ್ ಕೊಂಕ್ಣೊ" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/ko.json b/i18n/ve-mw/mwlanguagevariant/ko.json index a46c69fc76..aee23efb0f 100644 --- a/i18n/ve-mw/mwlanguagevariant/ko.json +++ b/i18n/ve-mw/mwlanguagevariant/ko.json @@ -1,29 +1,47 @@ { "@metadata": { "authors": [ - "Amire80", "Dr1t jg", - "Ykhwong" + "Ykhwong", + "Tensama0415" ] }, + "visualeditor-mwlanguagevariant-disabled": "변종 변환 비활성화됨", + "visualeditor-mwlanguagevariant-filter": "변종이 $1 변종으로 필터링됨", "visualeditor-mwlanguagevariant-name": "언어 이름: $1", "visualeditor-mwlanguagevariant-oneway": "단방향 변환: $1", "visualeditor-mwlanguagevariant-twoway": "언어 변환: $1", + "visualeditor-mwlanguagevariant-unknown": "언어 변종", "visualeditor-mwlanguagevariantcontextitem-flag-describe": "이것은 기술된 규칙입니다.", "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "이것은 숨겨진 규칙입니다.", "visualeditor-mwlanguagevariantcontextitem-flag-title": "이 규칙은 문서 제목에 영향을 미칩니다.", "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "언어 코드", "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "유효하지 않음", "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "언어", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "원본", + "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "대상", "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "텍스트", + "visualeditor-mwlanguagevariantcontextitem-title-disabled": "변종 변환 비활성화됨", + "visualeditor-mwlanguagevariantcontextitem-title-filter": "변종 필터", "visualeditor-mwlanguagevariantcontextitem-title-name": "언어 이름", "visualeditor-mwlanguagevariantcontextitem-title-oneway": "단방향 변환 규칙", "visualeditor-mwlanguagevariantcontextitem-title-twoway": "언어 변환 규칙", + "visualeditor-mwlanguagevariantcontextitem-title-unknown": "언어 변종", + "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "변종 변환으로부터 보호된 텍스트", "visualeditor-mwlanguagevariantinspector-filter-langs-label": "언어", "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "언어 코드", "visualeditor-mwlanguagevariantinspector-filter-text-label": "내용", + "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "필터링된 텍스트", + "visualeditor-mwlanguagevariantinspector-oneway-add-button": "새로운 사례 추가", + "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "사례 제거", "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "원본 텍스트", + "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "번종 텍스트", + "visualeditor-mwlanguagevariantinspector-title-disabled": "변종 변환 비활성화됨", + "visualeditor-mwlanguagevariantinspector-title-filter": "변종 필터", "visualeditor-mwlanguagevariantinspector-title-name": "언어 이름", "visualeditor-mwlanguagevariantinspector-title-oneway": "단방향 변환 규칙", - "visualeditor-mwlanguagevariantinspector-title-twoway": "언어 변환 규칙" + "visualeditor-mwlanguagevariantinspector-title-twoway": "언어 변환 규칙", + "visualeditor-mwlanguagevariantinspector-twoway-add-button": "새로운 사례 추가", + "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "사례 제거", + "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "번종 텍스트" } diff --git a/i18n/ve-mw/mwlanguagevariant/ks-arab.json b/i18n/ve-mw/mwlanguagevariant/ks-arab.json deleted file mode 100644 index dc2c7431ad..0000000000 --- a/i18n/ve-mw/mwlanguagevariant/ks-arab.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "@metadata": { - "authors": [ - "Iflaq" - ] - }, - "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "آگُر" -} diff --git a/i18n/ve-mw/mwlanguagevariant/ks.json b/i18n/ve-mw/mwlanguagevariant/ks.json new file mode 100644 index 0000000000..67452b6d9c --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/ks.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [] + }, + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "زَبان کوڑ", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "زَبان", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "آگُر" +} diff --git a/i18n/ve-mw/mwlanguagevariant/lb.json b/i18n/ve-mw/mwlanguagevariant/lb.json index b47df25957..20b253800b 100644 --- a/i18n/ve-mw/mwlanguagevariant/lb.json +++ b/i18n/ve-mw/mwlanguagevariant/lb.json @@ -1,9 +1,9 @@ { "@metadata": { "authors": [ - "Amire80", "Les Meloures", - "Robby" + "Robby", + "Volvox" ] }, "visualeditor-mwlanguagevariant-filter": "Variante gefiltert no $1", @@ -15,11 +15,12 @@ "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Dëst ass eng verstoppt Reegel.", "visualeditor-mwlanguagevariantcontextitem-flag-title": "Dës Reegel beaflosst dëse Säitentitel.", "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Sprooch Code", - "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Net valabel", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Ongülteg", "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Sprooch", "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Quell", "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Destinatioun", "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Text", + "visualeditor-mwlanguagevariantcontextitem-title-filter": "Variantefilter", "visualeditor-mwlanguagevariantcontextitem-title-name": "Numm vun der Sprooch", "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Sproochvariant", "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Sproochen", diff --git a/i18n/ve-mw/mwlanguagevariant/lij.json b/i18n/ve-mw/mwlanguagevariant/lij.json index 2d7104afcc..032ec5902f 100644 --- a/i18n/ve-mw/mwlanguagevariant/lij.json +++ b/i18n/ve-mw/mwlanguagevariant/lij.json @@ -1,46 +1,46 @@ { "@metadata": { "authors": [ - "Amire80", - "Giromin Cangiaxo" + "Giromin Cangiaxo", + "N. Longo" ] }, - "visualeditor-mwlanguagevariant-disabled": "Converscion de variante dizabilitâ", - "visualeditor-mwlanguagevariant-filter": "Variante filtræ a $1", - "visualeditor-mwlanguagevariant-name": "Nomme da lengua: $1", - "visualeditor-mwlanguagevariant-oneway": "Converscion a senso unnico: $1", - "visualeditor-mwlanguagevariant-twoway": "Converscion de lengua: $1", - "visualeditor-mwlanguagevariant-unknown": "Variante de lengoa", - "visualeditor-mwlanguagevariantcontextitem-flag-describe": "Sta chì a l'è 'na reggola descrita.", - "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Sta chì a l'è 'na reggola ascoza.", - "visualeditor-mwlanguagevariantcontextitem-flag-title": "Sta reggola chì a pertocca o tittolo da paggina.", - "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Coddiçe lengua", - "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Invallido", - "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Lengua", - "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Vivagna", - "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Destinassion", - "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Scrito", - "visualeditor-mwlanguagevariantcontextitem-title-disabled": "Converscion de variante dizabilitâ", - "visualeditor-mwlanguagevariantcontextitem-title-filter": "Filtro de variante", - "visualeditor-mwlanguagevariantcontextitem-title-name": "Nomme da lengua", - "visualeditor-mwlanguagevariantcontextitem-title-oneway": "Reggola de converscion a senso unnico", - "visualeditor-mwlanguagevariantcontextitem-title-twoway": "Reggola de converscion de lengua", - "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Variante de lengoa", - "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "Scrito protezuo da-a converscion de variante", - "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Lengoe", - "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Coddiçe lengua", - "visualeditor-mwlanguagevariantinspector-filter-text-label": "Contegnui", - "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "Scrito filtrou", - "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Azonxi noeuvo caxo", - "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "Leva caxo", - "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "Vivagna do scrito", - "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "Variante do scrito", - "visualeditor-mwlanguagevariantinspector-title-disabled": "Converscion de variante dizabilitâ", - "visualeditor-mwlanguagevariantinspector-title-filter": "Filtro de variante", - "visualeditor-mwlanguagevariantinspector-title-name": "Nomme da lengua", - "visualeditor-mwlanguagevariantinspector-title-oneway": "Reggola de converscion a senso unnico", - "visualeditor-mwlanguagevariantinspector-title-twoway": "Reggola de converscion de lengua", - "visualeditor-mwlanguagevariantinspector-twoway-add-button": "Azonxi noeuvo caxo", - "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "Leva caxo", - "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "Variante do scrito" + "visualeditor-mwlanguagevariant-disabled": "Conversción de variànte dizabilitâ", + "visualeditor-mwlanguagevariant-filter": "Variànte filtræ a $1", + "visualeditor-mwlanguagevariant-name": "Nómme da léngoa: $1", + "visualeditor-mwlanguagevariant-oneway": "Conversción a sénso ùnico: $1", + "visualeditor-mwlanguagevariant-twoway": "Conversción de léngoa: $1", + "visualeditor-mwlanguagevariant-unknown": "Variànte de léngoa", + "visualeditor-mwlanguagevariantcontextitem-flag-describe": "Sta chi a l'é 'na régola descrîta.", + "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Sta chi a l'é 'na régola ascôza.", + "visualeditor-mwlanguagevariantcontextitem-flag-title": "Sta régola chi a pertócca o tìtolo da pàgina.", + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Còdiçe léngoa", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "No vàlido", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Léngoa", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Vivàgna", + "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Destinaçión", + "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Scrîto", + "visualeditor-mwlanguagevariantcontextitem-title-disabled": "Conversción de variànte dizabilitâ", + "visualeditor-mwlanguagevariantcontextitem-title-filter": "Fìltro de variànte", + "visualeditor-mwlanguagevariantcontextitem-title-name": "Nómme da léngoa", + "visualeditor-mwlanguagevariantcontextitem-title-oneway": "Régola de conversción a sénso ùnico", + "visualeditor-mwlanguagevariantcontextitem-title-twoway": "Régola de conversción de léngoa", + "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Variànte de léngoa", + "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "Scrîto protezûo da-a conversción de variànte", + "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Léngoe", + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Còdiçe léngoa", + "visualeditor-mwlanguagevariantinspector-filter-text-label": "Contegnûi", + "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "Tèsto filtròu", + "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Azónzi nêuvo câxo", + "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "Lêva câxo", + "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "Vivàgna do scrîto", + "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "Variànte do scrîto", + "visualeditor-mwlanguagevariantinspector-title-disabled": "Conversción de variànte dizabilitâ", + "visualeditor-mwlanguagevariantinspector-title-filter": "Fìltro de variànte", + "visualeditor-mwlanguagevariantinspector-title-name": "Nómme da léngoa", + "visualeditor-mwlanguagevariantinspector-title-oneway": "Régola de conversción a sénso ùnico", + "visualeditor-mwlanguagevariantinspector-title-twoway": "Régola de conversción da léngoa", + "visualeditor-mwlanguagevariantinspector-twoway-add-button": "Azónzi nêuvo câxo", + "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "Lêva câxo", + "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "Variànte do scrîto" } diff --git a/i18n/ve-mw/mwlanguagevariant/lmo.json b/i18n/ve-mw/mwlanguagevariant/lmo.json index e44316019b..c5da0d57ed 100644 --- a/i18n/ve-mw/mwlanguagevariant/lmo.json +++ b/i18n/ve-mw/mwlanguagevariant/lmo.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Salvemm el lombard" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/lv.json b/i18n/ve-mw/mwlanguagevariant/lv.json index 92377712bf..3d48e592ee 100644 --- a/i18n/ve-mw/mwlanguagevariant/lv.json +++ b/i18n/ve-mw/mwlanguagevariant/lv.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Papuass" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/min.json b/i18n/ve-mw/mwlanguagevariant/min.json index 08772da0a4..51968b5bbf 100644 --- a/i18n/ve-mw/mwlanguagevariant/min.json +++ b/i18n/ve-mw/mwlanguagevariant/min.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Iwan Novirion" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/mk.json b/i18n/ve-mw/mwlanguagevariant/mk.json index 8b995b26ff..f2ad1339b5 100644 --- a/i18n/ve-mw/mwlanguagevariant/mk.json +++ b/i18n/ve-mw/mwlanguagevariant/mk.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bjankuloski06" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/ml.json b/i18n/ve-mw/mwlanguagevariant/ml.json index b5ef0f8e22..82e9aed399 100644 --- a/i18n/ve-mw/mwlanguagevariant/ml.json +++ b/i18n/ve-mw/mwlanguagevariant/ml.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Praveenp" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/mr.json b/i18n/ve-mw/mwlanguagevariant/mr.json index ea90110528..4bdf683707 100644 --- a/i18n/ve-mw/mwlanguagevariant/mr.json +++ b/i18n/ve-mw/mwlanguagevariant/mr.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Sureshkhole", "V.narsikar" ] diff --git a/i18n/ve-mw/mwlanguagevariant/ms.json b/i18n/ve-mw/mwlanguagevariant/ms.json index f6d66e64d4..b930e75e87 100644 --- a/i18n/ve-mw/mwlanguagevariant/ms.json +++ b/i18n/ve-mw/mwlanguagevariant/ms.json @@ -1,34 +1,34 @@ { "@metadata": { "authors": [ - "Amire80", "Anakmalaysia", "Encikmelur", + "Hakimi97", "Jeluang Terluang" ] }, - "visualeditor-mwlanguagevariant-disabled": "Penukaran varian dimatikan", - "visualeditor-mwlanguagevariant-filter": "Varian-varian ditapis kepada $1", + "visualeditor-mwlanguagevariant-disabled": "Penukaran kelainan bahasa dimatikan", + "visualeditor-mwlanguagevariant-filter": "Kelainan-kelainan ditapis kepada $1", "visualeditor-mwlanguagevariant-name": "Nama bahasa: $1", - "visualeditor-mwlanguagevariant-oneway": "Penukaran satu hala: $1", + "visualeditor-mwlanguagevariant-oneway": "Penukaran sehala: $1", "visualeditor-mwlanguagevariant-twoway": "Penukaran bahasa: $1", - "visualeditor-mwlanguagevariant-unknown": "Varian bahasa", - "visualeditor-mwlanguagevariantcontextitem-flag-describe": "Ini ialah peraturan yang telah ditetapkan.", - "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Ini ialah peraturan tersembunyi.", + "visualeditor-mwlanguagevariant-unknown": "Kelainan bahasa", + "visualeditor-mwlanguagevariantcontextitem-flag-describe": "Peraturan ini ialah peraturan yang telah ditetapkan.", + "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Peraturan ini ialah peraturan tersembunyi.", "visualeditor-mwlanguagevariantcontextitem-flag-title": "Peraturan ini akan mempengaruhi tajuk halaman.", - "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Kod bahasa", + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Kod bahasa", "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Tidak sah", "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Bahasa", "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Sumber", "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Destinasi", "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Teks", - "visualeditor-mwlanguagevariantcontextitem-title-disabled": "Penukaran kelainan dihentikan", + "visualeditor-mwlanguagevariantcontextitem-title-disabled": "Penukaran kelainan bahasa dimatikan", "visualeditor-mwlanguagevariantcontextitem-title-filter": "Tapisan kelainan", "visualeditor-mwlanguagevariantcontextitem-title-name": "Nama bahasa", - "visualeditor-mwlanguagevariantcontextitem-title-oneway": "Peraturan pertukaran satu hala", + "visualeditor-mwlanguagevariantcontextitem-title-oneway": "Peraturan penukaran sehala", "visualeditor-mwlanguagevariantcontextitem-title-twoway": "Peraturan penukaran bahasa", "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Kelainan bahasa", - "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "Teks dilindungi daripada penukaran varian", + "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "Teks dilindungi daripada penukaran kelainan", "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Bahasa", "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Kod bahasa", "visualeditor-mwlanguagevariantinspector-filter-text-label": "Kandungan", @@ -36,13 +36,13 @@ "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Tambah kes baharu", "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "Gugurkan kes", "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "Teks sumber", - "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "Teks varian", - "visualeditor-mwlanguagevariantinspector-title-disabled": "Penukaran varian dimatikan", - "visualeditor-mwlanguagevariantinspector-title-filter": "Penapis varian", + "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "Teks kelainan bahasa", + "visualeditor-mwlanguagevariantinspector-title-disabled": "Penukaran kelainan bahasa dimatikan", + "visualeditor-mwlanguagevariantinspector-title-filter": "Penapis kelainan", "visualeditor-mwlanguagevariantinspector-title-name": "Nama bahasa", - "visualeditor-mwlanguagevariantinspector-title-oneway": "Peraturan penukaran satu hala", + "visualeditor-mwlanguagevariantinspector-title-oneway": "Peraturan penukaran sehala", "visualeditor-mwlanguagevariantinspector-title-twoway": "Peraturan penukaran bahasa", "visualeditor-mwlanguagevariantinspector-twoway-add-button": "Tambah kes baru", "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "Gugurkan kes", - "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "Teks varian" + "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "Teks kelainan bahasa" } diff --git a/i18n/ve-mw/mwlanguagevariant/my.json b/i18n/ve-mw/mwlanguagevariant/my.json index f75edf2436..35596d443f 100644 --- a/i18n/ve-mw/mwlanguagevariant/my.json +++ b/i18n/ve-mw/mwlanguagevariant/my.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Dr Lotus Black" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/nb.json b/i18n/ve-mw/mwlanguagevariant/nb.json index a57a8cb186..59b5588408 100644 --- a/i18n/ve-mw/mwlanguagevariant/nb.json +++ b/i18n/ve-mw/mwlanguagevariant/nb.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Jon Harald Søby" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/nds-nl.json b/i18n/ve-mw/mwlanguagevariant/nds-nl.json index 9e1548f11f..6b10410fbb 100644 --- a/i18n/ve-mw/mwlanguagevariant/nds-nl.json +++ b/i18n/ve-mw/mwlanguagevariant/nds-nl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Servien" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/ne.json b/i18n/ve-mw/mwlanguagevariant/ne.json index 8353a15f9c..ad5e636250 100644 --- a/i18n/ve-mw/mwlanguagevariant/ne.json +++ b/i18n/ve-mw/mwlanguagevariant/ne.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Nirajan pant", "पर्वत सुबेदी", "बडा काजी", @@ -28,6 +27,8 @@ "visualeditor-mwlanguagevariantinspector-filter-langs-label": "भाषाहरू", "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "भाषा कोड", "visualeditor-mwlanguagevariantinspector-filter-text-label": "सामग्रीहरू", + "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "स्रोत पाठ", + "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "भिन्न पाठ", "visualeditor-mwlanguagevariantinspector-title-name": "भाषा नाम", "visualeditor-mwlanguagevariantinspector-title-oneway": "एकतर्फी परिवर्तन नियम", "visualeditor-mwlanguagevariantinspector-title-twoway": "भाषा परिवर्तन नियम" diff --git a/i18n/ve-mw/mwlanguagevariant/nl.json b/i18n/ve-mw/mwlanguagevariant/nl.json index 82de1a8456..ac86d94b36 100644 --- a/i18n/ve-mw/mwlanguagevariant/nl.json +++ b/i18n/ve-mw/mwlanguagevariant/nl.json @@ -1,10 +1,10 @@ { "@metadata": { "authors": [ - "Amire80", "Mainframe98", "McDutchie", - "Romaine" + "Romaine", + "Siebrand" ] }, "visualeditor-mwlanguagevariant-disabled": "Variantconversie uitgeschakeld", @@ -17,7 +17,7 @@ "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Dit is een verborgen regel.", "visualeditor-mwlanguagevariantcontextitem-flag-title": "Deze regel heeft invloed op de paginatitel.", "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Taalcode", - "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Ongeldig", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Onjuist", "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Taal", "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Bron", "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Bestemming", diff --git a/i18n/ve-mw/mwlanguagevariant/nn.json b/i18n/ve-mw/mwlanguagevariant/nn.json index 9e521da295..6919307304 100644 --- a/i18n/ve-mw/mwlanguagevariant/nn.json +++ b/i18n/ve-mw/mwlanguagevariant/nn.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Jon Harald Søby" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/nqo.json b/i18n/ve-mw/mwlanguagevariant/nqo.json index d370d0f921..71a111033b 100644 --- a/i18n/ve-mw/mwlanguagevariant/nqo.json +++ b/i18n/ve-mw/mwlanguagevariant/nqo.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Lancine.kounfantoh.fofana" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/pl.json b/i18n/ve-mw/mwlanguagevariant/pl.json index bef7620d66..3c5701da6b 100644 --- a/i18n/ve-mw/mwlanguagevariant/pl.json +++ b/i18n/ve-mw/mwlanguagevariant/pl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Chrumps", "Sutan" ] diff --git a/i18n/ve-mw/mwlanguagevariant/ps.json b/i18n/ve-mw/mwlanguagevariant/ps.json index 45f62a6703..7d5ba48d24 100644 --- a/i18n/ve-mw/mwlanguagevariant/ps.json +++ b/i18n/ve-mw/mwlanguagevariant/ps.json @@ -2,10 +2,46 @@ "@metadata": { "authors": [ "Af420", - "Amjad Khan" + "Amjad Khan", + "شاه زمان پټان" ] }, + "visualeditor-mwlanguagevariant-disabled": "بل‌بڼې اړونه ناچارن‌شوې", + "visualeditor-mwlanguagevariant-filter": "بل‌بڼې $1 ته چاڼ‌شوي", + "visualeditor-mwlanguagevariant-name": "د ژبې نوم: $1", + "visualeditor-mwlanguagevariant-oneway": "يو اړخيزه اړونه: $1", + "visualeditor-mwlanguagevariant-twoway": "ژبې اړونه: $1", + "visualeditor-mwlanguagevariant-unknown": "ژبې بل‌بڼه", + "visualeditor-mwlanguagevariantcontextitem-flag-describe": "دا يوه روښانه شوې قاعده ده.", + "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "دا يو پټه قاعده ده.", + "visualeditor-mwlanguagevariantcontextitem-flag-title": "دا قاعده د مخ سرليک اغېزمنوي.", + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "ژب‌کوډ", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "ناچل", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "ژبه", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "سرچينه", + "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "موخه‌ځی", + "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "ليک", + "visualeditor-mwlanguagevariantcontextitem-title-disabled": "بل‌بڼې اړونه ناچارن‌شوې", + "visualeditor-mwlanguagevariantcontextitem-title-filter": "بل‌بڼې چاڼگر", + "visualeditor-mwlanguagevariantcontextitem-title-name": "ژبې نوم", + "visualeditor-mwlanguagevariantcontextitem-title-oneway": "يو اړخيزې اړونې قاعده", + "visualeditor-mwlanguagevariantcontextitem-title-twoway": "ژبې اړونې قاعده", + "visualeditor-mwlanguagevariantcontextitem-title-unknown": "ژبې بل‌بڼه", + "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "بل‌بڼې اړولو څخه ليک ژغورل‌شوی", "visualeditor-mwlanguagevariantinspector-filter-langs-label": "ژبې", - "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "د ژبې کوډ", - "visualeditor-mwlanguagevariantinspector-filter-text-label": "منځپانگې" + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "ژب‌کوډ", + "visualeditor-mwlanguagevariantinspector-filter-text-label": "منځپانگې", + "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "چاڼ‌شوی ليک", + "visualeditor-mwlanguagevariantinspector-oneway-add-button": "نوی مورد ورگډول", + "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "مورد لرې‌کول", + "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "سرچينې ليک", + "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "بل‌بڼه ليک", + "visualeditor-mwlanguagevariantinspector-title-disabled": "بل‌بڼې اړونه ناچارن‌شوې", + "visualeditor-mwlanguagevariantinspector-title-filter": "بل‌بڼې چاڼگر", + "visualeditor-mwlanguagevariantinspector-title-name": "ژبې نوم", + "visualeditor-mwlanguagevariantinspector-title-oneway": "يو اړخيزې اړونې قاعده", + "visualeditor-mwlanguagevariantinspector-title-twoway": "ژبې اړونې قاعده", + "visualeditor-mwlanguagevariantinspector-twoway-add-button": "نوی مورد ورگډول", + "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "مورد لرې‌کول", + "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "بل‌بڼه ليک" } diff --git a/i18n/ve-mw/mwlanguagevariant/pt-br.json b/i18n/ve-mw/mwlanguagevariant/pt-br.json index 9d264f4484..7159f985b1 100644 --- a/i18n/ve-mw/mwlanguagevariant/pt-br.json +++ b/i18n/ve-mw/mwlanguagevariant/pt-br.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Eduardoaddad", "Felipe L. Ewald" ] diff --git a/i18n/ve-mw/mwlanguagevariant/pt.json b/i18n/ve-mw/mwlanguagevariant/pt.json index bc83ba0c3a..606325c513 100644 --- a/i18n/ve-mw/mwlanguagevariant/pt.json +++ b/i18n/ve-mw/mwlanguagevariant/pt.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Hamilton Abreu" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/roa-tara.json b/i18n/ve-mw/mwlanguagevariant/roa-tara.json index 084910e0a2..f26303cc4e 100644 --- a/i18n/ve-mw/mwlanguagevariant/roa-tara.json +++ b/i18n/ve-mw/mwlanguagevariant/roa-tara.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Joetaras" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/rsk.json b/i18n/ve-mw/mwlanguagevariant/rsk.json index 08e88d8d71..037cf677d9 100644 --- a/i18n/ve-mw/mwlanguagevariant/rsk.json +++ b/i18n/ve-mw/mwlanguagevariant/rsk.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Vlad5250" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/sah.json b/i18n/ve-mw/mwlanguagevariant/sah.json index ad11a54355..9ceb17502f 100644 --- a/i18n/ve-mw/mwlanguagevariant/sah.json +++ b/i18n/ve-mw/mwlanguagevariant/sah.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "HalanTul" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/scn.json b/i18n/ve-mw/mwlanguagevariant/scn.json index f41d822727..0bd000fe9d 100644 --- a/i18n/ve-mw/mwlanguagevariant/scn.json +++ b/i18n/ve-mw/mwlanguagevariant/scn.json @@ -1,8 +1,7 @@ { "@metadata": { "authors": [ - "Ajeje Brazorf", - "Amire80" + "Ajeje Brazorf" ] }, "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Còdici dâ lingua", diff --git a/i18n/ve-mw/mwlanguagevariant/sh-latn.json b/i18n/ve-mw/mwlanguagevariant/sh-latn.json index 9f9a7e365d..5d07ea2c5b 100644 --- a/i18n/ve-mw/mwlanguagevariant/sh-latn.json +++ b/i18n/ve-mw/mwlanguagevariant/sh-latn.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Winston Sung" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/sjd.json b/i18n/ve-mw/mwlanguagevariant/sjd.json new file mode 100644 index 0000000000..9a861a3105 --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/sjd.json @@ -0,0 +1,16 @@ +{ + "@metadata": { + "authors": [ + "Merrahtar" + ] + }, + "visualeditor-mwlanguagevariant-name": "Кӣл нэ̄мм: $1", + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Кӣл ко̄дт", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Кӣлл", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Ка̄ййв", + "visualeditor-mwlanguagevariantcontextitem-title-name": "Кӣл нэ̄мм", + "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Кӣл", + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Кӣл ко̄дт", + "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "Фильтруввма текст", + "visualeditor-mwlanguagevariantinspector-title-name": "Кӣл нэ̄мм" +} diff --git a/i18n/ve-mw/mwlanguagevariant/sje.json b/i18n/ve-mw/mwlanguagevariant/sje.json new file mode 100644 index 0000000000..d9ba649f75 --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/sje.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Yupik" + ] + }, + "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Täkksta" +} diff --git a/i18n/ve-mw/mwlanguagevariant/sk.json b/i18n/ve-mw/mwlanguagevariant/sk.json index fa293bada9..e4d183acda 100644 --- a/i18n/ve-mw/mwlanguagevariant/sk.json +++ b/i18n/ve-mw/mwlanguagevariant/sk.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Luky001" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/sl.json b/i18n/ve-mw/mwlanguagevariant/sl.json index 2f02b5cfcc..6a3292acdb 100644 --- a/i18n/ve-mw/mwlanguagevariant/sl.json +++ b/i18n/ve-mw/mwlanguagevariant/sl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Eleassar", "HairyFotr", "Janezdrilc" diff --git a/i18n/ve-mw/mwlanguagevariant/smn.json b/i18n/ve-mw/mwlanguagevariant/smn.json index 3b71943951..330a83e092 100644 --- a/i18n/ve-mw/mwlanguagevariant/smn.json +++ b/i18n/ve-mw/mwlanguagevariant/smn.json @@ -8,6 +8,7 @@ "visualeditor-mwlanguagevariant-unknown": "Kielâ variant", "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Kielâkoodi", "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Kielâ", + "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Tekstâ", "visualeditor-mwlanguagevariantcontextitem-title-name": "Kielâ nommâ", "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Kielâ variant", "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Kielah", diff --git a/i18n/ve-mw/mwlanguagevariant/so.json b/i18n/ve-mw/mwlanguagevariant/so.json new file mode 100644 index 0000000000..b3602f8c93 --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/so.json @@ -0,0 +1,45 @@ +{ + "@metadata": { + "authors": [ + "AhmedG612" + ] + }, + "visualeditor-mwlanguagevariant-disabled": "Beddelka noocyada waa la damiyay", + "visualeditor-mwlanguagevariant-filter": "Noocyada la shaandheeyay ilaa $1", + "visualeditor-mwlanguagevariant-name": "Magaca luuqadda: $1", + "visualeditor-mwlanguagevariant-oneway": "Beddelid hal-jid ah: $1", + "visualeditor-mwlanguagevariant-twoway": "Beddelidda luiqadda: $1", + "visualeditor-mwlanguagevariant-unknown": "Nooca luqadda", + "visualeditor-mwlanguagevariantcontextitem-flag-describe": "Tani waa xeer la sharxay.", + "visualeditor-mwlanguagevariantcontextitem-flag-hidden": "Tani waa xeer qarsoon.", + "visualeditor-mwlanguagevariantcontextitem-flag-title": "Xeerkan wuxuu saameeyaa cinwaanka bogga.", + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Koodhka luqadda", + "visualeditor-mwlanguagevariantcontextitem-rule-invalid-language-label": "Aan ansax ahayn", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Luuqadda", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Isha", + "visualeditor-mwlanguagevariantcontextitem-rule-text-to-label": "Meesha loo socdo", + "visualeditor-mwlanguagevariantcontextitem-rule-text-twoway-label": "Qoraal", + "visualeditor-mwlanguagevariantcontextitem-title-disabled": "Beddelidda nooca waa la naafoyeeyay", + "visualeditor-mwlanguagevariantcontextitem-title-filter": "Shaandhaynta noocyada", + "visualeditor-mwlanguagevariantcontextitem-title-name": "Magaca luuqadda", + "visualeditor-mwlanguagevariantcontextitem-title-oneway": "Xeerka beddelidda hal-jid ah", + "visualeditor-mwlanguagevariantcontextitem-title-twoway": "Xeerka beddelidda luqadda", + "visualeditor-mwlanguagevariantcontextitem-title-unknown": "Nooca luqadda", + "visualeditor-mwlanguagevariantinspector-disabled-placeholder": "Qoraalka laga ilaaliyey beddelidda nooca luqadda", + "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Luqadaha", + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Koodhka luuqadda", + "visualeditor-mwlanguagevariantinspector-filter-text-label": "Waxyaabaha ku jira", + "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "Qoraal la shaandheeyay", + "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Ku dar kiis cusub", + "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "Ka saar kiiska", + "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "Qoraalka asalka ah", + "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "Qoraalka nooca", + "visualeditor-mwlanguagevariantinspector-title-disabled": "Beddelidda nooca waa la naafoyeeyay", + "visualeditor-mwlanguagevariantinspector-title-filter": "Shaandhaynta noocyada", + "visualeditor-mwlanguagevariantinspector-title-name": "Magaca luqadda", + "visualeditor-mwlanguagevariantinspector-title-oneway": "Xeerka beddelka hal dhinac", + "visualeditor-mwlanguagevariantinspector-title-twoway": "Xeerka beddelka luqadda", + "visualeditor-mwlanguagevariantinspector-twoway-add-button": "Ku dar xaalad cusub", + "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "Ka saar xaaladda", + "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "Nooc qoraal" +} diff --git a/i18n/ve-mw/mwlanguagevariant/sq.json b/i18n/ve-mw/mwlanguagevariant/sq.json index dcdf2f0e4e..cff5f1f28c 100644 --- a/i18n/ve-mw/mwlanguagevariant/sq.json +++ b/i18n/ve-mw/mwlanguagevariant/sq.json @@ -1,10 +1,10 @@ { "@metadata": { "authors": [ - "Amire80", "Besnik b", "TMg", - "Vyolla" + "Vyolla", + "Xhulianoo" ] }, "visualeditor-mwlanguagevariant-disabled": "Shndërrimi në variante është i çaktivizuar", @@ -33,7 +33,7 @@ "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Kod gjuhe", "visualeditor-mwlanguagevariantinspector-filter-text-label": "Lëndë", "visualeditor-mwlanguagevariantinspector-filter-text-placeholder": "Tekst i filtruar", - "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Shtoni rastin e ri", + "visualeditor-mwlanguagevariantinspector-oneway-add-button": "Shtoni rast të ri", "visualeditor-mwlanguagevariantinspector-oneway-clear-button": "Hiqeni rastin", "visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder": "Tekst burimi", "visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder": "Tekst varianti", @@ -42,7 +42,7 @@ "visualeditor-mwlanguagevariantinspector-title-name": "Emër gjuhe", "visualeditor-mwlanguagevariantinspector-title-oneway": "Rregull shndërrimesh njëkahëshe", "visualeditor-mwlanguagevariantinspector-title-twoway": "Rregull shndërrimesh gjuhe", - "visualeditor-mwlanguagevariantinspector-twoway-add-button": "Shtoni rastin e ri", + "visualeditor-mwlanguagevariantinspector-twoway-add-button": "Shtoni rast të ri", "visualeditor-mwlanguagevariantinspector-twoway-clear-button": "Hiqeni rastin", "visualeditor-mwlanguagevariantinspector-twoway-text-placeholder": "Tekst varianti" } diff --git a/i18n/ve-mw/mwlanguagevariant/sr-ec.json b/i18n/ve-mw/mwlanguagevariant/sr-ec.json index 4673d15e21..b95e175527 100644 --- a/i18n/ve-mw/mwlanguagevariant/sr-ec.json +++ b/i18n/ve-mw/mwlanguagevariant/sr-ec.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Aca", "Acamicamacaraca", "BadDog", "Milicevic01" diff --git a/i18n/ve-mw/mwlanguagevariant/sr-el.json b/i18n/ve-mw/mwlanguagevariant/sr-el.json index 3467967f3b..2c157d6f34 100644 --- a/i18n/ve-mw/mwlanguagevariant/sr-el.json +++ b/i18n/ve-mw/mwlanguagevariant/sr-el.json @@ -1,8 +1,6 @@ { "@metadata": { - "authors": [ - "Amire80" - ] + "authors": [] }, "visualeditor-mwlanguagevariant-disabled": "Preslovljavanje je onemogućeno", "visualeditor-mwlanguagevariant-filter": "Varijante su filtrirane na $1", diff --git a/i18n/ve-mw/mwlanguagevariant/sv.json b/i18n/ve-mw/mwlanguagevariant/sv.json index f86334e05c..3691680178 100644 --- a/i18n/ve-mw/mwlanguagevariant/sv.json +++ b/i18n/ve-mw/mwlanguagevariant/sv.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bengtsson96", "WikiPhoenix" ] diff --git a/i18n/ve-mw/mwlanguagevariant/tr.json b/i18n/ve-mw/mwlanguagevariant/tr.json index ddf0a04522..a5927dae7c 100644 --- a/i18n/ve-mw/mwlanguagevariant/tr.json +++ b/i18n/ve-mw/mwlanguagevariant/tr.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "BaRaN6161 TURK" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/tt-cyrl.json b/i18n/ve-mw/mwlanguagevariant/tt-cyrl.json index a84295e02a..2970dee932 100644 --- a/i18n/ve-mw/mwlanguagevariant/tt-cyrl.json +++ b/i18n/ve-mw/mwlanguagevariant/tt-cyrl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Ерней", "Ильнар" ] diff --git a/i18n/ve-mw/mwlanguagevariant/ug-arab.json b/i18n/ve-mw/mwlanguagevariant/ug-arab.json index dcdf0d8637..da53a6fcfa 100644 --- a/i18n/ve-mw/mwlanguagevariant/ug-arab.json +++ b/i18n/ve-mw/mwlanguagevariant/ug-arab.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Uzdil" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/uk.json b/i18n/ve-mw/mwlanguagevariant/uk.json index 5a54324a4d..01acf480f5 100644 --- a/i18n/ve-mw/mwlanguagevariant/uk.json +++ b/i18n/ve-mw/mwlanguagevariant/uk.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Piramidion" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/vec.json b/i18n/ve-mw/mwlanguagevariant/vec.json index b195d3df1f..04eb63431a 100644 --- a/i18n/ve-mw/mwlanguagevariant/vec.json +++ b/i18n/ve-mw/mwlanguagevariant/vec.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Fierodelveneto" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/vi.json b/i18n/ve-mw/mwlanguagevariant/vi.json index 478dc77431..4c7e05a420 100644 --- a/i18n/ve-mw/mwlanguagevariant/vi.json +++ b/i18n/ve-mw/mwlanguagevariant/vi.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Minh Nguyen" ] }, diff --git a/i18n/ve-mw/mwlanguagevariant/wal.json b/i18n/ve-mw/mwlanguagevariant/wal.json new file mode 100644 index 0000000000..9540f7f3d3 --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/wal.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Ella Lachow" + ] + }, + "visualeditor-mwlanguagevariantcontextitem-rule-code-label": "Doonaa kooddiya", + "visualeditor-mwlanguagevariantcontextitem-rule-name-label": "Doonaa", + "visualeditor-mwlanguagevariantcontextitem-rule-text-from-label": "Man\"iya", + "visualeditor-mwlanguagevariantinspector-filter-langs-label": "Doonata", + "visualeditor-mwlanguagevariantinspector-filter-langs-placeholder": "Doonaa kooddiya", + "visualeditor-mwlanguagevariantinspector-title-name": "Doonaa sunttaa" +} diff --git a/i18n/ve-mw/mwlanguagevariant/yue-hant.json b/i18n/ve-mw/mwlanguagevariant/yue-hant.json new file mode 100644 index 0000000000..47f5b72a7f --- /dev/null +++ b/i18n/ve-mw/mwlanguagevariant/yue-hant.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "JeffreyKim" + ] + }, + "visualeditor-mwlanguagevariantinspector-oneway-add-button": "加新畸士", + "visualeditor-mwlanguagevariantinspector-twoway-add-button": "加新畸士" +} diff --git a/i18n/ve-mw/mwlanguagevariant/zh-hant.json b/i18n/ve-mw/mwlanguagevariant/zh-hant.json index a5fe273f05..911ae06884 100644 --- a/i18n/ve-mw/mwlanguagevariant/zh-hant.json +++ b/i18n/ve-mw/mwlanguagevariant/zh-hant.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Diskdance", "Kly", "Liuxinyu970226" diff --git a/i18n/ve-mw/nan-hans.json b/i18n/ve-mw/nan-hans.json index 09e2987356..b3e4567b9d 100644 --- a/i18n/ve-mw/nan-hans.json +++ b/i18n/ve-mw/nan-hans.json @@ -4,6 +4,7 @@ "SupaplexTW" ] }, + "visualeditor-ca-createlocaldescriptionsource": "加这搭的说明原始码", "visualeditor-ca-createsource": "建立原始码", "visualeditor-ca-editsource": "改源代码", "visualeditor-ca-editsource-section": "改原始码", diff --git a/i18n/ve-mw/nb.json b/i18n/ve-mw/nb.json index db4e8936f1..1f2b41d509 100644 --- a/i18n/ve-mw/nb.json +++ b/i18n/ve-mw/nb.json @@ -261,6 +261,7 @@ "visualeditor-includes-includeonly-description": "Når innhold fra denne siden inkluderes på en annen side vil følgende ekstra innhold inkluderes:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Lær mer om delvis transklusjon]", "visualeditor-languages-tool": "Språk", + "visualeditor-linkcontext-uneditable": "Beklager, denne lenka kan for tiden kun endres i kildemodus.", "visualeditor-linkinspector-button-link-external": "Ekstern side", "visualeditor-linkinspector-button-link-internal": "Søk i interne sider", "visualeditor-linkinspector-convert-link-isbn": "Konverter til ISBN-lenke", diff --git a/i18n/ve-mw/nds-nl.json b/i18n/ve-mw/nds-nl.json index 72dabb98b6..44a5acd6a9 100644 --- a/i18n/ve-mw/nds-nl.json +++ b/i18n/ve-mw/nds-nl.json @@ -22,11 +22,11 @@ "visualeditor-dialog-media-goback": "Weerumme", "visualeditor-dialog-media-info-audiofile": "Geluudsbestaand", "visualeditor-dialog-media-info-created": "An-emaakt: $1", - "visualeditor-dialog-media-info-meta-artist": "Artiest: $1", + "visualeditor-dialog-media-info-meta-artist": "Autöör: $1", "visualeditor-dialog-media-info-moreinfo": "Meer informasie", "visualeditor-dialog-media-info-readmore": "Meer lezen", "visualeditor-dialog-media-info-uploaded": "Op-estuurd: $1", - "visualeditor-dialog-media-page-advanced": "Geavveseerde instellingen", + "visualeditor-dialog-media-page-advanced": "Avanceerd", "visualeditor-dialog-media-page-general": "Algemeyn", "visualeditor-dialog-media-position-section": "Posisie", "visualeditor-dialog-media-save": "Opslaon", @@ -108,7 +108,7 @@ "visualeditor-formatdropdown-format-mw-heading6": "Underupskrivt 4", "visualeditor-languages-tool": "Språken", "visualeditor-linkinspector-button-link-external": "Uutgånde verwysing", - "visualeditor-linkinspector-button-link-internal": "Ziejen zeuken", + "visualeditor-linkinspector-button-link-internal": "Syden söken", "visualeditor-linkinspector-educationpopup-text": "Koppel belangrieke woorden an aandere ziejen in de wiki of zelfs aandere websteeën. Hierdeur kunnen lezers de kontext beter begriepen.", "visualeditor-linkinspector-educationpopup-title": "Verwiezingen", "visualeditor-linkinspector-illegal-title": "Ongeldige ziedtitel", diff --git a/i18n/ve-mw/ne.json b/i18n/ve-mw/ne.json index deceb54620..47d1eae73f 100644 --- a/i18n/ve-mw/ne.json +++ b/i18n/ve-mw/ne.json @@ -54,11 +54,9 @@ "visualeditor-dialog-media-info-artist": "$1को उर्ध्वभरणहरूको सूची", "visualeditor-dialog-media-info-audiofile": "श्रब्य फाइल", "visualeditor-dialog-media-info-created": "सिर्जना गरिएको: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "लेखक: $1", "visualeditor-dialog-media-info-moreinfo": "थप जानकारी", "visualeditor-dialog-media-info-readmore": "थप पढ्नुहोस्", - "visualeditor-dialog-media-info-separator": "।", "visualeditor-dialog-media-info-uploaded": "अपलोड गरेको : $1", "visualeditor-dialog-media-page-advanced": "विकसित", "visualeditor-dialog-media-page-general": "सामान्य", @@ -100,7 +98,7 @@ "visualeditor-dialog-meta-settings-newsectioneditlink-force": "हो", "visualeditor-dialog-meta-settings-section": "पृष्ठ अभिरुचिहरू", "visualeditor-dialog-meta-settings-toc-disable": "कहिल्यै", - "visualeditor-dialog-meta-settings-toc-force": "सधैं", + "visualeditor-dialog-meta-settings-toc-force": "सधैँ", "visualeditor-dialog-meta-templatesused-noresults": "कुनैपनि ढाँचा भेटिएन", "visualeditor-dialog-meta-title": "विकल्पहरू", "visualeditor-dialog-table-collapsible": "खुम्चाउन मिल्ने", @@ -129,7 +127,7 @@ "visualeditor-dialog-transclusion-placeholder-input-placeholder": "ढाँचा खोज्नुहोस्", "visualeditor-dialog-transclusion-required-parameter": "आवश्यक क्षेत्र", "visualeditor-dialog-transclusion-required-parameter-description": "क्षेत्र आवश्यक छ।", - "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "पछाडि पर्कने", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "पछाडि पर्कनुहोस्", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "र पनि जारी राख्ने", "visualeditor-dialog-transclusion-see-template": "ढाँचाहरू प्रयोगकर्ता-निर्मित हुन् र पूर्ण विवरणहरूको अभाव हुन सक्छ। यस [[$2|ढाँचाको पृष्ठ]]मा थप जानकारी हुन सक्छ।", "visualeditor-dialog-transclusion-title-insert-known-template": "घुसाउनुहोस्: $1", @@ -145,6 +143,7 @@ "visualeditor-educationpopup-dismiss": "ठिक छ, मैले बुझेँ", "visualeditor-expandable-less": "थोरै", "visualeditor-expandable-more": "थप", + "visualeditor-feedback-defaultmessage": "युआरएल: $1", "visualeditor-formatdropdown-format-mw-heading1": "पृष्ठ शीर्षक", "visualeditor-formatdropdown-format-mw-heading2": "शीर्षक", "visualeditor-formatdropdown-format-mw-heading3": "उपशीर्षक १", diff --git a/i18n/ve-mw/nit.json b/i18n/ve-mw/nit.json index 793681b216..d14b47dfc7 100644 --- a/i18n/ve-mw/nit.json +++ b/i18n/ve-mw/nit.json @@ -1,12 +1,13 @@ { "@metadata": { "authors": [ - "Athram Rajkumar" + "Athram Rajkumar", + "Chaduvari" ] }, "visualeditor-ca-createlocaldescriptionsource": "స్థానిక వివరణ సోర్సున్ సెర్ప్", "visualeditor-ca-createsource": "మూలపాఠ్యాన్ సృష్టించుర్", - "visualeditor-ca-editsource": "మూలపాఠ్యాన్ని సవరిప్", - "visualeditor-ca-editsource-section": "మూలపాఠ్యాన్ని సవరిప్", + "visualeditor-ca-editsource": "మూలపాఠ్యాన్ని సవరించు", + "visualeditor-ca-editsource-section": "మూలపాఠ్యాన్ని సవరించు", "visualeditor-descriptionpagelink": "Project:విజువల్ఎడిటర్" } diff --git a/i18n/ve-mw/nl.json b/i18n/ve-mw/nl.json index 8eecce71bd..bfc4521b36 100644 --- a/i18n/ve-mw/nl.json +++ b/i18n/ve-mw/nl.json @@ -20,6 +20,7 @@ "Huhbakker", "Jdforrester", "JensRiskin", + "Jeroen N", "Keegan", "Kim Bruning", "Klaas van Buiten", @@ -102,7 +103,6 @@ "visualeditor-dialog-media-info-artist": "Geüpload door $1", "visualeditor-dialog-media-info-audiofile": "Geluidsbestand", "visualeditor-dialog-media-info-created": "Aangemaakt: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Auteur: $1", "visualeditor-dialog-media-info-moreinfo": "Meer informatie", "visualeditor-dialog-media-info-readmore": "Meer lezen", @@ -221,9 +221,9 @@ "visualeditor-dialog-transclusion-filter-hide-unused": "Ongebruikte verbergen", "visualeditor-dialog-transclusion-filter-no-match": "Geen overeenkomsten gevonden", "visualeditor-dialog-transclusion-filter-placeholder": "Veld zoeken", - "visualeditor-dialog-transclusion-filter-show-all": "Toon alles", + "visualeditor-dialog-transclusion-filter-show-all": "Alles weergeven", "visualeditor-dialog-transclusion-filter-title": "Parameter zoeken voor $1", - "visualeditor-dialog-transclusion-help-title": "Ondersteuning voor het bewerken van sjablonen", + "visualeditor-dialog-transclusion-help-title": "Sjabloonbewerkingshulp", "visualeditor-dialog-transclusion-help-message": "Sjablonen bieden opmaak voor inhoud. Deze tekstverwerker laat aan de linkerkant zien welke opties een sjabloon biedt en aan de rechterkant kunnen waarden worden toegevoegd.", "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Hulp bij het bewerken van sjablonen]", "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts Sneltoetsen]", @@ -231,7 +231,7 @@ "visualeditor-dialog-transclusion-deprecated-parameter-description": "Veld is verouderd: $1", "visualeditor-dialog-transclusion-loading": "Bezig met laden…", "visualeditor-dialog-transclusion-multipart-message": "U bewerkt momenteel een sjabloon en een of meer daarmee [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content in verband staande onderdelen] (wikitekst en/of aanvullende sjablonen).", - "visualeditor-dialog-transclusion-no-template-data-description": "Dit sjabloon heeft geen [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] en de parameters zijn [//www.mediawiki.org/wiki/Special:MyLanguage/Help :VisualEditor/User_guide#Autogenerated_parameters automatisch gegenereerd]. Als gevolg hiervan ontbreken de beschrijvingen van het sjabloon en de parameters. Mogelijk staat er aanvullende informatie op de [[$1|sjabloonpagina]].", + "visualeditor-dialog-transclusion-no-template-data-description": "Dit sjabloon heeft geen [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] en de parameters zijn [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters automatisch gegenereerd]. Als gevolg hiervan ontbreken de beschrijvingen van het sjabloon en de parameters. Mogelijk staat er aanvullende informatie op de [[$1|sjabloonpagina]].", "visualeditor-dialog-transclusion-no-template-description": "Het sjabloon \"$1\" heeft nog geen beschrijving, maar mogelijk is er informatie op de [[$2|sjabloonpagina]].", "visualeditor-dialog-transclusion-no-template-parameters": "Voor dit sjabloon zijn geen parameters beschreven. Het is mogelijk bedoeld voor gebruik zonder parameters.", "visualeditor-dialog-transclusion-param-default": "Standaard: $1", @@ -267,11 +267,11 @@ "visualeditor-editnotices-tooltip": "Meldingen over bewerken", "visualeditor-editsummary": "Beschrijf wat u hebt gewijzigd", "visualeditor-editsummary-characters-remaining": "Het aantal resterende tekens", - "visualeditor-educationpopup-dismiss": "Oké, ik snap het", + "visualeditor-educationpopup-dismiss": "Oké, ik begrijp het", "visualeditor-expandable-less": "Minder", "visualeditor-expandable-more": "Meer", - "visualeditor-feedback-defaultmessage": "URL: $1", - "visualeditor-formatdropdown-format-mw-heading1": "Paginanaam", + "visualeditor-feedback-defaultmessage": "Url: $1", + "visualeditor-formatdropdown-format-mw-heading1": "Paginatitel", "visualeditor-formatdropdown-format-mw-heading2": "Kopje", "visualeditor-formatdropdown-format-mw-heading3": "Onderkop 1", "visualeditor-formatdropdown-format-mw-heading4": "Onderkop 2", @@ -288,14 +288,15 @@ "visualeditor-includes-includeonly-description": "Wanneer inhoud van deze pagina door een andere pagina wordt gebruikt, wordt hier de volgende aanvullende inhoud opgenomen:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Meer informatie over gedeeltelijke transclusie]", "visualeditor-languages-tool": "Talen", - "visualeditor-linkinspector-button-link-external": "Uitwendige pagina", + "visualeditor-linkcontext-uneditable": "Deze koppeling kan momenteel helaas alleen in de broncodemodus bewerkt worden.", + "visualeditor-linkinspector-button-link-external": "Externe koppeling", "visualeditor-linkinspector-button-link-internal": "Interne pagina's doorzoeken", "visualeditor-linkinspector-convert-link-isbn": "Omzetten naar ISBN-koppeling", "visualeditor-linkinspector-convert-link-pmid": "Omzetten naar PMID-koppeling", "visualeditor-linkinspector-convert-link-rfc": "Omzetten naar RFC-koppeling", "visualeditor-linkinspector-educationpopup-text": "Koppel belangrijke woorden aan andere pagina's in de wiki of zelfs andere websites. Hierdoor zijn lezers in de gelegenheid de context te begrijpen.", "visualeditor-linkinspector-educationpopup-title": "Koppelingen", - "visualeditor-linkinspector-illegal-title": "Ongeldige paginanaam", + "visualeditor-linkinspector-illegal-title": "Incorrecte paginatitel", "visualeditor-linkinspector-invalid-blocked": "Koppelingen naar deze site zijn op deze wiki geblokkeerd. Probeer een andere koppeling.", "visualeditor-linkinspector-invalid-external": "Voeg een volledige URL in, bijvoorbeeld https://example.org", "visualeditor-linknodeinspector-add-label": "Label toevoegen", @@ -361,7 +362,7 @@ "visualeditor-rebase-client-export": "Exporteren", "visualeditor-rebase-client-export-start": "Exporteren…", "visualeditor-rebase-client-import": "Importeren", - "visualeditor-rebase-client-import-name": "Paginanaam", + "visualeditor-rebase-client-import-name": "Paginatitel", "visualeditor-rebase-client-title-help": "U kunt wijzigingen bekijken voordat u ze opslaat.", "visualeditor-recreate": "De pagina is verwijderd sinds u bent begonnen met bewerken. Klik op \"$1\" om de pagina opnieuw aan te maken.", "visualeditor-redirect-description": "Doorverwijzing naar $1", @@ -386,17 +387,17 @@ "visualeditor-savedialog-title-save": "Wijzigingen opslaan", "visualeditor-section-body-placeholder": "Nieuwe sectie", "visualeditor-section-title-placeholder": "Onderwerp", - "visualeditor-loaderror-revidconflict": "Door de server geretourneerde revisie-ID's komen niet overeen (document: $1, metadata: $2).", + "visualeditor-loaderror-revidconflict": "Door de server teruggegeven versie-ID's komen niet overeen (document: $1, metagegevens: $2).", "visualeditor-loaderror-wrongmode": "Probeerde de tekstverwerker in de verkeerde modus te laden (gegevenstype: \"$1\", tekstverwerkermodus: \"$2\").", "visualeditor-settings-tool": "Pagina-instellingen", "visualeditor-special-characters-group-other": "Vaak gebruikt", "visualeditor-templatesused-tool": "Gebruikte sjablonen", - "visualeditor-title-error": "Ongeldige paginanaam.", - "visualeditor-toload": "De tekstverwerker wordt nu geladen. Als u dit bericht na een paar seconden nog steeds ziet, [$1 herlaad de pagina].", + "visualeditor-title-error": "Incorrecte titel.", + "visualeditor-toload": "De editor wordt nu geladen. Als u dit bericht na een paar seconden nog ziet, kunt u [$1 de pagina vernieuwen].", "visualeditor-tooltip-non-breaking-space": "harde spatie", "visualeditor-version-label": "Versie", "visualeditor-wikitext-progress": "Wikitekst aan het omzetten", - "visualeditor-wikitext-warning": "U bevindt zich in de visuele tekstverwerker. [[{{MediaWiki:visualeditor-wikitext-warning-link}}|Wikitekst]] werkt hier niet. Om op elk moment over te schakelen naar de wikitekstmodus zonder uw veranderingen te verliezen, klikt u op de knop met het wikitekstsymbool.", + "visualeditor-wikitext-warning": "U bevindt zich in de visuele tekstverwerker. [[{{MediaWiki:visualeditor-wikitext-warning-link}}|Wikitekst]] werkt hier niet. Om op elk moment over te schakelen naar de wikitekstmodus zonder uw wijzigingen te verliezen, klikt u op de knop met het wikitekstsymbool.", "visualeditor-wikitext-warning-title": "Wikitekst gedetecteerd", "visualeditor-wikitextconvert-title": "Opmaak naar wikitekst omzetten?", "visualeditor-wikitextconvert-message": "U heeft inhoud geplakt met rijke opmaak. Wilt u deze opmaak omzetten naar wikitekst?", diff --git a/i18n/ve-mw/nmz.json b/i18n/ve-mw/nmz.json index e8fe2abdf6..684ea2d585 100644 --- a/i18n/ve-mw/nmz.json +++ b/i18n/ve-mw/nmz.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "GastonJeremiah" ] }, diff --git a/i18n/ve-mw/nqo.json b/i18n/ve-mw/nqo.json index 182bb5a3d2..f67fbf8a1e 100644 --- a/i18n/ve-mw/nqo.json +++ b/i18n/ve-mw/nqo.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Babamamadidiane", "Babamamadidianee", "Lancine.kounfantoh.fofana", @@ -13,9 +12,17 @@ "collabpad-import-subtitle": "ߊ߬ ߟߊߛߣߍߣߍ߲߫ ߞߊ߬ ߓߐ߫ $1 ߟߋ߬", "collabpad": "ߞߏߟߊߓߑߔߊߘ", "tooltip-ca-ve-edit": "ߞߐߜߍ ߣߌ߲߬ ߡߊߦߟߍ߬ߡߊ߲߬", + "tooltip-ca-ve-edit-local": "ߕߌ߲߬ߞߎߘߎ߲ ߕߐ߯ߛߓߍߟߌ߫ ߞߐߜߍ ߡߊߦߟߍ߬ߡߊ߲߫", + "tooltip-ca-ve-create": "ߞߐߜߍ ߣߌ߲߬ ߛߌ߲ߘߌ߫", + "tooltip-ca-ve-create-local": "ߕߌ߲߬ߞߎߘߎ߲ ߕߐ߯ߛߓߍߟߌ߫ ߞߐߜߍ ߡߊߦߟߍ߬ߡߊ߲߫", "tooltip-ca-editsource": "ߞߐߜߍ ߣߌ߲߬ ߘߏߝߙߍߕߍ ߛߎ߲ ߡߊߦߟߍ߬ߡߊ߲߫", + "tooltip-ca-editsource-local": "ߕߌ߲߬ߞߎߘߎ߲ ߕߐ߯ߛߓߍߟߌ߫ ߞߐߜߍ ߓߐߖߎ ߘߏߝߙߍߕߍ ߡߊߦߟߍ߬ߡߊ߲߫", "tooltip-ca-createsource": "ߞߐߜߍ ߣߌ߲߬ ߘߏߝߙߍߕߍ ߛߎ߲ ߛߌ߲ߘߌ߫", + "tooltip-ca-createsource-local": "ߕߌ߲߬ߞߎߘߎ߲ ߕߐ߯ߛߓߌߟߌ߫ ߞߐߜߍ ߘߏߝߙߍߕߍ ߓߐߖߎ ߡߊߦߟߍ߬ߡߊ߲߫", "visualeditor-advancedsettings-tool": "ߟߊ߬ߓߍ߲߬ߢߐ߲߰ߡߦߊ߬ߘߊ ߖߊ߲߬ߝߊ߬ߣߍ߲ ߠߎ߬", + "visualeditor-annotations-default-description": "ߞߐߜߍ ߣߌ߲߬ ߝߊ߲߭ ߣߌ߲߬ ߦߋ߫ ߦߟߌߣߐߦߊߟߌ ߞߏ߲߬ߞߏ߬ߝߍ߬ߟߊ ߘߏ߫ ߟߋ߬ ߘߌ߫", + "visualeditor-annotations-default-end": "ߦߟߌߣߐߦߊߟߌ ߞߏ߲߬ߞ߬ߝߍ߬ߟߊ ߞߎ߲߬ߝߊ߮", + "visualeditor-annotations-default-start": "ߦߟߌߣߐߦߊߟߌ ߞߍ߲߬ߞߍ߲ ߘߊߡߌߣߊ", "visualeditor-autosave-modified-prompt-accept": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߠߊߘߛߏ߫", "visualeditor-autosave-modified-prompt-message": "ߞߐߜߍ ߣߌ߲߬ ߓߘߊ߫ ߡߊߦߟߍ߬ߡߊ߲߫ ߞߊ߬ߦߌ߯ ߊ߬ ߟߊߦߟߍ߬ ߟߊ߬ߓߊ߲ ߡߍ߲ ߞߍ߫ ߘߴߌ ߓߟߏ߫. ߊ߬ ߞߊߘߌ߫ {{GENDER:|ߌ}} ߢߍ߫ ߓߊ߬ ߞߊ߬ {{GENDER:|ߌ ߟߊ߫}} ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߠߎ߬ ߟߊߘߛߏ߫ ߦߌߟߡߊ ߞߘߐ߬ߡߊ߲ ߘߐ߫߸ ߤߊߡߊ߲ߕߍ߫ ߞߊ߬ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲߬ ߞߎߘߊ ߘߊߡߌ߬ߣߊ߬ ߦߌߟߡߊ߫ ߞߐ߯ߟߕߊ ߡߊ߬؟", "visualeditor-autosave-modified-prompt-reject": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲߬ ߞߎߘߊ߫ ߘߊߡߌ߬ߣߊ߫", @@ -30,12 +37,16 @@ "visualeditor-ca-editlocaldescriptionsource": "ߕߌ߲߬ߞߎߘߎ߲ ߞߊ߲߬ߛߓߍ߬ߟߌ ߛߎ߲ ߡߊߦߟߍ߬ߡߊ߲߫", "visualeditor-ca-editsource": "ߊ߬ ߛߎ߲ ߡߊߦߟߍ߬ߡߊ߲߬", "visualeditor-ca-editsource-section": "ߊ߬ ߛߎ߲ ߡߊߦߟߍ߬ߡߊ߲߬", + "visualeditor-ca-editsource-section-hint": "ߕߍߕߍ߮ ߓߐߖߎ ߘߏߝߙߍߕߍ ߡߊߦߟߍ߬ߡߊ߲߫: $1", "visualeditor-categories-tool": "ߦߌߟߡߊ ߟߎ߬", + "visualeditor-changedesc-mwcategory-sortkey-changed": "ߢߣߊߕߐߡߐ߲ߠߌ߲ ߢߌ߲ ߓߘߊ߫ ߡߊߝߊ߬ߟߋ߲߬ ߞߊ߬ ߓߐ߫ $1 ߞߊ߬ ߕߊ߯ $2 ߘߐ߫", + "visualeditor-changedesc-mwcategory-sortkey-set": "ߢߣߊߕߐߡߐ߲ߠߌ߲ ߢߌ߲ $1 ߓߘߊ߫ ߘߐߛߌ߰", "visualeditor-changedesc-mwlanguagevariant": "ߞߊ߲ ߓߐߢߐ߲߯ߞߘߐ ߣߐ߬ߣߐ߬ߟߌ ߓߘߊ߫ ߡߊߝߊ߬ߟߋ߲߫", "visualeditor-changedesc-mwredirect": "ߟߊ߬ߞߎ߲߬ߛߌ߲߬ߠߌ߲ ߕߊ߯ߦߙߐ ߓߘߊ߫ ߡߊߝߊ߬ߟߋ߲߬ ߞߊ߬ ߓߐ߫ $1 ߞߊ߬ ߕߊ߯ $2", "visualeditor-changedesc-mwtransclusion": "ߞߙߊߞߏ ߟߊ߬ߓߍ߲߬ߢߐ߲߰ߡߦߊ߬ߘߊ ߟߎ߬ ߓߘߊ߫ ߡߊߝߊ߬ߟߋ߲߫", "visualeditor-desc": "MediaWiki ߦߋߢߊ߫ ߡߊߦߟߍߡߊ߲", "visualeditor-descriptionpagelink": "Project:ߦߋߢߊ ߡߊߦߟߍߡߊ߲", + "visualeditor-dialog-extension-abandonedit": "ߌ ߟߊߣߴߊ߬ ߟߊ߫ ߝߋߎ߫ ߞߴߌ ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߏ߲߬ߘߏ ߣߌ߲߬ ߕߎ߲߯ ߠߋ߬ ߞߵߊ߬ ߕߘߍ߬ ߌ ߡߴߌ ߟߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߠߊߘߏ߲߬؟", "visualeditor-dialog-media-alttext-checkbox": "ߝߍ߬ߛߓߍߟߌ ߟߊߓߊ߯ߙߊ߫ ߞߟߏߜߍ߫ ߕߙߎߕߙߎߟߊ ߘߌ߫", "visualeditor-dialog-media-alttext-section": "ߛߓߍߟߌ߫ ߛߎߞߌߟߊ", "visualeditor-dialog-media-alttext-section-help": "ߌ ߘߌ߫ ߛߋ߫ ߞߊ߬ߘߌ߬ߦߊ߬ߢߍ߫ ߞߣߍ ߣߌ߲߬ ߠߊߓߊ߯ߙߊ߫ ߟߊ߫ ߞߊ߬ ߞߟߏ ߘߏ߫ ߟߎ߫ ߛߓߍ߫ ߞߊ߲߬ߛߓߍߟߌ ߘߌ߫ ߡߐ߰ ߟߎ߬ ߢߍ߫߸ ߡߍ߲ ߠߎ߬ ߕߍߣߊ߬ ߝߌ߬ߛߌ ߦߋ߫ ߟߊ߫. \nߞߊ߲߬ߛߓߍߟߌ ߘߌ߫ ߣߊ߬ ߞߍ߫ ߥߛߊ߬ߞߍ߬ߕߊ߫ ߘߴߊ߬ߟߎ߫ ߢߍ߫ ߞߊ߬ ߞߟߋߞߟߋ ߝߌ߬ߛߌ ߟߎ߫ ߢߊ߬ߕߣߐ ߣߴߊ߬ ߞߎ߲߬ߠߊ߬ߝߏߣߌ߲߫ ߡߊߛߐߣߍ߲ ߠߎ߬ ߢߊߦߋ߫. ߏ߬ ߘߏ߲߬ ߢߊ߬ߕߣߐ ߓߏ߲߬ߓߊ߬ߓߊ ߟߋ߬ ߦߋ߫ ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ߫ ߢߟߊߛߎߛߎߕߐ (ߡߍ߲ ߠߎ߬ ߢߊ ߡߊ߲ߘߌ߫) ߟߎ߬ ߣߌ߫ ߡߐ߰ ߜߘߍ߫ ߟߎ߫ ߡߊ߬ ߡߍ߲ ߠߎ߬ ߦߋ߫ ߘߊ߬ߣߊ߲߬ߥߟߊ ߘߐߞߊ߬ߙߊ߲߬ߠߌ߲߫ ߛߎ߲ߝߘߍ ߥߟߊ߫ ߛߏ߲߯ߓߊߟߊ߲ ߡߍ߲ ߠߎ߬ ߕߍ߫ ߘߏߜߘߍ߫ ߦߋ߫ ߟߊ߫ ߛߓߍߟߌ ߘߐߙߐ߲߫ ߞߐ߫.", @@ -54,6 +65,8 @@ "visualeditor-dialog-media-info-uploaded": "ߊ߬ ߟߊߦߟߍ߬ ߘߊ߫: $1", "visualeditor-dialog-media-page-advanced": "ߖߊ߲߬ߝߊ߬ߣߍ߲", "visualeditor-dialog-media-page-general": "ߝߘߏ߬ߓߊ߬ߡߊ", + "visualeditor-dialog-media-position-checkbox": "ߝߌ߬ߛߌ ߣߌ߲߬ ߠߊߝߏ߬ ߛߓߍߟߌ ߟߊ߫", + "visualeditor-dialog-media-position-checkbox-help": "ߌ ߓߴߛߋ߫ ߞߟߋߞߟߋ ߝߌ߬ߛߌ ߣߌ߲߬ ߟߐ߬ ߟߊ߫ ߦߌ߬ߘߊ߬ ߟߊ߫ ߓߟߐߟߐ ߟߊ߫ ߛߓߍߟߌ߫ ߛߎ߯ ߞߋߟߋ߲ ߘߌ߫ ߦߊ߬ߣߴߌ ߦߋ߫ ߞߊ߬ߘߊ߲ ߘߏ߲߬ ߊ߬ ߡߊ߬ ߛߴߊ߬ ߦߋ߫ ߝߎ߲߫. ߒ߬ߞߊ߬ ߏ߬ ߞߍ ߡߊ߲߫ ߛߌߦߊ߫ ߘߋ߬، ߓߴߊ߬ ߦߴߊ߬ ߟߊ߫ ߕߎ߲߰ߠߊ߫ ߛߓߍߟߌ ߟߎ߬ ߕߍߝߘߊ߫ ߟߊ߫ ߟߋ߬ ߣߴߌ ߡߊ߫ ߞߏ߲߬ߘߴߏ߬ ߝߛߍ߬ߝߛߍ߫.", "visualeditor-dialog-media-position-section": "ߟߌ߬ߤߟߊ߬ߦߊ", "visualeditor-dialog-media-save": "ߊ߬ ߟߊߞߎ߲߬ߘߎ߬", "visualeditor-dialog-media-search-tab-search": "ߢߌߣߌ߲ߠߌ߲", @@ -115,6 +128,9 @@ "visualeditor-dialog-template-title": "ߞߙߊߞߏ", "visualeditor-dialog-transclusion-action-save": "ߊ߬ ߟߊߞߎ߲߬ߘߎ߬", "visualeditor-dialog-transclusion-template-title-nonexistent": "ߞߙߊߞߏ ߣߌ߲߬ ߕߴߦߋ߲߬.", + "visualeditor-dialog-transclusion-template-widget-aria": "(ߛߓߍߘߋ߲ߥߟߊ) ߞߣߍ ߘߌ߯ ߞߊ߬ ߞߙߊߞߏ ߛߎߥߊ߲ߘߌ߫.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "(ߛߓߍߘߋ߲ߥߟߊ) Ctrl+ߖߏ߰ߛߌ߬ߟ ߟߎ߬ ߘߌ߯ ߞߋߟߋ߲߫ ߘߌ߫ ߞߊ߬ ߞߙߊߞߏ ߣߴߊ߬ ߟߊ߬ߓߍ߲߬ߢߐ߲߰ߡߊ߬ߦߊߘߊ ߣߴߊ߬ ߡߐ߬ߟߐ߲ ߠߎ߬ ߖߏ߰ߛߌ߫. Ctrl+Shif+ߓߌ߬ߢߍ ߟߎ߬ ߘߌ߯ ߞߊ߬ ߞߙߊߞߏ ߟߊߦߟߍ߬ ߛߊ߲ߝߍ߬ ߥߟߊ߫ ߞߵߊ߬ ߡߊߖߌ߰ ߘߎ߰ߟߊ߫.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Ctrl+ߖߏ߰ߛߌ߬ߟߌ ߟߎ߬ ߘߌ߯ ߞߊ߬ ߞߙߊߞߏ ߣߴߊ߬ ߟߊ߬ߓߍ߲߬ߢߐ߲߰ߡߦߊ߬ߘߊ ߣߴߊ߬ ߡߐ߬ߟߐ߲ ߠߎ߬ ߖߏ߰ߛߌ߫.", "visualeditor-dialog-transclusion-add-wikitext": "ߥߞߌߞߟߏߘߋ߲ ߝߙߊ߬", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "ߟߊ߬ߓߍ߲߬ߢߐ߲߰ߡߦߊ߬ߘߊ \"$2\" ߕߴߛߋ߫ ߟߊߘߏ߲߬ ߠߊ߫ ߛߋ߲߬ߧߊ߫ ߝߌ߬ߟߊ߫", "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "ߟߊ߬ߓߍ߲߬ߢߐ߲߰ߡߦߊ߬ߘߊ \"$2\" ߦߋ߫ ߦߋ߲߬ ߞߘߐ߬ߡߊ߲߫ ߊ߬ ߟߊߓߊ߯ߙߊ߫ ߞߊ߲ߡߊ߬. ߢߣߊߕߊߟߌ ߘߐߜߍ߫ ߞߍ߲߬ߞߍ߲߬ߝߍ߬ ߝߙߊߕߌ ߘߐ߫.", @@ -169,6 +185,7 @@ "visualeditor-dialog-transclusion-template-search": "ߞߙߊߞߏ ߢߌߣߌ߲ߠߌ߲", "visualeditor-dialog-transclusion-template-search-help": "ߞߙߊߞߏ ߘߏ߫ ߢߌߣߌ߲߫ ߌ ߓߊ߯ ߞߍ߫ ߡߍ߲ ߝߙߊ߬ ߞߏ ߘߐ߫߸ ߞߵߏ߬ ߞߍ߫ ߞߎߡߊߘߋ߲߫ ߡߊߟߐ߲ߣߍ߲ ߢߌߣߌ߲ ߠߊ߫. ߞߊ߲߬ߛߓߍߟߌ ߦߋ߫ ߞߙߊߞߏ ߡߍ߲ ߠߊ߫߸ ߏ߬ ߟߋ ߞߊ߬ߣߌ߲߬ߣߍ߲߬ ߦߋ߫ ߞߊ߬ ߓߍ߲߬ ߊ߬ ߓߊ߯ߙߊ ߡߊ߬ ߞߏߢߊ߬ ߦߋߗߏ߯ ߡߊߦߟߍߡߊ߲ߟߊ߲ ߘߐ߫.", "visualeditor-dialog-transclusion-wikitext": "ߥߞߌߞߟߏߘߋ߲", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Ctrl+Del (Suppr) ߘߌ߯ ߢߐ߲߯ߝߍ߬ ߞߊ߬ ߥߌߞߌ߫ ߘߏߞߊ߲ ߠߎ߬ ߖߏ߰ߛߌ߫", "visualeditor-dialogbutton-media-tooltip": "ߖߌ߬ߦߊ߬ߓߍ ߣߌ߫ ߡߋߘߌߦߊ ߟߎ߬", "visualeditor-dialogbutton-template-tooltip": "ߞߙߊߞߏ", "visualeditor-editconflict": "ߌ ߟߊ߫ ߡߝߊ߬ߟߋ߲߬ߠߌ߲ ߠߎ߬ ߕߍߣߊ߬ ߛߐ߲߬ ߠߊ߫ ߟߊߞߎ߲߬ߘߎ߫ ߟߊ߫ ߞߊ߬ߡߊߛߐ߬ߘߐ߲߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߝߐߢߐ߲߯ߞߐ ߝߍ߬. {{GENDER:|ߌ}} ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߝߐߢߐ߲߯ߞߐ ߏ߬ ߢߊߓߐ߫ ߓߟߏߟߕߊߦߊ ߘߐ߫ ߓߊ߬؟", @@ -230,6 +247,7 @@ "visualeditor-mwgallerydialog-empty-gallery-message": "ߖߌ߬ߦߊ߬ߝߍ ߣߌ߲߬ ߘߐߞߏߟߏ߲ ߠߋ߬.", "visualeditor-mwgallerydialog-heights-field-label": "ߖߌ߬ߦߊ߬ߓߍ ߟߐ߬ߜߊ߲", "visualeditor-mwgallerydialog-heights-input-placeholder": "ߓߐߛߎ߲ ߟߐ߬ߜߊ߲: $1 px", + "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "ߦߋߢߐ߲߯ߠߊߓߟߏߡߊ߬، ߟߊ߬ߝߏ߬ߟߊ߲߫ ߠߎ߫ ߕߴߊ߬ ߡߊ߬", "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "ߢߐ߲߯ߞߐߡߌߣߊ", "visualeditor-mwgallerydialog-mode-field-label": "ߟߊ߬ߓߊ߰ߙߊ߬ߟߌ ߞߍߢߊ", "visualeditor-mwgallerydialog-perrow-field-label": "ߖߌ߬ߦߊ߬ߓߍ ߟߎ߬ ߦߋ߫ ߞߍ߫ ߛߌ߬ߕߊߙߌ ߡߊ߬", @@ -245,6 +263,8 @@ "visualeditor-preference-tabs-prefer-ve": "ߞߊ߬ ߦߋߢߊ߫ ߡߊߦߟߍߡߊ߲ ߝߣߊ߫ ߘߌ߫ ߒ ߡߊ߬ ߣߴߏ߬ ߘߌ߫ ߓߍ߲߬", "visualeditor-preference-tabs-prefer-wt": "ߞߊ߬ ߛߎ߲ ߡߊߦߟߍߡߊ߲ ߝߣߊ߫ ߘߌ߫ ߒ ߡߊ߬", "visualeditor-preference-tabs-remember-last": "ߞߊ߬ ߒ ߦߟߌ ߓߌ߬ߟߊ߬ ߒ ߠߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߟߊ߲߫ ߞߘߐ ߟߊ߫", + "visualeditor-preference-collab-label": "ߓߊ߯ߙߊߢߐ߲߯ߦߊ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲", + "visualeditor-preference-collab-description": "ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ߫ ߜߘߍ ߟߎ߬ ߡߊߞߟߌ߫ ߕߍ߬ߘߍ ߟߴߌ ߟߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲߫ ߘߊߡߌ߬ߣߊ߬ߣߍ߲ ߘߐ߫ ߦߋߗߏ߯ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߘߐ߫.", "visualeditor-rebase-client-export": "ߟߊ߬ߝߏ߬ߦߌ߬ߟߌ", "visualeditor-rebase-client-export-start": "ߟߊ߬ߝߏ߬ߦߌ߬ߟߌ...", "visualeditor-rebase-client-import": "ߟߊ߬ߛߣߍ߬ߟߌ", @@ -252,7 +272,9 @@ "visualeditor-rebase-client-title-help": "ߌ ߘߌ߫ ߛߋ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߣߍ߲ ߦߋ߫ ߟߴߊ߬ ߟߊߞߎ߲߬ߘߎ ߢߍ߫.", "visualeditor-recreate": "ߞߐߜߍ ߓߘߊ߫ ߓߊ߲߫ ߖߏ߰ߛߌ߬ ߟߊ߫ ߞߊ߬ߦߴߌ ߞߊ߬ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߘߊߡߌߣߊ߬. \"$1\" ߕߐߘߐ߲߫ ߞߵߊ߬ ߛߌ߲ߘߴߌߞߐߕߎ߲߯.", "visualeditor-redirect-description": "ߟߊ߬ߞߎ߲߬ߛߌ߲߬ߠߌ߲ ߦߊ߲߬ $1", - "visualeditor-savedialog-identify-anon": "ߌ ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߐߜߍ ߣߌ߲߬ ߠߊߞߎ߲߬ߘߎ߫ ߞߵߌ ߕߏ߫ ߕߐ߯ߒߕߊ߲ߧߊ ߘߐ߫ ߟߋ߬ ߓߊ߬؟ ߌ ߟߊ߫ IP ߛߊ߲߬ߓߊ߬ߕߐ߮ ߘߌߣߊ߬ ߟߊߞߎ߲߬ߘߎ߫ ߞߐߜߍ ߣߌ߲߬ ߠߊ߫ ߘߐ߬ߝߐ ߟߊ߫.", + "visualeditor-savedialog-identify-anon": "ߌ ߜߊ߲߬ߞߎ߲߬ߣߍ߲߫ ߕߴߏ߬ ߞߐ߫. ߣߴߌ ߞߵߊ߬ ߘߊߓߊ߲߫، ߌ ߟߊ߫ IP ߛߊ߲߬ߓߊ߬ߕߐ߮ ߘߌ߫ ߟߊߡߙߊ߬ ߞߐߜߍ ߣߌ߲߬ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߘߐ߬ߝߐ ߟߊ߫.", + "visualeditor-savedialog-identify-temp": "ߌ ߦߋ߫ ߥߊ߯ߕߌ߫ ߟߕߊߡߌ߲߫ ߟߊߓߊ߯ߙߊ߫ ߕߐ߮ $1 ߟߋ߬ ߟߊߓߊ߯ߙߊ߫ ߞߊ߲߬ ߕߊ߲߬. ߣߴߌ ߞߵߊ߬ ߘߊߓߊ߲߫، ߌ ߟߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߘߌ߫ ߕߌ߬ߟߊ߬ ߟߊ߬ߓߊ߰ߙߊ߬ ߕߐ߮ ߏ߬ ߟߊ߫.", + "visualeditor-savedialog-identify-user": "ߐ߲߬ߤߐ߲߮߸ ߌ ߓߘߴߌ ߜߊ߲߬ߞߎ߲߫ [[$1|$1]] ߘߌ߫ ߛߌߣߍ߲߬. \nߣߴߌ ߞߵߊ߬ ߘߊߓߊ߲߫، ߌ ߟߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߘߌ߫ ߓߌ߬ߟߊ߬ ߖߊ߬ߕߋ߬ߘߊ ߏ߬ ߟߊ߫.", "visualeditor-savedialog-keyboard-shortcut-submit": "ߌ ߘߌ߫ ߛߋ߫ $1 ߛߐ߲߬ߞߌ߲߫ ߠߊ߫ ߞߵߌ ߟߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߠߊߞߎ߲߬ߘߎ߫", "visualeditor-savedialog-label-publish-short": "ߟߊ߬ߥߊ߲߬ߞߊ߬ߟߌ", "visualeditor-savedialog-label-publish-short-start": "ߟߊ߬ߥߊ߲߬ߞߊ߬ߟߌ...", diff --git a/i18n/ve-mw/nr.json b/i18n/ve-mw/nr.json new file mode 100644 index 0000000000..d952941a0c --- /dev/null +++ b/i18n/ve-mw/nr.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Phoebeplays49292" + ] + }, + "visualeditor-ca-editsource-section": "hlela umthombo" +} diff --git a/i18n/ve-mw/nup.json b/i18n/ve-mw/nup.json index b34b3d9d65..9ab0e439f7 100644 --- a/i18n/ve-mw/nup.json +++ b/i18n/ve-mw/nup.json @@ -1,7 +1,7 @@ { "@metadata": { "authors": [ - "Amire80", + "787IYO", "Misbahu umar", "Umar Ahmad2345" ] @@ -9,6 +9,6 @@ "visualeditor-ca-createlocaldescriptionsource": "La yeji gbere local danbo", "visualeditor-ca-createsource": "Tswa gbere", "visualeditor-ca-editsource": "Ye gbere jin", - "visualeditor-ca-editsource-section": "eba yiyejin", + "visualeditor-ca-editsource-section": "Eba Yiyejin", "visualeditor-descriptionpagelink": "Project:YiyejinCivisuals" } diff --git a/i18n/ve-mw/nyn.json b/i18n/ve-mw/nyn.json index 2bda32ef16..f6db5191fa 100644 --- a/i18n/ve-mw/nyn.json +++ b/i18n/ve-mw/nyn.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Kakonjo" ] }, diff --git a/i18n/ve-mw/nys.json b/i18n/ve-mw/nys.json index fa7b50f15e..6ce9f37934 100644 --- a/i18n/ve-mw/nys.json +++ b/i18n/ve-mw/nys.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Gnangarra" ] }, diff --git a/i18n/ve-mw/nzi.json b/i18n/ve-mw/nzi.json index 099c1e13eb..206b954e82 100644 --- a/i18n/ve-mw/nzi.json +++ b/i18n/ve-mw/nzi.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Francis Mozu", "Valentine Badu" ] diff --git a/i18n/ve-mw/oc.json b/i18n/ve-mw/oc.json index f2e45cb931..a9ba8f9040 100644 --- a/i18n/ve-mw/oc.json +++ b/i18n/ve-mw/oc.json @@ -22,6 +22,7 @@ "tooltip-ca-editsource": "Modificar lo còdi font d'aquela pagina", "tooltip-ca-editsource-local": "Editar lo còdi font de la pagina de descripcion locala", "tooltip-ca-createsource": "Crear lo còdi font d'aquela pagina", + "tooltip-ca-createsource-local": "Crear lo còdi font de la pagina de descripcion locala", "visualeditor-advancedsettings-tool": "Paramètres avançats", "visualeditor-annotations-default-start": "Debuta de la gama anotada", "visualeditor-autosave-modified-prompt-accept": "Tornar editar", @@ -35,7 +36,8 @@ "visualeditor-ca-createsource": "Crear lo còdi", "visualeditor-ca-editlocaldescriptionsource": "Modificar lo còdi de descripcion locala", "visualeditor-ca-editsource": "Modificar lo còdi", - "visualeditor-ca-editsource-section": "Modificar lo còdi", + "visualeditor-ca-editsource-section": "modificar lo còdi", + "visualeditor-ca-editsource-section-hint": "Editar lo còdi de la seccion seguenta: $1", "visualeditor-categories-tool": "Categorias", "visualeditor-changedesc-mwlanguagevariant": "Cambiament de varianta lingüistica", "visualeditor-desc": "Editor visual per MediaWiki", @@ -73,8 +75,10 @@ "visualeditor-dialog-media-upload": "Telecargar", "visualeditor-dialog-meta-advancedsettings-label": "Paramètres avançats", "visualeditor-dialog-meta-advancedsettings-section": "Paramètres avançats", + "visualeditor-dialog-meta-categories-addcategory-label": "Apondre una categoria a aquesta pagina", "visualeditor-dialog-meta-categories-category": "Categoria", "visualeditor-dialog-meta-categories-data-label": "Categorias", + "visualeditor-dialog-meta-categories-defaultsort-help": "Podètz modificar la manièra d'afichar aquesta pagina triada en categorias en definissent una nòva clau de classificacion. Aquò es sovent utilizat per far aparéisser las paginas de biografia ordenadas per nom de familha, mentre que dins lo títol lo prenom apareis d'en primièr.", "visualeditor-dialog-meta-categories-defaultsort-label": "Classar aquela pagina per manca coma", "visualeditor-dialog-meta-categories-hidden": "Aquesta categoria es marcada coma essent pas a afichar sus las paginas a las qualas es aponduda.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Categorias amagadas", @@ -102,12 +106,13 @@ "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Per defaut", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Non", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Òc", - "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Afichar un onglet sus aquesta pagina per apondre una seccion novèla", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Afichar un onglet sus aquesta pagina per apondre una seccion nòva", + "visualeditor-dialog-meta-settings-noeditsection-help": "Podètz evitar que los ligams d'edicion apareisson al costat de cada seccion dins de cases insolits ont aquò es apropriat.", "visualeditor-dialog-meta-settings-noeditsection-label": "Desactivar los ligams de modificacion prèp de cada títol sus aquesta pagina.", "visualeditor-dialog-meta-settings-nogallery-label": "Desactivar la galariá", "visualeditor-dialog-meta-settings-redirect-label": "Redirigir aquesta pagina cap a", "visualeditor-dialog-meta-settings-redirect-placeholder": "Pagina cibla per la redireccion", - "visualeditor-dialog-meta-settings-redirect-staticlabel": "Empachar aquesta redireccion d’èsser mesa a jorn quand la pagina cibla es desplaçada.", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Evitar aquesta redireccion d’èsser mesa a jorn quand la pagina cibla es desplaçada.", "visualeditor-dialog-meta-settings-section": "Paramètres de la pagina", "visualeditor-dialog-meta-settings-toc-default": "Se necessari", "visualeditor-dialog-meta-settings-toc-disable": "Pas jamai", @@ -117,25 +122,41 @@ "visualeditor-dialog-table-sortable": "Triable", "visualeditor-dialog-table-wikitable": "Amb estil (Wikitable)", "visualeditor-dialog-template-title": "Modèl", + "visualeditor-dialog-transclusion-add-wikitext": "Ajustar lo còdi wiki", + "visualeditor-dialog-transclusion-add-param-help": "Se son coneguts, entrar los noms dels [//www.mediawiki.org/wiki/special:MyLanguage/Help:VisualEditor/Usar_guida#Adding_undocumented_parameters paramètres non documentats]. Notatz que sols los paramètres coneguts pel modèl auràn un efièit. Podètz trobar d'informacions suls paramètres existents sus la [[$1|pagina del modèl]].", "visualeditor-dialog-transclusion-add-template": "Apondre lo modèl", + "visualeditor-dialog-transclusion-add-undocumented-param": "Ajustar un paramètre non documentat.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Volètz barrar l'editor de modèls? Perdretz totes los cambiaments. Aquesta accion es irreversibla.", "visualeditor-dialog-transclusion-collapse-options": "Amagar las opcions", + "visualeditor-dialog-transclusion-confirmation-discard": "Abandonar la modificacion", "visualeditor-dialog-transclusion-confirmation-reject": "Contunhar la modificacion", "visualeditor-dialog-transclusion-contextitem-description": "Generat a partir de : $1", "visualeditor-dialog-transclusion-expand-options": "Afichar las opcions", "visualeditor-dialog-transclusion-filter-hide-unused": "Amagar los inutilizats", "visualeditor-dialog-transclusion-filter-no-match": "Recèrcas infructuosas", "visualeditor-dialog-transclusion-filter-placeholder": "Trobar lo camp", + "visualeditor-dialog-transclusion-filter-show-all": "Mostrar totes", + "visualeditor-dialog-transclusion-help-title": "Ajuda d'edicion de modèls", + "visualeditor-dialog-transclusion-help-message": "Los modèls donan una forma al contengut. A esquèrra, l'editor mòstra quinas opcions ofrisson los modèls e a dreita se pòt afichar las valors.", + "visualeditor-dialog-transclusion-help-page-help": "[//https://www.mediawiki.org/wiki/Help:VisualEditor/User_guide/ca#Editar_plantilles Ajuda d'edicion de modèls]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//https://www.mediawiki.org/wiki/VisualEditor/Portal/Keyboard_shortcuts/ca#Template_editor_dialog_shortcuts_and_keyboard_interactions Acòrchis de clavièr]", "visualeditor-dialog-transclusion-deprecated-parameter": "Camp obsolèt", "visualeditor-dialog-transclusion-deprecated-parameter-description": "Lo camp es obsolèt. $1", "visualeditor-dialog-transclusion-loading": "Cargament...", + "visualeditor-dialog-transclusion-multipart-message": "Sètz vam de modificar un modèl e al mens una de las partidas del [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content contengut associat] (còdi wiki o modèls suplementaris).", "visualeditor-dialog-transclusion-no-template-data-description": "Aquel modèl non possedís de [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData] e sos paramètres son estats generats [[mw:Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters|automaticament]]. Aital, i pòt aver una descripcion dins la pagina del modèl.", "visualeditor-dialog-transclusion-no-template-description": "Lo modèl «$1» non ten encara de descripcion, pasmens i pòt aver d'informacions complementàrias sus la [[$2|pagina del modèl]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Aquel modèl non possedís cap de paramètres documentats e pòt èsser utilizat sens.", "visualeditor-dialog-transclusion-param-default": "Per defaut : $1", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Trobatz un modèl", "visualeditor-dialog-transclusion-required-parameter": "Camp obligatòri", "visualeditor-dialog-transclusion-required-parameter-description": "Lo camp es obligatòri.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Retorn", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Contunhar malgrat tot", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Camp obligatòri mancant|Camps obligatòris mancants}}", + "visualeditor-dialog-transclusion-see-template": "Los modèls son generats per l'utilizator e pòdor mancar de descripcions completas. I poiriá aver d'informacions suplementàrias sus aquesta [[ $2 |pagina del modèl]].", + "visualeditor-dialog-transclusion-title-insert-template": "Inserir un modèl", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Contengut del modèl", "visualeditor-dialog-transclusion-template-search": "Recèrca de modèl", "visualeditor-dialog-transclusion-template-search-help": "Trobatz lo modèl que desiratz inserir en o recercant amb un mot-clau que l'identifica. Amb l'editor visual, la recèrca es mai susceptibla d'èsser en mesura d'identificar los modèls comportant una descripcion.", "visualeditor-dialogbutton-media-tooltip": "Supòrt", @@ -164,6 +185,7 @@ "visualeditor-linkinspector-educationpopup-text": "Ligar los mots importants a d’autres articles del wiki o quitament a d’autres sites web. Aquò ajudarà los lectors a comprene lo contèxte.", "visualeditor-linkinspector-educationpopup-title": "Ligams", "visualeditor-linkinspector-illegal-title": "Títol de pagina incorrècte", + "visualeditor-linkinspector-invalid-external": "Inserir una URL complèta, coma ara https://example.org", "visualeditor-linknodeinspector-add-label": "Apondre un libellat", "visualeditor-linknodeinspector-title": "Ligam simple", "visualeditor-magiclinknodeinspector-convert-link": "Convertir en ligam simple", @@ -182,13 +204,23 @@ "visualeditor-mweditmodeve-showagain": "Afichar pas mai aqueste messatge", "visualeditor-mweditmodewt-popup-body": "Podètz tornar a l’edicion de la font a tot moment en clicant sus aquesta icòna.", "visualeditor-mweditmodewt-popup-title": "Sètz passat a l'edicion visuala", + "visualeditor-mwgallerydialog-caption-field-label": "Títol de la galariá", "visualeditor-mwgallerydialog-card-images": "Imatges", "visualeditor-mwgallerydialog-card-options": "Opcions", + "visualeditor-mwgallerydialog-classes-field-label": "Classas CSS", + "visualeditor-mwgallerydialog-empty-gallery-message": "La galariá es vuèja.", + "visualeditor-mwgallerydialog-heights-field-label": "Auçada de l'imatge", + "visualeditor-mwgallerydialog-mode-field-label": "Mòde d'afichatge", + "visualeditor-mwgallerydialog-perrow-field-label": "Imatges per linha", "visualeditor-mwgallerydialog-remove-button-label": "Suprimir l'imatge", "visualeditor-mwgallerydialog-search-button-label": "Apondre un imatge novèl", + "visualeditor-mwgallerydialog-show-filename-field-label": "Mostrar los noms de fichièr", "visualeditor-mwgallerydialog-styles-field-label": "Estils CSS", "visualeditor-mwgallerydialog-title": "Galariá", + "visualeditor-mwgallerydialog-widths-field-label": "Largor de l'imatge", "visualeditor-mwsignature-tool": "Vòstra signatura", + "visualeditor-preference-visualeditor": "Activar l'editor visual", + "visualeditor-preference-newwikitexteditor-enable": "Utilizar lo mòde wikitext dins l'editor visual, en plaça d'un editor de wikitext diferent", "visualeditor-preference-tabs": "Onglets de modificacion:", "visualeditor-preference-tabs-multi-tab": "Afichar los dos onglets de modificacion", "visualeditor-preference-tabs-prefer-wt": "Totjorn utilizar l’editor en mòde font", @@ -210,7 +242,7 @@ "visualeditor-savedialog-title-preview": "Revision de vòstras modificacions", "visualeditor-savedialog-title-review": "Repassar vòstras modificacions", "visualeditor-savedialog-title-save": "Enregistrar vòstras modificacions", - "visualeditor-section-body-placeholder": "Seccion novèla", + "visualeditor-section-body-placeholder": "Seccion nòva", "visualeditor-section-title-placeholder": "Subjècte", "visualeditor-settings-tool": "Paramètres de la pagina", "visualeditor-special-characters-group-other": "Utilizat sovent", diff --git a/i18n/ve-mw/pa.json b/i18n/ve-mw/pa.json index 16e2ad40d3..7b4b2f5ac8 100644 --- a/i18n/ve-mw/pa.json +++ b/i18n/ve-mw/pa.json @@ -14,59 +14,71 @@ "Tow" ] }, + "collabpad-doctitle": "ਸਹਿਯੋਗਪੈਡ: $1", + "collabpad-import-subtitle": "$1 ਤੋਂ ਦਰਾਮਦ ਕੀਤਾ ਗਿਆ", + "collabpad": "ਸਹਿਯੋਗਪੈਡ", "tooltip-ca-ve-edit": "ਇਹ ਸਫ਼ਾ ਸੋਧੋ", + "tooltip-ca-ve-edit-local": "ਸਥਾਨਕ ਵੇਰਵਾ ਸਫ਼ੇ ਨੂੰ ਸੋਧੋ", "tooltip-ca-ve-create": "ਇਹ ਸਫ਼ਾ ਬਣਾਓ", "tooltip-ca-ve-create-local": "ਸਥਾਨਕ ਵੇਰਵਾ ਸਫ਼ਾ ਬਣਾਓ", "tooltip-ca-editsource": "ਇਸ ਸਫ਼ੇ ਦੇ ਸਰੋਤ ਦਾ ਕੋਡ ਸੋਧੋ", "tooltip-ca-editsource-local": "ਸਥਾਨਕ ਵੇਰਵਾ ਸਫ਼ੇ ਦੇ ਸਰੋਤ ਕੋਡ ਨੂੰ ਸੋਧੋ", "tooltip-ca-createsource": "ਇਸ ਸਫ਼ੇ ਦੇ ਸਰੋਤ ਦਾ ਕੋਡ ਬਣਾਉ", - "visualeditor-advancedsettings-tool": "ਉੱਨਤ ਸੈਟਿੰਗਾਂ", + "tooltip-ca-createsource-local": "ਸਥਾਨਕ ਵੇਰਵਾ ਸਫ਼ੇ ਦਾ ਸਰੋਤ ਕੋਡ ਬਣਾਓ", + "visualeditor-advancedsettings-tool": "ਵਧੇਰੇ ਤਰਜੀਹਾਂ", "visualeditor-autosave-modified-prompt-accept": "ਉਥੋਂ ਹੀ ਸੋਧਣਾ ਜਾਰੀ ਰੱਖੋ", "visualeditor-autosave-modified-prompt-reject": "ਨਵਾਂ ਸੋਧ ਸ਼ੁਰੂ ਕਰੋ", + "visualeditor-autosave-modified-prompt-title": "ਕੀ {{GENDER:|ਤੁਹਾਡੇ}} ਸੋਧ ਨੂੰ ਮੁੜ ਸ਼ੁਰੂ ਕਰਨਾ ਐ?", + "visualeditor-autosave-not-recovered-text": "ਤੁਹਾਡੀਆਂ ਨਾ ਸੰਭਾਲੀਆਂ ਗਈਆਂ ਤਬਦੀਲੀਆਂ ਨੂੰ ਮੁੜ ਪ੍ਰਾਪਤ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਿਆ।", "visualeditor-autosave-recovered-text": "ਤੁਹਾਡੀਆਂ ਅਣਰੱਖਿਅਤ ਤਬਦੀਲੀਆਂ ਆਪਣੇ ਆਪ ਹੀ ਮੁੜ ਪ੍ਰਾਪਤ ਹੋ ਗਈਆਂ ਹਨ।", "visualeditor-autosave-recovered-title": "ਤਬਦੀਲੀਆਂ ਮੁੜ ਪ੍ਰਾਪਤ ਕੀਤੀਆਂ", "visualeditor-backbutton-tooltip": "ਪਿੱਛੇ ਜਾਓ", "visualeditor-ca-createlocaldescriptionsource": "ਸਥਾਨਕ ਵੇਰਵੇ ਦਾ ਸਰੋਤ ਜੋੜੋ", "visualeditor-ca-createsource": "ਸਰੋਤ ਬਣਾਉ", + "visualeditor-ca-editlocaldescriptionsource": "ਸਥਾਨਕ ਵੇਰਵਾ ਸਰੋਤ ਸੋਧੋ", "visualeditor-ca-editsource": "ਸਰੋਤ ਸੋਧੋ", "visualeditor-ca-editsource-section": "ਸਰੋਤ ਸੋਧੋ", + "visualeditor-ca-editsource-section-hint": "ਭਾਗ ਦੇ ਸਰੋਤ ਕੋਡ ਨੂੰ ਸੋਧੋ: $1", "visualeditor-categories-tool": "ਸ਼੍ਰੇਣੀਆਂ", "visualeditor-changedesc-mwredirect": "ਵਾਪਸੀ ਟੀਚਾ $1 ਤੋਂ $2 ਵਿੱਚ ਬਦਲਿਆ ਗਿਆ", + "visualeditor-changedesc-mwtransclusion": "ਫਰਮੇ ਮਾਪਦੰਡ ਬਦਲੇ ਗਏ", "visualeditor-desc": "ਮੀਡੀਆਵਿਕੀ ਲਈ ਵਿਜ਼ੁਅਲ ਐਡੀਟਰ", "visualeditor-descriptionpagelink": "Project:ਵਿਜ਼ੁਅਲ ਐਡੀਟਰ", + "visualeditor-dialog-extension-abandonedit": "ਕੀ ਤੁਸੀਂ ਯਕੀਨੀ ਤੌਰ 'ਤੇ ਆਪਣੀਆਂ ਤਬਦੀਲੀਆਂ ਨੂੰ ਲਾਗੂ ਕੀਤੇ ਬਿਨਾਂ ਇਸ ਸੰਵਾਦ ਨੂੰ ਬੰਦ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?", + "visualeditor-dialog-media-alttext-checkbox": "ਬਦਲਵੀਂ ਲਿਖਤ ਦੇ ਰੂਪ ਵਿੱਚ ਸੁਰਖੀ ਦੀ ਵਰਤੋਂ ਕਰੋ", "visualeditor-dialog-media-alttext-section": "ਬਦਲਵੀਂ ਲਿਖਤ", - "visualeditor-dialog-media-alttext-section-help": "ਤੁਸੀਂ ਇਸਦੀ ਵਰਤੋਂ ਲਿਖਤ ਦਾ ਵਰਣਨ ਕਰਨ ਲਈ ਕਰ ਸਕਦੇ ਹੋ ਜੋ ਅਜਿਹੇ ਲੋਕਾਂ ਲਈ ਹੈ ਜੋ ਇਸ ਆਈਟਮ ਨੂੰ ਨਹੀਂ ਦੇਖ ਸਕਦੇ। ਇਹ ਵਰਣਨ ਵਧੀਆ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਤਾਂ ਕਿ ਇਸ ਨਾਲ ਇਸ ਮੀਡੀਆ ਆਈਟਮ ਦਾ ਮਕਸਦ ਅਤੇ ਜਾਣਕਾਰੀ ਸਮਝ ਵਿੱਚ ਆਵੇ। ਇਹ ਅੰਨ੍ਹੇ ਵਰਤੋਂਕਾਰਾਂ ਅਤੇ ਉਹਨਾਂ ਲੋਕਾਂ ਲਈ ਜ਼ਰੂਰੀ ਹੈ ਜੋ ਸਕ੍ਰੀਨ-ਪੜ੍ਹਨ ਵਾਲੇ ਸਾਫਟਵੇਅਰ ਅਤੇ ਸਿਰਫ਼-ਲਿਖਤ ਵਾਲੇ ਬਰਾਊਜ਼ਰ ਵਰਤਦੇ ਹਨ।", + "visualeditor-dialog-media-alttext-section-help": "ਤੁਸੀਂ ਇਸਦੀ ਵਰਤੋਂ ਉਹਨਾਂ ਲੋਕਾਂ ਲਈ ਇੱਕ ਲਿਖਤ ਦਾ ਵੇਰਵਾ ਦੇਣ ਲਈ ਕਰ ਸਕਦੇ ਹੋ ਜੋ ਇਸ ਮਜ਼ਮੂਨ ਨੂੰ ਨਹੀਂ ਦੇਖ ਸਕਦੇ। ਮੀਡੀਆ ਮਜ਼ਮੂਨ ਵੱਲੋਂ ਦਿੱਤੀ ਗਈ ਜਾਣਕਾਰੀ ਅਤੇ ਉਦੇਸ਼ ਨੂੰ ਸਮਝਣ ਲਈ ਇਹ ਵੇਰਵਾ ਕਾਫ਼ੀ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ। ਇਹ ਅੰਨ੍ਹੇ ਵਰਤੋਂਕਾਰਾਂ ਅਤੇ ਅਜਿਹੇ ਲੋਕਾਂ ਲਈ ਜ਼ਰੂਰੀ ਹੈ ਜੋ ਸਕ੍ਰੀਨ-ਪੜ੍ਹਨ ਵਾਲੇ ਸਾਫਟਵੇਅਰ ਜਾਂ ਸਿਰਫ਼-ਲਿਖਤ ਵਾਲੇ ਬਰਾਊਜ਼ਰ ਵਰਤਦੇ ਹਨ।", "visualeditor-dialog-media-change-image": "ਤਸਵੀਰ ਬਦਲੋ", "visualeditor-dialog-media-choose-image": "ਇਹ ਤਸਵੀਰ ਵਰਤੋ", "visualeditor-dialog-media-content-description-link": "(ਵੇਰਵਾ ਸਫ਼ਾ)", "visualeditor-dialog-media-content-filename": "ਫ਼ਾਈਲ ਦਾ ਨਾਂ", "visualeditor-dialog-media-content-section": "ਸਿਰਲੇਖ", "visualeditor-dialog-media-goback": "ਪਿਛਾਂਹ", - "visualeditor-dialog-media-info-artist": "$1 ਦੁਆਰਾ ਅਪਲੋਡ ਕੀਤੀ ਗਈ", + "visualeditor-dialog-media-info-artist": "$1 ਵੱਲੋਂ ਚੜ੍ਹਾਈ ਗਈ", "visualeditor-dialog-media-info-audiofile": "ਅਵਾਜ਼ੀ ਫ਼ਾਈਲ", "visualeditor-dialog-media-info-created": "ਬਣਾਇਆ ਗਿਆ: $1", - "visualeditor-dialog-media-info-meta-artist": "ਲੇਖਕ: $1", + "visualeditor-dialog-media-info-meta-artist": "ਲਿਖਾਰੀ: $1", "visualeditor-dialog-media-info-moreinfo": "ਹੋਰ ਜਾਣਕਾਰੀ", "visualeditor-dialog-media-info-readmore": "ਹੋਰ ਪੜ੍ਹੋ", "visualeditor-dialog-media-info-uploaded": "ਅੱਪਲੋਡ ਕੀਤੀ ਗਈ: $1", - "visualeditor-dialog-media-page-advanced": "ਉੱਨਤ", + "visualeditor-dialog-media-page-advanced": "ਵਧੇਰੇ-ਵੇਰਵੇ", "visualeditor-dialog-media-page-general": "ਆਮ", "visualeditor-dialog-media-position-checkbox": "ਇਸ ਆਈਟਮ ਦੇ ਦੁਆਲੇ ਲਿਖਤ ਲਪੇਟੋ", "visualeditor-dialog-media-position-section": "ਸਥਿਤੀ", "visualeditor-dialog-media-save": "ਸਾਂਭੋ", "visualeditor-dialog-media-search-tab-search": "ਖੋਜ", - "visualeditor-dialog-media-search-tab-upload": "ਅਪਲੋਡ", + "visualeditor-dialog-media-search-tab-upload": "ਚੜ੍ਹਾਉ", "visualeditor-dialog-media-size-section": "ਤਸਵੀਰ ਦਾ ਅਕਾਰ", - "visualeditor-dialog-media-title": "ਮੀਡੀਆ ਸੈਟਿੰਗਾਂ", + "visualeditor-dialog-media-title": "ਮੀਡੀਆ ਤਰਜੀਹਾਂ", "visualeditor-dialog-media-type-border": "ਹੱਦ", "visualeditor-dialog-media-type-frame": "ਚੌਕਾਠ", "visualeditor-dialog-media-type-frameless": "ਚੌਕਾਠ-ਰਹਿਤ", "visualeditor-dialog-media-type-none": "ਮੁਢਲੀ", "visualeditor-dialog-media-type-section": "ਤਸਵੀਰ ਕਿਸਮ", "visualeditor-dialog-media-type-thumb": "ਛੋਟਾ ਆਕਾਰ", - "visualeditor-dialog-media-upload": "ਅਪਲੋਡ", - "visualeditor-dialog-meta-advancedsettings-label": "ਵਧੇਰੇ ਸੈਟਿੰਗ", - "visualeditor-dialog-meta-advancedsettings-section": "ਵਧੇਰੇ ਸੈਟਿੰਗ", + "visualeditor-dialog-media-upload": "ਚੜ੍ਹਾਉ", + "visualeditor-dialog-meta-advancedsettings-label": "ਵਧੇਰੇ ਤਰਜੀਹਾਂ", + "visualeditor-dialog-meta-advancedsettings-section": "ਵਧੇਰੇ ਤਰਜੀਹਾਂ", "visualeditor-dialog-meta-categories-addcategory-label": "ਇਸ ਸਫ਼ੇ ਤੇ ਇੱਕ ਸ਼੍ਰੇਣੀ ਸ਼ਾਮਲ ਕਰੋ", "visualeditor-dialog-meta-categories-category": "ਸ਼੍ਰੇਣੀ", "visualeditor-dialog-meta-categories-data-label": "ਸ਼੍ਰੇਣੀਆਂ", @@ -88,43 +100,66 @@ "visualeditor-dialog-meta-settings-index-default": "ਮੂਲ", "visualeditor-dialog-meta-settings-index-disable": "ਨਹੀਂ", "visualeditor-dialog-meta-settings-index-force": "ਹਾਂ", - "visualeditor-dialog-meta-settings-label": "ਸਫ਼ੇ ਦੀਆਂ ਸੈਟਿੰਗਾਂ", + "visualeditor-dialog-meta-settings-label": "ਸਫ਼ੇ ਦੀਆਂ ਤਰਜੀਹਾਂ", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "ਮੂਲ", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "ਨਹੀਂ", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "ਹਾਂ", + "visualeditor-dialog-meta-settings-nogallery-label": "ਚਿੱਤਰਸ਼ਾਲਾ ਨੂੰ ਅਸਮਰੱਥ ਕਰੋ", + "visualeditor-dialog-meta-settings-notitleconvert-help": "ਤੁਸੀਂ ਇਸ ਸਫ਼ੇ ਦੇ ਸਿਰਲੇਖ ਨੂੰ ਆਪਣੇ ਆਪ ਹੀ ਹੋਰ ਲਿਪੀ ਵਿੱਚ ਤਬਦੀਲ ਹੋਣ ਤੋਂ ਰੋਕ ਸਕਦੇ ਹੋ।", + "visualeditor-dialog-meta-settings-notitleconvert-label": "ਸਿਰਲੇਖ ਨੂੰ ਭਾਸ਼ਾ ਦੇ ਰੂਪਾਂ ਵਿੱਚਕਾਰ ਨਾ ਬਦਲੋ", "visualeditor-dialog-meta-settings-redirect-label": "ਇਸ ਸਫ਼ੇ ਨੂੰ ਉੱਤੇ ਵਾਪਸ ਕਰੋ", "visualeditor-dialog-meta-settings-redirect-placeholder": "ਵਾਪਸੀ ਟੀਚੇ ਲਈ ਸਫ਼ੇ", - "visualeditor-dialog-meta-settings-section": "ਸਫ਼ੇ ਦੀਆਂ ਸੈਟਿੰਗਾਂ", + "visualeditor-dialog-meta-settings-section": "ਸਫ਼ੇ ਦੀਆਂ ਤਰਜੀਹਾਂ", + "visualeditor-dialog-meta-settings-toc-default": "ਜੇ ਲੋੜ ਪਵੇ ਤਾਂ", "visualeditor-dialog-meta-settings-toc-disable": "ਕਦੇ ਨਹੀਂ", "visualeditor-dialog-meta-settings-toc-force": "ਹਮੇਸ਼ਾਂ", "visualeditor-dialog-meta-settings-toc-label": "ਸਮੱਗਰੀ ਦੀ ਸਾਰਣੀ ਦਿਖਾਓ", "visualeditor-dialog-meta-templatesused-noresults": "ਕੋਈ ਫਰਮੇ ਨਹੀਂ ਮਿਲੇ।", "visualeditor-dialog-meta-title": "ਚੋਣਾਂ", + "visualeditor-dialog-table-collapsed": "ਸ਼ੁਰੂ ਵਿੱਚ ਢਾਹਿਆ", + "visualeditor-dialog-table-collapsible": "ਢਾਉਨ-ਯੋਗ", + "visualeditor-dialog-table-sortable": "ਛਾਂਟਣਯੋਗ", "visualeditor-dialog-template-title": "ਫਰਮਾ", "visualeditor-dialog-transclusion-action-save": "ਸਾਂਭੋ", "visualeditor-dialog-transclusion-template-title-nonexistent": "ਇਹ ਫਰਮਾ ਮੌਜੂਦ ਨਹੀਂ ਹੈ।", "visualeditor-dialog-transclusion-template-widget-aria": "ਫਰਮੇ ਨੂੰ ਚੁਣਨ ਲਈ ਸਪੇਸ ਦਬਾਓ।", "visualeditor-dialog-transclusion-add-wikitext": "ਵਿਕੀਲਿਖਤ ਸ਼ਾਮਲ ਕਰੋ", + "visualeditor-dialog-transclusion-add-param-placeholder": "ਮਾਪਦੰਡ ਦਾ ਨਾਂ", "visualeditor-dialog-transclusion-add-param-save": "ਜੋੜੋ", "visualeditor-dialog-transclusion-add-template": "ਫਰਮਾ ਜੋੜੋ", "visualeditor-dialog-transclusion-add-template-button": "ਫਰਮਾ ਜੋੜੋ", "visualeditor-dialog-transclusion-add-template-save": "ਜੋੜੋ", + "visualeditor-dialog-transclusion-add-undocumented-param": "ਗੈਰ-ਦਸਤਾਵੇਜ਼ੀ ਮਾਪਦੰਡ ਸ਼ਾਮਲ ਕਰੋ", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "ਕੀ ਖੋਜ ਕਰਨ ਲਈ ਵਾਪਸ ਜਾਣਾ ਚਾਹੁੰਦੇ ਹੋ? ਤੁਹਾਡੀਆਂ ਤਬਦੀਲੀਆਂ ਖਤਮ ਹੋ ਜਾਣਗੀਆਂ ਅਤੇ ਇਸ ਨੂੰ ਵਾਪਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "ਕੀ ਫਰਮਾ ਸੋਧਕ ਬੰਦ ਕਰਨਾ ਐ? ਤੁਹਾਡੀਆਂ ਤਬਦੀਲੀਆਂ ਖਤਮ ਹੋ ਜਾਣਗੀਆਂ ਅਤੇ ਇਸ ਨੂੰ ਵਾਪਸ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ।", + "visualeditor-dialog-transclusion-collapse-options": "ਚੋਣਾਂ ਲੁਕਾਓ", + "visualeditor-dialog-transclusion-confirmation-discard": "ਸੋਧਾਂ ਨੂੰ ਰੱਦ ਕਰੋ", "visualeditor-dialog-transclusion-confirmation-reject": "ਸੋਧਣਾ ਜਾਰੀ ਰੱਖੋ", "visualeditor-dialog-transclusion-contextitem-description": "ਇਸ ਤੋਂ ਤਿਆਰ ਕੀਤਾ ਗਿਆ: $1", "visualeditor-dialog-transclusion-contextitem-loading": "ਲੱਦ ਰਿਹਾ ਹੈ...", "visualeditor-dialog-transclusion-expand-options": "ਵਿਕਲਪ ਦਿਖਾਓ", "visualeditor-dialog-transclusion-filter-hide-unused": "ਨਾ ਵਰਤੇ ਲੁਕਾਓ", "visualeditor-dialog-transclusion-filter-no-match": "ਕੋਈ ਮੇਲ ਨਹੀਂ ਮਿਲਿਆ", + "visualeditor-dialog-transclusion-filter-placeholder": "ਖੇਤਰ ਲੱਭੋ", "visualeditor-dialog-transclusion-filter-show-all": "ਸਾਰੇ ਦਿਖਾਓ", "visualeditor-dialog-transclusion-filter-title": "$1 ਲਈ ਪੈਰਾਮੀਟਰ ਖੋਜ", + "visualeditor-dialog-transclusion-help-title": "ਫ਼ਰਮਾ ਸੋਧ ਸਹਾਇਤਾ", "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates ਫਰਮਿਆਂ ਨੂੰ ਸੰਪਾਦਿਤ ਕਰਨ ਲਈ ਮਦਦ]", "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions ਕੀਬੋਰਡ ਸ਼ਾਰਟਕੱਟ]", + "visualeditor-dialog-transclusion-deprecated-parameter": "ਨਾਪਸੰਦ ਕੀਤਾ ਖੇਤਰ", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "ਖੇਤਰ ਨਾਪਸੰਦ ਕੀਤਾ ਗਿਆ ਐ। $1", "visualeditor-dialog-transclusion-loading": "ਲੱਦ ਰਿਹਾ ਹੈ...", "visualeditor-dialog-transclusion-param-default": "ਪੂਰਵ-ਨਿਰਧਾਰਤ: $1", "visualeditor-dialog-transclusion-param-example-long": "ਉਦਾਹਰਨ: $1", + "visualeditor-dialog-transclusion-param-selection-aria-label": "$1 ਵਿੱਚ ਮਾਪਦੰਡ", + "visualeditor-dialog-transclusion-param-undocumented": "(ਗੈਰ-ਦਸਤਾਵੇਜ਼ੀ ਮਾਪਦੰਡ)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "ਫਰਮਾ ਲੱਭੋ", - "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "ਪਿੱਛੇ ਜਾਉ", + "visualeditor-dialog-transclusion-required-parameter": "ਲੋੜੀਂਦਾ ਖੇਤਰ", + "visualeditor-dialog-transclusion-required-parameter-description": "ਖੇਤਰ ਲੋੜੀਂਦਾ ਐ।", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "ਪਿੱਛੇ ਜਾਓ", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "ਜਿਵੇਂ-ਕਿਵੇਂ ਜਾਰੀ ਰੱਖੋ", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "ਲੋੜੀਂਦਾ {{PLURAL:$1|ਖੇਤਰ}} ਗੁਆਚਿਆ ਐ (ਗੁਆਚੇ ਹਨ)।", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "ਕੀ ਤੁਸੀਂ ਯਕੀਨੀ ਤੌਰ 'ਤੇ $1 {{PLURAL:$2|ਖੇਤਰ|ਖੇਤਰਾਂ}} ਨੂੰ ਭਰੇ ਬਿਨਾਂ ਜਾਰੀ ਰੱਖਣਾ ਚਾਹੁੰਦੇ ਹੋ?", "visualeditor-dialog-transclusion-title-insert-template": "ਇੱਕ ਫਰਮਾ ਪਾਓ", "visualeditor-dialog-transclusion-title-insert-known-template": "ਸ਼ਾਮਲ ਕਰੋ: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "ਸੋਧੋ: $1", @@ -133,8 +168,8 @@ "visualeditor-dialog-transclusion-wikitext": "ਵਿਕੀਲਿਖਤ", "visualeditor-dialogbutton-media-tooltip": "ਚਿੱਤਰ ਅਤੇ ਮੀਡੀਆ", "visualeditor-dialogbutton-template-tooltip": "ਫਰਮਾ", - "visualeditor-editingtabdialog-body": "{{SITENAME}} ਨੂੰ ਹੁਣ ਯਾਦ ਹੈ ਕਿ ਤੁਸੀਂ ਕਿਸ ਸੰਪਾਦਕ ਨੂੰ ਤਰਜੀਹ ਦਿੰਦੇ ਹੋ। ਤੁਸੀਂ ਸੰਪਾਦਨ ਕਰਨ ਦੇ ਢੰਗ ਨੂੰ ਬਦਲ ਸਕਦੇ ਹੋ, ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਆਪਣੀ ਤਰਜੀਹ ਬਦਲ ਸਕਦੇ ਹੋ।", - "visualeditor-editingtabdialog-ok": "ਮੇਰੀ ਆਪਣੀ ਪਿਛਲੀ ਸੋਧ ਵਿੱਚ ਵਰਤੇ ਸੰਪਾਦਕ ਦੀ ਵਰਤੋਂ ਕਰੋ", + "visualeditor-editingtabdialog-body": "{{SITENAME}} ਹੁਣ ਇਹ ਯਾਦ ਰੱਖੇਗਾ ਕਿ ਤੁਸੀਂ ਕਿਹੜਾ ਸੋਧਕ ਵਰਤਣਾ ਪਸੰਦ ਕਰਦੇ ਹੋ। ਤੁਸੀਂ ਸੋਧ ਕਰਦੇ ਸਮੇਂ ਆਪਣਾ ਤਰੀਕਾ ਬਦਲ ਸਕਦੇ ਹੋ ਅਤੇ ਬਾਅਦ ਵਿੱਚ ਆਪਣੀ ਪਸੰਦ ਵਿੱਚ ਫੇਰ-ਬਦਲ ਵੀ ਕਰ ਸਕਦੇ ਹੋ।", + "visualeditor-editingtabdialog-ok": "ਮੇਰੀ ਪਿਛਲੀ ਸੋਧ ਵਿੱਚ ਵਰਤੇ ਸੋਧਕ ਦੀ ਵਰਤੋਂ ਕਰੋ", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|ਸੁਨੇਹਾ|ਸੁਨੇਹੇ}}", "visualeditor-editnotices-tooltip": "ਸੁਨੇਹੇ ਸੋਧੋ", "visualeditor-editsummary": "ਦੱਸੋ ਕਿ ਤੁਸੀਂ ਕੀ ਬਦਲਿਆ ਹੈ", @@ -159,16 +194,26 @@ "visualeditor-magiclinknodeinspector-title-isbn": "ਆਈ.ਐੱਸ.ਬੀ.ਐੱਨ. ਕੜੀ", "visualeditor-magiclinknodeinspector-title-pmid": "ਪੀ.ਐੱਮ.ਆਈ.ਡੀ ਕੜੀ", "visualeditor-magiclinknodeinspector-title-rfc": "ਆਰ.ਐੱਫ.ਸੀ ਕੜੀ", + "visualeditor-media-title-image": "ਤਸਵੀਰ", + "visualeditor-media-title-video": "ਵੀਡੀਓ", "visualeditor-meta-tool": "ਚੋਣਾਂ", + "visualeditor-mweditmode-tooltip": "ਸੋਧਕ ਬਦਲੋ", + "visualeditor-mweditmodeve-tool-current": "ਦਰਸ਼ਨੀ ਸੋਧਾਂ", + "visualeditor-mwgallerydialog-caption-field-label": "ਚਿੱਤਰਸ਼ਾਲਾ ਸੁਰਖੀ", "visualeditor-mwgallerydialog-card-images": "ਤਸਵੀਰਾਂ", "visualeditor-mwgallerydialog-card-options": "ਚੋਣਾਂ", + "visualeditor-mwgallerydialog-empty-gallery-message": "ਚਿੱਤਰਸ਼ਾਲਾ ਖਾਲੀ ਐ।", "visualeditor-mwgallerydialog-heights-field-label": "ਤਸਵੀਰ ਦੀ ਲੰਬਾਈ", "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "ਪਾਰੰਪਰਕ", "visualeditor-mwgallerydialog-remove-button-label": "ਤਸਵੀਰ ਹਟਾਓ", "visualeditor-mwgallerydialog-search-button-label": "ਨਵੀੰ ਤਸਵੀਰ ਜੋੜੋ", - "visualeditor-mwgallerydialog-title": "ਗੈਲਰੀ", + "visualeditor-mwgallerydialog-title": "ਚਿੱਤਰਸ਼ਾਲਾ", "visualeditor-mwgallerydialog-widths-field-label": "ਤਸਵੀਰ ਦੀ ਚੌੜਾਈ", "visualeditor-mwsignature-tool": "ਤੁਹਾਡੇ ਦਸਤਖਤ", + "visualeditor-rebase-client-export": "ਬਰਾਮਦ", + "visualeditor-rebase-client-export-start": "ਬਰਾਮਦ ...", + "visualeditor-rebase-client-import": "ਦਰਾਮਦ", + "visualeditor-rebase-client-import-name": "ਸਫ਼ੇ ਦਾ ਸਿਰਲੇਖ", "visualeditor-redirect-description": "$1 ਵੱਲ ਮੋੜੋ", "visualeditor-savedialog-label-publish-short": "ਸਾਂਭੋ", "visualeditor-savedialog-label-publish-short-start": "ਛਾਪੋ", @@ -176,7 +221,7 @@ "visualeditor-savedialog-label-resume-editing": "ਸੋਧਣਾ ਜਾਰੀ ਰੱਖੋ", "visualeditor-savedialog-label-review": "ਆਪਣੀਆਂ ਤਬਦੀਲੀਆਂ ਦੀ ਪਰਖ ਕਰੋ", "visualeditor-savedialog-label-save-short": "ਸਾਂਭੋ", - "visualeditor-savedialog-label-save-short-start": "ਸੁਰੱਖਿਅਤ ਕਰੋ...", + "visualeditor-savedialog-label-save-short-start": "ਸੰਭਾਲੋ...", "visualeditor-savedialog-review-nosummary": "ਕੋਈ ਸੋਧ ਸਾਰ ਨਹੀਂ", "visualeditor-savedialog-review-visual": "ਵਿਜ਼ੂਅਲ", "visualeditor-savedialog-review-wikitext": "ਵਿਕੀਲਿਖਤ", @@ -184,8 +229,13 @@ "visualeditor-savedialog-title-preview": "ਆਪਣੀਆਂ ਤਬਦੀਲੀਆਂ ਦੀ ਝਲਕ ਦੇਖੋ", "visualeditor-savedialog-title-review": "ਆਪਣੀਆਂ ਤਬਦੀਲੀਆਂ ਦੀ ਸਮੀਖਿਆ ਕਰੋ", "visualeditor-savedialog-title-save": "ਆਪਣੀਆਂ ਤਬਦੀਲੀਆਂ ਸਾਂਭੋ", - "visualeditor-settings-tool": "ਸਫ਼ੇ ਦੀਆਂ ਸੈਟਿੰਗਾਂ", + "visualeditor-section-body-placeholder": "ਨਵਾਂ ਭਾਗ", + "visualeditor-section-title-placeholder": "ਵਿਸ਼ਾ", + "visualeditor-settings-tool": "ਸਫ਼ੇ ਦੀਆਂ ਤਰਜੀਹਾਂ", + "visualeditor-special-characters-group-other": "ਅਕਸਰ ਵਰਤਿਆ ਗਿਆ", "visualeditor-templatesused-tool": "ਵਰਤੇ ਗਏ ਫਰਮੇ", + "visualeditor-title-error": "ਗਲਤ ਸਿਰਲੇਖ।", + "visualeditor-tooltip-non-breaking-space": "ਨਾ ਤੋੜਨ ਵਾਲੀ ਥਾਂ", "visualeditor-version-label": "ਵਰਸ਼ਨ", "visualeditor-wikitext-progress": "ਵਿਕੀਲਿਖਤ ਬਦਲੀ ਜਾ ਰਹੀ ਹੈ", "visualeditor-wikitextconvert-convert": "ਵਿਕੀਲਿਖਤ ਵਿੱਚ ਬਦਲੋ" diff --git a/i18n/ve-mw/pap.json b/i18n/ve-mw/pap.json index 901c13f284..bb69200b38 100644 --- a/i18n/ve-mw/pap.json +++ b/i18n/ve-mw/pap.json @@ -2,14 +2,157 @@ "@metadata": { "authors": [ "Irus", - "ObaTango" + "ObaTango", + "Kallmemel" ] }, - "tooltip-ca-ve-edit": "Editá e página akí", + "collabpad-import-subtitle": "Importá for di $1", + "tooltip-ca-ve-edit": "Editá e página aki", + "tooltip-ca-ve-create": "Krea e página aki", + "tooltip-ca-ve-create-local": "Krea página di deskripshon lokal", + "tooltip-ca-editsource": "Editá kódigo di fuente di e página aki", + "visualeditor-advancedsettings-tool": "Konfigurashon avansá", + "visualeditor-autosave-modified-prompt-reject": "Start un adaptashon nobo", + "visualeditor-autosave-modified-prompt-title": "Kontinuá {{GENDER:|bo}} adaptashon?", + "visualeditor-autosave-not-recovered-text": "No por a rekuperá bo kambionan no wardá.", + "visualeditor-autosave-not-recovered-title": "Rekuperashon di kambio a faya", + "visualeditor-autosave-recovered-text": "Bo kambionan no wardá a wòrdu rekuperá outomátikamente.", + "visualeditor-autosave-recovered-title": "Kambionan rekuperá", + "visualeditor-backbutton-tooltip": "Bai bèk", "visualeditor-ca-createlocaldescriptionsource": "Añadí deskripshon lokal", - "visualeditor-ca-createsource": "krea fuente", + "visualeditor-ca-createsource": "Krea fuente", + "visualeditor-ca-editlocaldescriptionsource": "Modifiká kódigo di deskripshon lokal", "visualeditor-ca-editsource": "Editá fuente", "visualeditor-ca-editsource-section": "editá fuente", + "visualeditor-categories-tool": "Kategoria", + "visualeditor-desc": "Editor visual pa MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", - "visualeditor-dialog-transclusion-param-undocumented": "(parameter no dokumentá)" + "visualeditor-dialog-media-content-filename": "Nòmber di fail", + "visualeditor-dialog-media-goback": "Bèk", + "visualeditor-dialog-media-info-audiofile": "Fail di oudio", + "visualeditor-dialog-media-info-created": "Kreá: $1", + "visualeditor-dialog-media-info-meta-artist": "Outor: $1", + "visualeditor-dialog-media-info-moreinfo": "Mas informashon", + "visualeditor-dialog-media-info-readmore": "Lesa mas", + "visualeditor-dialog-media-info-uploaded": "Subí: $1", + "visualeditor-dialog-media-page-advanced": "Avansá", + "visualeditor-dialog-media-page-general": "General", + "visualeditor-dialog-media-position-section": "Posishon", + "visualeditor-dialog-media-save": "Warda", + "visualeditor-dialog-media-search-tab-search": "Listra", + "visualeditor-dialog-media-search-tab-upload": "Subi", + "visualeditor-dialog-media-size-section": "Tamaño di imágen", + "visualeditor-dialog-media-title": "Konfigurashon di media", + "visualeditor-dialog-media-type-none": "Básiko", + "visualeditor-dialog-media-type-section": "Tipo di imágen", + "visualeditor-dialog-media-type-thumb": "Miniatura", + "visualeditor-dialog-media-upload": "Subi", + "visualeditor-dialog-meta-advancedsettings-label": "Konfigurashon avansá", + "visualeditor-dialog-meta-advancedsettings-section": "Konfigurashon avansá", + "visualeditor-dialog-meta-categories-addcategory-label": "Agregá un kategoria na e página aki", + "visualeditor-dialog-meta-categories-category": "Kategoria", + "visualeditor-dialog-meta-categories-data-label": "Kategoria", + "visualeditor-dialog-meta-categories-options": "Opshon", + "visualeditor-dialog-meta-categories-section": "Kategoria", + "visualeditor-dialog-meta-languages-code-label": "Kódigo di idioma", + "visualeditor-dialog-meta-languages-label": "Idioma", + "visualeditor-dialog-meta-languages-link-label": "Página vinkulá", + "visualeditor-dialog-meta-languages-name-label": "Idioma", + "visualeditor-dialog-meta-languages-section": "Idioma", + "visualeditor-dialog-meta-settings-displaytitle": "Mustra título", + "visualeditor-dialog-meta-settings-hiddencat-label": "Kategoria skondí", + "visualeditor-dialog-meta-settings-index-default": "Standart", + "visualeditor-dialog-meta-settings-index-disable": "Nò", + "visualeditor-dialog-meta-settings-index-force": "Sí", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Standart", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Nò", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Sí", + "visualeditor-dialog-meta-settings-redirect-label": "Redirigi e página aki pa", + "visualeditor-dialog-meta-settings-section": "Konfigurashon di página", + "visualeditor-dialog-meta-settings-toc-disable": "Nunka", + "visualeditor-dialog-meta-settings-toc-force": "Semper", + "visualeditor-dialog-meta-title": "Opshon", + "visualeditor-dialog-template-title": "Malchi", + "visualeditor-dialog-transclusion-action-save": "Warda", + "visualeditor-dialog-transclusion-template-title-nonexistent": "E malchi aki no ta eksistí.", + "visualeditor-dialog-transclusion-add-param-placeholder": "Nòmber di parameter", + "visualeditor-dialog-transclusion-add-param-save": "Agregá", + "visualeditor-dialog-transclusion-add-template": "Agregá malchi", + "visualeditor-dialog-transclusion-add-template-button": "Añadí malchi", + "visualeditor-dialog-transclusion-add-template-save": "Agregá", + "visualeditor-dialog-transclusion-collapse-options": "Skonde opshon", + "visualeditor-dialog-transclusion-confirmation-reject": "Kontinuá ku editá", + "visualeditor-dialog-transclusion-contextitem-description": "Generá for di: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Ta karga…", + "visualeditor-dialog-transclusion-expand-options": "Mustra opshon", + "visualeditor-dialog-transclusion-param-example-long": "Ehèmpel: $1", + "visualeditor-dialog-transclusion-param-undocumented": "(parameter no dokumentá)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Listra pa malchi", + "visualeditor-dialog-transclusion-title-insert-template": "Insertá un malchi", + "visualeditor-dialog-transclusion-title-insert-known-template": "Insertá: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Editá: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Kontenido di malchi", + "visualeditor-dialogbutton-template-tooltip": "Malchi", + "visualeditor-expandable-more": "Mas", + "visualeditor-feedback-defaultmessage": "URL: $1", + "visualeditor-formatdropdown-format-mw-heading1": "Título di página", + "visualeditor-formatdropdown-format-mw-heading2": "Título", + "visualeditor-formatdropdown-format-mw-heading3": "Suptítulo 1", + "visualeditor-formatdropdown-format-mw-heading4": "Suptítulo 2", + "visualeditor-formatdropdown-format-mw-heading5": "Suptítulo 3", + "visualeditor-formatdropdown-format-mw-heading6": "Suptítulo 4", + "visualeditor-generating-wikitext-progress": "Ta generá wikiteksto", + "visualeditor-languages-tool": "Idioma", + "visualeditor-linkinspector-button-link-external": "Wèpsait eksterno", + "visualeditor-linkinspector-button-link-internal": "Listra pa páginanan interno", + "visualeditor-linkinspector-convert-link-isbn": "Kombertí pa ISBN-lenk", + "visualeditor-linkinspector-convert-link-pmid": "Kombertí pa PMID-lenk", + "visualeditor-linkinspector-convert-link-rfc": "Kombertí pa RFC-lenk", + "visualeditor-linkinspector-educationpopup-title": "Lenk", + "visualeditor-linkinspector-illegal-title": "Título di página inbálido", + "visualeditor-linknodeinspector-add-label": "Agregá lebel", + "visualeditor-linknodeinspector-title": "Lenk simpel", + "visualeditor-magiclinknodeinspector-convert-link": "Kombertí pa lenk simpel", + "visualeditor-magiclinknodeinspector-title-isbn": "ISBN-lenk", + "visualeditor-magiclinknodeinspector-title-pmid": "PMID-lenk", + "visualeditor-magiclinknodeinspector-title-rfc": "RFC-lenk", + "visualeditor-media-title-audio": "Oudio", + "visualeditor-media-title-image": "Imágen", + "visualeditor-mweditmodesource-tool-current": "Editá wiki-kódigo", + "visualeditor-mweditmodeve-progress": "Suich pa editor visual", + "visualeditor-mweditmodeve-tool-current": "Editá visual", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|imágen}}", + "visualeditor-mwgallerydialog-caption-field-label": "Deskripshon di galeria", + "visualeditor-mwgallerydialog-card-images": "Imágen", + "visualeditor-mwgallerydialog-card-options": "Opshon", + "visualeditor-mwgallerydialog-classes-field-label": "Klase-CSS", + "visualeditor-mwgallerydialog-styles-field-label": "Estilo-CSS", + "visualeditor-mwgallerydialog-title": "Galeria", + "visualeditor-mwsignature-tool": "Bo firma", + "visualeditor-preference-visualeditor": "Aktivá editor visual", + "visualeditor-rebase-client-export": "Eksportá", + "visualeditor-rebase-client-export-start": "Eksportá…", + "visualeditor-rebase-client-import": "Importá", + "visualeditor-rebase-client-import-name": "Título di página", + "visualeditor-redirect-description": "Redirigí pa $1", + "visualeditor-savedialog-label-publish-short": "Publiká", + "visualeditor-savedialog-label-publish-short-start": "Publiká…", + "visualeditor-savedialog-label-resolve-conflict": "Resolvé konflikto", + "visualeditor-savedialog-label-save-short": "Warda", + "visualeditor-savedialog-label-save-short-start": "Warda…", + "visualeditor-savedialog-review-nosummary": "Sin resúmen di adaptashon", + "visualeditor-savedialog-review-visual": "Visual", + "visualeditor-savedialog-review-wikitext": "Wikiteksto", + "visualeditor-savedialog-title-conflict": "Konflikto", + "visualeditor-savedialog-title-preview": "Kontrolá kambio", + "visualeditor-savedialog-title-review": "Revisá bo kambionan", + "visualeditor-savedialog-title-save": "Warda bo kambionan", + "visualeditor-section-body-placeholder": "Sekshon nobo", + "visualeditor-section-title-placeholder": "Tema:", + "visualeditor-settings-tool": "Konfigurashon di página", + "visualeditor-templatesused-tool": "Malchi usá", + "visualeditor-title-error": "Título inbálido.", + "visualeditor-version-label": "Vershon", + "visualeditor-wikitext-progress": "Kombertí wikiteksto", + "visualeditor-wikitextconvert-convert": "Kombertí pa wikiteksto" } diff --git a/i18n/ve-mw/pl.json b/i18n/ve-mw/pl.json index c03ff18867..dbb0ef2d52 100644 --- a/i18n/ve-mw/pl.json +++ b/i18n/ve-mw/pl.json @@ -30,7 +30,8 @@ "Vuh", "WTM", "Woytecr", - "Wpedzich" + "Wpedzich", + "PanWor" ] }, "collabpad-doctitle": "CollabPad: $1", @@ -87,11 +88,9 @@ "visualeditor-dialog-media-info-artist": "Przesłano przez $1", "visualeditor-dialog-media-info-audiofile": "Plik audio", "visualeditor-dialog-media-info-created": "Utworzono: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Autor: $1", "visualeditor-dialog-media-info-moreinfo": "Więcej informacji", "visualeditor-dialog-media-info-readmore": "Czytaj więcej", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Przesłano: $1", "visualeditor-dialog-media-page-advanced": "Zaawansowane", "visualeditor-dialog-media-page-general": "Podstawowe", @@ -183,7 +182,7 @@ "visualeditor-dialog-transclusion-template-widget-aria": "Wciśnij spację, aby wybrać ten szablon.", "visualeditor-dialog-transclusion-template-widget-aria-selected": "Wciśnij ctrl+del, aby usunąć ten szablon, jego parametry i ich wartości. Wciśnij ctrl+shift+strzałki, aby przesunąć go w górę lub w dół.", "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Wciśnij Ctrl+Del, aby usunąć ten szablon, jego parametry i ich wartości.", - "visualeditor-dialog-transclusion-add-wikitext": "Dodaj wikitekst", + "visualeditor-dialog-transclusion-add-wikitext": "Dodaj wikikod", "visualeditor-dialog-transclusion-add-param-error-alias": "„$1” jest już dodany jako „$2”. Sprawdź opcje w pasku bocznym. Jest to spowodowane użyciem [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases aliasów] lub [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label etykiet] w dokumentacji szablonu.", "visualeditor-dialog-transclusion-add-param-error-deprecated": "Nie można dodać „$1”, ponieważ parametr ten został oznaczony jako [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label przestarzały].", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Nie można dodać parametru „$2” dwukrotnie.", @@ -240,9 +239,9 @@ "visualeditor-dialog-transclusion-template-search": "Wyszukiwanie szablonów", "visualeditor-dialog-transclusion-template-search-help": "Znajdź szablon, który chcesz dodać, wyszukując słowo kluczowe. Szablony z opisami zazwyczaj działają lepiej w edytorze wizualnym.", "visualeditor-dialog-transclusion-wikitext": "Wikikod", - "visualeditor-dialog-transclusion-wikitext-widget-aria": "Wciśnij spację, aby wybrać fragment wikitekstu. Wciśnij enter, aby wybrać i edytować wikitekst.", - "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Wciśnij ctrl+del, aby usunąć fragment wikitekstu. Wciśnij ctrl+shift+strzałki, aby przesunąć go w górę lub w dół.", - "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Wciśnij Ctrl+Del, aby usunąć ten fragment wikitekstu.", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Wciśnij spację, aby wybrać fragment wikikodu. Wciśnij Enter, aby wybrać i edytować wikikod.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Wciśnij Ctrl+Del, aby usunąć fragment wikikodu. Wciśnij Ctrl+Shift+strzałki, aby przesunąć go w górę lub w dół.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Wciśnij Ctrl+Del, aby usunąć ten fragment wikikodu.", "visualeditor-dialogbutton-media-tooltip": "Grafika i multimedia", "visualeditor-dialogbutton-template-tooltip": "Szablon", "visualeditor-editconflict": "Twoje zmiany nie mogły zostać zapisane z powodu wystąpienia konfliktu edycji. Czy {{GENDER:|chcesz}} rozwiązać go ręcznie?", @@ -263,7 +262,7 @@ "visualeditor-formatdropdown-format-mw-heading4": "Nagłówek podrozdziału 2 stopnia", "visualeditor-formatdropdown-format-mw-heading5": "Nagłówek podrozdziału 3 stopnia", "visualeditor-formatdropdown-format-mw-heading6": "Nagłówek podrozdziału 4 stopnia", - "visualeditor-generating-wikitext-progress": "Generowanie wikitekstu", + "visualeditor-generating-wikitext-progress": "Generowanie wikikodu", "visualeditor-includes-noinclude-start": "Początek treści, która nie będzie załączana", "visualeditor-includes-noinclude-end": "Koniec treści, która nie będzie załączana", "visualeditor-includes-onlyinclude-start": "Początek treści, która może być załączana", @@ -274,6 +273,7 @@ "visualeditor-includes-includeonly-description": "Jeśli treść tej strony zostanie użyta na innej stronie, załączona będzie poniższa dodatkowa treść:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Więcej informacji na temat załączania fragmentów stron]", "visualeditor-languages-tool": "Języki", + "visualeditor-linkcontext-uneditable": "Niestety, na razie ten link może być zmodyfikowany tylko w trybie edycji kodu źródłowego.", "visualeditor-linkinspector-button-link-external": "Strona zewnętrzna", "visualeditor-linkinspector-button-link-internal": "Wyszukaj wewnętrzne strony", "visualeditor-linkinspector-convert-link-isbn": "Przekształć na odnośnik ISBN", @@ -335,8 +335,8 @@ "visualeditor-mwpredialog-title": "Preformatowany czysty tekst", "visualeditor-mwsignature-tool": "Twój podpis", "visualeditor-preference-visualeditor": "Włącz edytor wizualny", - "visualeditor-preference-newwikitexteditor-enable": "Używaj trybu wikitekstu wewnątrz edytora wizualnego, zamiast innego edytora wikitekstu", - "visualeditor-preference-newwikitexteditor-help": "Inna nazwa to „edytor wikitekstu 2017”.", + "visualeditor-preference-newwikitexteditor-enable": "Używaj trybu wikikodu wewnątrz edytora wizualnego, zamiast innego edytora wikikodu", + "visualeditor-preference-newwikitexteditor-help": "Inna nazwa to „edytor wikikodu 2017”.", "visualeditor-preference-tabs": "Tryb edycji:", "visualeditor-preference-tabs-multi-tab": "Pokaż obie zakładki edycji", "visualeditor-preference-tabs-prefer-ve": "Zawsze uruchamiaj edytor wizualny, gdy to możliwe", @@ -356,7 +356,7 @@ "visualeditor-savedialog-identify-user": "Jesteś teraz {{GENDER:$1|zalogowany|zalogowana}} jako [[User:$1|$1]]. Jeśli kontynuujesz, ta edycja będzie przypisana do tego konta.", "visualeditor-savedialog-keyboard-shortcut-submit": "Możesz nacisnąć $1, aby zapisać swoją edycję.", "visualeditor-savedialog-label-publish-short": "Opublikuj", - "visualeditor-savedialog-label-publish-short-start": "Opublikuj...", + "visualeditor-savedialog-label-publish-short-start": "Opublikuj…", "visualeditor-savedialog-label-resolve-conflict": "Rozwiąż konflikt", "visualeditor-savedialog-label-resume-editing": "Kontynuuj edycję", "visualeditor-savedialog-label-review": "Skontroluj swoje zmiany", @@ -381,10 +381,10 @@ "visualeditor-toload": "Teraz uruchomi się edytor. Jeśli po kilku sekundach widzisz nadal ten komunikat, [$1 odśwież stronę].", "visualeditor-tooltip-non-breaking-space": "Spacja niełamiąca", "visualeditor-version-label": "Wersja", - "visualeditor-wikitext-progress": "Konwertowanie wikitekstu", + "visualeditor-wikitext-progress": "Konwertowanie wikikodu", "visualeditor-wikitext-warning": "Używasz teraz edytora wizualnego – a tu [[{{MediaWiki:visualeditor-wikitext-warning-link}}|znaczniki kodu źródłowego]] nie działają. W każdej chwili bez utraty zmian możesz przełączyć się na edycję kodu źródłowego, klikając przycisk przełączający.", "visualeditor-wikitext-warning-title": "Znaleziono znaczniki kodu źródłowego", - "visualeditor-wikitextconvert-title": "Przekonwertować formatowanie do wikitekstu?", - "visualeditor-wikitextconvert-message": "{{GENDER:|Wkleiłeś treść zawierającą|Wkleiłaś treść zawierającą|Wklejona treść zawiera}} formatowanie. Czy chcesz, aby zostało ono przekonwertowane na wikitekst?", - "visualeditor-wikitextconvert-convert": "Przekonwertuj do wikitekstu" + "visualeditor-wikitextconvert-title": "Przekonwertować formatowanie na wikikod?", + "visualeditor-wikitextconvert-message": "{{GENDER:|Wkleiłeś treść zawierającą|Wkleiłaś treść zawierającą|Wklejona treść zawiera}} formatowanie. Czy chcesz, aby zostało ono przekonwertowane na wikikod?", + "visualeditor-wikitextconvert-convert": "Przekonwertuj do wikikodu" } diff --git a/i18n/ve-mw/ppl.json b/i18n/ve-mw/ppl.json new file mode 100644 index 0000000000..54bcbe7cdf --- /dev/null +++ b/i18n/ve-mw/ppl.json @@ -0,0 +1,14 @@ +{ + "@metadata": { + "authors": [ + "Canjura", + "Jose Antonio Guillen Landaverde", + "Taty Flores de Constante", + "TimumachtikanNawat" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Takutunchin ka ijtik ne wiki", + "visualeditor-ca-createsource": "Shikinchiwa itajtachiska tajkwilulchichin", + "visualeditor-ca-editsource": "Shikpata ne tajkwilulchin", + "visualeditor-ca-editsource-section": "Shikpata ne tajkwilulchin" +} diff --git a/i18n/ve-mw/ps.json b/i18n/ve-mw/ps.json index ff58642d6e..5faa2abd84 100644 --- a/i18n/ve-mw/ps.json +++ b/i18n/ve-mw/ps.json @@ -6,54 +6,81 @@ "Amjad Khan", "Baloch Khan", "Irus", + "شاه زمان پټان", "عثمان منصور انصاري" ] }, + "collabpad-doctitle": "گډون‌پاڼه: $1", + "collabpad-import-subtitle": "له $1 څخه راوړل شوی", + "collabpad": "گډون‌پاڼه", "tooltip-ca-ve-edit": "دا مخ سمول", + "tooltip-ca-ve-edit-local": "د ځايي څرگنداوي مخ سمول", + "tooltip-ca-ve-create": "دا مخ جوړول", + "tooltip-ca-ve-create-local": "ځايي څرگنداوي مخ جوړول", "tooltip-ca-editsource": "د دې مخ د سرچينې کوډ سمول", + "tooltip-ca-editsource-local": "د ځايي څرگنداوي مخ سرچينو کوډ سمول", "tooltip-ca-createsource": "د دې مخ د سرچينې کوډ جوړول", - "visualeditor-advancedsettings-tool": "پرمختللې امستنې", + "tooltip-ca-createsource-local": "د ځايي څرگنداوي مخ سرچينې کوډ جوړول", + "visualeditor-advancedsettings-tool": "پرمختللې اوڼنې", + "visualeditor-annotations-default-description": "د پاڼې دا برخه د سپيناوي لړۍ برخه ده.", + "visualeditor-annotations-default-end": "د سپيناوي لړۍ پای", + "visualeditor-annotations-default-start": "سپيناوي لړۍ پيلول", + "visualeditor-autosave-modified-prompt-accept": "سمون بياپيلول", + "visualeditor-autosave-modified-prompt-reject": "نوی سمون پيلول", + "visualeditor-autosave-modified-prompt-title": "{{GENDER:|ستاسو}} سمون بيا پيل کړي؟", + "visualeditor-autosave-not-recovered-text": "ستاسو ناخوندي شوي بدلونونه نشي ترلاسه کېدای.", + "visualeditor-autosave-not-recovered-title": "بدلون بياترلاسنه نابريالۍ شوه", + "visualeditor-autosave-recovered-text": "ستاسو ناخوندي شوي سمونونه په خپلکاري ډول بېرته ترلاسه شول.", + "visualeditor-autosave-recovered-title": "بدلونونه بېرته ترلاسه شول", "visualeditor-backbutton-tooltip": "پر شا تلل", - "visualeditor-ca-createlocaldescriptionsource": "د سيمه ايزې څرگندونې سرچينې ورگډول", + "visualeditor-ca-createlocaldescriptionsource": "د سيمه ييزې څرگندونې سرچينې ورگډول", "visualeditor-ca-createsource": "سرچينه جوړول", - "visualeditor-ca-editlocaldescriptionsource": "د سيمه ايزې څرگندونې سرچينه سمول", + "visualeditor-ca-editlocaldescriptionsource": "د سيمه ييزې څرگندونې سرچينه سمول", "visualeditor-ca-editsource": "سرچينه سمول", "visualeditor-ca-editsource-section": "سرچينه سمول", + "visualeditor-ca-editsource-section-hint": "سمون برخې سرچينې کوډ: $1", "visualeditor-categories-tool": "وېشنيزې", + "visualeditor-changedesc-mwcategory-sortkey-changed": "ترتيبولو کونجي له $1 څخه $2 ته بدله شوې", + "visualeditor-changedesc-mwcategory-sortkey-set": "ترتيبولو کونجي $1 ته ټاکل شوې", + "visualeditor-changedesc-mwredirect": "موخې وړ مخگرځ له $1 څخه $2 ته بدل شو", + "visualeditor-changedesc-mwtransclusion": "د کينډۍ پاراميترونه بدل شول", "visualeditor-desc": "د مېډياويکي لپاره ليدنيز سمونگر", "visualeditor-descriptionpagelink": "Project:ليدنيز سمونگر", + "visualeditor-dialog-extension-abandonedit": "ايا تاسو ډاډه ياست چې دا سکالو د خپلو بدلونو پلي کولو پرته وتړئ؟", + "visualeditor-dialog-media-alttext-checkbox": "نوينگ د ځايناستي ليک په توگه وکاروئ", "visualeditor-dialog-media-alttext-section": "انډوليز متن", "visualeditor-dialog-media-change-image": "انځور بدلول", "visualeditor-dialog-media-choose-image": "دا انځور کارول", "visualeditor-dialog-media-content-description-link": "(د څرگندونې مخ)", "visualeditor-dialog-media-content-filename": "د دوتنې نوم", + "visualeditor-dialog-media-content-section": "نيونگ", "visualeditor-dialog-media-goback": "پر شا", "visualeditor-dialog-media-info-artist": "$1 پورته کړی", "visualeditor-dialog-media-info-audiofile": "غږيزه دوتنه", "visualeditor-dialog-media-info-created": "جوړ شوی: $1", - "visualeditor-dialog-media-info-meta-artist": "هنرمند: $1", + "visualeditor-dialog-media-info-meta-artist": "لیکوال: $1", "visualeditor-dialog-media-info-moreinfo": "نور مالومات", "visualeditor-dialog-media-info-readmore": "نور لوستل", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "ورپورته شوی: $1", - "visualeditor-dialog-media-page-advanced": "پرمختللې امستنې", - "visualeditor-dialog-media-page-general": "ټولگړې امستنې", + "visualeditor-dialog-media-page-advanced": "پرمختللی", + "visualeditor-dialog-media-page-general": "ټولواله", "visualeditor-dialog-media-position-checkbox": "د دې توکي شاوخوا متن ځايول", "visualeditor-dialog-media-position-section": "ځای", "visualeditor-dialog-media-save": "خوندي کول", "visualeditor-dialog-media-search-tab-search": "پلټل", - "visualeditor-dialog-media-search-tab-upload": "پورته کول", + "visualeditor-dialog-media-search-tab-upload": "راپورته‌کول", "visualeditor-dialog-media-size-section": "انځور کچه", - "visualeditor-dialog-media-title": "د رسنۍ امستنې", + "visualeditor-dialog-media-title": "د رسنۍ اوڼنې", "visualeditor-dialog-media-type-border": "پوله", "visualeditor-dialog-media-type-frame": "چوکاټ", "visualeditor-dialog-media-type-frameless": "بې چوکاټه", "visualeditor-dialog-media-type-none": "بنسټيز", "visualeditor-dialog-media-type-section": "انځور ډول", "visualeditor-dialog-media-type-thumb": "بټنوک", - "visualeditor-dialog-media-upload": "پورته کول", - "visualeditor-dialog-meta-advancedsettings-label": "پرمختللې امستنې", - "visualeditor-dialog-meta-advancedsettings-section": "پرمختللې امستنې", + "visualeditor-dialog-media-upload": "راپورته‌کول", + "visualeditor-dialog-meta-advancedsettings-label": "پرمختللې اوڼنې", + "visualeditor-dialog-meta-advancedsettings-section": "پرمختللې اوڼنې", + "visualeditor-dialog-meta-categories-addcategory-label": "دې مخ ته وېشنيزه ورگډول", "visualeditor-dialog-meta-categories-category": "وېشنيزه", "visualeditor-dialog-meta-categories-data-label": "وېشنيزې", "visualeditor-dialog-meta-categories-defaultsort-label": "په تلواليزه توگه دا مخ اوډل", @@ -62,6 +89,7 @@ "visualeditor-dialog-meta-categories-input-movecategorylabel": "دا وېشنيزه دلته خوځول", "visualeditor-dialog-meta-categories-input-newcategorylabel": "نوې وېشنيزه", "visualeditor-dialog-meta-categories-input-placeholder": "يوه وېشنيزه ورگډول", + "visualeditor-dialog-meta-categories-missing": "دا وېشنيزه څرگنداوی مخ نه لري.", "visualeditor-dialog-meta-categories-options": "خوښنې", "visualeditor-dialog-meta-categories-section": "وېشنيزې", "visualeditor-dialog-meta-categories-sortkey-label": "دا مخ لکه څنگه چې نومېدلی هماغسې اوډل", @@ -69,7 +97,7 @@ "visualeditor-dialog-meta-languages-label": "ژبې", "visualeditor-dialog-meta-languages-link-label": "تړلی مخ", "visualeditor-dialog-meta-languages-name-label": "ژبه", - "visualeditor-dialog-meta-languages-readonlynote": "دا د دې مخ سره د نورو ژبو د مخونو د تړنو يو لړليک دی. د اوس لپاره، دا مخ يوازې د سرچينې سمولو په بڼه او د ويکيډاټا له مخې د سمولو وړ دی.", + "visualeditor-dialog-meta-languages-readonlynote": "دا د دې مخ سره د نورو ژبو د مخونو د تړنو يو لړليک دی. د اوس لپاره، دا مخ يوازې د سرچينې سمولو په بڼه او د ويکي‌اومتوک له مخې د سمولو وړ دی.", "visualeditor-dialog-meta-languages-section": "ژبې", "visualeditor-dialog-meta-settings-displaytitle": "ښکارېدونکی سرليک", "visualeditor-dialog-meta-settings-hiddencat-label": "پټې وېشنيزې", @@ -78,7 +106,7 @@ "visualeditor-dialog-meta-settings-index-force": "هو", "visualeditor-dialog-meta-settings-index-help": "تاسې کولای شئ چې پلټن ماشينونه دې ته اړ باسئ چې همدا مخ خپلو اړوندو پايلو لړليک کې راوړي او يا هم اړ يې باسئ چې را يې نه وړي.", "visualeditor-dialog-meta-settings-index-label": "همدا مخ د پلټنې ماشينونو له خوا ليکلړ کښنې ته پرېښودل", - "visualeditor-dialog-meta-settings-label": "مخ امستنې", + "visualeditor-dialog-meta-settings-label": "مخ اوڼنې", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "تلواليز", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "نه", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "هو", @@ -86,65 +114,117 @@ "visualeditor-dialog-meta-settings-redirect-label": "همدې مخ ته مخ ورگرځول", "visualeditor-dialog-meta-settings-redirect-placeholder": "د مخ گرځونې لپاره د موخې مخ", "visualeditor-dialog-meta-settings-redirect-staticlabel": "د موخې مخ د لېږدولو په وخت کې د همدې مخ گرځونې د هممهالېدنې مخنيوی کول", - "visualeditor-dialog-meta-settings-section": "مخ امستنې", + "visualeditor-dialog-meta-settings-section": "مخ اوڼنې", "visualeditor-dialog-meta-settings-toc-default": "د اړتيا په وخت کې", "visualeditor-dialog-meta-settings-toc-disable": "هېڅکله", "visualeditor-dialog-meta-settings-toc-force": "تل", - "visualeditor-dialog-meta-settings-toc-label": "نيوليک ښکاره کول", + "visualeditor-dialog-meta-settings-toc-label": "نيوليک ښودل", + "visualeditor-dialog-meta-templatesused-noresults": "هيڅ کينډۍ ونه موندل شوه.", "visualeditor-dialog-meta-title": "خوښنې", + "visualeditor-dialog-table-collapsed": "پيل‌ پرځېدلی", + "visualeditor-dialog-table-collapsible": "پرځېدلو وړ", "visualeditor-dialog-table-sortable": "اوډون وړ", + "visualeditor-dialog-table-wikitable": "سکښتلی (ويکي‌لښتيال)", "visualeditor-dialog-template-title": "کينډۍ", + "visualeditor-dialog-transclusion-action-save": "خوندي کول", + "visualeditor-dialog-transclusion-template-title-nonexistent": "دا کينډۍ نشته.", + "visualeditor-dialog-transclusion-add-wikitext": "ويکي‌ليک ورگډول", + "visualeditor-dialog-transclusion-add-param-placeholder": "پاراميتر نوم", + "visualeditor-dialog-transclusion-add-param-save": "ورگډول", "visualeditor-dialog-transclusion-add-template": "کينډۍ ورگډول", + "visualeditor-dialog-transclusion-add-template-button": "کينډۍ ورگډول", + "visualeditor-dialog-transclusion-add-template-save": "ورگډول", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "پلټلو لپاره پر شا ولاړ شي؟ بدلونونه به مو له منځه ولاړ شي او دا بېرته نه راگرځول کېږي.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "کينډۍ سمونگر وتړي؟ بدلونونه به مو له منځه ولاړ شي او دا بېرته نه راگرځول کېږي.", "visualeditor-dialog-transclusion-collapse-options": "خوښنې پټول", + "visualeditor-dialog-transclusion-confirmation-discard": "سمونونه غورځول", + "visualeditor-dialog-transclusion-confirmation-reject": "سمون پرمخ بېول", "visualeditor-dialog-transclusion-contextitem-description": "جوړ شوی له: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "رابرسېرېږي...", "visualeditor-dialog-transclusion-expand-options": "خوښنې ښکاره کول", + "visualeditor-dialog-transclusion-filter-hide-unused": "نا کارول شوي پټول", + "visualeditor-dialog-transclusion-filter-no-match": "هېڅ ورته والی و نهٔ موندل شو", + "visualeditor-dialog-transclusion-filter-placeholder": "ډگر موندل", + "visualeditor-dialog-transclusion-filter-show-all": "ټول ښکاره کول", + "visualeditor-dialog-transclusion-help-title": "کينډۍ سمولو ملاتړ", "visualeditor-dialog-transclusion-loading": "رابرسېرېږي...", "visualeditor-dialog-transclusion-param-default": "تلواليز: $1", + "visualeditor-dialog-transclusion-param-example-long": "بېلگه: $1", + "visualeditor-dialog-transclusion-param-selection-aria-label": "په $1 کې پاراميترونه", + "visualeditor-dialog-transclusion-param-undocumented": "(بې‌لاسونده پاراميتر)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "کينډۍ موندل", "visualeditor-dialog-transclusion-required-parameter": "غوښتلی ډاگی", "visualeditor-dialog-transclusion-required-parameter-description": "دې ډاگي ته اړتيا ده.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "پر شا تلل", - "visualeditor-dialogbutton-media-tooltip": "رسنۍ", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "هرڅنگه چې وي دوام ورکړئ", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "اړين {{PLURAL:$1|ډگر تش دی|ډگرونه تش دي}}", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "ډاډه ياست چې د $1 {{PLURAL:$2|ډگر|ډگرونو}} ډکولو پرته دوام ورکړئ؟", + "visualeditor-dialog-transclusion-title-insert-template": "يوه کينډۍ ورټومبل", + "visualeditor-dialog-transclusion-title-insert-known-template": "ورټومبل: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "سمون: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "د کينډۍ منځپانگه", + "visualeditor-dialog-transclusion-template-search": "کينډۍ لټون", + "visualeditor-dialog-transclusion-wikitext": "ویکي‌ليک", + "visualeditor-dialogbutton-media-tooltip": "انځورونه او رسنۍ", "visualeditor-dialogbutton-template-tooltip": "کينډۍ", "visualeditor-editingtabdialog-ok": "تېر ځل کارېدلی سمونگر کارول", + "visualeditor-editingtabdialog-title": "سمون ريښکۍ", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|يادښت|يادښتونه}}", "visualeditor-editnotices-tooltip": "يادښتونه سمول", - "visualeditor-editsummary": "ووايۍ کوم بدلونونه مو راوستل", + "visualeditor-editsummary": "ووايئ کوم بدلونونه مو راوستل", "visualeditor-educationpopup-dismiss": "ښه، وپوهېدم", - "visualeditor-feedback-defaultmessage": "URL: $1", + "visualeditor-expandable-less": "لږ", + "visualeditor-expandable-more": "نور", + "visualeditor-feedback-defaultmessage": "وېبتړ: $1", "visualeditor-formatdropdown-format-mw-heading1": "مخ سرليک", "visualeditor-formatdropdown-format-mw-heading2": "سرليک", "visualeditor-formatdropdown-format-mw-heading3": "څېرمه سرليک 1", "visualeditor-formatdropdown-format-mw-heading4": "څېرمه سرليک 2", "visualeditor-formatdropdown-format-mw-heading5": "څېرمه سرليک 3", "visualeditor-formatdropdown-format-mw-heading6": "څېرمه-سرليک 4", + "visualeditor-generating-wikitext-progress": "ويکي‌ليک پنځول", "visualeditor-languages-tool": "ژبې", - "visualeditor-linkinspector-button-link-external": "باندنۍ تړنه", - "visualeditor-linkinspector-button-link-internal": "مخونه پلټل", + "visualeditor-linkinspector-button-link-external": "باندنی وېبځی", + "visualeditor-linkinspector-button-link-internal": "دننني مخونه پلټل", "visualeditor-linkinspector-convert-link-isbn": "ISBN تړنې ته ور اړول", "visualeditor-linkinspector-convert-link-pmid": "PMID تړنې ته ور اړول", - "visualeditor-linkinspector-educationpopup-text": "اهم وييونه د ويکي نورو ليکنو او يا هم نورو وېبپاڼو سره وتړئ. دا چاره به لوستونکو ته د متن په لا ښه پوهاوي کې مرسته وکړي.", + "visualeditor-linkinspector-educationpopup-text": "اهم ويي د ويکي نورو ليکنو او يا هم نورو وېبپاڼو سره وتړئ. دا چاره به لوستونکو ته د متن په لا ښه پوهاوي کې مرسته وکړي.", "visualeditor-linkinspector-educationpopup-title": "تړنې", "visualeditor-linkinspector-illegal-title": "ناسم سرليک", "visualeditor-linknodeinspector-add-label": "لېبل ورگډول", "visualeditor-linknodeinspector-title": "ساده تړنه", + "visualeditor-magiclinknodeinspector-convert-link": "ساده وېبتړ ته اړول", "visualeditor-magiclinknodeinspector-title-isbn": "ISBN تړنه", "visualeditor-magiclinknodeinspector-title-pmid": "PMID تړنه", "visualeditor-magiclinknodeinspector-title-rfc": "RFC تړنه", + "visualeditor-media-title-audio": "غږيز", + "visualeditor-media-title-image": "انځور", + "visualeditor-media-title-video": "ويډيو", "visualeditor-meta-tool": "خوښنې", + "visualeditor-mweditmode-tooltip": "سمونگر بلول", + "visualeditor-mweditmodesource-progress": "سرچينې سمون ته بدلول...", "visualeditor-mweditmodesource-tool-current": "سرچینه سمول", + "visualeditor-mweditmodesource-tool-unavailable": "سرچينې سمون دلته د لاسرسي وړ نه دی", "visualeditor-mweditmodeve-popup-body": "د دې نښې په کېښکاږلو سره تاسې هر وخت کولای شئ چې بيا ليدنيزسمونگر ته ور واوړئ.", "visualeditor-mweditmodeve-popup-title": "تاسې سرچينې سمونې ته اليش کړ", + "visualeditor-mweditmodeve-progress": "ليدنيز سمونگر ته يې وراړول...", "visualeditor-mweditmodeve-showagain": "همدا پيغام بيا مه راښکاره کوه", "visualeditor-mweditmodeve-tool-current": "ليدنيز سمون", + "visualeditor-mweditmodeve-tool-unavailable": "ليدنيز سمون دلته د لاسري وړ نه دی", "visualeditor-mweditmodewt-popup-body": "د دې نښې په کېښکاږلو سره تاسې هر وخت کولای شئ چې بيا سرچينې سمونې ته ور واوړئ.", "visualeditor-mweditmodewt-popup-title": "تاسې ليدنيز سمونگر ته اليش کړ", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|انځور|انځورونه}}", + "visualeditor-mwgallerydialog-caption-field-label": "انځورتون نيونگ", "visualeditor-mwgallerydialog-card-images": "انځورونه", "visualeditor-mwgallerydialog-card-options": "خوښنې", "visualeditor-mwgallerydialog-classes-field-label": "CSS ټولگي", "visualeditor-mwgallerydialog-classes-input-placeholder": "د ټولگيو نومونه، تشيال-بېلوونکی", "visualeditor-mwgallerydialog-empty-gallery-message": "انځورتون تش دی.", "visualeditor-mwgallerydialog-heights-field-label": "د انځور جگوالی", + "visualeditor-mwgallerydialog-heights-input-placeholder": "تلواله لوړوالی: $1 پيکسل", "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "دوديزه د باندکرښو پرته", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "بسته‌شوی", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "په ځمبنه کې نيونگو سره بسته‌شوې", "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "سلايډشو", "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "دوديزه", "visualeditor-mwgallerydialog-mode-field-label": "د ښکارېدنې حالت", @@ -156,19 +236,52 @@ "visualeditor-mwgallerydialog-styles-input-placeholder": "CSS قانونونه، سيمي کولون-بېل شوی", "visualeditor-mwgallerydialog-title": "انځورتون", "visualeditor-mwgallerydialog-widths-field-label": "د انځور سور", + "visualeditor-mwpredialog-convert": "ليک ښودبڼې پرېښولی", + "visualeditor-mwpredialog-title": "واردمخ‌ترتيب‌شوی ساده ليک", "visualeditor-mwsignature-tool": "ستاسې لاسليک", + "visualeditor-preference-visualeditor": "ليدنيز سمونگر چارنول", + "visualeditor-preference-newwikitexteditor-enable": "د بېلابېلو ويکي‌ليک سمونگر پرځای د ليدنيز سمونگر دننه ويکي‌ليک ونگډول وکاروئ", + "visualeditor-preference-newwikitexteditor-help": "دا ځينې وختونه د '۲۰۱۷ ويکي‌ليک سمونگر' هم بلل کېږي.", + "visualeditor-preference-tabs": "سمون ونگ‌ډول:", + "visualeditor-preference-tabs-multi-tab": "دواړه سمونگرې ريښکې راته وښاياست", + "visualeditor-preference-tabs-prefer-ve": "که شونې وي تل راته ليدنيز سمونگر راکړه", + "visualeditor-preference-tabs-prefer-wt": "تل راته سرچينې سمونگر راکړه", "visualeditor-preference-tabs-remember-last": "وروستنی سمونگر مې په ياد لره", + "visualeditor-preference-collab-label": "په گډه سمون", + "visualeditor-rebase-client-export": "بهرلېږل", + "visualeditor-rebase-client-export-start": "بهرلېږل...", + "visualeditor-rebase-client-import": "رالېږدول", + "visualeditor-rebase-client-import-name": "مخ سرليک", + "visualeditor-rebase-client-title-help": "تاسو به وکړای شئ چې له خوندي‌کولو مخکې د بدلونونو بياکتنې وکړئ", + "visualeditor-redirect-description": "$1 ته مخگرځ شوی", + "visualeditor-savedialog-keyboard-shortcut-submit": "د $1 په کېکاږلو سره خپل سمون خوندي کولای شئ.", "visualeditor-savedialog-label-publish-short": "خپرول", + "visualeditor-savedialog-label-publish-short-start": "خپرول...", "visualeditor-savedialog-label-resolve-conflict": "کړکېچ حلول", + "visualeditor-savedialog-label-resume-editing": "سمون بياپيلول", "visualeditor-savedialog-label-review": "خپل بدلونونه بياکتل", "visualeditor-savedialog-label-review-good": "د خوندي کولو چوکاټ ته ورگرځېدل", "visualeditor-savedialog-label-save-short": "خوندي کول", - "visualeditor-savedialog-review-nosummary": "د سمون لنډیز نسته", + "visualeditor-savedialog-label-save-short-start": "خوندي‌کېږي…", + "visualeditor-savedialog-review-nosummary": "د سمون لنډیز نشته", + "visualeditor-savedialog-review-visual": "ليدنيز", + "visualeditor-savedialog-review-wikitext": "ویکي‌ليک", "visualeditor-savedialog-title-conflict": "کړکېچ", + "visualeditor-savedialog-title-preview": "د خپلو بدلونونه مخکتنه", "visualeditor-savedialog-title-review": "خپل بدلونونه بياکتل", "visualeditor-savedialog-title-save": "بدلونونه مو خوندي کړئ", - "visualeditor-settings-tool": "مخ امستنې", + "visualeditor-section-body-placeholder": "نوې برخه", + "visualeditor-section-title-placeholder": "سکالو", + "visualeditor-settings-tool": "مخ اوڼنې", "visualeditor-special-characters-group-other": "اکثر کارېدونکی", - "visualeditor-version-label": "بڼه", - "visualeditor-wikitext-progress": "ويکي متن ته اړونه" + "visualeditor-templatesused-tool": "کارول شوې کينډۍ", + "visualeditor-title-error": "ناسم سرليک.", + "visualeditor-tooltip-non-breaking-space": "نه ماتېدونکی واټن", + "visualeditor-version-label": "بل‌بڼه", + "visualeditor-wikitext-progress": "ويکي متن ته اړونه", + "visualeditor-wikitext-warning": "تاسو د ليدنيز سمونگر - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|ويکي‌ليک]] کاروئ چې دلته کار نه کوي. د خپلو بدلونونو له لاسه ورکولو پرته هروخت د سرچينې سمون ته اوښتلو لپاره د بدلون تڼۍ کېکاږئ.", + "visualeditor-wikitext-warning-title": "د ويکي‌ليک نښه‌کول وموندل شول", + "visualeditor-wikitextconvert-title": "ويکي‌ليک ته يې بڼه بدلول؟", + "visualeditor-wikitextconvert-message": "تاسو د بډايه بڼې لرونکې منځپانگه لېښلې ده. ايا تاسو غواړئ دا بڼه په ويکي‌ليک بدله کړئ؟", + "visualeditor-wikitextconvert-convert": "ويکي‌ليک ته اړول" } diff --git a/i18n/ve-mw/pt-br.json b/i18n/ve-mw/pt-br.json index f52b7018db..78e58cfbc0 100644 --- a/i18n/ve-mw/pt-br.json +++ b/i18n/ve-mw/pt-br.json @@ -7,6 +7,7 @@ "Cainamarques", "Dianakc", "Duke of Wikipädia", + "EGobi", "Eduardo Addad de Oliveira", "Eduardoaddad", "Elival", @@ -74,6 +75,7 @@ "visualeditor-changedesc-mwtransclusion": "Parâmetros da predefinição mudaram", "visualeditor-desc": "Editor visual para o MediaWiki", "visualeditor-descriptionpagelink": "Project:Editor Visual", + "visualeditor-dialog-extension-abandonedit": "Tem certeza de que deseja fechar essa caixa de diálogo sem aplicar as alterações?", "visualeditor-dialog-media-alttext-checkbox": "Usar a legenda como texto alternativo", "visualeditor-dialog-media-alttext-section": "Texto alternativo", "visualeditor-dialog-media-alttext-section-help": "Você pode usar isto para fornecer uma descrição de texto para pessoas que não podem ver o item. A descrição deve ser boa o bastante para que eles possam entender a proposta e a informação dada pelo item de mídia. Isto é vital para usuários cegos e outras pessoas que usam um software de leitor de tela ou navegadores que exibem apenas texto.", @@ -87,11 +89,9 @@ "visualeditor-dialog-media-info-artist": "Carregado por $1", "visualeditor-dialog-media-info-audiofile": "Arquivo de áudio", "visualeditor-dialog-media-info-created": "Criada: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Autoria: $1", "visualeditor-dialog-media-info-moreinfo": "Mais informações", "visualeditor-dialog-media-info-readmore": "Leia mais", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Enviado: $1", "visualeditor-dialog-media-page-advanced": "Avançado", "visualeditor-dialog-media-page-general": "Geral", @@ -274,6 +274,7 @@ "visualeditor-includes-includeonly-description": "Quando o conteúdo desta página é usado por outra página, o seguinte conteúdo adicional será incluído aqui:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Saiba mais sobre a transclusão parcial]", "visualeditor-languages-tool": "Idiomas", + "visualeditor-linkcontext-uneditable": "Desculpe, mas, por enquanto, esse link só pode ser editado no modo de código-fonte.", "visualeditor-linkinspector-button-link-external": "Site externo", "visualeditor-linkinspector-button-link-internal": "Pesquisar páginas internas", "visualeditor-linkinspector-convert-link-isbn": "Converter para ligação de ISBN", @@ -282,6 +283,7 @@ "visualeditor-linkinspector-educationpopup-text": "Ligue trechos importantes de outros artigos ou até de outros sites. Isto ajudará os leitores a entender o contexto.", "visualeditor-linkinspector-educationpopup-title": "Links", "visualeditor-linkinspector-illegal-title": "Título inválido", + "visualeditor-linkinspector-invalid-blocked": "Pessoas nessa wiki decidiram bloquear os links para este site. Por favor, tente outro link.", "visualeditor-linkinspector-invalid-external": "Introduzir um URL completo, por exemplo, https://exemplo.org", "visualeditor-linknodeinspector-add-label": "Adicionar rótulo", "visualeditor-linknodeinspector-title": "Ligação simples", @@ -341,6 +343,8 @@ "visualeditor-preference-tabs-prefer-ve": "Sempre me dê o editor visual, se possível", "visualeditor-preference-tabs-prefer-wt": "Sempre me dê o editor de origem", "visualeditor-preference-tabs-remember-last": "Lembre-se do meu último editor", + "visualeditor-preference-collab-label": "Edição colaborativa", + "visualeditor-preference-collab-description": "Convide outros usuários para participar na sua sessão de edição no editor visual.", "visualeditor-rebase-client-export": "Exportar", "visualeditor-rebase-client-export-start": "Exportar...", "visualeditor-rebase-client-import": "Importar", @@ -375,7 +379,7 @@ "visualeditor-special-characters-group-other": "Usado frequentemente", "visualeditor-templatesused-tool": "Predefinições usadas", "visualeditor-title-error": "Título inválido.", - "visualeditor-toload": "O editor agora será carregado. Se você ainda vê esta mensagem após alguns segundos, por favor [$1 recarregue a página].", + "visualeditor-toload": "O editor agora será carregado. Se você ainda vê esta mensagem após alguns segundos, por favor [$1 atualize a página].", "visualeditor-tooltip-non-breaking-space": "Espaço não-separável", "visualeditor-version-label": "Versão", "visualeditor-wikitext-progress": "Convertendo código-fonte", diff --git a/i18n/ve-mw/pt.json b/i18n/ve-mw/pt.json index 22ddf99305..1b07e83a13 100644 --- a/i18n/ve-mw/pt.json +++ b/i18n/ve-mw/pt.json @@ -1,7 +1,7 @@ { "@metadata": { "authors": [ - "Amire80", + "Albertoleoncio", "Athena in Wonderland", "Cainamarques", "Diniscoelho", @@ -19,6 +19,7 @@ "Luckas", "Macofe", "Mansil alfalb", + "Mbs262", "McDutchie", "MokaAkashiyaPT", "Opraco", @@ -52,13 +53,13 @@ "visualeditor-autosave-not-recovered-title": "A recuperação de mudanças falhou", "visualeditor-autosave-recovered-text": "As suas mudanças ainda não gravadas foram recuperadas automaticamente.", "visualeditor-autosave-recovered-title": "Mudanças recuperadas", - "visualeditor-backbutton-tooltip": "Regressar", - "visualeditor-ca-createlocaldescriptionsource": "Adicionar fonte da descrição do local", - "visualeditor-ca-createsource": "Criar código-fonte", - "visualeditor-ca-editlocaldescriptionsource": "Editar a descrição local da fonte", - "visualeditor-ca-editsource": "Editar código-fonte", - "visualeditor-ca-editsource-section": "editar código-fonte", - "visualeditor-ca-editsource-section-hint": "Editar código-fonte da secção: $1", + "visualeditor-backbutton-tooltip": "Anterior", + "visualeditor-ca-createlocaldescriptionsource": "Adicionar fonte da descrição local", + "visualeditor-ca-createsource": "Criar código fonte", + "visualeditor-ca-editlocaldescriptionsource": "Editar a fonte da descrição local", + "visualeditor-ca-editsource": "Editar código fonte", + "visualeditor-ca-editsource-section": "editar código", + "visualeditor-ca-editsource-section-hint": "Editar código fonte da secção: $1", "visualeditor-categories-tool": "Categorias", "visualeditor-changedesc-mwcategory-sortkey-changed": "Chave de ordenação alterada de $1 para $2", "visualeditor-changedesc-mwcategory-sortkey-set": "Chave de ordenação definida como $1", @@ -78,15 +79,14 @@ "visualeditor-dialog-media-content-section": "Legenda", "visualeditor-dialog-media-content-section-help": "Pode utilizar esta função para mostrar uma etiqueta perto do elemento para todos os leitores. Isto é muitas vezes usado para explicar a relevância do elemento para o contexto em que ele é mostrado. A etiqueta deve ser sucinta e informativa.", "visualeditor-dialog-media-goback": "Voltar", - "visualeditor-dialog-media-info-artist": "Carregado por $1", + "visualeditor-dialog-media-info-artist": "Enviado por $1", "visualeditor-dialog-media-info-audiofile": "Ficheiro de áudio", "visualeditor-dialog-media-info-created": "Criada em: $1", "visualeditor-dialog-media-info-ellipsis": "...", "visualeditor-dialog-media-info-meta-artist": "Autor: $1", - "visualeditor-dialog-media-info-moreinfo": "Mais informações", + "visualeditor-dialog-media-info-moreinfo": "Mais informação", "visualeditor-dialog-media-info-readmore": "Ler mais", - "visualeditor-dialog-media-info-separator": "·", - "visualeditor-dialog-media-info-uploaded": "Carregamento: $1", + "visualeditor-dialog-media-info-uploaded": "Enviado: $1", "visualeditor-dialog-media-page-advanced": "Avançadas", "visualeditor-dialog-media-page-general": "Gerais", "visualeditor-dialog-media-position-checkbox": "Dispor o texto ao redor deste elemento", @@ -95,7 +95,7 @@ "visualeditor-dialog-media-position-section-help": "Pode definir o local em que o item multimédia aparece na página. Isto é utilizado para quebrar uma longa linha de imagens num lado da página.", "visualeditor-dialog-media-save": "Gravar", "visualeditor-dialog-media-search-tab-search": "Pesquisar", - "visualeditor-dialog-media-search-tab-upload": "Carregar", + "visualeditor-dialog-media-search-tab-upload": "Enviar", "visualeditor-dialog-media-size-section": "Tamanho da imagem", "visualeditor-dialog-media-size-section-help": "Pode definir o tamanho do item multimédia que aparece na página. Este deve ser quase sempre o tamanho normal, pois um tamanho personalizado pode interferir com o modelo da página e torná-la inconsistente para os leitores.", "visualeditor-dialog-media-title": "Configurações multimédia", @@ -106,14 +106,14 @@ "visualeditor-dialog-media-type-section": "Tipo de imagem", "visualeditor-dialog-media-type-section-help": "Pode definir a forma como o item multimédia aparece na página. Esta deve ser em formato miniatura para ser consistente com outras páginas em quase todos os casos.", "visualeditor-dialog-media-type-thumb": "Miniatura", - "visualeditor-dialog-media-upload": "Carregar", - "visualeditor-dialog-meta-advancedsettings-label": "Configurações avançadas", - "visualeditor-dialog-meta-advancedsettings-section": "Configurações avançadas", - "visualeditor-dialog-meta-categories-addcategory-label": "Acrescentar uma categoria a esta página", + "visualeditor-dialog-media-upload": "Enviar", + "visualeditor-dialog-meta-advancedsettings-label": "Definições avançadas", + "visualeditor-dialog-meta-advancedsettings-section": "Definições avançadas", + "visualeditor-dialog-meta-categories-addcategory-label": "Adicionar uma categoria a esta página", "visualeditor-dialog-meta-categories-category": "Categoria", "visualeditor-dialog-meta-categories-data-label": "Categorias", "visualeditor-dialog-meta-categories-defaultsort-help": "Pode redefinir o modo como esta página é ordenada na apresentação de uma categoria através da definição de um índice diferente. Isto é utilizado muitas vezes para ordenar as páginas sobre pessoas pelo seu apelido, uma vez que por definição é o primeiro a chave de ordenação.", - "visualeditor-dialog-meta-categories-defaultsort-label": "Ordenar esta página por padrão como", + "visualeditor-dialog-meta-categories-defaultsort-label": "Ordenar esta página por predefinição como", "visualeditor-dialog-meta-categories-hidden": "Esta categoria está definida para não ser mostrada nas páginas às quais é adicionada.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Categorias ocultas", "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Categorias correspondentes", @@ -127,20 +127,20 @@ "visualeditor-dialog-meta-languages-code-label": "Código de língua", "visualeditor-dialog-meta-languages-label": "Idiomas", "visualeditor-dialog-meta-languages-link-label": "Página ligada", - "visualeditor-dialog-meta-languages-name-label": "Língua", + "visualeditor-dialog-meta-languages-name-label": "Idioma", "visualeditor-dialog-meta-languages-readonlynote": "Esta é uma lista de páginas noutras línguas que estão hiperligadas a esta. Por enquanto, só pode ser editada no modo de código-fonte ou na wiki Wikidata.", "visualeditor-dialog-meta-languages-section": "Idiomas", "visualeditor-dialog-meta-settings-displaytitle": "Mostrar o título", "visualeditor-dialog-meta-settings-displaytitle-help": "Pode substituir o modo como o título desta página é apresentado através da definição de uma etiqueta diferente a ser mostrada.", "visualeditor-dialog-meta-settings-hiddencat-help": "Pode impedir que esta categoria apareça na lista de categorias das páginas. Isto é útil para as categorias que têm interesse para os editores mas não para a maioria dos leitores como, por exemplo, páginas que precisam de uma ilustração.", "visualeditor-dialog-meta-settings-hiddencat-label": "Categoria oculta", - "visualeditor-dialog-meta-settings-index-default": "Padrão", + "visualeditor-dialog-meta-settings-index-default": "Predefinição", "visualeditor-dialog-meta-settings-index-disable": "Não", "visualeditor-dialog-meta-settings-index-force": "Sim", "visualeditor-dialog-meta-settings-index-help": "Pode forçar os motores de busca a listar esta página nos seus resultados relevantes, ou forçá-los a não o fazer. Esta opção não afeta a pesquisa interna na wiki.", "visualeditor-dialog-meta-settings-index-label": "Deixar esta página ser indexada pelos motores de busca", "visualeditor-dialog-meta-settings-label": "Configurações da página", - "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Padrão", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Predefinição", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Não", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Sim", "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Pode forçar a apresentação de um separador extra além do \"$1\" nesta página, o que irá tornar mais fácil adicionar uma nova secção, ou poderá mesmo definir que não apareça de todo, caso normalmente fosse apresentado.", @@ -162,7 +162,7 @@ "visualeditor-dialog-meta-settings-toc-default": "Se necessário", "visualeditor-dialog-meta-settings-toc-disable": "Nunca", "visualeditor-dialog-meta-settings-toc-force": "Sempre", - "visualeditor-dialog-meta-settings-toc-help": "Pode forçar o aparecimento de uma tabela de conteúdo em páginas com menos do que quatro cabeçalhos ou forçar que não apareça. Por padrão, o índice é apresentado se a página tiver quatro ou mais cabeçalhos.", + "visualeditor-dialog-meta-settings-toc-help": "Pode forçar o aparecimento de uma tabela de conteúdo nas páginas com menos do que quatro cabeçalhos ou forçar que não apareça. Por predefinição, esta irá aparecer se a página tiver quatro ou mais cabeçalhos.", "visualeditor-dialog-meta-settings-toc-label": "Mostrar a tabela de conteúdo", "visualeditor-dialog-meta-templatesused-noresults": "Não foi encontrada nenhuma predefinição.", "visualeditor-dialog-meta-title": "Opções", @@ -214,7 +214,7 @@ "visualeditor-dialog-transclusion-no-template-data-description": "Esta predefinição tem [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters dados] em falta, e os parâmetros da mesma foram [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters gerados automaticamente]. Em resultado, faltam descrições tanto à predefinição como aos parâmetros. Poderá existir informação adicional na [[$1|página da predefinição]].", "visualeditor-dialog-transclusion-no-template-description": "A predefinição \"$1\" não tem ainda nenhuma descrição, mas talvez encontre alguma informação na [[$2|documentação da predefinição]].", "visualeditor-dialog-transclusion-no-template-parameters": "Esta predefinição não tem parâmetros documentados e pode ter sido concebida para uso sem nenhum.", - "visualeditor-dialog-transclusion-param-default": "Padrão: $1", + "visualeditor-dialog-transclusion-param-default": "Predefinição: $1", "visualeditor-dialog-transclusion-param-example-long": "Exemplo: $1", "visualeditor-dialog-transclusion-param-selection-aria-description": "Pressione a barra de espaços para adicionar ou remover parâmetros. Pressione a tecla Enter para adicionar um parâmetro e editar imediatamente o seu valor. Quando um parâmetro já estiver selecionado, pressione Enter para editar o respetivo valor.", "visualeditor-dialog-transclusion-param-selection-aria-label": "Parâmetros de $1", @@ -335,6 +335,8 @@ "visualeditor-preference-tabs-prefer-ve": "Usar sempre que possível o editor visual", "visualeditor-preference-tabs-prefer-wt": "Usar sempre o editor de código-fonte", "visualeditor-preference-tabs-remember-last": "Relembrar o meu último editor", + "visualeditor-preference-collab-label": "Edição colaborativa", + "visualeditor-preference-collab-description": "Convide outros utilizadores para participar na sua sessão de edição no editor visual.", "visualeditor-rebase-client-export": "Exportar", "visualeditor-rebase-client-export-start": "Exportar...", "visualeditor-rebase-client-import": "Importar", diff --git a/i18n/ve-mw/qqq.json b/i18n/ve-mw/qqq.json index 731a4999b4..3b5a2e671b 100644 --- a/i18n/ve-mw/qqq.json +++ b/i18n/ve-mw/qqq.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Aca", "Amire80", "Ans", "Arjunaraoc", @@ -28,6 +29,7 @@ "Sayak Sarkar", "Shirayuki", "Siebrand", + "Stjn", "Tacsipacsi", "Trevor Parscal", "UV", @@ -105,7 +107,7 @@ "visualeditor-dialog-media-info-meta-artist": "Label for the author information for the image in the media dialog.\n\nParameters:\n* $1 - Author name.", "visualeditor-dialog-media-info-moreinfo": "Label for the link to more information in the image data panel.\n{{Identical|More information}}", "visualeditor-dialog-media-info-readmore": "Label for the link to expand the text in the image data panel.\n{{Identical|Read more}}", - "visualeditor-dialog-media-info-separator": "Character separating information in the image info panel in the media dialog.\n{{Optional}}", + "visualeditor-dialog-media-info-separator": "{{Optional}}\nCharacter separating information in the image info panel in the media dialog.", "visualeditor-dialog-media-info-uploaded": "Label for the image upload date in the media dialog.\n\nParameters:\n* $1 - Date of last upload.\n{{Identical|Uploaded}}", "visualeditor-dialog-media-page-advanced": "Label for the advanced settings page in the media edit dialog.\n{{Identical|Advanced settings}}", "visualeditor-dialog-media-page-general": "Label for the general settings page in the media edit dialog.\n{{Identical|General settings}}", @@ -283,11 +285,12 @@ "visualeditor-includes-onlyinclude-start": "Label of the context item for an opening <onlyinclude> tag.", "visualeditor-includes-onlyinclude-end": "Label of the context item for a closing </onlyinclude> tag.", "visualeditor-includes-includeonly": "Label of the context item for a pair of <includeonly></includeonly> tags.", - "visualeditor-includes-noinclude-description": "Additional explanation for an opening ;lt&noinclude> tag.", + "visualeditor-includes-noinclude-description": "Additional explanation for an opening <noinclude> tag.", "visualeditor-includes-onlyinclude-description": "Additional explanation for an opening <onlyinclude> tag.", "visualeditor-includes-includeonly-description": "Additional explanation for a pair of <includeonly></includeonly> tags. This is followed by the content of the tags.", "visualeditor-includes-documentation": "Link to documentation displayed below each of these messages:\n* {{msg-mw|visualeditor-includes-noinclude-description}}\n* {{msg-mw|visualeditor-includes-onlyinclude-description}}\n* {{msg-mw|visualeditor-includes-includeonly-description}}", "visualeditor-languages-tool": "Tool for opening the languages links section of the meta dialog.\n{{Identical|Language}}", + "visualeditor-linkcontext-uneditable": "Message shown in the link context menu when the link target can't be edited (the 'Edit' button is not displayed).", "visualeditor-linkinspector-button-link-external": "Button label for entering an link to an external site.", "visualeditor-linkinspector-button-link-internal": "Prompt users' with assitive technologies to search an internal page", "visualeditor-linkinspector-convert-link-isbn": "Button label for converting a simple link to a ISBN magic link.", @@ -393,6 +396,7 @@ "visualeditor-loaderror-wrongmode": "Error message shown when loading the editor.\n\nParameters:\n* $1 and $2: names for editing modes (not translateable)", "visualeditor-settings-tool": "Text of tool in the toolbar the lets users set specific page settings.\n{{Identical|Page settings}}", "visualeditor-special-characters-group-other": "Label of the special character group shown if the wiki has visualeditor-quick-access-characters.json set up.", + "visualeditor-template-sandbox-subpage": "{{notranslate}}\nSub-page of template where sandbox testing is done by convention on the wiki.", "visualeditor-template-tools-definition.json": "{{notranslate}}\n{{ignored}}\n\nJSON object mapping context items to templates. See ve.ui.MWDefinedTransclusionContextItem.js.", "visualeditor-templatesused-tool": "Label of toolbar tool that shows templates used on this page.", "visualeditor-title-error": "Error displayed when a page title is invalid.", diff --git a/i18n/ve-mw/rn.json b/i18n/ve-mw/rn.json index 0528dbeecf..65ece13892 100644 --- a/i18n/ve-mw/rn.json +++ b/i18n/ve-mw/rn.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Gilbert Ndihokubwayo" ] }, diff --git a/i18n/ve-mw/ro.json b/i18n/ve-mw/ro.json index 8f8734d35a..ad3471d58b 100644 --- a/i18n/ve-mw/ro.json +++ b/i18n/ve-mw/ro.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "AlimanRuna", - "Amire80", "Andrei Stroe", "Danutz", "Firilacroco", @@ -172,6 +171,7 @@ "visualeditor-dialog-transclusion-no-template-description": "Formatul „$1” nu are încă o descriere, dar ar putea exista câteva informații pe [[$2|pagina formatului]].", "visualeditor-dialog-transclusion-no-template-parameters": "Acest format nu are niciun parametru documentat și se poate să fie făcut să funcționeze fără ele.", "visualeditor-dialog-transclusion-param-default": "Valoare implicită: $1", + "visualeditor-dialog-transclusion-param-example-long": "Exemplu: $1", "visualeditor-dialog-transclusion-param-undocumented": "(Parametru nedocumentat)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Găsire format", "visualeditor-dialog-transclusion-required-parameter": "Câmp necesar", diff --git a/i18n/ve-mw/rsk.json b/i18n/ve-mw/rsk.json index e7e683ebfa..abb113146d 100644 --- a/i18n/ve-mw/rsk.json +++ b/i18n/ve-mw/rsk.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Keresturec", "Vlad5250" ] diff --git a/i18n/ve-mw/ru.json b/i18n/ve-mw/ru.json index 9efc6ddee4..79780c71e6 100644 --- a/i18n/ve-mw/ru.json +++ b/i18n/ve-mw/ru.json @@ -33,10 +33,12 @@ "Megakott", "Merrahtar", "Meshkov.a", + "MidnightLG", "Movses", "NBS", "Niklem", "Nirovulf", + "Novichev", "Okras", "Ole Yves", "Pacha Tchernof", @@ -59,15 +61,21 @@ "Синкретик", "Туллук", "Умар", - "Ядерный Трамвай" + "Ядерный Трамвай", + "Shabe" ] }, "collabpad-doctitle": "CollabPad: $1", "collabpad-import-subtitle": "Импортировано из $1", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Редактировать данную страницу", + "tooltip-ca-ve-edit-local": "Редактировать страницу локального описания", + "tooltip-ca-ve-create": "Создать эту страницу", + "tooltip-ca-ve-create-local": "Создать страницу локального описания", "tooltip-ca-editsource": "Править исходный текст этой страницы", + "tooltip-ca-editsource-local": "Править код страницы локального описания.", "tooltip-ca-createsource": "Создать страницу в редакторе исходного текста", + "tooltip-ca-createsource-local": "Создать код страницы локального описания", "visualeditor-advancedsettings-tool": "Дополнительные настройки", "visualeditor-annotations-default-description": "Эта часть страницы является частью диапазона аннотаций.", "visualeditor-annotations-default-end": "Конец диапазона аннотаций", @@ -91,11 +99,13 @@ "visualeditor-categories-tool": "Категории", "visualeditor-changedesc-mwcategory-sortkey-changed": "Ключ сортировки изменён с $1 на $2", "visualeditor-changedesc-mwcategory-sortkey-set": "Для ключа сортировки установлено значение $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Ключ сортировки убран из $1", "visualeditor-changedesc-mwlanguagevariant": "Изменена разметка языкового варианта", "visualeditor-changedesc-mwredirect": "Цель перенаправления изменена с $1 на $2", "visualeditor-changedesc-mwtransclusion": "Параметры шаблона изменены", "visualeditor-desc": "Визуальный редактор для MediaWiki", "visualeditor-descriptionpagelink": "Project:Визуальный редактор", + "visualeditor-dialog-extension-abandonedit": "Вы уверены, что хотите закрыть этот диалог, не применяя изменения?", "visualeditor-dialog-media-alttext-checkbox": "Использовать заголовок в качестве альтернативного текста", "visualeditor-dialog-media-alttext-section": "Альтернативный текст", "visualeditor-dialog-media-alttext-section-help": "Текстовое описание, которое будет использоваться, если визуальное отображение элемента недоступно. Описание должно предоставлять цель и информацию, заключенную в элементе. Это необходимо незрячим пользователям и людям, использующим программное обеспечение для чтения с экрана или текстовые браузеры.", @@ -109,11 +119,9 @@ "visualeditor-dialog-media-info-artist": "Загружено: $1", "visualeditor-dialog-media-info-audiofile": "Аудиофайл", "visualeditor-dialog-media-info-created": "Создано: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Автор: $1", "visualeditor-dialog-media-info-moreinfo": "Подробнее", "visualeditor-dialog-media-info-readmore": "Подробнее", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Загружено: $1", "visualeditor-dialog-media-page-advanced": "Дополнительно", "visualeditor-dialog-media-page-general": "Общие", @@ -191,7 +199,7 @@ "visualeditor-dialog-meta-settings-toc-disable": "Никогда", "visualeditor-dialog-meta-settings-toc-force": "Всегда", "visualeditor-dialog-meta-settings-toc-help": "Вы можете сделать и так, что оглавление, в котором показываются все заголовки со страницы, появлялись, даже если там менее четырёх заголовков, или же заставить его не появляется вообще. По умолчанию содержание показывается, если на странице присутствует четыре и более заголовков.", - "visualeditor-dialog-meta-settings-toc-label": "Показать оглавление", + "visualeditor-dialog-meta-settings-toc-label": "Показать содержание", "visualeditor-dialog-meta-templatesused-noresults": "Шаблоны не обнаружены.", "visualeditor-dialog-meta-title": "Настройки", "visualeditor-dialog-table-collapsed": "Изначально свёрнута", @@ -211,7 +219,7 @@ "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Невозможно дважды добавить параметр \"$2\".", "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Параметр \"$2\" уже доступен для использования. Пожалуйста, проверьте параметры на боковой панели.", "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 — запрещенный символ. Удалите его, чтобы добавить параметр.", - "visualeditor-dialog-transclusion-add-param-help": "Если известно, введите имена [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters недокументированного параметра]. Обратите внимание, что только параметры, известные шаблону, будут иметь эффект. Вы можете найти информацию о существующих параметрах на [[$1|странице шаблона]].", + "visualeditor-dialog-transclusion-add-param-help": "Введите имена [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters недокументированных параметров], если вы знаете их. Обратите внимание, что будут работать только известные шаблону имена параметров. Информацию о существующих параметрах можно найти на [[$1|странице шаблона]].", "visualeditor-dialog-transclusion-add-param-placeholder": "Имя параметра", "visualeditor-dialog-transclusion-add-param-save": "Добавить", "visualeditor-dialog-transclusion-add-template": "Добавить шаблон", @@ -251,7 +259,7 @@ "visualeditor-dialog-transclusion-required-parameter": "Обязательное поле", "visualeditor-dialog-transclusion-required-parameter-description": "Это обязательное поле.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Назад", - "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Все равно продолжить", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Всё равно продолжить", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Требуемое поле отсутствует|Требуемые поля отсутствуют}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Вы уверены, что хотите продолжить без заполнения {{PLURAL:$2|поля|полей}} $1?", "visualeditor-dialog-transclusion-see-template": "Шаблоны создаются пользователями и могут не содержать полных описаний. На этой [[$2|странице шаблона]] может быть дополнительная информация.", @@ -286,17 +294,18 @@ "visualeditor-formatdropdown-format-mw-heading5": "Подзаголовок 3", "visualeditor-formatdropdown-format-mw-heading6": "Подзаголовок 4", "visualeditor-generating-wikitext-progress": "Генерация вики-текста", - "visualeditor-includes-noinclude-start": "Начало содержимого исключено из отрывков", - "visualeditor-includes-noinclude-end": "Конец содержимого исключён из отрывков", - "visualeditor-includes-onlyinclude-start": "Начало содержимого разрешено в отрывках", - "visualeditor-includes-onlyinclude-end": "Конец содержимого разрешён в отрывках", + "visualeditor-includes-noinclude-start": "Начало контента, исключённого из включений", + "visualeditor-includes-noinclude-end": "Конец контента, исключённого из включений", + "visualeditor-includes-onlyinclude-start": "Начало контента, разрешённого во включениях", + "visualeditor-includes-onlyinclude-end": "Конец контента, разрешённого во включениях", "visualeditor-includes-includeonly": "Только содержимое в отрывках", - "visualeditor-includes-noinclude-description": "Когда содержимое с этой страницы используется другой страницей, содержимое отсюда до совпадающего конечного маркера не включается. Будьте осторожны при редактировании содержимого за пределами этих маркеров, так как другие страницы могут его использовать.", - "visualeditor-includes-onlyinclude-description": "Когда содержимое с этой страницы используется другой страницей, будет включено только содержимое отсюда до соответствующего маркера конца. Будьте осторожны при редактировании содержимого за пределами этих маркеров, так как другие страницы могут его использовать.", + "visualeditor-includes-noinclude-description": "Когда содержимое этой страницы используется другими страницами, контент с этого места до совпадающего закрывающего тэга не будет включён. Будьте осторожны, редактируя контент вне этих тэгов, так как его могут использовать другие страницы.", + "visualeditor-includes-onlyinclude-description": "Когда содержимое этой страницы используется на других страницах, будет включён только контент с этого места до совпадающего закрывающего тэга. Будьте осторожны, редактируя контент внутри этих тэгов, так как его могут использовать другие страницы.", "visualeditor-includes-includeonly-description": "Когда содержание этой страницы используется на другой странице, то следующее дополнительное содержание будет внесено сюда:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Узнать больше о частичном включении]", "visualeditor-languages-tool": "Языки", - "visualeditor-linkinspector-button-link-external": "Внешний вебсайт", + "visualeditor-linkcontext-uneditable": "К сожалению, в настоящее время эта ссылка может быть изменена только в режиме правки кода.", + "visualeditor-linkinspector-button-link-external": "Внешний веб-сайт", "visualeditor-linkinspector-button-link-internal": "Поиск внутренних страниц", "visualeditor-linkinspector-convert-link-isbn": "Превратить в ISBN-ссылку", "visualeditor-linkinspector-convert-link-pmid": "Превратить в PMID-ссылку", @@ -304,6 +313,7 @@ "visualeditor-linkinspector-educationpopup-text": "Создавайте для важных слов вики-ссылки на другие статьи и сайты. Это упростит читателям понимание контекста.", "visualeditor-linkinspector-educationpopup-title": "Ссылки", "visualeditor-linkinspector-illegal-title": "Недопустимый заголовок страницы", + "visualeditor-linkinspector-invalid-blocked": "К сожалению, ссылки на этот сайт нельзя использовать на этой вики. Попробуйте другую ссылку.", "visualeditor-linkinspector-invalid-external": "Укажите URL полностью, например https://example.org", "visualeditor-linknodeinspector-add-label": "Добавить подпись", "visualeditor-linknodeinspector-title": "Простая ссылка", @@ -322,7 +332,7 @@ "visualeditor-mweditmodeve-popup-body": "В любой момент вы можете переключиться обратно в режим визуального редактирования, щёлкнув по этому значку.", "visualeditor-mweditmodeve-popup-title": "Вы переключились в редактирование исходного текста", "visualeditor-mweditmodeve-progress": "Переход к визуальному редактированию…", - "visualeditor-mweditmodeve-showagain": "Не показывать это сообщение повторно", + "visualeditor-mweditmodeve-showagain": "Не показывать это сообщение снова", "visualeditor-mweditmodeve-tool-current": "Визуальное редактирование", "visualeditor-mweditmodeve-tool-unavailable": "Визуальное редактирование недоступно", "visualeditor-mweditmodewt-popup-body": "В любое время вы можете переключиться обратно в редактирование исходного текста, щёлкнув по этому значку.", @@ -363,6 +373,8 @@ "visualeditor-preference-tabs-prefer-ve": "Всегда открывать визуальный редактор, если это возможно", "visualeditor-preference-tabs-prefer-wt": "Всегда открывать редактор исходного текста", "visualeditor-preference-tabs-remember-last": "Помнить мой последний редактор", + "visualeditor-preference-collab-label": "Совместное редактирование", + "visualeditor-preference-collab-description": "Пригласить других участников присоединиться к вашей сессии редактирования в визуальном редакторе.", "visualeditor-rebase-client-export": "Экспорт", "visualeditor-rebase-client-export-start": "Экспорт...", "visualeditor-rebase-client-import": "Импортировать", @@ -397,7 +409,7 @@ "visualeditor-special-characters-group-other": "Часто используемые", "visualeditor-templatesused-tool": "Использованные шаблоны", "visualeditor-title-error": "Ошибочное название.", - "visualeditor-toload": "Редактор сейчас загрузится. Если через несколько секунд вы будете по-прежнему видеть это сообщение, пожалуйста, [$1 перезагрузите страницу].", + "visualeditor-toload": "Редактор сейчас загрузится. Если через несколько секунд вы будете по-прежнему видеть это сообщение, [$1 обновите страницу].", "visualeditor-tooltip-non-breaking-space": "Неразрывный пробел", "visualeditor-version-label": "Версия", "visualeditor-wikitext-progress": "Преобразование вики-текста", diff --git a/i18n/ve-mw/rw.json b/i18n/ve-mw/rw.json index 84ae2bec5f..e6f36186d8 100644 --- a/i18n/ve-mw/rw.json +++ b/i18n/ve-mw/rw.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "RebecaRwanda", "RebeccaRwanda", "Rodrigue" diff --git a/i18n/ve-mw/ryu.json b/i18n/ve-mw/ryu.json index b2d9ca3db7..c1231bbc79 100644 --- a/i18n/ve-mw/ryu.json +++ b/i18n/ve-mw/ryu.json @@ -1,12 +1,13 @@ { "@metadata": { "authors": [ - "ChoiChong" + "ChoiChong", + "さきじょーぐー" ] }, "visualeditor-ca-createlocaldescriptionsource": "ローカルぬ解説ちゅくゆん", "visualeditor-ca-createsource": "ソースちゅくゆん", - "visualeditor-ca-editsource": "ソース直すん", - "visualeditor-ca-editsource-section": "ソース直すん", + "visualeditor-ca-editsource": "ソース編集すん", + "visualeditor-ca-editsource-section": "ソース編集すん", "visualeditor-descriptionpagelink": "Project:ビジュアルエディター" } diff --git a/i18n/ve-mw/sas.json b/i18n/ve-mw/sas.json new file mode 100644 index 0000000000..c3542e11b5 --- /dev/null +++ b/i18n/ve-mw/sas.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "NikolasKHF" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Romboq sumber déskripsi lokal", + "visualeditor-ca-createsource": "Piaq sumber", + "visualeditor-ca-editsource": "Kerisaq sumber", + "visualeditor-ca-editsource-section": "kerisaq sumber" +} diff --git a/i18n/ve-mw/scn.json b/i18n/ve-mw/scn.json index 0a485ad257..9365f27c7c 100644 --- a/i18n/ve-mw/scn.json +++ b/i18n/ve-mw/scn.json @@ -5,6 +5,7 @@ "Elitre", "Elitre82", "Gazeb", + "GianAntonucci", "Gloria sah", "Gmelfi", "HalanTul", @@ -15,13 +16,13 @@ "tooltip-ca-ve-edit": "Cancia sta pàggina", "tooltip-ca-ve-create": "Crea sta pàggina", "tooltip-ca-editsource": "Cancia lu codici surgenti di sta pàggina", - "tooltip-ca-createsource": "Crea lu codici surgenti di sta pàggina", + "tooltip-ca-createsource": "Crìa lu còdici di sta pàggina", "visualeditor-advancedsettings-tool": "Mpustazzioni avanzati", "visualeditor-autosave-modified-prompt-reject": "Ncigna nu canciamentu novu", "visualeditor-ca-createlocaldescriptionsource": "Agghiunci na discrizzioni lucali tràmiti surgenti", - "visualeditor-ca-createsource": "Crea surgenti", - "visualeditor-ca-editsource": "Cancia surgenti", - "visualeditor-ca-editsource-section": "cancia la surgenti", + "visualeditor-ca-createsource": "Crìa còdici", + "visualeditor-ca-editsource": "Cancia lu còdici", + "visualeditor-ca-editsource-section": "cancia lu còdici", "visualeditor-categories-tool": "Catigurìi", "visualeditor-desc": "Editor visivu pi MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", @@ -33,11 +34,11 @@ "visualeditor-dialog-media-info-created": "Criatu: $1", "visualeditor-dialog-media-info-meta-artist": "Auturi: $1", "visualeditor-dialog-media-info-moreinfo": "Chiossai nfurmazzioni", - "visualeditor-dialog-media-info-readmore": "Pi sapìrinni cchiossai", + "visualeditor-dialog-media-info-readmore": "Leggi cchiossai", "visualeditor-dialog-media-page-advanced": "Avanzati", "visualeditor-dialog-media-page-general": "Ginirali", "visualeditor-dialog-media-save": "Sarva", - "visualeditor-dialog-media-search-tab-search": "Arricerca", + "visualeditor-dialog-media-search-tab-search": "Cerca", "visualeditor-dialog-media-search-tab-upload": "Càrrica", "visualeditor-dialog-media-title": "Mpustazzioni dû file multimidiali", "visualeditor-dialog-media-type-section": "Tipu di mmàggini", @@ -130,14 +131,14 @@ "visualeditor-mwgallerydialog-search-button-label": "Agghiunci na NOVA mmàggini", "visualeditor-mwgallerydialog-show-filename-field-label": "Ammustra li nomi dî file", "visualeditor-mwgallerydialog-styles-field-label": "Stili CSS", - "visualeditor-mwgallerydialog-widths-field-label": "Larghizza dâ mmàggini", + "visualeditor-mwgallerydialog-widths-field-label": "Larichizza dâ mmàggini", "visualeditor-mwsignature-tool": "La tò firma", "visualeditor-rebase-client-import-name": "Tìtulu dâ pàggina", - "visualeditor-savedialog-identify-anon": "Vuoi sarbari sta pàggina comu utilizzaturi anonimu? Lu tò nnirirzzu IP veni arriggistratu ntê crunuluggìa dâ pàggina.", + "visualeditor-savedialog-identify-anon": "Nun sì cchiù cunnessu. Si cuntìnui, riggistramu lu to ndrizzu IP nnâ cronuluggìa dî canci a sta pàggina.", "visualeditor-savedialog-identify-user": "Trasisti comu [[User:$1|$1]]. Si cuntinui, lu tò canciamentu veni assuciatu a st’utenza.", "visualeditor-savedialog-label-resolve-conflict": "Risorvi nu cunflittu", "visualeditor-savedialog-label-review": "Ritalìa li to canciamenti", - "visualeditor-savedialog-label-review-good": "Arritorna ô modulu di sarbataggiu", + "visualeditor-savedialog-label-review-good": "Torna ô mòdulu di sarbamentu", "visualeditor-savedialog-label-save-short": "Sarva", "visualeditor-savedialog-label-save-short-start": "Sarva...", "visualeditor-savedialog-review-visual": "Visuali", diff --git a/i18n/ve-mw/sco.json b/i18n/ve-mw/sco.json index 1dff80b909..baa11385fc 100644 --- a/i18n/ve-mw/sco.json +++ b/i18n/ve-mw/sco.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "AmaryllisGardener", - "Amire80", "CiphriusKane", "Foxj", "John Reid", @@ -17,8 +16,8 @@ "visualeditor-ca-createlocaldescriptionsource": "Eik local descreeption soorce", "visualeditor-ca-createsource": "Mak soorce", "visualeditor-ca-editlocaldescriptionsource": "Eedit the local descreeption soorce", - "visualeditor-ca-editsource": "Eedit soorce", - "visualeditor-ca-editsource-section": "eedit soorce", + "visualeditor-ca-editsource": "Edit soorce", + "visualeditor-ca-editsource-section": "edit soorce", "visualeditor-categories-tool": "Categeries", "visualeditor-desc": "Veesual eediter fer MediaWiki", "visualeditor-descriptionpagelink": "Project:VeesualEeditor", diff --git a/i18n/ve-mw/sd.json b/i18n/ve-mw/sd.json index 413bd75e59..1da2f925cd 100644 --- a/i18n/ve-mw/sd.json +++ b/i18n/ve-mw/sd.json @@ -8,15 +8,26 @@ "Tweety" ] }, + "collabpad-doctitle": "ڪولاب پيڊ: $1", "collabpad-import-subtitle": "$1 کان درآمديل", + "collabpad": "ڪولاب پيڊ", "tooltip-ca-ve-edit": "ھيءُ صفحو سنواريو", + "tooltip-ca-ve-edit-local": "مقامي وضاحت واري صفحي کي سنواريو", + "tooltip-ca-ve-create": "ھي صفحو سرجيو", + "tooltip-ca-ve-create-local": "مقامي وضاحت وارو صفحو سرجيو", "tooltip-ca-editsource": "هن صفحي جو مصدر ڪوڊ سنواريو", + "tooltip-ca-editsource-local": "مقامي وضاحت واري صفحي جي سورس ڪوڊ کي سنواريو", "tooltip-ca-createsource": "هن صفحي جو ذريعو ڪوڊ سرجيو", + "tooltip-ca-createsource-local": "مقامي وضاحت واري صفحي جو سورس ڪوڊ سرجيو", "visualeditor-advancedsettings-tool": "اعليٰ ترتيبون", + "visualeditor-annotations-default-description": "صفحي جو هي حصو هڪ تشريح جي حد جو حصو آهي.", + "visualeditor-annotations-default-end": "تشريح ڪيل حد جو اختتام", + "visualeditor-annotations-default-start": "تشريح ٿيل حد جي شروعات", "visualeditor-autosave-modified-prompt-accept": "سنوارڻ جاري رکو", "visualeditor-autosave-modified-prompt-reject": "نئين سنوار شروع ڪريو", "visualeditor-autosave-modified-prompt-title": "{{GENDER:|پنھنجي}} سنوار جاري رکو؟", "visualeditor-autosave-not-recovered-text": "توھان جون اڻسانڍيل تبديليون بحال نٿيون ڪري سگهجن.", + "visualeditor-autosave-not-recovered-title": "تبديلي جي بحالي ناڪام ٿي", "visualeditor-autosave-recovered-text": "توھان جون اڻسانڍيل تبديليون پپاڻمرادو بحال ڪيون ويون آھن.", "visualeditor-autosave-recovered-title": "تبديليون بحال ڪيون ويون", "visualeditor-backbutton-tooltip": "واپس وڃو", @@ -25,7 +36,10 @@ "visualeditor-ca-editlocaldescriptionsource": "مقامي تشريحي ذريعو سنواريو", "visualeditor-ca-editsource": "ذريعو سنواريو", "visualeditor-ca-editsource-section": "ذريعو سنواريو", + "visualeditor-ca-editsource-section-hint": "سيڪشن جو سورس ڪوڊ سنواريو: $1", "visualeditor-categories-tool": "زمرا", + "visualeditor-changedesc-mwcategory-sortkey-changed": "ترتيب واري ڪي $1 کان $2 ۾ تبديل ٿي وئي", + "visualeditor-changedesc-mwcategory-sortkey-set": "ترتيب واري ڪي $1 تي سيٽ ڪئي وئي آهي", "visualeditor-changedesc-mwredirect": "چورڻو ھدف کي $1 کان $2 ڏانھن بدلايو ويو", "visualeditor-changedesc-mwtransclusion": "سانچي جا نيمپيما بدلايا ويا", "visualeditor-desc": "ميڊياوڪي لاءِ وزيوئل سنوارگاھ", @@ -40,11 +54,9 @@ "visualeditor-dialog-media-info-artist": "$1 پاران چاڙهيل", "visualeditor-dialog-media-info-audiofile": "آوازي فائيل", "visualeditor-dialog-media-info-created": "سرجيل: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "مصنف: $1", "visualeditor-dialog-media-info-moreinfo": "وڌيڪ معلومات", "visualeditor-dialog-media-info-readmore": "وڌيڪ پڙهو", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "چاڙھيل:$1", "visualeditor-dialog-media-page-advanced": "متقدم", "visualeditor-dialog-media-page-general": "عام", @@ -119,6 +131,7 @@ "visualeditor-dialog-transclusion-collapse-options": "چارا لڪايو", "visualeditor-dialog-transclusion-confirmation-discard": "سنوارون ڦٽو ڪريو", "visualeditor-dialog-transclusion-contextitem-description": "$1: کان جوڙيل", + "visualeditor-dialog-transclusion-contextitem-loading": "لاهيندي...", "visualeditor-dialog-transclusion-expand-options": "چارا ڏيکاريو", "visualeditor-dialog-transclusion-filter-no-match": "ڪي بہ ميل نہ لڌا", "visualeditor-dialog-transclusion-filter-placeholder": "جگھ لھو", diff --git a/i18n/ve-mw/se.json b/i18n/ve-mw/se.json index 323545073d..53c6c7dd08 100644 --- a/i18n/ve-mw/se.json +++ b/i18n/ve-mw/se.json @@ -2,6 +2,7 @@ "@metadata": { "authors": [ "Ante75", + "Jon Harald Søby", "Jon Harald Søby (WMNO)", "Kimberli Mäkäräinen (WMNO)", "Lea-Christine Sara", @@ -64,11 +65,9 @@ "visualeditor-dialog-media-info-artist": "Vurken: $1", "visualeditor-dialog-media-info-audiofile": "Jietnafiila", "visualeditor-dialog-media-info-created": "Ráhkaduvvon: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Ráhkadeaddji: $1", "visualeditor-dialog-media-info-moreinfo": "Lassedieđut", "visualeditor-dialog-media-info-readmore": "Loga eambbo", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Vurken: $1", "visualeditor-dialog-media-page-advanced": "Lasseásahusat", "visualeditor-dialog-media-page-general": "Obbalaš", @@ -123,7 +122,7 @@ "visualeditor-dialog-meta-settings-index-help": "Sáhtát sihtat ohcanmutuvrra indekseret dán siiddu, dahje sihtat nu ahte ii daga dan. Dát válljejupmi ii čuoza siskkáldasohcamiidda neahttabáikkis.", "visualeditor-dialog-meta-settings-index-label": "Divtte ohcanmohtoriid indekseret siiddu", "visualeditor-dialog-meta-settings-label": "Siidoásahusat", - "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Álo", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Dábálaš", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Ále čájet", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Čájet", "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Sáhtát bágget ahte čájehuvvo liige leavga «$1» bálddas dán siiddus vai lasihuvvo ođđa teakstabihttá, dahje bágget čiehkat dan dalle go dat dábálaččat láve lea oidnosis.", @@ -223,7 +222,7 @@ "visualeditor-dialogbutton-media-tooltip": "Govat ja media", "visualeditor-dialogbutton-template-tooltip": "Málle", "visualeditor-editconflict": "Du rievdadusat eai sáhttán vurkejuvvot rievdadansoahpatmeahttunvuođa dihte. Háliidatgo {{GENDER:|don}} čoavdit soahpatmeahttunvuođa manuálalaččat?", - "visualeditor-editingtabdialog-body": "{{SITENAME}} muitá dál guđe editora don oiddát. Don sáhtát lonuhit rievdadanmodusa dan botta go rievdadat, ja sáhtát maŋŋelaš rievdadit iežat heivehusaid.", + "visualeditor-editingtabdialog-body": "{{SITENAME}} muitá dál guđe editora don oiddát. Don sáhtát lonuhit rievdadanmodusa dan botta go rievdadat, ja sáhtát maŋŋelaš rievdadit iežat ásahusaid.", "visualeditor-editingtabdialog-ok": "Ane seammá rievdadanprográmma maid atnet iežat maŋemus rievdadeamis", "visualeditor-editingtabdialog-title": "Rievdadanleavggat", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|almmuhus|almmuhusa}}", @@ -306,7 +305,7 @@ "visualeditor-mwgallerydialog-styles-input-placeholder": "CSS-njuolggadusat, earuhuvvon beallečuoggáin", "visualeditor-mwgallerydialog-title": "Galleriija", "visualeditor-mwgallerydialog-widths-field-label": "Gova govdodat", - "visualeditor-mwgallerydialog-widths-input-placeholder": "Dábálaš allodat: $1 px", + "visualeditor-mwgallerydialog-widths-input-placeholder": "Dábálaš govdodat: $1 px", "visualeditor-mwpredialog-convert": "Suova teakstaformaterema", "visualeditor-mwpredialog-title": "Ovdagihtiiformaterejuvvon ráinnas teaksta", "visualeditor-mwsignature-tool": "Du vuolláičála", diff --git a/i18n/ve-mw/sh-latn.json b/i18n/ve-mw/sh-latn.json index 715a12359e..1426c3b685 100644 --- a/i18n/ve-mw/sh-latn.json +++ b/i18n/ve-mw/sh-latn.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Aca", "BadDog", "Conquistador", "Matěj Suchánek", @@ -15,11 +16,12 @@ "Zoranzoki21" ] }, - "collabpad-doctitle": "Suradni pad: $1", + "collabpad-doctitle": "CollabPad: $1", "collabpad-import-subtitle": "Uvezeno iz stranice $1", "tooltip-ca-ve-edit": "Uredite ovu stranicu", + "tooltip-ca-ve-create": "Izradite ovu stranicu", "tooltip-ca-editsource": "Uredite izvorni kod ove stranice", - "tooltip-ca-createsource": "Stvorite izvorni kod ove stranice", + "tooltip-ca-createsource": "Izradite izvorni kod ove stranice", "visualeditor-advancedsettings-tool": "Napredne postavke", "visualeditor-autosave-modified-prompt-accept": "Nastavi uređivanje", "visualeditor-autosave-modified-prompt-message": "Ova je stranica izmijenjena od vaše poslednje posjete. {{GENDER:|Želite}} li nastaviti {{GENDER:|sa}} uređivanjem stare verzije, ili započeti novo uređivanje najnovije verzije?", @@ -31,24 +33,24 @@ "visualeditor-autosave-recovered-title": "Izmjene oporavljene", "visualeditor-backbutton-tooltip": "Idi nazad", "visualeditor-ca-createlocaldescriptionsource": "Dodaj lokalni opis (u kodu)", - "visualeditor-ca-createsource": "Napravi kod", + "visualeditor-ca-createsource": "Izradi kod", "visualeditor-ca-editlocaldescriptionsource": "Uredi lokalni opis (izvorno)", "visualeditor-ca-editsource": "Uredi kod", "visualeditor-ca-editsource-section": "uredi kod", "visualeditor-categories-tool": "Kategorije", "visualeditor-changedesc-mwlanguagevariant": "Označavanje varijanta jezika je izmijenjeno", - "visualeditor-changedesc-mwredirect": "Ciljna poveznica promijenjena iz $1 u $2", - "visualeditor-changedesc-mwtransclusion": "Parametri predloška promijenjeni su", + "visualeditor-changedesc-mwredirect": "Odredište preusmjerenja promijenjeno sa $1 na $2", + "visualeditor-changedesc-mwtransclusion": "Promijenjeni parametri šablona", "visualeditor-desc": "Vizualni editor za MediaWiki", "visualeditor-descriptionpagelink": "Project:Vizualni uređivač", "visualeditor-dialog-media-alttext-section": "Alternativni tekst", - "visualeditor-dialog-media-alttext-section-help": "Tekstualni opis za slijepe osobe koji bi trebao biti dovoljno dobar da bi se razumjeli cilj i informacije koje daje datoteka. Posebno je bitan za one koji koriste softver za čitanje ekrana ili preglednike koji koriste isključivo tekst.", + "visualeditor-dialog-media-alttext-section-help": "Unesite opis datoteke za osobe koje je ne mogu vidjeti. Opis treba biti dovoljan za razumijevanje svrhe datoteke i informacija koje ona pruža. Alternativni tekst posebno je važan za osobe koje koriste softver za čitanje ekrana ili preglednike koji prikazuju samo tekst.", "visualeditor-dialog-media-change-image": "Promijeni sliku", "visualeditor-dialog-media-choose-image": "Koristi ovu sliku", "visualeditor-dialog-media-content-description-link": "(stranica s opisom)", "visualeditor-dialog-media-content-filename": "Ime datoteke", - "visualeditor-dialog-media-content-section": "Oznaka", - "visualeditor-dialog-media-content-section-help": "Ovo možete koristiti koja oznaku koja se pokazuje kraj stavke za sve čitatelje. To se često koristi kako bi objasnilo zašto je stavka relevantna za kontekst u kome se prikazuje. Trebala bi biti sažeta i informativna.", + "visualeditor-dialog-media-content-section": "Opis", + "visualeditor-dialog-media-content-section-help": "Unesite opis datoteke koji će biti prikazan svima.\nOpis objašnjava zašto je datoteka relevantna u datom kontekstu. Treba biti sažet i informativan.", "visualeditor-dialog-media-goback": "Nazad", "visualeditor-dialog-media-info-artist": "{{GENDER:$1|Postavio|Postavila}} $1", "visualeditor-dialog-media-info-audiofile": "Audio datoteka", @@ -59,16 +61,16 @@ "visualeditor-dialog-media-info-uploaded": "Postavljeno: $1", "visualeditor-dialog-media-page-advanced": "Napredno", "visualeditor-dialog-media-page-general": "Opšte", - "visualeditor-dialog-media-position-checkbox": "Omotaj tekst oko objekta", - "visualeditor-dialog-media-position-checkbox-help": "Možete postaviti ovu medijsku stavku da se pojavi unutar teksta umjesto da pluta. To bi trebali činiti rijetko, jer bi inače razbila lom teksta ako odznačite ovu kutijicu.", + "visualeditor-dialog-media-position-checkbox": "Omotaj tekst oko datoteke", + "visualeditor-dialog-media-position-checkbox-help": "Možete postaviti da se datoteka prikazuje unutar teksta umjesto da bude poravnata sa strane. To biste rijetko trebali činiti jer isključivanje opcije narušava tok teksta.", "visualeditor-dialog-media-position-section": "Pozicija", - "visualeditor-dialog-media-position-section-help": "Možete postaviti gdje će se ova medijska stavka pojaviti na stranici. To se ponekad koristi kako bi razlomila duge linije slika na jednoj strani stranice.", - "visualeditor-dialog-media-save": "Spasi", - "visualeditor-dialog-media-search-tab-search": "Traži", - "visualeditor-dialog-media-search-tab-upload": "Pošalji", + "visualeditor-dialog-media-position-section-help": "Odredite poziciju datoteke na stranici. Koristite ovu opciju da biste prekinuli duge nizove slika na jednoj strani stranice.", + "visualeditor-dialog-media-save": "Sačuvaj", + "visualeditor-dialog-media-search-tab-search": "Pretraga", + "visualeditor-dialog-media-search-tab-upload": "Postavljanje", "visualeditor-dialog-media-size-section": "Veličina slike", "visualeditor-dialog-media-size-section-help": "Možete postaviti kako će medijska stavka izgledati veliko na stranici. Ovo će skoro uvijek biti normalna veličina, jer će prilagođena veličina uticati na izgled stranice te je učiniti nekonzistentnom.", - "visualeditor-dialog-media-title": "Postavke medijskih datoteka", + "visualeditor-dialog-media-title": "Upravljanje datotekama", "visualeditor-dialog-media-type-border": "Okvir", "visualeditor-dialog-media-type-frame": "Okvir", "visualeditor-dialog-media-type-frameless": "Bez okvira", @@ -76,7 +78,7 @@ "visualeditor-dialog-media-type-section": "Vrsta slike", "visualeditor-dialog-media-type-section-help": "Možete postaviti kako se medijska stavka pojavljuje na stranici. To bi trebao biti format sličice kontzsistentan sa drugim stranicama u skoro svim slućajevima.", "visualeditor-dialog-media-type-thumb": "Minijatura", - "visualeditor-dialog-media-upload": "Pošalji", + "visualeditor-dialog-media-upload": "Postavi", "visualeditor-dialog-meta-advancedsettings-label": "Napredne postavke", "visualeditor-dialog-meta-advancedsettings-section": "Napredne postavke", "visualeditor-dialog-meta-categories-addcategory-label": "Dodaj kategoriju ovoj stranici", @@ -98,7 +100,7 @@ "visualeditor-dialog-meta-languages-label": "Jezici", "visualeditor-dialog-meta-languages-link-label": "Povezana stranica", "visualeditor-dialog-meta-languages-name-label": "Jezik", - "visualeditor-dialog-meta-languages-readonlynote": "Ovo je spisak stranica na drugim jezicima koje su povezane sa ovom. Zasad se može uređivati u izvornom modu ili na Wikipodacima.", + "visualeditor-dialog-meta-languages-readonlynote": "Ovo je lista stranica na drugim jezicima koje su povezane sa ovom. Zasad se može uređivati u izvornom modu ili na Wikipodacima.", "visualeditor-dialog-meta-languages-section": "Jezici", "visualeditor-dialog-meta-settings-displaytitle": "Naslov za prikaz", "visualeditor-dialog-meta-settings-displaytitle-help": "Možete postaviti prikaz drukčijeg naslova stranice od samog naziva stranice.", @@ -137,80 +139,80 @@ "visualeditor-dialog-meta-templatesused-noresults": "Šabloni nisu pronađeni.", "visualeditor-dialog-meta-title": "Opcije", "visualeditor-dialog-table-collapsed": "Prvobitno sklopljena", - "visualeditor-dialog-table-collapsible": "Skupljivo", - "visualeditor-dialog-table-sortable": "Mogućnost sortiranja", - "visualeditor-dialog-table-wikitable": "Stilizirano (wikitablica)", + "visualeditor-dialog-table-collapsible": "Sklopiva", + "visualeditor-dialog-table-sortable": "Sortiranje", + "visualeditor-dialog-table-wikitable": "Stilizirana (wikitabela)", "visualeditor-dialog-template-title": "Šablon", "visualeditor-dialog-transclusion-action-save": "Snimi", - "visualeditor-dialog-transclusion-template-title-nonexistent": "Ne postoji ovaj predložak.", - "visualeditor-dialog-transclusion-template-title-modifier": "Dokumentacija predloška i [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter imena parametara] (ako postoje) nisu dostupni kad predložak uređuje se s ugnježđenom sintaksom ili izmijeniteljima ponašanja, poput [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst].", - "visualeditor-dialog-transclusion-template-widget-aria": "Da biste označili predložak pritisnite razmaknicu.", - "visualeditor-dialog-transclusion-template-widget-aria-selected": "Da biste izbrisali predložak, njegove parametre i njihove vrijednosti pritisnite Ctrl+Del. Da biste pomaknuli predložak gore ili dolje pritisnite Ctrl+Shift+strelice.", - "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Da biste izbrisali predložak, njegove parametre i njihove vrijednosti pritisnite Ctrl+Del.", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Ovaj šablon ne postoji.", + "visualeditor-dialog-transclusion-template-title-modifier": "Dokumentacija šablona i [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter imena parametara] (ako postoje) nisu dostupni kad se šablon uređuje s ugnježđenom sintaksom ili izmijeniteljima ponašanja, poput [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst].", + "visualeditor-dialog-transclusion-template-widget-aria": "Pritisnite razmak da biste izabrali šablon.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Pritisnite Ctrl+Del da biste izbrisali šablon, njegove parametre i njihove vrijednosti. Pritisnite Ctrl+Shift+strelice da biste pomaknuli šablon nagore ili nadolje.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Pritisnite Ctrl+Del da biste izbrisali šablon, njegove parametre i njihove vrijednosti.", "visualeditor-dialog-transclusion-add-wikitext": "Dodaj wikitekst", - "visualeditor-dialog-transclusion-add-param-error-alias": "Parametar \"$1\" već je dodan kao \"$2\". Molimo provjerite mogućnosti u bočnom izborniku. Ovo se događa jer su upotrijebljene [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases istoznačnice] ili [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label oznake].", - "visualeditor-dialog-transclusion-add-param-error-deprecated": "Parametar \"$1\" nije moguće dodati jer je označen [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated zastarjelim].", - "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Parametar \"$2\" ne mogu dva puta dodati.", - "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Prametar \"$2\" već je spreman za uporabu. Molimo provjerite mogućnosti na bočnoj traci.", - "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 je zabranjen znak. Molimo uklonite ga kako biste mogli dodati parametar.", + "visualeditor-dialog-transclusion-add-param-error-alias": "Parametar \"$1\" već je dodan kao \"$2\". Provjerite mogućnosti u bočnom izborniku. Ovo se događa jer su upotrijebljene [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases istoznačnice] ili [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label oznake].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "Nije moguće dodati parametar \"$1\" jer je označen [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated zastarjelim].", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Nije moguće dodati parametar \"$2\" dvaput.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Prametar \"$2\" već je spreman za uporabu. Provjerite mogućnosti na bočnoj traci.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 je zabranjen znak. Uklonite ga kako biste mogli dodati parametar.", "visualeditor-dialog-transclusion-add-param-placeholder": "Naziv parametra", "visualeditor-dialog-transclusion-add-param-save": "Dodaj", - "visualeditor-dialog-transclusion-add-template": "Dodaj predložak", + "visualeditor-dialog-transclusion-add-template": "Dodaj šablon", "visualeditor-dialog-transclusion-add-template-save": "Dodaj", "visualeditor-dialog-transclusion-add-undocumented-param": "Dodaj nedokumentirani parametar", "visualeditor-dialog-transclusion-back-confirmation-prompt": "Vratiti se na pretragu? Napravljene promjene bit će izgubljene i to se ne može poništiti.", - "visualeditor-dialog-transclusion-close-confirmation-prompt": "Zatvoriti uređivač predložaka? Napravljene promjene bit će izgubljene i to se ne može poništiti.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Zatvoriti uređivač šablona? Vaše izmjene nepovratno će biti izgubljene.", "visualeditor-dialog-transclusion-collapse-options": "Sakrij opcije", "visualeditor-dialog-transclusion-confirmation-discard": "Odbaci uređivanja", - "visualeditor-dialog-transclusion-confirmation-reject": "Nastavi s uređivanjem", + "visualeditor-dialog-transclusion-confirmation-reject": "Nastavi uređivanje", "visualeditor-dialog-transclusion-contextitem-description": "Stvoreno od: $1", "visualeditor-dialog-transclusion-contextitem-loading": "Učitavanje...", "visualeditor-dialog-transclusion-expand-options": "Pokaži opcije", "visualeditor-dialog-transclusion-filter-hide-unused": "Sakrij nekorištene", "visualeditor-dialog-transclusion-filter-no-match": "Nisu pronađene podudarnosti", - "visualeditor-dialog-transclusion-filter-placeholder": "Polje za pretragu", + "visualeditor-dialog-transclusion-filter-placeholder": "Pronađite parametar", "visualeditor-dialog-transclusion-filter-show-all": "Prikaži sve", - "visualeditor-dialog-transclusion-filter-title": "Parametarska pretraga za $1", - "visualeditor-dialog-transclusion-help-title": "Podrška za uređivanje predložaka", - "visualeditor-dialog-transclusion-help-message": "Predlošci omogućavaju oblikovanje sadržaja. Ovaj uređivač s lijeve strane pokazuje koje mogućnosti nudi predložak, a s desne se mogu postaviti vrijednosti.", - "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Pomoć za uređivanje predložaka]", + "visualeditor-dialog-transclusion-filter-title": "Pretražite parametre šablona $1", + "visualeditor-dialog-transclusion-help-title": "Podrška za uređivanje šablona", + "visualeditor-dialog-transclusion-help-message": "Šabloni pružaju formatiranje sadržaja. Ovaj uređivač s lijeve strane prikazuje koje mogućnosti nudi šablon, a s desne se mogu postaviti vrijednosti.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Pomoć za uređivanje šablona]", "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Tipkovnički prečaci]", "visualeditor-dialog-transclusion-deprecated-parameter": "Polje koje se više ne koristi", "visualeditor-dialog-transclusion-deprecated-parameter-description": "Polje se više ne koristi. $1", "visualeditor-dialog-transclusion-loading": "Učitavanje...", "visualeditor-dialog-transclusion-no-template-description": "Šablon \"$1\" još uvijek nema opis, ali je moguće da postoje neke informacije na [[$2|stranici šablona]].", - "visualeditor-dialog-transclusion-no-template-parameters": "Ovaj predložak nema dokumentirane parametre i može biti namijenjen za uporabu bez predmeta.", + "visualeditor-dialog-transclusion-no-template-parameters": "Ovaj šablon nema dokumentirane parametre i možda je predviđeno da se koristi bez njih.", "visualeditor-dialog-transclusion-param-default": "Predodređeno: $1", "visualeditor-dialog-transclusion-param-example-long": "Primjer: $1", - "visualeditor-dialog-transclusion-param-selection-aria-description": "Pritisnite razmaknicu za dodavanje ili uklanjanje parametara. Pritisnite Enter da biste dodali parametar i odmah uredili njegovu vrijednost. Kada je parametar već odabran, pritisnite Enter za uređivanje vrijednosti.", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Pritisnite razmaknicu za dodavanje ili uklanjanje parametara. Pritisnite Enter da biste dodali parametar i odmah uredili njegovu vrijednost. Kada je parametar već izabran, pritisnite Enter za uređivanje vrijednosti.", "visualeditor-dialog-transclusion-param-selection-aria-label": "Parametri u $1", "visualeditor-dialog-transclusion-param-undocumented": "(Nedokumentirani parametar)", - "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Traži predložak", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Pretražite šablone", "visualeditor-dialog-transclusion-required-parameter": "Obavezno polje", "visualeditor-dialog-transclusion-required-parameter-description": "Polje je obavezno.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Idi nazad", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Ipak nastavi", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Nedostaje obavezno polje|Nedostaju obavezna polja}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Jeste li sigurni da želite nastaviti bez ispunjavanja $1 {{PLURAL:$2|polje|polja}}?", - "visualeditor-dialog-transclusion-see-template": "Predloške generiraju korisnici i možda nemaju potpune opise. Možda postoje dodatne informacije na ovoj [[$2|stranici predloška]].", - "visualeditor-dialog-transclusion-title-insert-template": "Umetni predložak", + "visualeditor-dialog-transclusion-see-template": "Šablone stvaraju korisnici, pa je moguće da nedostaju potpuni opisi pojedinih parametara. Možda ima dodatnih informacija na [[$2|stranici šablona]].", + "visualeditor-dialog-transclusion-title-insert-template": "Umetanje šablona", "visualeditor-dialog-transclusion-title-insert-known-template": "Umetni: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Uredi: $1", - "visualeditor-dialog-transclusion-title-edit-transclusion": "Sadržaj predložaka", - "visualeditor-dialog-transclusion-template-search": "Pretraga predložaka", - "visualeditor-dialog-transclusion-template-search-help": "Pronađite predložak koji želite umetnuti pretragom ključne riječi. Predlošci koji imaju opise vjerojatnije će dobro funkcionirati s vizualnim uređivačem.", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Sadržaj šablona", + "visualeditor-dialog-transclusion-template-search": "Pretraga šablona", + "visualeditor-dialog-transclusion-template-search-help": "Pronađite šablon za umetanje upisivanjem ključnih riječi. Šabloni koji imaju opise vjerovatno će bolje raditi s vizualnim uređivačem.", "visualeditor-dialog-transclusion-wikitext": "Wikitekst", - "visualeditor-dialog-transclusion-wikitext-widget-aria": "Pritisnite razmaknicu za odabir elementa wikiteksta. Pritisnite Pritisnite Enter za odabir i uređivanje wikiteksta.", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Pritisnite razmaknicu za izbor elementa wikiteksta. Pritisnite Pritisnite Enter za izbor i uređivanje wikiteksta.", "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Pritisnite Ctrl+Del za brisanje elementa wikiteksta.", - "visualeditor-dialogbutton-media-tooltip": "Slike, snimci i dr.", + "visualeditor-dialogbutton-media-tooltip": "Datoteka", "visualeditor-dialogbutton-template-tooltip": "Šablon", "visualeditor-editconflict": "Vaše izmjene se nisu mogle sačuvati zbog sukoba uređivanja. Da li bi ste sukob {{GENDER:|mogli}} razriješiti ručno?", "visualeditor-editingtabdialog-body": "{{SITENAME}} sada pamti koji uređivać (editor) preferirate. Možete promijeniti način dok uređujete, a svoj preferirani način možete promijeniti u postavkama.", - "visualeditor-editingtabdialog-ok": "Koristi uređivač (editor) koji sam koristio/la prilikom posljednjeg uređivanja.", + "visualeditor-editingtabdialog-ok": "Koristi uređivač od prošlog puta", "visualeditor-editingtabdialog-title": "Kartice za uređivanje", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|obavijest|obavijesti}}", "visualeditor-editnotices-tooltip": "Uredi obavijesti", - "visualeditor-editsummary": "Opišite Vaše izmjene", + "visualeditor-editsummary": "Opišite svoje izmjene", "visualeditor-editsummary-characters-remaining": "Broj preostalih znakova", "visualeditor-educationpopup-dismiss": "Razumijem", "visualeditor-expandable-less": "Manje", @@ -237,7 +239,7 @@ "visualeditor-linkinspector-educationpopup-text": "Povežite važne riječi s drugim člancima ili čak web-stranicama. Ovo pomaže čitaocima da razumiju u kojem se kontekstu koristi termin kojeg povezujete.", "visualeditor-linkinspector-educationpopup-title": "Veze", "visualeditor-linkinspector-illegal-title": "Neispravan naslov stranice", - "visualeditor-linkinspector-invalid-external": "Upišite cijeli URL; npr. https://example.org", + "visualeditor-linkinspector-invalid-external": "Unesite cijeli URL, npr. https://example.org", "visualeditor-linknodeinspector-add-label": "Dodaj oznaku", "visualeditor-linknodeinspector-title": "Jednostavni link", "visualeditor-magiclinknodeinspector-convert-link": "Pretvori u jednostavan link", @@ -248,14 +250,14 @@ "visualeditor-media-title-image": "Slika", "visualeditor-media-title-video": "Video", "visualeditor-meta-tool": "Opcije", - "visualeditor-mweditmode-tooltip": "Zamijeni uređivač", + "visualeditor-mweditmode-tooltip": "Promijenite uređivač", "visualeditor-mweditmodesource-progress": "Prebacivanje na uređivanje kôda...", - "visualeditor-mweditmodesource-tool-current": "Uređivanje kôda", - "visualeditor-mweditmodesource-tool-unavailable": "Uređivanje kôda ovdje nije moguće", - "visualeditor-mweditmodeve-popup-body": "Možete se u svako vrijeme vratiti vizualnom uređivanju kliknuvši ovu ikonu.", - "visualeditor-mweditmodeve-popup-title": "Prebacili ste se na izvorno uređivanje", + "visualeditor-mweditmodesource-tool-current": "Uređivanje koda", + "visualeditor-mweditmodesource-tool-unavailable": "Uređivanje izvornog koda ovdje nije dostupno", + "visualeditor-mweditmodeve-popup-body": "U bilo kojem trenutku možete se vratiti na vizualno uređivanje klikom na ovu ikonu.", + "visualeditor-mweditmodeve-popup-title": "Prebacili ste se na uređivanje koda", "visualeditor-mweditmodeve-progress": "Prebacivanje na vizualno uređivanje…", - "visualeditor-mweditmodeve-showagain": "Nemoj ponovno pokazivati ovu poruku", + "visualeditor-mweditmodeve-showagain": "Ne prikazuj ponovo ovu poruku", "visualeditor-mweditmodeve-tool-current": "Vizualno uređivanje", "visualeditor-mweditmodeve-tool-unavailable": "Vizualno uređivanje ovdje nije dostupno", "visualeditor-mweditmodewt-popup-body": "Na ovu ikonu možete se bilo kada prebaciti na uređivanje kôda.", @@ -271,7 +273,7 @@ "visualeditor-mwgallerydialog-heights-input-placeholder": "Podrazumijevana visina: $1 piksela", "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Tradicionalni bez okvira", "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Kompaktni", - "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Kompaktni sa zaglavljima prilikom prelaska mišem", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Kompaktni sa zaglavljima pri prelasku mišem", "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Kompaktni sa zaglavljima preko slika", "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Prezentacija", "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Tradicionalni", @@ -288,7 +290,9 @@ "visualeditor-mwpredialog-convert": "Dozvoli oblikovanje teksta", "visualeditor-mwpredialog-title": "Unaprijed formatirani obični tekst", "visualeditor-mwsignature-tool": "Vaš potpis", - "visualeditor-preference-newwikitexteditor-enable": "Koristi režim wikiteksta unutar vizualnog uređivača umjsto drugog ureiđvača wikiteksta.", + "visualeditor-preference-visualeditor": "Vizualni uređivač", + "visualeditor-preference-newwikitexteditor-enable": "Režim wikiteksta unutar vizualnog uređivača, umjesto drugog uređivača wikiteksta", + "visualeditor-preference-newwikitexteditor-help": "Ponekad se naziva \"uređivačem wikiteksta iz 2017. godine\".", "visualeditor-preference-tabs": "Režim uređivanja:", "visualeditor-preference-tabs-multi-tab": "Prikaži kartice oba uređivača", "visualeditor-preference-tabs-prefer-ve": "Otvori vizualni uređivač kad god je moguće", @@ -299,7 +303,7 @@ "visualeditor-rebase-client-import": "Uvezi", "visualeditor-rebase-client-import-name": "Naslov stranice", "visualeditor-rebase-client-title-help": "Bit ćete u mogućnosti pregledati promjene prije čuvanja.", - "visualeditor-recreate": "Stranica je u međuvremenu obrisana. Pritisnite „$1“ da je ponovo napravite.", + "visualeditor-recreate": "Stranica je u međuvremenu izbrisana. Pritisnite \"$1\" da je ponovo napravite.", "visualeditor-redirect-description": "Preusmjerava na $1", "visualeditor-savedialog-identify-anon": "Želite li umjesto toga snimiti ovu stranicu kao anonimni korisnik? Vaša IP adresa će biti zabilježena u historiji uređivanja ove stranice.", "visualeditor-savedialog-identify-user": "Vi ste sada logirani kao [[User:$1|$1]]. Vaše uređivanje će biti povezano sa ovim računom ako snimite ovo uređivanje.", @@ -307,7 +311,7 @@ "visualeditor-savedialog-label-publish-short": "Objavi", "visualeditor-savedialog-label-publish-short-start": "Objavi…", "visualeditor-savedialog-label-resolve-conflict": "Riješi sukob", - "visualeditor-savedialog-label-resume-editing": "Nastavi s uređivanjem", + "visualeditor-savedialog-label-resume-editing": "Nastavi uređivanje", "visualeditor-savedialog-label-review": "Prikaži izmjene", "visualeditor-savedialog-label-review-good": "Povratak na formular za snimanje", "visualeditor-savedialog-label-save-short": "Snimi", @@ -317,14 +321,14 @@ "visualeditor-savedialog-review-wikitext": "Wikitekst", "visualeditor-savedialog-title-conflict": "Sukob", "visualeditor-savedialog-title-preview": "Pretpregled Vaših izmjena", - "visualeditor-savedialog-title-review": "Pregledajte Vaše izmjene", - "visualeditor-savedialog-title-save": "Snimite svoje izmjene", + "visualeditor-savedialog-title-review": "Prikaz izmjena", + "visualeditor-savedialog-title-save": "Čuvanje izmjena", "visualeditor-section-body-placeholder": "Novi odeljak", "visualeditor-section-title-placeholder": "Tema", "visualeditor-settings-tool": "Postavke stranice", "visualeditor-special-characters-group-other": "Često korišteno", "visualeditor-templatesused-tool": "Korišteni šabloni", - "visualeditor-title-error": "Nevažeći naslov.", + "visualeditor-title-error": "Neispravan naslov.", "visualeditor-toload": "Uređivač će se sad učitati. Ako i nakon nekoliko sekundi budete vidjeli ovu poruku, molimo [$1 ponovno učitajte stranicu].", "visualeditor-version-label": "Verzija", "visualeditor-wikitext-progress": "Pretvaranje wikiteksta", diff --git a/i18n/ve-mw/shn.json b/i18n/ve-mw/shn.json index 163b4a83a0..f602ebb77b 100644 --- a/i18n/ve-mw/shn.json +++ b/i18n/ve-mw/shn.json @@ -16,14 +16,14 @@ "visualeditor-dialog-meta-categories-input-movecategorylabel": "ၶၢႆႉပိူင်ထၢၼ်ႈၸူးတီႈၼႆႈ", "visualeditor-dialog-meta-categories-input-placeholder": "ထႅမ်သႂ်ႇ ပိူင်ထၢၼ်ႈ", "visualeditor-editsummary": "သပ်းလႅင်း ၸိူဝ်းၸဝ်ႈၵဝ်ႇ လႅၵ်ႈလၢႆႈမႃး", - "visualeditor-linkinspector-educationpopup-title": "လိင်ႉ", + "visualeditor-linkinspector-educationpopup-title": "လိင်ႉၶ်", "visualeditor-mweditmodeve-popup-body": "ၼဵၵ်းတီႈၼိူဝ် ဢၢႆႇၵွၼ်ႇၼႆႉသေၵေႃႈ ၸဝ်ႈၵဝ်ႇ ၸၢင်ႈလၢႆႈၸူးလႆႈၶိုၼ်း လွင်ႈမႄးထတ်း တႃႁၼ်ယူႇ ၵူႈၶၢဝ်း။", "visualeditor-mweditmodeve-progress": "တိုၵ်ႉလၢႆႈၸူး လွင်ႈမႄးထတ်း တႃႁၼ်...", "visualeditor-mweditmodeve-tool-unavailable": "လွင်ႈမႄးထတ်း တႃႁၼ် ဢမ်ႇၸႂ်ႉလႆႈ တီႈၼႆႈ", "visualeditor-mweditmodewt-popup-title": "ၸဝ်ႈၵဝ်ႇ လၢႆႈၸူး လွင်ႈမႄးထတ်း တႃႁၼ် ယဝ်ႉယဝ်ႈ", "visualeditor-savedialog-label-resume-editing": "တႄႇၶိုၼ်း လွင်ႈမႄးထတ်း", "visualeditor-savedialog-label-review": "ထတ်းသၢင်ႈ လွင်ႈလႅၵ်ႈလၢႆႈၸဝ်ႈၵဝ်ႇ", - "visualeditor-savedialog-label-save-short": "ၵဵပ်းသိမ်း", + "visualeditor-savedialog-label-save-short": "သိမ်း", "visualeditor-savedialog-title-preview": "တူၺ်ႈလူင်ႈၼႃႈ လွင်ႈလႅင်ႈလၢႆႈၸဝ်ႈၵဝ်ႇ", "visualeditor-savedialog-title-save": "သိမ်း လွင်ႈလႅၵ်ႈလၢႆႈ ၸဝ်ႈၵဝ်ႇ" } diff --git a/i18n/ve-mw/sjd.json b/i18n/ve-mw/sjd.json index c7d82cd639..3b5b4a7670 100644 --- a/i18n/ve-mw/sjd.json +++ b/i18n/ve-mw/sjd.json @@ -6,23 +6,150 @@ ] }, "tooltip-ca-ve-edit": "Воа̄йхэ тэнн лыст", + "tooltip-ca-editsource": "Воа̄йхэ тэнн лыст ка̄йв текст", "visualeditor-advancedsettings-tool": "Лашшь оа̄ссмуж", - "visualeditor-autosave-modified-prompt-accept": "Ю̄ттҍкэ вуайхэмуж", + "visualeditor-autosave-modified-prompt-accept": "Ю̄ттҍкэ воа̄йхэмуж", + "visualeditor-autosave-recovered-title": "Воа̄йхэз ле̄в моа̄ст ма̄цьха", "visualeditor-ca-createsource": "Лыһкэ викитекст", "visualeditor-ca-editsource": "Воа̄йхэ ко̄д", "visualeditor-ca-editsource-section": "воа̄йхэ ко̄д", + "visualeditor-categories-tool": "Категорья", + "visualeditor-changedesc-mwtransclusion": "Коа̄вь параметэр воа̄йхуввенҍ", + "visualeditor-dialog-extension-abandonedit": "Та̄так то̄нн зоа̄бэль тэнн эһкан ка̄һтӭ воа̄йхэзэдант пыйханна?", + "visualeditor-dialog-media-alttext-section": "Альтернативнэ текст", + "visualeditor-dialog-media-change-image": "Воа̄йхэ ка̄вь", + "visualeditor-dialog-media-choose-image": "Оаннӭ тэнн ка̄вь", + "visualeditor-dialog-media-content-section": "Кырьйхуввмушш", + "visualeditor-dialog-media-goback": "Моа̄ст", + "visualeditor-dialog-media-info-artist": "Лоа̄дтма лӣ $1", + "visualeditor-dialog-media-info-audiofile": "Аудиофа̄ял", + "visualeditor-dialog-media-info-created": "Лыһкма лӣ $1", + "visualeditor-dialog-media-info-meta-artist": "А̄втэр: $1", + "visualeditor-dialog-media-info-moreinfo": "Е̄намп тӣдҍсэ", + "visualeditor-dialog-media-info-uploaded": "Лоа̄дтэм а̄ййк: $1", + "visualeditor-dialog-media-position-section": "Сайй", + "visualeditor-dialog-media-save": "Пынне", + "visualeditor-dialog-media-search-tab-search": "О̄дзэ", + "visualeditor-dialog-media-search-tab-upload": "Лоа̄дтэ", + "visualeditor-dialog-media-size-section": "Ка̄вь ме̄рь", + "visualeditor-dialog-media-title": "Ме̄дьяфа̄ял параметэр", + "visualeditor-dialog-media-type-border": "Ре̄ввьн", + "visualeditor-dialog-media-upload": "Лоа̄дтэ", + "visualeditor-dialog-meta-advancedsettings-label": "Лашшь оа̄ссмуж", + "visualeditor-dialog-meta-advancedsettings-section": "Лашшь оа̄ссмуж", + "visualeditor-dialog-meta-categories-addcategory-label": "Лажьхэ категорья тэнн лысста", + "visualeditor-dialog-meta-categories-category": "Категорья", + "visualeditor-dialog-meta-categories-data-label": "Категорья", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Пя̄ҋҋтма категорья", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "О̄дт категорья", + "visualeditor-dialog-meta-categories-input-placeholder": "Лажьхэ категорья", + "visualeditor-dialog-meta-categories-section": "Категорья", + "visualeditor-dialog-meta-categories-sortkey-label": "Со̄рртлаһтӭ тэнн лыст нэ̄м мӣлльтэ", + "visualeditor-dialog-meta-languages-code-label": "Кӣл ко̄дт", + "visualeditor-dialog-meta-languages-label": "Кӣл", + "visualeditor-dialog-meta-languages-link-label": "Ко̄рръя лысст", + "visualeditor-dialog-meta-languages-name-label": "Кӣлл", + "visualeditor-dialog-meta-languages-section": "Кӣл", + "visualeditor-dialog-meta-settings-displaytitle": "Вӯзьхуввэй лыст нэ̄мм", "visualeditor-dialog-meta-settings-hiddencat-label": "Пя̄ҋҋтма категорья", + "visualeditor-dialog-meta-settings-index-default": "Ӣженэсь пыййма", + "visualeditor-dialog-meta-settings-index-disable": "Эйй", + "visualeditor-dialog-meta-settings-index-force": "Ныдтҍ", + "visualeditor-dialog-meta-settings-index-label": "Лӯшшьтэ о̄дзэм систематҍ тэнн лыст индэкслаһтӭ", + "visualeditor-dialog-meta-settings-label": "Лыст оа̄ссмуж", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Эйй", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Ныдтҍ", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Вуэзхэллэ тэнн лыстэсьт вкла̄дка о̄дт па̄ҋк лажьхэм гуэйкэ", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Ре̄мят лысст", + "visualeditor-dialog-meta-settings-section": "Лыст оа̄ссмуж", + "visualeditor-dialog-meta-settings-toc-default": "Куэссь быдт", + "visualeditor-dialog-meta-settings-toc-disable": "Никуэссь", + "visualeditor-dialog-meta-settings-toc-force": "Пай", + "visualeditor-dialog-meta-settings-toc-label": "Вӯзьхэ лыст сыська панэль", + "visualeditor-dialog-meta-templatesused-noresults": "Коа̄вь ев коа̄внхувва.", "visualeditor-dialog-meta-title": "Оа̄ссмуж", + "visualeditor-dialog-table-collapsed": "Оа̄лкхэжэсьт кӣссма лӣ", + "visualeditor-dialog-table-collapsible": "Вуайй кӣсслэ", + "visualeditor-dialog-table-sortable": "Вуайй со̄рртруввэ", + "visualeditor-dialog-table-wikitable": "Стӣлетҍ оаннҍмужэнҍ (wikitable)", + "visualeditor-dialog-template-title": "Коа̄ввь", + "visualeditor-dialog-transclusion-action-save": "Пынне", + "visualeditor-dialog-transclusion-add-param-placeholder": "Параметэр нэ̄мм", + "visualeditor-dialog-transclusion-add-template": "Лажьхэ коа̄вь", + "visualeditor-dialog-transclusion-add-template-button": "Лажьхэ коа̄вь", + "visualeditor-dialog-transclusion-add-template-save": "Лажьхэ", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Та̄так то̄нн зоа̄бэль коа̄ветҍ воа̄йхэмка̄вьн ка̄һтӭ? То̄н воа̄йхэзэтҍ лӣннченҍ ма̄цьханна ка̄дтма.", "visualeditor-dialog-transclusion-confirmation-discard": "Вуэлльктэ воа̄йхэзэтҍ", + "visualeditor-dialog-transclusion-confirmation-reject": "Ю̄ттҍкэ воа̄йхэмуж", + "visualeditor-dialog-transclusion-contextitem-description": "Генерируввма лӣ {{PLURAL:$1|коа̄весьт|коа̄ввенҍ}}", + "visualeditor-dialog-transclusion-contextitem-loading": "Лоа̄дтмушш...", + "visualeditor-dialog-transclusion-filter-hide-unused": "Пе̄ҋҋтэ ев о̄ннъюввэй", + "visualeditor-dialog-transclusion-filter-no-match": "Шӣтнэдтмуж ев коа̄внхувва", + "visualeditor-dialog-transclusion-filter-placeholder": "Коа̄ввнэ поля", + "visualeditor-dialog-transclusion-filter-show-all": "Пугк вӯзьхэ", + "visualeditor-dialog-transclusion-filter-title": "О̄дзэ параметэр $1 гуэйкэ", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Пуалэ э̄ххтътэмуж]", + "visualeditor-dialog-transclusion-loading": "Лоа̄дтмушш…", + "visualeditor-dialog-transclusion-no-template-description": "Коа̄вь «$1» баяс вя̄л элля нимӣ кырьйха, ноа лашшь те̄д вуэйев [[$2|со̄н лыстэсьт]] коа̄внхуввэ.", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Коа̄вь о̄дзэ", + "visualeditor-dialog-transclusion-required-parameter": "Быдт тӣвтхэ", + "visualeditor-dialog-transclusion-required-parameter-description": "Тэнн поля быдт тӣвтхэ.", + "visualeditor-dialog-transclusion-title-insert-template": "Пыйе коа̄вь", "visualeditor-dialog-transclusion-title-insert-known-template": "Лажьхэ: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Воа̄йхэмушш: $1", "visualeditor-dialog-transclusion-wikitext": "Викитекст", "visualeditor-dialogbutton-media-tooltip": "Ка̄вь я ме̄дьяфа̄йял", + "visualeditor-dialogbutton-template-tooltip": "Коа̄ввь", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|соа̄гк|соа̄г|соа̄гкэ}}", "visualeditor-editsummary": "Моа̄йнэсьт, мэ̄нн то̄нн воа̄йхэкь", - "visualeditor-linkinspector-button-link-external": "Оаклма са̄ййт", - "visualeditor-linkinspector-invalid-external": "Пый о̄ммп URL, https://example.org-налшэм", + "visualeditor-expandable-less": "Ва̄нӓмп", + "visualeditor-expandable-more": "Е̄намп", + "visualeditor-formatdropdown-format-mw-heading1": "Лыст вуэййвса̄ннҍ", + "visualeditor-formatdropdown-format-mw-heading2": "Вуэййвса̄ннҍ", + "visualeditor-formatdropdown-format-mw-heading3": "Вӯлльвуэййвса̄ннҍ 1", + "visualeditor-formatdropdown-format-mw-heading4": "Вӯлльвуэййвса̄ннҍ 2", + "visualeditor-formatdropdown-format-mw-heading5": "Вӯлльвуэййвса̄ннҍ 3", + "visualeditor-formatdropdown-format-mw-heading6": "Вӯлльвуэййвса̄ннҍ 4", + "visualeditor-languages-tool": "Кӣл", + "visualeditor-linkinspector-button-link-external": "Оалкма са̄ййт", + "visualeditor-linkinspector-invalid-external": "Пый о̄ммп URL, ва̄лльтэ https://example.org", + "visualeditor-linknodeinspector-add-label": "Кырьйхуввмуж лажьхэ", + "visualeditor-linknodeinspector-title": "А̄рркъесь ушш", + "visualeditor-magiclinknodeinspector-title-isbn": "ISBN-ушш", + "visualeditor-magiclinknodeinspector-title-rfc": "RFC-ушш", + "visualeditor-media-title-image": "Ка̄ввь", + "visualeditor-media-title-video": "Вӣдьяфа̄ял", + "visualeditor-meta-tool": "Параметэр", + "visualeditor-mweditmode-tooltip": "Мэ̄ннлэ е̄ресь редактрэ", "visualeditor-mweditmodesource-tool-current": "Ко̄д воа̄йхэмушш", + "visualeditor-mweditmodeve-popup-body": "То̄нн пай вуаяк визуальнэ воа̄йхэмушша ма̄һце тэнн тӣта э̄л те̄ннҍтлэмэнҍ.", + "visualeditor-mweditmodeve-popup-title": "То̄нн мэ̄ннлэкь ка̄ййв текст воа̄йхэм режиммэ", + "visualeditor-mweditmodeve-showagain": "Елле вӯзьхэгке тэнн соа̄г эвтэс", "visualeditor-mweditmodeve-tool-current": "Визуальнэ воа̄йхэмушш", + "visualeditor-mweditmodewt-popup-body": "То̄нн пай вуаяк ка̄ййв текст воа̄йхэмушша ма̄һце тэнн тӣта э̄л те̄ннҍтлэмэнҍ.", + "visualeditor-mweditmodewt-popup-title": "То̄нн мэ̄ннлэкь визуальнэ воа̄йхэм режиммэ", + "visualeditor-mwgallerydialog-card-images": "Ка̄вь", + "visualeditor-mwgallerydialog-classes-field-label": "CSS кла̄сс", + "visualeditor-mwgallerydialog-empty-gallery-message": "Галерея лӣ курас.", + "visualeditor-mwgallerydialog-heights-field-label": "Ка̄вь э̄ллвудт", + "visualeditor-mwgallerydialog-mode-field-label": "Вуэзхэллэм на̄лль", + "visualeditor-mwgallerydialog-search-button-label": "Лажьхэ о̄дт ка̄вь", + "visualeditor-mwgallerydialog-show-filename-field-label": "Вӯзьхэ фа̄йлэ нэ̄мэтҍ", + "visualeditor-mwgallerydialog-styles-field-label": "CSS стӣль", + "visualeditor-mwgallerydialog-title": "Галерея", + "visualeditor-mwgallerydialog-widths-field-label": "Ка̄вь ко̄ммтвудт", + "visualeditor-mwsignature-tool": "То̄н кырьйхуввмушш", + "visualeditor-preference-visualeditor": "Ключчье визуальнэ редактэр", + "visualeditor-preference-newwikitexteditor-help": "Мудтмэшьт коаһчьювв “вики-текст редактрэнҍ — 2017”.", + "visualeditor-savedialog-label-publish-short": "Элмсаһтӭ", + "visualeditor-savedialog-label-save-short": "Пынне", "visualeditor-savedialog-review-nosummary": "Нимӣ элля воа̄йхэз баяс кырьйха", - "visualeditor-savedialog-review-visual": "Визуальнэ", - "visualeditor-savedialog-title-save": "Пынь ӣжянт воа̄йхэзэтҍ" + "visualeditor-savedialog-review-visual": "Уййнэм", + "visualeditor-savedialog-title-save": "Пынь ӣжянт воа̄йхэзэтҍ", + "visualeditor-section-body-placeholder": "О̄дт па̄ҋҋк", + "visualeditor-section-title-placeholder": "Те̄ма", + "visualeditor-settings-tool": "Лыст оа̄ссмуж", + "visualeditor-special-characters-group-other": "Тоа̄ййв о̄ннъюввэй", + "visualeditor-templatesused-tool": "Оаннма коа̄вь", + "visualeditor-version-label": "Ве̄рсья" } diff --git a/i18n/ve-mw/sk.json b/i18n/ve-mw/sk.json index 6f793523e9..dad378dd6f 100644 --- a/i18n/ve-mw/sk.json +++ b/i18n/ve-mw/sk.json @@ -15,7 +15,8 @@ "Teslaton", "TomášPolonec", "Vegetator", - "Yardom78" + "Yardom78", + "Wizzard" ] }, "tooltip-ca-ve-edit": "Upraviť túto stránku", @@ -41,6 +42,7 @@ "visualeditor-changedesc-mwtransclusion": "Zmenené parametre šablóny", "visualeditor-desc": "Vizuálny editor pre MediaWiki", "visualeditor-descriptionpagelink": "Project:Vizuálny editor", + "visualeditor-dialog-extension-abandonedit": "Naozaj chcete zatvoriť toto dialógové okno bez uloženia zmien?", "visualeditor-dialog-media-alttext-section": "Alternatívny text", "visualeditor-dialog-media-alttext-section-help": "Toto môžete použiť na zadanie textového popisu pre ľudí, ktorí položku neuvidia. Popis by mal byť postačujúci na pochopenie účelu a informácie, ktorú táto multimediálna položka poskytuje. Toto je podstatné pre nevidiacich používateľov a iných ľudí, ktorý používajú čítačky obrazoviek alebo čisto textové prehliadače.", "visualeditor-dialog-media-change-image": "Vybrať iný obrázok", @@ -53,24 +55,28 @@ "visualeditor-dialog-media-info-artist": "Nahral $1", "visualeditor-dialog-media-info-audiofile": "Zvukový súbor", "visualeditor-dialog-media-info-created": "Vytvorené: $1", - "visualeditor-dialog-media-info-meta-artist": "Umelec: $1", + "visualeditor-dialog-media-info-meta-artist": "Autor: $1", "visualeditor-dialog-media-info-moreinfo": "Viac informácií", "visualeditor-dialog-media-info-readmore": "Čítať ďalej", "visualeditor-dialog-media-info-uploaded": "Nahrané: $1", "visualeditor-dialog-media-page-advanced": "Rozšírené", "visualeditor-dialog-media-page-general": "Všeobecné", "visualeditor-dialog-media-position-checkbox": "Nechať text obtekať okolo obrázku", + "visualeditor-dialog-media-position-checkbox-help": "Môžete si vybrať, či sa tento objekt bude zobrazovať zarovno s textom namiesto obtekania. Vypnutie tejto možnosti naruší tok textu a preto by sa malo využívať len zriedka.", "visualeditor-dialog-media-position-section": "Umiestnenie", + "visualeditor-dialog-media-position-section-help": "Môžete si vybrať, kde sa má tento objekt na stránke zobraziť. Používa sa na rozdelenie dlhého radu obrázkov na jednej strane stránky.", "visualeditor-dialog-media-save": "Uložiť", "visualeditor-dialog-media-search-tab-search": "Vyhľadávanie", "visualeditor-dialog-media-search-tab-upload": "Nahrať", "visualeditor-dialog-media-size-section": "Veľkosť obrázku", + "visualeditor-dialog-media-size-section-help": "Môžete si vybrať, ako veľký sa tento objekt na stránke zobrazí. Takmer vždy by to mala byť štandardná veľkosť, pretože vlastná veľkosť naruší rozloženie stránky pre čitateľa a naruší konzistentnosť.", "visualeditor-dialog-media-title": "Nastavenie obrázku (zvuku, videa)", "visualeditor-dialog-media-type-border": "Orámovanie", "visualeditor-dialog-media-type-frame": "S rámčekom", "visualeditor-dialog-media-type-frameless": "Bez rámčeku", "visualeditor-dialog-media-type-none": "Základné", "visualeditor-dialog-media-type-section": "Typ obrázku", + "visualeditor-dialog-media-type-section-help": "Môžete si vybrať, ako sa má objekt na stránke zobraziť. Takmer vo všetkých prípadoch by mal byť kvôli konzistentnosti vybraný Náhľad.", "visualeditor-dialog-media-type-thumb": "Náhľad", "visualeditor-dialog-media-upload": "Nahrať", "visualeditor-dialog-meta-advancedsettings-label": "Rozšírené nastavenia", @@ -146,9 +152,11 @@ "visualeditor-dialog-transclusion-deprecated-parameter": "Zastaraný parameter", "visualeditor-dialog-transclusion-deprecated-parameter-description": "Parameter je zastaraný. $1", "visualeditor-dialog-transclusion-loading": "Načítava sa...", + "visualeditor-dialog-transclusion-no-template-data-description": "Tejto šablóne chýbajú [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData], takže boli jej parametre [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters vygenerované automaticky]. Pretože šablóna ani jej parametre nemajú popisy. Ďalšie informácie sa môžu nachádzať na [[$1|stránke šablóny]].", "visualeditor-dialog-transclusion-no-template-description": "Šablóna „$1“ zatiaľ nemá popis, nejaké informácie sa ale môžu nachádzať na [[$2|jej stránke]].", "visualeditor-dialog-transclusion-param-default": "Predvolená hodnota: $1", "visualeditor-dialog-transclusion-param-example-long": "Príklad: $1", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Vyhľadať šablónu", "visualeditor-dialog-transclusion-required-parameter": "Povinné pole", "visualeditor-dialog-transclusion-required-parameter-description": "Pole je povinné.", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Späť", @@ -156,6 +164,9 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Chýba povinný parameter|Chýbajú povinné parametre}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Skutočne chcete pokračovať bez vyplnenia {{PLURAL:$2|parametra|parametrov}} $1?", "visualeditor-dialog-transclusion-see-template": "Šablóny vytvárajú používatelia a môžu v nich chýbať kompletné popisy. Ďalšie informácie nájdete na [[$2|stránke tejto šablóny]].", + "visualeditor-dialog-transclusion-title-edit-known-template": "Úprava šablóny $1", + "visualeditor-dialog-transclusion-template-search": "Vyhľadávanie šablón", + "visualeditor-dialog-transclusion-template-search-help": "Vyhľadajte šablónu, ktorú chcete vložiť, vyhľadaním kľúčového slova. Šablóny, ktoré majú popisy, budú vo vizuálnom editore pravdepodobne fungovať lepšie.", "visualeditor-dialogbutton-media-tooltip": "Obrázky a multimédiá", "visualeditor-dialogbutton-template-tooltip": "Šablóna", "visualeditor-editconflict": "Zmeny nie je možné uložiť z dôvodu editačného konfliktu. Chcete vyriešiť editačný konflikt manuálne?", @@ -177,7 +188,7 @@ "visualeditor-generating-wikitext-progress": "Generovanie wikitextu", "visualeditor-languages-tool": "Jazyky", "visualeditor-linkinspector-button-link-external": "Externý web", - "visualeditor-linkinspector-button-link-internal": "Hľadanie stránok", + "visualeditor-linkinspector-button-link-internal": "Hľadať interné stránky", "visualeditor-linkinspector-convert-link-isbn": "Previesť na ISBN odkaz", "visualeditor-linkinspector-convert-link-pmid": "Previesť na PMID odkaz", "visualeditor-linkinspector-convert-link-rfc": "Previesť na RFC odkaz", @@ -231,6 +242,9 @@ "visualeditor-mwgallerydialog-title": "Galéria", "visualeditor-mwgallerydialog-widths-field-label": "Šírka obrázku", "visualeditor-mwgallerydialog-widths-input-placeholder": "Predvolená šírka: $1 pixelov", + "visualeditor-preference-visualeditor": "Zapnúť vizuálny editor", + "visualeditor-preference-newwikitexteditor-enable": "Namiesto iného editora wikitextu používať režim editácie wikitextu v rámci vizuálneho editora", + "visualeditor-preference-newwikitexteditor-help": "Toto sa niekedy nazýva „editor wikitextu 2017“.", "visualeditor-preference-tabs": "Režim úprav:", "visualeditor-preference-tabs-multi-tab": "Zobraziť záložky pre oba editory", "visualeditor-preference-tabs-prefer-ve": "Vždy použiť vizuálny editor, ak je to možné", @@ -241,8 +255,8 @@ "visualeditor-rebase-client-import-name": "Názov stránky", "visualeditor-recreate": "Počas vašich úprav bola stránka zmazaná. Tlačidlom $1 ju obnovíte.", "visualeditor-redirect-description": "Presmerovanie na $1", - "visualeditor-savedialog-identify-anon": "Chcete stránku uložiť ako anonymný redaktor? Vaša IP adresa bude zverejnená v histórii úprav stránky.", - "visualeditor-savedialog-identify-user": "Momentálne ste {{GENDER:|prihlásený|prihlásená}} ako [[User:$1|$1]]. Ak túto úpravu uložíte, bude priradená k uvedenému používateľskému kontu.", + "visualeditor-savedialog-identify-anon": "Už nie ste prihlásený/á. Ak budete pokračovať, vaša IP adresa bude zaznamenaná v histórii úprav tejto stránky.", + "visualeditor-savedialog-identify-user": "Teraz ste {{GENDER:|prihlásený|prihlásená}} ako [[User:$1|$1]]. Ak budete pokračovať, vaša úprava bude priradená k tomuto účtu.", "visualeditor-savedialog-keyboard-shortcut-submit": "Svoju úpravu môžete uložiť stlačením $1.", "visualeditor-savedialog-label-publish-short": "Zverejniť", "visualeditor-savedialog-label-publish-short-start": "Zverejniť...", @@ -265,12 +279,12 @@ "visualeditor-special-characters-group-other": "Často používané", "visualeditor-templatesused-tool": "Použité šablóny", "visualeditor-title-error": "Neplatný názov", - "visualeditor-toload": "Editor sa teraz načíta. Pokiaľ stále vidíte túto správu po niekoľkých sekundách, prosím, [$1 obnovte stránku].", + "visualeditor-toload": "Editor sa teraz načíta. Ak túto správu vidíte aj po niekoľkých sekundách, [$1 obnovte prosím stránku].", "visualeditor-version-label": "Verzia", "visualeditor-wikitext-progress": "Prebieha konverzia wikitextu", "visualeditor-wikitext-warning": "Používate Vizuálny editor – [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitext]] sa tu nepoužíva. Kedykoľvek sa však môžete bez straty vykonaných úprav prepnúť do režimu editácie zdrojového kódu, kliknutím na tlačidlo „Prepnúť“.", "visualeditor-wikitext-warning-title": "Zistená syntax wikitextu", "visualeditor-wikitextconvert-title": "Previesť formátovanie na wikitext?", - "visualeditor-wikitextconvert-message": "Vložili ste obsah obsahujúci formátovanie. Mal by byť prevedený na wikitext alebo vložený ako obyčajný text?", + "visualeditor-wikitextconvert-message": "Vložili ste obsah s formátovaním. Chcete toto formátovanie previesť na wikitext?", "visualeditor-wikitextconvert-convert": "Previesť na wikitext" } diff --git a/i18n/ve-mw/sl.json b/i18n/ve-mw/sl.json index 828ec55086..8e0e04e4e2 100644 --- a/i18n/ve-mw/sl.json +++ b/i18n/ve-mw/sl.json @@ -63,11 +63,9 @@ "visualeditor-dialog-media-info-artist": "Naložil $1", "visualeditor-dialog-media-info-audiofile": "Zvočna datoteka", "visualeditor-dialog-media-info-created": "Ustvarjeno: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Avtor: $1", "visualeditor-dialog-media-info-moreinfo": "Več informacij", "visualeditor-dialog-media-info-readmore": "Preberi več", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Naloženo: $1", "visualeditor-dialog-media-page-advanced": "Napredno", "visualeditor-dialog-media-page-general": "Splošno", diff --git a/i18n/ve-mw/smn.json b/i18n/ve-mw/smn.json index d4ca0826de..2613379ed1 100644 --- a/i18n/ve-mw/smn.json +++ b/i18n/ve-mw/smn.json @@ -20,6 +20,7 @@ "visualeditor-ca-editsource-section": "mute käldee", "visualeditor-categories-tool": "Luokah", "visualeditor-descriptionpagelink": "Project:VisualEditor", + "visualeditor-dialog-media-change-image": "Mute kove", "visualeditor-dialog-media-choose-image": "Keevti taam kove", "visualeditor-dialog-media-content-filename": "Tiätuvuárkkánommâ", "visualeditor-dialog-media-content-section": "Kovetekstâ", @@ -54,12 +55,16 @@ "visualeditor-dialog-meta-categories-input-newcategorylabel": "Uđđâ luokka", "visualeditor-dialog-meta-categories-input-placeholder": "Lasseet luoka", "visualeditor-dialog-meta-categories-missing": "Taan luokkaast váilu kuvvimsijđo", + "visualeditor-dialog-meta-categories-options": "Valjiimeh", "visualeditor-dialog-meta-categories-section": "Luokah", "visualeditor-dialog-meta-languages-code-label": "Kielâkoodi", "visualeditor-dialog-meta-languages-label": "Kielah", + "visualeditor-dialog-meta-languages-link-label": "Liŋkkejum sijđo", "visualeditor-dialog-meta-languages-name-label": "Kielâ", "visualeditor-dialog-meta-languages-section": "Kielah", "visualeditor-dialog-meta-settings-hiddencat-label": "Čiehhum luokka", + "visualeditor-dialog-meta-settings-index-default": "Nabdos", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Nabdos", "visualeditor-dialog-meta-settings-toc-default": "Táárbu mield", "visualeditor-dialog-meta-settings-toc-disable": "Ij kuássin", "visualeditor-dialog-meta-settings-toc-force": "Ain", @@ -69,20 +74,55 @@ "visualeditor-dialog-transclusion-add-param-save": "Lasseet parameetter", "visualeditor-dialog-transclusion-add-template": "Lasseet myenster", "visualeditor-dialog-transclusion-add-template-save": "Lasseet", + "visualeditor-dialog-transclusion-contextitem-loading": "Luođiimin…", + "visualeditor-dialog-transclusion-filter-show-all": "Čääiti puoh", + "visualeditor-dialog-transclusion-loading": "Luođiimin...", + "visualeditor-dialog-transclusion-param-default": "Nabdosárvu: $1", + "visualeditor-dialog-transclusion-param-example-long": "Ovdâmerkkâ: $1", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Myenster $1 parameettereh", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Lasseet myenster", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Maacâ", + "visualeditor-dialog-transclusion-title-insert-template": "Lasseet myenster", + "visualeditor-dialog-transclusion-title-insert-known-template": "Lasseet: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Mute: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Myenster siskáldâs", "visualeditor-dialog-transclusion-template-search": "Myensteruuccâm", + "visualeditor-dialog-transclusion-wikitext": "Wikitekstâ", + "visualeditor-dialogbutton-media-tooltip": "Koveh já media", "visualeditor-dialogbutton-template-tooltip": "Myenster", + "visualeditor-feedback-defaultmessage": "URL: $1", + "visualeditor-formatdropdown-format-mw-heading1": "Sijđonommâ", + "visualeditor-formatdropdown-format-mw-heading2": "Paječaalâ", "visualeditor-languages-tool": "Kielah", "visualeditor-linkinspector-convert-link-isbn": "Mute ISBN-liŋkkân", "visualeditor-linkinspector-educationpopup-title": "Liiŋkah", "visualeditor-magiclinknodeinspector-title-isbn": "ISBN-liŋkkâ", + "visualeditor-media-title-audio": "Audio", "visualeditor-media-title-image": "Kove", + "visualeditor-media-title-video": "Video", + "visualeditor-meta-tool": "Valjiimeh", + "visualeditor-mweditmodeve-showagain": "Ele čääiti taam viestâ innig", + "visualeditor-mweditmodeve-tool-current": "Visuaallâš hammim", + "visualeditor-mwgallerydialog-caption-field-label": "Kovegalleria kovetekstâ", "visualeditor-mwgallerydialog-card-images": "Koveh", + "visualeditor-mwgallerydialog-card-options": "Valjiimeh", "visualeditor-mwgallerydialog-classes-field-label": "CSS-luokah", + "visualeditor-mwgallerydialog-heights-field-label": "Kove alodâh", + "visualeditor-mwgallerydialog-heights-input-placeholder": "Nabdosalodâh: $1 px", + "visualeditor-mwgallerydialog-remove-button-label": "Siho kove", + "visualeditor-mwgallerydialog-search-button-label": "Lasseet uđđâ kove", + "visualeditor-mwgallerydialog-show-filename-field-label": "Čääiti tiätuvuárkkánoomâid", "visualeditor-mwgallerydialog-styles-field-label": "CSS-stiijlah", + "visualeditor-mwgallerydialog-title": "Galleria", + "visualeditor-mwgallerydialog-widths-field-label": "Kove kobdodâh", + "visualeditor-mwgallerydialog-widths-input-placeholder": "Nabdoskobdodâh: $1 px", + "visualeditor-rebase-client-import-name": "Sijđonommâ", "visualeditor-savedialog-label-publish-short": "Almostit", "visualeditor-savedialog-label-publish-short-start": "Almostit...", "visualeditor-savedialog-label-save-short": "Vuorkkii", "visualeditor-savedialog-label-save-short-start": "Vuorkkii...", "visualeditor-savedialog-review-visual": "Visuaallâš", - "visualeditor-savedialog-review-wikitext": "Wikitekstâ" + "visualeditor-savedialog-review-wikitext": "Wikitekstâ", + "visualeditor-section-body-placeholder": "Uđđâ uási", + "visualeditor-version-label": "Versio" } diff --git a/i18n/ve-mw/sms.json b/i18n/ve-mw/sms.json index 979140db31..25b3065a3a 100644 --- a/i18n/ve-mw/sms.json +++ b/i18n/ve-mw/sms.json @@ -7,12 +7,17 @@ "collabpad-doctitle": "CollabPad: $1", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Muuʹtt tän seeid", - "tooltip-ca-editsource": "Muuʹtt tän seeid käivvkood", - "tooltip-ca-createsource": "Raaj tän seeid käivvkood", + "tooltip-ca-ve-create": "Raaj tän seeid", + "tooltip-ca-ve-create-local": "Raaj pääiklaž deskripttseeid", + "tooltip-ca-editsource": "Muuʹtt tän seeid wikiteeʹkst", + "tooltip-ca-editsource-local": "Muuʹtt pääiklaž deskripttseeid wikiteeʹkst", + "tooltip-ca-createsource": "Raaj tän seeid wikiteeʹkst", + "tooltip-ca-createsource-local": "Raaj pääiklaž deskripttseeid wikiteeʹkst", "visualeditor-advancedsettings-tool": "Lââʹssasetõõzz", - "visualeditor-ca-createlocaldescriptionsource": "Lââʹzzet pääiklaž deskriipt käivvteeʹkst", + "visualeditor-backbutton-tooltip": "Mååusat", + "visualeditor-ca-createlocaldescriptionsource": "Lââʹzzet pääiklaž deskriipt wikiteeʹkst", "visualeditor-ca-createsource": "Raaj wikiteeʹkst", - "visualeditor-ca-editlocaldescriptionsource": "Muuʹtt pääiklaž deskriipt käivvteeʹkst", + "visualeditor-ca-editlocaldescriptionsource": "Muuʹtt pääiklaž deskriipt wikiteeʹkst", "visualeditor-ca-editsource": "Muuʹtt wikiteeʹkst", "visualeditor-ca-editsource-section": "muuʹtt wikiteeʹkst", "visualeditor-categories-tool": "Kategoria", @@ -22,6 +27,7 @@ "visualeditor-dialog-media-choose-image": "Ââʹn tän snimldõõǥǥ", "visualeditor-dialog-media-content-filename": "Teâttõsnõmm", "visualeditor-dialog-media-content-section": "Kartt-teʹkstt", + "visualeditor-dialog-media-goback": "Mååusat", "visualeditor-dialog-media-info-artist": "Ruõkkâm: $1", "visualeditor-dialog-media-info-audiofile": "Jiõnnteâttõs", "visualeditor-dialog-media-info-created": "Rajjum: $1", @@ -31,6 +37,7 @@ "visualeditor-dialog-media-save": "Ruõkk", "visualeditor-dialog-media-search-tab-search": "Ooʒʒ", "visualeditor-dialog-media-search-tab-upload": "Ruõkk", + "visualeditor-dialog-media-size-section": "Kaart leʹbe snimldõõǥǥ šorradvuõtt", "visualeditor-dialog-media-title": "Mediaasetõõzz", "visualeditor-dialog-media-type-thumb": "Snimldõõǥǥâž", "visualeditor-dialog-media-upload": "Ruõkk", @@ -63,6 +70,7 @@ "visualeditor-dialog-transclusion-add-param-placeholder": "Paramettarnõmm", "visualeditor-dialog-transclusion-add-param-save": "Lââʹzzet paramettar", "visualeditor-dialog-transclusion-add-template": "Lââʹzzet maall", + "visualeditor-dialog-transclusion-add-template-button": "Lââʹzzet maall", "visualeditor-dialog-transclusion-add-template-save": "Lââʹzzet", "visualeditor-dialog-transclusion-collapse-options": "Čiõǥǥ asetõõzzid", "visualeditor-dialog-transclusion-confirmation-discard": "Tirššâl muttsid", diff --git a/i18n/ve-mw/so.json b/i18n/ve-mw/so.json index 18be3ebc95..d1e4a34a95 100644 --- a/i18n/ve-mw/so.json +++ b/i18n/ve-mw/so.json @@ -2,17 +2,361 @@ "@metadata": { "authors": [ "Abdullahi", - "Abshirdheere" + "Abshirdheere", + "AhmedG612" ] }, + "collabpad-doctitle": "CollabPad: $1", + "collabpad-import-subtitle": "Laga soo dhoofiyay $1", + "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Wax ka badal boggaan", + "tooltip-ca-ve-edit-local": "Tafatir bogga sharaxaadda maxalliga ah", + "tooltip-ca-ve-create": "Abuur boggan", + "tooltip-ca-ve-create-local": "Abuur bogga sharaxaadda maxalliga ah", "tooltip-ca-editsource": "Wax ka bedel xofta fura ee boggaan", + "tooltip-ca-editsource-local": "Wax ka beddel koodhka isha ee bogga sharraxaadda maxalliga ah", "tooltip-ca-createsource": "Sameey xogta furaha ee boggaan", + "tooltip-ca-createsource-local": "Samee koodhka isha ee bogga sharraxaadda maxalliga ah", + "visualeditor-advancedsettings-tool": "Dejinta horumarsan", + "visualeditor-annotations-default-description": "Qaybtan bogga waa qayb ka mid ah xadka sharaxaad.", + "visualeditor-annotations-default-end": "Dhammaadka xadka sharaxaad.", + "visualeditor-annotations-default-start": "Bilowga xadka sharaxaad.", + "visualeditor-annotations-extended-documentation": "Xadka sharaxaadda waa la ballaariyay sababtoo ah waxa ku jira lama dhisin si habboon oo isku dhex jira. Waxaa lagu talinayaa in la hubiyo in waxa la sharaxayo si habboon u kala habaysan yihiin ka hor inta aan la tafatirin; haddii kale, waxaa laga yaabaa in xad ka weyn intii la filayay la sharaxo.", + "visualeditor-autosave-modified-prompt-accept": "Sii wad tafatirka", + "visualeditor-autosave-modified-prompt-message": "Boggan waa la tafatiray tan iyo markii aad ugu dambeysay aad soo shubtay. Ma jeclaan lahayd inaad dib u sii waddo tafatirka {{GENDER:|aga}} ee nuqulkii hore, mise aad bilaabdo tafatir cusub oo nuqulka ugu dambeeya?", + "visualeditor-autosave-modified-prompt-reject": "Bilow tafatir cusub", + "visualeditor-autosave-modified-prompt-title": "Sii wad {{GENDER:|tafatirkaaga}}?", + "visualeditor-autosave-not-recovered-text": "Isbeddelladaada aan la kaydin lama soo celin karin.", + "visualeditor-autosave-not-recovered-title": "Soo celinta isbeddelka way fashilantay", + "visualeditor-autosave-recovered-text": "Isbeddelladaada aan la kaydin si toos ah ayaa loo soo celiyay.", + "visualeditor-autosave-recovered-title": "Isbeddellada waa la soo celiyay", + "visualeditor-backbutton-tooltip": "Dib u noqo", + "visualeditor-ca-createlocaldescriptionsource": "Ku dar isha sharraxaadda maxalliga ah", "visualeditor-ca-createsource": "Abuur xogta", + "visualeditor-ca-editlocaldescriptionsource": "Wax ka beddel isha sharraxaadda maxalliga ah", "visualeditor-ca-editsource": "Wax ka badal xogta", "visualeditor-ca-editsource-section": "wax ka badal xogta", + "visualeditor-ca-editsource-section-hint": "Tafatir koodhka isha ee qaybta: $1", "visualeditor-categories-tool": "Qaybaha", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Furaha kala soocidda waxaa laga beddelay $1 oo loo beddelay $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Furaha kala soocidda waxaa loo dejiyay $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Furaha kala soocidda waa laga qaaday $1", + "visualeditor-changedesc-mwlanguagevariant": "Calaamadeynta kala duwanaanta luqadda waa la beddelay", + "visualeditor-changedesc-mwredirect": "Bartilmaameedka dib u hagidda waxaa laga beddelay $1 loona beddelay $2", + "visualeditor-changedesc-mwtransclusion": "Xogaha tusmada waa la beddelay", "visualeditor-desc": "Visual editor ee MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", - "visualeditor-editnotices-tool": "{{PLURAL:$1|ma jirto wargalin|hal wargalin|laba wargalinood|$1 wargalinno|$1 wargalin}}" + "visualeditor-dialog-extension-abandonedit": "Ma hubtaa inaad rabto inaad xirto sanduuqan wada-hadal adigoon ku dabaqin isbeddelladaada?", + "visualeditor-dialog-media-alttext-checkbox": "U isticmaal qoraalka sawirka sida qoraalka beddelka ah", + "visualeditor-dialog-media-alttext-section": "Qoraal beddel ah", + "visualeditor-dialog-media-alttext-section-help": "Waxaad u isticmaali kartaa inaad qorto sharaxaad qoraal ah oo loogu talagalay dadka aan arki karin sheyga. Sharaxaaddu waa inay ku filnaataa si ay u fahmaan ujeeddada iyo macluumaadka uu bixiyo shayga warbaahintu. Tani waa muhiim dadka indhoolayaasha ah iyo dadka kale ee isticmaala barnaamijyada akhriska shaashadda ama daalacashada qoraal kaliya.", + "visualeditor-dialog-media-change-image": "Beddel sawirka", + "visualeditor-dialog-media-choose-image": "Isticmaal sawirkan", + "visualeditor-dialog-media-content-description-link": "(bogga sharraxaadda)", + "visualeditor-dialog-media-content-filename": "Magaca faylka", + "visualeditor-dialog-media-content-section": "Qoraal hoose", + "visualeditor-dialog-media-content-section-help": "Waxaad u isticmaali kartaa inaad muujiso calaamad ka muuqata agta shayga dhammaan akhristayaasha. Tan badanaa waxaa loo isticmaalaa in lagu sharaxo sababta shaygu ugu habboon yahay macnaha lagu soo bandhigay. Waa inay noqotaa mid kooban oo xog-warran ah.", + "visualeditor-dialog-media-goback": "Dib u noqo", + "visualeditor-dialog-media-info-artist": "Waxaa soo geliyay $1", + "visualeditor-dialog-media-info-audiofile": "Fayl cod ah", + "visualeditor-dialog-media-info-created": "La sameeyay: $1", + "visualeditor-dialog-media-info-meta-artist": "Qoraa: $1", + "visualeditor-dialog-media-info-moreinfo": "Macluumaad dheeraad ah", + "visualeditor-dialog-media-info-readmore": "Sii akhri", + "visualeditor-dialog-media-info-uploaded": "La soo geliyay: $1", + "visualeditor-dialog-media-page-advanced": "Horumarsan", + "visualeditor-dialog-media-page-general": "Guud ahaan", + "visualeditor-dialog-media-position-checkbox": "Ku wareeji qoraalka shaygan", + "visualeditor-dialog-media-position-checkbox-help": "Waxaad ka dhigi kartaa shaygan warbaahinta inuu si toos ah ugu dhex muuqdo qoraalka bogga halkii uu sabayn lahaa. Waa in aad tan si dhif ah u isticmaashaa, maadaama ay kala goyn karto socodka qoraalka haddii aad ka saarto calaamadda sanduuqan.", + "visualeditor-dialog-media-position-section": "Meel", + "visualeditor-dialog-media-position-section-help": "Waxaad dejin kartaa meesha shaygan warbaahintu ka muuqanayo bogga. Tan mararka qaar waxaa loo isticmaalaa in lagu kala jebiyo saf dheer oo sawirro ah oo hal dhinac ka wada yaal bogga.", + "visualeditor-dialog-media-save": "Kaydi", + "visualeditor-dialog-media-search-tab-search": "Raadi", + "visualeditor-dialog-media-search-tab-upload": "Soo geli", + "visualeditor-dialog-media-size-section": "Cabbirka sawirka", + "visualeditor-dialog-media-size-section-help": "Waxaad dejin kartaa cabbirka uu shayga warbaahintu uga muuqanayo bogga. Tani inta badan waa in loo isticmaalo cabbirka caadiga ah, maadaama cabbir la habeeyay uu carqaladayn karo qaabka bogga ee akhristayaasha oo ka dhigi karo mid aan isku mid ahayn.", + "visualeditor-dialog-media-title": "Dejinta warbaahinta", + "visualeditor-dialog-media-type-border": "Xuduud", + "visualeditor-dialog-media-type-frame": "Qaab-dhismeedka", + "visualeditor-dialog-media-type-frameless": "Aan lahayn qaab-dhismeed", + "visualeditor-dialog-media-type-none": "Aasaasi", + "visualeditor-dialog-media-type-section": "Nooca sawirka", + "visualeditor-dialog-media-type-section-help": "Waxaad dejin kartaa sida shayga warbaahintu uga muuqanayo bogga. Tani waa in badanaa loo isticmaalo qaabka thumbnail-ka si ay ula jaanqaado bogagga kale inta badan kiisaska.", + "visualeditor-dialog-media-type-thumb": "Sawir yar", + "visualeditor-dialog-media-upload": "Soo geli", + "visualeditor-dialog-meta-advancedsettings-label": "Dejinta horumarsan", + "visualeditor-dialog-meta-advancedsettings-section": "Dejinta horumarsan", + "visualeditor-dialog-meta-categories-addcategory-label": "Ku dar qayb boggan", + "visualeditor-dialog-meta-categories-category": "Qeybta", + "visualeditor-dialog-meta-categories-data-label": "Qaybaha", + "visualeditor-dialog-meta-categories-defaultsort-help": "Waxaad beddeli kartaa sida boggan loo kala saarayo marka lagu muujiyo qayb dhexdeeda adigoo dejinaya tilmaame kale oo lagu kala saaro. Tan waxaa badanaa loo isticmaalaa in bogagga dadka lagu muujiyo magaca dambe, balse magaca hore la hormariyo marka bogga la magacaabayo.", + "visualeditor-dialog-meta-categories-defaultsort-label": "U kala saar boggan si caadi ah sida", + "visualeditor-dialog-meta-categories-hidden": "Qaybtan waxaa loo dejiyay in aan lagu muujin bogagga lagu daro.", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Qeybaha qarsoon", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Qaybaha iswaafaqa", + "visualeditor-dialog-meta-categories-input-movecategorylabel": "U rari qaybtaan halkan", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Qayb cusub", + "visualeditor-dialog-meta-categories-input-placeholder": "Ku dar qayb", + "visualeditor-dialog-meta-categories-missing": "Qaybtani ma laha bog sharaxaad ah.", + "visualeditor-dialog-meta-categories-options": "Xulashooyinka", + "visualeditor-dialog-meta-categories-section": "Qaybaha", + "visualeditor-dialog-meta-categories-sortkey-label": "U kala sooc boggan sidii uu u magacaaban yahay", + "visualeditor-dialog-meta-languages-code-label": "Koodhka luuqadda", + "visualeditor-dialog-meta-languages-label": "Luuqadaha", + "visualeditor-dialog-meta-languages-link-label": "Bogga la xiriira", + "visualeditor-dialog-meta-languages-name-label": "Luuqadda", + "visualeditor-dialog-meta-languages-readonlynote": "Tani waa liiska bogagga ku qoran luqado kale ee ku xiran boggan. Hadda, waxaa kaliya lagu tafatiri karaa qaabka isha ama Wikidata.", + "visualeditor-dialog-meta-languages-section": "Luuqadaha", + "visualeditor-dialog-meta-settings-displaytitle": "Cinwaanka muuqda", + "visualeditor-dialog-meta-settings-displaytitle-help": "Waxaad beddeli kartaa sida cinwaanka boggan loo muujiyo adigoo dejinaya summad kale oo lagu soo bandhigo halkiisa.", + "visualeditor-dialog-meta-settings-hiddencat-help": "Waxaad ka hortagi kartaa in qaybtan lagu muujiyo liiska qaybaha ee bogagga xubnaha. Tani waxay faa’iido u leedahay qaybaha ay xiisaynayaan tafatirayaasha laakiin aan xiiso u lahayn inta badan akhristayaasha, sida bogagga u baahan sawir.", + "visualeditor-dialog-meta-settings-hiddencat-label": "Qaybta qarsoon", + "visualeditor-dialog-meta-settings-index-default": "Caadi", + "visualeditor-dialog-meta-settings-index-disable": "Maya", + "visualeditor-dialog-meta-settings-index-force": "Haa", + "visualeditor-dialog-meta-settings-index-help": "Waxaad ku qasbi kartaa mashiinnada raadinta in ay boggan ku muujiyaan natiijooyinkooda khuseeya, ama in aysan sidaas samayn. Doorashadani ma saameyso raadinta gudaha bogga.", + "visualeditor-dialog-meta-settings-index-label": "U oggolow boggan in ay mashiinnada raadinta ku daraan", + "visualeditor-dialog-meta-settings-label": "Dejinta bogga", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Caadi", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Maya", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Haa", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Waxaad ku qasbi kartaa in boggan lagu muujiyo tab dheeraad ah oo ka so kow tab-ka \"$1\", taas oo fududaynaysa in qayb cusub lagu daro, ama aad ka hortagi kartaa in uu soo muuqdo haddii uu si kale u soo", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Ku muuji boggan tab kuu oggolaanaya in lagu daro qayb cusub", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "Waxaad ka hortagi kartaa in waxa ku jira boggan si toos ah loogu beddelo qoraallo kale.", + "visualeditor-dialog-meta-settings-nocontentconvert-label": "Ha u beddelin nuxurka noocyada kala duwan ee luqadda", + "visualeditor-dialog-meta-settings-noeditsection-help": "Waxaad joojin kartaa in xiriiriyeyaasha tafatirka ay ka muuqdaan agta qayb kasta, marka ay jirto xaalad aan caadi ahayn oo taas ku habboon.", + "visualeditor-dialog-meta-settings-noeditsection-label": "Ka dami xiriiriyeyaasha tafatirka ee ka ag muuqda cinwaan kasta oo boggan ku jira.", + "visualeditor-dialog-meta-settings-nogallery-help": "Waxaad ka hortagi kartaa in qaybtan ay faylasha xubnaha u muujiso sida gallery, haddii ay taasi ku habboonayn xaaladdan.", + "visualeditor-dialog-meta-settings-nogallery-label": "Dami gallery-ga", + "visualeditor-dialog-meta-settings-notitleconvert-help": "Waxaad ka hortagi kartaa in cinwaanka boggan si toos ah loogu beddelo qoraallo kale.", + "visualeditor-dialog-meta-settings-notitleconvert-label": "Ha u beddelin cinwaanka boggan kala duwanaanshaha luqadaha", + "visualeditor-dialog-meta-settings-redirect-help": "Waxaad ka dhigi kartaa boggan dib u hagis, oo si toos ah u geynaya akhristayaasha bog kale oo wiki-kan ah. Tani waxay faa’iido u leedahay higgaad khaldan iyo magacyo ama fikrado kale oo la mid ah. Haddii aad sidaas sameyso, akhristayaashu ma arki doonaan waxa ku jira boggan.", + "visualeditor-dialog-meta-settings-redirect-label": "U jihee boggan", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Bogga bartilmaameedka ee dib u hagista", + "visualeditor-dialog-meta-settings-redirect-statichelp": "Waxaad ka hortagi kartaa in dib u hagistan si toos ah loo cusboonaysiiyo marka bogga ay u jihaysan tahay la raro, xaaladda aadka u dhifka ah ee tani loo baahdo.", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Ka hortag in dib u hagistan la cusboonaysiiyo marka bogga bartilmaameedka la raro.", + "visualeditor-dialog-meta-settings-section": "Dejinta bogga", + "visualeditor-dialog-meta-settings-toc-default": "Haddii loo baahdo", + "visualeditor-dialog-meta-settings-toc-disable": "Marnaba", + "visualeditor-dialog-meta-settings-toc-force": "Marwalba", + "visualeditor-dialog-meta-settings-toc-help": "Waxaad ku qasbi kartaa in tusmada ee liis garaysa cinwaan kasta oo bogga ku jira ay ka soo muuqato bogagga leh wax ka yar afar cinwaan, ama aad ka hortagi kartaa in ay gabi ahaanba soo muuqato. Sida caadiga ah, waxay soo muuqataa haddii boggu leeyahay afar ama ka badan cinwaan.", + "visualeditor-dialog-meta-settings-toc-label": "Muuji tusmada mawduucyada", + "visualeditor-dialog-meta-templatesused-noresults": "Wax tusmo ah lama helin.", + "visualeditor-dialog-meta-title": "Xulashooyinka", + "visualeditor-dialog-table-collapsed": "U laaban markii hore", + "visualeditor-dialog-table-collapsible": "La laabi karo", + "visualeditor-dialog-table-sortable": "La kala sooci karo", + "visualeditor-dialog-table-wikitable": "Qaabaysan (wikitable)", + "visualeditor-dialog-template-title": "Tusmo", + "visualeditor-dialog-transclusion-action-save": "Kaydi", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Tusmada ma jiro.", + "visualeditor-dialog-transclusion-template-title-modifier": "Dukumeentiga tusmadaan iyo magacyada [//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter xuduudaha] (haddii ay jiraan) lama heli karo marka la tafatirayo tusmada isticmaala hab qoraal isku dhex jira ama wax beddelayaal, sida [//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst].", + "visualeditor-dialog-transclusion-template-widget-aria": "Riix Booska si aad u doorato tusmada.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Riix Ctrl+Del si aad u tirtirto tusmada, xuduudihiisa iyo qiimayaashooda. Riix Ctrl+Shift+Fallaaraha si aad tusmada ugu dhaqaajiso kor ama hoos.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Riix Ctrl+Del si aad u tirtirto tusmada, xuduudihiisa iyo qiimayaashooda.", + "visualeditor-dialog-transclusion-add-wikitext": "Ku dar wikitext", + "visualeditor-dialog-transclusion-add-param-error-alias": "\"$1\" hore ayaa loogu daray sida \"$2\". Fadlan hubi xulashooyinka ku yaal dhinaca. Tani waxay sabab u tahay isticmaalka [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases aliases] ama [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label calaamadaha].", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" laguma dari karo sababtoo ah xuduuddan waxaa loo calaamadeeyay [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated la joojiyay].", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Laguma dari karo xuduudda \"$2\" laba jeer.", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "Xuduudda \"$2\" hore ayaa diyaar u ah isticmaal. Fadlan hubi xulashooyinka ku yaal dhinaca.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 waa xaraf mamnuuc ah. Fadlan ka saar si aad u darto xuduudda.", + "visualeditor-dialog-transclusion-add-param-help": "Haddii la yaqaan, geli magacyada [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters xuduudaha aan la diiwaangelin]. Ogow in kaliya xuduudaha uu tusmadu yaqaan ay saameyn yeelan doonaan. Waxaad ka heli kartaa macluumaad ku saabsan xuduudaha jira bogga [[$1|tusmada]].", + "visualeditor-dialog-transclusion-add-param-placeholder": "Magaca halbeegga", + "visualeditor-dialog-transclusion-add-param-save": "Ku dar", + "visualeditor-dialog-transclusion-add-template": "Ku dar tusmo", + "visualeditor-dialog-transclusion-add-template-button": "Ku dar tusmo", + "visualeditor-dialog-transclusion-add-template-save": "Ku dar", + "visualeditor-dialog-transclusion-add-undocumented-param": "Ku dar xuduud aan la diiwaangelin", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Ku laabo raadinta? Isbeddelladaada waa lumi doonaan, tanina lama celin karo.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Xir tafatiraha tusmada? Isbeddelladaada waa lumi doonaan, tanina lama celin karo.", + "visualeditor-dialog-transclusion-collapse-options": "Qari xulashooyinka", + "visualeditor-dialog-transclusion-confirmation-discard": "Iska tuur waxkabedellada", + "visualeditor-dialog-transclusion-confirmation-reject": "Sii wad wax ka beddelka", + "visualeditor-dialog-transclusion-contextitem-description": "Waxaa laga soo saaray: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Soo raraya…", + "visualeditor-dialog-transclusion-expand-options": "Muuji xulashooyinka", + "visualeditor-dialog-transclusion-filter-hide-unused": "Qari kuwa aan la isticmaalin", + "visualeditor-dialog-transclusion-filter-no-match": "Isku mid la’aan lama helin", + "visualeditor-dialog-transclusion-filter-placeholder": "Raadi goob", + "visualeditor-dialog-transclusion-filter-show-all": "Muuji dhammaan", + "visualeditor-dialog-transclusion-filter-title": "Raadinta xuduudaha ee $1", + "visualeditor-dialog-transclusion-help-title": "Taageerada tafatirka tusmada", + "visualeditor-dialog-transclusion-help-message": "Tusmadu waxay bixisaa qaabeynta waxa ku jira. Tafatirahan wuxuu muujinayaa xulashooyinka uu tusmadu bixiyo dhinaca bidix, waxaana qiimayaal lagu dari karaa xulashooyinkaas dhinaca midig.", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Caawimaad ku saabsan tafatirka tusmada]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions Furayaasha gaaban ee kiiboodhka]", + "visualeditor-dialog-transclusion-deprecated-parameter": "Qayb duugowday", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "Goobtan waa la joojiyay. $1", + "visualeditor-dialog-transclusion-loading": "Wuu soo shubanayaa...", + "visualeditor-dialog-transclusion-multipart-message": "Hadda waxaad tafatireysaa tusmada, waxaana jira hal ama in ka badan oo [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content xog la xiriirta] (wikitext iyo/ama tusmada kale oo dheeraad ah).", + "visualeditor-dialog-transclusion-no-template-data-description": "Tusmada waxaa ka maqan [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData], xuduudihiisuna si toos ah ayaa loo sameeyay . Sidaas darteed, tusmada iyo xuduudihiisu ma laha sharaxaad. Waxaa laga yaabaa in macluumaad dheeraad ah laga helo [[$1|bogga tusmada]].", + "visualeditor-dialog-transclusion-no-template-description": "Tusmada \"$1\" weli ma laha sharaxaad, laakiin waxaa laga yaabaa in macluumaad laga helo [[$2|bogga tusmada]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Tusmada ma laha xuduudo la diiwaangeliyay waxaana laga yaabaa in loogu talagalay in aan xuduudo la isticmaalin.", + "visualeditor-dialog-transclusion-param-default": "Caadi: $1", + "visualeditor-dialog-transclusion-param-example-long": "Tusaale $1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "Riix Booska si aad u darto ama uga saarto xuduudaha. Riix Geli si aad u darto xuduud isla markaana si degdeg ah u tafatirto qiimaheeda. Marka xuduud hore loo doortay, riix Geli si aad u tafatirto qiimaha.", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Xuduudaha ee $1", + "visualeditor-dialog-transclusion-param-undocumented": "(xuduud aan la diiwaangelin)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Raadi tusmada", + "visualeditor-dialog-transclusion-required-parameter": "Qayb lagama maarmaan ah", + "visualeditor-dialog-transclusion-required-parameter-description": "Qaybta waa lagama maarmaan.", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Dib u noqo", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Sii wad si kastaba", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "Qaybta ({{PLURAL:$1|lagama maarmaanka|lagama maarmaanka ah}}) ayaa maqan", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "Ma hubtaa inaad rabto inaad sii waddo adigoon buuxin $1 {{PLURAL:$2|qayb|qaybo}}?", + "visualeditor-dialog-transclusion-see-template": "Tusmada waa kuwo ay isticmaaleyaashu sameeyaan waxaana laga yaabaa inaysan lahayn sharaxaad dhammaystiran. Waxaa laga yaabaa in macluumaad dheeraad ah laga helo [[$2|bogga tusmada]].", + "visualeditor-dialog-transclusion-title-insert-template": "Geli tusmo", + "visualeditor-dialog-transclusion-title-insert-known-template": "Geli: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Wax ka beddel: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Waxyaabaha ku jira tusmada", + "visualeditor-dialog-transclusion-template-search": "Raadi tusmada", + "visualeditor-dialog-transclusion-template-search-help": "Raadi tusmada aad rabto inaad geliso adigoo isticmaalaya erey muhiim ah oo lagu aqoonsado. Tusmooyinka leh sharaxaad ayaa u badan inay si fiican ula shaqeeyaan tifaftiraha muuqaalka.", + "visualeditor-dialog-transclusion-wikitext": "Wikitext", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "Riix Booska si aad u doorato qaybta wikitext. Riix Geli si aad u doorato oo aad u tafatirto wikitext-ka.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "Riix Ctrl+Del si aad u tirtirto qaybta wikitext. Riix Ctrl+Shift+Fallaarrada si aad qaybta kor ama hoos ugu dhaqaajiso.", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Riix Ctrl+Del si aad u tirtirto qaybta wikitext.", + "visualeditor-dialogbutton-media-tooltip": "Sawirro iyo warbaahin", + "visualeditor-dialogbutton-template-tooltip": "Tusmo", + "visualeditor-editconflict": "Isbeddelladaadii lama kaydin karin sababo la xiriira isku dhac tafatir. Ma doonaysaa {{GENDER:|inaad}} gacanta ku xalliso isku dhaca?", + "visualeditor-editingtabdialog-body": "{{SITENAME}} hadda wuxuu xasuustaa tifaftiraha aad doorbidayso. Waxaad beddeli kartaa qaabka tafatirka inta aad wax tafatireyso, sidoo kalena waad beddeli kartaa dooqyadaada mar dambe.", + "visualeditor-editingtabdialog-ok": "Isticmaal tifaftirihii aan adeegsaday tafatirkeygii ugu dambeeyay", + "visualeditor-editingtabdialog-title": "Tab-yada tafatirka", + "visualeditor-editnotices-tool": "{{PLURAL:$1|ma jirto wargalin|hal wargalin|laba wargalinood|$1 wargalinno|$1 wargalin}}", + "visualeditor-editnotices-tooltip": "Ogeysiisyada tafatirka", + "visualeditor-editsummary": "Sharax waxa aad beddeshay", + "visualeditor-editsummary-characters-remaining": "Tirada xarfo ee hadhay", + "visualeditor-educationpopup-dismiss": "Hagaag, waan fahmay", + "visualeditor-expandable-less": "Ka yar", + "visualeditor-expandable-more": "Dheeraad", + "visualeditor-feedback-defaultmessage": "URL-ka: $1", + "visualeditor-formatdropdown-format-mw-heading1": "Cinwaanka bogga", + "visualeditor-formatdropdown-format-mw-heading2": "Cinwaan", + "visualeditor-formatdropdown-format-mw-heading3": "Cinwaan-hoosaad 1", + "visualeditor-formatdropdown-format-mw-heading4": "Cinwaan-hoosaad 2", + "visualeditor-formatdropdown-format-mw-heading5": "Cinwaan-hoosaad 3", + "visualeditor-formatdropdown-format-mw-heading6": "Cinwaan-hoosaad 4", + "visualeditor-generating-wikitext-progress": "Wikitext ayaa la soo saaraya", + "visualeditor-includes-noinclude-start": "Bilowga waxyaabaha laga reebay xigashooyinka", + "visualeditor-includes-noinclude-end": "Dhammaadka waxyaabaha laga reebay soo koobidda", + "visualeditor-includes-onlyinclude-start": "Bilowga waxyaabaha loo oggol yahay in lagu daro soo koobidda", + "visualeditor-includes-onlyinclude-end": "Dhammaadka waxyaabaha loo oggol yahay in lagu soo koobo", + "visualeditor-includes-includeonly": "Waxyaabaha kaliya loogu talagalay soo koobid", + "visualeditor-includes-noinclude-description": "Marka waxyaabaha boggan laga isticmaalo bog kale, waxa ku jira halkan ilaa calaamadda dhammaadka ee u dhiganta lama soo gelin doono. Ka taxaddar marka aad tafatireyso waxa ka baxsan calaamadahan, maadaama bogag kale ay isticmaali karaan.", + "visualeditor-includes-onlyinclude-description": "Marka waxyaabaha boggan laga isticmaalo bog kale, kaliya waxa ku jira halkan ilaa calaamadda dhammaadka ee u dhiganta ayaa la soo gelin doonaa. Ka taxaddar marka aad tafatireyso waxa u dhexeeya calaamadahan, maadaama bogag kale ay isticmaali karaan.", + "visualeditor-includes-includeonly-description": "Marka waxyaabaha boggan laga isticmaalo bog kale, waxa halkan lagu dari doonaa waxyaabaha dheeraadka ah ee soo socda:", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Wax badan ka baro transclusion-ka qayb ahaan]", + "visualeditor-languages-tool": "Luuqadaha", + "visualeditor-linkcontext-uneditable": "Waan ka xunnahay, xiriirkan hadda kaliya waxaa lagu beddeli karaa habka isha.", + "visualeditor-linkinspector-button-link-external": "Bogga dibadda", + "visualeditor-linkinspector-button-link-internal": "Raadi bogagga gudaha", + "visualeditor-linkinspector-convert-link-isbn": "U beddel isku xirka ISBN", + "visualeditor-linkinspector-convert-link-pmid": "U beddel isku xirka PMID", + "visualeditor-linkinspector-convert-link-rfc": "U beddel isku xirka RFC", + "visualeditor-linkinspector-educationpopup-text": "Erayada muhiimka ah ku xiro maqaallo kale oo wiki ah ama xitaa bogag kale oo internet ah. Taasi waxay ka caawinaysaa akhristayaasha inay si fiican u fahmaan macnaha.", + "visualeditor-linkinspector-educationpopup-title": "Xiriirro", + "visualeditor-linkinspector-illegal-title": "Cinwaanka bogga aan ansax ahayn", + "visualeditor-linkinspector-invalid-blocked": "Dadka wiki-gan waxay go’aansadeen in la xannibo xiriirrada goobtan. Fadlan isku day xiriir kale.", + "visualeditor-linkinspector-invalid-external": "Geli URL buuxa, tusaale https://example.org", + "visualeditor-linknodeinspector-add-label": "Ku dar calaamad", + "visualeditor-linknodeinspector-title": "Xiriir fudud", + "visualeditor-magiclinknodeinspector-convert-link": "U beddel xiriir fudud", + "visualeditor-magiclinknodeinspector-title-isbn": "Xiriirka ISBN", + "visualeditor-magiclinknodeinspector-title-pmid": "Xiriirka PMID", + "visualeditor-magiclinknodeinspector-title-rfc": "Xiriirka RFC", + "visualeditor-media-title-audio": "Cod", + "visualeditor-media-title-image": "Sawir", + "visualeditor-media-title-video": "Fiidiyow", + "visualeditor-meta-tool": "Xulashooyinka", + "visualeditor-mweditmode-tooltip": "Beddel tafatiraha", + "visualeditor-mweditmodesource-progress": "U beddelaya tafatirka koodhka…", + "visualeditor-mweditmodesource-tool-current": "Tafatirka koodhka", + "visualeditor-mweditmodesource-tool-unavailable": "Tafatirka koodhka halkan lagama heli karo", + "visualeditor-mweditmodeve-popup-body": "Waxaad mar kasta ugu laaban kartaa tafatirka muuqaalka adigoo gujinaya astaantan.", + "visualeditor-mweditmodeve-popup-title": "Waxaad u beddeshay tafatirka koodhka", + "visualeditor-mweditmodeve-progress": "U beddelaya tafatirka muuqaalka…", + "visualeditor-mweditmodeve-showagain": "Ha mar kale i tusin fariintan", + "visualeditor-mweditmodeve-tool-current": "Tafatirka muuqaalka", + "visualeditor-mweditmodeve-tool-unavailable": "Tafatirka muuqaalka halkan lagama heli karo", + "visualeditor-mweditmodewt-popup-body": "Waxaad mar kasta ku beddeli kartaa tafatirka koodhka adigoo gujinaya astaantan.", + "visualeditor-mweditmodewt-popup-title": "Waxaad u beddeshay tafatirka muuqaalka", + "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|sawir|sawirro}}", + "visualeditor-mwgallerydialog-caption-field-label": "Sharaxaadda gallery-ga", + "visualeditor-mwgallerydialog-card-images": "Sawir", + "visualeditor-mwgallerydialog-card-options": "Xulashooyinka", + "visualeditor-mwgallerydialog-classes-field-label": "Fasalada CSS", + "visualeditor-mwgallerydialog-classes-input-placeholder": "Magacyada fasalada, oo lagu kala saaray meel bannaan", + "visualeditor-mwgallerydialog-empty-gallery-message": "Gallery-gu waa madhan yahay.", + "visualeditor-mwgallerydialog-heights-field-label": "Dhererka sawirka", + "visualeditor-mwgallerydialog-heights-input-placeholder": "Dhererka caadiga ah: $1 px", + "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Hab dhaqameed aan lahayn xariijimo", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed": "Isku urursan", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-hover": "Isku urursan, oo leh sharaxaad marka la dul maro", + "visualeditor-mwgallerydialog-mode-dropdown-label-packed-overlay": "Waxaa lagu buuxiyay qoraallo dul saaran", + "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Bandhig sawirro", + "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Hab dhaqameed", + "visualeditor-mwgallerydialog-mode-field-label": "Qaabka soo bandhigista", + "visualeditor-mwgallerydialog-perrow-field-label": "Sawirro safkiiba", + "visualeditor-mwgallerydialog-remove-button-label": "Ka saar sawirka", + "visualeditor-mwgallerydialog-search-button-label": "Ku dar sawir cusub", + "visualeditor-mwgallerydialog-show-filename-field-label": "Muuji magacyada faylasha", + "visualeditor-mwgallerydialog-styles-field-label": "Qaababka CSS", + "visualeditor-mwgallerydialog-styles-input-placeholder": "Xeerarka CSS, oo lagu kala saaray semicolon", + "visualeditor-mwgallerydialog-title": "Sawirro la ururiyey", + "visualeditor-mwgallerydialog-widths-field-label": "Ballaca sawirka", + "visualeditor-mwgallerydialog-widths-input-placeholder": "Ballaca caadiga ah: $1 px", + "visualeditor-mwpredialog-convert": "Ogolow qaabaynta qoraalka", + "visualeditor-mwpredialog-title": "Qoraal fudud oo hore loo qaabeyay", + "visualeditor-mwsignature-tool": "Saxiixaaga", + "visualeditor-preference-visualeditor": "Daar tifaftiraha muuqaalka", + "visualeditor-preference-newwikitexteditor-enable": "Isticmaal habka wikitext ee ku jira tifaftiraha muuqaalka, halkii aad ka adeegsan lahayd tifaftire wikitext oo kale", + "visualeditor-preference-newwikitexteditor-help": "Tan mararka qaar waxaa loo yaqaan '2017 tafatiraha wikitext'.", + "visualeditor-preference-tabs": "Habka tafatirka:", + "visualeditor-preference-tabs-multi-tab": "Ii muuji labada tab ee tafatirka", + "visualeditor-preference-tabs-prefer-ve": "Had iyo jeer i sii tifaftiraha muuqaalka haddii ay suurtagal tahay", + "visualeditor-preference-tabs-prefer-wt": "Had iyo jeer i sii tifaftiraha koodhka", + "visualeditor-preference-tabs-remember-last": "Xusuuso tafatirihii aan ugu dambeeyay isticmaalay", + "visualeditor-preference-collab-label": "Tafatir wadajir ah", + "visualeditor-preference-collab-description": "Invite other users to join your edit session in the visual editor.\nKu casuun isticmaaleyaal kale inay ku soo biiraan fadhigaaga tafatirka ee tifaftiraha muuqaalka.", + "visualeditor-rebase-client-export": "Dhoofin", + "visualeditor-rebase-client-export-start": "Dhoofin…", + "visualeditor-rebase-client-import": "Soo dejinta", + "visualeditor-rebase-client-import-name": "Cinwaanka bogga", + "visualeditor-rebase-client-title-help": "Waxaad awoodi doontaa inaad dib u eegto isbeddellada ka hor inta aan la kaydin.", + "visualeditor-recreate": "Boggan waa la tirtiray tan iyo markii aad bilowday tafatirka. Riix \"$1\" si aad mar kale u abuurto.", + "visualeditor-redirect-description": "U jihee $1", + "visualeditor-savedialog-identify-anon": "Mar dambe kuma gashanid. Haddii aad sii waddo, ciwaankaaga IP-ga ayaa la duubi doonaa taariikhda wax ka beddelka boggan.", + "visualeditor-savedialog-identify-temp": "Waxaad hadda isticmaaleysaa magaca isticmaale ee ku meelgaarka ah $1. Haddii aad sii waddo, wax ka beddelkaaga waxaa lala xiriirin doonaa magacan isticmaale.", + "visualeditor-savedialog-identify-user": "Waxaad hadda ku gashay sidii [[User:$1|$1]]. Haddii aad sii waddo, wax ka beddelkaaga waxaa lala xiriirin doonaa akoonkan.", + "visualeditor-savedialog-keyboard-shortcut-submit": "Waxaad riixi kartaa $1 si aad u kaydiso wax ka beddelkaaga.", + "visualeditor-savedialog-label-publish-short": "Daabac", + "visualeditor-savedialog-label-publish-short-start": "Daabac…", + "visualeditor-savedialog-label-resolve-conflict": "Xallin isku dhac", + "visualeditor-savedialog-label-resume-editing": "Sii wad tafatirka", + "visualeditor-savedialog-label-review": "Dib u eeg isbeddelladaada", + "visualeditor-savedialog-label-review-good": "Ku laabo foomka kaydinta", + "visualeditor-savedialog-label-save-short": "Kaydi", + "visualeditor-savedialog-label-save-short-start": "Kaydi…", + "visualeditor-savedialog-review-nosummary": "Ma jiro koobitaanka wax ka beddelka", + "visualeditor-savedialog-review-visual": "Muuqaal", + "visualeditor-savedialog-review-wikitext": "Wikitext", + "visualeditor-savedialog-title-conflict": "Isku dhac", + "visualeditor-savedialog-title-preview": "Eeg isbeddelladaada ka hor inta aanad kaydin", + "visualeditor-savedialog-title-review": "Dib u eeg isbeddelladaada", + "visualeditor-savedialog-title-save": "Keydi isbeddelladaada", + "visualeditor-section-body-placeholder": "Qayb cusub", + "visualeditor-section-title-placeholder": "Mowduuc", + "visualeditor-loaderror-revidconflict": "Aqoonsiyada dib u eegista ee uu server-ku soo celiyay isma waafaqsana (dukumeenti: $1, metadata: $2).", + "visualeditor-loaderror-wrongmode": "Waxaa la isku dayay in tafatiraha lagu shubo hab khaldan (nooca xogta: \"$1\", habka tafatirka: \"$2\").", + "visualeditor-settings-tool": "Dejinta bogga", + "visualeditor-special-characters-group-other": "Badanaa la isticmaalo", + "visualeditor-templatesused-tool": "Tusmada la isticmaalay", + "visualeditor-title-error": "Cinwaan aan sax ahayn.", + "visualeditor-toload": "Tafatiraha hadda wuu soo shubanayaa. Haddii aad weli aragto fariintan dhowr ilbiriqsi kadib, fadlan [$1 dib u cusboonaysii bogga].", + "visualeditor-tooltip-non-breaking-space": "Boos aan kala go'in", + "visualeditor-version-label": "Nooca", + "visualeditor-wikitext-progress": "U beddelaya wikitext", + "visualeditor-wikitext-warning": "Waxaad isticmaaleysaa tafatiraha muuqaalka - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitext]] halkan kama shaqeeyo. Si aad ugu beddesho tafatirka koodhka wakhti kasta adigoon lumin isbeddelladaada, riix badhanka beddelka.", + "visualeditor-wikitext-warning-title": "Wikitext calaamadeyn ayaa la ogaaday", + "visualeditor-wikitextconvert-title": "U beddel qaabaynta wikitext?", + "visualeditor-wikitextconvert-message": "Waxaad dhejisay nuxur leh qaabayn hodan ah. Ma rabtaa in qaabayntan loo beddelo wikitext?", + "visualeditor-wikitextconvert-convert": "U beddel wikitext" } diff --git a/i18n/ve-mw/sq.json b/i18n/ve-mw/sq.json index a74e55410f..882bbaa7fb 100644 --- a/i18n/ve-mw/sq.json +++ b/i18n/ve-mw/sq.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Agonqurdina", - "Amire80", "Ammartivari", "Arianit", "Besnik b", @@ -17,37 +16,49 @@ "Ritam", "TMg", "Techlik", - "Vyolla" + "Vyolla", + "Xhulianoo" ] }, "collabpad-doctitle": "KolabPad: $1", "collabpad-import-subtitle": "Importuar nga $1", "collabpad": "KolabPad", - "tooltip-ca-ve-edit": "Përpunoni këtë faqe", - "tooltip-ca-editsource": "Përpunoni kodin burim të kësaj faqeje", - "tooltip-ca-createsource": "Krijoni kodin burim të kësaj faqeje", - "visualeditor-advancedsettings-tool": "Rregullime të mëtejshme", - "visualeditor-autosave-modified-prompt-accept": "Rikthejuni përpunimit", + "tooltip-ca-ve-edit": "Redakto këtë faqe", + "tooltip-ca-ve-edit-local": "Redakto faqen e përshkrimit lokal", + "tooltip-ca-ve-create": "Krijo këtë faqe", + "tooltip-ca-ve-create-local": "Krijo faqen e përshkrimit lokal", + "tooltip-ca-editsource": "Redakto kodin burimor të kësaj faqeje", + "tooltip-ca-editsource-local": "Redakto kodin burimor të faqes së përshkrimit lokal", + "tooltip-ca-createsource": "Krijo kodin burimor të kësaj faqeje", + "tooltip-ca-createsource-local": "Krijo kodin burimor të faqes së përshkrimit lokal", + "visualeditor-advancedsettings-tool": "Cilësimet e përparuara", + "visualeditor-autosave-modified-prompt-accept": "Riktheju redaktimit", "visualeditor-autosave-modified-prompt-message": "Kjo faqe qe përpunuar pas herës së fundit që e ngarkuat. Doni të rimerret përpunimi {{GENDER:|juaj}} i versionit të vjetër, apo të fillohet një përpunim i ri i versionit më të ri?", - "visualeditor-autosave-modified-prompt-reject": "Filloni një përpunim të ri", - "visualeditor-autosave-modified-prompt-title": "Të rimerret përpunimi {{GENDER:|juaj}}?", - "visualeditor-autosave-not-recovered-text": "Ndryshimet tuaja të paruajtura s’u rikthyen dot.", - "visualeditor-autosave-not-recovered-title": "Rikthimi i ndryshimit dështoi", - "visualeditor-autosave-recovered-text": "Ndryshimet tuaja të paruajtura u rikthyen automatikisht.", - "visualeditor-autosave-recovered-title": "Ndryshimet u rikthyen", - "visualeditor-backbutton-tooltip": "Kthehuni mbrapsht", - "visualeditor-ca-createlocaldescriptionsource": "Shtoni burim vendor përshkrimi", - "visualeditor-ca-createsource": "Krijoni burim", - "visualeditor-ca-editlocaldescriptionsource": "Përpunoni burim vendor përshkrimi", - "visualeditor-ca-editsource": "Përpunoni burim", - "visualeditor-ca-editsource-section": "përpunoni burim", - "visualeditor-categories-tool": "Kategori", - "visualeditor-changedesc-mwlanguagevariant": "U ndryshua markup varianti gjuhe", - "visualeditor-changedesc-mwredirect": "U ndryshua objektiv ridrejtimi nga $1 në $2", - "visualeditor-changedesc-mwtransclusion": "U ndryshuan parametra gjedhesh", - "visualeditor-desc": "Përpunues pamor për MediaWiki-n", + "visualeditor-autosave-modified-prompt-reject": "Fillo një redaktim të ri", + "visualeditor-autosave-modified-prompt-title": "Dëshiron të rikthehesh te përpunimi {{GENDER:|yt}}?", + "visualeditor-autosave-not-recovered-text": "Ndryshimet e tua të paruajtura nuk mund të rikuperoheshin.", + "visualeditor-autosave-not-recovered-title": "Rikuperimi i ndryshimit dështoi", + "visualeditor-autosave-recovered-text": "Ndryshimet e tua të paruajtura u rikuperuan automatikisht.", + "visualeditor-autosave-recovered-title": "Ndryshimet u rikuperuan", + "visualeditor-backbutton-tooltip": "Kthehu prapa", + "visualeditor-ca-createlocaldescriptionsource": "Shto burimin lokal të përshkrimit", + "visualeditor-ca-createsource": "Krijo burimin", + "visualeditor-ca-editlocaldescriptionsource": "Redakto burimin e përshkrimit lokal", + "visualeditor-ca-editsource": "Redakto burimin", + "visualeditor-ca-editsource-section": "redakto burimin", + "visualeditor-ca-editsource-section-hint": "Redakto kodin burimor të pjesës: $1", + "visualeditor-categories-tool": "Kategoritë", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Çelësi i renditjes ndryshoi nga $1 në $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Çelësi i renditjes u vendos në $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Çelësi i renditjes u hoq nga $1", + "visualeditor-changedesc-mwlanguagevariant": "Shënimi i variantit të gjuhës ndryshoi", + "visualeditor-changedesc-mwredirect": "Objektivi i ridrejtimit u ndryshua nga $1 te $2", + "visualeditor-changedesc-mwtransclusion": "Parametrat e stampës u ndryshuan", + "visualeditor-desc": "Redaktues pamor për MediaWiki-n", "visualeditor-descriptionpagelink": "Project:Përpunuesi Pamor", - "visualeditor-dialog-media-alttext-section": "Tekst alternativ", + "visualeditor-dialog-extension-abandonedit": "A je i sigurt që dëshiron ta mbyllësh këtë dialog pa zbatuar ndryshimet e tua?", + "visualeditor-dialog-media-alttext-checkbox": "Përdor mbishkrimin si tekstin alternativ", + "visualeditor-dialog-media-alttext-section": "Teksti alternativ", "visualeditor-dialog-media-alttext-section-help": "Këtë mund ta përdorni për të shkruar një përshkrim teksti për persona që s’e shohin dot objektin. Përshkrimi duhet të jetë i mjaftueshëm që ata të kuptojnë qëllimin dhe informacionin e dhënë nga objekti media. Kjo është jetike për përdorues të verbër dhe persona të tjerë që përdorin program leximi ekrani ose shfletues që shfaqin vetëm tekst.", "visualeditor-dialog-media-change-image": "Ndryshoni figurën", "visualeditor-dialog-media-choose-image": "Përdor këtë figurë", @@ -59,37 +70,35 @@ "visualeditor-dialog-media-info-artist": "Ngarkuar nga $1", "visualeditor-dialog-media-info-audiofile": "Kartelë audio", "visualeditor-dialog-media-info-created": "Krijuar më: $1", - "visualeditor-dialog-media-info-ellipsis": "…", - "visualeditor-dialog-media-info-meta-artist": "Artist: $1", - "visualeditor-dialog-media-info-moreinfo": "Më tepër të dhëna", - "visualeditor-dialog-media-info-readmore": "Lexoni më tepër", - "visualeditor-dialog-media-info-separator": "·", + "visualeditor-dialog-media-info-meta-artist": "Autori: $1", + "visualeditor-dialog-media-info-moreinfo": "Më shumë informacion", + "visualeditor-dialog-media-info-readmore": "Lexo më shumë", "visualeditor-dialog-media-info-uploaded": "Ngarkuar më: $1", - "visualeditor-dialog-media-page-advanced": "Të mëtejshme", + "visualeditor-dialog-media-page-advanced": "Të përparuara", "visualeditor-dialog-media-page-general": "Të përgjithshme", "visualeditor-dialog-media-position-checkbox": "Mbështille tekstin rreth këtij objekti", "visualeditor-dialog-media-position-checkbox-help": "Mund të realizoni shfaqjen e këtij objekti media brendazi, me tekstin e faqes, në vend se të jetë pezull. Këtë do të duhej ta bënit rrallë, ngaqë kjo do të dëmtojë rrjedhën e tekstit, nëse ia hiqni shenjën kësaj kutize.", - "visualeditor-dialog-media-position-section": "Pozicion", + "visualeditor-dialog-media-position-section": "Pozicioni", "visualeditor-dialog-media-position-section-help": "Mund të caktoni ku të shfaqet kjo media te faqja. Ndonjëherë kjo përdoret për të ndarë në pjesë një varg të gjatë figurash në njërën anë të faqes.", - "visualeditor-dialog-media-save": "Ruaje", - "visualeditor-dialog-media-search-tab-search": "Kërkoni", - "visualeditor-dialog-media-search-tab-upload": "Ngarkoje", - "visualeditor-dialog-media-size-section": "Madhësi figure", + "visualeditor-dialog-media-save": "Ruaj", + "visualeditor-dialog-media-search-tab-search": "Kërko", + "visualeditor-dialog-media-search-tab-upload": "Ngarko", + "visualeditor-dialog-media-size-section": "Madhësia e imazhit", "visualeditor-dialog-media-size-section-help": "Mund të caktoni sa i madh duket objekti media te faqja. Kjo do të duhej të ishte thuajse përherë madhësia normale, ngaqë një madhësi vetjake juaja do të ndikojë mbi skemën e faqes dhe do të cenojë unitetin e saj.", - "visualeditor-dialog-media-title": "Rregullime mediash", - "visualeditor-dialog-media-type-border": "Cak", + "visualeditor-dialog-media-title": "Cilësimet e medias", + "visualeditor-dialog-media-type-border": "Kufi", "visualeditor-dialog-media-type-frame": "Kornizë", "visualeditor-dialog-media-type-frameless": "Pa kornizë", "visualeditor-dialog-media-type-none": "Bazë", - "visualeditor-dialog-media-type-section": "Lloj figure", + "visualeditor-dialog-media-type-section": "Lloji i imazhit", "visualeditor-dialog-media-type-section-help": "Mund të caktoni se si të shfaqet te faqja objekti media. Thuajse në krejt rastet, për të qenë në një vijë me faqe të tjera, kjo do të duhej të ishte nën formatin miniaturë.", "visualeditor-dialog-media-type-thumb": "Miniaturë", - "visualeditor-dialog-media-upload": "Ngarkoje", - "visualeditor-dialog-meta-advancedsettings-label": "Rregullime të mëtejshme", + "visualeditor-dialog-media-upload": "Ngarko", + "visualeditor-dialog-meta-advancedsettings-label": "Cilësimet e përparuara", "visualeditor-dialog-meta-advancedsettings-section": "Rregullime të mëtejshme", - "visualeditor-dialog-meta-categories-addcategory-label": "Shtoni kategori në këtë faqe", - "visualeditor-dialog-meta-categories-category": "Kategori", - "visualeditor-dialog-meta-categories-data-label": "Kategori", + "visualeditor-dialog-meta-categories-addcategory-label": "Shto një kategori në këtë faqe", + "visualeditor-dialog-meta-categories-category": "Kategoria", + "visualeditor-dialog-meta-categories-data-label": "Kategoritë", "visualeditor-dialog-meta-categories-defaultsort-help": "Mënyrën se si renditet kjo faqe, kur shfaqet brenda një kategorie, mund ta anashkaloni duke caktuar një tjetër tregues për renditje. Kjo përdoret shpesh për t’i bërë faqet rreth personash të shfaqen sipas mbiemrit, por të emërtuara duke shfaqur së pari emrat e tyre.", "visualeditor-dialog-meta-categories-defaultsort-label": "Rendite këtë faqe, si parazgjedhje, si", "visualeditor-dialog-meta-categories-hidden": "Kjo kategori është rregulluar të mos shfaqet në faqe te të cilat shtohet.", @@ -97,13 +106,13 @@ "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Kategori me përputhje", "visualeditor-dialog-meta-categories-input-movecategorylabel": "Zhvendose këtë kategori këtu", "visualeditor-dialog-meta-categories-input-newcategorylabel": "Kategori e re", - "visualeditor-dialog-meta-categories-input-placeholder": "Shtoni kategori", + "visualeditor-dialog-meta-categories-input-placeholder": "Shto një kategori", "visualeditor-dialog-meta-categories-missing": "Kësaj kategorie i mungon një faqe përshkrimi.", - "visualeditor-dialog-meta-categories-options": "Mundësi", - "visualeditor-dialog-meta-categories-section": "Kategori", + "visualeditor-dialog-meta-categories-options": "Mundësitë", + "visualeditor-dialog-meta-categories-section": "Kategoritë", "visualeditor-dialog-meta-categories-sortkey-label": "Rendite këtë faqe si të quhej", "visualeditor-dialog-meta-languages-code-label": "Kod gjuhe", - "visualeditor-dialog-meta-languages-label": "Gjuhë", + "visualeditor-dialog-meta-languages-label": "Gjuhët", "visualeditor-dialog-meta-languages-link-label": "Faqe e lidhur", "visualeditor-dialog-meta-languages-name-label": "Gjuhë", "visualeditor-dialog-meta-languages-readonlynote": "Kjo është një listë e faqeve në gjuhë të tjera të cilat lidhen me këtë faqe. Hëpërhë, mund të përpunohet vetëm me përpunuesin e burimit ose në Wikidata.", @@ -117,7 +126,7 @@ "visualeditor-dialog-meta-settings-index-force": "Po", "visualeditor-dialog-meta-settings-index-help": "Mund t’i detyroni motorët e kërkimeve ta paraqesin këtë faqe në përfundime kërkimesh që prodhojnë, ose t’i detyroni të mos e bëjnë këtë. Kjo mundësi nuk prek kërkimet brenda sajtit.", "visualeditor-dialog-meta-settings-index-label": "Lejoni indeksim të kësaj faqeje nga motorë kërkimesh", - "visualeditor-dialog-meta-settings-label": "Rregullime faqeje", + "visualeditor-dialog-meta-settings-label": "Cilësimet e faqes", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Parazgjedhje", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Jo", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Po", @@ -132,27 +141,27 @@ "visualeditor-dialog-meta-settings-notitleconvert-help": "Mund të parandaloni shndërrim automatik të titullit të kësaj faqeje në skripte të tjera.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Mos e shndërro titullin nga një variant gjuhe në një tjetër", "visualeditor-dialog-meta-settings-redirect-help": "Prej kësaj faqeje mund të krijoni një ridrejtim, një faqe që do t’i shpjerë automatikisht lexuesit te një tjetër faqe në këtë wiki. Kjo është e dobishme në rast gabimesh drejtshkrimi dhe emrash apo konceptesh alternative. Nëse e bëni këtë, lexuesit s’do ta shohin lëndën e kësaj faqeje.", - "visualeditor-dialog-meta-settings-redirect-label": "Ridrejtojeni këtë faqe për te", - "visualeditor-dialog-meta-settings-redirect-placeholder": "Faqe objektiv për ridrejtim", + "visualeditor-dialog-meta-settings-redirect-label": "Ridrejtoje këtë faqe te", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Faqja e synuar për ridrejtim", "visualeditor-dialog-meta-settings-redirect-statichelp": "Mund të parandaloni përditësimin automatik të këtij ridrejtimi kur faqja te e cila ky shpie është lëvizur, për rastin shumë të rrallë që kjo është e nevojshme.", "visualeditor-dialog-meta-settings-redirect-staticlabel": "Parandaloje përditësimin e këtij ridrejtimi, kur faqja e synuar lëvizet.", - "visualeditor-dialog-meta-settings-section": "Rregullime faqeje", - "visualeditor-dialog-meta-settings-toc-default": "Në u dashtë", + "visualeditor-dialog-meta-settings-section": "Cilësimet e faqes", + "visualeditor-dialog-meta-settings-toc-default": "Nëse nevojitet", "visualeditor-dialog-meta-settings-toc-disable": "Kurrë", - "visualeditor-dialog-meta-settings-toc-force": "Përherë", + "visualeditor-dialog-meta-settings-toc-force": "Gjithmonë", "visualeditor-dialog-meta-settings-toc-help": "Mund të detyroni shfaqjen e një tryeze lënde që radhit çdo krye të faqes, për faqe me më pak se katër krye, ose ta bëni të mos shfaqet fare. Si parazgjedhje, do të shfaqet nëse faqja ka katër ose më tepër krye.", "visualeditor-dialog-meta-settings-toc-label": "Shfaq Tryezën e Lëndës", "visualeditor-dialog-meta-templatesused-noresults": "S’u gjetën gjedhe.", "visualeditor-dialog-meta-title": "Mundësi", - "visualeditor-dialog-table-collapsed": "Fillimisht e tkurrur", - "visualeditor-dialog-table-collapsible": "E tkurrshme", + "visualeditor-dialog-table-collapsed": "Fillimisht e palosur", + "visualeditor-dialog-table-collapsible": "E palosshme", "visualeditor-dialog-table-sortable": "E renditshme", "visualeditor-dialog-table-wikitable": "E stilizuar (tabelë wiki)", - "visualeditor-dialog-template-title": "Gjedhe", - "visualeditor-dialog-transclusion-action-save": "Ruaje", - "visualeditor-dialog-transclusion-template-title-nonexistent": "Ky model nuk ekziston.", + "visualeditor-dialog-template-title": "Stampë", + "visualeditor-dialog-transclusion-action-save": "Ruaj", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Kjo stampë nuk ekziston.", "visualeditor-dialog-transclusion-template-title-modifier": "Dokumentimi i modelit dhe emrat e [//www.mediawiki.org/wiki/Manual:Glossary#Parametër parametrit] (në ekzistojnë) nuk janë të arritshme, kur modelet e redaktimit që përdorin sintaksë ose modifikues të mbyllur, si për shembullː [//www.mediawiki.org/wiki/Ndihmë:Zëvendësim zëv].", - "visualeditor-dialog-transclusion-add-wikitext": "Shtoni tekst wiki", + "visualeditor-dialog-transclusion-add-wikitext": "Shto tekst wiki", "visualeditor-dialog-transclusion-add-param-error-alias": " \"$1\" është shtuar si \"$2\". Ju lutem, kontrolloni opsionet anësore. Kjo është për shkak të përdorimit të [//www.mediawiki.org/wiki/Ndihmë:Modeletetëdhënave#pseudonimeve pseudonimeve] ose [//www.mediawiki.org/wiki/Ndihmë:Modeletetëdhënave#etiketave etiketave].", "visualeditor-dialog-transclusion-add-param-error-deprecated": "\"$1\" nuk mund të shtohet, sepse parametri është shenjuar si [//www.mediawiki.org/wiki/Ndihmë:TemplateData#ikundërshtuar i kundërshtuar].", "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Nuk mund të shtoni parametrat me emër të njëjtë.", @@ -160,14 +169,23 @@ "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 është karakter i ndaluar. Ju lutem, hiqeni për të shtuar parametër.", "visualeditor-dialog-transclusion-add-param-help": "Nëse dihet, vendosni emrat e parametrave të padokumentuar. Vini re që vetëm parametrat e njohur nga modeli do të kenë efekt. Ndoshta mund ta gjeni informacionin me parametrat ekzistues në [[$1|faqen e modelit]].", "visualeditor-dialog-transclusion-add-param-placeholder": "Emri i parametrit", - "visualeditor-dialog-transclusion-add-param-save": "Shtoni parametrin", - "visualeditor-dialog-transclusion-add-template": "Shtoni gjedhe", - "visualeditor-dialog-transclusion-add-undocumented-param": "Shtoni parametrin e padokumentuar", - "visualeditor-dialog-transclusion-collapse-options": "Fshini mundësitë", - "visualeditor-dialog-transclusion-contextitem-description": "Prodhuar nga: $1", + "visualeditor-dialog-transclusion-add-param-save": "Shto", + "visualeditor-dialog-transclusion-add-template": "Shto stampë", + "visualeditor-dialog-transclusion-add-template-button": "Shto stampë", + "visualeditor-dialog-transclusion-add-template-save": "Shto", + "visualeditor-dialog-transclusion-add-undocumented-param": "Shto parametër të padokumentuar", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Dëshiron të kthehesh prapa te kërkimi? Ndryshimet e tua do të humbasin dhe kjo nuk mund të zhbëhet.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Dëshiron të mbyllësh redaktuesin e stampave? Ndryshimet e tua do të humbasin dhe kjo nuk mund të zhbëhet.", + "visualeditor-dialog-transclusion-collapse-options": "Fshih mundësitë", + "visualeditor-dialog-transclusion-confirmation-discard": "Hidh poshtë redaktimet", + "visualeditor-dialog-transclusion-confirmation-reject": "Vazhdo redaktimin", + "visualeditor-dialog-transclusion-contextitem-description": "Gjeneruar nga: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Duke ngarkuar...", "visualeditor-dialog-transclusion-expand-options": "Shfaq mundësitë", - "visualeditor-dialog-transclusion-filter-no-match": "Nuk është gjetur asnjë përputhje", - "visualeditor-dialog-transclusion-filter-placeholder": "Gjeni fushën", + "visualeditor-dialog-transclusion-filter-hide-unused": "Fshih të papërdorurat", + "visualeditor-dialog-transclusion-filter-no-match": "Nuk u gjet asnjë përputhje", + "visualeditor-dialog-transclusion-filter-placeholder": "Gjej fushën", + "visualeditor-dialog-transclusion-filter-show-all": "Shfaq të gjitha", "visualeditor-dialog-transclusion-deprecated-parameter": "Fushë e vjetruar", "visualeditor-dialog-transclusion-deprecated-parameter-description": "Fusha është e vjetruar. $1", "visualeditor-dialog-transclusion-loading": "Po ngarkohet…", @@ -176,21 +194,24 @@ "visualeditor-dialog-transclusion-no-template-description": "Gjedhja \"$1\" ende s’ka përshkrim, por mund të ketë pak informacion te [[$2|faqja e gjedhes]].", "visualeditor-dialog-transclusion-param-default": "Parazgjedhje: $1", "visualeditor-dialog-transclusion-param-example-long": "Shembull:$1", - "visualeditor-dialog-transclusion-param-undocumented": "(Parametër i padokumentuar)", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Parametrat në $1", + "visualeditor-dialog-transclusion-param-undocumented": "(parametër i padokumentuar)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Gjej stampën", "visualeditor-dialog-transclusion-required-parameter": "Fushë e domosdoshme", "visualeditor-dialog-transclusion-required-parameter-description": "Fusha është e domosdoshme.", - "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Kthehuni mbrapsht", - "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Vazhdo sido qoftë", - "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Mungon fushë e domosdoshme|Mungojnë fusha të domosdoshme}}", - "visualeditor-dialog-transclusion-required-parameter-is-blank": "Jeni i sigurt se doni të vazhdoni pa plotësuar {{PLURAL:$2|fushën|fushat}} $1?", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Kthehu prapa", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Vazhdo gjithsesi", + "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Mungon një fushë e|Mungojnë disa fusha të}} domosdoshme", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "A je i sigurt që dëshiron të vazhdosh pa plotësuar {{PLURAL:$2|fushën|fushat}} $1?", "visualeditor-dialog-transclusion-see-template": "Modelet janë për përdorim të gjenerueshëm dhe pa përshkrime. Mund të ketë informacion shtesë për këtë [[$2|faqe modeli]].", "visualeditor-dialog-transclusion-title-insert-template": "Fut një model", "visualeditor-dialog-transclusion-title-insert-known-template": "Fut: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Redakto: $1", - "visualeditor-dialog-transclusion-title-edit-transclusion": "Përmbajtja e modelit", - "visualeditor-dialog-transclusion-template-search": "Kërkim gjedheje", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Përmbajtja e stampës", + "visualeditor-dialog-transclusion-template-search": "Kërkimi i stampave", "visualeditor-dialog-transclusion-template-search-help": "Gjeni gjedhen që dëshironi të futni duke kërkuar një fjalëkyçe identifikuese. Ka gjasa që gjedhet me përshkrime të punojnë mirë me këtë përpunues (Përpunues Pamor).", - "visualeditor-dialog-transclusion-wikitext": "Tekst wiki", + "visualeditor-dialog-transclusion-wikitext": "Wikitekst", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "Shtyp Ctrl+Del për të fshirë elementin e wikitekstit.", "visualeditor-dialogbutton-media-tooltip": "Imazhe dhe media", "visualeditor-dialogbutton-template-tooltip": "Stampë", "visualeditor-editconflict": "Ndryshimet tuaja s’u ruajtën dot, për shkak të një përplasje përpunimesh. Do të donit ta zgjidhni dorazi përplasjen?", @@ -198,10 +219,10 @@ "visualeditor-editingtabdialog-ok": "Përdor përpunuesin që përdora në përpunimin tim të fundit", "visualeditor-editingtabdialog-title": "Përpunim tabelash", "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|shënim|shënime}}", - "visualeditor-editnotices-tooltip": "Përpunoni shënime", - "visualeditor-editsummary": "Përshkruani ç’ndryshuat", - "visualeditor-editsummary-characters-remaining": "Numri i shenjave të mbetura", - "visualeditor-educationpopup-dismiss": "OK, e mora vesh", + "visualeditor-editnotices-tooltip": "Redakto njoftimet", + "visualeditor-editsummary": "Përshkruaj çfarë ndryshove", + "visualeditor-editsummary-characters-remaining": "Numri i karaktereve të mbetura", + "visualeditor-educationpopup-dismiss": "Në rregull, e kuptova", "visualeditor-expandable-less": "Më pak", "visualeditor-expandable-more": "Më shumë", "visualeditor-feedback-defaultmessage": "URL: $1", @@ -222,6 +243,7 @@ "visualeditor-includes-includeonly-description": "Kur lënda e kësaj faqeje përdoret nga një faqe tjetër, lënda shtesë e mëposhtme do të përfshihet këtu:", "visualeditor-includes-documentation": "[https://www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Mësoni më tepër mbi ndërpërfshirje të pjesshme]", "visualeditor-languages-tool": "Gjuhë", + "visualeditor-linkcontext-uneditable": "Na vjen keq, por kjo lidhje mund të redaktohet vetëm në modalitetin burimor për momentin.", "visualeditor-linkinspector-button-link-external": "Faqe e jashtme", "visualeditor-linkinspector-button-link-internal": "Kërkoni faqe të brendshme", "visualeditor-linkinspector-convert-link-isbn": "Shndërrojeni në lidhje ISBN", @@ -231,7 +253,7 @@ "visualeditor-linkinspector-educationpopup-title": "Lidhje", "visualeditor-linkinspector-illegal-title": "Titull faqeje i pavlefshëm", "visualeditor-linkinspector-invalid-external": "Jepni një URL të plotë, p.sh., https://example.org", - "visualeditor-linknodeinspector-add-label": "Shtoni etiketë", + "visualeditor-linknodeinspector-add-label": "Shto etiketë", "visualeditor-linknodeinspector-title": "Lidhje e thjeshtë", "visualeditor-magiclinknodeinspector-convert-link": "Shndërroje në lidhje të thjeshtë", "visualeditor-magiclinknodeinspector-title-isbn": "Lidhje ISBN", @@ -241,15 +263,15 @@ "visualeditor-media-title-image": "Figurë", "visualeditor-media-title-video": "Video", "visualeditor-meta-tool": "Mundësi", - "visualeditor-mweditmode-tooltip": "Ndërroni përpunues", + "visualeditor-mweditmode-tooltip": "Ndërro redaktuesin", "visualeditor-mweditmodesource-progress": "Po kalohet në përpunim burimi…", - "visualeditor-mweditmodesource-tool-current": "Përpunim burimi", + "visualeditor-mweditmodesource-tool-current": "Redaktim burimor", "visualeditor-mweditmodesource-tool-unavailable": "Këtu s’është i mundur përpunimi i burimit", "visualeditor-mweditmodeve-popup-body": "Te përpunimi pamor mund të riktheheni kurdo, përmes klikimit mbi këtë ikonë.", "visualeditor-mweditmodeve-popup-title": "Kaluat nën përpunim burimi", "visualeditor-mweditmodeve-progress": "Po kalohet në përpunim pamor…", "visualeditor-mweditmodeve-showagain": "Mos e shfaqni më këtë mesazh", - "visualeditor-mweditmodeve-tool-current": "Përpunim pamor", + "visualeditor-mweditmodeve-tool-current": "Redaktim pamor", "visualeditor-mweditmodeve-tool-unavailable": "Këtu s’është i mundur përpunimi pamor", "visualeditor-mweditmodewt-popup-body": "Te përpunimi i burimit mund të riktheheni kurdo, përmes klikimit mbi këtë ikonë.", "visualeditor-mweditmodewt-popup-title": "Keni kaluar nën përpunim pamor", @@ -271,7 +293,7 @@ "visualeditor-mwgallerydialog-mode-field-label": "Mënyrë shfaqjeje", "visualeditor-mwgallerydialog-perrow-field-label": "Figura për rresht", "visualeditor-mwgallerydialog-remove-button-label": "Hiqe figurën", - "visualeditor-mwgallerydialog-search-button-label": "Shtoni figurë të re", + "visualeditor-mwgallerydialog-search-button-label": "Shto imazh të ri", "visualeditor-mwgallerydialog-show-filename-field-label": "Shfaq emra kartelash", "visualeditor-mwgallerydialog-styles-field-label": "Stile CSS", "visualeditor-mwgallerydialog-styles-input-placeholder": "Rregulla CSS, ndarë me pikëpresje", @@ -281,18 +303,22 @@ "visualeditor-mwpredialog-convert": "Lejo stilizim teksti", "visualeditor-mwpredialog-title": "Tekst i thjeshtë i paraformatuar", "visualeditor-mwsignature-tool": "Nënshkrimi juaj", + "visualeditor-preference-visualeditor": "Aktivizo redaktuesin pamor", "visualeditor-preference-newwikitexteditor-enable": "Përdor mënyrën tekst wiki brenda përpunuesit pamor, në vend se të një përpunuesi tjetër tekstesh wiki.", + "visualeditor-preference-newwikitexteditor-help": "Ky ndonjëherë quhet 'redaktuesi i wikitekstit i vitit 2017'.", "visualeditor-preference-tabs": "Mënyrë përpunimi:", "visualeditor-preference-tabs-multi-tab": "Shfaqmi skedat e të dy përpunuesve", "visualeditor-preference-tabs-prefer-ve": "Jepmë përherë përpunuesin pamor, nëse është e mundshme", "visualeditor-preference-tabs-prefer-wt": "Jepmë përherë përpunuesin e burimit", "visualeditor-preference-tabs-remember-last": "Mbaj mend përpunuesin tim të fundit", + "visualeditor-preference-collab-label": "Redaktim bashkëpunues", + "visualeditor-preference-collab-description": "Fto përdorues të tjerë t'i bashkohen seancës tënde të redaktimit në redaktuesin pamor.", "visualeditor-rebase-client-export": "Eksportoje", "visualeditor-rebase-client-export-start": "Eksportoni…", "visualeditor-rebase-client-import": "Importoje", "visualeditor-rebase-client-import-name": "Titull faqeje", "visualeditor-rebase-client-title-help": "Do të jeni në gjendje të shqyrtoni ndryshimet, para ruajtjes.", - "visualeditor-recreate": "Kjo faqe është fshirë, pasi filluat ta përpunoni. Që të rikrijohet, shtypni \"$1\".", + "visualeditor-recreate": "Faqja u fshi pasi fillove të redaktoje. Shtyp \"$1\" për ta rikrijuar atë.", "visualeditor-redirect-description": "Ridrejtim për te $1", "visualeditor-savedialog-identify-anon": "Në vend të kësaj, doni ta ruani këtë faqe si përdorues anonim? Adresa juaj IP do të regjistrohet në historikun e përpunimeve të kësaj faqeje.", "visualeditor-savedialog-identify-user": "Tani jeni i futur si [[User:$1|$1]]. Nëse e ruani këtë përpunim, përpunimi juaj do të përshoqërohet me këtë llogari.", @@ -305,28 +331,28 @@ "visualeditor-savedialog-label-review-good": "Rikthehu te ruajtje formulari", "visualeditor-savedialog-label-save-short": "Ruaje", "visualeditor-savedialog-label-save-short-start": "Ruajeni…", - "visualeditor-savedialog-review-nosummary": "Pa përmbledhje përpunimi", + "visualeditor-savedialog-review-nosummary": "Nuk ka përmbledhje të redaktimit", "visualeditor-savedialog-review-visual": "Pamor", "visualeditor-savedialog-review-wikitext": "Tekst wiki", "visualeditor-savedialog-title-conflict": "Përplasje", "visualeditor-savedialog-title-preview": "Parashihni ndryshimet tuaja", "visualeditor-savedialog-title-review": "Shqyrtoni ndryshimet tuaja", "visualeditor-savedialog-title-save": "Ruani ndryshimet tuaja", - "visualeditor-section-body-placeholder": "Ndarje e re", - "visualeditor-section-title-placeholder": "Subjekt", - "visualeditor-loaderror-revidconflict": "ID-të e rishikimeve të dhëna nga shërbyesi nuk përputhen (dokument: $1, tejtëdhëna: $2).", + "visualeditor-section-body-placeholder": "Pjesë e re", + "visualeditor-section-title-placeholder": "Titulli", + "visualeditor-loaderror-revidconflict": "ID-të e versioneve të kthyera nga serveri nuk përputhen (dokumenti: $1, metadatat: $2).", "visualeditor-loaderror-wrongmode": "U provua të ngarkohej përpunuesi nën mënyrë të gabuar (lloj të dhënash: \"$1\", mënyrë përpunuesi: \"$2\").", - "visualeditor-settings-tool": "Rregullime faqeje", + "visualeditor-settings-tool": "Cilësimet e faqes", "visualeditor-special-characters-group-other": "Përdorur shpesh", - "visualeditor-templatesused-tool": "Gjedhe të përdorura", + "visualeditor-templatesused-tool": "Stampat e përdorura", "visualeditor-title-error": "Titull i pavlefshëm.", "visualeditor-toload": "Përpunuesi tani do të ngarkohet. Nëse këtë mesazh e shihni ende pas pak sekondash, ju lutemi, [$1 ringarkoni faqen].", "visualeditor-tooltip-non-breaking-space": "Shenjë  ", "visualeditor-version-label": "Version", - "visualeditor-wikitext-progress": "Po shndërrohet tekst wiki", + "visualeditor-wikitext-progress": "Duke konvertuar wikitekstin", "visualeditor-wikitext-warning": "Po përdorni përpunuesin pamor - [[{{MediaWiki:visualeditor-wikitext-warning-link}}|wikitext]] nuk funksionon këtu. Që të kaloni në përpunim burimi kurdo, pa humbur ndryshimet tuaja, klikoni mbi butonin e ndërrimit.", "visualeditor-wikitext-warning-title": "U pikas formatim wiki", - "visualeditor-wikitextconvert-title": "Të shndërrohet formatimi në tekst wiki?", + "visualeditor-wikitextconvert-title": "Dëshiron ta konvertosh formatimin në wikitekst?", "visualeditor-wikitextconvert-message": "Lënda e ngjitur prej jush përmban formatime. Dëshironi ta shndërroni këtë formatim në wikitext?", - "visualeditor-wikitextconvert-convert": "Shndërroje në tekst wiki" + "visualeditor-wikitextconvert-convert": "Shndërro në wikitekst" } diff --git a/i18n/ve-mw/sr-ec.json b/i18n/ve-mw/sr-ec.json index f376ba43ca..814979ddc7 100644 --- a/i18n/ve-mw/sr-ec.json +++ b/i18n/ve-mw/sr-ec.json @@ -1,8 +1,8 @@ { "@metadata": { "authors": [ + "Aca", "Acamicamacaraca", - "Amire80", "BadDog", "Kizule", "Milicevic01", @@ -41,7 +41,7 @@ "visualeditor-backbutton-tooltip": "Вратите се", "visualeditor-ca-createlocaldescriptionsource": "Додај локални опис (изворно)", "visualeditor-ca-createsource": "Направи извор", - "visualeditor-ca-editlocaldescriptionsource": "Уреди извор локалног описа", + "visualeditor-ca-editlocaldescriptionsource": "Уреди локални опис (изворно)", "visualeditor-ca-editsource": "Уреди извор", "visualeditor-ca-editsource-section": "уреди извор", "visualeditor-ca-editsource-section-hint": "Уреди извор одељка: $1", @@ -97,7 +97,7 @@ "visualeditor-dialog-meta-categories-addcategory-label": "Додајте категорију овој страници", "visualeditor-dialog-meta-categories-category": "Категорија", "visualeditor-dialog-meta-categories-data-label": "Категорије", - "visualeditor-dialog-meta-categories-defaultsort-help": "Можете да промените начин на који се ова страница сортира када се приказује унутар категорије постављањем другог индекса за сортирање. Ово се обично користи да би се странице о особама приказивале по презимену, али бити именоване својим именом које је приказано прво.", + "visualeditor-dialog-meta-categories-defaultsort-help": "Користи се за сортирање странице у оквиру категорија. Обично се користи код чланака о особама када се врши сортирање по презимену особе а не имену.", "visualeditor-dialog-meta-categories-defaultsort-label": "Подразумевано сортирај ову страницу као", "visualeditor-dialog-meta-categories-hidden": "Ова категорија је подешена да се не приказује на страницама на којима је додата.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Сакривене категорије", @@ -122,33 +122,33 @@ "visualeditor-dialog-meta-settings-index-default": "Подразумевано", "visualeditor-dialog-meta-settings-index-disable": "Не", "visualeditor-dialog-meta-settings-index-force": "Да", - "visualeditor-dialog-meta-settings-index-help": "Можете присилити претраживаче да наводе ову страницу у релевантним резултатима или их присилити да то не учине. Ова опција не утиче на претрагу овог сајта.", + "visualeditor-dialog-meta-settings-index-help": "Можете присилити претраживаче да наводе ову страницу у релевантним резултатима или их присилити да то не чине. Ова опција не утиче на претрагу овог сајта.", "visualeditor-dialog-meta-settings-index-label": "Допусти претраживачима да индексирају ову страницу", "visualeditor-dialog-meta-settings-label": "Подешавања странице", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Подразумевано", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Не", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Да", - "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Можете да наметнете приказ додатне картице поред картице „$1” на овој страници која ће олакшати додавање новог одељка или га наметнути да се не појави ако би иначе било другачије.", - "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Приказуј картицу за додавање новог одељка на овој страници", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Можете да наметнете приказ додатне картице поред картице „$1” она ће олакшати додавање новог одељка или наметнути да се не појави ако би иначе било другачије.", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Приказуј картицу за додавање новог одељка", "visualeditor-dialog-meta-settings-nocontentconvert-help": "Можете спречити да се садржај ове странице аутоматски пребацује у друга писма.", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Не пребацуј садржај на друге варијанте језика", - "visualeditor-dialog-meta-settings-noeditsection-help": "Можете да зауставите појављивање линкова за уређивање поред појединачних одељака у неуобичајеном случају када је то прикладно.", + "visualeditor-dialog-meta-settings-noeditsection-help": "Можете онемогућити појављивање линка за уређивање поред одељака у неуобичајеном случају када је то прикладно.", "visualeditor-dialog-meta-settings-noeditsection-label": "Искључи линкове за уређивање поред појединачних наслова на овој страници", "visualeditor-dialog-meta-settings-nogallery-help": "Можете спречити да ова категорија приказује датотеке као галерију, ако је то неприкладно у овом случају.", "visualeditor-dialog-meta-settings-nogallery-label": "Искључи галерију", "visualeditor-dialog-meta-settings-notitleconvert-help": "Можете спречити да се наслов ове странице аутоматски пребацује у друга писма.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Не пребацуј наслов на друге варијанте језика", "visualeditor-dialog-meta-settings-redirect-help": "Можете од ове странице направити преусмерење, страницу која ће аутоматски водити читаоца до друге странице на овом викију. Ово је корисно за погрешно уписане појмове и алтернативна имена или појмове. Ако је направите, читаоци неће видети садржај ове странице.", - "visualeditor-dialog-meta-settings-redirect-label": "Преусмери ову страницу на", - "visualeditor-dialog-meta-settings-redirect-placeholder": "Одредишна страница за преусмерење", + "visualeditor-dialog-meta-settings-redirect-label": "Преусмери страницу на:", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Одредишна страница", "visualeditor-dialog-meta-settings-redirect-statichelp": "Можете спречити да се ово преусмерење аутоматски ажурира када се страница на коју оно води премести, у врло ретком случају када је то потребно.", - "visualeditor-dialog-meta-settings-redirect-staticlabel": "Спречи ажурирање овог преусмеравања када се одредишна страница премести", + "visualeditor-dialog-meta-settings-redirect-staticlabel": "Статичко преусмерење.", "visualeditor-dialog-meta-settings-section": "Подешавања странице", "visualeditor-dialog-meta-settings-toc-default": "Ако је потребно", "visualeditor-dialog-meta-settings-toc-disable": "Никад", "visualeditor-dialog-meta-settings-toc-force": "Увек", - "visualeditor-dialog-meta-settings-toc-help": "Можете да наметнете да се садржај који наводи сваки наслов на страници појави на страницама са мање од четири наслова или да се уопште не појави. Подразумевано ће се појавити ако страница има четири или више наслова.", - "visualeditor-dialog-meta-settings-toc-label": "Приказуј садржај", + "visualeditor-dialog-meta-settings-toc-help": "Можете да наметнете да се садржај приказује на страницама са мање од четири наслова или да се уопште не приказује. Подразумевано ће се појавити ако страница има четири или више (под)наслова.", + "visualeditor-dialog-meta-settings-toc-label": "Приказ садржаја", "visualeditor-dialog-meta-templatesused-noresults": "Шаблони нису пронађени.", "visualeditor-dialog-meta-title": "Опције", "visualeditor-dialog-table-collapsed": "Првобитно скупљена", @@ -229,6 +229,8 @@ "visualeditor-formatdropdown-format-mw-heading5": "Поднаслов 3", "visualeditor-formatdropdown-format-mw-heading6": "Поднаслов 4", "visualeditor-generating-wikitext-progress": "Генерисање викитекста", + "visualeditor-includes-noinclude-start": "Почетак садржаја који неће бити приказан при позиву шаблона", + "visualeditor-includes-noinclude-end": "Крај садржаја који неће бити приказан при позиву шаблона", "visualeditor-languages-tool": "Језици", "visualeditor-linkinspector-button-link-external": "Веб-сајт", "visualeditor-linkinspector-button-link-internal": "Претрага интерних страница", @@ -239,7 +241,7 @@ "visualeditor-linkinspector-educationpopup-title": "Линкови", "visualeditor-linkinspector-illegal-title": "Неважећи наслов странице", "visualeditor-linkinspector-invalid-blocked": "Уредници овог викија су блокирали овај веб-сајт. Молимо пробајте други веб-сајт.", - "visualeditor-linkinspector-invalid-external": "Унесите цели URL: нпр. https://example.org", + "visualeditor-linkinspector-invalid-external": "Унесите цели URL, нпр. https://example.org", "visualeditor-linknodeinspector-add-label": "Додај ознаку", "visualeditor-linknodeinspector-title": "Једноставан линк", "visualeditor-magiclinknodeinspector-convert-link": "Претвори у једноставан линк", @@ -290,7 +292,7 @@ "visualeditor-mwpredialog-convert": "Стилизовање текста", "visualeditor-mwpredialog-title": "Преформатиран обичан текст", "visualeditor-mwsignature-tool": "Ваш потпис", - "visualeditor-preference-visualeditor": "Омогући Визуелни уређивач", + "visualeditor-preference-visualeditor": "Визуелни уређивач", "visualeditor-preference-newwikitexteditor-enable": "Користи режим викитекста унутар Визуелног уређивача, уместо пређашњег уређивача викитекста", "visualeditor-preference-newwikitexteditor-help": "Понекад се назива „уређивач викитекста из 2017. године”.", "visualeditor-preference-tabs": "Режим уређивања:", @@ -333,13 +335,13 @@ "visualeditor-special-characters-group-other": "Често коришћени", "visualeditor-templatesused-tool": "Коришћени шаблони", "visualeditor-title-error": "Неважећи наслов.", - "visualeditor-toload": "Уређивач ће се сада учитати. Ако и даље видите ову поруку након неколико секунди, [$1 поново учитајте страницу].", + "visualeditor-toload": "Уређивач ће се сада учитати. Ако и даље видите ову поруку након неколико секунди, [$1 освежите страницу].", "visualeditor-tooltip-non-breaking-space": "Непреломни размак", "visualeditor-version-label": "Верзија", "visualeditor-wikitext-progress": "Претварање викитекста", "visualeditor-wikitext-warning": "Користите визуелни уређивач — [[{{MediaWiki:visualeditor-wikitext-warning-link}}|викитекст]] овде не ради. У сваком тренутку можете да се пребаците на уређивање извора без губитка измена кликом на одговарајуће дугме.", "visualeditor-wikitext-warning-title": "Откривено је означавање викитекста", - "visualeditor-wikitextconvert-title": "Претворити форматирање у викитекст?", + "visualeditor-wikitextconvert-title": "Форматирај у викитекст?", "visualeditor-wikitextconvert-message": "Налепили сте садржај који садржи форматирање. Да ли желите да претворите ово форматирање у викитекст?", "visualeditor-wikitextconvert-convert": "Претвори у викитекст" } diff --git a/i18n/ve-mw/sr-el.json b/i18n/ve-mw/sr-el.json index 0eee3dc640..c16e9c4db2 100644 --- a/i18n/ve-mw/sr-el.json +++ b/i18n/ve-mw/sr-el.json @@ -16,8 +16,13 @@ "collabpad-import-subtitle": "Uvezeno iz stranice $1", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Uredite ovu stranicu", + "tooltip-ca-ve-edit-local": "Uredi lokalnu stranicu opisa", + "tooltip-ca-ve-create": "Napravi ovu stranicu", + "tooltip-ca-ve-create-local": "Napravi lokalnu stranicu opisa", "tooltip-ca-editsource": "Uredite izvorni kod ove stranice", + "tooltip-ca-editsource-local": "Uredi izvorno lokalnu stranicu opisa", "tooltip-ca-createsource": "Napravite izvorni kod ove stranice", + "tooltip-ca-createsource-local": "Napravi izvorno lokalnu stranicu opisa", "visualeditor-advancedsettings-tool": "Napredna podešavanja", "visualeditor-autosave-modified-prompt-accept": "Nastavi uređivanje", "visualeditor-autosave-modified-prompt-message": "Ova stranica je uređena od vaše poslednje posete. {{GENDER:|Želite}} li da nastavite uređivanje stare verzije ili da započnete novo uređivanje najnovije verzije?", @@ -33,12 +38,18 @@ "visualeditor-ca-editlocaldescriptionsource": "Uredi izvor lokalnog opisa", "visualeditor-ca-editsource": "Uredi izvor", "visualeditor-ca-editsource-section": "uredi izvor", + "visualeditor-ca-editsource-section-hint": "Uredi izvor odeljka: $1", "visualeditor-categories-tool": "Kategorije", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Ključ za sortiranje promenjen iz $1 u $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Ključ za sortiranje podešen na $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Ključ za sortiranje $1 uklonjen", "visualeditor-changedesc-mwlanguagevariant": "Označavanje varijanta jezika je promenjeno", "visualeditor-changedesc-mwredirect": "Odredište preusmeravanja je promenjeno sa stranice „$1” na stranicu „$2”", "visualeditor-changedesc-mwtransclusion": "Parametri šablona su promenjeni", "visualeditor-desc": "Vizuelni uređivač za Medijaviki", "visualeditor-descriptionpagelink": "Project:Vizuelni uređivač", + "visualeditor-dialog-extension-abandonedit": "Sigurno želite da zatvorite ovaj dijalog bez čuvanja izmena?", + "visualeditor-dialog-media-alttext-checkbox": "Koristi opis kao alternativni tekst", "visualeditor-dialog-media-alttext-section": "Alternativni tekst", "visualeditor-dialog-media-alttext-section-help": "Možete da koristite ovo da biste napisali opis teksta za osobe koje ne mogu da vide stavku. Opis treba da bude dovoljan da bi razumeli svrhu i informaciju koju daje medijska stavka. Ovo je od velikog značaja slepim korisnicima i drugim osobama koje koriste softver za čitanje ekrana ili pregledače koji samo prikazuju tekst.", "visualeditor-dialog-media-change-image": "Promeni sliku", @@ -80,7 +91,7 @@ "visualeditor-dialog-meta-categories-addcategory-label": "Dodajte kategoriju ovoj stranici", "visualeditor-dialog-meta-categories-category": "Kategorija", "visualeditor-dialog-meta-categories-data-label": "Kategorije", - "visualeditor-dialog-meta-categories-defaultsort-help": "Možete da promenite način na koji se ova stranica sortira kada se prikazuje unutar kategorije postavljanjem drugog indeksa za sortiranje. Ovo se obično koristi da bi se stranice o osobama prikazivale po prezimenu, ali biti imenovane svojim imenom koje je prikazano prvo.", + "visualeditor-dialog-meta-categories-defaultsort-help": "Koristi se za sortiranje stranice u okviru kategorija. Obično se koristi kod članaka o osobama kada se vrši sortiranje po prezimenu osobe a ne imenu.", "visualeditor-dialog-meta-categories-defaultsort-label": "Podrazumevano sortiraj ovu stranicu kao", "visualeditor-dialog-meta-categories-hidden": "Ova kategorija je podešena da se ne prikazuje na stranicama na kojima je dodata.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Sakrivene kategorije", @@ -105,33 +116,33 @@ "visualeditor-dialog-meta-settings-index-default": "Podrazumevano", "visualeditor-dialog-meta-settings-index-disable": "Ne", "visualeditor-dialog-meta-settings-index-force": "Da", - "visualeditor-dialog-meta-settings-index-help": "Možete prisiliti pretraživače da navode ovu stranicu u relevantnim rezultatima ili ih prisiliti da to ne učine. Ova opcija ne utiče na pretragu ovog sajta.", + "visualeditor-dialog-meta-settings-index-help": "Možete prisiliti pretraživače da navode ovu stranicu u relevantnim rezultatima ili ih prisiliti da to ne čine. Ova opcija ne utiče na pretragu ovog sajta.", "visualeditor-dialog-meta-settings-index-label": "Dopusti pretraživačima da indeksiraju ovu stranicu", "visualeditor-dialog-meta-settings-label": "Podešavanja stranice", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Podrazumevano", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Ne", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Da", - "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Možete da nametnete prikaz dodatne kartice pored kartice „$1” na ovoj stranici koja će olakšati dodavanje novog odeljka ili ga nametnuti da se ne pojavi ako bi inače bilo drugačije.", - "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Prikazuj karticu za dodavanje novog odeljka na ovoj stranici", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "Možete da nametnete prikaz dodatne kartice pored kartice „$1” ona će olakšati dodavanje novog odeljka ili nametnuti da se ne pojavi ako bi inače bilo drugačije.", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Prikazuj karticu za dodavanje novog odeljka", "visualeditor-dialog-meta-settings-nocontentconvert-help": "Možete sprečiti da se sadržaj ove stranice automatski prebacuje u druga pisma.", "visualeditor-dialog-meta-settings-nocontentconvert-label": "Ne prebacuj sadržaj na druge varijante jezika", - "visualeditor-dialog-meta-settings-noeditsection-help": "Možete da zaustavite pojavljivanje linkova za uređivanje pored pojedinačnih odeljaka u neuobičajenom slučaju kada je to prikladno.", + "visualeditor-dialog-meta-settings-noeditsection-help": "Možete onemogućiti pojavljivanje linka za uređivanje pored odeljaka u neuobičajenom slučaju kada je to prikladno.", "visualeditor-dialog-meta-settings-noeditsection-label": "Isključi linkove za uređivanje pored pojedinačnih naslova na ovoj stranici", "visualeditor-dialog-meta-settings-nogallery-help": "Možete sprečiti da ova kategorija prikazuje datoteke kao galeriju, ako je to neprikladno u ovom slučaju.", "visualeditor-dialog-meta-settings-nogallery-label": "Isključi galeriju", "visualeditor-dialog-meta-settings-notitleconvert-help": "Možete sprečiti da se naslov ove stranice automatski prebacuje u druga pisma.", "visualeditor-dialog-meta-settings-notitleconvert-label": "Ne prebacuj naslov na druge varijante jezika", "visualeditor-dialog-meta-settings-redirect-help": "Možete od ove stranice napraviti preusmerenje, stranicu koja će automatski voditi čitaoca do druge stranice na ovom vikiju. Ovo je korisno za pogrešno upisane pojmove i alternativna imena ili pojmove. Ako je napravite, čitaoci neće videti sadržaj ove stranice.", - "visualeditor-dialog-meta-settings-redirect-label": "Preusmeri ovu stranicu na", - "visualeditor-dialog-meta-settings-redirect-placeholder": "Odredišna stranica za preusmerenje", + "visualeditor-dialog-meta-settings-redirect-label": "Preusmeri stranicu na", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Odredišna stranica", "visualeditor-dialog-meta-settings-redirect-statichelp": "Možete sprečiti da se ovo preusmerenje automatski ažurira kada se stranica na koju ono vodi premesti, u vrlo retkom slučaju kada je to potrebno.", "visualeditor-dialog-meta-settings-redirect-staticlabel": "Spreči ažuriranje ovog preusmeravanja kada se odredišna stranica premesti", "visualeditor-dialog-meta-settings-section": "Podešavanja stranice", "visualeditor-dialog-meta-settings-toc-default": "Ako je potrebno", "visualeditor-dialog-meta-settings-toc-disable": "Nikad", "visualeditor-dialog-meta-settings-toc-force": "Uvek", - "visualeditor-dialog-meta-settings-toc-help": "Možete da nametnete da se sadržaj koji navodi svaki naslov na stranici pojavi na stranicama sa manje od četiri naslova ili da se uopšte ne pojavi. Podrazumevano će se pojaviti ako stranica ima četiri ili više naslova.", - "visualeditor-dialog-meta-settings-toc-label": "Prikazuj sadržaj", + "visualeditor-dialog-meta-settings-toc-help": "Možete da nametnete da se sadržaj prikazuje na stranicama sa manje od četiri naslova ili da se uopšte ne prikazuje. Podrazumevano će se pojaviti ako stranica ima četiri ili više (pod)naslova.", + "visualeditor-dialog-meta-settings-toc-label": "Prikaz sadržaja", "visualeditor-dialog-meta-templatesused-noresults": "Šabloni nisu pronađeni.", "visualeditor-dialog-meta-title": "Opcije", "visualeditor-dialog-table-collapsed": "Prvobitno skupljena", @@ -139,10 +150,28 @@ "visualeditor-dialog-table-sortable": "Mogućnost ređanja", "visualeditor-dialog-table-wikitable": "Stilizovana (vikitabela)", "visualeditor-dialog-template-title": "Šablon", + "visualeditor-dialog-transclusion-action-save": "Sačuvaj", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Ovaj šablon ne postoji.", + "visualeditor-dialog-transclusion-template-widget-aria": "Pritisnite razmak da odaberite šablon.", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "Pritisnite Ctrl+Del da obrišete šablon, njegove prametre i vrednosti. Pritisnite Ctrl+Shift+strelice da pomerate šablon gore ili dole.", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "Pritisnite Ctrl+Del da obrišete šablon, njegove prametre i vrednosti.", + "visualeditor-dialog-transclusion-add-wikitext": "Dodaj vikitekst", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "Parametar „$1” je [//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated zastareo] i nije ga moguće dodati.", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Parametar „$2” nije moguće dodati dva puta.", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1 je zabranjen znak. Uklonite ga da bi dodali parametar.", + "visualeditor-dialog-transclusion-add-param-placeholder": "Naziv parametra", + "visualeditor-dialog-transclusion-add-param-save": "Dodaj", "visualeditor-dialog-transclusion-add-template": "Dodaj šablon", "visualeditor-dialog-transclusion-add-template-button": "Dodaj šablon", + "visualeditor-dialog-transclusion-add-template-save": "Dodaj", + "visualeditor-dialog-transclusion-add-undocumented-param": "Dodaj nedokumentovan parametar", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Nazad na pretragu? Vaše izmene će biti izgubljene, i ovo ne može biti opozvano.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Zatvoriti uređivač šablona? Vaše izmene će biti izgubljene, i ovo ne može biti opozvano.", "visualeditor-dialog-transclusion-collapse-options": "Sakrij opcije", + "visualeditor-dialog-transclusion-confirmation-discard": "Odbaci izmene", + "visualeditor-dialog-transclusion-confirmation-reject": "Nastavi sa uređivanjem", "visualeditor-dialog-transclusion-contextitem-description": "Generisano iz: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Učitavanje…", "visualeditor-dialog-transclusion-expand-options": "Prikaži opcije", "visualeditor-dialog-transclusion-filter-hide-unused": "Sakrij neupotrebljeno", "visualeditor-dialog-transclusion-filter-no-match": "Nema pogodaka", @@ -153,7 +182,11 @@ "visualeditor-dialog-transclusion-deprecated-parameter-description": "Polje je zastarelo. $1", "visualeditor-dialog-transclusion-loading": "Učitavanje…", "visualeditor-dialog-transclusion-no-template-description": "Šablon „$1“ još uvek nema opis, ali je moguće da postoje neke informacije na [[$2|stranici šablona]].", + "visualeditor-dialog-transclusion-no-template-parameters": "Šablon nema dokumentovane parametre i možda mu nisu ni potrebni.", "visualeditor-dialog-transclusion-param-default": "Podrazumevano: $1", + "visualeditor-dialog-transclusion-param-example-long": "Primer: $1", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Parametri u $1", + "visualeditor-dialog-transclusion-param-undocumented": "(nedokumentovan parametar)", "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Pretražite šablone", "visualeditor-dialog-transclusion-required-parameter": "Obavezno polje", "visualeditor-dialog-transclusion-required-parameter-description": "Polje je obavezno.", @@ -162,12 +195,13 @@ "visualeditor-dialog-transclusion-required-parameter-dialog-title": "{{PLURAL:$1|Obavezno polje nedostaje|Obavezna polja nedostaju}}", "visualeditor-dialog-transclusion-required-parameter-is-blank": "Želite li zaista da nastavite bez {{PLURAL:$2|popune|popunjavanja}} polja $1?", "visualeditor-dialog-transclusion-see-template": "Šabloni su korisnički generisani i mogu im nedostajati celokupni opisi pojedinih parametara. Dodatne informacije možda postoje na [[$2|stranici šablona]].", - "visualeditor-dialog-transclusion-title-insert-template": "Umetanje šablona", - "visualeditor-dialog-transclusion-title-insert-known-template": "Umetanje: $1", + "visualeditor-dialog-transclusion-title-insert-template": "Umetni šablon", + "visualeditor-dialog-transclusion-title-insert-known-template": "Umetni: $1", "visualeditor-dialog-transclusion-title-edit-known-template": "Uređivanje: $1", "visualeditor-dialog-transclusion-title-edit-transclusion": "Sadržina šablona", "visualeditor-dialog-transclusion-template-search": "Pretraga šablona", "visualeditor-dialog-transclusion-template-search-help": "Nađite šablon koji želite umetnuti pretragom odgovarajuće ključne reči. Šabloni koji imaju opise verovatno će bolje raditi s vizuelnim uređivačem.", + "visualeditor-dialog-transclusion-wikitext": "Vikitekst", "visualeditor-dialogbutton-media-tooltip": "Datoteka", "visualeditor-dialogbutton-template-tooltip": "Šablon", "visualeditor-editconflict": "Nije moguće sačuvati izmene zbog sukoba. Želite {{GENDER:|li}} da ručno rešite sukob?", @@ -179,6 +213,8 @@ "visualeditor-editsummary": "Ukratko opišite šta ste promenili", "visualeditor-editsummary-characters-remaining": "Broj preostalih znakova", "visualeditor-educationpopup-dismiss": "U redu, razumem", + "visualeditor-expandable-less": "Manje", + "visualeditor-expandable-more": "Više", "visualeditor-feedback-defaultmessage": "URL adresa: $1", "visualeditor-formatdropdown-format-mw-heading1": "Naslov stranice", "visualeditor-formatdropdown-format-mw-heading2": "Naslov", @@ -187,8 +223,10 @@ "visualeditor-formatdropdown-format-mw-heading5": "Podnaslov 3", "visualeditor-formatdropdown-format-mw-heading6": "Podnaslov 4", "visualeditor-generating-wikitext-progress": "Generisanje vikiteksta", + "visualeditor-includes-noinclude-start": "Početak sadržaja koji neće biti prikazan pri pozivu šablona", + "visualeditor-includes-noinclude-end": "Kraj sadržaja koji neće biti prikazan pri pozivu šablona", "visualeditor-languages-tool": "Jezici", - "visualeditor-linkinspector-button-link-external": "Spoljašnji sajt", + "visualeditor-linkinspector-button-link-external": "Veb-sajt", "visualeditor-linkinspector-button-link-internal": "Pretraga internih stranica", "visualeditor-linkinspector-convert-link-isbn": "Pretvori u ISBN link", "visualeditor-linkinspector-convert-link-pmid": "Pretvori u PMID link", @@ -196,7 +234,8 @@ "visualeditor-linkinspector-educationpopup-text": "Povežite važne reči s drugim viki člancima ili čak veb-sajtovima. Pomoći će čitaocima u razumevanju konteksta.", "visualeditor-linkinspector-educationpopup-title": "Linkovi", "visualeditor-linkinspector-illegal-title": "Nevažeći naslov stranice", - "visualeditor-linkinspector-invalid-external": "Unesite celi URL: npr. https://example.org", + "visualeditor-linkinspector-invalid-blocked": "Urednici ovog vikija su blokirali ovaj veb-sajt. Molimo probajte drugi veb-sajt.", + "visualeditor-linkinspector-invalid-external": "Unesite celi URL, npr. https://example.org", "visualeditor-linknodeinspector-add-label": "Dodaj oznaku", "visualeditor-linknodeinspector-title": "Jednostavan link", "visualeditor-magiclinknodeinspector-convert-link": "Pretvori u jednostavan link", @@ -247,20 +286,26 @@ "visualeditor-mwpredialog-convert": "Stilizovanje teksta", "visualeditor-mwpredialog-title": "Preformatiran običan tekst", "visualeditor-mwsignature-tool": "Vaš potpis", - "visualeditor-preference-newwikitexteditor-enable": "Koristi režim vikiteksta unutar vizuelnog uređivača, umesto drugog uređivača vikiteksta.", + "visualeditor-preference-visualeditor": "Omogući Vizuelni uređivač", + "visualeditor-preference-newwikitexteditor-enable": "Koristi režim vikiteksta unutar Vizuelnog uređivača, umesto pređašnjeg uređivača vikiteksta", + "visualeditor-preference-newwikitexteditor-help": "Ponekad se naziva „uređivač vikiteksta iz 2017. godine”.", "visualeditor-preference-tabs": "Režim uređivanja:", "visualeditor-preference-tabs-multi-tab": "Prikaži kartice oba uređivača", "visualeditor-preference-tabs-prefer-ve": "Uvek otvori vizuelni uređivač (ako je moguće)", "visualeditor-preference-tabs-prefer-wt": "Uvek otvori uređivač izvora", "visualeditor-preference-tabs-remember-last": "Zapamti moj poslednji uređivač", + "visualeditor-preference-collab-label": "Udruženo uređivanje", + "visualeditor-preference-collab-description": "Pozovite druge korisnike da se pridruže Vašoj uređivačkoj sesiji u Vizuelnom uređivaču", "visualeditor-rebase-client-export": "Izvoz", "visualeditor-rebase-client-export-start": "Izvezi…", "visualeditor-rebase-client-import": "Uvezi", "visualeditor-rebase-client-import-name": "Naslov stranice", + "visualeditor-rebase-client-title-help": "Moćićete da pregledate izmene pre čuvanja istih.", "visualeditor-recreate": "Stranica je u međuvremenu izbrisana. Pritisnite „$1” da biste je ponovo napravili.", "visualeditor-redirect-description": "Preusmerava na „$1”", - "visualeditor-savedialog-identify-anon": "Želite li sačuvati ovu stranicu kao anoniman korisnik? Vaša IP adresa će biti zabeležena u istoriji izmena ove stranice.", - "visualeditor-savedialog-identify-user": "Sada ste prijavljeni kao [[User:$1|$1]]. Vaše izmene će biti povezane s ovim nalogom ako sačuvate izmenu.", + "visualeditor-savedialog-identify-anon": "Niste više prijavljeni. Vaša IP adresa će biti zabeležena u istoriji izmena ove stranice.", + "visualeditor-savedialog-identify-temp": "Sada koristite privremeno korisničko ime $1. Ako nastavite Vaše izmene će biti povezane s ovim korisničkim imenom.", + "visualeditor-savedialog-identify-user": "Sada ste prijavljeni kao [[User:$1|$1]]. Ako nastavite Vaše izmene će biti povezane s ovim nalogom.", "visualeditor-savedialog-keyboard-shortcut-submit": "Pritisnite $1 da biste sačuvali izmenu.", "visualeditor-savedialog-label-publish-short": "Objavi", "visualeditor-savedialog-label-publish-short-start": "Objavi…", @@ -279,11 +324,13 @@ "visualeditor-savedialog-title-save": "Čuvanje izmena", "visualeditor-section-body-placeholder": "Novi odeljak", "visualeditor-section-title-placeholder": "Tema", + "visualeditor-loaderror-wrongmode": "Učitavanje uređivača u pogrešnom režimu (tip podataka: „$1“, uređivački režim: „$2“).", "visualeditor-settings-tool": "Podešavanja stranice", "visualeditor-special-characters-group-other": "Često korišćeni", "visualeditor-templatesused-tool": "Korišćeni šabloni", "visualeditor-title-error": "Nevažeći naslov.", "visualeditor-toload": "Uređivač će se sada učitati. Ako i dalje vidite ovu poruku nakon nekoliko sekundi, [$1 ponovo učitajte stranicu].", + "visualeditor-tooltip-non-breaking-space": "Neprelomni razmak", "visualeditor-version-label": "Verzija", "visualeditor-wikitext-progress": "Pretvaranje vikiteksta", "visualeditor-wikitext-warning": "Koristite vizuelni uređivač — [[{{MediaWiki:visualeditor-wikitext-warning-link}}|vikitekst]] ovde ne radi. U svakom trenutku možete da se prebacite na uređivanje izvora bez gubitka izmena klikom na odgovarajuće dugme.", diff --git a/i18n/ve-mw/ssy.json b/i18n/ve-mw/ssy.json new file mode 100644 index 0000000000..6f6f7f192b --- /dev/null +++ b/i18n/ve-mw/ssy.json @@ -0,0 +1,11 @@ +{ + "@metadata": { + "authors": [ + "Jmgurey" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "Wakali caddosti raxeena adde os", + "visualeditor-ca-createsource": "Raxeena ab", + "visualeditor-ca-editsource": "Raxeena eymemec", + "visualeditor-ca-editsource-section": "raxeena eymemec" +} diff --git a/i18n/ve-mw/sty.json b/i18n/ve-mw/sty.json index 8015921fb8..95adaafd3b 100644 --- a/i18n/ve-mw/sty.json +++ b/i18n/ve-mw/sty.json @@ -2,13 +2,14 @@ "@metadata": { "authors": [ "Khanmarat", - "Sorbat" + "Sorbat", + "Арбыуын" ] }, "tooltip-ca-ve-edit": "Пы питне төсәткәле", "visualeditor-ca-createlocaldescriptionsource": "Локал сүрәтләмә аҡманы өстәгәле", - "visualeditor-ca-createsource": "Үики-текст итеп пултырғалы", - "visualeditor-ca-editsource": "Үики-текстны төсәткәле", - "visualeditor-ca-editsource-section": "үики-текстны төсәткәле", + "visualeditor-ca-createsource": "Вики-текстны цығарғалы", + "visualeditor-ca-editsource": "Вики-текстны төсәткәле", + "visualeditor-ca-editsource-section": "вики-текстны төсәткәле", "visualeditor-descriptionpagelink": "Project:Визуаль мөғәрир" } diff --git a/i18n/ve-mw/sv.json b/i18n/ve-mw/sv.json index 692fd0a60f..517e679b7a 100644 --- a/i18n/ve-mw/sv.json +++ b/i18n/ve-mw/sv.json @@ -27,7 +27,8 @@ "Tobulos1", "Umeaboy", "Warrakkk", - "WikiPhoenix" + "WikiPhoenix", + "Stefan2255" ] }, "collabpad-doctitle": "CollabPad: $1", @@ -70,6 +71,7 @@ "visualeditor-changedesc-mwtransclusion": "Ändrade mallparametrar", "visualeditor-desc": "Visuell redigerare för MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", + "visualeditor-dialog-extension-abandonedit": "Är du säker på att du vill stänga den här dialogrutan utan att tillämpa dina ändringar?", "visualeditor-dialog-media-alttext-checkbox": "Använd bildtexten som alternativ text", "visualeditor-dialog-media-alttext-section": "Alternativ text", "visualeditor-dialog-media-alttext-section-help": "Du kan använda detta för att ge en beskrivning som används för människor som inte kan se mediaobjektet. Beskrivningen bör vara tillräckligt bra så de förstår syftet och informationen från medieobjektet. Detta är viktigt för blinda användare och andra personer som använder programvara för skärmläsare eller textbaserade webbläsare.", @@ -268,6 +270,7 @@ "visualeditor-includes-includeonly-description": "När innehåll från denna sida används på en annan sida kommer följande innehåll att inkluderas här:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Läs mer om partiell inkludering]", "visualeditor-languages-tool": "Språk", + "visualeditor-linkcontext-uneditable": "Tyvärr, kan den här länken för närvarande bara redigeras i källläge.", "visualeditor-linkinspector-button-link-external": "Extern webbplats", "visualeditor-linkinspector-button-link-internal": "Sök på interna sidor", "visualeditor-linkinspector-convert-link-isbn": "Konvertera till ISBN-länk", @@ -276,6 +279,7 @@ "visualeditor-linkinspector-educationpopup-text": "Länka viktiga ord till andra wikiartiklar eller andra webbplatser. Det kommer att hjälpa läsarna att förstå sammanhanget.", "visualeditor-linkinspector-educationpopup-title": "Länkar", "visualeditor-linkinspector-illegal-title": "Ogiltig sidtitel", + "visualeditor-linkinspector-invalid-blocked": "Användare på den här wikin har beslutat att blockera länkar till den här webbplatsen. Försök med en annan länk.", "visualeditor-linkinspector-invalid-external": "Ange en full webbadress, t.ex. https://exempel.org", "visualeditor-linknodeinspector-add-label": "Lägg till etikett", "visualeditor-linknodeinspector-title": "Enkel länk", @@ -335,6 +339,8 @@ "visualeditor-preference-tabs-prefer-ve": "Ge mig alltid den visuella redigeraren om möjligt", "visualeditor-preference-tabs-prefer-wt": "Ge mig alltid källtextredigeraren", "visualeditor-preference-tabs-remember-last": "Kom ihåg min senaste redigerare", + "visualeditor-preference-collab-label": "Kollaborativ redigering", + "visualeditor-preference-collab-description": "Bjud in andra användare att delta i din redigeringssession i den visuella redigeraren.", "visualeditor-rebase-client-export": "Exportera", "visualeditor-rebase-client-export-start": "Exportera…", "visualeditor-rebase-client-import": "Importera", @@ -369,7 +375,7 @@ "visualeditor-special-characters-group-other": "Används ofta", "visualeditor-templatesused-tool": "Mallar som används", "visualeditor-title-error": "Ogiltig titel.", - "visualeditor-toload": "Editorn kommer nu laddas. Prova att [$1 ladda om sidan] om du fortfarande ser det här meddelandet efter några sekunder.", + "visualeditor-toload": "Redigeraren laddas nu. Om du fortfarande ser det här meddelandet efter några sekunder, vänligen [$1 ladda om sidan].", "visualeditor-tooltip-non-breaking-space": "Hårt mellanslag", "visualeditor-version-label": "Version", "visualeditor-wikitext-progress": "Konverterar wikitext", diff --git a/i18n/ve-mw/szl.json b/i18n/ve-mw/szl.json index 765493a6e8..31ccf27d06 100644 --- a/i18n/ve-mw/szl.json +++ b/i18n/ve-mw/szl.json @@ -6,10 +6,256 @@ "Uostofchuodnego" ] }, + "collabpad-doctitle": "CollabPad: $1", + "collabpad-import-subtitle": "Importōwane ze $1", + "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Edytuj tã strōnã", + "tooltip-ca-ve-edit-local": "Edytuj lokalnŏ wersyjŏ ôpisu", + "tooltip-ca-ve-create": "Stwōrz ta zajta", + "tooltip-ca-ve-create-local": "Stwōrz lokalnŏ wersyjŏ ôpisu", + "tooltip-ca-editsource": "Edytuj zdrzōdłowy kod tyj zajty", + "tooltip-ca-editsource-local": "Edytuj zdrzōdłowy kod ôd lokalnyj zajty ôpisu", + "tooltip-ca-createsource": "Stwōrz zdrzōdłowy kod tyj zajty", + "tooltip-ca-createsource-local": "Stwōrz zdrzōdłowy kod lokalnyj zajty ôpisu", + "visualeditor-advancedsettings-tool": "Ekstra ustawiynia", + "visualeditor-annotations-default-description": "Tyn kōnsek zajty przinŏleżi do tajle ôd adnotacyje.", + "visualeditor-annotations-default-end": "Kōniec ôd adnotacyje", + "visualeditor-annotations-default-start": "Sztart ôd adnotacyje", + "visualeditor-annotations-extended-documentation": "Pole tyj adnotacyje ôstało poszerzōne beztuż co inhalt, kery siyngało niy bōł prawidłowo skuplowany. Dŏwać trza pozōr, coby inhalt adnotacyje bōł przed edycyjōm fajnie zaszachtlowany; we przeciwnym razie moge być dokuplowany szyrszy kōnsek aniżeli je to spodziewane.", + "visualeditor-autosave-modified-prompt-accept": "Kōntynuuj edycyjŏ", + "visualeditor-autosave-modified-prompt-message": "Ta zajta bōła edytowanŏ ôd czasu kedyś ja {{GENDER:|zaladowoł|zaladowała}}. Mosz lust kōntynuować edytowaniy staryj wersyje, abo chcesz sprowiać ôd nowa na wiyrchu ôd nojnowszyj wersyji?", + "visualeditor-autosave-modified-prompt-reject": "Sprowiej nowŏ wersyjŏ", + "visualeditor-autosave-modified-prompt-title": "Kōntynuować {{GENDER:|Twojã}} edycyjŏ?", + "visualeditor-autosave-not-recovered-text": "Twoje niyzapisane sprowiynia niy mogły być przidane nazŏd.", + "visualeditor-autosave-not-recovered-title": "Przidŏwaniy Twojich sprowiyń nazŏd niy podarziło sie", + "visualeditor-autosave-recovered-text": "Twoje niyzapisane sprowiynia ôstały ze automatu przidane nazŏd.", + "visualeditor-autosave-recovered-title": "Sprowiynia przidane nazŏd", + "visualeditor-backbutton-tooltip": "Idź nazŏd", "visualeditor-ca-createlocaldescriptionsource": "Przidej zdrzōdło lokalnego ôpisu", "visualeditor-ca-createsource": "Stwōrz zdrzōdło", + "visualeditor-ca-editlocaldescriptionsource": "Edytuj zdrzōdłowy kod lokalnygo ôpisu", "visualeditor-ca-editsource": "Edytuj tekst zdrzōdłowy", "visualeditor-ca-editsource-section": "edytuj zdrzōdło", - "visualeditor-descriptionpagelink": "Project:VisualEditor" + "visualeditor-ca-editsource-section-hint": "Edytuj zdrzōdłowy kod sekcyje: $1", + "visualeditor-categories-tool": "Kategoryje", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Klucz do sortowaniŏ pōmiyniōno ze $1 na $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Klucz do sortowaniŏ nasztalowano na $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Wyciepano klucz do sortowaniŏ $1", + "visualeditor-changedesc-mwlanguagevariant": "Pōmiyniōno znak wariantu gŏdki", + "visualeditor-changedesc-mwredirect": "Pōmiyniōno cel przekerowaniŏ ze $1 na $2", + "visualeditor-changedesc-mwtransclusion": "Pōmiyniōno paramyjtry ôd mustra", + "visualeditor-desc": "Wizualny edytōr do MediaWiki", + "visualeditor-descriptionpagelink": "Project:VisualEditor", + "visualeditor-dialog-extension-abandonedit": "Na zicher chcesz zawrzić tyn dialog bez wdrożyniŏ Twojich pōmian?", + "visualeditor-dialog-media-alttext-checkbox": "Użyj szrajbki kej alternatywny tekst", + "visualeditor-dialog-media-alttext-section": "Alternatywny tekst", + "visualeditor-dialog-media-alttext-section-help": "Mogesz sam napisać przidajny tekst dlŏ ludzi, ftorzi niy poradzōm sie sforsztelować tyn multimedyjalny plik. Ôpis mŏ stykać na tejla, coby poradziyli sie ôni zmiarkować cwek i inhalt kery tyn plik dŏwŏ. Je to fest ważne dlŏ ślepych używŏczōw a inkszych, ftorzi używajōm screen-readera abo tekstowe ôbziyraczki internecowe.", + "visualeditor-dialog-media-change-image": "Pōmiyń ôbrŏzek", + "visualeditor-dialog-media-choose-image": "Użyj tyn ôbrŏzek", + "visualeditor-dialog-media-content-description-link": "(zajta ôpisu)", + "visualeditor-dialog-media-content-filename": "Miano pliku", + "visualeditor-dialog-media-content-section": "Szrajbka", + "visualeditor-dialog-media-content-section-help": "Mogesz sam napisać szrajbka dlŏ multimedyjalnygo pliku, kerŏ widzō wszyjske czytelniki. Szrajbka czynsto je używanŏ do erklerowaniŏ, co plik mŏ do przidanygo hasła. Szrajbka mŏ być krōtkŏ i zŏfcitŏ.", + "visualeditor-dialog-media-goback": "Nazŏd", + "visualeditor-dialog-media-info-artist": "Przesłane ôd $1", + "visualeditor-dialog-media-info-audiofile": "Plik audio", + "visualeditor-dialog-media-info-created": "Utworzōne: $1", + "visualeditor-dialog-media-info-meta-artist": "Autōr: $1", + "visualeditor-dialog-media-info-moreinfo": "Wiyncyj informacyji", + "visualeditor-dialog-media-info-readmore": "Czytej wiyncyj", + "visualeditor-dialog-media-info-uploaded": "Przesłane: $1", + "visualeditor-dialog-media-page-advanced": "Ekstra", + "visualeditor-dialog-media-page-general": "Generalne", + "visualeditor-dialog-media-position-checkbox": "Ôwiń tekst naôbkoło tego elymyntu", + "visualeditor-dialog-media-position-section": "Pozycyjŏ", + "visualeditor-dialog-media-save": "Spamiyntej", + "visualeditor-dialog-media-search-tab-search": "Szukej", + "visualeditor-dialog-media-search-tab-upload": "Prześlij", + "visualeditor-dialog-media-size-section": "Miara ôbrŏzka", + "visualeditor-dialog-media-title": "Ustawiynia mediōw", + "visualeditor-dialog-media-type-border": "Granica", + "visualeditor-dialog-media-type-frame": "Ramka", + "visualeditor-dialog-media-type-frameless": "Bez ramki", + "visualeditor-dialog-media-type-none": "Ajnfachowy", + "visualeditor-dialog-media-type-section": "Zorta ôbrŏzka", + "visualeditor-dialog-media-type-thumb": "Miniaturka", + "visualeditor-dialog-media-upload": "Prześlij", + "visualeditor-dialog-meta-advancedsettings-label": "Ekstra ustawiynia", + "visualeditor-dialog-meta-advancedsettings-section": "Ekstra ustawiynia", + "visualeditor-dialog-meta-categories-addcategory-label": "Przidej kategoryjŏ do tyj zajty", + "visualeditor-dialog-meta-categories-category": "Kategoryjŏ", + "visualeditor-dialog-meta-categories-data-label": "Kategoryje", + "visualeditor-dialog-meta-categories-defaultsort-label": "Sortuj ta zajta defaultowo kej", + "visualeditor-dialog-meta-categories-hidden": "Ta kategoryjŏ je nasztalowanŏ tak, coby niy pokazowała sie na zajtach do kerych ôstała wrażōnŏ.", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Skryte kategoryje", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Kategoryje kere sztimujōm", + "visualeditor-dialog-meta-categories-input-movecategorylabel": "Przeciep ta kategoryjŏ tukej", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "Nowŏ kategoryjŏ", + "visualeditor-dialog-meta-categories-input-placeholder": "Przidej kategoryjŏ", + "visualeditor-dialog-meta-categories-missing": "Ta kategoryjŏ niy mŏ zajty ôpisu.", + "visualeditor-dialog-meta-categories-options": "Ôpcyje", + "visualeditor-dialog-meta-categories-section": "Kategoryje", + "visualeditor-dialog-meta-categories-sortkey-label": "Sortuj ta zajta pod mianym", + "visualeditor-dialog-meta-languages-code-label": "Kod gŏdki", + "visualeditor-dialog-meta-languages-label": "Gŏdki", + "visualeditor-dialog-meta-languages-link-label": "Powiōnzanŏ zajta", + "visualeditor-dialog-meta-languages-name-label": "Gŏdka", + "visualeditor-dialog-meta-languages-section": "Gŏdki", + "visualeditor-dialog-meta-settings-displaytitle": "Pokazŏwany tytuł", + "visualeditor-dialog-meta-settings-displaytitle-help": "Mogesz nasztalować inkszy tekst, kery bydzie prezentowany kej tytuł zajty.", + "visualeditor-dialog-meta-settings-hiddencat-label": "Skrytŏ kategoryjŏ", + "visualeditor-dialog-meta-settings-index-default": "Sztandard", + "visualeditor-dialog-meta-settings-index-disable": "Niy", + "visualeditor-dialog-meta-settings-index-force": "Ja", + "visualeditor-dialog-meta-settings-label": "Ustawiynia zajty", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Sztandard", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Niy", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Ja", + "visualeditor-dialog-meta-settings-nogallery-label": "Dezaktywuj galeryjŏ", + "visualeditor-dialog-meta-settings-redirect-label": "Przekeruj ta zajta do", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Docelowŏ zajta przekerowaniŏ", + "visualeditor-dialog-meta-settings-section": "Ustawiynia zajty", + "visualeditor-dialog-meta-settings-toc-default": "Eli musi", + "visualeditor-dialog-meta-settings-toc-disable": "Nigdy", + "visualeditor-dialog-meta-settings-toc-force": "Zŏwdy", + "visualeditor-dialog-meta-settings-toc-label": "Pokŏż tabula ze spisym inhaltu", + "visualeditor-dialog-meta-templatesused-noresults": "Niy wysznupano mustrōw.", + "visualeditor-dialog-meta-title": "Ôpcyje", + "visualeditor-dialog-table-collapsed": "Nojprzōd zwiniyntŏ", + "visualeditor-dialog-table-collapsible": "Zwijalnŏ", + "visualeditor-dialog-table-sortable": "Sortowalnŏ", + "visualeditor-dialog-table-wikitable": "We stylu wikitable", + "visualeditor-dialog-template-title": "Muster", + "visualeditor-dialog-transclusion-action-save": "Spamiyntej", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Tyn muster niy egzistuje.", + "visualeditor-dialog-transclusion-template-widget-aria": "Wciś spacyjŏ coby ôbrać tyn muster.", + "visualeditor-dialog-transclusion-add-wikitext": "Przidej wikitekst", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "Niy dŏ sie przidać paramyjtra \"$2\" dwa razy.", + "visualeditor-dialog-transclusion-add-param-placeholder": "Miano paramyjtra", + "visualeditor-dialog-transclusion-add-param-save": "Przidej", + "visualeditor-dialog-transclusion-add-template": "Przidej muster", + "visualeditor-dialog-transclusion-add-template-button": "Przidej muster", + "visualeditor-dialog-transclusion-add-template-save": "Przidej", + "visualeditor-dialog-transclusion-add-undocumented-param": "Przidej niyudokumentōwany paramyjter", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "Nazŏd do szukaniŏ? Dej pozōr, Twoje pōmiany bydōm na dycki zapōmiane.", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "Zawrzić edytōr mustrōw? Dej pozōr, Twoje pōmiany bydōm na dycki zapōmiane.", + "visualeditor-dialog-transclusion-collapse-options": "Skryj ôpcyje", + "visualeditor-dialog-transclusion-confirmation-discard": "Ôdciep pōmiany", + "visualeditor-dialog-transclusion-confirmation-reject": "Kōntynuuj edytowaniy", + "visualeditor-dialog-transclusion-contextitem-description": "Wygenerowane ze: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Ladowaniy…", + "visualeditor-dialog-transclusion-expand-options": "Pokŏż ôpcyje", + "visualeditor-dialog-transclusion-filter-hide-unused": "Skryj niyużywane", + "visualeditor-dialog-transclusion-filter-no-match": "Nic sam niy sztimuje", + "visualeditor-dialog-transclusion-filter-placeholder": "Poszukej paramyjtra", + "visualeditor-dialog-transclusion-filter-show-all": "Pokŏż wszyjske", + "visualeditor-dialog-transclusion-deprecated-parameter": "Zastarzały paramyjter", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "Paramyjter je zastarzały. $1", + "visualeditor-dialog-transclusion-loading": "Ladowaniy...", + "visualeditor-dialog-transclusion-param-default": "Sztandard: $1", + "visualeditor-dialog-transclusion-param-example-long": "Przikłŏd: $1", + "visualeditor-dialog-transclusion-param-selection-aria-label": "Paramyjtry we $1", + "visualeditor-dialog-transclusion-param-undocumented": "(niyudokumyntowany paramyjter)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Znojdź muster", + "visualeditor-dialog-transclusion-required-parameter": "Wymŏgany paramyjter", + "visualeditor-dialog-transclusion-required-parameter-description": "Paramyjter je wymŏgany.", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Idź nazŏd", + "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Kōntynuuj furt dalij", + "visualeditor-dialog-transclusion-title-insert-template": "Wciep muster", + "visualeditor-dialog-transclusion-title-insert-known-template": "Wciep: $1", + "visualeditor-dialog-transclusion-title-edit-known-template": "Edytuj: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Inhalt mustra", + "visualeditor-dialog-transclusion-template-search": "Wyszukowaniy mustrōw", + "visualeditor-dialog-transclusion-wikitext": "Wikitext", + "visualeditor-dialogbutton-media-tooltip": "Grafika i multimedyja", + "visualeditor-dialogbutton-template-tooltip": "Muster", + "visualeditor-editingtabdialog-ok": "Użyj edytora, kery użōł'ch ôstatni rŏz", + "visualeditor-editingtabdialog-title": "Karty edycyji", + "visualeditor-editnotices-tool": "$1 {{PLURAL:$1|zawiadomiynie|zawiadomiynia|zawiadomiyń}}", + "visualeditor-editnotices-tooltip": "Edytuj zawiadomiynia", + "visualeditor-editsummary": "Ôpisz co sprowioł'ś", + "visualeditor-educationpopup-dismiss": "Ok, miarkujã", + "visualeditor-expandable-less": "Mynij", + "visualeditor-expandable-more": "Wiyncyj", + "visualeditor-feedback-defaultmessage": "URL: $1", + "visualeditor-formatdropdown-format-mw-heading1": "Tytuł zajty", + "visualeditor-formatdropdown-format-mw-heading2": "Heading", + "visualeditor-formatdropdown-format-mw-heading3": "Sub-heading 1", + "visualeditor-formatdropdown-format-mw-heading4": "Sub-heading 2", + "visualeditor-formatdropdown-format-mw-heading5": "Sub-heading 3", + "visualeditor-formatdropdown-format-mw-heading6": "Sub-heading 4", + "visualeditor-generating-wikitext-progress": "Generowanie wikitekstu", + "visualeditor-languages-tool": "Gŏdki", + "visualeditor-linkinspector-button-link-external": "Zewnyntrznŏ neczajta", + "visualeditor-linkinspector-button-link-internal": "Szukej wnyntrznych zajtōw", + "visualeditor-linkinspector-convert-link-isbn": "Przełōż na ISBN-link", + "visualeditor-linkinspector-convert-link-pmid": "Przełōż na PMID-link", + "visualeditor-linkinspector-convert-link-rfc": "Przełōż na RFC-link", + "visualeditor-linkinspector-educationpopup-title": "Linki", + "visualeditor-linkinspector-illegal-title": "Niynŏleżny tytuł zajty", + "visualeditor-linkinspector-invalid-external": "Wkludź połny URL, bp. https://example.org", + "visualeditor-linknodeinspector-add-label": "Przidej etyketa", + "visualeditor-linknodeinspector-title": "Ajnfachowy link", + "visualeditor-magiclinknodeinspector-convert-link": "Przełōż na ajnfachowy link", + "visualeditor-magiclinknodeinspector-title-isbn": "ISBN-link", + "visualeditor-magiclinknodeinspector-title-pmid": "PMID-link", + "visualeditor-magiclinknodeinspector-title-rfc": "RFC-link", + "visualeditor-media-title-audio": "Audio", + "visualeditor-media-title-image": "Grafika", + "visualeditor-media-title-video": "Widyjŏ", + "visualeditor-meta-tool": "Ôpcyje", + "visualeditor-mweditmode-tooltip": "Przeszaltruj edytōr", + "visualeditor-mweditmodesource-progress": "Szaltrowaniy do edycyje zdrzōdłowego kodu...", + "visualeditor-mweditmodesource-tool-current": "Edycyjŏ zdrzōdłowego kodu", + "visualeditor-mweditmodeve-showagain": "Niy pokazuj już tyj wiadōmości", + "visualeditor-mweditmodeve-tool-current": "Wizualnŏ edycyjŏ", + "visualeditor-mweditmodewt-popup-title": "Przeszaltrowoł'ś na tryb edycyje wizualnyj", + "visualeditor-mwgallerydialog-card-images": "Ôbrŏzki", + "visualeditor-mwgallerydialog-card-options": "Ôpcyje", + "visualeditor-mwgallerydialog-classes-field-label": "Klasy CSS", + "visualeditor-mwgallerydialog-heights-field-label": "Wyżka ôbrŏzka", + "visualeditor-mwgallerydialog-mode-dropdown-label-slideshow": "Prezentacyjŏ slajdōw", + "visualeditor-mwgallerydialog-mode-dropdown-label-traditional": "Tradycyjny", + "visualeditor-mwgallerydialog-mode-field-label": "Zorta prezentacyje", + "visualeditor-mwgallerydialog-perrow-field-label": "Ôbrŏzkōw na linia", + "visualeditor-mwgallerydialog-remove-button-label": "Wyciep ôbrŏzek", + "visualeditor-mwgallerydialog-search-button-label": "Wciep nowy ôbrŏzek", + "visualeditor-mwgallerydialog-show-filename-field-label": "Pokŏż miana plikōw", + "visualeditor-mwgallerydialog-styles-field-label": "Style CSS", + "visualeditor-mwgallerydialog-title": "Galeryjŏ", + "visualeditor-mwgallerydialog-widths-field-label": "Szyrzka ôbrŏzka", + "visualeditor-mwsignature-tool": "Twoja szrajbka", + "visualeditor-preference-tabs": "Tryb edycyje:", + "visualeditor-preference-tabs-prefer-ve": "Zŏwdy dej mie wizualny edytōr eli sie dŏ", + "visualeditor-preference-tabs-prefer-wt": "Zŏwdy dej mie edytōr zdrzōdłowego kodu eli sie dŏ", + "visualeditor-preference-tabs-remember-last": "Spamiyntej mōj ôstatnio używany edytōr", + "visualeditor-preference-collab-label": "Spōlne edytowaniy", + "visualeditor-rebase-client-export": "Eksport", + "visualeditor-rebase-client-export-start": "Eksport…", + "visualeditor-rebase-client-import": "Importuj", + "visualeditor-rebase-client-import-name": "Tytuł zajty", + "visualeditor-redirect-description": "Przekerowaniy do $1", + "visualeditor-savedialog-identify-anon": "Żŏdne kōnto niy je terŏzki zalogōwane. Eli kōntynuujesz, Twoja adresa IP bydzie spamiyntanŏ we historyji edycyji ôd zajty.", + "visualeditor-savedialog-label-publish-short": "Ôpublikuj", + "visualeditor-savedialog-label-publish-short-start": "Ôpublikuj...", + "visualeditor-savedialog-label-resume-editing": "Kōntynuuj edycyjŏ", + "visualeditor-savedialog-label-review": "Skōntroluj swoje pōmiany", + "visualeditor-savedialog-label-review-good": "Idź nazŏd do formularza spamiyntowaniō", + "visualeditor-savedialog-label-save-short": "Spamiyntej", + "visualeditor-savedialog-label-save-short-start": "Spamiyntej", + "visualeditor-savedialog-review-nosummary": "Bez ôpisu edycyje", + "visualeditor-savedialog-review-visual": "Wizualniy", + "visualeditor-savedialog-review-wikitext": "Wikitext", + "visualeditor-savedialog-title-conflict": "Kōnflikt", + "visualeditor-savedialog-title-preview": "Ôbejrzij swoje pōmiany", + "visualeditor-savedialog-title-review": "Skōntroluj swoje pōmiany", + "visualeditor-savedialog-title-save": "Spamiyntej swoje pōmiany", + "visualeditor-section-body-placeholder": "Nowŏ sekcyjŏ", + "visualeditor-section-title-placeholder": "Tymat", + "visualeditor-settings-tool": "Ustawiynia zajty", + "visualeditor-special-characters-group-other": "Czynsto używane", + "visualeditor-templatesused-tool": "Użyte mustry", + "visualeditor-title-error": "Felerny tytuł.", + "visualeditor-version-label": "Wersyjo", + "visualeditor-wikitext-progress": "Kōnwertowaniy wikitekstu" } diff --git a/i18n/ve-mw/te.json b/i18n/ve-mw/te.json index b7f7309efa..14b5134e6d 100644 --- a/i18n/ve-mw/te.json +++ b/i18n/ve-mw/te.json @@ -35,7 +35,7 @@ "visualeditor-autosave-recovered-title": "మార్పులను వెలికితీసాం", "visualeditor-backbutton-tooltip": "వెనక్కి వెళ్ళండి", "visualeditor-ca-createlocaldescriptionsource": "స్థానిక వివరణ సోర్సును చేర్చండి", - "visualeditor-ca-createsource": "మూలపాఠ్యాన్ని సృష్టించండి", + "visualeditor-ca-createsource": "మూలపాఠ్యాన్ని సృష్టించు", "visualeditor-ca-editlocaldescriptionsource": "స్థానిక వివరణ సోర్సును మార్చండి", "visualeditor-ca-editsource": "మూలపాఠ్యాన్ని సవరించు", "visualeditor-ca-editsource-section": "మూలపాఠ్యాన్ని సవరించు", @@ -57,11 +57,9 @@ "visualeditor-dialog-media-info-artist": "$1 ఎక్కించారు", "visualeditor-dialog-media-info-audiofile": "ఆడియో దస్త్రం", "visualeditor-dialog-media-info-created": "సృష్టించిన తేదీ: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "కర్త: $1", "visualeditor-dialog-media-info-moreinfo": "మరింత సమాచారం", "visualeditor-dialog-media-info-readmore": "మరింత చదువండి", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "ఎక్కించిన తేదీ: $1", "visualeditor-dialog-media-page-advanced": "ఉన్నత", "visualeditor-dialog-media-page-general": "సాధారణ", @@ -73,7 +71,7 @@ "visualeditor-dialog-media-search-tab-search": "వెతుకు", "visualeditor-dialog-media-search-tab-upload": "ఎక్కించు", "visualeditor-dialog-media-size-section": "బొమ్మ పరిమాణం", - "visualeditor-dialog-media-size-section-help": "పేజీలో ఈ మీడియా అంశం ఎంత పెద్దదిగా కనబడాలో నిశ్చయించవచ్చు. దాదాపుగా అన్నివేళలా ఇది అప్రమెయం గానే ఉండాలి. ఎందుకంటే ఇతర పరిమాణాన్ని ఎంచుకుంటే అది పేజీ రూపాన్ని అడ్డుకుని పాఠకులకు అసౌకర్యం కలిగించవచ్చు.", + "visualeditor-dialog-media-size-section-help": "పేజీలో ఈ మీడియా అంశం ఎంత పెద్దదిగా కనబడాలో నిశ్చయించుకోవచ్చు. ఇది దాదాపుగా ఎప్పుడూ మామూలు (నార్మల్) గానే ఉండాలి. ఎందుకంటే వేరే పరిమాణాన్ని ఎంచుకుంటే అది పేజీ రూపాన్ని అడ్డుకుని పాఠకులకు అసౌకర్యం కలిగించవచ్చు.", "visualeditor-dialog-media-title": "మీడియా అమరికలు", "visualeditor-dialog-media-type-border": "సరిహద్దు రేఖ", "visualeditor-dialog-media-type-frame": "చట్రం", @@ -298,7 +296,7 @@ "visualeditor-special-characters-group-other": "తరచూ వాడేవి", "visualeditor-templatesused-tool": "వాడిన మూసలు", "visualeditor-title-error": "చెల్లని శీర్షిక.", - "visualeditor-toload": "ఇప్పుడు ఎడిటరు లోడవుతుంది. కొన్ని సెకండ్ల తరువాత కూడా ఈ సందేశం కనబడుతూంటే, [$1 పేజీని మళ్ళీ లోడు చెయ్యండి].", + "visualeditor-toload": "ఇప్పుడు ఎడిటరు లోడవుతుంది. కొన్ని సెకండ్ల తరువాత కూడా ఈ సందేశం కనబడుతూంటే, [$1 పేజీని రిఫ్రెష్ చెయ్యండి].", "visualeditor-version-label": "సంచిక", "visualeditor-wikitext-progress": "వికీ టెక్స్ట్‌ను మారుస్తున్నాం", "visualeditor-wikitext-warning": "మీరు విజువల్ ఎడిటర్‌ని ఉపయోగిస్తున్నారు - ఇక్కడ [[{{MediaWiki:visualeditor-wikitext-warning-link}}|వికీటెక్స్ట్]] పని చేయదు. మీరు చేసిన మార్పులను కోల్పోకుండా మూలపాఠ్య సవరణకు మారాలంటే, స్విచ్ బొత్తాంపై నొక్కండి.", diff --git a/i18n/ve-mw/th.json b/i18n/ve-mw/th.json index 2c9a882103..cc00e6872e 100644 --- a/i18n/ve-mw/th.json +++ b/i18n/ve-mw/th.json @@ -43,6 +43,7 @@ "visualeditor-desc": "ตัวแก้ไขแบบเห็นภาพสำหรับมีเดียวิกิ", "visualeditor-descriptionpagelink": "Project:เครื่องมือแก้ไขแบบเห็นภาพ", "visualeditor-dialog-extension-abandonedit": "คุณแน่ใจหรือไม่ว่าต้องการปิดกล่องโต้ตอบนี้โดยไม่มีการเปลี่ยนแปลงของคุณ?", + "visualeditor-dialog-media-alttext-checkbox": "ใช้คำบรรยายภาพเป็นข้อความทดแทน", "visualeditor-dialog-media-alttext-section": "ข้อความอื่น", "visualeditor-dialog-media-alttext-section-help": "คุณสามารถใช้เครื่องมือนี้ในการเขียนคำอธิบายข้อความสำหรับบุคคลที่ไม่สามารถมองเห็นรายการดังกล่าว ควรเขียนคำอธิบายพอให้บุคคลเหล่านั้นเข้าใจวัตถุประสงค์และข้อมูลที่ระบุโดยรายการสื่อได้ ซึ่งสำคัญต่อผู้ใช้ที่พิการทางสายตาหรือบุคคลอื่นที่ใช้ซอฟต์แวร์อ่านหน้าจอหรือเบราว์เซอร์ที่แสดงผลเฉพาะข้อความ", "visualeditor-dialog-media-change-image": "เปลี่ยนภาพ", @@ -115,9 +116,16 @@ "visualeditor-dialog-meta-settings-newsectioneditlink-default": "ค่าเริ่มต้น", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "ไม่", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "ใช่", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "คุณสามารถบังคับให้แสดงแท็บเพิ่มเติมอีกแท็บหนึ่งนอกเหนือจากแท็บ \"$1\" บนหน้านี้ เพื่อให้เพิ่มส่วนใหม่ได้สะดวก หรือบังคับไม่ให้แท็บดังกล่าวแสดงแม้ปกติแล้วจะแสดงก็ตาม", "visualeditor-dialog-meta-settings-newsectioneditlink-label": "แสดงแท็บบนหน้านี้เพื่อเพิ่มส่วนใหม่", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "คุณสามารถป้องกันไม่ให้เนื้อหาของหน้านี้ถูกแปลงเป็นรูปแบบตัวเขียนอื่นโดยอัตโนมัติได้", + "visualeditor-dialog-meta-settings-nocontentconvert-label": "ไม่ต้องแปลงเนื้อหาระหว่างรูปแบบภาษา", + "visualeditor-dialog-meta-settings-noeditsection-help": "คุณสามารถป้องกันไม่ให้ลิงก์แก้ไขแสดงถัดจากแต่ละส่วนได้ ในกรณีพิเศษที่เห็นว่าเหมาะสม", "visualeditor-dialog-meta-settings-noeditsection-label": "ปิดใช้งานลิงก์แก้ไขถัดจากแต่ละหัวเรื่องบนหน้านี้", + "visualeditor-dialog-meta-settings-nogallery-help": "คุณสามารถป้องกันไม่ให้หมวดหมู่นี้แสดงไฟล์สมาชิกในรูปแบบระเบียงภาพได้ หากไม่เหมาะสมในกรณีนี้", "visualeditor-dialog-meta-settings-nogallery-label": "ปิดใช้งานแกลเลอรี", + "visualeditor-dialog-meta-settings-notitleconvert-help": "คุณสามารถป้องกันไม่ให้ชื่อของหน้านี้ถูกแปลงเป็นรูปแบบตัวเขียนอื่นโดยอัตโนมัติได้", + "visualeditor-dialog-meta-settings-notitleconvert-label": "ไม่ต้องแปลงชื่อระหว่างรูปแบบภาษา", "visualeditor-dialog-meta-settings-redirect-label": "เปลี่ยนทางหน้านี้ไปยัง", "visualeditor-dialog-meta-settings-redirect-placeholder": "หน้าปลายทางสำหรับการเปลี่ยนทาง", "visualeditor-dialog-meta-settings-section": "การตั้งค่าหน้า", @@ -227,7 +235,7 @@ "visualeditor-mwgallerydialog-remove-button-label": "เอาภาพออก", "visualeditor-mwgallerydialog-search-button-label": "เพิ่มภาพใหม่", "visualeditor-mwgallerydialog-show-filename-field-label": "แสดงชื่อไฟล์", - "visualeditor-mwgallerydialog-styles-field-label": "รูปแบบ CSS", + "visualeditor-mwgallerydialog-styles-field-label": "รูปแบบซีเอสเอส", "visualeditor-mwgallerydialog-title": "แกลเลอรี", "visualeditor-mwgallerydialog-widths-field-label": "ความกว้างของภาพ", "visualeditor-mwgallerydialog-widths-input-placeholder": "ความกว้างเริ่มต้น: $1 พิกเซล", diff --git a/i18n/ve-mw/tig.json b/i18n/ve-mw/tig.json index 29886f1487..49f843980f 100644 --- a/i18n/ve-mw/tig.json +++ b/i18n/ve-mw/tig.json @@ -1,13 +1,63 @@ { "@metadata": { "authors": [ + "Bbeshir", "IdrisSeid", "Kassala" ] }, + "tooltip-ca-ve-edit": "እለ ግጽ አስነ", + "tooltip-ca-ve-create": "እላ ገጽ ምነያ", + "visualeditor-backbutton-tooltip": "ግጽ ገራ ኣቅብል", "visualeditor-ca-createlocaldescriptionsource": "ወስፍ ናይ ቀበት መበገሲ ወስክ", "visualeditor-ca-createsource": "ዒን ክለቅ", "visualeditor-ca-editsource": "ዒን አስኔ", "visualeditor-ca-editsource-section": "አሳነዮት ዒን", - "visualeditor-descriptionpagelink": "Project:ለልትርኤ መዐድላይ" + "visualeditor-categories-tool": "ክፋላት", + "visualeditor-descriptionpagelink": "Project:ለልትርኤ መዐድላይ", + "visualeditor-dialog-media-content-filename": "ስሜት ካምለት", + "visualeditor-dialog-media-goback": "ኣቅበሎት", + "visualeditor-dialog-media-info-audiofile": "ፋይል ሶት", + "visualeditor-dialog-media-info-meta-artist": "ኬትባይ: $1", + "visualeditor-dialog-media-info-moreinfo": "ወሰክ ሐብሬ", + "visualeditor-dialog-media-info-readmore": "ዚያደት ቅራእ", + "visualeditor-dialog-media-page-advanced": "ለትቀደማ", + "visualeditor-dialog-media-page-general": "ዕሙማይ", + "visualeditor-dialog-media-search-tab-search": "ሕዘው", + "visualeditor-dialog-media-search-tab-upload": "ጸዓን", + "visualeditor-dialog-media-type-border": "ሕዱድ", + "visualeditor-dialog-media-type-none": "ኣሳሲ", + "visualeditor-dialog-media-type-section": "ዓይነት ሱረት", + "visualeditor-dialog-media-type-thumb": "ቅራጭ ሱረት", + "visualeditor-dialog-media-upload": "ጸዓን", + "visualeditor-dialog-meta-categories-category": "ከረርም", + "visualeditor-dialog-meta-categories-data-label": "ክፋላት", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "ሕቡዕ ክፋላት", + "visualeditor-dialog-meta-categories-options": "ሓረዮት", + "visualeditor-dialog-meta-categories-section": "ክፋላት", + "visualeditor-dialog-meta-languages-code-label": "ኮድ ሉቀት", + "visualeditor-dialog-meta-languages-label": "ሉቃት", + "visualeditor-dialog-meta-languages-name-label": "ሉቀት", + "visualeditor-dialog-meta-languages-section": "ሉቃት", + "visualeditor-dialog-meta-settings-index-disable": "ኢፋል", + "visualeditor-dialog-meta-settings-index-force": "ዓቤ", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "ንቡር", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "ኢፋል", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "ዓቤ", + "visualeditor-dialog-meta-settings-toc-default": "ሓቆ ኣትሓዛ", + "visualeditor-dialog-meta-settings-toc-disable": "ኣበደን", + "visualeditor-dialog-meta-settings-toc-force": "ዲማ", + "visualeditor-dialog-meta-title": "ሓረዮት", + "visualeditor-dialog-template-title": "ሞደል", + "visualeditor-dialog-transclusion-add-param-save": "ወስክ", + "visualeditor-dialog-transclusion-add-template-save": "ወስክ", + "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "ግጽ ገራ ኣቅብል", + "visualeditor-languages-tool": "ሉቃት", + "visualeditor-media-title-audio": "ሶት", + "visualeditor-media-title-image": "ሱረት", + "visualeditor-media-title-video": "ቪድዮ", + "visualeditor-meta-tool": "ሓረዮት", + "visualeditor-mwgallerydialog-card-images": "ሱውር", + "visualeditor-mwgallerydialog-card-options": "ሓረዮት", + "visualeditor-version-label": "ኑስኸት" } diff --git a/i18n/ve-mw/tl.json b/i18n/ve-mw/tl.json index 411c39eec3..4e275bb312 100644 --- a/i18n/ve-mw/tl.json +++ b/i18n/ve-mw/tl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "AnakngAraw", "Emem.calist", "GinawaSaHapon", @@ -113,7 +112,7 @@ "visualeditor-formatdropdown-format-mw-heading5": "Sub-pamuhatan 3", "visualeditor-formatdropdown-format-mw-heading6": "Sub-pamuhatan 4", "visualeditor-languages-tool": "Mga wika", - "visualeditor-linkinspector-button-link-external": "Kawing panlabas", + "visualeditor-linkinspector-button-link-external": "Panlabas na link", "visualeditor-linkinspector-button-link-internal": "Hanapin sa mga pahina", "visualeditor-linkinspector-illegal-title": "Walang-saysay na pamagat ng pahina", "visualeditor-linknodeinspector-add-label": "Magdagdag ng etiketa", diff --git a/i18n/ve-mw/tok.json b/i18n/ve-mw/tok.json index 1e74dba60b..6b2680af02 100644 --- a/i18n/ve-mw/tok.json +++ b/i18n/ve-mw/tok.json @@ -1,12 +1,54 @@ { "@metadata": { "authors": [ + "Juwan~backup", "LesVisages", + "Ne", "Robin van der Vliet", + "Tamzin", "Tbodt" ] }, + "tooltip-ca-ve-create": "o pali e lipu ni", + "tooltip-ca-editsource": "o ante e toki ilo pi lipu ni", + "tooltip-ca-createsource": "o pali e toki ilo pi lipu ni", + "visualeditor-autosave-modified-prompt-accept": "o awen e ante pini", + "visualeditor-autosave-modified-prompt-message": "sina kama ala lukin e lipu ni la, jan ante li ante e ona. {{GENDER:|sina}} wile ala wile awen e ante pini sina?", + "visualeditor-autosave-modified-prompt-reject": "o open e ante sin", + "visualeditor-autosave-modified-prompt-title": "{{GENDER:|sina}} wile ala wile awen e ante pini?", + "visualeditor-autosave-not-recovered-text": "mi ken ala kama sin e ante sina lon tenpo ni.", + "visualeditor-autosave-not-recovered-title": "ante li kama sin la pakala", + "visualeditor-autosave-recovered-text": "sina pana ala e ante la, mi kama e ona lon tenpo sin.", + "visualeditor-autosave-recovered-title": "ante li kama sin", + "visualeditor-backbutton-tooltip": "o pini", + "visualeditor-ca-createlocaldescriptionsource": "ma ni la o pana e sona kepeken toki ilo", + "visualeditor-ca-createsource": "o pali e toki ilo", "visualeditor-ca-editsource": "o ante e toki ilo", "visualeditor-ca-editsource-section": "o ante e toki ilo", - "visualeditor-dialog-meta-languages-name-label": "toki" + "visualeditor-categories-tool": "kulupu", + "visualeditor-dialog-media-change-image": "o ante e sitelen", + "visualeditor-dialog-media-choose-image": "o kepeken sitelen ni", + "visualeditor-dialog-media-save": "o awen", + "visualeditor-dialog-media-search-tab-search": "o alasa", + "visualeditor-dialog-media-search-tab-upload": "o pana", + "visualeditor-dialog-media-size-section": "suli sitelen", + "visualeditor-dialog-meta-categories-category": "kulupu", + "visualeditor-dialog-meta-categories-data-label": "kulupu", + "visualeditor-dialog-meta-categories-input-newcategorylabel": "kulupu sin", + "visualeditor-dialog-meta-categories-input-placeholder": "o pana e kulupu sin", + "visualeditor-dialog-meta-languages-label": "toki", + "visualeditor-dialog-meta-languages-name-label": "toki", + "visualeditor-dialog-meta-languages-section": "toki", + "visualeditor-dialog-transclusion-action-save": "o awen", + "visualeditor-mweditmodesource-progress": "o ante e toki ilo…", + "visualeditor-mweditmodesource-tool-current": "ante pi toki ilo", + "visualeditor-mweditmodesource-tool-unavailable": "sina ken ala ante e toki ilo lon ni", + "visualeditor-mweditmodeve-popup-title": "tenpo ni la sina ante e toki ilo", + "visualeditor-mweditmodeve-tool-current": "ante pi lukin lipu", + "visualeditor-mweditmodewt-popup-body": "sina wile ante e toki ilo la o luka e sitelen ni.", + "visualeditor-savedialog-label-review": "o lukin e ante sina", + "visualeditor-savedialog-label-save-short": "o awen", + "visualeditor-savedialog-label-save-short-start": "o awen…", + "visualeditor-savedialog-title-review": "o lukin e ante sina", + "visualeditor-savedialog-title-save": "o awen e ante sina" } diff --git a/i18n/ve-mw/tr.json b/i18n/ve-mw/tr.json index aa4f230931..ac83c39fde 100644 --- a/i18n/ve-mw/tr.json +++ b/i18n/ve-mw/tr.json @@ -39,7 +39,8 @@ "TurkishStyles", "Uncitoyen", "Uğurkent", - "Violetanka" + "Violetanka", + "Vito Genovese" ] }, "collabpad-doctitle": "CollabPad: $1", @@ -70,8 +71,8 @@ "visualeditor-ca-createlocaldescriptionsource": "Yerel açıklama kaynağı ekle", "visualeditor-ca-createsource": "Kaynak oluştur", "visualeditor-ca-editlocaldescriptionsource": "Yerel açıklama kaynağını düzenle", - "visualeditor-ca-editsource": "Kaynağı değiştir", - "visualeditor-ca-editsource-section": "kaynağı değiştir", + "visualeditor-ca-editsource": "Kaynağı düzenle", + "visualeditor-ca-editsource-section": "kaynağı düzenle", "visualeditor-ca-editsource-section-hint": "Bölümün kaynak kodunu değiştir: $1", "visualeditor-categories-tool": "Kategoriler", "visualeditor-changedesc-mwcategory-sortkey-changed": "Sıralama anahtarı $1 iken $2 olarak değiştirildi", @@ -206,7 +207,7 @@ "visualeditor-dialog-transclusion-back-confirmation-prompt": "Aramaya geri dönülsün mü? Değişiklikleriniz kaybolacak ve bu geri alınamaz.", "visualeditor-dialog-transclusion-close-confirmation-prompt": "Şablon düzenleyici kapatılsın mı? Değişiklikleriniz kaybolacak ve bu geri alınamaz.", "visualeditor-dialog-transclusion-collapse-options": "Seçenekleri gizle", - "visualeditor-dialog-transclusion-confirmation-discard": "Düzenlemeleri sil", + "visualeditor-dialog-transclusion-confirmation-discard": "Değişiklikleri sil", "visualeditor-dialog-transclusion-confirmation-reject": "Düzenlemeye devam et", "visualeditor-dialog-transclusion-contextitem-description": "Oluşturulan: $1", "visualeditor-dialog-transclusion-contextitem-loading": "Yükleniyor...", @@ -281,6 +282,7 @@ "visualeditor-includes-includeonly-description": "Bu sayfadaki içerik başka bir sayfa tarafından kullanıldığında, aşağıdaki ek içerik buraya dahil edilecektir:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Yansıtma hakkında daha fazla bilgi edinin]", "visualeditor-languages-tool": "Diller", + "visualeditor-linkcontext-uneditable": "Üzgünüz, bu bağlantı şimdilik yalnızca kaynak kipinde düzenlenebilir.", "visualeditor-linkinspector-button-link-external": "Harici site", "visualeditor-linkinspector-button-link-internal": "Dahili sayfalarda ara", "visualeditor-linkinspector-convert-link-isbn": "ISBN bağlantısına dönüştür", @@ -379,13 +381,13 @@ "visualeditor-savedialog-title-save": "Değişikliklerinizi kaydedin", "visualeditor-section-body-placeholder": "Yeni bölüm", "visualeditor-section-title-placeholder": "Konu", - "visualeditor-loaderror-revidconflict": "Sunucu tarafından döndürülen düzeltme kimlikleri eşleşmiyor (belge: $1, meta veri: $2)", + "visualeditor-loaderror-revidconflict": "Sunucu tarafından döndürülen düzeltme kimlikleri eşleşmiyor (belge: $1, üstveri: $2)", "visualeditor-loaderror-wrongmode": "Düzenleyiciyi yanlış modda yüklemeyi denedi (veri türü: \"$1\", düzenleyici modu: \"$2\").", "visualeditor-settings-tool": "Sayfa ayarları", "visualeditor-special-characters-group-other": "Sık kullanılan", "visualeditor-templatesused-tool": "Kullanılan şablonlar", "visualeditor-title-error": "Geçersiz başlık.", - "visualeditor-toload": "Editör şimdi yüklenecek. Birkaç saniye sonra bu mesajı görmeye devam ediyorsanız, lütfen [$1 sayfayı yeniden yükleyin].", + "visualeditor-toload": "Düzenleyici şimdi yüklenecek. Birkaç saniye sonra bu iletiyi görmeye devam ederseniz, lütfen [$1 sayfayı yenileyin].", "visualeditor-tooltip-non-breaking-space": "Kırılmaz alan", "visualeditor-version-label": "Sürüm", "visualeditor-wikitext-progress": "Vikimetin dönüştürülüyor", diff --git a/i18n/ve-mw/tsg.json b/i18n/ve-mw/tsg.json new file mode 100644 index 0000000000..ea0c4038cf --- /dev/null +++ b/i18n/ve-mw/tsg.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Zetareyy" + ] + }, + "visualeditor-ca-editsource": "Ba'guhun in puunan", + "visualeditor-ca-editsource-section": "ba'guhun in puunan" +} diff --git a/i18n/ve-mw/tt-cyrl.json b/i18n/ve-mw/tt-cyrl.json index 413435d138..b3ff398f57 100644 --- a/i18n/ve-mw/tt-cyrl.json +++ b/i18n/ve-mw/tt-cyrl.json @@ -6,6 +6,7 @@ "Don Alessandro", "Ерней", "З. ӘЙЛЕ", + "Ильгиз", "Ильнар" ] }, @@ -13,25 +14,50 @@ "collabpad-import-subtitle": "$1 дан кертелгән", "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Бу битне үзгәртү", + "tooltip-ca-ve-edit-local": "Тасвирлауның локаль битен редакторлагыз", + "tooltip-ca-ve-create": "Бу битне булдыр", + "tooltip-ca-ve-create-local": "Тасвирлауның локаль битен төзегез", "tooltip-ca-editsource": "Бу битнең чыгыш кодын үзгәртү", + "tooltip-ca-editsource-local": "Локаль тасвирлама битенең башлангыч кодын үзгәрт", "tooltip-ca-createsource": "Чыгыш коды төзәткечендә битне төзү", + "tooltip-ca-createsource-local": "Локаль тасвирлама битенең башлангыч кодын булдыр", "visualeditor-advancedsettings-tool": "Өстәмә көйләнмәләр", + "visualeditor-annotations-default-description": "Битнең бу өлеше аннотациләр диапазонының өлешен тәшкил итә.", + "visualeditor-annotations-default-end": "Аннотацияләр диапазонының азагы", + "visualeditor-annotations-default-start": "Аннотацияләр диапазонының башы", "visualeditor-autosave-modified-prompt-accept": "Үзгәртүне дәвам итү", "visualeditor-autosave-modified-prompt-reject": "Яңа төзәтмә башлау", + "visualeditor-autosave-modified-prompt-title": "Төзәтмә кертүегезне дәвам итәргә телисезме?", + "visualeditor-autosave-not-recovered-text": "Төзәтмәләрегезне сакламасагыз, аларны тергезеп булмас.", + "visualeditor-autosave-not-recovered-title": "Төзәтмәләрне тергезеп булмады", + "visualeditor-autosave-recovered-text": "Сезнең сакланмаган төзәтмәләрегез автомат рәвештә тергезелде.", + "visualeditor-autosave-recovered-title": "Төзәтмәләр тергезелде", "visualeditor-backbutton-tooltip": "Кире кайту", "visualeditor-ca-createlocaldescriptionsource": "Локаль тасвирлама өстәү", "visualeditor-ca-createsource": "Чыганак коды булдыру", + "visualeditor-ca-editlocaldescriptionsource": "Локаль тасвирлама чыганагын үзгәрт", "visualeditor-ca-editsource": "Вики-текстны үзгәртү", "visualeditor-ca-editsource-section": "вики-текстны үзгәртү", + "visualeditor-ca-editsource-section-hint": "«$1» бүлегенең кодын төзәт", "visualeditor-categories-tool": "Төркемнәр", - "visualeditor-desc": "MediaWiki өчен күрсәтмәле төзәткеч", + "visualeditor-changedesc-mwcategory-sortkey-changed": "Тәртипләү ачкычы элек $1 иде, хәзер — $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "Тәртипләү ачкычы хәзер: $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "Тәртипләү ачкычы сүндерелде: $1", + "visualeditor-changedesc-mwlanguagevariant": "Тел вариантының разметкасы үзгәрде", + "visualeditor-changedesc-mwredirect": "Юнәлтү һәдәфе элек $1 иде, хәзер — $2", + "visualeditor-changedesc-mwtransclusion": "Калып параметрлары үзгәрде", + "visualeditor-desc": "MediaWiki өчен күрсәтмәле редактор", "visualeditor-descriptionpagelink": "Project:Күрсәтмәле төзәтмә", + "visualeditor-dialog-extension-abandonedit": "Сез үзгәртүләрегезне гамәлгә кертмичә бу әңгәмәне ябарга телисезме?", + "visualeditor-dialog-media-alttext-checkbox": "Башлыкны альтернатив текст итеп куллан", "visualeditor-dialog-media-alttext-section": "Альтернатив текст", + "visualeditor-dialog-media-alttext-section-help": "Монда текстлы махсус тасвирлама урнаштырырга була. Элементның визуаль күрсәтелеше эшләмәсә, шул текст кулланылачак. Тасвирлама элементның эшләү максатын һәм аның эчендәге мәгълүматны ачыкларга тиеш. Сукыр кулланучылар һәм экраннан уку программа тәэминатын яки текстлы браузер кулланучылар шул текстлы тасвирламага нигезләнеп, элементны куллана алачак.", "visualeditor-dialog-media-change-image": "Сурәтне алмаштыру", "visualeditor-dialog-media-choose-image": "Бу сурәтне куллану", "visualeditor-dialog-media-content-description-link": "(тасвир бите)", "visualeditor-dialog-media-content-filename": "Файл исеме", "visualeditor-dialog-media-content-section": "Язма", + "visualeditor-dialog-media-content-section-help": "Элемент янында хасил булучы ярдәмче язма. Элементның күрсәтелгән контекст эчендә актуальлеген кыскача, ләкин бик ачык итеп аңлата.", "visualeditor-dialog-media-goback": "Кирегә", "visualeditor-dialog-media-info-artist": "Төяде: $1", "visualeditor-dialog-media-info-audiofile": "Аудиофайл", @@ -42,7 +68,10 @@ "visualeditor-dialog-media-info-uploaded": "Төялде: $1", "visualeditor-dialog-media-page-advanced": "Өстәмә", "visualeditor-dialog-media-page-general": "Гомуми", + "visualeditor-dialog-media-position-checkbox": "Бу элементны текст белән чолгап ал", + "visualeditor-dialog-media-position-checkbox-help": "Бу медиа-элемент гадәттә текст белән чорнап алынган (floating) итеп күрсәтелә. Сез аны текст белән бер юлда (inline) күрсәтелә торган итеп ясый аласыз. Ләкин моны сирәк кенә эшләргә ярый, чөнки бу шакмакны сүндерсәгез, текст белән чорнап алу туктатылачак.", "visualeditor-dialog-media-position-section": "Урнашу", + "visualeditor-dialog-media-position-section-help": "Сез бу медиа-элементның биттәге урынын билгели аласыз. Кайвакыт сурәтләр озын сызыкка битнең як кырыена туплана. Бу медиа-элемент бу сызыкны бүлә.", "visualeditor-dialog-media-save": "Саклау", "visualeditor-dialog-media-search-tab-search": "Эзләү", "visualeditor-dialog-media-search-tab-upload": "Төяү", @@ -57,14 +86,17 @@ "visualeditor-dialog-media-upload": "Төяү", "visualeditor-dialog-meta-advancedsettings-label": "Өстәмә көйләнмәләр", "visualeditor-dialog-meta-advancedsettings-section": "Өстәмә көйләнмәләр", + "visualeditor-dialog-meta-categories-addcategory-label": "Бу биткә төркем өстә", "visualeditor-dialog-meta-categories-category": "Төркем", "visualeditor-dialog-meta-categories-data-label": "Төркемнәр", "visualeditor-dialog-meta-categories-defaultsort-label": "Бу битне түбәндәгечә сортлаштыру", + "visualeditor-dialog-meta-categories-hidden": "Бу төркем ниндидер биткә өстәлсә, ул анда күрсәтелми.", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Яшерен төркемнәр", "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Туры килүче төркемнәр", "visualeditor-dialog-meta-categories-input-movecategorylabel": "Бу төркемне монда күчерү", "visualeditor-dialog-meta-categories-input-newcategorylabel": "Яңа төркем", "visualeditor-dialog-meta-categories-input-placeholder": "Төркем өстәү", + "visualeditor-dialog-meta-categories-missing": "Бу төркем өчен тасвирлама бите юк.", "visualeditor-dialog-meta-categories-options": "Көйләнмәләр", "visualeditor-dialog-meta-categories-section": "Төркемнәр", "visualeditor-dialog-meta-categories-sortkey-label": "Бу битне исем буенчә сортлаштыру", @@ -75,31 +107,77 @@ "visualeditor-dialog-meta-languages-readonlynote": "Бу башка телләрдә бу бит белән бәйле битләр исемлеге; хәзерге вакытта аны чыганак код яки викимәгълүмат режимында гына үзгәртеп була.", "visualeditor-dialog-meta-languages-section": "Телләр", "visualeditor-dialog-meta-settings-displaytitle": "Күренүчән башисем", + "visualeditor-dialog-meta-settings-displaytitle-help": "Битнең башлыгын мәҗбүри режимда үзгәрт", "visualeditor-dialog-meta-settings-hiddencat-label": "Яшерен төркемнәр", "visualeditor-dialog-meta-settings-index-default": "Гадәттәге", "visualeditor-dialog-meta-settings-index-disable": "Юк", "visualeditor-dialog-meta-settings-index-force": "Әйе", + "visualeditor-dialog-meta-settings-index-label": "Эзләү системаларына бу битне индексларга рөхсәт бир", "visualeditor-dialog-meta-settings-label": "Битнең көйләнмәләре", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Гадәттәге", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Юк", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Әйе", + "visualeditor-dialog-meta-settings-newsectioneditlink-label": "Яңа бүлек өстәү өчен бу биттә салынма күрсәт", + "visualeditor-dialog-meta-settings-nocontentconvert-label": "Контентны төрле телләр арасында конвертламагыз.", "visualeditor-dialog-meta-settings-nogallery-label": "Җыелманы сүндерү", + "visualeditor-dialog-meta-settings-notitleconvert-label": "Битнең башлыгын тел вариантлары арасында конвертламагыз", + "visualeditor-dialog-meta-settings-redirect-label": "Бу битне башка биткә юнәлт:", + "visualeditor-dialog-meta-settings-redirect-placeholder": "Юнәлтү нинди биткә илтә", "visualeditor-dialog-meta-settings-section": "Битнең көйләнмәләре", "visualeditor-dialog-meta-settings-toc-default": "Кирәк булганда", "visualeditor-dialog-meta-settings-toc-disable": "Һичкайчан", "visualeditor-dialog-meta-settings-toc-force": "Һәрвакыт", + "visualeditor-dialog-meta-settings-toc-label": "Эчтәлекне күрсәт", + "visualeditor-dialog-meta-templatesused-noresults": "Калыплар табылмады.", "visualeditor-dialog-meta-title": "Көйләнмәләр", "visualeditor-dialog-table-collapsed": "Баштан ук ябык", "visualeditor-dialog-table-collapsible": "Ябылучан", "visualeditor-dialog-table-sortable": "Аерып", "visualeditor-dialog-table-wikitable": "Стильләр кулланып (wikitable)", "visualeditor-dialog-template-title": "Калып", - "visualeditor-dialog-transclusion-add-template": "Калып өстәргә", + "visualeditor-dialog-transclusion-action-save": "Сакла", + "visualeditor-dialog-transclusion-template-title-nonexistent": "Бу калып юк.", + "visualeditor-dialog-transclusion-template-widget-aria": "Калыпны сайлау өчен буш урын төймәсенә басыгыз", + "visualeditor-dialog-transclusion-add-wikitext": "Вики-текст өстә", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "\"$2\" параметрын ике тапкыр өстәп булмый", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "\"$2\" кулланырга мөмкин була башлады. Кырыйдагы панельдә параметрларны карагыз.", + "visualeditor-dialog-transclusion-add-param-placeholder": "Параметр исеме", + "visualeditor-dialog-transclusion-add-param-save": "Өстә", + "visualeditor-dialog-transclusion-add-template": "Калып өстә", + "visualeditor-dialog-transclusion-add-template-button": "Калып өстә", + "visualeditor-dialog-transclusion-add-template-save": "Өстә", + "visualeditor-dialog-transclusion-add-undocumented-param": "Документлаштырылмаган параметр өстә", "visualeditor-dialog-transclusion-collapse-options": "Параметрларны яшерү", + "visualeditor-dialog-transclusion-confirmation-discard": "Төзәтмәләрне кире кагу", + "visualeditor-dialog-transclusion-confirmation-reject": "Үзгәртүне дәвам ит", + "visualeditor-dialog-transclusion-contextitem-description": "Нәрсәдән генерацияләнгән: $1", + "visualeditor-dialog-transclusion-contextitem-loading": "Төяү бара…", + "visualeditor-dialog-transclusion-expand-options": "Параметрларны күрсәт", + "visualeditor-dialog-transclusion-filter-hide-unused": "Кулланылмаганнарны яшерт", + "visualeditor-dialog-transclusion-filter-no-match": "Тәңгәл килгәне табылмады", + "visualeditor-dialog-transclusion-filter-placeholder": "Кырны тап", + "visualeditor-dialog-transclusion-filter-show-all": "Барысын да күрсәт", + "visualeditor-dialog-transclusion-filter-title": "$1 өчен параметр эзләү", + "visualeditor-dialog-transclusion-help-title": "Калыпларны редакторлау мөмкинлеге", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates Калыпларны редакторларга булышыгыз]", + "visualeditor-dialog-transclusion-deprecated-parameter": "Искергән кыр", + "visualeditor-dialog-transclusion-deprecated-parameter-description": "Искергән кыр. $1", "visualeditor-dialog-transclusion-loading": "Төяү бара…", + "visualeditor-dialog-transclusion-multipart-message": "Әлеге вакытта сез калыпны һәм [//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content бәйле контентның] (викитекст һәм/яки өстәмә калыплар) бер яки берничә өлешен редакторлыйсыз.", "visualeditor-dialog-transclusion-param-default": "Гадәттәге: $1", + "visualeditor-dialog-transclusion-param-example-long": "Мисал: $1", + "visualeditor-dialog-transclusion-param-selection-aria-label": "$1 эчендәге параметрлар", + "visualeditor-dialog-transclusion-param-undocumented": "(документлаштырылмаган параметр)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "Калыпны эзлә", + "visualeditor-dialog-transclusion-required-parameter": "Бу кырны тутырырга кирәк", + "visualeditor-dialog-transclusion-required-parameter-description": "Бу кырны тутырырга кирәк", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "Артка", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "Барыбер дәвам итү", + "visualeditor-dialog-transclusion-title-insert-template": "Калыпны кертү", + "visualeditor-dialog-transclusion-title-edit-known-template": "Үзгәртү: $1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "Калыпның контенты", + "visualeditor-dialog-transclusion-template-search": "Калыпны эзләү", + "visualeditor-dialog-transclusion-wikitext": "Вики-текст", "visualeditor-dialogbutton-media-tooltip": "Сурәтләр һәм медиа", "visualeditor-dialogbutton-template-tooltip": "Калып", "visualeditor-editconflict": "Сезнең үзгәртүләрне саклый алмадык, чөнки мөхәррирләү конфликты килеп чыкты. {{GENDER:|Сез}} низагны кулдан гына чишергә телисезме?", @@ -110,6 +188,8 @@ "visualeditor-editnotices-tooltip": "Үзгәртү белдерүләре", "visualeditor-editsummary": "Кертелгән үзгәрешләрне тасвирлагыз", "visualeditor-educationpopup-dismiss": "Ок, аңлашылды", + "visualeditor-expandable-less": "Әзрәк", + "visualeditor-expandable-more": "Күбрәк", "visualeditor-feedback-defaultmessage": "URL-адрес: $1", "visualeditor-formatdropdown-format-mw-heading1": "Битнең исеме", "visualeditor-formatdropdown-format-mw-heading2": "Бүлек башы", @@ -117,13 +197,20 @@ "visualeditor-formatdropdown-format-mw-heading4": "Өстәмә бүлек башы 2", "visualeditor-formatdropdown-format-mw-heading5": "Өстәмә бүлек башы 3", "visualeditor-formatdropdown-format-mw-heading6": "Өстәмә бүлек башы 4", + "visualeditor-generating-wikitext-progress": "Вики-текстны генерацияләү", "visualeditor-languages-tool": "Телләр", "visualeditor-linkinspector-button-link-external": "Тышкы веб-сәхифә", "visualeditor-linkinspector-button-link-internal": "Битне эзләү", + "visualeditor-linkinspector-convert-link-isbn": "ISBN сылтамасына әверелдер", + "visualeditor-linkinspector-convert-link-pmid": "PMID сылтамасына әверелдер", + "visualeditor-linkinspector-convert-link-rfc": "RFC сылтамасына әверелдер", "visualeditor-linkinspector-educationpopup-text": "Башка мәкаләләргә һәм әһәмиятле сүзләр өчен wiki-сылтамалар куегыз. Бу укучылар өчен контекстның мәгънәнесен тизрәк аңларга ярдәм итәчәк.", "visualeditor-linkinspector-educationpopup-title": "Сылтамалар", + "visualeditor-linkinspector-illegal-title": "Битнең башлыгы андый була алмый", + "visualeditor-linkinspector-invalid-external": "Тулысынча URL адресын кертегез, мәсәлән, https://example.org", "visualeditor-linknodeinspector-add-label": "Имза кую", "visualeditor-linknodeinspector-title": "Гади сылтама", + "visualeditor-magiclinknodeinspector-convert-link": "Гади сылтамага әверелдер", "visualeditor-magiclinknodeinspector-title-isbn": "ISBN сылтама", "visualeditor-magiclinknodeinspector-title-pmid": "PMID сылтама", "visualeditor-magiclinknodeinspector-title-rfc": "RFC сылтама", @@ -133,12 +220,14 @@ "visualeditor-meta-tool": "Көйләнмәләр", "visualeditor-mweditmode-tooltip": "Мөхәррирне алмаштыру", "visualeditor-mweditmodesource-progress": "Вики-текстны үзгәртүгә күчү…", - "visualeditor-mweditmodesource-tool-current": "Вики-текстны мөхәррирләү", - "visualeditor-mweditmodeve-popup-body": "Шушы тамгага басып, сез теләсә кайсы вакытта, кире визуаль мөхәррирләүгә кайта аласыз.", + "visualeditor-mweditmodesource-tool-current": "Вики-текстны үзгәртү", + "visualeditor-mweditmodesource-tool-unavailable": "Вики-текст редакторы монда эшләми", + "visualeditor-mweditmodeve-popup-body": "Шушы тамгага басып, сез теләсә кайсы вакытта күрсәтмәле үзгәртүгә кире кайта аласыз.", "visualeditor-mweditmodeve-popup-title": "Сез чыганак кодны мөхәррирләү режимына күчтегез", "visualeditor-mweditmodeve-progress": "Күрсәтмә үзгәртүгә күчү…", - "visualeditor-mweditmodeve-showagain": "Бу хәбәрне бүтән күрсәтелмесен", - "visualeditor-mweditmodeve-tool-current": "Күрсәтмә үзгәртү", + "visualeditor-mweditmodeve-showagain": "Бу хәбәрне бүтән күрсәтмә", + "visualeditor-mweditmodeve-tool-current": "Күрсәтмәле үзгәртү", + "visualeditor-mweditmodeve-tool-unavailable": "Визуаль редактор монда эшләми", "visualeditor-mweditmodewt-popup-body": "Шушы тамгага басып, сез теләсә кайсы вакытта, кире чыганак текстны мөхәррирләүгә кайта аласыз.", "visualeditor-mweditmodewt-popup-title": "Сез күрсәтмә үзгәртүгә күчтегез", "visualeditor-mwgallerycontext-description": "$1 {{PLURAL:$1|сурәт}}", @@ -146,6 +235,8 @@ "visualeditor-mwgallerydialog-card-images": "Рәсемнәр", "visualeditor-mwgallerydialog-card-options": "Көйләнмәләр", "visualeditor-mwgallerydialog-classes-field-label": "CSS класслары", + "visualeditor-mwgallerydialog-classes-input-placeholder": "Класс исемнәре, буш урын тамгалары белән аерымлана", + "visualeditor-mwgallerydialog-empty-gallery-message": "Галерея буш", "visualeditor-mwgallerydialog-heights-field-label": "Сурәт биеклеге", "visualeditor-mwgallerydialog-heights-input-placeholder": "Гадәттәге биеклек: $1 px", "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "Гадәти чикләрсез", @@ -160,14 +251,17 @@ "visualeditor-mwgallerydialog-search-button-label": "Яңа сурәтне өстәү", "visualeditor-mwgallerydialog-show-filename-field-label": "Файл исемнәрен күрсәтү", "visualeditor-mwgallerydialog-styles-field-label": "CSS стиле", + "visualeditor-mwgallerydialog-styles-input-placeholder": "CSS стильләре, нокталы өтер белән аерымланган", "visualeditor-mwgallerydialog-title": "Җыелма", "visualeditor-mwgallerydialog-widths-field-label": "Сурәт киңлеге", "visualeditor-mwgallerydialog-widths-input-placeholder": "Билгеләнгән киңлек: $1 px", + "visualeditor-mwpredialog-convert": "Текстның күренешен көйлә", "visualeditor-mwsignature-tool": "Имзагыз", "visualeditor-preference-tabs": "Үзгәртү режимы:", "visualeditor-preference-tabs-remember-last": "Соңгы мөхәрриремне хәтерләү", "visualeditor-rebase-client-export": "Чыгару", - "visualeditor-rebase-client-import": "Кертү", + "visualeditor-rebase-client-export-start": "Экспортлау", + "visualeditor-rebase-client-import": "Импортла", "visualeditor-rebase-client-import-name": "Битнең исеме", "visualeditor-redirect-description": "$1 битенә юнәлтү", "visualeditor-savedialog-identify-anon": "Сез бу битне аноним кулланучы буларак сакларга телисезме? Сезнең IP адресы бу битнең үзгәртүләр тарихында сакланып калачак.", @@ -176,7 +270,7 @@ "visualeditor-savedialog-label-publish-short-start": "Саклау…", "visualeditor-savedialog-label-resolve-conflict": "Конфликтны чишү", "visualeditor-savedialog-label-resume-editing": "Үзгәртүне дәвам итү", - "visualeditor-savedialog-label-review": "Кертелгән үзгәрешләрегезне тикшерү", + "visualeditor-savedialog-label-review": "Кертелгән үзгәртүләрегезне тикшерү", "visualeditor-savedialog-label-review-good": "Саклау формасына кайту", "visualeditor-savedialog-label-save-short": "Саклау", "visualeditor-savedialog-label-save-short-start": "Саклау...", @@ -185,8 +279,8 @@ "visualeditor-savedialog-review-wikitext": "Вики-текст", "visualeditor-savedialog-title-conflict": "Низаг", "visualeditor-savedialog-title-preview": "Үзгәрешләрегезне алдан карагыз", - "visualeditor-savedialog-title-review": "Үзгәрешләрегезне тикшерегез", - "visualeditor-savedialog-title-save": "Үзгәрешләрегезне саклагыз", + "visualeditor-savedialog-title-review": "Үзгәртүләрегезне тикшерегез", + "visualeditor-savedialog-title-save": "Үзгәртүләрегезне саклагыз", "visualeditor-section-body-placeholder": "Яңа бүлек", "visualeditor-section-title-placeholder": "Тема", "visualeditor-settings-tool": "Бит көйләнмәләре", diff --git a/i18n/ve-mw/tum.json b/i18n/ve-mw/tum.json index eeb80f9ce8..7504bd747c 100644 --- a/i18n/ve-mw/tum.json +++ b/i18n/ve-mw/tum.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Tumbuka Arch" ] }, diff --git a/i18n/ve-mw/tw.json b/i18n/ve-mw/tw.json index 12d131db78..e1dddee631 100644 --- a/i18n/ve-mw/tw.json +++ b/i18n/ve-mw/tw.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Celestinesucess", "DaSupremo", "Daniella Damptey", @@ -27,7 +26,6 @@ "visualeditor-autosave-recovered-text": "Wonsa atumi aka ɛnsesaɛ a w'anfa ansie no.", "visualeditor-autosave-recovered-title": "Yɛnsa aka nsesaeɛ no", "visualeditor-backbutton-tooltip": "Kɔ akyire", - "visualeditor-ca-createsource": "Create source", "visualeditor-ca-editsource": "Edit source", "visualeditor-ca-editsource-section": "edit source", "visualeditor-categories-tool": "Nkyekyemu", diff --git a/i18n/ve-mw/uk.json b/i18n/ve-mw/uk.json index 9ecbf85d4c..ea19b41076 100644 --- a/i18n/ve-mw/uk.json +++ b/i18n/ve-mw/uk.json @@ -83,11 +83,9 @@ "visualeditor-dialog-media-info-artist": "Завантажено: $1", "visualeditor-dialog-media-info-audiofile": "Аудіофайл", "visualeditor-dialog-media-info-created": "Створено: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Автор: $1", "visualeditor-dialog-media-info-moreinfo": "Додаткова інформація", "visualeditor-dialog-media-info-readmore": "Читати далі", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Завантажено: $1", "visualeditor-dialog-media-page-advanced": "Додатково", "visualeditor-dialog-media-page-general": "Загальне", @@ -270,6 +268,7 @@ "visualeditor-includes-includeonly-description": "Коли вміст цієї сторінки використовується на іншій сторінці, тут буде включено такий додатковий вміст:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion Докладніше про часткове включення]", "visualeditor-languages-tool": "Мови", + "visualeditor-linkcontext-uneditable": "Вибачте, це посилання наразі можна редагувати лише у режимі вихідного тексту.", "visualeditor-linkinspector-button-link-external": "Зовнішній сайт", "visualeditor-linkinspector-button-link-internal": "Пошук внутрішніх сторінок", "visualeditor-linkinspector-convert-link-isbn": "Перетворити в ISBN-посилання", @@ -374,7 +373,7 @@ "visualeditor-special-characters-group-other": "Часто використовуване", "visualeditor-templatesused-tool": "Використані шаблони", "visualeditor-title-error": "Недійсна назва.", - "visualeditor-toload": "Зараз завантажиться редактор. Якщо через кілька секунд Ви все ще бачитимете це повідомлення, будь ласка, [$1 перезавантажте сторінку].", + "visualeditor-toload": "Зараз завантажиться редактор. Якщо через кілька секунд ви все ще бачитимете це повідомлення, будь ласка, [$1 оновіть сторінку].", "visualeditor-tooltip-non-breaking-space": "Нерозривний пробіл", "visualeditor-version-label": "Версія", "visualeditor-wikitext-progress": "Перетворення вікі-тексту", diff --git a/i18n/ve-mw/ur.json b/i18n/ve-mw/ur.json index 0088f2da0c..2075e65ba5 100644 --- a/i18n/ve-mw/ur.json +++ b/i18n/ve-mw/ur.json @@ -2,6 +2,7 @@ "@metadata": { "authors": [ "Abdulq", + "BukhariSaeed", "Hmfs.ind", "Muhammad Shuaib", "Noor2020", @@ -13,9 +14,14 @@ ] }, "collabpad-doctitle": "مشترکہ پیڈ: $1", + "collabpad-import-subtitle": "$1 سے درآمد شدہ", "collabpad": "مشترکہ پیڈ", "tooltip-ca-ve-edit": "صفحہ میں ترمیم کریں", + "tooltip-ca-ve-edit-local": "مقامی وضاحت کے صفحہ میں ترمیم کیجیے", + "tooltip-ca-ve-create": "اس صفحہ کو تخلیق کیجیے", + "tooltip-ca-ve-create-local": "مقامی وضاحت کا صفحہ تخلیق کریں", "tooltip-ca-editsource": "اس صفحے کے سورس کوڈ میں ترمیم کریں", + "tooltip-ca-editsource-local": "مقامی وضاحت والے صفحہ کے ماخذ میں ترمیم کریں", "tooltip-ca-createsource": "اس صفحے کا سورس کوڈ بنائیں", "visualeditor-advancedsettings-tool": "پیشرفتہ ترتیبات", "visualeditor-autosave-modified-prompt-reject": "نئی ترمیم شروع کریں", @@ -38,7 +44,7 @@ "visualeditor-dialog-media-info-artist": "$1 نے اپلوڈ کی", "visualeditor-dialog-media-info-audiofile": "صوتی فائل", "visualeditor-dialog-media-info-created": "تخلیق بذریعہ: $1", - "visualeditor-dialog-media-info-meta-artist": "فن کار: $1", + "visualeditor-dialog-media-info-meta-artist": "مصنف: $1", "visualeditor-dialog-media-info-moreinfo": "مزید معلومات", "visualeditor-dialog-media-info-readmore": "مزید پڑھیں", "visualeditor-dialog-media-info-uploaded": "اپلوڈ بتاریخ: $1", @@ -99,6 +105,7 @@ "visualeditor-dialog-transclusion-template-title-nonexistent": "یہ سانچہ موجود نہیں ہے۔", "visualeditor-dialog-transclusion-template-widget-aria": "سانچہ منتخب کرنے کے لیے اسپیس دبائیں۔", "visualeditor-dialog-transclusion-add-wikitext": "ویکی متن شامل کریں", + "visualeditor-dialog-transclusion-add-param-placeholder": "پیرامیٹر کا نام", "visualeditor-dialog-transclusion-add-param-save": "شامل کریں", "visualeditor-dialog-transclusion-add-template": "سانچہ رکھیں", "visualeditor-dialog-transclusion-add-template-button": "سانچہ رکھیں", @@ -106,13 +113,17 @@ "visualeditor-dialog-transclusion-collapse-options": "اختیارات چھپائیں", "visualeditor-dialog-transclusion-confirmation-discard": "ترامیم رد کریں", "visualeditor-dialog-transclusion-confirmation-reject": "ترمیم جاری رکھیں", + "visualeditor-dialog-transclusion-contextitem-description": "ماخوذ از: $1", "visualeditor-dialog-transclusion-contextitem-loading": "لوڈ ہو رہا ہے۔۔۔", "visualeditor-dialog-transclusion-expand-options": "اختیارات دکھائیں", "visualeditor-dialog-transclusion-filter-show-all": "سب دکھائيں", "visualeditor-dialog-transclusion-loading": "لوڈ ہو رہا ہے...", + "visualeditor-dialog-transclusion-param-example-long": "مثال: $1", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "سانچہ تلاش کریں", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "پیچھے جائیں", "visualeditor-dialog-transclusion-title-insert-template": "سانچہ درج کریں", "visualeditor-dialog-transclusion-title-insert-known-template": "اندراج: $1", + "visualeditor-dialog-transclusion-template-search-help": "جس سانچے کو شامل کرنا ہو، اس کے لیے کسی موزوں کلیدی لفظ کے ذریعے تلاش کریں۔ وہ سانچے جن کے ساتھ وضاحتی معلومات شامل ہوں، بصری خانہ ترمیم میں بہتر کام کرتے ہیں۔", "visualeditor-dialog-transclusion-wikitext": "ویکی متن", "visualeditor-dialogbutton-media-tooltip": "میڈیا", "visualeditor-dialogbutton-template-tooltip": "سانچہ", diff --git a/i18n/ve-mw/vec.json b/i18n/ve-mw/vec.json index 5391784f1b..92f262e6e4 100644 --- a/i18n/ve-mw/vec.json +++ b/i18n/ve-mw/vec.json @@ -51,7 +51,6 @@ "visualeditor-dialog-media-info-meta-artist": "Artista: $1", "visualeditor-dialog-media-info-moreinfo": "Pì informasion", "visualeditor-dialog-media-info-readmore": "Lèxi de pi", - "visualeditor-dialog-media-info-separator": ".", "visualeditor-dialog-media-info-uploaded": "Cargà: $1", "visualeditor-dialog-media-page-advanced": "Inpostasion avansae", "visualeditor-dialog-media-page-general": "Inpostasion xenerałi", diff --git a/i18n/ve-mw/vi.json b/i18n/ve-mw/vi.json index 392cd3e063..5121826e55 100644 --- a/i18n/ve-mw/vi.json +++ b/i18n/ve-mw/vi.json @@ -18,6 +18,7 @@ "Nguyên Lê", "Nguyễn Mạnh An", "Nhatminh01", + "Nvdtn19", "P.T.Đ", "Pisceskaze", "Plantaest", @@ -46,7 +47,7 @@ "visualeditor-annotations-default-start": "Bắt đầu phạm vi chú thích", "visualeditor-annotations-extended-documentation": "Phạm vi chú thích này đã được mở rộng vì nội dung mà nó bao gồm không được lồng ghép tốt. Nên đảm bảo rằng nội dung được chú thích được lồng ghép tốt trước khi chỉnh sửa; nếu không, phạm vi chú thích có thể lớn hơn dự kiến.", "visualeditor-autosave-modified-prompt-accept": "Sửa tiếp", - "visualeditor-autosave-modified-prompt-message": "Trang này được sửa đổi sau khi bạn tải nó lần cuối cùng. Bạn có muốn tiếp tục sửa đổi phiên bản cũ hoặc sửa đổi phiên bản hiện tại từ đầu?", + "visualeditor-autosave-modified-prompt-message": "Trang này đã được sửa đổi sau khi bạn tải nó gần đây nhất. Bạn có muốn tiếp tục sửa đổi phiên bản cũ hoặc bắt đầu sửa đổi phiên bản hiện tại?", "visualeditor-autosave-modified-prompt-reject": "Sửa đổi từ đầu", "visualeditor-autosave-modified-prompt-title": "Sửa tiếp?", "visualeditor-autosave-not-recovered-text": "Không thể khôi phục các thay đổi chưa lưu của bạn.", @@ -83,11 +84,9 @@ "visualeditor-dialog-media-info-artist": "Tải lên bởi $1", "visualeditor-dialog-media-info-audiofile": "Tập tin âm thanh", "visualeditor-dialog-media-info-created": "Đã tạo: $1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "Tác giả: $1", "visualeditor-dialog-media-info-moreinfo": "Thêm thông tin", "visualeditor-dialog-media-info-readmore": "Đọc thêm", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Đã tải lên: $1", "visualeditor-dialog-media-page-advanced": "Nâng cao", "visualeditor-dialog-media-page-general": "Tổng quát", @@ -330,9 +329,9 @@ "visualeditor-mwpredialog-convert": "Cho phép định dạng hóa văn bản", "visualeditor-mwpredialog-title": "Văn bản thuần định dạng sẵn", "visualeditor-mwsignature-tool": "Chữ ký của bạn", - "visualeditor-preference-visualeditor": "Bật trình chỉnh sửa trực quan", - "visualeditor-preference-newwikitexteditor-enable": "Sử dụng chế độ văn bản wiki bên trong trình soạn thảo trực quan, thay vì một trình soạn thảo văn bản wiki khác", - "visualeditor-preference-newwikitexteditor-help": "Đôi khi, trình soạn thảo này còn được gọi là 'trình soạn thảo mã wiki 2017'.", + "visualeditor-preference-visualeditor": "Bật trình soạn thảo trực quan", + "visualeditor-preference-newwikitexteditor-enable": "Sử dụng chế độ văn bản wiki tích hợp trong trình soạn thảo trực quan, thay vì chuyển sang một trình soạn thảo wiki khác", + "visualeditor-preference-newwikitexteditor-help": "Đôi khi, trình soạn thảo này còn được gọi là “Trình soạn thảo mã wiki 2017”.", "visualeditor-preference-tabs": "Chế độ sửa đổi:", "visualeditor-preference-tabs-multi-tab": "Hiển thị cả hai thẻ sửa đổi", "visualeditor-preference-tabs-prefer-ve": "Luôn sử dụng trình soạn thảo trực quan nếu có thể", diff --git a/i18n/ve-mw/vmw.json b/i18n/ve-mw/vmw.json index a3dcc2f357..066dd63c38 100644 --- a/i18n/ve-mw/vmw.json +++ b/i18n/ve-mw/vmw.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Gildo Máquina", "Jacinto Jeque", "Ofa1975" diff --git a/i18n/ve-mw/war.json b/i18n/ve-mw/war.json index e692eefd47..deb9e446bd 100644 --- a/i18n/ve-mw/war.json +++ b/i18n/ve-mw/war.json @@ -2,28 +2,55 @@ "@metadata": { "authors": [ "Harvzsf", - "JinJian" + "JinJian", + "Narazeni" ] }, + "collabpad-doctitle": "CollabPad: $1", + "collabpad-import-subtitle": "Imported from $1", + "collabpad": "CollabPad", "tooltip-ca-ve-edit": "Igliwat ini nga pakli", + "tooltip-ca-ve-edit-local": "Edit the local description page", + "tooltip-ca-ve-create": "Create this page", + "tooltip-ca-ve-create-local": "Create the local description page", + "tooltip-ca-editsource": "Edit the source code of this page", + "tooltip-ca-editsource-local": "Edit the source code of the local description page", + "tooltip-ca-createsource": "Create the source code of this page", + "tooltip-ca-createsource-local": "Create the source code of the local description page", + "visualeditor-advancedsettings-tool": "Advanced settings", + "visualeditor-autosave-modified-prompt-accept": "Resume edit", + "visualeditor-autosave-modified-prompt-message": "This page was edited since you last loaded it. Would {{GENDER:|you}} like to resume {{GENDER:|your}} edit of the old version, or start a new edit of the latest version?", + "visualeditor-autosave-modified-prompt-reject": "Start a new edit", + "visualeditor-autosave-modified-prompt-title": "Resume {{GENDER:|your}} edit?", + "visualeditor-autosave-not-recovered-text": "Your unsaved changes could not be recovered.", + "visualeditor-autosave-not-recovered-title": "Change recovery failed", + "visualeditor-autosave-recovered-text": "Your unsaved changes have been automatically recovered.", + "visualeditor-autosave-recovered-title": "Changes recovered", "visualeditor-backbutton-tooltip": "Balik", "visualeditor-ca-createlocaldescriptionsource": "Gindugngan hin lokal nga description source", "visualeditor-ca-createsource": "Himua an titikangan", + "visualeditor-ca-editlocaldescriptionsource": "Edit local description source", "visualeditor-ca-editsource": "Igliwat an wikitext", "visualeditor-ca-editsource-section": "Igliwat an wikitext", + "visualeditor-ca-editsource-section-hint": "Edit section's source code: $1", + "visualeditor-categories-tool": "Categories", "visualeditor-desc": "Visual editor para han MediaWiki", "visualeditor-descriptionpagelink": "Project:VisualEditor", "visualeditor-dialog-media-alttext-section": "Alternatibo nga teksto", "visualeditor-dialog-media-change-image": "Igsaliwan an imahe", "visualeditor-dialog-media-choose-image": "Gamita ini nga imahe", "visualeditor-dialog-media-content-filename": "Ngaran han file", + "visualeditor-dialog-media-content-section": "Caption", + "visualeditor-dialog-media-content-section-help": "You can use this to show a label that shows next to the item for all readers. This is often used to explain why the item is relevant to the context in which it is shown. It should be succinct and informative.", "visualeditor-dialog-media-goback": "Balik", "visualeditor-dialog-media-info-artist": "Gin-upload ni $1", - "visualeditor-dialog-media-info-audiofile": "Audio file", + "visualeditor-dialog-media-info-audiofile": "აუდიო-ფაილი", "visualeditor-dialog-media-info-created": "Ginhimo: $1", - "visualeditor-dialog-media-info-meta-artist": "Artista: $1", + "visualeditor-dialog-media-info-ellipsis": "...", + "visualeditor-dialog-media-info-meta-artist": "Author: $1", "visualeditor-dialog-media-info-moreinfo": "Para han kadugangan nga impormasyon", "visualeditor-dialog-media-info-readmore": "Dugang nga barasahon", + "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "Gin-upload: $1", "visualeditor-dialog-media-page-advanced": "Abansado", "visualeditor-dialog-media-page-general": "Kasahiran", @@ -33,20 +60,46 @@ "visualeditor-dialog-media-search-tab-search": "Bilnga", "visualeditor-dialog-media-search-tab-upload": "Upload", "visualeditor-dialog-media-size-section": "Kadako han imahe", + "visualeditor-dialog-media-title": "Media settings", + "visualeditor-dialog-media-type-border": "Border", + "visualeditor-dialog-media-type-frame": "Frame", + "visualeditor-dialog-media-type-frameless": "Frameless", + "visualeditor-dialog-media-type-none": "Basic", + "visualeditor-dialog-media-type-section": "Image type", + "visualeditor-dialog-media-type-thumb": "Thumbnail", "visualeditor-dialog-media-upload": "Upload", + "visualeditor-dialog-meta-advancedsettings-label": "Advanced settings", + "visualeditor-dialog-meta-advancedsettings-section": "Advanced settings", + "visualeditor-dialog-meta-categories-addcategory-label": "Add a category to this page", "visualeditor-dialog-meta-categories-category": "Kaarangay", "visualeditor-dialog-meta-categories-data-label": "Mga kaarangay", + "visualeditor-dialog-meta-categories-defaultsort-label": "Sort this page by default as", + "visualeditor-dialog-meta-categories-hidden": "This category is set not to show on pages to which it is added.", + "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "Hidden categories", + "visualeditor-dialog-meta-categories-input-matchingcategorieslabel": "Matching categories", + "visualeditor-dialog-meta-categories-input-movecategorylabel": "Move this category here", "visualeditor-dialog-meta-categories-input-newcategorylabel": "Bag-o nga kaarangay", + "visualeditor-dialog-meta-categories-input-placeholder": "Add a category", + "visualeditor-dialog-meta-categories-missing": "This category lacks a description page.", "visualeditor-dialog-meta-categories-options": "Mga pagpipilian", + "visualeditor-dialog-meta-categories-section": "Categories", + "visualeditor-dialog-meta-categories-sortkey-label": "Sort this page as if it is called", "visualeditor-dialog-meta-languages-code-label": "Kodigo han yinaknan", "visualeditor-dialog-meta-languages-label": "Mga yinaknan", "visualeditor-dialog-meta-languages-link-label": "Nakasumpay nga pakli", "visualeditor-dialog-meta-languages-name-label": "Yinaknan", "visualeditor-dialog-meta-languages-section": "Mga yinaknan", + "visualeditor-dialog-meta-settings-displaytitle": "Display title", + "visualeditor-dialog-meta-settings-displaytitle-help": "You can override how this page's title is displayed by setting a different label to show instead.", + "visualeditor-dialog-meta-settings-hiddencat-label": "Hidden category", + "visualeditor-dialog-meta-settings-index-default": "Default", "visualeditor-dialog-meta-settings-index-disable": "Diri", "visualeditor-dialog-meta-settings-index-force": "Oo", + "visualeditor-dialog-meta-settings-label": "Page settings", + "visualeditor-dialog-meta-settings-newsectioneditlink-default": "Default", "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "Diri", "visualeditor-dialog-meta-settings-newsectioneditlink-force": "Oo", + "visualeditor-dialog-meta-settings-nogallery-label": "Disable gallery", "visualeditor-dialog-meta-settings-toc-default": "Kun kinahanglanon", "visualeditor-dialog-meta-settings-toc-disable": "Pirmi diri", "visualeditor-dialog-meta-settings-toc-force": "Pirmi", diff --git a/i18n/ve-mw/wls.json b/i18n/ve-mw/wls.json index 50d06cbf77..4d5db26899 100644 --- a/i18n/ve-mw/wls.json +++ b/i18n/ve-mw/wls.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Lea.Fakauvea", "Lea.fakauvea" ] diff --git a/i18n/ve-mw/wlx.json b/i18n/ve-mw/wlx.json index 95969183e3..6d184f96fd 100644 --- a/i18n/ve-mw/wlx.json +++ b/i18n/ve-mw/wlx.json @@ -6,7 +6,7 @@ }, "visualeditor-ca-createlocaldescriptionsource": "Paahi yiri maahibu jie", "visualeditor-ca-createsource": "Maale yijie", - "visualeditor-ca-editsource": "Maali seu yijie", + "visualeditor-ca-editsource": "Maalɩ sɛʋ yijie", "visualeditor-ca-editsource-section": "Maale eŋ yijie", "visualeditor-descriptionpagelink": "Project:Kaara Maala" } diff --git a/i18n/ve-mw/xon.json b/i18n/ve-mw/xon.json new file mode 100644 index 0000000000..54bc0e4cf5 --- /dev/null +++ b/i18n/ve-mw/xon.json @@ -0,0 +1,13 @@ +{ + "@metadata": { + "authors": [ + "Abdul Fatawu 352", + "Andani Inusah", + "Yakubu Hami" + ] + }, + "visualeditor-ca-createlocaldescriptionsource": "\"Taŋ yɛltɔ kɔni pam gbangmɔ ŋmɔ\"", + "visualeditor-ca-createsource": "Taŋi kpɛɛli dɛɛr", + "visualeditor-ca-editsource": "Taŋi kpɛɛli", + "visualeditor-ca-editsource-section": "Bɔri kɔntir”" +} diff --git a/i18n/ve-mw/xsy.json b/i18n/ve-mw/xsy.json index a191b3b326..1328aaa4ab 100644 --- a/i18n/ve-mw/xsy.json +++ b/i18n/ve-mw/xsy.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Lalotahes" ] }, diff --git a/i18n/ve-mw/yua.json b/i18n/ve-mw/yua.json index faaf4cdd15..28624feab8 100644 --- a/i18n/ve-mw/yua.json +++ b/i18n/ve-mw/yua.json @@ -1,8 +1,64 @@ { "@metadata": { "authors": [ - "Lorenzoitza" + "Azul25", + "Cohuoucan", + "Elsa Flores", + "Juanchuy0", + "Kaambalwiki", + "Kuxtal", + "Lorenzoitza", + "Miguelos1976", + "Tunichmay", + "ValentinaTec", + "VicenteCancheM", + "26agcp" ] }, - "visualeditor-ca-editsource-section": "k'ex le koodigo'" + "collabpad-doctitle": "CollabPad: $1", + "collabpad-import-subtitle": "Importado de $1", + "collabpad": "Plataforma u múul meyaj", + "tooltip-ca-ve-edit": "K'ex le waala'", + "tooltip-ca-ve-edit-local": "Editar la página de descripción local", + "tooltip-ca-ve-create": "beet a \"pagina\"", + "tooltip-ca-ve-create-local": "beet a\"pagina\"u tsoolil le kúuchila'", + "tooltip-ca-editsource": "je'el beet \"código fuente\"ti le\"pagina\"'", + "tooltip-ca-editsource-local": "je'el beet le \"codigo fuente\" ti' le \"pagina\" tu tsololil kuuchil", + "tooltip-ca-createsource": "beet u \"codigo fuente\"ti le\"pagina\"", + "tooltip-ca-createsource-local": "Béet u código fuente ti' u \"pagina\" kaambal u tsóolil le kúuchila'", + "visualeditor-advancedsettings-tool": "Tsolmeyaj tu bin u náachtal", + "visualeditor-annotations-default-description": "ti' le jumxóot' táan ju'un je'ela' ku béeytal a tsolts'íibtik a meyaj", + "visualeditor-annotations-default-end": "Xu'ul le tsolts'íib ti' le jun xóot' p'iis ets'a'ano.", + "visualeditor-annotations-default-start": "U káajbal le p'iis etsa'an o a'alano'", + "visualeditor-annotations-extended-documentation": "Le rango anotacióno'obo' ts'o'ok u nojochtal tuméen le ts'íibo'obo' ku taasiko' ma' bin ma'alob anidado'. Ku ya'ala'al ti' teeche' ka wi'il wa le contenidos ts'íibtano'ob tu beelil anidado táanil a ts'íibtik, wa ma'i je'el u páajta'al u ts'íibta'al' jump'éel rango asab nojoch ti' le ku tuukultalo'.", + "visualeditor-autosave-modified-prompt-accept": " je'el béet", + "visualeditor-autosave-modified-prompt-message": "le ju'una' k'e'ex u ts'o'ok u téen ka ta béetaj u kuuch a meyaj {{GENDER:|Teech}} u je'el {{GENDER:|teech}} je'el béet ti' le' úuchben versión, wa a káajsik jump´éel túumben edición ti' le ts'o'ok versióno'", + "visualeditor-autosave-modified-prompt-reject": "káas jump'éel túumben edición", + "visualeditor-autosave-modified-prompt-title": "tak a je'el béetik {{GENDER:a}} edición", + "visualeditor-autosave-not-recovered-text": "ma' pajchajal u ta'akajal le k'ex meyaj ta beetajo'.", + "visualeditor-autosave-not-recovered-title": "ma' béeychajak u ta'akal le k'eex meyajo'", + "visualeditor-autosave-recovered-text": "suunaj tu jum le k'eex meyaj ma tu ta'akubaje'", + "visualeditor-autosave-recovered-title": "le k'eexo'ts'ok u je'el k'aamal", + "visualeditor-backbutton-tooltip": "suut", + "visualeditor-ca-createlocaldescriptionsource": "A'al tu'ux u taal", + "visualeditor-ca-createsource": "A'al tu'ux u taal", + "visualeditor-ca-editlocaldescriptionsource": "je'el beet le coodigoi' u tsolil le kuuchilo'", + "visualeditor-ca-editsource": "K'ex le coodigóo", + "visualeditor-ca-editsource-section": "k'ex le koodigo'", + "visualeditor-ca-editsource-section-hint": "jeel beet u coodigoi' u poolil buuj:$1", + "visualeditor-categories-tool": "u tsolil múuch'ilo'ob", + "visualeditor-changedesc-mwcategory-sortkey-changed": "le u k'alil tsolilo' k'expaj ti $1 tak $2", + "visualeditor-changedesc-mwcategory-sortkey-set": "u k'aalil le tsolilo' ts'o'ok u ya'alal. $1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "le' u k'alil u ordenacioono' $1 ts'o'ok u cha'abal", + "visualeditor-changedesc-mwlanguagevariant": "k'expajal u marcado le t'aanlo'obo'", + "visualeditor-changedesc-mwredirect": "Le destino ti' le redirección k'e'expajil ti' $1 tak $2", + "visualeditor-changedesc-mwtransclusion": "Parámetros ti' plantilla k'exa'abo'ob", + "visualeditor-desc": "Editor visual uti'al MediaWiki", + "visualeditor-descriptionpagelink": "proyecto: ku ilajeditor", + "visualeditor-dialog-extension-abandonedit": "¿Yaan wáaj a k'áat a k'alik le diálogo xma' aplicar a k'eexo'ob?", + "visualeditor-dialog-media-alttext-checkbox": "Meyaj le titulo je'ex texto alternativo", + "visualeditor-dialog-media-alttext-section": "Uláak' bixil", + "visualeditor-dialog-media-alttext-section-help": "Je'el u páajtal a meyajtik le je'ela' uti'al a ts'íibtik jump'éel tsoolil analte'o' uti'al máako'ob ma' tu páajtal u yiliko'ob le ba'alo'. Le tsoolil k'a'ana'an u suficiente utia'al u leti'ob u na'atiko'ob le propósito yéetel le a'alajil t'aan ku ts'aik le artículo medios comunicación. Lela' jach k'a'anan uti'al le máaxo'ob ch'óopo'obo' yéetel uláak' máako'ob ku meyajtiko'ob software lector pantalla wa navegadores chéen textos.", + "visualeditor-dialog-media-change-image": "k'ex oochel", + "visualeditor-dialog-media-choose-image": "ch'a' le oochela'" } diff --git a/i18n/ve-mw/yue-hant.json b/i18n/ve-mw/yue-hant.json index da9e31821e..ac19ca2dfd 100644 --- a/i18n/ve-mw/yue-hant.json +++ b/i18n/ve-mw/yue-hant.json @@ -7,6 +7,7 @@ "H78c67c", "Hello903hello", "Jdforrester", + "JeffreyKim", "Ktchankt", "Moon0319", "Roy17", @@ -17,53 +18,90 @@ "捍粵者" ] }, + "collabpad-doctitle": "協作板:$1", + "collabpad-import-subtitle": "由$1起進口", + "collabpad": "協作板", "tooltip-ca-ve-edit": "用 VisualEditor 改呢版", + "tooltip-ca-ve-edit-local": "編輯本地描述版", + "tooltip-ca-ve-create": "建立呢個頁面", + "tooltip-ca-ve-create-local": "建立本地描述版", "tooltip-ca-editsource": "改呢版嘅代碼", + "tooltip-ca-editsource-local": "編輯本地描述版嘅源碼", "tooltip-ca-createsource": "整呢版嘅代碼出嚟", + "tooltip-ca-createsource-local": "建立本地描述版嘅源碼", "visualeditor-advancedsettings-tool": "進階設定", + "visualeditor-annotations-default-description": "呢個版嘅部分係註解範圍嘅一部分。", + "visualeditor-annotations-default-end": "註解範圍嘅結束", + "visualeditor-annotations-default-start": "註解範圍嘅開始", + "visualeditor-annotations-extended-documentation": "呢個註解範圍已經擴大咗,因為佢包含嘅內容嵌套得唔好。建議喺編輯之前確保註解內容嵌套得好;如果唔係,可能會加註解嘅範圍大過預期。", + "visualeditor-autosave-modified-prompt-accept": "繼續編輯", + "visualeditor-autosave-modified-prompt-message": "呢個頁面自從你上次載入之後已經編輯過。{{GENDER:|你}}想唔想繼續對舊版本嘅{{GENDER:|你嘅}}編輯,定係開始對最新版本嘅新編輯?", + "visualeditor-autosave-modified-prompt-reject": "開始新嘅編輯", + "visualeditor-autosave-modified-prompt-title": "繼續{{GENDER:|你嘅}}編輯?", + "visualeditor-autosave-not-recovered-text": "恢復唔到你未儲存嘅改動。", + "visualeditor-autosave-not-recovered-title": "改動復原失敗咗", + "visualeditor-autosave-recovered-text": "你未儲存嘅改動已經自動恢復返。", + "visualeditor-autosave-recovered-title": "啲改動已經恢復返晒", "visualeditor-backbutton-tooltip": "返去", "visualeditor-ca-createlocaldescriptionsource": "喺本站加檔案說明源碼", "visualeditor-ca-createsource": "加源碼", "visualeditor-ca-editlocaldescriptionsource": "改本站檔案說明源碼", "visualeditor-ca-editsource": "改源碼", "visualeditor-ca-editsource-section": "改源碼", + "visualeditor-ca-editsource-section-hint": "編輯部分嘅源碼:$1", "visualeditor-categories-tool": "類", + "visualeditor-changedesc-mwcategory-sortkey-changed": "排序鍵由$1改為$2", + "visualeditor-changedesc-mwcategory-sortkey-set": "排序鍵設定為$1", + "visualeditor-changedesc-mwcategory-sortkey-unset": "排序鍵由$1開始取消設定", + "visualeditor-changedesc-mwlanguagevariant": "語言變體標記已經改咗", + "visualeditor-changedesc-mwredirect": "跳轉目標由$1變咗去$2", + "visualeditor-changedesc-mwtransclusion": "模嘅參數改咗", "visualeditor-desc": "MediaWiki 嘅即見編輯器", "visualeditor-descriptionpagelink": "Project:VisualEditor", + "visualeditor-dialog-extension-abandonedit": "你真係要閂咗個對話框,唔套用你嘅改動?", + "visualeditor-dialog-media-alttext-checkbox": "用字幕做替代文字", "visualeditor-dialog-media-alttext-section": "替代文字", + "visualeditor-dialog-media-alttext-section-help": "你可以用呢個嚟為睇唔到嗰件嘢嘅人寫文字描述。描述應該足以令佢哋明白媒體項目所提供嘅目的同資訊。呢個對於盲人用戶同埋其他使用螢幕閱讀器軟件或者純文字瀏覽器嘅人嚟講係非常重要嘅。", "visualeditor-dialog-media-change-image": "換圖", "visualeditor-dialog-media-choose-image": "用呢幅圖", "visualeditor-dialog-media-content-description-link": "(描述頁)", "visualeditor-dialog-media-content-filename": "文件名", "visualeditor-dialog-media-content-section": "題", + "visualeditor-dialog-media-content-section-help": "你可以用呢個嚟顯示一個喺項目旁邊顯示嘅標籤,畀所有讀者睇。呢個通常用嚟解釋點解個項目同佢所顯示嘅上下文相關。 應該係簡潔同埋有資訊嘅。", "visualeditor-dialog-media-goback": "返去", "visualeditor-dialog-media-info-artist": "$1上載嘅檔案", "visualeditor-dialog-media-info-audiofile": "音頻文件", "visualeditor-dialog-media-info-created": "建立日期:$1", - "visualeditor-dialog-media-info-meta-artist": "藝術家名:$1", + "visualeditor-dialog-media-info-meta-artist": "作家名:$1", "visualeditor-dialog-media-info-moreinfo": "多啲資訊", "visualeditor-dialog-media-info-readmore": "睇多啲", "visualeditor-dialog-media-info-uploaded": "上載日期:$1", "visualeditor-dialog-media-page-advanced": "進階", "visualeditor-dialog-media-page-general": "一般", "visualeditor-dialog-media-position-checkbox": "圍住呢件嘢編排文字", + "visualeditor-dialog-media-position-checkbox-help": "你可以令呢個媒體項目同頁面嘅文字一齊顯示,而唔係浮動。你應該只係好少咁做,因為如果你取消剔選呢個方格,呢個操作會破壞文字嘅流程。", "visualeditor-dialog-media-position-section": "位置", + "visualeditor-dialog-media-position-section-help": "你可以設定呢個媒體項目喺頁面上面出現嘅位置。呢個有時會用嚟分解頁面一邊嘅一條長啲嘅相。", "visualeditor-dialog-media-save": "保存", "visualeditor-dialog-media-search-tab-search": "搵", "visualeditor-dialog-media-search-tab-upload": "上載", "visualeditor-dialog-media-size-section": "相大細", + "visualeditor-dialog-media-size-section-help": "你可以設定媒體項目喺頁面上面出現嘅大細,呢個幾乎應該係正常嘅大細,因為自訂大小會干擾讀者嘅頁面版面配置,令到頁面唔一致。", "visualeditor-dialog-media-title": "聲畫設定", "visualeditor-dialog-media-type-border": "邊", "visualeditor-dialog-media-type-frame": "框", "visualeditor-dialog-media-type-frameless": "冇框", "visualeditor-dialog-media-type-none": "基本", "visualeditor-dialog-media-type-section": "圖款", + "visualeditor-dialog-media-type-section-help": "你可以設定媒體項目喺頁面上面嘅顯示方式。 呢個應該係縮圖格式,喺幾乎所有情況下都可以同其他頁面一致。", "visualeditor-dialog-media-type-thumb": "縮圖", "visualeditor-dialog-media-upload": "上載", "visualeditor-dialog-meta-advancedsettings-label": "進階設定", "visualeditor-dialog-meta-advancedsettings-section": "進階設定", - "visualeditor-dialog-meta-categories-category": "分類", + "visualeditor-dialog-meta-categories-addcategory-label": "喺呢版加類", + "visualeditor-dialog-meta-categories-category": "類", "visualeditor-dialog-meta-categories-data-label": "類", + "visualeditor-dialog-meta-categories-defaultsort-help": "你可以設定唔同嘅索引嚟排序,嚟覆寫呢個頁面喺類別入面顯示嗰陣嘅排序方式。呢個通常用嚟令有關人哋嘅頁面按姓氏顯示,但係要先顯示佢哋嘅名。", "visualeditor-dialog-meta-categories-defaultsort-label": "呢版預設排成", "visualeditor-dialog-meta-categories-hidden": "讀者睇唔到呢個分類。", "visualeditor-dialog-meta-categories-input-hiddencategorieslabel": "隱藏類", @@ -82,58 +120,125 @@ "visualeditor-dialog-meta-languages-readonlynote": "呢個表包含咗連去爾版嘅所有其它話嘅版。呢個表暫時淨係可以喺源碼模式改,或者去維基數據改。", "visualeditor-dialog-meta-languages-section": "話", "visualeditor-dialog-meta-settings-displaytitle": "顯示標題", + "visualeditor-dialog-meta-settings-displaytitle-help": "你可以設定唔同嘅標籤嚟顯示,嚟覆寫呢個頁面標題嘅顯示方式。", + "visualeditor-dialog-meta-settings-hiddencat-help": "你可以防止呢個類別喺會員頁面嘅類別清單入面顯示,呢個方法對於編輯感興趣但唔係大部分讀者感興趣嘅類別好有用,例如需要插圖嘅頁面。", "visualeditor-dialog-meta-settings-hiddencat-label": "隱藏類", "visualeditor-dialog-meta-settings-index-default": "預設", - "visualeditor-dialog-meta-settings-index-disable": "唔好", - "visualeditor-dialog-meta-settings-index-force": "好", + "visualeditor-dialog-meta-settings-index-disable": "唔係", + "visualeditor-dialog-meta-settings-index-force": "係", "visualeditor-dialog-meta-settings-index-help": "你可以要求搜索引擎將呢版列入佢哋個結果,或者要佢哋唔好噉做。呢個選項唔會影響網站以內嘅搜尋功能。", "visualeditor-dialog-meta-settings-index-label": "搜尋器可以搵到呢版", "visualeditor-dialog-meta-settings-label": "版嘅設定", "visualeditor-dialog-meta-settings-newsectioneditlink-default": "預設", - "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "唔好", - "visualeditor-dialog-meta-settings-newsectioneditlink-force": "好", + "visualeditor-dialog-meta-settings-newsectioneditlink-disable": "唔係", + "visualeditor-dialog-meta-settings-newsectioneditlink-force": "係", + "visualeditor-dialog-meta-settings-newsectioneditlink-help": "你可以喺呢頁強制顯示除咗「$1」標籤之外嘅額外標籤,噉樣就可以輕鬆噉加入新嘅部分,或者如果唔係嘅話,就強制唔顯示。", "visualeditor-dialog-meta-settings-newsectioneditlink-label": "喺呢版加個書籤,撳落去可以開新段", + "visualeditor-dialog-meta-settings-nocontentconvert-help": "你可以防止呢個頁面嘅內容自動轉換成其他指令碼。", "visualeditor-dialog-meta-settings-nocontentconvert-label": "唔轉語言變體", + "visualeditor-dialog-meta-settings-noeditsection-help": "喺適當嘅情況下,你可以停止條編輯拎喺每個部分旁邊出現。", "visualeditor-dialog-meta-settings-noeditsection-label": "呢版嘅細標題側邊唔顯示「改」掣", + "visualeditor-dialog-meta-settings-nogallery-help": "如果喺呢個情況下唔適當,你可以阻止呢個類以圖庫形式顯示下屬檔案。", "visualeditor-dialog-meta-settings-nogallery-label": "停用圖集", + "visualeditor-dialog-meta-settings-notitleconvert-help": "你可以防止呢個頁面嘅標題自動轉換成其他指令碼。", "visualeditor-dialog-meta-settings-notitleconvert-label": "標題唔轉語言變體", + "visualeditor-dialog-meta-settings-redirect-help": "你可以將呢個頁面變成跳轉,呢個頁面會自動將讀者帶去呢個維基上面嘅另一個頁面。呢個對拼寫錯誤同埋其他名或者概念好有用。如果你噉樣做,讀者就唔會睇到呢個頁面嘅內容。", "visualeditor-dialog-meta-settings-redirect-label": "呢版跳轉去", "visualeditor-dialog-meta-settings-redirect-placeholder": "跳轉目標", + "visualeditor-dialog-meta-settings-redirect-statichelp": "你可以防止呢個跳轉喺佢跳轉去嘅頁面搬走嗰陣自動更新,喺非常罕見嘅情況下,呢個係需要嘅。", "visualeditor-dialog-meta-settings-redirect-staticlabel": "搬跳轉目標版嘅時候,唔好更新呢個跳轉", "visualeditor-dialog-meta-settings-section": "版嘅設定", "visualeditor-dialog-meta-settings-toc-default": "如有需要", "visualeditor-dialog-meta-settings-toc-disable": "一定唔顯示", "visualeditor-dialog-meta-settings-toc-force": "一定顯示", + "visualeditor-dialog-meta-settings-toc-help": "你可以強制列出頁面上每個標題嘅目錄喺少過四個標題嘅頁面上面顯示,或者強制佢完全唔出現。預設情況下,如果頁面有四個或以上嘅標題,就會顯示呢個功能。", "visualeditor-dialog-meta-settings-toc-label": "顯示目錄", "visualeditor-dialog-meta-templatesused-noresults": "搵唔到任何模。", "visualeditor-dialog-meta-title": "選項", + "visualeditor-dialog-table-collapsed": "最初摺埋咗", + "visualeditor-dialog-table-collapsible": "摺埋", "visualeditor-dialog-table-sortable": "篩選表", "visualeditor-dialog-table-wikitable": "格式化 (維基表)", "visualeditor-dialog-template-title": "模", + "visualeditor-dialog-transclusion-action-save": "儲存", + "visualeditor-dialog-transclusion-template-title-nonexistent": "呢個模唔存在。", + "visualeditor-dialog-transclusion-template-title-modifier": "當用嵌套語法或者修飾符編輯模嗰陣,模文件同埋[//www.mediawiki.org/wiki/Special:MyLanguage/Manual:Glossary#Parameter parameter]名(如果存在)係唔可用嘅,例如[//www.mediawiki.org/wiki/Special:MyLanguage/Help:Substitution subst]。", + "visualeditor-dialog-transclusion-template-widget-aria": "撳空格掣嚟揀個模。", + "visualeditor-dialog-transclusion-template-widget-aria-selected": "撳Ctrl + Del就可以刪模、佢嘅參數同埋佢哋嘅值。撳Ctrl + Shift + 箭咀就可以將模向上搬或者向下搬。", + "visualeditor-dialog-transclusion-template-widget-aria-selected-single": "撳Ctrl + Del就可以刪除範本、佢嘅參數同埋佢哋嘅值。", + "visualeditor-dialog-transclusion-add-wikitext": "加入維基文字", + "visualeditor-dialog-transclusion-add-param-error-alias": "「$1」已經加咗做「$2」。請睇下側欄入面嘅選項。\n呢個係因為用咗[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#aliases aliases]定係[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#label labels]。", + "visualeditor-dialog-transclusion-add-param-error-deprecated": "「$1」加唔到,因為個參數已經標記為[//www.mediawiki.org/wiki/Special:MyLanguage/Help:TemplateData#deprecated deprecated]。", + "visualeditor-dialog-transclusion-add-param-error-exists-selected": "加唔到參數「$2」兩次。", + "visualeditor-dialog-transclusion-add-param-error-exists-unselected": "參數「$2」已經可以用。請喺側欄度睇吓啲選項。", + "visualeditor-dialog-transclusion-add-param-error-forbidden-char": "$1係一個禁用嘅字元。請剷走佢嚟加入參數。", + "visualeditor-dialog-transclusion-add-param-help": "如果知道,請輸入[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Adding_undocumented_parameters undocumented parameter]個名。請注意,淨係得模已知嘅參數先會有影響。\n你可以喺[[$1|模嘅頁面]]搵到有關現有參數嘅資料。", + "visualeditor-dialog-transclusion-add-param-placeholder": "參數名", + "visualeditor-dialog-transclusion-add-param-save": "加", "visualeditor-dialog-transclusion-add-template": "加模", + "visualeditor-dialog-transclusion-add-template-button": "加模", + "visualeditor-dialog-transclusion-add-template-save": "加", + "visualeditor-dialog-transclusion-add-undocumented-param": "加入未記錄嘅參數", + "visualeditor-dialog-transclusion-back-confirmation-prompt": "返去搜尋?你嘅變更將會丟失,而且呢個係復原唔到嘅。", + "visualeditor-dialog-transclusion-close-confirmation-prompt": "閂咗個範本編輯器?你嘅變更將會丟失,而且呢個係復原唔到嘅。", "visualeditor-dialog-transclusion-collapse-options": "收埋啲選項", + "visualeditor-dialog-transclusion-confirmation-discard": "棄置編輯", + "visualeditor-dialog-transclusion-confirmation-reject": "繼續編輯", "visualeditor-dialog-transclusion-contextitem-description": "產生自:$1", + "visualeditor-dialog-transclusion-contextitem-loading": "載入緊…", "visualeditor-dialog-transclusion-expand-options": "睇選項", + "visualeditor-dialog-transclusion-filter-hide-unused": "收埋未用過", + "visualeditor-dialog-transclusion-filter-no-match": "搵唔到匹配嘅嘢", + "visualeditor-dialog-transclusion-filter-placeholder": "搵欄位", + "visualeditor-dialog-transclusion-filter-show-all": "顯示全部", + "visualeditor-dialog-transclusion-filter-title": "參數搜尋$1", + "visualeditor-dialog-transclusion-help-title": "改模支援", + "visualeditor-dialog-transclusion-help-message": "範本會為內容提供格式。呢個編輯器會喺左邊顯示範本提供咗啲咩選項,然後可以喺右邊嘅呢啲選項加入值。", + "visualeditor-dialog-transclusion-help-page-help": "[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_templates 編輯範本嘅幫助]", + "visualeditor-dialog-transclusion-help-page-shortcuts": "[//www.mediawiki.org/wiki/Special:MyLanguage/VisualEditor/Portal/Keyboard_shortcuts#Template_editor_dialog_shortcuts_and_keyboard_interactions 鍵盤捷徑]", "visualeditor-dialog-transclusion-deprecated-parameter": "舊參數", "visualeditor-dialog-transclusion-deprecated-parameter-description": "呢個參數已經唔建議用。$1", "visualeditor-dialog-transclusion-loading": "載入緊…", + "visualeditor-dialog-transclusion-multipart-message": "你而家編輯緊一個範本同埋一個或者多個[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Editing_multi-part_template_content 連接咗嘅內容](維基文字同/或者額外嘅範本)。", + "visualeditor-dialog-transclusion-no-template-data-description": "呢個模板唔見咗[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Template_parameters TemplateData],而佢嘅參數已經係[//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide#Autogenerated_parameters 自動生成]。結果個範本同埋佢嘅參數缺乏描述。[[$1|template's page]]上面可能有額外嘅資料。", "visualeditor-dialog-transclusion-no-template-description": "《$1》模仲未有解說,不過個模嘅[[$2|模頁]]上面可能有啲有用嘅資料。", + "visualeditor-dialog-transclusion-no-template-parameters": "呢個範本冇任何文件化嘅參數,而且可能係喺冇參數嘅情況下使用。", "visualeditor-dialog-transclusion-param-default": "預設:$1", + "visualeditor-dialog-transclusion-param-example-long": "例子:$1", + "visualeditor-dialog-transclusion-param-selection-aria-description": "撳空格就可以加入或者剷走參數。撳Enter就可以加入參數,然後即刻編輯佢嘅數值。當已經揀咗個參數嗰陣,撳Enter嚟編輯個數值。", + "visualeditor-dialog-transclusion-param-selection-aria-label": "以$1計嘅參數", + "visualeditor-dialog-transclusion-param-undocumented": "(未記錄參數)", + "visualeditor-dialog-transclusion-placeholder-input-placeholder": "搵模", "visualeditor-dialog-transclusion-required-parameter": "必填參數", "visualeditor-dialog-transclusion-required-parameter-description": "呢個參數一定要填。", "visualeditor-dialog-transclusion-required-parameter-dialog-cancel": "返去", "visualeditor-dialog-transclusion-required-parameter-dialog-ok": "照去", "visualeditor-dialog-transclusion-required-parameter-dialog-title": "漏咗$1個必填嘅參數", - "visualeditor-dialog-transclusion-required-parameter-is-blank": "肯定唔填$1個參數就繼續?", - "visualeditor-dialogbutton-media-tooltip": "聲畫", + "visualeditor-dialog-transclusion-required-parameter-is-blank": "你肯定你想繼續而唔使填$1{{PLURAL:$2|field|欄位}}?", + "visualeditor-dialog-transclusion-see-template": "範本係由用戶自行生成,可能缺乏完整嘅描述。呢個[[$2|模板頁面]]可能有額外嘅資料。", + "visualeditor-dialog-transclusion-title-insert-template": "插入模", + "visualeditor-dialog-transclusion-title-insert-known-template": "插入:$1", + "visualeditor-dialog-transclusion-title-edit-known-template": "編輯:$1", + "visualeditor-dialog-transclusion-title-edit-transclusion": "模內容", + "visualeditor-dialog-transclusion-template-search": "搵模", + "visualeditor-dialog-transclusion-template-search-help": "用識別關鍵字搵你想插入嘅模。有描述嘅模更有可能同即見編輯器配合得好。", + "visualeditor-dialog-transclusion-wikitext": "維基文字", + "visualeditor-dialog-transclusion-wikitext-widget-aria": "撳空格就可以揀維基文字元素。撳Enter嚟揀同編輯維基文字。", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected": "撳Ctrl + Del嚟刪維基文字元素。撳Ctrl + Shift + 箭嘴嚟向上搬或者向下搬個元素。", + "visualeditor-dialog-transclusion-wikitext-widget-aria-selected-single": "撳Ctrl + Del就可以刪除維基文字元素。", + "visualeditor-dialogbutton-media-tooltip": "相同媒體", "visualeditor-dialogbutton-template-tooltip": "模", "visualeditor-editconflict": "由於編輯衝突,{{GENDER:|你|妳|你}}嘅修改記唔低。{{GENDER:|你|妳|你}}想唔想人手解決呢個衝突?", + "visualeditor-editingtabdialog-body": "{{SITENAME}}而家記住你鍾意邊個編輯器。你可以喺編輯嗰陣切換編輯模式,同埋遲啲更改你嘅喜好設定。", "visualeditor-editingtabdialog-ok": "用我上次用過嘅編輯器", "visualeditor-editingtabdialog-title": "編輯掣", "visualeditor-editnotices-tool": "$1{{PLURAL:$1|張告示}}", "visualeditor-editnotices-tooltip": "編輯通告", "visualeditor-editsummary": "講吓你改咗啲乜", + "visualeditor-editsummary-characters-remaining": "剩低嘅字元數目", "visualeditor-educationpopup-dismiss": "清楚明白", + "visualeditor-expandable-less": "少啲", + "visualeditor-expandable-more": "多啲", "visualeditor-feedback-defaultmessage": "網址:$1", "visualeditor-formatdropdown-format-mw-heading1": "版題", "visualeditor-formatdropdown-format-mw-heading2": "標題", @@ -142,15 +247,26 @@ "visualeditor-formatdropdown-format-mw-heading5": "三等細標題", "visualeditor-formatdropdown-format-mw-heading6": "四等細標題", "visualeditor-generating-wikitext-progress": "生緊維基字", + "visualeditor-includes-noinclude-start": "摘錄入面排除嘅內容開頭", + "visualeditor-includes-noinclude-end": "喺摘錄入面排除咗嘅內容結束", + "visualeditor-includes-onlyinclude-start": "摘錄入面允許嘅內容開頭", + "visualeditor-includes-onlyinclude-end": "允許喺摘錄入面結束嘅內容", + "visualeditor-includes-includeonly": "淨係摘錄嘅內容", + "visualeditor-includes-noinclude-description": "當呢個頁面嘅內容由另一個頁面使用嗰陣,呢度嘅內容直至匹配嘅結束標記都唔會包括喺入面。編輯呢啲標記之外嘅內容嗰陣要小心,因為其他頁面可能會用呢個標記。", + "visualeditor-includes-onlyinclude-description": "當呢個頁面嘅內容由另一個頁面使用嗰陣,系統淨係會包括由呢度開始嘅內容,直至匹配嘅結束標記為止。喺呢啲標記之間編輯內容嗰陣要小心,因為其他頁面可能會用呢個標記。", + "visualeditor-includes-includeonly-description": "當呢個頁面嘅內容畀另一個頁面使用嗰陣,呢度會包括以下額外內容:", + "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion 了解多啲有關部分轉錄嘅資訊]", "visualeditor-languages-tool": "話", - "visualeditor-linkinspector-button-link-external": "出面連結", - "visualeditor-linkinspector-button-link-internal": "搵版", + "visualeditor-linkcontext-uneditable": "唔好意思,呢個連結暫時淨係可以喺源碼模式下編輯。", + "visualeditor-linkinspector-button-link-external": "外部網站", + "visualeditor-linkinspector-button-link-internal": "搵內部版", "visualeditor-linkinspector-convert-link-isbn": "轉做ISBN連結", "visualeditor-linkinspector-convert-link-pmid": "轉做PMID連結", "visualeditor-linkinspector-convert-link-rfc": "轉做RFC連結", "visualeditor-linkinspector-educationpopup-text": "鏈重要嘅字眼去第啲wiki文章甚至係第啲網站,用來幫讀者更加了解上下文。", "visualeditor-linkinspector-educationpopup-title": "拎", "visualeditor-linkinspector-illegal-title": "頁名無效", + "visualeditor-linkinspector-invalid-blocked": "呢個維基嘅人決定封鎖呢個網站啲拎,請試吓另一條拎。", "visualeditor-linkinspector-invalid-external": "入個完整嘅URL,例如 https://example.org", "visualeditor-linknodeinspector-add-label": "加label", "visualeditor-linknodeinspector-title": "短拎", @@ -174,8 +290,13 @@ "visualeditor-mweditmodeve-tool-unavailable": "呢度用唔到即見編輯", "visualeditor-mweditmodewt-popup-body": "你可以隨時撳呢個嘜頭返去編輯源碼。", "visualeditor-mweditmodewt-popup-title": "你轉咗去即見編輯", + "visualeditor-mwgallerycontext-description": "$1{{PLURAL:$1|幅圖}}", + "visualeditor-mwgallerydialog-caption-field-label": "圖庫字幕", "visualeditor-mwgallerydialog-card-images": "圖", "visualeditor-mwgallerydialog-card-options": "選項", + "visualeditor-mwgallerydialog-classes-field-label": "CSS 課程", + "visualeditor-mwgallerydialog-classes-input-placeholder": "班名,用空格嚟分隔", + "visualeditor-mwgallerydialog-empty-gallery-message": "圖庫係空嘅。", "visualeditor-mwgallerydialog-heights-field-label": "影像高度", "visualeditor-mwgallerydialog-heights-input-placeholder": "預設高度:$1像素", "visualeditor-mwgallerydialog-mode-dropdown-label-nolines": "傳統,無邊", @@ -189,36 +310,65 @@ "visualeditor-mwgallerydialog-remove-button-label": "拎走張圖", "visualeditor-mwgallerydialog-search-button-label": "加新圖", "visualeditor-mwgallerydialog-show-filename-field-label": "顯示快勞名", + "visualeditor-mwgallerydialog-styles-field-label": "CSS 樣式", + "visualeditor-mwgallerydialog-styles-input-placeholder": "CSS 規則,用分號嚟分隔", "visualeditor-mwgallerydialog-title": "圖集", "visualeditor-mwgallerydialog-widths-field-label": "影像闊度", "visualeditor-mwgallerydialog-widths-input-placeholder": "預設闊度:$1像素", + "visualeditor-mwpredialog-convert": "允許文字樣式", + "visualeditor-mwpredialog-title": "預先格式化嘅純文字", "visualeditor-mwsignature-tool": "你嘅簽名", + "visualeditor-preference-visualeditor": "開着即見編輯器", + "visualeditor-preference-newwikitexteditor-enable": "用可視編輯器嘅wikitext模式,而唔係用其他wikitext編輯器", + "visualeditor-preference-newwikitexteditor-help": "呢個有時亦都叫做「2017年維基文字編輯器」。", "visualeditor-preference-tabs": "編輯模式:", "visualeditor-preference-tabs-multi-tab": "我要晒兩個編輯掣", "visualeditor-preference-tabs-prefer-ve": "盡量畀即見編輯器我", "visualeditor-preference-tabs-prefer-wt": "每次都畀源碼編輯器我", "visualeditor-preference-tabs-remember-last": "記住我上次用過邊個編輯器", + "visualeditor-preference-collab-label": "協作編輯", + "visualeditor-preference-collab-description": "邀請其他用戶喺即見編輯器入面加入你嘅編輯工作階段。", + "visualeditor-rebase-client-export": "匯出", + "visualeditor-rebase-client-export-start": "匯出...", + "visualeditor-rebase-client-import": "匯入", "visualeditor-rebase-client-import-name": "頁名", + "visualeditor-rebase-client-title-help": "你可以喺儲存之前睇返啲改動。", + "visualeditor-recreate": "自從你開始編輯之後,呢個頁面已經刪除咗。撳「$1」嚟重新建立佢。", "visualeditor-redirect-description": "跳轉到$1", - "visualeditor-savedialog-identify-anon": "你想唔想以匿名身份記低你嘅修改?你嘅IP將會記落呢版嘅編輯史。", - "visualeditor-savedialog-identify-user": "你而家用[[User:$1|$1]]嘅身份登入。你嘅修改將會用呢個身份記低。", + "visualeditor-savedialog-identify-anon": "你已經唔再簽到。如果你繼續,呢個頁面嘅編輯記錄入面會記錄你嘅IP位址。", + "visualeditor-savedialog-identify-temp": "你而家用緊臨時用戶名$1。如果你繼續,你嘅編輯將會同呢個用戶名相關聯。", + "visualeditor-savedialog-identify-user": "你而家以[[User:$1|$1]]嘅身份簽到咗。如果你繼續,你嘅編輯就會同呢個戶口連結。", + "visualeditor-savedialog-keyboard-shortcut-submit": "你可以撳$1嚟儲存你嘅編輯。", "visualeditor-savedialog-label-publish-short": "發佈", + "visualeditor-savedialog-label-publish-short-start": "發佈...", "visualeditor-savedialog-label-resolve-conflict": "解決衝突", "visualeditor-savedialog-label-resume-editing": "繼續改", "visualeditor-savedialog-label-review": "檢查你嘅修改", "visualeditor-savedialog-label-review-good": "返去記低", "visualeditor-savedialog-label-save-short": "儲存", + "visualeditor-savedialog-label-save-short-start": "儲存...", + "visualeditor-savedialog-review-nosummary": "冇編輯摘要", + "visualeditor-savedialog-review-visual": "即見", + "visualeditor-savedialog-review-wikitext": "維基文字", "visualeditor-savedialog-title-conflict": "衝撞", "visualeditor-savedialog-title-preview": "檢查你嘅修改", "visualeditor-savedialog-title-review": "檢查你嘅修改", "visualeditor-savedialog-title-save": "保存你嘅修改", "visualeditor-section-body-placeholder": "新小節", "visualeditor-section-title-placeholder": "主題", + "visualeditor-loaderror-revidconflict": "伺服器返返去嘅修訂ID唔啱(文件:$1,元數據:$2)。", + "visualeditor-loaderror-wrongmode": "試過喺錯誤嘅模式度載入去編輯器(資料類型:「$1」,編輯器模式:「$2」)。", "visualeditor-settings-tool": "版嘅設定", "visualeditor-special-characters-group-other": "成日用", "visualeditor-templatesused-tool": "用咗嘅模", + "visualeditor-title-error": "無效嘅標題。", "visualeditor-toload": "而家即將載入編輯器,如果你幾秒鐘之後仲見到呢句嘢嘅話,請[$1 重新載入呢版]。", + "visualeditor-tooltip-non-breaking-space": "非破壞空間", "visualeditor-version-label": "版本", + "visualeditor-wikitext-progress": "轉換緊維基文字", "visualeditor-wikitext-warning": "你而家用緊 VisualEditor。[[{{MediaWiki:visualeditor-wikitext-warning-link}}|維基代碼]]喺呢度用唔到。你可以隨時轉去改源碼,撳個掣就得,你改咗嘅嘢唔會唔見。", - "visualeditor-wikitext-warning-title": "偵測到維基代碼" + "visualeditor-wikitext-warning-title": "偵測到維基代碼", + "visualeditor-wikitextconvert-title": "將格式轉換成維基文字?", + "visualeditor-wikitextconvert-message": "你貼咗啲格式豐富嘅內容。你想唔想將呢個格式轉換成維基文字?", + "visualeditor-wikitextconvert-convert": "轉換成維基文字" } diff --git a/i18n/ve-mw/zh-hans.json b/i18n/ve-mw/zh-hans.json index 05592af1d9..b55c2ade05 100644 --- a/i18n/ve-mw/zh-hans.json +++ b/i18n/ve-mw/zh-hans.json @@ -56,7 +56,9 @@ "沈澄心", "神樂坂秀吉", "铁桶", - "飞舞回堂前" + "飞舞回堂前", + "Peterxy12", + "Peterxy" ] }, "collabpad-doctitle": "协作板:$1", @@ -113,11 +115,9 @@ "visualeditor-dialog-media-info-artist": "上传者:$1", "visualeditor-dialog-media-info-audiofile": "音频文件", "visualeditor-dialog-media-info-created": "创建时间:$1", - "visualeditor-dialog-media-info-ellipsis": "…", "visualeditor-dialog-media-info-meta-artist": "作者:$1", "visualeditor-dialog-media-info-moreinfo": "更多信息", "visualeditor-dialog-media-info-readmore": "阅读更多", - "visualeditor-dialog-media-info-separator": "·", "visualeditor-dialog-media-info-uploaded": "上传时间:$1", "visualeditor-dialog-media-page-advanced": "高级", "visualeditor-dialog-media-page-general": "常规", @@ -300,6 +300,7 @@ "visualeditor-includes-includeonly-description": "当此页面的内容被另一个页面使用时,以下附加内容将包含在此处:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion 了解有关部分嵌入的更多信息]", "visualeditor-languages-tool": "语言", + "visualeditor-linkcontext-uneditable": "抱歉,此链接目前只能在源代码模式下编辑。", "visualeditor-linkinspector-button-link-external": "外部链接", "visualeditor-linkinspector-button-link-internal": "搜索内部页面", "visualeditor-linkinspector-convert-link-isbn": "转换为ISBN链接", @@ -362,7 +363,7 @@ "visualeditor-mwsignature-tool": "您的签名", "visualeditor-preference-visualeditor": "启用可视化编辑器", "visualeditor-preference-newwikitexteditor-enable": "使用可视化编辑器内置的wikitext模式,而不是其他wikitext编辑器", - "visualeditor-preference-newwikitexteditor-help": "此功能有时称作“2017版wikitext编辑器”。", + "visualeditor-preference-newwikitexteditor-help": "此功能有时称作“2017年版wikitext编辑器”。", "visualeditor-preference-tabs": "编辑模式:", "visualeditor-preference-tabs-multi-tab": "向我显示两个编辑器标签", "visualeditor-preference-tabs-prefer-ve": "如果可能,总是让我使用可视化编辑器", @@ -404,7 +405,7 @@ "visualeditor-special-characters-group-other": "常用", "visualeditor-templatesused-tool": "使用的模板", "visualeditor-title-error": "无效标题。", - "visualeditor-toload": "现在将加载编辑器。如果您在几秒钟后仍然看见这条消息,请[$1 重新加载]页面。", + "visualeditor-toload": "现在将加载编辑器。如果您在几秒钟后仍然看见这条消息,请[$1 刷新页面]。", "visualeditor-tooltip-non-breaking-space": "不换行空格", "visualeditor-version-label": "版本", "visualeditor-wikitext-progress": "正在转换为wikitext", diff --git a/i18n/ve-mw/zh-hant.json b/i18n/ve-mw/zh-hant.json index 4053aa6e75..43919210d6 100644 --- a/i18n/ve-mw/zh-hant.json +++ b/i18n/ve-mw/zh-hant.json @@ -25,6 +25,7 @@ "Lakejason0", "Liflon", "Liuxinyu970226", + "LowensteinYang", "LuciferianThomas", "Luuva", "Qiyue2001", @@ -286,6 +287,7 @@ "visualeditor-includes-includeonly-description": "當來自此頁面的內容被使用在另一個頁面時,以下額外內容會包含在此:", "visualeditor-includes-documentation": "[//www.mediawiki.org/wiki/Special:MyLanguage/Transclusion#Partial_transclusion 了解有關部分嵌入的更多資訊]", "visualeditor-languages-tool": "語言", + "visualeditor-linkcontext-uneditable": "很抱歉,此連結目前只能在原始碼模式下編輯。", "visualeditor-linkinspector-button-link-external": "外部站台", "visualeditor-linkinspector-button-link-internal": "搜尋內部頁面", "visualeditor-linkinspector-convert-link-isbn": "轉換為 ISBN 連結", @@ -390,7 +392,7 @@ "visualeditor-special-characters-group-other": "經常使用", "visualeditor-templatesused-tool": "使用的模板", "visualeditor-title-error": "無效標題。", - "visualeditor-toload": "現在將載入編輯器,若您再幾秒過後仍看到此訊息,請[$1 重新載入頁面]。", + "visualeditor-toload": "編輯器即將載入,若您再幾秒過後仍看到此訊息,請[$1 刷新頁面]。", "visualeditor-tooltip-non-breaking-space": "不換行空格", "visualeditor-version-label": "版本", "visualeditor-wikitext-progress": "wikitext 轉換中", diff --git a/i18n/ve-mw/zmi.json b/i18n/ve-mw/zmi.json index e11e29ebb1..6b3bc895cb 100644 --- a/i18n/ve-mw/zmi.json +++ b/i18n/ve-mw/zmi.json @@ -4,5 +4,6 @@ "Zahirulnukman" ] }, - "visualeditor-ca-createsource": "Buek akar" + "visualeditor-ca-createsource": "Buek akar", + "visualeditor-ca-editsource-section": "sunting sumber" } diff --git a/i18n/ve-wmf/abs.json b/i18n/ve-wmf/abs.json index 8c8c4aac4e..79da57117a 100644 --- a/i18n/ve-wmf/abs.json +++ b/i18n/ve-wmf/abs.json @@ -4,5 +4,5 @@ "Anok kutai jang" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Parobahan Visual]]" + "tag-visualeditor": "Parobahan Visual" } diff --git a/i18n/ve-wmf/ace.json b/i18n/ve-wmf/ace.json index 73ac2a8914..381e824b02 100644 --- a/i18n/ve-wmf/ace.json +++ b/i18n/ve-wmf/ace.json @@ -5,9 +5,9 @@ "Si Gam Acèh" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Peusaneut visual]]", + "tag-visualeditor": "Peusaneut visual", "tag-visualeditor-description": "Geupeusaneut ngön [[{{MediaWiki:visualeditor-descriptionpagelink}}|peusaneut visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Peusaneut visual: Kalön lom]]", + "tag-visualeditor-needcheck": "Peusaneut visual: Kalön lom", "visualeditor-feedback-link": "Project:VisualEditor/Umpeuën likôt", "visualeditor-feedback-tool": "Keubah umpeuën likôt", "visualeditor-help-label": "Beuët peunuman ureuëng ngui", diff --git a/i18n/ve-wmf/acm.json b/i18n/ve-wmf/acm.json index b0142d1245..86ff961c48 100644 --- a/i18n/ve-wmf/acm.json +++ b/i18n/ve-wmf/acm.json @@ -7,15 +7,15 @@ "tag-editcheck-newcontent-description": "ايديت شيك يكول اكو محتوه جديد اجه لهاي الصفحه", "tag-editcheck-newreference-description": "خليت مرجع للصفحه", "tag-editcheck-references-description": "ايديت شيك يكول المصدر المفروض يصير ضروري", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|ايديت شيك (المصادر) مشتعله]]", + "tag-editcheck-references-activated": "ايديت شيك (المصادر) مشتعله", "tag-editcheck-references-activated-description": "ايديت شيك يكول ضروري يصير مصدر، والواجهه جانت طالعه", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|تحرير مرئي]]", + "tag-visualeditor": "تحرير مرئي", "tag-visualeditor-description": "إنته عدلت بـ[[{{MediaWiki:visualeditor-descriptionpagelink}}|المحرر المرئي]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|المحرر المرئي: تحقق]]", + "tag-visualeditor-needcheck": "المحرر المرئي: تحقق", "tag-visualeditor-needcheck-description": "التعديل صار [[{{MediaWiki:visualeditor-descriptionpagelink}}|بالمحرر المرئي]] والنظام اكتشف اكو تعديلات يمكن تصير بدون قصد على نص الويكي.", "tag-visualeditor-wikitext": "تعديل مصدر 2017", "tag-visualeditor-wikitext-description": "التعديل صار بمحرر نص الويكي 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|المحرر المرئي: تبديل]]", + "tag-visualeditor-switched": "المحرر المرئي: تبديل", "tag-visualeditor-switched-description": "بده النفر يحرر بالمرئي وإنتقل لمحرر نص الويكي.", "visualeditor-feedback-link": "Project:المحرر المرئي/تعليقات", "visualeditor-feedback-tool": "خلي تعليق على هاذه البرنامج", diff --git a/i18n/ve-wmf/ady-cyrl.json b/i18n/ve-wmf/ady-cyrl.json index d2dc45b251..b9344a80a2 100644 --- a/i18n/ve-wmf/ady-cyrl.json +++ b/i18n/ve-wmf/ady-cyrl.json @@ -1,10 +1,9 @@ { "@metadata": { "authors": [ - "Amire80", "Inyzh", "SmartNart12" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ВизуалЕӀэзэн]]" + "tag-visualeditor": "ВизуалЕӀэзэн" } diff --git a/i18n/ve-wmf/af.json b/i18n/ve-wmf/af.json index b287b0aa96..1c942bd324 100644 --- a/i18n/ve-wmf/af.json +++ b/i18n/ve-wmf/af.json @@ -6,8 +6,8 @@ "Rooiratel" ] }, - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|WysigingKontroller (verwysings) geaktiveer]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuele teksverwerker]]", + "tag-editcheck-references-activated": "WysigingKontroller (verwysings) geaktiveer", + "tag-visualeditor": "Visuele teksverwerker", "tag-visualeditor-description": "Wysiging gemaak met die [[{{MediaWiki:Visualeditor-descriptionpagelink}}|visuele teksverwerker]]", "tag-visualeditor-needcheck-description": "Wysiging gemaak met die [[{{MediaWiki:Visualeditor-descriptionpagelink}}|visuele teksverwerker]] waar die stelsel potensieel onbedoelde veranderings opgespoor het.", "visualeditor-feedback-link": "Project:Visuele teksverwerker/Terugvoer", diff --git a/i18n/ve-wmf/alt.json b/i18n/ve-wmf/alt.json index a2549802f3..001a524709 100644 --- a/i18n/ve-wmf/alt.json +++ b/i18n/ve-wmf/alt.json @@ -4,5 +4,5 @@ "Батыр Комдошев" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуальный тӱзедӱчи]]" + "tag-visualeditor": "Визуальный тӱзедӱчи" } diff --git a/i18n/ve-wmf/ami.json b/i18n/ve-wmf/ami.json index 66f37cc869..7d685b7109 100644 --- a/i18n/ve-wmf/ami.json +++ b/i18n/ve-wmf/ami.json @@ -4,5 +4,5 @@ "Vickylin77s" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|malo nanengnengan a nikawitan]]" + "tag-visualeditor": "malo nanengnengan a nikawitan" } diff --git a/i18n/ve-wmf/an.json b/i18n/ve-wmf/an.json index 3a4ca8bc4f..0241ae7f9b 100644 --- a/i18n/ve-wmf/an.json +++ b/i18n/ve-wmf/an.json @@ -4,5 +4,5 @@ "Willtron" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual]]" + "tag-visualeditor": "Edición visual" } diff --git a/i18n/ve-wmf/anp.json b/i18n/ve-wmf/anp.json index da3c1de33c..13123f4a54 100644 --- a/i18n/ve-wmf/anp.json +++ b/i18n/ve-wmf/anp.json @@ -4,5 +4,5 @@ "Angpradesh" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य संपादिका]]" + "tag-visualeditor": "यथादृश्य संपादिका" } diff --git a/i18n/ve-wmf/ar.json b/i18n/ve-wmf/ar.json index e761016faa..29290c74d9 100644 --- a/i18n/ve-wmf/ar.json +++ b/i18n/ve-wmf/ar.json @@ -3,7 +3,6 @@ "authors": [ "Abanima", "Alshamiri1", - "Amire80", "Ciphers", "Claw eg", "Elfalem", @@ -18,18 +17,30 @@ "علاء", "محمد أحمد عبد الفتاح", "مشعل الحربي", - "아라" + "아라", + "أبو هشام", + "Mohammed Qays" ] }, - "tag-editcheck-references-description": "يعتقد EditCheck أنه ربما كانت هناك حاجة إلى مرجع في هذا التعديل", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|فحص التحرير (أداة التحقق) مفعلّة]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|تحرير مرئي]]", - "tag-visualeditor-description": "تم التعديل باستخدام [[{{MediaWiki:visualeditor-descriptionpagelink}}|المحرر المرئي]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|المحرر المرئي: تحقق]]", + "tag-editcheck-newcontent-description": "يعتقد EditCheck أنه تمت إضافة محتوى جديد إلى الصفحة", + "tag-editcheck-newreference-description": "تمت إضافة مرجع إلى الصفحة", + "tag-editcheck-references-description": "يعتقد (إديت تشيك) أنّه قد يكون هناك حاجة إلى مرجع", + "tag-editcheck-references-activated": "فحص التحرير (أداة التحقق) مفعلّة", + "tag-editcheck-references-activated-description": "يعتقد EditCheck أنه ربما كان هناك حاجة إلى مرجع، وتم عرض واجهة المستخدم", + "tag-editcheck-references-shown": "تم عرض التحقق من التحرير (المراجع)", + "tag-editcheck-references-shown-description": "يعتقد EditCheck أنه قد يكون هناك حاجة إلى مرجع، وقد تم عرض واجهة المستخدم", + "tag-editcheck-tone-description": "اكتشف EditCheck وجود مشكلة محتملة في نغمة بعض المحتوى المضاف", + "tag-editcheck-tone-shown": "تم عرض علامة التحرير (النغمة)", + "tag-editcheck-tone-shown-description": "يعتقد EditCheck أنه قد يكون من الضروري إجراء تعديل على النغمة في بعض المحتوى، وقد تم عرض واجهة المستخدم", + "tag-editcheck-paste-shown": "تم عرض تعديل الاختيار (اللصق)", + "tag-editcheck-paste-shown-description": "طلب EditCheck توضيحًا بشأن المحتوى الذي قام المحرر بلصقه، والذي تمت إزالته بعد ذلك أو تأكيد أنه مسموح به", + "tag-visualeditor": "تحرير مرئي", + "tag-visualeditor-description": "التعديل باستخدام [[{{MediaWiki:visualeditor-descriptionpagelink}}|المحرر المرئي]]", + "tag-visualeditor-needcheck": "المحرر المرئي: تحقق", "tag-visualeditor-needcheck-description": "تم التعديل [[{{MediaWiki:visualeditor-descriptionpagelink}}|بالمحرر المرئي]] حيث اكتشف النظام تغييرات ربما تكون غير مقصودة على نص الويكي.", "tag-visualeditor-wikitext": "تعديل مصدر 2017", - "tag-visualeditor-wikitext-description": "التعديل تم باستخدام محرر نص الويكي 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|المحرر المرئي: تبديل]]", + "tag-visualeditor-wikitext-description": "تعديل باستخدام محرر نص الويكي 2017", + "tag-visualeditor-switched": "المحرر المرئي: تبديل", "tag-visualeditor-switched-description": "بدأ المستخدم بالتحرير باستخدام المحرر المرئي ثم انتقل إلى محرر نص الويكي.", "visualeditor-feedback-link": "Project:المحرر المرئي/تعليقات", "visualeditor-feedback-tool": "اترك تعليقًا حول هذا البرنامج", diff --git a/i18n/ve-wmf/arq.json b/i18n/ve-wmf/arq.json index bd1fd99adb..1b843e5059 100644 --- a/i18n/ve-wmf/arq.json +++ b/i18n/ve-wmf/arq.json @@ -6,7 +6,7 @@ "Oldstoneage" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|الكتابه المنظوره]]", + "tag-visualeditor": "الكتابه المنظوره", "visualeditor-welcomedialog-action": "بدا التبدال", "visualeditor-welcomedialog-content": "أي واحد يقدر يبدل، و كل تسڤام يعاون. صحيت كي راك تعاون العالم يتعلم كثر!" } diff --git a/i18n/ve-wmf/ary.json b/i18n/ve-wmf/ary.json index f1b71ae3fc..15550605ae 100644 --- a/i18n/ve-wmf/ary.json +++ b/i18n/ve-wmf/ary.json @@ -4,5 +4,5 @@ "SADIQUI" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|تحرير مرئي]]" + "tag-visualeditor": "تحرير مرئي" } diff --git a/i18n/ve-wmf/arz.json b/i18n/ve-wmf/arz.json index 83e2bd0674..e8054f153d 100644 --- a/i18n/ve-wmf/arz.json +++ b/i18n/ve-wmf/arz.json @@ -4,5 +4,5 @@ "Ghaly" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|تحرير متشاف]]" + "tag-visualeditor": "تحرير متشاف" } diff --git a/i18n/ve-wmf/as.json b/i18n/ve-wmf/as.json index e51f778d58..a501648d60 100644 --- a/i18n/ve-wmf/as.json +++ b/i18n/ve-wmf/as.json @@ -5,13 +5,13 @@ "Gitartha.bordoloi" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ভিজুৱেলএডিট]]", + "tag-visualeditor": "ভিজুৱেলএডিট", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ভিজুৱেল এডিটৰ]]ৰে কৰা সম্পাদনা", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ভিজুৱেল এডিটৰ: পৰীক্ষা কৰক]]", + "tag-visualeditor-needcheck": "ভিজুৱেল এডিটৰ: পৰীক্ষা কৰক", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ভিজুৱেল এডিটৰ]]ৰে সম্পাদনা কৰা হৈছে য'ত প্ৰণালীয়ে অনিচ্ছাকৃতভাৱে সালসলনি হোৱা সম্ভাব্য ৱিকিপাঠ্য চিনাক্ত কৰিছে।", "tag-visualeditor-wikitext": "২০১৭ উৎস সম্পাদনা", "tag-visualeditor-wikitext-description": "২০১৭ ৱিকিপাঠ্য সম্পাদক ব্যৱহাৰ কৰি সম্পাদনা কৰা হৈছে", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ভিজুৱেলএডিটৰ: পৰিবৰ্তন]]", + "tag-visualeditor-switched": "ভিজুৱেলএডিটৰ: পৰিবৰ্তন", "tag-visualeditor-switched-description": "সদস্যই ভিজুৱেল এডিটৰ ব্যৱহাৰ কৰি সম্পাদনা আৰম্ভ কৰি, পাছত ৱিকিপাঠ সম্পাদকলৈ সলনি কৰিছিল।", "visualeditor-feedback-link": "Project:ভিজুৱেলেডিটৰ/প্ৰতিক্ৰিয়া", "visualeditor-feedback-tool": "এই চফ্টৱেৰ সম্পৰ্কত আপোনাৰ মন্তব্য দিয়ক", diff --git a/i18n/ve-wmf/ast.json b/i18n/ve-wmf/ast.json index 5d159001d3..85f6e86bab 100644 --- a/i18n/ve-wmf/ast.json +++ b/i18n/ve-wmf/ast.json @@ -6,13 +6,13 @@ "Xuacu" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual]]", + "tag-visualeditor": "Edición visual", "tag-visualeditor-description": "Edición fecha usando l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual: Comprobar]]", + "tag-visualeditor-needcheck": "Edición visual: Comprobar", "tag-visualeditor-needcheck-description": "Edición fecha usando l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] na que'l sistema detectó que'l testu wiki pudiera tener cambeos nun deseaos.", "tag-visualeditor-wikitext": "edición de fonte 2017", "tag-visualeditor-wikitext-description": "Edición fecha usando l'editor visual de testu wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual: Cambiáu]]", + "tag-visualeditor-switched": "Edición visual: Cambiáu", "tag-visualeditor-switched-description": "L'usuariu principió la edición usando l'editor visual y llueu cambió al editor de testu wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Dexar un comentariu sobro esti programa", diff --git a/i18n/ve-wmf/atj.json b/i18n/ve-wmf/atj.json index 7ba8db31e7..19887aa9e9 100644 --- a/i18n/ve-wmf/atj.json +++ b/i18n/ve-wmf/atj.json @@ -5,5 +5,5 @@ "Jeannette Coocoo" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Oripatak itasinihikan]]" + "tag-visualeditor": "Oripatak itasinihikan" } diff --git a/i18n/ve-wmf/av.json b/i18n/ve-wmf/av.json index a0281f0da9..82f1b64c1d 100644 --- a/i18n/ve-wmf/av.json +++ b/i18n/ve-wmf/av.json @@ -6,5 +6,5 @@ "Аль-Гимравий" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуалияб редактор]]" + "tag-visualeditor": "Визуалияб редактор" } diff --git a/i18n/ve-wmf/avk.json b/i18n/ve-wmf/avk.json index 9431f80f34..0d5a3cec0d 100644 --- a/i18n/ve-wmf/avk.json +++ b/i18n/ve-wmf/avk.json @@ -4,5 +4,5 @@ "Axel xadolik" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Wirafi piskusiki]]" + "tag-visualeditor": "Wirafi piskusiki" } diff --git a/i18n/ve-wmf/awa.json b/i18n/ve-wmf/awa.json index de05a30615..fed45fc8c7 100644 --- a/i18n/ve-wmf/awa.json +++ b/i18n/ve-wmf/awa.json @@ -5,5 +5,5 @@ "हिमाल सुबेदी" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादक]]" + "tag-visualeditor": "दृश्य सम्पादक" } diff --git a/i18n/ve-wmf/az.json b/i18n/ve-wmf/az.json index 699a2993ef..f829488238 100644 --- a/i18n/ve-wmf/az.json +++ b/i18n/ve-wmf/az.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Cekli829", "Interfase", "Jduranboger", @@ -15,21 +14,28 @@ "tag-editcheck-newcontent-description": "EditCheck hesab edir ki, səhifəyə yeni məzmun əlavə olunub", "tag-editcheck-newreference-description": "Səhifəyə istinad əlavə edildi", "tag-editcheck-references-description": "EditCheck hesab edir ki, istinad lazım ola bilər", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Redaktə Yoxlanışı (istinadlar) aktivləşdirilib]]", + "tag-editcheck-references-activated": "Redaktə Yoxlanışı (istinadlar) aktivləşdirilib", "tag-editcheck-references-activated-description": "EditCheck istinad lazım olduğunu düşünür və interfeys göstərilir", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktor]]", + "tag-editcheck-references-shown": "Redaktə Yoxlanışı (istinadlar) göstərilib", + "tag-editcheck-references-shown-description": "EditCheck istinad lazım olduğunu düşünüb və interfeys göstərib", + "tag-editcheck-tone-description": "EditCheck əlavə edilən bəzi məzmunun tonunda potensial problem aşkarladı", + "tag-editcheck-tone-shown": "Redaktə Yoxlanışı (ton) göstərildi", + "tag-editcheck-tone-shown-description": "EditCheck hesab edib ki, bəzi məzmunun tonuna düzəliş lazım ola bilər və buna görə də müvafiq interfeysi göstərib", + "tag-editcheck-paste-shown": "Redaktə Yoxlanışı (yapışdırma) göstərildi", + "tag-editcheck-paste-shown-description": "EditCheck redaktorun yapışdırdığı məzmunla bağlı aydınlıq gətirməsini istədi, sonra həmin məzmun silindi və ya icazəli olduğu təsdiqləndi.", + "tag-visualeditor": "Vizual redaktə", "tag-visualeditor-description": "Redaktə [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktorun]] köməyi ilə edilib", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktor: Yoxla]]", + "tag-visualeditor-needcheck": "Vizual redaktor: Yoxla", "tag-visualeditor-needcheck-description": "Redaktə [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizual redaktor]] ilə edildi, sistem burada vikimətndə gözlənilməyən dəyişikliklər aşkar etdi.", - "tag-visualeditor-wikitext": "2017 viki-mətn redaktoru", - "tag-visualeditor-wikitext-description": "2017 viki-mətn redaktoru vasitəsilə edilmiş düzəlişlər", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktor: Dəyişdirildi]]", + "tag-visualeditor-wikitext": "2017 vikimətn redaktoru", + "tag-visualeditor-wikitext-description": "2017 vikimətn redaktoru vasitəsilə edilmiş redaktələr", + "tag-visualeditor-switched": "Vizual redaktor: Dəyişdirildi", "tag-visualeditor-switched-description": "İstifadəçi vizual redaktorla başladı, daha sonra vikimətn redaktoruna keçdi.", - "visualeditor-feedback-link": "Layihə:Vizual redaktor/Rəy", + "visualeditor-feedback-link": "Project:Vizual redaktor/Rəy", "visualeditor-feedback-tool": "Bu funksiya haqqında rəyinizi bildirin", - "visualeditor-help-label": "İstifadəçinin bələdçisini oxu", + "visualeditor-help-label": "İstifadəçi təlimatını oxu", "visualeditor-welcomedialog-action": "Redaktəyə başla", - "visualeditor-welcomedialog-content": "Burada hər kəs redaktə edə bilər. Hər düzəliş təkmilləşməyə kömək edir.", + "visualeditor-welcomedialog-content": "Hər kəs redaktə edə bilər və hər bir təkmilləşdirmə kömək edir.", "visualeditor-welcomedialog-content-thanks": "Hər kəsin daha çox şey öyrənməsinə kömək etdiyiniz üçün sizə təşəkkür edirik!", "visualeditor-welcomedialog-switch": "Mənbə redaktoruna keç", "visualeditor-welcomedialog-switch-ve": "Vizual redaktora keç", diff --git a/i18n/ve-wmf/azb.json b/i18n/ve-wmf/azb.json index a9eed99022..2768f79519 100644 --- a/i18n/ve-wmf/azb.json +++ b/i18n/ve-wmf/azb.json @@ -6,7 +6,7 @@ "Mousa" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|بصری دییشدیریجی]]", + "tag-visualeditor": "بصری دییشدیریجی", "visualeditor-feedback-tool": "بو پروقراما گؤره فیدبک گؤندرین", "visualeditor-help-label": "ایشلدن کؤمگینی اوْخویون" } diff --git a/i18n/ve-wmf/ba.json b/i18n/ve-wmf/ba.json index 80895d49c3..97bc8889e3 100644 --- a/i18n/ve-wmf/ba.json +++ b/i18n/ve-wmf/ba.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "AiseluRB", - "Amire80", "Assele", "Bashkorttan", "Haqmar", @@ -12,11 +11,11 @@ "Янмурза Баки" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Күҙләгес мөхәррир]]", + "tag-visualeditor": "Күҙләгес мөхәррир", "tag-visualeditor-description": "Төҙәтеү [[{{MediaWiki:visualeditor-descriptionpagelink}}|Күҙләгес мөхәррир]] ҡулланып башҡарылған", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Күҙләгес мөхәррир: Тикшереү]]", + "tag-visualeditor-needcheck": "Күҙләгес мөхәррир: Тикшереү", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Күҙләгес мөхәррир]] аша эшләнгән төҙәтеүҙә система аңламаҫтан үҙгәртелгән вики-текст булыу ихтималлығын асыҡланы.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Күҙләгес мөхәррир: Тикшереү]]", + "tag-visualeditor-switched": "Күҙләгес мөхәррир: Тикшереү", "tag-visualeditor-switched-description": "Ҡулланыусы күҙләгес мөхәррир менән үҙгәртә башланы, һуңынан викитекст мөхәрриренә күсте.", "visualeditor-feedback-link": "Project:VisualEditor/Фекер алышыу", "visualeditor-feedback-tool": "Программа тәьминәте тураһында фекер ҡалдырығыҙ", diff --git a/i18n/ve-wmf/ban.json b/i18n/ve-wmf/ban.json index 41a0fab5a4..23f508c3d1 100644 --- a/i18n/ve-wmf/ban.json +++ b/i18n/ve-wmf/ban.json @@ -5,13 +5,13 @@ "NoiX180" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Uahan visual]]", + "tag-visualeditor": "Uahan visual", "tag-visualeditor-description": "Uahan sané nganggén [[{{MediaWiki:visualeditor-descriptionpagelink}}|panguahan visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Panguahan visual: Periksa]]", + "tag-visualeditor-needcheck": "Panguahan visual: Periksa", "tag-visualeditor-needcheck-description": "Uahan sané nganggén [[{{MediaWiki:visualeditor-descriptionpagelink}}|panguahan visual]] ring sistem sané nguningayang kawéntenan teks wiki prasida mikolehin pauahan sané nénten kamanutin.", "tag-visualeditor-wikitext": "Uahan wit 2017", "tag-visualeditor-wikitext-description": "Nguahin nganggén panguah teks wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Uahan visual: Silurin]]", + "tag-visualeditor-switched": "Uahan visual: Silurin", "tag-visualeditor-switched-description": "Sang anganggé ngawitin panguahan nganggén uahan visual selanturné nyilurin manados uahan teks wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Pamrayoga", "visualeditor-feedback-tool": "Ngicain sara antuk piranti lunak puniki", diff --git a/i18n/ve-wmf/bbc-latn.json b/i18n/ve-wmf/bbc-latn.json index ab94f732a0..b13c69fe7f 100644 --- a/i18n/ve-wmf/bbc-latn.json +++ b/i18n/ve-wmf/bbc-latn.json @@ -4,5 +4,5 @@ "Salomo Christian Hutajulu" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Patota na tarbereng]]" + "tag-visualeditor": "Patota na tarbereng" } diff --git a/i18n/ve-wmf/bci.json b/i18n/ve-wmf/bci.json index 6180ae13bd..b9684b7f62 100644 --- a/i18n/ve-wmf/bci.json +++ b/i18n/ve-wmf/bci.json @@ -4,5 +4,5 @@ "Kjeanclaude" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Nounklèklèlè floua boué]]" + "tag-visualeditor": "Nounklèklèlè floua boué" } diff --git a/i18n/ve-wmf/bcl.json b/i18n/ve-wmf/bcl.json index dc1f421ecc..6a6a9015e6 100644 --- a/i18n/ve-wmf/bcl.json +++ b/i18n/ve-wmf/bcl.json @@ -6,9 +6,9 @@ "Sky Harbor" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Biswal-na-Pagliwat]]", + "tag-visualeditor": "Biswal-na-Pagliwat", "tag-visualeditor-description": "An pagliwat pinaghimo na ginagamit an [[{{MediaWiki:visualeditor-descriptionpagelink}}|Biswal-na-Paraliwat]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Biswal-na-Paraliwat: Rikisaron]]", + "tag-visualeditor-needcheck": "Biswal-na-Paraliwat: Rikisaron", "tag-visualeditor-needcheck-description": "An pagliwat pinaghimo na ginagamit an [[{{MediaWiki:visualeditor-descriptionpagelink}}|Biswal na Paraliwat]] kun saen an sistema namangnohan na an wikiteksto posibleng nagkaigwa nin bakong pinagtutuyong mga kaliwatan.", "tag-visualeditor-switched-description": "An paragamit nagpoon na magliwat gamit an biswal na paraliwat, asin nagbalyo sa wikitekstong paraliwat.", "visualeditor-feedback-link": "Project:Biswal-na-Paraliwat/Balik-simbag", diff --git a/i18n/ve-wmf/be-tarask.json b/i18n/ve-wmf/be-tarask.json index f9426bb940..d2f3e20576 100644 --- a/i18n/ve-wmf/be-tarask.json +++ b/i18n/ve-wmf/be-tarask.json @@ -1,22 +1,22 @@ { "@metadata": { "authors": [ - "Amire80", "EugeneZelenko", "Red Winged Duck", "Renessaince", "Wizardist", "Чаховіч Уладзіслаў", - "아라" + "아라", + "Ucukor" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальная праўка]]", - "tag-visualeditor-description": "Праўка зробленая празь [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуальны рэдактар]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальная праўка: праверыць]]", - "tag-visualeditor-needcheck-description": "Праўка была зроблена [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуальным рэдактарам]], і сыстэма заўважыла патэнцыйна непажаданыя зьмены ў вікітэксьце.", + "tag-visualeditor": "Візуальны рэдактар", + "tag-visualeditor-description": "Рэдагаваньне зробленае празь [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуальны рэдактар]]", + "tag-visualeditor-needcheck": "Візуальны рэдактар: Праверыць", + "tag-visualeditor-needcheck-description": "Рэдагаваньне было зробленае [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуальным рэдактарам]], і сыстэма заўважыла патэнцыйна непажаданыя зьмены ў вікітэксьце.", "tag-visualeditor-wikitext": "рэдактар вікітэксту-2017", "tag-visualeditor-wikitext-description": "Рэдагаваньне зробленае з дапамогай рэдактара вікітэксту-2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальная праўка: пераключана]]", + "tag-visualeditor-switched": "Візуальны рэдактар: Пералучана", "tag-visualeditor-switched-description": "Удзельнік пачаў рэдагаваць з дапамогай візуальнага рэдактару, а потым пераключыўся на рэдактар вікітэксту.", "visualeditor-feedback-link": "Project:Візуальны рэдактар/Водгукі", "visualeditor-feedback-tool": "Пакінуць водгук пра гэтае праграмнае забесьпячэньне", diff --git a/i18n/ve-wmf/be.json b/i18n/ve-wmf/be.json index ec6b2899f5..1f63f2025c 100644 --- a/i18n/ve-wmf/be.json +++ b/i18n/ve-wmf/be.json @@ -5,26 +5,27 @@ "Chadyka", "Maksim L.", "No Sleep till Krupki", + "Plaga med", "Vlad5250", "ZlyiLev", "Чаховіч Уладзіслаў" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальны рэдактар]]", + "tag-visualeditor": "Візуальны рэдактар", "tag-visualeditor-description": "Праўка зроблена з дапамогай [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуальнага рэдактара]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальная праўка: Праверыць]]", + "tag-visualeditor-needcheck": "Візуальная праўка: Праверыць", "tag-visualeditor-needcheck-description": "Праўка была зроблена з дапамогай [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуальнага рэдактара]], і сістэма заўважыла патэнцыйна непажаданыя змены ў вікітэксце.", "tag-visualeditor-wikitext": "рэдактар вікітэксту 2017", "tag-visualeditor-wikitext-description": "Праўка зроблена з дапамогай рэдактара вікітэксту 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальная праўка: Пераключана]]", + "tag-visualeditor-switched": "Візуальная праўка: Пераключана", "tag-visualeditor-switched-description": "Удзельнік пачаў правіць з дапамогай візуальнага рэдактара, а потым пераключыўся на рэдактар вікітэксту.", "visualeditor-feedback-link": "Project:VisualEditor/Водгукі", "visualeditor-feedback-tool": "Пакінуць водгук пра гэтае праграмнае забеспячэнне", "visualeditor-help-label": "Чытаць кіраўніцтва карыстальніка", "visualeditor-welcomedialog-action": "Пачаць рэдагаванне", - "visualeditor-welcomedialog-content": "Правіць можа кожны, і кожнае паляпшэнне ў дапамогу.", + "visualeditor-welcomedialog-content": "Правіць можа кожны і кожная, любое паляпшэнне будзе карысным.", "visualeditor-welcomedialog-content-thanks": "Дзякуй, што дапамагаеце свету даведацца больш!", "visualeditor-welcomedialog-switch": "Пераключыць на рэдактар зыходнага кода", "visualeditor-welcomedialog-switch-ve": "Пераключыць на візуальны рэдактар", - "visualeditor-welcomedialog-title": "{{GENDER:$1|Вітаем}} у {{grammar:родны|$2}}" + "visualeditor-welcomedialog-title": "{{GENDER:$1|Вітаем}} у {{GRAMMAR:месны|$2}}" } diff --git a/i18n/ve-wmf/bew.json b/i18n/ve-wmf/bew.json index 2d146554e9..5816d05a3f 100644 --- a/i18n/ve-wmf/bew.json +++ b/i18n/ve-wmf/bew.json @@ -8,13 +8,13 @@ "tag-editcheck-newreference-description": "Ada ruju'an nyang ditambahin ke halaman", "tag-editcheck-references-description": "EditCheck nyananya ruju'an barangkali dibutuhin", "tag-editcheck-references-activated-description": "EditCheck nyananya ruju'an diperluin, èn telampangan pemaké (TP)-nya dikasi unjuk", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Permak delengan]]", + "tag-visualeditor": "Permak delengan", "tag-visualeditor-description": "Permakan dikeja paké [[{{MediaWiki:visualeditor-descriptionpagelink}}|pemermak delengan]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Permak pisual: Perèksa]]", + "tag-visualeditor-needcheck": "Permak pisual: Perèksa", "tag-visualeditor-needcheck-description": "Permakan dikeja paké [[{{MediaWiki:visualeditor-descriptionpagelink}}|pemermak delengan]] di sistim nyang ngendus adanya tèks wiki nyang barangkali ada perobahan nyang kaga' dipèngèninnya.", "tag-visualeditor-wikitext": "permakan sumber 2017", "tag-visualeditor-wikitext-description": "Permak dikeja paké pemermak tèks wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Permakan delengan: Diganti]]", + "tag-visualeditor-switched": "Permakan delengan: Diganti", "tag-visualeditor-switched-description": "Pemaké mulain mermak paké pemermak delengan, terus ngrobah ke pemermak tèks wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Empan balik", "visualeditor-feedback-tool": "Tinggalin empan balik pasal ni peranti alus", diff --git a/i18n/ve-wmf/bg.json b/i18n/ve-wmf/bg.json index bb99ec8289..a7c0e95987 100644 --- a/i18n/ve-wmf/bg.json +++ b/i18n/ve-wmf/bg.json @@ -12,13 +12,13 @@ "පසිඳු කාවින්ද" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуален редактор]]", + "tag-visualeditor": "Визуална редакция", "tag-visualeditor-description": "Редакция, направена с [[{{MediaWiki:visualeditor-descriptionpagelink}}|визуалния редактор]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуална редакция за проверка]]", + "tag-visualeditor-needcheck": "Визуална редакция: Проверете", "tag-visualeditor-needcheck-description": "Редакция, направена с [[{{MediaWiki:visualeditor-descriptionpagelink}}|визуалния редактор]], за която системата откри възможно нежелани промени по уикикода.", "tag-visualeditor-wikitext": "Уикитекстов редактор – 2017", "tag-visualeditor-wikitext-description": "Редакцията е извършена чрез уикитекстов редактор – 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуален редактор: превключен]]", + "tag-visualeditor-switched": "Визуална редакция: Превключено", "tag-visualeditor-switched-description": "Потребителят започва да редактира чрез визуалния редактор и след това преминава към уикитекст редактора.", "visualeditor-feedback-link": "Project:Визуален редактор/Мнения", "visualeditor-feedback-tool": "Оставете отзив за софтуера", diff --git a/i18n/ve-wmf/bgn.json b/i18n/ve-wmf/bgn.json index b23988d97e..a3cdaf7764 100644 --- a/i18n/ve-wmf/bgn.json +++ b/i18n/ve-wmf/bgn.json @@ -5,5 +5,5 @@ "Ibrahim khashrowdi" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ديستینوکین ایڈیٹگر]]" + "tag-visualeditor": "ديستینوکین ایڈیٹگر" } diff --git a/i18n/ve-wmf/bho.json b/i18n/ve-wmf/bho.json index ee14b28b72..1fb9983c42 100644 --- a/i18n/ve-wmf/bho.json +++ b/i18n/ve-wmf/bho.json @@ -4,5 +4,5 @@ "SatyamMishra" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|विजुअल संपादन]]" + "tag-visualeditor": "विजुअल संपादन" } diff --git a/i18n/ve-wmf/bjn.json b/i18n/ve-wmf/bjn.json index 900422eb93..2096fcee84 100644 --- a/i18n/ve-wmf/bjn.json +++ b/i18n/ve-wmf/bjn.json @@ -8,8 +8,8 @@ "tag-editcheck-newcontent-description": "EditCheck bapikir isi hanyar ditambahi ka laman", "tag-editcheck-newreference-description": "Bahan acuan ditambahakan ka laman", "tag-editcheck-references-description": "EditCheck bapikir sabuting bahan acuan pinanya diparluakan", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (references) activated]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Babakan visual]]", + "tag-editcheck-references-activated": "Edit Check (references) activated", + "tag-visualeditor": "Babakan visual", "tag-visualeditor-description": "Dibabak lawan [[{{MediaWiki:visualeditor-descriptionpagelink}}|pambabak visual]]", "tag-visualeditor-wikitext-description": "Babakan mamakai pambabak naskah wiki 2017", "tag-visualeditor-switched-description": "Pamakai mulai mambabak lawan éditor visual imbah ngitu maubahnya manjadi éditor naskah wiki.", diff --git a/i18n/ve-wmf/blk.json b/i18n/ve-wmf/blk.json index 1e7a72d215..7a2a938701 100644 --- a/i18n/ve-wmf/blk.json +++ b/i18n/ve-wmf/blk.json @@ -4,13 +4,13 @@ "咽頭べさ" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ခြပ်ချော်ꩻ မဲ့ထာꩻထီႏ]]", + "tag-visualeditor": "ခြပ်ချော်ꩻ မဲ့ထာꩻထီႏ", "tag-visualeditor-description": "ထူႏသုင်ꩻအီတောမ်ႏ ခြပ်ချော်ꩻရုက်ပုင်ႏနယ်တဲင် [[{{MediaWiki:visualeditor-descriptionpagelink}}|ခြပ်ချော်ꩻသွော့]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ခြပ်ချော်ꩻ မဲ့ထာꩻထီႏ:စဲစ်ဆေꩻ]]", + "tag-visualeditor-needcheck": "ခြပ်ချော်ꩻ မဲ့ထာꩻထီႏ:စဲစ်ဆေꩻ", "tag-visualeditor-needcheck-description": "ဝီခီလိတ်ယာႏစနိစ်နဝ်ꩻ တအင်းရေႏတဝ်းလဲ့ ပြောင်ꩻလုဲင်ႏမုꩻဖုံႏ အဝ်ႏဒျာႏနဝ်ꩻသွူ။ စဲစ်ထွားကမော့ꩻဒါႏ [[{{MediaWiki:visualeditor-descriptionpagelink}}|ခြပ်ချော်ꩻထာꩻ]] ထီႏသားယို ထူႏသုင်ꩻသွူတွော့ꩻ ခြပ်ချော်ꩻသွော့။", "tag-visualeditor-wikitext": "ခြပ်ချော်ꩻအရွီးခိုႏ ၂၀၁၇", "tag-visualeditor-wikitext-description": "ထူႏသုင်ꩻအီတောမ်ႏ ခြပ်ချော်ꩻဝီခီလိတ်ယာႏတဲင် ခြပ်ချော်ꩻသွော့ ၂၀၁၇", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ခြပ်ချော်ꩻမုꩻ မဲ့ထာꩻထီႏ:ပြောင်ꩻခါꩻ]]", + "tag-visualeditor-switched": "ခြပ်ချော်ꩻမုꩻ မဲ့ထာꩻထီႏ:ပြောင်ꩻခါꩻ", "tag-visualeditor-switched-description": "ထူႏသုင်ꩻအီတောမ်ႏ ကေားသုင်ꩻသား ခြပ်ချော်ꩻရုက်ပုင်ႏတဲင် စထွူလဲဉ်း ခြပ်ချော်ꩻမုꩻသွူ၊ နဝ်ꩻထွူ ပြောင်ꩻလုဲင်ႏလဲဉ်း ခြပ်ချော်ꩻဝီခီလိတ်ယာႏသွူ။", "visualeditor-feedback-link": "ပရောစဲစ်:ခြပ်ချော်ꩻထာꩻထီႏ/လဝ်းပြန်ႏချာချက်", "visualeditor-feedback-tool": "တဲမ်းဖေႏသွော့ သော့ဝွဲးယိုအခရာႏ ဖေႏကျံႏညဏ်ႏချက်သြ", diff --git a/i18n/ve-wmf/bn.json b/i18n/ve-wmf/bn.json index 1a29b63897..c12a1de91b 100644 --- a/i18n/ve-wmf/bn.json +++ b/i18n/ve-wmf/bn.json @@ -3,7 +3,6 @@ "authors": [ "Aftab1995", "Aftabuzzaman", - "Amire80", "Bellayet", "Jayantanth", "Nasir8891", @@ -13,14 +12,15 @@ ] }, "tag-editcheck-newreference-description": "পাতাটিতে একটি তথ্যসূত্র যোগ হয়েছে", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|সম্পাদনা পরীক্ষা (তথ্যসূত্র) সক্রিয় করা হয়েছে]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|দৃশ্যমান সম্পাদনা]]", + "tag-editcheck-references-activated": "সম্পাদনা পরীক্ষা (তথ্যসূত্র) সক্রিয় করা হয়েছে", + "tag-editcheck-references-shown": "সম্পাদনা পরীক্ষা (তথ্যসূত্র) দেখানো হয়েছে", + "tag-visualeditor": "দৃশ্যমান সম্পাদনা", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|দৃশ্যমান সম্পাদনা]] ব্যবহার করে সম্পাদিত", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|দৃশ্যমান সম্পাদনা: যাচাই করুন]]", + "tag-visualeditor-needcheck": "দৃশ্যমান সম্পাদনা: যাচাই করুন", "tag-visualeditor-needcheck-description": "এই সম্পাদনাটি [[{{MediaWiki:visualeditor-descriptionpagelink}}|দৃশ্যমান সম্পাদনা]] ব্যবহার করে সম্পাদনা করা হয়েছে যেখানে সিস্টেম সনাক্ত করেছে উইকিপাঠ্যে সম্ভাব্য অনিচ্ছাকৃত পরিবর্তন ঘটেছে।", "tag-visualeditor-wikitext": "২০১৭ উৎস সম্পাদনা", "tag-visualeditor-wikitext-description": "২০১৭ উইকিটেক্সট সম্পাদক ব্যবহার করে সম্পাদনা করা হয়েছে", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|দৃশ্যমান সম্পাদনা: সুইচকৃত]]", + "tag-visualeditor-switched": "দৃশ্যমান সম্পাদনা: সুইচকৃত", "tag-visualeditor-switched-description": "ব্যবহারকারী দৃশ্যমান সম্পাদনা ব্যবহার করে সম্পাদনা করতে শুরু করে, তারপর উইকিপাঠ্য সম্পাদকে পরিবর্তন করে।", "visualeditor-feedback-link": "Project:ভিজ্যুয়ালএডিটর/প্রতিক্রিয়া", "visualeditor-feedback-tool": "এই সফটওয়্যার সম্পর্কে আপনার প্রতিক্রিয়া জানান", diff --git a/i18n/ve-wmf/bqi.json b/i18n/ve-wmf/bqi.json index 39ca563b7a..83bd64fa5b 100644 --- a/i18n/ve-wmf/bqi.json +++ b/i18n/ve-wmf/bqi.json @@ -4,5 +4,5 @@ "Mogoeilor" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ڤیرایشت ڤٱراْ تی]]" + "tag-visualeditor": "ڤیرایشت ڤٱراْ تی" } diff --git a/i18n/ve-wmf/br.json b/i18n/ve-wmf/br.json index 23e4f653c3..43147e50fe 100644 --- a/i18n/ve-wmf/br.json +++ b/i18n/ve-wmf/br.json @@ -12,15 +12,22 @@ "tag-editcheck-newcontent-description": "Hervez EditCheck ez eus bet ouzhpennet endalc’h nevez d’a bajenn", "tag-editcheck-newreference-description": "Ouzphennet ez eus bet un daveenn d’ar bajenn-mañ.", "tag-editcheck-references-description": "Hervez EditCheck e vefe ezhomm eus un daveenn", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (daveoù) gweredekaet]]", + "tag-editcheck-references-activated": "Edit Check (daveoù) gweredekaet", "tag-editcheck-references-activated-description": "Hervez EditCheck e vefe ezhomm eus un daveenn, ha diskouezet eo bet an etrefas implijer", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Gwelaozer]]", + "tag-editcheck-references-shown": "Edit Check (daveoù) diskouezet", + "tag-editcheck-references-shown-description": "Hervez EditCheck e vefe ezhomm eus un daveenn, ha diskouezet eo bet an etrefas implijer", + "tag-editcheck-tone-description": "EditCheck en deus dinoet e c'hallfe bezañ ur gudenn gant ton endalc'hadoù ouzhpennet zo", + "tag-editcheck-tone-shown": "Edit Check (ton) diskouezet", + "tag-editcheck-tone-shown-description": "Hervez EditCheck ez eus ezhomm da gemmañ an ton en endalc'hadoù zo, ha diskouezet eo bet an etrefas implijer", + "tag-editcheck-paste-shown": "Edit Check (pegañ) diskouezet", + "tag-editcheck-paste-shown-description": "EditCheck en deus goulennet ouzh an aozer displegañ an endalc'had peget gantañ, a zo bet tennet pe kadarnaet evel aotreet", + "tag-visualeditor": "Gwelaozer", "tag-visualeditor-description": "Kemm graet gant ar [[{{MediaWiki:visualeditor-descriptionpagelink}}|gwelaozer]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Gwelaozer: Da wiriañ]]", + "tag-visualeditor-needcheck": "Gwelaozer: Da wiriañ", "tag-visualeditor-needcheck-description": "Kamm graet gant ar [[{{MediaWiki:visualeditor-descriptionpagelink}}|gwelaozer]], kavet ennañ gant ar sistem wikitestenn a c’hellfe ober kemmoù dic’hortoz.", "tag-visualeditor-wikitext": "Aozer kod 2017", "tag-visualeditor-wikitext-description": "Kemm graet gant an aozer wikitestenn 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Gwelaozer: diweredekaet]]", + "tag-visualeditor-switched": "Gwelaozer: diweredekaet", "tag-visualeditor-switched-description": "Kroget en deus an implijer ober gant ar gwelaozer, hag aet eo war lerc’h d’an aozer wikitestenn.", "visualeditor-feedback-link": "Raktres:Gwelaozer/Soñjoù", "visualeditor-feedback-tool": "Rannañ ho soñj diwar-benn an arload-mañ", diff --git a/i18n/ve-wmf/bs.json b/i18n/ve-wmf/bs.json index be17612c09..21a8821e74 100644 --- a/i18n/ve-wmf/bs.json +++ b/i18n/ve-wmf/bs.json @@ -7,13 +7,14 @@ "Srđan" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje]]", - "tag-visualeditor-description": "Izmjena načinjena korištenjem [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualnog uređivača]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje: potrebna provjera]]", + "tag-editcheck-newreference-description": "Referenca dodana na stranicu", + "tag-visualeditor": "vizualno uređivanje", + "tag-visualeditor-description": "Izmjena napravljena [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualnim uređivačem]]", + "tag-visualeditor-needcheck": "vizualno uređivanje: potrebna provjera", "tag-visualeditor-needcheck-description": "Izmjena načinjena korištenjem [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualnog uređivača]] gdje je sistem detektirao wikitekst s mogućim neželjenim izmjenama.", "tag-visualeditor-wikitext": "uređivanje izvornog kôda (2017)", "tag-visualeditor-wikitext-description": "Izmjena napravljena uređivačem wikiteksta iz 2017.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje: prebačeno]]", + "tag-visualeditor-switched": "vizualno uređivanje: prebačeno", "tag-visualeditor-switched-description": "Korisnik je počeo uređivati koristeći vizualni uređivač, pa se prebacio na izvorno uređivanje wikiteksta.", "visualeditor-feedback-link": "Project:Vizualni uređivač/Povratne informacije", "visualeditor-feedback-tool": "Ostavite povratnu informaciju", diff --git a/i18n/ve-wmf/btm.json b/i18n/ve-wmf/btm.json index 4014cd9845..8d6a688d23 100644 --- a/i18n/ve-wmf/btm.json +++ b/i18n/ve-wmf/btm.json @@ -4,5 +4,5 @@ "Simartampua" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edit Visual]]" + "tag-visualeditor": "Edit Visual" } diff --git a/i18n/ve-wmf/ca.json b/i18n/ve-wmf/ca.json index f3dd08aac1..4f06b6bc3c 100644 --- a/i18n/ve-wmf/ca.json +++ b/i18n/ve-wmf/ca.json @@ -16,13 +16,13 @@ "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]]", + "tag-visualeditor": "editor visual", "tag-visualeditor-description": "Modificació feta amb l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edició visual: a comprovar]]", + "tag-visualeditor-needcheck": "Edició visual: a comprovar", "tag-visualeditor-needcheck-description": "Edició feta amb l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]], en la qual el sistema ha detectat que el text wiki pot contenir canvis no desitjats.", "tag-visualeditor-wikitext": "editor de codi 2017", "tag-visualeditor-wikitext-description": "Modificació feta utilitzant l'editor de text wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|edició visual: canviat]]", + "tag-visualeditor-switched": "edició visual: canviat", "tag-visualeditor-switched-description": "L'usuari ha començar a editar utilitzant l'editor visual i després ha canviat a l'editor wikitext.", "visualeditor-feedback-link": "Project:Editor visual/Comentaris", "visualeditor-feedback-tool": "Deixeu comentaris sobre aquest programari", diff --git a/i18n/ve-wmf/ccp.json b/i18n/ve-wmf/ccp.json index a82cadc3ff..d87d828291 100644 --- a/i18n/ve-wmf/ccp.json +++ b/i18n/ve-wmf/ccp.json @@ -7,7 +7,7 @@ "tag-editcheck-newcontent-description": "𑄃𑄬𑄓𑄨𑄑𑄴𑄌𑄬𑄇𑄴 𑄟𑄧𑄚𑄬 𑄉𑄧𑄢𑄨 𑄛𑄘𑄖𑄴 𑄚𑄱 𑄇𑄧𑄚𑄴𑄑𑄬𑄚𑄴𑄑𑄴 𑄃𑄬𑄉𑄧𑄖𑄴𑄧𑄢𑄴 𑄉𑄧𑄢 𑄦𑄮𑄠𑄬", "tag-editcheck-newreference-description": "𑄛𑄘𑄊𑄚𑄧𑄖𑄴 𑄄𑄇𑄴𑄮 𑄢𑄬𑄜𑄢𑄬𑄚𑄴𑄥𑄴 𑄆𑄉𑄧𑄖𑄴𑄧𑄢𑄴 𑄉𑄧𑄢 𑄦𑄮𑄠𑄬", "tag-editcheck-references-description": "𑄆𑄓𑄨𑄑𑄴𑄌𑄬𑄇𑄴 𑄟𑄧𑄚𑄬 𑄉𑄧𑄢𑄨 𑄆𑄇𑄴𑄳𑄦𑄚𑄴 𑄢𑄬𑄜𑄢𑄬𑄚𑄴𑄥𑄴 𑄉𑄧𑄢𑄧𑄌𑄴 𑄦𑄮𑄠𑄴 𑄛𑄢𑄬", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|𑄆𑄓𑄨𑄑𑄴𑄌𑄬𑄇𑄴 (𑄢𑄬𑄜𑄢𑄬𑄚𑄴𑄥𑄬𑄥𑄴) 𑄆𑄇𑄴𑄑𑄨𑄞𑄬𑄑𑄬𑄓𑄴]]", + "tag-editcheck-references-activated": "𑄆𑄓𑄨𑄑𑄴𑄌𑄬𑄇𑄴 (𑄢𑄬𑄜𑄢𑄬𑄚𑄴𑄥𑄬𑄥𑄴) 𑄆𑄇𑄴𑄑𑄨𑄞𑄬𑄑𑄬𑄓𑄴", "tag-visualeditor-wikitext": "𑄸𑄶𑄷𑄽 𑄥𑄮𑄢𑄴𑄥𑄴 𑄆𑄓𑄨𑄑𑄴", "visualeditor-help-label": "𑄣𑄢𑄴𑄌𑄢𑄴 𑄉𑄧𑄢𑄨𑄠𑄬 𑄉𑄭𑄓𑄴 𑄟𑄘𑄚", "visualeditor-welcomedialog-action": "𑄥𑄮𑄢𑄴 𑄉𑄧𑄢𑄚 𑄃𑄢𑄴𑄉𑄚𑄨 𑄉𑄧𑄢𑄴", diff --git a/i18n/ve-wmf/cdo.json b/i18n/ve-wmf/cdo-hant.json similarity index 77% rename from i18n/ve-wmf/cdo.json rename to i18n/ve-wmf/cdo-hant.json index 9df3d7edaa..f36c1cf426 100644 --- a/i18n/ve-wmf/cdo.json +++ b/i18n/ve-wmf/cdo-hant.json @@ -1,11 +1,9 @@ { "@metadata": { "authors": [ - "Davidzdh", - "Ztl8702" + "Winston Sung" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Kō̤-sê-huá biĕng-cĭk]]", "visualeditor-help-label": "讀用戶手冊", "visualeditor-welcomedialog-action": "開始編輯", "visualeditor-welcomedialog-content": "底儂都會編輯,每蜀隻改進都會幫儂家。", diff --git a/i18n/ve-wmf/cdo-latn.json b/i18n/ve-wmf/cdo-latn.json new file mode 100644 index 0000000000..eb7857b58d --- /dev/null +++ b/i18n/ve-wmf/cdo-latn.json @@ -0,0 +1,6 @@ +{ + "@metadata": { + "authors": [] + }, + "tag-visualeditor": "Kō̤-sê-huá biĕng-cĭk" +} diff --git a/i18n/ve-wmf/ce.json b/i18n/ve-wmf/ce.json index 4883a4abf4..bbdbc051d5 100644 --- a/i18n/ve-wmf/ce.json +++ b/i18n/ve-wmf/ce.json @@ -1,18 +1,28 @@ { "@metadata": { "authors": [ - "Amire80", "Умар" ] }, + "tag-editcheck-newcontent-description": "EditCheck-на хетарехь, агӀонна тӀе керла чулацам тӀетоьхна .", "tag-editcheck-newreference-description": "АгӀонна хьажорг тӀетоьхна", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|БӀаьран редактор]]", + "tag-editcheck-references-description": "EditCheck-на хетарехь, хьажорг оьшуш хила тарло", + "tag-editcheck-references-activated": "Хийцамаш бар талларан (хьажоргаш) активаци йина", + "tag-editcheck-references-activated-description": "EditCheck-на хетарехь, хьажоргаш оьшуш хила тарло, ткъа UI гайтина", + "tag-editcheck-references-shown": "Хийцамаш таллар гуш ду (хьажоргаш)", + "tag-editcheck-references-shown-description": "EditCheck-на хетарехь, хьажоргаш оьшуш хила тарло, ткъа UI гайтина", + "tag-editcheck-tone-description": "EditCheck-о гучудаьккхина цхьаболчу тӀетоьхначу чулацаман тонца хила тарлуш йолу проблема", + "tag-editcheck-tone-shown": "Гойтуш хийцаран таллам (tone)", + "tag-editcheck-tone-shown-description": "EditCheck-на хетарехь, цхьайолчу материалехь тон нисйан оьшуш хила тарло, ткъа UI гайтина", + "tag-editcheck-paste-shown": "Хийцамаш таллар гойту (йукъадиллар)", + "tag-editcheck-paste-shown-description": "EditCheck-о дехна редакторо дӀатоьхначу чулацамах лаьцна къастам бар, цул тӀаьхьа иза дӀабаьккхира, йа мегаш хилар тӀечӀагӀдира", + "tag-visualeditor": "БӀаьран редактор", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|БӀаьран редакторца]] дина нисдарш", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|БӀаьран редактор]]: талла", + "tag-visualeditor-needcheck": "БӀаьран редактор: талла", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|БӀаьран редакторан]] гӀоьнца дина нисдар, цунна чохь системин карийна нийса боцу вики-текстан хийцамаш.", - "tag-visualeditor-wikitext": "вики-йозан 2017 редактор", + "tag-visualeditor-wikitext": "вики-текстан редактор 2017", "tag-visualeditor-wikitext-description": "Нисдар дина вики-текст 2017 редакторан гӀоьнца", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|бӀаьран редактор]] дӀадайина", + "tag-visualeditor-switched": "бӀаьран редактор дӀадайина", "tag-visualeditor-switched-description": "Декъашхо бӀаьран редакторца хийцамаш бан болийна, цул тӀаьхьа вики-текстан редактор чохь хийцамаш бира цо.", "visualeditor-feedback-link": "Project:БӀаьран редактор/Хетарш", "visualeditor-feedback-tool": "Йазде хьайна хетарг", diff --git a/i18n/ve-wmf/ceb.json b/i18n/ve-wmf/ceb.json index 67740034d6..94055b6272 100644 --- a/i18n/ve-wmf/ceb.json +++ b/i18n/ve-wmf/ceb.json @@ -1,10 +1,9 @@ { "@metadata": { "authors": [ - "Amire80", "Bentong Isles", "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Giusab ginamit ang visual editor]]" + "tag-visualeditor": "Giusab ginamit ang visual editor" } diff --git a/i18n/ve-wmf/ckb.json b/i18n/ve-wmf/ckb.json index f94c53910f..5542c4cc27 100644 --- a/i18n/ve-wmf/ckb.json +++ b/i18n/ve-wmf/ckb.json @@ -11,9 +11,9 @@ "ئارام بکر" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|دەستکاریی دیداری]]", + "tag-visualeditor": "دەستکاریی دیداری", "tag-visualeditor-description": "دەستکاری بە [[{{MediaWiki:visualeditor-descriptionpagelink}}|دەستکاریکەری دیداری]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|دەستکاریکەری دیداری: تاوتوێ]]", + "tag-visualeditor-needcheck": "دەستکاریکەری دیداری: تاوتوێ", "tag-visualeditor-wikitext": "دەستکاریی سەرچاوەی ٢٠١٧", "visualeditor-feedback-tool": "فیدباک دەربارەی ئەم نەرمامێرە بدە", "visualeditor-help-label": "ڕێنوێنیی بەکارھێنەر بخوێنەرەوە", diff --git a/i18n/ve-wmf/cnr-latn.json b/i18n/ve-wmf/cnr-latn.json index 8b4f88fc78..b28e8a92d6 100644 --- a/i18n/ve-wmf/cnr-latn.json +++ b/i18n/ve-wmf/cnr-latn.json @@ -4,5 +4,5 @@ "Ookuninusi" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje]]" + "tag-visualeditor": "vizualno uređivanje" } diff --git a/i18n/ve-wmf/co.json b/i18n/ve-wmf/co.json index 5e581135c7..27e00acd49 100644 --- a/i18n/ve-wmf/co.json +++ b/i18n/ve-wmf/co.json @@ -5,6 +5,6 @@ "Paulu" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Mudifica visuale]]", + "tag-visualeditor": "Mudifica visuale", "tag-visualeditor-description": "Edizione fatta per via di" } diff --git a/i18n/ve-wmf/cop.json b/i18n/ve-wmf/cop.json index 9b3c2a02b5..a91bd8cc3b 100644 --- a/i18n/ve-wmf/cop.json +++ b/i18n/ve-wmf/cop.json @@ -4,5 +4,5 @@ "Bloomaround" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ϫⲓⲛⲫⲱⲛϩ ⲛ̀ⲛⲁⲩ]]" + "tag-visualeditor": "ϫⲓⲛⲫⲱⲛϩ ⲛ̀ⲛⲁⲩ" } diff --git a/i18n/ve-wmf/crh-latn.json b/i18n/ve-wmf/crh-latn.json new file mode 100644 index 0000000000..35e1129a8e --- /dev/null +++ b/i18n/ve-wmf/crh-latn.json @@ -0,0 +1,16 @@ +{ + "@metadata": { + "authors": [ + "Don Alessandro" + ] + }, + "tag-visualeditor": "Vizual türlendirgiç ile", + "tag-visualeditor-needcheck": "Vizual türlendirgiç: Teşker", + "tag-visualeditor-switched": "Vizual türlendirgiçten vazçgeçildi", + "visualeditor-welcomedialog-action": "Yazmağa başla", + "visualeditor-welcomedialog-content": "Er kes deñiştirip ola ve er eyileştirüv leyhağa yardım ete.", + "visualeditor-welcomedialog-content-thanks": "Er kesniñ daa çoq şey ögrenmesine yardım etkeniñiz içün sağ oluñız!", + "visualeditor-welcomedialog-switch": "Viki-metin türlendirgiçine keç", + "visualeditor-welcomedialog-switch-ve": "Vizual türlendirgiçke keç", + "visualeditor-welcomedialog-title": "$2 saytına {{GENDER:$1|hoş keldiñiz}}" +} diff --git a/i18n/ve-wmf/cs.json b/i18n/ve-wmf/cs.json index 2eb4be31d1..2e8fd28952 100644 --- a/i18n/ve-wmf/cs.json +++ b/i18n/ve-wmf/cs.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Chmee2", "Dvorapa", "Jdforrester", @@ -23,13 +22,13 @@ "아라" ] }, - "tag-visualeditor": "editace z [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuálního editoru]]", + "tag-visualeditor": "editace z Vizuálního editoru", "tag-visualeditor-description": "Editace provedená za použití [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuálního editoru]]", - "tag-visualeditor-needcheck": "možná chyba ve [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuálním editoru]]", + "tag-visualeditor-needcheck": "možná chyba ve Vizuálním editoru", "tag-visualeditor-needcheck-description": "Editace provedená za použití [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuálního editoru]], u které systém detekoval možné nezamýšlené změny wikitextu.", "tag-visualeditor-wikitext": "editor wikitextu 2017", "tag-visualeditor-wikitext-description": "Editace provedená pomocí editoru wikitextu 2017", - "tag-visualeditor-switched": "přepnuto z [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuálního editoru]]", + "tag-visualeditor-switched": "přepnuto z Vizuálního editoru", "tag-visualeditor-switched-description": "Uživatel začal editovat pomocí Vizuálního editoru, načež se přepnul do editoru wikitextu.", "visualeditor-feedback-link": "Project:Vizuální editor/Názory", "visualeditor-feedback-tool": "Poslat názor na tento software", diff --git a/i18n/ve-wmf/csb.json b/i18n/ve-wmf/csb.json index 3dc187d988..b883593a47 100644 --- a/i18n/ve-wmf/csb.json +++ b/i18n/ve-wmf/csb.json @@ -5,7 +5,7 @@ "Kirsan" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Wizualny editora]]", + "tag-visualeditor": "Wizualny editora", "tag-visualeditor-wikitext": "editor zdrojowégò kòdu 2017", "visualeditor-welcomedialog-action": "Naczni edicjã", "visualeditor-welcomedialog-content": "Kòżdi mòże editowac i kòżdô edicjô rozwijô kaszëbską Wikipediã.", diff --git a/i18n/ve-wmf/cv.json b/i18n/ve-wmf/cv.json index d22305f877..592742796b 100644 --- a/i18n/ve-wmf/cv.json +++ b/i18n/ve-wmf/cv.json @@ -7,14 +7,14 @@ "tag-editcheck-newcontent-description": "EditCheck шутланӑ тӑрӑх, страницӑна ҫӗнӗ контент хушӑ", "tag-editcheck-newreference-description": "Страницӑна каҫӑ хушӑннӑ", "tag-editcheck-references-description": "EditCheck шутланӑ тӑрӑх кунта каҫӑ хушмалла", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|EditCheck (каҫӑсем) ӗҫлет]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|курӑмлӑ редакторпа]]", + "tag-editcheck-references-activated": "EditCheck (каҫӑсем) ӗҫлет", + "tag-visualeditor": "курӑмлӑ редакторпа", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Курӑмлӑ редакторпа]] тунӑ тӳрлетӳсем", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|курӑмлӑ редакторпа]]: тӗрӗсле", + "tag-visualeditor-needcheck": "курӑмлӑ редакторпа: тӗрӗсле", "tag-visualeditor-needcheck-description": "Система [[{{MediaWiki:visualeditor-descriptionpagelink}}|курӑмлӑ редакторпа]] тунӑ, вики-текста тӗрӗс мар улшӑну кӗртнӗ тӳрлетӗве асӑрханӑ.", "tag-visualeditor-wikitext": "вики-текст редакторӗ 2017", "tag-visualeditor-wikitext-description": "Ку тӳрлетӗве 2017 вики-текст редакторӗпе усӑ курса тунӑ", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|курӑмлӑ редактор]] ӗҫлемест", + "tag-visualeditor-switched": "курӑмлӑ редактор ӗҫлемест", "tag-visualeditor-switched-description": "Хутшӑнакан текста курӑмлӑ редакторпа улӑштарма пуҫланӑ, кайран вики-текст редакторне куҫнӑ.", "visualeditor-feedback-link": "Project:Курӑмлӑ редактор/Сирӗн шухӑшсем", "visualeditor-feedback-tool": "Хӑвӑр шухӑшӑра пӗлтерӗр", diff --git a/i18n/ve-wmf/cy.json b/i18n/ve-wmf/cy.json index 464eb729ff..9bbf050843 100644 --- a/i18n/ve-wmf/cy.json +++ b/i18n/ve-wmf/cy.json @@ -10,13 +10,13 @@ ] }, "tag-editcheck-references-description": "Mae EditCheck yn meddwl y gallai fod angen cyfeiriad yn y golygiad hwn", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Golygiad Gweladwy]]", + "tag-visualeditor": "Golygiad Gweladwy", "tag-visualeditor-description": "Golygwyd gyda'r [[{{MediaWiki:visualeditor-descriptionpagelink}}|golygydd gweladwy]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Golygiad gweledol: Gwirio]]", + "tag-visualeditor-needcheck": "Golygiad gweledol: Gwirio", "tag-visualeditor-needcheck-description": "Golygiad trwy'r [[{{MediaWiki:visualeditor-descriptionpagelink}}|golygydd gweledol]] lle y gallai'r gystrawen wici wedi gwneud newidiadau anfwriadol yn ôl y system.", "tag-visualeditor-wikitext": "Golygiad cod 2017", "tag-visualeditor-wikitext-description": "Golygiad trwy ddefnyddio'r golygydd cystrawen wici 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Golygu gweledol: Newidiwyd]]", + "tag-visualeditor-switched": "Golygu gweledol: Newidiwyd", "tag-visualeditor-switched-description": "Dechreuodd y defnyddiwr olygu yn y golygydd gweledol, yna newid i'r golygydd wicidestun.", "visualeditor-feedback-link": "Project:VisualEditor/Adborth", "visualeditor-feedback-tool": "Anfon adborth am y meddalwedd hwn", diff --git a/i18n/ve-wmf/da.json b/i18n/ve-wmf/da.json index 6019d860ce..9dff84401d 100644 --- a/i18n/ve-wmf/da.json +++ b/i18n/ve-wmf/da.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Cgtdk", "Christian List", "EileenSanda", @@ -13,19 +12,32 @@ "Sarrus", "Simeondahl", "SimmeD", + "Steenth", "Tehnix", "Thomsen", "Weblars", "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuel redigering]]", + "tag-editcheck-newcontent-description": "EditCheck mener, at der er blevet tilføjet nyt indhold til siden", + "tag-editcheck-newreference-description": "En reference blev tilføjet til siden", + "tag-editcheck-references-description": "EditCheck mener, at en reference muligvis har været nødvendig", + "tag-editcheck-references-activated": "Redigeringstjek (referencer) aktiveret", + "tag-editcheck-references-activated-description": "EditCheck mener, at en reference muligvis har været nødvendig, og brugergrænsefladen blev vist", + "tag-editcheck-references-shown": "Redigeringstjek (referencer) vist", + "tag-editcheck-references-shown-description": "EditCheck mener, at en reference muligvis har været nødvendig, og brugergrænsefladen blev vist", + "tag-editcheck-tone-description": "EditCheck opdagede et potentielt problem med tonen i noget af det tilføjede indhold", + "tag-editcheck-tone-shown": "Redigeringstjek (tone) vist", + "tag-editcheck-tone-shown-description": "EditCheck mener, at en justering af tonen i noget af indholdet muligvis har været nødvendig, og brugergrænsefladen blev vist", + "tag-editcheck-paste-shown": "Redigeringstjek (indsæt) vist", + "tag-editcheck-paste-shown-description": "EditCheck bad om afklaring af indhold, som bidragsyderen havde indsat, hvilket derefter enten blev fjernet eller bekræftet som tilladt.", + "tag-visualeditor": "Visuel redigering", "tag-visualeditor-description": "Redigeret ved hjælp af [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuel redigering]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuel redigering: Tjek]]", + "tag-visualeditor-needcheck": "Visuel redigering: Tjek", "tag-visualeditor-needcheck-description": "Redigering gjort med [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuel redigering]], hvor systemet har registreret at wikiteksten muligvis har utilsigtede ændringer.", "tag-visualeditor-wikitext": "2017-kilderedigering", "tag-visualeditor-wikitext-description": "Redigering foretaget med 2017-kilderedigering", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuel redigering: Skiftede]]", + "tag-visualeditor-switched": "Visuel redigering: Skiftede", "tag-visualeditor-switched-description": "Brugeren begyndte redigeringen med VisualEditor og skiftede derefter til wikitekst-redigering.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Giv tilbagemelding om denne software", diff --git a/i18n/ve-wmf/dag.json b/i18n/ve-wmf/dag.json index c94b389960..1c7e3418ac 100644 --- a/i18n/ve-wmf/dag.json +++ b/i18n/ve-wmf/dag.json @@ -9,15 +9,15 @@ "tag-editcheck-newcontent-description": "Labi maali niŋ ka baŋ ni yɛla pala nyɛla din pahi yaɣili ŋɔ", "tag-editcheck-newreference-description": "Kundivihirili nyɛla din pahi yaɣili ŋɔ", "tag-editcheck-references-description": "Labi lihi ka baŋ ni kundivihira nyɛla din ni tooi pahi", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|lihi maali niŋ (kundivihira) activated]]", + "tag-editcheck-references-activated": "lihi maali niŋ (kundivihira) activated", "tag-editcheck-references-activated-description": "Labi lihi ka baŋ ni kundivihira nyɛla din ni tooi pahi ka UI maa di wuhi", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Nin'nyabu mali niŋ ]]", + "tag-visualeditor": "Nin'nyabu mali niŋ", "tag-visualeditor-description": "Zaŋmi [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]m-maali niŋ", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-needcheck-description": "Zaŋmi [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]m-maali niŋ luɣ’ shɛli wikitext ni ka bi tahira yiriŋ", "tag-visualeditor-wikitext": "2017 Maaliniŋ yibushee", "tag-visualeditor-wikitext-description": "Zaŋmi 2017wikitext maaliniŋ edita", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Switched]]", + "tag-visualeditor-switched": "Visual edit: Switched", "tag-visualeditor-switched-description": "Zaŋmi pilibu soli m-maali lihibu edita, ka taɣi li chaŋ wikitext edita.", "visualeditor-feedback-link": "Tuma:Nininyabu edita/din niŋ nyaaŋa", "visualeditor-feedback-tool": "Chɛli din niŋ nyaaŋa jɛndi komputa tuma", @@ -26,6 +26,5 @@ "visualeditor-welcomedialog-content": "Sokam ni tooi mali niŋ, ka toontibo kam sɔŋda", "visualeditor-welcomedialog-content-thanks": "A kpaŋ amaŋa ni a ni che ka dunia zaa tooi baŋ yɛla pam maa", "visualeditor-welcomedialog-switch": "Taɣi chaŋ edita shee", - "visualeditor-welcomedialog-switch-ve": "Taɣi chaŋ lihibu edita shee", - "visualeditor-welcomedialog-title": "{{GENDER:$1|Welcome}} to $2" + "visualeditor-welcomedialog-switch-ve": "Taɣi chaŋ lihibu edita shee" } diff --git a/i18n/ve-wmf/de-formal.json b/i18n/ve-wmf/de-formal.json deleted file mode 100644 index a616341049..0000000000 --- a/i18n/ve-wmf/de-formal.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "@metadata": { - "authors": [ - "Hwboehm" - ] - }, - "visualeditor-welcomedialog-content-thanks": "Damit helfen Sie, das menschliche Wissen allen zugänglich zu machen!" -} diff --git a/i18n/ve-wmf/de.json b/i18n/ve-wmf/de.json index 19155ef4d9..733965dc66 100644 --- a/i18n/ve-wmf/de.json +++ b/i18n/ve-wmf/de.json @@ -10,6 +10,7 @@ "Kghbln", "Kurt Jansson", "Metalhead64", + "MoritzMT20", "Murma174", "Se4598", "Tomabrafix" @@ -17,23 +18,30 @@ }, "tag-editcheck-newcontent-description": "EditCheck geht davon aus, dass der Seite neue Inhalte hinzugefügt wurden", "tag-editcheck-newreference-description": "Der Seite wurde ein Einzelnachweis hinzugefügt", - "tag-editcheck-references-description": "EditCheck ist der Meinung, dass möglicherweise ein Einzelnachweis benötigt wird", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Bearbeitungsprüfung (Belege) aktiviert]]", + "tag-editcheck-references-description": "Die Bearbeitungsprüfung ist der Meinung, dass möglicherweise ein Einzelnachweis benötigt wird", + "tag-editcheck-references-activated": "Bearbeitungsprüfung (Belege) aktiviert", "tag-editcheck-references-activated-description": "EditCheck geht davon aus, dass möglicherweise ein Einzelnachweis erforderlich war, und die Benutzeroberfläche wurde angezeigt", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuelle Bearbeitung]]", + "tag-editcheck-references-shown": "Bearbeitungsprüfung (Belege) wurde angezeigt", + "tag-editcheck-references-shown-description": "Die Bearbeitungsprüfung ist der Meinung, dass ein Beleg erforderlich gewesen sein könnte; die Benutzeroberfläche wurde angezeigt", + "tag-editcheck-tone-description": "EditCheck hat ein potenzielles Problem mit dem Tonfall einiger hinzugefügter Inhalte festgestellt", + "tag-editcheck-tone-shown": "EditCheck (Tonfall) angezeigt", + "tag-editcheck-tone-shown-description": "EditCheck meint, dass eine Anpassung des Tonfalls in einigen Inhalten nötig gewesen wäre, und die Benutzeroberfläche wurde angezeigt", + "tag-editcheck-paste-shown": "Bearbeitungsprüfung (Einfügen) angezeigt", + "tag-editcheck-paste-shown-description": "Die Bearbeitungsprüfung bat um Klarstellung über den Inhalt, den der Benutzer eingefügt hat, der dann entweder entfernt oder als zulässig bestätigt wurde", + "tag-visualeditor": "Visuelle Bearbeitung", "tag-visualeditor-description": "Bearbeitungen, die mit dem [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuellen Editor]] ausgeführt wurden.", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuelle Bearbeitung: Überprüfung]]", + "tag-visualeditor-needcheck": "Visuelle Bearbeitung: Überprüfung", "tag-visualeditor-needcheck-description": "Bearbeitungen, die mit dem [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuellen Editor]] ausgeführt wurden und bei denen es möglicherweise zu ungewollten Änderungen des Wikitexts gekommen ist.", - "tag-visualeditor-wikitext": "2017-Quelltext-Bearbeitung", + "tag-visualeditor-wikitext": "Quelltext-Bearbeitung 2017", "tag-visualeditor-wikitext-description": "Bearbeitungen, die mit dem Wikitext-Editor 2017 ausgeführt wurden.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuelle Bearbeitung: Gewechselt]]", + "tag-visualeditor-switched": "Visuelle Bearbeitung: Gewechselt", "tag-visualeditor-switched-description": "Bearbeitungen, die mithilfe des visuellen Editors begonnen, aber nach dem Wechsel mit dem Wikitext-Editor beendet wurden.", "visualeditor-feedback-link": "Project:VisualEditor/Rückmeldungen", "visualeditor-feedback-tool": "Rückmeldungen über diese Software hinterlassen", "visualeditor-help-label": "Lies das Benutzerhandbuch", "visualeditor-welcomedialog-action": "Jetzt bearbeiten", "visualeditor-welcomedialog-content": "Jeder kann hier mitarbeiten und Artikel verbessern.", - "visualeditor-welcomedialog-content-thanks": "Damit hilfst du, das menschliche Wissen allen zugänglich zu machen!", + "visualeditor-welcomedialog-content-thanks": "Damit {{#FORMAL:hilfst du|helfen Sie}}, das menschliche Wissen allen zugänglich zu machen!", "visualeditor-welcomedialog-switch": "Zum Quelltext-Editor", "visualeditor-welcomedialog-switch-ve": "Zum visuellen Editor wechseln", "visualeditor-welcomedialog-title": "{{GENDER:$1|Willkommen}} bei $2" diff --git a/i18n/ve-wmf/din.json b/i18n/ve-wmf/din.json index 17f83f30a5..fcf7212531 100644 --- a/i18n/ve-wmf/din.json +++ b/i18n/ve-wmf/din.json @@ -4,5 +4,5 @@ "Dinkawiki" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|cokic däi-yic edit]]" + "tag-visualeditor": "cokic däi-yic edit" } diff --git a/i18n/ve-wmf/diq.json b/i18n/ve-wmf/diq.json index 6a3b8c8b3c..12948d3bff 100644 --- a/i18n/ve-wmf/diq.json +++ b/i18n/ve-wmf/diq.json @@ -13,13 +13,13 @@ "Se4598" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vurnayışo asaye]]", + "tag-visualeditor": "Vurnayışo asaye", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vurnayışo asaye]] ra vurnayış bıkerê", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vurnayışo Asaye: Raştkerdış]]", + "tag-visualeditor-needcheck": "Vurnayışo Asaye: Raştkerdış", "tag-visualeditor-needcheck-description": "Sistem [[{{MediaWiki:visualeditor-descriptionpagelink}}|vurnayışê asayi]] ya nêşenê ke timar kerê se, lakin çıma vurnayışi ra normal editore ya ma tesbit kerdo ke şıma vurnayış kerd o.", "tag-visualeditor-wikitext": "[[Wikipedia:2017 vırnayışê çımey|2017 vırnayışê çımey]]", "tag-visualeditor-wikitext-description": "2017 vurnayoğê wikimetiniya vurnayışi bıkarnê", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vurnayışo Asaye: Vurriyayo]]", + "tag-visualeditor-switched": "Vurnayışo Asaye: Vurriyayo", "tag-visualeditor-switched-description": "Karberi \"Vurnayışo asaye\" ya vurnayışi kerd, dıma ravêrd çıme vurnayışi.", "visualeditor-feedback-link": "Project:Vurnayoğo vênıte/Peyderıştış", "visualeditor-feedback-tool": "Heqa nê nustekeni peyd rışte bırış", diff --git a/i18n/ve-wmf/dsb.json b/i18n/ve-wmf/dsb.json index 52e58152a7..a1314f473e 100644 --- a/i18n/ve-wmf/dsb.json +++ b/i18n/ve-wmf/dsb.json @@ -4,11 +4,11 @@ "Michawiki" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Z pomocu [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditora]] wobźěłany", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Pśeglědanje]]", + "tag-visualeditor-needcheck": "VisualEditor: Pśeglědanje", "tag-visualeditor-needcheck-description": "Změna, kótaraž jo se z pomocu [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]a pśewjadła, źož system jo snaź wikitekst namakał, kótaryž wopśimujo mimowólne změny.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Pśešaltowany]]", + "tag-visualeditor-switched": "VisualEditor: Pśešaltowany", "tag-visualeditor-switched-description": "Wužywaŕ jo zachopił, z pomocu VisualEditora wobźěłowaś a jo pón k wikitekstowemu editoroju pśejšeł.", "visualeditor-feedback-link": "Project:VisualEditor/Komentary", "visualeditor-feedback-tool": "Komentar zawóstajiś", diff --git a/i18n/ve-wmf/dty.json b/i18n/ve-wmf/dty.json index 2890905658..82b24b7dd1 100644 --- a/i18n/ve-wmf/dty.json +++ b/i18n/ve-wmf/dty.json @@ -5,5 +5,5 @@ "हिमाल सुबेदी" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादक]]" + "tag-visualeditor": "दृश्य सम्पादक" } diff --git a/i18n/ve-wmf/el.json b/i18n/ve-wmf/el.json index b28da47be4..8d72d2ea37 100644 --- a/i18n/ve-wmf/el.json +++ b/i18n/ve-wmf/el.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Astralnet", "DesVaMan", "Dipa1965", @@ -19,13 +18,13 @@ "tag-editcheck-newcontent-description": "Το EditCheck πιστεύει ότι προστέθηκε νέο περιεχόμενο στη σελίδα", "tag-editcheck-newreference-description": "Προστέθηκε παραπομπή στη σελίδα", "tag-editcheck-references-description": "To EditCheck θεωρεί ότι μπορεί να υπάρχει ανάγκη για προσθήκη παραπομπής σε αυτήν την τροποποίηση", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Οπτική επεξεργασία]]", + "tag-visualeditor": "Οπτική επεξεργασία", "tag-visualeditor-description": "Επεξεργασία που έγινε με χρήση του [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Οπτική επεξεργασία: Έλεγχος]]", + "tag-visualeditor-needcheck": "Οπτική επεξεργασία: Έλεγχος", "tag-visualeditor-needcheck-description": "Επεξεργασία που έγινε μέσω του [[{{MediaWiki:visualeditor-descriptionpagelink}}|οπτικού επεξεργαστή]], όπου το σύστημα ανίχνευσε πιθανές μη ηθελημένες αλλαγές στον κώδικα wiki.", "tag-visualeditor-wikitext": "επεξεργασία κώδικα 2017", "tag-visualeditor-wikitext-description": "Η επεξεργασία έγινε χρησιμοποιώντας τον επεξεργαστή κώδικα wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Οπτική επεξεργασία: Άλλαξε]]", + "tag-visualeditor-switched": "Οπτική επεξεργασία: Άλλαξε", "tag-visualeditor-switched-description": "Ο χρήστης άρχισε να επεξεργάζεται χρησιμοποιώντας τον οπτικό επεξεργαστή και στη συνέχεια άλλαξε σε επεξεργαστή κώδικα wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Ανατροφοδότηση", "visualeditor-feedback-tool": "Αφήστε σχόλια σχετικά με αυτό το λογισμικό", diff --git a/i18n/ve-wmf/eml.json b/i18n/ve-wmf/eml.json index c878789b60..c41538bddd 100644 --- a/i18n/ve-wmf/eml.json +++ b/i18n/ve-wmf/eml.json @@ -5,11 +5,11 @@ "Lévi" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|EditōrVisuèl]]", + "tag-visualeditor": "EditōrVisuèl", "tag-visualeditor-description": "Cambiamèint fât cun l' [[{{MediaWiki:visualeditor-descriptionpagelink}}|EditōrVisuèl]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|EditōrVisuèl: da controlêr]]", + "tag-visualeditor-needcheck": "EditōrVisuèl: da controlêr", "tag-visualeditor-needcheck-description": "Mudéfichi fâti cun l' [[{{MediaWiki:visualeditor-descriptionpagelink}}|EditōrVisuèl]], in dóv' al sistēma l'à vést dal mudéfichi, fōrsi mía vrudi, fâti 'nd al 'wikitex'.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|EditōrVisuèl: cambiê]]", + "tag-visualeditor-switched": "EditōrVisuèl: cambiê", "tag-visualeditor-switched-description": "'L utèint 'l ìva cumincê a scrìver c'n al VisualEditor pò 'l è pasê a scrìver cun 'l editōr wikitext.", "visualeditor-feedback-link": "Project:VisualEditor/I cumèint", "visualeditor-feedback-tool": " Dì quèl te pèins in sìm'a 'l nōv sistēma", diff --git a/i18n/ve-wmf/en.json b/i18n/ve-wmf/en.json index 0479455427..e697b93202 100644 --- a/i18n/ve-wmf/en.json +++ b/i18n/ve-wmf/en.json @@ -16,23 +16,38 @@ "Amir E. Aharoni" ] }, - "editcheck-falsepositives-link": "mediawikiwiki:Special:MyLanguage/Edit check/False positives", "tag-editcheck-newcontent": "-", "tag-editcheck-newcontent-description": "EditCheck thinks new content was added to the page", "tag-editcheck-newreference": "-", "tag-editcheck-newreference-description": "A reference was added to the page", "tag-editcheck-references": "-", "tag-editcheck-references-description": "EditCheck thinks a reference might have been needed", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (references) activated]]", + "tag-editcheck-references-activated": "Edit Check (references) activated", "tag-editcheck-references-activated-description": "EditCheck thinks a reference might have been needed, and the UI was shown", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit]]", + "tag-editcheck-references-activated-helppage": "mediawikiwiki:Special:MyLanguage/Edit check/False positives", + "tag-editcheck-references-shown": "Edit Check (references) shown", + "tag-editcheck-references-shown-description": "EditCheck thinks a reference might have been needed, and the UI was shown", + "tag-editcheck-references-shown-helppage": "mediawikiwiki:Special:MyLanguage/Edit check/False positives", + "tag-editcheck-tone": "-", + "tag-editcheck-tone-description": "EditCheck detected a potential issue with the tone of some added content", + "tag-editcheck-tone-shown": "Edit Check (tone) shown", + "tag-editcheck-tone-shown-description": "EditCheck thinks an adjustment to the tone in some content might have been needed, and the UI was shown", + "tag-editcheck-tone-shown-helppage": "mediawikiwiki:Special:MyLanguage/Help:Edit_check#Tone_check", + "tag-editcheck-paste-shown": "Edit Check (paste) shown", + "tag-editcheck-paste-shown-description": "EditCheck asked for clarification about content the editor pasted, which was then either removed or affirmed to be permissible", + "tag-editcheck-paste-shown-helppage": "mediawikiwiki:Special:MyLanguage/Help:Edit_check#Paste_check", + "tag-visualeditor": "Visual edit", "tag-visualeditor-description": "Edit made using the [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-helppage": "{{MediaWiki:visualeditor-descriptionpagelink}}", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-needcheck-description": "Edit made using the [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] where the system detected the wikitext possibly having unintended changes.", + "tag-visualeditor-needcheck-helppage": "{{MediaWiki:visualeditor-descriptionpagelink}}", "tag-visualeditor-wikitext": "2017 source edit", "tag-visualeditor-wikitext-description": "Edit made using the 2017 wikitext editor", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Switched]]", + "tag-visualeditor-wikitext-helppage": "mediawikiwiki:Special:MyLanguage/2017 wikitext editor", + "tag-visualeditor-switched": "Visual edit: Switched", "tag-visualeditor-switched-description": "User started to edit using the visual editor, then changed to the wikitext editor.", + "tag-visualeditor-switched-helppage": "{{MediaWiki:visualeditor-descriptionpagelink}}", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-source-link": "{{int:visualeditor-feedback-link}}", "visualeditor-feedback-tool": "Leave feedback about this software", diff --git a/i18n/ve-wmf/eo.json b/i18n/ve-wmf/eo.json index 9f4c5ea05a..150b89f8ff 100644 --- a/i18n/ve-wmf/eo.json +++ b/i18n/ve-wmf/eo.json @@ -15,15 +15,15 @@ "tag-editcheck-newcontent-description": "Redakto-kontrolo kredas, ke nova enhavo estis aldonita al la paĝo", "tag-editcheck-newreference-description": "Referenco estis aldonita al la paĝo", "tag-editcheck-references-description": "Redakto-kontrolo opinias, ke referenco eble estis bezonata", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Redakto-kontrolo (referencoj) aktivigita]]", + "tag-editcheck-references-activated": "Redakto-kontrolo (referencoj) aktivigita", "tag-editcheck-references-activated-description": "Redakto-kontrolo kredas, ke referenco eble estis bezonata, kaj la UI estis montrita", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vida redakto]]", + "tag-visualeditor": "Vida redakto", "tag-visualeditor-description": "Redakto farita per [[{{MediaWiki:visualeditor-descriptionpagelink}}|vida redaktilo]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vida redaktilo:Kontroli]]", + "tag-visualeditor-needcheck": "vida redaktilo:Kontroli", "tag-visualeditor-needcheck-description": "Redakto farita per [[{{MediaWiki:visualeditor-descriptionpagelink}}|vida redaktilo]] kie sistemo detektis eblajn neintencajn ŝanĝojn de vikiteksto.", "tag-visualeditor-wikitext": "redakto de fonto je 2017", "tag-visualeditor-wikitext-description": "Redakto farita per la vikiteksta redaktilo de 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vida redaktilo: Komutita]]", + "tag-visualeditor-switched": "vida redaktilo: Komutita", "tag-visualeditor-switched-description": "Uzanto komenci redakti uzante la vidan redaktilon kaj poste ŝanĝis al vikiteksta redaktilo.", "visualeditor-feedback-link": "Project:VidRedaktilo/Rimarkoj", "visualeditor-feedback-tool": "Provizu rimarkojn pri tiu ĉi programo", diff --git a/i18n/ve-wmf/es.json b/i18n/ve-wmf/es.json index e34fdc0de7..01c37d2c1f 100644 --- a/i18n/ve-wmf/es.json +++ b/i18n/ve-wmf/es.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Armando-Martin", "Aruizdr", "Benfutbol10", @@ -10,24 +9,34 @@ "Fitoschido", "Imre", "Invadinado", + "JaimeDes", "Jdforrester", "Jduranboger", "Macofe", "PoLuX124", "Ralgis", + "Teen12", "Thehelpfulone", "Themasterriot", + "Virum Mundi", "YoViajo", "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual]]", + "tag-editcheck-newcontent-description": "EditCheck cree que se ha añadido nuevo contenido a la página", + "tag-editcheck-newreference-description": "Se agregó una referencia a la página.", + "tag-editcheck-references-description": "EditCheck cree que podría haber faltado una referencia", + "tag-editcheck-references-activated": "Comprobación de ediciones (referencias) activada", + "tag-editcheck-references-activated-description": "EditCheck cree que una referencia podría ser necesaria, se ha mostrado la interfaz de usuario", + "tag-editcheck-references-shown": "Comprobación de ediciones (referencias) mostrada", + "tag-editcheck-tone-description": "EditCheck ha detectado un posible problema con el tono del contenido añadido", + "tag-visualeditor": "Edición visual", "tag-visualeditor-description": "Modificación hecha con el [[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual: comprobar]]", + "tag-visualeditor-needcheck": "Edición visual: comprobar", "tag-visualeditor-needcheck-description": "Edición realizada con el [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] en la que el sistema detectó posibles cambios no intencionales en el wikitexto.", "tag-visualeditor-wikitext": "editor de código 2017", "tag-visualeditor-wikitext-description": "Modificación realizada con el editor de código 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual: cambiado]]", + "tag-visualeditor-switched": "Edición visual: cambiado", "tag-visualeditor-switched-description": "El usuario comenzó a editar utilizando el editor visual y luego cambió al editor de wikitexto.", "visualeditor-feedback-link": "Project:Editor visual/Comentarios", "visualeditor-feedback-tool": "Deja tus comentarios acerca de este software", diff --git a/i18n/ve-wmf/et.json b/i18n/ve-wmf/et.json index 2ba034483e..21d9fcce76 100644 --- a/i18n/ve-wmf/et.json +++ b/i18n/ve-wmf/et.json @@ -10,15 +10,22 @@ "tag-editcheck-newcontent-description": "EditCheck arvab, et leheküljele lisati uut sisu", "tag-editcheck-newreference-description": "Leheküljele lisati viide", "tag-editcheck-references-description": "EditCheck arvab, et vaja võis olla viidet", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Muudatuse kontroll (viited) aktiveeritud]]", + "tag-editcheck-references-activated": "Muudatuse kontroll (viited) aktiveeritud", "tag-editcheck-references-activated-description": "EditCheck arvab, et vaja võis olla viidet ning näidati selle kasutajaliidest.", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalmuudatus]]", + "tag-editcheck-references-shown": "Muudatuse kontroll (viited) näidatud", + "tag-editcheck-references-shown-description": "EditCheck arvab, et vaja võis olla viidet ning näidati selle kasutajaliidest.", + "tag-editcheck-tone-description": "EditCheck tuvastas, et lisatud sisu juures võib olla toon osaliselt probleemne", + "tag-editcheck-tone-shown": "Muudatuse kontroll (toon) näidatud", + "tag-editcheck-tone-shown-description": "EditCheck arvab, et osa sisu toon võis vajada kohandamist ning näidati selle kasutajaliidest", + "tag-editcheck-paste-shown": "Muudatuse kontroll (kleepimine) näidatud", + "tag-editcheck-paste-shown-description": "EditCheck küsis selgitust kleebitud sisu kohta ning toimetaja eemaldas selle või kinnitas, et selle kasutamine on lubatud", + "tag-visualeditor": "Visuaalmuudatus", "tag-visualeditor-description": "Muudatus tehtud [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuaaltoimetiga]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalmuudatus: kontrollida]]", + "tag-visualeditor-needcheck": "Visuaalmuudatus: kontrollida", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaaltoimetiga]] tehtud muudatus, mille tõttu võis vikitekst muutuda ettekavatsemata viisil.", "tag-visualeditor-wikitext": "Lähteteksti muudatus (2017)", "tag-visualeditor-wikitext-description": "Muudatus tehti lähteteksti toimeti 2017. aasta versiooniga.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalmuudatus: ümberlülitus]]", + "tag-visualeditor-switched": "Visuaalmuudatus: ümberlülitus", "tag-visualeditor-switched-description": "Kasutaja alustas redigeerimist visuaaltoimetiga, aga läks seejärel üle vikiteksti toimetile.", "visualeditor-feedback-link": "Project:VisualEditor/Tagasiside", "visualeditor-feedback-tool": "Anna selle tarkvara kohta tagasisidet", diff --git a/i18n/ve-wmf/eu.json b/i18n/ve-wmf/eu.json index b9a7ea8841..45166c37de 100644 --- a/i18n/ve-wmf/eu.json +++ b/i18n/ve-wmf/eu.json @@ -9,13 +9,13 @@ "Xabier Armendaritz" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Ikusizko edizioa]]", + "tag-visualeditor": "Ikusizko edizioa", "tag-visualeditor-description": "Edizio hau egiteko, [[{{MediaWiki:visualeditor-descriptionpagelink}}|ikusizko editorea]] erabili da", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Ikusizko editorea: egiaztatzea]]", + "tag-visualeditor-needcheck": "Ikusizko editorea: egiaztatzea", "tag-visualeditor-needcheck-description": "Edizio hau egiteko, [[{{MediaWiki:visualeditor-descriptionpagelink}}|ikusizko editorea]] erabili da. Sistemak detektatu du edizio honetan wikitestuan egindako zenbait aldaketa beharbada nahi gabe egin direla.", "tag-visualeditor-wikitext": "2017 wikitestu editorearekin", "tag-visualeditor-wikitext-description": "2017 wikitestu editorearekin egindako aldaketa", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Ikusizko Editorea: kommutatua]]", + "tag-visualeditor-switched": "Ikusizko Editorea: kommutatua", "tag-visualeditor-switched-description": "Lankidea Ikusizko Editorearekin hasi eta gero wikitestu editorera aldatua.", "visualeditor-feedback-link": "Project:Ikusizko editorea/Oharrak", "visualeditor-feedback-tool": "Oharrak", diff --git a/i18n/ve-wmf/ext.json b/i18n/ve-wmf/ext.json index 87f336c8d8..47a5fd4fd7 100644 --- a/i18n/ve-wmf/ext.json +++ b/i18n/ve-wmf/ext.json @@ -1,8 +1,9 @@ { "@metadata": { "authors": [ - "Crucifunked" + "Crucifunked", + "HackerPunki" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Eición visual]]" + "tag-visualeditor": "Adición visual" } diff --git a/i18n/ve-wmf/fa.json b/i18n/ve-wmf/fa.json index 3f44dadbcb..1554afe768 100644 --- a/i18n/ve-wmf/fa.json +++ b/i18n/ve-wmf/fa.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Ahmad252", - "Amire80", "Armin1392", "Beginneruser", "Dalba", @@ -27,15 +26,22 @@ "tag-editcheck-newcontent-description": "بررسی ویرایش فکر می‌کند که محتوای جدیدی به صفحه افزوده شده است", "tag-editcheck-newreference-description": "ارجاعی به صفحه افزوده شد", "tag-editcheck-references-description": "بررسی ویرایش فکر می‌کند که ممکن است به ارجاع نیاز بوده باشد", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|بررسی ویرایش (ارجاعات) فعال شد]]", + "tag-editcheck-references-activated": "بررسی ویرایش (ارجاعات) فعال شد", "tag-editcheck-references-activated-description": "بررسی ویرایش فکر می‌کند که ممکن است به ارجاع نیاز باشد و رابط کاربری آن نمایش یافته است", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویرایشگر دیداری]]", + "tag-editcheck-references-shown": "بررسی ویرایش (یادکردها) نمایش یافت", + "tag-editcheck-references-shown-description": "بررسی ویرایش فکر می‌کند که ممکن است به یک یادکرد نیاز بوده باشد، و رابط کاربری نمایش داده شد", + "tag-editcheck-tone-description": "بررسی ویرایش یک مشکل احتمالی را در لحن برخی محتوای افزوده‌شده شناسایی کرد", + "tag-editcheck-tone-shown": "بررسی ویرایش (لحن) نمایش یافت", + "tag-editcheck-tone-shown-description": "بررسی ویرایش فکر می‌کند که ممکن است به اعمال تعدیلی در لحن برخی محتوای افزوده‌شده نیاز بوده باشد، و رابط کاربری نمایش یافت", + "tag-editcheck-paste-shown": "بررسی ویرایش (چسباندن) نمایش یافت", + "tag-editcheck-paste-shown-description": "بررسی ویرایش برای شفاف‌سازی دربارهٔ محتوای چسبانده‌شده توسط ویرایشگر درخواست کرده است، که سپس یا حذف شد یا مجاز بودن آن تأیید شد", + "tag-visualeditor": "ویرایش دیداری", "tag-visualeditor-description": "ویرایش توسط [[{{MediaWiki:visualeditor-descriptionpagelink}}|ویرایشگر دیداری]] انجام شده است.", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویرایشگر دیداری: بررسی]]", + "tag-visualeditor-needcheck": "ویرایشگر دیداری: بررسی", "tag-visualeditor-needcheck-description": "ویرایش انجام‌شده با [[{{MediaWiki:visualeditor-descriptionpagelink}}|ویرایشگر دیداری]] که در آن سامانۀ احتمال وقوع تغییرات ناخواسته در ویکی‌متن را شناسایی کرد.", "tag-visualeditor-wikitext": "ویرایش مبدأ ۲۰۱۷", "tag-visualeditor-wikitext-description": "ویرایش توسط ویرایشگر متنی نسخهٔ ۲۰۱۷", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویرایشگر دیداری: به ویرایشگر منبع تغییر داده شده]]", + "tag-visualeditor-switched": "ویرایشگر دیداری: به ویرایشگر منبع تغییر داده شده", "tag-visualeditor-switched-description": "کاربر شروع به ویرایش با استفاده از ویرایشگر دیداری کرد، سپس به ویرایشگر متن ویکی تغییر داده شد.", "visualeditor-feedback-link": "Project:ویرایشگر دیداری/بازخورد", "visualeditor-feedback-tool": "گذاشتن بازخورد در مورد این نرم‌افزار", diff --git a/i18n/ve-wmf/ff.json b/i18n/ve-wmf/ff.json index cd2ded663d..2615b7fa21 100644 --- a/i18n/ve-wmf/ff.json +++ b/i18n/ve-wmf/ff.json @@ -5,5 +5,5 @@ "Ibrahima Malal Sarr" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Taƴtorde Jiyol]]" + "tag-visualeditor": "Taƴtorde Jiyol" } diff --git a/i18n/ve-wmf/fi.json b/i18n/ve-wmf/fi.json index 477ef7c2dc..6b11fe7e7a 100644 --- a/i18n/ve-wmf/fi.json +++ b/i18n/ve-wmf/fi.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Alluk.", - "Amire80", "Beluga", "Crt", "Harriv", @@ -22,15 +21,22 @@ "tag-editcheck-newcontent-description": "Muokkaustarkistimen mukaan uutta sisältöä lisättiin sivulle", "tag-editcheck-newreference-description": "Lähde lisättiin tälle sivulle", "tag-editcheck-references-description": "Muokkaustarkistimen mukaan lähde olisi ehkä ollut tarpeen", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Muokkaustarkistin (lähteet) aktivoitu]]", + "tag-editcheck-references-activated": "Muokkaustarkistin (lähteet) aktivoitu", "tag-editcheck-references-activated-description": "Muokkaustarkistimen mukaan lähde olisi ehkä ollut tarpeen, ja käyttöliittymä näytettiin", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalinen muokkaus]]", + "tag-editcheck-references-shown": "Muokkaustarkistin (lähteet) näytetty", + "tag-editcheck-references-shown-description": "Muokkaustarkistimen mukaan lähde olisi ehkä ollut tarpeen, ja käyttöliittymä näytettiin", + "tag-editcheck-tone-description": "EditCheck havaitsi mahdollisen ongelman lisätyn sisällön sävyssä.", + "tag-editcheck-tone-shown": "Muokkaustarkistin (sävy) näytetty", + "tag-editcheck-tone-shown-description": "Muokkaustarkistimen mukaan sisällön sävyä olisi ehkä ollut tarpeen kohentaa, ja käyttöliittymä näytettiin", + "tag-editcheck-paste-shown": "Muokkaustarkistin (liittäminen) näytetty", + "tag-editcheck-paste-shown-description": "Muokkaustarkistin kysyi selvennystä muokkaajan liittämästä sisällöstä. Sisältö joko postettiin tai vahvistettiin sallituksi", + "tag-visualeditor": "Visuaalinen muokkaus", "tag-visualeditor-description": "Muutos tehtiin [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuaalisella muokkaimella]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalinen muokkaus: Tarkista]]", + "tag-visualeditor-needcheck": "Visuaalinen muokkaus: Tarkista", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalisella muokkaimella]] tehty muokkaus, jossa järjestelmä havaitsi wikitekstissä mahdollisesti olevan tahattomia muutoksia.", "tag-visualeditor-wikitext": "wikitekstimuokkaus 2017", "tag-visualeditor-wikitext-description": "Vuoden 2017 wikitekstimuokkaimella tehty muokkaus", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalinen muokkaus: vaihdettu]]", + "tag-visualeditor-switched": "Visuaalinen muokkaus: vaihdettu", "tag-visualeditor-switched-description": "Käyttäjä aloitti muokkaamisen visuaalisella muokkaimella; sen jälkeen vaihtoi wikitekstin muokkaustilaan.", "visualeditor-feedback-link": "Project:Visuaalinen muokkain/Palaute", "visualeditor-feedback-tool": "Anna palautetta tästä ohjelmistosta", diff --git a/i18n/ve-wmf/fit.json b/i18n/ve-wmf/fit.json index daeb5b39db..7ac5770f09 100644 --- a/i18n/ve-wmf/fit.json +++ b/i18n/ve-wmf/fit.json @@ -4,5 +4,5 @@ "Pyscowicz" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalinen mookkaus]]" + "tag-visualeditor": "Visuaalinen mookkaus" } diff --git a/i18n/ve-wmf/fo.json b/i18n/ve-wmf/fo.json index d6fd5f739e..e905ba5c6b 100644 --- a/i18n/ve-wmf/fo.json +++ b/i18n/ve-wmf/fo.json @@ -1,14 +1,13 @@ { "@metadata": { "authors": [ - "Amire80", "EileenSanda", "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Rætting sum er gjørd við [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Kanna eftir]]", + "tag-visualeditor-needcheck": "VisualEditor: Kanna eftir", "tag-visualeditor-needcheck-description": "Rættin ið varð gjørd við at brúka [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] har ið skipanin hevur funnið fram til at wikiteksturin kann hava ótilætlaðar broytingar.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Gev afturmelding", diff --git a/i18n/ve-wmf/fon.json b/i18n/ve-wmf/fon.json index 1eece4d92e..df94012ff9 100644 --- a/i18n/ve-wmf/fon.json +++ b/i18n/ve-wmf/fon.json @@ -4,5 +4,5 @@ "Mahuton" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Nukun mɔ bo wlan]]" + "tag-visualeditor": "Nukun mɔ bo wlan" } diff --git a/i18n/ve-wmf/fr.json b/i18n/ve-wmf/fr.json index cd22949091..cf0db4a85c 100644 --- a/i18n/ve-wmf/fr.json +++ b/i18n/ve-wmf/fr.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Automatik", "Benoit Rochon", "BlueCamille", @@ -10,10 +9,13 @@ "Crochet.david", "DavidL", "Dereckson", + "Derugon", + "Escargot bleu", "Framafan", "Gomoko", "Guillom", "Hello71", + "JLTRY", "Jdforrester", "Jean-Frédéric", "Linedwell", @@ -37,21 +39,30 @@ "Verdy p", "Wladek92", "Wyz", - "아라" + "아라", + "Sik666", + "SleaY" ] }, "tag-editcheck-newcontent-description": "EditCheck pense que du nouveau contenu a été ajouté à la page", "tag-editcheck-newreference-description": "Une référence a été ajoutée à la page", "tag-editcheck-references-description": "EditCheck pense qu’une référence peut être nécessaire", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Vérification de modification (références) activé]]", + "tag-editcheck-references-activated": "Vérification de modification (références) activé", "tag-editcheck-references-activated-description": "EditCheck pense qu’une référence peut être nécessaire, et l’IHM a été affichée", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Éditeur visuel]]", + "tag-editcheck-references-shown": "Vérification de modification (références) affichées", + "tag-editcheck-references-shown-description": "EditCheck pense qu’une référence peut être nécessaire, et l’IHM a été affichée", + "tag-editcheck-tone-description": "EditCheck a détecté un problème potentiel avec le ton de certains contenus ajoutés", + "tag-editcheck-tone-shown": "Vérification de modification (tonalité) affichée", + "tag-editcheck-tone-shown-description": "EditCheck pense qu'un ajustement du ton de certains contenus aurait pu être nécessaire, et l'interface utilisateur a été affichée", + "tag-editcheck-paste-shown": "Vérification des modifications (copier-coller) affichée", + "tag-editcheck-paste-shown-description": "La vérification des modifications a demandé des éclaircissements sur le contenu collé par le contributeur, que celui-ci a supprimé ou jugé comme étant autorisé.", + "tag-visualeditor": "Éditeur visuel", "tag-visualeditor-description": "Modification effectuée avec l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|éditeur visuel]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Éditeur visuel : à vérifier]]", + "tag-visualeditor-needcheck": "Éditeur visuel : à vérifier", "tag-visualeditor-needcheck-description": "Modification faite en utilisant l’[[{{MediaWiki:visualeditor-descriptionpagelink}}|éditeur visuel]], dans laquelle le système a détecté que le wikicode contient peut-être des modifications inattendues.", "tag-visualeditor-wikitext": "Éditeur de wikicode 2017", "tag-visualeditor-wikitext-description": "Modification effectuée en utilisant l’éditeur de wikicode 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Éditeur visuel : basculé]]", + "tag-visualeditor-switched": "Éditeur visuel : basculé", "tag-visualeditor-switched-description": "L’utilisateur a commencé à modifier en utilisant l’éditeur visuel puis est passé sur l’éditeur de wikicode.", "visualeditor-feedback-link": "Project:ÉditeurVisuel/Avis", "visualeditor-feedback-tool": "Laisser un avis à propos de ce logiciel", @@ -61,5 +72,5 @@ "visualeditor-welcomedialog-content-thanks": "Merci pour votre aide afin que le monde fasse plus de découvertes !", "visualeditor-welcomedialog-switch": "Basculer vers l’éditeur de wikicode", "visualeditor-welcomedialog-switch-ve": "Basculer vers l’éditeur visuel", - "visualeditor-welcomedialog-title": "{{GENDER:$1|}}Bienvenue sur $2" + "visualeditor-welcomedialog-title": "{{GENDER:$1|Bienvenue}} sur $2" } diff --git a/i18n/ve-wmf/frp.json b/i18n/ve-wmf/frp.json index 513b1aefc0..4734bd5df9 100644 --- a/i18n/ve-wmf/frp.json +++ b/i18n/ve-wmf/frp.json @@ -4,6 +4,6 @@ "ChrisPtDe" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Èditor visuâl]]", + "tag-visualeditor": "Èditor visuâl", "visualeditor-feedback-tool": "Balyér voutron avis" } diff --git a/i18n/ve-wmf/frr.json b/i18n/ve-wmf/frr.json index c143fd72bf..df76b417a6 100644 --- a/i18n/ve-wmf/frr.json +++ b/i18n/ve-wmf/frr.json @@ -5,11 +5,11 @@ "Murma174" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Bewerkin mä VisualEditor]]", + "tag-visualeditor": "Bewerkin mä VisualEditor", "tag-visualeditor-description": "Bewerket mä [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Preew]]", + "tag-visualeditor-needcheck": "VisualEditor: Preew", "tag-visualeditor-needcheck-description": "Mä [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] bewerket, an det süsteem san ferlicht ünferwaans feranrangen üübfäälen.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Waksel]]", + "tag-visualeditor-switched": "VisualEditor: Waksel", "tag-visualeditor-switched-description": "Mä VisualEditor begand an do mä di kweltekst widjer werket.", "visualeditor-feedback-link": "Project:VisualEditor/Komentaaren", "visualeditor-feedback-tool": "Komentaar skriiw", diff --git a/i18n/ve-wmf/frs.json b/i18n/ve-wmf/frs.json new file mode 100644 index 0000000000..9ca2d9fdf1 --- /dev/null +++ b/i18n/ve-wmf/frs.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "WikiFayo95" + ] + }, + "tag-visualeditor": "Wisuäel beaarbaiden" +} diff --git a/i18n/ve-wmf/fur.json b/i18n/ve-wmf/fur.json index 1ad7fc4400..b9fd663c73 100644 --- a/i18n/ve-wmf/fur.json +++ b/i18n/ve-wmf/fur.json @@ -5,9 +5,9 @@ "Tocaibon" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Edit made using the [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: controlâ]]", + "tag-visualeditor-needcheck": "VisualEditor: controlâ", "tag-visualeditor-needcheck-description": "Edit made using the [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] dulâ che il sisteme al à cjatât des modifichis forsit no voludis intal wikitest.", "visualeditor-feedback-link": "Project:VisualEditor/Coments", "visualeditor-feedback-tool": "Lasse un coment", diff --git a/i18n/ve-wmf/fy.json b/i18n/ve-wmf/fy.json index d86c428ca6..9e0d7ce4dd 100644 --- a/i18n/ve-wmf/fy.json +++ b/i18n/ve-wmf/fy.json @@ -1,18 +1,17 @@ { "@metadata": { "authors": [ - "Amire80", "Ieneach fan 'e Esk", "PiefPafPier" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Fisuële bewurking]]", + "tag-visualeditor": "Fisuële bewurking", "tag-visualeditor-description": "Bewurking dien mei de [[{{MediaWiki:visualeditor-descriptionpagelink}}|fisuële tekstbewurker]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Fisuële bewurking: Neisjen]]", + "tag-visualeditor-needcheck": "Fisuële bewurking: Neisjen", "tag-visualeditor-needcheck-description": "Bewurking dien mei de [[{{MediaWiki:visualeditor-descriptionpagelink}}|fisuële tekstbewurker]], wêrby't it systeem mooglik net-bedoelde feroarings yn 'e wikitekst ûntdutsen hat.", "tag-visualeditor-wikitext": "Boarnebewurker 2017", "tag-visualeditor-wikitext-description": "Bewurking dien mei de wikitekstbewurker 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Fisuële bewurking: Omskeakele]]", + "tag-visualeditor-switched": "Fisuële bewurking: Omskeakele", "tag-visualeditor-switched-description": "Meidogger begûn it bewurkjen mei de fisuële tekstbewurker, en gong dêrnei oer op de wikitekstbewurker.", "visualeditor-feedback-link": "Project:Fisuële tekstbewurker/Weromkeppeling", "visualeditor-feedback-tool": "Weromkeppelje oer dit programma", diff --git a/i18n/ve-wmf/gcr.json b/i18n/ve-wmf/gcr.json index 2fa2db7d7c..9ee5886c16 100644 --- a/i18n/ve-wmf/gcr.json +++ b/i18n/ve-wmf/gcr.json @@ -4,5 +4,5 @@ "LeGuyanaisPure" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Éditò vizwèl]]" + "tag-visualeditor": "Éditò vizwèl" } diff --git a/i18n/ve-wmf/gd.json b/i18n/ve-wmf/gd.json index 0c28c9a8fd..36a6a76950 100644 --- a/i18n/ve-wmf/gd.json +++ b/i18n/ve-wmf/gd.json @@ -5,7 +5,7 @@ "GunChleoc" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Deasachadh lèirsinneach]]", + "tag-visualeditor": "Deasachadh lèirsinneach", "tag-visualeditor-description": "Chaidh a dheasachadh leis an [[{{MediaWiki:visualeditor-descriptionpagelink}}|deasaiche lèirsinneach]]", "tag-visualeditor-needcheck-description": "Chaidh a dheasachadh leis an [[{{MediaWiki:visualeditor-descriptionpagelink}}|deasaiche lèirsinneach]] agus mhothaich an siostam dha wikitext a dh'atharraicheadh nithean air dòigh nach robhar an dùil air ma dh'fhaoidte.", "visualeditor-feedback-link": "Project:Deasaiche lèirsinneach/Beachdan", diff --git a/i18n/ve-wmf/gl.json b/i18n/ve-wmf/gl.json index 86780f3f60..544de2e396 100644 --- a/i18n/ve-wmf/gl.json +++ b/i18n/ve-wmf/gl.json @@ -2,31 +2,38 @@ "@metadata": { "authors": [ "Alison", - "Amire80", "Elisardojm", "Kscanne", "Toliño", + "Xosecalvo", "아라" ] }, "tag-editcheck-newcontent-description": "EditCheck cre que se engadiu contido novo á páxina", "tag-editcheck-newreference-description": "Engadiuse unha referencia á páxina", "tag-editcheck-references-description": "EditCheck cre que cómpre unha referencia", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Verificación de modificacións (referencias) activada]]", - "tag-editcheck-references-activated-description": "EditCheck cre que podería ser necesaria unha referencia e mostrouse a interface de usuario", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edición visual]]", + "tag-editcheck-references-activated": "Verificación de modificacións (referencias) activada", + "tag-editcheck-references-activated-description": "EditCheck cre que podería ser necesaria unha referencia e mostrou a interface de usuario", + "tag-editcheck-references-shown": "Verificación de modificacións (referencias) amosada", + "tag-editcheck-references-shown-description": "EditCheck cre que podería ser necesaria unha referencia e mostrou a interface de usuario", + "tag-editcheck-tone-description": "EditCheck detectou un posible problema co ton dalgúns contidos engadidos", + "tag-editcheck-tone-shown": "Verificación de modificacións (ton) amosada", + "tag-editcheck-tone-shown-description": "EditCheck cre que podería ser necesario axustar o ton dalgúns contidos e mostrou a interface de usuario", + "tag-editcheck-paste-shown": "Verificación de modificacións (pegar) amosada", + "tag-editcheck-paste-shown-description": "EditCheck solicitou unha aclaración sobre o contido que o editor pegou e que logo foi eliminado ou confirmado como admisible", + "tag-visualeditor": "Edición visual", "tag-visualeditor-description": "Edición feita mediante o [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual: Comprobar]]", + "tag-visualeditor-needcheck": "Editor visual: Comprobar", "tag-visualeditor-needcheck-description": "Edición feita mediante o [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] na que o sistema detectou que o texto wiki posiblemente teña modificacións non intencionadas.", "tag-visualeditor-wikitext": "edición de código 2017", "tag-visualeditor-wikitext-description": "Edición feita usando o editor de texto wiki do ano 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual: Cambio]]", + "tag-visualeditor-switched": "Editor visual: Cambio", "tag-visualeditor-switched-description": "O usuario empezou editando mediante o editor visual e logo cambiou ao editor de texto wiki.", "visualeditor-feedback-link": "Project:Editor visual/Comentarios", - "visualeditor-feedback-tool": "Deixe un comentario sobre este programa", + "visualeditor-feedback-tool": "Deixa un comentario sobre este programa", "visualeditor-help-label": "Ler a guía de usuario", "visualeditor-welcomedialog-action": "Comezar a editar", - "visualeditor-welcomedialog-content": "Calquera persoa pode editar, e todas as melloras axudan.", + "visualeditor-welcomedialog-content": "Calquera persoa pode editar e todas as melloras axudan.", "visualeditor-welcomedialog-content-thanks": "Grazas por axudar á xente a descubrir e aprender cousas novas!", "visualeditor-welcomedialog-switch": "Cambiar ao editor de código", "visualeditor-welcomedialog-switch-ve": "Cambiar ao editor visual", diff --git a/i18n/ve-wmf/gld.json b/i18n/ve-wmf/gld.json index 7d81f68993..ef7a7f7ec4 100644 --- a/i18n/ve-wmf/gld.json +++ b/i18n/ve-wmf/gld.json @@ -4,5 +4,5 @@ "RFScott" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|дурумбэ ичэми дёбовори]]" + "tag-visualeditor": "дурумбэ ичэми дёбовори" } diff --git a/i18n/ve-wmf/glk.json b/i18n/ve-wmf/glk.json index 00101724db..194f5dc369 100644 --- a/i18n/ve-wmf/glk.json +++ b/i18n/ve-wmf/glk.json @@ -4,5 +4,5 @@ "شیخ" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|دئني دچينواچينگر]]" + "tag-visualeditor": "دئني دچينواچينگر" } diff --git a/i18n/ve-wmf/gom-deva.json b/i18n/ve-wmf/gom-deva.json index 1345779ed3..984f54099e 100644 --- a/i18n/ve-wmf/gom-deva.json +++ b/i18n/ve-wmf/gom-deva.json @@ -5,5 +5,5 @@ "Vaishali Parab" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृष्टी संपादन]]" + "tag-visualeditor": "दृष्टी संपादन" } diff --git a/i18n/ve-wmf/gom-latn.json b/i18n/ve-wmf/gom-latn.json index f9d9e15f0b..280f82ce64 100644 --- a/i18n/ve-wmf/gom-latn.json +++ b/i18n/ve-wmf/gom-latn.json @@ -1,16 +1,19 @@ { "@metadata": { "authors": [ + "QW90", "The Discoverer" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Dixtti sompadon]]", + "tag-visualeditor": "Dixtti sompadon", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Dixtti sompadoka]] vorvim kel'lem sompadon", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Dixtti sompadon: Topas]]", + "tag-visualeditor-needcheck": "Dixtti sompadon: Topas", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Dixtti sompadok]] vaprun kel'lem sompadon zoim pronallik wikimozkur melltta zaka tozvit korunk naslole bodol asat", "tag-visualeditor-wikitext": "2017 mull sompadon", "tag-visualeditor-wikitext-description": "2017 wikimozkur sompadoka vorvim kel'lem sompadon", "tag-visualeditor-switched-description": "Vaporpi dixtti sompadokacho vapor korun sompadon kortalo, uprant wikimozkur sompadok vaprunk laglo.", "visualeditor-welcomedialog-action": "Sompadon chalu kor", + "visualeditor-welcomedialog-switch": "Mull sompadokacher voch", + "visualeditor-welcomedialog-switch-ve": "Dixtti sompadokacher voch", "visualeditor-welcomedialog-title": "$2 -ant {{GENDER:$1|ievkar}}" } diff --git a/i18n/ve-wmf/gor.json b/i18n/ve-wmf/gor.json index 084970974a..032ea86eec 100644 --- a/i18n/ve-wmf/gor.json +++ b/i18n/ve-wmf/gor.json @@ -4,5 +4,5 @@ "Marwan Mohamad" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Suntingan visual]]" + "tag-visualeditor": "Suntingan visual" } diff --git a/i18n/ve-wmf/grc.json b/i18n/ve-wmf/grc.json index 0d8f54fd52..f954c9657e 100644 --- a/i18n/ve-wmf/grc.json +++ b/i18n/ve-wmf/grc.json @@ -5,5 +5,5 @@ "PastelKos" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Ὀπτικὴ μεταγραφή]]" + "tag-visualeditor": "Ὀπτικὴ μεταγραφή" } diff --git a/i18n/ve-wmf/gsw.json b/i18n/ve-wmf/gsw.json index d1e91ae7ee..309d77604c 100644 --- a/i18n/ve-wmf/gsw.json +++ b/i18n/ve-wmf/gsw.json @@ -6,9 +6,9 @@ "Terfili" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|visuelli Bearbeitig]]", + "tag-visualeditor": "visuelli Bearbeitig", "tag-visualeditor-description": "Gänderet mit em [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Iberpriefig]]", + "tag-visualeditor-needcheck": "VisualEditor: Iberpriefig", "tag-visualeditor-needcheck-description": "Änderig, wu mit em [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] gmacht woren isch, wu s Syschtem villicht Änderige im Wikitäxt entdeckt het, wu nit beabsichtigt gsii sin.", "visualeditor-feedback-link": "Project:VisualEditor/Ruggmäldige", "visualeditor-feedback-tool": "Ruggmäldig gäh", diff --git a/i18n/ve-wmf/gu.json b/i18n/ve-wmf/gu.json index bd1e97d09d..55bad35b1c 100644 --- a/i18n/ve-wmf/gu.json +++ b/i18n/ve-wmf/gu.json @@ -6,13 +6,13 @@ "The Discoverer" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|વિઝ્યુલ સંપાદન]]", + "tag-visualeditor": "વિઝ્યુલ સંપાદન", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|વિઝ્યુલ સંપાદક]] વડે કરેલ ફેરફાર", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|વિઝ્યુલ સંપાદક: ચકાસો]]", + "tag-visualeditor-needcheck": "વિઝ્યુલ સંપાદક: ચકાસો", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|વિઝ્યુલ સંપાદક]] દ્વારા કરેલ ફેરફાર જ્યાં સિસ્ટમે ન ધારેલા વિકિલખાણ ફેરફારો મેળવ્યા.", "tag-visualeditor-wikitext": "૨૦૧૭ સ્ત્રોત ફેરફાર", "tag-visualeditor-wikitext-description": "૨૦૧૭ના સ્ત્રોત સંપાદક વડે થયેલ ફેરફાર", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|વિઝ્યુલ સંપાદક: બદલેલ]]", + "tag-visualeditor-switched": "વિઝ્યુલ સંપાદક: બદલેલ", "tag-visualeditor-switched-description": "સભ્યે વિઝ્યુલ સંપાદક વાપરવાનું શરુ કર્યું પછી વિકિલખાણ સંપાદકમાં ગયા.", "visualeditor-feedback-link": "Project:વિઝ્યુલસંપાદક/પ્રતિભાવ", "visualeditor-feedback-tool": "આ સોફ્ટવેર વિશે પ્રતિભાવ આપો", diff --git a/i18n/ve-wmf/guc.json b/i18n/ve-wmf/guc.json index 50052bef25..40ca12eefc 100644 --- a/i18n/ve-wmf/guc.json +++ b/i18n/ve-wmf/guc.json @@ -4,5 +4,5 @@ "Leonfd1992" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|E'rajiaapülee anaatünaka]]" + "tag-visualeditor": "E'rajiaapülee anaatünaka" } diff --git a/i18n/ve-wmf/gur.json b/i18n/ve-wmf/gur.json index e90f7033b5..870ebd0130 100644 --- a/i18n/ve-wmf/gur.json +++ b/i18n/ve-wmf/gur.json @@ -8,15 +8,15 @@ "tag-editcheck-newcontent-description": "Leregere bisa la tɛ'ɛse ti yelezuo la yuum saalam mɛ pɛgerɛ la zuo.", "tag-editcheck-newreference-description": "Viisegɔ lɔgerɔ la yuum pa'ase la pɛgerɛ la puan", "tag-editcheck-references-description": "Leregere bisega te'esɛ ti viisegɔ lɔgerɔ taam ta bu'ulɛ", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (references) activated]]", + "tag-editcheck-references-activated": "Edit Check (references) activated", "tag-editcheck-references-activated-description": "Leregere limesegɔ te'ese ti viisegɔ lɔgerɔ wa'an ta'am bu'ulɛ,gee ti ba pa'ale UI", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|nyɛta demesego]]", + "tag-visualeditor": "nyɛta demesego", "tag-visualeditor-description": "Leregere sɛka ti tu tari [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-needcheck-description": "Leregere basɛ ti fu san bɔta ti fu dikɛ tum[[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] zi'a ti kusolego kwikikaalegɔ tari la sɛla n kan nyaŋɛ tee.", "tag-visualeditor-wikitext": "Leregere ze'ele la 2017 yuunɛ la puan.", "tag-visualeditor-wikitext-description": "Leregere base mɛ ti fu san tari 2017 yuunɛ la wikikaalego leregere", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Switched]]", + "tag-visualeditor-switched": "Visual edit: Switched", "tag-visualeditor-switched-description": "Mina n leregere la tari la bisegaleregere,gee nyaa tee wikikaalego leregere.", "visualeditor-feedback-link": "Tuuma:bisegaleregere/lebesego", "visualeditor-feedback-tool": "Base lebesego n de soofiwɛɛ la", @@ -25,6 +25,5 @@ "visualeditor-welcomedialog-content": "Nɛrewoo ta'am leregɛ, sugerɛ woo ta'am suŋɛ", "visualeditor-welcomedialog-content-thanks": "N pu'use ya la fum n suŋɛ duniya la ti ka nyɛ zo'e zo'e!", "visualeditor-welcomedialog-switch": "Lebɛ leregere la puan", - "visualeditor-welcomedialog-switch-ve": "Lebɛ bisega leregere", - "visualeditor-welcomedialog-title": "{{GENDER:$1|Welcome}} to $2" + "visualeditor-welcomedialog-switch-ve": "Lebɛ bisega leregere" } diff --git a/i18n/ve-wmf/guw.json b/i18n/ve-wmf/guw.json index f0a64fabde..bf594e34e8 100644 --- a/i18n/ve-wmf/guw.json +++ b/i18n/ve-wmf/guw.json @@ -4,5 +4,5 @@ "Misteld" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit]]" + "tag-visualeditor": "Visual edit" } diff --git a/i18n/ve-wmf/gv.json b/i18n/ve-wmf/gv.json new file mode 100644 index 0000000000..e51064de95 --- /dev/null +++ b/i18n/ve-wmf/gv.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Shimmin Beg", + "MacTire02" + ] + }, + "tag-visualeditor-needcheck": "Reaghey shilleydagh: Shickyree", + "tag-visualeditor-needcheck-description": "Va’n reaghey jeant lesh y [[{{MediaWiki:visualeditor-descriptionpagelink}}|reagheyder shilleydagh]] raad chronnee yn corys caghlaaghyn neuchiarit ec y wikiteks, foddee." +} diff --git a/i18n/ve-wmf/ha.json b/i18n/ve-wmf/ha.json index 891f73fd3c..1d4f48609c 100644 --- a/i18n/ve-wmf/ha.json +++ b/i18n/ve-wmf/ha.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bashir Gwanki", "Gwanki", "Yusuf Sa'adu" @@ -10,14 +9,14 @@ "tag-editcheck-newcontent-description": "EditCheck yana tunanin an kara sabon abun ciki a shafin", "tag-editcheck-newreference-description": "An kara wani bayani a shafin", "tag-editcheck-references-description": "EditCheck yana tunanin ana iya buƙatar bayani", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Aikin Duba (nassoshi) na gyarawa]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Gyaran gani]]", + "tag-editcheck-references-activated": "Aikin Duba (nassoshi) na gyarawa", + "tag-visualeditor": "Gyaran gani", "tag-visualeditor-description": "An yi gyara ta amfani da [[{{MediaWiki:visualeditor-descriptionpagelink}}|Gyaran gani]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-needcheck-description": "An yi gyara ta amfani da [[{{MediaWiki:visualeditor-descriptionpagelink}}|Gyaran gani]] inda tsarin ya gano wikitext mai yiwuwa yana da canje-canje da ba a yi niyya ba.", "tag-visualeditor-wikitext": "tushen gyara 2017", "tag-visualeditor-wikitext-description": "An yi gyara ta amfani da editan wikitext na 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Switched]]", + "tag-visualeditor-switched": "Visual edit: Switched", "tag-visualeditor-switched-description": "Mai amfani ya fara gyara ta amfani da editan gani, sannan ya canza zuwa editan wikitext.", "visualeditor-feedback-link": "Aikin: VisualEditor/Feedback", "visualeditor-feedback-tool": "Bar ra'ayi game da wannan software", diff --git a/i18n/ve-wmf/hak-latn.json b/i18n/ve-wmf/hak-latn.json new file mode 100644 index 0000000000..c1eed6c986 --- /dev/null +++ b/i18n/ve-wmf/hak-latn.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Winston Sung" + ] + }, + "tag-visualeditor": "Sṳ-kok-fa phiên-siá" +} diff --git a/i18n/ve-wmf/hak.json b/i18n/ve-wmf/hak.json deleted file mode 100644 index 80285b3ad7..0000000000 --- a/i18n/ve-wmf/hak.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "@metadata": { - "authors": [ - "Hakka" - ] - }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Sṳ-kok-fa phiên-siá]]" -} diff --git a/i18n/ve-wmf/he.json b/i18n/ve-wmf/he.json index 496ff43952..3ac3ac11f8 100644 --- a/i18n/ve-wmf/he.json +++ b/i18n/ve-wmf/he.json @@ -14,21 +14,29 @@ "ערן", "פוילישער", "קיפודנחש", - "아라" + "아라", + "חזרתי" ] }, "tag-editcheck-newcontent-description": "מערכת בדיקת עריכה חושבת שנוסף תוכן חדש לדף.", "tag-editcheck-newreference-description": "נוספה הערת שוליים לדף", "tag-editcheck-references-description": "מערכת בדיקת עריכה חושבת שאולי היה צורך בהערת שוליים", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|מערכת בדיקת עריכה (הערות שוליים) הופעלה]]", + "tag-editcheck-references-activated": "מערכת בדיקת עריכה (הערות שוליים) הופעלה", "tag-editcheck-references-activated-description": "מערכת בדיקת עריכה חושבת שאולי נוספת הערת שוליים, וממשק המשתמש של זה הוצג", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|עריכה חזותית]]", + "tag-editcheck-references-shown": "הוצגה מערכת בדיקת עריכה (הערות שוליים)", + "tag-editcheck-references-shown-description": "מערכת בדיקת העריכת חושבת שהייתה נחוצה הערת שוליים, וממשק המשתמש שלה הוצג", + "tag-editcheck-tone-description": "מערכת בדיקת עריכה זיהתה בעיה אפשרית בנימה של תוכן שנוסף", + "tag-editcheck-tone-shown": "הוצגה הודעה של בדיקת עריכה (נימה)", + "tag-editcheck-tone-shown-description": "מערכת בדיקת עריכה חושבת שאולי היה נחוץ תיקון בנימה של חלק מהתוכן והוצג ממשק המשתמש של זה", + "tag-editcheck-paste-shown": "הוצגה הודעה של מערכת בדיקת עריכה (הדבקה)", + "tag-editcheck-paste-shown-description": "מערכת בדיקת עריכה בקישה הבהרה על תוכן שהעורך הדביק, שלאחר מכן הוסר או אושר בתור קביל", + "tag-visualeditor": "עריכה חזותית", "tag-visualeditor-description": "עריכה שנעשתה באמצעות [[{{MediaWiki:visualeditor-descriptionpagelink}}|העורך החזותי]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|עריכה חזותית: נא לבדוק]]", + "tag-visualeditor-needcheck": "עריכה חזותית: נא לבדוק", "tag-visualeditor-needcheck-description": "עריכה שנעשתה באמצעות [[{{MediaWiki:visualeditor-descriptionpagelink}}|העורך החזותי]] ושהמערכת זיהתה שבקוד שלה אולי יש שינויים שלא היו אמורים להיעשות.", "tag-visualeditor-wikitext": "עריכת קוד מקור 2017", "tag-visualeditor-wikitext-description": "עריכה שנעשתה באמצעות עורך קוד המקור החדש של שנת 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|עריכה חזותית: הועבר לעריכת קוד מקור]]", + "tag-visualeditor-switched": "עריכה חזותית: הועבר לעריכת קוד מקור", "tag-visualeditor-switched-description": "משתמש התחיל לערוך באמצעות העורך החזותי ואז שינה לעורך קוד ויקי.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "שליחת משוב על התוכנה הזאת", diff --git a/i18n/ve-wmf/hi.json b/i18n/ve-wmf/hi.json index 8c35de466d..c8bc252e49 100644 --- a/i18n/ve-wmf/hi.json +++ b/i18n/ve-wmf/hi.json @@ -2,6 +2,7 @@ "@metadata": { "authors": [ "Ansumang", + "Bunnypranav", "Devayon", "Jayprakash12345", "Rajesh", @@ -11,13 +12,25 @@ "संजीव कुमार" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य संपादिका]]", + "tag-editcheck-newcontent-description": "सम्पादन जाँच का मानना है कि पृष्ठ पर नई सामग्री जोड़ी गई थी", + "tag-editcheck-newreference-description": "पृष्ठ पर एक संदर्भ जोड़ा गया था", + "tag-editcheck-references-description": "सम्पादन जाँच का मानना है कि एक संदर्भ की आवश्यकता थी", + "tag-editcheck-references-activated": "सम्पादन जाँच (संदर्भ) सक्रिय किया गया", + "tag-editcheck-references-activated-description": "सम्पादन जाँच का मानना है कि एक संदर्भ की आवश्यकता थी, और UI दिखाया गया था", + "tag-editcheck-references-shown": "सम्पादन जाँच (संदर्भ) दिखाया गया", + "tag-editcheck-references-shown-description": "सम्पादन जाँच का मानना है कि एक संदर्भ की आवश्यकता थी, और UI दिखाया गया था", + "tag-editcheck-tone-description": "सम्पादन जाँच ने जोड़ी गई कुछ सामग्री के लहजे में संभावित समस्या का पता लगाया", + "tag-editcheck-tone-shown": "सम्पादन जाँच (लहजा) दिखाया गया", + "tag-editcheck-tone-shown-description": "सम्पादन जाँच का मानना है कि कुछ सामग्री के लहजे में थोड़े बदलाव की आवश्यकता थी, और UI दिखाया गया था", + "tag-editcheck-paste-shown": "सम्पादन जाँच (पेस्ट) दिखाया गया", + "tag-editcheck-paste-shown-description": "सम्पादन जाँच ने सम्पादक द्वारा पेस्ट की गई सामग्री के बारे में स्पष्टीकरण माँगा था, जिसे या तो हटा दिया गया या फिर स्वीकार्य निश्चित किया गया", + "tag-visualeditor": "यथादृश्य सम्पादन", "tag-visualeditor-description": "संपादन [[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य संपादिका]] के उपयोग द्वारा किया गया", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य संपादिका: जाँचें]]", + "tag-visualeditor-needcheck": "यथादृश्य संपादिका: जाँचें", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य संपादिका]] से किया गया सम्पादन जिसमें सिस्टम ने पाया है कि विकिटेक्स्ट में अनपेक्षित बदलाव हो सकते हैं।", "tag-visualeditor-wikitext": "2017 स्रोत संपादन", "tag-visualeditor-wikitext-description": "2017 विकिटेक्स्ट एडिटर से किया गया सम्पादन", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य संपादिका: बदला]]", + "tag-visualeditor-switched": "यथादृश्य संपादिका: बदला", "tag-visualeditor-switched-description": "सदस्य ने यथादृश्य संपादिका की मदद से सम्पादन कार्य आरम्भ किया और उसके बाद स्रोत सम्पादित करने के विकल्प को चुना।", "visualeditor-feedback-link": "Project:VisualEditor/प्रतिक्रिया", "visualeditor-feedback-tool": "इस सॉफ़्टवेयर के बारे में अपने सुझाव लिखें", diff --git a/i18n/ve-wmf/hr.json b/i18n/ve-wmf/hr.json index d74354ff34..ee94110bfd 100644 --- a/i18n/ve-wmf/hr.json +++ b/i18n/ve-wmf/hr.json @@ -12,15 +12,19 @@ "tag-editcheck-newcontent-description": "EditCheck pretpostavlja da je na stranicu dodan nov sadržaj", "tag-editcheck-newreference-description": "Na stranicu je dodana referencija", "tag-editcheck-references-description": "EditCheck pretpostavlja da je bila potrebna referencija", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check pokrenut za referencije]]", - "tag-editcheck-references-activated-description": "EditCheck je pretpostavio da je bila potrebna referencija pa je prikazano korisničko sučelje", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-editcheck-references-activated": "EditCheck: referencije", + "tag-editcheck-references-activated-description": "EditCheck je pretpostavio da je bila potrebna referencija pa je prikazana poruka u sučelju.", + "tag-editcheck-references-shown": "EditCheck: referencije", + "tag-editcheck-references-shown-description": "EditCheck je pretpostavio da je bila potrebna referencija pa je prikazano korisničko sučelje", + "tag-editcheck-tone-shown": "EditCheck: neenciklopedijski stil", + "tag-editcheck-tone-shown-description": "EditCheck je pretpostavio da je bila potrebna prilagodba stila i tona pa je prikazana poruka u sučelju.", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Uređivanje napravljeno [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditorom]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje: provjera]]", + "tag-visualeditor-needcheck": "vizualno uređivanje: provjera", "tag-visualeditor-needcheck-description": "Uređivanje učinjeno [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditorom]] pri čemu je sustav označio wikitekst kao mogućom nenamjernom izmjenom.", "tag-visualeditor-wikitext": "VisualEditor: wikitekst", "tag-visualeditor-wikitext-description": "Uređivanje učinjeno uređivačem wikiteksta (2017.)", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: prebačeno na wikitekst]]", + "tag-visualeditor-switched": "VisualEditor: prebačeno na wikitekst", "tag-visualeditor-switched-description": "Suradnik je počeo uređivati koristeći vizualni uređivač i onda se prebacio u uređivač wikiteksta.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Napišite povratnu informaciju o ovom softveru", diff --git a/i18n/ve-wmf/hrx.json b/i18n/ve-wmf/hrx.json index e1ce9f8992..9587e68f38 100644 --- a/i18n/ve-wmf/hrx.json +++ b/i18n/ve-wmf/hrx.json @@ -4,5 +4,5 @@ "Iohanen" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell beaarvetung]]" + "tag-visualeditor": "Visuell beaarvetung" } diff --git a/i18n/ve-wmf/hsb.json b/i18n/ve-wmf/hsb.json index 28df58fa2e..12f9a1bee7 100644 --- a/i18n/ve-wmf/hsb.json +++ b/i18n/ve-wmf/hsb.json @@ -5,11 +5,11 @@ "Michawiki" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Z VisualEditorom wobdźěłane]]", + "tag-visualeditor": "Z VisualEditorom wobdźěłane", "tag-visualeditor-description": "Z pomocu [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditora]] wobdźěłany", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Přepruwowanje]]", + "tag-visualeditor-needcheck": "VisualEditor: Přepruwowanje", "tag-visualeditor-needcheck-description": "Změna, kotraž je so z pomocu [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]a přewjedła, hdźež system snano wikitekst wotkry, kotryž njewotpohladne změny wobsahuje.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Přešaltowany]]", + "tag-visualeditor-switched": "VisualEditor: Přešaltowany", "tag-visualeditor-switched-description": "Wužiwar je započał, z pomocu VisualEditora wobdźěłować a je potom k wikitekstowemu editorej přešoł.", "visualeditor-feedback-link": "Project:VisualEditor/Komentary", "visualeditor-feedback-tool": "Komentar zawostajić", diff --git a/i18n/ve-wmf/hsn.json b/i18n/ve-wmf/hsn.json index 6e98978da6..57fbb6b544 100644 --- a/i18n/ve-wmf/hsn.json +++ b/i18n/ve-wmf/hsn.json @@ -4,5 +4,5 @@ "ChoiChong" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|可视化编辑]]" + "tag-visualeditor": "可视化编辑" } diff --git a/i18n/ve-wmf/ht.json b/i18n/ve-wmf/ht.json index 4778bd7c63..31225ebdfc 100644 --- a/i18n/ve-wmf/ht.json +++ b/i18n/ve-wmf/ht.json @@ -4,7 +4,7 @@ "Amire80" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modifikasyon vizyèl]]", + "tag-visualeditor": "Modifikasyon vizyèl", "visualeditor-feedback-tool": "Pataje reyaksyon ou sou lojisyèl sa a", "visualeditor-help-label": "Li gid itilizatè a", "visualeditor-welcomedialog-action": "Kòmanse modifikasyon", diff --git a/i18n/ve-wmf/hu.json b/i18n/ve-wmf/hu.json index 9f3568ce6f..3ff12b6c28 100644 --- a/i18n/ve-wmf/hu.json +++ b/i18n/ve-wmf/hu.json @@ -10,13 +10,13 @@ "ViDam" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuális szerkesztés]]", + "tag-visualeditor": "Vizuális szerkesztés", "tag-visualeditor-description": "A szerkesztés a [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuális szerkesztővel]] készült.", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuális szerkesztés: Ellenőrizendő]]", + "tag-visualeditor-needcheck": "Vizuális szerkesztés: Ellenőrizendő", "tag-visualeditor-needcheck-description": "A szerkesztés a [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuális szerkesztővel]] készült, és a rendszer észlelte, hogy a wikiszövegben nem kívánt módosítások történhettek.", "tag-visualeditor-wikitext": "2017-es forrásszöveg-szerkesztő", "tag-visualeditor-wikitext-description": "A 2017-es forrásszöveg-szerkesztővel végzett szerkesztések", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuális szerkesztés: Átváltott]]", + "tag-visualeditor-switched": "Vizuális szerkesztés: Átváltott", "tag-visualeditor-switched-description": "A felhasználó a vizuális szerkesztővel kezdett el szerkeszteni, majd átváltott a wikiszöveg-szerkesztőre.", "visualeditor-feedback-link": "Project:VisualEditor/Visszajelzés", "visualeditor-feedback-tool": "Visszajelzés erről a szoftverről", diff --git a/i18n/ve-wmf/hy.json b/i18n/ve-wmf/hy.json index 35a5d7c47f..92fa20bc5e 100644 --- a/i18n/ve-wmf/hy.json +++ b/i18n/ve-wmf/hy.json @@ -7,11 +7,11 @@ "Դավիթ Սարոյան" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Վիզուալ խմբագիր]]", + "tag-visualeditor": "Վիզուալ խմբագիր", "tag-visualeditor-description": "Խմբագրումը կատարվել է [[{{MediaWiki:visualeditor-descriptionpagelink}}|Վիզուալ խմբագրով]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Վիզուալ խմբագիր: Ստուգել]]", + "tag-visualeditor-needcheck": "Վիզուալ խմբագիր: Ստուգել", "tag-visualeditor-needcheck-description": "Խմբագրումը կատարվել է [[{{MediaWiki:visualeditor-descriptionpagelink}}|ՎիզուալԽմբագրիչով]] այն ժամանակ, երբ համակարգը նկատել է վիքիտեքստի հնարավոր ոչ ցանկալի փոփոխություններ:", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Վիզուալ խմբագրիչն անջատված է]]", + "tag-visualeditor-switched": "Վիզուալ խմբագրիչն անջատված է", "tag-visualeditor-switched-description": "Մասնակիցը սկսել է խմբագրել ՎիզուալԽմբարիչով, բայց հետո անցել է վիքիտեքստի խմբագրմանը:", "visualeditor-feedback-link": "Նախագիծ:ՎիզուալԽմբագրիչ/Ֆիդբեք", "visualeditor-feedback-tool": "Կարծիք հայտնել", diff --git a/i18n/ve-wmf/hyw.json b/i18n/ve-wmf/hyw.json index 2bc8dba41f..0adfeda143 100644 --- a/i18n/ve-wmf/hyw.json +++ b/i18n/ve-wmf/hyw.json @@ -6,7 +6,7 @@ "Դավիթ Սարոյան" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|տեսողական խմբագրում]]", + "tag-visualeditor": "տեսողական խմբագրում", "tag-visualeditor-switched": "Տեսողական խմբագրիչը անջատուած է", "visualeditor-feedback-tool": "Կարծիք յայտնել", "visualeditor-help-label": "Ուղեցոյցը կարդա՛", diff --git a/i18n/ve-wmf/ia.json b/i18n/ve-wmf/ia.json index b0424afe50..cdc4596ae0 100644 --- a/i18n/ve-wmf/ia.json +++ b/i18n/ve-wmf/ia.json @@ -7,15 +7,22 @@ "tag-editcheck-newcontent-description": "EditCheck pensa que nove contento ha essite addite al pagina", "tag-editcheck-newreference-description": "Un referentia ha essite addite al pagina", "tag-editcheck-references-description": "EditCheck pensa que un referentia pote esser necessari", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Verification de modification (referentias) activate]]", + "tag-editcheck-references-activated": "Verification de modification (referentias) activate", "tag-editcheck-references-activated-description": "EditCheck pensa que un referentia poterea haber essite necessari, e le interfacie de usator graphic ha essite monstrate", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modification visual]]", + "tag-editcheck-references-shown": "Verification de modification (referentias) monstrate", + "tag-editcheck-references-shown-description": "EditCheck pensa que un referentia poterea haber essite necessari, e le interfacie de usator graphic ha essite monstrate", + "tag-editcheck-tone-description": "EditCheck ha detegite un problema potential con le tono de certe contento addite", + "tag-editcheck-tone-shown": "Verification de modification (tono) monstrate", + "tag-editcheck-tone-shown-description": "EditCheck pensa que un adjustamento del tono in alcun contento poterea haber essite necessari, e le interfacie de usator ha essite monstrate", + "tag-editcheck-paste-shown": "Verification de modification (collamento) monstrate", + "tag-editcheck-paste-shown-description": "EditCheck ha demandate un clarification sur contento que le redactor ha collate, le qual ha posteriormente essite o removite o affirmate como admissibile", + "tag-visualeditor": "Modification visual", "tag-visualeditor-description": "Modification facite con le [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual: a verificar]]", + "tag-visualeditor-needcheck": "Editor visual: a verificar", "tag-visualeditor-needcheck-description": "Modification facite con le [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] ubi le systema ha detegite que le wikitexto pote haber cambiate de maniera impreviste.", "tag-visualeditor-wikitext": "Editor de codice fonte de 2017", "tag-visualeditor-wikitext-description": "Modification facite usante le editor de wikitexto de 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual: Commutate]]", + "tag-visualeditor-switched": "Editor visual: Commutate", "tag-visualeditor-switched-description": "Le usator ha comenciate a modificar per medio del editor visual, postea ha passate al editor de wikitexto traditional.", "visualeditor-feedback-link": "Project:Editor visual/Commentario", "visualeditor-feedback-tool": "Lassar un commento sur iste programma", diff --git a/i18n/ve-wmf/id.json b/i18n/ve-wmf/id.json index 337c2481f8..848fa23926 100644 --- a/i18n/ve-wmf/id.json +++ b/i18n/ve-wmf/id.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Diki Ananta", "Farras", "Gombang", @@ -14,17 +13,18 @@ "Rv77ax", "Sumbukompor", "William Surya Permana", - "아라" + "아라", + "Penyuwangi" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "Suntingan visual", "tag-visualeditor-description": "Disunting dengan [[{{MediaWiki:visualeditor-descriptionpagelink}}|penyunting visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Penyunting visual: Periksa]]", - "tag-visualeditor-needcheck-description": "Penyuntingan yang menggunakan [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] pada sistem yang mendeteksi adanya teks wiki mungkin mengalami perubahan yang tidak diinginkan.", - "tag-visualeditor-wikitext": "suntingan sumber", + "tag-visualeditor-needcheck": "Penyunting visual: Periksa", + "tag-visualeditor-needcheck-description": "Penyuntingan yang menggunakan [[{{MediaWiki:visualeditor-descriptionpagelink}}|penyunting visual]] pada sistem yang mendeteksi adanya teks wiki mungkin mengalami perubahan yang tidak diinginkan.", + "tag-visualeditor-wikitext": "Suntingan sumber 2017", "tag-visualeditor-wikitext-description": "Suntingan menggunakan penyunting teks wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor-alih]]", - "tag-visualeditor-switched-description": "Pengguna mulai menyunting dengan editor visual lalu mengubahnya menjadi editor teks wiki.", + "tag-visualeditor-switched": "Suntingan visual: Beralih", + "tag-visualeditor-switched-description": "Pengguna mulai menyunting dengan penyunting visual lalu mengubahnya menjadi penyunting teks wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Umpan balik", "visualeditor-feedback-tool": "Tinggalkan umpan balik untuk peranti lunak ini", "visualeditor-help-label": "Baca panduan pengguna", diff --git a/i18n/ve-wmf/ie.json b/i18n/ve-wmf/ie.json index 44bed0706f..802f950228 100644 --- a/i18n/ve-wmf/ie.json +++ b/i18n/ve-wmf/ie.json @@ -6,9 +6,9 @@ "Stavanger7" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|visual modification]]", + "tag-visualeditor": "visual modification", "tag-visualeditor-description": "Editet per li [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Examination]]", + "tag-visualeditor-needcheck": "VisualEditor: Examination", "tag-visualeditor-needcheck-description": "Edite per li [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]], durant quel li systema ha forsan descovrit ínintentionat modificationes in li wikitextu.", "visualeditor-feedback-link": "Project:VisualEditor/Remarcas", "visualeditor-feedback-tool": "Dar feedback pri ti software", diff --git a/i18n/ve-wmf/ig.json b/i18n/ve-wmf/ig.json index 7750a0244f..9522ff6fc3 100644 --- a/i18n/ve-wmf/ig.json +++ b/i18n/ve-wmf/ig.json @@ -2,13 +2,26 @@ "@metadata": { "authors": [ "Karen", - "Tochiprecious" + "Tochiprecious", + "Victor chukwuemerie Mbah" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ndezi nke anya na-ele]]", + "tag-editcheck-newcontent-description": "EditCheck na-eche na agbakwunyere ọdịnaya ọhụrụ na peeji nke", + "tag-editcheck-newreference-description": "A na-agbakwunye ihe nchọgharị weebụ na peeji nke.", + "tag-editcheck-references-description": "EditCheck na-eche na ọ ga-adị mkpa ka a na-ezo aka", + "tag-editcheck-references-activated": "Dezie Lelee (Edensibịa ) rụrụ ọrụ", + "tag-editcheck-references-activated-description": "EditCheck na-eche na ọ ga-abụ na ọ dị mkpa, ma gosipụta UI", + "tag-editcheck-references-shown": "Dezie Lelee (Edensibịa) gosipụtara", + "tag-editcheck-references-shown-description": "EditCheck na-eche na ọ ga-abụ na ọ dị mkpa, ma gosipụta UI", + "tag-visualeditor": "ndezi nke anya na-ele", "tag-visualeditor-description": "Mmezigharịa eji [[{{MediaWiki:visualeditor-descriptionpagelink}}|ndezi anya na-ahụ]] wee mee", + "tag-visualeditor-needcheck": "Edezi ihe onyonyo: Lelee", + "tag-visualeditor-needcheck-description": "Mezigharịa site na iji [[{{MediaWiki:visualeditor-descriptionpagelink}}|onye nchịkọta akụkọ]] ebe sistemụ ahụ chọpụtara wikitext nwere ike inwe mgbanwe ndị na-atụghị anya ya.", "tag-visualeditor-wikitext": "Ndezi ebe osi nke 2017", "tag-visualeditor-wikitext-description": "Edezi eji 2017 wikitext editọ wee mee", + "tag-visualeditor-switched": "Edezi onyonyo: Gbanwee", + "tag-visualeditor-switched-description": "Onye ọrụ malitere idezi site na iji nchịkọta akụkọ anya, wee gbanwee gaa na nchịkọta wikitext.", + "visualeditor-feedback-link": "Ọrụ: VisualEditor/Nzaghachi", "visualeditor-feedback-tool": "Hapụ nzaghachi maka ngwanrọ a", "visualeditor-help-label": "Gụọ ntuziaka onye ọrụ", "visualeditor-welcomedialog-action": "Malite ndezi", @@ -16,5 +29,5 @@ "visualeditor-welcomedialog-content-thanks": "Daalụ maka inyere ụwa aka ịmatakwu!", "visualeditor-welcomedialog-switch": "Banye na ndezi ebe osi", "visualeditor-welcomedialog-switch-ve": "Gbanwee gaa na ndezi anya na-ele", - "visualeditor-welcomedialog-title": "{{Gender: $1|Nnọọ}}, na $2!" + "visualeditor-welcomedialog-title": "{{GENDER:$1|Nnọọ}}, na $2!" } diff --git a/i18n/ve-wmf/ilo.json b/i18n/ve-wmf/ilo.json index 4e8e2f8071..9f1af7a2ee 100644 --- a/i18n/ve-wmf/ilo.json +++ b/i18n/ve-wmf/ilo.json @@ -4,11 +4,11 @@ "Lam-ang" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Bisual a panagurnos]]", + "tag-visualeditor": "Bisual a panagurnos", "tag-visualeditor-description": "Inurnos nga inusar ti [[{{MediaWiki:visualeditor-descriptionpagelink}}|bisual a panagurnos]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Bisual a panagurnos: Kitaen]]", + "tag-visualeditor-needcheck": "Bisual a panagurnos: Kitaen", "tag-visualeditor-needcheck-description": "Inurnos nga inaramid nga inusar ti [[{{MediaWiki:visualeditor-descriptionpagelink}}|bisual a panagurnos]] a ti sistema ket nakaduktal ti wikitext nga adda kadagiti mabalin a saan a naikeddeng a panagbalbaliw.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Bisual a panagurnos: Sinukatan]]", + "tag-visualeditor-switched": "Bisual a panagurnos: Sinukatan", "tag-visualeditor-switched-description": "Ti agar-aramat ket nangrugi a nagusar iti bisual nga editor, kalpasanna ket sinukatanna iti editor ti wikitext.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Mangibati ti feedback a maipanggep iti daytoy a sopwer", diff --git a/i18n/ve-wmf/inh.json b/i18n/ve-wmf/inh.json index 162f034db6..8fe78529ce 100644 --- a/i18n/ve-wmf/inh.json +++ b/i18n/ve-wmf/inh.json @@ -4,5 +4,5 @@ "Adam-Yourist" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуальни хувцам]]" + "tag-visualeditor": "Визуальни хувцам" } diff --git a/i18n/ve-wmf/io.json b/i18n/ve-wmf/io.json index 30a0067c65..bcd849ef91 100644 --- a/i18n/ve-wmf/io.json +++ b/i18n/ve-wmf/io.json @@ -6,13 +6,14 @@ ] }, "tag-editcheck-newcontent-description": "Redakto-kontrolo (''EditCheck'') kredas ke nova kontenajo adjuntesis a la pagino", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Redakto per VisualEditor]]", + "tag-editcheck-references-activated": "Kontrolo di redakti (referi) pronta", + "tag-visualeditor": "Redakto per VisualEditor", "tag-visualeditor-description": "Redaktita per la [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Redakto per VisualEditor: Kontrolar]]", + "tag-visualeditor-needcheck": "Redakto per VisualEditor: Kontrolar", "tag-visualeditor-needcheck-description": "Redaktita per la [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] ube la sistemo detektis ke la wikitexto forsan neintence chanjesis.", "tag-visualeditor-wikitext": "2017 fonto-redakto", "tag-visualeditor-wikitext-description": "Redaktita per la 2017 \"wikitext\"-redaktilo", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Redakto per VisualEditor: Swichita]]", + "tag-visualeditor-switched": "Redakto per VisualEditor: Swichita", "tag-visualeditor-switched-description": "Uzanto komencis per VisualEditor, pose swichis a la bazala redaktilo.", "visualeditor-feedback-link": "Project:VisualEditor/Reakto", "visualeditor-feedback-tool": "Lasar reakto pri ca programo", diff --git a/i18n/ve-wmf/is.json b/i18n/ve-wmf/is.json index 5c5d8e92d9..df3331f86c 100644 --- a/i18n/ve-wmf/is.json +++ b/i18n/ve-wmf/is.json @@ -1,16 +1,17 @@ { "@metadata": { "authors": [ + "Bjarki S", "Maxí", "Snævar", "Stefán Örvar Sigmundsson" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Sýnileg breyting]]", + "tag-visualeditor": "Sýnilegi ritillinn", "tag-visualeditor-description": "Breyting gerð með [[{{MediaWiki:visualeditor-descriptionpagelink}}|Sýnilega ritlinum]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Sýnileg breyting: Athuga]]", + "tag-visualeditor-needcheck": "Sýnileg breyting: Athuga", "tag-visualeditor-needcheck-description": "Breyting gerð með [[{{MediaWiki:visualeditor-descriptionpagelink}}|sýnilega ritlinum]] þar sem kerfið greindi að wiki-textinn hafi mögulega ófyrirsjáanlegar breytingar.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Sýnilegi ritilinn: Skipti yfir]]", + "tag-visualeditor-switched": "Sýnilegi ritilinn: Skipti yfir", "tag-visualeditor-switched-description": "Notandinn byrjaði að gera breytingar með sýnilega ritlinum en fór svo að breyta wikitextanum.", "visualeditor-feedback-link": "Project:VisualEditor/Ábendingar", "visualeditor-feedback-tool": "Skilja eftir ábendingu um þennan hugbúnað", diff --git a/i18n/ve-wmf/it.json b/i18n/ve-wmf/it.json index 56821e385c..001725f611 100644 --- a/i18n/ve-wmf/it.json +++ b/i18n/ve-wmf/it.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Alexmar983", - "Amire80", "Anto", "Beta16", "Darth Kule", @@ -27,14 +26,14 @@ "아라" ] }, - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (citazioni) attivato]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modifica visuale]]", + "tag-editcheck-references-activated": "Edit Check (citazioni) attivato", + "tag-visualeditor": "Modifica visuale", "tag-visualeditor-description": "Modifica eseguita usando l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visuale]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modifica visuale: controllare]]", + "tag-visualeditor-needcheck": "Modifica visuale: controllare", "tag-visualeditor-needcheck-description": "Modifica eseguita utilizzando l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visuale]] dove il sistema ha rilevato possibili modifiche non volute nel wikitesto.", "tag-visualeditor-wikitext": "Editor wikitesto 2017", "tag-visualeditor-wikitext-description": "Modifica effettuata utilizzando l'editor wikitesto 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modifica visuale: commutato]]", + "tag-visualeditor-switched": "Modifica visuale: commutato", "tag-visualeditor-switched-description": "L'utente ha iniziato a modificare utilizzando l'editor visuale, poi è passato all'editor di wikitesto.", "visualeditor-feedback-link": "Project:VisualEditor/Commenti", "visualeditor-feedback-tool": "Scrivi un commento su questo software", diff --git a/i18n/ve-wmf/ja.json b/i18n/ve-wmf/ja.json index f5e88aa69d..3d293c1d4a 100644 --- a/i18n/ve-wmf/ja.json +++ b/i18n/ve-wmf/ja.json @@ -1,29 +1,43 @@ { "@metadata": { "authors": [ - "Amire80", "Ant176", + "Chqaz", "Darklanlan", "Fryed-peach", "Miya", "Otokoume", "Penn Station", "Shirayuki", + "Shulmj", "Sujiniku", "Takot", "Vigorous action", "Whym", "おはぐろ蜻蛉", - "아라" + "아라", + "Cookie4782" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ビジュアルエディター]]", + "tag-editcheck-newcontent-description": "編集チェックは新しいコンテンツがページに追加されたと判断した", + "tag-editcheck-newreference-description": "ページに出典が追加", + "tag-editcheck-references-description": "編集チェックは出典が必要だと判断した", + "tag-editcheck-references-activated": "編集チェック(出典)が有効化", + "tag-editcheck-references-activated-description": "編集チェックは出典が必要だと判断したため、UIが表示された", + "tag-editcheck-references-shown": "編集チェック(出典)が表示", + "tag-editcheck-references-shown-description": "編集チェックは出典が必要だと判断したため、UIが表示された", + "tag-editcheck-tone-description": "編集チェックは追加されたコンテンツの一部に語調に関する潜在的な問題があると判断した", + "tag-editcheck-tone-shown": "編集チェック(語調)が表示", + "tag-editcheck-tone-shown-description": "編集チェックは追加されたコンテンツに語調の調整が必要な箇所があると判断したため、UIが表示された", + "tag-editcheck-paste-shown": "編集チェック(転写)が表示", + "tag-editcheck-paste-shown-description": "編集チェックは編集者が貼り付けたコンテンツについて説明を求め、そのコンテンツは除去されたか、あるいは問題のないものであると確認された", + "tag-visualeditor": "ビジュアルエディター", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ビジュアルエディター]]を使用した編集", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ビジュアルエディター: 要確認]]", + "tag-visualeditor-needcheck": "ビジュアルエディター: 要確認", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ビジュアルエディター]]を使用した編集のうち、意図しない変更点を含むおそれがあるとシステムが判断したもの", "tag-visualeditor-wikitext": "2017年版ソースエディター", "tag-visualeditor-wikitext-description": "2017年版ウィキテキストエディターを使用した編集", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ビジュアルエディター: 中途切替]]", + "tag-visualeditor-switched": "ビジュアルエディター: 中途切替", "tag-visualeditor-switched-description": "ビジュアルエディターで編集を開始したあと、ウィキテキストエディターに変更したもの", "visualeditor-feedback-link": "Project:ビジュアルエディター/フィードバック", "visualeditor-feedback-tool": "このソフトウェアについてフィードバックを送信", diff --git a/i18n/ve-wmf/jam.json b/i18n/ve-wmf/jam.json index 3d3691b833..d6f0ef9ab3 100644 --- a/i18n/ve-wmf/jam.json +++ b/i18n/ve-wmf/jam.json @@ -4,5 +4,5 @@ "Katxis" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vijual edit]]" + "tag-visualeditor": "Vijual edit" } diff --git a/i18n/ve-wmf/jje.json b/i18n/ve-wmf/jje.json index 0a42cf02cd..90452f01c5 100644 --- a/i18n/ve-wmf/jje.json +++ b/i18n/ve-wmf/jje.json @@ -4,5 +4,5 @@ "고솜" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|베리멍 바꼬기]]" + "tag-visualeditor": "베리멍 바꼬기" } diff --git a/i18n/ve-wmf/jut.json b/i18n/ve-wmf/jut.json index 9af59b067e..aab2bc6762 100644 --- a/i18n/ve-wmf/jut.json +++ b/i18n/ve-wmf/jut.json @@ -4,5 +4,5 @@ "Jyllanj" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuel øndreng]]" + "tag-visualeditor": "Visuel øndreng" } diff --git a/i18n/ve-wmf/jv.json b/i18n/ve-wmf/jv.json index 6a6fc1af56..b72395d674 100644 --- a/i18n/ve-wmf/jv.json +++ b/i18n/ve-wmf/jv.json @@ -8,12 +8,12 @@ "Sumbukompor" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Besutan visual]]", + "tag-visualeditor": "Besutan visual", "tag-visualeditor-description": "Besutan sarana [[{{MediaWiki:visualeditor-descriptionpagelink}}|pambesut visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Besutan visual: Priksa]]", + "tag-visualeditor-needcheck": "Besutan visual: Priksa", "tag-visualeditor-wikitext": "Besutan sumber", "tag-visualeditor-wikitext-description": "Besutan nganggo pambesut tèks-wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Besutan visual: Ganti]]", + "tag-visualeditor-switched": "Besutan visual: Ganti", "tag-visualeditor-switched-description": "Naraguna wiwit mbesut sarana pambesut visual, banjur salin nganggo pambesut tèks-wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Pamrayoga", "visualeditor-feedback-tool": "Wènèhana saran ngenani piranti alus iki", diff --git a/i18n/ve-wmf/ka.json b/i18n/ve-wmf/ka.json index 913e8f27b0..155aaa1676 100644 --- a/i18n/ve-wmf/ka.json +++ b/i18n/ve-wmf/ka.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "BRUTE", "David1010", "Gleki", @@ -15,13 +14,13 @@ "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ვიზუალური რედაქტირება]]", + "tag-visualeditor": "ვიზუალური რედაქტირება", "tag-visualeditor-description": "რედაქტირება შესრულებულია [[{{MediaWiki:visualeditor-descriptionpagelink}}|ვიზუალური რედაქტორის]] საშუალებით", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ვიზუალური რედაქტორი: შემოწმება]]", + "tag-visualeditor-needcheck": "ვიზუალური რედაქტორი: შემოწმება", "tag-visualeditor-needcheck-description": "რედაქტირება შესრულებულია [[{{MediaWiki:visualeditor-descriptionpagelink}}|ვიზუალური რედაქტორის]] საშუალებით, რომელშიც სისტემამ აღმოაჩინა, შესაძლოა უნებლიეთ შეცვლილი ვიკი-ტექსტი.", "tag-visualeditor-wikitext": "წყაროს რედაქტორი 2017", "tag-visualeditor-wikitext-description": "რედაქტირება გაკეთებულია ვიკიტექსტის რედაქტორი 2017-ის გამოყენებით", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ვიზუალური რედაქტორი: გადართულია]]", + "tag-visualeditor-switched": "ვიზუალური რედაქტორი: გადართულია", "tag-visualeditor-switched-description": "მომხმარებელმა დაიწყო ვიზუალური რედაქტორის გამოყენება, ხოლო შემდეგ ვიკიტექსტის რედაქტორით შეცვალა.", "visualeditor-feedback-link": "Project:ვიზუალური რედაქტორი/შეფასება", "visualeditor-feedback-tool": "გამოხმაურების დატოვება ამ პროგრამული უზრუნველყოფის შესახებ", diff --git a/i18n/ve-wmf/kaa.json b/i18n/ve-wmf/kaa.json index e8acfafc2b..d838ed3261 100644 --- a/i18n/ve-wmf/kaa.json +++ b/i18n/ve-wmf/kaa.json @@ -5,12 +5,12 @@ "Nurlan" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktor arqalı]]", + "tag-visualeditor": "Vizual redaktor arqalı", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktor]] arqalı islengen redaktorlaw.", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktor: Tekseriw]]", + "tag-visualeditor-needcheck": "Vizual redaktor: Tekseriw", "tag-visualeditor-needcheck-description": "Redaktorlaw [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizual redaktor]] arqalı orınlanǵan, biraq sistema abaysızdan wikitekst redaktorına ózgerip ketken bolıwı múmkinligin anıqladı.", "tag-visualeditor-wikitext": "Derekti redaktorlaw", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual redaktordan wikitekst redaktorına ótildi]]", + "tag-visualeditor-switched": "Vizual redaktordan wikitekst redaktorına ótildi", "tag-visualeditor-switched-description": "Paydalanıwshı vizual redaktor kómeginde redaktorlap basladı, sońınan wikitekst redaktorına ótti.", "visualeditor-feedback-tool": "Bul programma haqqında pikir qaldırıw", "visualeditor-help-label": "Paydalanıwshı qollanbasın oqıńız", diff --git a/i18n/ve-wmf/kab.json b/i18n/ve-wmf/kab.json index 6d584e9806..f11f950647 100644 --- a/i18n/ve-wmf/kab.json +++ b/i18n/ve-wmf/kab.json @@ -4,5 +4,5 @@ "Belkacem77" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Amaẓrag aẓrayan]]" + "tag-visualeditor": "Amaẓrag aẓrayan" } diff --git a/i18n/ve-wmf/kbp.json b/i18n/ve-wmf/kbp.json index 60b3c10cda..dda2c3f470 100644 --- a/i18n/ve-wmf/kbp.json +++ b/i18n/ve-wmf/kbp.json @@ -4,5 +4,5 @@ "Gnangbade" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Ñɔɔzɩtʋ kpaagbaa]]" + "tag-visualeditor": "Ñɔɔzɩtʋ kpaagbaa" } diff --git a/i18n/ve-wmf/kcg.json b/i18n/ve-wmf/kcg.json index 29647acd4a..377545d597 100644 --- a/i18n/ve-wmf/kcg.json +++ b/i18n/ve-wmf/kcg.json @@ -1,17 +1,16 @@ { "@metadata": { "authors": [ - "Amire80", "Kambai Akau" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Jhyuk nwuan]]", + "tag-visualeditor": "Jhyuk nwuan", "tag-visualeditor-description": "Á̱ nyia̱ jhyuk huni ma̱ng [[{{MediaWiki:visualeditor-descriptionpagelink}}|kyangjhyuk nwuan huhwa]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Jhyuk nwuan: Nwuan]]", + "tag-visualeditor-needcheck": "Jhyuk nwuan: Nwuan", "tag-visualeditor-needcheck-description": "Á̱ nyia̱ jhyuk huni ma̱ng [[{{MediaWiki:visualeditor-descriptionpagelink}}|kyangjhyuk nwuan]] da̱ a̱vwuo ka nang sistem ji si̱ li wikitext hu ma̱ng a̱ka̱shai na̱ maai yet ghyuap nia a̱ni.", "tag-visualeditor-wikitext": "jhyuk a̱vwuoneet 2017", "tag-visualeditor-wikitext-description": "Á̱ nyia̱ jhyuk huni ma̱ng kyangjhyuk wikitext 2017 huhwa", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Jhyuk nwuan: Á̱ shai]]", + "tag-visualeditor-switched": "Jhyuk nwuan: Á̱ shai", "tag-visualeditor-switched-description": "A̱tyuta̱m ku tsa jhyuk ma̱ng kyangjhyuk nwuan, a̱ si̱ ba̱ shai nat kyangjhyuk wikitext hu.", "visualeditor-feedback-link": "Project:KyangjhyukNwuan/A̱di̱dam", "visualeditor-feedback-tool": "Ghwon a̱di̱dam tazwa kyanglilyiit huni", diff --git a/i18n/ve-wmf/kea.json b/i18n/ve-wmf/kea.json new file mode 100644 index 0000000000..ceecfd1b82 --- /dev/null +++ b/i18n/ve-wmf/kea.json @@ -0,0 +1,36 @@ +{ + "@metadata": { + "authors": [ + "GrogeXaKaba" + ] + }, + "tag-editcheck-newcontent-description": "Birifikador di Idison ta kardita ma kuntiúdu nobu foi kirsentadu na pájina", + "tag-editcheck-newreference-description": "Un rafirénsa foi kirsentadu na pájina", + "tag-editcheck-references-description": "Birifikador di Idison ta kardita ma un rafirénsa podi ser nisisári", + "tag-editcheck-references-activated": "Birifikador di Idison (rafirénsas) ativadu", + "tag-editcheck-references-activated-description": "Birifikador di Idison ta kardita ma un rafirénsa podi ser nisisári; i es abizu foi izibidu pa uzuári", + "tag-editcheck-references-shown": "Birifikador di Idison (rafirénsas) izibidu", + "tag-editcheck-references-shown-description": "Birifikador di Idison ta kardita ma un rafirénsa podi ser nisisári; i es abizu foi izibidu pa uzuári", + "tag-editcheck-tone-description": "Birifikador di Idison diteta un putensial prabuléma ku ton di argun kuntiúdu kirsentadu", + "tag-editcheck-tone-shown": "Birifikador di Idison (ton) izibidu", + "tag-editcheck-tone-shown-description": "Birifikador di Idison ta kardita ma un ndjustamentu na ton di argun kuntiúdu podi ser nisisári; i es abizu foi izibidu pa uzuári", + "tag-editcheck-paste-shown": "Birifikador di Idison (koláji) izibidu", + "tag-editcheck-paste-shown-description": "Birifikador di Idison pidi sklarisimentu sobri kuntiúdu koladu pa iditor; dispos, tal kuntiúdu foi ramovedu o kunfirmadu kuma pirmitidu", + "tag-visualeditor": "Iditor Vizual", + "tag-visualeditor-description": "Idison fasedu ku uzu di [[{{MediaWiki:visualeditor-descriptionpagelink}}|Iditor Vizual]]", + "tag-visualeditor-needcheck": "Iditor Vizual: Birifika", + "tag-visualeditor-needcheck-description": "Idison fasedu ku uzu di [[{{MediaWiki:visualeditor-descriptionpagelink}}|Iditor Vizual]] na kal sistéma diteta ma testu uiki sufri alterasons non ntensonal.", + "tag-visualeditor-wikitext": "iditor di kódi-fonti 2017", + "tag-visualeditor-wikitext-description": "Idison fasedu ku iditor di testu uiki 2017", + "tag-visualeditor-switched": "Iditor Vizual: Alternadu", + "tag-visualeditor-switched-description": "Uzuári kunsa idison ku Iditor Vizual, antan, el pasa ta uza iditor di testu uiki.", + "visualeditor-feedback-link": "Project:Iditor Vizual/Valiason", + "visualeditor-feedback-tool": "Txa bu valiason sobri es pugrama nfurmátiku", + "visualeditor-help-label": "Le gia di uzuári", + "visualeditor-welcomedialog-action": "Kunsa idison", + "visualeditor-welcomedialog-content": "Tudu argen podi idita, i kada midjoria ta djuda.", + "visualeditor-welcomedialog-content-thanks": "Nu ta gardise-bu! Bu idison ta djuda txeu argen na diskubérta di kusas nobu!", + "visualeditor-welcomedialog-switch": "Alterna pa iditor di kódi-fonti", + "visualeditor-welcomedialog-switch-ve": "Alterna pa iditor vizual", + "visualeditor-welcomedialog-title": "{{GENDER:$1|Ben-bindu}} na $2" +} diff --git a/i18n/ve-wmf/khw.json b/i18n/ve-wmf/khw.json index 6b0bca042f..1a25204fe3 100644 --- a/i18n/ve-wmf/khw.json +++ b/i18n/ve-wmf/khw.json @@ -4,5 +4,5 @@ "Rachitrali" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویژول ایڈیٹر]]" + "tag-visualeditor": "ویژول ایڈیٹر" } diff --git a/i18n/ve-wmf/kjp.json b/i18n/ve-wmf/kjp.json index df7032bdf9..19afa2024a 100644 --- a/i18n/ve-wmf/kjp.json +++ b/i18n/ve-wmf/kjp.json @@ -4,13 +4,13 @@ "Rul1902" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ဟ်ုဆ်ုဍး သံင့်ၜးၯဴ]]", + "tag-visualeditor": "ဟ်ုဆ်ုဍး သံင့်ၜးၯဴ", "tag-visualeditor-description": "မ်ုသံင့်ၜးၯဴ မ်ုသုံႋလ်ု [[{{MediaWiki:visualeditor-descriptionpagelink}}|ဟ်ုဆ်ုဍး သံင့်ၜးၯဴဆာႋ]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ဟ်ုဆ်ုဍး သံင့်ၜးၯဴ:ဆၟိုဝ်]]", + "tag-visualeditor-needcheck": "ဟ်ုဆ်ုဍး သံင့်ၜးၯဴ:ဆၟိုဝ်", "tag-visualeditor-needcheck-description": "မ်ုသံင့်ၜးၯဴၯံင် အင်းသုံႋ [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] အ်ုက်ုရေင်ႋလ်ုအှ် ဆ်ုသံင့်ၜးၯဴဝီးကေဝ်အ်ုၯာင်ႋအ်ုကျံင်းၮှ် မ်ုၜးလေဝ်ႋအင်းၰူ့ယောဝ်ႋ အ်ုဖၠံင်အ်ုဖၠကုံ ခဝ့်လယ်။", "tag-visualeditor-wikitext": "၂၀၁၇ အ်ုထါ်သံင့်ၜးၯဴ", "tag-visualeditor-wikitext-description": "မ်ုသံင့်ၜးၯဴၯံင် မ်ုသုံႋ ၂၀၁၇ ဝီးကေဝ်အ်ုၯာင်ႋအ်ုကျံင်း သံင့်ၜးၯဴဆာႋ", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ဟ်ုဆ်ုဍး သံင့်ၜးၯဴ:အူရာ်ၯံင်]]", + "tag-visualeditor-switched": "ဟ်ုဆ်ုဍး သံင့်ၜးၯဴ:အူရာ်ၯံင်", "tag-visualeditor-switched-description": "ဆ်ုသုံႋဆာႋ ပ္တံင်ထင်းသင့်ဝေ့လ်ု ဟ်ုဆ်ုဍး သံင့်ၜးၯဴ, အေးၯံင် အင်းလယ်ခိုက်ဝေ့ လ်ုဝီးကေဝ်အ်ုၯာင်ႋအ်ုကျံင်းခဝ့်။", "visualeditor-feedback-link": "Project:ဟ်ုဆ်ုဍးသံင့်ၜးၯဴ/လဝ်ပ်ုယုံ့ထါင်", "visualeditor-feedback-tool": "ဆေါႋဝဲါအ်ုယိုဝ်ကျံင် အှ်ကှ်ေထဝ်ႋဆ်ုလဝ်ပ်ုယုံ့ထါင်", diff --git a/i18n/ve-wmf/kk-cyrl.json b/i18n/ve-wmf/kk-cyrl.json index 532fb7d561..fe4f78b71a 100644 --- a/i18n/ve-wmf/kk-cyrl.json +++ b/i18n/ve-wmf/kk-cyrl.json @@ -6,13 +6,13 @@ "Casserium" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] арқылы жасалған өңдеме", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Тексеру]]", + "tag-visualeditor-needcheck": "VisualEditor: Тексеру", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] қолданылып жасалған өңдеменде жүйе уикитекстіге күтпеген өзгерістер болуы мүмкіндігін жүйе анықтады. .", "tag-visualeditor-wikitext": "Уики-мәтін редакторы 2017", "tag-visualeditor-wikitext-description": "2017 жылғы уикимәтін редакторын қолданып жасаған өңдеме", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Ауысты]]", + "tag-visualeditor-switched": "VisualEditor: Ауысты", "tag-visualeditor-switched-description": "Қатысушы VisualEditor қолданып өңдеуді бастады содан кейін уикимәтін өңдегішке ауыстырды.", "visualeditor-feedback-link": "Project:VisualEditor/Пікірлер", "visualeditor-feedback-tool": "Бұл бағдарлама туралы пікір қалдыру", diff --git a/i18n/ve-wmf/km.json b/i18n/ve-wmf/km.json index 1a17c7d015..e4ad1e2acd 100644 --- a/i18n/ve-wmf/km.json +++ b/i18n/ve-wmf/km.json @@ -5,7 +5,7 @@ "គីមស៊្រុន" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|កែប្រែតាមគំហើញ]]", + "tag-visualeditor": "កែប្រែតាមគំហើញ", "tag-visualeditor-description": "ការកែប្រែដោយប្រើ[[{{MediaWiki:visualeditor-descriptionpagelink}}|មុខងារកែប្រែតាមគំហើញ]]", "tag-visualeditor-wikitext": "មុខងារកែប្រែកូដឆ្នាំ២០១៧", "tag-visualeditor-wikitext-description": "កំណែប្រែដែលធ្វើឡើងដោយប្រើឧបករណ៍កែប្រែវិគីអត្ថបទ", diff --git a/i18n/ve-wmf/kn.json b/i18n/ve-wmf/kn.json index a529c30e9d..8660d7b39e 100644 --- a/i18n/ve-wmf/kn.json +++ b/i18n/ve-wmf/kn.json @@ -8,11 +8,11 @@ "Yogesh" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ದೃಶ್ಯ ಸಂಪಾದನೆ]]", + "tag-visualeditor": "ದೃಶ್ಯ ಸಂಪಾದನೆ", "tag-visualeditor-description": "ಸಂಪಾದನೆಗೆ ಬಳಸಿದ್ದು [[{{MediaWiki:visualeditor-descriptionpagelink}}|ದೃಶ್ಯ ಸಂಪಾದಕ]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ದೃಶ್ಯ ಸಂಪಾದಕ: ಪರೀಕ್ಷಿಸು]]", + "tag-visualeditor-needcheck": "ದೃಶ್ಯ ಸಂಪಾದಕ: ಪರೀಕ್ಷಿಸು", "tag-visualeditor-needcheck-description": "ಸಂಪಾದನೆಗೆ ಬಳಸಿದ್ದು [[{{MediaWiki:visualeditor-descriptionpagelink}}|ದೃಶ್ಯ ಸಂಪಾದಕ]] ಇಲ್ಲಿ ಸಾಧನವು ಬೇಡದ ಕೆಲವು ಬದಲಾವಣೆಗಳಾಗಿರುವುದನ್ನು ಗಮನಿಸಿದೆ.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ದೃಶ್ಯ ಸಂಪಾದಕ: ಬದಲಿಸಿದ್ದು]]", + "tag-visualeditor-switched": "ದೃಶ್ಯ ಸಂಪಾದಕ: ಬದಲಿಸಿದ್ದು", "tag-visualeditor-switched-description": "ಬಳಕೆದಾರ ದೃಶ್ಯ ಸಂಪಾದಕವನ್ನು ಬಳಸಿ ಸಂಪಾದನೆಯನ್ನು ಪ್ರಾರಂಭಿಸಿದ ನಂತರ ವಿಕಿಪಠ್ಯ ಸಂಪಾದಕಕ್ಕೆ ಮರಳಿದ್ದಾನೆ.", "visualeditor-feedback-link": "ಯೋಜನೆ:ದೃಶ್ಯ ಸಂಪಾದಕ /ಪ್ರತಿಕ್ರಿಯೆ", "visualeditor-feedback-tool": "ಈ ತಂತ್ರಾಂಶದ ಬಗ್ಗೆ ನಿಮ್ಮ ಪ್ರತಿಕ್ರಿಯೆ ನೀಡಿ", diff --git a/i18n/ve-wmf/ko-kp.json b/i18n/ve-wmf/ko-kp.json index 85d1273a4d..b0f5fe065e 100644 --- a/i18n/ve-wmf/ko-kp.json +++ b/i18n/ve-wmf/ko-kp.json @@ -4,5 +4,5 @@ "Delim" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|시각편집기]]" + "tag-visualeditor": "시각편집기" } diff --git a/i18n/ve-wmf/ko.json b/i18n/ve-wmf/ko.json index 45de80bef4..41b654f9e5 100644 --- a/i18n/ve-wmf/ko.json +++ b/i18n/ve-wmf/ko.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bluehill", "Bluemersen", "Freebiekr", @@ -14,21 +13,29 @@ "Revi", "Suleiman the Magnificent Television", "Ykhwong", - "아라" + "아라", + "Tensama0415" ] }, "tag-editcheck-newcontent-description": "EditCheck는 새로운 내용이 페이지에 추가되었다고 간주합니다", "tag-editcheck-newreference-description": "페이지에 참조가 추가되었습니다", "tag-editcheck-references-description": "EditCheck는 출처가 필요할 수 있다고 간주합니다", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|편집 검사(출처)를 활성화함]]", + "tag-editcheck-references-activated": "편집 검사(출처)를 활성화함", "tag-editcheck-references-activated-description": "EditCheck는 출처가 필요할 수 있다고 간주하며 UI를 표시합니다", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|시각 편집]]", + "tag-editcheck-references-shown": "편집 검사(출처)를 표시함", + "tag-editcheck-references-shown-description": "EditCheck는 출처가 필요할 수 있다고 간주하며 UI를 표시합니다", + "tag-editcheck-tone-description": "EditCheck가 일부 추가된 내용의 어조에 문제가 있을 가능성을 감지했습니다", + "tag-editcheck-tone-shown": "편집 검사(어조)를 표시함", + "tag-editcheck-tone-shown-description": "EditCheck는 일부 내용에 대한 어조의 조정이 필요할 수 있다고 간주하며 UI를 표시합니다", + "tag-editcheck-paste-shown": "편집 검사(붙여넣기)를 표시함", + "tag-editcheck-paste-shown-description": "EditCheck는 편집자가 붙여넣은 내용에 대한 설명을 요청하며, 그 내용은 지워져야 하거나 허용 가능한 것이 확인되어야 합니다", + "tag-visualeditor": "시각 편집", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|시각편집기]]를 사용한 편집", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|시각편집기: 확인 필요]]", + "tag-visualeditor-needcheck": "시각편집기: 확인 필요", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|시각편집기]]를 사용하는 도중 시스템에서 잠재적으로 의도하지 않은 변경사항을 포함한 위키텍스트가 감지된 편집.", "tag-visualeditor-wikitext": "2017 원본 편집", "tag-visualeditor-wikitext-description": "2017 위키텍스트 편집기로 한 편집", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|시각 편집: 전환됨]]", + "tag-visualeditor-switched": "시각 편집: 전환됨", "tag-visualeditor-switched-description": "사용자가 시각편집기를 사용해 편집을 시작한 다음 위키텍스트 편집기로 바꾸었습니다.", "visualeditor-feedback-link": "Project:시각편집기/피드백", "visualeditor-feedback-tool": "이 소프트웨어에 대한 피드백 남기기", diff --git a/i18n/ve-wmf/koi.json b/i18n/ve-wmf/koi.json index f1a659bfd1..228d992dad 100644 --- a/i18n/ve-wmf/koi.json +++ b/i18n/ve-wmf/koi.json @@ -4,5 +4,5 @@ "Римма" ] }, - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (references) activated]]Веськӧтны проверитӧм (ыстісьӧм) активируйтӧм" + "tag-editcheck-references-activated": "Edit Check (references) activatedВеськӧтны проверитӧм (ыстісьӧм) активируйтӧм" } diff --git a/i18n/ve-wmf/krc.json b/i18n/ve-wmf/krc.json index 4cc3886331..9fe7d2d5a1 100644 --- a/i18n/ve-wmf/krc.json +++ b/i18n/ve-wmf/krc.json @@ -9,15 +9,15 @@ "tag-editcheck-newcontent-description": "EditCheck бетге джангы контент къошулгъаннга санайды", "tag-editcheck-newreference-description": "Бетге белгилеу къошулгъанды", "tag-editcheck-references-description": "EditCheck белгилеуню керек болгъанын санайды", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Тюзетиуню Тинтиу (белгилеу) тирилтилди]]", + "tag-editcheck-references-activated": "Тюзетиуню Тинтиу (белгилеу) тирилтилди", "tag-editcheck-references-activated-description": "EditCheck белгилеуню керек болгъаннга санар эмда интерфейс кёргюзюр", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Къарам тюзетиу]]", + "tag-visualeditor": "Къарам тюзетиу", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Къарам редакторну]] хайырланыб тюзетигиз", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Къарам тюзетиу:тинт]]", + "tag-visualeditor-needcheck": "Къарам тюзетиу:тинт", "tag-visualeditor-needcheck-description": "Система, иш этиб тюрлендирилмеген вики-текст табхан, [[{{MediaWiki:visualeditor-descriptionpagelink}}|визуал редакторну]] болушлугъу бла этилген тюрлендириу.", "tag-visualeditor-wikitext": "2017 къайнакъ тюзетиу", "tag-visualeditor-wikitext-description": "Тюзетиу 2017 вики-текст редактор бла этилгенди", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Къарам тюзетиу:алмашдырылды]]", + "tag-visualeditor-switched": "Къарам тюзетиу:алмашдырылды", "tag-visualeditor-switched-description": "Редакторлукъ этиу визуал редактор бла башланнганды, сора уа викитекст редакторгъа кёчюлгенди.", "visualeditor-feedback-link": "Project:VisualEditor/Оюмла", "visualeditor-feedback-tool": "Оюмунгу къой", diff --git a/i18n/ve-wmf/krl.json b/i18n/ve-wmf/krl.json index adabfbbcad..ec0790c799 100644 --- a/i18n/ve-wmf/krl.json +++ b/i18n/ve-wmf/krl.json @@ -4,5 +4,5 @@ "Varvana" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visualini korjauš]]" + "tag-visualeditor": "Visualini korjauš" } diff --git a/i18n/ve-wmf/ks-arab.json b/i18n/ve-wmf/ks.json similarity index 80% rename from i18n/ve-wmf/ks-arab.json rename to i18n/ve-wmf/ks.json index ab5a0f6c25..a955c8c741 100644 --- a/i18n/ve-wmf/ks-arab.json +++ b/i18n/ve-wmf/ks.json @@ -1,14 +1,12 @@ { "@metadata": { - "authors": [ - "Iflaq" - ] + "authors": [] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ظٲہِر اؠڈِٹ]]", + "tag-visualeditor": "ظٲہِر اؠڈِٹ", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ظٲہِر اؠڈِٹ خانَس]] مَنٛز کَرنہٕ آمِت اؠڈِٹ", "tag-visualeditor-wikitext": "2017 کوڈ اؠڈِٹ خانہٕ", "tag-visualeditor-wikitext-description": "اؠڈِٹ یِم 2017 وِکی مَتَن اؠڈِٹ خانَس مَنٛز کَرنہٕ آے", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ظٲہِر اؠڈِٹ: بَدلاونہٕ]]", + "tag-visualeditor-switched": "ظٲہِر اؠڈِٹ: بَدلاونہٕ", "visualeditor-feedback-tool": "یَتھ سافٹٕویرَس مُتلِق دِیِو پَنٕنؠ راے", "visualeditor-help-label": "صٲرِف تَعارُف کِتاب پٔرِو", "visualeditor-welcomedialog-action": "اؠڈِٹ کَرُن کٔرِو شُروٗع", diff --git a/i18n/ve-wmf/ksh.json b/i18n/ve-wmf/ksh.json index d0f418c33c..c34dacd3ca 100644 --- a/i18n/ve-wmf/ksh.json +++ b/i18n/ve-wmf/ksh.json @@ -4,11 +4,11 @@ "Purodha" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Änderong mem VisualEditor]]", + "tag-visualeditor": "Änderong mem VisualEditor", "tag-visualeditor-description": "En Veränderon jemaat mem [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Pröhfe nühdesch: VisualEditor metmaache. Op däm Träf]]", + "tag-visualeditor-needcheck": "Pröhfe nühdesch: VisualEditor metmaache. Op däm Träf", "tag-visualeditor-needcheck-description": "En Änderog, di mem [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] jemaat woode es, woh dä Wikkitäx velleijsch obb en onjewollte Manier verändert woode es.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Ömjeschalldt vum VisualEditor op Wikkitäx]]", + "tag-visualeditor-switched": "Ömjeschalldt vum VisualEditor op Wikkitäx", "tag-visualeditor-switched-description": "Dä Metmaacher feng sing Änderong mem {{int:tag-visualeditor}} aan un jingk dann op der Wikkitäx.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Jivv_en Röckmäldong övver heh di ẞoffwäer", @@ -18,5 +18,5 @@ "visualeditor-welcomedialog-content-thanks": "Mer danke doför, dat de Wält mih erusfenge kann!", "visualeditor-welcomedialog-switch": "Ömschallde op Wikkitäx", "visualeditor-welcomedialog-switch-ve": "Op der VisualEditor ömschallde", - "visualeditor-welcomedialog-title": "Wellkumme {{ucfirst:{{GRAMMAR:em|{{ucfirst:$2}}}}}}{{GENDER:$1|}}" + "visualeditor-welcomedialog-title": "{{GENDER:$1|Wellkumme}} {{GRAMMAR:em|$2}}" } diff --git a/i18n/ve-wmf/ku-latn.json b/i18n/ve-wmf/ku-latn.json index 4e32d9fd92..a2c788ba03 100644 --- a/i18n/ve-wmf/ku-latn.json +++ b/i18n/ve-wmf/ku-latn.json @@ -7,13 +7,13 @@ "Guherto" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Guhartina dîtbarî]]", + "tag-visualeditor": "Guhartina dîtbarî", "tag-visualeditor-description": "Bi bikaranîna [[{{MediaWiki:visualeditor-descriptionpagelink}}|guhartina dîtbarî]] hat guhartin", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Guhartina dîtbarî: Kontrol bike]]", + "tag-visualeditor-needcheck": "Guhartina dîtbarî: Kontrol bike", "tag-visualeditor-needcheck-description": "Guhartina ku bi [[{{MediaWiki:visualeditor-descriptionpagelink}}|edîtora dîtbarî]] hatiye çêkirin ku li wir sîstemê dît ku di wîkînivîsê de dibe ku guhartinên nexwestî hebin.", - "tag-visualeditor-wikitext": "2017 amûra guhartina çavkaniyê", - "tag-visualeditor-wikitext-description": "Guhartinên bi rêya 2017 amûra guhartina çavkaniyê hatine pêkanîn", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Guhartina dîtbarî: Ji çavkaniyê hatiye guhartin]]", + "tag-visualeditor-wikitext": "Amûra guhartina çavkaniyê ya 2017an", + "tag-visualeditor-wikitext-description": "Guhartinên bi riya amûra guhartina çavkaniyê ya 2017an hatine pêkanîn", + "tag-visualeditor-switched": "Guhartina dîtbarî: Ji çavkaniyê hatiye guhartin", "tag-visualeditor-switched-description": "Bikarhênerî bi edîtora dîtbarî dest bi guhartinê kir, dû re çûye ser edîtora wîkînivîsê.", "visualeditor-feedback-link": "Project:VisualEditor/Paşragihandin", "visualeditor-feedback-tool": "Di derbarê vê nermalavê de fikrên xwe bibêje", diff --git a/i18n/ve-wmf/kum.json b/i18n/ve-wmf/kum.json index 3ec2c08e53..9b47953d4f 100644 --- a/i18n/ve-wmf/kum.json +++ b/i18n/ve-wmf/kum.json @@ -5,5 +5,5 @@ "ArslanX" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуал тюзлев къуралы]]" + "tag-visualeditor": "Визуал тюзлев къуралы" } diff --git a/i18n/ve-wmf/kus.json b/i18n/ve-wmf/kus.json index b54b68d767..a8031d9390 100644 --- a/i18n/ve-wmf/kus.json +++ b/i18n/ve-wmf/kus.json @@ -7,15 +7,15 @@ "tag-editcheck-newcontent-description": "EditCheck tɛn'ɛs ye ba paas nɛ bʋnpaal lakirin la", "tag-editcheck-newreference-description": "Ba paas kpinnim lak̃ir la ni", "tag-editcheck-references-description": "EditCheck tɛn'ɛs ye ba pa' na ti bɔɔd kplnnim", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (references) activated]]", + "tag-editcheck-references-activated": "Edit Check (references) activated", "tag-editcheck-references-activated-description": "EditCheck tɛn'ɛs ye ba pa'a ti bɔɔd, kpinnim ka UI lɛɛ bɛ", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit]]", + "tag-visualeditor": "Visual edit", "tag-visualeditor-description": "Tiakir kanɛ niŋ nɛ [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-needcheck-description": "Tiakir kanɛ niŋ nɛ [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] ka zink la baŋ ye wikitext la pʋ mɔr pʋtɛn'ɛr nɛ tiak si'a", "tag-visualeditor-wikitext": "2017 zink tiakir", "tag-visualeditor-wikitext-description": "Tiakir kanɛ niŋ nɛ 2017 wikitext tiakid", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Switched]]", + "tag-visualeditor-switched": "Visual edit: Switched", "tag-visualeditor-switched-description": "O pin'ili tiak nɛ, nɛ visual tiakid ka lɛn tiaki lɛb wikitext tiakid", "visualeditor-feedback-link": "Yʋʋm la: tiakir kanɛ nyɛt/gandigir", "visualeditor-feedback-tool": "Tisim lɛbisʋg software nwa yɛla", diff --git a/i18n/ve-wmf/kw.json b/i18n/ve-wmf/kw.json index 76c7b5fc03..41544871aa 100644 --- a/i18n/ve-wmf/kw.json +++ b/i18n/ve-wmf/kw.json @@ -8,9 +8,9 @@ "Purodha" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Chanj gwelesek]]", + "tag-visualeditor": "Chanj gwelesek", "tag-visualeditor-description": "Chanjyes der an [[{{MediaWiki:visualeditor-descriptionpagelink}}|janjyel welesek]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Chanjyel welesek: Checkya]]", + "tag-visualeditor-needcheck": "Chanjyel welesek: Checkya", "visualeditor-welcomedialog-action": "Dalleth golegi", "visualeditor-welcomedialog-switch": "Skwychya dhe'n wolegell bennfenten", "visualeditor-welcomedialog-switch-ve": "Skwychya dhe'n janjyell welesek", diff --git a/i18n/ve-wmf/ky.json b/i18n/ve-wmf/ky.json index 21768986e9..c69d551bcb 100644 --- a/i18n/ve-wmf/ky.json +++ b/i18n/ve-wmf/ky.json @@ -9,14 +9,14 @@ "Викиней" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|визуалдык түзөтүү]]", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|визуалдык режиминде түзөтүлө баштап, викитекст режиминде жарыяланды]]", + "tag-visualeditor": "визуалдык түзөтүү", + "tag-visualeditor-switched": "визуалдык режиминде түзөтүлө баштап, викитекст режиминде жарыяланды", "tag-visualeditor-switched-description": "Колдонуучу визуалдык түзөткүч менен түзөтө баштап, кийин викитекст түзөткүчкө өттү.", "visualeditor-feedback-tool": "Бул курал боюнча пикир билдирүү", "visualeditor-help-label": "Колдонмону окуу", "visualeditor-welcomedialog-action": "Түзөтүп баштоо", "visualeditor-welcomedialog-content": "Көп түкүрсө көл болот.", - "visualeditor-welcomedialog-content-thanks": "Дүйнөнү ого бетер таанууга жардам бергениңиз үчүн рахмат !", + "visualeditor-welcomedialog-content-thanks": "Дүйнөнү ого бетер таанууга жардам бергениңиз үчүн рахмат!", "visualeditor-welcomedialog-switch": "Булак түзөткүчтөн түзөтүп баштоо", "visualeditor-welcomedialog-switch-ve": "Визуалдык түзөткүчтөн түзөтүп баштоо" } diff --git a/i18n/ve-wmf/la.json b/i18n/ve-wmf/la.json index 43193858a0..3573c0d370 100644 --- a/i18n/ve-wmf/la.json +++ b/i18n/ve-wmf/la.json @@ -4,5 +4,5 @@ "Andrew Dalby" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Per editorem visualem]]" + "tag-visualeditor": "Per editorem visualem" } diff --git a/i18n/ve-wmf/lad.json b/i18n/ve-wmf/lad.json index 73e5001be5..5808e5659b 100644 --- a/i18n/ve-wmf/lad.json +++ b/i18n/ve-wmf/lad.json @@ -4,5 +4,5 @@ "WikiiiTranslator" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|trocamiento visual]]" + "tag-visualeditor": "trocamiento visual" } diff --git a/i18n/ve-wmf/lb.json b/i18n/ve-wmf/lb.json index 0348c5537d..6b53a8b1a9 100644 --- a/i18n/ve-wmf/lb.json +++ b/i18n/ve-wmf/lb.json @@ -11,13 +11,18 @@ "Викиней" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell Ännerung]]", + "tag-editcheck-newreference-description": "Et gouf eng Referenz op d'Säit derbäigesat", + "tag-editcheck-references-activated": "Ännerungsiwwerpréiwung (Referenzen) aktivéiert", + "tag-editcheck-references-shown": "Ännerungsiwwerpréiwung (Referenzen) ugewisen", + "tag-editcheck-tone-shown": "Ännerungsiwwerpréiwung (Tounfall) ugewisen", + "tag-editcheck-paste-shown": "Ännerungsiwwerpréiwung (Asetzen) ugewisen", + "tag-visualeditor": "Visuell Ännerung", "tag-visualeditor-description": "Ännerung, déi mam [[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuellen Editeur]] gemaach gouf", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell änneren: Nokucken]]", + "tag-visualeditor-needcheck": "Visuell änneren: Nokucken", "tag-visualeditor-needcheck-description": "Ännerung déi mam [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuellen Editeur]] gemaach gouf a wou de System eventuell net gewollten Ännerunge gemaach huet.", "tag-visualeditor-wikitext": "2017-Quelltext-Ännerung", - "tag-visualeditor-wikitext-description": "Ännerung déi mam Wikitext-Editeur-2017 gemaach gouf", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell Ännerung: Ëmgeschalt]]", + "tag-visualeditor-wikitext-description": "Ännerung, déi mam Wikitext-Editeur-2017 gemaach gouf", + "tag-visualeditor-switched": "Visuell Ännerung: Ëmgeschalt", "tag-visualeditor-switched-description": "De Benotzer huet ugefaang mam visuellen Editeur z'änneren an huet duerno op de Wikitext-Editeur gewiesselt.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Feedback zu dëser Software ginn", diff --git a/i18n/ve-wmf/lbe.json b/i18n/ve-wmf/lbe.json index 7b8e4d9f24..3b009b6077 100644 --- a/i18n/ve-wmf/lbe.json +++ b/i18n/ve-wmf/lbe.json @@ -4,5 +4,5 @@ "Soul Train" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|чӀалачӀин даххана шаврил ярагъ]]" + "tag-visualeditor": "чӀалачӀин даххана шаврил ярагъ" } diff --git a/i18n/ve-wmf/lez.json b/i18n/ve-wmf/lez.json index 3f0806bdab..5399b1224d 100644 --- a/i18n/ve-wmf/lez.json +++ b/i18n/ve-wmf/lez.json @@ -4,5 +4,5 @@ "Soul Train" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|визуал редактор]]" + "tag-visualeditor": "визуал редактор" } diff --git a/i18n/ve-wmf/lfn.json b/i18n/ve-wmf/lfn.json index 35bbb8a7ec..868dc6833b 100644 --- a/i18n/ve-wmf/lfn.json +++ b/i18n/ve-wmf/lfn.json @@ -5,5 +5,5 @@ "Katxis" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editador vidal]]" + "tag-visualeditor": "Editador vidal" } diff --git a/i18n/ve-wmf/li.json b/i18n/ve-wmf/li.json index ef2bb99dae..205000da90 100644 --- a/i18n/ve-wmf/li.json +++ b/i18n/ve-wmf/li.json @@ -4,5 +4,5 @@ "Ooswesthoesbes" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuelen teksverwirker]]" + "tag-visualeditor": "Visuelen teksverwirker" } diff --git a/i18n/ve-wmf/lij.json b/i18n/ve-wmf/lij.json index 68ab5ac18d..9787a4f97f 100644 --- a/i18n/ve-wmf/lij.json +++ b/i18n/ve-wmf/lij.json @@ -1,24 +1,35 @@ { "@metadata": { "authors": [ - "Giromin Cangiaxo" + "Giromin Cangiaxo", + "N. Longo" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modiffica visuale]]", - "tag-visualeditor-description": "Modiffica fæta dœuviando l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor vixoâ]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modiffica vixoâ: controlâ]]", - "tag-visualeditor-needcheck-description": "Modiffica fæta dœuviando l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor vixoâ]] donde-o scistema o l'ha rilevou de poscibbile modiffiche non vosciue into wikitesto.", - "tag-visualeditor-wikitext": "Editor wikitesto 2017", - "tag-visualeditor-wikitext-description": "Modiffica fæta dœuviando l'editor wikitesto 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modiffica vixoâ: Cangiou]]", - "tag-visualeditor-switched-description": "L'utente o l'ha inçou e modiffiche dœuviando l'editor vixoâ, doppo o l'è passou a l'editor de wikitesto.", - "visualeditor-feedback-link": "Project:VisualEditor/Commenti", - "visualeditor-feedback-tool": "Scrivi un commento sciu questo software", - "visualeditor-help-label": "Lezi a guidda utente", - "visualeditor-welcomedialog-action": "Comensa a modificâ", - "visualeditor-welcomedialog-content": "Pœu contribuî chissessæ, e ogni megioiia a l'agiutta.", - "visualeditor-welcomedialog-content-thanks": "Grassie pe agiutâ o mondo a scrovî sempre cose nœuve!", - "visualeditor-welcomedialog-switch": "Passa a l'editor wikitesto", - "visualeditor-welcomedialog-switch-ve": "Passa a l'editor vixoâ", - "visualeditor-welcomedialog-title": "{{GENDER:$1|Benvegnuo|Benvegnua|Benvegnuo/a}} sciu $2" + "tag-editcheck-newcontent-description": "EditCheck o crédde che do nêuvo contegnûo o ségge stæto azónto a-a pàgina", + "tag-editcheck-newreference-description": "Ina nòtta a l'é stæta azónta a-a pàgina", + "tag-editcheck-references-description": "EditCheck o crédde che 'na nòtta a poriéiva êse necesâia", + "tag-editcheck-references-activated": "Edit Check (nòtte) ativòu", + "tag-editcheck-references-activated-description": "EditCheck o crédde che 'na nòtta a poriéiva êse necesâia e che l'UI a l'é stæta mostrâ", + "tag-editcheck-references-shown": "Edit Check (nòtte) mostròu", + "tag-editcheck-references-shown-description": "EditCheck o crédde che 'na nòtta a poriéiva êse necesâia e che l'UI a l'é stæta mostrâ", + "tag-editcheck-tone-description": "L'EditCheck o l'à notòu 'n problêma potençiâle co-o tón de quàrche contegnûo azónto", + "tag-editcheck-tone-shown": "Edit Check (tón) mostròu", + "tag-editcheck-tone-shown-description": "EditCheck o crédde che 'n agiustaménto do tón inte çèrto contegnûo o poriéiva êse necesâio, e l'UI a l'é stæta mostrâ", + "tag-visualeditor": "Modìfica vizoâle", + "tag-visualeditor-description": "Modìfica fæta dêuviàndo l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor vizoâle]]", + "tag-visualeditor-needcheck": "Modìfica vizoâle: controlâ", + "tag-visualeditor-needcheck-description": "Modìfica fæta dêuviàndo l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor vizoâle]] dónde o scistêma o l'à rilevòu de poscìbili modìfiche no vosciûe into wikitèsto.", + "tag-visualeditor-wikitext": "Editor wikitèsto 2017", + "tag-visualeditor-wikitext-description": "Modìfica fæta dêuviàndo l'editor wikitèsto 2017", + "tag-visualeditor-switched": "Modìfica vizoâle: Cangiòu", + "tag-visualeditor-switched-description": "L'uténte o l'à comensòu e modìfiche dêuviàndo l'editor vizoâle, dòppo o l'é pasòu a l'editor do wikitèsto.", + "visualeditor-feedback-link": "Project:VisualEditor/Coménti", + "visualeditor-feedback-tool": "Scrîvi 'n coménto in sce sto software chi", + "visualeditor-help-label": "Lêzi a goìdda uténte", + "visualeditor-welcomedialog-action": "Coménsa a modificâ", + "visualeditor-welcomedialog-content": "Peu contriboî chi se sæ, e ògni megioaménto o l'agiùtta.", + "visualeditor-welcomedialog-content-thanks": "Gràçie pe agiutâ o móndo a scrovî sénpre cöse nêuve!", + "visualeditor-welcomedialog-switch": "Pàssa a l'editor wikitèsto", + "visualeditor-welcomedialog-switch-ve": "Pàssa a l'editor vizoâle", + "visualeditor-welcomedialog-title": "{{GENDER:$1|Benvegnûo|Benvegnûa|Benvegnûo/a}} sciù $2" } diff --git a/i18n/ve-wmf/lki.json b/i18n/ve-wmf/lki.json index cf4c30d8cf..1509bf62ad 100644 --- a/i18n/ve-wmf/lki.json +++ b/i18n/ve-wmf/lki.json @@ -5,6 +5,6 @@ "Hosseinblue" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویرایشگر دیداری]]", + "tag-visualeditor": "ویرایشگر دیداری", "visualeditor-welcomedialog-action": "ویرایش را آغاز کنید" } diff --git a/i18n/ve-wmf/lld.json b/i18n/ve-wmf/lld.json index 2eb5594b93..fd7786c964 100644 --- a/i18n/ve-wmf/lld.json +++ b/i18n/ve-wmf/lld.json @@ -4,5 +4,5 @@ "Asenoner" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Mudazion visuela]]" + "tag-visualeditor": "Mudazion visuela" } diff --git a/i18n/ve-wmf/lmo.json b/i18n/ve-wmf/lmo.json index 166a2de2ef..cb72d260e3 100644 --- a/i18n/ve-wmf/lmo.json +++ b/i18n/ve-wmf/lmo.json @@ -5,13 +5,13 @@ "Salvemm el lombard" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor Visual]]", + "tag-visualeditor": "Editor Visual", "tag-visualeditor-description": "Modifica fada cont el doprà l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modiffica vixoâ: controlà]]", + "tag-visualeditor-needcheck": "Modiffica vixoâ: controlà", "tag-visualeditor-needcheck-description": "Modifica eseguida cont el doprà l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] indove el sistema l'ha rilevad di possibil modifiche minga vorude in del wikitesto.", "tag-visualeditor-wikitext": "Editor wikitest 2017", "tag-visualeditor-wikitext-description": "Modifica efetuada cont el drovà l'editor wikitest 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modifica visual: cambiad]]", + "tag-visualeditor-switched": "Modifica visual: cambiad", "tag-visualeditor-switched-description": "L'utent l'hà tacà a modifegà cont el drovà l'editor visual, poeu l'è passà de noeuv a l'editor wikitest.", "visualeditor-feedback-link": "Project:VisualEditor/Comencc", "visualeditor-feedback-tool": "Dinn quell che te penset de quell programa informatich chì", diff --git a/i18n/ve-wmf/lo.json b/i18n/ve-wmf/lo.json index 8ac150df79..bfa65bbb8a 100644 --- a/i18n/ve-wmf/lo.json +++ b/i18n/ve-wmf/lo.json @@ -4,5 +4,5 @@ "Aefgh39622" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ການແກ້ໄຂແບບເຫັນພາບ]]" + "tag-visualeditor": "ການແກ້ໄຂແບບເຫັນພາບ" } diff --git a/i18n/ve-wmf/lrc.json b/i18n/ve-wmf/lrc.json index f50b6f08fc..2ded5a5669 100644 --- a/i18n/ve-wmf/lrc.json +++ b/i18n/ve-wmf/lrc.json @@ -5,5 +5,5 @@ "Mogoeilor" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ٱنجوما ڤیرایشکار]]" + "tag-visualeditor": "ٱنجوما ڤیرایشکار" } diff --git a/i18n/ve-wmf/lt.json b/i18n/ve-wmf/lt.json index aaa00c1758..da8d5ed93f 100644 --- a/i18n/ve-wmf/lt.json +++ b/i18n/ve-wmf/lt.json @@ -9,13 +9,13 @@ "Zygimantus" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualus redagavimas]]", + "tag-visualeditor": "Vizualus redagavimas", "tag-visualeditor-description": "Redaguota su [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualiu redaktoriumi]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualus redagavimas: Tikrinti]]", + "tag-visualeditor-needcheck": "Vizualus redagavimas: Tikrinti", "tag-visualeditor-needcheck-description": "Redaguota su [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualiu redaktoriumi]], kai sistema aptiko galimai nenorėtų vikiteksto pakeitimų.", "tag-visualeditor-wikitext": "2017 kodo redagavimas", "tag-visualeditor-wikitext-description": "Keitimas atliktas su 2017 vikiteksto redaktoriumi", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualus redaktorius: Perjungta]]", + "tag-visualeditor-switched": "Vizualus redaktorius: Perjungta", "tag-visualeditor-switched-description": "Naudotojas pradėjo redaguoti su vizualiu redaktoriumi, po to persijungė į vikiteksto redaktorių.", "visualeditor-feedback-link": "Project:VisualEditor/Atsiliepimai", "visualeditor-feedback-tool": "Pateikti atsiliepimą apie šią programinę įrangą", diff --git a/i18n/ve-wmf/luz.json b/i18n/ve-wmf/luz.json index aca60e5c71..3d69f977c6 100644 --- a/i18n/ve-wmf/luz.json +++ b/i18n/ve-wmf/luz.json @@ -5,5 +5,5 @@ "علی ساکی لرستانی" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}| اصلاح کردن دیۮاری]]" + "tag-visualeditor": " اصلاح کردن دیۮاری" } diff --git a/i18n/ve-wmf/lv.json b/i18n/ve-wmf/lv.json index 92a9fd5053..c429bfd96f 100644 --- a/i18n/ve-wmf/lv.json +++ b/i18n/ve-wmf/lv.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Admresdeserv.", - "Amire80", "Audriusa", "Eitvys200", "Nitalynx", @@ -13,13 +12,13 @@ }, "tag-editcheck-newreference-description": "Lapai tika pievienota atsauce", "tag-editcheck-references-activated-description": "EditCheck uzskata, ka varētu būt nepieciešama atsauce, un tika parādīts aicinājums lietotāja saskarnē", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuālā labošana]]", + "tag-visualeditor": "Vizuālā labošana", "tag-visualeditor-description": "Labots ar [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuālo redaktoru]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuālais labojums: pārbaudiet]]", + "tag-visualeditor-needcheck": "Vizuālais labojums: pārbaudiet", "tag-visualeditor-needcheck-description": "Labojums veikts ar [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuālo redaktoru]], un sistēma konstatēja iespējamas netīšas izmaiņas wikitext saturā.", "tag-visualeditor-wikitext": "2017. gada vikikoda redaktors", "tag-visualeditor-wikitext-description": "Labojums veikts ar 2017. gada vikikoda redaktoru", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuālais labojums: Pārslēdzās]]", + "tag-visualeditor-switched": "Vizuālais labojums: Pārslēdzās", "tag-visualeditor-switched-description": "Lietotājs sāka labot vizuālajā redaktorā un pārslēdzās uz vikiteksta redaktoru.", "visualeditor-feedback-link": "VizuālaisRedaktors/Atsauksmes", "visualeditor-feedback-tool": "Atstāt atsauksmi par šo programmatūru", diff --git a/i18n/ve-wmf/lzh.json b/i18n/ve-wmf/lzh.json index ed8ee3b3b8..c640346ab2 100644 --- a/i18n/ve-wmf/lzh.json +++ b/i18n/ve-wmf/lzh.json @@ -4,5 +4,5 @@ "SolidBlock" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|呈纂]]" + "tag-visualeditor": "呈纂" } diff --git a/i18n/ve-wmf/lzz.json b/i18n/ve-wmf/lzz.json deleted file mode 100644 index a36f5537a8..0000000000 --- a/i18n/ve-wmf/lzz.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "@metadata": { - "authors": [ - "Cem Rize" - ] - }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Görsel Düzenleyici]]" -} diff --git a/i18n/ve-wmf/mad.json b/i18n/ve-wmf/mad.json index 8950b0775c..20d38f631b 100644 --- a/i18n/ve-wmf/mad.json +++ b/i18n/ve-wmf/mad.json @@ -4,5 +4,5 @@ "Boesenbergia" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]" + "tag-visualeditor": "VisualEditor" } diff --git a/i18n/ve-wmf/mag.json b/i18n/ve-wmf/mag.json index 794dcaec8c..f7b8c52c8e 100644 --- a/i18n/ve-wmf/mag.json +++ b/i18n/ve-wmf/mag.json @@ -7,23 +7,23 @@ "tag-editcheck-newcontent-description": "EditCheck के मानना हे जे पन्नामे नया सामग्री जोड़ल गेल हे", "tag-editcheck-newreference-description": "पन्नामे एगो सन्दर्भ जोड़ल गेल", "tag-editcheck-references-description": "EditCheck के मानना हे जे एगो सन्दर्भके आवश्यकता हो सकहे", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|सम्पादन जाँच (सन्दर्भ) सक्रियकृत]]", + "tag-editcheck-references-activated": "सम्पादन जाँच (सन्दर्भ) सक्रियकृत", "tag-editcheck-references-activated-description": "EditCheck के मानना हे जे एगो सन्दर्भके आवश्यकता हो सकहे आउ UI देखावल गेलहल", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य सम्पादन]]", + "tag-visualeditor": "यथादृश्य सम्पादन", "tag-visualeditor-description": "सम्पादन [[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य सम्पादिका]]के प्रयोगसे कैल गेल", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य सम्पादिका: जाँची]]", - "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य सम्पादिका]]से कैल गेल सम्पादन जेकरामे सिस्टम् पैलक हे कि विकिपाठमे अनपेक्षित बदलाव हो सकहे ।", + "tag-visualeditor-needcheck": "यथादृश्य सम्पादिका: जाँची", + "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्य सम्पादिका]]से कैल गेल सम्पादन जेकरामे सिस्टम पैलकै हे कि विकिपाठमे अनपेक्षित बदलाव हो सकहे ।", "tag-visualeditor-wikitext": "२०१७ स्रोत सम्पादन", "tag-visualeditor-wikitext-description": "२०१७ विकिबाठ सम्पादिकासे कैल गेल सम्पादन", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादन: बदलल]]", - "tag-visualeditor-switched-description": "सदस्स दृश्य सम्पादिकाके सहायतासे सम्पादन काज आरम्भ कैलन आउ ओकर बाद स्रोत सम्पादित करेके बिकल्प चुनलन ।", + "tag-visualeditor-switched": "दृश्य सम्पादन: बदललै", + "tag-visualeditor-switched-description": "प्रयोगकर्ता दृश्य सम्पादिकाके सहयोगसे सम्पादन काज आरम्भ कैलन आउ ओकर बाद स्रोत सम्पादित करेके विकल्प चुनलन ।", "visualeditor-feedback-link": "Project:VisualEditor/प्रतिक्रिया", - "visualeditor-feedback-tool": "ई सॉफ्टवेयरके बारेमे अपन सुझाव लिखी", - "visualeditor-help-label": "सदस्य नियमावली पढ़ी", - "visualeditor-welcomedialog-action": "सम्पादन आरम्भ करी", - "visualeditor-welcomedialog-content": "कौनो सम्पादित कर सकहे आउ कौनो ओकरा निम्मन बनावेमे सहायता कर सकहे ।", - "visualeditor-welcomedialog-content-thanks": "बिश्वमे आउ ज्ञान बाँटेला धन्यबाद !", - "visualeditor-welcomedialog-switch": "स्रोत सम्पादिकामे जायी", - "visualeditor-welcomedialog-switch-ve": "दृश्य सम्पादिकामे जाया", + "visualeditor-feedback-tool": "ई साफ्टवेयरके बारेमे अपन सुझाव लिखथिन", + "visualeditor-help-label": "प्रयोगकर्ता नियमावली पढ़थिन", + "visualeditor-welcomedialog-action": "सम्पादन आरम्भ करथिन", + "visualeditor-welcomedialog-content": "कौनो सम्पादित कर सकहे आउ कौनो ओकरा निमन बनावेमे सहयोग कर सकहे ।", + "visualeditor-welcomedialog-content-thanks": "विश्वमे आउ ज्ञान बाटेला धन्यवाद !", + "visualeditor-welcomedialog-switch": "स्रोत सम्पादिकामे जैथिन", + "visualeditor-welcomedialog-switch-ve": "दृश्य सम्पादिकामे जैथिन", "visualeditor-welcomedialog-title": "$2 मे {{GENDER:$1|स्वागत}} हे" } diff --git a/i18n/ve-wmf/mai.json b/i18n/ve-wmf/mai.json index 9a16edada1..7c11917df0 100644 --- a/i18n/ve-wmf/mai.json +++ b/i18n/ve-wmf/mai.json @@ -4,6 +4,6 @@ "बिप्लब आनन्द" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|भिजुअल सम्पादक]]", + "tag-visualeditor": "भिजुअल सम्पादक", "visualeditor-welcomedialog-content-thanks": "सहायताक लेल धन्यवाद!" } diff --git a/i18n/ve-wmf/mg.json b/i18n/ve-wmf/mg.json index 04732fac10..4d254fa529 100644 --- a/i18n/ve-wmf/mg.json +++ b/i18n/ve-wmf/mg.json @@ -4,13 +4,25 @@ "Jagwar" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Hanova araka ny hitan'ny maso]]", + "tag-editcheck-newcontent-description": "EditCheck dia mihevitra fa misy votoatiny vaovao nampiana tamin'ilay pejy", + "tag-editcheck-newreference-description": "Nisy tsiahy nampiana tamin'ilay pejy", + "tag-editcheck-references-description": "EditCheck dia mihevitra fa mety nisy tsiahy nampiana tamin'ilay pejy", + "tag-editcheck-references-activated": "Miasa ny mpanamarina fiovana (tsiahy)", + "tag-editcheck-references-activated-description": "Mihevitra ny EditCheck fa mety nilaina ny tsiahy, ary naseho ny UI", + "tag-editcheck-references-shown": "EditCheck (tsiahy) misehoS", + "tag-editcheck-references-shown-description": "EditCheck dia mihevitra fa mety ilaina ny fanondroana, ary naseho ny UI", + "tag-editcheck-tone-description": "Nahatsikaritra olana mety hitranga amin'ny fomba fitenin'ny votoaty nampiana sasany i EditCheck.", + "tag-editcheck-tone-shown": "Edit Check (fomba fiteny) naseho", + "tag-editcheck-tone-shown-description": "EditCheck dia mihevitra fa ny mety ilaina ny fanitsiana ny fomba fitenin'ny votoatiny ato, ary naseho ny UI.", + "tag-editcheck-paste-shown": "Edit Check (fandikana-fametahana) naseho", + "tag-editcheck-paste-shown-description": "EditCheck dia nangataka fanazavana be kokoa momba ny votoatiny napetaka, izay mety na nesorina na nohamafisina fa azo ekena", + "tag-visualeditor": "Hanova araka ny hitan'ny maso", "tag-visualeditor-description": "Fanovana natao tamin'ny alalan'i [[{{MediaWiki:visualeditor-descriptionpagelink}}|mpanova ara-maso]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|mpanova ara-maso: tokony homarinina]]", + "tag-visualeditor-needcheck": "mpanova ara-maso: tokony homarinina", "tag-visualeditor-needcheck-description": "Fanovàna natao tamin'ny alalan'i [[{{MediaWiki:visualeditor-descriptionpagelink}}|mpanova ara-maso]] izay nahitan'ny rafitra hadisoam-panovàna", "tag-visualeditor-wikitext": "mpanova fango 2017", "tag-visualeditor-wikitext-description": "Fiovana natao tamin'ny alalan'ny mpanova wikisoratra 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor:Nivadika]]", + "tag-visualeditor-switched": "VisualEditor:Nivadika", "tag-visualeditor-switched-description": "Nanomboka nampiasa mpanova ara-maso ity mpikambana ity ary nivadika tamin'ny mpanova wikisoratra izy.", "visualeditor-feedback-link": "Project:VisualEditor/Famoahan-kevitra", "visualeditor-feedback-tool": "Hametraka famoahan-kevitra momba ity rindrankajy ity", @@ -20,5 +32,5 @@ "visualeditor-welcomedialog-content-thanks": "Misaotra anao manampy an'izao tontolo izao hahita zava-baovao be kokoa!", "visualeditor-welcomedialog-switch": "Hivadika amin'ny mpanova fango", "visualeditor-welcomedialog-switch-ve": "Hivadika amin'ny mpanova ara-maso", - "visualeditor-welcomedialog-title": "{{GENDER:$1|}}Tonga soa eto amin'i $2" + "visualeditor-welcomedialog-title": "{{GENDER:$1|Tonga soa}} eto amin'i $2" } diff --git a/i18n/ve-wmf/min.json b/i18n/ve-wmf/min.json index d8f60e173e..d870f8a8cf 100644 --- a/i18n/ve-wmf/min.json +++ b/i18n/ve-wmf/min.json @@ -5,12 +5,12 @@ "Jagwar" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Suntiang visual]]", + "tag-visualeditor": "Suntiang visual", "tag-visualeditor-description": "Suntiangan manggunoan [[{{MediaWiki:visualeditor-descriptionpagelink}}|Panyuntiang visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VE: Pariso]]", + "tag-visualeditor-needcheck": "VE: Pariso", "tag-visualeditor-wikitext": "Suntiangan sumber 2017", "tag-visualeditor-wikitext-description": "Suntiangan manggunoan panyuntiang teks wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VE: Ganti]]", + "tag-visualeditor-switched": "VE: Ganti", "visualeditor-feedback-link": "Project:VisualEditor/Umpan baliak", "visualeditor-feedback-tool": "Tinggaan umpan baliak ka piranti lunak ko", "visualeditor-help-label": "Baco panduan pangguno", diff --git a/i18n/ve-wmf/mk.json b/i18n/ve-wmf/mk.json index a0018588cc..292f5616a3 100644 --- a/i18n/ve-wmf/mk.json +++ b/i18n/ve-wmf/mk.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bjankuloski06", "Brest", "Iwan Novirion", @@ -12,15 +11,22 @@ "tag-editcheck-newcontent-description": "EditCheck мисли дека на страницата е додадена нова содржина", "tag-editcheck-newreference-description": "На страницата е додадена нова содржина", "tag-editcheck-references-description": "EditCheck мисли дека треба навод", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Вклучена проверката на уредувања (наводи)]]", + "tag-editcheck-references-activated": "Вклучена проверката на уредувања (наводи)", "tag-editcheck-references-activated-description": "Проверката на уредувања смета дека може да треба навод, и се покажа корисничкиот посредник", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Нагледно уредување]]", + "tag-editcheck-references-shown": "Прикажана проверка на уредување (наводи)", + "tag-editcheck-references-shown-description": "Проверката на уредувања смета дека може да треба навод, и се покажа корисничкиот посредник", + "tag-editcheck-tone-description": "EditCheck пронајде потенцијален проблем со тонот во додадената содржина", + "tag-editcheck-tone-shown": "Прикажана проверката на уредувања (тон)", + "tag-editcheck-tone-shown-description": "Проверката на уредувања смета дека може да е потребно прилагодување на тонот во некои содржини, и бил прикажан корисничкиот посредник", + "tag-editcheck-paste-shown": "Прикажана проверката на уредувања (прекопирано)", + "tag-editcheck-paste-shown-description": "Проверката на уредувања побарала појаснување за содржината што ја прекопирал уредникот, која потоа е отстранета или потврдена како дозволена", + "tag-visualeditor": "Нагледно уредување", "tag-visualeditor-description": "Уредување направено со [[{{MediaWiki:visualeditor-descriptionpagelink}}|нагледниот уредник]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Нагледен уредник: Проверка]]", + "tag-visualeditor-needcheck": "Нагледен уредник: Проверка", "tag-visualeditor-needcheck-description": "Уредување направено со [[{{MediaWiki:visualeditor-descriptionpagelink}}|нагледниот уредник]] при кое системот утврдил дека викитекстот може да има ненамерни измени.", "tag-visualeditor-wikitext": "Изворно уредување 2017", "tag-visualeditor-wikitext-description": "Уредувањето е направено со уредникот на викитекст од 2017 г.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Негледен уредник: Префрлено]]", + "tag-visualeditor-switched": "Негледен уредник: Префрлено", "tag-visualeditor-switched-description": "Корисникот почнал да уредува со нагледниот уредник, но потоа се префрлил на викитекстуалниот.", "visualeditor-feedback-link": "Project:VisualEditor/Мислења", "visualeditor-feedback-tool": "Дајте мислење за програмов", diff --git a/i18n/ve-wmf/ml.json b/i18n/ve-wmf/ml.json index a301d7c0fd..1345611ba4 100644 --- a/i18n/ve-wmf/ml.json +++ b/i18n/ve-wmf/ml.json @@ -7,13 +7,13 @@ "Vssun" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|കണ്ടുതിരുത്തൽ സൗകര്യം]]", + "tag-visualeditor": "കണ്ടുതിരുത്തൽ സൗകര്യം", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|കണ്ടുതിരുത്തൽ സൗകര്യമുപയോഗിച്ച്]] ചെയ്ത തിരുത്തൽ", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|കണ്ടുതിരുത്തൽ സൗകര്യം: പരിശോധിക്കുക]]", + "tag-visualeditor-needcheck": "കണ്ടുതിരുത്തൽ സൗകര്യം: പരിശോധിക്കുക", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|കണ്ടുതിരുത്തൽ സൗകര്യം]] ഉപയോഗിച്ച് തിരുത്തുമ്പോൾ വിക്കി എഴുത്ത് ഉൾപ്പെട്ടാൽ അപ്രതീക്ഷിത മാറ്റങ്ങൾ ഉണ്ടായേക്കാനിടയുണ്ട്.", "tag-visualeditor-wikitext": "2017 സ്രോതസ്സ് തിരുത്ത്", "tag-visualeditor-wikitext-description": "2017 സ്രോതസ്സ് തിരുത്തൽ സൗകര്യം ഉപയോഗിച്ച് ചെയ്ത തിരുത്ത്", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|കണ്ടുതിരുത്തൽ സൗകര്യം:മാറിയത്]]", + "tag-visualeditor-switched": "കണ്ടുതിരുത്തൽ സൗകര്യം:മാറിയത്", "tag-visualeditor-switched-description": "ഉപയോക്താവ് തിരുത്താൻ തുടങ്ങിയത് കണ്ടുതിരുത്തൽ സൗകര്യം ഉപയോഗിച്ചാണെങ്കിലും പിന്നീട് വിക്കിഎഴുത്ത് ഉപകരണത്തിലേക്ക് മാറി", "visualeditor-feedback-link": "Project:കണ്ടുതിരുത്തൽ സൗകര്യം/പ്രതികരണങ്ങൾ", "visualeditor-feedback-tool": "ഈ സോഫ്റ്റ്‌വേറിനെക്കുറിച്ചുള്ള പ്രതികരണം ചേർക്കുക", diff --git a/i18n/ve-wmf/mnc-mong.json b/i18n/ve-wmf/mnc-mong.json index 8b2af79179..62a96050fb 100644 --- a/i18n/ve-wmf/mnc-mong.json +++ b/i18n/ve-wmf/mnc-mong.json @@ -4,5 +4,5 @@ "Nikki" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ᡨᡠᠸᠠᡵᠠ ᠮᡠᡨᡝᡵᡝ ᡴᡡᠪᡠᠯᡳᠨ]]" + "tag-visualeditor": "ᡨᡠᠸᠠᡵᠠ ᠮᡠᡨᡝᡵᡝ ᡴᡡᠪᡠᠯᡳᠨ" } diff --git a/i18n/ve-wmf/mnc.json b/i18n/ve-wmf/mnc.json index 75d539a75c..4ac4139f30 100644 --- a/i18n/ve-wmf/mnc.json +++ b/i18n/ve-wmf/mnc.json @@ -1,9 +1,8 @@ { "@metadata": { "authors": [ - "Amire80", "Chulsu463" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Tuwara mutere kvbulin]]" + "tag-visualeditor": "Tuwara mutere kvbulin" } diff --git a/i18n/ve-wmf/mni.json b/i18n/ve-wmf/mni.json index cccd7de41e..cf64c7d127 100644 --- a/i18n/ve-wmf/mni.json +++ b/i18n/ve-wmf/mni.json @@ -4,6 +4,6 @@ "Awangba Mangang" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ꯃꯤꯠꯅꯥ ꯎꯔꯒ ꯁꯦꯝꯒꯠꯄ]]", + "tag-visualeditor": "ꯃꯤꯠꯅꯥ ꯎꯔꯒ ꯁꯦꯝꯒꯠꯄ", "visualeditor-welcomedialog-action": "ꯁꯦꯝꯒꯠꯄ ꯍꯧꯔꯦ" } diff --git a/i18n/ve-wmf/mnw.json b/i18n/ve-wmf/mnw.json index 8b773a6e0a..abddff49cb 100644 --- a/i18n/ve-wmf/mnw.json +++ b/i18n/ve-wmf/mnw.json @@ -5,6 +5,6 @@ "咽頭べさ" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ပလေဝ်ဒါန် မညာတ်နမတ်]]", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|မပြၚ်လှာဲထောံ:ပလေဝ်ဒါန်ဗီုပြၚ်မဆဵုညာတ်]]" + "tag-visualeditor": "ပလေဝ်ဒါန် မညာတ်နမတ်", + "tag-visualeditor-switched": "မပြၚ်လှာဲထောံ:ပလေဝ်ဒါန်ဗီုပြၚ်မဆဵုညာတ်" } diff --git a/i18n/ve-wmf/mos.json b/i18n/ve-wmf/mos.json index 29bc465a28..bac823e0d4 100644 --- a/i18n/ve-wmf/mos.json +++ b/i18n/ve-wmf/mos.json @@ -7,15 +7,15 @@ "tag-editcheck-newcontent-description": "tek bãoonego gésgo o b pãas-ã bũmbu gʋlsga pugin", "tag-editcheck-newreference-description": "O b rɩka seb-tika m pãas sebrã pugin", "tag-editcheck-references-description": "tek bãoonego gés'gu tâgs tɩ o b pãas-ã seb-tika ning o b m boora", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Edit Check (references) activated]]", + "tag-editcheck-references-activated": "Edit Check (references) activated", "tag-editcheck-references-activated-description": "tek bãoonego gésgo tâag sê tɩ o b na tôog m boore sén tikɩ, la UI sẽn yé", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|gésgo tekrɩ]]", + "tag-visualeditor": "gésgo tekrɩ", "tag-visualeditor-description": "Tékra maane tɩ yaa [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-needcheck-description": "Tékra maane tɩ yaa [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] tɩ masĩni bâng tɩ yaa wikitext ninga n tari tekrɩ ning sẽn ka mè a tiiri.", "tag-visualeditor-wikitext": "Yʋʋm 2017 zii tékrɩ", "tag-visualeditor-wikitext-description": "Tékra maana yʋʋm 2017 tɩ yaa wikitext tekrɩ la rɩkɩ m mane na", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Switched]]", + "tag-visualeditor-switched": "Visual edit: Switched", "tag-visualeditor-switched-description": "Tʋʋmda soaba sɩnga tek bãoonego tɩ yaa gésgo tekrɩ la tek n kêng wikitext tekɩr", "visualeditor-feedback-link": "Tʋɩmda: gésgo tekrɩ/lébsé gomda", "visualeditor-feedback-tool": "Yélé fo sẽn yɛ ordinatêêra boo'nda to-to", @@ -25,5 +25,5 @@ "visualeditor-welcomedialog-content-thanks": "Y barka fo sẽn song tɩ duni fãa bãng wʋsga", "visualeditor-welcomedialog-switch": "Lébsé n kêng zii tékɩ", "visualeditor-welcomedialog-switch-ve": "Lébsé n kêng geese n tékɩ", - "visualeditor-welcomedialog-title": "{{sɩg-roogo:$1|waoongo}} tɩ $2" + "visualeditor-welcomedialog-title": "{{GENDER:$1|Waoongo}} tɩ $2" } diff --git a/i18n/ve-wmf/mr.json b/i18n/ve-wmf/mr.json index f923dc0eda..ec76d8806c 100644 --- a/i18n/ve-wmf/mr.json +++ b/i18n/ve-wmf/mr.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Kaajawa", "Mahitgar", "Praju23", @@ -12,13 +11,13 @@ "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य संपादन]]", + "tag-visualeditor": "दृश्य संपादन", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्यसंपादक]] वापरून केलेले संपादन", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्यसंपादन: तपासा]]", + "tag-visualeditor-needcheck": "दृश्यसंपादन: तपासा", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:Visualeditor-descriptionpagelink}}|यथादृश्यसंपादक]] वापरून केलेल्या संपादनात,अभिप्रेत नसलेला विकिमजकूर दिसल्याचे, प्रणालीने शोधले आहे.", "tag-visualeditor-wikitext": "२०१७ स्रोत संपादन", "tag-visualeditor-wikitext-description": "'विकिमजकूर संपादक' वापरुन केलेले संपादन", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृष्य संपादन: बदलले]]", + "tag-visualeditor-switched": "दृष्य संपादन: बदलले", "tag-visualeditor-switched-description": "सदस्याने सुरुवातीला यथादृश्यसंपादक वापरला परंतू नंतर तो विकीटेक्स्ट संपादकाकडे गेला.", "visualeditor-feedback-link": "Project:यथादृश्यसंपादक/प्रतिसाद", "visualeditor-feedback-tool": "या संचेतनाबद्दल प्रतिसाद द्या", diff --git a/i18n/ve-wmf/mrh.json b/i18n/ve-wmf/mrh.json index 4cbc39051f..beb8745cbb 100644 --- a/i18n/ve-wmf/mrh.json +++ b/i18n/ve-wmf/mrh.json @@ -5,13 +5,13 @@ "Teitei Para" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit]]", + "tag-visualeditor": "Visual edit", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|mona taopathina]] he hmâna chôta taopathina tao teh", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Mona taopathina: Pazâh]]", + "tag-visualeditor-needcheck": "Mona taopathina: Pazâh", "tag-visualeditor-needcheck-description": "Achhuah leipa wikichâ pathlainazy a y theipazy dâh ta a patupa [[{{MediaWiki:visualeditor-descriptionpagelink}}|mona taopathi0]] he hmâna chôta taopathina tao teh.", "tag-visualeditor-wikitext": "2017 hnawh taopathina", "tag-visualeditor-wikitext-description": "2017 wikichâ hmâna chôta taopathina tao teh", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Mona taopathina: Pathlai haw]]", + "tag-visualeditor-switched": "Mona taopathina: Pathlai haw", "tag-visualeditor-switched-description": "Hmâhtuhpa cha mona taopathina hmâna chôta taopathi'pa ta a pathao, khaitawh wikichâ taopathina lâ a pathlai.", "visualeditor-feedback-link": "Prawche; MonaTaopathina/Khokheina", "visualeditor-feedback-tool": "He software nah azaopa na pachâna so teh", diff --git a/i18n/ve-wmf/ms-arab.json b/i18n/ve-wmf/ms-arab.json index fa8e88187c..dc16baf577 100644 --- a/i18n/ve-wmf/ms-arab.json +++ b/i18n/ve-wmf/ms-arab.json @@ -4,5 +4,5 @@ "Tofeiku" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|سونتيڠ ۏيسوال]]" + "tag-visualeditor": "سونتيڠ ۏيسوال" } diff --git a/i18n/ve-wmf/ms.json b/i18n/ve-wmf/ms.json index 76943d5dff..898b7b08e4 100644 --- a/i18n/ve-wmf/ms.json +++ b/i18n/ve-wmf/ms.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Anakmalaysia", "Aurora", "CyberTroopers", @@ -14,17 +13,27 @@ "tag-editcheck-newcontent-description": "EditCheck berpendapat kandungan baharu telah ditambahkan pada halaman", "tag-editcheck-newreference-description": "Rujukan telah ditambahkan pada halaman", "tag-editcheck-references-description": "EditCheck berpendapat rujukan mungkin diperlukan", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Suntingan visual]]", + "tag-editcheck-references-activated": "Penyemak Suntingan (rujukan) didayakan", + "tag-editcheck-references-activated-description": "Penyemak Suntingan berpendapat rujukan mungkin diperlukan, dan UI telah ditunjukkan", + "tag-editcheck-references-shown": "Penyemak Suntingan (rujukan) ditunjukkan", + "tag-editcheck-references-shown-description": "Penyemak Suntingan berpendapat rujukan mungkin diperlukan, dan UI telah ditunjukkan", + "tag-editcheck-tone-description": "Penyemak Suntingan telah mengesan terdapat kemungkinan masalah berkenaan nada pada beberapa kandungan tambahan", + "tag-editcheck-tone-shown": "Penyemak Suntingan (nada) ditunjukkan", + "tag-editcheck-tone-shown-description": "Penyemak Suntingan berpendapat pelarasan pada nada dalam sesetengah kandungan mungkin diperlukan, dan UI telah ditunjukkan", + "tag-editcheck-paste-shown": "Penyemak Suntingan (tampal) ditunjukkan", + "tag-editcheck-paste-shown-description": "Penyemak Suntingan meminta penjelasan berkenaan kandungan yang disalin tampal oleh penyunting, yang kemudiannya sama ada perlu dibuang atau boleh dibenarkan", + "tag-visualeditor": "Suntingan visual", "tag-visualeditor-description": "Disunting menggunakan [[{{MediaWiki:visualeditor-descriptionpagelink}}|alat sunting visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Suntingan visual: Semak]]", + "tag-visualeditor-needcheck": "Suntingan visual: Semak", "tag-visualeditor-needcheck-description": "Suntingan dilakukan dengan menggunakan [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] di mana sistem telah mengesan wikiteks yang mungkin mengalami perubahan yang tidak diingini.", "tag-visualeditor-wikitext": "Suntingan sumber 2017", "tag-visualeditor-wikitext-description": "Suntingan dibuat menggunakan alat sunting wikiteks 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Suntingan visual: Ditukar]]", + "tag-visualeditor-switched": "Suntingan visual: Ditukar", "tag-visualeditor-switched-description": "Pengguna mula-mula menyunting dengan VisualEditor, kemudian beralih kepada alat sunting wikiteks.", "visualeditor-feedback-link": "Project:VisualEditor/Maklum balas", "visualeditor-feedback-tool": "Berikan maklum balas mengenai perisian ini", "visualeditor-help-label": "Baca panduan pengguna", + "visualeditor-help-link": "//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide", "visualeditor-welcomedialog-action": "Mula menyunting", "visualeditor-welcomedialog-content": "Sesiapa pun boleh menyunting, dan setiap penambahbaikan membantu.", "visualeditor-welcomedialog-content-thanks": "Terima kasih kerana menimba ilmu masyarakat!", diff --git a/i18n/ve-wmf/mt.json b/i18n/ve-wmf/mt.json index 4fcb99728d..8905d4fa65 100644 --- a/i18n/ve-wmf/mt.json +++ b/i18n/ve-wmf/mt.json @@ -4,11 +4,11 @@ "Chrisportelli" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Modifika magħmula permezz tal-[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Iċċekkja]]", + "tag-visualeditor-needcheck": "VisualEditor: Iċċekkja", "tag-visualeditor-needcheck-description": "Modifika li saret permezz tal-[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] fejn is-sistema indunat li t-test possibilment għandu bidliet mhux mixtieqa.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Qaleb]]", + "tag-visualeditor-switched": "VisualEditor: Qaleb", "tag-visualeditor-switched-description": "L-utent beda jimmodifika bil-VisualEditor, u wara qaleb għall-editur tat-test wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Kummenti", "visualeditor-feedback-tool": "Ħalli kumment", diff --git a/i18n/ve-wmf/mui.json b/i18n/ve-wmf/mui.json index 3e2f4a4fc5..a8ce139f79 100644 --- a/i18n/ve-wmf/mui.json +++ b/i18n/ve-wmf/mui.json @@ -4,5 +4,5 @@ "Masjawad99" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Suntingan visual]]" + "tag-visualeditor": "Suntingan visual" } diff --git a/i18n/ve-wmf/mwl.json b/i18n/ve-wmf/mwl.json index 046aac47b5..02db39ba25 100644 --- a/i18n/ve-wmf/mwl.json +++ b/i18n/ve-wmf/mwl.json @@ -5,5 +5,5 @@ "MokaAkashiyaPT" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Eidiçon bisual]]" + "tag-visualeditor": "Eidiçon bisual" } diff --git a/i18n/ve-wmf/my.json b/i18n/ve-wmf/my.json index d5412728a4..e627f46f2c 100644 --- a/i18n/ve-wmf/my.json +++ b/i18n/ve-wmf/my.json @@ -5,9 +5,9 @@ "Ninjastrikers" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|မျက်မြင် တည်းဖြတ်]]", + "tag-visualeditor": "မျက်မြင် တည်းဖြတ်", "tag-visualeditor-wikitext": "၂၀၁၇ ရင်းမြစ်တည်းဖြတ်", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|အမြင် တည်းဖြတ်မှု- ပြောင်းထားသည်]]", + "tag-visualeditor-switched": "အမြင် တည်းဖြတ်မှု- ပြောင်းထားသည်", "visualeditor-feedback-tool": "ဤဆော့ဝဲလ်နှင့်ပတ်သက်၍ သုံးသပ်အကြံပြုချက်ကို မျှဝေရန်", "visualeditor-help-label": "အသုံးပြုသူလမ်းညွှန်ချက်ကို ဖတ်ရန်", "visualeditor-welcomedialog-action": "စတင်တည်းဖြတ်", diff --git a/i18n/ve-wmf/mzn.json b/i18n/ve-wmf/mzn.json index 5cab5ece3f..81b83f2b53 100644 --- a/i18n/ve-wmf/mzn.json +++ b/i18n/ve-wmf/mzn.json @@ -4,5 +4,5 @@ "محک" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|هارشی‌ینی دَچی‌ین]]" + "tag-visualeditor": "هارشی‌ینی دَچی‌ین" } diff --git a/i18n/ve-wmf/nan-latn-pehoeji.json b/i18n/ve-wmf/nan-latn-pehoeji.json index a44a34549b..c5731b4864 100644 --- a/i18n/ve-wmf/nan-latn-pehoeji.json +++ b/i18n/ve-wmf/nan-latn-pehoeji.json @@ -4,6 +4,6 @@ "Winston Sung" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visualeditor ê siu-kái]]", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor pian-chi̍p: Í-keng piàn-ōaⁿ]]" + "tag-visualeditor": "Visualeditor ê siu-kái", + "tag-visualeditor-switched": "VisualEditor pian-chi̍p: Í-keng piàn-ōaⁿ" } diff --git a/i18n/ve-wmf/nap.json b/i18n/ve-wmf/nap.json index 9ae0e89e5e..98dd577552 100644 --- a/i18n/ve-wmf/nap.json +++ b/i18n/ve-wmf/nap.json @@ -7,11 +7,11 @@ "PiRSquared17" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editore visuale]]", + "tag-visualeditor": "Editore visuale", "tag-visualeditor-description": "Càgnamiento fatto ausando [[{{MediaWiki:visualeditor-descriptionpagelink}}|Editore visuale]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editore visuale: cuntrolla]]", + "tag-visualeditor-needcheck": "Editore visuale: cuntrolla", "tag-visualeditor-needcheck-description": "Cagnamiento affettuato ausanno 'o [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] addò 'o sistema se ne è accuorto 'e cagnamiente ca putessero nun essere vulute dint' 'o wikitesto.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editore visuale: Scagnato]]", + "tag-visualeditor-switched": "Editore visuale: Scagnato", "tag-visualeditor-switched-description": "L'utente accumminciaje a cagnà ausanno l'editore visuale, po' è passato a ll'editore 'e wikitesto", "visualeditor-feedback-link": "Project:VisualEditor/Cummente", "visualeditor-feedback-tool": "Lascia 'nu cummento ncopp'a stu software", diff --git a/i18n/ve-wmf/nb.json b/i18n/ve-wmf/nb.json index 420f04bd24..4647da91c8 100644 --- a/i18n/ve-wmf/nb.json +++ b/i18n/ve-wmf/nb.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Danmichaelo", "Event", "Jeblad", @@ -18,15 +17,22 @@ "tag-editcheck-newcontent-description": "EditCheck tror nytt innhold ble lagt til på siden", "tag-editcheck-newreference-description": "En referanse ble lagt til på siden", "tag-editcheck-references-description": "EditCheck tror en referanse kan ha vært nødvendig", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Redigeringssjekk (referanser) aktivert]]", + "tag-editcheck-references-activated": "Redigeringssjekk (referanser) aktivert", "tag-editcheck-references-activated-description": "Redigeringssjekk tror at en referanse kan ha vært nødvendig, og brukergrensesnittet for dette ble vist", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell redigering]]", + "tag-editcheck-references-shown": "Redigeringssjekk (referanser) vist", + "tag-editcheck-references-shown-description": "Redigeringssjekk tror en referanse kan være nødvendig, og grensesnittet ble vist", + "tag-editcheck-tone-description": "Redigeringssjekk oppdaget et mulig problem med tonen i noe av innholdet som ble lagt til", + "tag-editcheck-tone-shown": "Redigeringssjekk (tone) vist", + "tag-editcheck-tone-shown-description": "Redigeringssjekk tror det kan være nødvendig med endringer i tonen i noe av innholdet som ble lagt til, og grensesnittet ble vist", + "tag-editcheck-paste-shown": "Redigeringssjekk (innliming) vist", + "tag-editcheck-paste-shown-description": "Redigeringssjekk ba om klargjøring om innhold bidragsyteren limte inn, som dermed ble fjernet eller bekreftet som greit.", + "tag-visualeditor": "Visuell redigering", "tag-visualeditor-description": "Redigering gjort med [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuell redigering]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell redigering: Sjekk]]", + "tag-visualeditor-needcheck": "Visuell redigering: Sjekk", "tag-visualeditor-needcheck-description": "Redigering gjort med [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] hvor systemet har detektert at utilsiktede endringer i wikiteksten kan ha inntruffet.", "tag-visualeditor-wikitext": "2017-kilderedigering", "tag-visualeditor-wikitext-description": "Redigering gjort med 2017-editoren", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell redigering: Byttet]]", + "tag-visualeditor-switched": "Visuell redigering: Byttet", "tag-visualeditor-switched-description": "Brukeren begynte redigeringen med VisualEditor og byttet deretter til wikitekst-redigering.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Gi tilbakemelding på programvaren", diff --git a/i18n/ve-wmf/nds-nl.json b/i18n/ve-wmf/nds-nl.json index 95ed4fb38f..f7a59eb23f 100644 --- a/i18n/ve-wmf/nds-nl.json +++ b/i18n/ve-wmf/nds-nl.json @@ -4,13 +4,13 @@ "Servien" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuele tekstverwarker]]", + "tag-visualeditor": "Visuele tekstverwarker", "tag-visualeditor-description": "Bewarking emaakt mit behulp van de [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuele tekstverwarker]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuele tekstverwarker: naokieken]]", + "tag-visualeditor-needcheck": "Visuele tekstverwarker: naokieken", "tag-visualeditor-needcheck-description": "Bewarking edaon mit de [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuele tekstverwarker]] waorbie t systeem op-emörken hef dat der in de wikitekste meugelik onbedoelde wiezigingen esleupen bin.", "tag-visualeditor-wikitext": "Bewarking mid nye wikitekstmodus", "tag-visualeditor-wikitext-description": "Bewarking dån mid de 2017-wikitekstbewarker", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuele tekstverwarker: ümmeskakeld]]", + "tag-visualeditor-switched": "Visuele tekstverwarker: ümmeskakeld", "visualeditor-feedback-link": "Project:Visuele tekstverwarker/Kommentaar", "visualeditor-feedback-tool": "Kommentaar geaven oaver de programmatuur", "visualeditor-help-label": "Leas et gebrukershandbook", diff --git a/i18n/ve-wmf/nds.json b/i18n/ve-wmf/nds.json index 3472343668..4e8c2ae3b9 100644 --- a/i18n/ve-wmf/nds.json +++ b/i18n/ve-wmf/nds.json @@ -6,9 +6,9 @@ "Zylbath" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Bearbeidt mit den [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: nakieken]]", + "tag-visualeditor-needcheck": "VisualEditor: nakieken", "tag-visualeditor-needcheck-description": "Mit den [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] bearbeidte Ännern, bi de dat Systeem wollmööglich Ännern in'n Wikitext opdeckt hett, de nich wüllt sünd.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Feedback achterlaten", diff --git a/i18n/ve-wmf/ne.json b/i18n/ve-wmf/ne.json index 6cc1d7e0f0..62f6af049a 100644 --- a/i18n/ve-wmf/ne.json +++ b/i18n/ve-wmf/ne.json @@ -11,20 +11,19 @@ "tag-editcheck-newcontent-description": "सम्पादन जाँचले पृष्ठमा नयाँ सामग्री थपिएको ठान्छ", "tag-editcheck-newreference-description": "पृष्ठमा एउटा सन्दर्भ थपियो", "tag-editcheck-references-description": "सम्पादन जाँचले एउटा सन्दर्भ आवश्यक भएको हुन सक्छ भन्ने सोच्छ", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|सम्पादन जाँच गर्नुहोस् (सन्दर्भहरू) सक्रिय]]", + "tag-editcheck-references-activated": "सम्पादन जाँच गर्नुहोस् (सन्दर्भहरू) सक्रिय", "tag-editcheck-references-activated-description": "सम्पादन जाँचले एउटा सन्दर्भ आवश्यक भएको हुन सक्छ भन्ने सोच्छ, र युआई देखाइएको छ", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादक]]", + "tag-visualeditor": "दृश्य सम्पादक", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादक]] प्रयोग गरेर सम्पादन गरिएको", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादक: जाँच्नुहोस्]]", + "tag-visualeditor-needcheck": "दृश्य सम्पादक: जाँच्नुहोस्", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादक]] प्रयोग गरेर सम्पादन गरिएको जहाँ प्रणालीले विकिपाठ संभवतः अनायास परिवर्तन भइरहेको पत्ता लगाइयो।", "tag-visualeditor-wikitext": "सन् २०१७ स्राेत सम्पादन", "tag-visualeditor-wikitext-description": "सन् २०१७ विकिपाठ सम्पादक प्रयोग गरेर सम्पादन गरियो", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|दृश्य सम्पादकमा: परिवर्तन गरिएको]]", + "tag-visualeditor-switched": "दृश्य सम्पादकमा: परिवर्तन गरिएको", "tag-visualeditor-switched-description": "प्रयोगकर्ताले दृश्य सम्पादक प्रयोग गरेर सम्पादन गर्न सुरु गरे त्यसपछि विकिपाठ सम्पादकमा परिवर्तन गरिएकाे।", "visualeditor-feedback-link": "परियोजना:दृश्य सम्पादक/पृष्ठपोषण", "visualeditor-feedback-tool": "यस सफ्टवेयरवारेका लागि सुझाव छोड्नुहोस्", "visualeditor-help-label": "प्रयोगकर्ता सहयाेगी पढ्नुहोस्", - "visualeditor-help-link": "//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide", "visualeditor-welcomedialog-action": "सम्पादन सुरु गर्नुहोस्", "visualeditor-welcomedialog-content": "जाे कोहीले पनि सम्पादन गर्न सक्दछन्, र हरेक सुधारले मद्दत गर्दछ।", "visualeditor-welcomedialog-content-thanks": "विश्वलाई अधिक पत्ता लगाउन मद्दत गर्नु भएकोमा धन्यवाद!", diff --git a/i18n/ve-wmf/nia.json b/i18n/ve-wmf/nia.json index ec4cf92be1..709f00a644 100644 --- a/i18n/ve-wmf/nia.json +++ b/i18n/ve-wmf/nia.json @@ -5,5 +5,5 @@ "Slaia" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Famulö'ö faoma editor visual]]" + "tag-visualeditor": "Famulö'ö faoma editor visual" } diff --git a/i18n/ve-wmf/nl.json b/i18n/ve-wmf/nl.json index 137cf32341..29817564ab 100644 --- a/i18n/ve-wmf/nl.json +++ b/i18n/ve-wmf/nl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Bluyten", "Breghtje", "Catrope", @@ -27,15 +26,22 @@ "tag-editcheck-newcontent-description": "EditCheck denkt dat er nieuwe inhoud aan de pagina is toegevoegd", "tag-editcheck-newreference-description": "Er is een referentie aan de pagina toegevoegd", "tag-editcheck-references-description": "EditCheck denkt dat er een referentie nodig kan zijn", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|EditCheck (referenties) geactiveerd]]", + "tag-editcheck-references-activated": "EditCheck (referenties) geactiveerd", "tag-editcheck-references-activated-description": "EditCheck denkt dat er een referentie nodig kan zijn, en de gebruikersinterface is weergegeven", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuele tekstverwerker]]", + "tag-editcheck-references-shown": "EditCheck (referenties) weergegeven", + "tag-editcheck-references-shown-description": "EditCheck denkt dat er een referentie nodig kan zijn, en de gebruikersinterface is weergegeven", + "tag-editcheck-tone-description": "EditCheck heeft een mogelijk probleem ontdekt met de toon van bepaalde toegevoegde inhoud", + "tag-editcheck-tone-shown": "Bewerkingscontrole (toon) weergegeven", + "tag-editcheck-tone-shown-description": "EditCheck denkt dat een aanpassing van de toon in bepaalde inhoud nodig was geweest, en de gebruikersinterface is weergegeven", + "tag-editcheck-paste-shown": "Bewerkingscontrole (plakken) weergegeven", + "tag-editcheck-paste-shown-description": "EditCheck vroeg om opheldering over de inhoud die de editor had geplakt, die vervolgens of werd verwijderd, of als toegestaan werd bevestigd", + "tag-visualeditor": "Visuele tekstverwerker", "tag-visualeditor-description": "Bewerking gedaan met de [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuele tekstverwerker]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuele tekstverwerker: nakijken]]", - "tag-visualeditor-needcheck-description": "Bewerking gedaan met de [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuele tekstverwerker]], waarbij het systeem mogelijk onbedoelde veranderingen in de wikitekst heeft ontdekt.", + "tag-visualeditor-needcheck": "Visuele tekstverwerker: nakijken", + "tag-visualeditor-needcheck-description": "Bewerking gedaan met de [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuele tekstverwerker]], waarbij het systeem mogelijk onbedoelde wijzigingen in de wikitekst heeft ontdekt.", "tag-visualeditor-wikitext": "bewerking met nieuwe wikitekstmodus", "tag-visualeditor-wikitext-description": "Bewerking gemaakt met de 2017 wikitekstbewerker", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuele tekstverwerker: omgeschakeld]]", + "tag-visualeditor-switched": "Visuele tekstverwerker: omgeschakeld", "tag-visualeditor-switched-description": "Gebruiker begon het bewerken met de visuele tekstbewerker, en ging daarna over op de wikitekstbewerker.", "visualeditor-feedback-link": "Project:Visuele tekstverwerker/Terugkoppeling", "visualeditor-feedback-tool": "Terugkoppeling achterlaten over deze software", diff --git a/i18n/ve-wmf/nn.json b/i18n/ve-wmf/nn.json index b4db587a9b..314152967f 100644 --- a/i18n/ve-wmf/nn.json +++ b/i18n/ve-wmf/nn.json @@ -9,15 +9,15 @@ "tag-editcheck-newcontent-description": "EditCheck trur at nytt innhald vart lagt til på sida", "tag-editcheck-newreference-description": "Ein referanse vart lagt til på sida", "tag-editcheck-references-description": "EditCheck trur at ein referanse kan ha vore naudsynt", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Endringssjekk (referansar) aktivert]]", + "tag-editcheck-references-activated": "Endringssjekk (referansar) aktivert", "tag-editcheck-references-activated-description": "EditCheck trur at ein referanse kan ha vore naudsynt, og brukargrensesnittet for dette vart vist", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell endring]]", + "tag-visualeditor": "Visuell endring", "tag-visualeditor-description": "Endring gjord med [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuell endring]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell endring: Kontroller]]", + "tag-visualeditor-needcheck": "Visuell endring: Kontroller", "tag-visualeditor-needcheck-description": "Endring gjord med [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuell endring]] der systemet fann at wikiteksten kan ha umeinte endringar.", "tag-visualeditor-wikitext": "2017-kjeldeendring", "tag-visualeditor-wikitext-description": "Endring gjord med 2017-tekstendraren", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell endring: Bytte]]", + "tag-visualeditor-switched": "Visuell endring: Bytte", "tag-visualeditor-switched-description": "Brukaren byrja endra med visuell endring, men bytte så til wikitekstendring.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Gje attendemelding på programvara", diff --git a/i18n/ve-wmf/nqo.json b/i18n/ve-wmf/nqo.json index e735596f4f..5f8515384d 100644 --- a/i18n/ve-wmf/nqo.json +++ b/i18n/ve-wmf/nqo.json @@ -4,14 +4,25 @@ "Lancine.kounfantoh.fofana" ] }, + "tag-editcheck-newcontent-description": "EditCheck ߦߴߊ߬ ߖߌ߰ ߟߊ߫ ߞߏ߫ ߞߣߐߘߐ߫ ߞߎߘߊ߫ ߓߘߊ߫ ߞߊ߬ߝߏ߬ ߞߣߐߘߐ ߡߊ߬", + "tag-editcheck-newreference-description": "ߦߟߌߡߊߛߙߋ ߘߏ߫ ߓߘߊ߫ ߝߙߊ߬ ߞߐߜߍ ߟߊ߫", "tag-editcheck-references-description": "EditCheck ߦߴߊ߬ ߖߊ߬ߕߋ߬ ߟߊ߫ ߟߋ߬ ߞߏ߫ ߡߊ߬ߞߏ ߘߌ߫ ߞߍ߫ ߦߟߌߡߊߛߙߋ ߘߏ߫ ߟߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߣߌ߲߬ ߘߐ߫", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ߦߋߢߊ ߡߊߦߟߍ߬ߡߊ߲]]", + "tag-editcheck-references-activated": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߝߛߍ߬ߝߛߍ߬ߟߌ (ߦߟߌߡߊߛߙߋ ߟߎ߬) ߓߘߊ߫ ߟߊߞߎߣߎ߲߫", + "tag-editcheck-references-activated-description": "EdidCheck ߦߴߊ߬ ߖߌ߰ ߟߊ߫ ߞߏ߫ ߡߊ߬ߞߏ ߘߌ߫ ߞߍ߫ ߦߟߌߡߊߛߙߋ ߘߏ߫ ߟߊ߫، ߊ߬ ߘߏ߲߬ UI ߓߘߊ߫ ߦߌ߬ߘߊ߬.", + "tag-editcheck-references-shown": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߝߛߍ߬ߝߛߍ߫ (ߦߟߌߡߊߛߙߋ ߟߎ߫) ߦߌ߬ߘߊ߬", + "tag-editcheck-references-shown-description": "EdidCheck ߦߴߊ߬ ߖߌ߰ ߟߊ߫ ߞߏ߫ ߡߊ߬ߞߏ ߘߌ߫ ߞߍ߫ ߦߟߌߡߊߛߙߋ ߘߏ߫ ߟߊ߫، ߊ߬ ߘߏ߲߬ UI ߓߘߊ߫ ߦߌ߬ߘߊ߬.", + "tag-editcheck-tone-description": "EditCheck ߓߘߊ߫ ߝߙߋߞߋ߫ ߘߐߓߍ߲߬ߕߊ ߘߏ߫ ߟߊߞߏߟߐ߲߫ ߞߣߐߘߐ߫ ߝߙߊ߬ߣߍ߲ ߘߏ߫ ߟߎ߫ ߡߊ߲߬ߞߊ߲ ߘߐ߫", + "tag-editcheck-tone-shown": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߝߛߍ߬ߝߛߍ߫ (ߡߊ߲߬ߞߊ߲) ߦߌ߬ߘߊ", + "tag-editcheck-tone-shown-description": "EditCheck ߦߴߊ߬ ߓߛߌ߬ߞߌ߫ ߟߊ߫ ߞߏ߫ ߡߊ߬ߞߏ ߦߋ߫ ߟߊ߬ߞߢߊ߬ߟߌ ߟߊ߫ ߡߊ߲߬ߞߊ߲ ߘߐ߫ ߞߣߐߘߐ ߘߏ߫ ߘߐ߫, UI ߘߏ߲߬ ߦߌ߬ߘߊ߬ߣߍ߲߫", + "tag-editcheck-paste-shown": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߝߛߍ߬ߝߛߍ߫ (ߣߙߊߟߌ) ߦߌ߬ߘߊ", + "tag-editcheck-paste-shown-description": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߝߛߍ߬ߝߛߍ߬ߟߌ ߓߘߊ߫ ߢߌ߬ߣߌ߲߬ߞߊ߬ߟߌ ߞߍ߫ ߞߣߐߘߐ߫ ߟߛߊߣߌ߲ߧߊߞߏ ߡߊ߬߸ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߊ ߣߊ߬ ߡߍ߲ ߣߙߊ߫ ߟߊ߫߸ ߡߍ߲ ߖߏ߰ߛߌ߬ߣߍ߲߫ ߦߋ߫ ߞߍ߫ ߟߴߏ߬ ߘߐ߫ ߥߟߊ߫ ߞߵߊ߬ ߡߊߛߐ߬ߛߐ߬ ߞߴߊ߬ ߕߍ߫ ߘߌ߬ߢߍ߬ߒ߬ߡߊ߬ߕߊ߫ ߘߌ߫.", + "tag-visualeditor": "ߦߋߢߊ ߡߊߦߟߍ߬ߡߊ߲", "tag-visualeditor-description": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߡߍ߲ ߠߎ߬ ߛߌ߲ߘߌߣߍ߲߫ ߦߋ߫ [[{{MediaWiki:visualeditor-descriptionpagelink}}|ߦߋߗߏ߯ ߡߊߦߟߍߡߊ߲]] ߘߐ߫", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ߦߋߢߊ ߡߊߦߟߍ߬ߡߊ߲:ߝߛߍ߬ߝߛߍ߬ߟߌ]]", + "tag-visualeditor-needcheck": "ߦߋߢߊ ߡߊߦߟߍ߬ߡߊ߲:ߝߛߍ߬ߝߛߍ߬ߟߌ", "tag-visualeditor-needcheck-description": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߛߌ߲ߘߌߣߍ߲߫ ߦߋ߫ [[{{MediaWiki:visualeditor-descriptionpagelink}}|ߦߋߢߊ ߡߊߦߟߍ߬ߡߊ߲߬ߟߊ߲]] ߠߋ߬ ߘߐ߫ ߞߊ߲ߞߋ ߣߐ߬ ߦߋ߫ ߡߍ߲ ߠߊߞߏߟߐ߲߫ ߠߊ߫ ߥߞߌߞߟߏߘߋ߲ ߠߋ߬ ߘߌ߫ ߡߝߊ߬ߟߋ߲߬ߠߌ߲߬ ߘߐߞߐ߬ߣߐ߲߬ߓߊߟߌ ߟߎ߬ ߦߋ߫ ߡߍ߲ ߘߐ߫.", "tag-visualeditor-wikitext": "߂߀߁߇ ߓߐߛߎ߲߫ ߡߊߦߟߍߡߊ߲", "tag-visualeditor-wikitext-description": "ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߡߍ߲ ߛߌ߲ߘߌߣߍ߲߫ ߦߋ߫ ߂߀߁߇ ߥߞߌߞߟߏߘߋ߲ ߡߊߦߟߍ߬ߡߊ߲ ߘߐ߫", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ߦߋߗߏ߯ ߡߊߦߟߍߡߊ߲: ߟߕߊ߬ߡߌ߲߬ߒ߬ߡߊ߬ߟߌ]]", + "tag-visualeditor-switched": "ߦߋߗߏ߯ ߡߊߦߟߍߡߊ߲: ߟߕߊ߬ߡߌ߲߬ߒ߬ߡߊ߬ߟߌ", "tag-visualeditor-switched-description": "ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ ߡߍ߲ ߓߘߊ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߘߊߡߌ߬ߣߊ߫ ߞߵߊ߬ ߕߏ߫ ߦߋߢߊ߫ ߡߊߦߟߍߡߊ߲ ߠߊߓߊ߯ߙߊ ߞߊ߲߬߸ ߞߊ߬ ߓߊ߲߫ ߞߵߊ߬ ߡߊߝߊ߬ߟߋ߲߫ ߥߞߌߞߟߏߘߋ߲ ߡߊߦߟߍ߬ߡߊ߲ ߠߊ߫.", "visualeditor-feedback-link": "ߖߊ߬ߕߋ߬ߘߐ߬ߛߌ߮:ߦߋߢߊߡߊߦߟߍߡߊ߲\\ߡߙߌߣߊ߲߫ ߗߋ", "visualeditor-feedback-tool": "ߡߙߌߣߊ߲ ߘߏ߫ ߓߌ߬ߟߊ߬ ߛߎ߲ߝߘߍ ߣߌ߲߬ ߠߊߞߏߟߊ߫", diff --git a/i18n/ve-wmf/nys.json b/i18n/ve-wmf/nys.json index ef7579d73a..e03599dc50 100644 --- a/i18n/ve-wmf/nys.json +++ b/i18n/ve-wmf/nys.json @@ -4,5 +4,5 @@ "Gnangarra" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Djinang wallak]]" + "tag-visualeditor": "Djinang wallak" } diff --git a/i18n/ve-wmf/oc.json b/i18n/ve-wmf/oc.json index 6b1acba6fc..fa668f917a 100644 --- a/i18n/ve-wmf/oc.json +++ b/i18n/ve-wmf/oc.json @@ -2,16 +2,20 @@ "@metadata": { "authors": [ "Cedric31", - "Jfblanc" + "Jfblanc", + "Lhanars" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual]]", + "tag-visualeditor": "Editor visual", "tag-visualeditor-description": "Modificacion efectuada amb l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual : de verificar]]", + "tag-visualeditor-needcheck": "Editor visual : de verificar", "tag-visualeditor-needcheck-description": "Modificacion faita en utilizant l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] dins la quala lo sistèma a detectat que lo wikicòdi conten benlèu de modificacions involontàrias.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor Visual : basculat]]", + "tag-visualeditor-switched": "Editor Visual : basculat", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Daissar un comentari sus l'Editor Visual", "visualeditor-help-label": "Legir lo manual de l'utilizaire", + "visualeditor-welcomedialog-content": "Totòm pòt editar, e cada melhorament es util.", + "visualeditor-welcomedialog-content-thanks": "Mercé per ajudar lo mond a descobrir totjorn mai!", + "visualeditor-welcomedialog-switch": "Cambia a l'editor de còdi", "visualeditor-welcomedialog-switch-ve": "Bascular cap a l’editor visual" } diff --git a/i18n/ve-wmf/ojb.json b/i18n/ve-wmf/ojb.json index a4da54518b..b68f4b7f54 100644 --- a/i18n/ve-wmf/ojb.json +++ b/i18n/ve-wmf/ojb.json @@ -4,5 +4,5 @@ "Aandeginini" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Waabam-aanji']]" + "tag-visualeditor": "Waabam-aanji'" } diff --git a/i18n/ve-wmf/olo.json b/i18n/ve-wmf/olo.json index 866d341eca..bc8fe3e17a 100644 --- a/i18n/ve-wmf/olo.json +++ b/i18n/ve-wmf/olo.json @@ -5,7 +5,7 @@ "Mashoi7" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual'noi kohendamine]]", + "tag-visualeditor": "Vizual'noi kohendamine", "tag-visualeditor-description": "Kohendettu [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualizen editoranke]]", "visualeditor-feedback-link": "Project:Vizualine editoru/Työndö", "visualeditor-feedback-tool": "Anna työndyö täs programmas", diff --git a/i18n/ve-wmf/om.json b/i18n/ve-wmf/om.json index 7aac05d9b4..52507cdc5e 100644 --- a/i18n/ve-wmf/om.json +++ b/i18n/ve-wmf/om.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Ahrada2016", - "Amire80", "Cedric31", "Jdforrester", "Muhammad Shuaib", @@ -11,9 +10,9 @@ "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Argaa gulaallii]]", + "tag-visualeditor": "Argaa gulaallii", "tag-visualeditor-description": "Gulaallii [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] fayyadamuun uummame", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-switched-description": "Fayyadamaan gulaala Viizyuwaal'Ediiteriidhan jalqabee achii booda gara Wiikiitekesti'Ediiteriitti jijjiire.", "visualeditor-feedback-link": "Project:Viizyuwaal'Ediiterii/Yaada", "visualeditor-feedback-tool": "Waa'ee mosaajjii kanaa yaada kenni", diff --git a/i18n/ve-wmf/or.json b/i18n/ve-wmf/or.json index 9c191b09c9..539b247691 100644 --- a/i18n/ve-wmf/or.json +++ b/i18n/ve-wmf/or.json @@ -6,6 +6,6 @@ "ଶିତିକଣ୍ଠ ଦାଶ" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ଭିଜୁଆଲ ସମ୍ପାଦନା]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: ପରଖନ୍ତୁ]]" + "tag-visualeditor": "ଭିଜୁଆଲ ସମ୍ପାଦନା", + "tag-visualeditor-needcheck": "VisualEditor: ପରଖନ୍ତୁ" } diff --git a/i18n/ve-wmf/pa.json b/i18n/ve-wmf/pa.json index 8a2207c6cd..b2452d8153 100644 --- a/i18n/ve-wmf/pa.json +++ b/i18n/ve-wmf/pa.json @@ -10,9 +10,9 @@ "Satdeep gill" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ਵਿਜ਼ੁਅਲ ਐਡਿਟ]]", + "tag-visualeditor": "ਵਿਜ਼ੁਅਲ ਐਡਿਟ", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਸੋਧ ਕੀਤੀ ਗਈ", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", + "tag-visualeditor-needcheck": "Visual edit: Check", "tag-visualeditor-needcheck-description": "Edit made using the [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] where the system detected the wikitext possibly having unintended changes.", "visualeditor-feedback-link": "ਪਰੋਜੈਕਟ:ਵਿਜ਼ੂਅਲਐਡੀਟਰ/ਇਸ ਬਾਰੇ ਤੁਹਾਡੇ ਵਿਚਾਰ", "visualeditor-feedback-tool": "ਇਸ ਸਾਫ਼ਟਵੇਅਰ ਬਾਰੇ ਆਪਣੇ ਵਿਚਾਰ ਸਾਂਝੇ ਕਰੋ", diff --git a/i18n/ve-wmf/pap.json b/i18n/ve-wmf/pap.json index 68ae379944..caac41d95d 100644 --- a/i18n/ve-wmf/pap.json +++ b/i18n/ve-wmf/pap.json @@ -1,8 +1,19 @@ { "@metadata": { "authors": [ - "ObaTango" + "ObaTango", + "Kallmemel" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editamentu visual]]" + "tag-visualeditor": "Editá visual", + "tag-visualeditor-description": "Modifikashon ehekutá ku uso di [[{{MediaWiki:visualeditor-descriptionpagelink}}|prosesadó visual]]", + "tag-visualeditor-needcheck": "Prosesadó visual di teksto: Chèk", + "tag-visualeditor-switched": "A suich pa editor visual", + "visualeditor-help-label": "Lesa e guia di usadó", + "visualeditor-welcomedialog-action": "Kuminsá editá", + "visualeditor-welcomedialog-content": "Tur hende por editá i kada mehorashon ta yuda.", + "visualeditor-welcomedialog-content-thanks": "Danki na bo, e mundu por deskubrí mas!", + "visualeditor-welcomedialog-switch": "Suich pa editor di kódigo", + "visualeditor-welcomedialog-switch-ve": "Suich pa editor visual", + "visualeditor-welcomedialog-title": "{{GENDER:$1|Bonbiní}} na $2" } diff --git a/i18n/ve-wmf/pcd.json b/i18n/ve-wmf/pcd.json index 725a549f54..a22ac1891e 100644 --- a/i18n/ve-wmf/pcd.json +++ b/i18n/ve-wmf/pcd.json @@ -4,5 +4,5 @@ "Geoleplubo" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Éditeu visuel]]" + "tag-visualeditor": "Éditeu visuel" } diff --git a/i18n/ve-wmf/pfl.json b/i18n/ve-wmf/pfl.json index 937eecda11..c9560cad55 100644 --- a/i18n/ve-wmf/pfl.json +++ b/i18n/ve-wmf/pfl.json @@ -4,11 +4,11 @@ "Manuae" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Schaffe middm [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Iwwabriefe]]", + "tag-visualeditor-needcheck": "VisualEditor: Iwwabriefe", "tag-visualeditor-needcheck-description": "Middm [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] gmachde Ännarunge, wu meschlische uugwollde Ännarunge im Wikitegschd gfunne hodd.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Gwegseld]]", + "tag-visualeditor-switched": "VisualEditor: Gwegseld", "tag-visualeditor-switched-description": "Middawaida hodd ogfonge middm VisualEditor zu schaffe un hodd donn de Wikitext Editor gnumme.", "visualeditor-feedback-link": "Project:VisualEditor/Riggmeldunge", "visualeditor-feedback-tool": "Riggmeldung dolosse", diff --git a/i18n/ve-wmf/pl.json b/i18n/ve-wmf/pl.json index f420a1a9b8..a3bf3549de 100644 --- a/i18n/ve-wmf/pl.json +++ b/i18n/ve-wmf/pl.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Babanwalia", "Chrumps", "Doctore", @@ -19,21 +18,30 @@ "WTM", "Woytecr", "Wpedzich", - "아라" + "아라", + "MarMi wiki", + "PanWor" ] }, "tag-editcheck-newcontent-description": "Automatyczny pomocnik uważa, że do strony została dodana nowa treść", "tag-editcheck-newreference-description": "Do strony dodano przypis", "tag-editcheck-references-description": "Automatyczny pomocnik stwierdził, że przydałby się przypis", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Aktywowano automatycznego pomocnika (przypisy)]]", + "tag-editcheck-references-activated": "Aktywowano automatycznego pomocnika (przypisy)", "tag-editcheck-references-activated-description": "Automatyczny pomocnik stwierdził, że przypis może być potrzebny i odpowiedni komunikat został wyświetlony", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-editcheck-references-shown": "Kontrola edycji (przypisy) – wyświetlono", + "tag-editcheck-references-shown-description": "Automatyczny pomocnik stwierdził, że może być potrzebny przypis i odpowiedni komunikat został wyświetlony", + "tag-editcheck-tone-description": "Automatyczny pomocnik wykrył potencjalny problem z tonem niektórych dodanych treści", + "tag-editcheck-tone-shown": "Kontrola edycji (styl) – wyświetlono", + "tag-editcheck-tone-shown-description": "Automatyczny pomocnik uważa, że konieczna może być zmiana brzmienia niektórych treści i odpowiedni komunikat został wyświetlony", + "tag-editcheck-paste-shown": "Kontrola edycji (wklejanie) – wyświetlono", + "tag-editcheck-paste-shown-description": "Automatyczny pomocnik zapytał o określenie się co do wklejonej przez edytującego treści, po czym treść ta została przez niego usunięta lub potwierdzona jako dozwolona", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Edycja z wykorzystaniem [[{{MediaWiki:visualeditor-descriptionpagelink}}|edytora wizualnego]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: do sprawdzenia]]", + "tag-visualeditor-needcheck": "VisualEditor: do sprawdzenia", "tag-visualeditor-needcheck-description": "Edycja wykonana z wykorzystaniem [[{{MediaWiki:visualeditor-descriptionpagelink}}|edytora wizualnego]], w której system wykrył prawdopodobnie niezamierzone uszkodzenie kodu źródłowego.", "tag-visualeditor-wikitext": "Edytor kodu źródłowego 2017", - "tag-visualeditor-wikitext-description": "Edycja dokonana za pomocą edytora wikitekstu 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: przełączono]]", + "tag-visualeditor-wikitext-description": "Edycja dokonana za pomocą edytora wikikodu 2017", + "tag-visualeditor-switched": "VisualEditor: przełączono", "tag-visualeditor-switched-description": "Użytkownik rozpoczął edycję używając edytora wizualnego, a w jej trakcie przełączył się na edytor kodu źródłowego.", "visualeditor-feedback-link": "Project:VisualEditor/Opinie", "visualeditor-feedback-tool": "Prześlij opinię na temat tego oprogramowania", diff --git a/i18n/ve-wmf/pms.json b/i18n/ve-wmf/pms.json index 2669f7d51b..6a6eedba82 100644 --- a/i18n/ve-wmf/pms.json +++ b/i18n/ve-wmf/pms.json @@ -6,11 +6,11 @@ "පසිඳු කාවින්ද" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modìfica visual]]", + "tag-visualeditor": "Modìfica visual", "tag-visualeditor-description": "Modìfica fàita dovrand l'[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor visual: Da verifiché]]", + "tag-visualeditor-needcheck": "Editor visual: Da verifiché", "tag-visualeditor-needcheck-description": "Modìfica fàita an dovrand [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] andoa ël sistema a l'ha trovà che miraco ël wikitest a conten dle modìfiche nen vorsùe.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Scangià]]", + "tag-visualeditor-switched": "VisualEditor: Scangià", "tag-visualeditor-switched-description": "L'utent a l'ha ancaminà a modifiché dovrand VisualEditor peui a l'é passà a l'editor wikitest.", "visualeditor-feedback-link": "Project:Editor visual/Opinion", "visualeditor-feedback-tool": "Lassé n'opinion", diff --git a/i18n/ve-wmf/pnb.json b/i18n/ve-wmf/pnb.json index 56a87675b1..0a0caeade0 100644 --- a/i18n/ve-wmf/pnb.json +++ b/i18n/ve-wmf/pnb.json @@ -7,10 +7,10 @@ "Khalid Mahmood" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویول ایڈیٹر]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویژوئل ایڈیٹر: چیک]]", + "tag-visualeditor": "ویول ایڈیٹر", + "tag-visualeditor-needcheck": "ویژوئل ایڈیٹر: چیک", "tag-visualeditor-wikitext": "۲۰۱۷ء سروت توں سودھ", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ویژوئل ایڈیٹر:چالو]]", + "tag-visualeditor-switched": "ویژوئل ایڈیٹر:چالو", "visualeditor-help-label": "ورتوں دی گائیڈ پڑھیو", "visualeditor-welcomedialog-action": "سودھاں شروع کرو", "visualeditor-welcomedialog-switch": "سروت توں سودھو", diff --git a/i18n/ve-wmf/prg.json b/i18n/ve-wmf/prg.json index 7ff8de1707..2fb5f2acea 100644 --- a/i18n/ve-wmf/prg.json +++ b/i18n/ve-wmf/prg.json @@ -4,5 +4,5 @@ "Nērtiks Jōrgesuns" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Wizuāla redigisnā]]" + "tag-visualeditor": "Wizuāla redigisnā" } diff --git a/i18n/ve-wmf/ps.json b/i18n/ve-wmf/ps.json index fc3281ca3a..4e735f81fb 100644 --- a/i18n/ve-wmf/ps.json +++ b/i18n/ve-wmf/ps.json @@ -1,19 +1,38 @@ { "@metadata": { "authors": [ - "Ahmed-Najib-Biabani-Ibrahimkhel" + "Ahmed-Najib-Biabani-Ibrahimkhel", + "شاه زمان پټان" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ليدنيز سمون]]", + "tag-editcheck-newcontent-description": "سمون‌کتنه فکر کوي چې دې مخ کې نوې منځپانگه ورگډه شوې", + "tag-editcheck-newreference-description": "مخ کې يوه سرچينه ورگډه شوې", + "tag-editcheck-references-description": "سمون‌کتنه فکر کوي چې يوې سرچينې ته شايد اړتيا وي", + "tag-editcheck-references-activated": "سمون کتنې (سرچينې) چارن شوې", + "tag-editcheck-references-activated-description": "سمون‌کتنه فکر کوي چې شايد يوې سرچينې ته اړتيا کېدای شي او ک‌م ښودل شوې", + "tag-editcheck-references-shown": "سمون کتنې (سرچينې) ښودل شوې", + "tag-editcheck-references-shown-description": "سمون کتنه فکر کوي چې يوې سرچينې ته شايد اړتيا وي او ک‌م شودل شوې", + "tag-editcheck-tone-description": "سمون‌سم‌کتنې د ورگډې‌شوې منځپانگې په وينگ کې پټ‌ځواکې ستونزه وموندله.", + "tag-editcheck-tone-shown": "سمون‌کتنه (غږبڼه) ښودل", + "tag-editcheck-tone-shown-description": "سمون‌کتنه فکر کوي چې شايد ځينو منځپانگو کې د غږبڼې سمون ته اړتيا وه، او UI ښودل شوی", + "tag-editcheck-paste-shown": "سمون‌کتنه (لېښل) ښودل‌شوې", + "tag-editcheck-paste-shown-description": "سمون‌سم‌کتنې د هغه منځپانگې اړوند وضاحت وغوښت چې سمونگر لېښلې وه، کوم چې بيالېږدول شوې يا تاييد شوې اجازې وړ وه", + "tag-visualeditor": "ليدنيز سمون", "tag-visualeditor-description": "دا سمون د [[{{MediaWiki:visualeditor-descriptionpagelink}}|ليدنيز سمونگر]] په مرسته شوی", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ليدنيز سمون: کره کتنه]]", - "visualeditor-feedback-link": "Project:ليدنيزسمونگر/ستاسې نظرونه", - "visualeditor-feedback-tool": "د دې ساوترې اړونده نظر پرېښودل", + "tag-visualeditor-needcheck": "ليدنيز سمون: کره کتنه", + "tag-visualeditor-needcheck-description": "دا سمون د [[{{MediaWiki:visualeditor-descriptionpagelink}}|ليدنيز سمونگر]] په وسيله شوی چېرته چې غونډال د ويکي‌ليک شوني غيرارادي بدلونونه وموندل.", + "tag-visualeditor-wikitext": "۲۰۱۷ سرچينې سمون", + "tag-visualeditor-wikitext-description": "دا سمون د ۲۰۱۷ ويکي‌ليک سمونگر کارولو سره شوی", + "tag-visualeditor-switched": "ليدنيز سمون: چارن شوی", + "tag-visualeditor-switched-description": "کارن د ليدنيز سمونگر په کارولو سره سمون پيل کړی، وروسته يې ويکي‌ليک سمونگر ته بدل کړی دی.", + "visualeditor-feedback-link": "پروژه:ليدنيزسمونگر/غبرگون", + "visualeditor-feedback-tool": "د دې پوستغالي اړوند خپل غبرگون پرېښودل", "visualeditor-help-label": "کارن لارښود ولولئ", + "visualeditor-help-link": "//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide", "visualeditor-welcomedialog-action": "سمون پيلول", "visualeditor-welcomedialog-content": "هر څوک يې سمولی شي، او هر پرمختگ مرسته کوي.", "visualeditor-welcomedialog-content-thanks": "د نړۍ سره د ډېر نور څه پېژندلو په مرسته کې له تاسې څخه مننه کوو!", - "visualeditor-welcomedialog-switch": "د سرچينې سمونگر ته ور اړول", - "visualeditor-welcomedialog-switch-ve": "ليدنيز سمونگر ته ور اړول", - "visualeditor-welcomedialog-title": "$2 ته {{GENDER:$1|ښه راغلې}}" + "visualeditor-welcomedialog-switch": "سرچينې سمونگر چارنول", + "visualeditor-welcomedialog-switch-ve": "ليدنيز سمونگر چارنول", + "visualeditor-welcomedialog-title": "$2 ته {{GENDER:$1|ښه راغلاست}}" } diff --git a/i18n/ve-wmf/pt-br.json b/i18n/ve-wmf/pt-br.json index 7dd496b8c0..aab245312e 100644 --- a/i18n/ve-wmf/pt-br.json +++ b/i18n/ve-wmf/pt-br.json @@ -3,9 +3,10 @@ "authors": [ "!Silent", "555", - "Amire80", "Cainamarques", "Dianakc", + "EGobi", + "Eduardoaddad", "Felipe L. Ewald", "Fúlvio", "He7d3r", @@ -22,15 +23,19 @@ "tag-editcheck-newcontent-description": "O EditCheck acha que novo conteúdo foi adicionado à página", "tag-editcheck-newreference-description": "Uma referência foi adicionada à página", "tag-editcheck-references-description": "O EditCheck acha que uma referência pode ser necessária", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Verificação de Edição (referências) ativada]]", + "tag-editcheck-references-activated": "Edit Check (referências) ativada", "tag-editcheck-references-activated-description": "O EditCheck acha que uma referência pode ser necessária e a IU foi exibida", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edição visual]]", + "tag-editcheck-references-shown": "Verificação de edição (referências) mostradas", + "tag-editcheck-references-shown-description": "O EditCheck acha que uma referência pode ser necessária e a IU foi exibida", + "tag-editcheck-tone-shown": "Edit Check (tom) exibida", + "tag-editcheck-paste-shown": "Edit Check (colar) exibida", + "tag-visualeditor": "Edição visual", "tag-visualeditor-description": "Edição feita utilizando o [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edição visual: Verificar]]", + "tag-visualeditor-needcheck": "Edição visual: Verificar", "tag-visualeditor-needcheck-description": "Edição feita utilizando o [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] em que o sistema detectou possíveis mudanças não-intencionais ao wikitexto.", "tag-visualeditor-wikitext": "editor de código 2017", "tag-visualeditor-wikitext-description": "Edição feita com o editor de texto wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Edição visual: Alternada]]", + "tag-visualeditor-switched": "Edição visual: Alternada", "tag-visualeditor-switched-description": "O(A) usuário(a) começou a editar usando o editor visual, e depois alternou para o editor de código-fonte.", "visualeditor-feedback-link": "Project:Editor Visual/Comentários", "visualeditor-feedback-tool": "Deixar comentários sobre este software", diff --git a/i18n/ve-wmf/pt.json b/i18n/ve-wmf/pt.json index 2bedbc2e95..2656b4eec2 100644 --- a/i18n/ve-wmf/pt.json +++ b/i18n/ve-wmf/pt.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Cainamarques", "Fúlvio", "GoEThe", @@ -11,6 +10,7 @@ "Jaideraf", "Jdforrester", "Luckas", + "Mansil alfalb", "SandroHc", "Vitorvicentevalente", "아라" @@ -19,15 +19,16 @@ "tag-editcheck-newcontent-description": "A Verificação de Edições acha que foi adicionado conteúdo novo à página", "tag-editcheck-newreference-description": "Foi adicionada uma referência à página", "tag-editcheck-references-description": "A Verificação de Edições acha que podia ter sido necessária uma referência", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Verificação de Edições (referências) ativada]]", + "tag-editcheck-references-activated": "Verificação de Edições (referências) ativada", "tag-editcheck-references-activated-description": "A Verificação de Edições acha que podia ter sido necessária uma referência e foi mostrada a interface do utilizador", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor Visual]]", + "tag-editcheck-references-shown": "Verificação de Edição (referências) mostradas", + "tag-visualeditor": "Editor Visual", "tag-visualeditor-description": "Edição realizada utilizando o [[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor Visual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor Visual: Verificar]]", + "tag-visualeditor-needcheck": "Editor Visual: Verificar", "tag-visualeditor-needcheck-description": "Edição feita com o [[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor Visual]] em que o sistema detetou que o código wiki possivelmente teve alterações não intencionais.", "tag-visualeditor-wikitext": "editor de código 2017", "tag-visualeditor-wikitext-description": "Edição feita com o editor de texto wiki 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor Visual: Trocado]]", + "tag-visualeditor-switched": "Editor Visual: Trocado", "tag-visualeditor-switched-description": "O utilizador iniciou a edição com o Editor Visual e depois mudou para o editor de texto wiki.", "visualeditor-feedback-link": "Project:Editor Visual/Comentários", "visualeditor-feedback-tool": "Deixar comentário sobre este programa", diff --git a/i18n/ve-wmf/pwn.json b/i18n/ve-wmf/pwn.json index df3c289c0a..4a2e092d46 100644 --- a/i18n/ve-wmf/pwn.json +++ b/i18n/ve-wmf/pwn.json @@ -4,5 +4,5 @@ "Akamycoco" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|pakatua sikiqeneqenetjan a semantaliduan a sirarudjan]]" + "tag-visualeditor": "pakatua sikiqeneqenetjan a semantaliduan a sirarudjan" } diff --git a/i18n/ve-wmf/qqq.json b/i18n/ve-wmf/qqq.json index 55cc01920e..d5772edd0f 100644 --- a/i18n/ve-wmf/qqq.json +++ b/i18n/ve-wmf/qqq.json @@ -12,6 +12,7 @@ "Mormegil", "Nike", "PoLuX124", + "Ponor", "Purodha", "Pxos", "Raymond", @@ -25,7 +26,6 @@ "Verdy p" ] }, - "editcheck-falsepositives-link": "{{notranslate}}\nLink to the false positives reporting page of EditCheck.\n\nUsed in:\n* {{msg-mw|tag-editcheck-references-activated}}", "tag-editcheck-newcontent": "{{ignored}}Short description of the editcheck-newcontent tag.\n\nHidden tag added when EditCheck thinks new content was added to the page.\n\nSee also:\n* {{msg-mw|Tag-editcheck-newcontent-description}}\n{{Related|tag-newcontent-references-description}}", "tag-editcheck-newcontent-description": "Long description of the editcheck-newcontent tag.\n\nHidden tag added when EditCheck thinks new content was added to the page.\n\nSee also:\n* {{msg-mw|Tag-editcheck-newcontent}}\n{{Related|tag-newcontent-references}}", "tag-editcheck-newreference": "{{ignored}}Short description of the editcheck-newreference tag.\n\nHidden tag added when a reference is added to the page.\n\nSee also:\n* {{msg-mw|Tag-editcheck-newreference-description}}\n{{Related|tag-newreference-references-description}}", @@ -34,14 +34,30 @@ "tag-editcheck-references-description": "Long description of the editcheck-references tag.\n\nHidden tag added when EditCheck thinks added content might need a reference.\n\nSee also:\n* {{msg-mw|Tag-editcheck-references}}\n{{Related|tag-editcheck-references}}", "tag-editcheck-references-activated": "Short description of the editcheck-references-activated tag.\n\nHidden tag added when EditCheck thinks that added content might need a reference, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-references-activated-description}}\n{{Related|tag-editcheck-references-activated-description}}", "tag-editcheck-references-activated-description": "Long description of the editcheck-references-activated tag.\n\nHidden tag added when EditCheck thinks added content might need a reference, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-references-activated}}\n{{Related|tag-editcheck-references-activated}}", + "tag-editcheck-references-activated-helppage": "{{notranslate}}\nLink to the false positives reporting page of EditCheck.\n\nUsed in:\n* {{msg-mw|tag-editcheck-references-activated}}", + "tag-editcheck-references-shown": "Short description of the editcheck-references-shown tag.\n\nTag added when EditCheck thinks that added content might need a reference, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-references-shown-description}}\n{{Related|tag-editcheck-references-shown-description}}", + "tag-editcheck-references-shown-description": "Long description of the editcheck-references-shown tag.\n\nHidden tag added when EditCheck thinks added content might need a reference, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-references-shown}}\n{{Related|tag-editcheck-references-shown}}", + "tag-editcheck-references-shown-helppage": "{{notranslate}}\nLink to the false positives reporting page of EditCheck.\n\nUsed in:\n* {{msg-mw|tag-editcheck-references-shown}}", + "tag-editcheck-tone": "{{ignored}}Short description of the editcheck-tone tag.\n\nHidden tag added when EditCheck detected a potential issue with the tone of some added content.", + "tag-editcheck-tone-description": "Long description of the editcheck-tone tag.\n\nHidden tag added when EditCheck detected a potential issue with the tone of some added content.", + "tag-editcheck-tone-shown": "Short description of the editcheck-tone-shown tag.\n\nTag added when EditCheck thinks that added content might need its tone adjusted, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-tone-shown-description}}\n{{Related|tag-editcheck-tone-shown-description}}", + "tag-editcheck-tone-shown-description": "Long description of the editcheck-tone-shown tag.\n\nTag added when EditCheck thinks added content might need its tone adjusted, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-tone-shown}}\n{{Related|tag-editcheck-tone-shown}}", + "tag-editcheck-tone-shown-helppage": "{{notranslate}}\nLink to the tone check section of the EditCheck help page.\n\nUsed in:\n* {{msg-mw|tag-editcheck-tone-shown}}", + "tag-editcheck-paste-shown": "Short description of the editcheck-paste-shown tag.\n\nTag added when EditCheck detected pasted content, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-paste-shown-description}}\n{{Related|tag-editcheck-paste-shown-description}}", + "tag-editcheck-paste-shown-description": "Long description of the editcheck-paste-shown tag.\n\nTag added when EditCheck detected pasted content, and the UI was shown.\n\nSee also:\n* {{msg-mw|Tag-editcheck-paste-shown}}\n{{Related|tag-editcheck-paste-shown}}", + "tag-editcheck-paste-shown-helppage": "{{notranslate}}\nLink to the paste check section of the EditCheck help page.\n\nUsed in:\n* {{msg-mw|tag-editcheck-paste-shown}}", "tag-visualeditor": "Short description of the visualeditor tag. Do not translate the link target, but do translate the words \"Visual edit\".\n\nShown on lists of changes (history, recentchanges, etc.) for each edit made using VisualEditor.\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor-needcheck}}\n{{Related|Tag-visualeditor}}\n{{Identical|VisualEditor}}", "tag-visualeditor-description": "Long description of the visualeditor tag ({{msg-mw|Tag-visualeditor}}).\n\nShown on [[Special:Tags]].\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor-needcheck-description}}\n{{Related|Tag-visualeditor}}", + "tag-visualeditor-helppage": "{{notranslate}}\nHelp link for the tag {{msg-mw|tag-visualeditor}}. Uses {{msg-mw|visualeditor-descriptionpagelink}}", "tag-visualeditor-needcheck": "\"Check\" indicates \"Check needed\".\n\nSee {{msg-mw|Tag-visualeditor-needcheck-description}}.\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor|similar message}}\n{{Related|Tag-visualeditor}}", "tag-visualeditor-needcheck-description": "Long description of the visualeditor-needcheck tag ({{msg-mw|Tag-visualeditor-needcheck}}).\n\nShown on [[Special:Tags]].\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor-description}}\n{{Related|Tag-visualeditor}}", + "tag-visualeditor-needcheck-helppage": "{{notranslate}}\nHelp link for the tag {{msg-mw|tag-visualeditor-needcheck}}. Uses {{msg-mw|visualeditor-descriptionpagelink}}", "tag-visualeditor-wikitext": "Short description of the visualeditor-wikitext tag.\n\nShown on lists of changes (history, recentchanges, etc.) for each edit made using VisualEditor in wikitext editor mode.\n\nSee also:\n* {{msg-mw|Tag-visualeditor-wikitext-description}}\n{{Identical|Edit source}}", "tag-visualeditor-wikitext-description": "Long description of the visualeditor-wikitext tag ({{msg-mw|Tag-visualeditor-wikitext}}).\n\nShown on [[Special:Tags]].\n\nSee also:\n* {{msg-mw|Tag-visualeditor-wikitext}}\n* {{Related|tag-visualeditor-description}}", + "tag-visualeditor-wikitext-helppage": "{{notranslate}}\nHelp link for the tag {{msg-mw|tag-visualeditor-wikitext}}", "tag-visualeditor-switched": "Short description of the visualeditor-switched tag.\n\nShown on lists of changes (history, recentchanges, etc.) for each edit which was started using VisualEditor and then was moved to the wikitext editor.\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n{{Related|Tag-visualeditor}}", "tag-visualeditor-switched-description": "Long description of the visualeditor-switched tag ({{msg-mw|Tag-visualeditor-switched}}).\n\nShown on [[Special:Tags]].\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor-description}}\n{{Related|Tag-visualeditor}}", + "tag-visualeditor-switched-helppage": "{{notranslate}}\nHelp link for the tag {{msg-mw|tag-visualeditor-switched}}. Uses {{msg-mw|visualeditor-descriptionpagelink}}", "visualeditor-feedback-link": "Link to a page where users can leave feedback that is automatically posted using this tool. This should be a subpage of {{msg-mw|visualeditor-descriptionpagelink}}", "visualeditor-feedback-source-link": "{{notranslate}}\nLink to a page where users can leave feedback about the source mode that is automatically posted using this tool. This can be the same as or different from {{msg-mw|visualeditor-feedback-link}}.", "visualeditor-feedback-tool": "Text of tool in the toolbar that lets users provide feedback.", diff --git a/i18n/ve-wmf/qu.json b/i18n/ve-wmf/qu.json index fa1125d511..2b97401e54 100644 --- a/i18n/ve-wmf/qu.json +++ b/i18n/ve-wmf/qu.json @@ -5,9 +5,9 @@ "Jduranboger" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] nisqawan hukchasqa", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Llanchiy]]", + "tag-visualeditor-needcheck": "VisualEditor: Llanchiy", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] nisqawan hukchasqa, llamk'ay llika riqsiriptin wiki qillqapi mana munakusqa hukchasqakunatachá.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Llanchiy]]" + "tag-visualeditor-switched": "VisualEditor: Llanchiy" } diff --git a/i18n/ve-wmf/rmc.json b/i18n/ve-wmf/rmc.json index f9cce532f0..b17be2a3ab 100644 --- a/i18n/ve-wmf/rmc.json +++ b/i18n/ve-wmf/rmc.json @@ -4,5 +4,5 @@ "Adehertogh" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualno editoris]]" + "tag-visualeditor": "Vizualno editoris" } diff --git a/i18n/ve-wmf/ro.json b/i18n/ve-wmf/ro.json index 6ce9bcd996..d4de601b83 100644 --- a/i18n/ve-wmf/ro.json +++ b/i18n/ve-wmf/ro.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "AlimanRuna", - "Amire80", "Firilacroco", "Minisarm", "NGC 54", @@ -12,13 +11,13 @@ "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editare vizuală]]", + "tag-visualeditor": "Editare vizuală", "tag-visualeditor-description": "Modificare efectuată cu [[{{MediaWiki:visualeditor-descriptionpagelink}}|editorul vizual]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor vizual: Verificare]]", + "tag-visualeditor-needcheck": "Editor vizual: Verificare", "tag-visualeditor-needcheck-description": "Modificare efectuată cu [[{{MediaWiki:visualeditor-descriptionpagelink}}|editorul vizual]], unde sistemul a detectat că textul wiki a suferit eventuale modificări nedorite.", "tag-visualeditor-wikitext": "Modificare sursă 2017", "tag-visualeditor-wikitext-description": "Modificare efectuată utilizând editorul de wikitext 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Editor vizual: Comutat]]", + "tag-visualeditor-switched": "Editor vizual: Comutat", "tag-visualeditor-switched-description": "Utilizatorul a început modificarea cu editorul vizual, după care a comutat la editorul de text wiki.", "visualeditor-feedback-link": "Project:EditorVizual/Feedback", "visualeditor-feedback-tool": "Lăsați feedback despre acest software", diff --git a/i18n/ve-wmf/roa-tara.json b/i18n/ve-wmf/roa-tara.json index 9920db3273..fb803ff6ec 100644 --- a/i18n/ve-wmf/roa-tara.json +++ b/i18n/ve-wmf/roa-tara.json @@ -6,13 +6,13 @@ "Muhammad Shuaib" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Cangiamende visuale]]", + "tag-visualeditor": "Cangiamende visuale", "tag-visualeditor-description": "Cangiamende fatte ausanne 'u [[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual editor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visua edit: Condrolle]]", + "tag-visualeditor-needcheck": "Visua edit: Condrolle", "tag-visualeditor-needcheck-description": "Cangiamende fatte ausanne 'u [[{{MediaWiki:visualeditor-descriptionpagelink}}|cangiatore visuale]] addò 'u sisteme ave acchiate uicchiteste ca pò essere ca ha state cangiate none indenzionalmende.", "tag-visualeditor-wikitext": "Editor de uicchiteste 2017", "tag-visualeditor-wikitext-description": "Cangiamende fatte ausanne l'editor de uicchiteste 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Scangiate]]", + "tag-visualeditor-switched": "Visual edit: Scangiate", "tag-visualeditor-switched-description": "L'utende ha accumenzate a cangià ausanne 'u cangiatore visuale e pò ha passate a 'u cangiatore uicchiteste.", "visualeditor-feedback-link": "Project:VisualEditor/Segnalazione", "visualeditor-feedback-tool": "Lasse 'na segnalazione sus a stu software", diff --git a/i18n/ve-wmf/rsk.json b/i18n/ve-wmf/rsk.json index 0e3cf3fe7a..dae92789d9 100644 --- a/i18n/ve-wmf/rsk.json +++ b/i18n/ve-wmf/rsk.json @@ -5,13 +5,13 @@ ] }, "tag-editcheck-references-description": "EditCheck трима же референца можебуц була потребна", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|визуалне ушорйованє]]", + "tag-visualeditor": "визуалне ушорйованє", "tag-visualeditor-description": "Пременка направена зоз [[{{MediaWiki:visualeditor-descriptionpagelink}}|визуалним едитором]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуални едитор: превериц]]", + "tag-visualeditor-needcheck": "Визуални едитор: превериц", "tag-visualeditor-needcheck-description": "Пременка направена [[{{MediaWiki:visualeditor-descriptionpagelink}}|з визуалним едитором]] дзе систем детектовал викитекст з можлївима нєжаданима пременками.", "tag-visualeditor-wikitext": "ушорйованє жридла (2017)", "tag-visualeditor-wikitext-description": "Пременка направена з хаснованьом 2017 викитекст едитора", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуални едитор: зачерани]]", + "tag-visualeditor-switched": "Визуални едитор: зачерани", "tag-visualeditor-switched-description": "Хаснователь почал ушорйовац хаснуюци визуални едитор, а потим прешол на викитекст едитор.", "visualeditor-feedback-link": "Project:Визуални едитор/Повратна информация", "visualeditor-feedback-tool": "Охабце повратну информацию о тим софтверу", diff --git a/i18n/ve-wmf/ru.json b/i18n/ve-wmf/ru.json index 5aab5aace6..bf39826338 100644 --- a/i18n/ve-wmf/ru.json +++ b/i18n/ve-wmf/ru.json @@ -23,17 +23,22 @@ "Yury Katkov", "Александр Сигачёв", "Умар", - "아라" + "아라", + "Yurina Tatiana", + "Mitte27", + "Shabe" ] }, + "tag-editcheck-newcontent-description": "EditCheck считает, что на страницу было добавлено новое содержимое", "tag-editcheck-newreference-description": "На страницу добавлена ссылка", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|через визуальный редактор]]", + "tag-editcheck-tone-shown-description": "EditCheck считает, что, возможно, следовало скорректировать тон некоторых фрагментов текста, и был показан интерфейс пользователя", + "tag-visualeditor": "через визуальный редактор", "tag-visualeditor-description": "Правка, сделанная через [[{{MediaWiki:visualeditor-descriptionpagelink}}|визуальный редактор]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|через визуальный редактор]]: проверить", + "tag-visualeditor-needcheck": "через визуальный редактор: проверить", "tag-visualeditor-needcheck-description": "Правка, сделанная через [[{{MediaWiki:visualeditor-descriptionpagelink}}|визуальный редактор]], в которой система обнаружила вероятность непреднамеренного изменения вики-текста.", "tag-visualeditor-wikitext": "редактор вики-текста 2017", "tag-visualeditor-wikitext-description": "Правка сделана с помощью редактора вики-текста 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|визуальный редактор]] отключён", + "tag-visualeditor-switched": "визуальный редактор отключён", "tag-visualeditor-switched-description": "Участник начал редактировать с помощью визуального редактора, а затем переключился в редактор вики-текста.", "visualeditor-feedback-link": "Project:Визуальный редактор/Отзывы", "visualeditor-feedback-tool": "Оставить отзыв", diff --git a/i18n/ve-wmf/rue.json b/i18n/ve-wmf/rue.json index f3a9f420b9..7bd8a29a29 100644 --- a/i18n/ve-wmf/rue.json +++ b/i18n/ve-wmf/rue.json @@ -4,6 +4,6 @@ "Tkalyn" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуалне едітованя]]", + "tag-visualeditor": "Візуалне едітованя", "tag-visualeditor-description": "Едітованя выконане з помочов [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуалного редактора]]" } diff --git a/i18n/ve-wmf/rw.json b/i18n/ve-wmf/rw.json index 2368d9a682..bd297ca5f4 100644 --- a/i18n/ve-wmf/rw.json +++ b/i18n/ve-wmf/rw.json @@ -1,18 +1,17 @@ { "@metadata": { "authors": [ - "Amire80", "Musindi250", "Rodrigue" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Guhindura amashusho]]", + "tag-visualeditor": "Guhindura amashusho", "tag-visualeditor-description": "Guhindura byakozwe ukoresheje [[{{MediaWiki:visualeditor-descriptionpagelink}}|umukosozi w'amashusho]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|guhundura amashusho: reba]]", + "tag-visualeditor-needcheck": "guhundura amashusho: reba", "tag-visualeditor-needcheck-description": "Guhindura byakozwe ukoresheje [[{{MediaWiki:visualeditor-descriptionpagelink}}|umugenzuzi w'amashusho]] aho sisitemu yamenye wikitext bishoboka ko ifite impinduka zitateganyijwe.", "tag-visualeditor-wikitext": "2017 gukosora inkomoko", "tag-visualeditor-wikitext-description": "Ikosora ryakozwe rikoresshejwe ikosora rya wikitext 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Guhindura amashusho:byahinduwe]]", + "tag-visualeditor-switched": "Guhindura amashusho:byahinduwe", "tag-visualeditor-switched-description": "Umukoresha yatangiye guhindura akoresheje mugenzuzi y'amashusho, hanyuma ahindurira kuri wikitext editor", "visualeditor-feedback-link": "Umushinga:mugenzuzi y'amashusho/ibitekerezo", "visualeditor-feedback-tool": "Siga ibitekerezo kuri iyi software", diff --git a/i18n/ve-wmf/ryu.json b/i18n/ve-wmf/ryu.json index 994465e699..a31cc6b5c1 100644 --- a/i18n/ve-wmf/ryu.json +++ b/i18n/ve-wmf/ryu.json @@ -4,5 +4,5 @@ "ChoiChong" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ビジュアルエディター]]" + "tag-visualeditor": "ビジュアルエディター" } diff --git a/i18n/ve-wmf/sa.json b/i18n/ve-wmf/sa.json index 94078cdf7c..39e63e9fac 100644 --- a/i18n/ve-wmf/sa.json +++ b/i18n/ve-wmf/sa.json @@ -4,5 +4,5 @@ "NehalDaveND" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|यथादृश्यसम्पादिका]]" + "tag-visualeditor": "यथादृश्यसम्पादिका" } diff --git a/i18n/ve-wmf/sah.json b/i18n/ve-wmf/sah.json index 4d483dc1f5..d85ed6f98a 100644 --- a/i18n/ve-wmf/sah.json +++ b/i18n/ve-wmf/sah.json @@ -5,11 +5,11 @@ "София" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Тута көрөн уларытыы]]", + "tag-visualeditor": "Тута көрөн уларытыы", "tag-visualeditor-description": "Көннөрүү [[{{MediaWiki:visualeditor-descriptionpagelink}}|Көрөн уларытааччы эрэдээктэр]] көмөтүнэн оҥоһуллубут", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Көрөн уларытар эрэдээктэр]]: тургут", + "tag-visualeditor-needcheck": "Көрөн уларытар эрэдээктэр: тургут", "tag-visualeditor-needcheck-description": "Көннөрүү[[{{MediaWiki:visualeditor-descriptionpagelink}}|көрөн уларытар эрэдээктэр көмөтүнэн]], систиэмэ бука алҕас уларытыллыбыт биики-разметканы булла.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Тута көрөн уларытыы]]", + "tag-visualeditor-switched": "Тута көрөн уларытыы", "tag-visualeditor-switched-description": "Бастаан Көрөн уларытар эрэдээктэр көмөтүнэн саҕалаабыт, онтон төрүт тиэкиһи уларытар эрэдээктэргэ көспүт.", "visualeditor-feedback-link": "Project:Көрөн уларытар эрэдээктэр/Дьон туох диирэ", "visualeditor-feedback-tool": "Бу баайым туһунан санааҕын эт", diff --git a/i18n/ve-wmf/sat.json b/i18n/ve-wmf/sat.json index fe92d5aa74..46cf7abcd4 100644 --- a/i18n/ve-wmf/sat.json +++ b/i18n/ve-wmf/sat.json @@ -2,8 +2,13 @@ "@metadata": { "authors": [ "Albinus", - "Manik Soren" + "Manik Soren", + "ᱤᱧ ᱢᱟᱛᱟᱞ" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ᱧᱮᱞᱚᱜ ᱥᱟᱯᱲᱟᱣ]]" + "tag-editcheck-newcontent-description": "ᱮ<unk> ᱪᱮᱠ ᱢᱚᱱᱮ ᱟᱠᱟᱫᱟ ᱡᱮ, ᱱᱚᱶᱟ ᱥᱟᱠᱟᱢ ᱨᱮ ᱱᱟᱶᱟ ᱥᱟᱛᱟᱢ ᱥᱮᱞᱮᱫ ᱦᱩᱭ ᱟᱠᱟᱱᱟ ᱾", + "tag-editcheck-newreference-description": "ᱥᱟᱠᱟᱢ ᱨᱮ ᱢᱤᱫᱴᱟᱝ ᱛᱟᱹᱞᱤᱠᱟ ᱥᱮᱞᱮᱫ ᱦᱩᱭ ᱟᱠᱟᱱᱟ ᱾", + "tag-editcheck-references-description": "ᱮ<unk> ᱪᱮᱠ ᱢᱚᱱᱮ ᱟᱠᱟᱫᱟ ᱡᱮ ᱢᱤᱫᱴᱟᱝ ᱨᱮᱯᱷᱟᱨᱮᱱᱥ ᱨᱮᱭᱟᱜ ᱞᱟᱹᱠᱛᱤ ᱦᱩᱭ ᱫᱟᱲᱮᱭᱟᱜᱼᱟ ᱾", + "tag-editcheck-references-activated-description": "ᱮ<unk> ᱪᱮᱠ ᱢᱚᱱᱮ ᱟᱠᱟᱫᱟ ᱡᱮ ᱢᱤᱫᱴᱟᱝ ᱨᱮᱯᱷᱟᱨᱮᱱᱥ ᱨᱮᱭᱟᱜ ᱞᱟᱹᱠᱛᱤ ᱦᱩᱭ ᱫᱟᱲᱮᱭᱟᱜᱼᱟ ᱟᱨ ᱤᱭᱩ ᱟᱭ ᱩᱫᱩᱜ ᱦᱩᱭ ᱟᱠᱟᱱᱟ ᱾", + "tag-visualeditor": "ᱧᱮᱞᱚᱜ ᱥᱟᱯᱲᱟᱣ" } diff --git a/i18n/ve-wmf/scn.json b/i18n/ve-wmf/scn.json index b64b226c0d..f4b6645ffd 100644 --- a/i18n/ve-wmf/scn.json +++ b/i18n/ve-wmf/scn.json @@ -10,11 +10,12 @@ ] }, "tag-editcheck-newreference-description": "Na rifirenza fu agghiunciuta â pàggina", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Canciamentu visuali]]", + "tag-visualeditor": "Canciamentu visuali", "tag-visualeditor-description": "Canciamentu fattu usannu [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: cuntrullari]]", + "tag-visualeditor-needcheck": "VisualEditor: cuntrullari", "tag-visualeditor-needcheck-description": "Canciamentu fattu usannu [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] unni lu sistema rilivau pussibbili canciamenti nun vulutu ntô wikitestu.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Canciamentu visuali: cummutatu]]", + "tag-visualeditor-wikitext": "Editor wikitestu 2017", + "tag-visualeditor-switched": "Canciamentu visuali: cummutatu", "visualeditor-feedback-link": "Project:VisualEditor/Cummenta", "visualeditor-feedback-tool": "Lassa nu cummentu supra stu software", "visualeditor-help-label": "Si liggissi la guida utenti", diff --git a/i18n/ve-wmf/sco.json b/i18n/ve-wmf/sco.json index 81e0e1e4a8..12ee022b5a 100644 --- a/i18n/ve-wmf/sco.json +++ b/i18n/ve-wmf/sco.json @@ -1,18 +1,17 @@ { "@metadata": { "authors": [ - "Amire80", "Foxj", "Jdforrester", "John Reid", "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Veesual eedit]]", + "tag-visualeditor": "Veesual eedit", "tag-visualeditor-description": "Eedit dun uisin the [[{{MediaWiki:visualeditor-descriptionpagelink}}|veesual eediter]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Veesual eedit: Check]]", + "tag-visualeditor-needcheck": "Veesual eedit: Check", "tag-visualeditor-needcheck-description": "Eedit dun uisin the [[{{MediaWiki:visualeditor-descriptionpagelink}}|VeesualEediter]] whaur the system detectit the wikitex possiblie haein on-ettled-fer chynges.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VeesualEiditer: Switched]]", + "tag-visualeditor-switched": "VeesualEiditer: Switched", "tag-visualeditor-switched-description": "Uiser stairted tae eidit uising VeesualEditer than chynged til the wikitex eiditer.", "visualeditor-feedback-link": "Project:VeesualEediter/Feedback", "visualeditor-feedback-tool": "Gie feedback aboot this softwar", diff --git a/i18n/ve-wmf/sd.json b/i18n/ve-wmf/sd.json index 2a354766e0..c5d2c61677 100644 --- a/i18n/ve-wmf/sd.json +++ b/i18n/ve-wmf/sd.json @@ -7,13 +7,13 @@ ] }, "tag-editcheck-references-description": "سنوارچڪاس سمجهي ٿي تہ ممڪن آھي تہ ڪو حوالو گهربل ھجي", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|وزيوئل سنوار]]", + "tag-visualeditor": "وزيوئل سنوار", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|وزيوئل سنوارگاھ]] استعمال ڪندي ڪيل سنوار", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|وزيوئل سنوار: چڪاس]]", + "tag-visualeditor-needcheck": "وزيوئل سنوار: چڪاس", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|وزيوئل سنوارگاھ]] استعمال ڪندي ڪيل سنوار جتي سسٽم غيرمتوقع تبديليون رکندڙ ممڪنہ وڪيٽيڪسٽ کي سڃاتو.", "tag-visualeditor-wikitext": "2017ع ذريعو سنوار", "tag-visualeditor-wikitext-description": "2017ع وڪي‌متن سنوارگاھ استعمال ڪندي ڪيل سنوار", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|وزيوئل‌سنوار:مٽايل]]", + "tag-visualeditor-switched": "وزيوئل‌سنوار:مٽايل", "tag-visualeditor-switched-description": "واپرائيندڙ وزيوئل سنوارگاھ استعمال ڪندي سنوارڻ شروع ڪيو، وري پوءِ وڪي-متن سنوارگاھ ڏانھن تبديلي ڪئي.", "visualeditor-feedback-link": "رٿا:وزيوئل_سنوارگاھ/موٽ", "visualeditor-feedback-tool": "ھن سافٽويئر بابت موٽ ڇڏيو", diff --git a/i18n/ve-wmf/sdc.json b/i18n/ve-wmf/sdc.json index 760e6ba2ca..fe86e189ba 100644 --- a/i18n/ve-wmf/sdc.json +++ b/i18n/ve-wmf/sdc.json @@ -4,6 +4,6 @@ "Jun Misugi" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modìfica visuari]]", + "tag-visualeditor": "Modìfica visuari", "visualeditor-help-label": "Leggi la ghia d'utenti" } diff --git a/i18n/ve-wmf/sdh.json b/i18n/ve-wmf/sdh.json index 9bb376f853..3e6143c0c6 100644 --- a/i18n/ve-wmf/sdh.json +++ b/i18n/ve-wmf/sdh.json @@ -4,5 +4,5 @@ "Paraw2" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|وێراشتەکردن دیداری]]" + "tag-visualeditor": "وێراشتەکردن دیداری" } diff --git a/i18n/ve-wmf/se.json b/i18n/ve-wmf/se.json index ce4328d2fe..eda14b27d8 100644 --- a/i18n/ve-wmf/se.json +++ b/i18n/ve-wmf/se.json @@ -5,21 +5,22 @@ "Ed g2s", "Kimberli Mäkäräinen (WMNO)", "Lea-Christine Sara", - "WMNO sámeprošeakta" + "WMNO sámeprošeakta", + "Yupik" ] }, "tag-editcheck-newcontent-description": "EditCheck doaivu ahte ođđa sisdoallu lea lasihuvvon siidui", "tag-editcheck-newreference-description": "Siidui lasihuvvui gáldu", "tag-editcheck-references-description": "EditCheck doaivu ahte okta referánsa sáhttá leamáš dárbbašlaš", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Rievdadaniskkus (gáldut) biddjojuvvon johtui]]", - "tag-editcheck-references-activated-description": "Rievdadandárkkisteapmi doaivu dan ahte gáldu soaitá leamaš dárbbašlaš, ja geavaheaddjelakta dása čájehuvvui", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Rievdaduvvon visuála rievdadanprográmmain]]", + "tag-editcheck-references-activated": "Rievdadaniskkus (gáldut) biddjojuvvon johtui", + "tag-editcheck-references-activated-description": "Rievdadandárkkisteami mielde gáldu soaittášii leamaš dárbbašlaš, manin geavahanlakta čájehuvvui", + "tag-visualeditor": "Rievdaduvvon visuála rievdadanprográmmain", "tag-visualeditor-description": "Rievdadus dahkkon [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuála rievdadanprográmmain]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Rievdaduvvon visuála rievdadanprográmmain: Dárkkis]]", + "tag-visualeditor-needcheck": "Rievdaduvvon visuála rievdadanprográmmain: Dárkkis", "tag-visualeditor-needcheck-description": "Rievdadeapmi lea dahkkojuvvon [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditorin]] mas vuogádat lea fuobmán ahte soitet šaddan muhtun rievdadusat wikitekstii mat eai lean galgat.", "tag-visualeditor-wikitext": "Rievdaduvvon jagi 2017 wikiteavstta rievdadanprográmmain", "tag-visualeditor-wikitext-description": "Rievdaduvvon jagi 2017 wikiteavstta rievdadanprográmmain", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Rievdaduvvon visuála rievdadanprográmmain: rievdadanprográmma lonuhuvvui]]", + "tag-visualeditor-switched": "Rievdaduvvon visuála rievdadanprográmmain: rievdadanprográmma lonuhuvvui", "tag-visualeditor-switched-description": "Geavaheaddji rievdadišgođii visuála rievdadanprográmmain, muhto das maŋŋá son lonuhii wikiteavstta rievdadanprográmmii.", "visualeditor-feedback-link": "Project:Visuála rievdadanprográmma/Máhcahat", "visualeditor-feedback-tool": "Atte máhcahaga dán prográmmadaga birra", diff --git a/i18n/ve-wmf/ses.json b/i18n/ve-wmf/ses.json index ceb5464b5a..cdfe4aebd1 100644 --- a/i18n/ve-wmf/ses.json +++ b/i18n/ve-wmf/ses.json @@ -4,5 +4,5 @@ "Songhay" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Diira fasalkaw]]" + "tag-visualeditor": "Diira fasalkaw" } diff --git a/i18n/ve-wmf/sgs.json b/i18n/ve-wmf/sgs.json index 58f28b2c4e..339beda025 100644 --- a/i18n/ve-wmf/sgs.json +++ b/i18n/ve-wmf/sgs.json @@ -4,5 +4,5 @@ "Hugo.arg" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vėzoalos pakeitėms]]" + "tag-visualeditor": "vėzoalos pakeitėms" } diff --git a/i18n/ve-wmf/sh-latn.json b/i18n/ve-wmf/sh-latn.json index e387068fc4..b20e8ee8c2 100644 --- a/i18n/ve-wmf/sh-latn.json +++ b/i18n/ve-wmf/sh-latn.json @@ -1,17 +1,18 @@ { "@metadata": { "authors": [ - "Winston Sung" + "Winston Sung", + "Aca" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje]]", + "tag-visualeditor": "vizualno uređivanje", "tag-visualeditor-description": "Izmjena načinjena [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualnim uređivačem]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje: potrebna provjera]]", - "tag-visualeditor-needcheck-description": "Izmjena načinjena [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualnim uređivačem]] gdje je sistem prepoznao vikitekst s mogućim neželjenim izmjenama.", + "tag-visualeditor-needcheck": "vizualno uređivanje: potrebna provjera", + "tag-visualeditor-needcheck-description": "Izmjena načinjena [[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualnim uređivačem]] gdje je sistem prepoznao wikitekst s mogućim neželjenim izmjenama.", "tag-visualeditor-wikitext": "uređivanje izvornog koda (2017)", - "tag-visualeditor-wikitext-description": "Izmjena načinjena uređivačem vikiteksta iz 2017.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno uređivanje: prebačeno]]", - "tag-visualeditor-switched-description": "Korisnik je počeo uređivati vizualnim uređivačem pa se prebacio na uređivač vikiteksta.", + "tag-visualeditor-wikitext-description": "Izmjena načinjena uređivačem wikiteksta iz 2017.", + "tag-visualeditor-switched": "vizualno uređivanje: prebačeno", + "tag-visualeditor-switched-description": "Korisnik je počeo uređivati vizualnim uređivačem pa se prebacio na uređivač wikiteksta.", "visualeditor-feedback-link": "Project:Vizualni uređivač/Povratne informacije", "visualeditor-feedback-tool": "Povratne informacije", "visualeditor-help-label": "Korisnički vodič", diff --git a/i18n/ve-wmf/shi.json b/i18n/ve-wmf/shi.json index d524c47d94..51094a3da9 100644 --- a/i18n/ve-wmf/shi.json +++ b/i18n/ve-wmf/shi.json @@ -4,5 +4,5 @@ "Lhoussine AIT TAYFST" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|asnulfu ittyaẓran]]" + "tag-visualeditor": "asnulfu ittyaẓran" } diff --git a/i18n/ve-wmf/shn.json b/i18n/ve-wmf/shn.json index 92cfde129a..8c09a0af28 100644 --- a/i18n/ve-wmf/shn.json +++ b/i18n/ve-wmf/shn.json @@ -5,5 +5,5 @@ "Saosukham" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|တူဝ်ထတ်းတႃႁၼ်]]" + "tag-visualeditor": "တူဝ်ထတ်းတႃႁၼ်" } diff --git a/i18n/ve-wmf/shy-latn.json b/i18n/ve-wmf/shy-latn.json index 6ccfe135dd..4a1d3193e0 100644 --- a/i18n/ve-wmf/shy-latn.json +++ b/i18n/ve-wmf/shy-latn.json @@ -4,5 +4,5 @@ "Vikoula5" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Amaẓrag aẓrayan]]" + "tag-visualeditor": "Amaẓrag aẓrayan" } diff --git a/i18n/ve-wmf/si.json b/i18n/ve-wmf/si.json index fd0cfb8728..ce171a6164 100644 --- a/i18n/ve-wmf/si.json +++ b/i18n/ve-wmf/si.json @@ -7,7 +7,7 @@ "හරිත" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|විෂුවල් එඩිටර්]]", + "tag-visualeditor": "විෂුවල් එඩිටර්", "tag-visualeditor-description": "[[{{MediaWiki:Visualeditor-descriptionpagelink}}|විෂුවල්එඩිටර්]] භාවිතයෙන් කල සංස්කරණයකි.", "tag-visualeditor-needcheck-description": "Edit made using the [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] where the system detected the wikitext possibly having unintended changes.", "visualeditor-feedback-link": "ව්‍යාපෘතිය:විෂුවල්එඩිටර්/අදහස් සහ යොජනා", diff --git a/i18n/ve-wmf/sjd.json b/i18n/ve-wmf/sjd.json index 9d7ca0fa4c..bfe1c46452 100644 --- a/i18n/ve-wmf/sjd.json +++ b/i18n/ve-wmf/sjd.json @@ -4,8 +4,10 @@ "Merrahtar" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|пэ̄йель визуальнэ редактэр воа̄йхэсс]]", + "tag-visualeditor": "пэ̄йель визуальнэ редактэр воа̄йхэсс", "tag-visualeditor-wikitext": "2017 викитекст редактэр", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|визуальнэ редактэр]] элля ключчья", + "tag-visualeditor-switched": "визуальнэ редактэр элля ключчья", + "visualeditor-feedback-tool": "Юэгктэдтэ ӣжян юрртэгуэйм", + "visualeditor-help-label": "Ло̄г оаннҍе гуэйкэ выгкмуж", "visualeditor-welcomedialog-title": "{{GENDER:$1|Пӯррь пуэдӓнт}} са̄ййта $2" } diff --git a/i18n/ve-wmf/sk.json b/i18n/ve-wmf/sk.json index 6a14220b84..0823315742 100644 --- a/i18n/ve-wmf/sk.json +++ b/i18n/ve-wmf/sk.json @@ -11,13 +11,13 @@ "TomášPolonec" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuálny editor]]", + "tag-visualeditor": "vizuálny editor", "tag-visualeditor-description": "Úprava vykonaná pomocou [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuálneho editora]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuálny editor: na kontrolu]]", + "tag-visualeditor-needcheck": "vizuálny editor: na kontrolu", "tag-visualeditor-needcheck-description": "Úprava pomocou [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuálneho editora]], pri ktorej systém odhalil možné nezamýšľané zmeny wikitextu.", "tag-visualeditor-wikitext": "editor wikitextu 2017", "tag-visualeditor-wikitext-description": "Úprava vykonaná pomocou editoru wikitextu 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuálny editor: prepnuté]]", + "tag-visualeditor-switched": "vizuálny editor: prepnuté", "tag-visualeditor-switched-description": "Používateľ začal editovať pomocou VisualEditoru, potom sa prepol do režimu editácie wikitextu.", "visualeditor-feedback-link": "Project:Vizuálny editor/Názory", "visualeditor-feedback-tool": "Zanechať spätnú väzbu", diff --git a/i18n/ve-wmf/skr-arab.json b/i18n/ve-wmf/skr-arab.json index 0eed3c5d13..5fbda705f1 100644 --- a/i18n/ve-wmf/skr-arab.json +++ b/i18n/ve-wmf/skr-arab.json @@ -4,7 +4,7 @@ "Saraiki" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|دیدآلی تبدیلی]]", + "tag-visualeditor": "دیدآلی تبدیلی", "visualeditor-welcomedialog-action": "لکھݨ شروع کرو", "visualeditor-welcomedialog-switch": "ماخذ ایڈیٹر تے سوئچ کرو", "visualeditor-welcomedialog-switch-ve": "دیدآلی ایڈیٹر تے سوئچ کرو", diff --git a/i18n/ve-wmf/sl.json b/i18n/ve-wmf/sl.json index 1783655567..a3da149ffd 100644 --- a/i18n/ve-wmf/sl.json +++ b/i18n/ve-wmf/sl.json @@ -11,19 +11,27 @@ "tag-editcheck-newcontent-description": "EditCheck meni, da je bila na stran dodana nova vsebina", "tag-editcheck-newreference-description": "Na stran je bil dodan sklic", "tag-editcheck-references-description": "EditCheck meni, da bi bil morda potreben sklic", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Preverjanje urejanja (sklici) aktivirano]]", + "tag-editcheck-references-activated": "Preverjanje urejanja (sklici) aktivirano", "tag-editcheck-references-activated-description": "EditCheck meni, da je bil morda potreben sklic, in prikazan je bil uporabniški vmesnik", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno urejanje]]", + "tag-editcheck-references-shown": "preverjanje urejanja (sklici) prikazano", + "tag-editcheck-references-shown-description": "EditCheck meni, da je bil morda potreben sklic, in prikazan je bil uporabniški vmesnik", + "tag-editcheck-tone-description": "EditCheck je zaznal morebitno težavo s tonom nekatere dodane vsebine.", + "tag-editcheck-tone-shown": "preverjanje urejanja (ton) prikazano", + "tag-editcheck-tone-shown-description": "EditCheck meni, da je bila morda potrebna prilagoditev tona nekatere vsebine, zato je bil prikazan uporabniški vmesnik.", + "tag-editcheck-paste-shown": "preverjanje urejanja (prilepi) prikazano", + "tag-editcheck-paste-shown-description": "EditCheck je zahteval pojasnilo glede vsebine, ki jo je prilepil urejevalec, in ta je bila nato bodisi odstranjena bodisi potrjena kot dovoljena.", + "tag-visualeditor": "vizualno urejanje", "tag-visualeditor-description": "Urejanje, opravljeno z [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualnim urejevalnikom]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno urejanje: preveri]]", + "tag-visualeditor-needcheck": "vizualno urejanje: preveri", "tag-visualeditor-needcheck-description": "Urejanje, opravljeno z [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualnim urejevalnikom]], pri katerem je sistem zaznal, da vikibesedilo morda vsebuje neželene spremembe.", "tag-visualeditor-wikitext": "urejevalnik vikibesedila 2017", "tag-visualeditor-wikitext-description": "Urejanje, opravljeno z urejevalnikom vikibesedila 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizualno urejanje: preklopljeno]]", + "tag-visualeditor-switched": "vizualno urejanje: preklopljeno", "tag-visualeditor-switched-description": "Uporabnik je začel urejati z Vizualnim urejevalnikom, nato je preklopil na urejevalnik vikibesedila", "visualeditor-feedback-link": "Project:VisualEditor/Povratne informacije", "visualeditor-feedback-tool": "Pošljite povratno informacijo o programju", "visualeditor-help-label": "Preberite uporabniški priročnik", + "visualeditor-help-link": "//www.mediawiki.org/wiki/Special:MyLanguage/Help:VisualEditor/User_guide", "visualeditor-welcomedialog-action": "Začnite urejati", "visualeditor-welcomedialog-content": "Tu lahko ureja in izboljšuje vsebino vsakdo.", "visualeditor-welcomedialog-content-thanks": "Hvala, ker pomagate svetu odkrivati novo znanje!", diff --git a/i18n/ve-wmf/sli.json b/i18n/ve-wmf/sli.json index 3f5eea5b04..5e3a6ff44e 100644 --- a/i18n/ve-wmf/sli.json +++ b/i18n/ve-wmf/sli.json @@ -4,5 +4,5 @@ "Äberlausitzer" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuelle Beorbeetung]]" + "tag-visualeditor": "Visuelle Beorbeetung" } diff --git a/i18n/ve-wmf/smn.json b/i18n/ve-wmf/smn.json index 9fc473e320..b8a70961db 100644 --- a/i18n/ve-wmf/smn.json +++ b/i18n/ve-wmf/smn.json @@ -6,13 +6,13 @@ "Trondtr" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaallâš hammim]]", + "tag-visualeditor": "Visuaallâš hammim", "tag-visualeditor-description": "Nubástus rahtui [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuaallâš editoráin]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaallâš hammim: Täärhist]]", + "tag-visualeditor-needcheck": "Visuaallâš hammim: Täärhist", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaallâš editoráin]] rahtum hammim, mast systeem huámmášij máhđulávt tátuhánnáá šoddâm nubástusâid wikiteevstâst.", "tag-visualeditor-wikitext": "2017 wikiteevstâ hammim", "tag-visualeditor-wikitext-description": "Hämmejum ive 2017 wikiteevstâ editoráin", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaallâš hammim: molsom]]", + "tag-visualeditor-switched": "Visuaallâš hammim: molsom", "tag-visualeditor-switched-description": "Kevttee hammiiškuođij visuaallâš editoráin, talle molsoi wikitekstâ editorân.", "visualeditor-feedback-link": "Project:Visuaallâš editor/Macâttâs", "visualeditor-feedback-tool": "Addel taan ohjelmist macâttâs", diff --git a/i18n/ve-wmf/so.json b/i18n/ve-wmf/so.json index e17549376e..7c0aa884c7 100644 --- a/i18n/ve-wmf/so.json +++ b/i18n/ve-wmf/so.json @@ -2,13 +2,37 @@ "@metadata": { "authors": [ "Abdullahi", - "Abshirdheere" + "Abshirdheere", + "AhmedG612" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|wax ka badalka muuqaalka ah]]", + "tag-editcheck-newcontent-description": "EditCheck wuxuu u arkaa in wax cusub lagu daray bogga", + "tag-editcheck-newreference-description": "Tixraac ayaa lagu daray bogga", + "tag-editcheck-references-description": "EditCheck waxa uu u malaynayaa in tixraac loo baahnaa", + "tag-editcheck-references-activated": "EditCheck (tixraacyo) waa la hawlgeliyay", + "tag-editcheck-references-activated-description": "EditCheck wuxuu u arkaa in tixraac loo baahnaa, waxaana la muujiyay is-dhexgalka", + "tag-editcheck-references-shown": "EditCheck (tixraacyo) waa la muujiyay", + "tag-editcheck-references-shown-description": "EditCheck waxa uu u malaynayaa in tixraac loo baahnaa, waxaana la muujiyay UI-ga", + "tag-editcheck-tone-description": "EditCheck wuxuu ogaaday dhibaato suurtagal ah oo ku saabsan qaabka hadalka ee qaar ka mid ah waxyaabaha lagu daray", + "tag-editcheck-tone-shown": "EditCheck (qaabka hadalka) ayaa la muujiyay", + "tag-editcheck-tone-shown-description": "EditCheck wuxuu u arkaa in loo baahnaa in la hagaajiyo qaabka hadalka ee qaar ka mid ah waxyaabaha, waxaana la muujiyay is-dhexgalka", + "tag-editcheck-paste-shown": "EditCheck (ku dhajin) ayaa la muujiyay", + "tag-editcheck-paste-shown-description": "EditCheck wuxuu weydiiyay caddeyn ku saabsan waxyaabaha uu tafatiruhu ku dhajiyay, ka dibna waa la saaray ama waa la xaqiijiyay in la oggol yahay", + "tag-visualeditor": "wax ka badalka muuqaalka ah", + "tag-visualeditor-description": "Wax ka-beddel lagu sameeyay iyadoo la adeegsanayo [[{{MediaWiki:visualeditor-descriptionpagelink}}|tifaftiraha muuqaalka]]", + "tag-visualeditor-needcheck": "Tafatirka muuqaalka: Hubi", + "tag-visualeditor-needcheck-description": "Tafatir lagu sameeyay iyadoo la adeegsanayo [[{{MediaWiki:visualeditor-descriptionpagelink}}|tifaftiraha muuqaalka]] halkaas oo nidaamku ogaaday in wikitext-ku uu yeelan karo isbeddello aan la doonayn.", + "tag-visualeditor-wikitext": "2017 tafatirka koodhka", + "tag-visualeditor-wikitext-description": "Tafatir lagu sameeyay iyadoo la adeegsanayo tifaftiraha wikitext ee 2017", + "tag-visualeditor-switched": "Tafatirka muuqaalka: Waa la beddelay", + "tag-visualeditor-switched-description": "Isticmaaluhu wuxuu ku bilaabay tafatirka tifaftiraha muuqaalka, ka dibna wuxuu u beddelay tifaftiraha wikitext.", + "visualeditor-feedback-link": "Project: Tifaftiraha Muuqaalka/Faallo", + "visualeditor-feedback-tool": "Ka bixi faallo ku saabsan software-kan", + "visualeditor-help-label": "Akhri hagaha isticmaalaha", "visualeditor-welcomedialog-action": "Biloow bedelidda", "visualeditor-welcomedialog-content": "Qof kasta wuu ka qayb qaadan karaa, habayn kasta waa kaalmo.", "visualeditor-welcomedialog-content-thanks": "Waad ku mahadsantahay kaalmada aad adduunyada ku caawisay helitaan dheeraad ah!", + "visualeditor-welcomedialog-switch": "U beddel tafatiraha koodhka", "visualeditor-welcomedialog-switch-ve": "Ku bedel wax bedelaha la arki karo", "visualeditor-welcomedialog-title": "{{GENDER:$1|Ku}} soo dhawoow $2" } diff --git a/i18n/ve-wmf/sq.json b/i18n/ve-wmf/sq.json index ebd0074dfe..84260e5b16 100644 --- a/i18n/ve-wmf/sq.json +++ b/i18n/ve-wmf/sq.json @@ -1,22 +1,23 @@ { "@metadata": { "authors": [ - "Amire80", "Arianit", "Besnik b", "Euriditi", "Kosovastar", - "Liridon" + "Liridon", + "Xhulianoo" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Përpunim pamor]]", - "tag-visualeditor-description": "Përpunim i bërë duke përdorur [[{{MediaWiki:visualeditor-descriptionpagelink}}|përpunuesin pamor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Përpunim pamor: Kontrollojeni]]", + "tag-editcheck-newreference-description": "Një referim iu shtua faqes", + "tag-visualeditor": "Redaktim pamor", + "tag-visualeditor-description": "Redaktim i bërë duke përdorur [[{{MediaWiki:visualeditor-descriptionpagelink}}|redaktuesin pamor]]", + "tag-visualeditor-needcheck": "Përpunim pamor: Kontrollojeni", "tag-visualeditor-needcheck-description": "Përpunim i bërë duke përdorur [[{{MediaWiki:visualeditor-descriptionpagelink}}|përpunuesin pamor]] kur sistemi pikasi tekst wiki sipas gjasash me ndryshime të pasynuara.", "tag-visualeditor-wikitext": "përpunim burimi 2017", "tag-visualeditor-wikitext-description": "Përpunim i bërë duke përdorur përpunues tekste wiki të 2017-s", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Përpunim pamor: I kaluar në të]]", - "tag-visualeditor-switched-description": "Përdoruesi filloi ta përpunojë duke përdorur përpunuesin pamor, mandej kaloi te përpunues burimi.", + "tag-visualeditor-switched": "Redaktim pamor: I ndërruar", + "tag-visualeditor-switched-description": "Përdoruesi filloi të redaktojë duke përdorur redaktuesin pamor, pastaj kaloi te redaktuesi i wikitekstit.", "visualeditor-feedback-link": "Project:VisualEditor/Përshtypje", "visualeditor-feedback-tool": "Lini përshtypjet rreth këtij software-i", "visualeditor-help-label": "Lexoni udhërrëfyesin e përdoruesit", diff --git a/i18n/ve-wmf/sr-ec.json b/i18n/ve-wmf/sr-ec.json index bd98d64859..10719b9c36 100644 --- a/i18n/ve-wmf/sr-ec.json +++ b/i18n/ve-wmf/sr-ec.json @@ -1,6 +1,7 @@ { "@metadata": { "authors": [ + "Aca", "Acamicamacaraca", "BadDog", "Milicevic01", @@ -13,13 +14,13 @@ "tag-editcheck-newcontent-description": "EditCheck мисли да је нов садржај додат страници", "tag-editcheck-newreference-description": "Референца је додата на страницу", "tag-editcheck-references-description": "EditCheck мисли да је потребна референца", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуелно уређивање]]", + "tag-visualeditor": "Визуелно уређивање", "tag-visualeditor-description": "Измена начињена [[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуелним уређивачем]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуелни уређивач: проверити]]", + "tag-visualeditor-needcheck": "Визуелни уређивач: проверити", "tag-visualeditor-needcheck-description": "Измена начињена [[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуелним уређивачем]] где је систем детектовао викитекст с могућим нежељеним изменама.", "tag-visualeditor-wikitext": "уређивање извора (2017)", "tag-visualeditor-wikitext-description": "Измена направљена уређивачем викитекста (2017)", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуелни уређивач: пребачен]]", + "tag-visualeditor-switched": "Визуелни уређивач: пребачен", "tag-visualeditor-switched-description": "Корисник је почео уређивати користећи визуелни уређивач, па се пребацио на уређивач викитекста.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Повратне информације", diff --git a/i18n/ve-wmf/sr-el.json b/i18n/ve-wmf/sr-el.json index b8737c8201..7e14aee40d 100644 --- a/i18n/ve-wmf/sr-el.json +++ b/i18n/ve-wmf/sr-el.json @@ -5,19 +5,22 @@ "Сербијана" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vizuelno uređivanje]]", + "tag-editcheck-newcontent-description": "EditCheck misli da je nov sadržaj dodat stranici", + "tag-editcheck-newreference-description": "Referenca je dodata na stranicu", + "tag-editcheck-references-description": "EditCheck misli da je potrebna referenca", + "tag-visualeditor": "Vizuelno uređivanje", "tag-visualeditor-description": "Izmena načinjena [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuelnim uređivačem]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuelni uređivač: proveriti]]", + "tag-visualeditor-needcheck": "Vizuelni uređivač: proveriti", "tag-visualeditor-needcheck-description": "Izmena načinjena [[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuelnim uređivačem]] gde je sistem detektovao vikitekst s mogućim neželjenim izmenama.", "tag-visualeditor-wikitext": "uređivanje izvora (2017)", "tag-visualeditor-wikitext-description": "Izmena napravljena uređivačem vikiteksta (2017)", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizuelni uređivač: prebačen]]", + "tag-visualeditor-switched": "Vizuelni uređivač: prebačen", "tag-visualeditor-switched-description": "Korisnik je počeo uređivati koristeći vizuelni uređivač, pa se prebacio na uređivač vikiteksta.", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "Povratne informacije", "visualeditor-help-label": "Korisnički vodič", "visualeditor-welcomedialog-action": "Započni uređivanje", - "visualeditor-welcomedialog-content": "Ovde svako može da uređuje i poboljšava sadržaj.", + "visualeditor-welcomedialog-content": "Ovde svako može da uređuje i unapređuje sadržaj.", "visualeditor-welcomedialog-content-thanks": "Hvala vam što pomažete u širenju znanja!", "visualeditor-welcomedialog-switch": "Prebaci me na uređivanje izvora", "visualeditor-welcomedialog-switch-ve": "Prebaci me na vizuelni uređivač", diff --git a/i18n/ve-wmf/sty.json b/i18n/ve-wmf/sty.json index 9a534011b7..c28baeb2a1 100644 --- a/i18n/ve-wmf/sty.json +++ b/i18n/ve-wmf/sty.json @@ -4,5 +4,5 @@ "Khanmarat" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|визуаль редактор]]" + "tag-visualeditor": "визуаль редактор" } diff --git a/i18n/ve-wmf/su.json b/i18n/ve-wmf/su.json index 68ba16e571..ae7d4bd92f 100644 --- a/i18n/ve-wmf/su.json +++ b/i18n/ve-wmf/su.json @@ -4,5 +4,5 @@ "Kandar" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Édit visual]]" + "tag-visualeditor": "Édit visual" } diff --git a/i18n/ve-wmf/sv.json b/i18n/ve-wmf/sv.json index 62c5e9b44a..986807af9f 100644 --- a/i18n/ve-wmf/sv.json +++ b/i18n/ve-wmf/sv.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "Ainali", - "Amire80", "Haxpett", "Jopparn", "Knuckles", @@ -17,18 +16,30 @@ "Tommy Kronkvist", "Warrakkk", "WikiPhoenix", - "아라" + "아라", + "Stefan2255", + "Boivie" ] }, + "tag-editcheck-newcontent-description": "EditCheck tror att nytt innehåll har lagts till på sidan", "tag-editcheck-newreference-description": "En referens lades till i sidan", "tag-editcheck-references-description": "EditCheck tror att en referens kan ha behövts", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell redigering]]", + "tag-editcheck-references-activated": "Edit Check (referenser) aktiverad", + "tag-editcheck-references-activated-description": "EditCheck tror att en referens kan ha behövts, och användargränssnittet visades", + "tag-editcheck-references-shown": "Edit Check (referenser) visas", + "tag-editcheck-references-shown-description": "EditCheck tror att en referens kan ha behövts, och användargränssnittet visades", + "tag-editcheck-tone-description": "EditCheck upptäckte ett potentiellt problem med tonen i visst tillagt innehåll.", + "tag-editcheck-tone-shown": "Edit Check (ton) visas", + "tag-editcheck-tone-shown-description": "EditCheck tror att en justering av tonen i en del innehåll kan ha behövts, och användargränssnittet visades.", + "tag-editcheck-paste-shown": "Edit Check (klistra in) visas", + "tag-editcheck-paste-shown-description": "EditCheck bad om förtydligande om innehåll som redaktören klistrade in, vilket sedan antingen togs bort eller bekräftades vara tillåtet.", + "tag-visualeditor": "Visuell redigering", "tag-visualeditor-description": "Redigering gjord med hjälp av [[{{MediaWiki:visualeditor-descriptionpagelink}}|visuell redigering]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell redigering: Kontrollera]]", + "tag-visualeditor-needcheck": "Visuell redigering: Kontrollera", "tag-visualeditor-needcheck-description": "Redigering gjord med [[{{MediaWiki:visualeditor-descriptionpagelink}}|den visuella redigeraren]] där systemet upptäckte att wikitexten möjligen hade oavsiktliga ändringar.", "tag-visualeditor-wikitext": "2017-källredigering", "tag-visualeditor-wikitext-description": "Redigering som gjordes med wikitextredigeraren från 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuell redigering: Växlade]]", + "tag-visualeditor-switched": "Visuell redigering: Växlade", "tag-visualeditor-switched-description": "Användaren började redigera med den visuella redigeraren men växlade sedan till wikitext-läge.", "visualeditor-feedback-link": "Project:VisualEditor/Återkoppling", "visualeditor-feedback-tool": "Lämna återkoppling om denna programvara", diff --git a/i18n/ve-wmf/sw.json b/i18n/ve-wmf/sw.json index a717ee4c7d..c846f01560 100644 --- a/i18n/ve-wmf/sw.json +++ b/i18n/ve-wmf/sw.json @@ -8,10 +8,10 @@ "Stacy Lavuha" ] }, - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}]Angalia uhariri (marejeleo) imeamilishwa]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|KihaririOneshi]]", + "tag-editcheck-references-activated": "Angalia uhariri (marejeleo) imeamilishwa", + "tag-visualeditor": "KihaririOneshi", "tag-visualeditor-description": "Uhariri ulifanyika kwa kutumia [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]: Pitia", + "tag-visualeditor-needcheck": "VisualEditor: Pitia", "tag-visualeditor-needcheck-description": "Uhariri ulifanywa kwa kutumia [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] ambapo mitambo imeona huenda kukawa na mabadiliko yasiyotakiwa katika maandiki-ya-wiki.", "visualeditor-feedback-link": "Project:VisualEditor/Maoni", "visualeditor-feedback-tool": "Acha taarifa", diff --git a/i18n/ve-wmf/syl.json b/i18n/ve-wmf/syl.json index 6724c48f5b..8e718f3643 100644 --- a/i18n/ve-wmf/syl.json +++ b/i18n/ve-wmf/syl.json @@ -4,5 +4,12 @@ "ꠢꠣꠍꠘ ꠞꠣꠎꠣ" ] }, - "visualeditor-welcomedialog-action": "ꠟꠦꠈꠣ ꠡꠥꠞꠥ ꠇꠞꠂꠘ" + "tag-visualeditor": "ꠛꠣꠇ ꠇꠞꠣꠔꠣ ꠖꠦꠈꠂꠘ", + "tag-visualeditor-needcheck": "ꠖꠦꠈꠤ ꠖꠦꠈꠤꠛꠣꠇ ꠇꠞꠣ ꠪ ꠌꠦꠇ", + "tag-visualeditor-wikitext": "2017 ꠎꠠꠞ ꠛꠣꠇ ꠇꠞꠣꠔꠣ", + "visualeditor-help-label": "ꠛꠦꠛꠀꠞꠇꠞ꠆ꠞꠣꠞ ꠉꠣꠁꠒ ꠙꠠꠃꠇ꠆ꠇꠣ", + "visualeditor-welcomedialog-action": "ꠟꠦꠈꠣ ꠡꠥꠞꠥ ꠇꠞꠂꠘ", + "visualeditor-welcomedialog-switch": "ꠎꠠ ꠛꠣꠇ ꠇꠞꠃꠇ꠆ꠇꠣ", + "visualeditor-welcomedialog-switch-ve": "ꠖꠦꠈꠤ ꠖꠦꠈꠤ ꠛꠣꠇ ꠇꠞꠃꠇ꠆ꠇꠣ", + "visualeditor-welcomedialog-title": "$2 ꠅ {{GENDER:$1|ꠀꠃꠇ꠆ꠇꠣ}}" } diff --git a/i18n/ve-wmf/szl.json b/i18n/ve-wmf/szl.json index 463cb098c7..003e56c048 100644 --- a/i18n/ve-wmf/szl.json +++ b/i18n/ve-wmf/szl.json @@ -5,5 +5,5 @@ "Uostofchuodnego" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Wizualnŏ edycyjŏ]]" + "tag-visualeditor": "Wizualnŏ edycyjŏ" } diff --git a/i18n/ve-wmf/szy.json b/i18n/ve-wmf/szy.json index 07cd828f5e..037efa1317 100644 --- a/i18n/ve-wmf/szy.json +++ b/i18n/ve-wmf/szy.json @@ -5,13 +5,13 @@ "Bunukwiki" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|palakuliten ku aazihen mikawaway tu kalumyiti]]", + "tag-visualeditor": "palakuliten ku aazihen mikawaway tu kalumyiti", "tag-visualeditor-description": "misaungay [[{{MediaWiki:visualeditor-descriptionpagelink}}|palakuliten ku aazihen sakawaw-kalumyiti]] malaheciay a mikawaway-kalumyiti", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|palakuliten ku aazihen sakawaw-kalumyiti: maydih kinsa]]", + "tag-visualeditor-needcheck": "palakuliten ku aazihen sakawaw-kalumyiti: maydih kinsa", "tag-visualeditor-needcheck-description": "pisaungay [[{{MediaWiki:visualeditor-descriptionpagelink}}|palakuliten ku aazihen sakawaw-kalumyiti]] malaheci a mikawaway-kalumyiti. sisetyimo masedap WikiText hakay matahkal talibahalay a sumad.", "tag-visualeditor-wikitext": "2017 yuensma-kodo mikawaway-kalumyiti", "tag-visualeditor-wikitext-description": "nay 2017 wikitext sakawaw-kalumyiti nasangaan a mikawaway-kalumyiti", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|palakuliten ku aazihen sakawaw-kalumyiti: mabalic]]", + "tag-visualeditor-switched": "palakuliten ku aazihen sakawaw-kalumyiti: mabalic", "tag-visualeditor-switched-description": "misaungayay misaungay palakuliten ku aazihen sakawaw nu kalumyiti pasumad tatiku Wikitext sakawaw-kalumyiti.", "visualeditor-feedback-link": "Project:palakuliten ku aazihen sakawaw-kalumyiti-sakaluk/hwidubaku", "visualeditor-feedback-tool": "hwidubaku mahizaay tina zwanti a nabalucu’", diff --git a/i18n/ve-wmf/tay.json b/i18n/ve-wmf/tay.json index 6043fa5b2d..9e670027af 100644 --- a/i18n/ve-wmf/tay.json +++ b/i18n/ve-wmf/tay.json @@ -5,6 +5,6 @@ "Translatealcd" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}| Kblayun sa ktan na rawziq smr’zyut miru’ ]]", + "tag-visualeditor": " Kblayun sa ktan na rawziq smr’zyut miru’", "visualeditor-welcomedialog-action": "T’aring smr’zyut miru’" } diff --git a/i18n/ve-wmf/tcy.json b/i18n/ve-wmf/tcy.json index 5a3d595ccb..857abb2dba 100644 --- a/i18n/ve-wmf/tcy.json +++ b/i18n/ve-wmf/tcy.json @@ -2,9 +2,10 @@ "@metadata": { "authors": [ "BHARATHESHA ALASANDEMAJALU", + "ChiK", "VASANTH S.N.", "Vishwanatha Badikana" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ದೃಸ್ಯೊ ಸಂಪೊಲಿಕೆ ]]" + "tag-visualeditor": "ದೃಸ್ಯೊ ಸಂಪೊಲಿಪು" } diff --git a/i18n/ve-wmf/tdd.json b/i18n/ve-wmf/tdd.json index e087f6dc62..413caeb761 100644 --- a/i18n/ve-wmf/tdd.json +++ b/i18n/ve-wmf/tdd.json @@ -6,5 +6,5 @@ "咽頭べさ" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ᥖᥨᥝ ᥗᥖᥴ ᥖᥣ ᥞᥢᥴ]]" + "tag-visualeditor": "ᥖᥨᥝ ᥗᥖᥴ ᥖᥣ ᥞᥢᥴ" } diff --git a/i18n/ve-wmf/te.json b/i18n/ve-wmf/te.json index 1bba315698..73bca7660b 100644 --- a/i18n/ve-wmf/te.json +++ b/i18n/ve-wmf/te.json @@ -12,12 +12,12 @@ "రహ్మానుద్దీన్" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|విజువల్ ఎడిటర్ ద్వారా సవరణ]]", + "tag-visualeditor": "విజువల్ ఎడిటర్ ద్వారా సవరణ", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|విజువల్ ఎడిటర్]] వాడి చేసిన మార్పు", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|విజువల్ ఎడిటర్:తనిఖీ]]", + "tag-visualeditor-needcheck": "విజువల్ ఎడిటర్:తనిఖీ", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|విజువల్ ఎడిటరును]] వాడి చేసిన మార్పు - వికీటెక్స్టులో అనుకోని మార్పులు జరిగి ఉండవచ్చని వ్యవస్థ కనుగొన్న మార్పు", "tag-visualeditor-wikitext-description": "2017 వికీటెక్స్ట్ ఎడిటరును వాడి చేసిన దిద్దుబాటు", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|విజువల్ ఎడిట్: మార్చారు]]", + "tag-visualeditor-switched": "విజువల్ ఎడిట్: మార్చారు", "tag-visualeditor-switched-description": "వాడుకరి విజువల్ ఎడిటరుతో దిద్దుబాటు మొదలుపెట్టి, తరువాత వికీటెక్స్టు ఎడిటరుకు మారారు.", "visualeditor-feedback-link": "ప్రాజేక్ట్:విజువల్ ఎడిటర్/సూచనలు", "visualeditor-feedback-tool": "సూచనలివ్వండి", diff --git a/i18n/ve-wmf/tg-cyrl.json b/i18n/ve-wmf/tg-cyrl.json index 01a598c48e..4d32444d6c 100644 --- a/i18n/ve-wmf/tg-cyrl.json +++ b/i18n/ve-wmf/tg-cyrl.json @@ -5,6 +5,6 @@ "ToJack" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Вироиши визуалӣ]]", - "visualeditor-welcomedialog-title": "Хуш омадед ба Википедиа" + "tag-visualeditor": "Вироиши визуалӣ", + "visualeditor-welcomedialog-title": "{{GENDER:$1|Хуш омадед}} ба $1" } diff --git a/i18n/ve-wmf/th.json b/i18n/ve-wmf/th.json index 0a62edb055..840a7e8931 100644 --- a/i18n/ve-wmf/th.json +++ b/i18n/ve-wmf/th.json @@ -11,13 +11,13 @@ "Taweetham" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|แก้ไขแบบเห็นภาพ]]", + "tag-visualeditor": "แก้ไขแบบเห็นภาพ", "tag-visualeditor-description": "การแก้ไขโดยใช้[[{{MediaWiki:visualeditor-descriptionpagelink}}|ตัวแก้ไขแบบเห็นภาพ]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|การแก้ไขแบบเห็นภาพ: ตรวจสอบ]]", + "tag-visualeditor-needcheck": "การแก้ไขแบบเห็นภาพ: ตรวจสอบ", "tag-visualeditor-needcheck-description": "การแก้ไขที่ใช้[[{{MediaWiki:visualeditor-descriptionpagelink}}|ตัวแก้ไขแบบเห็นภาพ]]ซึ่งระบบตรวจพบข้อความวิกิที่อาจถูกเปลี่ยนแปลงโดยไม่ได้ตั้งใจ", "tag-visualeditor-wikitext": "แก้ไขแบบต้นฉบับปี 2560", "tag-visualeditor-wikitext-description": "การแก้ไขที่ทำโดยใช้ตัวแก้ไขข้อความวิกิปี 2560", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|การแก้ไขแบบเห็นภาพ: สลับแล้ว]]", + "tag-visualeditor-switched": "การแก้ไขแบบเห็นภาพ: สลับแล้ว", "tag-visualeditor-switched-description": "ผู้ใช้เริ่มแก้ไขโดยใช้ตัวแก้ไขแบบเห็นภาพ จากนั้นจึงสลับเป็นตัวแก้ไขข้อความวิกิ", "visualeditor-feedback-link": "Project:VisualEditor/ข้อเสนอแนะ", "visualeditor-feedback-tool": "ฝากข้อเสนอแนะเกี่ยวกับซอฟต์แวร์นี้", diff --git a/i18n/ve-wmf/ti.json b/i18n/ve-wmf/ti.json index e880c3df5f..5c8b678186 100644 --- a/i18n/ve-wmf/ti.json +++ b/i18n/ve-wmf/ti.json @@ -4,9 +4,9 @@ "Joanmp17" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ርእየታዊ ኣርትዖት]]", + "tag-visualeditor": "ርእየታዊ ኣርትዖት", "tag-visualeditor-wikitext": "ኣርታዒ ኮድ 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ርእየታዊ ኣርትዖት፦ ተለዊጡ]]", + "tag-visualeditor-switched": "ርእየታዊ ኣርትዖት፦ ተለዊጡ", "visualeditor-welcomedialog-action": "ኣርትዖት ጀምር", "visualeditor-welcomedialog-content-thanks": "ዓለም ዝያዳ ክትረክብ ስለ ዝሓገዝካና የቐንየልና!", "visualeditor-welcomedialog-switch": "ናብ ኣርታዒ ኮድ ለውጥ", diff --git a/i18n/ve-wmf/tig.json b/i18n/ve-wmf/tig.json new file mode 100644 index 0000000000..6ecc79d15f --- /dev/null +++ b/i18n/ve-wmf/tig.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Osman Omera" + ] + }, + "visualeditor-welcomedialog-action": "አስነዮት አንብት" +} diff --git a/i18n/ve-wmf/tk.json b/i18n/ve-wmf/tk.json index f6052f0f88..0d62b45c4a 100644 --- a/i18n/ve-wmf/tk.json +++ b/i18n/ve-wmf/tk.json @@ -4,5 +4,5 @@ "C.Syde65" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Wizual düzetme]]" + "tag-visualeditor": "Wizual düzetme" } diff --git a/i18n/ve-wmf/tl.json b/i18n/ve-wmf/tl.json index ed04bef272..77ed62e3d3 100644 --- a/i18n/ve-wmf/tl.json +++ b/i18n/ve-wmf/tl.json @@ -8,11 +8,11 @@ "Sky Harbor" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Pagbabagong biswal]]", + "tag-visualeditor": "Pagbabagong biswal", "tag-visualeditor-description": "Pagbabagong ginawa gamit ang [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Tiyakin]]", + "tag-visualeditor-needcheck": "VisualEditor: Tiyakin", "tag-visualeditor-needcheck-description": "Pagbabagong isinagawa gamit ang [[{{MediaWiki:visualeditor-descriptionpagelink}}|bisuwal na editor]] kung saan natagpuan ng sistema ang wikisintaksis na maaaring magdulot ng 'di-inatasang pagbabago.", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: Naipalit]]", + "tag-visualeditor-switched": "VisualEditor: Naipalit", "tag-visualeditor-switched-description": "Nagsimulang mamatnugot ang tagagamit sa pamamagitan ng bisuwal na editor, at pagkatapos lumipat sa editor ng wikisintaksis.", "visualeditor-feedback-link": "Project:VisualEditor/Komentaryo", "visualeditor-feedback-tool": "Mag-iwan ng komentaryo tungkol sa software na ito.", diff --git a/i18n/ve-wmf/tly.json b/i18n/ve-wmf/tly.json index 55bab7fe9a..a7c043106d 100644 --- a/i18n/ve-wmf/tly.json +++ b/i18n/ve-wmf/tly.json @@ -7,13 +7,13 @@ "tag-editcheck-newcontent-description": "EditCheck hisob kardə ki bə səhifə nujə kontent əlovə kardə byə", "tag-editcheck-newreference-description": "Bə səhifə link əlovə kardə byə", "tag-editcheck-references-description": "EditCheck hisob kardə ki ijo link lozim bəbe", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vində redaktor]]", + "tag-visualeditor": "Vində redaktor", "tag-visualeditor-description": "Ovaxtə byə de [[{{MediaWiki:visualeditor-descriptionpagelink}}|vində redaktori]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vində redaktor]]: osə karde", + "tag-visualeditor-needcheck": "vində redaktor: osə karde", "tag-visualeditor-needcheck-description": "De [[{{MediaWiki:visualeditor-descriptionpagelink}}|vində redaktori]] dastəki ovaxtə byə, komədə sistem pəjdo kardyše ovaxtə byə viki-mətni, bəzne be ǧəsto ne.", "tag-visualeditor-wikitext": "2017 viki-mətni redaktor", "tag-visualeditor-wikitext-description": "De viki-mətni 2017 redaktori dastəki sərost kardə byə", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|vində redaktor]] okyštə byə", + "tag-visualeditor-switched": "vində redaktor okyštə byə", "tag-visualeditor-switched-description": "Okoədə bino kardyše sərost karde de vində redaktori ijən pešo ovašte bə viki-mətni redaktor.", "visualeditor-feedback-link": "Project:Vində redaktor/Raj", "visualeditor-feedback-tool": "Raj ogəte", diff --git a/i18n/ve-wmf/tr.json b/i18n/ve-wmf/tr.json index 6750797b9c..7d7a301bc1 100644 --- a/i18n/ve-wmf/tr.json +++ b/i18n/ve-wmf/tr.json @@ -10,6 +10,7 @@ "Incelemeelemani", "Joseph", "Kumkumuk", + "Leo", "LuCKY", "Maidis", "McAang", @@ -21,18 +22,25 @@ "TurkishStyles" ] }, - "tag-editcheck-newcontent-description": "EditCheck sayfaya yeni içerik eklendiğini düşünüyor", + "tag-editcheck-newcontent-description": "DüzenlemeKontrolü sayfaya yeni içerik eklendiğini düşünüyor", "tag-editcheck-newreference-description": "Sayfaya bir kaynak eklendi", - "tag-editcheck-references-description": "EditCheck bir kaynağın gerekli olabileceğini düşünüyor", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Düzenleme Denetimi (kaynakça) etkinleştirildi]]", - "tag-editcheck-references-activated-description": "EditCheck bir kaynağın gerekebileceğini düşünüyor ve kullanıcı arayüzü gösteriliyor", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Görsel düzenleme]]", + "tag-editcheck-references-description": "DüzenlemeKontrolü bir kaynağın gerekli olabileceğini düşünüyor", + "tag-editcheck-references-activated": "Düzenleme Kontrolü (kaynakça) etkinleştirildi", + "tag-editcheck-references-activated-description": "DüzenlemeKontrolü bir kaynağın gerekebileceğini ve kullanıcı arayüzünün gösterildiğini düşünüyor", + "tag-editcheck-references-shown": "Düzenleme Kontrolü (kaynakça) gösterildi", + "tag-editcheck-references-shown-description": "DüzenlemeKontrolü bir kaynağın gerekebileceğini ve kullanıcı arayüzünün gösterildiğini düşünüyor", + "tag-editcheck-tone-description": "EditCheck, eklenen bazı içeriğin tonuyla ilgili olası bir sorun belirledi", + "tag-editcheck-tone-shown": "Düzenleme Kontrolü (üslup) gösterildi", + "tag-editcheck-tone-shown-description": "DüzenlemeKontrolü, bazı içeriklerdeki üslup ayarlamalarının gerekli olabileceğini ve kullanıcı arayüzünün gösterildiğini düşünüyor", + "tag-editcheck-paste-shown": "Düzenleme Kontrolü (yapıştır) gösterildi", + "tag-editcheck-paste-shown-description": "DüzenlemeKontrolü, editörün yapıştırdığı ve daha sonra kaldırılan veya izin verilebilir olduğu onaylanan içerik hakkında açıklama istedi", + "tag-visualeditor": "Görsel düzenleme", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Görsel düzenleyiciyi]] kullanarak düzenleyin", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Görsel düzenleme: Doğrula]]", - "tag-visualeditor-needcheck-description": "Sistem [[{{MediaWiki:visualeditor-descriptionpagelink}}|görsel düzenleyici]] ile düzenleyemeyeceğiniz, ancak kaynağı değiştir bağlantısıyla editör ile yapabileceğiniz değişiklik yaptığınızı tespit etti.", + "tag-visualeditor-needcheck": "Görsel düzenleme: Doğrula", + "tag-visualeditor-needcheck-description": "Sistemin vikimetininde muhtemelen istenmeyen değişiklikler olduğunu tespit ettiği [[{{MediaWiki:visualeditor-descriptionpagelink}}|görsel düzenleyici]] kullanılarak yapılan düzenleme.", "tag-visualeditor-wikitext": "2017 kaynak düzenleyici", "tag-visualeditor-wikitext-description": "2017 vikimetin düzenleyicisi kullanılarak yapılan düzenleme", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Görsel düzenleme: Değiştirildi]]", + "tag-visualeditor-switched": "Görsel düzenleme: Değiştirildi", "tag-visualeditor-switched-description": "Kullanıcı görsel düzenleyici ile düzenlemeye başladı, daha sonra kaynak düzenleyiciye geçti.", "visualeditor-feedback-link": "Project:Görsel Düzenleyici/Geri bildirim", "visualeditor-feedback-tool": "Bu yazılım hakkında geri bildirim bırakın", diff --git a/i18n/ve-wmf/trv.json b/i18n/ve-wmf/trv.json index 292e4d9282..e9d5a55916 100644 --- a/i18n/ve-wmf/trv.json +++ b/i18n/ve-wmf/trv.json @@ -4,5 +4,5 @@ "Iyuqciyang" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Qntaan smmalu patas]]" + "tag-visualeditor": "Qntaan smmalu patas" } diff --git a/i18n/ve-wmf/tsg.json b/i18n/ve-wmf/tsg.json new file mode 100644 index 0000000000..9c5d293ac6 --- /dev/null +++ b/i18n/ve-wmf/tsg.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Zetareyy" + ] + }, + "tag-editcheck-references-shown": "Piyakita in Edit Check (manga agsuan)", + "tag-editcheck-references-shown-description": "Piyipikil sin EditCheck in kagunahan gana-gana in hambuuk agsuan, iban piyakita in UI." +} diff --git a/i18n/ve-wmf/tt-cyrl.json b/i18n/ve-wmf/tt-cyrl.json index ddd154bff1..5aeff9a03d 100644 --- a/i18n/ve-wmf/tt-cyrl.json +++ b/i18n/ve-wmf/tt-cyrl.json @@ -4,17 +4,18 @@ "Ajdar", "Mansur", "Ерней", - "Ильнар" + "Ильнар", + "Ильгиз" ] }, - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Үзгәртүне (сылтамалар) тикшерү активлаштырылды]]", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|күрсәтмәле төзәтмә]]", - "tag-visualeditor-description": "Төзәтмә [[{{MediaWiki:visualeditor-descriptionpagelink}}|күренмәле төзәткеч]] ярдәмендә башкарылган", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Күрсәтмә төзәткеч: Тикшерү]]", - "tag-visualeditor-wikitext": "вики-текст мөхәррире 2017", - "tag-visualeditor-wikitext-description": "Төзәтмә вики-текст мөхәррире 2017 ярдәмендә ясалган", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Күрсәтмә төзәткеч: Өзелгән]]", - "visualeditor-feedback-link": "Project:Күрсәтмә төзәткеч/Бәяләмә", + "tag-editcheck-references-activated": "Үзгәртүне (сылтамалар) тикшерү активлаштырылды", + "tag-visualeditor": "күрсәтмәле төзәтмә", + "tag-visualeditor-description": "Төзәтмә [[{{MediaWiki:visualeditor-descriptionpagelink}}|күрсәтмәле редактор]] ярдәмендә башкарылган", + "tag-visualeditor-needcheck": "Күрсәтмәле редактор: Тикшерү", + "tag-visualeditor-wikitext": "Вики-текст редакторы 2017", + "tag-visualeditor-wikitext-description": "Төзәтмә Вики-текст редакторы 2017 ярдәмендә ясалган", + "tag-visualeditor-switched": "Күрсәтмәле редактор: Өзелгән", + "visualeditor-feedback-link": "Project:Күрсәтмәле редактор/Бәяләмә", "visualeditor-feedback-tool": "Программалы тәэмин ителешкә бәяләмә", "visualeditor-help-label": "Кулланманы укыгыз", "visualeditor-welcomedialog-action": "Үзгәртүне башлау", diff --git a/i18n/ve-wmf/tt-latn.json b/i18n/ve-wmf/tt-latn.json index 48f80c4ed0..ebd3629cb8 100644 --- a/i18n/ve-wmf/tt-latn.json +++ b/i18n/ve-wmf/tt-latn.json @@ -4,5 +4,5 @@ "Frhdkazan" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizual üzgärtü]]" + "tag-visualeditor": "Vizual üzgärtü" } diff --git a/i18n/ve-wmf/tum.json b/i18n/ve-wmf/tum.json index bc09bc65d8..50b581d70d 100644 --- a/i18n/ve-wmf/tum.json +++ b/i18n/ve-wmf/tum.json @@ -4,13 +4,13 @@ "Tumbuka Arch" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Lemba mwakuona]]", + "tag-visualeditor": "Lemba mwakuona", "tag-visualeditor-description": "Kulemba uku kukalembeka mwakugwiliska [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Kulemba mwakuona: Wonani]]", + "tag-visualeditor-needcheck": "Kulemba mwakuona: Wonani", "tag-visualeditor-needcheck-description": "Kulemba uku kwagwiliska [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]] uko sisitimu \n yaona malemba ghamu wikitext agho ghasintha mwambula chakulata.", "tag-visualeditor-wikitext": "2017 kulemba mwa source", "tag-visualeditor-wikitext-description": "Kulemba kwagwiliska ntchito milembelo ya 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Kulemba mwakuona: Mwakusinthaniska]]", + "tag-visualeditor-switched": "Kulemba mwakuona: Mwakusinthaniska", "tag-visualeditor-switched-description": "Mgwiliski wakayamba kulemba mwakuona,paumalilo nakuluta ku malembelo gha wikitext.", "visualeditor-feedback-link": "Project:VisualEditor/Vyakuyowoya", "visualeditor-feedback-tool": "Lembani zakukhwaskana na sofutiweya iyi", diff --git a/i18n/ve-wmf/tw.json b/i18n/ve-wmf/tw.json index fcec763e01..454a95fc3d 100644 --- a/i18n/ve-wmf/tw.json +++ b/i18n/ve-wmf/tw.json @@ -1,18 +1,17 @@ { "@metadata": { "authors": [ - "Amire80", "Edith101", "Kennedy Twumasi", "Robertjamal12" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit]]", + "tag-visualeditor": "Visual edit", "tag-visualeditor-description": "Nsea a wode [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor no ayɛ]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Nsesa a wode visual editor no ayɛ: Hwɛ no bio]]", + "tag-visualeditor-needcheck": "Nsesa a wode visual editor no ayɛ: Hwɛ no bio", "tag-visualeditor-wikitext": "2017 source edit", "tag-visualeditor-wikitext-description": "Nsesa a yɛ de 2017 wikitext editor no ayɛ", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Nsesa a wode visual editor no ayɛ: Asesa]]", + "tag-visualeditor-switched": "Nsesa a wode visual editor no ayɛ: Asesa", "tag-visualeditor-switched-description": "Nea ɔyɛ yɛ no di kan de visual editor na ɛyɛ yɛ, ɛna afei ɔsesa kɔ the wikitext editor.", "visualeditor-feedback-tool": "Gia wagyentre efa \"software\" wɛi hu", "visualeditor-help-label": "Kenkan akyerɛkyerɛ homa nu", diff --git a/i18n/ve-wmf/udm.json b/i18n/ve-wmf/udm.json index 27cc0128ca..0e14943778 100644 --- a/i18n/ve-wmf/udm.json +++ b/i18n/ve-wmf/udm.json @@ -4,6 +4,6 @@ "Kaganer" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Визуальной тупатон]]", + "tag-visualeditor": "Визуальной тупатон", "visualeditor-welcomedialog-action": "Тупатыны кутсконо" } diff --git a/i18n/ve-wmf/uk.json b/i18n/ve-wmf/uk.json index 73fbbadfa3..c945c45e55 100644 --- a/i18n/ve-wmf/uk.json +++ b/i18n/ve-wmf/uk.json @@ -4,7 +4,6 @@ "AS", "Aced", "Ahonc", - "Amire80", "Andriykopanytsia", "Base", "Dars", @@ -18,21 +17,29 @@ "Tel'et", "Tifinaghes", "Ата", - "아라" + "아라", + "Repakr" ] }, "tag-editcheck-newcontent-description": "Звіряння редагування показало, що на сторінку додано новий вміст", "tag-editcheck-newreference-description": "На сторінку додано примітку", "tag-editcheck-references-description": "Звіряння редагування показало, що варто додати посилання на джерело", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|Звіряння редагувань (посилання на джерела) активовано]]", + "tag-editcheck-references-activated": "Звіряння редагувань (посилання на джерела) активовано", "tag-editcheck-references-activated-description": "Звіряння редагування показало, що варто додати посилання на джерело, і показано інтерфейс користувача для цього", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальний редактор]]", + "tag-editcheck-references-shown": "Звіряння редагувань (посилання на джерела) показано", + "tag-editcheck-references-shown-description": "Звіряння редагування показало, що варто додати посилання на джерело, і показано інтерфейс користувача для цього", + "tag-editcheck-tone-description": "Звіряння редагувань виявило потенційну проблему з тоном деякого доданого контенту", + "tag-editcheck-tone-shown": "Звіряння редагувань (тон) показано", + "tag-editcheck-tone-shown-description": "Звіряння редагувань вважає, що, можливо, потрібно було скоригувати тон певного контенту, і показано інтерфейс користувача для цього", + "tag-editcheck-paste-shown": "Звіряння редагувань (вставлення) показано", + "tag-editcheck-paste-shown-description": "Звіряння редагувань запросило уточнення щодо вмісту, який вставив користувач, що потім був або вилучений або підтверджений як допустимий", + "tag-visualeditor": "Візуальний редактор", "tag-visualeditor-description": "Редагування виконано з використанням [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуального редактора]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Візуальний редактор: Перевірити]]", + "tag-visualeditor-needcheck": "Візуальний редактор: Перевірити", "tag-visualeditor-needcheck-description": "Редагування з допомогою [[{{MediaWiki:visualeditor-descriptionpagelink}}|візуального редактора]], у якому система виявила, ймовірно, ненавмисно змінену вікірозмітку.", "tag-visualeditor-wikitext": "редагування коду 2017", "tag-visualeditor-wikitext-description": "Редагування зроблене з використанням редактора вікірозмітки 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Перемкнуто з візуального редактора]]", + "tag-visualeditor-switched": "Перемкнуто з візуального редактора", "tag-visualeditor-switched-description": "Користувач почав редагувати за допомогою візуального редактора, а потім перемкнувся на редактор вікірозмітки.", "visualeditor-feedback-link": "Project:Візуальний редактор/Відгуки", "visualeditor-feedback-tool": "Залишити відгук про це програмне забезпечення", diff --git a/i18n/ve-wmf/ur.json b/i18n/ve-wmf/ur.json index 551a4d6aaa..e67b977c03 100644 --- a/i18n/ve-wmf/ur.json +++ b/i18n/ve-wmf/ur.json @@ -8,7 +8,8 @@ "පසිඳු කාවින්ද" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|بصری ترمیم]]", + "tag-editcheck-references-activated": "ترمیم پڑتالگر (حوالہ جات) کا ٹیگ متحرک ہوا", + "tag-visualeditor": "بصری ترمیم", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|بصری خانہ ترمیم]] کے ذریعہ یہ تبدیلی کی گئی", "tag-visualeditor-wikitext": "ترمیم ماخذ 2017ء", "tag-visualeditor-wikitext-description": "ترمیم بذریعہ 2017ء ویکی متن ایڈیٹر", diff --git a/i18n/ve-wmf/uz.json b/i18n/ve-wmf/uz.json index 709df86b46..04179b5266 100644 --- a/i18n/ve-wmf/uz.json +++ b/i18n/ve-wmf/uz.json @@ -8,12 +8,12 @@ "පසිඳු කාවින්ද" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Koʻrib tahrirlagich]]", + "tag-visualeditor": "Koʻrib tahrirlagich", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Koʻrib tahrirlagich]] yordamida qilingan tahrir", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Koʻrib tahrirlagich: tekshirish]]", + "tag-visualeditor-needcheck": "Koʻrib tahrirlagich: tekshirish", "tag-visualeditor-wikitext": "vikimatn muharriri 2017", "tag-visualeditor-wikitext-description": "Vikimatn muharriri (2017) yordamida qilingan tahrir", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Koʻrib tahrirlagich: almashtirildi]]", + "tag-visualeditor-switched": "Koʻrib tahrirlagich: almashtirildi", "tag-visualeditor-switched-description": "Foydalanuvchi koʻrib tahrirlagichdan foydalanib tahrirlashni boshladi, keyin vikimatn tahrirlagichiga oʻzgartirdi.", "visualeditor-feedback-link": "Project:Koʻrib tahrirlagich/Fikrlar", "visualeditor-feedback-tool": "Bu dastur haqida fikr qoldirish", diff --git a/i18n/ve-wmf/vec.json b/i18n/ve-wmf/vec.json index 58a3cf0b8a..fb608b9925 100644 --- a/i18n/ve-wmf/vec.json +++ b/i18n/ve-wmf/vec.json @@ -6,12 +6,12 @@ "GatoSelvadego" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|modifega vixuałe]]", + "tag-visualeditor": "modifega vixuałe", "tag-visualeditor-description": "Canbiamento fato co [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: controłare]]", + "tag-visualeditor-needcheck": "VisualEditor: controłare", "tag-visualeditor-needcheck-description": "Canbiamento fato co [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] 'ndove el sistema el ga riłevà posibiłi canbiamenti no vołui inte'l wikitesto.", "tag-visualeditor-wikitext": "Editor de còdaxe 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Modifega vixuałe: Canbià]]", + "tag-visualeditor-switched": "Modifega vixuałe: Canbià", "visualeditor-feedback-link": "Project:VisualEditor/Comenti", "visualeditor-feedback-tool": "Łasa un comento", "visualeditor-help-label": "Lexi ła guida utente", diff --git a/i18n/ve-wmf/vep.json b/i18n/ve-wmf/vep.json index a0893040d1..6ebd496277 100644 --- a/i18n/ve-wmf/vep.json +++ b/i18n/ve-wmf/vep.json @@ -4,5 +4,5 @@ "Игорь Бродский" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Vizualine redaktiruind]]" + "tag-visualeditor": "Vizualine redaktiruind" } diff --git a/i18n/ve-wmf/vi.json b/i18n/ve-wmf/vi.json index ef8927dc6c..c1865dec9d 100644 --- a/i18n/ve-wmf/vi.json +++ b/i18n/ve-wmf/vi.json @@ -1,7 +1,6 @@ { "@metadata": { "authors": [ - "Amire80", "Anh88", "Cheers!", "Doraemonluonbentoi", @@ -9,24 +8,38 @@ "Jdforrester", "Minh Nguyen", "Nghiemtrongdai VN", + "NgocAnMaster", + "Nvdtn19", "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Soạn thảo trực quan]]", + "tag-editcheck-newcontent-description": "Kiểm tra Sửa đổi cho rằng nội dung mới đã được thêm vào trang", + "tag-editcheck-newreference-description": "Một nguồn tham khảo mới đã được thêm vào trang", + "tag-editcheck-references-description": "Kiểm tra Sửa đổi cho rằng có thể cần phải có một nguồn tham khảo", + "tag-editcheck-references-activated": "Đã kích hoạt Kiểm tra Sửa đổi (nguồn tham khảo)", + "tag-editcheck-references-activated-description": "Kiểm tra Sửa đổi cho rằng có thể cần phải có một nguồn tham khảo, và giao diện người dùng được hiển thị", + "tag-editcheck-references-shown": "Đã hiển thị Kiểm tra Sửa đổi (nguồn tham khảo)", + "tag-editcheck-references-shown-description": "Kiểm tra Sửa đổi cho rằng có thể cần phải có một nguồn tham khảo, và giao diện người dùng được hiển thị", + "tag-editcheck-tone-description": "Kiểm tra Sửa đổi đã phát hiện vấn đề với giọng điệu của một số nội dung được thêm vào", + "tag-editcheck-tone-shown": "Đã hiển thị Kiểm tra Sửa đổi (giọng điệu)", + "tag-editcheck-tone-shown-description": "Kiểm tra Sửa đổi cho rằng có thể cần phải điều chỉnh giọng điệu ở một số đoạn nội dung, và giao diện người dùng được hiển thị", + "tag-editcheck-paste-shown": "Đã hiển thị Kiểm tra Sửa đổi (dán)", + "tag-editcheck-paste-shown-description": "Kiểm tra sửa đổi đã yêu cầu biên tập viên cung cấp thông tin về nội dung mà họ đã dán, sau đó nội dung này đã bị xóa hoặc được xác nhận là được phép dùng", + "tag-visualeditor": "Soạn thảo trực quan", "tag-visualeditor-description": "Đã sửa đổi dùng [[{{MediaWiki:visualeditor-descriptionpagelink}}|Trình soạn thảo trực quan]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Qua trình soạn thảo trực quan: Cần kiểm tra]]", + "tag-visualeditor-needcheck": "Qua trình soạn thảo trực quan: Cần kiểm tra", "tag-visualeditor-needcheck-description": "Sửa đổi được thực hiện dùng [[{{MediaWiki:visualeditor-descriptionpagelink}}|Trình soạn thảo trực quan]] và hệ thống đã nhận ra những thay đổi trong mã wiki có thể ngoài ý muốn.", "tag-visualeditor-wikitext": "Trình soạn thảo mã nguồn 2017", "tag-visualeditor-wikitext-description": "Sửa đổi được thực hiện trong trình soạn thảo mã wiki năm 2017", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Qua trình soạn thảo trực quan: Đã chuyển]]", + "tag-visualeditor-switched": "Qua trình soạn thảo trực quan: Đã chuyển", "tag-visualeditor-switched-description": "Người dùng đã bắt đầu sửa đổi dùng Trình soạn thảo trực quan, sau đó đã chuyển qua chế độ sửa đổi mã wiki.", "visualeditor-feedback-link": "Project:Soạn thảo trực quan/Phản hồi", "visualeditor-feedback-tool": "Để lại phản hồi về phần mềm này", "visualeditor-help-label": "Đọc hướng dẫn sử dụng", "visualeditor-welcomedialog-action": "Bắt đầu sửa đổi", - "visualeditor-welcomedialog-content": "Bất cứ người nào có thể góp tay xây dựng và cải thiện nội dung.", - "visualeditor-welcomedialog-content-thanks": "Xin cảm ơn bạn muốn giúp người ta khám phá và tìm hiểu!", + "visualeditor-welcomedialog-content": "Bất cứ ai cũng có thể cùng chung tay xây dựng và cải thiện nội dung.", + "visualeditor-welcomedialog-content-thanks": "Xin cảm ơn bạn đã giúp những người khác cùng khám phá và tìm hiểu!", "visualeditor-welcomedialog-switch": "Chuyển sang trình soạn thảo mã nguồn", "visualeditor-welcomedialog-switch-ve": "Chuyển sang trình soạn thảo trực quan", - "visualeditor-welcomedialog-title": "{{GENDER:$1}}Hoan nghênh bạn đã đến $2" + "visualeditor-welcomedialog-title": "{{GENDER:$1|Chào mừng bạn}} đến với $2" } diff --git a/i18n/ve-wmf/vmw.json b/i18n/ve-wmf/vmw.json index 302d6d4de9..e174c33117 100644 --- a/i18n/ve-wmf/vmw.json +++ b/i18n/ve-wmf/vmw.json @@ -4,5 +4,5 @@ "Gildo Máquina" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ereerihelo enooneya ni maytho]]" + "tag-visualeditor": "ereerihelo enooneya ni maytho" } diff --git a/i18n/ve-wmf/vo.json b/i18n/ve-wmf/vo.json new file mode 100644 index 0000000000..32a0d2d444 --- /dev/null +++ b/i18n/ve-wmf/vo.json @@ -0,0 +1,9 @@ +{ + "@metadata": { + "authors": [ + "Malafaya" + ] + }, + "tag-visualeditor": "RedakanLogedik", + "tag-visualeditor-description": "Peredaköl me [[{{MediaWiki:visualeditor-descriptionpagelink}}|RedakanLogedik]]" +} diff --git a/i18n/ve-wmf/vro.json b/i18n/ve-wmf/vro.json index 66454f9444..40321c7c11 100644 --- a/i18n/ve-wmf/vro.json +++ b/i18n/ve-wmf/vro.json @@ -4,5 +4,5 @@ "Võrok" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visuaalmuudatus]]" + "tag-visualeditor": "Visuaalmuudatus" } diff --git a/i18n/ve-wmf/wa.json b/i18n/ve-wmf/wa.json index 3bd8a63ff2..206d0b1708 100644 --- a/i18n/ve-wmf/wa.json +++ b/i18n/ve-wmf/wa.json @@ -4,5 +4,5 @@ "Reptilien.19831209BE1" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Aspougneu veyåve]]" + "tag-visualeditor": "Aspougneu veyåve" } diff --git a/i18n/ve-wmf/wal.json b/i18n/ve-wmf/wal.json index dd02264a5a..eeed18baff 100644 --- a/i18n/ve-wmf/wal.json +++ b/i18n/ve-wmf/wal.json @@ -4,12 +4,12 @@ "Ella Lachow" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Beettiyaa giigissuwaa]]", + "tag-visualeditor": "Beettiyaa giigissuwaa", "tag-visualeditor-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|beettiyaa giigisissiyaagaa]] go'ettido giigissuwaa", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Beettiyaa giigissuwaa: Cheekka]]", + "tag-visualeditor-needcheck": "Beettiyaa giigissuwaa: Cheekka", "tag-visualeditor-wikitext": "2017 man\"iyaa giigissa", "tag-visualeditor-wikitext-description": "2017 wiikiixuufiyaan go'ettido giigissuwaa", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Beettiyaa giigissuwaa: Zaarettiis]]", + "tag-visualeditor-switched": "Beettiyaa giigissuwaa: Zaarettiis", "visualeditor-feedback-tool": "Ha softweeriya oosuwaa zaaruwaa yedda", "visualeditor-help-label": "Yaraa kaaletuwaa nabbaba", "visualeditor-welcomedialog-action": "Giigissuwaa doomma", diff --git a/i18n/ve-wmf/war.json b/i18n/ve-wmf/war.json index aba95173bf..0481d0e7af 100644 --- a/i18n/ve-wmf/war.json +++ b/i18n/ve-wmf/war.json @@ -5,5 +5,5 @@ "JinJian" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual nga pagliwat]]" + "tag-visualeditor": "Visual nga pagliwat" } diff --git a/i18n/ve-wmf/wls.json b/i18n/ve-wmf/wls.json index 94542092ab..886daf9665 100644 --- a/i18n/ve-wmf/wls.json +++ b/i18n/ve-wmf/wls.json @@ -4,5 +4,5 @@ "Lea.Fakauvea" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Fetogi o tana 'asi mai]]" + "tag-visualeditor": "Fetogi o tana 'asi mai" } diff --git a/i18n/ve-wmf/wo.json b/i18n/ve-wmf/wo.json index 185ccb680b..7c46fab660 100644 --- a/i18n/ve-wmf/wo.json +++ b/i18n/ve-wmf/wo.json @@ -4,5 +4,5 @@ "Ibou" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Soppikaay gu gisu]]" + "tag-visualeditor": "Soppikaay gu gisu" } diff --git a/i18n/ve-wmf/wuu-hans.json b/i18n/ve-wmf/wuu-hans.json index 81c4e6815d..308a71505c 100644 --- a/i18n/ve-wmf/wuu-hans.json +++ b/i18n/ve-wmf/wuu-hans.json @@ -4,7 +4,7 @@ "Winston Sung" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|可视化编辑]]", + "tag-visualeditor": "可视化编辑", "visualeditor-welcomedialog-action": "开始编辑", "visualeditor-welcomedialog-content": "每个人侪好编辑,每趟改进侪有帮助。", "visualeditor-welcomedialog-content-thanks": "感谢侬帮助世界发现更多!", diff --git a/i18n/ve-wmf/xmf.json b/i18n/ve-wmf/xmf.json index b123e157b6..6aca3eacdd 100644 --- a/i18n/ve-wmf/xmf.json +++ b/i18n/ve-wmf/xmf.json @@ -4,5 +4,5 @@ "Silovan" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ვიზუალური რედაქტირაფა]]" + "tag-visualeditor": "ვიზუალური რედაქტირაფა" } diff --git a/i18n/ve-wmf/xsy.json b/i18n/ve-wmf/xsy.json index 79e1c52027..94dd3fcb92 100644 --- a/i18n/ve-wmf/xsy.json +++ b/i18n/ve-wmf/xsy.json @@ -4,5 +4,5 @@ "Lalotahes" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}| Se’jyuehwa’ bienji ]]" + "tag-visualeditor": " Se’jyuehwa’ bienji" } diff --git a/i18n/ve-wmf/yi.json b/i18n/ve-wmf/yi.json index 08294b0ebf..953e5d6bf9 100644 --- a/i18n/ve-wmf/yi.json +++ b/i18n/ve-wmf/yi.json @@ -1,20 +1,19 @@ { "@metadata": { "authors": [ - "Amire80", "Malafaya", "פוילישער", "十弌", "아라" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|וויזועלער רעדאקטירונג]]", + "tag-visualeditor": "וויזועלער רעדאקטירונג", "tag-visualeditor-description": "רעדאקטירונג געמאכט מיטן [[{{MediaWiki:visualeditor-descriptionpagelink}}|וויזועלן רעדאקטירער]]", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|וויזועלער רעדאקטירונג: קאנטראלירן]]", + "tag-visualeditor-needcheck": "וויזועלער רעדאקטירונג: קאנטראלירן", "tag-visualeditor-needcheck-description": "רעדאקטירונג געמאכט מיטן [[{{MediaWiki:visualeditor-descriptionpagelink}}|וויזועלן רעדאַקטירער]] וואו די סיסטעם האט אנטדעקט אז דער וויקיטעקסט האט מעגלעך אומגעוואונטשטע ענדערונגען.", "tag-visualeditor-wikitext": "2017 קוואלטעקסט רעדאקטירונג", "tag-visualeditor-wikitext-description": "רעדאקטירונג אויסגעפֿירט מיטן 2017 וויקיטעקסט רעדאקטירער", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|וויזועלע רעדאקטירונג: געטוישט]]", + "tag-visualeditor-switched": "וויזועלע רעדאקטירונג: געטוישט", "tag-visualeditor-switched-description": "באניצער האט אנגעהויבן רעדאקטירן מיטן וויזועלן רעדאקטירער און איז ארבער צום וויקיטעקסט רעדאקטירער.", "visualeditor-feedback-link": "Project:VisualEditor/פֿידבעק", "visualeditor-feedback-tool": "איבערלאזאן פֿידבעק וועגן דעם דאזיגן ווייכווארג", diff --git a/i18n/ve-wmf/yo.json b/i18n/ve-wmf/yo.json index 929642863f..ac79d66e44 100644 --- a/i18n/ve-wmf/yo.json +++ b/i18n/ve-wmf/yo.json @@ -4,7 +4,7 @@ "Demmy" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", + "tag-visualeditor": "VisualEditor", "tag-visualeditor-description": "Àtúnṣe jẹ́ ṣíṣe pẹ̀lú [[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]", "visualeditor-welcomedialog-title": "{{GENDER:$1|Kú àbò}} sí $2" } diff --git a/i18n/ve-wmf/yua.json b/i18n/ve-wmf/yua.json new file mode 100644 index 0000000000..7789b0e7d6 --- /dev/null +++ b/i18n/ve-wmf/yua.json @@ -0,0 +1,46 @@ +{ + "@metadata": { + "authors": [ + "Chester1", + "Coala23", + "Cohuoucan", + "DeBolsillo", + "Ebenezer", + "Geom", + "Gutypc712", + "JhonRambo", + "Miguelos1976", + "Tunichmay", + "ValentinaTec" + ] + }, + "tag-editcheck-newcontent-description": "EditCheck ku tukultik ts'áab túumben kaambal tu' páaginaí", + "tag-editcheck-newreference-description": "junp'eel referencia tsaaba u tia'al le paginao'", + "tag-editcheck-references-description": "EditCheck ku tukultik jump'éel éesajile' je'el u páajtal u k'abeejtale'", + "tag-editcheck-references-activated": "paakat edicion T’aab", + "tag-editcheck-references-activated-description": "EditCheck ku tukultik junp'éel éesajile' je'el u páajtal u k'a'abéettal, yéetel chikpají le máax meyajtiko'", + "tag-editcheck-references-shown": "Editar Check (referencias) ku ye'esik", + "tag-editcheck-references-shown-description": "EditCheck ku tukultik jump'éel referencia je'el u páajtal u k'a'abéettal, ka le UI bin u ye'esa'al", + "tag-editcheck-tone-description": "EditCheck tu yilaj jump'éel talamil yéetel u tono yaan contenido añadido", + "tag-editcheck-tone-shown": "Editar Check (tono) mostrado", + "tag-editcheck-tone-shown-description": "EditCheck ku tukultik jump'éel ajuste ti' le tono ti' yaan contenido je'el u páajtal u sido k'a'abéet, ka le UI bin u ye'esa'al", + "tag-editcheck-paste-shown": "Editar Check (ja'ats'al) ku ye'esik", + "tag-editcheck-paste-shown-description": "EditCheck tu k'áataj u tsoolil yo'osal le ba'ax tu ts'áaj le editoro', le je'ela' ts'o'okole' bin luk'sa'an wa afirmado u permitido", + "tag-visualeditor": "Edición visual", + "tag-visualeditor-description": "Edición beeta'an yéetel le [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]].", + "tag-visualeditor-needcheck": "Edición visual: Compruebe", + "tag-visualeditor-needcheck-description": "Edición beeta'an yéetel le [[{{MediaWiki:visualeditor-descriptionpagelink}}|editor visual]] tu'ux le yaan detectó le wikitexto posiblemente yaantal cambios ma' previstos.", + "tag-visualeditor-wikitext": "editor de código 2017", + "tag-visualeditor-wikitext-description": "Edición beeta'an yéetel le editor wikitexto 2017", + "tag-visualeditor-switched": "Edición visual: K'ex", + "tag-visualeditor-switched-description": "El usuario comenzó a editar utilizando el editor visual y luego cambió al editor de wikitexto.", + "visualeditor-feedback-link": "Project:Editor visual/Comentarios", + "visualeditor-feedback-tool": "Deja tus comentarios acerca de este software", + "visualeditor-help-label": "Leer la guía de usuario", + "visualeditor-welcomedialog-action": "Empezar a editar", + "visualeditor-welcomedialog-content": "Cualquiera puede editar, y cada mejora ayuda.", + "visualeditor-welcomedialog-content-thanks": "¡Gracias por ayudar al mundo a descubrir más!", + "visualeditor-welcomedialog-switch": "K'ex le \"editor de codigo\"'", + "visualeditor-welcomedialog-switch-ve": "K'ex ti' le editor visual", + "visualeditor-welcomedialog-title": "{{GENDER:$1|k'amikech}} ti' $2" +} diff --git a/i18n/ve-wmf/yue-hant.json b/i18n/ve-wmf/yue-hant.json index 70d336bf1b..9cd503d883 100644 --- a/i18n/ve-wmf/yue-hant.json +++ b/i18n/ve-wmf/yue-hant.json @@ -1,16 +1,28 @@ { "@metadata": { "authors": [ + "JeffreyKim", + "Ktchankt", "Winston Sung" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|可見修改]]", + "tag-editcheck-newcontent-description": "EditCheck認為頁面加入咗新內容", + "tag-editcheck-newreference-description": "喺頁面加入咗參考資料", + "tag-editcheck-references-description": "EditCheck認為可能需要啲參考資料", + "tag-editcheck-references-activated": "編輯檢查(參考)啟動咗", + "tag-editcheck-references-activated-description": "EditCheck認為可能需要返啲參考資料,並且顯示埋用戶介面", + "tag-editcheck-references-shown": "編輯檢查(參考)顯示咗", + "tag-editcheck-references-shown-description": "EditCheck認為可能需要返啲參考資料,並且顯示埋用戶介面", + "tag-editcheck-tone-description": "EditCheck偵測到部分新增內容嘅語氣有潛在問題", + "tag-editcheck-tone-shown": "編輯顯示咗嘅檢查(音色)", + "tag-editcheck-tone-shown-description": "EditCheck認為可能需要調整返某啲內容嘅音色,所以就顯示咗個用戶介面", + "tag-visualeditor": "可見修改", "tag-visualeditor-description": "用[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]]改嘅", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor: 請檢查]]", + "tag-visualeditor-needcheck": "VisualEditor: 請檢查", "tag-visualeditor-needcheck-description": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|VisualEditor]] 處理呢次修改嗰陣,可能喐咗啲意料之外嘅嘢。", "tag-visualeditor-wikitext": "2017年版原始碼編輯", "tag-visualeditor-wikitext-description": "用咗2017年版文字編輯器嘅編輯", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|即見編輯:轉咗]]", + "tag-visualeditor-switched": "即見編輯:轉咗", "tag-visualeditor-switched-description": "用家本來用緊 VisualEditor 嚟編輯,然後轉咗去改源碼。", "visualeditor-feedback-link": "Project:VisualEditor/Feedback", "visualeditor-feedback-tool": "畀意見", diff --git a/i18n/ve-wmf/zgh.json b/i18n/ve-wmf/zgh.json index 99ba701799..bfd327f6fe 100644 --- a/i18n/ve-wmf/zgh.json +++ b/i18n/ve-wmf/zgh.json @@ -4,5 +4,5 @@ "Mdb897" ] }, - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|ⴰⵎⵥⵕⴰⴳ ⵉⵎⵥⵔⵉ]]" + "tag-visualeditor": "ⴰⵎⵥⵕⴰⴳ ⵉⵎⵥⵔⵉ" } diff --git a/i18n/ve-wmf/zh-hans.json b/i18n/ve-wmf/zh-hans.json index 796e1e2b4f..ad147f15e3 100644 --- a/i18n/ve-wmf/zh-hans.json +++ b/i18n/ve-wmf/zh-hans.json @@ -1,12 +1,12 @@ { "@metadata": { "authors": [ - "Amire80", "Anakmalaysia", "Anterdc99", "Bencmq", "Demmy", "Diskdance", + "GuoPC", "Hydra", "Hzy980512", "Liangent", @@ -22,21 +22,29 @@ "Zhangjintao", "乌拉跨氪", "星海", - "아라" + "아라", + "Pawsdt" ] }, - "tag-editcheck-newcontent-description": "EditCheck 发现页面中添加了新的内容", - "tag-editcheck-newreference-description": "页面中添加了参考来源", - "tag-editcheck-references-description": "EditCheck 认为可能需要参考来源", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|编辑检查(参考资料)已激活]]", - "tag-editcheck-references-activated-description": "EditCheck认为可能需要参考文献,且显示了UI", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|可视化编辑]]", + "tag-editcheck-newcontent-description": "编辑检查发现页面中添加了新的内容", + "tag-editcheck-newreference-description": "页面中添加了参考资料", + "tag-editcheck-references-description": "编辑检查认为可能需要参考资料", + "tag-editcheck-references-activated": "编辑检查(参考资料)已激活", + "tag-editcheck-references-activated-description": "编辑检查认为可能需要参考资料,并显示了UI", + "tag-editcheck-references-shown": "编辑检查(参考资料)已显示", + "tag-editcheck-references-shown-description": "编辑检查认为可能需要参考资料,并显示了UI", + "tag-editcheck-tone-description": "编辑检查检测到部分添加内容的语气可能存在问题", + "tag-editcheck-tone-shown": "编辑检查(语气)已显示", + "tag-editcheck-tone-shown-description": "编辑检查认为部分内容的语气可能需要调整,并显示了UI", + "tag-editcheck-paste-shown": "编辑检查(粘贴)已显示", + "tag-editcheck-paste-shown-description": "编辑检查要求编辑者澄清其粘贴的内容,然后移除或确认允许该内容", + "tag-visualeditor": "可视化编辑", "tag-visualeditor-description": "使用[[{{MediaWiki:visualeditor-descriptionpagelink}}|可视化编辑器]]进行的编辑", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|可视化编辑:需检查]]", + "tag-visualeditor-needcheck": "可视化编辑:需检查", "tag-visualeditor-needcheck-description": "系统检测到使用[[{{MediaWiki:visualeditor-descriptionpagelink}}|可视化编辑器]]做出的编辑的wikitext可能有意外的更改。", - "tag-visualeditor-wikitext": "2017版源代码编辑", - "tag-visualeditor-wikitext-description": "使用2017版wikitext编辑器做出的编辑", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|可视化编辑:已切换]]", + "tag-visualeditor-wikitext": "2017年版源代码编辑", + "tag-visualeditor-wikitext-description": "使用2017年版wikitext编辑器做出的编辑", + "tag-visualeditor-switched": "可视化编辑:已切换", "tag-visualeditor-switched-description": "用户开始编辑时使用可视化编辑器,之后更换为wikitext编辑器。", "visualeditor-feedback-link": "Project:可视化编辑器/反馈", "visualeditor-feedback-tool": "留下有关此软件的反馈", diff --git a/i18n/ve-wmf/zh-hant.json b/i18n/ve-wmf/zh-hant.json index 574ecd3aa2..3eae7e48f4 100644 --- a/i18n/ve-wmf/zh-hant.json +++ b/i18n/ve-wmf/zh-hant.json @@ -2,7 +2,6 @@ "@metadata": { "authors": [ "A2093064", - "Amire80", "Anakmalaysia", "Binkley", "Ch.Andrew", @@ -25,21 +24,29 @@ "Waihorace", "Xiplus", "捍粵者", - "아라" + "아라", + "LowensteinYang" ] }, - "tag-editcheck-newcontent-description": "EditCheck 發現頁面裡有新添加的內容", - "tag-editcheck-newreference-description": "頁面中添加了參考來源", - "tag-editcheck-references-description": "EditCheck 認為可能需要參考來源", - "tag-editcheck-references-activated": "[[{{MediaWiki:editcheck-falsepositives-link}}|編輯檢查(參考資料)已啟用]]", - "tag-editcheck-references-activated-description": "編輯檢查認為可能需要參考資料,並顯示了UI", - "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|視覺化編輯]]", + "tag-editcheck-newcontent-description": "編輯檢查認為頁面裡有新加入的內容", + "tag-editcheck-newreference-description": "頁面中加入了一個參考來源", + "tag-editcheck-references-description": "編輯檢查認為可能需要某個參考來源", + "tag-editcheck-references-activated": "編輯檢查(參考資料)已啟用", + "tag-editcheck-references-activated-description": "編輯檢查認為可能需要某個參考資料,並顯示了UI", + "tag-editcheck-references-shown": "編輯檢查(參考資料)已顯示", + "tag-editcheck-references-shown-description": "編輯檢查認為可能需要某個參考資料,並顯示了UI", + "tag-editcheck-tone-description": "EditCheck 偵測到部份新增內容的語氣可能有問題。", + "tag-editcheck-tone-shown": "編輯檢查(語調)已顯示", + "tag-editcheck-tone-shown-description": "編輯檢查認為編輯內容的語調可能需要調整,並顯示了UI", + "tag-editcheck-paste-shown": "編輯檢查(貼上)已顯示", + "tag-editcheck-paste-shown-description": "編輯檢查要求編輯者澄清所貼上的內容,其接下來不是被移除、就是被確認為允許的內容。", + "tag-visualeditor": "視覺化編輯", "tag-visualeditor-description": "使用[[{{MediaWiki:visualeditor-descriptionpagelink}}|視覺化編輯器]]完成的編輯", - "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|視覺化編輯器:需要檢查]]", + "tag-visualeditor-needcheck": "視覺化編輯器:需要檢查", "tag-visualeditor-needcheck-description": "使用[[{{MediaWiki:visualeditor-descriptionpagelink}}|視覺化編輯器]]完成的編輯。系統偵測到 WikiText 可能發生預期外的變更。", "tag-visualeditor-wikitext": "2017 原始碼編輯", "tag-visualeditor-wikitext-description": "用 2017 wikitext 編輯器做的編輯", - "tag-visualeditor-switched": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|視覺化編輯器:已切換]]", + "tag-visualeditor-switched": "視覺化編輯器:已切換", "tag-visualeditor-switched-description": "使用者使用視覺化編輯器後更改回 Wikitext 編輯器。", "visualeditor-feedback-link": "Project:VisualEditor/回饋", "visualeditor-feedback-tool": "回饋有關本軟體的意見", diff --git a/images/betafeatures-icon-collab-ltr.svg b/images/betafeatures-icon-collab-ltr.svg index f36e947d60..867bf6cc73 100644 --- a/images/betafeatures-icon-collab-ltr.svg +++ b/images/betafeatures-icon-collab-ltr.svg @@ -1,43 +1,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/images/betafeatures-icon-collab-rtl.svg b/images/betafeatures-icon-collab-rtl.svg index 734a1c6723..e021233984 100644 --- a/images/betafeatures-icon-collab-rtl.svg +++ b/images/betafeatures-icon-collab-rtl.svg @@ -1,42 +1,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/includes/ApiParsoidTrait.php b/includes/ApiParsoidTrait.php index 3c6678506b..1225d6ecec 100644 --- a/includes/ApiParsoidTrait.php +++ b/includes/ApiParsoidTrait.php @@ -10,11 +10,9 @@ namespace MediaWiki\Extension\VisualEditor; -use Liuggio\StatsdClient\Factory\StatsdDataFactoryInterface; use MediaWiki\Api\ApiUsageException; use MediaWiki\Language\Language; use MediaWiki\MediaWikiServices; -use MediaWiki\Message\Message; use MediaWiki\Request\WebRequest; use MediaWiki\Rest\HttpException; use MediaWiki\Rest\LocalizedHttpException; @@ -23,13 +21,14 @@ use Psr\Log\LoggerInterface; use Psr\Log\NullLogger; use Throwable; -use Wikimedia\Stats\NullStatsdDataFactory; -use Wikimedia\Stats\PrefixingStatsdDataFactoryProxy; +use Wikimedia\Message\MessageSpecifier; +use Wikimedia\Stats\StatsFactory; trait ApiParsoidTrait { private ?LoggerInterface $logger = null; - private ?StatsdDataFactoryInterface $stats = null; + /** @var StatsFactory|null */ + private $stats = null; protected function getLogger(): LoggerInterface { return $this->logger ?: new NullLogger(); @@ -39,12 +38,12 @@ protected function setLogger( LoggerInterface $logger ): void { $this->logger = $logger; } - protected function getStats(): StatsdDataFactoryInterface { - return $this->stats ?: new NullStatsdDataFactory(); + protected function getStatsFactory(): StatsFactory { + return $this->stats ?: StatsFactory::newNull(); } - protected function setStats( StatsdDataFactoryInterface $stats ): void { - $this->stats = new PrefixingStatsdDataFactoryProxy( $stats, 'VE' ); + protected function setStatsFactory( StatsFactory $statsFactory ): void { + $this->stats = $statsFactory; } /** @@ -60,7 +59,7 @@ private function statsGetStartTime(): float { */ private function statsRecordTiming( string $key, float $startTime ): void { $duration = ( microtime( true ) - $startTime ) * 1000; - $this->getStats()->timing( $key, $duration ); + $this->getStatsFactory()->getTiming( $key )->observe( $duration ); } /** @@ -69,9 +68,7 @@ private function statsRecordTiming( string $key, float $startTime ): void { */ private function dieWithRestHttpException( HttpException $ex ): void { if ( $ex instanceof LocalizedHttpException ) { - $converter = new \MediaWiki\Message\Converter(); - $msg = $converter->convertMessageValue( $ex->getMessageValue() ); - $this->dieWithError( $msg, null, $ex->getErrorData() ); + $this->dieWithError( $ex->getMessageValue(), null, $ex->getErrorData() ); } else { $this->dieWithException( $ex, [ 'data' => $ex->getErrorData() ] ); } @@ -95,7 +92,7 @@ protected function requestRestbasePageHtml( RevisionRecord $revision ): array { } catch ( HttpException $ex ) { $this->dieWithRestHttpException( $ex ); } - $this->statsRecordTiming( 'ApiVisualEditor.ParsoidClient.getPageHtml', $startTime ); + $this->statsRecordTiming( 'ApiVisualEditor_ParsoidClient_getPageHtml_seconds', $startTime ); return $response; } @@ -112,7 +109,7 @@ protected function requestRestbasePageHtml( RevisionRecord $revision ): array { * @throws ApiUsageException */ protected function transformHTML( - Title $title, string $html, int $oldid = null, string $etag = null + Title $title, string $html, ?int $oldid = null, ?string $etag = null ): array { $lang = self::getPageLanguage( $title ); @@ -122,7 +119,7 @@ protected function transformHTML( } catch ( HttpException $ex ) { $this->dieWithRestHttpException( $ex ); } - $this->statsRecordTiming( 'ApiVisualEditor.ParsoidClient.transformHTML', $startTime ); + $this->statsRecordTiming( 'ApiVisualEditor_ParsoidClient_transformHTML_seconds', $startTime ); return $response; } @@ -140,7 +137,7 @@ protected function transformHTML( * @throws ApiUsageException */ protected function transformWikitext( - Title $title, string $wikitext, bool $bodyOnly, int $oldid = null, bool $stash = false + Title $title, string $wikitext, bool $bodyOnly, ?int $oldid = null, bool $stash = false ): array { $lang = self::getPageLanguage( $title ); @@ -157,7 +154,7 @@ protected function transformWikitext( } catch ( HttpException $ex ) { $this->dieWithRestHttpException( $ex ); } - $this->statsRecordTiming( 'ApiVisualEditor.ParsoidClient.transformWikitext', $startTime ); + $this->statsRecordTiming( 'ApiVisualEditor_ParsoidClient_transformWikitext_seconds', $startTime ); return $response; } @@ -186,19 +183,20 @@ abstract protected function getParsoidClient(): ParsoidClient; /** * @see ApiBase - * @param string|array|Message $msg See ApiErrorFormatter::addError() + * @param string|array|MessageSpecifier $msg See ApiErrorFormatter::addError() * @param string|null $code See ApiErrorFormatter::addError() * @param array|null $data See ApiErrorFormatter::addError() - * @param int|null $httpCode HTTP error code to use + * @param int $httpCode HTTP error code to use + * @throws ApiUsageException always * @return never - * @throws ApiUsageException */ - abstract public function dieWithError( $msg, $code = null, $data = null, $httpCode = null ); + abstract public function dieWithError( $msg, $code = null, $data = null, $httpCode = 0 ); /** * @see ApiBase * @param Throwable $exception See ApiErrorFormatter::getMessageFromException() * @param array $options See ApiErrorFormatter::getMessageFromException() + * @throws ApiUsageException always * @return never */ abstract public function dieWithException( Throwable $exception, array $options = [] ); diff --git a/includes/ApiVisualEditor.php b/includes/ApiVisualEditor.php index 44aad1cb14..d975c505eb 100644 --- a/includes/ApiVisualEditor.php +++ b/includes/ApiVisualEditor.php @@ -10,7 +10,6 @@ namespace MediaWiki\Extension\VisualEditor; -use Article; use MediaWiki\Api\ApiBase; use MediaWiki\Api\ApiBlockInfoTrait; use MediaWiki\Api\ApiMain; @@ -28,6 +27,7 @@ use MediaWiki\Language\RawMessage; use MediaWiki\Logger\LoggerFactory; use MediaWiki\MediaWikiServices; +use MediaWiki\Page\Article; use MediaWiki\Page\PageReference; use MediaWiki\Page\WikiPageFactory; use MediaWiki\Permissions\PermissionManager; @@ -45,7 +45,7 @@ use MessageLocalizer; use Wikimedia\Assert\Assert; use Wikimedia\ParamValidator\ParamValidator; -use Wikimedia\Stats\IBufferingStatsdDataFactory; +use Wikimedia\Stats\StatsFactory; class ApiVisualEditor extends ApiBase { use ApiBlockInfoTrait; @@ -72,7 +72,7 @@ public function __construct( UserOptionsLookup $userOptionsLookup, WatchlistManager $watchlistManager, ContentTransformer $contentTransformer, - IBufferingStatsdDataFactory $statsdDataFactory, + StatsFactory $statsFactory, WikiPageFactory $wikiPageFactory, IntroMessageBuilder $introMessageBuilder, PreloadedContentBuilder $preloadedContentBuilder, @@ -81,7 +81,7 @@ public function __construct( ) { parent::__construct( $main, $name ); $this->setLogger( LoggerFactory::getInstance( 'VisualEditor' ) ); - $this->setStats( $statsdDataFactory ); + $this->setStatsFactory( $statsFactory ); $this->revisionLookup = $revisionLookup; $this->tempUserCreator = $tempUserCreator; $this->userFactory = $userFactory; @@ -352,7 +352,7 @@ public function msg( $key, ...$params ) { $revision, $user, $params['editintro'], - null, + $params['paction'] === 'wikitext' ? 'veaction=editsource' : 'veaction=edit', false, $section ); @@ -435,20 +435,29 @@ public function msg( $key, ...$params ) { && $this->tempUserCreator->isAutoCreateAction( 'edit' ) && $permissionManager->userHasRight( $user, 'createaccount' ); + // phpcs:disable MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment + /** @phpcs-require-sorted-array */ $result = [ - 'result' => 'success', - 'notices' => $notices, - 'copyrightWarning' => $copyrightWarning, + // -------------------------------------------------------------------------------- + // This should match ArticleTarget#getWikitextDataPromiseForDoc and ArticleTarget#storeDocState + // -------------------------------------------------------------------------------- + 'basetimestamp' => $baseTimestamp, + 'blockinfo' => $blockinfo, // only used by MobileFrontend EditorGateway + 'canEdit' => $canEdit, 'checkboxesDef' => $checkboxesDef, 'checkboxesMessages' => $checkboxesMessages, + // 'content' => ..., // optional, see below + 'copyrightWarning' => $copyrightWarning, + // 'etag' => ..., // optional, see below + 'notices' => $notices, + 'oldid' => $oldid, + // 'preloaded' => ..., // optional, see below 'protectedClasses' => implode( ' ', $protectedClasses ), - 'basetimestamp' => $baseTimestamp, + 'result' => 'success', // probably unused? 'starttimestamp' => wfTimestampNow(), - 'oldid' => $oldid, - 'blockinfo' => $blockinfo, 'wouldautocreate' => $wouldautocreate, - 'canEdit' => $canEdit, ]; + // phpcs:enable if ( isset( $restbaseHeaders['etag'] ) ) { $result['etag'] = $restbaseHeaders['etag']; } @@ -498,27 +507,62 @@ public function msg( $key, ...$params ) { break; } + if ( + is_array( $result ) && + isset( $result['content'] ) && + is_string( $result['content'] ) + ) { + // Protect content from being corrupted by conversion to Unicode NFC. + // Without this, MediaWiki::Api::ApiResult::addValue can break html tags. + // See T382756 + $result['content'] = $this->makeSafeHtmlForNfc( $result['content'] ); + } + $this->getResult()->addValue( null, $this->getModuleName(), $result ); } + /** + * Protect html-like content from being corrupted by conversion to Unicode NFC. + * + * Encodes U+0338 COMBINING LONG SOLIDUS OVERLAY as an html numeric character reference. + * Otherwise, conversion to Unicode NFC can break html tags by converting + * '>' + U+0338 to U+226F (NOT GREATER THAN), and + * '<' + U+0338 to U+226E (NOT LESS THAN) + * + * Note we cannot just search for those two combinations, because sequences of combining + * characters can get reordered, e.g. '>' + U+0339 + U+0338 will become U+226F + U+0339. + * See https://unicode.org/reports/tr15/ + * + * @param string $html + * @return string + */ + public static function makeSafeHtmlForNfc( string $html ) { + $html = str_replace( "\u{0338}", '̸', $html ); + return $html; + } + /** * Check if the configured allowed namespaces include the specified namespace * + * @deprecated Since 1.45. Use {@link VisualEditorAvailabilityLookup::isAllowedNamespace} instead * @param Config $config * @param int $namespaceId Namespace ID * @return bool */ public static function isAllowedNamespace( Config $config, int $namespaceId ): bool { + wfDeprecated( __METHOD__, '1.45' ); return in_array( $namespaceId, self::getAvailableNamespaceIds( $config ), true ); } /** * Get a list of allowed namespace IDs * + * @deprecated Since 1.45. Use {@link VisualEditorAvailabilityLookup::getAvailableNamespaceIds} instead * @param Config $config * @return int[] */ public static function getAvailableNamespaceIds( Config $config ): array { + wfDeprecated( __METHOD__, '1.45' ); $namespaceInfo = MediaWikiServices::getInstance()->getNamespaceInfo(); $configuredNamespaces = array_replace( ExtensionRegistry::getInstance()->getAttribute( 'VisualEditorAvailableNamespaces' ), @@ -537,11 +581,13 @@ public static function getAvailableNamespaceIds( Config $config ): array { /** * Check if the configured allowed content models include the specified content model * + * @deprecated Since 1.45. Use {@link VisualEditorAvailabilityLookup::isAllowedContentType} instead * @param Config $config * @param string $contentModel Content model ID * @return bool */ public static function isAllowedContentType( Config $config, string $contentModel ): bool { + wfDeprecated( __METHOD__, '1.45' ); $availableContentModels = array_merge( ExtensionRegistry::getInstance()->getAttribute( 'VisualEditorAvailableContentModels' ), $config->get( 'VisualEditorAvailableContentModels' ) diff --git a/includes/ApiVisualEditorEdit.php b/includes/ApiVisualEditorEdit.php index 8cdc2d46cf..ef094396d1 100644 --- a/includes/ApiVisualEditorEdit.php +++ b/includes/ApiVisualEditorEdit.php @@ -26,15 +26,15 @@ use MediaWiki\Registration\ExtensionRegistry; use MediaWiki\Request\DerivativeRequest; use MediaWiki\Revision\SlotRecord; +use MediaWiki\Skin\SkinFactory; use MediaWiki\SpecialPage\SpecialPageFactory; use MediaWiki\Storage\PageEditStash; use MediaWiki\Title\Title; use MediaWiki\User\UserIdentity; -use SkinFactory; use Wikimedia\ObjectCache\BagOStuff; use Wikimedia\ParamValidator\ParamValidator; use Wikimedia\Rdbms\IDBAccessObject; -use Wikimedia\Stats\IBufferingStatsdDataFactory; +use Wikimedia\Stats\StatsFactory; class ApiVisualEditorEdit extends ApiBase { use ApiParsoidTrait; @@ -42,33 +42,23 @@ class ApiVisualEditorEdit extends ApiBase { private const MAX_CACHE_RECENT = 2; private const MAX_CACHE_TTL = 900; - private VisualEditorHookRunner $hookRunner; - private PageEditStash $pageEditStash; - private SkinFactory $skinFactory; - private WikiPageFactory $wikiPageFactory; - private SpecialPageFactory $specialPageFactory; - private VisualEditorParsoidClientFactory $parsoidClientFactory; + private readonly VisualEditorHookRunner $hookRunner; public function __construct( ApiMain $main, string $name, HookContainer $hookContainer, - IBufferingStatsdDataFactory $statsdDataFactory, - PageEditStash $pageEditStash, - SkinFactory $skinFactory, - WikiPageFactory $wikiPageFactory, - SpecialPageFactory $specialPageFactory, - VisualEditorParsoidClientFactory $parsoidClientFactory + StatsFactory $statsFactory, + private readonly PageEditStash $pageEditStash, + private readonly SkinFactory $skinFactory, + private readonly WikiPageFactory $wikiPageFactory, + private readonly SpecialPageFactory $specialPageFactory, + private readonly VisualEditorParsoidClientFactory $parsoidClientFactory ) { parent::__construct( $main, $name ); $this->setLogger( LoggerFactory::getInstance( 'VisualEditor' ) ); - $this->setStats( $statsdDataFactory ); + $this->setStatsFactory( $statsFactory ); $this->hookRunner = new VisualEditorHookRunner( $hookContainer ); - $this->pageEditStash = $pageEditStash; - $this->skinFactory = $skinFactory; - $this->wikiPageFactory = $wikiPageFactory; - $this->specialPageFactory = $specialPageFactory; - $this->parsoidClientFactory = $parsoidClientFactory; } /** @@ -277,7 +267,9 @@ protected function storeInSerializationCache( Title $title, $wikitext ) { } $status = $ok ? 'ok' : 'failed'; - $this->getStats()->increment( "editstash.ve_serialization_cache.set_" . $status ); + $this->getStatsFactory()->getCounter( 'VE_editstash_serialization_cache_set_total' ) + ->setLabel( 'status', $status ) + ->increment(); // Also parse and prepare the edit in case it might be saved later $pageUpdater = $this->wikiPageFactory->newFromTitle( $title )->newPageUpdater( $this->getUser() ); @@ -288,7 +280,9 @@ protected function storeInSerializationCache( Title $title, $wikitext ) { $logger = LoggerFactory::getInstance( 'StashEdit' ); $logger->debug( "Cached parser output for VE content key '$key'." ); } - $this->getStats()->increment( "editstash.ve_cache_stores.$status" ); + $this->getStatsFactory()->getCounter( 'VE_editstash_cache_store_total' ) + ->setLabel( 'status', $status ) + ->increment(); return $hash; } @@ -318,7 +312,9 @@ protected function trySerializationCache( $hash ) { $value = $cache->get( $key ); $status = ( $value !== false ) ? 'hit' : 'miss'; - $this->getStats()->increment( "editstash.ve_serialization_cache.get_$status" ); + $this->getStatsFactory()->getCounter( 'VE_editstash_serialization_cache_get_total' ) + ->setLabel( 'status', $status ) + ->increment(); return $value; } @@ -509,9 +505,13 @@ public function execute() { if ( isset( $saveresult['edit']['newtimestamp'] ) ) { $ts = $saveresult['edit']['newtimestamp']; + $date = $lang->userDate( $ts, $user ); + $time = $lang->userTime( $ts, $user ); + $result['lastModified'] = [ - 'date' => $lang->userDate( $ts, $user ), - 'time' => $lang->userTime( $ts, $user ) + 'date' => $date, + 'time' => $time, + 'message' => $this->msg( 'lastmodifiedat', $date, $time )->parse(), ]; } diff --git a/includes/BetaPreferenceHooks.php b/includes/BetaPreferenceHooks.php index bd40dbefb9..38c20b1ed6 100644 --- a/includes/BetaPreferenceHooks.php +++ b/includes/BetaPreferenceHooks.php @@ -14,14 +14,12 @@ */ class BetaPreferenceHooks implements GetBetaFeaturePreferencesHook { - private Config $coreConfig; - private Config $config; + private readonly Config $config; public function __construct( - Config $coreConfig, + private readonly Config $coreConfig, ConfigFactory $configFactory ) { - $this->coreConfig = $coreConfig; $this->config = $configFactory->makeConfig( 'visualeditor' ); } diff --git a/includes/DirectParsoidClient.php b/includes/DirectParsoidClient.php index 71e364177d..6bd1218031 100644 --- a/includes/DirectParsoidClient.php +++ b/includes/DirectParsoidClient.php @@ -48,7 +48,7 @@ public function __construct( private function getHtmlOutputRendererHelper( PageIdentity $page, ?RevisionRecord $revision = null, - Bcp47Code $pageLanguage = null, + ?Bcp47Code $pageLanguage = null, bool $stash = false, string $flavor = self::FLAVOR_DEFAULT ): HtmlOutputRendererHelper { @@ -83,9 +83,9 @@ private function getHtmlOutputRendererHelper( private function getHtmlInputTransformHelper( PageIdentity $page, string $html, - int $oldid = null, - string $etag = null, - Bcp47Code $pageLanguage = null + ?int $oldid = null, + ?string $etag = null, + ?Bcp47Code $pageLanguage = null ): HtmlInputTransformHelper { // Fake REST body $body = [ diff --git a/includes/Hooks.php b/includes/Hooks.php index 955d42711d..5f7ee1682d 100644 --- a/includes/Hooks.php +++ b/includes/Hooks.php @@ -10,7 +10,6 @@ namespace MediaWiki\Extension\VisualEditor; -use Article; use MediaWiki\Actions\ActionEntryPoint; use MediaWiki\Auth\Hook\UserLoggedInHook; use MediaWiki\ChangeTags\Hook\ChangeTagsListActiveHook; @@ -23,6 +22,7 @@ use MediaWiki\Diff\Hook\TextSlotDiffRendererTablePrefixHook; use MediaWiki\EditPage\EditPage; use MediaWiki\Extension\VisualEditor\EditCheck\ApiEditCheckReferenceUrl; +use MediaWiki\Extension\VisualEditor\Services\VisualEditorAvailabilityLookup; use MediaWiki\Hook\BeforeInitializeHook; use MediaWiki\Hook\CustomEditorHook; use MediaWiki\Hook\EditPage__showEditForm_fieldsHook; @@ -38,13 +38,17 @@ use MediaWiki\Output\Hook\MakeGlobalVariablesScriptHook; use MediaWiki\Output\Hook\OutputPageBodyAttributesHook; use MediaWiki\Output\OutputPage; +use MediaWiki\Page\Article; use MediaWiki\Preferences\Hook\GetPreferencesHook; use MediaWiki\Preferences\Hook\PreferencesFormPreSaveHook; +use MediaWiki\RecentChanges\RecentChange; use MediaWiki\Registration\ExtensionRegistry; use MediaWiki\Request\WebRequest; use MediaWiki\ResourceLoader\Hook\ResourceLoaderGetConfigVarsHook; use MediaWiki\ResourceLoader\Hook\ResourceLoaderRegisterModulesHook; use MediaWiki\ResourceLoader\ResourceLoader; +use MediaWiki\Skin\Skin; +use MediaWiki\Skin\SkinTemplate; use MediaWiki\SpecialPage\Hook\RedirectSpecialArticleRedirectParamsHook; use MediaWiki\SpecialPage\SpecialPage; use MediaWiki\Title\Title; @@ -52,14 +56,8 @@ use MediaWiki\User\UserIdentity; use OOUI\ButtonGroupWidget; use OOUI\ButtonWidget; -use RecentChange; -use Skin; -use SkinTemplate; use TextSlotDiffRenderer; -/** - * @phpcs:disable MediaWiki.NamingConventions.LowerCamelFunctionsName.FunctionName - */ class Hooks implements TextSlotDiffRendererTablePrefixHook, BeforeInitializeHook, @@ -93,7 +91,6 @@ class Hooks implements // Only for WTE. This parameter is not supported right now, and NWE has a very different design // for previews, so we might not want to support this at all. 'preview', - 'veswitched' ]; private const TAGS = [ @@ -101,18 +98,28 @@ class Hooks implements 'visualeditor-wikitext', // Edit check 'editcheck-references', - 'editcheck-references-activated', + 'editcheck-references-shown', 'editcheck-newcontent', 'editcheck-newreference', + 'editcheck-tone', + 'editcheck-tone-shown', + 'editcheck-paste-shown', + // No longer in active use: + 'editcheck-references-activated', 'editcheck-reference-decline-common-knowledge', 'editcheck-reference-decline-irrelevant', 'editcheck-reference-decline-uncertain', 'editcheck-reference-decline-other', - // No longer in active use: 'visualeditor-needcheck', 'visualeditor-switched' ]; + public function __construct( + private readonly ExtensionRegistry $extensionRegistry, + private readonly VisualEditorAvailabilityLookup $visualEditorAvailabilityLookup, + ) { + } + /** * Initialise the 'VisualEditorAvailableNamespaces' setting, and add content * namespaces to it. This will run after LocalSettings.php is processed. @@ -144,7 +151,7 @@ public function onBeforePageDisplay( $output, $skin ): void { return; } if ( !( - ExtensionRegistry::getInstance()->isLoaded( 'MobileFrontend' ) && + $this->extensionRegistry->isLoaded( 'MobileFrontend' ) && $services->getService( 'MobileFrontend.Context' ) ->shouldDisplayMobileView() ) ) { @@ -231,13 +238,10 @@ public function onTextSlotDiffRendererTablePrefix( IContextSource $context, array &$parts ) { - $services = MediaWikiServices::getInstance(); - $veConfig = $services->getConfigFactory() - ->makeConfig( 'visualeditor' ); $output = $context->getOutput(); // Return early if not viewing a diff of an allowed type. - if ( !ApiVisualEditor::isAllowedContentType( $veConfig, $textSlotDiffRenderer->getContentModel() ) + if ( !$this->visualEditorAvailabilityLookup->isAllowedContentType( $textSlotDiffRenderer->getContentModel() ) || $output->getActionName() !== 'view' ) { return; @@ -273,7 +277,7 @@ public function onTextSlotDiffRendererTablePrefix( * @param WebRequest $req * @return bool */ - private static function isSupportedEditPage( Title $title, User $user, WebRequest $req ): bool { + private function isSupportedEditPage( Title $title, User $user, WebRequest $req ): bool { if ( $req->getVal( 'action' ) !== 'edit' || !MediaWikiServices::getInstance()->getPermissionManager()->quickUserCan( 'edit', $user, $title ) @@ -289,7 +293,7 @@ private static function isSupportedEditPage( Title $title, User $user, WebReques switch ( self::getEditPageEditor( $user, $req ) ) { case 'visualeditor': - return self::isVisualAvailable( $title, $req, $user ) || + return $this->visualEditorAvailabilityLookup->isAvailable( $title, $req, $user ) || self::isWikitextAvailable( $title, $user ); case 'wikitext': default: @@ -297,46 +301,6 @@ private static function isSupportedEditPage( Title $title, User $user, WebReques } } - /** - * @param UserIdentity $user - * @return bool - */ - private static function enabledForUser( UserIdentity $user ): bool { - $services = MediaWikiServices::getInstance(); - $veConfig = $services->getConfigFactory()->makeConfig( 'visualeditor' ); - $userOptionsLookup = $services->getUserOptionsLookup(); - $isBeta = $veConfig->get( 'VisualEditorEnableBetaFeature' ); - - return ( $isBeta ? - $userOptionsLookup->getOption( $user, 'visualeditor-enable' ) : - !$userOptionsLookup->getOption( $user, 'visualeditor-betatempdisable' ) ) && - !$userOptionsLookup->getOption( $user, 'visualeditor-autodisable' ); - } - - /** - * @param Title $title - * @param WebRequest $req - * @param UserIdentity $user - * @return bool - */ - private static function isVisualAvailable( Title $title, WebRequest $req, UserIdentity $user ): bool { - $veConfig = MediaWikiServices::getInstance()->getConfigFactory() - ->makeConfig( 'visualeditor' ); - - return ( - // If forced by the URL parameter, skip the namespace check (T221892) and preference check - ( $req->getVal( 'veaction' ) === 'edit' || ( - // Only in enabled namespaces - ApiVisualEditor::isAllowedNamespace( $veConfig, $title->getNamespace() ) && - - // Enabled per user preferences - self::enabledForUser( $user ) - ) ) && - // Only for pages with a supported content model - ApiVisualEditor::isAllowedContentType( $veConfig, $title->getContentModel() ) - ); - } - /** * @param Title $title * @param UserIdentity $user @@ -380,7 +344,7 @@ public function onCustomEditor( $article, $user ) { $urlUtils = $services->getUrlUtils(); $veConfig = $services->getConfigFactory()->makeConfig( 'visualeditor' ); - if ( ExtensionRegistry::getInstance()->isLoaded( 'MobileFrontend' ) ) { + if ( $this->extensionRegistry->isLoaded( 'MobileFrontend' ) ) { // If mobilefrontend is involved it can make its own decisions about this $mobFrontContext = MediaWikiServices::getInstance()->getService( 'MobileFrontend.Context' ); if ( $mobFrontContext->shouldDisplayMobileView() ) { @@ -388,7 +352,7 @@ public function onCustomEditor( $article, $user ) { } } - if ( !self::enabledForUser( $user ) ) { + if ( !$this->visualEditorAvailabilityLookup->isEnabledForUser( $user ) ) { return true; } @@ -402,7 +366,7 @@ public function onCustomEditor( $article, $user ) { return true; } - if ( self::isSupportedEditPage( $title, $user, $req ) ) { + if ( $this->isSupportedEditPage( $title, $user, $req ) ) { $params = $req->getValues(); $params['venoscript'] = '1'; $url = wfScript() . '?' . wfArrayToCgi( $params ); @@ -410,6 +374,7 @@ public function onCustomEditor( $article, $user ) { $out = $article->getContext()->getOutput(); $titleMsg = $title->exists() ? 'editing' : 'creating'; $out->setPageTitleMsg( wfMessage( $titleMsg, $title->getPrefixedText() ) ); + // @phan-suppress-next-line PhanTypeMismatchArgumentNullable Only null for invalid URL, shouldn't happen $out->showPendingTakeover( $url, 'visualeditor-toload', $urlUtils->expand( $url ) ); $out->setRevisionId( $req->getInt( 'oldid', $article->getRevIdFetched() ) ); @@ -435,6 +400,14 @@ private static function getEditPageEditor( User $user, WebRequest $req ): string if ( !$config->get( 'VisualEditorUseSingleEditTab' ) && !$isRedLink ) { return 'wikitext'; } + // Adding a new section is not supported in visual mode + if ( $req->getRawVal( 'section' ) === 'new' ) { + return 'wikitext'; + } + // Force switched from VE + if ( $req->getVal( 'veswitched' ) !== null ) { + return 'wikitext'; + } return self::getPreferredEditor( $user, $req, !$isRedLink ); } @@ -450,11 +423,13 @@ public static function getPreferredEditor( // VisualEditor shouldn't even call this method when it's disabled, but it is a public API for // other extensions (e.g. DiscussionTools), and the editor preferences might have surprising // values if the user has tried VisualEditor in the past and then disabled it. (T257234) - if ( !self::enabledForUser( $user ) ) { + $services = MediaWikiServices::getInstance(); + /** @var VisualEditorAvailabilityLookup $visualEditorAvailabilityLookup */ + $visualEditorAvailabilityLookup = $services->get( VisualEditorAvailabilityLookup::SERVICE_NAME ); + if ( !$visualEditorAvailabilityLookup->isEnabledForUser( $user ) ) { return 'wikitext'; } - $services = MediaWikiServices::getInstance(); $userOptionsLookup = $services->getUserOptionsLookup(); switch ( $userOptionsLookup->getOption( $user, 'visualeditor-tabs' ) ) { @@ -517,7 +492,7 @@ public function onSkinTemplateNavigation__Universal( $skin, &$links ): void { self::onSkinTemplateNavigationSpecialPage( $skin, $links ); if ( - ExtensionRegistry::getInstance()->isLoaded( 'MobileFrontend' ) && + $this->extensionRegistry->isLoaded( 'MobileFrontend' ) && $services->getService( 'MobileFrontend.Context' )->shouldDisplayMobileView() ) { return; @@ -545,7 +520,7 @@ public function onSkinTemplateNavigation__Universal( $skin, &$links ): void { $config->get( 'VisualEditorUseSingleEditTab' ) && wfTimestampNow() < $config->get( 'VisualEditorSingleEditTabSwitchTimeEnd' ) && $user->isNamed() && - self::enabledForUser( $user ) && + $this->visualEditorAvailabilityLookup->isEnabledForUser( $user ) && !$userOptionsLookup->getOption( $user, 'visualeditor-hidetabdialog' ) && $userOptionsLookup->getOption( $user, 'visualeditor-tabs' ) === 'remember-last' ) { @@ -569,7 +544,7 @@ public function onSkinTemplateNavigation__Universal( $skin, &$links ): void { // Exit if the user doesn't have VE enabled if ( - !self::enabledForUser( $user ) || + !$this->visualEditorAvailabilityLookup->isEnabledForUser( $user ) || // T253941: This option does not actually disable the editor, only leaves the tabs/links unchanged ( $config->get( 'VisualEditorDisableForAnons' ) && !$user->isRegistered() ) ) { @@ -579,7 +554,7 @@ public function onSkinTemplateNavigation__Universal( $skin, &$links ): void { $title = $skin->getRelevantTitle(); // Don't exit if this page isn't VE-enabled, since we should still // change "Edit" to "Edit source". - $isAvailable = self::isVisualAvailable( $title, $skin->getRequest(), $user ); + $isAvailable = $this->visualEditorAvailabilityLookup->isAvailable( $title, $skin->getRequest(), $user ); $tabMessages = $config->get( 'VisualEditorTabMessages' ); // Rebuild the $links['views'] array and inject the VisualEditor tab before or after @@ -587,11 +562,19 @@ public function onSkinTemplateNavigation__Universal( $skin, &$links ): void { // us to splice into the middle of an associative array. $newViews = []; $wikiPageFactory = $services->getWikiPageFactory(); - $isRemote = !$wikiPageFactory->newFromTitle( $title )->isLocal(); + if ( $title->inNamespace( NS_SPECIAL ) ) { + // @see https://phabricator.wikimedia.org/T376487 + // The WikiPageFactory call would fatal if $title points to a special page, but sometimes, + // as unusual as it might be, a special page *can* call the relevant hooks to add an "edit" + // tab to itself. Luckily most special pages are smarter than that. + $isRemote = false; + } else { + $isRemote = !$wikiPageFactory->newFromTitle( $title )->isLocal(); + } $skinHasEditIcons = in_array( $skin->getSkinName(), - ExtensionRegistry::getInstance()->getAttribute( 'VisualEditorIconSkins' ) + $this->extensionRegistry->getAttribute( 'VisualEditorIconSkins' ) ); foreach ( $links['views'] as $action => $data ) { @@ -772,7 +755,7 @@ public function onEditPage__showEditForm_fields( $editPage, $output ) { * * @param RecentChange $rc The new RC entry. */ - public function onRecentChange_Save( $rc ) { + public function onRecentChange_save( $rc ) { $request = RequestContext::getMain()->getRequest(); if ( $request->getBool( 'veswitched' ) && $rc->getAttribute( 'rc_this_oldid' ) ) { $rc->addTags( 'visualeditor-switched' ); @@ -812,7 +795,7 @@ public function onSkinEditSectionLinks( $skin, $title, $section, } if ( - ExtensionRegistry::getInstance()->isLoaded( 'MobileFrontend' ) && + $this->extensionRegistry->isLoaded( 'MobileFrontend' ) && $services->getService( 'MobileFrontend.Context' )->shouldDisplayMobileView() ) { return; @@ -821,7 +804,7 @@ public function onSkinEditSectionLinks( $skin, $title, $section, $user = $skin->getUser(); // Exit if the user doesn't have VE enabled if ( - !self::enabledForUser( $user ) || + !$this->visualEditorAvailabilityLookup->isEnabledForUser( $user ) || // T253941: This option does not actually disable the editor, only leaves the tabs/links unchanged ( $config->get( 'VisualEditorDisableForAnons' ) && !$user->isRegistered() ) ) { @@ -869,11 +852,11 @@ public function onSkinEditSectionLinks( $skin, $title, $section, $skinHasEditIcons = in_array( $skin->getSkinName(), - ExtensionRegistry::getInstance()->getAttribute( 'VisualEditorIconSkins' ) + $this->extensionRegistry->getAttribute( 'VisualEditorIconSkins' ) ); // add VE edit section in VE available namespaces - if ( self::isVisualAvailable( $title, $skin->getRequest(), $user ) ) { + if ( $this->visualEditorAvailabilityLookup->isAvailable( $title, $skin->getRequest(), $user ) ) { // The following messages can be used here: // * editsection $veEditSection = $tabMessages['editsection']; @@ -980,7 +963,7 @@ public function onGetPreferences( $user, &$preferences ) { // Config option for Single Edit Tab if ( $veConfig->get( 'VisualEditorUseSingleEditTab' ) && - self::enabledForUser( $user ) + $this->visualEditorAvailabilityLookup->isEnabledForUser( $user ) ) { $preferences['visualeditor-tabs'] = [ 'type' => 'select', @@ -1020,6 +1003,7 @@ public function onGetPreferences( $user, &$preferences ) { $preferences['visualeditor-findAndReplace-regex'] = $api; $preferences['visualeditor-findAndReplace-matchCase'] = $api; $preferences['visualeditor-findAndReplace-word'] = $api; + $preferences['visualeditor-symbolList-recentlyUsed-specialCharacters'] = $api; } /** @@ -1100,11 +1084,13 @@ public function onResourceLoaderGetConfigVars( array &$vars, $skin, Config $conf $coreConfig = RequestContext::getMain()->getConfig(); $services = MediaWikiServices::getInstance(); $veConfig = $services->getConfigFactory()->makeConfig( 'visualeditor' ); - $extensionRegistry = ExtensionRegistry::getInstance(); - $availableNamespaces = ApiVisualEditor::getAvailableNamespaceIds( $veConfig ); + + $availableNamespaces = $this->visualEditorAvailabilityLookup->getAvailableNamespaceIds(); + sort( $availableNamespaces ); + $availableContentModels = array_filter( array_merge( - $extensionRegistry->getAttribute( 'VisualEditorAvailableContentModels' ), + $this->extensionRegistry->getAttribute( 'VisualEditorAvailableContentModels' ), $veConfig->get( 'VisualEditorAvailableContentModels' ) ) ); @@ -1130,16 +1116,19 @@ public function onResourceLoaderGetConfigVars( array &$vars, $skin, Config $conf // presence or absence of a trailing colon in the message makes no difference. $defaultSortPrefix = preg_replace( '/:$/', '', $defaultSortPrefix ); + $displayTitlePrefix = $services->getMagicWordFactory()->get( 'displaytitle' )->getSynonym( 0 ); + $displayTitlePrefix = preg_replace( '/:$/', '', $displayTitlePrefix ); + $vars['wgVisualEditorConfig'] = [ - 'usePageImages' => $extensionRegistry->isLoaded( 'PageImages' ), - 'usePageDescriptions' => $extensionRegistry->isLoaded( 'WikibaseClient' ), + 'usePageImages' => $this->extensionRegistry->isLoaded( 'PageImages' ), + 'usePageDescriptions' => $this->extensionRegistry->isLoaded( 'WikibaseClient' ), 'isBeta' => $veConfig->get( 'VisualEditorEnableBetaFeature' ), 'disableForAnons' => $veConfig->get( 'VisualEditorDisableForAnons' ), 'preloadModules' => $veConfig->get( 'VisualEditorPreloadModules' ), 'namespaces' => $availableNamespaces, 'contentModels' => $availableContentModels, 'pluginModules' => array_merge( - $extensionRegistry->getAttribute( 'VisualEditorPluginModules' ), + $this->extensionRegistry->getAttribute( 'VisualEditorPluginModules' ), // @todo deprecate the global setting $veConfig->get( 'VisualEditorPluginModules' ) ), @@ -1157,19 +1146,30 @@ public function onResourceLoaderGetConfigVars( array &$vars, $skin, Config $conf 'useChangeTagging' => $veConfig->get( 'VisualEditorUseChangeTagging' ), 'editCheckTagging' => $veConfig->get( 'VisualEditorEditCheckTagging' ), 'editCheck' => $veConfig->get( 'VisualEditorEditCheck' ), + 'editCheckExperimental' => (bool)$veConfig->get( 'VisualEditorEditCheckLoadExperimental' ), 'editCheckABTest' => $veConfig->get( 'VisualEditorEditCheckABTest' ), 'editCheckReliabilityAvailable' => ApiEditCheckReferenceUrl::isAvailable(), 'namespacesWithSubpages' => $namespacesWithSubpagesEnabled, 'specialBooksources' => urldecode( SpecialPage::getTitleFor( 'Booksources' )->getPrefixedURL() ), - 'rebaserUrl' => $coreConfig->get( 'VisualEditorRebaserURL' ), + 'rebaserUrl' => $veConfig->get( 'VisualEditorRebaserURL' ), 'feedbackApiUrl' => $veConfig->get( 'VisualEditorFeedbackAPIURL' ), 'feedbackTitle' => $veConfig->get( 'VisualEditorFeedbackTitle' ), 'sourceFeedbackTitle' => $veConfig->get( 'VisualEditorSourceFeedbackTitle' ), + 'mobileInsertMenu' => $veConfig->get( 'VisualEditorMobileInsertMenu' ), // TODO: Remove when all usages in .js files are removed 'transclusionDialogNewSidebar' => true, - 'cirrusSearchLookup' => $extensionRegistry->isLoaded( 'CirrusSearch' ), + 'cirrusSearchLookup' => $this->extensionRegistry->isLoaded( 'CirrusSearch' ), 'defaultSortPrefix' => $defaultSortPrefix, + 'displayTitlePrefix' => $displayTitlePrefix, ]; + + // This can be removed and the module added in TemplateData's extension.json + // after the feature flag has been removed. T377976. + if ( $this->extensionRegistry->isLoaded( 'TemplateData' ) + && $coreConfig->get( 'TemplateDataEnableDiscovery' ) + ) { + $vars['wgVisualEditorConfig']['pluginModules'][] = 'ext.templateData.templateDiscovery'; + } } /** diff --git a/includes/ServiceWiring.php b/includes/ServiceWiring.php index 5f8b21c6e8..843d3b339a 100644 --- a/includes/ServiceWiring.php +++ b/includes/ServiceWiring.php @@ -11,12 +11,34 @@ namespace MediaWiki\Extension\VisualEditor; +use MediaWiki\Config\ServiceOptions; +use MediaWiki\Extension\VisualEditor\Services\VisualEditorAvailabilityLookup; use MediaWiki\MediaWikiServices; +// PHP unit does not understand code coverage for this file +// as the @covers annotation cannot cover a specific file +// This is fully tested in ServiceWiringTest.php +// @codeCoverageIgnoreStart + return [ VisualEditorParsoidClientFactory::SERVICE_NAME => static function ( MediaWikiServices $services ): VisualEditorParsoidClientFactory { return new VisualEditorParsoidClientFactory( $services->getPageRestHelperFactory() ); }, + VisualEditorAvailabilityLookup::SERVICE_NAME => static function ( + MediaWikiServices $services + ) { + return new VisualEditorAvailabilityLookup( + new ServiceOptions( + VisualEditorAvailabilityLookup::CONSTRUCTOR_OPTIONS, + $services->getMainConfig() + ), + $services->getNamespaceInfo(), + $services->getExtensionRegistry(), + $services->getUserOptionsLookup() + ); + }, ]; + +// @codeCoverageIgnoreEnd diff --git a/includes/Services/VisualEditorAvailabilityLookup.php b/includes/Services/VisualEditorAvailabilityLookup.php new file mode 100644 index 0000000000..fd6c9c3422 --- /dev/null +++ b/includes/Services/VisualEditorAvailabilityLookup.php @@ -0,0 +1,124 @@ +isAllowedContentType( $title->getContentModel() ) ) { + return false; + } + + // If forced by the URL parameter, skip the namespace check (T221892) and preference check + if ( $request->getVal( 'veaction' ) === 'edit' ) { + return true; + } + + return $this->isAllowedNamespace( $title->getNamespace() ) && $this->isEnabledForUser( $userIdentity ); + } + + /** + * Returns whether VisualEditor is available to use in the given namespace + * + * @internal Only for use in VisualEditor. You should probably use {@link self::isAvailable} instead + */ + public function isAllowedNamespace( int $namespaceId ): bool { + return in_array( $namespaceId, $this->getAvailableNamespaceIds(), true ); + } + + /** + * Get a list of the namespace IDs where VisualEditor is available to use. + * + * @internal Only for use in VisualEditor. You should probably use {@link self::isAvailable} instead + * @return int[] The order of the namespace IDs is not stable, so sorting should be applied as necessary + */ + public function getAvailableNamespaceIds(): array { + $configuredNamespaces = array_replace( + $this->extensionRegistry->getAttribute( 'VisualEditorAvailableNamespaces' ), + $this->options->get( 'VisualEditorAvailableNamespaces' ) + ); + + // Get a list of namespace IDs where VisualEditor is enabled + $normalized = []; + foreach ( $configuredNamespaces as $namespaceName => $enabled ) { + $id = $this->namespaceInfo->getCanonicalIndex( strtolower( $namespaceName ) ) ?? $namespaceName; + $normalized[$id] = $enabled && $this->namespaceInfo->exists( $id ); + } + + return array_keys( array_filter( $normalized ) ); + } + + /** + * Check if the configured allowed content models include the specified content model + * + * @internal Only for use in VisualEditor. You should probably use {@link self::isAvailable} instead + * @param string $contentModel Content model ID + * @return bool + */ + public function isAllowedContentType( string $contentModel ): bool { + $availableContentModels = array_merge( + $this->extensionRegistry->getAttribute( 'VisualEditorAvailableContentModels' ), + $this->options->get( 'VisualEditorAvailableContentModels' ) + ); + + return (bool)( $availableContentModels[$contentModel] ?? false ); + } + + /** + * Returns whether the given UserIdentity has VisualEditor disabled/enabled via preferences + * + * @internal Only for use in VisualEditor. You should probably use {@link self::isAvailable} instead + */ + public function isEnabledForUser( UserIdentity $userIdentity ): bool { + // If the user opted out when it was in beta, then continue to opt them out + if ( $this->userOptionsLookup->getOption( $userIdentity, 'visualeditor-autodisable' ) ) { + return false; + } + + $isBeta = $this->options->get( 'VisualEditorEnableBetaFeature' ); + return $isBeta ? $this->userOptionsLookup->getOption( $userIdentity, 'visualeditor-enable' ) : + !$this->userOptionsLookup->getOption( $userIdentity, 'visualeditor-betatempdisable' ); + } +} diff --git a/includes/VisualEditorApiVisualEditorEditPostSaveHook.php b/includes/VisualEditorApiVisualEditorEditPostSaveHook.php index b08b213116..e162ff8f84 100644 --- a/includes/VisualEditorApiVisualEditorEditPostSaveHook.php +++ b/includes/VisualEditorApiVisualEditorEditPostSaveHook.php @@ -1,19 +1,16 @@ $extOptions ) { + if ( $extensionRegistry->isLoaded( $ext ) ) { + foreach ( $extOptions as $key => $values ) { + if ( !isset( $info[$key] ) ) { + $info[$key] = []; + } + // TODO: Support non-array properties + $info[$key] = array_merge( $info[$key], (array)$values ); + } + } + } + } + + $class = $info['class'] ?? FileModule::class; + return new $class( $info ); + } } diff --git a/includes/VisualEditorDesktopArticleTargetInitModule.php b/includes/VisualEditorDesktopArticleTargetInitModule.php index fc22fdd056..83796d84e3 100644 --- a/includes/VisualEditorDesktopArticleTargetInitModule.php +++ b/includes/VisualEditorDesktopArticleTargetInitModule.php @@ -37,7 +37,7 @@ public function getMessages() { foreach ( [ 'edit', 'create', 'edit-local', 'create-local' ] as $msgKey ) { // MediaWiki defaults $messages[] = "skin-view-$msgKey"; - foreach ( $services->getSkinFactory()->getSkinNames() as $skname => $unused ) { + foreach ( $services->getSkinFactory()->getInstalledSkins() as $skname => $unused ) { // Per-skin overrides // Messages: vector-view-edit, vector-view-create // Disable database lookups for site-level message overrides as they diff --git a/includes/VisualEditorFileModule.php b/includes/VisualEditorFileModule.php new file mode 100644 index 0000000000..7dcc39fc09 --- /dev/null +++ b/includes/VisualEditorFileModule.php @@ -0,0 +1,84 @@ +getLocalServerObjectCache(); + $cacheKey = $cache->makeKey( + 'visualeditor-modules-json', + $jsonPath, + filemtime( $jsonPath ) + ); + $veModulesJson = $cache->getWithSetCallback( + $cacheKey, + $cache::TTL_DAY, + static function () use ( $jsonPath ) { + return json_decode( file_get_contents( $jsonPath ), true ); + } + ); + + // Prepend scripts/styles from $options['veModules'] to $options['scripts']/$options['styles'] + $scripts = []; + $debugScripts = []; + $styles = []; + foreach ( $options['veModules'] as $veModuleName ) { + if ( !isset( $veModulesJson[$veModuleName] ) ) { + throw new ConfigException( 'veModule not found: ' . $veModuleName ); + } + $module = $veModulesJson[$veModuleName]; + if ( isset( $module['scripts'] ) ) { + foreach ( $module['scripts'] as $item ) { + $path = is_array( $item ) ? $item['file'] : $item; + $fullPath = 'lib/ve/' . $path; + if ( is_array( $item ) && !empty( $item['debug'] ) ) { + $debugScripts[] = $fullPath; + } else { + $scripts[] = $fullPath; + } + } + } + if ( isset( $module['styles'] ) ) { + foreach ( $module['styles'] as $item ) { + $path = is_array( $item ) ? $item['file'] : $item; + $styles[] = 'lib/ve/' . $path; + } + } + } + if ( isset( $options['scripts'] ) && is_array( $options['scripts'] ) ) { + $options['scripts'] = array_merge( $scripts, $options['scripts'] ); + } else { + $options['scripts'] = $scripts; + } + if ( isset( $options['debugScripts'] ) && is_array( $options['debugScripts'] ) ) { + $options['debugScripts'] = array_merge( $debugScripts, $options['debugScripts'] ); + } else { + $options['debugScripts'] = $debugScripts; + } + if ( isset( $options['styles'] ) && is_array( $options['styles'] ) ) { + $options['styles'] = array_merge( $styles, $options['styles'] ); + } else { + $options['styles'] = $styles; + } + + parent::__construct( $options, $localBasePath, $remoteBasePath ); + } +} diff --git a/includes/VisualEditorHookRunner.php b/includes/VisualEditorHookRunner.php index 2a5b547005..684e621696 100644 --- a/includes/VisualEditorHookRunner.php +++ b/includes/VisualEditorHookRunner.php @@ -14,8 +14,8 @@ use MediaWiki\HookContainer\HookContainer; use MediaWiki\Output\OutputPage; use MediaWiki\Page\ProperPageIdentity; +use MediaWiki\Skin\Skin; use MediaWiki\User\UserIdentity; -use Skin; class VisualEditorHookRunner implements VisualEditorApiVisualEditorEditPreSaveHook, @@ -23,10 +23,7 @@ class VisualEditorHookRunner implements VisualEditorBeforeEditorHook { - private HookContainer $hookContainer; - - public function __construct( HookContainer $hookContainer ) { - $this->hookContainer = $hookContainer; + public function __construct( private readonly HookContainer $hookContainer ) { } /** @inheritDoc */ diff --git a/includes/VisualEditorParsoidClientFactory.php b/includes/VisualEditorParsoidClientFactory.php index ae8f8f3dbe..3fedc04651 100644 --- a/includes/VisualEditorParsoidClientFactory.php +++ b/includes/VisualEditorParsoidClientFactory.php @@ -16,12 +16,9 @@ class VisualEditorParsoidClientFactory { */ public const SERVICE_NAME = 'VisualEditor.ParsoidClientFactory'; - private PageRestHelperFactory $pageRestHelperFactory; - public function __construct( - PageRestHelperFactory $pageRestHelperFactory + private readonly PageRestHelperFactory $pageRestHelperFactory, ) { - $this->pageRestHelperFactory = $pageRestHelperFactory; } /** diff --git a/jsdoc.json b/jsdoc.json index 5bdc5b114f..0298504d33 100644 --- a/jsdoc.json +++ b/jsdoc.json @@ -16,7 +16,7 @@ "node_modules/jsdoc-wmf-theme/plugins/default" ], "source": { - "include": [ "modules/ve-mw", "modules/ve-mw-collab" ], + "include": [ "modules/ve-mw", "modules/ve-mw-collab", "editcheck/modules" ], "exclude": [ "modules/ve-mw/tests" ] }, "templates": { @@ -34,7 +34,9 @@ "ve.dm.MW": true, "ve.init.mw.": true, "ve.ui.MW": true, - "mw.libs.ve.": true + "mw.libs.ve.": true, + "ve.ui.EditCheck": true, + "mw.editcheck.": true }, "linkMap": { "VisualEditorOverlay": "https://doc.wikimedia.org/MobileFrontend/master/js/js/VisualEditorOverlay.html" diff --git a/lib/foreign-resources.cdx.json b/lib/foreign-resources.cdx.json new file mode 100644 index 0000000000..099b36af23 --- /dev/null +++ b/lib/foreign-resources.cdx.json @@ -0,0 +1,288 @@ +{ + "$schema": "http://cyclonedx.org/schema/bom-1.6.schema.json", + "bomFormat": "CycloneDX", + "specVersion": "1.6", + "serialNumber": "urn:uuid:bda6e0a4-167c-4d6a-afcc-da695c943a8b", + "version": 1, + "components": [ + { + "type": "library", + "name": "Color Picker", + "version": "1.3.5", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "authors": [ + { + "name": "Taufik Nurrohman and other contributors" + } + ], + "externalReferences": [ + { + "url": "https://tovic.github.io/color-picker", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "Diff Match and Patch", + "version": "—", + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ], + "authors": [ + { + "name": "Google" + }, + { + "name": "Inc." + } + ], + "externalReferences": [ + { + "url": "https://code.google.com/p/google-diff-match-patch/", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "DOMPurify", + "version": "2.4.4", + "licenses": [ + { + "expression": "MPL-2.0 OR Apache-2.0" + } + ], + "authors": [ + { + "name": "Mario Heiderich and other contributors" + } + ], + "externalReferences": [ + { + "url": "https://github.com/cure53/DOMPurify", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "jsdifflib", + "version": 1, + "licenses": [ + { + "license": { + "id": "BSD-3-Clause" + } + } + ], + "authors": [ + { + "name": "Snowtide Informatics Systems" + }, + { + "name": "Inc." + } + ], + "externalReferences": [ + { + "url": "http://snowtide.com/jsdifflib", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "PapaParse", + "version": "5.3.2", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "authors": [ + { + "name": "Matthew Holt and other contributors" + } + ], + "externalReferences": [ + { + "url": "http://papaparse.com", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "RangeFix", + "version": "0.2.10", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "authors": [ + { + "name": "Ed Sanders and other contributors" + } + ], + "externalReferences": [ + { + "url": "https://github.com/edg2s/rangefix", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "socket.io-client", + "version": "4.4.0", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "authors": [ + { + "name": "Guillermo Rauch and other contributors" + } + ], + "externalReferences": [ + { + "url": "https://github.com/socketio/socket.io-client", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "spark-md5", + "version": "3.0.0", + "licenses": [ + { + "expression": "WTFPL OR MIT" + } + ], + "authors": [ + { + "name": "André Cruz" + } + ], + "externalReferences": [ + { + "url": "https://github.com/satazor/js-spark-md5", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "Tree Differ", + "version": "1.0.2", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "authors": [ + { + "name": "Thalia Chan" + } + ], + "externalReferences": [ + { + "url": "https://github.com/tchanders/treeDiffer.js", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "UnicodeJS", + "version": "15.0.0", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "authors": [ + { + "name": "Ed Sanders" + }, + { + "name": "David Chan and other contributors" + } + ], + "externalReferences": [ + { + "url": "https://gerrit.wikimedia.org/g/unicodejs", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "Universal Language Selector data", + "version": "—", + "licenses": [ + { + "expression": "MIT OR GPL-2.0+" + } + ], + "authors": [ + { + "name": "Wikimedia Language Engineering Team and other contributors" + } + ], + "externalReferences": [ + { + "url": "https://github.com/wikimedia/jquery.uls", + "type": "website" + } + ] + }, + { + "type": "library", + "name": "VisualEditor", + "version": "Development branch", + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ], + "authors": [ + { + "name": "VisualEditor Team and other contributors" + } + ], + "externalReferences": [ + { + "url": "https://www.mediawiki.org/wiki/VisualEditor", + "type": "website" + } + ] + } + ] +} \ No newline at end of file diff --git a/lib/foreign-resources.yaml b/lib/foreign-resources.yaml index 8ceb18cc23..c0294efa9f 100644 --- a/lib/foreign-resources.yaml +++ b/lib/foreign-resources.yaml @@ -4,7 +4,6 @@ # - jquery.i18n # - oojs # - oojs-ui -# - unicodejs Color Picker: license: MIT @@ -69,6 +68,13 @@ Tree Differ: version: 1.0.2 type: doc-only +UnicodeJS: + license: MIT + homepage: https://gerrit.wikimedia.org/g/unicodejs + authors: Ed Sanders, David Chan and other contributors + version: 15.0.0 + type: doc-only + Universal Language Selector data: license: MIT OR GPL-2.0+ homepage: https://github.com/wikimedia/jquery.uls diff --git a/lib/ve b/lib/ve index c98f3a542b..b70ee4a11d 160000 --- a/lib/ve +++ b/lib/ve @@ -1 +1 @@ -Subproject commit c98f3a542b016c447471d7cb73bee7b2c395b103 +Subproject commit b70ee4a11dfb2a5db4befc350470c43170cf42fa diff --git a/modules/.eslintrc.json b/modules/.eslintrc.json index c5256085d3..2931d677e9 100644 --- a/modules/.eslintrc.json +++ b/modules/.eslintrc.json @@ -7,6 +7,7 @@ "./eslint-shared.json" ], "rules": { - "no-jquery/no-append-html": "warn" + "no-jquery/no-append-html": "warn", + "no-jquery/no-done-fail": "warn" } } diff --git a/modules/eslint-shared.json b/modules/eslint-shared.json index fc637a62f4..ad4a596429 100644 --- a/modules/eslint-shared.json +++ b/modules/eslint-shared.json @@ -1,4 +1,5 @@ { + "plugins": [ "local" ], "globals": { "ve": "readonly", "VisualEditorSupportCheck": "readonly", @@ -7,6 +8,7 @@ "Papa": "readonly" }, "rules": { + "local/no-unsanitized-href": "error", "no-jquery/no-append-html": "error", "no-jquery/no-deferred": "error", "no-jquery/no-extend": "error", @@ -22,10 +24,5 @@ "security/detect-non-literal-regexp": "off", "max-len": "off", "mediawiki/valid-package-file-require": "warn" - }, - "settings": { - "polyfills": [ - "URL" - ] } } diff --git a/modules/ve-mw-collab/ve.init.mw.CollabTarget.init.js b/modules/ve-mw-collab/ve.init.mw.CollabTarget.init.js index 29459c348f..6099c3f87b 100644 --- a/modules/ve-mw-collab/ve.init.mw.CollabTarget.init.js +++ b/modules/ve-mw-collab/ve.init.mw.CollabTarget.init.js @@ -62,14 +62,14 @@ progressBar.toggle( true ); form.toggle( false ); - modulePromise.done( () => { + modulePromise.then( () => { target = ve.init.mw.targetFactory.create( 'collab', title, conf.rebaserUrl, { importTitle: importTitle } ); // If the target emits a 'close' event (via the toolbar back button on mobile) then go to the landing page. target.once( 'close', () => { showForm( true ); } ); - $( 'body' ).addClass( 've-activated ve-active' ); + $( 'html' ).addClass( 've-activated ve-active' ); $targetContainer.prepend( target.$element ); @@ -174,20 +174,19 @@ // Look for import metadata in document surfaceModel = target.getSurface().getModel(); - surfaceModel.getDocument().getMetaList().getItemsInGroup( 'misc' ).some( ( item ) => { - const importedDocument = item.getAttribute( 'importedDocument' ); - if ( importedDocument ) { - target.importTitle = mw.Title.newFromText( importedDocument.title ); - target.etag = importedDocument.etag; - target.baseTimeStamp = importedDocument.baseTimeStamp; - target.startTimeStamp = importedDocument.startTimeStamp; - target.revid = importedDocument.revid; - return true; - } - return false; - } ); + const importedDocumentItem = surfaceModel.getDocument().getMetaList().getItemsInGroup( 'misc' ).find( + ( item ) => item.getAttribute( 'importedDocument' ) + ); + if ( importedDocumentItem ) { + const importedDocument = importedDocumentItem.getAttribute( 'importedDocument' ); + target.importTitle = mw.Title.newFromText( importedDocument.title ); + target.etag = importedDocument.etag; + target.baseTimeStamp = importedDocument.baseTimeStamp; + target.startTimeStamp = importedDocument.startTimeStamp; + target.revid = importedDocument.revid; + } } - initPromise.fail( ( err ) => { + initPromise.then( null, ( err ) => { setTimeout( () => { throw new Error( err ); } ); @@ -198,12 +197,12 @@ } ); } ); + }, ( err ) => { + mw.log.error( err ); + showForm( true ); } ).always( () => { form.toggle( false ); progressBar.toggle( false ); - } ).fail( ( err ) => { - mw.log.error( err ); - showForm( true ); } ); } @@ -219,7 +218,7 @@ target.restorePage(); target.destroy(); - $( 'body' ).removeClass( 've-activated ve-active' ); + $( 'html' ).removeClass( 've-activated ve-active' ); } setTitle( mw.msg( 'collabpad' ) ); @@ -242,7 +241,7 @@ } function getRandomTitle() { - return Math.random().toString( 36 ).slice( 2 ); + return ve.init.platform.generateUniqueId(); } function onNameChange() { diff --git a/modules/ve-mw-collab/ve.init.mw.CollabTarget.js b/modules/ve-mw-collab/ve.init.mw.CollabTarget.js index b8d6d662b6..d4b49d7ed9 100644 --- a/modules/ve-mw-collab/ve.init.mw.CollabTarget.js +++ b/modules/ve-mw-collab/ve.init.mw.CollabTarget.js @@ -17,8 +17,7 @@ * @param {Object} [config] Configuration options * @param {mw.Title} [config.importTitle] Title to import */ -ve.init.mw.CollabTarget = function VeInitMwCollabTarget( title, rebaserUrl, config ) { - config = config || {}; +ve.init.mw.CollabTarget = function VeInitMwCollabTarget( title, rebaserUrl, config = {} ) { config.toolbarConfig = ve.extendObject( { shadow: true, actions: true, @@ -62,17 +61,17 @@ ve.init.mw.CollabTarget.static.toolbarGroups.splice( 4, 0, { name: 'commentAnnotation', include: [ 'commentAnnotation' ] } ); -// HACK: Disable references until supported (T194838) -ve.init.mw.CollabTarget.static.toolbarGroups = ve.init.mw.CollabTarget.static.toolbarGroups.filter( ( group ) => group.name !== 'reference' ); ve.init.mw.CollabTarget.static.toolbarGroups.push( { name: 'help', align: 'after', + excludeFromTargetWidget: true, include: [ 'help' ] }, { name: 'pageMenu', align: 'after', + excludeFromTargetWidget: true, type: 'list', icon: 'menu', indicator: null, @@ -84,11 +83,13 @@ ve.init.mw.CollabTarget.static.toolbarGroups.push( { name: 'authorList', align: 'after', + excludeFromTargetWidget: true, include: [ 'authorList' ] }, { name: 'export', align: 'after', + excludeFromTargetWidget: true, include: [ 'export' ] } ); diff --git a/modules/ve-mw-collab/ve.init.mw.CollabTarget.css b/modules/ve-mw-collab/ve.init.mw.CollabTarget.less similarity index 100% rename from modules/ve-mw-collab/ve.init.mw.CollabTarget.css rename to modules/ve-mw-collab/ve.init.mw.CollabTarget.less diff --git a/modules/ve-mw-collab/ve.init.mw.DesktopCollabTarget.js b/modules/ve-mw-collab/ve.init.mw.DesktopCollabTarget.js index 4ccfb846cb..f50ee5ccd4 100644 --- a/modules/ve-mw-collab/ve.init.mw.DesktopCollabTarget.js +++ b/modules/ve-mw-collab/ve.init.mw.DesktopCollabTarget.js @@ -43,12 +43,14 @@ ve.init.mw.DesktopCollabTarget.prototype.transformPage = function () { this.$originalContent.append( this.$element.siblings() ); let title; if ( ( title = this.getImportTitle() ) ) { + const $link = $( '' ).text( title.getMainText() ); + ve.setAttributeSafe( $link[ 0 ], 'href', title.getUrl() ); // ve.htmlMsg returns `Node[]` // eslint-disable-next-line no-jquery/no-html $( '#contentSub' ).html( ve.htmlMsg( 'collabpad-import-subtitle', - $( '' ).attr( 'href', title.getUrl() ).text( title.getMainText() ) + $link ) ); ve.targetLinksToNewWindow( $( '#contentSub' )[ 0 ] ); diff --git a/modules/ve-mw-collab/ve.init.mw.MobileCollabTarget.js b/modules/ve-mw-collab/ve.init.mw.MobileCollabTarget.js index 9d1add4739..b459231999 100644 --- a/modules/ve-mw-collab/ve.init.mw.MobileCollabTarget.js +++ b/modules/ve-mw-collab/ve.init.mw.MobileCollabTarget.js @@ -89,6 +89,8 @@ ve.init.mw.MobileCollabTarget.static.toolbarGroups = [ } ]; +ve.init.mw.MobileCollabTarget.static.enforceResizesContent = true; + /* Methods */ /** diff --git a/modules/ve-mw/ce/annotations/ve.ce.MWExternalLinkAnnotation.js b/modules/ve-mw/ce/annotations/ve.ce.MWExternalLinkAnnotation.js index 6225d973ba..33c716cc6d 100644 --- a/modules/ve-mw/ce/annotations/ve.ce.MWExternalLinkAnnotation.js +++ b/modules/ve-mw/ce/annotations/ve.ce.MWExternalLinkAnnotation.js @@ -22,7 +22,7 @@ ve.ce.MWExternalLinkAnnotation = function VeCeMWExternalLinkAnnotation( model ) // DOM changes const rel = model.getAttribute( 'rel' ) || ''; const relValues = rel.split( /\s+/ ); - if ( relValues.indexOf( 'mw:WikiLink/Interwiki' ) >= 0 ) { + if ( relValues.includes( 'mw:WikiLink/Interwiki' ) ) { this.$anchor.addClass( 'extiw' ); } else { this.$anchor.addClass( 'external' ); diff --git a/modules/ve-mw/ce/annotations/ve.ce.MWInternalLinkAnnotation.js b/modules/ve-mw/ce/annotations/ve.ce.MWInternalLinkAnnotation.js index 29c22b085f..175a267bc7 100644 --- a/modules/ve-mw/ce/annotations/ve.ce.MWInternalLinkAnnotation.js +++ b/modules/ve-mw/ce/annotations/ve.ce.MWInternalLinkAnnotation.js @@ -64,7 +64,9 @@ ve.ce.MWInternalLinkAnnotation.prototype.updateClasses = function () { ve.init.platform.linkCache.styleElement( model.getAttribute( 'lookupTitle' ), this.$anchor, - !!model.getFragment() + !!model.getFragment(), + // Skip the "missing link" cache and ensure all styles are applied + false ); } }; diff --git a/modules/ve-mw/ce/nodes/ve.ce.MWExtensionNode.js b/modules/ve-mw/ce/nodes/ve.ce.MWExtensionNode.js index ad6aba86cb..39203d1707 100644 --- a/modules/ve-mw/ce/nodes/ve.ce.MWExtensionNode.js +++ b/modules/ve-mw/ce/nodes/ve.ce.MWExtensionNode.js @@ -76,9 +76,11 @@ ve.ce.MWExtensionNode.prototype.generateContents = function ( config ) { const wikitext = mw.html.element( tagName, attrs, new mw.html.Raw( extsrc ) ); if ( this.constructor.static.rendersEmpty || extsrc.trim() !== '' ) { - const xhr = ve.init.target.parseWikitextFragment( wikitext, false, this.getModel().getDocument() ) - .done( this.onParseSuccess.bind( this, deferred ) ) - .fail( this.onParseError.bind( this, deferred ) ); + const xhr = ve.init.target.parseWikitextFragment( wikitext, false, this.getModel().getDocument() ); + xhr.then( + this.onParseSuccess.bind( this, deferred ), + this.onParseError.bind( this, deferred ) + ); return deferred.promise( { abort: xhr.abort } ); } else { deferred.resolve( $( '' ).text( '\u00a0' ).get() ); diff --git a/modules/ve-mw/ce/nodes/ve.ce.MWGalleryNode.js b/modules/ve-mw/ce/nodes/ve.ce.MWGalleryNode.js index af25f9e9c8..22d3f92794 100644 --- a/modules/ve-mw/ce/nodes/ve.ce.MWGalleryNode.js +++ b/modules/ve-mw/ce/nodes/ve.ce.MWGalleryNode.js @@ -67,6 +67,10 @@ ve.ce.MWGalleryNode.static.primaryCommandName = 'gallery'; * Handle model update events. */ ve.ce.MWGalleryNode.prototype.onUpdate = function () { + if ( !this.model ) { + // onUpdate is debounced, so check the node still exists + return; + } const mwAttrs = this.model.getAttribute( 'mw' ).attrs; const defaults = mw.config.get( 'wgVisualEditorConfig' ).galleryOptions; const mode = mwAttrs.mode || defaults.mode; diff --git a/modules/ve-mw/ce/nodes/ve.ce.MWImageNode.js b/modules/ve-mw/ce/nodes/ve.ce.MWImageNode.js index 1fb7cf5002..6df3cc25d5 100644 --- a/modules/ve-mw/ce/nodes/ve.ce.MWImageNode.js +++ b/modules/ve-mw/ce/nodes/ve.ce.MWImageNode.js @@ -124,9 +124,12 @@ ve.ce.MWImageNode.prototype.generateContents = function () { iiurlheight: height, iiurlparam: params, titles: this.getModel().getFilename() - } ) - .done( this.onParseSuccess.bind( this, deferred ) ) - .fail( this.onParseError.bind( this, deferred ) ); + } ); + + xhr.then( + this.onParseSuccess.bind( this, deferred ), + this.onParseError.bind( this, deferred ) + ); return deferred.promise( { abort: xhr.abort } ); }; diff --git a/modules/ve-mw/ce/nodes/ve.ce.MWSignatureNode.js b/modules/ve-mw/ce/nodes/ve.ce.MWSignatureNode.js index b421fab118..f09ea7b736 100644 --- a/modules/ve-mw/ce/nodes/ve.ce.MWSignatureNode.js +++ b/modules/ve-mw/ce/nodes/ve.ce.MWSignatureNode.js @@ -107,25 +107,14 @@ ve.ce.MWSignatureNode.prototype.onTeardown = function () { */ ve.ce.MWSignatureNode.prototype.generateContents = function () { const doc = this.getModel().getDocument(); - let abortable, aborted; - const abortedPromise = ve.createDeferred().reject( 'http', - { textStatus: 'abort', exception: 'abort' } ).promise(); - - function abort() { - aborted = true; - if ( abortable && abortable.abort ) { - abortable.abort(); - } - } + const api = ve.init.target.getContentApi( doc ); + const ajaxOptions = {}; + const abortable = api.makeAbortablePromise( ajaxOptions ); // Acquire a temporary user username before previewing, so that signatures // display the temp user instead of IP user. (T331397) return mw.user.acquireTempUserName() .then( () => { - if ( aborted ) { - return abortedPromise; - } - // We must have only one top-level node, this is the easiest way. const wikitext = '~~~~'; @@ -133,35 +122,29 @@ ve.ce.MWSignatureNode.prototype.generateContents = function () { // meta attributes (that may or may not be required). // We could try hacking up one (or even both) of these, but just calling the two parsers // in order seems slightly saner. - return ( abortable = ve.init.target.getContentApi( doc ).post( { + return api.post( { action: 'parse', text: wikitext, contentmodel: 'wikitext', prop: 'text', onlypst: true - } ) ); + }, ajaxOptions ); } ) .then( ( pstResponse ) => { - if ( aborted ) { - return abortedPromise; - } const wikitext = ve.getProp( pstResponse, 'parse', 'text' ); if ( !wikitext ) { return ve.createDeferred().reject(); } - return ( abortable = ve.init.target.parseWikitextFragment( wikitext, true, doc ) ); + return ve.init.target.parseWikitextFragment( wikitext, true, doc, ajaxOptions ); } ) .then( ( parseResponse ) => { - if ( aborted ) { - return abortedPromise; - } if ( ve.getProp( parseResponse, 'visualeditor', 'result' ) !== 'success' ) { return ve.createDeferred().reject(); } // Simplified case of template rendering, don't need to worry about filtering etc return $( parseResponse.visualeditor.content ).contents().toArray(); } ) - .promise( { abort: abort } ); + .promise( abortable ); }; /* Registration */ diff --git a/modules/ve-mw/ce/nodes/ve.ce.MWTransclusionNode.js b/modules/ve-mw/ce/nodes/ve.ce.MWTransclusionNode.js index 416261ee3f..6e9a11cc02 100644 --- a/modules/ve-mw/ce/nodes/ve.ce.MWTransclusionNode.js +++ b/modules/ve-mw/ce/nodes/ve.ce.MWTransclusionNode.js @@ -84,7 +84,7 @@ ve.ce.MWTransclusionNode.static.getDescriptionDom = function ( model ) { const title = mw.Title.newFromText( part.templatePage ); const link = document.createElement( 'a' ); link.textContent = title.getRelativeText( mw.config.get( 'wgNamespaceIds' ).template ); - link.setAttribute( 'href', title.getUrl() ); + ve.setAttributeSafe( link, 'href', title.getUrl() ); return link; } // Not actually a template, but e.g. a parser function @@ -116,14 +116,20 @@ ve.ce.MWTransclusionNode.static.filterRendering = function ( contentNodes ) { const whitespaceRegex = new RegExp( '^[' + ve.dm.Converter.static.whitespaceList + ']+$' ); - // Filter out auto-generated items, e.g. reference lists contentNodes = contentNodes.filter( ( node ) => { - const dataMw = node && - node.nodeType === Node.ELEMENT_NODE && - node.hasAttribute( 'data-mw' ) && - JSON.parse( node.getAttribute( 'data-mw' ) ); - - return !dataMw || !dataMw.autoGenerated; + if ( !node || node.nodeType !== Node.ELEMENT_NODE ) { + return true; + } + // Filter out i18n placeholders (T397491) + if ( node.getAttribute( 'typeof' ) === 'mw:I18n' ) { + return false; + } + // Filter out auto-generated items, e.g. reference lists + const dataMw = node.hasAttribute( 'data-mw' ) && JSON.parse( node.getAttribute( 'data-mw' ) ); + if ( dataMw && dataMw.autoGenerated ) { + return false; + } + return true; } ); contentNodes.forEach( ( node ) => { @@ -156,17 +162,11 @@ ve.ce.MWTransclusionNode.static.filterRendering = function ( contentNodes ) { /** @inheritDoc */ ve.ce.MWTransclusionNode.prototype.executeCommand = function () { const contextItems = this.focusableSurface.getSurface().getContext().items; - const contextClicked = contextItems.some( ( contextItem ) => { - if ( contextItem instanceof ve.ui.MWTransclusionContextItem ) { - // Utilize the context item when it's there instead of triggering the command manually. - // Required to make the context item show the "Loading…" message (see T297773). - contextItem.onEditButtonClick(); - return true; - } - return false; - } ); - - if ( contextClicked ) { + const transclusionContextItem = contextItems.find( ( contextItem ) => contextItem instanceof ve.ui.MWTransclusionContextItem ); + if ( transclusionContextItem ) { + // Utilize the context item when it's there instead of triggering the command manually. + // Required to make the context item show the "Loading…" message (see T297773). + transclusionContextItem.onEditButtonClick(); return; } @@ -183,9 +183,12 @@ ve.ce.MWTransclusionNode.prototype.generateContents = function ( config ) { ( config && config.wikitext ) || this.model.getWikitext(), true, this.getModel().getDocument() - ) - .done( this.onParseSuccess.bind( this, deferred ) ) - .fail( this.onParseError.bind( this, deferred ) ); + ); + + xhr.then( + this.onParseSuccess.bind( this, deferred ), + this.onParseError.bind( this, deferred ) + ); return deferred.promise( { abort: xhr.abort } ); }; diff --git a/modules/ve-mw/ce/ve.ce.MWWikitextClipboardHandler.js b/modules/ve-mw/ce/ve.ce.MWWikitextClipboardHandler.js new file mode 100644 index 0000000000..215ac4592b --- /dev/null +++ b/modules/ve-mw/ce/ve.ce.MWWikitextClipboardHandler.js @@ -0,0 +1,136 @@ +/*! + * VisualEditor ContentEditable MWWikitextClipboardHandler class. + * + * @copyright See AUTHORS.txt + */ + +/** + * @param {ve.ce.Surface} surface + */ +ve.ce.MWWikitextClipboardHandler = function VeCeMwWikitextClipboardHandler() { + // Parent constructor + ve.ce.MWWikitextClipboardHandler.super.apply( this, arguments ); + + this.plainInput = new OO.ui.MultilineTextInputWidget(); +}; + +/* Inheritance */ + +OO.inheritClass( ve.ce.MWWikitextClipboardHandler, ve.ce.ClipboardHandler ); + +/* Methods */ + +/** + * @inheritdoc + */ +ve.ce.MWWikitextClipboardHandler.prototype.onCopy = function ( e ) { + const clipboardData = e.originalEvent.clipboardData, + surface = this.getSurface(), + text = surface.getModel().getFragment().getText( true ).replace( /\n\n/g, '\n' ); + + if ( !text ) { + return; + } + + if ( clipboardData ) { + // Disable the default event so we can override the data + e.preventDefault(); + clipboardData.setData( 'text/plain', text ); + // We're not going to set HTML, but for browsers that support custom data, set a clipboard key + if ( ve.isClipboardDataFormatsSupported( e, true ) ) { + const slice = surface.getModel().getDocument().shallowCloneFromSelection( surface.getModel().getSelection() ); + this.clipboardIndex++; + const clipboardKey = this.clipboardId + '-' + this.clipboardIndex; + this.clipboard = { slice: slice, hash: null }; + // Clone the elements in the slice + slice.data.cloneElements( true ); + clipboardData.setData( this.constructor.static.clipboardKeyMimeType, clipboardKey ); + + // Explicitly store wikitext as text/x-wiki, so that wikitext-aware paste + // contexts can accept it without having to do any content- + // sniffing. + clipboardData.setData( 'text/x-wiki', text ); + } + } else { + const originalSelection = new ve.SelectionState( surface.nativeSelection ); + + // Save scroll position before changing focus to "offscreen" clipboard target + const scrollTop = surface.getSurface().$scrollContainer.scrollTop(); + + // Prevent surface observation due to native range changing + surface.surfaceObserver.disable(); + this.$element.empty().append( this.plainInput.$element ); + this.plainInput.setValue( text ).select(); + + // Restore scroll position after changing focus + surface.getSurface().$scrollContainer.scrollTop( scrollTop ); + + // setTimeout: postpone until after the default copy action + setTimeout( () => { + // Change focus back + surface.$attachedRootNode[ 0 ].focus(); + surface.showSelectionState( originalSelection ); + // Restore scroll position + surface.getSurface().$scrollContainer.scrollTop( scrollTop ); + surface.surfaceObserver.clear(); + surface.surfaceObserver.enable(); + // Detach input + this.plainInput.$element.detach(); + } ); + } +}; + +/** + * @inheritdoc + */ +ve.ce.MWWikitextClipboardHandler.prototype.afterPasteInsertExternalData = function ( targetFragment, pastedDocumentModel, contextRange ) { + const wasSpecial = this.isPasteSpecial(), + // TODO: This check returns true if the paste contains meaningful structure (tables, lists etc.) + // but no annotations (bold, links etc.). + wasPlain = wasSpecial || pastedDocumentModel.data.isPlainText( contextRange, true, undefined, true ); + + const plainPastedDocumentModel = pastedDocumentModel.shallowCloneFromRange( contextRange ); + plainPastedDocumentModel.data.sanitize( { plainText: true, keepEmptyContentBranches: true } ); + // We just turned this into plaintext, which probably + // affected the content-length. Luckily, because of + // the earlier clone, we know we just want the whole + // document, and because of the major change to + // plaintext, the difference between originalRange and + // balancedRange don't really apply. As such, clear + // out newDocRange. (Can't just make it undefined; + // need to exclude the internal list, and since we're + // from a paste we also have to exclude the + // opening/closing paragraph.) + const plainContextRange = new ve.Range( plainPastedDocumentModel.getDocumentRange().from + 1, plainPastedDocumentModel.getDocumentRange().to - 1 ); + this.prepareForPasteSpecial(); + + // isPlainText is true but we still need sanitize (e.g. remove lists) + const promise = ve.ce.MWWikitextClipboardHandler.super.prototype.afterPasteInsertExternalData.call( this, targetFragment, plainPastedDocumentModel, plainContextRange ); + if ( !wasPlain ) { + promise.then( () => { + // We need to wait for the selection change after paste as that triggers + // a contextChange event. Really we should wait for the afterPaste promise to resolve. + setTimeout( () => { + const surface = this.getSurface(), + context = surface.getSurface().getContext(); + // Ensure surface is deactivated on mobile so context can be shown (T336073) + if ( context.isMobile() ) { + surface.deactivate(); + } + context.addPersistentSource( { + embeddable: false, + name: 'wikitextPaste', + data: { + doc: pastedDocumentModel, + contextRange: contextRange, + fragment: targetFragment + } + } ); + surface.getModel().once( 'select', () => { + context.removePersistentSource( 'wikitextPaste' ); + } ); + } ); + } ); + } + return promise; +}; diff --git a/modules/ve-mw/ce/ve.ce.MWWikitextSurface.js b/modules/ve-mw/ce/ve.ce.MWWikitextSurface.js index f0cbfea6e1..fe58d7823f 100644 --- a/modules/ve-mw/ce/ve.ce.MWWikitextSurface.js +++ b/modules/ve-mw/ce/ve.ce.MWWikitextSurface.js @@ -1,12 +1,10 @@ /*! - * VisualEditor DataModel Surface class. + * VisualEditor ContentEditable MWWikitextSurface class. * * @copyright See AUTHORS.txt */ /** - * DataModel surface. - * * @class * @extends ve.ce.Surface * @@ -18,8 +16,6 @@ ve.ce.MWWikitextSurface = function VeCeMwWikitextSurface() { // Parent constructors ve.ce.MWWikitextSurface.super.apply( this, arguments ); - - this.pasteTargetInput = new OO.ui.MultilineTextInputWidget(); }; /* Inheritance */ @@ -29,113 +25,6 @@ OO.inheritClass( ve.ce.MWWikitextSurface, ve.ce.Surface ); /** * @inheritdoc */ -ve.ce.MWWikitextSurface.prototype.onCopy = function ( e ) { - const clipboardData = e.originalEvent.clipboardData, - text = this.getModel().getFragment().getText( true ).replace( /\n\n/g, '\n' ); - - if ( !text ) { - return; - } - - if ( clipboardData ) { - // Disable the default event so we can override the data - e.preventDefault(); - clipboardData.setData( 'text/plain', text ); - // We're not going to set HTML, but for browsers that support custom data, set a clipboard key - if ( ve.isClipboardDataFormatsSupported( e, true ) ) { - const slice = this.model.documentModel.shallowCloneFromSelection( this.getModel().getSelection() ); - this.clipboardIndex++; - const clipboardKey = this.clipboardId + '-' + this.clipboardIndex; - this.clipboard = { slice: slice, hash: null }; - // Clone the elements in the slice - slice.data.cloneElements( true ); - clipboardData.setData( 'text/xcustom', clipboardKey ); - - // Explicitly store wikitext as text/x-wiki, so that wikitext-aware paste - // contexts can accept it without having to do any content- - // sniffing. - clipboardData.setData( 'text/x-wiki', text ); - } - } else { - const originalSelection = new ve.SelectionState( this.nativeSelection ); - - // Save scroll position before changing focus to "offscreen" paste target - const scrollTop = this.surface.$scrollContainer.scrollTop(); - - // Prevent surface observation due to native range changing - this.surfaceObserver.disable(); - this.$pasteTarget.empty().append( this.pasteTargetInput.$element ); - this.pasteTargetInput.setValue( text ).select(); - - // Restore scroll position after changing focus - this.surface.$scrollContainer.scrollTop( scrollTop ); - - // setTimeout: postpone until after the default copy action - setTimeout( () => { - // Change focus back - this.$attachedRootNode[ 0 ].focus(); - this.showSelectionState( originalSelection ); - // Restore scroll position - this.surface.$scrollContainer.scrollTop( scrollTop ); - this.surfaceObserver.clear(); - this.surfaceObserver.enable(); - // Detach input - this.pasteTargetInput.$element.detach(); - } ); - } -}; - -/** - * @inheritdoc - */ -ve.ce.MWWikitextSurface.prototype.afterPasteInsertExternalData = function ( targetFragment, pastedDocumentModel, contextRange ) { - const wasSpecial = this.pasteSpecial, - // TODO: This check returns true if the paste contains meaningful structure (tables, lists etc.) - // but no annotations (bold, links etc.). - wasPlain = wasSpecial || pastedDocumentModel.data.isPlainText( contextRange, true, undefined, true ); - - const plainPastedDocumentModel = pastedDocumentModel.shallowCloneFromRange( contextRange ); - plainPastedDocumentModel.data.sanitize( { plainText: true, keepEmptyContentBranches: true } ); - // We just turned this into plaintext, which probably - // affected the content-length. Luckily, because of - // the earlier clone, we know we just want the whole - // document, and because of the major change to - // plaintext, the difference between originalRange and - // balancedRange don't really apply. As such, clear - // out newDocRange. (Can't just make it undefined; - // need to exclude the internal list, and since we're - // from a paste we also have to exclude the - // opening/closing paragraph.) - const plainContextRange = new ve.Range( plainPastedDocumentModel.getDocumentRange().from + 1, plainPastedDocumentModel.getDocumentRange().to - 1 ); - this.pasteSpecial = true; - - // isPlainText is true but we still need sanitize (e.g. remove lists) - const promise = ve.ce.MWWikitextSurface.super.prototype.afterPasteInsertExternalData.call( this, targetFragment, plainPastedDocumentModel, plainContextRange ); - if ( !wasPlain ) { - promise.then( () => { - // We need to wait for the selection change after paste as that triggers - // a contextChange event. Really we should wait for the afterPaste promise to resolve. - setTimeout( () => { - const surface = this.getSurface(), - context = surface.getContext(); - // Ensure surface is deactivated on mobile so context can be shown (T336073) - if ( context.isMobile() ) { - surface.getView().deactivate(); - } - context.addPersistentSource( { - embeddable: false, - name: 'wikitextPaste', - data: { - doc: pastedDocumentModel, - contextRange: contextRange, - fragment: targetFragment - } - } ); - surface.getModel().once( 'select', () => { - context.removePersistentSource( 'wikitextPaste' ); - } ); - } ); - } ); - } - return promise; +ve.ce.MWWikitextSurface.prototype.createClipboardHandler = function () { + return new ve.ce.MWWikitextClipboardHandler( this ); }; diff --git a/modules/ve-mw/dm/.eslintrc.json b/modules/ve-mw/dm/.eslintrc.json index e115b9fda6..11f19c485b 100644 --- a/modules/ve-mw/dm/.eslintrc.json +++ b/modules/ve-mw/dm/.eslintrc.json @@ -10,6 +10,8 @@ "$": "off" }, "rules": { - "no-jquery/no-append-html": "warn" + "local/no-unsanitized-href": "off", + "no-jquery/no-append-html": "warn", + "no-jquery/no-done-fail": "warn" } } diff --git a/modules/ve-mw/dm/annotations/ve.dm.MWExternalLinkAnnotation.js b/modules/ve-mw/dm/annotations/ve.dm.MWExternalLinkAnnotation.js index 34d6dc9080..94b6515a43 100644 --- a/modules/ve-mw/dm/annotations/ve.dm.MWExternalLinkAnnotation.js +++ b/modules/ve-mw/dm/annotations/ve.dm.MWExternalLinkAnnotation.js @@ -45,7 +45,7 @@ ve.dm.MWExternalLinkAnnotation.static.toDataElement = function ( domElements, co types = type.trim().split( /\s+/ ); // If the link doesn't have a known RDFa type... - if ( types.indexOf( 'mw:ExtLink' ) === -1 && types.indexOf( 'mw:WikiLink/Interwiki' ) === -1 ) { + if ( !types.includes( 'mw:ExtLink' ) && !types.includes( 'mw:WikiLink/Interwiki' ) ) { // ...when pasting: auto-convert it to the correct type (internal/external/span) if ( converter.isFromClipboard() ) { if ( domElement.hasAttribute( 'href' ) ) { diff --git a/modules/ve-mw/dm/annotations/ve.dm.MWInternalLinkAnnotation.js b/modules/ve-mw/dm/annotations/ve.dm.MWInternalLinkAnnotation.js index b6cf6817b8..6421c12d3e 100644 --- a/modules/ve-mw/dm/annotations/ve.dm.MWInternalLinkAnnotation.js +++ b/modules/ve-mw/dm/annotations/ve.dm.MWInternalLinkAnnotation.js @@ -32,10 +32,32 @@ ve.dm.MWInternalLinkAnnotation.static.name = 'link/mwInternal'; ve.dm.MWInternalLinkAnnotation.static.matchRdfaTypes = [ 'mw:WikiLink', 'mw:MediaLink' ]; -// mw:MediaLink to non-existent files come with typeof="mw:Error" -ve.dm.MWInternalLinkAnnotation.static.allowedRdfaTypes = [ 'mw:Error', 'mw:LocalizedAttrs' ]; +ve.dm.MWInternalLinkAnnotation.static.allowedRdfaTypes = [ + // mw:MediaLink to non-existent files come with typeof="mw:Error" + 'mw:Error', + // Present on red links + 'mw:LocalizedAttrs', + // Present on any link where the target is template- or extension-generated + 'mw:ExpandedAttrs', + // (particularly generated from the Translate extension markup) + /^mw:Annotation\// +]; ve.dm.MWInternalLinkAnnotation.static.toDataElement = function ( domElements, converter ) { + let hasGeneratedHref = false; + const types = domElements[ 0 ].getAttribute( 'typeof' ) || ''; + if ( types.split( /\s+/ ).includes( 'mw:ExpandedAttrs' ) ) { + const dataMw = JSON.parse( domElements[ 0 ].getAttribute( 'data-mw' ) ); + for ( const [ attrName /* , attrValue */ ] of dataMw.attribs ) { + // Check that mw:ExpandedAttrs only contains 'href' - otherwise alienate + if ( attrName.txt === 'href' ) { + hasGeneratedHref = true; + } else { + return null; + } + } + } + const resource = domElements[ 0 ].getAttribute( 'resource' ); let targetData; @@ -48,11 +70,14 @@ ve.dm.MWInternalLinkAnnotation.static.toDataElement = function ( domElements, co ); if ( !targetData.isInternal ) { + if ( hasGeneratedHref ) { + return null; + } return ve.dm.MWExternalLinkAnnotation.static.toDataElement( domElements, converter ); } } - return { + const data = { type: this.name, attributes: { title: targetData.title, @@ -60,6 +85,14 @@ ve.dm.MWInternalLinkAnnotation.static.toDataElement = function ( domElements, co lookupTitle: this.getLookupTitle( targetData.title ) } }; + if ( hasGeneratedHref ) { + data.attributes.hasGeneratedHref = true; + } + return data; +}; + +ve.dm.MWInternalLinkAnnotation.prototype.isEditable = function () { + return !this.getAttribute( 'hasGeneratedHref' ); }; /** @@ -109,7 +142,7 @@ ve.dm.MWInternalLinkAnnotation.static.toDomElements = function () { ve.dm.MWInternalLinkAnnotation.static.getHref = function ( dataElement ) { let title = dataElement.attributes.title; - if ( title.slice( 0, 1 ) === '#' ) { + if ( title.startsWith( '#' ) ) { // Special case: For a newly created link to a #fragment with // no explicit title use the current title as prefix (T218581) // TODO: Pass a 'doc' param to getPageName diff --git a/modules/ve-mw/dm/metaitems/ve.dm.MWDisplayTitleMetaItem.js b/modules/ve-mw/dm/metaitems/ve.dm.MWDisplayTitleMetaItem.js index a0d97960b2..2f628e869e 100644 --- a/modules/ve-mw/dm/metaitems/ve.dm.MWDisplayTitleMetaItem.js +++ b/modules/ve-mw/dm/metaitems/ve.dm.MWDisplayTitleMetaItem.js @@ -28,25 +28,60 @@ ve.dm.MWDisplayTitleMetaItem.static.name = 'mwDisplayTitle'; ve.dm.MWDisplayTitleMetaItem.static.group = 'mwDisplayTitle'; -ve.dm.MWDisplayTitleMetaItem.static.matchTagNames = [ 'meta' ]; +ve.dm.MWDisplayTitleMetaItem.static.matchTagNames = [ 'span' ]; -ve.dm.MWDisplayTitleMetaItem.static.matchRdfaTypes = [ 'mw:PageProp/displaytitle' ]; +ve.dm.MWDisplayTitleMetaItem.static.matchRdfaTypes = [ 'mw:Transclusion' ]; + +ve.dm.MWDisplayTitleMetaItem.static.matchFunction = function ( domElement ) { + const mwDataJSON = domElement.getAttribute( 'data-mw' ), + mwData = mwDataJSON ? JSON.parse( mwDataJSON ) : {}; + return ve.getProp( mwData, 'parts', '0', 'template', 'target', 'function' ) === 'displaytitle' || + ve.getProp( mwData, 'parts', '0', 'parserfunction', 'target', 'key' ) === 'displaytitle'; +}; ve.dm.MWDisplayTitleMetaItem.static.toDataElement = function ( domElements ) { - const content = domElements[ 0 ].getAttribute( 'content' ); + const mwDataJSON = domElements[ 0 ].getAttribute( 'data-mw' ), + mwData = mwDataJSON ? JSON.parse( mwDataJSON ) : {}; + const wt = ( ve.getProp( mwData, 'parts', '0', 'template', 'target', 'wt' ) || '' ) || + ve.getProp( mwData, 'parts', '0', 'parserfunction', 'params', '1', 'wt' ); + const localizedPrefix = wt.split( ':' )[ 0 ]; + const content = wt.slice( localizedPrefix.length + 1 ); return { type: this.name, attributes: { + localizedPrefix: localizedPrefix, content: content } }; }; ve.dm.MWDisplayTitleMetaItem.static.toDomElements = function ( dataElement, doc ) { - const meta = doc.createElement( 'meta' ); - meta.setAttribute( 'property', 'mw:PageProp/displaytitle' ); - meta.setAttribute( 'content', dataElement.attributes.content ); - return [ meta ]; + const prefix = dataElement.attributes.localizedPrefix || + mw.config.get( 'wgVisualEditorConfig' ).displayTitlePrefix, + displayTitle = dataElement.attributes.content, + mwData = { + parts: [ + { + template: { + target: { + wt: prefix + ':' + displayTitle, + function: 'displaytitle' + } + } + } + ] + }; + + if ( !dataElement.originalDomElementsHash ) { + // If this is a new addition to the page, we need to enforce a newline: + mwData.parts.push( '\n' ); + } + + const span = doc.createElement( 'span' ); + span.setAttribute( 'typeof', 'mw:Transclusion' ); + span.setAttribute( 'data-mw', JSON.stringify( mwData ) ); + span.setAttribute( 'about', '#mwt-ve-' + Math.floor( 1000000000 * Math.random() ) ); + return [ span ]; }; /* Registration */ diff --git a/modules/ve-mw/dm/metaitems/ve.dm.MWFlaggedMetaItem.js b/modules/ve-mw/dm/metaitems/ve.dm.MWFlaggedMetaItem.js index 454962abd4..ca8be46f93 100644 --- a/modules/ve-mw/dm/metaitems/ve.dm.MWFlaggedMetaItem.js +++ b/modules/ve-mw/dm/metaitems/ve.dm.MWFlaggedMetaItem.js @@ -32,7 +32,7 @@ ve.dm.MWFlaggedMetaItem.static.matchTagNames = [ 'meta' ]; ve.dm.MWFlaggedMetaItem.static.toDataElement = function ( domElements ) { let property = domElements[ 0 ].getAttribute( 'property' ); - if ( !property || this.matchRdfaTypes.indexOf( property ) === -1 ) { + if ( !property || !this.matchRdfaTypes.includes( property ) ) { // Fallback to first match if somehow unset property = this.matchRdfaTypes[ 0 ]; } @@ -44,7 +44,7 @@ ve.dm.MWFlaggedMetaItem.static.toDomElements = function ( dataElement, doc, conv let domElement; let property = OO.getProp( dataElement, 'attributes', 'property' ); - if ( !property || this.matchRdfaTypes.indexOf( property ) === -1 ) { + if ( !property || !this.matchRdfaTypes.includes( property ) ) { // Fallback to first item if somehow unset property = this.matchRdfaTypes[ 0 ]; } diff --git a/modules/ve-mw/dm/models/ve.dm.MWImageModel.js b/modules/ve-mw/dm/models/ve.dm.MWImageModel.js index 7b6d5153f4..ac7da5450c 100644 --- a/modules/ve-mw/dm/models/ve.dm.MWImageModel.js +++ b/modules/ve-mw/dm/models/ve.dm.MWImageModel.js @@ -19,9 +19,7 @@ * @param {Object} [config.minDimensions={}] Minimum dimensions, width & height * @param {boolean} [config.isDefaultSize=false] Object is using its default size dimensions */ -ve.dm.MWImageModel = function VeDmMWImageModel( parentDoc, config ) { - config = config || {}; - +ve.dm.MWImageModel = function VeDmMWImageModel( parentDoc, config = {} ) { // Mixin constructors OO.EventEmitter.call( this ); @@ -338,7 +336,7 @@ ve.dm.MWImageModel.prototype.changeImageSource = function ( attrs, APIinfo ) { // Call for updated scalable if we don't have dimensions from the API info if ( this.getFilename() ) { // Update anyway - ve.dm.MWImageNode.static.getScalablePromise( this.getFilename() ).done( ( info ) => { + ve.dm.MWImageNode.static.getScalablePromise( this.getFilename() ).then( ( info ) => { this.scalable.setOriginalDimensions( { width: info.width, height: info.height @@ -1196,7 +1194,7 @@ ve.dm.MWImageModel.prototype.attachScalable = function ( scalable ) { // Call for updated scalable if ( imageName ) { - ve.dm.MWImageNode.static.getScalablePromise( imageName ).done( ( info ) => { + ve.dm.MWImageNode.static.getScalablePromise( imageName ).then( ( info ) => { this.scalable.setOriginalDimensions( { width: info.width, height: info.height diff --git a/modules/ve-mw/dm/models/ve.dm.MWTransclusionModel.js b/modules/ve-mw/dm/models/ve.dm.MWTransclusionModel.js index f4a05656ff..ab6a93f8d8 100644 --- a/modules/ve-mw/dm/models/ve.dm.MWTransclusionModel.js +++ b/modules/ve-mw/dm/models/ve.dm.MWTransclusionModel.js @@ -132,7 +132,7 @@ let contentNodes = $.parseHTML( response.visualeditor.content, surfaceFragment.getDocument().getHtmlDocument() ) || []; contentNodes = ve.ce.MWTransclusionNode.static.filterRendering( contentNodes ); insertNode( - baseNodeClass.static.isHybridInline( contentNodes, ve.dm.converter ), + baseNodeClass.static.isHybridInline( contentNodes, ve.dm.converter.modelFromDomConverter ), contentNodes ); } else { @@ -303,7 +303,7 @@ // Skip already cached data !hasOwn.call( specCache, title ) && // Skip duplicate titles in the same batch - titles.indexOf( title ) === -1 + !titles.includes( title ) ) { titles.push( title ); } @@ -332,8 +332,9 @@ lang: mw.config.get( 'wgUserLanguage' ), includeMissingTitles: '1', redirects: '1' - } ).done( this.cacheTemplateDataApiResponse.bind( this ) ); - xhr.always( + } ); + + xhr.then( this.cacheTemplateDataApiResponse.bind( this ) ).always( this.markRequestAsDone.bind( this, xhr ), this.resolveChangeQueue.bind( this, queue ) ); @@ -363,9 +364,11 @@ } else if ( data.pages[ id ].notemplatedata && !OO.isPlainObject( data.pages[ id ].params ) ) { // (T243868) Prevent asking again for templates that have neither user-provided specs // nor automatically detected params - specCache[ title ] = null; + specCache[ title ] = {}; + specCache[ title ].pageId = id; } else { specCache[ title ] = data.pages[ id ]; + specCache[ title ].pageId = id; } } diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWAlienAnnotationNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWAlienAnnotationNode.js index 0fd9c14ac1..4ff950741f 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWAlienAnnotationNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWAlienAnnotationNode.js @@ -45,7 +45,7 @@ ve.dm.MWAlienAnnotationNode.static.toDataElement = function ( domElements ) { ve.dm.MWAlienAnnotationNode.prototype.getWikitextTag = function () { const type = this.getAttribute( 'type' ); - if ( type.indexOf( '/End', type.length - 4 ) !== -1 ) { + if ( type.includes( '/End', type.length - 4 ) ) { return ''; } return ''; diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js index cedef84b47..4dde33a67f 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWBlockImageNode.js @@ -43,7 +43,7 @@ ve.dm.MWBlockImageNode.static.name = 'mwBlockImage'; ve.dm.MWBlockImageNode.static.preserveHtmlAttributes = function ( attribute ) { const attributes = [ 'typeof', 'class', 'src', 'resource', 'width', 'height', 'href', 'rel', 'data-mw', 'alt' ]; - return attributes.indexOf( attribute ) === -1; + return !attributes.includes( attribute ); }; ve.dm.MWBlockImageNode.static.handlesOwnChildren = true; diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWEntityNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWEntityNode.js index cb28673ad9..4a100788da 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWEntityNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWEntityNode.js @@ -40,7 +40,7 @@ ve.dm.MWEntityNode.static.toDataElement = function ( domElements ) { character: domElements[ 0 ].textContent } }; - if ( domElements[ 0 ].getAttribute( 'typeof' ).indexOf( 'mw:DisplaySpace' ) !== -1 ) { + if ( domElements[ 0 ].getAttribute( 'typeof' ).includes( 'mw:DisplaySpace' ) ) { dataElement.attributes.displaySpace = true; } return dataElement; diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWExtensionNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWExtensionNode.js index fcf8b19d7a..990beebe94 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWExtensionNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWExtensionNode.js @@ -64,7 +64,7 @@ ve.dm.MWExtensionNode.static.getMatchRdfaTypes = function () { /** * @inheritdoc * @param {Node[]} domElements - * @param {ve.dm.Converter} converter + * @param {ve.dm.ModelFromDomConverter} converter * @param {string} [type] Type to give dataElement, defaults to static.name */ ve.dm.MWExtensionNode.static.toDataElement = function ( domElements, converter, type ) { @@ -173,7 +173,7 @@ ve.dm.MWExtensionNode.static.describeChanges = function ( attributeChanges, attr } // Append attribute changes // Parent method - Array.prototype.push.apply( descriptions, ve.dm.MWExtensionNode.super.static.describeChanges.call( + descriptions.push( ...ve.dm.MWExtensionNode.super.static.describeChanges.call( this, ve.ui.DiffElement.static.compareAttributes( attributeChanges.mw.from.attrs || {}, attributeChanges.mw.to.attrs || {} ), attributes @@ -184,9 +184,57 @@ ve.dm.MWExtensionNode.static.describeChanges = function ( attributeChanges, attr return []; }; -ve.dm.MWExtensionNode.static.describeChange = function ( key ) { +ve.dm.MWExtensionNode.static.describeChange = function ( key, change ) { if ( key === 'body' ) { - // TODO: Produce a diff of the body, suitable to display in the sidebar. + if ( change.from && change.to ) { + const store = new ve.dm.HashValueStore(); + const linearDiffer = new ve.DiffMatchPatch( store, store ); + const trimNewlines = /^\n+|\n+$/g; + const linearDiff = linearDiffer.getCleanDiff( + change.from.replace( trimNewlines, '' ).split( '' ), + change.to.replace( trimNewlines, '' ).split( '' ), + { keepOldText: false } + ); + const div = document.createElement( 'div' ); + linearDiff.forEach( ( diffSection, i ) => { + const [ type, data ] = diffSection; + const text = data.join( '' ); + let el, nodeText; + switch ( type ) { + case ve.DiffMatchPatch.static.DIFF_DELETE: + el = document.createElement( 'del' ); + nodeText = text; + break; + case ve.DiffMatchPatch.static.DIFF_INSERT: + el = document.createElement( 'ins' ); + nodeText = text; + break; + case ve.DiffMatchPatch.static.DIFF_EQUAL: { + el = document.createElement( 'span' ); + const lines = text.split( '\n' ); + const filteredLines = []; + if ( lines.length === 1 ) { + nodeText = text; + } else { + if ( i !== 0 ) { + filteredLines.push( lines[ 0 ] ); + } + if ( lines.length > 2 ) { + filteredLines.push( '…' ); + } + if ( i !== linearDiff.length - 1 ) { + filteredLines.push( lines[ lines.length - 1 ] ); + } + nodeText = filteredLines.join( '\n' ); + } + break; + } + } + el.appendChild( document.createTextNode( nodeText ) ); + div.appendChild( el ); + } ); + return [ div ]; + } return null; } // Parent method diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWGalleryCaptionNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWGalleryCaptionNode.js index 28d06fc542..3820564fb8 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWGalleryCaptionNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWGalleryCaptionNode.js @@ -29,7 +29,7 @@ ve.dm.MWGalleryCaptionNode.static.matchTagNames = [ 'li' ]; ve.dm.MWGalleryCaptionNode.static.matchFunction = function ( element ) { const parentTypeof = ( element.parentNode && element.parentNode.getAttribute( 'typeof' ) ) || ''; return element.getAttribute( 'class' ) === 'gallerycaption' && - parentTypeof.trim().split( /\s+/ ).indexOf( 'mw:Extension/gallery' ) !== -1; + parentTypeof.trim().split( /\s+/ ).includes( 'mw:Extension/gallery' ); }; ve.dm.MWGalleryCaptionNode.static.parentNodeTypes = [ 'mwGallery' ]; diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWGalleryImageNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWGalleryImageNode.js index 961541255c..45245b5dab 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWGalleryImageNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWGalleryImageNode.js @@ -35,14 +35,14 @@ ve.dm.MWGalleryImageNode.static.childNodeTypes = [ 'mwGalleryImageCaption' ]; ve.dm.MWGalleryImageNode.static.matchFunction = function ( element ) { const parentTypeof = ( element.parentNode && element.parentNode.getAttribute( 'typeof' ) ) || ''; return element.getAttribute( 'class' ) === 'gallerybox' && - parentTypeof.trim().split( /\s+/ ).indexOf( 'mw:Extension/gallery' ) !== -1; + parentTypeof.trim().split( /\s+/ ).includes( 'mw:Extension/gallery' ); }; ve.dm.MWGalleryImageNode.static.parentNodeTypes = [ 'mwGallery' ]; ve.dm.MWGalleryImageNode.static.preserveHtmlAttributes = function ( attribute ) { const attributes = [ 'typeof', 'class', 'src', 'resource', 'width', 'height', 'href', 'rel', 'alt', 'data-mw' ]; - return attributes.indexOf( attribute ) === -1; + return !attributes.includes( attribute ); }; // By handling our own children we ensure that original DOM attributes // are deep copied back by the converter (in renderHtmlAttributeList) @@ -59,7 +59,7 @@ ve.dm.MWGalleryImageNode.static.textContentFromCaption = function textContentFro content += c.nodeValue; } else if ( c instanceof HTMLElement && - ( metaDataTags.indexOf( c.nodeName.toLowerCase() ) === -1 ) && + ( !metaDataTags.includes( c.nodeName.toLowerCase() ) ) && !/\bmw:Extension\/ref\b/.test( c.getAttribute( 'typeOf' ) ) ) { content += textContentFromCaption( c ); diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWImageNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWImageNode.js index 974865ccdf..998e4adbf0 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWImageNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWImageNode.js @@ -154,7 +154,7 @@ ve.dm.MWImageNode.static.describeChanges = function ( attributeChanges, attribut ); } for ( const key in attributeChanges ) { - if ( customKeys.indexOf( key ) === -1 ) { + if ( !customKeys.includes( key ) ) { if ( key === 'borderImage' && !attributeChanges.borderImage.from && !attributeChanges.borderImage.to ) { // Skip noise from the data model continue; @@ -362,10 +362,7 @@ ve.dm.MWImageNode.prototype.getFilename = function () { */ ve.dm.MWImageNode.prototype.getScalable = function () { if ( !this.scalablePromise ) { - this.scalablePromise = ve.dm.MWImageNode.static.getScalablePromise( this.getFilename() ); - // If the promise was already resolved before getScalablePromise returned, then jQuery will execute the done straight away. - // So don't just do getScalablePromise( ... ).done because we need to make sure that this.scalablePromise gets set first. - this.scalablePromise.done( ( info ) => { + this.scalablePromise = ve.dm.MWImageNode.static.getScalablePromise( this.getFilename() ).then( ( info ) => { if ( info ) { this.getScalable().setOriginalDimensions( { width: info.width, diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWIncludesNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWIncludesNode.js index a99080ee19..f5b240919e 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWIncludesNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWIncludesNode.js @@ -26,6 +26,8 @@ OO.inheritClass( ve.dm.MWIncludesNode, ve.dm.AlienInlineNode ); ve.dm.MWIncludesNode.static.name = 'mwIncludes'; +ve.dm.MWIncludesNode.static.preserveHtmlAttributes = true; + ve.dm.MWIncludesNode.static.matchRdfaTypes = [ /^mw:Includes\// ]; diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWInlineImageNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWInlineImageNode.js index 6923ae2f8f..49f40ce049 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWInlineImageNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWInlineImageNode.js @@ -40,7 +40,7 @@ ve.dm.MWInlineImageNode.static.name = 'mwInlineImage'; ve.dm.MWInlineImageNode.static.preserveHtmlAttributes = function ( attribute ) { const attributes = [ 'typeof', 'class', 'src', 'resource', 'width', 'height', 'href', 'data-mw' ]; - return attributes.indexOf( attribute ) === -1; + return !attributes.includes( attribute ); }; ve.dm.MWInlineImageNode.static.matchTagNames = [ 'span' ]; @@ -108,7 +108,7 @@ ve.dm.MWInlineImageNode.static.toDataElement = function ( domElements, converter classes = typeof classes === 'string' ? classes.trim().split( /\s+/ ) : []; // Deal with border flag - if ( classes.indexOf( 'mw-image-border' ) !== -1 ) { + if ( classes.includes( 'mw-image-border' ) ) { attributes.borderImage = true; recognizedClasses.push( 'mw-image-border' ); } @@ -117,7 +117,7 @@ ve.dm.MWInlineImageNode.static.toDataElement = function ( domElements, converter attributes.valign = 'default'; [ 'midde', 'baseline', 'sub', 'super', 'top', 'text-top', 'bottom', 'text-bottom' ].some( ( valign ) => { const className = 'mw-valign-' + valign; - if ( classes.indexOf( className ) !== -1 ) { + if ( classes.includes( className ) ) { attributes.valign = valign; recognizedClasses.push( className ); return true; @@ -126,13 +126,13 @@ ve.dm.MWInlineImageNode.static.toDataElement = function ( domElements, converter } ); // Border - if ( classes.indexOf( 'mw-image-border' ) !== -1 ) { + if ( classes.includes( 'mw-image-border' ) ) { attributes.borderImage = true; recognizedClasses.push( 'mw-image-border' ); } // Default-size - if ( classes.indexOf( 'mw-default-size' ) !== -1 ) { + if ( classes.includes( 'mw-default-size' ) ) { attributes.defaultSize = true; recognizedClasses.push( 'mw-default-size' ); } diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWNumberedExternalLinkNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWNumberedExternalLinkNode.js index 06c83e19bd..d5aa0d54fd 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWNumberedExternalLinkNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWNumberedExternalLinkNode.js @@ -51,7 +51,7 @@ ve.dm.MWNumberedExternalLinkNode.static.matchFunction = function ( domElement ) // contexts.) // Note that ve:NumberedLink is only used internally by VE for cross-document // pastes and is never sent to Parsoid. - return domElement.childNodes.length === 0 || domElement.getAttribute( 'rel' ).indexOf( 've:NumberedLink' ) !== -1; + return domElement.childNodes.length === 0 || domElement.getAttribute( 'rel' ).includes( 've:NumberedLink' ); }; ve.dm.MWNumberedExternalLinkNode.static.toDataElement = function ( domElements ) { diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWTableNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWTableNode.js index d5c0d380f8..2e6cff524e 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWTableNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWTableNode.js @@ -64,7 +64,7 @@ ve.dm.MWTableNode.static.toDataElement = function ( domElements ) { classAttr = domElement.getAttribute( 'class' ); const attributes = { - hasExpandedAttrs: ( domElement.getAttribute( 'typeof' ) || '' ).indexOf( 'mw:ExpandedAttrs' ) !== -1 + hasExpandedAttrs: ( domElement.getAttribute( 'typeof' ) || '' ).includes( 'mw:ExpandedAttrs' ) }; this.setClassAttributes( attributes, classAttr ); diff --git a/modules/ve-mw/dm/nodes/ve.dm.MWTransclusionNode.js b/modules/ve-mw/dm/nodes/ve.dm.MWTransclusionNode.js index 8c282f34f7..6caab8565f 100644 --- a/modules/ve-mw/dm/nodes/ve.dm.MWTransclusionNode.js +++ b/modules/ve-mw/dm/nodes/ve.dm.MWTransclusionNode.js @@ -63,7 +63,7 @@ ve.dm.MWTransclusionNode.static.enableAboutGrouping = true; // We handle rendering ourselves, no need to render attributes from originalDomElements (T207325), // except for data-parsoid/RESTBase ID (T207325) ve.dm.MWTransclusionNode.static.preserveHtmlAttributes = function ( attribute ) { - return [ 'data-parsoid', 'id' ].indexOf( attribute ) !== -1; + return [ 'data-parsoid', 'id' ].includes( attribute ); }; ve.dm.MWTransclusionNode.static.getHashObject = function ( dataElement ) { @@ -204,7 +204,7 @@ ve.dm.MWTransclusionNode.static.toDomElements = function ( dataElement, doc, con for ( let i = 1; i < els.length; i++ ) { // Wrap plain text nodes so we can give them an attribute els[ i ] = wrapTextNode( els[ i ] ); - els[ i ].setAttribute( 'data-ve-ignore', 'true' ); + els[ i ].setAttribute( 'data-ve-ignore', '' ); } } else if ( converter.isForPreview() ) { const modelNode = ve.dm.nodeFactory.createFromElement( dataElement ); @@ -491,7 +491,19 @@ ve.dm.MWTransclusionNode.prototype.getPartsList = function () { * @return {string} Wikitext */ ve.dm.MWTransclusionNode.prototype.getWikitext = function () { - return this.constructor.static.getWikitext( this.getAttribute( 'mw' ) ); + try { + return this.constructor.static.getWikitext( this.getAttribute( 'mw' ) ); + } catch ( e ) { + let message; + const originalDomElements = this.getOriginalDomElements( this.getStore() ); + if ( originalDomElements.length ) { + message = originalDomElements.map( ve.getNodeHtml ).join( '' ); + } else { + message = '[DOM elements not found]'; + } + // Temporary logging for T380432 + throw new Error( `Failed to generate wikitext for MWTransclusionNode: ${ message }` ); + } }; /* Registration */ diff --git a/modules/ve-mw/dm/ve.dm.MWWikitextSurface.js b/modules/ve-mw/dm/ve.dm.MWWikitextSurface.js index 7c9dafe313..6cbb2d93a6 100644 --- a/modules/ve-mw/dm/ve.dm.MWWikitextSurface.js +++ b/modules/ve-mw/dm/ve.dm.MWWikitextSurface.js @@ -16,7 +16,7 @@ */ ve.dm.MWWikitextSurface = function VeDmMwWikitextSurface( doc, config ) { // Parent constructors - ve.dm.MWWikitextSurface.super.call( this, doc, ve.extendObject( config, { sourceMode: true } ) ); + ve.dm.MWWikitextSurface.super.call( this, doc, null, ve.extendObject( config, { sourceMode: true } ) ); }; /* Inheritance */ diff --git a/modules/ve-mw/dm/ve.dm.MWWikitextSurfaceFragment.js b/modules/ve-mw/dm/ve.dm.MWWikitextSurfaceFragment.js index 8be7a30e37..e20402a33b 100644 --- a/modules/ve-mw/dm/ve.dm.MWWikitextSurfaceFragment.js +++ b/modules/ve-mw/dm/ve.dm.MWWikitextSurfaceFragment.js @@ -40,10 +40,10 @@ ve.dm.MWWikitextSurfaceFragment.prototype.hasMatchingAncestor = function ( type, all = !/^([ =]|
)/.test( text ); break; case 'mwPreformatted': - all = text.slice( 0, 1 ) === ' '; + all = text.startsWith( ' ' ); break; case 'blockquote': - all = text.slice( 0, 12 ) === '
'; + all = text.startsWith( '
' ); break; case 'mwHeading': all = new RegExp( '^={' + attributes.level + '}[^=]' ).test( text ) && @@ -79,8 +79,8 @@ ve.dm.MWWikitextSurfaceFragment.prototype.wrapText = function ( before, after, p function unwrap( fragment ) { const text = fragment.getText(); if ( - ( !before || text.slice( 0, before.length ) === before ) && - ( !after || text.slice( -after.length ) === after ) + ( !before || text.startsWith( before ) ) && + ( !after || text.endsWith( after ) ) ) { fragment.unwrapText( before.length, after.length ); // Just the placeholder left, nothing meaningful was selected so just remove it @@ -136,7 +136,7 @@ ve.dm.MWWikitextSurfaceFragment.prototype.convertToSource = function ( doc ) { const progressPromise = ve.init.target.getSurface().createProgress( wikitextPromise, ve.msg( 'visualeditor-generating-wikitext-progress' ) ).then( ( progressBar, cancelPromise ) => { - cancelPromise.fail( () => { + cancelPromise.then( null, () => { wikitextPromise.abort(); } ); } ); diff --git a/modules/ve-mw/init/apiresponsecache/ve.init.mw.LinkCache.js b/modules/ve-mw/init/apiresponsecache/ve.init.mw.LinkCache.js index 562c48d10c..e97617fd04 100644 --- a/modules/ve-mw/init/apiresponsecache/ve.init.mw.LinkCache.js +++ b/modules/ve-mw/init/apiresponsecache/ve.init.mw.LinkCache.js @@ -51,6 +51,7 @@ ve.init.mw.LinkCache.static.processPage = function ( page ) { missing: page.missing !== undefined, known: page.known !== undefined, redirect: page.redirect !== undefined, + linkclasses: page.linkclasses || [], disambiguation: ve.getProp( page, 'pageprops', 'disambiguation' ) !== undefined, hidden: ve.getProp( page, 'pageprops', 'hiddencat' ) !== undefined, imageUrl: ve.getProp( page, 'thumbnail', 'source' ), @@ -66,19 +67,25 @@ ve.init.mw.LinkCache.static.processPage = function ( page ) { * @param {string} title * @param {jQuery} $element Element to style * @param {boolean} [hasFragment=false] Whether the link goes to a fragment + * @param {boolean} [useMissing=true] Use the "missing link" chache if available. Only applies the "new" + * style but this cache is more likely to be populated. In the case of a cache miss the full cache is used. */ -ve.init.mw.LinkCache.prototype.styleElement = function ( title, $element, hasFragment ) { - const cachedMissingData = this.getCached( '_missing/' + title ); - - let promise; - // Use the synchronous missing link cache data if it exists - if ( cachedMissingData ) { - promise = ve.createDeferred().resolve( cachedMissingData ).promise(); - } else { - promise = this.get( title ); +ve.init.mw.LinkCache.prototype.styleElement = function ( title, $element, hasFragment, useMissing ) { + if ( useMissing !== false ) { + const cachedMissingData = this.getCached( '_missing/' + title ); + + // Use the synchronous missing link cache data if it exists + if ( cachedMissingData ) { + if ( cachedMissingData.missing && !cachedMissingData.known ) { + $element.addClass( 'new' ); + } + return; + } } - promise.done( ( data ) => { + this.get( title ).then( ( data ) => { + // eslint-disable-next-line mediawiki/class-doc + $element.addClass( data.linkclasses ); if ( data.missing && !data.known ) { $element.addClass( 'new' ); } else { @@ -167,6 +174,7 @@ ve.init.mw.LinkCache.prototype.getRequestPromise = function ( subqueue ) { return this.api.get( { action: 'query', prop: 'info|pageprops|pageimages|description', + inprop: 'linkclasses', pithumbsize: 80, pilimit: subqueue.length, ppprop: 'disambiguation|hiddencat', diff --git a/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-monobook.less b/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-monobook.less index d7d5082e7f..cc64d200f3 100644 --- a/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-monobook.less +++ b/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-monobook.less @@ -18,6 +18,10 @@ font-size: 1.007874em; } + .ve-ui-sidebarDialog { + margin-left: 1em; + } + .mw-body & > .ve-ui-surface-placeholder > * { /* Fix margin overlap */ margin-top: 0; diff --git a/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-vector.less b/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-vector.less index 783456ad0d..ebb7b36116 100644 --- a/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-vector.less +++ b/modules/ve-mw/init/styles/ve.init.mw.DesktopArticleTarget-vector.less @@ -41,6 +41,10 @@ border: 0; } + .ve-ui-sidebarDialog { + margin-right: 1rem; + } + .skin-vector-legacy & { /* High-definition-specific styles (because Vector adds 1em to the leftNav if width is 982px+ */ @media screen and ( min-width: 982px ) { @@ -51,6 +55,10 @@ padding: 0 1.5rem; } + .ve-ui-sidebarDialog { + margin-right: 1.5rem; + } + /* Main document debug bar */ > .ve-ui-debugBar { padding: 1.5rem; diff --git a/modules/ve-mw/init/styles/ve.init.mw.DesktopTarget-monobook.less b/modules/ve-mw/init/styles/ve.init.mw.DesktopTarget-monobook.less index c8e45adb29..f755f2cbb1 100644 --- a/modules/ve-mw/init/styles/ve.init.mw.DesktopTarget-monobook.less +++ b/modules/ve-mw/init/styles/ve.init.mw.DesktopTarget-monobook.less @@ -25,7 +25,8 @@ font-size: 0.9921875em; /* 1/ ( 0.8em / x-small / 127% ) */ } -.ve-ui-overlay-local { +.ve-ui-overlay-local, +.ve-ui-sidebarDialogWindowManager { /* Fix font-size for overlays inside surfaces */ font-size: 1.007874em; /* 12.8/12.7 */ } diff --git a/modules/ve-mw/init/styles/ve.init.mw.MobileArticleTarget.less b/modules/ve-mw/init/styles/ve.init.mw.MobileArticleTarget.less index c159c0097d..cf41f30754 100644 --- a/modules/ve-mw/init/styles/ve.init.mw.MobileArticleTarget.less +++ b/modules/ve-mw/init/styles/ve.init.mw.MobileArticleTarget.less @@ -49,16 +49,20 @@ } } -/* stylelint-disable-next-line selector-class-pattern */ +/* stylelint-disable selector-class-pattern */ .ve-init-mw-mobileArticleTarget.overlay { // Override MobileFrontend `.overlay` styles. // `padding-top` is instead set on a different element in adjustContentPadding(). padding-top: 0; } +/* stylelint-enable selector-class-pattern */ -.ve-init-mw-mobileArticleTarget .ve-ui-overlay-local { - // Reset line height set by .content - line-height: 1.4; +.ve-init-mw-mobileArticleTarget { + .ve-ui-overlay-local, + .ve-ui-sidebarDialogWindowManager { + // Reset line height set by .content + line-height: 1.4; + } } .oo-ui-windowManager-ios-modal-ready .ve-init-mw-mobileArticleTarget { @@ -71,6 +75,14 @@ position: fixed; } +.ve-init-mw-mobileArticleTarget-toolbar.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > { + .ve-ui-toolbar-group-back, + .ve-ui-toolbar-group-save { + flex: 0; + min-width: 2.75em; + } +} + @media screen and ( max-width: 767px ) { .ve-init-mw-target-surface > .ve-ui-surface-placeholder > * { /* Fix margin overlap */ @@ -80,6 +92,13 @@ } } +@media all and ( min-width: @min-width-breakpoint-desktop ) { + .ve-init-mw-target-surface { + // This should be in-sync with .overlay-header rule in MinervaNeue's overlay.less + max-width: calc( 993.3px + ( 2 * 1em ) ); + } +} + .ve-ui-debugBar { margin: 0 -16px; padding: 0 16px; diff --git a/modules/ve-mw/init/styles/ve.init.mw.Target.less b/modules/ve-mw/init/styles/ve.init.mw.Target.less index 14e8b199ea..74d9138474 100644 --- a/modules/ve-mw/init/styles/ve.init.mw.Target.less +++ b/modules/ve-mw/init/styles/ve.init.mw.Target.less @@ -45,23 +45,37 @@ } } +/* Fix list styles in Vector 2022 (T368302) */ +.skin-vector-2022 .mw-body p.ve-ce-generated-wrapper { + & + ul, + & + ol, + & + table, + & + dl, + & + blockquote { + margin-top: 0; + } +} + /* * Grey out the fake toggles to make it more obvious they are not interactive. * Don't bother trying to float the toggles, as the text they are floating around * is now paragraph wrapped. Making these paragraphs display:inline would fix the * rendering but causes them to be destroyed by the CE when empty (T197987). */ -.ve-ce-mwTableNode.mw-collapsible :first-child tr:first-child th:last-child::before, -.ve-ce-mwTableNode.mw-collapsible > caption:first-child::after, -.ve-ui-diffElement table.mw-collapsible :first-child tr:first-child th:last-child::before, -.ve-ui-diffElement table.mw-collapsible > caption:first-child::after { - color: #999; - float: none; +.ve-ce-mwTableNode.mw-collapsible, +.ve-ui-diffElement table.mw-collapsible { + :first-child tr:first-child th:last-child::before, + & > caption:first-child::after { + color: #999; + float: none; + } } -.ve-ce-surface div.mw-collapsible::before, -.ve-ui-diffElement div.mw-collapsible::before { - color: #999; +.ve-ce-surface, +.ve-ui-diffElement { + div.mw-collapsible::before { + color: #999; + } } /* Categories */ @@ -82,9 +96,11 @@ a[ rel~='mw:PageProp/Category' ] { } /* Reset section node styles */ -.ve-init-mw-target .ve-ce-sectionNode::before, -.ve-init-mw-target .ve-ce-sectionNode::after { - content: normal; +.ve-init-mw-target .ve-ce-sectionNode { + &::before, + &::after { + content: normal; + } } .ve-init-mw-target .ve-ce-surface .ve-ce-sectionNode:not( .ve-ce-activeNode-active ) { @@ -96,3 +112,31 @@ a[ rel~='mw:PageProp/Category' ] { white-space: nowrap; font-weight: bold; } + +/* Night mode */ + +// FIXME: Can be removed when T369092 is resolved +&.skin-theme-clientpref-night { + .ve-ce-branchNode-blockSlug, + body p.ve-ce-branchNode-newSlug { + background-color: rgba( 241, 247, 251, 0.1 ); + } + + .ve-ce-surface-selections-deactivated-showAsDeactivated .ve-ce-surface-selection > div { + background: #fff; + } +} + +/* stylelint-disable-next-line plugin/no-unsupported-browser-features */ +@media ( prefers-color-scheme: dark ) { + &.skin-theme-clientpref-os { + .ve-ce-branchNode-blockSlug, + body p.ve-ce-branchNode-newSlug { + background-color: rgba( 241, 247, 251, 0.1 ); + } + + .ve-ce-surface-selections-deactivated-showAsDeactivated .ve-ce-surface-selection > div { + background: #fff; + } + } +} diff --git a/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js b/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js index 43c9044a5c..7c615a21ae 100644 --- a/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js +++ b/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js @@ -18,8 +18,7 @@ * @param {Object} [config.toolbarConfig] * @param {boolean} [config.register=true] */ -ve.init.mw.ArticleTarget = function VeInitMwArticleTarget( config ) { - config = config || {}; +ve.init.mw.ArticleTarget = function VeInitMwArticleTarget( config = {} ) { config.toolbarConfig = ve.extendObject( { shadow: true, actions: true, @@ -40,6 +39,7 @@ ve.init.mw.ArticleTarget = function VeInitMwArticleTarget( config ) { this.saveDialog = null; this.saveDeferred = null; this.saveFields = {}; + this.wasSaveable = null; this.docToSave = null; this.originalDmDocPromise = null; this.originalHtml = null; @@ -56,6 +56,7 @@ ve.init.mw.ArticleTarget = function VeInitMwArticleTarget( config ) { this.editSummaryValue = null; this.initialEditSummary = null; this.initialCheckboxes = {}; + this.preSaveProcess = new OO.ui.Process(); this.viewUrl = new URL( mw.util.getUrl( this.getPageName() ), location.href ); this.isViewPage = ( @@ -159,6 +160,11 @@ OO.inheritClass( ve.init.mw.ArticleTarget, ve.init.mw.Target ); */ ve.init.mw.ArticleTarget.static.name = 'article'; +/** + * @inheritdoc + */ +ve.init.mw.ArticleTarget.static.annotateImportedData = true; + /** * Tracking name of target class. Used by ArticleTargetEvents to identify which target we are tracking. * @@ -241,6 +247,8 @@ ve.init.mw.ArticleTarget.static.buildRedirectSub = function () { ve.init.mw.ArticleTarget.static.buildRedirectMsg = function ( title ) { const $link = $( '' ) .attr( { + // Redirect target is safe + // eslint-disable-next-line local/no-unsanitized-href href: mw.Title.newFromText( title ).getUrl(), title: mw.msg( 'visualeditor-redirect-description', title ) } ) @@ -534,20 +542,26 @@ ve.init.mw.ArticleTarget.prototype.storeDocState = function ( html ) { section: ( mode === 'source' || this.enableVisualSectionEditing ) ? this.section : null }, response: { + // -------------------------------------------------------------------------------- + // This should match the API result in ApiVisualEditor.php and ArticleTarget#getWikitextDataPromiseForDoc + // -------------------------------------------------------------------------------- + basetimestamp: this.baseTimeStamp, + // `blockinfo` is not used by this client + canEdit: this.canEdit, + checkboxesDef: this.checkboxesDef, + checkboxesMessages: this.checkboxesMessages, + // `content` is not needed here, we store `html` instead + copyrightWarning: this.copyrightWarning, etag: this.etag, - fromEditedState: this.fromEditedState, - switched: this.switched, - preloaded: this.preloaded, + fromEditedState: this.fromEditedState, // extra notices: this.remoteNotices, + oldid: this.revid, + preloaded: this.preloaded, protectedClasses: this.protectedClasses, - basetimestamp: this.baseTimeStamp, + // `result` is not used starttimestamp: this.startTimeStamp, - oldid: this.revid, - canEdit: this.canEdit, - wouldautocreate: this.wouldautocreate, - copyrightWarning: this.copyrightWarning, - checkboxesDef: this.checkboxesDef, - checkboxesMessages: this.checkboxesMessages + switched: this.switched, + wouldautocreate: this.wouldautocreate } }, html ); }; @@ -765,7 +779,7 @@ ve.init.mw.ArticleTarget.prototype.saveFail = function ( doc, saveData, code, da let handled = false; // Handle empty response if ( !data ) { - this.saveErrorEmpty(); + this.showSaveError( this.extractErrorMessages( null ) ); handled = true; } @@ -783,20 +797,22 @@ ve.init.mw.ArticleTarget.prototype.saveFail = function ( doc, saveData, code, da this.saveErrorNewUser( username ); } }, () => { - this.saveErrorUnknown( data ); + this.showSaveError( this.extractErrorMessages( data ) ); } ); handled = true; } else if ( error.code === 'editconflict' ) { this.editConflict(); handled = true; } else if ( error.code === 'pagedeleted' ) { - this.saveErrorPageDeleted(); + this.pageDeletedWarning = true; + // The API error message 'apierror-pagedeleted' is poor, make our own + this.showSaveError( mw.msg( 'visualeditor-recreate', mw.msg( 'ooui-dialog-process-continue' ) ), true ); handled = true; } else if ( error.code === 'hookaborted' ) { this.saveErrorHookAborted( data ); handled = true; } else if ( error.code === 'readonly' ) { - this.saveErrorReadOnly( data ); + this.showSaveError( this.extractErrorMessages( data ), true ); handled = true; } } @@ -815,7 +831,7 @@ ve.init.mw.ArticleTarget.prototype.saveFail = function ( doc, saveData, code, da // Handle (other) unknown and/or unrecoverable errors if ( !handled ) { - this.saveErrorUnknown( data ); + this.showSaveError( this.extractErrorMessages( data ) ); handled = true; } @@ -832,7 +848,7 @@ ve.init.mw.ArticleTarget.prototype.saveFail = function ( doc, saveData, code, da }; /** - * Show an save process error message + * Show a save process error message * * @param {string|jQuery|Node[]} msg Message content (string of HTML, jQuery object or array of * Node objects) @@ -856,14 +872,8 @@ ve.init.mw.ArticleTarget.prototype.extractErrorMessages = function ( data ) { }; /** - * Handle general save error - */ -ve.init.mw.ArticleTarget.prototype.saveErrorEmpty = function () { - this.showSaveError( this.extractErrorMessages( null ) ); -}; - -/** - * Handle hook abort save error + * Handle hook abort save error. Intended to be overridden by extensions implementing the + * VisualEditorApiVisualEditorEditPreSave hook. * * @param {Object} data API response data */ @@ -890,33 +900,6 @@ ve.init.mw.ArticleTarget.prototype.saveErrorNewUser = function ( username ) { this.showSaveError( $msg, true ); }; -/** - * Handle unknown save error - * - * @param {Object|null} data API response data - */ -ve.init.mw.ArticleTarget.prototype.saveErrorUnknown = function ( data ) { - this.showSaveError( this.extractErrorMessages( data ) ); -}; - -/** - * Handle page deleted error - */ -ve.init.mw.ArticleTarget.prototype.saveErrorPageDeleted = function () { - this.pageDeletedWarning = true; - // The API error message 'apierror-pagedeleted' is poor, make our own - this.showSaveError( mw.msg( 'visualeditor-recreate', mw.msg( 'ooui-dialog-process-continue' ) ), true ); -}; - -/** - * Handle read only error - * - * @param {Object} data API response data - */ -ve.init.mw.ArticleTarget.prototype.saveErrorReadOnly = function ( data ) { - this.showSaveError( this.extractErrorMessages( data ), true ); -}; - /** * Handle an edit conflict */ @@ -1118,6 +1101,9 @@ ve.init.mw.ArticleTarget.prototype.onSaveDialogRetry = function () { * @return {jQuery.Promise} Data promise */ ve.init.mw.ArticleTarget.prototype.load = function ( dataPromise ) { + if ( this.getDefaultMode() === 'visual' && this.section === 'new' ) { + throw new Error( 'Adding new section is not supported in visual mode' ); + } // Prevent duplicate requests if ( this.loading ) { return this.loading; @@ -1137,9 +1123,10 @@ ve.init.mw.ArticleTarget.prototype.load = function ( dataPromise ) { } ); this.loading = dataPromise; - dataPromise - .done( this.loadSuccess.bind( this ) ) - .fail( this.loadFail.bind( this ) ); + dataPromise.then( + this.loadSuccess.bind( this ), + this.loadFail.bind( this ) + ); return dataPromise; }; @@ -1173,18 +1160,6 @@ ve.init.mw.ArticleTarget.prototype.clearState = function () { this.teardownPromise = null; }; -/** - * Switch to edit source mode - * - * Opens a confirmation dialog if the document is modified or VE wikitext mode - * is not available. - */ -ve.init.mw.ArticleTarget.prototype.editSource = function () { - const modified = this.fromEditedState || this.getSurface().getModel().hasBeenModified(); - - this.switchToWikitextEditor( modified ); -}; - /** * Get a document to save, cached until the surface is modified * @@ -1481,6 +1456,7 @@ ve.init.mw.ArticleTarget.prototype.getSaveOptions = function () { wpSummary: 'summary', wpMinoredit: 'minor', wpWatchthis: 'watchlist', + wpWatchlistExpiry: 'watchlistexpiry', wpCaptchaId: 'captchaid', wpCaptchaWord: 'captchaword' }; @@ -1565,23 +1541,17 @@ ve.init.mw.ArticleTarget.prototype.save = function ( doc, options ) { if ( mw.editcheck.hasAddedContentNeedingReference( documentModel, true ) ) { taglist.push( 'editcheck-newcontent' ); } - // Rejection reasons for references - const rejections = mw.editcheck.getRejectionReasons(); - if ( rejections.length > 0 ) { - rejections.forEach( ( reason ) => { - taglist.push( 'editcheck-reference-decline-' + reason ); - } ); - } } data.vetags = taglist.join( ',' ); - const promise = this.saving = this.tryWithPreparedCacheKey( doc, data, 'save' ) - .done( this.saveComplete.bind( this ) ) - .fail( this.saveFail.bind( this, doc, data ) ) - .always( () => { - this.saving = null; - } ); + const promise = this.saving = this.tryWithPreparedCacheKey( doc, data, 'save' ); + promise.then( + this.saveComplete.bind( this ), + this.saveFail.bind( this, doc, data ) + ).always( () => { + this.saving = null; + } ); return promise; }; @@ -1634,9 +1604,10 @@ ve.init.mw.ArticleTarget.prototype.getWikitextDiffPromise = function ( doc ) { } return data.diff; } ); - this.wikitextDiffPromise - .done( this.emit.bind( this, 'showChanges' ) ) - .fail( this.emit.bind( this, 'showChangesError' ) ); + this.wikitextDiffPromise.then( + this.emit.bind( this, 'showChanges' ), + this.emit.bind( this, 'showChangesError' ) + ); } return this.wikitextDiffPromise; }; @@ -1715,12 +1686,13 @@ ve.init.mw.ArticleTarget.prototype.serialize = function ( doc, callback ) { page: this.getPageName(), oldid: this.revid, etag: this.etag - }, 'serialize' ) - .done( this.emit.bind( this, 'serializeComplete' ) ) - .fail( this.emit.bind( this, 'serializeError' ) ) - .always( () => { - this.serializing = null; - } ); + }, 'serialize' ); + promise.then( + this.emit.bind( this, 'serializeComplete' ), + this.emit.bind( this, 'serializeError' ) + ).always( () => { + this.serializing = null; + } ); if ( callback ) { OO.ui.warnDeprecation( 'Passing a callback to ve.init.mw.ArticleTarget#serialize is deprecated. Use the returned promise instead.' ); @@ -1754,7 +1726,7 @@ ve.init.mw.ArticleTarget.prototype.track = function ( name ) { /** * @inheritdoc */ -ve.init.mw.ArticleTarget.prototype.createSurface = function ( dmDoc, config ) { +ve.init.mw.ArticleTarget.prototype.createSurface = function ( dmDoc, config = {} ) { const sections = dmDoc.getNodesByType( 'section' ); let attachedRoot; if ( sections.length && sections.length === 1 ) { @@ -1951,9 +1923,26 @@ ve.init.mw.ArticleTarget.prototype.isSaveable = function () { * Update the toolbar save button to reflect if the article can be saved */ ve.init.mw.ArticleTarget.prototype.updateToolbarSaveButtonState = function () { - // This should really be an emit('updateState') but that would cause + // This should really be an emit( 'updateState' ) but that would cause // every tool to be updated on every transaction. this.toolbarSaveButton.onUpdateState(); + + const isSaveable = this.isSaveable(); + if ( isSaveable !== this.wasSaveable ) { + this.emit( 'toolbarSaveButtonStateChanged' ); + this.wasSaveable = isSaveable; + } +}; + +/** + * Get the pre-save process, which is executed before opening the save dialog + * + * If the process rejects, the save dialog is not opened. + * + * @return {OO.ui.Process} + */ +ve.init.mw.ArticleTarget.prototype.getPreSaveProcess = function () { + return this.preSaveProcess; }; /** @@ -1974,7 +1963,9 @@ ve.init.mw.ArticleTarget.prototype.showSaveDialog = function ( action, checkboxN const currentWindow = this.getSurface().getDialogs().getCurrentWindow(); if ( currentWindow && currentWindow.constructor.static.name === 'mwSave' && ( action === 'save' || action === null ) ) { // The current window is the save dialog, and we've gotten here via - // the save action. Trigger a save. We're doing this here instead of + // the save action. Trigger a save action on the dialog, which will + // either switch to the save panel or immediately save depending on + // the currently active panel. We're doing this here instead of // relying on an accesskey on the save button, because that has some // cross-browser issues that makes it not work in Firefox. currentWindow.executeAction( 'save' ); @@ -1983,17 +1974,22 @@ ve.init.mw.ArticleTarget.prototype.showSaveDialog = function ( action, checkboxN this.saveDialogIsOpening = true; - const saveProcess = new OO.ui.Process(); - mw.hook( 've.preSaveProcess' ).fire( saveProcess, this ); + mw.hook( 've.preSaveProcess' ).deprecate( 'Use target.getPreSaveProcess() instead.' ).fire( this.preSaveProcess, this ); this.emit( 'saveWorkflowBegin' ); - saveProcess.execute().done( () => { + this.preSaveProcess.execute().then( () => { + if ( this.deactivating || !this.active ) { + // It's possible to trigger deactivating VE during the + // preSaveProcess (e.g. by clicking the "read" tab), and in that + // case we should immediately discard what we're doing. + return; + } // Preload the serialization this.prepareCacheKey( this.getDocToSave() ); // Get the save dialog - this.getSurface().getDialogs().getWindow( 'mwSave' ).done( ( win ) => { + this.getSurface().getDialogs().getWindow( 'mwSave' ).then( ( win ) => { const windowAction = ve.ui.actionFactory.create( 'window', this.getSurface() ); if ( !this.saveDialog ) { @@ -2008,7 +2004,8 @@ ve.init.mw.ArticleTarget.prototype.showSaveDialog = function ( action, checkboxN resolve: 'onSaveDialogResolveConflict', retry: 'onSaveDialogRetry', // The array syntax is a way to call `this.emit( 'saveWorkflowEnd' )`. - close: [ 'emit', 'saveWorkflowEnd' ] + close: [ 'emit', 'saveWorkflowEnd' ], + changePanel: [ 'emit', 'saveWorkflowChangePanel' ] } ); // Attach custom overlay @@ -2055,7 +2052,7 @@ ve.init.mw.ArticleTarget.prototype.showSaveDialog = function ( action, checkboxN } ); } } ); - } ).fail( () => { + }, () => { this.saveDialogIsOpening = false; } ); }; @@ -2110,17 +2107,10 @@ ve.init.mw.ArticleTarget.prototype.restoreEditSection = function () { // In mw.libs.ve.unwrapParsoidSections we copy the data-mw-section-id from the section element // to the heading. Iterate over headings to find the one with the correct attribute // in originalDomElements. - let headingModel; - dmDoc.getNodesByType( 'mwHeading' ).some( ( heading ) => { + const headingModel = dmDoc.getNodesByType( 'mwHeading' ).find( ( heading ) => { const domElements = heading.getOriginalDomElements( dmDoc.getStore() ); - if ( - domElements && domElements[ 0 ].nodeType === Node.ELEMENT_NODE && - domElements[ 0 ].getAttribute( 'data-mw-section-id' ) === section - ) { - headingModel = heading; - return true; - } - return false; + return domElements && domElements.length && domElements[ 0 ].nodeType === Node.ELEMENT_NODE && + domElements[ 0 ].getAttribute( 'data-mw-section-id' ) === section; } ); if ( headingModel ) { const headingView = surface.getView().getDocument().getDocumentNode().getNodeFromOffset( headingModel.getRange().start ); @@ -2248,9 +2238,12 @@ ve.init.mw.ArticleTarget.prototype.getSectionHashFromPage = function () { /** * Switches to the wikitext editor, either keeping (default) or discarding changes. * - * @param {boolean} [modified=false] Whether there were any changes at all. + * @param {boolean} [modified] Whether there were any changes at all, will be evaluated if not provided */ ve.init.mw.ArticleTarget.prototype.switchToWikitextEditor = function ( modified ) { + if ( modified === undefined ) { + modified = this.fromEditedState || this.getSurface().getModel().hasBeenModified(); + } // When switching with changes we always pass the full page as changes in visual section mode // can still affect the whole document (e.g. removing a reference) if ( modified ) { @@ -2269,6 +2262,12 @@ ve.init.mw.ArticleTarget.prototype.switchToWikitextEditor = function ( modified } }; +// Deprecated alias +ve.init.mw.ArticleTarget.prototype.editSource = function () { + OO.ui.warnDeprecation( 'ArticleTarget#editSource: Use #switchToWikitextEditor instead.' ); + this.switchToWikitextEditor( ...arguments ); +}; + /** * Get a data promise for wikitext editing based on the current doc state * @@ -2278,16 +2277,24 @@ ve.init.mw.ArticleTarget.prototype.switchToWikitextEditor = function ( modified ve.init.mw.ArticleTarget.prototype.getWikitextDataPromiseForDoc = function ( modified ) { return this.serialize( this.getDocToSave() ).then( ( data ) => { // HACK - add parameters the API doesn't provide for a VE->WT switch + // -------------------------------------------------------------------------------- + // This should match the API result in ApiVisualEditor.php and ArticleTarget#storeDocState + // -------------------------------------------------------------------------------- + data.basetimestamp = this.baseTimeStamp; + // `blockinfo` is not used by this client + data.canEdit = this.canEdit; + data.checkboxesDef = this.checkboxesDef; + data.checkboxesMessages = this.checkboxesMessages; // needed in case we end up autosaving with this data + // `content` is already set + data.copyrightWarning = this.copyrightWarning; data.etag = this.etag; - data.fromEditedState = modified; + data.fromEditedState = modified; // this replaces data.preloaded data.notices = this.remoteNotices; + data.oldid = this.revid; data.protectedClasses = this.protectedClasses; - data.basetimestamp = this.baseTimeStamp; + // `result` is not used data.starttimestamp = this.startTimeStamp; - data.oldid = this.revid; - data.canEdit = this.canEdit; data.wouldautocreate = this.wouldautocreate; - data.checkboxesDef = this.checkboxesDef; // Wrap up like a response object as that is what dataPromise is expected to be return { visualeditoredit: data }; } ); @@ -2463,7 +2470,7 @@ ve.init.mw.ArticleTarget.prototype.renderCategories = function ( categoryItems ) categoryItems.forEach( ( categoryItem, index ) => { const attributes = ve.copy( ve.getProp( categoryItem, 'element', 'attributes' ) ); attributes.index = index; - promises.push( ve.init.platform.linkCache.get( attributes.category ).done( ( result ) => { + promises.push( ve.init.platform.linkCache.get( attributes.category ).then( ( result ) => { const group = result.hidden ? categories.hidden : categories.normal; // In case of duplicates, first entry wins (like in MediaWiki) if ( !group[ attributes.category ] || group[ attributes.category ].index > attributes.index ) { @@ -2474,8 +2481,9 @@ ve.init.mw.ArticleTarget.prototype.renderCategories = function ( categoryItems ) return ve.promiseAll( promises ).then( () => { const $output = $( '
' ).addClass( 'catlinks' ); function renderPageLink( page ) { - const title = mw.Title.newFromText( page ), - $link = $( '' ).attr( 'rel', 'mw:WikiLink' ).attr( 'href', title.getUrl() ).text( title.getMainText() ); + const title = mw.Title.newFromText( page ); + const $link = $( '' ).attr( 'rel', 'mw:WikiLink' ).text( title.getMainText() ); + ve.setAttributeSafe( $link[ 0 ], 'href', title.getUrl() ); // Style missing links. The data should already have been fetched // as part of the earlier processing of categoryItems. ve.init.platform.linkCache.styleElement( title.getPrefixedText(), $link, false ); diff --git a/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.js b/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.js index 7fc7f31652..543e89f116 100644 --- a/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.js +++ b/modules/ve-mw/init/targets/ve.init.mw.DesktopArticleTarget.js @@ -93,6 +93,7 @@ ve.init.mw.DesktopArticleTarget.static.toolbarGroups.push( { name: 'help', align: 'after', + excludeFromTargetWidget: true, type: 'mwHelpList', icon: 'help', indicator: null, @@ -103,11 +104,13 @@ ve.init.mw.DesktopArticleTarget.static.toolbarGroups.push( { name: 'notices', align: 'after', + excludeFromTargetWidget: true, include: [ { group: 'notices' } ] }, { name: 'pageMenu', align: 'after', + excludeFromTargetWidget: true, type: 'list', icon: 'menu', indicator: null, @@ -120,6 +123,7 @@ ve.init.mw.DesktopArticleTarget.static.toolbarGroups.push( { name: 'editMode', align: 'after', + excludeFromTargetWidget: true, type: 'list', icon: 'edit', title: ve.msg( 'visualeditor-mweditmode-tooltip' ), @@ -130,6 +134,7 @@ ve.init.mw.DesktopArticleTarget.static.toolbarGroups.push( { name: 'save', align: 'after', + excludeFromTargetWidget: true, type: 'bar', include: [ { group: 'save' } ] } @@ -181,17 +186,16 @@ ve.init.mw.DesktopArticleTarget.static.platformType = 'desktop'; * @inheritdoc */ ve.init.mw.DesktopArticleTarget.prototype.addSurface = function ( dmDoc, config ) { + const skinPadding = { + // Vector-2022 content area less padding, so popups can render too close + // to the edge of the text (T258501). The default of 10px is reduced to 3px. + // We still need a bit of padding to keep popups from touching the sidebar. + 'vector-2022': 3, + monobook: -10 + }; + const skin = mw.config.get( 'skin' ); config = ve.extendObject( { - $overlayContainer: $( - document.querySelector( '[data-mw-ve-target-container]' ) || - document.getElementById( 'content' ) - ), - // Vector-2022 content area has no padding itself, so popups render too close - // to the edge of the text (T258501). Use a negative value to allow popups to - // position slightly outside the content. Padding elsewhere means we are - // guaranteed 30px of space between the content and the edge of the viewport. - // Other skins pass 'undefined' to use the default padding of +10px. - overlayPadding: mw.config.get( 'skin' ) === 'vector-2022' ? -10 : undefined + overlayPadding: skin in skinPadding ? skinPadding[ skin ] : undefined }, config ); return ve.init.mw.DesktopArticleTarget.super.prototype.addSurface.call( this, dmDoc, config ); }; @@ -242,7 +246,7 @@ ve.init.mw.DesktopArticleTarget.prototype.setupToolbar = function ( surface ) { } this.toolbarSetupDeferred.resolve(); - this.toolbarSetupDeferred.done( () => { + this.toolbarSetupDeferred.then( () => { const newSurface = this.getSurface(); // Check the surface wasn't torn down while the toolbar was animating if ( newSurface ) { @@ -395,13 +399,13 @@ ve.init.mw.DesktopArticleTarget.prototype.activate = function ( dataPromise ) { this.toolbarSetupDeferred = ve.createDeferred(); $( 'html' ).addClass( 've-activating' ); - ve.promiseAll( [ this.activatingDeferred, this.toolbarSetupDeferred ] ).done( () => { + ve.promiseAll( [ this.activatingDeferred, this.toolbarSetupDeferred ] ).then( () => { if ( !this.suppressNormalStartupDialogs ) { this.maybeShowWelcomeDialog(); this.maybeShowMetaDialog(); } this.afterActivate(); - } ).fail( () => { + }, () => { $( 'html' ).removeClass( 've-activating' ); } ); @@ -424,7 +428,12 @@ ve.init.mw.DesktopArticleTarget.prototype.activate = function ( dataPromise ) { * Edit mode has finished activating */ ve.init.mw.DesktopArticleTarget.prototype.afterActivate = function () { - $( 'html' ).removeClass( 've-activating' ).addClass( 've-active' ); + // eslint-disable-next-line mediawiki/class-doc + $( 'html' ) + // Remove ve-activating when loading for the first time, + // and when switching remove previous mode's class. + .removeClass( 've-activating ve-active-visual ve-active-source' ) + .addClass( 've-active ve-active-' + this.getSurface().getMode() ); // Disable TemplateStyles in the original content // (We do this here because toggling 've-active' class above hides it) @@ -475,6 +484,9 @@ ve.init.mw.DesktopArticleTarget.prototype.setSurface = function ( surface ) { * @param {ve.ui.Surface} surface */ ve.init.mw.DesktopArticleTarget.prototype.setupNewSection = function ( surface ) { + if ( surface.getMode() === 'visual' && this.section === 'new' ) { + throw new Error( 'Adding new section is not supported in visual mode' ); + } if ( surface.getMode() === 'source' && this.section === 'new' ) { if ( !this.sectionTitle ) { this.sectionTitle = new OO.ui.TextInputWidget( { @@ -670,10 +682,10 @@ ve.init.mw.DesktopArticleTarget.prototype.loadFail = function ( code, errorDetai OO.ui.confirm( $confirmPromptMessage, { actions: [ - { action: 'accept', label: OO.ui.msg( 'ooui-dialog-process-retry' ), flags: 'primary' }, - { action: 'reject', label: OO.ui.msg( 'ooui-dialog-message-reject' ), flags: 'safe' } + { action: 'accept', label: ve.msg( 'ooui-dialog-process-retry' ), flags: 'primary' }, + { action: 'reject', label: ve.msg( 'ooui-dialog-message-reject' ), flags: 'safe' } ] - } ).done( ( confirmed ) => { + } ).then( ( confirmed ) => { if ( confirmed ) { // Retry load this.load(); @@ -788,7 +800,7 @@ ve.init.mw.DesktopArticleTarget.prototype.onMetaItemRemoved = function ( metaIte * @param {ve.dm.MetaItem[]} categoryItems Array of category metaitems to display */ ve.init.mw.DesktopArticleTarget.prototype.rebuildCategories = function ( categoryItems ) { - this.renderCategories( categoryItems ).done( ( $categories ) => { + this.renderCategories( categoryItems ).then( ( $categories ) => { // Clone the existing catlinks for any specific properties which might // be needed by the rest of the page. Also gives us a not-attached // version, which we can pass to wikipage.categories as it requests. @@ -836,6 +848,8 @@ ve.init.mw.DesktopArticleTarget.prototype.saveComplete = function ( data ) { $( '#t-permalink' ).add( '#coll-download-as-rl' ).find( 'a' ).each( ( i, el ) => { const permalinkUrl = new URL( el.href ); permalinkUrl.searchParams.set( 'oldid', data.newrevid ); + // permalinkUrl is safe + // eslint-disable-next-line local/no-unsanitized-href $( el ).attr( 'href', permalinkUrl.toString() ); } ); } @@ -861,7 +875,7 @@ ve.init.mw.DesktopArticleTarget.prototype.serialize = function () { // Parent method const promise = ve.init.mw.DesktopArticleTarget.super.prototype.serialize.apply( this, arguments ); - return promise.fail( ( error, response ) => { + return promise.then( null, ( error, response ) => { const $errorMessages = this.extractErrorMessages( response ); OO.ui.alert( $errorMessages ); @@ -889,26 +903,23 @@ ve.init.mw.DesktopArticleTarget.prototype.onToolbarMetaButtonClick = function () * 'Edit' and single edit tab are bound in mw.DesktopArticleTarget.init. */ ve.init.mw.DesktopArticleTarget.prototype.setupSkinTabs = function () { - if ( this.isViewPage ) { - const namespaceNumber = mw.config.get( 'wgNamespaceNumber' ); - const namespaceName = mw.config.get( 'wgCanonicalNamespace' ); - const isTalkNamespace = mw.Title.isTalkNamespace( namespaceNumber ); - // Title::getNamespaceKey() - let namespaceKey = namespaceName.toLowerCase() || 'main'; - if ( namespaceKey === 'file' ) { - namespaceKey = 'image'; - } - let namespaceTabId; - // SkinTemplate::buildContentNavigationUrls() - if ( isTalkNamespace ) { - namespaceTabId = 'ca-talk'; - } else { - namespaceTabId = 'ca-nstab-' + namespaceKey; - } - // Allow instant switching back to view mode, without refresh - $( '#ca-view' ).add( '#' + namespaceTabId ).find( 'a' ) - .on( 'click.ve-target', this.onViewTabClick.bind( this ) ); + const namespaceNumber = mw.config.get( 'wgNamespaceNumber' ); + const namespaceName = mw.config.get( 'wgCanonicalNamespace' ); + const isTalkNamespace = mw.Title.isTalkNamespace( namespaceNumber ); + // Title::getNamespaceKey() + let namespaceKey = namespaceName.toLowerCase() || 'main'; + if ( namespaceKey === 'file' ) { + namespaceKey = 'image'; } + let namespaceTabId; + // SkinTemplate::buildContentNavigationUrls() + if ( isTalkNamespace ) { + namespaceTabId = 'ca-talk'; + } else { + namespaceTabId = 'ca-nstab-' + namespaceKey; + } + $( '#ca-view' ).add( '#' + namespaceTabId ).find( 'a' ) + .on( 'click.ve-target', this.onViewTabClick.bind( this ) ); // Used by Extension:GuidedTour mw.hook( 've.skinTabSetupComplete' ).fire(); @@ -1232,13 +1243,9 @@ ve.init.mw.DesktopArticleTarget.prototype.replacePageContent = function ( ); } - // Intentionally treated as HTML + // Intentionally treated as HTML (message is parsed) // eslint-disable-next-line no-jquery/no-html - $( '#footer-info-lastmod' ).html( ' ' + mw.msg( - 'lastmodifiedat', - lastModified.date, - lastModified.time - ) ); + $( '#footer-info-lastmod' ).html( ' ' + lastModified.message ); } this.$originalCategories = null; @@ -1460,14 +1467,18 @@ ve.init.mw.DesktopArticleTarget.prototype.switchToFallbackWikitextEditor = funct /** * @inheritdoc */ -ve.init.mw.DesktopArticleTarget.prototype.reloadSurface = function () { +ve.init.mw.DesktopArticleTarget.prototype.reloadSurface = function ( newMode ) { this.activating = true; this.activatingDeferred = ve.createDeferred(); // Parent method ve.init.mw.DesktopArticleTarget.super.prototype.reloadSurface.apply( this, arguments ); - this.activatingDeferred.done( () => { + this.activatingDeferred.then( () => { + if ( newMode === 'source' ) { + mw.hook( 've.wikitextInteractive' ).fire(); + } + this.updateHistoryState(); this.afterActivate(); this.setupTriggerListeners(); diff --git a/modules/ve-mw/init/targets/ve.init.mw.MobileArticleTarget.js b/modules/ve-mw/init/targets/ve.init.mw.MobileArticleTarget.js index f8fe746d18..7d9f73ec30 100644 --- a/modules/ve-mw/init/targets/ve.init.mw.MobileArticleTarget.js +++ b/modules/ve-mw/init/targets/ve.init.mw.MobileArticleTarget.js @@ -21,12 +21,11 @@ * @param {Object} [config.toolbarConfig] * @param {string|null} [config.section] Number of the section target should scroll to */ -ve.init.mw.MobileArticleTarget = function VeInitMwMobileArticleTarget( overlay, config ) { +ve.init.mw.MobileArticleTarget = function VeInitMwMobileArticleTarget( overlay, config = {} ) { this.overlay = overlay; this.$overlay = overlay.$el; this.$overlaySurface = overlay.$el.find( '.surface' ); - config = config || {}; config.toolbarConfig = ve.extendObject( { actions: false }, config.toolbarConfig ); @@ -52,12 +51,16 @@ OO.inheritClass( ve.init.mw.MobileArticleTarget, ve.init.mw.ArticleTarget ); /* Static Properties */ ve.init.mw.MobileArticleTarget.static.toolbarGroups = [ - // History + // Back + { + name: 'back', + include: [ 'back' ], + excludeFromTargetWidget: true + }, { name: 'history', include: [ 'undo' ] }, - // Style { name: 'style', classes: [ 've-test-toolbar-style' ], @@ -71,22 +74,65 @@ ve.init.mw.MobileArticleTarget.static.toolbarGroups = [ promote: [ 'bold', 'italic' ], demote: [ 'strikethrough', 'code', 'underline', 'language', 'clear' ] }, - // Link { name: 'link', include: [ 'link' ] }, - // Placeholder for reference tools (e.g. Cite and/or Citoid) { - name: 'reference' + name: 'insert', + label: OO.ui.deferMsg( 'visualeditor-toolbar-insert' ), + title: OO.ui.deferMsg( 'visualeditor-toolbar-insert' ), + narrowConfig: { + invisibleLabel: true, + icon: 'add' + }, + // This is the default for include=*, but that's not guaranteed: + type: 'list' + }, + { + name: 'editMode', + type: 'list', + icon: 'edit', + title: ve.msg( 'visualeditor-mweditmode-tooltip' ), + label: ve.msg( 'visualeditor-mweditmode-tooltip' ), + invisibleLabel: true, + include: [ { group: 'editMode' } ], + excludeFromTargetWidget: true + }, + { + name: 'save', + type: 'bar', + include: [ 'showSave' ], + excludeFromTargetWidget: true } ]; +const mobileInsertMenu = mw.config.get( 'wgVisualEditorConfig' ).mobileInsertMenu; +const insertGroupIndex = ve.init.mw.MobileArticleTarget.static.toolbarGroups.findIndex( ( toolGroup ) => toolGroup.name === 'insert' ); +if ( mobileInsertMenu ) { + const insertGroup = ve.init.mw.MobileArticleTarget.static.toolbarGroups[ insertGroupIndex ]; + if ( mobileInsertMenu === true ) { + insertGroup.include = '*'; + insertGroup.forceExpand = [ 'transclusion', 'insertTable' ]; + insertGroup.promote = [ 'transclusion', 'insertTable' ]; + insertGroup.exclude = [ { group: 'format' }, { group: 'history' }, { group: 'structure' }, 'gallery', 'media', 'mwSignature' ]; + } else { + insertGroup.include = mobileInsertMenu; + // Citoid sets this up, so we need to force it for everything: + insertGroup.forceExpand = mobileInsertMenu; + } +} else { + // Feature disabled, remove the insert group + ve.init.mw.MobileArticleTarget.static.toolbarGroups.splice( insertGroupIndex, 1 ); +} + ve.init.mw.MobileArticleTarget.static.trackingName = 'mobile'; // FIXME Some of these users will be on tablets, check for this ve.init.mw.MobileArticleTarget.static.platformType = 'phone'; +ve.init.mw.MobileArticleTarget.static.enforceResizesContent = true; + /* Methods */ /** @@ -242,7 +288,7 @@ ve.init.mw.MobileArticleTarget.prototype.onSurfaceScroll = function () { /** * @inheritdoc */ -ve.init.mw.MobileArticleTarget.prototype.createSurface = function ( dmDoc, config ) { +ve.init.mw.MobileArticleTarget.prototype.createSurface = function ( dmDoc, config = {} ) { if ( this.overlay.isNewPage ) { config = ve.extendObject( { placeholder: this.overlay.options.placeholder @@ -330,13 +376,10 @@ ve.init.mw.MobileArticleTarget.prototype.afterSurfaceReady = function () { ve.init.mw.MobileArticleTarget.prototype.adjustContentPadding = function () { const surface = this.getSurface(), surfaceView = surface.getView(), - toolbarHeight = this.getToolbar().$element[ 0 ].clientHeight; + paddingTop = surface.getPadding().top; - surface.setPadding( { - top: toolbarHeight - } ); - surfaceView.$attachedRootNode.css( 'padding-top', toolbarHeight ); - surface.$placeholder.css( 'padding-top', toolbarHeight ); + surfaceView.$attachedRootNode.css( 'padding-top', paddingTop ); + surface.$placeholder.css( 'padding-top', paddingTop ); surfaceView.emit( 'position' ); surface.scrollSelectionIntoView(); }; @@ -430,46 +473,40 @@ ve.init.mw.MobileArticleTarget.prototype.saveFail = function ( doc, saveData, co * @inheritdoc */ ve.init.mw.MobileArticleTarget.prototype.tryTeardown = function () { - this.overlay.onExitClick( $.Event() ); + // This is working around the MobileFrontend overlay manager requiring + // that the exit/cancel callbacks be called synchronously, which means + // the cancel callback is unreliable for telling whether the teardown was + // actually canceled. + const deferred = ve.createDeferred(); + const onClosing = ( win, compatClosing, data ) => { + // If we're not receiving the only data that would trigger + // EditorOverlay to do the teardown... + if ( !( data && data.action === 'discard' ) ) { + deferred.reject(); + } + }; + this.overlay.onBeforeExit( () => { + // exit; if this is called we're *actually* exiting. + this.overlay.hide(); + deferred.resolve(); + if ( this.overlay.windowManager ) { + this.overlay.windowManager.off( 'closing', onClosing ); + } + }, () => { + // cancel; this is called just before the "are you sure?" dialog is + // shown. Later the exit callback will be called if the user chooses + // not to cancel after all. + this.overlay.windowManager.once( 'closing', onClosing ); + } ); + return deferred.promise(); }; /** * @inheritdoc */ -ve.init.mw.MobileArticleTarget.prototype.setupToolbar = function ( surface ) { - const originalToolbarGroups = this.toolbarGroups; - - // We don't want any of these tools to show up in subordinate widgets, so we - // temporarily add them here. We need to do it _here_ rather than in their - // own static variable to make sure that other tools which meddle with - // toolbarGroups (Cite, mostly) have a chance to do so. - this.toolbarGroups = [ - // Back - { - name: 'back', - include: [ 'back' ] - }, - ...this.toolbarGroups, - { - name: 'editMode', - type: 'list', - icon: 'edit', - title: ve.msg( 'visualeditor-mweditmode-tooltip' ), - label: ve.msg( 'visualeditor-mweditmode-tooltip' ), - invisibleLabel: true, - include: [ { group: 'editMode' } ] - }, - { - name: 'save', - type: 'bar', - include: [ 'showSave' ] - } - ]; - +ve.init.mw.MobileArticleTarget.prototype.setupToolbar = function () { // Parent method - ve.init.mw.MobileArticleTarget.super.prototype.setupToolbar.call( this, surface ); - - this.toolbarGroups = originalToolbarGroups; + ve.init.mw.MobileArticleTarget.super.prototype.setupToolbar.apply( this, arguments ); this.toolbar.$element.addClass( 've-init-mw-mobileArticleTarget-toolbar' ); this.toolbar.$popups.addClass( 've-init-mw-mobileArticleTarget-toolbar-popups' ); @@ -482,6 +519,9 @@ ve.init.mw.MobileArticleTarget.prototype.attachToolbar = function () { // Move the toolbar to the overlay header this.overlay.$el.find( '.overlay-header > .toolbar' ).append( this.toolbar.$element ); this.toolbar.initialize(); + // MobileFrontend handles toolbar floating, but mark it as floating so we + // calculate a height for surface padding. + this.toolbar.float(); }; /** diff --git a/modules/ve-mw/init/targets/ve.init.mw.Target.js b/modules/ve-mw/init/targets/ve.init.mw.Target.js index 2a56df59d0..ed703ed6e4 100644 --- a/modules/ve-mw/init/targets/ve.init.mw.Target.js +++ b/modules/ve-mw/init/targets/ve.init.mw.Target.js @@ -35,6 +35,14 @@ ve.init.mw.Target = function VeInitMwTarget( config ) { OO.inheritClass( ve.init.mw.Target, ve.init.Target ); +/* Events */ + +/** + * Fired when the target has been torn down + * + * @event ve.init.mw.Target#teardown + */ + /* Static Properties */ /** @@ -75,10 +83,6 @@ ve.init.mw.Target.static.toolbarGroups = [ name: 'link', include: [ 'link' ] }, - // Placeholder for reference tools (e.g. Cite and/or Citoid) - { - name: 'reference' - }, { name: 'structure', type: 'list', @@ -307,7 +311,10 @@ ve.init.mw.Target.prototype.createTargetWidget = function ( config ) { // Reset to visual mode for target widgets modes: [ 'visual' ], defaultMode: 'visual', - toolbarGroups: this.toolbarGroups.filter( ( group ) => group.align !== 'after' ), + toolbarGroups: this.toolbarGroups.filter( ( group ) => !group.excludeFromTargetWidget && + // Deprecated: Don't rely on alignment to exclude from target widgets, use + // excludeFromTargetWidget instead. + group.align !== 'after' ), surfaceClasses: this.getSurfaceClasses() }, config ) ); }; @@ -315,7 +322,7 @@ ve.init.mw.Target.prototype.createTargetWidget = function ( config ) { /** * @inheritdoc */ -ve.init.mw.Target.prototype.createSurface = function ( dmDoc, config ) { +ve.init.mw.Target.prototype.createSurface = function ( dmDoc, config = {} ) { if ( config && config.mode === 'source' ) { const importRules = ve.copy( this.constructor.static.importRules ); importRules.all = importRules.all || {}; @@ -427,15 +434,7 @@ ve.init.mw.Target.prototype.setSurface = function ( surface ) { * @param {ve.init.SafeStorage} [config.storage] Storage interface * @param {number} [config.storageExpiry] Storage expiry time in seconds (optional) */ -ve.init.mw.Target.prototype.initAutosave = function ( config ) { - // Old function signature - // TODO: Remove after fixed downstream - if ( typeof config === 'boolean' ) { - config = { suppressNotification: config }; - } else { - config = config || {}; - } - +ve.init.mw.Target.prototype.initAutosave = function ( config = {} ) { const surfaceModel = this.getSurface().getModel(); if ( config.docId ) { @@ -512,7 +511,9 @@ ve.init.mw.Target.prototype.teardown = function () { this.clearDocState(); // Parent method - return ve.init.mw.Target.super.prototype.teardown.call( this ); + return ve.init.mw.Target.super.prototype.teardown.call( this ).then( () => { + this.emit( 'teardown' ); + } ); }; /** @@ -601,19 +602,12 @@ ve.init.mw.Target.prototype.getWikitextFragment = function ( doc, useRevision ) * @param {string} wikitext * @param {boolean} pst Perform pre-save transform * @param {ve.dm.Document} [doc] Parse for a specific document, defaults to current surface's + * @param {Object} [ajaxOptions] * @return {jQuery.Promise} Abortable promise */ -ve.init.mw.Target.prototype.parseWikitextFragment = function ( wikitext, pst, doc ) { - let abortable, aborted; - const abortedPromise = ve.createDeferred().reject( 'http', - { textStatus: 'abort', exception: 'abort' } ).promise(); - - function abort() { - aborted = true; - if ( abortable && abortable.abort ) { - abortable.abort(); - } - } +ve.init.mw.Target.prototype.parseWikitextFragment = function ( wikitext, pst, doc, ajaxOptions = {} ) { + const api = this.getContentApi( doc ); + const abortable = api.makeAbortablePromise( ajaxOptions ); // Acquire a temporary user username before previewing or diffing, so that signatures and // user-related magic words display the temp user instead of IP user in the preview. (T331397) @@ -625,19 +619,14 @@ ve.init.mw.Target.prototype.parseWikitextFragment = function ( wikitext, pst, do } return tempUserNamePromise - .then( () => { - if ( aborted ) { - return abortedPromise; - } - return ( abortable = this.getContentApi( doc ).post( { - action: 'visualeditor', - paction: 'parsefragment', - page: this.getPageName( doc ), - wikitext: wikitext, - pst: pst - } ) ); - } ) - .promise( { abort: abort } ); + .then( () => api.post( { + action: 'visualeditor', + paction: 'parsefragment', + page: this.getPageName( doc ), + wikitext: wikitext, + pst: pst + }, ajaxOptions ) ) + .promise( abortable ); }; /** @@ -662,8 +651,7 @@ ve.init.mw.Target.prototype.getPageName = function () { * include action=query, format=json, and formatversion=2 if not specified otherwise. * @return {mw.Api} */ -ve.init.mw.Target.prototype.getContentApi = function ( doc, options ) { - options = options || {}; +ve.init.mw.Target.prototype.getContentApi = function ( doc, options = {} ) { options.parameters = ve.extendObject( { formatversion: 2 }, options.parameters ); return new mw.Api( options ); }; @@ -677,8 +665,7 @@ ve.init.mw.Target.prototype.getContentApi = function ( doc, options ) { * @param {Object} [options] API options * @return {mw.Api} */ -ve.init.mw.Target.prototype.getLocalApi = function ( options ) { - options = options || {}; +ve.init.mw.Target.prototype.getLocalApi = function ( options = {} ) { options.parameters = ve.extendObject( { formatversion: 2 }, options.parameters ); return new mw.Api( options ); }; diff --git a/modules/ve-mw/init/ve.init.mw.ArticleTargetEvents.js b/modules/ve-mw/init/ve.init.mw.ArticleTargetEvents.js index 44b70ab57b..0f1c9fcd72 100644 --- a/modules/ve-mw/init/ve.init.mw.ArticleTargetEvents.js +++ b/modules/ve-mw/init/ve.init.mw.ArticleTargetEvents.js @@ -52,7 +52,7 @@ ve.init.mw.ArticleTargetEvents.prototype.track = function ( topic, data ) { * @param {Object} data Additional data describing the event, encoded as an object */ ve.init.mw.ArticleTargetEvents.prototype.trackTiming = function ( topic, data ) { - if ( topic.indexOf( 'performance.system.serializeforcache' ) === 0 ) { + if ( topic.startsWith( 'performance.system.serializeforcache' ) ) { // HACK: track serializeForCache duration here, because there's no event for that this.timings.serializeForCache = data.duration; } @@ -150,7 +150,7 @@ ve.init.mw.ArticleTargetEvents.prototype.trackSaveError = function ( code ) { specialTypes = [ 'editconflict' ]; let key = 'performance.user.saveError'; - if ( specialTypes.indexOf( code ) !== -1 ) { + if ( specialTypes.includes( code ) ) { key += '.' + code; } this.trackTiming( key, { diff --git a/modules/ve-mw/init/ve.init.mw.Platform.js b/modules/ve-mw/init/ve.init.mw.Platform.js index 70ab00a23f..9edcc0e176 100644 --- a/modules/ve-mw/init/ve.init.mw.Platform.js +++ b/modules/ve-mw/init/ve.init.mw.Platform.js @@ -104,8 +104,9 @@ ve.init.mw.Platform.prototype.formatNumber = function ( number ) { /** * @inheritdoc */ -ve.init.mw.Platform.prototype.getHtmlMessage = function () { - return mw.message.apply( mw.message, arguments ).parseDom().toArray(); +ve.init.mw.Platform.prototype.getHtmlMessage = function ( key, ...args ) { + // eslint-disable-next-line mediawiki/msg-doc + return mw.message( key, ...args ).parseDom().toArray(); }; /** @@ -177,6 +178,11 @@ ve.init.mw.Platform.prototype.setUserConfig = function ( keyOrValueMap, value ) } }; +/** + * @inheritdoc + */ +ve.init.mw.Platform.prototype.canUseUserConfig = mw.user.isNamed; + ve.init.mw.Platform.prototype.createLocalStorage = function () { return this.createConflictableStorage( mw.storage ); }; @@ -314,7 +320,7 @@ ve.init.mw.Platform.prototype.fetchSpecialCharList = function () { characters[ groupName ] = { label: mw.msg( 'special-characters-group-' + groupName ), symbols: this.processSpecialCharSymbols( groupObject ), - attributes: { dir: rtlGroups.indexOf( groupName ) !== -1 ? 'rtl' : 'ltr' } + attributes: { dir: rtlGroups.includes( groupName ) ? 'rtl' : 'ltr' } }; } ); diff --git a/modules/ve-mw/init/ve.init.mw.TargetFactory.js b/modules/ve-mw/init/ve.init.mw.TargetFactory.js new file mode 100644 index 0000000000..7cdd57019d --- /dev/null +++ b/modules/ve-mw/init/ve.init.mw.TargetFactory.js @@ -0,0 +1,81 @@ +/*! + * VisualEditor MediaWiki Initialization TargetFactory class. + * + * @copyright See AUTHORS.txt + */ + +/** + * Target factory. + * + * @class + * @extends OO.Factory + * @constructor + */ +ve.init.mw.TargetFactory = function VeInitMwTargetFactory() { + // Parent constructor + ve.init.mw.TargetFactory.super.call( this ); +}; + +/* Inheritance */ + +OO.inheritClass( ve.init.mw.TargetFactory, OO.Factory ); + +/* Methods */ + +/** + * @inheritdoc + */ +ve.init.mw.TargetFactory.prototype.register = function ( constructor ) { + // Validate arguments + if ( !( constructor.prototype instanceof ve.init.mw.Target ) ) { + throw new Error( 'Targets must be subclasses of ve.init.mw.Target' ); + } + + // Parent method + ve.init.mw.TargetFactory.super.prototype.register.apply( this, arguments ); +}; + +/** + * @inheritdoc + */ +ve.init.mw.TargetFactory.prototype.create = function () { + // Parent method + const target = ve.init.mw.TargetFactory.super.prototype.create.apply( this, arguments ); + + /* + * This hook is designed to replace all the previous post-init + * article editor hooks: + * + * mw.hook( 've.newTarget' ).add( ( target ) => { + * if ( target.constructor.static.name !== 'article' ) { + * return; + * } + * + * // ve.activationComplete + * target.on( 'surfaceReady', () => { + * console.log( 'surface ready' ); + * } ); + * + * // ve.toolbarSaveButton.stateChanged + * target.on( 'toolbarSaveButtonStateChanged', () => { + * console.log( 'toolbar save button changed', target.toolbarSaveButton, target.isSaveable() ); + * } ); + * + * // ve.saveDialog.stateChanged + * target.on( 'saveWorkflowChangePanel', () => { + * console.log( 'save dialog change panel', ve.init.target.saveDialog ); + * } ); + * + * // ve.deactivationComplete + * target.on( 'teardown', () => { + * console.log( 'teardown', ve.init.target.edited ); + * } ); + * } ); + */ + mw.hook( 've.newTarget' ).fire( target ); + + return target; +}; + +/* Initialization */ +ve.init.mw.targetFactory = new ve.init.mw.TargetFactory(); diff --git a/modules/ve-mw/init/ve.init.mw.js b/modules/ve-mw/init/ve.init.mw.js index 99370e86b9..bd77fc6f0e 100644 --- a/modules/ve-mw/init/ve.init.mw.js +++ b/modules/ve-mw/init/ve.init.mw.js @@ -11,9 +11,7 @@ * * @namespace */ -ve.init.mw = { - targetFactory: new OO.Factory() -}; +ve.init.mw = {}; /** * @namespace mw.libs.ve diff --git a/modules/ve-mw/preinit/.eslintrc.json b/modules/ve-mw/preinit/.eslintrc.json index 9835fab301..99f92384c0 100644 --- a/modules/ve-mw/preinit/.eslintrc.json +++ b/modules/ve-mw/preinit/.eslintrc.json @@ -5,6 +5,7 @@ "rules": { "no-jquery/no-extend": "off", "no-jquery/no-deferred": "off", - "no-jquery/no-when": "off" + "no-jquery/no-when": "off", + "no-jquery/no-done-fail": "warn" } } diff --git a/modules/ve-mw/preinit/styles/ve.init.MWVESwitchConfirmDialog.css b/modules/ve-mw/preinit/styles/ve.init.MWVESwitchConfirmDialog.less similarity index 100% rename from modules/ve-mw/preinit/styles/ve.init.MWVESwitchConfirmDialog.css rename to modules/ve-mw/preinit/styles/ve.init.MWVESwitchConfirmDialog.less diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.css b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.less similarity index 74% rename from modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.css rename to modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.less index 265d14b930..1337bcba8e 100644 --- a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.css +++ b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-apextheme.less @@ -10,9 +10,9 @@ box-shadow: 0 2px 2px 0 rgba( 0, 0, 0, 0.1 ); background-color: #f8fbfd; background-image: linear-gradient( to bottom, #fff 0, #f1f7fb 100% ); -} -.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating, -.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-open { - height: 44px; + &-floating, + &-open { + height: 44px; + } } diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-monobook.css b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-monobook.less similarity index 100% rename from modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-monobook.css rename to modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-monobook.less diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-vector-2022.less b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-vector-2022.less index 51db9ea765..e817b8e5fc 100644 --- a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-vector-2022.less +++ b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-vector-2022.less @@ -5,10 +5,17 @@ * @license The MIT License (MIT); see LICENSE.txt */ +// Temporarily disable TOC in edit mode until TOC +// works with both visual and source editors (T294950) +.ve-activated .vector-toc { + display: none; +} + .ve-init-mw-desktopArticleTarget-toolbar, .ve-init-mw-desktopArticleTarget-toolbarPlaceholder, .ve-ui-overlay-local, -.ve-ui-overlay-global { +.ve-ui-overlay-global, +.ve-ui-sidebarDialogWindowManager { font-size: 0.875rem; } @@ -31,6 +38,8 @@ .mw-body-content { grid-area: content; + font-size: var( --font-size-medium ); + line-height: var( --line-height-content ); } } @@ -44,3 +53,20 @@ .ve-init-mw-desktopArticleTarget .ve-init-mw-target-surface > .ve-ce-surface .ve-ce-attachedRootNode { min-height: 15em; } + +.ve-init-mw-desktopArticleTarget-toolbar { + // Vector 2022 has no side borders, so there's no need for side padding in toolbar dialogs + .ve-ui-toolbarDialog-position-above, + .ve-ui-toolbarDialog-position-below { + &.ve-ui-toolbarDialog-padded .oo-ui-window-body { + padding-left: 0; + padding-right: 0; + } + } + + .ve-ui-toolbarDialog-position-side { + &.ve-ui-toolbarDialog-padded .oo-ui-window-body { + padding-right: 0; + } + } +} diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.css b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.css deleted file mode 100644 index 1fa41c7da3..0000000000 --- a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.css +++ /dev/null @@ -1,17 +0,0 @@ -/*! - * VisualEditor MediaWiki DesktopArticleTarget WikimediaUI theme init styles. - * - * @copyright See AUTHORS.txt - * @license The MIT License (MIT); see LICENSE.txt - */ - -.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar { - height: 42px; - border-bottom: 1px solid #c8ccd1; - box-shadow: 0 1px 1px 0 rgba( 0, 0, 0, 0.1 ); -} - -.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating, -.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-open { - height: 42px; -} diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.less b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.less new file mode 100644 index 0000000000..2c4655d553 --- /dev/null +++ b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init-wikimediatheme.less @@ -0,0 +1,19 @@ +/*! + * VisualEditor MediaWiki DesktopArticleTarget WikimediaUI theme init styles. + * + * @copyright See AUTHORS.txt + * @license The MIT License (MIT); see LICENSE.txt + */ + +.ve-init-mw-desktopArticleTarget-toolbarPlaceholder { + &-bar { + height: 42px; + border-bottom: 1px solid #c8ccd1; + box-shadow: 0 1px 1px 0 rgba( 0, 0, 0, 0.1 ); + } + + &-floating, + &-open { + height: 42px; + } +} diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init.less b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init.less index 6954b96931..d336637136 100644 --- a/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init.less +++ b/modules/ve-mw/preinit/styles/ve.init.mw.DesktopArticleTarget.init.less @@ -65,7 +65,6 @@ pointer-events: none; -webkit-user-select: none; -moz-user-select: none; - -ms-user-select: none; user-select: none; opacity: 0.5; } @@ -75,7 +74,6 @@ /* Override the styles above to allow the heading to be selected, for copy-pasting */ -webkit-user-select: text; -moz-user-select: text; - -ms-user-select: text; user-select: text; pointer-events: auto; cursor: text; @@ -91,7 +89,7 @@ &:hover { /* focusableNode highlight equivalent styling */ - background: #e9f2fd; + background: fade( #6da9f7, 15% ); } a { @@ -143,14 +141,8 @@ display: none !important; /* stylelint-disable-line declaration-no-important */ } -/* Section edit links */ - -.mw-editsection { - &::before { - content: '\200B'; - } - - a { - white-space: nowrap; - } +/* Category edit link */ +.ve-init-mw-desktopArticleTarget-categoryEdit { + float: right; + margin-top: 1ex; } diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DiffPage-minerva.less b/modules/ve-mw/preinit/styles/ve.init.mw.DiffPage-minerva.less new file mode 100644 index 0000000000..b6a7b27d5c --- /dev/null +++ b/modules/ve-mw/preinit/styles/ve.init.mw.DiffPage-minerva.less @@ -0,0 +1,7 @@ +@import 'mediawiki.skin.variables.less'; + +@media screen and ( max-width: @max-width-breakpoint-mobile ) { + #mw-diff-ntitle1 { // stylelint-disable-line selector-max-id + z-index: 2; + } +} diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.DiffPage.less b/modules/ve-mw/preinit/styles/ve.init.mw.DiffPage.less index a86c322139..5925ba6ae1 100644 --- a/modules/ve-mw/preinit/styles/ve.init.mw.DiffPage.less +++ b/modules/ve-mw/preinit/styles/ve.init.mw.DiffPage.less @@ -5,8 +5,6 @@ * @license The MIT License (MIT); see LICENSE.txt */ -@import 'mediawiki.mixins.less'; - .client-nojs .ve-init-mw-diffPage-diffMode { display: none; } @@ -17,7 +15,6 @@ } .ve-init-mw-diffPage-revSlider-visual { - @new: #39b79c; @old: #d73c34; @@ -63,20 +60,20 @@ .mw-revslider-pointer { &.mw-revslider-pointer-newer { + background-image: linear-gradient( lighten( @new, 30% ), @new ); border-color: @new; - .vertical-gradient( lighten( @new, 30% ), @new ); &:hover { - .vertical-gradient( lighten( @new, 40% ), @new ); + background-image: linear-gradient( lighten( @new, 40% ), @new ); } } &.mw-revslider-pointer-older { + background-image: linear-gradient( lighten( @old, 30% ), @old ); border-color: @old; - .vertical-gradient( lighten( @old, 30% ), @old ); &:hover { - .vertical-gradient( lighten( @old, 40% ), @old ); + background-image: linear-gradient( lighten( @old, 40% ), @old ); } } } diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.css b/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.less similarity index 64% rename from modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.css rename to modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.less index c01fa48cf7..aed499d3ab 100644 --- a/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.css +++ b/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-apextheme.less @@ -10,10 +10,10 @@ background: #fff; border-radius: 0.25em; box-shadow: 0 0.1em 0.5em rgba( 0, 0, 0, 0.15 ); -} -.ve-init-mw-progressBarWidget-bar { - border-right: 1px solid #ccc; - background: #cde7f4; - background-image: linear-gradient( to bottom, #eaf4fa 0%, #b0d9ee 100% ); + &-bar { + border-right: 1px solid #ccc; + background: #cde7f4; + background-image: linear-gradient( to bottom, #eaf4fa 0%, #b0d9ee 100% ); + } } diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.css b/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.less similarity index 81% rename from modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.css rename to modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.less index 6f55ccd77e..947ba45670 100644 --- a/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.css +++ b/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget-wikimediatheme.less @@ -12,9 +12,9 @@ border: 1px solid #36c; border-radius: 0.875em; box-shadow: 0 1px 1px rgba( 0, 0, 0, 0.15 ); -} -.ve-init-mw-progressBarWidget-bar { - background-color: #36c; - height: 0.875em; + &-bar { + background-color: #36c; + height: 0.875em; + } } diff --git a/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.css b/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.less similarity index 77% rename from modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.css rename to modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.less index a15c15ce1a..360687bfac 100644 --- a/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.css +++ b/modules/ve-mw/preinit/styles/ve.init.mw.ProgressBarWidget.less @@ -9,9 +9,9 @@ height: 1em; overflow: hidden; margin: 0 25%; -} -.ve-init-mw-progressBarWidget-bar { - height: 1em; - width: 0; + &-bar { + height: 1em; + width: 0; + } } diff --git a/modules/ve-mw/preinit/ve.init.MWEditModeTool.js b/modules/ve-mw/preinit/ve.init.MWEditModeTool.js index dab080bab7..c002feacc9 100644 --- a/modules/ve-mw/preinit/ve.init.MWEditModeTool.js +++ b/modules/ve-mw/preinit/ve.init.MWEditModeTool.js @@ -1,5 +1,13 @@ /*! - * VisualEditor MediaWiki edit mode tool classes. + * MediaWiki edit mode tool classes. + * + * These versions of the tools should only be used when building + * a toolbar **outside** of VE, e.g. the toolbar built in + * ve.init.mw.DesktopArticleTarget.init.js that is appended to the + * WikiEditor toolbar. + * + * When using a toolbar in VE, always use the ve.ui.MWEditModeTool + * classes. * * @copyright See AUTHORS.txt * @license The MIT License (MIT); see LICENSE.txt @@ -115,6 +123,22 @@ mw.libs.ve.MWEditModeVisualTool.static.title = mw.libs.ve.MWEditModeVisualTool.static.unavailableTooltip = OO.ui.deferMsg( 'visualeditor-mweditmodeve-tool-unavailable' ); +/** + * @inheritdoc + */ +mw.libs.ve.MWEditModeVisualTool.prototype.isModeAvailable = function () { + // eslint-disable-next-line no-jquery/no-global-selector + if ( $( 'input[name=wpSection]' ).val() === 'new' ) { + // Adding a new section is not supported in visual mode + return false; + } + if ( !mw.config.get( 'wgVisualEditorConfig' ).namespaces.includes( new mw.Title( mw.config.get( 'wgRelevantPageName' ) ).getNamespaceId() ) ) { + return false; + } + // Parent method + return mw.libs.ve.MWEditModeVisualTool.super.prototype.isModeAvailable.apply( this, arguments ); +}; + /** * MediaWiki edit mode source tool. * diff --git a/modules/ve-mw/preinit/ve.init.MWEditingTabDialog.js b/modules/ve-mw/preinit/ve.init.MWEditingTabDialog.js index 03f8f046e5..6d3bbcc726 100644 --- a/modules/ve-mw/preinit/ve.init.MWEditingTabDialog.js +++ b/modules/ve-mw/preinit/ve.init.MWEditingTabDialog.js @@ -79,7 +79,7 @@ mw.libs.ve.EditingTabDialog.prototype.getActionProcess = function ( action ) { this.pushPending(); // Same as ve.init.target.getLocalApi() - new mw.Api().saveOption( 'visualeditor-tabs', action ).done( () => { + new mw.Api().saveOption( 'visualeditor-tabs', action ).then( () => { actionWidget.popPending(); mw.user.options.set( 'visualeditor-tabs', action ); this.close( { action: action } ); diff --git a/modules/ve-mw/preinit/ve.init.mw.ArticleTargetLoader.js b/modules/ve-mw/preinit/ve.init.mw.ArticleTargetLoader.js index 5d9b650ce3..1983533cdf 100644 --- a/modules/ve-mw/preinit/ve.init.mw.ArticleTargetLoader.js +++ b/modules/ve-mw/preinit/ve.init.mw.ArticleTargetLoader.js @@ -19,6 +19,8 @@ * @hideconstructor */ ( function () { + mw.libs.ve = mw.libs.ve || {}; + const conf = mw.config.get( 'wgVisualEditorConfig' ), pluginCallbacks = [], modules = [ @@ -28,6 +30,9 @@ ]; const url = new URL( location.href ); + + mw.libs.ve.initialUrl = url; + // Provide the new wikitext editor if ( mw.user.options.get( 'visualeditor-newwikitext' ) || @@ -36,8 +41,10 @@ modules.push( 'ext.visualEditor.mwwikitext' ); } - // A/B test enrollment for edit check (T342930) - if ( conf.editCheckABTest ) { + // A/B test enrollment for edit check (T389231) + // Note: this happens here rather than inside editcheck so that the bucket will + // get logged for EditAttemptStep init events + if ( conf.editCheck && conf.editCheckABTest ) { let inABTest; if ( mw.user.isAnon() ) { // can't just use mw.user.sessionId() because we need this to last across sessions @@ -48,9 +55,12 @@ } else { inABTest = mw.user.getId() % 2 === 1; } - conf.editCheck = inABTest; + conf.editCheckABTestGroup = inABTest ? 'test' : 'control'; // Communicate the bucket to instrumentation: - mw.config.set( 'wgVisualEditorEditCheckABTestBucket', '2024-02-editcheck-reference-' + ( inABTest ? 'test' : 'control' ) ); + mw.config.set( + 'wgVisualEditorEditCheckABTestBucket', + '2025-09-editcheck-' + conf.editCheckABTest + '-' + ( inABTest ? 'test' : 'control' ) + ); } const editCheck = conf.editCheck || !!url.searchParams.get( 'ecenable' ) || !!window.MWVE_FORCE_EDIT_CHECK_ENABLED; @@ -67,8 +77,6 @@ modules.push( 'ext.visualEditor.mwsignature' ); } - mw.libs.ve = mw.libs.ve || {}; - mw.libs.ve.targetLoader = { /** * Add a plugin module or callback. @@ -107,7 +115,7 @@ ve.track( 'trace.moduleLoad.exit', { mode: mode } ); pluginCallbacks.push( ve.init.platform.getInitializedPromise.bind( ve.init.platform ) ); // Execute plugin callbacks and collect promises - return $.when.apply( $, pluginCallbacks.map( ( callback ) => { + return $.when( ...pluginCallbacks.map( ( callback ) => { try { return callback(); } catch ( e ) { @@ -222,8 +230,10 @@ * @param {string[]} [options.preloadparams] Parameters to substitute into preload if it's used * @return {jQuery.Promise} Abortable promise resolved with a JSON object */ - requestPageData: function ( mode, pageName, options ) { - options = options || {}; + requestPageData: function ( mode, pageName, options = {} ) { + if ( mode === 'visual' && options.section === 'new' ) { + throw new Error( 'Adding new section is not supported in visual mode' ); + } const apiRequest = mode === 'source' ? this.requestWikitext.bind( this, pageName, options ) : this.requestParsoidData.bind( this, pageName, options ); @@ -300,11 +310,10 @@ * is not required for some use cases, e.g. diffing. * @return {jQuery.Promise} Abortable promise resolved with a JSON object */ - requestParsoidData: function ( pageName, options, noRestbase, noMetadata ) { + requestParsoidData: function ( pageName, options = {}, noRestbase = false, noMetadata = false ) { const section = options.section !== undefined ? options.section : null, useRestbase = !noRestbase && ( conf.fullRestbaseUrl || conf.restbaseUrl ) && section === null; - options = options || {}; const data = { action: 'visualeditor', paction: useRestbase ? 'metadata' : 'parse', @@ -495,8 +504,7 @@ * @param {Object} [options] See #requestPageData * @return {jQuery.Promise} Abortable promise resolved with a JSON object */ - requestWikitext: function ( pageName, options ) { - options = options || {}; + requestWikitext: function ( pageName, options = {} ) { const data = { action: 'visualeditor', paction: 'wikitext', diff --git a/modules/ve-mw/preinit/ve.init.mw.ArticleTargetSaver.js b/modules/ve-mw/preinit/ve.init.mw.ArticleTargetSaver.js index 922867755b..e56bac4da5 100644 --- a/modules/ve-mw/preinit/ve.init.mw.ArticleTargetSaver.js +++ b/modules/ve-mw/preinit/ve.init.mw.ArticleTargetSaver.js @@ -33,7 +33,7 @@ * @return {jQuery.Promise} Promise resolved with deflated HTML */ deflate: function ( html ) { - return mw.loader.using( 'mediawiki.deflate' ).then( () => mw.deflate( html ) ); + return mw.loader.using( 'mediawiki.deflate' ).then( () => mw.deflateAsync( html ) ); }, @@ -171,8 +171,7 @@ * @param {Object} [options] * @return {jQuery.Promise} Promise which resolves with API save data, or rejects with error details */ - postHtml: function ( html, cacheKey, extraData, options ) { - options = options || {}; + postHtml: function ( html, cacheKey, extraData = {}, options = {} ) { let data; if ( cacheKey ) { data = $.extend( { cachekey: cacheKey }, extraData ); @@ -215,8 +214,7 @@ * @param {string} [options.eventName] Event name for tracking * @return {jQuery.Promise} Promise which resolves with API save data, or rejects with error details */ - postContent: function ( data, options ) { - options = options || {}; + postContent: function ( data, options = {} ) { const api = options.api || new mw.Api(); let start; diff --git a/modules/ve-mw/preinit/ve.init.mw.DesktopArticleTarget.init.js b/modules/ve-mw/preinit/ve.init.mw.DesktopArticleTarget.init.js index e501769a08..eab9b8609e 100644 --- a/modules/ve-mw/preinit/ve.init.mw.DesktopArticleTarget.init.js +++ b/modules/ve-mw/preinit/ve.init.mw.DesktopArticleTarget.init.js @@ -22,8 +22,7 @@ veactionToMode = { edit: 'visual', editsource: 'source' - }, - availableModes = []; + }; let init = null, conf = null, tabMessages = null, @@ -31,7 +30,7 @@ viewUrl = null, veEditUrl = null, tabPreference = null; - let veEditSourceUrl, targetPromise, url, + let veEditSourceUrl, targetPromise, currentUrl, initialWikitext, oldId, isLoading, tempWikitextEditor, tempWikitextEditorData, $toolbarPlaceholder, $toolbarPlaceholderBar, @@ -200,7 +199,7 @@ let wikitext = tempWikitextEditor.getValue(); // Strip trailing linebreak. Will get re-added in ArticleTarget#parseDocument. - if ( wikitext.slice( -1 ) === '\n' ) { + if ( wikitext.endsWith( '\n' ) ) { wikitext = wikitext.slice( 0, -1 ); } @@ -260,15 +259,13 @@ } /** - * Parse a section value from a query string object - * - * @example - * parseSection( new URL( location.href ).searchParams.get( 'section' ) ) + * Get a section value from a URL * - * @param {string|undefined} section Section value from query object + * @param {URL} url URL * @return {string|null} Section if valid, null otherwise */ - function parseSection( section ) { + function getSectionFromUrl( url ) { + const section = url.searchParams.get( 'section' ); // Section must be a number, 'new' or 'T-' prefixed if ( section && /^(new|\d+|T-\d+)$/.test( section ) ) { return section; @@ -317,7 +314,7 @@ const target = ve.init.mw.targetFactory.create( conf.contentModels[ mw.config.get( 'wgPageContentModel' ) ], { - modes: availableModes, + modes: getAvailableModes(), defaultMode: mode } ); @@ -326,10 +323,10 @@ updateTabs( false ); } ); target.on( 'reactivate', () => { - url = new URL( location.href ); + currentUrl = new URL( location.href ); activateTarget( - getEditModeFromUrl( url ), - parseSection( url.searchParams.get( 'section' ) ) + getEditModeFromUrl( currentUrl ), + getSectionFromUrl( currentUrl ) ); } ); target.setContainer( $targetContainer ); @@ -351,13 +348,10 @@ /** * @private * @param {Object} initData - * @param {URL} [linkUrl] + * @param {URL} [url] */ - function trackActivateStart( initData, linkUrl ) { - if ( !linkUrl ) { - linkUrl = url; - } - if ( linkUrl.searchParams.get( 'wvprov' ) === 'sticky-header' ) { + function trackActivateStart( initData, url = currentUrl ) { + if ( url.searchParams.get( 'wvprov' ) === 'sticky-header' ) { initData.mechanism += '-sticky-header'; } ve.track( 'trace.activate.enter', { mode: initData.mode } ); @@ -421,7 +415,7 @@ // user has expressed no choice by opening this editor. (T246259) // Strictly speaking the same thing should happen if visual mode is // available but source mode isn't, but that is never the case. - if ( !init.isVisualAvailable ) { + if ( !init.isVisualAvailable() ) { return $.Deferred().resolve().promise(); } @@ -444,8 +438,14 @@ sectionKey += 'source'; } - $( '#ca-edit a' ).text( getTabMessage( key ) ); - $( '.mw-editsection a' ).text( getTabMessage( sectionKey ) ); + const fallbackSelector = function ( selector, fallback ) { + const $result = $( selector ); + return $result.length > 0 ? $result : $( fallback ); + }; + + // Depending on skin these might contain text nested in a span + fallbackSelector( '#ca-edit a span', '#ca-edit a' ).text( getTabMessage( key ) ); + fallbackSelector( '.mw-editsection a span', '.mw-editsection a' ).text( getTabMessage( sectionKey ) ); } mw.cookie.set( 'VEE', editor, { path: '/', expires: 30 * 86400, prefix: '' } ); @@ -515,7 +515,7 @@ let $heading; $( '#mw-content-text .mw-editsection a:not( .mw-editsection-visualeditor )' ).each( ( i, el ) => { const linkUrl = new URL( el.href ); - if ( section === parseSection( linkUrl.searchParams.get( 'section' ) ) ) { + if ( section === getSectionFromUrl( linkUrl ) ) { $heading = $( el ).closest( '.mw-heading, h1, h2, h3, h4, h5, h6' ); return false; } @@ -594,9 +594,9 @@ // This is used for stats tracking, so do not change! targetName: 'mwTarget', modified: modified, - editintro: url.searchParams.get( 'editintro' ), - preload: url.searchParams.get( 'preload' ), - preloadparams: mw.util.getArrayParam( 'preloadparams', url.searchParams ), + editintro: currentUrl.searchParams.get( 'editintro' ), + preload: currentUrl.searchParams.get( 'preload' ), + preloadparams: mw.util.getArrayParam( 'preloadparams', currentUrl.searchParams ), // If switching to visual with modifications, check if we have wikitext to convert wikitext: mode === 'visual' && modified ? $( '#wpTextbox1' ).textSelection( 'getContents' ) : undefined } ) ); @@ -637,7 +637,7 @@ if ( firstVisibleEditSection && firstVisibleEditSection.id !== 'firstHeading' ) { const firstVisibleSectionLink = firstVisibleEditSection.querySelector( 'a' ); const linkUrl = new URL( firstVisibleSectionLink.href ); - visibleSection = parseSection( linkUrl.searchParams.get( 'section' ) ); + visibleSection = getSectionFromUrl( linkUrl ); const firstVisibleHeading = $( firstVisibleEditSection ).closest( '.mw-heading, h1, h2, h3, h4, h5, h6' )[ 0 ]; visibleSectionOffset = firstVisibleHeading.getBoundingClientRect().top; @@ -671,7 +671,7 @@ // toolbarSetupDeferred resolves slightly before activatePromise, use done // to run in the same paint cycle as the VE toolbar being drawn - target.toolbarSetupDeferred.done( () => { + target.toolbarSetupDeferred.then( () => { hideToolbarPlaceholder(); } ); @@ -708,12 +708,12 @@ // Replace the current state with one that is tagged as ours, to prevent the // back button from breaking when used to exit VE. FIXME: there should be a better // way to do this. See also similar code in the DesktopArticleTarget constructor. - history.replaceState( { tag: 'visualeditor' }, '', url ); + history.replaceState( { tag: 'visualeditor' }, '', currentUrl ); // Set action=edit or veaction=edit/editsource // Use linkUrl to preserve parameters like 'editintro' (T56029) history.pushState( { tag: 'visualeditor' }, '', linkUrl || ( mode === 'source' ? veEditSourceUrl : veEditUrl ) ); // Update URL instance - url = linkUrl || veEditUrl; + currentUrl = linkUrl || veEditUrl; activateTarget( mode, section, undefined, modified ); } @@ -751,12 +751,20 @@ function getEditPageEditor() { // This logic matches VisualEditorHooks::getEditPageEditor // !!+ casts '0' to false - const isRedLink = !!+url.searchParams.get( 'redlink' ); + const isRedLink = !!+currentUrl.searchParams.get( 'redlink' ); // On dual-edit-tab wikis, the edit page must mean the user wants wikitext, // unless following a redlink if ( !mw.config.get( 'wgVisualEditorConfig' ).singleEditTab && !isRedLink ) { return 'wikitext'; } + // Adding a new section is not supported in visual mode + if ( currentUrl.searchParams.get( 'section' ) === 'new' ) { + return 'wikitext'; + } + // Force switched from VE + if ( currentUrl.searchParams.has( 'veswitched' ) ) { + return 'wikitext'; + } switch ( tabPreference ) { case 'prefer-ve': @@ -783,17 +791,17 @@ function getAvailableEditPageEditor() { switch ( getEditPageEditor() ) { case 'visualeditor': - if ( init.isVisualAvailable ) { + if ( init.isVisualAvailable() ) { return 'visual'; } - if ( init.isWikitextAvailable ) { + if ( init.isWikitextAvailable() ) { return 'source'; } return null; case 'wikitext': default: - return init.isWikitextAvailable ? 'source' : null; + return init.isWikitextAvailable() ? 'source' : null; } } @@ -842,7 +850,7 @@ conf = mw.config.get( 'wgVisualEditorConfig' ); tabMessages = conf.tabMessages; viewUrl = new URL( mw.util.getUrl( mw.config.get( 'wgRelevantPageName' ) ), location.href ); - url = new URL( location.href ); + currentUrl = new URL( location.href ); // T156998: Don't trust 'oldid' query parameter, it'll be wrong if 'diff' or 'direction' // is set to 'next' or 'prev'. oldId = mw.config.get( 'wgRevisionId' ) || $( 'input[name=parentRevId]' ).val(); @@ -852,7 +860,7 @@ oldId = undefined; } pageExists = !!mw.config.get( 'wgRelevantArticleId' ); - const isViewPage = mw.config.get( 'wgIsArticle' ) && !url.searchParams.has( 'diff' ); + const isViewPage = mw.config.get( 'wgIsArticle' ) && !currentUrl.searchParams.has( 'diff' ); const wgAction = mw.config.get( 'wgAction' ); const isEditPage = wgAction === 'edit' || wgAction === 'submit'; const pageCanLoadEditor = isViewPage || isEditPage; @@ -929,7 +937,7 @@ */ setupEditLinks: function () { // NWE - if ( init.isWikitextAvailable && !isOnlyTabVE() ) { + if ( init.isWikitextAvailable() && !isOnlyTabVE() ) { $( // Edit section links, except VE ones when both editors visible '.mw-editsection a:not( .mw-editsection-visualeditor ),' + @@ -947,6 +955,8 @@ if ( linkUrl.searchParams.has( 'action' ) ) { linkUrl.searchParams.delete( 'action' ); linkUrl.searchParams.set( 'veaction', 'editsource' ); + // linkUrl is safe + // eslint-disable-next-line local/no-unsanitized-href $( el ).attr( 'href', linkUrl.toString() ); } } ); @@ -956,7 +966,7 @@ if ( init.isAvailable ) { // … on two-edit-tab wikis, or single-edit-tab wikis, where the user wants both … if ( - !init.isSingleEditTab && init.isVisualAvailable && + !init.isSingleEditTab && init.isVisualAvailable() && // T253941: This option does not actually disable the editor, only leaves the tabs/links unchanged !( conf.disableForAnons && mw.user.isAnon() ) ) { @@ -964,8 +974,8 @@ init.setupMultiTabSkin(); } else if ( pageCanLoadEditor && ( - ( init.isVisualAvailable && isOnlyTabVE() ) || - ( init.isWikitextAvailable && isOnlyTabWikitext() ) + ( init.isVisualAvailable() && isOnlyTabVE() ) || + ( init.isWikitextAvailable() && isOnlyTabWikitext() ) ) ) { // … on single-edit-tab wikis, where VE or NWE is the user's preferred editor @@ -979,6 +989,20 @@ init.onEditTabClick( isOnlyTabVE() ? 'visual' : 'source', e ); } ); } + + if ( !mw.user.isAnon() && pageCanLoadEditor && init.isVisualAvailable() && ( !init.isSingleEditTab || isOnlyTabVE() ) ) { + // Show a category-edit link for logged in users who would be given VE if they clicked an "edit" link + $( '#catlinks' ).prepend( + $( '' ) + .addClass( 've-init-mw-desktopArticleTarget-categoryEdit mw-editsection-like' ) + .on( 'click', init.onCategoryEditLinkClick ) + .append( + $( '' ).addClass( 'mw-editsection-bracket' ).text( '[' ), + $( '' ).text( mw.msg( 'editsection' ) ), + $( '' ).addClass( 'mw-editsection-bracket' ).text( ']' ) + ) + ); + } } }, @@ -1006,13 +1030,13 @@ // Always bind "Edit source" tab, because we want to handle switching with changes $caEdit.off( '.ve-target' ).on( 'click.ve-target', init.onEditTabClick.bind( init, 'source' ) ); } - if ( pageCanLoadEditor && init.isWikitextAvailable ) { + if ( pageCanLoadEditor && init.isWikitextAvailable() ) { // Only bind "Add topic" tab if NWE is available, because VE doesn't support section // so we never have to switch from it when editing a section $( '#ca-addsection' ).off( '.ve-target' ).on( 'click.ve-target', init.onEditTabClick.bind( init, 'source' ) ); } - if ( init.isVisualAvailable ) { + if ( init.isVisualAvailable() ) { if ( conf.tabPosition === 'before' ) { $caEdit.addClass( 'collapsible' ); } else { @@ -1035,7 +1059,7 @@ // and would preserve the wrong DOM with a diff on top. $editsections.find( '.mw-editsection-visualeditor' ) .off( '.ve-target' ).on( 'click.ve-target', init.onEditSectionLinkClick.bind( init, 'visual' ) ); - if ( init.isWikitextAvailable ) { + if ( init.isWikitextAvailable() ) { // TOOD: Make this less fragile $editsections.find( 'a:not( .mw-editsection-visualeditor )' ) .off( '.ve-target' ).on( 'click.ve-target', init.onEditSectionLinkClick.bind( init, 'source' ) ); @@ -1069,7 +1093,7 @@ if ( !init.isUnmodifiedLeftClick( e ) ) { return; } - if ( !active && mode === 'source' && !init.isWikitextAvailable ) { + if ( !active && mode === 'source' && !init.isWikitextAvailable() ) { // We're not active so we don't need to manage a switch, and // we don't have source mode available so we don't need to // activate VE. Just follow the link. @@ -1083,7 +1107,7 @@ const section = $( e.target ).closest( '#ca-addsection' ).length ? 'new' : null; if ( active ) { - targetPromise.done( ( target ) => { + targetPromise.then( ( target ) => { if ( target.getDefaultMode() === 'source' ) { if ( mode === 'visual' ) { target.switchToVisualEditor(); @@ -1109,7 +1133,7 @@ } ); } else { const link = $( e.target ).closest( 'a' )[ 0 ]; - const linkUrl = link && link.href ? new URL( link.href ) : null; + const linkUrl = link && link.href ? new URL( link.href ) : undefined; if ( section !== null ) { init.activateVe( mode, linkUrl, section ); } else { @@ -1189,21 +1213,54 @@ // Replace the current state with one that is tagged as ours, to prevent the // back button from breaking when used to exit VE. FIXME: there should be a better // way to do this. See also similar code in the DesktopArticleTarget constructor. - history.replaceState( { tag: 'visualeditor' }, '', url ); + history.replaceState( { tag: 'visualeditor' }, '', currentUrl ); // Use linkUrl to preserve the 'section' parameter and others like 'editintro' (T56029) history.pushState( { tag: 'visualeditor' }, '', linkUrl ); // Update URL instance - url = linkUrl; + currentUrl = linkUrl; // Use section from URL if ( section === undefined ) { - section = parseSection( linkUrl.searchParams.get( 'section' ) ); + section = getSectionFromUrl( linkUrl ); } const tPromise = getTarget( mode, section ); activateTarget( mode, section, tPromise ); } }, + onCategoryEditLinkClick: function ( e ) { + if ( !init.isUnmodifiedLeftClick( e ) ) { + return; + } + e.preventDefault(); + if ( isLoading ) { + return; + } + // should perhaps have a new 'type' for 'categories' added? + trackActivateStart( { type: 'page', mechanism: 'click', mode: 'visual' } ); + if ( currentUrl.searchParams.get( 'action' ) !== 'edit' && !( currentUrl.searchParams.get( 'veaction' ) in veactionToMode ) ) { + if ( history.pushState ) { + // Replace the current state with one that is tagged as ours, to prevent the + // back button from breaking when used to exit VE. FIXME: there should be a better + // way to do this. See also similar code in the DesktopArticleTarget constructor. + history.replaceState( { tag: 'visualeditor' }, document.title, currentUrl ); + // Set veaction to edit + history.pushState( { tag: 'visualeditor' }, document.title, veEditUrl ); + } + + // Update mw.Uri instance + currentUrl = veEditUrl; + } + init.disableWelcomeDialog(); + activateTarget( 'visual', null, getTarget( 'visual', null ).then( ( target ) => { + target.once( 'surfaceReady', () => { + const windowAction = ve.ui.actionFactory.create( 'window', target.getSurface() ); + windowAction.open( 'meta', { page: 'categories' } ); + } ); + return target; + } ) ); + }, + /** * Check whether the welcome dialog should be shown. * @@ -1220,7 +1277,7 @@ // Disabled for the current request? this.isWelcomeDialogSuppressed() || // Joining a collab session - url.searchParams.has( 'collabSession' ) || + currentUrl.searchParams.has( 'collabSession' ) || // Hidden using preferences, local storage or cookie? checkPreferenceOrStorage( 'visualeditor-hidebetawelcome', 've-beta-welcome-dialog' ) ); @@ -1300,11 +1357,21 @@ } }; + /** + * Check if a URL doesn't contain any params which would prevent VE from loading, e.g. 'undo' + * + * @param {URL} url + * @return {boolean} URL contains no unsupported params + */ + function isSupportedEditPage( url ) { + return configData.unsupportedEditParams.every( ( param ) => !url.searchParams.has( param ) ); + } + init.isSingleEditTab = conf.singleEditTab && tabPreference !== 'multi-tab'; // On a view page, extend the current URL so extra parameters are carried over // On a non-view page, use viewUrl - veEditUrl = new URL( pageCanLoadEditor ? url : viewUrl ); + veEditUrl = new URL( pageCanLoadEditor ? currentUrl : viewUrl ); if ( oldId ) { veEditUrl.searchParams.set( 'oldid', oldId ); } @@ -1331,25 +1398,31 @@ ( conf.isBeta ? enable : !tempdisable ) && !autodisable ); - // Duplicated in VisualEditor.hooks.php#isVisualAvailable() - init.isVisualAvailable = ( + // Partially duplicated in includes/Services/VisualEditorAvailabilityLookup::isAvailable + init.isVisualAvailable = ( url = currentUrl ) => ( init.isAvailable && // If forced by the URL parameter, skip the namespace check (T221892) and preference check ( url.searchParams.get( 'veaction' ) === 'edit' || ( // Only in enabled namespaces - conf.namespaces.indexOf( new mw.Title( mw.config.get( 'wgRelevantPageName' ) ).getNamespaceId() ) !== -1 && + conf.namespaces.includes( new mw.Title( mw.config.get( 'wgRelevantPageName' ) ).getNamespaceId() ) && // Enabled per user preferences enabledForUser ) ) && + // Only if the current page isn't using unsupported URL parameters + isSupportedEditPage( url ) && + // Only for pages with a supported content model - Object.prototype.hasOwnProperty.call( conf.contentModels, mw.config.get( 'wgPageContentModel' ) ) + Object.prototype.hasOwnProperty.call( conf.contentModels, mw.config.get( 'wgPageContentModel' ) ) && + + // Adding a section is not supported in visual mode + getSectionFromUrl( url ) !== 'new' ); - // Duplicated in VisualEditor.hooks.php#isWikitextAvailable() - init.isWikitextAvailable = ( + // Partially duplicated in includes/Hooks.php#isWikitextAvailable + init.isWikitextAvailable = ( url = currentUrl ) => ( init.isAvailable && // If forced by the URL parameter, skip the checks (T239796) @@ -1365,12 +1438,15 @@ mw.config.get( 'wgPageContentModel' ) === 'wikitext' ); - if ( init.isVisualAvailable ) { - availableModes.push( 'visual' ); - } - - if ( init.isWikitextAvailable ) { - availableModes.push( 'source' ); + function getAvailableModes() { + const availableModes = []; + if ( init.isVisualAvailable() ) { + availableModes.push( 'visual' ); + } + if ( init.isWikitextAvailable() ) { + availableModes.push( 'source' ); + } + return availableModes; } // FIXME: We should do this more elegantly @@ -1390,7 +1466,7 @@ // on this page. See above for why it may be false. mw.libs.ve = $.extend( mw.libs.ve || {}, init ); - if ( init.isVisualAvailable ) { + if ( init.isVisualAvailable() ) { $( 'html' ).addClass( 've-available' ); } else { $( 'html' ).addClass( 've-not-available' ); @@ -1398,38 +1474,28 @@ // for e.g. "Edit" > "Edit source" even when VE is not available. } - /** - * Check if a URL doesn't contain any params which would prevent VE from loading, e.g. 'undo' - * - * @param {URL} editUrl - * @return {boolean} URL contains no unsupported params - */ - function isSupportedEditPage( editUrl ) { - return configData.unsupportedEditParams.every( ( param ) => !editUrl.searchParams.has( param ) ); - } - /** * Get the edit mode for the given URL * - * @param {URL} editUrl Edit URL + * @param {URL} url Edit URL * @return {string|null} 'visual' or 'source', null if the editor is not being loaded */ - function getEditModeFromUrl( editUrl ) { + function getEditModeFromUrl( url ) { if ( mw.config.get( 'wgDiscussionToolsStartNewTopicTool' ) ) { // Avoid conflicts with DiscussionTools return null; } if ( isViewPage && init.isAvailable ) { // On view pages if veaction is correctly set - const mode = veactionToMode[ editUrl.searchParams.get( 'veaction' ) ] || + const mode = veactionToMode[ url.searchParams.get( 'veaction' ) ] || // Always load VE visual mode if collabSession is set - ( editUrl.searchParams.has( 'collabSession' ) ? 'visual' : null ); - if ( mode && availableModes.indexOf( mode ) !== -1 ) { + ( url.searchParams.has( 'collabSession' ) ? 'visual' : null ); + if ( mode && getAvailableModes().includes( mode ) ) { return mode; } } // Edit pages - if ( isEditPage && isSupportedEditPage( editUrl ) ) { + if ( isEditPage && isSupportedEditPage( url ) ) { // User has disabled VE, or we are in view source only mode, or we have landed here with posted data if ( !enabledForUser || $( '#ca-viewsource' ).length || mw.config.get( 'wgAction' ) === 'submit' ) { return null; @@ -1450,7 +1516,7 @@ let showWikitextWelcome = true; const numEditButtons = $( '#ca-edit, #ca-ve-edit' ).length, - section = parseSection( url.searchParams.get( 'section' ) ); + section = getSectionFromUrl( currentUrl ); const requiredSkinElements = $targetContainer.length && @@ -1458,11 +1524,11 @@ // A link to open the editor is technically not necessary if it's going to open itself ( isEditPage || numEditButtons ); - if ( url.searchParams.get( 'action' ) === 'edit' && $( '#wpTextbox1' ).length ) { + if ( currentUrl.searchParams.get( 'action' ) === 'edit' && $( '#wpTextbox1' ).length ) { initialWikitext = $( '#wpTextbox1' ).textSelection( 'getContents' ); } - if ( ( init.isVisualAvailable || init.isWikitextAvailable ) && + if ( ( init.isVisualAvailable() || init.isWikitextAvailable() ) && pageCanLoadEditor && pageIsProbablyEditable && !requiredSkinElements @@ -1480,7 +1546,7 @@ mw.errorLogger.logError( err, 'error.visualeditor' ); } } else if ( init.isAvailable ) { - const mode = getEditModeFromUrl( url ); + const mode = getEditModeFromUrl( currentUrl ); if ( mode ) { showWikitextWelcome = false; trackActivateStart( { @@ -1490,7 +1556,7 @@ } ); activateTarget( mode, section ); } else if ( - init.isVisualAvailable && + init.isVisualAvailable() && pageCanLoadEditor && init.isSingleEditTab ) { @@ -1498,6 +1564,8 @@ // with accesskey 'v' so create one $( document.body ).append( $( '' ) + // veEditUrl is safe + // eslint-disable-next-line local/no-unsanitized-href .attr( { accesskey: mw.msg( 'accesskey-ca-ve-edit' ), href: veEditUrl } ) // Accesskey fires a click event .on( 'click.ve-target', init.onEditTabClick.bind( init, 'visual' ) ) @@ -1507,14 +1575,14 @@ // Add the switch button to WikiEditor on edit pages if ( - init.isVisualAvailable && + init.isVisualAvailable() && isEditPage && $( '#wpTextbox1' ).length ) { mw.loader.load( 'ext.visualEditor.switching' ); mw.hook( 'wikiEditor.toolbarReady' ).add( ( $textarea ) => { - mw.loader.using( 'ext.visualEditor.switching' ).done( () => { - const showPopup = url.searchParams.has( 'veswitched' ) && !mw.user.options.get( 'visualeditor-hidesourceswitchpopup' ), + mw.loader.using( 'ext.visualEditor.switching' ).then( () => { + const showPopup = currentUrl.searchParams.has( 'veswitched' ) && !mw.user.options.get( 'visualeditor-hidesourceswitchpopup' ), toolFactory = new OO.ui.ToolFactory(), toolGroupFactory = new OO.ui.ToolGroupFactory(); @@ -1600,13 +1668,13 @@ pageCanLoadEditor && showWikitextWelcome && // At least one editor is available (T201928) - ( init.isVisualAvailable || init.isWikitextAvailable || $( '#wpTextbox1' ).length ) && + ( init.isVisualAvailable() || init.isWikitextAvailable() || $( '#wpTextbox1' ).length ) && isEditPage && init.shouldShowWelcomeDialog() && // Not on protected pages pageIsProbablyEditable ) { - mw.loader.using( 'ext.visualEditor.welcome' ).done( () => { + mw.loader.using( 'ext.visualEditor.welcome' ).then( () => { // Check shouldShowWelcomeDialog() again: any code that might have called // stopShowingWelcomeDialog() wouldn't have had an opportunity to do that // yet by the first time we checked @@ -1620,7 +1688,7 @@ windowManager.openWindow( welcomeDialog, { - switchable: init.isVisualAvailable, + switchable: init.isVisualAvailable(), editor: 'source' } ) @@ -1635,10 +1703,10 @@ } ); } - if ( url.searchParams.has( 'venotify' ) ) { - url.searchParams.delete( 'venotify' ); + if ( currentUrl.searchParams.has( 'venotify' ) ) { + currentUrl.searchParams.delete( 'venotify' ); // Get rid of the ?venotify= from the URL - history.replaceState( null, '', url ); + history.replaceState( null, '', currentUrl ); } } ); }() ); diff --git a/modules/ve-mw/preinit/ve.init.mw.DiffLoader.js b/modules/ve-mw/preinit/ve.init.mw.DiffLoader.js index d1e59e52c1..d04e9ba93c 100644 --- a/modules/ve-mw/preinit/ve.init.mw.DiffLoader.js +++ b/modules/ve-mw/preinit/ve.init.mw.DiffLoader.js @@ -64,11 +64,11 @@ true ).then( ( response ) => parseDocumentModulePromise.then( () => mw.libs.ve.diffLoader.getModelFromResponse( response, section ) ), - () => { - // Clear promise. Do not cache errors. + ( ...args ) => { + // Clear promise. Do not cache errors. delete revCache[ cacheKey ]; // Let caller handle the error code - return $.Deferred().rejectWith( this, arguments ); + return $.Deferred().reject( ...args ); } ); diff --git a/modules/ve-mw/preinit/ve.utils.parsoid.js b/modules/ve-mw/preinit/ve.utils.parsoid.js index 9a18d5f86f..5681194f1c 100644 --- a/modules/ve-mw/preinit/ve.utils.parsoid.js +++ b/modules/ve-mw/preinit/ve.utils.parsoid.js @@ -90,7 +90,7 @@ mw.libs.ve.stripRestbaseIds = function ( doc ) { mw.libs.ve.reduplicateStyles = function ( element ) { Array.prototype.forEach.call( element.querySelectorAll( 'link[rel~="mw-deduplicated-inline-style"]' ), ( link ) => { const href = link.getAttribute( 'href' ); - if ( !href || href.slice( 0, 'mw-data:'.length ) !== 'mw-data:' ) { + if ( !href || !href.startsWith( 'mw-data:' ) ) { return; } const key = href.slice( 'mw-data:'.length ); @@ -147,7 +147,7 @@ mw.libs.ve.deduplicateStyles = function ( element ) { */ function isFosterablePosition( node ) { const fosterablePositions = [ 'table', 'thead', 'tbody', 'tfoot', 'tr' ]; - return node && fosterablePositions.indexOf( node.parentNode.nodeName.toLowerCase() ) !== -1; + return node && fosterablePositions.includes( node.parentNode.nodeName.toLowerCase() ); } const styleTagKeys = {}; @@ -165,6 +165,7 @@ mw.libs.ve.deduplicateStyles = function ( element ) { // Dupe - replace with a placeholder reference const link = style.ownerDocument.createElement( 'link' ); link.setAttribute( 'rel', 'mw-deduplicated-inline-style' ); + // eslint-disable-next-line local/no-unsanitized-href link.setAttribute( 'href', 'mw-data:' + key ); // Copy attributes from the old `link` node (for selser) @@ -203,7 +204,7 @@ mw.libs.ve.fixFragmentLinks = function ( container, docTitle, prefix ) { prefix = prefix || ''; Array.prototype.forEach.call( container.querySelectorAll( 'a[href*="#"]' ), ( el ) => { let fragment = null; - if ( el.getAttribute( 'href' )[ 0 ] === '#' ) { + if ( el.getAttribute( 'href' ).startsWith( '#' ) ) { // Legacy parser fragment = el.getAttribute( 'href' ).slice( 1 ); } else { @@ -232,6 +233,9 @@ mw.libs.ve.fixFragmentLinks = function ( container, docTitle, prefix ) { target.setAttribute( 'data-mw-id-fixed', '' ); } } + // This utility doesn't need to enforce href safety, that + // is up to the user when building the DOM nodes originally + // eslint-disable-next-line local/no-unsanitized-href el.setAttribute( 'href', '#' + prefix + fragment ); } el.removeAttribute( 'target' ); @@ -307,7 +311,7 @@ mw.libs.ve.getTargetDataFromHref = function ( href, doc ) { const relativeHref = url.toString().replace( /^https?:/i, '' ); // Check if this matches the server's script path (as used by red links) const scriptBase = new URL( mw.config.get( 'wgScript' ), doc.baseURI ).toString().replace( /^https?:/i, '' ); - if ( relativeHref.indexOf( scriptBase ) === 0 ) { + if ( relativeHref.startsWith( scriptBase ) ) { if ( queryLength === 1 && url.searchParams.get( 'title' ) ) { return returnInternalData( url.searchParams.get( 'title' ) + url.hash ); } @@ -318,7 +322,7 @@ mw.libs.ve.getTargetDataFromHref = function ( href, doc ) { const articleBaseRegex = new RegExp( regexEscape( articleBase ).replace( regexEscape( '$1' ), '(.*)' ) ); const matches = relativeHref.match( articleBaseRegex ); if ( matches ) { - if ( queryLength === 0 && matches && matches[ 1 ].split( '#' )[ 0 ].indexOf( '?' ) === -1 ) { + if ( queryLength === 0 && matches && !matches[ 1 ].split( '#' )[ 0 ].includes( '?' ) ) { // Take the relative path return returnInternalData( matches[ 1 ] ); } diff --git a/modules/ve-mw/tests/.eslintrc.json b/modules/ve-mw/tests/.eslintrc.json index 0f04043cb0..494aabf727 100644 --- a/modules/ve-mw/tests/.eslintrc.json +++ b/modules/ve-mw/tests/.eslintrc.json @@ -1,7 +1,7 @@ { "root": true, "extends": [ - "wikimedia/client-common", + "wikimedia/client/common", "wikimedia/language/es2018", "wikimedia/mediawiki", "wikimedia/jquery", @@ -12,13 +12,15 @@ "sinon": "readonly" }, "rules": { + "local/no-unsanitized-href": "off", "compat/compat": [ "error", "last 2 chrome versions, last 2 firefox versions" ], "indent": "off", "no-jquery/no-html": "off", - "no-jquery/no-parse-html-literal": "off" + "no-jquery/no-parse-html-literal": "off", + "no-jquery/no-done-fail": "warn" }, "parserOptions": { "ecmaVersion": 2018 diff --git a/modules/ve-mw/tests/ce/ve.ce.Surface.test.js b/modules/ve-mw/tests/ce/ve.ce.ClipboardHandler.test.js similarity index 68% rename from modules/ve-mw/tests/ce/ve.ce.Surface.test.js rename to modules/ve-mw/tests/ce/ve.ce.ClipboardHandler.test.js index 4c55d1431c..e069472a57 100644 --- a/modules/ve-mw/tests/ce/ve.ce.Surface.test.js +++ b/modules/ve-mw/tests/ce/ve.ce.ClipboardHandler.test.js @@ -1,11 +1,11 @@ /*! - * VisualEditor MediaWiki-specific ContentEditable Surface tests. + * VisualEditor MediaWiki-specific ContentEditable ClipboardHandler tests. * * @copyright See AUTHORS.txt * @license The MIT License (MIT); see LICENSE.txt */ -QUnit.module( 've.ce.Surface (MW)', ve.test.utils.newMwEnvironment() ); +QUnit.module( 've.ce.ClipboardHandler (MW)', ve.test.utils.newMwEnvironment() ); /* Tests */ @@ -24,28 +24,12 @@ QUnit.test( 'beforePaste/afterPaste', ( assert ) => { documentHtml: '

', rangeOrSelection: new ve.Range( 1 ), pasteHtml: '--', - pasteTargetHtml: '--', + clipboardHandlerHtml: '--', fromVe: true, expectedRangeOrSelection: new ve.Range( 5 ), expectedHtml: '

--

', msg: 'RESTBase IDs still stripped if used when important attributes dropped' }, - { - documentHtml: '

', - rangeOrSelection: new ve.Range( 1 ), - pasteHtml: 'a
[1]b', - expectedRangeOrSelection: new ve.Range( 3 ), - expectedHtml: '

ab

', - msg: 'Read mode references stripped' - }, - { - documentHtml: '

', - rangeOrSelection: new ve.Range( 1 ), - pasteHtml: 'a[1]b', - expectedRangeOrSelection: new ve.Range( 5 ), - expectedHtml: '

a[1]b

', - msg: 'VE references not stripped' - }, { documentHtml: '

', rangeOrSelection: new ve.Range( 1 ), @@ -86,5 +70,11 @@ QUnit.test( 'beforePaste/afterPaste', ( assert ) => { } ]; - cases.forEach( ve.test.utils.runSurfacePasteTest.bind( this, assert ) ); + const done = assert.async(); + ( async function () { + for ( const caseItem of cases ) { + await ve.test.utils.runSurfacePasteTest( assert, caseItem ); + } + done(); + }() ); } ); diff --git a/modules/ve-mw/tests/dm/annotations/ve.dm.MWInternalLinkAnnotation.test.js b/modules/ve-mw/tests/dm/annotations/ve.dm.MWInternalLinkAnnotation.test.js index 6b7fec1986..1541e1b461 100644 --- a/modules/ve-mw/tests/dm/annotations/ve.dm.MWInternalLinkAnnotation.test.js +++ b/modules/ve-mw/tests/dm/annotations/ve.dm.MWInternalLinkAnnotation.test.js @@ -137,8 +137,6 @@ QUnit.test( 'toDataElement', ( assert ) => { ]; }; - const converter = new ve.dm.Converter( ve.dm.modelRegistry, ve.dm.nodeFactory, ve.dm.annotationFactory, ve.dm.metaItemFactory ); - const articlePaths = [ { // MediaWiki config settings: @@ -185,9 +183,9 @@ QUnit.test( 'toDataElement', ( assert ) => { // Set up global state (site configuration) mw.config.set( pathData.config ); - const doc = ve.dm.mwExample.createExampleDocumentFromData( [], null, pathData.base ); + const doc = ve.dm.mwExample.createExampleDocumentFromData( [], undefined, pathData.base ); // toDataElement is called during a converter run, so we need to fake up a bit of state to test it. - // This would normally be done by ve.dm.converter.getModelFromDom. + const converter = new ve.dm.ModelFromDomConverter( ve.dm.modelRegistry, ve.dm.nodeFactory, ve.dm.annotationFactory ); converter.doc = doc.getHtmlDocument(); converter.targetDoc = doc.getHtmlDocument(); converter.store = doc.getStore(); diff --git a/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateModel.test.js b/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateModel.test.js index 62113bc2ff..126658dd8d 100644 --- a/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateModel.test.js +++ b/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateModel.test.js @@ -55,18 +55,18 @@ const template = newTemplateModel(); // All parameters are primary as long as the TemplateData documentation isn't known - assert.strictEqual( template.hasParameter( 'bar' ), true ); - assert.strictEqual( template.hasParameter( 'resolved-bar' ), false ); - assert.strictEqual( template.hasParameter( 'alternative-bar' ), false ); + assert.true( template.hasParameter( 'bar' ) ); + assert.false( template.hasParameter( 'resolved-bar' ) ); + assert.false( template.hasParameter( 'alternative-bar' ) ); template.getSpec().setTemplateData( { params: { 'resolved-bar': { aliases: [ 'bar', 'alternative-bar' ] } } } ); // Now "bar" and "alternative-bar" are aliases, and "resolved-bar" is the primary name - assert.strictEqual( template.hasParameter( 'bar' ), true ); - assert.strictEqual( template.hasParameter( 'resolved-bar' ), true ); - assert.strictEqual( template.hasParameter( 'alternative-bar' ), true ); + assert.true( template.hasParameter( 'bar' ) ); + assert.true( template.hasParameter( 'resolved-bar' ) ); + assert.true( template.hasParameter( 'alternative-bar' ) ); } ); QUnit.test( 'getOriginalParameterName', ( assert ) => { diff --git a/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateSpecModel.test.js b/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateSpecModel.test.js index e84cc6b305..1f2f2f4301 100644 --- a/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateSpecModel.test.js +++ b/modules/ve-mw/tests/dm/models/ve.dm.MWTemplateSpecModel.test.js @@ -32,8 +32,8 @@ assert.strictEqual( spec.getDescription(), null, 'getDescription' ); assert.deepEqual( spec.getDocumentedParameterOrder(), [], 'getDocumentedParameterOrder' ); assert.deepEqual( spec.getUndocumentedParameterNames(), [], 'getUndocumentedParameterNames' ); - assert.strictEqual( spec.isKnownParameterOrAlias( 'unknown' ), false, 'isKnownParameterOrAlias' ); - assert.strictEqual( spec.isParameterAlias( 'unknown' ), false, 'isParameterAlias' ); + assert.false( spec.isKnownParameterOrAlias( 'unknown' ), 'isKnownParameterOrAlias' ); + assert.false( spec.isParameterAlias( 'unknown' ), 'isParameterAlias' ); assert.strictEqual( spec.getParameterLabel( 'unknown' ), 'unknown', 'getParameterLabel' ); assert.strictEqual( spec.getParameterDescription( 'unknown' ), null, 'getParameterDescription' ); assert.deepEqual( spec.getParameterSuggestedValues( 'unknown' ), [], 'getParameterSuggestedValues' ); @@ -43,9 +43,9 @@ assert.strictEqual( spec.getParameterType( 'unknown' ), 'string', 'getParameterType' ); assert.deepEqual( spec.getParameterAliases( 'unknown' ), [], 'getParameterAliases' ); assert.strictEqual( spec.getPrimaryParameterName( 'unknown' ), 'unknown', 'getPrimaryParameterName' ); - assert.strictEqual( spec.isParameterRequired( 'unknown' ), false, 'isParameterRequired' ); - assert.strictEqual( spec.isParameterSuggested( 'unknown' ), false, 'isParameterSuggested' ); - assert.strictEqual( spec.isParameterDeprecated( 'unknown' ), false, 'isParameterDeprecated' ); + assert.false( spec.isParameterRequired( 'unknown' ), 'isParameterRequired' ); + assert.false( spec.isParameterSuggested( 'unknown' ), 'isParameterSuggested' ); + assert.false( spec.isParameterDeprecated( 'unknown' ), 'isParameterDeprecated' ); assert.strictEqual( spec.getParameterDeprecationDescription( 'unknown' ), '', 'getParameterDeprecationDescription' ); assert.deepEqual( spec.getKnownParameterNames(), [], 'getKnownParameterNames' ); assert.deepEqual( spec.getParameterSets(), [], 'getParameterSets' ); @@ -60,8 +60,8 @@ assert.strictEqual( spec.getDescription(), null, 'getDescription' ); assert.deepEqual( spec.getDocumentedParameterOrder(), [], 'getDocumentedParameterOrder' ); assert.deepEqual( spec.getUndocumentedParameterNames(), [ 'p1', 'p2' ], 'getUndocumentedParameterNames' ); - assert.strictEqual( spec.isKnownParameterOrAlias( 'p2' ), true, 'isKnownParameterOrAlias' ); - assert.strictEqual( spec.isParameterAlias( 'p2' ), false, 'isParameterAlias' ); + assert.true( spec.isKnownParameterOrAlias( 'p2' ), 'isKnownParameterOrAlias' ); + assert.false( spec.isParameterAlias( 'p2' ), 'isParameterAlias' ); assert.strictEqual( spec.getParameterLabel( 'p2' ), 'p2', 'getParameterLabel' ); assert.strictEqual( spec.getParameterDescription( 'p2' ), null, 'getParameterDescription' ); assert.deepEqual( spec.getParameterSuggestedValues( 'p2' ), [], 'getParameterSuggestedValues' ); @@ -71,9 +71,9 @@ assert.strictEqual( spec.getParameterType( 'p2' ), 'string', 'getParameterType' ); assert.deepEqual( spec.getParameterAliases( 'p2' ), [], 'getParameterAliases' ); assert.strictEqual( spec.getPrimaryParameterName( 'p2' ), 'p2', 'getPrimaryParameterName' ); - assert.strictEqual( spec.isParameterRequired( 'p2' ), false, 'isParameterRequired' ); - assert.strictEqual( spec.isParameterSuggested( 'p2' ), false, 'isParameterSuggested' ); - assert.strictEqual( spec.isParameterDeprecated( 'p2' ), false, 'isParameterDeprecated' ); + assert.false( spec.isParameterRequired( 'p2' ), 'isParameterRequired' ); + assert.false( spec.isParameterSuggested( 'p2' ), 'isParameterSuggested' ); + assert.false( spec.isParameterDeprecated( 'p2' ), 'isParameterDeprecated' ); assert.strictEqual( spec.getParameterDeprecationDescription( 'p2' ), '', 'getParameterDeprecationDescription' ); assert.deepEqual( spec.getKnownParameterNames(), [ 'p1', 'p2' ], 'getKnownParameterNames' ); assert.deepEqual( spec.getParameterSets(), [], 'getParameterSets' ); @@ -91,8 +91,8 @@ assert.strictEqual( spec.getDescription(), null, 'getDescription' ); assert.deepEqual( spec.getDocumentedParameterOrder(), [], 'getDocumentedParameterOrder' ); assert.deepEqual( spec.getUndocumentedParameterNames(), [ 'p1', 'p2' ], 'getUndocumentedParameterNames' ); - assert.strictEqual( spec.isKnownParameterOrAlias( 'p2' ), true, 'isKnownParameterOrAlias' ); - assert.strictEqual( spec.isParameterAlias( 'p2' ), false, 'isParameterAlias' ); + assert.true( spec.isKnownParameterOrAlias( 'p2' ), 'isKnownParameterOrAlias' ); + assert.false( spec.isParameterAlias( 'p2' ), 'isParameterAlias' ); assert.strictEqual( spec.getParameterLabel( 'p2' ), 'p2', 'getParameterLabel' ); assert.strictEqual( spec.getParameterDescription( 'p2' ), null, 'getParameterDescription' ); assert.deepEqual( spec.getParameterSuggestedValues( 'p2' ), [], 'getParameterSuggestedValues' ); @@ -102,9 +102,9 @@ assert.strictEqual( spec.getParameterType( 'p2' ), 'string', 'getParameterType' ); assert.deepEqual( spec.getParameterAliases( 'p2' ), [], 'getParameterAliases' ); assert.strictEqual( spec.getPrimaryParameterName( 'p2' ), 'p2', 'getPrimaryParameterName' ); - assert.strictEqual( spec.isParameterRequired( 'p2' ), false, 'isParameterRequired' ); - assert.strictEqual( spec.isParameterSuggested( 'p2' ), false, 'isParameterSuggested' ); - assert.strictEqual( spec.isParameterDeprecated( 'p2' ), false, 'isParameterDeprecated' ); + assert.false( spec.isParameterRequired( 'p2' ), 'isParameterRequired' ); + assert.false( spec.isParameterSuggested( 'p2' ), 'isParameterSuggested' ); + assert.false( spec.isParameterDeprecated( 'p2' ), 'isParameterDeprecated' ); assert.strictEqual( spec.getParameterDeprecationDescription( 'p2' ), '', 'getParameterDeprecationDescription' ); assert.deepEqual( spec.getKnownParameterNames(), [ 'p1', 'p2' ], 'getKnownParameterNames' ); assert.deepEqual( spec.getParameterSets(), [], 'getParameterSets' ); @@ -148,9 +148,9 @@ assert.strictEqual( spec.getParameterAutoValue( 'p' ), '', 'getParameterAutoValue' ); assert.strictEqual( spec.getParameterType( 'p' ), 'string', 'getParameterType' ); assert.deepEqual( spec.getParameterAliases( 'p' ), [], 'getParameterAliases' ); - assert.strictEqual( spec.isParameterRequired( 'p' ), false, 'isParameterRequired' ); - assert.strictEqual( spec.isParameterSuggested( 'p' ), false, 'isParameterSuggested' ); - assert.strictEqual( spec.isParameterDeprecated( 'p' ), false, 'isParameterDeprecated' ); + assert.false( spec.isParameterRequired( 'p' ), 'isParameterRequired' ); + assert.false( spec.isParameterSuggested( 'p' ), 'isParameterSuggested' ); + assert.false( spec.isParameterDeprecated( 'p' ), 'isParameterDeprecated' ); assert.strictEqual( spec.getParameterDeprecationDescription( 'p' ), '', 'getParameterDeprecationDescription' ); } ) ); @@ -165,8 +165,8 @@ assert.strictEqual( spec.getDescription(), null, 'getDescription' ); assert.deepEqual( spec.getDocumentedParameterOrder(), [ 'p2' ], 'getDocumentedParameterOrder' ); assert.deepEqual( spec.getUndocumentedParameterNames(), [ 'p1' ], 'getUndocumentedParameterNames' ); - assert.strictEqual( spec.isKnownParameterOrAlias( 'p2' ), true, 'isKnownParameterOrAlias' ); - assert.strictEqual( spec.isParameterAlias( 'p2' ), false, 'isParameterAlias' ); + assert.true( spec.isKnownParameterOrAlias( 'p2' ), 'isKnownParameterOrAlias' ); + assert.false( spec.isParameterAlias( 'p2' ), 'isParameterAlias' ); assert.strictEqual( spec.getParameterLabel( 'p2' ), 'p2', 'getParameterLabel' ); assert.strictEqual( spec.getParameterDescription( 'p2' ), null, 'getParameterDescription' ); assert.deepEqual( spec.getParameterSuggestedValues( 'p2' ), [], 'getParameterSuggestedValues' ); @@ -176,9 +176,9 @@ assert.strictEqual( spec.getParameterType( 'p2' ), 'string', 'getParameterType' ); assert.deepEqual( spec.getParameterAliases( 'p2' ), [], 'getParameterAliases' ); assert.strictEqual( spec.getPrimaryParameterName( 'p2' ), 'p2', 'getPrimaryParameterName' ); - assert.strictEqual( spec.isParameterRequired( 'p2' ), false, 'isParameterRequired' ); - assert.strictEqual( spec.isParameterSuggested( 'p2' ), false, 'isParameterSuggested' ); - assert.strictEqual( spec.isParameterDeprecated( 'p2' ), false, 'isParameterDeprecated' ); + assert.false( spec.isParameterRequired( 'p2' ), 'isParameterRequired' ); + assert.false( spec.isParameterSuggested( 'p2' ), 'isParameterSuggested' ); + assert.false( spec.isParameterDeprecated( 'p2' ), 'isParameterDeprecated' ); assert.strictEqual( spec.getParameterDeprecationDescription( 'p2' ), '', 'getParameterDeprecationDescription' ); assert.deepEqual( spec.getKnownParameterNames(), [ 'p1', 'p2' ], 'getKnownParameterNames' ); assert.deepEqual( spec.getParameterSets(), [], 'getParameterSets' ); @@ -215,8 +215,8 @@ assert.strictEqual( spec.getDescription(), 'TemplateDescription', 'getDescription' ); assert.deepEqual( spec.getDocumentedParameterOrder(), [ 'DummyOrder' ], 'getDocumentedParameterOrder' ); assert.deepEqual( spec.getUndocumentedParameterNames(), [], 'getUndocumentedParameterNames' ); - assert.strictEqual( spec.isKnownParameterOrAlias( 'a' ), true, 'isKnownParameterOrAlias' ); - assert.strictEqual( spec.isParameterAlias( 'a' ), true, 'isParameterAlias' ); + assert.true( spec.isKnownParameterOrAlias( 'a' ), 'isKnownParameterOrAlias' ); + assert.true( spec.isParameterAlias( 'a' ), 'isParameterAlias' ); assert.strictEqual( spec.getParameterLabel( 'a' ), 'ParamLabel', 'getParameterLabel' ); assert.strictEqual( spec.getParameterDescription( 'a' ), 'ParamDescription', 'getParameterDescription' ); assert.deepEqual( spec.getParameterSuggestedValues( 'a' ), [ 'SuggestedValue' ], 'getParameterSuggestedValues' ); @@ -226,9 +226,9 @@ assert.strictEqual( spec.getParameterType( 'a' ), 'DummyType', 'getParameterType' ); assert.deepEqual( spec.getParameterAliases( 'a' ), [ 'a' ], 'getParameterAliases' ); assert.strictEqual( spec.getPrimaryParameterName( 'a' ), 'p', 'getPrimaryParameterName' ); - assert.strictEqual( spec.isParameterRequired( 'a' ), true, 'isParameterRequired' ); - assert.strictEqual( spec.isParameterSuggested( 'a' ), true, 'isParameterSuggested' ); - assert.strictEqual( spec.isParameterDeprecated( 'a' ), true, 'isParameterDeprecated' ); + assert.true( spec.isParameterRequired( 'a' ), 'isParameterRequired' ); + assert.true( spec.isParameterSuggested( 'a' ), 'isParameterSuggested' ); + assert.true( spec.isParameterDeprecated( 'a' ), 'isParameterDeprecated' ); assert.strictEqual( spec.getParameterDeprecationDescription( 'a' ), 'DeprecationText', 'getParameterDeprecationDescription' ); assert.deepEqual( spec.getKnownParameterNames(), [ 'p' ], 'getKnownParameterNames' ); assert.deepEqual( spec.getParameterSets(), [ 'DummySet' ], 'getParameterSets' ); @@ -239,14 +239,14 @@ const template = createTemplateMock( [ 'p0', 'p1-alias', 'p2' ] ), spec = new ve.dm.MWTemplateSpecModel( template ); - assert.strictEqual( spec.isParameterAlias( 'p1-alias' ), false ); + assert.false( spec.isParameterAlias( 'p1-alias' ) ); assert.strictEqual( spec.getParameterLabel( 'p1-alias' ), 'p1-alias' ); assert.deepEqual( spec.getKnownParameterNames(), [ 'p0', 'p1-alias', 'p2' ] ); assert.deepEqual( spec.getUndocumentedParameterNames(), [ 'p0', 'p1-alias', 'p2' ], 'getUndocumentedParameterNames' ); spec.setTemplateData( { params: { p1: { aliases: [ 'p1-alias' ] } } } ); - assert.strictEqual( spec.isParameterAlias( 'p1-alias' ), true ); + assert.true( spec.isParameterAlias( 'p1-alias' ) ); assert.strictEqual( spec.getParameterLabel( 'p1-alias' ), 'p1-alias' ); assert.deepEqual( spec.getKnownParameterNames(), [ 'p0', 'p1', 'p2' ] ); assert.deepEqual( spec.getUndocumentedParameterNames(), [ 'p0', 'p2' ], 'getUndocumentedParameterNames' ); @@ -334,7 +334,7 @@ spec.setTemplateData( { params: { p: { deprecated: '' } } } ); - assert.strictEqual( spec.isParameterDeprecated( 'p' ), true ); + assert.true( spec.isParameterDeprecated( 'p' ) ); assert.strictEqual( spec.getParameterDeprecationDescription( 'p' ), '' ); } ); diff --git a/modules/ve-mw/tests/dm/ve.dm.mwExample.js b/modules/ve-mw/tests/dm/ve.dm.mwExample.js index 699f3516e0..afc96483b0 100644 --- a/modules/ve-mw/tests/dm/ve.dm.mwExample.js +++ b/modules/ve-mw/tests/dm/ve.dm.mwExample.js @@ -54,7 +54,7 @@ ve.dm.mwExample.MWTransclusion = { `, blockContent: '

Hello, world!

', - blockContentClipboard: '

Hello, world!

', + blockContentClipboard: '

Hello, world!

', inlineOpen: ve.dm.example.singleLine` @@ -101,7 +101,7 @@ ve.dm.mwExample.MWTransclusion = { data-ve-no-generated-contents="true">   - Foo + Foo `, pairOne: ve.dm.example.singleLine`

@@ -401,13 +383,7 @@ ve.dm.mwExample.mwNowikiAnnotation = { ve.dm.mwExample.mwNowiki = [ { type: 'paragraph' }, ...'Foo', - [ '[', [ ve.dm.mwExample.mwNowikiAnnotation ] ], - [ '[', [ ve.dm.mwExample.mwNowikiAnnotation ] ], - [ 'B', [ ve.dm.mwExample.mwNowikiAnnotation ] ], - [ 'a', [ ve.dm.mwExample.mwNowikiAnnotation ] ], - [ 'r', [ ve.dm.mwExample.mwNowikiAnnotation ] ], - [ ']', [ ve.dm.mwExample.mwNowikiAnnotation ] ], - [ ']', [ ve.dm.mwExample.mwNowikiAnnotation ] ], + ...ve.dm.example.annotateText( '[[Bar]]', ve.dm.mwExample.mwNowikiAnnotation ), ...'Baz', { type: '/paragraph' }, { type: 'internalList' }, @@ -1259,7 +1235,7 @@ ve.dm.mwExample.domToDataCases = { mediaTag: 'img', mw: {}, resource: './Foo', - src: 'data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=', + src: ve.ce.minImgDataUri, type: 'thumb', width: 300 } @@ -1311,7 +1287,7 @@ ve.dm.mwExample.domToDataCases = { mediaTag: 'img', mw: {}, resource: './Foo', - src: 'data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=', + src: ve.ce.minImgDataUri, type: 'thumb', width: 300 } @@ -1355,7 +1331,7 @@ ve.dm.mwExample.domToDataCases = { mediaTag: 'img', mw: {}, resource: './Foo', - src: 'data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=', + src: ve.ce.minImgDataUri, type: 'thumb', width: 300 } @@ -1392,7 +1368,7 @@ ve.dm.mwExample.domToDataCases = { mediaTag: 'img', mw: {}, resource: './Foo', - src: 'data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=', + src: ve.ce.minImgDataUri, type: 'thumb', width: 300 } @@ -1426,7 +1402,7 @@ ve.dm.mwExample.domToDataCases = { mediaTag: 'img', mw: {}, resource: './Foo', - src: 'data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs=', + src: ve.ce.minImgDataUri, type: 'thumb', width: 300 } @@ -1817,26 +1793,64 @@ ve.dm.mwExample.domToDataCases = { { type: '/internalList' } ] }, + 'internal link with template-generated href': { + body: '

x

', + base: ve.dm.mwExample.baseUri, + data: [ + { type: 'paragraph' }, + [ + 'x', + [ { + type: 'link/mwInternal', + attributes: { + hasGeneratedHref: true, + title: 'Test', + normalizedTitle: 'Test', + lookupTitle: 'Test' + } + } ] + ], + { type: '/paragraph' }, + { type: 'internalList' }, + { type: '/internalList' } + ], + fromDataBody: '

x

' + }, + 'internal link with extension-generated href': { + body: '

x

', + base: ve.dm.mwExample.baseUri, + data: [ + { type: 'paragraph' }, + [ + 'x', + [ { + type: 'link/mwInternal', + attributes: { + hasGeneratedHref: true, + title: 'Test', + normalizedTitle: 'Test', + lookupTitle: 'Test' + } + } ] + ], + { type: '/paragraph' }, + { type: 'internalList' }, + { type: '/internalList' } + ], + fromDataBody: '

x

' + }, 'mw:MediaLink (exists)': { body: '

Media:Exists.png

', data: [ { type: 'paragraph' }, - [ 'M', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'e', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'd', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'i', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'a', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ ':', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'E', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'x', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'i', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 's', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 't', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 's', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ '.', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'p', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'n', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], - [ 'g', [ ve.dm.mwExample.MWMediaLinkExistsData ] ], + ...ve.dm.example.annotateText( 'Media:Exists.png', { + type: 'link/mwInternal', + attributes: { + lookupTitle: 'Media:Exists.png', + normalizedTitle: 'Media:Exists.png', + title: 'Media:Exists.png' + } + } ), { type: '/paragraph' }, { type: 'internalList' }, { type: '/internalList' } @@ -1848,23 +1862,14 @@ ve.dm.mwExample.domToDataCases = { body: '

Media:Missing.png

', data: [ { type: 'paragraph' }, - [ 'M', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'e', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'd', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'i', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'a', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ ':', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'M', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'i', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 's', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 's', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'i', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'n', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'g', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ '.', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'p', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'n', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], - [ 'g', [ ve.dm.mwExample.MWMediaLinkMissingData ] ], + ...ve.dm.example.annotateText( 'Media:Missing.png', { + type: 'link/mwInternal', + attributes: { + lookupTitle: 'Media:Missing.png', + normalizedTitle: 'Media:Missing.png', + title: 'Media:Missing.png' + } + } ), { type: '/paragraph' }, { type: 'internalList' }, { type: '/internalList' } @@ -2185,6 +2190,25 @@ ve.dm.mwExample.domToDataCases = { { type: '/internalList' } ] }, + 'display title': { + body: '', + fromDataBody: '', + normalizedBody: '', + data: [ + { + type: 'mwDisplayTitle', + attributes: { + content: 'foo', + localizedPrefix: 'DISPLAYTITLE' + } + }, + { type: '/mwDisplayTitle' }, + { type: 'paragraph', internal: { generated: 'empty' } }, + { type: '/paragraph' }, + { type: 'internalList' }, + { type: '/internalList' } + ] + }, 'thumb image': { body: ve.dm.mwExample.MWBlockImage.html, data: [ diff --git a/modules/ve-mw/tests/ui/actions/ve.ui.FormatAction.test.js b/modules/ve-mw/tests/ui/actions/ve.ui.FormatAction.test.js index 0128e24725..085783ba3d 100644 --- a/modules/ve-mw/tests/ui/actions/ve.ui.FormatAction.test.js +++ b/modules/ve-mw/tests/ui/actions/ve.ui.FormatAction.test.js @@ -67,12 +67,13 @@ QUnit.test.each( 'convert (MW-specific types)', ], ( assert, caseItem ) => { ve.test.utils.runActionTest( - 'format', assert, caseItem.html || ve.dm.example.isolationHtml, false, 'convert', - [ caseItem.type, caseItem.attributes ], caseItem.rangeOrSelection, caseItem.msg, + assert, { - expectedData: caseItem.expectedData, - expectedRangeOrSelection: caseItem.expectedRangeOrSelection, - undo: caseItem.undo + actionName: 'format', + method: 'convert', + html: ve.dm.example.isolationHtml, + args: [ caseItem.type, caseItem.attributes ], + ...caseItem } ); } diff --git a/modules/ve-mw/tests/ui/actions/ve.ui.MWLinkAction.test.js b/modules/ve-mw/tests/ui/actions/ve.ui.MWLinkAction.test.js index 9a53adf9c2..cf3b697cb9 100644 --- a/modules/ve-mw/tests/ui/actions/ve.ui.MWLinkAction.test.js +++ b/modules/ve-mw/tests/ui/actions/ve.ui.MWLinkAction.test.js @@ -118,12 +118,10 @@ QUnit.test( 'MW autolink', ( assert ) => { cases.forEach( ( caseItem ) => { ve.test.utils.runActionTest( - 'link', assert, caseItem.html, false, caseItem.method, [], caseItem.rangeOrSelection, caseItem.msg, + assert, { - expectedData: caseItem.expectedData, - expectedRangeOrSelection: caseItem.expectedRangeOrSelection, - expectedOriginalRangeOrSelection: caseItem.expectedOriginalRangeOrSelection, - undo: caseItem.undo + actionName: 'link', + ...caseItem } ); } ); diff --git a/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.test.js b/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.test.js index 8f44844539..a4aca3e215 100644 --- a/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.test.js +++ b/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.test.js @@ -17,9 +17,34 @@ QUnit.module( 've.ui.MWWikitextStringTransferHandler', ve.test.utils.newMwEnviro } } ) ); -ve.test.utils.runWikitextStringHandlerTest = ( assert, server, string, mimeType, expectedResponse, expectedData, annotations, assertDom, base, msg ) => { +/** + * @param {QUnit.Assert} assert + * @param {Object} caseItem + * @param {Object} caseItem.server + * @param {string} caseItem.pasteString + * @param {string} caseItem.pasteType + * @param {string} caseItem.parsoidResponse + * @param {Array} caseItem.expectedData + * @param {boolean} caseItem.assertDom + * @param {string} caseItem.base + * @param {string} caseItem.msg + */ +ve.test.utils.runWikitextStringHandlerTest = function ( assert, caseItem ) { + if ( arguments.length > 2 ) { + caseItem = { + server: arguments[ 1 ], + pasteString: arguments[ 2 ], + pasteType: arguments[ 3 ], + parsoidResponse: arguments[ 4 ], + expectedData: arguments[ 5 ], + // annotations + assertDom: arguments[ 7 ], + base: arguments[ 8 ], + msg: arguments[ 9 ] + }; + } const done = assert.async(), - item = ve.ui.DataTransferItem.static.newFromString( string, mimeType ), + item = ve.ui.DataTransferItem.static.newFromString( caseItem.pasteString, caseItem.pasteType ), doc = ve.dm.Document.static.newBlankDocument(), mockSurface = { getModel: () => ( { @@ -28,27 +53,16 @@ ve.test.utils.runWikitextStringHandlerTest = ( assert, server, string, mimeType, createProgress: () => ve.createDeferred().promise() }; - ve.fixBase( doc.getHtmlDocument(), doc.getHtmlDocument(), base ); - - // Preprocess the expectedData array - for ( let i = 0; i < expectedData.length; i++ ) { - if ( Array.isArray( expectedData[ i ] ) ) { - for ( let j = 0; j < expectedData[ i ][ 1 ].length; j++ ) { - if ( typeof expectedData[ i ][ 1 ][ j ] === 'number' ) { - expectedData[ i ][ 1 ][ j ] = annotations[ expectedData[ i ][ 1 ][ j ] ]; - } - } - } - } + ve.fixBase( doc.getHtmlDocument(), doc.getHtmlDocument(), caseItem.base ); // Check we match the wikitext string handler const name = ve.ui.dataTransferHandlerFactory.getHandlerNameForItem( item ); - assert.strictEqual( name, 'wikitextString', msg + ': triggers match function' ); + assert.strictEqual( name, 'wikitextString', caseItem.msg + ': triggers match function' ); // Invoke the handler const handler = ve.ui.dataTransferHandlerFactory.create( 'wikitextString', mockSurface, item ); - handler.getInsertableData().done( ( docOrData ) => { + handler.getInsertableData().then( ( docOrData ) => { let actualData, store; if ( docOrData instanceof ve.dm.Document ) { actualData = docOrData.getData(); @@ -58,19 +72,19 @@ ve.test.utils.runWikitextStringHandlerTest = ( assert, server, string, mimeType, store = new ve.dm.HashValueStore(); } ve.dm.example.postprocessAnnotations( actualData, store ); - if ( assertDom ) { - assert.equalLinearDataWithDom( store, actualData, expectedData, msg + ': data match (with DOM)' ); + if ( caseItem.assertDom ) { + assert.equalLinearDataWithDom( store, actualData, caseItem.expectedData, caseItem.msg + ': data match (with DOM)' ); } else { - assert.equalLinearData( actualData, expectedData, msg + ': data match' ); + assert.equalLinearData( actualData, caseItem.expectedData, caseItem.msg + ': data match' ); } done(); } ); - if ( server && expectedResponse ) { - server.respond( [ 200, { 'Content-Type': 'application/json' }, JSON.stringify( { + if ( caseItem.server && caseItem.parsoidResponse ) { + caseItem.server.respond( [ 200, { 'Content-Type': 'application/json' }, JSON.stringify( { visualeditor: { result: 'success', - content: expectedResponse + content: caseItem.parsoidResponse } } ) ] ); } @@ -85,20 +99,17 @@ QUnit.test.each( 'convert', [ pasteString: 'some [[Foo]] text', pasteType: 'text/plain', parsoidResponse: '

some Foo text

', - annotations: [ { - type: 'link/mwInternal', - attributes: { - lookupTitle: 'Foo', - normalizedTitle: 'Foo', - title: 'Foo' - } - } ], expectedData: [ { type: 'paragraph' }, ...'some ', - [ 'F', [ 0 ] ], - [ 'o', [ 0 ] ], - [ 'o', [ 0 ] ], + ...ve.dm.example.annotateText( 'Foo', { + type: 'link/mwInternal', + attributes: { + lookupTitle: 'Foo', + normalizedTitle: 'Foo', + title: 'Foo' + } + } ), ...' text', { type: '/paragraph' }, { type: 'internalList' }, @@ -110,14 +121,6 @@ QUnit.test.each( 'convert', [ pasteString: '*[[Foo]]', pasteType: 'text/plain', parsoidResponse: '', - annotations: [ { - type: 'link/mwInternal', - attributes: { - lookupTitle: 'Foo', - normalizedTitle: 'Foo', - title: 'Foo' - } - } ], expectedData: [ { type: 'list', @@ -128,9 +131,14 @@ QUnit.test.each( 'convert', [ type: 'paragraph', internal: { generated: 'wrapper' } }, - [ 'F', [ 0 ] ], - [ 'o', [ 0 ] ], - [ 'o', [ 0 ] ], + ...ve.dm.example.annotateText( 'Foo', { + type: 'link/mwInternal', + attributes: { + lookupTitle: 'Foo', + normalizedTitle: 'Foo', + title: 'Foo' + } + } ), { type: '/paragraph' }, { type: '/listItem' }, { type: '/list' }, @@ -162,7 +170,6 @@ QUnit.test.each( 'convert', [ pasteString: '==heading==', pasteType: 'text/plain', parsoidResponse: '

foo

bar

', - annotations: [], assertDom: true, expectedData: [ { type: 'mwHeading', attributes: { level: 2 }, originalDomElements: $.parseHTML( '

foo

' ) }, @@ -180,7 +187,6 @@ QUnit.test.each( 'convert', [ pasteString: '== Tudnivalók ==', pasteType: 'text/plain', parsoidResponse: '

Tudnivalók

', - annotations: [], assertDom: true, expectedData: [ { type: 'mwHeading', attributes: { level: 2 }, originalDomElements: $.parseHTML( '

Tudnivalók

' ) }, @@ -195,7 +201,6 @@ QUnit.test.each( 'convert', [ pasteString: 'RFC 1234', pasteType: 'text/plain', parsoidResponse: false, - annotations: [], expectedData: [ { type: 'link/mwMagic', @@ -213,7 +218,6 @@ QUnit.test.each( 'convert', [ pasteString: 'PMID 1234', pasteType: 'text/plain', parsoidResponse: false, - annotations: [], expectedData: [ { type: 'link/mwMagic', @@ -231,7 +235,6 @@ QUnit.test.each( 'convert', [ pasteString: 'ISBN 123456789X', pasteType: 'text/plain', parsoidResponse: false, - annotations: [], expectedData: [ { type: 'link/mwMagic', @@ -250,8 +253,11 @@ QUnit.test.each( 'convert', [ } ); ve.test.utils.runWikitextStringHandlerTest( - assert, this.server, caseItem.pasteString, caseItem.pasteType, caseItem.parsoidResponse, - caseItem.expectedData, caseItem.annotations, caseItem.assertDom, ve.dm.mwExample.baseUri, - caseItem.msg + assert, + { + server: this.server, + base: ve.dm.mwExample.baseUri, + ...caseItem + } ); } ); diff --git a/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.UrlStringTransferHandler.test.js b/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.UrlStringTransferHandler.test.js index ea1635daaf..da1e90cb7c 100644 --- a/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.UrlStringTransferHandler.test.js +++ b/modules/ve-mw/tests/ui/datatransferhandlers/ve.ui.UrlStringTransferHandler.test.js @@ -13,22 +13,18 @@ QUnit.test.each( 'paste', [ msg: 'External link converts to internal link', pasteString: location.origin + mw.Title.newFromText( 'Main Page' ).getUrl(), pasteType: 'text/plain', - expectedData: () => { + expectedData: () => ve.dm.example.annotateText( + 'Main Page', // Explicitly create an internal link so we can assert this behaviour is working - const a = ve.dm.MWInternalLinkAnnotation.static.newFromTitle( mw.Title.newFromText( 'Main Page' ) ).element; - return [ - [ 'M', [ a ] ], - [ 'a', [ a ] ], - [ 'i', [ a ] ], - [ 'n', [ a ] ], - [ ' ', [ a ] ], - [ 'P', [ a ] ], - [ 'a', [ a ] ], - [ 'g', [ a ] ], - [ 'e', [ a ] ] - ]; - } + ve.dm.MWInternalLinkAnnotation.static.newFromTitle( mw.Title.newFromText( 'Main Page' ) ).element + ) } ], ( assert, caseItem ) => { - ve.test.utils.runUrlStringHandlerTest( assert, caseItem.pasteString, caseItem.pasteHtml, caseItem.pasteType, caseItem.expectedData, location.origin, caseItem.msg ); + ve.test.utils.runUrlStringHandlerTest( + assert, + { + base: location.origin, + ...caseItem + } + ); } ); diff --git a/modules/ve-mw/tests/ui/dialogs/ve.ui.MWTransclusionDialog.test.js b/modules/ve-mw/tests/ui/dialogs/ve.ui.MWTransclusionDialog.test.js index be23ac84fe..202f7ea949 100644 --- a/modules/ve-mw/tests/ui/dialogs/ve.ui.MWTransclusionDialog.test.js +++ b/modules/ve-mw/tests/ui/dialogs/ve.ui.MWTransclusionDialog.test.js @@ -39,7 +39,7 @@ windowManager.addWindows( [ dialog ] ); const windowInstance = windowManager.openWindow( dialog, fragment ); - windowInstance.opened.done( () => { + windowInstance.opened.then( () => { const transclusion = dialog.transclusionModel; // mock api call with template data for Test const templateData = { @@ -79,7 +79,7 @@ // change transclusion model (onReplacePart happens automatically) const promise = transclusion.addPart( template ); - promise.done( () => { + promise.then( () => { // checking for parameter checkboxes // (should be 3 because of 2 predefined and 1 undocumented) assert.strictEqual( @@ -88,7 +88,7 @@ dialog.close(); } ); - } ).fail( () => { + }, () => { assert.true( false ); finishTest(); } ); diff --git a/modules/ve-mw/tests/ui/inspectors/ve.ui.FragmentInspector.test.js b/modules/ve-mw/tests/ui/inspectors/ve.ui.FragmentInspector.test.js index 59230ee6db..8d7a38fc0b 100644 --- a/modules/ve-mw/tests/ui/inspectors/ve.ui.FragmentInspector.test.js +++ b/modules/ve-mw/tests/ui/inspectors/ve.ui.FragmentInspector.test.js @@ -15,20 +15,18 @@ QUnit.module( 've.ui.FragmentInspector (MW)', ve.test.utils.newMwEnvironment( { /* Tests */ QUnit.test( 'Wikitext link inspector', ( assert ) => { - const done = assert.async(), - surface = ve.init.target.createSurface( - ve.dm.converter.getModelFromDom( - ve.createDocumentFromHtml( - '

Foo [[bar]] [[Quux|baz]] x

' + - '

wh]]ee

' - ) - ), - { mode: 'source' } - ), + const + done = assert.async(), + html = '

Foo [[bar]] [[Quux|baz]] x

' + + '

wh]]ee

', + caseDefaults = { + name: 'wikitextLink', + html, + config: { mode: 'source' } + }, cases = [ { msg: 'Collapsed selection expands to word', - name: 'wikitextLink', range: new ve.Range( 2 ), expectedRange: new ve.Range( 1, 8 ), expectedData: ( data ) => { @@ -40,7 +38,6 @@ QUnit.test( 'Wikitext link inspector', ( assert ) => { }, { msg: 'Collapsed selection in word (noExpand)', - name: 'wikitextLink', range: new ve.Range( 2 ), setupData: { noExpand: true }, expectedRange: new ve.Range( 2 ), @@ -48,7 +45,6 @@ QUnit.test( 'Wikitext link inspector', ( assert ) => { }, { msg: 'Cancel restores original data & selection', - name: 'wikitextLink', range: new ve.Range( 2 ), expectedRange: new ve.Range( 2 ), expectedData: () => {}, @@ -56,34 +52,29 @@ QUnit.test( 'Wikitext link inspector', ( assert ) => { }, { msg: 'Collapsed selection inside existing link', - name: 'wikitextLink', range: new ve.Range( 5 ), expectedRange: new ve.Range( 5, 12 ), expectedData: () => {} }, { msg: 'Selection inside existing link', - name: 'wikitextLink', range: new ve.Range( 19, 20 ), expectedRange: new ve.Range( 13, 25 ), expectedData: () => {} }, { msg: 'Selection spanning existing link', - name: 'wikitextLink', range: new ve.Range( 3, 8 ), expectedRange: new ve.Range( 3, 8 ), expectedData: () => {} }, { msg: 'Selection with whitespace is trimmed', - name: 'wikitextLink', range: new ve.Range( 1, 5 ), expectedRange: new ve.Range( 1, 8 ) }, { msg: 'Link insertion', - name: 'wikitextLink', range: new ve.Range( 26 ), input: function () { this.annotationInput.getTextInputWidget().setValue( 'quux' ); @@ -93,9 +84,21 @@ QUnit.test( 'Wikitext link inspector', ( assert ) => { data.splice( 26, 0, ...[ ...'[[quux]]' ] ); } }, + { + msg: 'Link insertion with label (mobile)', + range: new ve.Range( 26 ), + isMobile: true, + input: function () { + this.annotationInput.getTextInputWidget().setValue( 'quux' ); + this.labelInput.setValue( 'whee' ); + }, + expectedRange: new ve.Range( 39 ), + expectedData: ( data ) => { + data.splice( 26, 0, ...[ ...'[[Quux|whee]]' ] ); + } + }, { msg: 'Link insertion to file page', - name: 'wikitextLink', range: new ve.Range( 26 ), input: function () { this.annotationInput.getTextInputWidget().setValue( 'File:foo.jpg' ); @@ -107,38 +110,72 @@ QUnit.test( 'Wikitext link inspector', ( assert ) => { }, { msg: 'Link insertion with no input is no-op', - name: 'wikitextLink', range: new ve.Range( 26 ), expectedRange: new ve.Range( 26 ), expectedData: () => {} }, { - msg: 'Link modified', - name: 'wikitextLink', + msg: 'Link target modified', range: new ve.Range( 5, 12 ), input: function () { this.annotationInput.getTextInputWidget().setValue( 'quux' ); }, expectedRange: new ve.Range( 5, 17 ), expectedData: ( data ) => { - data.splice( 7, 3, ...[ ...'Quux|bar' ] ); + data.splice( 5, 7, ...[ ...'[[Quux|bar]]' ] ); + } + }, + { + msg: 'Link target and label modified (mobile)', + range: new ve.Range( 5, 12 ), + isMobile: true, + input: function () { + this.annotationInput.getTextInputWidget().setValue( 'quux' ); + this.labelInput.setValue( 'whee' ); + }, + expectedRange: new ve.Range( 5, 18 ), + expectedData: ( data ) => { + data.splice( 5, 7, ...[ ...'[[Quux|whee]]' ] ); + } + }, + { + msg: 'Link target modified and label cleared (mobile)', + range: new ve.Range( 5, 12 ), + isMobile: true, + input: function () { + this.annotationInput.getTextInputWidget().setValue( 'quux' ); + this.labelInput.setValue( '' ); + }, + expectedRange: new ve.Range( 5, 13 ), + expectedData: ( data ) => { + data.splice( 5, 7, ...[ ...'[[quux]]' ] ); + } + }, + { + msg: 'Link label modified (mobile)', + range: new ve.Range( 16 ), + isMobile: true, + input: function () { + this.labelInput.setValue( 'whee' ); + }, + expectedRange: new ve.Range( 13, 26 ), + expectedData: ( data ) => { + data.splice( 13, 12, ...[ ...'[[Quux|whee]]' ] ); } }, { - msg: 'Link modified with initial selection including whitespace', - name: 'wikitextLink', + msg: 'Link target modified with initial selection including whitespace', range: new ve.Range( 4, 13 ), input: function () { this.annotationInput.getTextInputWidget().setValue( 'quux' ); }, expectedRange: new ve.Range( 5, 17 ), expectedData: ( data ) => { - data.splice( 7, 3, ...[ ...'Quux|bar' ] ); + data.splice( 5, 7, ...[ ...'[[Quux|bar]]' ] ); } }, { - msg: 'Piped link modified', - name: 'wikitextLink', + msg: 'Target of labeled link modified', range: new ve.Range( 16 ), input: function () { this.annotationInput.getTextInputWidget().setValue( 'whee' ); @@ -149,8 +186,7 @@ QUnit.test( 'Wikitext link inspector', ( assert ) => { } }, { - msg: 'Link modified', - name: 'wikitextLink', + msg: 'Wikitext in link label is escaped', range: new ve.Range( 30, 36 ), input: function () { this.annotationInput.getTextInputWidget().setValue( 'foo' ); @@ -161,9 +197,7 @@ QUnit.test( 'Wikitext link inspector', ( assert ) => { } } // Skips clear annotation test, not implement yet - ]; + ].map( ( testCase ) => Object.assign( {}, caseDefaults, testCase ) ); - ve.test.utils.runFragmentInspectorTests( surface, assert, cases ).finally( () => { - done(); - } ); + ve.test.utils.runFragmentInspectorTests( assert, cases ).finally( () => done() ); } ); diff --git a/modules/ve-mw/tests/ui/pages/ve.ui.MWAddParameterPage.test.js b/modules/ve-mw/tests/ui/pages/ve.ui.MWAddParameterPage.test.js index 26b6f873eb..bfcf301a1e 100644 --- a/modules/ve-mw/tests/ui/pages/ve.ui.MWAddParameterPage.test.js +++ b/modules/ve-mw/tests/ui/pages/ve.ui.MWAddParameterPage.test.js @@ -9,20 +9,20 @@ QUnit.test( 'Input event handlers', ( assert ) => { page.togglePlaceholder( true ); page.paramInputField.setValue( ' ' ); - assert.strictEqual( page.saveButton.isDisabled(), true, 'cannot click' ); + assert.true( page.saveButton.isDisabled(), 'cannot click' ); page.onParameterNameSubmitted(); assert.deepEqual( template.getParameters(), {}, 'empty input is ignored' ); assert.strictEqual( page.paramInputField.getValue(), ' ', 'bad input is not cleared' ); page.paramInputField.setValue( ' p1 ' ); - assert.strictEqual( page.saveButton.isDisabled(), false, 'can click' ); + assert.false( page.saveButton.isDisabled(), 'can click' ); page.onParameterNameSubmitted(); assert.true( template.hasParameter( 'p1' ), 'input is trimmed and parameter added' ); assert.strictEqual( page.paramInputField.getValue(), '', 'accepted input is cleared' ); template.getParameter( 'p1' ).setValue( 'not empty' ); page.paramInputField.setValue( 'p1' ); - assert.strictEqual( page.saveButton.isDisabled(), true, 'cannot click' ); + assert.true( page.saveButton.isDisabled(), 'cannot click' ); page.onParameterNameSubmitted(); assert.strictEqual( template.getParameter( 'p1' ).getValue(), 'not empty', 'existing parameter is not replaced' ); diff --git a/modules/ve-mw/tests/ui/widgets/ve.ui.MWParameterCheckboxInputWidget.test.js b/modules/ve-mw/tests/ui/widgets/ve.ui.MWParameterCheckboxInputWidget.test.js index 135c72acf9..46b1ec128a 100644 --- a/modules/ve-mw/tests/ui/widgets/ve.ui.MWParameterCheckboxInputWidget.test.js +++ b/modules/ve-mw/tests/ui/widgets/ve.ui.MWParameterCheckboxInputWidget.test.js @@ -4,7 +4,7 @@ QUnit.test( 'Constructor passes config to parent', ( assert ) => { const widget = new ve.ui.MWParameterCheckboxInputWidget( { selected: true } ); assert.strictEqual( widget.getValue(), '1' ); - assert.strictEqual( widget.isSelected(), true ); + assert.true( widget.isSelected() ); } ); [ diff --git a/modules/ve-mw/tests/ui/widgets/ve.ui.MWTemplateTitleInputWidget.test.js b/modules/ve-mw/tests/ui/widgets/ve.ui.MWTemplateTitleInputWidget.test.js index 2583b34263..35f8afef66 100644 --- a/modules/ve-mw/tests/ui/widgets/ve.ui.MWTemplateTitleInputWidget.test.js +++ b/modules/ve-mw/tests/ui/widgets/ve.ui.MWTemplateTitleInputWidget.test.js @@ -6,7 +6,8 @@ QUnit.module( 've.ui.MWTemplateTitleInputWidget', ve.test.utils.newMwEnvironment( { messages: { // Force `templateDataInstalled` condition - 'templatedata-doc-subpage': '(templatedata-doc-subpage)' + 'templatedata-doc-subpage': '(templatedata-doc-subpage)', + 'visualeditor-template-sandbox-subpage': '(template-sandbox-subpage)' }, // Config will be reset by newMwEnvironment's teardown beforeEach: function () { @@ -160,7 +161,9 @@ { pageid: 101, title: 'B' }, { pageid: 102, title: 'A' }, // Documentation subpage, expected to be stripped - { pageid: 103, title: 'A/(templatedata-doc-subpage)', index: 2 } + { pageid: 103, title: 'A/(templatedata-doc-subpage)', index: 2 }, + // Sandbox subpage, expected to be stripped + { pageid: 104, title: 'A/(template-sandbox-subpage)', index: 3 } ], redirects: [ // Alternative source for indexes, expected to be copied to the pages array diff --git a/modules/ve-mw/tests/ui/widgets/ve.ui.MWTransclusionOutlinePartWidget.test.js b/modules/ve-mw/tests/ui/widgets/ve.ui.MWTransclusionOutlinePartWidget.test.js index 04d6700764..e9ec3bef0c 100644 --- a/modules/ve-mw/tests/ui/widgets/ve.ui.MWTransclusionOutlinePartWidget.test.js +++ b/modules/ve-mw/tests/ui/widgets/ve.ui.MWTransclusionOutlinePartWidget.test.js @@ -16,13 +16,13 @@ QUnit.test( 'Constructor', ( assert ) => { widget.$element.find( '.ve-ui-mwTransclusionOutlineButtonWidget .oo-ui-buttonElement-button' ).text(), 'Example' ); - assert.strictEqual( widget.isSelected(), false ); + assert.false( widget.isSelected() ); let $ariaDescription = widget.$element.find( '#' + $ariaElement.attr( 'aria-describedby' ) ); assert.strictEqual( $ariaDescription.text(), 'Help when unselected' ); widget.setSelected( true ); - assert.strictEqual( widget.isSelected(), true ); + assert.true( widget.isSelected() ); $ariaDescription = widget.$element.find( '#' + $ariaElement.attr( 'aria-describedby' ) ); assert.strictEqual( $ariaDescription.text(), 'Help when selected' ); } ); diff --git a/modules/ve-mw/tests/ve.test.utils.js b/modules/ve-mw/tests/ve.test.utils.js index 43fde14214..0a76758fe4 100644 --- a/modules/ve-mw/tests/ve.test.utils.js +++ b/modules/ve-mw/tests/ve.test.utils.js @@ -106,22 +106,16 @@ // On load, teardown overrides so the first core tests run correctly teardownOverrides(); - // Deprecated, use ve.test.utils.newMwEnvironment - ve.test.utils.mwEnvironment = { - beforeEach: setupOverrides, - afterEach: teardownOverrides - }; - ve.test.utils.newMwEnvironment = function ( env ) { - env = env || {}; + ve.test.utils.newMwEnvironment = function ( env = {} ) { return QUnit.newMwEnvironment( ve.extendObject( {}, env, { beforeEach: function () { - setupOverrides.call( this ); + setupOverrides(); if ( env.beforeEach ) { env.beforeEach.call( this ); } }, afterEach: function () { - teardownOverrides.call( this ); + teardownOverrides(); if ( env.afterEach ) { env.afterEach.call( this ); } diff --git a/modules/ve-mw/themes/apex.css b/modules/ve-mw/themes/apex.less similarity index 100% rename from modules/ve-mw/themes/apex.css rename to modules/ve-mw/themes/apex.less diff --git a/modules/ve-mw/themes/wikimediaui.css b/modules/ve-mw/themes/wikimediaui.less similarity index 100% rename from modules/ve-mw/themes/wikimediaui.css rename to modules/ve-mw/themes/wikimediaui.less diff --git a/modules/ve-mw/treeDiffer-global.js b/modules/ve-mw/treeDiffer-global.js new file mode 100644 index 0000000000..85004e28d5 --- /dev/null +++ b/modules/ve-mw/treeDiffer-global.js @@ -0,0 +1,2 @@ +// Back-compat: Export module as global +window.treeDiffer = module.exports; diff --git a/modules/ve-mw/ui/actions/ve.ui.MWSaveDialogAction.js b/modules/ve-mw/ui/actions/ve.ui.MWSaveDialogAction.js index f1b8a25821..e9aab32bb9 100644 --- a/modules/ve-mw/ui/actions/ve.ui.MWSaveDialogAction.js +++ b/modules/ve-mw/ui/actions/ve.ui.MWSaveDialogAction.js @@ -104,7 +104,8 @@ ve.ui.commandRegistry.register( 'showChanges', 'mwSaveDialog', 'review' ) ); -if ( mw.libs.ve.isWikitextAvailable ) { +// TODO: mw.libs.ve.isWikitextAvailable is only available on desktop +if ( mw.libs.ve.isWikitextAvailable && mw.libs.ve.isWikitextAvailable() ) { // Ensure wikitextCommandRegistry has finished loading mw.loader.using( 'ext.visualEditor.mwwikitext' ).then( () => { ve.ui.wikitextCommandRegistry.register( @@ -129,7 +130,10 @@ ve.ui.commandRegistry.register( /* Triggers & command help */ -( function () { +// Avoid "Failed to register ctrl+option+(accesskey-save) Error: Incomplete trigger" +// given that tests run with uselang=qqx. +// TODO: Use content language? +if ( !window.QUnit ) { const accessKeyPrefix = $.fn.updateTooltipAccessKeys.getAccessKeyPrefix().replace( /-/g, '+' ), shortcuts = [ { @@ -186,4 +190,4 @@ ve.ui.commandRegistry.register( ve.ui.MWCommandHelpDialog.static.commandGroups.other.demote.push( shortcut.command ); } } ); -}() ); +} diff --git a/modules/ve-mw/ui/commands/ve.ui.MWLinkCommand.js b/modules/ve-mw/ui/commands/ve.ui.MWLinkCommand.js new file mode 100644 index 0000000000..14942f9155 --- /dev/null +++ b/modules/ve-mw/ui/commands/ve.ui.MWLinkCommand.js @@ -0,0 +1,56 @@ +/*! + * @copyright See AUTHORS.txt + */ + +/** + * Command to open the link inspector, unless the currently selected link's target is uneditable. + * + * @class + * @extends ve.ui.Command + * + * @constructor + */ +ve.ui.MWLinkCommand = function VeUiMwLinkCommand() { + // Parent constructor + ve.ui.MWLinkCommand.super.apply( this, arguments ); +}; + +/* Inheritance */ + +OO.inheritClass( ve.ui.MWLinkCommand, ve.ui.Command ); + +/* Methods */ + +/** + * @inheritdoc + */ +ve.ui.MWLinkCommand.prototype.isExecutable = function ( fragment ) { + if ( !ve.ui.MWLinkCommand.super.prototype.isExecutable.apply( this, arguments ) ) { + return false; + } + + const anns = fragment.getAnnotations( true ); + for ( const ann of anns.getAnnotationsByName( 'link/mwInternal' ).get() ) { + if ( ann.getAttribute( 'hasGeneratedHref' ) ) { + return false; + } + } + + return true; +}; + +/* Registration */ + +// Override VE core link commands +ve.ui.commandRegistry.register( + new ve.ui.MWLinkCommand( + 'link', 'window', 'open', + { args: [ 'link' ], supportedSelections: [ 'linear' ] } + ) +); +ve.ui.commandRegistry.register( + new ve.ui.MWLinkCommand( + 'linkNoExpand', 'window', 'open', + { args: [ 'link', { noExpand: true } ], supportedSelections: [ 'linear' ] } + ) +); diff --git a/modules/ve-mw/ui/contextitems/ve.ui.MWAlienAnnotationContextItem.js b/modules/ve-mw/ui/contextitems/ve.ui.MWAlienAnnotationContextItem.js index 5c3a6cb3b1..5aa26cabd3 100644 --- a/modules/ve-mw/ui/contextitems/ve.ui.MWAlienAnnotationContextItem.js +++ b/modules/ve-mw/ui/contextitems/ve.ui.MWAlienAnnotationContextItem.js @@ -36,7 +36,7 @@ ve.ui.MWAlienAnnotationContextItem.static.modelClasses = [ ve.ui.MWAlienAnnotationContextItem.prototype.getLabelMessage = function () { const type = this.model.getAttribute( 'type' ); - if ( type.indexOf( '/End', type.length - 4 ) !== -1 ) { + if ( type.includes( '/End', type.length - 4 ) ) { return mw.message( 'visualeditor-annotations-default-end' ).text(); } else { return mw.message( 'visualeditor-annotations-default-start' ).text(); @@ -45,7 +45,7 @@ ve.ui.MWAlienAnnotationContextItem.prototype.getLabelMessage = function () { ve.ui.MWAlienAnnotationContextItem.prototype.getDescriptionMessage = function () { const type = this.model.getAttribute( 'type' ); - if ( type.indexOf( '/End', type.length - 4 ) !== -1 ) { + if ( type.includes( '/End', type.length - 4 ) ) { return ''; } return mw.message( 'visualeditor-annotations-default-description' ).parseDom(); diff --git a/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js b/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js index 18680f5bc0..39f69c8a6c 100644 --- a/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js +++ b/modules/ve-mw/ui/contextitems/ve.ui.MWInternalLinkContextItem.js @@ -65,7 +65,7 @@ ve.ui.MWInternalLinkContextItem.static.generateBody = function ( linkCache, mode ve.setAttributeSafe( $link[ 0 ], 'href', title.getUrl(), '#' ); // Style based on link cache information - ve.init.platform.linkCache.styleElement( lookupTitle, $link, fragment ); + ve.init.platform.linkCache.styleElement( lookupTitle, $link, fragment, false ); // Don't style as a self-link in the context menu (but do elsewhere) $link.removeClass( 'mw-selflink' ); @@ -127,6 +127,15 @@ ve.ui.MWInternalLinkContextItem.prototype.renderBody = function () { this.context ); this.$body.empty().append( $body ); + if ( this.model.getAttribute( 'hasGeneratedHref' ) ) { + const warning = new OO.ui.MessageWidget( { + type: 'warning', + inline: true, + classes: [ 've-ui-mwInternalLinkContextItem-hasGeneratedHref' ], + label: ve.msg( 'visualeditor-linkcontext-uneditable' ) + } ); + this.$body.prepend( warning.$element ); + } if ( !this.context.isMobile() ) { this.$body.append( this.$labelLayout ); } diff --git a/modules/ve-mw/ui/contextitems/ve.ui.MWLanguageVariantNodeContextItem.js b/modules/ve-mw/ui/contextitems/ve.ui.MWLanguageVariantNodeContextItem.js index f7a3d1e9d7..b5aadff550 100644 --- a/modules/ve-mw/ui/contextitems/ve.ui.MWLanguageVariantNodeContextItem.js +++ b/modules/ve-mw/ui/contextitems/ve.ui.MWLanguageVariantNodeContextItem.js @@ -199,7 +199,7 @@ ve.ui.MWLanguageVariantNodeContextItem.prototype.renderBody = function () { // * visualeditor-mwlanguagevariantcontextitem-flag-describe // * visualeditor-mwlanguagevariantcontextitem-flag-hidden // * visualeditor-mwlanguagevariantcontextitem-flag-title - $body.append( $( '

' ).text( OO.ui.msg( + $body.append( $( '

' ).text( ve.msg( 'visualeditor-mwlanguagevariantcontextitem-flag-' + flag ) ) ); } diff --git a/modules/ve-mw/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.js b/modules/ve-mw/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.js index 2549f046a6..a411203daa 100644 --- a/modules/ve-mw/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.js +++ b/modules/ve-mw/ui/datatransferhandlers/ve.ui.MWWikitextStringTransferHandler.js @@ -62,7 +62,7 @@ ve.ui.MWWikitextStringTransferHandler.static.matchFunction = function ( item ) { if ( registry.registry[ i ].test( text ) ) { return true; } - } else if ( text.indexOf( rule ) !== -1 ) { + } else if ( text.includes( rule ) ) { return true; } } diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWExtensionDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWExtensionDialog.js index ce4d122a14..929b49d77b 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWExtensionDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWExtensionDialog.js @@ -49,8 +49,7 @@ ve.ui.MWExtensionDialog.prototype.initialize = function () { /** * @inheritdoc */ -ve.ui.MWExtensionDialog.prototype.getSetupProcess = function ( data ) { - data = data || {}; +ve.ui.MWExtensionDialog.prototype.getSetupProcess = function ( data = {} ) { // Parent process const process = ve.ui.MWExtensionDialog.super.prototype.getSetupProcess.call( this, data ); // Mixin process @@ -60,8 +59,7 @@ ve.ui.MWExtensionDialog.prototype.getSetupProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWExtensionDialog.prototype.getReadyProcess = function ( data ) { - data = data || {}; +ve.ui.MWExtensionDialog.prototype.getReadyProcess = function ( data = {} ) { // Parent process const process = ve.ui.MWExtensionDialog.super.prototype.getReadyProcess.call( this, data ); // Mixin process @@ -71,8 +69,7 @@ ve.ui.MWExtensionDialog.prototype.getReadyProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWExtensionDialog.prototype.getTeardownProcess = function ( data ) { - data = data || {}; +ve.ui.MWExtensionDialog.prototype.getTeardownProcess = function ( data = {} ) { // Parent process const process = ve.ui.MWExtensionDialog.super.prototype.getTeardownProcess.call( this, data ); // Mixin process diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWGalleryDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWGalleryDialog.js index d1bf971b04..1310fc47ee 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWGalleryDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWGalleryDialog.js @@ -435,7 +435,7 @@ ve.ui.MWGalleryDialog.prototype.getSetupProcess = function ( data ) { // Populate menu and edit panels this.imagesPromise = this.requestImages( { titles: imageTitles - } ).done( () => { + } ).then( () => { this.onHighlightItem(); } ); @@ -621,7 +621,7 @@ ve.ui.MWGalleryDialog.prototype.requestImages = function ( options ) { const promises = options.titles.map( ( title ) => ve.init.platform.galleryImageInfoCache.get( title ) ); return ve.promiseAll( promises ) - .done( ( ...args ) => { + .then( ( ...args ) => { const resp = {}; options.titles.forEach( ( title, i ) => { resp[ title ] = args[ i ]; @@ -704,7 +704,7 @@ ve.ui.MWGalleryDialog.prototype.addNewImage = function ( title ) { // Request image this.requestImages( { titles: [ title ] - } ).done( () => { + } ).then( () => { // populate edit panel with the new image const items = this.galleryGroup.items; this.onHighlightItem( items[ items.length - 1 ] ); @@ -748,19 +748,21 @@ ve.ui.MWGalleryDialog.prototype.onSearchResultsChoose = function ( item ) { * Handle click event for the remove button */ ve.ui.MWGalleryDialog.prototype.onRemoveItem = function () { + const removedItemIndex = this.galleryGroup.items.indexOf( this.highlightedItem ); // Remove the highlighted item this.galleryGroup.removeItems( [ this.highlightedItem ] ); // Highlight another item, or show the search panel if the gallery is now empty - this.onHighlightItem(); + this.onHighlightItem( undefined, removedItemIndex !== -1 ? removedItemIndex : undefined ); }; /** * Handle clicking on an image in the menu * * @param {ve.ui.MWGalleryItemWidget} [item] The item that was clicked on + * @param {number} [removedItemIndex] Index of just-removed item */ -ve.ui.MWGalleryDialog.prototype.onHighlightItem = function ( item ) { +ve.ui.MWGalleryDialog.prototype.onHighlightItem = function ( item, removedItemIndex ) { // Unhighlight previous item if ( this.highlightedItem ) { this.highlightedItem.toggleHighlighted( false ); @@ -771,8 +773,15 @@ ve.ui.MWGalleryDialog.prototype.onHighlightItem = function ( item ) { this.toggleSearchPanel( false ); // Highlight new item. - // If no item was given, highlight the first item in the gallery. - item = item || this.galleryGroup.items[ 0 ]; + if ( removedItemIndex !== undefined ) { + // The removed item might have been the last item in the list, in which + // case highlight the new last item. + const index = Math.min( removedItemIndex, this.galleryGroup.items.length - 1 ); + item = this.galleryGroup.items[ index ]; + } else if ( !item ) { + // If no item was given, highlight the first item in the gallery. + item = this.galleryGroup.items[ 0 ]; + } if ( !item ) { // Show the search panel if the gallery is empty diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js index d619994e88..433d1b7735 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWMediaDialog.js @@ -173,6 +173,17 @@ ve.ui.MWMediaDialog.static.getImportRules = function () { /* Methods */ +/** + * @inheritdoc + */ +ve.ui.MWMediaDialog.prototype.getEscapeAction = function () { + const backOrClose = this.actions.get( { flags: [ 'back', 'close' ], visible: true } ); + if ( backOrClose.length ) { + return backOrClose[ 0 ].getAction(); + } + return null; +}; + /** * @inheritdoc */ @@ -666,7 +677,7 @@ ve.ui.MWMediaDialog.prototype.buildMediaInfoPanel = function ( imageinfo ) { $thumbContainer .append( $image.prop( 'src', imageinfo.thumburl ) ); - this.$infoPanelWrapper.append( + this.$infoPanelWrapper.empty().append( $thumbContainer, $info ); @@ -707,7 +718,7 @@ ve.ui.MWMediaDialog.prototype.buildMediaInfoPanel = function ( imageinfo ) { // Call for a bigger image this.fetchThumbnail( imageTitleText, newDimensions ) - .done( ( thumburl ) => { + .then( ( thumburl ) => { if ( thumburl ) { $image.prop( 'src', thumburl ); } @@ -866,7 +877,6 @@ ve.ui.MWMediaDialog.prototype.onSearchQueryClear = function () { * @param {Object} info Image info */ ve.ui.MWMediaDialog.prototype.chooseImageInfo = function ( info ) { - this.$infoPanelWrapper.empty(); // Switch panels this.selectedImageInfo = info; this.switchPanels( 'imageInfo' ); @@ -946,15 +956,16 @@ ve.ui.MWMediaDialog.prototype.confirmSelectedImage = function () { */ ve.ui.MWMediaDialog.prototype.updateFilenameFieldset = function () { const title = mw.Title.newFromText( mw.libs.ve.normalizeParsoidResourceName( this.imageModel.getResourceName() ) ); + const $link = $( '' ) + .addClass( 've-ui-mwMediaDialog-description-link' ) + .attr( 'target', '_blank' ) + .attr( 'rel', 'noopener' ) + .text( ve.msg( 'visualeditor-dialog-media-content-description-link' ) ); + ve.setAttributeSafe( $link[ 0 ], 'href', title.getUrl() ); this.filenameFieldset.setLabel( $( '' ).append( $( document.createTextNode( this.imageModel.getFilename() + ' ' ) ), - $( '' ) - .addClass( 've-ui-mwMediaDialog-description-link' ) - .attr( 'href', title.getUrl() ) - .attr( 'target', '_blank' ) - .attr( 'rel', 'noopener' ) - .text( ve.msg( 'visualeditor-dialog-media-content-description-link' ) ) + $link ) ); }; diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWMetaDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWMetaDialog.js index 234784fa3d..eb3178902b 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWMetaDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWMetaDialog.js @@ -213,8 +213,7 @@ ve.ui.MWMetaDialog.prototype.getActionProcess = function ( action ) { /** * @inheritdoc */ -ve.ui.MWMetaDialog.prototype.getSetupProcess = function ( data ) { - data = data || {}; +ve.ui.MWMetaDialog.prototype.getSetupProcess = function ( data = {} ) { return ve.ui.MWMetaDialog.super.prototype.getSetupProcess.call( this, data ) .next( () => { const surfaceModel = this.getFragment().getSurface(), @@ -227,7 +226,7 @@ ve.ui.MWMetaDialog.prototype.getSetupProcess = function ( data ) { selectWidget.findItemFromData( page ).setDisabled( isSource ); } ); - if ( isSource && visualOnlyPages.indexOf( data.page || 'categories' ) !== -1 ) { + if ( isSource && visualOnlyPages.includes( data.page || 'categories' ) ) { data.page = 'templatesUsed'; } @@ -269,8 +268,7 @@ ve.ui.MWMetaDialog.prototype.getSetupProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWMetaDialog.prototype.getReadyProcess = function ( data ) { - data = data || {}; +ve.ui.MWMetaDialog.prototype.getReadyProcess = function ( data = {} ) { return ve.ui.MWMetaDialog.super.prototype.getReadyProcess.call( this, data ) .next( () => { if ( data.page && this.bookletLayout.getPage( data.page ) ) { @@ -282,8 +280,7 @@ ve.ui.MWMetaDialog.prototype.getReadyProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWMetaDialog.prototype.getTeardownProcess = function ( data ) { - data = data || {}; +ve.ui.MWMetaDialog.prototype.getTeardownProcess = function ( data = {} ) { return ve.ui.MWMetaDialog.super.prototype.getTeardownProcess.call( this, data ) .first( () => { // Let each page tear itself down ('languages' page doesn't need this yet) diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWSaveDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWSaveDialog.js index fa8c0df454..0fbb71ebae 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWSaveDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWSaveDialog.js @@ -120,6 +120,12 @@ ve.ui.MWSaveDialog.static.actions = [ * @event ve.ui.MWSaveDialog#retry */ +/** + * Emitted when the save dialog changes panel, and when it opens + * + * @event ve.ui.MWSaveDialog#changePanel + */ + /* Methods */ /** @@ -278,7 +284,7 @@ ve.ui.MWSaveDialog.prototype.clearDiff = function () { * @throws {Error} Unknown saveDialog panel */ ve.ui.MWSaveDialog.prototype.swapPanel = function ( panel, noFocus ) { - if ( ( [ 'save', 'review', 'preview', 'conflict' ].indexOf( panel ) ) === -1 ) { + if ( ![ 'save', 'review', 'preview', 'conflict' ].includes( panel ) ) { throw new Error( 'Unknown saveDialog panel: ' + panel ); } @@ -354,17 +360,21 @@ ve.ui.MWSaveDialog.prototype.swapPanel = function ( panel, noFocus ) { title: ve.init.target.getPageName(), prop: '', summary: currentEditSummaryWikitext - } ).done( ( result ) => { + } ); + this.editSummaryXhr.then( ( result ) => { if ( result.parse.parsedsummary === '' ) { this.$previewEditSummary.parent().addClass( 'oo-ui-element-hidden' ); this.$previewEditSummary.empty(); } else { + // Escape message before inserting parameter to prevent i18n XSS + const wrappedSummary = ve.escapeHtml( ve.msg( 'parentheses' ) ) + .replace( '$1', () => result.parse.parsedsummary ); // Intentionally treated as HTML // eslint-disable-next-line no-jquery/no-html - this.$previewEditSummary.html( ve.msg( 'parentheses', result.parse.parsedsummary ) ); + this.$previewEditSummary.html( wrappedSummary ); ve.targetLinksToNewWindow( this.$previewEditSummary[ 0 ] ); } - } ).fail( () => { + }, () => { this.$previewEditSummary.parent().addClass( 'oo-ui-element-hidden' ); this.$previewEditSummary.empty(); } ).always( () => { @@ -484,7 +494,7 @@ ve.ui.MWSaveDialog.prototype.reset = function () { * @param {OO.ui.FieldLayout[]} checkboxFields Checkbox fields */ ve.ui.MWSaveDialog.prototype.setupCheckboxes = function ( checkboxFields ) { - this.setupDeferred.done( () => { + this.setupDeferred.then( () => { checkboxFields.forEach( ( field ) => { this.$saveCheckboxes.append( field.$element ); } ); @@ -500,7 +510,7 @@ ve.ui.MWSaveDialog.prototype.setupCheckboxes = function ( checkboxFields ) { * @param {string} summary Edit summary to prefill */ ve.ui.MWSaveDialog.prototype.setEditSummary = function ( summary ) { - this.setupDeferred.done( () => { + this.setupDeferred.then( () => { this.editSummaryInput.setValue( summary ); } ); }; @@ -516,6 +526,8 @@ ve.ui.MWSaveDialog.prototype.initialize = function () { // Properties this.panels = new OO.ui.StackLayout( { scrollable: false } ); + this.panels.connect( this, { set: [ 'emit', 'changePanel' ] } ); + this.savePanel = new OO.ui.PanelLayout( { expanded: false, padded: true, @@ -863,6 +875,7 @@ ve.ui.MWSaveDialog.prototype.getReadyProcess = function ( data ) { // This includes a #focus call this.editSummaryInput.moveCursorToEnd(); } + this.emit( 'changePanel' ); } ); }; @@ -876,6 +889,17 @@ ve.ui.MWSaveDialog.prototype.getTeardownProcess = function ( data ) { } ); }; +/** + * @inheritdoc + */ +ve.ui.MWSaveDialog.prototype.getEscapeAction = function () { + const backOrClose = this.actions.get( { flags: [ 'back', 'close' ], visible: true } ); + if ( backOrClose.length ) { + return backOrClose[ 0 ].getAction(); + } + return null; +}; + /** * @inheritdoc */ @@ -884,10 +908,14 @@ ve.ui.MWSaveDialog.prototype.getActionProcess = function ( action ) { if ( action === 'save' ) { return new OO.ui.Process( () => { - const saveDeferred = ve.createDeferred(); - this.clearMessage( 'keyboard-shortcut-submit' ); - this.emit( 'save', saveDeferred ); - return saveDeferred.promise(); + if ( this.panels.getCurrentItem() !== this.savePanel ) { + this.swapPanel( 'save' ); + } else { + const saveDeferred = ve.createDeferred(); + this.clearMessage( 'keyboard-shortcut-submit' ); + this.emit( 'save', saveDeferred ); + return saveDeferred.promise(); + } } ); } if ( action === 'review' || action === 'preview' || action === 'resolve' ) { diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js index bee5dab57a..46d610e30b 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWTemplateDialog.js @@ -250,12 +250,9 @@ ve.ui.MWTemplateDialog.prototype.getPageFromPart = function ( part ) { /** * @inheritdoc */ -ve.ui.MWTemplateDialog.prototype.getSelectedNode = function ( data ) { +ve.ui.MWTemplateDialog.prototype.getSelectedNode = function ( data = {} ) { const selectedNode = ve.ui.MWTemplateDialog.super.prototype.getSelectedNode.call( this ); - // Data initialization - data = data || {}; - // Require template to match if specified if ( selectedNode && data.template && !selectedNode.isSingleTemplate( data.template ) ) { return null; @@ -360,7 +357,7 @@ ve.ui.MWTemplateDialog.prototype.getActionProcess = function ( action ) { if ( action === 'done' ) { return new OO.ui.Process( () => { const deferred = ve.createDeferred(); - this.checkRequiredParameters().done( () => { + this.checkRequiredParameters().then( () => { const surfaceModel = this.getFragment().getSurface(), obj = this.transclusionModel.getPlainObject(); @@ -413,8 +410,7 @@ ve.ui.MWTemplateDialog.prototype.getActionProcess = function ( action ) { /** * @inheritdoc */ -ve.ui.MWTemplateDialog.prototype.getSetupProcess = function ( data ) { - data = data || {}; +ve.ui.MWTemplateDialog.prototype.getSetupProcess = function ( data = {} ) { return ve.ui.MWTemplateDialog.super.prototype.getSetupProcess.call( this, data ) .next( () => { let promise; diff --git a/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js b/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js index e8da793c03..06960c0ffd 100644 --- a/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js +++ b/modules/ve-mw/ui/dialogs/ve.ui.MWTransclusionDialog.js @@ -44,10 +44,8 @@ ve.ui.MWTransclusionDialog.static.actions = [ ...ve.ui.MWTemplateDialog.static.actions, { action: 'mode', - modes: [ 'edit', 'insert' ], - // HACK: Will be set later, but we want measurements to be accurate in the mean time, this - // will not be needed when T93290 is resolved - label: $( document.createTextNode( '\u00a0' ) ) + // label is set by updateModeActionState + modes: [ 'edit', 'insert' ] }, { action: 'back', @@ -70,6 +68,17 @@ ve.ui.MWTransclusionDialog.static.isSmallScreen = function () { /* Methods */ +/** + * @inheritdoc + */ +ve.ui.MWTransclusionDialog.prototype.getEscapeAction = function () { + const backOrClose = this.actions.get( { flags: [ 'back', 'close' ], visible: true } ); + if ( backOrClose.length ) { + return backOrClose[ 0 ].getAction(); + } + return null; +}; + /** * Handle outline controls move events. * @@ -91,7 +100,7 @@ ve.ui.MWTransclusionDialog.prototype.onOutlineControlsMove = function ( places ) const promise = this.transclusionModel.addPart( part, newPlace ); if ( this.loaded && !this.preventReselection ) { // FIXME: Should be handled internally {@see ve.ui.MWTwoPaneTransclusionDialogLayout} - promise.done( this.bookletLayout.focusPart.bind( this.bookletLayout, part.getId() ) ); + promise.then( this.bookletLayout.focusPart.bind( this.bookletLayout, part.getId() ) ); } }; @@ -417,7 +426,7 @@ ve.ui.MWTransclusionDialog.prototype.addPart = function ( part ) { // Add the part, and if dialog is loaded switch to part page const promise = this.transclusionModel.addPart( part, index ); if ( this.loaded && !this.preventReselection ) { - promise.done( this.bookletLayout.focusPart.bind( this.bookletLayout, part.getId() ) ); + promise.then( this.bookletLayout.focusPart.bind( this.bookletLayout, part.getId() ) ); } }; @@ -517,7 +526,7 @@ ve.ui.MWTransclusionDialog.prototype.resetDialog = function () { this.bookletLayout.clearPages(); const placeholderPage = new ve.dm.MWTemplatePlaceholderModel( this.transclusionModel ); this.transclusionModel.addPart( placeholderPage ) - .done( () => { + .then( () => { this.bookletLayout.focusPart( placeholderPage.getId() ); this.autoExpandSidebar(); } ); diff --git a/modules/ve-mw/ui/inspectors/ve.ui.MWExtensionInspector.js b/modules/ve-mw/ui/inspectors/ve.ui.MWExtensionInspector.js index e969236f61..2adcddbe37 100644 --- a/modules/ve-mw/ui/inspectors/ve.ui.MWExtensionInspector.js +++ b/modules/ve-mw/ui/inspectors/ve.ui.MWExtensionInspector.js @@ -50,8 +50,7 @@ ve.ui.MWExtensionInspector.prototype.initialize = function () { /** * @inheritdoc */ -ve.ui.MWExtensionInspector.prototype.getSetupProcess = function ( data ) { - data = data || {}; +ve.ui.MWExtensionInspector.prototype.getSetupProcess = function ( data = {} ) { // Parent process const process = ve.ui.MWExtensionInspector.super.prototype.getSetupProcess.call( this, data ); // Mixin process @@ -61,8 +60,7 @@ ve.ui.MWExtensionInspector.prototype.getSetupProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWExtensionInspector.prototype.getReadyProcess = function ( data ) { - data = data || {}; +ve.ui.MWExtensionInspector.prototype.getReadyProcess = function ( data = {} ) { // Parent process const process = ve.ui.MWExtensionInspector.super.prototype.getReadyProcess.call( this, data ); // Mixin process @@ -75,8 +73,7 @@ ve.ui.MWExtensionInspector.prototype.getReadyProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWExtensionInspector.prototype.getTeardownProcess = function ( data ) { - data = data || {}; +ve.ui.MWExtensionInspector.prototype.getTeardownProcess = function ( data = {} ) { // Parent process const process = ve.ui.MWExtensionInspector.super.prototype.getTeardownProcess.call( this, data ); // Mixin process diff --git a/modules/ve-mw/ui/inspectors/ve.ui.MWLanguageVariantInspector.js b/modules/ve-mw/ui/inspectors/ve.ui.MWLanguageVariantInspector.js index 08bb99c9fe..289c46fc5d 100644 --- a/modules/ve-mw/ui/inspectors/ve.ui.MWLanguageVariantInspector.js +++ b/modules/ve-mw/ui/inspectors/ve.ui.MWLanguageVariantInspector.js @@ -235,8 +235,7 @@ ve.ui.MWLanguageVariantInspector.prototype.getSetupProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWLanguageVariantInspector.prototype.getTeardownProcess = function ( data ) { - data = data || {}; +ve.ui.MWLanguageVariantInspector.prototype.getTeardownProcess = function ( data = {} ) { return ve.ui.MWLanguageVariantInspector.super.prototype.getTeardownProcess.call( this, data ) .first( () => { const surfaceModel = this.getFragment().getSurface(); @@ -298,7 +297,7 @@ ve.ui.MWLanguageVariantDisabledInspector.static.title = OO.ui.deferMsg( ve.ui.MWLanguageVariantDisabledInspector.prototype.initialize = function () { ve.ui.MWLanguageVariantDisabledInspector.super.prototype.initialize.call( this ); - this.textTarget = this.createTextTarget( OO.ui.msg( + this.textTarget = this.createTextTarget( ve.msg( 'visualeditor-mwlanguagevariantinspector-disabled-placeholder' ) ); this.form.$element.append( this.textTarget.$element ); @@ -444,7 +443,7 @@ ve.ui.MWLanguageVariantFilterInspector.static.title = OO.ui.deferMsg( ve.ui.MWLanguageVariantFilterInspector.prototype.initialize = function () { ve.ui.MWLanguageVariantFilterInspector.super.prototype.initialize.call( this ); - this.textTarget = this.createTextTarget( OO.ui.msg( + this.textTarget = this.createTextTarget( ve.msg( 'visualeditor-mwlanguagevariantinspector-filter-text-placeholder' ) ); @@ -452,7 +451,7 @@ ve.ui.MWLanguageVariantFilterInspector.prototype.initialize = function () { allowArbitary: false, allowDisplayInvalidTags: true, allowedValues: ve.init.platform.getLanguageCodes().sort(), - placeholder: OO.ui.msg( + placeholder: ve.msg( 'visualeditor-mwlanguagevariantinspector-filter-langs-placeholder' ), icon: 'language' @@ -468,13 +467,13 @@ ve.ui.MWLanguageVariantFilterInspector.prototype.initialize = function () { this.form.$element.append( new OO.ui.FieldLayout( this.langWidget, { align: 'top', - label: OO.ui.msg( 'visualeditor-mwlanguagevariantinspector-filter-langs-label' ) + label: ve.msg( 'visualeditor-mwlanguagevariantinspector-filter-langs-label' ) } ).$element ); this.form.$element.append( new OO.ui.FieldLayout( this.textTarget, { align: 'top', - label: OO.ui.msg( 'visualeditor-mwlanguagevariantinspector-filter-text-label' ) + label: ve.msg( 'visualeditor-mwlanguagevariantinspector-filter-text-label' ) } ).$element ); }; @@ -563,7 +562,7 @@ ve.ui.MWLanguageVariantTwoWayInspector.prototype.initialize = function () { this.form.$element.append( this.layout.$element ); this.addButton = new OO.ui.ButtonInputWidget( { - label: OO.ui.msg( 'visualeditor-mwlanguagevariantinspector-twoway-add-button' ), + label: ve.msg( 'visualeditor-mwlanguagevariantinspector-twoway-add-button' ), icon: 'add' } ); this.form.$element.append( this.addButton.$element ); @@ -601,7 +600,7 @@ ve.ui.MWLanguageVariantTwoWayInspector.prototype.createItem = function ( lang, c dialogManager: this.manager.getSurface().getDialogs(), dirInput: 'none' } ); - const textTarget = this.createTextTarget( OO.ui.msg( + const textTarget = this.createTextTarget( ve.msg( 'visualeditor-mwlanguagevariantinspector-twoway-text-placeholder' ) ); const clearButton = new OO.ui.ButtonInputWidget( { @@ -710,7 +709,7 @@ ve.ui.MWLanguageVariantOneWayInspector.prototype.initialize = function () { this.form.$element.append( this.layout.$element ); this.addButton = new OO.ui.ButtonInputWidget( { - label: OO.ui.msg( 'visualeditor-mwlanguagevariantinspector-oneway-add-button' ), + label: ve.msg( 'visualeditor-mwlanguagevariantinspector-oneway-add-button' ), icon: 'add' } ); this.form.$element.append( this.addButton.$element ); @@ -745,14 +744,14 @@ ve.ui.MWLanguageVariantOneWayInspector.prototype.getSetupProcess = function ( da * documents for this mapping item. */ ve.ui.MWLanguageVariantOneWayInspector.prototype.createItem = function ( from, lang, to ) { - const fromTextTarget = this.createTextTarget( OO.ui.msg( + const fromTextTarget = this.createTextTarget( ve.msg( 'visualeditor-mwlanguagevariantinspector-oneway-from-text-placeholder' ) ); const languageInput = new ve.ui.LanguageInputWidget( { dialogManager: this.manager.getSurface().getDialogs(), dirInput: 'none' } ); - const toTextTarget = this.createTextTarget( OO.ui.msg( + const toTextTarget = this.createTextTarget( ve.msg( 'visualeditor-mwlanguagevariantinspector-oneway-to-text-placeholder' ) ); const clearButton = new OO.ui.ButtonInputWidget( { diff --git a/modules/ve-mw/ui/inspectors/ve.ui.MWLinkAnnotationInspector.js b/modules/ve-mw/ui/inspectors/ve.ui.MWLinkAnnotationInspector.js index 93d5fa9b05..03e5b442ae 100644 --- a/modules/ve-mw/ui/inspectors/ve.ui.MWLinkAnnotationInspector.js +++ b/modules/ve-mw/ui/inspectors/ve.ui.MWLinkAnnotationInspector.js @@ -212,7 +212,7 @@ ve.ui.MWLinkAnnotationInspector.prototype.onLinkInputEnter = function () { this.executeAction( 'done' ); } this.annotationInput.getTextInputWidget().getValidity() - .done( () => { + .then( () => { this.executeAction( 'done' ); } ); }; diff --git a/modules/ve-mw/ui/inspectors/ve.ui.MWLinkNodeInspector.js b/modules/ve-mw/ui/inspectors/ve.ui.MWLinkNodeInspector.js index 55ab1b6cd7..833f1e075f 100644 --- a/modules/ve-mw/ui/inspectors/ve.ui.MWLinkNodeInspector.js +++ b/modules/ve-mw/ui/inspectors/ve.ui.MWLinkNodeInspector.js @@ -97,8 +97,7 @@ ve.ui.MWLinkNodeInspector.prototype.getReadyProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWLinkNodeInspector.prototype.getTeardownProcess = function ( data ) { - data = data || {}; +ve.ui.MWLinkNodeInspector.prototype.getTeardownProcess = function ( data = {} ) { return ve.ui.MWLinkNodeInspector.super.prototype.getTeardownProcess.call( this, data ) .first( () => { let value = this.targetInput.getValue(); diff --git a/modules/ve-mw/ui/inspectors/ve.ui.MWMagicLinkNodeInspector.js b/modules/ve-mw/ui/inspectors/ve.ui.MWMagicLinkNodeInspector.js index 555f5a5026..d3974c395e 100644 --- a/modules/ve-mw/ui/inspectors/ve.ui.MWMagicLinkNodeInspector.js +++ b/modules/ve-mw/ui/inspectors/ve.ui.MWMagicLinkNodeInspector.js @@ -142,8 +142,7 @@ ve.ui.MWMagicLinkNodeInspector.prototype.getReadyProcess = function ( data ) { /** * @inheritdoc */ -ve.ui.MWMagicLinkNodeInspector.prototype.getTeardownProcess = function ( data ) { - data = data || {}; +ve.ui.MWMagicLinkNodeInspector.prototype.getTeardownProcess = function ( data = {} ) { return ve.ui.MWMagicLinkNodeInspector.super.prototype.getTeardownProcess.call( this, data ) .first( () => { const surfaceView = this.manager.getSurface().getView(), diff --git a/modules/ve-mw/ui/inspectors/ve.ui.MWWikitextLinkAnnotationInspector.js b/modules/ve-mw/ui/inspectors/ve.ui.MWWikitextLinkAnnotationInspector.js index 7c80aadfd0..2715f13a69 100644 --- a/modules/ve-mw/ui/inspectors/ve.ui.MWWikitextLinkAnnotationInspector.js +++ b/modules/ve-mw/ui/inspectors/ve.ui.MWWikitextLinkAnnotationInspector.js @@ -47,6 +47,16 @@ ve.ui.MWWikitextLinkAnnotationInspector.static.internalLinkParser = ( function ( ); }() ); +ve.ui.MWWikitextLinkAnnotationInspector.static.externalLinkParser = ( function () { + const protocols = ve.init.platform.getUnanchoredExternalLinkUrlProtocolsRegExp().source; + return new RegExp( '\\[(' + protocols + '\\S+) ?([^\\]]*)(\\])', 'ig' ); +}() ); + +ve.ui.MWWikitextLinkAnnotationInspector.static.magicLinkParser = ( function () { + const protocols = ve.init.platform.getUnanchoredExternalLinkUrlProtocolsRegExp().source; + return new RegExp( '\\b(' + protocols + '\\S+\\w)', 'ig' ); +}() ); + /* Methods */ /** @@ -58,7 +68,9 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getSetupProcess = function ( d return ve.ui.AnnotationInspector.super.prototype.getSetupProcess.call( this, data ) .next( () => { const wgNamespaceIds = mw.config.get( 'wgNamespaceIds' ), - internalLinkParser = this.constructor.static.internalLinkParser; + internalLinkParser = this.constructor.static.internalLinkParser, + externalLinkParser = this.constructor.static.externalLinkParser, + magicLinkParser = this.constructor.static.magicLinkParser; // Only supports linear selections if ( !( this.initialFragment && this.initialFragment.getSelection() instanceof ve.dm.LinearSelection ) ) { @@ -66,7 +78,7 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getSetupProcess = function ( d } let fragment = this.getFragment(); - let linkMatches; + let linkMatches, isExternal; // Initialize range if ( !data.noExpand ) { if ( !fragment.getSelection().isCollapsed() ) { @@ -99,7 +111,7 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getSetupProcess = function ( d namespaceId === wgNamespaceIds.file || namespaceId === wgNamespaceIds.category ) && - matches[ 1 ].indexOf( ':' ) !== 0 + !matches[ 1 ].startsWith( ':' ) ) ) { linkMatches = matches; @@ -107,6 +119,43 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getSetupProcess = function ( d break; } } + if ( !linkMatches ) { + externalLinkParser.lastIndex = 0; + while ( ( matches = externalLinkParser.exec( text ) ) !== null ) { + const matchURL = matches[ 1 ]; + if ( !matchURL ) { + continue; + } + const linkRange = new ve.Range( + contextRange.start + matches.index, + contextRange.start + matches.index + matches[ 0 ].length + ); + if ( linkRange.containsRange( range ) ) { + linkMatches = matches; + fragment = fragment.getSurface().getLinearFragment( linkRange ); + isExternal = true; + break; + } + } + } + if ( !linkMatches ) { + magicLinkParser.lastIndex = 0; + while ( ( matches = magicLinkParser.exec( text ) ) !== null ) { + if ( !matches[ 0 ] ) { + continue; + } + const linkRange = new ve.Range( + contextRange.start + matches.index, + contextRange.start + matches.index + matches[ 0 ].length + ); + if ( linkRange.containsRange( range ) ) { + linkMatches = matches; + fragment = fragment.getSurface().getLinearFragment( linkRange ); + isExternal = true; + break; + } + } + } } if ( !linkMatches ) { if ( !data.noExpand && fragment.getSelection().isCollapsed() ) { @@ -123,24 +172,64 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getSetupProcess = function ( d this.initialSelection = fragment.getSelection(); this.fragment = fragment; - this.initialLabelText = this.fragment.getText(); - - let title; - if ( linkMatches ) { - // Group 1 is the link target, group 2 is the label after | if present - title = mw.Title.newFromText( linkMatches[ 1 ] ); - this.initialLabelText = linkMatches[ 2 ] || linkMatches[ 1 ]; - // HACK: Remove escaping probably added by this tool. - // We should really do a full parse from wikitext to HTML if - // we see any syntax - this.initialLabelText = this.initialLabelText.replace( /(\]{2,})<\/nowiki>/g, '$1' ); + this.initialLabel = this.fragment.getText(); + + if ( isExternal ) { + // can't get here without linkMatches + // linkMatches: [ whole match, url, protocol, label, closing bracket ] + if ( linkMatches[ 4 ] ) { + // Link came in [] + this.initialLabel = linkMatches[ 3 ]; + this.initialLabel = this.initialLabel.replace( /(\]{2,})<\/nowiki>/g, '$1' ); + if ( !linkMatches[ 3 ] ) { + // Didn't have a label + this.initialAnnotation = this.newExternalLinkAnnotation( { + type: 'link/mwNumberedExternal', + attributes: { + href: linkMatches[ 1 ] + } + } ); + } else { + // Has a label + this.initialAnnotation = this.newExternalLinkAnnotation( { + type: 'link/mwExternal', + attributes: { + href: linkMatches[ 1 ] + } + } ); + } + } else { + // Just an autolinked URL + this.initialLabel = ''; + this.initialAnnotation = this.newExternalLinkAnnotation( { + type: 'link/mwMagic', + attributes: { + href: linkMatches[ 1 ] + } + } ); + } } else { - title = mw.Title.newFromText( this.initialLabelText ); - } - if ( title ) { - this.initialAnnotation = this.newInternalLinkAnnotationFromTitle( title ); + let title; + if ( linkMatches ) { + // Group 1 is the link target, group 2 is the label after | if present + title = mw.Title.newFromText( linkMatches[ 1 ] ); + this.initialLabel = linkMatches[ 2 ] || linkMatches[ 1 ]; + // HACK: Remove escaping probably added by this tool. + // We should really do a full parse from wikitext to HTML if + // we see any syntax + this.initialLabel = this.initialLabel.replace( /(\]{2,})<\/nowiki>/g, '$1' ); + } else { + title = mw.Title.newFromText( this.initialLabel ); + } + if ( title ) { + this.initialAnnotation = this.newInternalLinkAnnotationFromTitle( title ); + } } + // We've skipped ve.ui.AnnotationInspector#getSetupProcess. Set isNew here so + // that getInsertionData works correctly. + this.isNew = !linkMatches; + const inspectorTitle = ve.msg( this.isReadOnly() ? 'visualeditor-linkinspector-title' : ( @@ -151,6 +240,8 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getSetupProcess = function ( d ); this.title.setLabel( inspectorTitle ).setTitle( inspectorTitle ); + this.labelInput.setValue( this.initialLabel ); + this.annotationInput.setReadOnly( this.isReadOnly() ); this.actions.setMode( this.getMode() ); @@ -166,29 +257,28 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getSetupProcess = function ( d /** * @inheritdoc */ -ve.ui.MWWikitextLinkAnnotationInspector.prototype.getTeardownProcess = function ( data ) { - data = data || {}; +ve.ui.MWWikitextLinkAnnotationInspector.prototype.getTeardownProcess = function ( data = {} ) { // Call grand-parent return ve.ui.FragmentInspector.prototype.getTeardownProcess.call( this, data ) .first( () => { const wgNamespaceIds = mw.config.get( 'wgNamespaceIds' ), annotation = this.getAnnotation(), - fragment = this.getFragment(), - insertion = this.getInsertionText(); + fragment = this.getFragment(); - if ( data && data.action === 'done' && annotation ) { - const insert = this.initialSelection.isCollapsed() && insertion.length; - let labelText; - if ( insert ) { - fragment.insertContent( insertion ); - labelText = insertion; - } else { - labelText = this.initialLabelText; - } + const insertionText = this.getInsertionText(); + const replace = !this.isNew; + const insertText = this.initialSelection.isCollapsed() && insertionText.length; + if ( data && data.action === 'done' && annotation ) { // Build internal links locally if ( annotation instanceof ve.dm.MWInternalLinkAnnotation ) { - if ( labelText.indexOf( ']]' ) !== -1 ) { + let labelText; + if ( replace || insertText ) { + labelText = insertionText; + } else { + labelText = this.initialLabel; + } + if ( labelText.includes( ']]' ) ) { labelText = labelText.replace( /(\]{2,})/g, '$1' ); } const labelTitle = mw.Title.newFromText( labelText ); @@ -213,7 +303,25 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getTeardownProcess = function } fragment.insertContent( '[[' + prefix + targetText + labelText + ']]' ); + } else if ( annotation instanceof ve.dm.MWExternalLinkAnnotation ) { + if ( this.initialAnnotation && this.initialAnnotation.element.type === 'link/mwMagic' ) { + fragment.insertContent( annotation.element.attributes.href ); + } else { + let labelText = ''; + if ( replace || insertText ) { + labelText = insertionText; + } else if ( annotation.name === 'link/mwExternal' ) { + labelText = this.initialLabel; + } + if ( labelText ) { + labelText = ' ' + labelText; + } + fragment.insertContent( '[' + annotation.element.attributes.href + labelText + ']' ); + } } else { + if ( replace || this.shouldInsertText() ) { + fragment.insertContent( this.getInsertionData() ); + } // Annotating the surface will send the content to Parsoid before // it is inserted into the wikitext document. It is slower but it // will handle all cases. @@ -223,7 +331,7 @@ ve.ui.MWWikitextLinkAnnotationInspector.prototype.getTeardownProcess = function // Fix selection after annotating is complete fragment.getPending().then( () => { - if ( insert ) { + if ( insertText ) { fragment.collapseToEnd().select(); } else { fragment.select(); diff --git a/modules/ve-mw/ui/layouts/ve.ui.MWTwoPaneTransclusionDialogLayout.js b/modules/ve-mw/ui/layouts/ve.ui.MWTwoPaneTransclusionDialogLayout.js index f6887505f1..73c1d02208 100644 --- a/modules/ve-mw/ui/layouts/ve.ui.MWTwoPaneTransclusionDialogLayout.js +++ b/modules/ve-mw/ui/layouts/ve.ui.MWTwoPaneTransclusionDialogLayout.js @@ -278,7 +278,7 @@ ve.ui.MWTwoPaneTransclusionDialogLayout.prototype.removePages = function ( pages this.stackLayout.getItems().forEach( ( page ) => { const pageName = page.getName(); - if ( pagesNamesToRemove.indexOf( pageName ) !== -1 ) { + if ( pagesNamesToRemove.includes( pageName ) ) { pagesToRemove.push( page ); delete this.pages[ pageName ]; if ( this.currentPageName === pageName ) { @@ -289,7 +289,7 @@ ve.ui.MWTwoPaneTransclusionDialogLayout.prototype.removePages = function ( pages } // Move the selection from a removed top-level part to another, but not to a parameter - if ( pageName.indexOf( '/' ) === -1 ) { + if ( !pageName.includes( '/' ) ) { if ( !isCurrentPageRemoved ) { // The last part before the removed one prevSelectionCandidate = pageName; diff --git a/modules/ve-mw/ui/pages/ve.ui.MWAddParameterPage.js b/modules/ve-mw/ui/pages/ve.ui.MWAddParameterPage.js index 289caa17e2..50a0876fdd 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWAddParameterPage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWAddParameterPage.js @@ -184,7 +184,7 @@ ve.ui.MWAddParameterPage.prototype.getValidationErrors = function ( name ) { const spec = this.template.getSpec(); let key; - if ( spec.getParameterAliases( name ).indexOf( name ) !== -1 ) { + if ( spec.getParameterAliases( name ).includes( name ) ) { key = 'visualeditor-dialog-transclusion-add-param-error-alias'; } else if ( this.template.hasParameter( name ) ) { key = 'visualeditor-dialog-transclusion-add-param-error-exists-selected'; diff --git a/modules/ve-mw/ui/pages/ve.ui.MWAdvancedSettingsPage.js b/modules/ve-mw/ui/pages/ve.ui.MWAdvancedSettingsPage.js index e91e246141..6507789083 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWAdvancedSettingsPage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWAdvancedSettingsPage.js @@ -241,9 +241,7 @@ ve.ui.MWAdvancedSettingsPage.prototype.setup = function ( fragment, config ) { * * @param {Object} [data] Dialog tear down data */ -ve.ui.MWAdvancedSettingsPage.prototype.teardown = function ( data ) { - // Data initialization - data = data || {}; +ve.ui.MWAdvancedSettingsPage.prototype.teardown = function ( data = {} ) { if ( data.action !== 'done' ) { return; } diff --git a/modules/ve-mw/ui/pages/ve.ui.MWCategoriesPage.js b/modules/ve-mw/ui/pages/ve.ui.MWCategoriesPage.js index 5cec2bd630..4aa70202a0 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWCategoriesPage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWCategoriesPage.js @@ -16,10 +16,7 @@ * @param {Object} [config] Configuration options * @param {jQuery} [config.$overlay] Overlay to render dropdowns in */ -ve.ui.MWCategoriesPage = function VeUiMWCategoriesPage( name, config ) { - // Configuration initialization - config = config || {}; - +ve.ui.MWCategoriesPage = function VeUiMWCategoriesPage( name, config = {} ) { // Parent constructor ve.ui.MWCategoriesPage.super.apply( this, arguments ); @@ -224,12 +221,12 @@ ve.ui.MWCategoriesPage.prototype.getCategoryItemForInsertion = function ( item, * Setup categories page. * * @param {ve.dm.SurfaceFragment} fragment Surface fragment - * @param {Object} config + * @param {Object} [config] * @param {Object} [config.data] Dialog setup data * @param {boolean} [config.isReadOnly=false] Dialog is in read-only mode * @return {jQuery.Promise} */ -ve.ui.MWCategoriesPage.prototype.setup = function ( fragment, config ) { +ve.ui.MWCategoriesPage.prototype.setup = function ( fragment, config = {} ) { this.fragment = fragment; this.fragment.getDocument().getMetaList().connect( this, { insert: 'onMetaListInsert', diff --git a/modules/ve-mw/ui/pages/ve.ui.MWLanguagesPage.js b/modules/ve-mw/ui/pages/ve.ui.MWLanguagesPage.js index 4afbb6d7ee..e25e4ec33c 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWLanguagesPage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWLanguagesPage.js @@ -33,7 +33,7 @@ ve.ui.MWLanguagesPage = function VeUiMWLanguagesPage() { ); this.$element.append( this.languagesFieldset.$element ); - this.getAllLanguageItems().done( this.onLoadLanguageData.bind( this ) ); + this.getAllLanguageItems().then( this.onLoadLanguageData.bind( this ) ); }; /* Inheritance */ @@ -99,10 +99,10 @@ ve.ui.MWLanguagesPage.prototype.onLoadLanguageData = function ( languages ) { /** * Handle language items being loaded. * - * @param {jQuery.Deferred} deferred Deferred to resolve with language data * @param {Object} response API response + * @return {Array} */ -ve.ui.MWLanguagesPage.prototype.onAllLanguageItemsSuccess = function ( deferred, response ) { +ve.ui.MWLanguagesPage.prototype.onAllLanguageItemsSuccess = function ( response ) { const languages = [], langlinks = OO.getProp( response, 'query', 'pages', 0, 'langlinks' ); if ( langlinks ) { @@ -115,41 +115,7 @@ ve.ui.MWLanguagesPage.prototype.onAllLanguageItemsSuccess = function ( deferred, } ); } } - deferred.resolve( languages ); -}; - -/** - * Gets language item from meta list item - * - * @param {ve.dm.MWLanguageMetaItem} metaItem - * @return {Object} item - */ -ve.ui.MWLanguagesPage.prototype.getLanguageItemFromMetaListItem = function ( metaItem ) { - // TODO: get real values from metaItem once Parsoid actually provides them - T50970 - return { - lang: 'lang', - langname: 'langname', - title: 'title', - metaItem: metaItem - }; -}; - -/** - * Get array of language items from meta list - * - * @return {Object[]} items - */ -ve.ui.MWLanguagesPage.prototype.getLocalLanguageItems = function () { - const items = [], - languages = this.metaList.getItemsInGroup( 'mwLanguage' ), - languageslength = languages.length; - - // Loop through MWLanguages and build out items - - for ( let i = 0; i < languageslength; i++ ) { - items.push( this.getLanguageItemFromMetaListItem( languages[ i ] ) ); - } - return items; + return languages; }; /** @@ -158,18 +124,17 @@ ve.ui.MWLanguagesPage.prototype.getLocalLanguageItems = function () { * @return {jQuery.Promise} */ ve.ui.MWLanguagesPage.prototype.getAllLanguageItems = function () { - const deferred = ve.createDeferred(); // TODO: Detect paging token if results exceed limit - ve.init.target.getContentApi().get( { + return ve.init.target.getContentApi().get( { action: 'query', prop: 'langlinks', llprop: 'autonym', lllimit: 500, titles: ve.init.target.getPageName() - } ) - .done( this.onAllLanguageItemsSuccess.bind( this, deferred ) ) - .fail( this.onAllLanguageItemsError.bind( this, deferred ) ); - return deferred.promise(); + } ).then( + this.onAllLanguageItemsSuccess.bind( this ), + this.onAllLanguageItemsError.bind( this ) + ); }; /** diff --git a/modules/ve-mw/ui/pages/ve.ui.MWParameterPage.js b/modules/ve-mw/ui/pages/ve.ui.MWParameterPage.js index 487e169905..9b0c917e7b 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWParameterPage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWParameterPage.js @@ -253,7 +253,7 @@ ve.ui.MWParameterPage.prototype.createValueInput = function () { ( suggestedValue ) => typeof suggestedValue === 'string' ).map( ( suggestedValue ) => ( { data: suggestedValue, label: suggestedValue || '\xA0' } ) ); return new OO.ui.ComboBoxInputWidget( valueInputConfig ); - } else if ( type !== 'line' || value.indexOf( '\n' ) !== -1 ) { + } else if ( type !== 'line' || value.includes( '\n' ) ) { // If the type is line, but there are already newlines in the provided // value, don't break the existing content by only providing a single- // line field. (This implies that the TemplateData for the field isn't @@ -277,7 +277,7 @@ ve.ui.MWParameterPage.prototype.createValueInput = function () { * @return {boolean} True if suggested values should be shown */ ve.ui.MWParameterPage.prototype.isSuggestedValueType = function ( type ) { - return [ 'unknown', 'content', 'line', 'string', 'number', 'unbalanced-wikitext' ].indexOf( type ) > -1; + return [ 'unknown', 'content', 'line', 'string', 'number', 'unbalanced-wikitext' ].includes( type ); }; /** diff --git a/modules/ve-mw/ui/pages/ve.ui.MWSettingsPage.js b/modules/ve-mw/ui/pages/ve.ui.MWSettingsPage.js index 5dd032df11..a77c2a04e2 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWSettingsPage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWSettingsPage.js @@ -325,9 +325,7 @@ ve.ui.MWSettingsPage.prototype.setup = function ( fragment, config ) { * * @param {Object} [data] Dialog tear down data */ -ve.ui.MWSettingsPage.prototype.teardown = function ( data ) { - // Data initialisation - data = data || {}; +ve.ui.MWSettingsPage.prototype.teardown = function ( data = {} ) { if ( data.action !== 'done' ) { return; } diff --git a/modules/ve-mw/ui/pages/ve.ui.MWTemplatePage.js b/modules/ve-mw/ui/pages/ve.ui.MWTemplatePage.js index 718e443640..ab94361e97 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWTemplatePage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWTemplatePage.js @@ -40,6 +40,19 @@ ve.ui.MWTemplatePage = function VeUiMWTemplatePage( template, name, config ) { icon: 'puzzle' } ); + // Add favorite button + const usingTemplateDiscovery = mw.templateData !== undefined && mw.templateData.FavoriteButton !== undefined; + if ( this.spec.templateData.pageId && usingTemplateDiscovery ) { + const favoriteButton = new mw.templateData.FavoriteButton( { + pageId: this.spec.templateData.pageId + } ); + this.$element.prepend( + $( '

' ) + .addClass( 've-ui-mwTemplatePage-favorite' ) + .append( favoriteButton.$element ) + ); + } + // Initialization const description = this.spec.getDescription(); if ( description ) { @@ -67,7 +80,7 @@ ve.ui.MWTemplatePage = function VeUiMWTemplatePage( template, name, config ) { } catch ( e ) { } // When {{User:Foo}} can be parsed as "Foo", we know the ":" is not syntax. - key = title && title.getMain().indexOf( ':' ) === -1 ? + key = title && !title.getMain().includes( ':' ) ? 'visualeditor-dialog-transclusion-template-title-nonexistent' : 'visualeditor-dialog-transclusion-template-title-modifier'; } else { diff --git a/modules/ve-mw/ui/pages/ve.ui.MWTemplatePlaceholderPage.js b/modules/ve-mw/ui/pages/ve.ui.MWTemplatePlaceholderPage.js index 0b1a4170ed..b04ccb3d00 100644 --- a/modules/ve-mw/ui/pages/ve.ui.MWTemplatePlaceholderPage.js +++ b/modules/ve-mw/ui/pages/ve.ui.MWTemplatePlaceholderPage.js @@ -31,52 +31,62 @@ ve.ui.MWTemplatePlaceholderPage = function VeUiMWTemplatePlaceholderPage( placeh // Properties this.placeholder = placeholder; - this.addTemplateInput = new ve.ui.MWTemplateTitleInputWidget( { - $overlay: config.$overlay, - showDescriptions: true, - api: ve.init.target.getContentApi() - } ) - .connect( this, { - change: 'onTemplateInputChange', - enter: 'onAddTemplate' + this.usingTemplateDiscovery = mw.templateData !== undefined && mw.templateData.TemplateSearchLayout !== undefined; + if ( this.usingTemplateDiscovery ) { + // This variable name is slightly misleading here as this isn't a fieldset. + this.addTemplateFieldset = new mw.templateData.TemplateSearchLayout( { padded: false } ); + this.addTemplateFieldset.connect( this, { choose: this.onAddTemplate } ); + // Expose the internal widget for now, but this will be removed once we've switched to the new widget. + this.addTemplateInput = this.addTemplateFieldset.searchWidget; + + } else { + this.addTemplateInput = new ve.ui.MWTemplateTitleInputWidget( { + $overlay: config.$overlay, + showDescriptions: true, + api: ve.init.target.getContentApi() + } ) + .connect( this, { + change: 'onTemplateInputChange', + enter: 'onAddTemplate' + } ); + + this.addTemplateInput.getLookupMenu().connect( this, { + choose: 'onAddTemplate' } ); - this.addTemplateInput.getLookupMenu().connect( this, { - choose: 'onAddTemplate' - } ); - - this.addTemplateButton = new OO.ui.ButtonWidget( { - label: ve.msg( 'visualeditor-dialog-transclusion-add-template-save' ), - flags: [ 'progressive' ], - classes: [ 've-ui-mwTransclusionDialog-addButton' ], - disabled: true - } ) - .connect( this, { click: 'onAddTemplate' } ); - - const addTemplateActionFieldLayout = new OO.ui.ActionFieldLayout( - this.addTemplateInput, - this.addTemplateButton, - { - label: ve.msg( 'visualeditor-dialog-transclusion-template-search-help' ), - align: 'top' - } - ); - - const dialogTitle = this.placeholder.getTransclusion().isSingleTemplate() ? - 'visualeditor-dialog-transclusion-template-search' : - 'visualeditor-dialog-transclusion-add-template'; - - const addTemplateFieldsetConfig = { - // The following messages are used here: - // * visualeditor-dialog-transclusion-template-search - // * visualeditor-dialog-transclusion-add-template - label: ve.msg( dialogTitle ), - icon: 'puzzle', - classes: [ 've-ui-mwTransclusionDialog-addTemplateFieldset' ], - items: [ addTemplateActionFieldLayout ] - }; - - this.addTemplateFieldset = new OO.ui.FieldsetLayout( addTemplateFieldsetConfig ); + this.addTemplateButton = new OO.ui.ButtonWidget( { + label: ve.msg( 'visualeditor-dialog-transclusion-add-template-save' ), + flags: [ 'progressive' ], + classes: [ 've-ui-mwTransclusionDialog-addButton' ], + disabled: true + } ) + .connect( this, { click: 'onAddTemplate' } ); + + const addTemplateActionFieldLayout = new OO.ui.ActionFieldLayout( + this.addTemplateInput, + this.addTemplateButton, + { + label: ve.msg( 'visualeditor-dialog-transclusion-template-search-help' ), + align: 'top' + } + ); + + const dialogTitle = this.placeholder.getTransclusion().isSingleTemplate() ? + 'visualeditor-dialog-transclusion-template-search' : + 'visualeditor-dialog-transclusion-add-template'; + + const addTemplateFieldsetConfig = { + // The following messages are used here: + // * visualeditor-dialog-transclusion-template-search + // * visualeditor-dialog-transclusion-add-template + label: ve.msg( dialogTitle ), + icon: 'puzzle', + classes: [ 've-ui-mwTransclusionDialog-addTemplateFieldset' ], + items: [ addTemplateActionFieldLayout ] + }; + + this.addTemplateFieldset = new OO.ui.FieldsetLayout( addTemplateFieldsetConfig ); + } // Initialization this.$element @@ -104,18 +114,24 @@ ve.ui.MWTemplatePlaceholderPage.prototype.focus = function () { /** * @private + * @param {Object|undefined} templateData The choosen template's data (if TemplateDiscovery is enabled). */ -ve.ui.MWTemplatePlaceholderPage.prototype.onAddTemplate = function () { - const transclusion = this.placeholder.getTransclusion(), - menu = this.addTemplateInput.getLookupMenu(); - - if ( menu.isVisible() ) { - menu.chooseItem( menu.findSelectedItem() ); - } - const name = this.addTemplateInput.getMWTitle(); - if ( !name ) { - // Invalid titles return null, so abort here. - return; +ve.ui.MWTemplatePlaceholderPage.prototype.onAddTemplate = function ( templateData ) { + const transclusion = this.placeholder.getTransclusion(); + + let name = null; + if ( !this.usingTemplateDiscovery ) { + const menu = this.addTemplateInput.getLookupMenu(); + if ( menu.isVisible() ) { + menu.chooseItem( menu.findSelectedItem() ); + } + name = this.addTemplateInput.getMWTitle(); + if ( !name ) { + // Invalid titles return null, so abort here. + return; + } + } else { + name = mw.Title.newFromText( templateData.title ); } // TODO tracking will only be implemented temporarily to answer questions on @@ -136,10 +152,12 @@ ve.ui.MWTemplatePlaceholderPage.prototype.onAddTemplate = function () { transclusion.replacePart( this.placeholder, part ).then( transclusion.addPromptedParameters.bind( transclusion ) ); - this.addTemplateInput.pushPending(); - // abort pending lookups, also, so the menu can't appear after we've left the page - this.addTemplateInput.closeLookupMenu(); - this.addTemplateButton.setDisabled( true ); + if ( !this.usingTemplateDiscovery ) { + this.addTemplateInput.pushPending(); + // abort pending lookups, also, so the menu can't appear after we've left the page + this.addTemplateInput.closeLookupMenu(); + this.addTemplateButton.setDisabled( true ); + } }; /** diff --git a/modules/ve-mw/ui/styles/contextitems/ve.ui.MWInternalLinkContextItem.less b/modules/ve-mw/ui/styles/contextitems/ve.ui.MWInternalLinkContextItem.less index 04a8b3c766..23ad971dd2 100644 --- a/modules/ve-mw/ui/styles/contextitems/ve.ui.MWInternalLinkContextItem.less +++ b/modules/ve-mw/ui/styles/contextitems/ve.ui.MWInternalLinkContextItem.less @@ -7,6 +7,10 @@ @import 'mediawiki.skin.variables.less'; .ve-ui-mwInternalLinkContextItem { + &-hasGeneratedHref { + margin-bottom: 0.7em; + } + .ve-ui-linearContextItem-body { overflow: auto; white-space: normal; diff --git a/modules/ve-mw/ui/styles/dialogs/ve.ui.MWGalleryDialog.less b/modules/ve-mw/ui/styles/dialogs/ve.ui.MWGalleryDialog.less index 2af1858074..21fb87fef4 100644 --- a/modules/ve-mw/ui/styles/dialogs/ve.ui.MWGalleryDialog.less +++ b/modules/ve-mw/ui/styles/dialogs/ve.ui.MWGalleryDialog.less @@ -89,9 +89,8 @@ } > .oo-ui-menuLayout-menu { - box-shadow: 0 -1px 0 0 rgba( 0, 0, 0, 0.05 ); height: 5em; - border-top: 1px solid @background-color-neutral; + border-top: @border-subtle; .oo-ui-panelLayout-padded { /* Center the button vertically */ diff --git a/modules/ve-mw/ui/styles/pages/ve.ui.MWTemplatePage-default.less b/modules/ve-mw/ui/styles/pages/ve.ui.MWTemplatePage-default.less index 4114673182..11b84d81b5 100644 --- a/modules/ve-mw/ui/styles/pages/ve.ui.MWTemplatePage-default.less +++ b/modules/ve-mw/ui/styles/pages/ve.ui.MWTemplatePage-default.less @@ -15,3 +15,7 @@ font-style: italic; } } + +.ve-ui-mwTemplatePage-favorite { + text-align: end; +} diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.css b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.css deleted file mode 100644 index 581a6f9f75..0000000000 --- a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.css +++ /dev/null @@ -1,11 +0,0 @@ -/*! - * VisualEditor MediaWiki Minerva-specific FormatTool styles. - * - * @copyright See AUTHORS.txt - * @license The MIT License (MIT); see LICENSE.txt - */ - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading1 .oo-ui-tool-title, -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading2 .oo-ui-tool-title { - font-family: 'Linux Libertine', 'Georgia', 'Times', serif; -} diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.less b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.less new file mode 100644 index 0000000000..26211ebbe4 --- /dev/null +++ b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-minerva.less @@ -0,0 +1,15 @@ +/*! + * VisualEditor MediaWiki Minerva-specific FormatTool styles. + * + * @copyright See AUTHORS.txt + * @license The MIT License (MIT); see LICENSE.txt + */ + +.oo-ui-menuToolGroup-tools { + .oo-ui-tool-name-heading1, + .oo-ui-tool-name-heading2 { + .oo-ui-tool-title { + font-family: 'Linux Libertine', 'Georgia', 'Times', serif; + } + } +} diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.css b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.css deleted file mode 100644 index 754f43553d..0000000000 --- a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.css +++ /dev/null @@ -1,26 +0,0 @@ -/*! - * VisualEditor MediaWiki MonoBook-specific FormatTool styles. - * - * @copyright See AUTHORS.txt - * @license The MIT License (MIT); see LICENSE.txt - */ - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading1 .oo-ui-tool-title { - font-size: 188%; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading3 .oo-ui-tool-title { - font-size: 128%; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading4 .oo-ui-tool-title { - font-size: 116%; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading5 .oo-ui-tool-title { - font-size: 108%; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading6 .oo-ui-tool-title { - font-size: 100%; -} diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.less b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.less new file mode 100644 index 0000000000..991f031263 --- /dev/null +++ b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-monobook.less @@ -0,0 +1,28 @@ +/*! + * VisualEditor MediaWiki MonoBook-specific FormatTool styles. + * + * @copyright See AUTHORS.txt + * @license The MIT License (MIT); see LICENSE.txt + */ + +.oo-ui-menuToolGroup-tools { + .oo-ui-tool-name-heading1 .oo-ui-tool-title { + font-size: 188%; + } + + .oo-ui-tool-name-heading3 .oo-ui-tool-title { + font-size: 128%; + } + + .oo-ui-tool-name-heading4 .oo-ui-tool-title { + font-size: 116%; + } + + .oo-ui-tool-name-heading5 .oo-ui-tool-title { + font-size: 108%; + } + + .oo-ui-tool-name-heading6 .oo-ui-tool-title { + font-size: 100%; + } +} diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.css b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.css deleted file mode 100644 index 1fb80cf8a4..0000000000 --- a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.css +++ /dev/null @@ -1,29 +0,0 @@ -/*! - * VisualEditor MediaWiki Vector-specific FormatTool styles. - * - * @copyright See AUTHORS.txt - * @license The MIT License (MIT); see LICENSE.txt - */ - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading1 .oo-ui-tool-title, -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading2 .oo-ui-tool-title { - font-family: 'Linux Libertine', 'Georgia', 'Times', serif; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading1 .oo-ui-tool-title { - font-size: 180%; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading2 .oo-ui-tool-title { - font-size: 150%; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading3 .oo-ui-tool-title { - font-size: 117%; -} - -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading4 .oo-ui-tool-title, -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading5 .oo-ui-tool-title, -.oo-ui-menuToolGroup-tools .oo-ui-tool-name-heading6 .oo-ui-tool-title { - font-size: 100%; -} diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.less b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.less new file mode 100644 index 0000000000..8ae2791e4c --- /dev/null +++ b/modules/ve-mw/ui/styles/tools/ve.ui.MWFormatTool-vector.less @@ -0,0 +1,33 @@ +/*! + * VisualEditor MediaWiki Vector-specific FormatTool styles. + * + * @copyright See AUTHORS.txt + * @license The MIT License (MIT); see LICENSE.txt + */ + +.oo-ui-menuToolGroup-tools { + .oo-ui-tool-name-heading1, + .oo-ui-tool-name-heading2 { + .oo-ui-tool-title { + font-family: 'Linux Libertine', 'Georgia', 'Times', serif; + } + } + + .oo-ui-tool-name-heading1 .oo-ui-tool-title { + font-size: 180%; + } + + .oo-ui-tool-name-heading2 .oo-ui-tool-title { + font-size: 150%; + } + + .oo-ui-tool-name-heading3 .oo-ui-tool-title { + font-size: 117%; + } + + .oo-ui-tool-name-heading4 .oo-ui-tool-title, + .oo-ui-tool-name-heading5 .oo-ui-tool-title, + .oo-ui-tool-name-heading6 .oo-ui-tool-title { + font-size: 100%; + } +} diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWLinkInspectorTool.css b/modules/ve-mw/ui/styles/tools/ve.ui.MWLinkInspectorTool.less similarity index 100% rename from modules/ve-mw/ui/styles/tools/ve.ui.MWLinkInspectorTool.css rename to modules/ve-mw/ui/styles/tools/ve.ui.MWLinkInspectorTool.less diff --git a/modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.css b/modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.less similarity index 57% rename from modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.css rename to modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.less index 7dc2b3836f..1aa856b4f8 100644 --- a/modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.css +++ b/modules/ve-mw/ui/styles/tools/ve.ui.MWPopupTool.less @@ -7,19 +7,19 @@ .ve-ui-mwPopupTool { white-space: normal; -} -.ve-ui-mwPopupTool .oo-ui-popupWidget-head { - font-weight: bold; + .oo-ui-popupWidget-head { + font-weight: bold; + } } .ve-ui-mwNoticesPopupTool-items { padding: 0.5em 1em; line-height: 1.6em; -} -.ve-ui-mwNoticesPopupTool-items > div:not( :first-child ) { - border-top: 1px solid #c8ccd1; - padding-top: 0.8em; - margin-top: 0.8em; + & > div:not( :first-child ) { + border-top: 1px solid #c8ccd1; + padding-top: 0.8em; + margin-top: 0.8em; + } } diff --git a/modules/ve-mw/ui/styles/ve.ui.MWWikitextSurface.css b/modules/ve-mw/ui/styles/ve.ui.MWWikitextSurface.less similarity index 100% rename from modules/ve-mw/ui/styles/ve.ui.MWWikitextSurface.css rename to modules/ve-mw/ui/styles/ve.ui.MWWikitextSurface.less diff --git a/modules/ve-mw/ui/styles/widgets/ve.ui.MWTocWidget.css b/modules/ve-mw/ui/styles/widgets/ve.ui.MWTocWidget.less similarity index 100% rename from modules/ve-mw/ui/styles/widgets/ve.ui.MWTocWidget.css rename to modules/ve-mw/ui/styles/widgets/ve.ui.MWTocWidget.less diff --git a/modules/ve-mw/ui/styles/widgets/ve.ui.MWTransclusionOutlineWidget.less b/modules/ve-mw/ui/styles/widgets/ve.ui.MWTransclusionOutlineWidget.less index 36b5c1ab6b..0d2dd0d949 100644 --- a/modules/ve-mw/ui/styles/widgets/ve.ui.MWTransclusionOutlineWidget.less +++ b/modules/ve-mw/ui/styles/widgets/ve.ui.MWTransclusionOutlineWidget.less @@ -3,7 +3,7 @@ @selected-text-color: @color-progressive; // This shade on a white background results in #eaf3ff a.k.a. @background-color-progressive-subtle -@selected-shading: rgba( 0, 109, 255, 21/255 ); +@selected-shading: rgba( 0, 109, 255, 0.082 ); // This shade on a white background results in #eaecf0 a.k.a. @background-color-interactive @hover-shading: @background-color-button-quiet--active; diff --git a/modules/ve-mw/ui/toolgroups/ve.ui.MWHelpListToolGroup.js b/modules/ve-mw/ui/toolgroups/ve.ui.MWHelpListToolGroup.js index 8403c85485..30d7f79df3 100644 --- a/modules/ve-mw/ui/toolgroups/ve.ui.MWHelpListToolGroup.js +++ b/modules/ve-mw/ui/toolgroups/ve.ui.MWHelpListToolGroup.js @@ -68,6 +68,8 @@ ve.ui.MWHelpListToolGroup.prototype.setActive = function () { $version .removeClass( 'oo-ui-pendingElement-pending' ) .empty() + // API response 'vcs-url' is trusted to be safe + // eslint-disable-next-line local/no-unsanitized-href .append( $( '' ) .addClass( 've-ui-mwHelpListToolGroup-version-link' ) .attr( 'target', '_blank' ) @@ -124,7 +126,7 @@ ve.ui.MWUserGuideTool.prototype.onUpdateState = function () {}; ve.ui.MWUserGuideTool.prototype.onSelect = function () { this.setActive( false ); const urlOrTitle = ve.msg( 'visualeditor-help-link' ); - if ( urlOrTitle.indexOf( '//' ) !== -1 ) { + if ( urlOrTitle.includes( '//' ) ) { window.open( urlOrTitle ); } else { // This link used to be internal link to mw:, but that doesn't work @@ -193,7 +195,7 @@ ve.ui.MWFeedbackDialogTool.prototype.onSelect = function () { return new mw.Feedback( feedbackConfig ); } ); } - this.feedbackPromise.done( ( feedback ) => { + this.feedbackPromise.then( ( feedback ) => { feedback.launch( { message: ve.msg( 'visualeditor-feedback-defaultmessage', location.toString() ) } ); diff --git a/modules/ve-mw/ui/tools/ve.ui.MWEditModeTool.js b/modules/ve-mw/ui/tools/ve.ui.MWEditModeTool.js index 8ff3a42518..512ba558f6 100644 --- a/modules/ve-mw/ui/tools/ve.ui.MWEditModeTool.js +++ b/modules/ve-mw/ui/tools/ve.ui.MWEditModeTool.js @@ -1,6 +1,11 @@ /*! * VisualEditor MediaWiki UserInterface edit mode tool classes. * + * Used for making edit mode switcher tools within VE. + * + * When building a toolbar for use outside of VE you can use + * the mw.libs.ve.MWEditModeTool classes. + * * @copyright See AUTHORS.txt * @license The MIT License (MIT); see LICENSE.txt */ @@ -35,13 +40,19 @@ ve.ui.MWEditModeTool.prototype.getMode = function () { */ ve.ui.MWEditModeTool.prototype.isModeAvailable = function ( mode ) { const target = this.toolbar.getTarget(); - const surface = target.getSurface(); - const canSwitch = surface && !surface.getModel().isMultiUser(); - - // Source mode is always available - return canSwitch && ( - mode === 'source' || target.isModeAvailable( mode ) - ); + if ( !target.getSurface() ) { + // Disable switching before surface is loaded + return false; + } + if ( target.getSurface().getModel().isMultiUser() ) { + // Disable switching in multi-user mode + return false; + } + if ( mode === 'source' ) { + // A fallback source mode should always available (e.g. EditPage.php) + return true; + } + return target.isModeAvailable( mode ); }; /** @@ -62,6 +73,7 @@ ve.ui.MWEditModeVisualTool = function VeUiMWEditModeVisualTool() { }; OO.inheritClass( ve.ui.MWEditModeVisualTool, mw.libs.ve.MWEditModeVisualTool ); OO.mixinClass( ve.ui.MWEditModeVisualTool, ve.ui.MWEditModeTool ); + /** * @inheritdoc */ @@ -92,6 +104,6 @@ OO.mixinClass( ve.ui.MWEditModeSourceTool, ve.ui.MWEditModeTool ); * @inheritdoc */ ve.ui.MWEditModeSourceTool.prototype.switch = function () { - this.toolbar.getTarget().editSource(); + this.toolbar.getTarget().switchToWikitextEditor(); }; ve.ui.toolFactory.register( ve.ui.MWEditModeSourceTool ); diff --git a/modules/ve-mw/ui/tools/ve.ui.MWMediaDialogTool.js b/modules/ve-mw/ui/tools/ve.ui.MWMediaDialogTool.js index 80bc2576c9..0653d01c71 100644 --- a/modules/ve-mw/ui/tools/ve.ui.MWMediaDialogTool.js +++ b/modules/ve-mw/ui/tools/ve.ui.MWMediaDialogTool.js @@ -25,7 +25,6 @@ ve.ui.MWMediaDialogTool.static.title = OO.ui.deferMsg( 'visualeditor-dialogbutton-media-tooltip' ); ve.ui.MWMediaDialogTool.static.modelClasses = [ ve.dm.MWBlockImageNode, ve.dm.MWInlineImageNode ]; ve.ui.MWMediaDialogTool.static.commandName = 'media'; -ve.ui.MWMediaDialogTool.static.autoAddToCatchall = false; ve.ui.MWMediaDialogTool.static.autoAddToGroup = false; ve.ui.toolFactory.register( ve.ui.MWMediaDialogTool ); diff --git a/modules/ve-mw/ui/tools/ve.ui.MWPopupTool.js b/modules/ve-mw/ui/tools/ve.ui.MWPopupTool.js index e9de79178a..50c14bf24b 100644 --- a/modules/ve-mw/ui/tools/ve.ui.MWPopupTool.js +++ b/modules/ve-mw/ui/tools/ve.ui.MWPopupTool.js @@ -107,10 +107,13 @@ ve.ui.MWNoticesPopupTool.static.autoAddToCatchall = false; ve.ui.MWNoticesPopupTool.prototype.setNotices = function ( notices ) { const count = notices.length; - this.popup.setLabel( ve.msg( + const noticeMsg = ve.msg( 'visualeditor-editnotices-tool', mw.language.convertNumber( count ) - ) ); + ); + + this.popup.setLabel( noticeMsg ); + this.setTitle( noticeMsg ); if ( this.$items ) { this.$items.remove(); @@ -141,18 +144,6 @@ ve.ui.MWNoticesPopupTool.prototype.setNotices = function ( notices ) { ve.track( 'activity.notices', { action: 'show' } ); }; -/** - * Get the tool title. - * - * @inheritdoc - */ -ve.ui.MWNoticesPopupTool.prototype.getTitle = function () { - const items = this.toolbar.getTarget().getEditNotices(); - - // eslint-disable-next-line mediawiki/msg-doc - return ve.msg( this.constructor.static.title, items.length ); -}; - /* Registration */ ve.ui.toolFactory.register( ve.ui.MWNoticesPopupTool ); diff --git a/modules/ve-mw/ui/tools/ve.ui.MWSaveTool.js b/modules/ve-mw/ui/tools/ve.ui.MWSaveTool.js index 2a0dd8362a..46ab150258 100644 --- a/modules/ve-mw/ui/tools/ve.ui.MWSaveTool.js +++ b/modules/ve-mw/ui/tools/ve.ui.MWSaveTool.js @@ -18,8 +18,16 @@ ve.ui.MWSaveTool = function VeUiMWSaveTool() { if ( this.toolbar instanceof ve.ui.TargetToolbar ) { if ( ve.msg( 'accesskey-save' ) !== '-' && ve.msg( 'accesskey-save' ) !== '' ) { + const accessKeySelector = `[accesskey="${ ve.msg( 'accesskey-save' ) }"]`; + let $accessKey; + try { + $accessKey = $( accessKeySelector ); + } catch ( e ) { + mw.log.error( '`accesskey-save` message produced an invalid CSS selector:', accessKeySelector ); + return; + } // FlaggedRevs tries to use this - it's useless on VE pages because all that stuff gets hidden, but it will still conflict so get rid of it - this.toolbar.target.$saveAccessKeyElements = $( '[accesskey="' + ve.msg( 'accesskey-save' ) + '"]' ).removeAttr( 'accesskey' ); + this.toolbar.target.$saveAccessKeyElements = $accessKey.removeAttr( 'accesskey' ); this.$link.attr( 'accesskey', ve.msg( 'accesskey-save' ) ); } diff --git a/modules/ve-mw/ui/tools/ve.ui.MWSignatureTool.js b/modules/ve-mw/ui/tools/ve.ui.MWSignatureTool.js index 83da3f7ab5..790e8150f5 100644 --- a/modules/ve-mw/ui/tools/ve.ui.MWSignatureTool.js +++ b/modules/ve-mw/ui/tools/ve.ui.MWSignatureTool.js @@ -57,7 +57,8 @@ if ( mw.Title.wantSignaturesNamespace( mw.config.get( 'wgNamespaceNumber' ) ) ) sequences: [ 'wikitextSignature' ], label: OO.ui.deferMsg( 'visualeditor-mwsignature-tool' ) } ); - if ( mw.libs.ve.isWikitextAvailable ) { + // TODO: mw.libs.ve.isWikitextAvailable is only available on desktop + if ( mw.libs.ve.isWikitextAvailable && mw.libs.ve.isWikitextAvailable() ) { // Ensure wikitextCommandRegistry has finished loading mw.loader.using( 'ext.visualEditor.mwwikitext' ).then( () => { ve.ui.wikitextCommandRegistry.register( diff --git a/modules/ve-mw/ui/ve.ui.MWSequenceRegistry.js b/modules/ve-mw/ui/ve.ui.MWSequenceRegistry.js index 7148814d50..3fe98babd9 100644 --- a/modules/ve-mw/ui/ve.ui.MWSequenceRegistry.js +++ b/modules/ve-mw/ui/ve.ui.MWSequenceRegistry.js @@ -40,6 +40,10 @@ ve.ui.sequenceRegistry.register( ve.ui.sequenceRegistry.register( new ve.ui.Sequence( 'wikitextComment', 'comment', '