Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

UGC-5539 | Force rendering full viewport to fix template folding #26

Open
wants to merge 68 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
2615196
UGC-4678 | Backport CodeMirror
MrVanosh Jan 18, 2024
f0f6d8b
UGC-4678 | Add custom keydown and scroll handlers
MrVanosh Jan 29, 2024
ef297c4
UGC-4813 | CodeMirror 6 for Visual Editor
MrVanosh Feb 8, 2024
6235fc6
UGC-4813 | Remove unused file
MrVanosh Feb 12, 2024
dda9720
UGC-5216 | Fix tab
MrVanosh Feb 29, 2024
346db68
UGC-5216 | Fix tab keydown
MrVanosh Mar 4, 2024
c352086
UGC-5216 | Fix tab keydown
MrVanosh Mar 4, 2024
5986ab9
Fixes for implementation defects
MrVanosh Mar 5, 2024
b5fab33
UGC-5304 | Fix styles
MrVanosh Mar 13, 2024
db2a887
UGC-5170 | CodeMirror search
MrVanosh Mar 14, 2024
c898912
UGC-5302 | Remove padding
MrVanosh Mar 20, 2024
1df8b86
UGC-5302 | Fix padding
MrVanosh Mar 20, 2024
8ac6726
Merge remote-tracking branch 'wikimedia/master' into REL1_39-codemirr…
MrVanosh Mar 21, 2024
cd1cad5
Merge branch 'REL1_39-codemirror6_fixes' into UGC-4813
MrVanosh Mar 26, 2024
86bb743
Fix imports
MrVanosh Mar 26, 2024
8e2b90c
Fix imports
MrVanosh Mar 26, 2024
02ded91
UGC-5170, UGC-5169 | CodeMirror search
MrVanosh Mar 27, 2024
fbe05d6
Merge master
MrVanosh Mar 27, 2024
e71d122
UGC-5317 | CodeMirror shift key
MrVanosh Apr 3, 2024
ff8f756
test commit to check why it doesn't work
akiel15 Apr 8, 2024
7dca231
more logs
akiel15 Apr 8, 2024
a670793
fix shift key
akiel15 Apr 9, 2024
cf78604
Merge pull request #9 from Wikia/codemirror6-search
calendir Apr 9, 2024
fe64a92
Merge branch 'REL1_39-codemirror6_fixes' into UGC-4813
MrVanosh Apr 11, 2024
70b3df1
UGC-4813 | CodeMirror 6 for Visual Editor
MrVanosh Apr 11, 2024
3d690b6
fix shift key scroll to caret position
akiel15 Apr 12, 2024
e58d18a
fix shift key scroll to caret position
akiel15 Apr 12, 2024
c9f7926
remove comment
akiel15 Apr 12, 2024
10f9cc1
Merge branch 'REL1_39-codemirror6_fixes' into UGC-5317
akiel15 Apr 12, 2024
0ae68cc
resolve conflict
akiel15 Apr 12, 2024
ed0ad6f
UGC-4813 | Fix text sync
MrVanosh Apr 16, 2024
a39ec1c
Merge pull request #10 from Wikia/UGC-5317
calendir Apr 16, 2024
76d38df
UGC-4813 | Fix text linebreaks
MrVanosh Apr 16, 2024
876472d
Merge pull request #8 from Wikia/REL1_39-codemirror6_fixes
calendir Apr 17, 2024
1c176d0
UGC-5447 | Fix switching CM when ?action=edit and VE preferred
MrVanosh Apr 25, 2024
15720ba
Merge pull request #14 from Wikia/UGC-5447
calendir Apr 26, 2024
d20dcbc
fix - Alt+click multiline editing
akiel15 May 3, 2024
f51887f
UGC-5467 | Make gutters show correctly
MrVanosh May 6, 2024
45719f5
Merge pull request #15 from Wikia/UGC-5476
Adrianswiderski May 6, 2024
15b1f7c
UGC-5515 | Fix scroll after enabling Syntax Higlighting
MrVanosh May 8, 2024
e1bccd9
Merge branch 'REL1_39-codemirror6' into REL1_39-codemirror6-ve
MrVanosh May 8, 2024
318bbcd
fix - bold, italic etc. actions after re-enabling syntax highlighting
akiel15 May 8, 2024
de84d30
UGC-5407 | Fix LinkSuggest in WikiEditor using CM6
tmusial99 May 9, 2024
e2c49ef
Merge pull request #17 from Wikia/UGC-5519
calendir May 9, 2024
609a7c1
Merge branch 'REL1_39-codemirror6' into UGC-5407-wikiEditor
tmusial99 May 9, 2024
fbdce26
UGC-5407 | Restore deleted code
tmusial99 May 10, 2024
f24b8e1
Merge pull request #18 from Wikia/UGC-5407-wikiEditor
calendir May 10, 2024
dba3aca
Compatibility with CM5
MrVanosh May 14, 2024
cad0830
UGC-5538 | Fix multiplied inserted text when toggling CM6
tmusial99 May 14, 2024
39aec71
Make cm6enable set to true also when CM6 enabled by param
MrVanosh May 14, 2024
210dac7
UGC-5316 | Add new keymap for redo action on Windows
tmusial99 May 10, 2024
8b83a07
Merge pull request #6 from Wikia/REL1_39-codemirror6
MrVanosh May 14, 2024
d6952f7
Merge pull request #20 from Wikia/UGC-5538
Adrianswiderski May 15, 2024
a99eede
UGC-5516 | Added a hack to initialize CodeMirror with correct position
tmusial99 May 29, 2024
e5f3d8d
UGC-5516 | Removed removing the `printing` state hack after CM initia…
tmusial99 Jun 3, 2024
52617cb
UGC-5607 | Loading CM5 and CM6 modules in VE are fixed
tmusial99 Jun 12, 2024
390509c
Merge pull request #22 from Wikia/UGC-5607
calendir Jun 17, 2024
b491e43
Merge branch 'REL1_39-codemirror6-ve' into UGC-5516
tmusial99 Jun 17, 2024
a01101e
Merge pull request #21 from Wikia/UGC-5516
calendir Jun 20, 2024
920f141
Merge branch 'master' into REL1_39-codemirror6-ve
tmusial99 Jun 24, 2024
71f2c73
Merge pull request #16 from Wikia/REL1_39-codemirror6-ve
tmusial99 Jun 26, 2024
254d4cc
UGC-5726 | Fix anon 'view source' exception
MrVanosh Jul 10, 2024
477648d
Merge pull request #23 from Wikia/UGC-5726
akiel15 Jul 10, 2024
2ebe7cf
UGC-5737 | Add translations
MrVanosh Jul 17, 2024
900bc10
Merge pull request #24 from Wikia/UGC-5737
tmusial99 Jul 19, 2024
e4fa642
UGC-5850 | Limit sections styling only to WikiEditor
tmusial99 Jul 30, 2024
7075924
Merge pull request #25 from Wikia/UGC-5850
tmusial99 Jul 30, 2024
c323584
UGC-5539 | Force rendering full viewport to fix template folding
tmusial99 Jul 31, 2024
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
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
/resources/lib/
/vendor
/docs
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,4 @@
/composer.lock
.eslintcache
.env
docs/
37 changes: 5 additions & 32 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
# mediawiki/extensions/CodeMirror

