Problem/Motivation
CKEditor 5 will be the best core editing experience going forward. Umami should demonstrate the best features of Drupal, and its rich text editor is no exception.
Steps to reproduce
N/A
Proposed resolution
Configure Umami to use CKEditor 5
Remaining tasks
Edit configuration to use CKEditor5 for existing text formatsChange CKEditor stylesheets for CKEditor 5
User interface changes
Umami to replace all instances of CKEditor 4 in its interface with CKEditor 5.
API changes
None
Data model changes
None that we care about.
Release notes snippet
| Comment | File | Size | Author |
|---|---|---|---|
| #17 | reroll_diff_14-17.txt | 5.54 KB | ravi.shankar |
| #17 | 3273665-17.patch | 6.07 KB | ravi.shankar |
| #14 | 3273665-patch-ported-14.patch | 6.16 KB | immaculatexavier |
| #10 | 3273665-10-6_interdiff.txt | 1.02 KB | eli-t |
| #10 | 3273665-10_remove_span_and_code_from_filter_format.patch | 6.19 KB | eli-t |
Comments
Comment #2
eli-tComment #3
eli-tPatch updating config to use CKEditor 5.
Comment #4
eli-tComment #5
eli-tRemoved the ckeditor_stylesheets component from umami.info.yml.
This needs some action as described in this CR: https://www.drupal.org/node/3259165
However, the styling applied here is no longer required because CKEditor 5 renders this error in an acceptable way, so rather than amend to work with CKEditor 5 it is simply removed instead.
#3273746: Move media-embed-error class styling from core themes to CKEditor 5 has been raised to centralise this styling in CKEditor 5 should it later be required.
Comment #6
eli-tThe automated migration from CKE4->5 settings included language and code blocks, which are not required. This new patch removes them.
Comment #7
eli-tComment #8
wim leers#6: doesn't that one cause validation errors? I think you modified that manually?
filter_htmlis configured to allow<span>but nothing in CKEditor 5 can create it. That's why thetextPartLanguagebutton was automatically added.If you remove that button, you should also remove the
<span>.codefrom Umami's "Basic HTML" text editor. Similar story here: the text format allows<code>, therefore we need a button for it. Alternatively, stop allowing<code>.RegardingAh, I see it was added for the text format! That's why. The CKEditor 4 "Formats" dropdown allowed code blocks to be created too when using Full HTML. So we try to match that. Choosing to remove that is totally fine! 👍codeBlockbeing added: that baffles me! It should have added thecodebutton, notcodeBlock. Can you reliably reproduce this?Needs work for the first two points. But … almost there! 🥳
Comment #9
eli-tThis patch addresses the comments in #6
Comment #10
eli-tPrevious patch is nonsense.
Comment #11
wim leersI would RTBC this 😄
… but Eli pointed out yesterday that it can’t be committed yet, since Umami can only use stable functionality, and CKEditor 5 is not yet declared stable.
So … picking the closest matching state instead 🤓 (Not sure if this is appropriate.)
@Eli-T One final question: do you intend to also get this committed to 9.4?
Comment #12
eli-tHell yeah.
Even if it isn't default in standard install profile, if it's stable in 9.4 we can and should use it in Umami.
Comment #13
wim leers👍🚀
Comment #14
immaculatexavier commentedPatch ported for 9.4
Comment #15
wim leersThis is not yet committable. Marking .
Comment #16
wim leersDue to #3291744: Ensure Editor config entities using CKEditor 4 only store plugins settings for actually enabled plugins having modified the existing Text Editor config (for CKEditor 4) slightly, this needs a reroll.
Comment #17
ravi.shankar commentedAdded reroll of patch #14 on Drupal 9.4.x.
Comment #18
wim leersLooks perfect!
Comment #22
lauriiiThe Umami subsystem maintainers have made it clear that Umami is for demonstrating stable features. We are making an exception committing this regardless of CKEditor 5 being experimental because CKEditor 5 is a hard requirement for Drupal 9.5.0 and 10.0.0 to be released. This means that even though Umami is temporarily depending on an experimental feature, it will be stable by the time we tag a release.
Committed 6df89ba and pushed to 10.1.x. Also cherry-picked to 10.0.x and 9.5.x. Thanks!