Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
5401107
Make textSelection methods chainable
nardog Sep 5, 2024
800ce75
Enable live autocompletion in CodeEditor
siddharthvp Oct 19, 2024
cef27e9
build: Updating mediawiki/mediawiki-codesniffer to 45.0.0
Nov 2, 2024
390486e
foreign-resources: Add purl for ace editor
jdforrester Nov 5, 2024
306a0f1
Merge "Enable live autocompletion in CodeEditor"
Nov 12, 2024
1ca6144
build: Updating cross-spawn to 7.0.6
Nov 20, 2024
9f5e341
Localisation updates from https://translatewiki.net.
translatewiki Dec 6, 2024
ab5626c
Localisation updates from https://translatewiki.net.
translatewiki Dec 9, 2024
b7d3162
Fix appending of CodeEditor statusbar
hartman Dec 10, 2024
e68d813
build: Updating nanoid to 3.3.8
Dec 11, 2024
c63c9de
build: Updating mediawiki/mediawiki-phan-config to 0.15.0
Dec 12, 2024
041475b
Upgrade Ace from 1.32.7 to 1.37.1
siddharthvp Dec 28, 2024
df876ef
Merge "Make textSelection methods chainable"
Jan 1, 2025
132d423
Merge "Upgrade Ace from 1.32.7 to 1.37.1"
Jan 1, 2025
8bdaa2f
Merge "Fix appending of CodeEditor statusbar"
Jan 1, 2025
c499990
build: Updating stylelint-config-wikimedia to 0.18.0
Jan 11, 2025
de2bb84
build: Updating mediawiki/mediawiki-phan-config to 0.15.1
Jan 12, 2025
9c1606a
Localisation updates from https://translatewiki.net.
translatewiki Jan 20, 2025
58e0382
build: Updating mediawiki/mediawiki-codesniffer to 46.0.0
Jan 31, 2025
6cb9bce
ESLint: Update to ES6 and autofix
edg2s Feb 18, 2025
e8172f0
ESLint: Manually fix prefer-const violations
edg2s Feb 18, 2025
c827115
build: Update MediaWiki requirement to 1.44
jdforrester Mar 19, 2025
15e77d5
Raise version of Ace to 1.39.1
hartman Mar 31, 2025
d880a58
Use foreign resources for updating Ace
hartman Jan 7, 2025
e5b10da
Use namespaced ErrorPageError class
umherirrender Apr 19, 2025
be67aa7
build: Updating eslint-config-wikimedia to 0.29.1
Mar 31, 2025
eb0e129
Hooks: add temporary config flag to prevent conflicts with CodeMirror
MusikAnimal Jan 4, 2025
308bb61
Merge "Hooks: add temporary config flag to prevent conflicts with Cod…
May 4, 2025
1e0ba7e
build: Updating mediawiki/mediawiki-codesniffer to 47.0.0
May 6, 2025
96842e1
Hooks: disable if content model is unset AND CodeMirror beta is set
MusikAnimal May 7, 2025
2fbc93c
Localisation updates from https://translatewiki.net.
translatewiki May 12, 2025
7aea42c
Localisation updates from https://translatewiki.net.
translatewiki May 20, 2025
357cf81
build: Updating eslint-config-wikimedia to 0.30.0
May 25, 2025
1dbc5f5
build: Updating brace-expansion to 1.1.12, 2.0.2
Jun 12, 2025
7b3f61e
build: Update MediaWiki requirement to 1.45
jdforrester Jun 18, 2025
2dd4593
Localisation updates from https://translatewiki.net.
translatewiki Jun 30, 2025
a885221
build: Updating mediawiki/mediawiki-phan-config to 0.16.0
Jul 11, 2025
f860395
Use PHP Constructor Property Promotion syntax
Jul 10, 2025
023a53c
Localisation updates from https://translatewiki.net.
translatewiki Jul 15, 2025
1aeb675
Use the mode as the mechanism to control conflicts with CodeMirror
MusikAnimal Jul 16, 2025
0737701
Localisation updates from https://translatewiki.net.
translatewiki Jul 21, 2025
be53ead
Support Vue content model in CodeEditor
siddharthvp Dec 24, 2024
e44763b
Hooks: add public method to check conflicts with CodeMirror
MusikAnimal Jul 21, 2025
f65d6d3
build: Updating eslint-config-wikimedia to 0.31.0
Jul 28, 2025
7e1cfa0
Localisation updates from https://translatewiki.net.
translatewiki Aug 6, 2025
7b98f42
build: Updating mediawiki/mediawiki-phan-config to 0.17.0
Aug 11, 2025
d8620bc
Localisation updates from https://translatewiki.net.
translatewiki Aug 12, 2025
b8dce12
Localisation updates from https://translatewiki.net.
translatewiki Sep 1, 2025
9368b1d
build: Updating mediawiki/mediawiki-codesniffer to 48.0.0
Sep 8, 2025
cad2c9b
Localisation updates from https://translatewiki.net.
translatewiki Sep 15, 2025
351dbed
build: Remove unused suppression of LowerCamelFunctionsName
umherirrender Sep 17, 2025
52a90f8
Localisation updates from https://translatewiki.net.
translatewiki Sep 19, 2025
f51d40e
Add foreign-resources.cdx.json and fix error in config
samwilson Sep 22, 2025
3fc4725
build: Updating js-yaml to 3.14.2, 4.1.1
Nov 20, 2025
497ab7d
Localisation updates from https://translatewiki.net.
translatewiki Dec 18, 2025
961fee1
Localisation updates from https://translatewiki.net.
translatewiki Jan 22, 2026
c16938d
build: Updating lodash to 4.17.23
Jan 25, 2026
b0e3f8b
Localisation updates from https://translatewiki.net.
translatewiki Feb 26, 2026
745571d
build: Updating ajv to 6.14.0, 8.18.0
Mar 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .eslintignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Upstream code
/modules/lib/
/modules/lib/*
!modules/lib/foreign-resources.*

# Build
/vendor/
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,4 @@ project.index
## Sublime
sublime-*
sftp-config.json
/.stylelintcache
17 changes: 16 additions & 1 deletion .phan/config.php
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
<?php

return require __DIR__ . '/../vendor/mediawiki/mediawiki-phan-config/src/config.php';
$cfg = require __DIR__ . '/../vendor/mediawiki/mediawiki-phan-config/src/config.php';

$cfg['directory_list'] = array_merge(
$cfg['directory_list'],
[
'../../extensions/BetaFeatures'
]
);
$cfg['exclude_analysis_directory_list'] = array_merge(
$cfg['exclude_analysis_directory_list'],
[
'../../extensions/BetaFeatures'
]
);

return $cfg;
39 changes: 3 additions & 36 deletions Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,7 @@
module.exports = function ( grunt ) {
const conf = grunt.file.readJSON( 'extension.json' );
grunt.loadNpmTasks( 'grunt-banana-checker' );
grunt.loadNpmTasks( 'grunt-contrib-clean' );
grunt.loadNpmTasks( 'grunt-contrib-copy' );
grunt.loadNpmTasks( 'grunt-eslint' );
grunt.loadNpmTasks( 'grunt-exec' );
grunt.loadNpmTasks( 'grunt-stylelint' );

grunt.initConfig( {
Expand All @@ -24,6 +21,9 @@ module.exports = function ( grunt ) {
all: [ '.' ]
},
stylelint: {
options: {
cache: true
},
all: [
'**/*.{css,less}',
'!node_modules/**',
Expand All @@ -36,42 +36,9 @@ module.exports = function ( grunt ) {
requireLowerCase: false
},
all: conf.MessagesDirs.CodeEditor
},
exec: {
'npm-update-ace': {
cmd: 'npm update ace-builds',
callback: function ( error, stdout, stderr ) {
grunt.log.write( stdout );
if ( stderr ) {
grunt.log.write( 'Error: ' + stderr );
}

if ( error !== null ) {
grunt.log.error( 'update error: ' + error );
}
}
}
},
clean: {
ace: [ 'modules/lib/ace/*' ]
},
copy: {
ace: {
expand: true,
cwd: 'node_modules/ace-builds/src-noconflict/',
src: [ '**' ],
dest: 'modules/lib/ace/'
},
'ace-misc-files': {
expand: true,
cwd: 'node_modules/ace-builds/',
src: [ 'LICENSE', 'CHANGELOG.md', 'README.md' ],
dest: 'modules/lib/ace/'
}
}
} );