Homepage: https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:CodeMirror
CodeMirror 6 homepage: [https://www.mediawiki.org/wiki/Extension:CodeMirror/6](https://www.mediawiki.org/wiki/Extension:CodeMirror/6)

## Development

Expand All @@ -24,42 +22,17 @@ _NOTE: Consider using [Fresh](https://gerrit.wikimedia.org/g/fresh/) to run thes
You'll want to keep this running in a separate terminal during development.
* `npm run build` to compile the production assets. You *must* run this step before
sending the patch or CI will fail (so that sources and built assets are in sync).
* `npm run doc` to generate the API documentation.
* `npm test` to run the linting tools, JavaScript unit tests, and build checks.
* `npm run test:lint` for linting of JS/LESS/CSS.
* `npm run test:lint:js` for linting of just JavaScript.
* `npm run test:lint:styles` for linting of just Less/CSS.
* `npm run test:i18n` for linting of i18n messages with banana-checker.
* `npm run test:unit` for the new Jest unit tests.
* `npm run selenium-test` for the Selenium tests.
* `npm run test:bundlesize` to test if the gzip'd entrypoint is of acceptable size.

Older QUnit tests are in `resources/mode/mediawiki/tests/qunit/`. These will
eventually be moved over to `tests/qunit` and rewritten for CodeMirror 6.
* Older QUnit tests are in `resources/mode/mediawiki/tests/qunit/`. These have been
replaced and will be removed after the CodeMirror 6 upgrade.

## CodeMirror 6 change log

This is a list of changes that either come by default with the CodeMirror 6 upgrade,
or changes of our that we deem as reasonable improvements.
Some may be removed pending user feedback:

### Upstream changes

* Bracket matching now highlights unmatched brackets in red

### New MediaWiki mode features

* Closing HTML tags that highlighted as an error now also highlight the closing '>'
* Allow link titles to be both emboldened and italicized.
* Wikitext syntax highlighting is shown on protected pages
([T301615](https://phabricator.wikimedia.org/T301615))

### Deprecations and other changes

* The `.cm-mw-mnemonic` CSS class has been renamed to `.cm-mw-html-entity`
* The `.cm-mw-template-name-mnemonic` class has been removed.
Use `.cm-mw-template-ground.cm-html-entity` instead.
* Line-level styling for `<nowiki>`, `<pre>`, and any tag without an associated
TagMode has been removed.
* The browser's native search functionality (ala Ctrl+F) has been replaced with
search functionality built into CodeMirror. This is necessary to maintain
performance (see [T303664](https://phabricator.wikimedia.org/T303664)).
* See [Extension:CodeMirror/6](https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:CodeMirror/6#Differences_from_CodeMirror_5)
85 changes: 65 additions & 20 deletions extension.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"type": "editor",
"license-name": "GPL-2.0-or-later",
"requires": {
"MediaWiki": ">= 1.42.0"
"MediaWiki": ">= 1.39.0"
},
"config": {
"CodeMirrorV6": {
Expand Down Expand Up @@ -166,32 +166,24 @@
"codemirror-toggle-label"
]
},
"ext.CodeMirror.v6.WikiEditor": {
"ext.CodeMirror.v6": {
"dependencies": [
"ext.wikiEditor",
"web2017-polyfills",
"mediawiki.api",
"mediawiki.user",
"user.options",
"ext.CodeMirror.v6.messages"
"ext.CodeMirror.v6.lib"
],
"packageFiles": [
"dist/main.js",
"dist/codemirror.js",
{
"name": "ext.CodeMirror.data.js",
"callback": "MediaWiki\\Extension\\CodeMirror\\DataScript::makeScript"
"callback": "MediaWiki\\Extension\\CodeMirror\\DataScript::makeScriptv6"
}
],
"styles": [
"ext.CodeMirror.v6.less",
"mode/mediawiki/mediawiki.less",
"mode/mediawiki/colorblind-colors.less"
"ext.CodeMirror.v6.less"
],
"messages": [
"codemirror-toggle-label"
]
},
"ext.CodeMirror.v6.messages": {
"messages": [
"codemirror-find",
"codemirror-next",
Expand All @@ -203,6 +195,7 @@
"codemirror-replace",
"codemirror-replace-placeholder",
"codemirror-replace-all",
"codemirror-search-done",
"codemirror-control-character",
"codemirror-special-char-null",
"codemirror-special-char-bell",
Expand Down Expand Up @@ -231,6 +224,61 @@
"codemirror-unfold",
"codemirror-folded-code"
]
},
"ext.CodeMirror.v6.lib": {
"packageFiles": [
"dist/vendor.js"
],
"dependencies": [
"web2017-polyfills"
]
},
"ext.CodeMirror.v6.mode.mediawiki": {
"packageFiles": "dist/codemirror.mode.mediawiki.js",
"styles": [
"mode/mediawiki/mediawiki.less",
"mode/mediawiki/colorblind-colors.less"
],
"dependencies": [
"ext.CodeMirror.v6",
"ext.CodeMirror.v6.lib"
]
},
"ext.CodeMirror.v6.WikiEditor": {
"dependencies": [
"ext.wikiEditor",
"ext.CodeMirror.v6.lib",
"ext.CodeMirror.v6.mode.mediawiki"
],
"packageFiles": [
"dist/codemirror.wikieditor.mediawiki.js"
],
"messages": [
"codemirror-toggle-label"
]
},
"ext.CodeMirror.v6.visualEditor": {
"dependencies": [
"ext.visualEditor.mwcore",
"ext.visualEditor.mwmeta",
"web2017-polyfills",
"mediawiki.api",
"user.options",
"ext.CodeMirror.v6.lib",
"ext.CodeMirror.v6.mode.mediawiki"
],
"scripts": [
"dist/ve.ui.CodeMirrorAction.js",
"dist/ve.ui.CodeMirrorTool.js"
],
"styles": [
"modules/ve-cm/ve.ui.CodeMirror.v6.less",
"mode/mediawiki/mediawiki.less",
"mode/mediawiki/colorblind-colors.less"
],
"messages": [
"codemirror-toggle-label"
]
}
},
"ResourceFileModulePaths": {
Expand All @@ -256,7 +304,9 @@
"Hooks": {
"EditPage::showEditForm:initial": "main",
"EditPage::showReadOnlyForm:initial": "main",
"GetPreferences": "main"
"BeforePageDisplay": "main",
"GetPreferences": "main",
"ResourceLoaderGetConfigVars": "main"
},
"HookHandlers": {
"main": {
Expand All @@ -280,11 +330,6 @@
"nowiki": "mw-tag-nowiki"
}
},
"VisualEditor": {
"PluginModules": [
"ext.CodeMirror.visualEditor"
]
},
"EventLogging": {
"Schemas": {
"CodeMirrorUsage": "/analytics/legacy/codemirrorusage/1.0.0"
Expand Down
36 changes: 23 additions & 13 deletions i18n/ar.json
Original file line number Diff line number Diff line change
@@ -1,14 +1,24 @@
{
"@metadata": {
"authors": [
"FShbib",
"Shbib Al-Subaie",
"ديفيد"
]
},
"codemirror-desc": "يوفر تسليط الضوء على بناء الجملة في محرر نص الويكي",
"codemirror-toggle-label": "تسليط الضوء على التركيب",
"codemirror-prefs-colorblind": "فعّل مخططًا متوافقًا مع عمى الألوان لتعليم الصيغة عند تعديل نص ويكي.",
"codemirror-prefs-colorblind-help": "لن يعمل هذا التفضيل إذا كنت تستخدم إضافةً لتعليم الصيغة.",
"prefs-accessibility": "إمكانية الوصول"
}
"@metadata": {
"authors": [
"FShbib",
"Shbib Al-Subaie",
"ديفيد"
]
},
"codemirror-desc": "يوفر تسليط الضوء على بناء الجملة في محرر نص الويكي",
"codemirror-toggle-label": "تسليط الضوء على التركيب",
"codemirror-prefs-colorblind": "فعّل مخططًا متوافقًا مع عمى الألوان لتعليم الصيغة عند تعديل نص ويكي.",
"codemirror-prefs-colorblind-help": "لن يعمل هذا التفضيل إذا كنت تستخدم إضافةً لتعليم الصيغة.",
"prefs-accessibility": "إمكانية الوصول",
"codemirror-find": "ابحث",
"codemirror-next": "ابحث عن التالي",
"codemirror-previous": "ابحث عن السابق",
"codemirror-match-case": "مطابقة حالة الأحرف",
"codemirror-regexp": "تعبير منتظم",
"codemirror-by-word": "الكلمة كلها",
"codemirror-replace": "استبدال",
"codemirror-replace-placeholder": "استبدل",
"codemirror-replace-all": "استبدل الكل",
"codemirror-search-done": "تم"
}
26 changes: 18 additions & 8 deletions i18n/ast.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,19 @@
{
"@metadata": {
"authors": [
"Xuacu"
]
},
"codemirror-desc": "Ufre sintaxis resaltada nel editor de testu wiki",
"codemirror-toggle-label": "Resaltador de sintaxis"
}
"@metadata": {
"authors": [
"Xuacu"
]
},
"codemirror-desc": "Ufre sintaxis resaltada nel editor de testu wiki",
"codemirror-toggle-label": "Resaltador de sintaxis",
"codemirror-find": "Alcontrar",
"codemirror-next": "Alcontrar siguiente",
"codemirror-previous": "Alcontrar anterior",
"codemirror-match-case": "Distinguir mayúscules",
"codemirror-regexp": "Espresión regular",
"codemirror-by-word": "Palabra entera",
"codemirror-replace": "Sustituir",
"codemirror-replace-placeholder": "Sustituir",
"codemirror-replace-all": "Sustituir toos",
"codemirror-search-done": "Fecho"
}
34 changes: 22 additions & 12 deletions i18n/az.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,23 @@
{
"@metadata": {
"authors": [
"NMW03",
"Toghrul Rahimli"
]
},
"codemirror-desc": "Vikimətn redaktorunda kodun rəngli olmasını təmin edir",
"codemirror-toggle-label": "Kodun rənglənməsi",
"codemirror-prefs-colorblind": "Vikimətn redaktə edərkən rəng korluğuna uyğun sintaksis sxemini aktivləşdir",
"codemirror-prefs-colorblind-help": "Sintaksis üçün hansısa qadcetdən istifadə etsəniz, bu seçim işləməyəcək.",
"prefs-accessibility": "Əlçatanlıq"
}
"@metadata": {
"authors": [
"NMW03",
"Toghrul Rahimli"
]
},
"codemirror-desc": "Vikimətn redaktorunda kodun rəngli olmasını təmin edir",
"codemirror-toggle-label": "Kodun rənglənməsi",
"codemirror-prefs-colorblind": "Vikimətn redaktə edərkən rəng korluğuna uyğun sintaksis sxemini aktivləşdir",
"codemirror-prefs-colorblind-help": "Sintaksis üçün hansısa qadcetdən istifadə etsəniz, bu seçim işləməyəcək.",
"prefs-accessibility": "Əlçatanlıq",
"codemirror-find": "Tap",
"codemirror-next": "Növbətini tap",
"codemirror-previous": "Əvvəlkini tap",
"codemirror-match-case": "Böyük/kiçik hərf həssaslığı",
"codemirror-regexp": "Regular expression",
"codemirror-by-word": "Bütün söz",
"codemirror-replace": "Dəyiş",
"codemirror-replace-placeholder": "Dəyiş",
"codemirror-replace-all": "Hamısını dəyiş",
"codemirror-search-done": "Oldu"
}
14 changes: 7 additions & 7 deletions i18n/azb.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
"Alp Er Tunqa"
]
},
"codemirror-toggle-label": "ترکیبلری هایلایتلا"
}
"@metadata": {
"authors": [
"Alp Er Tunqa"
]
},
"codemirror-toggle-label": "ترکیبلری هایلایتلا"
}
38 changes: 24 additions & 14 deletions i18n/ba.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,25 @@
{
"@metadata": {
"authors": [
"Bashkorttan",
"Sagan",
"Азат Хәлилов",
"З. ӘЙЛЕ"
]
},
"codemirror-desc": "Вики-тексты мөхәррирләгәндә синтаксисты айырып күрһәтә",
"codemirror-toggle-label": "Синтаксисты айырып күрһәтергә",
"codemirror-prefs-colorblind": "Викитексты мөхәррирләгәндә синтаксисты айырып күрһәтеү өсөн төҫ айырмаусылар схемаһын асырға",
"codemirror-prefs-colorblind-help": "Әгәр синтаксисты айырып күрһәтеү өсөн гаджет ҡулланһағыҙ, был үҙенсәлек эшләмәйәсәк.",
"prefs-accessibility": "Ҡулайлылыҡ"
}
"@metadata": {
"authors": [
"Bashkorttan",
"Sagan",
"Азат Хәлилов",
"З. ӘЙЛЕ"
]
},
"codemirror-desc": "Вики-тексты мөхәррирләгәндә синтаксисты айырып күрһәтә",
"codemirror-toggle-label": "Синтаксисты айырып күрһәтергә",
"codemirror-prefs-colorblind": "Викитексты мөхәррирләгәндә синтаксисты айырып күрһәтеү өсөн төҫ айырмаусылар схемаһын асырға",
"codemirror-prefs-colorblind-help": "Әгәр синтаксисты айырып күрһәтеү өсөн гаджет ҡулланһағыҙ, был үҙенсәлек эшләмәйәсәк.",
"prefs-accessibility": "Ҡулайлылыҡ",
"codemirror-find": "Эҙләү",
"codemirror-next": "Сираттағыны табырға",
"codemirror-previous": "Тәүгеләрҙе эҙләү",
"codemirror-match-case": "Регистрҙы иҫәпкә алырға",
"codemirror-regexp": "Ваҡытлы аңлатма",
"codemirror-by-word": "Һүҙ тулыһынса",
"codemirror-replace": "Алмаштырырға",
"codemirror-replace-placeholder": "Алмаштырырға",
"codemirror-replace-all": "Барыһын да алмаштырырға",
"codemirror-search-done": "Әҙер"
}
Loading