I've listed all the available toolbar items for the CKEditor 5 Inline editor, and I'm wondering why some of the basic items are missing. I'm using the build at https://cdn.ckeditor.com/ckeditor5/1.0.0-beta.1/inline/ckeditor.js, which the documentation says should include the entire set of features.
editor.ui.componentFactory.names() output:
As you can see, some of the core items that were included in CKEditor 4 are missing such as:
Why are these items missing? Is it because CKEditor 5 is still in beta?
Oopsie! The docs are incorrect. This guide says this:
As CKEditor builds come with all features enabled, the only way to add more features to them is to create a custom build.
While it should say this:
As CKEditor builds does not include all possible features, the only way to add more features to them is to create a custom build.
Also, you were unlucky to find that mistake, because, e.g. in the Builds – Overview guide the documentation says:
If a build does not provide all the necessary features or you want to create a highly optimized build of the editor which will contain only the features that you require, you need to customize the build or create a brand new one. Check Custom builds for details on how to change the default builds to match your preferences.
Most builds (classic, inline, balloon) contain only the features listed in Editor Recommendations (with one small exception and one missing features – tables). We call this kind of setup the "article preset".
There's also the document editor build which is actually the decoupled editor creator + document preset. The document preset is much wider than the article preset.
So, why not including all features in all builds? Because such builds would be huge. This affects not only the performance (loading time, execution time) but also the UX. Every editor integration should be adjusted to the specific environment in which it will be used. The set of features and their configuration need to be adjusted to what the user should be able to edit, how and what should be produced. Enabling too many features just because they are available, which the majority of developers unfortunately do, leads to awful integrations, awful UX and awful content produced by such integrations.
Therefore, we propose setups which we find reasonable and slightly force developers to think what they really need.
In the examples and on the features list. Some features are not available in any of the builds, so they may only be found in the features list and some features are too common to be listed on the features list because they are available in the examples.
If you can't find some feature in any of these places, then there's a chance that it wasn't implemented yet. You can search for it in the existing issues or report a new one.