grunt.registerTask( 'update-ace', [ 'exec:npm-update-ace', 'clean:ace', 'copy:ace', 'copy:ace-misc-files' ] );
grunt.registerTask( 'test', [ 'eslint', 'stylelint', 'banana' ] );
grunt.registerTask( 'default', 'test' );
};
4 changes: 2 additions & 2 deletions composer.json
Original file line number Diff line number Diff line change
@@ -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"
Expand Down
17 changes: 15 additions & 2 deletions extension.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,22 @@
"license-name": "GPL-2.0-or-later AND BSD-3-Clause",
"type": "editor",
"requires": {
"MediaWiki": ">= 1.43",
"MediaWiki": ">= 1.45",
"extensions": {
"WikiEditor": ">= 0.5.2"
}
},
"config": {
"CodeEditorEnabledModes": {
"value": {
"javascript": true,
"json": true,
"css": true,
"lua": true
},
"description": "Temporary configuration flag to control conflicts with Extension:CodeMirror. Only modes that exist in CodeMirror need to be specified."
}
},
"Hooks": {
"EditPage::showEditForm:initial": "CodeEditorHooks",
"EditPage::showReadOnlyForm:initial": "CodeEditorHooks",
Expand All @@ -24,7 +35,8 @@
"class": "MediaWiki\\Extension\\CodeEditor\\Hooks",
"services": [
"UserOptionsLookup",
"HookContainer"
"HookContainer",
"MainConfig"
]
}
},
Expand Down Expand Up @@ -113,6 +125,7 @@
"lib/ace/mode-javascript.js",
"lib/ace/mode-json.js",
"lib/ace/mode-css.js",
"lib/ace/mode-vue.js",
"lib/ace/mode-lua.js",
"lib/ace/ext-language_tools.js",
"lib/ace/ext-modelist.js"
Expand Down
3 changes: 2 additions & 1 deletion i18n/ar.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
"Mohammed Qays",
"SaldırganSincap",
"ديفيد",
"علاء",
Expand All @@ -9,7 +10,7 @@
},
"codeeditor-desc": "بناء على ذلك، أبرز التحرير لصفحات جافا سكريبت وCSS باستخدام [https://ace.c9.io/ محرر Ace]",
"codeeditor-next-annotation": "انتقل إلى التعليق التوضيحي التالي",
"codeeditor-toolbar-toggle": "تبديل محرر الكود",
"codeeditor-toolbar-toggle": "تبديل محرر الأكواد",
"codeeditor-save-with-errors": "الملف يحتوي على أخطاء. هل أنت متأكد أنك تريد النشر؟",
"codeeditor-invisibleChars-toggle": "تبديل الأحرف غير المرئية",
"codeeditor-lineWrapping-toggle": "تبديل التفاف الخط",
Expand Down
4 changes: 2 additions & 2 deletions i18n/az.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@
"codeeditor-desc": "[https://ace.c9.io/ Ace editor] istifadə edərək JavaScript and CSS səhifələri üçün sintaksis-rəngləndirici redaktor",
"codeeditor-next-annotation": "Növbəti annotasiyaya keç",
"codeeditor-toolbar-toggle": "Kod redaktorunu dəyişdir",
"codeeditor-save-with-errors": "Sənəddə səhvlər var. Yayımlamaq istədiyinizə əminsiniz?",
"codeeditor-save-with-errors": "Kodda xətalar mövcuddur. Yayımlamaq istədiyinizə əminsiniz?",
"codeeditor-invisibleChars-toggle": "Görünməz simvolları dəyişdir",
"codeeditor-lineWrapping-toggle": "Sətir sürüşməsini dəyiş",
"codeeditor-searchReplace-toggle": "Axtarış və dəyişdirmə dialoqunu dəyiş",
"codeeditor-gotoline": "Sətirə get...",
"codeeditor-gotoline-placeholder": "sətir[:sütun]",
"codeeditor-gotoline-prompt": "Sətir nömrəsini daxil et",
"codeeditor-indent": "Giriş",
"codeeditor-indent": "Abzas",
"codeeditor-outdent": "Çıxış",
"codeeditor-error-title": "Paket uğursuz oldu",
"codeeditor-error-message": "CodeEditor-un yüklənməsi üçün WikiEditor lazımdır."
Expand Down
8 changes: 0 additions & 8 deletions i18n/en-gb.json

