Release highlights
Productivity Pack
We are excited to announce the release of a Productivity Pack for CKEditor 5. It includes five new premium features designed to boost productivity when working with the editor.
- Content templates: The template feature allows you to insert predefined content structures into the document. Templates can provide both smaller portions of content (e.g. a formatted table) and base structures for entire documents (e.g. a formal letter template).
- Table of contents: The table of contents feature lets you insert a widget with the list of headings (section titles) that reflects the structure of the document. The list stays up–to–date automatically as the user works on the document. Clicking a list item navigates the user to the corresponding document section.
- Document outline: The document outline feature displays the list of sections (headings) of the document next to the editor. The outline updates automatically as the user works on the document. It offers quick navigation to a specific section upon clicking.
- Format painter: The format painter feature lets you copy text formatting (such as bold, italic, font size, color, etc.) and apply it in a different place in the edited document. It helps keep the formatting consistent and speeds up the creation of rich content.
- Slash commands: The slash commands feature lets you execute a predefined command by writing its name or alias directly in the editor. When you type a slash (/), the suggested commands are displayed in a panel next to it. You can also type a phrase after the / to filter the results in the panel and to easily find the desired command.
Other changes
We continue to work on the multi-root editor. This release introduces compatibility with reversion history and pagination. We also made some minor improvements and bug fixes.
MINOR BREAKING CHANGES ℹ️
-
language: A text with language set is no longer styled as italic. To re-enable the previous behavior, add the following style definition to your CSS:
.ck-content span[lang] { font-style: italic; }
Features
- template Introduced the content templates feature. It allows inserting predefined templates into the editor content.
- document-outline Introduced the document outline and table of contents features. The document outline feature allows the user to display a navigable list of sections (headings) of the document next to the editor. The table of contents feature lets them insert a widget with a list of headings (section titles) that reflects the structure of the document.
- format-painter Introduced the format painter feature. It allows the user to copy text formatting (such as bold, italic, font size, color, etc.) and apply it in a different place in the edited document.
- slash-command Introduced the slash commands feature. It allows the user to execute a predefined command by writing its name or alias directly in the editor.
- revision-history: Introduced the revision history feature support for multi-root editor.
- pagination: Introduced the basic pagination feature support for multi-root editor.
- source-editing: Made the
SourceEditing.updateEditorData()
method public to allow saving source editing data independently of the UI. Closes #11008. (commit)
Bug fixes
- comments: Fixed the incorrect default permissions applied in non-real-time collaboration integrations.
- engine:
Selection#getSelectedBlocks()
should ignore trailing blocks where no content is selected. The selection of such blocks is not visible to the content author and is usually there unintentionally. Closes #11585. (commit) - enter: Pressing Shift+Enter in Safari should insert
<br>
instead of splitting a block. Closes #13321. (commit) - list:
ListPropertiesEditing
should not crash if there was a list in an image caption element. Closes #13858. (commit) - real-time-collaboration: Fixed an issue when the editor selection would sometimes not be moved past other users' selection when pressing arrow keys.
- typing: Text suggestions should replace the whole words. Closes #13583. (commit)
Other changes
- editor-multi-root: The multi-root editor will now throw an error if
EditorConfig#initialData
is mismatched with initial roots set inMultiRootEditor#create()
. (commit) - engine: The
targetRanges
property of thebeforeInput
event data should be fixed to not cross the limit elements' boundaries. See #13583. (commit) - language:
TextPartLanguage
no longer styles text as italic when the language is set. Closes #12672. (commit) - Switched from
ts-loader
toesbuild-loader
when processing the TypeScript sources. It significantly reduces the build time when processing automated and manual tests or preparing snippets in the documentation. Closes #13643. (commit) MultiRootEditor
will first fire alldetachRoot
events and then alladdRoot
events if there are detached and added roots in the same batch. (commit)- Updated translations.
Released packages
Check out the Versioning policy guide for more information.
New packages:
Minor releases (contain minor breaking changes):
Releases containing new features:
Other releases:
Released packages (summary)