What is @ckeditor/ckeditor5-word-count?
@ckeditor/ckeditor5-word-count is a plugin for CKEditor 5 that provides word and character count functionality. It is useful for applications where tracking the length of the text is important, such as content management systems, blogging platforms, and educational tools.
What are @ckeditor/ckeditor5-word-count's main functionalities?
Basic Word Count
This code demonstrates how to integrate the WordCount plugin into a CKEditor 5 instance and access the current word count.
const WordCount = require('@ckeditor/ckeditor5-word-count/src/wordcount');
ClassicEditor
.create(document.querySelector('#editor'), {
plugins: [ WordCount, ... ],
toolbar: [ 'wordCount', ... ]
})
.then(editor => {
const wordCountPlugin = editor.plugins.get('WordCount');
console.log(wordCountPlugin.words); // Outputs the current word count
})
.catch(error => {
console.error(error);
});
Character Count
This code demonstrates how to integrate the WordCount plugin into a CKEditor 5 instance and access the current character count.
const WordCount = require('@ckeditor/ckeditor5-word-count/src/wordcount');
ClassicEditor
.create(document.querySelector('#editor'), {
plugins: [ WordCount, ... ],
toolbar: [ 'wordCount', ... ]
})
.then(editor => {
const wordCountPlugin = editor.plugins.get('WordCount');
console.log(wordCountPlugin.characters); // Outputs the current character count
})
.catch(error => {
console.error(error);
});
Customizing Word Count Display
This code demonstrates how to customize the display of the word count by specifying a container element where the word count will be displayed.
const WordCount = require('@ckeditor/ckeditor5-word-count/src/wordcount');
ClassicEditor
.create(document.querySelector('#editor'), {
plugins: [ WordCount, ... ],
toolbar: [ 'wordCount', ... ],
wordCount: {
container: document.querySelector('#word-count-container')
}
})
.then(editor => {
const wordCountPlugin = editor.plugins.get('WordCount');
console.log(wordCountPlugin.words); // Outputs the current word count
})
.catch(error => {
console.error(error);
});
Other packages similar to @ckeditor/ckeditor5-word-count
text-statistics
text-statistics is another package that provides various text statistics including word count, character count, and readability scores. It is more comprehensive in terms of the types of statistics it offers compared to @ckeditor/ckeditor5-word-count, but it does not provide direct integration with CKEditor 5.
wordcount
wordcount is a simple package that provides word and character count functionality. It is lightweight and easy to use but does not offer the same level of integration with CKEditor 5 as @ckeditor/ckeditor5-word-count.
43.1.1 (September 25, 2024)
We are happy to announce the release of CKEditor 5 v43.1.1.
During a recent internal audit, we identified a Cross-Site Scripting (XSS) vulnerability in the CKEditor 5 clipboard package (CVE-2024-45613
). This vulnerability could be triggered by a specific user action, leading to unauthorized JavaScript code execution, if the attacker managed to insert malicious content into the editor, which might happen with a very specific editor configuration.
This vulnerability affects only installations where the editor configuration meets the following criteria:
- The Block Toolbar plugin is enabled.
- One of the following plugins is also enabled:
You can read more details in the relevant security advisory and contact us if you have more questions.
Taking the occasion, we decided to introduce additional hardening to some parts of our codebase that introduce theoretical and unexploitable issues. Our security team confirmed that none of these issues were exploitable in a real scenario, however, we decided to fix them, in order to increase the overall security posture of our software.
Released packages
Check out the Versioning policy guide for more information.
<details>
<summary>Released packages (summary)</summary>
Other releases:
</details>