This file was deleted.

2 changes: 1 addition & 1 deletion i18n/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"codeeditor-desc": "Edición de páginas con resaltado de sintaxis para JavaScript y CSS, usando [https://ace.c9.io el editor Ace]",
"codeeditor-next-annotation": "Ir a la anotación siguiente",
"codeeditor-toolbar-toggle": "Activar o desactivar el editor de código",
"codeeditor-save-with-errors": "El documento contiene errores. ¿Confirmas que quieres publicarlo?",
"codeeditor-save-with-errors": "El documento contiene errores. ¿{{#FORMAL:Confirmas|Confirma}} que {{#FORMAL:quieres|quiere}} publicarlo?",
"codeeditor-invisibleChars-toggle": "Mostrar u ocultar los caracteres invisibles",
"codeeditor-lineWrapping-toggle": "Activar o desactivar el ajuste de renglones",
"codeeditor-searchReplace-toggle": "Mostrar u ocultar el cuadro de buscar y reemplazar",
Expand Down
4 changes: 3 additions & 1 deletion i18n/fi.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
"@metadata": {
"authors": [
"01miki10",
"Nike"
"Nike",
"Samoasambia"
]
},
"codeeditor-desc": "Lisää syntaksinkorostuksen JavaScript ja CSS-sivuille käyttäen [https://ace.c9.io/ Ace-muokkainta]",
Expand All @@ -17,5 +18,6 @@
"codeeditor-gotoline-prompt": "Syötä rivin numero",
"codeeditor-indent": "Sisennä",
"codeeditor-outdent": "Poista sisennys",
"codeeditor-error-title": "Riippuvuus epäonnistui",
"codeeditor-error-message": "CodeEditor tarvitsee WikiEditorin lataamisen."
}
2 changes: 1 addition & 1 deletion i18n/fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"codeeditor-desc": "Coloration syntaxique lors de la modification de pages écrites en JavaScript et CSS, en utilisant l’[https://ace.c9.io/ éditeur Ace]",
"codeeditor-next-annotation": "Aller à la prochaine annotation",
"codeeditor-toolbar-toggle": "Activer / désactiver l’éditeur de code",
"codeeditor-save-with-errors": "Le document contient des erreurs. Êtes-vous sûr{{GENDER:||e}} de vouloir le publier ?",
"codeeditor-save-with-errors": "Le document contient des erreurs. Êtes-vous {{GENDER:|sûr|sûre}} de vouloir le publier ?",
"codeeditor-invisibleChars-toggle": "Afficher / masquer les caractères invisibles",
"codeeditor-lineWrapping-toggle": "Activer / désactiver le repli de ligne",
"codeeditor-searchReplace-toggle": "Afficher / masquer l’outil de recherche et de remplacement",
Expand Down
11 changes: 6 additions & 5 deletions i18n/id.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,17 @@
"authors": [
"Daud I.F. Argana",
"Farras",
"William Surya Permana"
"William Surya Permana",
"Penyuwangi"
]
},
"codeeditor-desc": "Penyuntingan dengan penyorotan sintaks untuk halaman JavaScript dan CSS menggunakan [https://ace.c9.io/ penyunting Ace]",
"codeeditor-next-annotation": "Pergi ke anotasi berikutnya",
"codeeditor-toolbar-toggle": "Aktifkan/Nonaktifkan penyunting kode",
"codeeditor-toolbar-toggle": "Nyalakan/Matikan penyunting kode",
"codeeditor-save-with-errors": "Dokumen mengandung galat. Apakah Anda yakin ingin menerbitkannya?",
"codeeditor-invisibleChars-toggle": "Aktifkan/Nonaktifkan karakter tidak terlihat",
"codeeditor-lineWrapping-toggle": "Aktifkan/Nonaktifkan pembungkusan baris",
"codeeditor-searchReplace-toggle": "Aktifkan/Nonaktifkan dialog cari dan ganti",
"codeeditor-invisibleChars-toggle": "Nyalakan/Matikan karakter tak terlihat",
"codeeditor-lineWrapping-toggle": "Nyalakan/Matikan pembungkusan baris",
"codeeditor-searchReplace-toggle": "Nyalakan/Matikan dialog cari dan ganti",
"codeeditor-gotoline": "Pergi ke baris nomor...",
"codeeditor-gotoline-placeholder": "baris[:kolom]",
"codeeditor-gotoline-prompt": "Masukkan nomor baris",
Expand Down
12 changes: 9 additions & 3 deletions i18n/lb.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,20 @@
{
"@metadata": {
"authors": [
"Robby"
"Robby",
"Volvox"
]
},
"codeeditor-desc": "Ännere vu JavaScript an CSS-Säite mam [https://ace.c9.io/ Ace editor] deen d'Syntax faarweg duerstellt",
"codeeditor-next-annotation": "Op déi nächst Notiz goen",
"codeeditor-toolbar-toggle": "Editeur vum Code an- an ausschalten",
"codeeditor-save-with-errors": "Et si Feeler am Dokument. Sidd Dir sécher datt dir e et späichere wëllt?",
"codeeditor-gotoline": "Gitt op d'Linn mat der Nummer...",
"codeeditor-save-with-errors": "Et si Feeler am Dokument. Sidd Dir sécher, datt Dir et verëffentleche wëllt?",
"codeeditor-invisibleChars-toggle": "Onsiichtbar Zeechen ëmschalten",
"codeeditor-lineWrapping-toggle": "Zeilenëmbroch ëmschalten",
"codeeditor-searchReplace-toggle": "Sichen-an-Ersetzen-Dialog ëmschalten",
"codeeditor-gotoline": "Gitt op d'Zeil mat der Nummer…",
"codeeditor-gotoline-placeholder": "Zeil[:Kolonn]",
"codeeditor-gotoline-prompt": "Gitt eng Zeilennummer an",
"codeeditor-indent": "Eraréckelen",
"codeeditor-outdent": "Erausréckelen",
"codeeditor-error-title": "Ofhängegkeet feelgeschlo",
Expand Down
19 changes: 19 additions & 0 deletions i18n/ps.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"@metadata": {
"authors": [
"شاه زمان پټان"
]
},
"codeeditor-desc": "د جاوا سکريپټ او سي‌اېس‌اېس مخونو لپاره د [https://ace.c9.io/ ايس سمونگر] په کارولو سره د غونډلپوهې-روښانه‌شوی سمون کول",
"codeeditor-next-annotation": "راتلونکي څنگ‌ليک ته ورتلل",
"codeeditor-toolbar-toggle": "کوډ سمونگر بدلول",
"codeeditor-save-with-errors": "لاسوند تېروتنې لري. ايا تاسو ډاډه ياست چې خپور يې کړئ؟",
"codeeditor-invisibleChars-toggle": "نه ليد‌وړ لوښې بدلول",
"codeeditor-lineWrapping-toggle": "د کرښې نغاړل بدلول",
"codeeditor-gotoline": "د کرښې شمېرې ته ورتلل",
"codeeditor-gotoline-placeholder": "کرښه [:ستون]",
"codeeditor-gotoline-prompt": "کرښې شمېره وليکئ",
"codeeditor-indent": "دننکوږی",
"codeeditor-outdent": "بهرکوږی",
"codeeditor-error-message": "کوډسمونگر د ويکي‌سمونگر بارولو ته اړتيا لري."
}
3 changes: 2 additions & 1 deletion i18n/sh-latn.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
"Aca",
"Winston Sung"
]
},
Expand All @@ -13,7 +14,7 @@
"codeeditor-searchReplace-toggle": "Ukl/iskl. dijalog za pretragu i zamjenu",
"codeeditor-gotoline": "Idi na red broj...",
"codeeditor-gotoline-placeholder": "red[:kolona]",
"codeeditor-gotoline-prompt": "Upišite broj reda",
"codeeditor-gotoline-prompt": "Unesite broj reda",
"codeeditor-indent": "Uvlaka",
"codeeditor-outdent": "Izvlaka",
"codeeditor-error-title": "Zavisnost nije uspjela",
Expand Down
9 changes: 9 additions & 0 deletions i18n/sjd.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"@metadata": {
"authors": [
"Merrahtar"
]
},
"codeeditor-toolbar-toggle": "Ко̄д воа̄йхэм режимм",
"codeeditor-save-with-errors": "Документэсьт ле̄в ся̄гкнэг. Та̄так то̄нн зоа̄бэль со̄н элмсаһтӭ?"
}
1 change: 1 addition & 0 deletions i18n/sr-ec.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
"Aca",
"BadDog",
"Kizule",
"Obsuser"
Expand Down
22 changes: 22 additions & 0 deletions i18n/yue-hant.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"@metadata": {
"authors": [
"JeffreyKim",
"Ktchankt"
]
},
"codeeditor-desc": "用[https://ace.c9.io/Ace editor]嚟編輯JavaScript同CSS頁面嘅語法突顯",
"codeeditor-next-annotation": "去下一個註解",
"codeeditor-toolbar-toggle": "切換代碼編輯器",
"codeeditor-save-with-errors": "呢份文件包含啲錯誤。 你肯定你想發佈?",
"codeeditor-invisibleChars-toggle": "切換隱形字元",
"codeeditor-lineWrapping-toggle": "切換線條包裝",
"codeeditor-searchReplace-toggle": "切換搜尋同替換對話框",
"codeeditor-gotoline": "去行嘅冧巴 ...",
"codeeditor-gotoline-placeholder": "行[:欄]",
"codeeditor-gotoline-prompt": "輸入一個行嘅冧巴",
"codeeditor-indent": "縮排",
"codeeditor-outdent": "過時",
"codeeditor-error-title": "依賴失敗咗",
"codeeditor-error-message": "代碼編輯器需要加載維基編輯器。"
}
Loading