CKEditor 5 v29.1.0 with content minimap, HTML comments and Revision History autosave
Setting standards is not a piece of cake. But the hard work and new ideas introduced regularly lets us deliver the most flexible product on the market. Navigating the document has never been easier with the new unique content minimap. Keeping track with the revision history feature and the ability to add HTML comments make editing faster and more efficient. The enhanced find and replace feature aids the general efficiency. And this is not yet all in the v29.1.0 release!
# New rich text editor features
Here comes CKEditor 5 v29.1.0. We constantly move forward, not only developing new features but also keeping the existing ones updated and expanding them. There are two most prominent new additions to the vast family of CKEditor 5 features. First, there is support for HTML comments that allows adding hypertext comments to the content and keeping them in the source code, without displaying them in the editor. The other one is a revolutionary navigation tool — the content minimap. It makes navigating the largest and most complicated documents fast, easy and intuitive. No matter how massive your content may be, you can now quickly move through it with a mouse scroll and find what you need effectively in the minimap navigator window.
The newest release enhances the find and replace functionality, adding several minor improvements and making the overall experience much nicer. We also revisit our versioning tool, the revision history feature, and bring home the integration with the autosave plugin and numerous other changes and amendments that improve the tool greatly. A new addition to the table feature is the ability to enforce the usage of header rows and columns.
And constantly struggling to keep the position of the best and most advanced WYSIWYG editor on the market, we introduced a series of bug fixes and changes to keep everything rolling smoothly. Find out what comes with v29.1.0 now!
As always, we are looking forward to your feedback on these changes. Any comments, recommendations, and bug reports that you submit allow us to choose the proper direction for future development and tend better to our users’ needs.
Find out more about the new rich text editor features and make sure to check out the demos and documentation that accompany them.
# Content minimap
Navigating large documents can be tricky. There are ways to deal with them when they are ready, like links to sections, tables of contents and referrals, but during the edition and proofreading this is something different. If you have ever found yourself in need of a fast, efficient and yet refreshingly easy way to move around the feature-length content you work on, here’s the solution: the content minimap feature.
The very idea is brilliant in its simplicity — you get a preview of your document duplicated on the side of the main one, but smaller. Developers and programmers alike may be very much familiar with this solution, as programming editors like Visual Studio Code often come equipped with similar features. Simply click and drag the navigator window up and down the minimap and easily find what you need, thanks to all the content being mirrored and visible while dragging.
Check out this introductory content minimap blog post where you can watch a screencast and read more about this feature, unmatched by any other online WYSIWYG editors nowadays. You can also read the content minimap user guide for further details.
# HTML comments support
HTML comments are around for basically as long as HTML itself. They are used, unsurprisingly, to comment on content. And both to add comments and to comment something out, which means to hide it but without removing it from the source. The HTML comments may be used to mark places that need development, outdated information, placeholders for future changes or simply remarks. All that, gloriously hidden in the document source code, is transparent to the user and as a tool, HTML comments offer great flexibility and usability for advanced editors.
By default, all HTML comments are filtered out during the editor initialization. But the General HTML Support feature allows CKEditor 5 users to introduce markup that is otherwise unsupported in the editor. The new HTML comments feature shipped with v29.1.0 takes this functionality a step further to serve a very specific need and allows developers to introduce and keep these comments in the document content and later retrieve them, for example while saving the editor data. The comments are similarly transparent from the users’ point of view and they are not displayed in the editable content, only visible in the source editing mode.
# Revision History improvements
CKEditor 5’s very own versioning tool, the revision history feature, has landed with v28.0.0. It introduced an advanced system of document version history, where named revisions are kept to enable restoring previous content versions. We do not stop working on this feature, striving to make it a top-class solution.
The v29.1.0 release brings several important improvements to revision history. The first one is the integration with the autosave feature, which enables the automatic creation of new revisions based on time and the number of changes made to the document.
A revision will now be updated (or the autosave will be fired) when the revision history view is opened. This replaces the temporary “Unsaved changes” revision and makes the process more reliable and secure. Existing revisions can now also be updated.
When a past revision is restored, it is added as a new one, with the date of creation as the name of the new revision. This helps maintain the versioning timeline, control the changes made and aids efficiency and ease of use.
Due to these new improvements introduced, there were also some changes in functions and function properties. Check the Revision history integration guide for details on enabling and utilizing the newly added features.
# Other improvements
Besides new features, we have also worked on some important improvements. These include — but are not limited to:
# Expanded the General HTML Support feature capabilities
The experimental GHS feature enabling the usage of HTML tags unsupported yet by official plugins got new improvements. We added support for the
<div> elements that can act both as a paragraph and a sectioning element depending on the content context. The feature will now differentiate between these separate cases and render the output accordingly.
Support for all table-related markup has also been introduced to the GHS as of v29.1.0, eliminating one of the known issues.
As we keep on working on the feature, why not try it out? While still somewhat experimental, GHS is already quite advanced. It is, hence, the best time to check it out and contact us if you think some specific solution should be added to it. You can also follow the GHS epic on GitHub.
# Default table headers configuration option
The table feature itself got expanded and now it provides the ability to define table headers by default. Enabling this new option will automatically turn the first row, the first column or both into table headers.
Additionally, model mapping was fixed for cells with specifically bound paragraphs that caused the invalid
rowspan attribute values to crash the editor.
# Find more and replace better
The find and replace feature introduced in v29.0.0 was also amended. It now fully supports multi-root editor implementations. It will indicate if there are no matches for the search term and also when all available results have already been displayed. The behavior of the find and replace feature while using the source editing mode has also been improved.
# Bug fixes
As usual, we fixed quite a few bugs in an effort to make the user experience even better than before. Some of the most notable ones include:
- The code block added with the autoformatting feature did not remember the language. Now it does, just like the one inserted using the toolbar button.
- The problems with pasting lists and commented text from Word no longer occur.
- White spaces around inline object elements such as
<button>should not be lost in the data anymore.
Please refer to the changelog for more new features, improvements and bug fixes.
# Breaking changes
# What’s next?
It’s the holiday season so the team is working in limited capacity but nevertheless, we keep on improving and adding new features to our software. Here is what we are working on in the new iteration:
- Support for advanced lists (document lists) - this is ongoing and will span across a few more iterations.
- Further find and replace feature follow-ups.
- Possibility to create a localized editor when using DLL builds.
Some bug fixes and improvements are on the line, too, so follow the iteration 46 roadmap for more news and features we have already started working on.