Przeglądaj źródła

Merge branch 'master' into t/ckeditor5-highlight/3

Aleksander Nowodzinski 7 lat temu
rodzic
commit
761a1b831a

+ 2 - 3
.github/ISSUE_TEMPLATE.md

@@ -1,7 +1,6 @@
-## 🐞 Is this a bug report or feature request? (choose one)
+## Is this a bug report or feature request? (choose one)
 
-- Bug report
-- Feature request
+🐞 Bug report  |  🆕 Feature request  |  Other
 
 ## 💻 Version of CKEditor
 

+ 3 - 3
README.md

@@ -41,9 +41,9 @@ CKEditor 5 Builds are a set of ready to use rich text editors. Every "build" pro
 
 The following CKEditor 5 Builds are currently available:
 
-* [Classic editor](https://docs.ckeditor.com/ckeditor5/latest/builds/guides/overview.html#Classic-editor)
-* [Inline editor](https://docs.ckeditor.com/ckeditor5/latest/builds/guides/overview.html#Inline-editor)
-* [Balloon editor](https://docs.ckeditor.com/ckeditor5/latest/builds/guides/overview.html#Balloon-editor)
+* [Classic editor](https://docs.ckeditor.com/ckeditor5/latest/builds/guides/overview.html#classic-editor)
+* [Inline editor](https://docs.ckeditor.com/ckeditor5/latest/builds/guides/overview.html#inline-editor)
+* [Balloon editor](https://docs.ckeditor.com/ckeditor5/latest/builds/guides/overview.html#balloon-editor)
 
 #### Example
 

+ 7 - 0
docs/_snippets/examples/custom-build.html

@@ -0,0 +1,7 @@
+<div id="snippet-custom-build">
+	<p>Best time to visit the city is <i>July and August</i>, when it’s cool enough to <u>not</u> break a sweat and hot enough to <mark class="marker-yellow">enjoy summer</mark>. The city which has quite a combination of both old and modern textures is located by the river of <code>Vistula</code>.</p>
+
+	<p>The historic <strong>Old Town</strong>, which was <mark class="pen-red"><s>reconstructed</s></mark> after the World War II, with its late <code>18th</code> century characteristics, is a must-see. You can start your walk from the <strong>Nowy Świat Street</strong> which will take you straight to the Old Town.</p>
+
+	<p>Then you can go to the <strong>Powiśle</strong> area and take a walk on the newly renovated promenade on the riverfront. There are also lots of cafes, bars and restaurants where you can shake off the exhaustion of the day. On Sundays, there are many parks where you can enjoy nature or <u>listen to pianists</u> from around the world playing Chopin.</p>
+</div>

+ 42 - 0
docs/_snippets/examples/custom-build.js

@@ -0,0 +1,42 @@
+/**
+ * @license Copyright (c) 2003-2018, CKSource - Frederico Knabben. All rights reserved.
+ * For licensing, see LICENSE.md.
+ */
+
+/* globals console, window, document */
+
+import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor';
+import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials';
+import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph';
+import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold';
+import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic';
+import Underline from '@ckeditor/ckeditor5-basic-styles/src/underline';
+import Strikethrough from '@ckeditor/ckeditor5-basic-styles/src/strikethrough';
+import Code from '@ckeditor/ckeditor5-basic-styles/src/code';
+import Highlight from '@ckeditor/ckeditor5-highlight/src/highlight';
+
+import { TOKEN_URL } from '@ckeditor/ckeditor5-cloudservices/tests/_utils/cloudservices-config';
+
+ClassicEditor
+	.create( document.querySelector( '#snippet-custom-build' ), {
+		plugins: [
+			Essentials,
+			Paragraph,
+			Bold,
+			Italic,
+			Underline,
+			Strikethrough,
+			Code,
+			Highlight
+		],
+		toolbar: [ 'bold', 'italic', 'underline', 'strikethrough', 'code', '|', 'highlightDropdown', '|', 'undo', 'redo' ],
+		cloudServices: {
+			tokenUrl: TOKEN_URL
+		}
+	} )
+	.then( editor => {
+		window.editor = editor;
+	} )
+	.catch( err => {
+		console.error( err );
+	} );

+ 2 - 2
docs/builds/guides/development/custom-builds.md

@@ -16,7 +16,7 @@ Some of the reasons for creating custom builds are:
 
 * Adding features which are not included in the existing builds, either from a third party or custom developed.
 * Removing unnecessary features present in a build.
-* Changing the {@link builds/guides/integration/basic-api#Creators editor creator}.
+* Changing the {@link builds/guides/integration/basic-api#creators editor creator}.
 * Changing the {@link framework/guides/theme-customization editor theme}.
 * Changing the {@link features/ui-language localization language} of the editor.
 * Enabling bug fixes which are still not a part of any public release.
@@ -38,7 +38,7 @@ git remote add upstream https://github.com/ckeditor/ckeditor5-build-classic.git
 <info-box hint>
 	If you do not want to fork the official build, you can just clone it. However, you will not be able to commit and push your customizations back to GitHub.
 
-	Alternatively, instead of creating a custom build you can {@link builds/guides/integration/advanced-setup#Scenario-2-Building-from-source integrate CKEditor 5 directly from source}. This option allows even greater flexibility and requires less overhead (you will not need to fork the official build).
+	Alternatively, instead of creating a custom build you can {@link builds/guides/integration/advanced-setup#scenario-2-building-from-source integrate CKEditor 5 directly from source}. This option allows even greater flexibility and requires less overhead (you will not need to fork the official build).
 </info-box>
 
 <info-box warning>

+ 2 - 2
docs/builds/guides/integration/advanced-setup.md

@@ -17,7 +17,7 @@ Therefore, **a prerequisite to this guide is that you are using webpack as your
 
 ## Scenario 1: Integrating existing builds
 
-This is the simplest scenario. It assumes that you want to use {@link builds/guides/overview#Available-builds one of the existing builds} "as-is" (you can, of course, still {@link builds/guides/integration/configuration configure the editor}). It also gives the fastest build times.
+This is the simplest scenario. It assumes that you want to use {@link builds/guides/overview#available-builds one of the existing builds} "as-is" (you can, of course, still {@link builds/guides/integration/configuration configure the editor}). It also gives the fastest build times.
 
 First, install the build of your choice {@link builds/guides/integration/installation#npm from npm}:
 
@@ -218,7 +218,7 @@ ClassicEditor.build = {
 };
 ```
 
-This module will export an editor creator class which has all the plugins and configuration that you need already built-in. To use such editor, simply import that class and call the static `.create()` method like in all {@link builds/guides/integration/basic-api#Creating-an-editor examples}.
+This module will export an editor creator class which has all the plugins and configuration that you need already built-in. To use such editor, simply import that class and call the static `.create()` method like in all {@link builds/guides/integration/basic-api#creating-an-editor examples}.
 
 ```js
 import ClassicEditor from './ckeditor';

+ 3 - 3
docs/builds/guides/integration/basic-api.md

@@ -30,7 +30,7 @@ Add an element that CKEditor should replace to your HTML page:
 </textarea>
 ```
 
-Then call {@link module:editor-classic/classiceditor~ClassicEditor#create `ClassicEditor.create()`} to **replace** the `<textarea>` element with a {@link builds/guides/overview#Classic-editor Classic editor}:
+Then call {@link module:editor-classic/classiceditor~ClassicEditor#create `ClassicEditor.create()`} to **replace** the `<textarea>` element with a {@link builds/guides/overview#classic-editor Classic editor}:
 
 ```js
 ClassicEditor
@@ -55,7 +55,7 @@ Similarly to the previous example, add an element where CKEditor should initiali
 </div>
 ```
 
-Then call {@link module:editor-inline/inlineeditor~InlineEditor#create `InlineEditor.create()`} to **attach** {@link builds/guides/overview#Inline-editor Inline editor} to the `<div>` element:
+Then call {@link module:editor-inline/inlineeditor~InlineEditor#create `InlineEditor.create()`} to **attach** {@link builds/guides/overview#inline-editor Inline editor} to the `<div>` element:
 
 ```js
 InlineEditor
@@ -80,7 +80,7 @@ Add an element where CKEditor should initialize to your page:
 </div>
 ```
 
-Then call {@link module:editor-balloon/ballooneditor~BalloonEditor#create `BalloonEditor.create()`} to **attach** {@link builds/guides/overview#Balloon-editor Balloon editor} to the `<div>` element:
+Then call {@link module:editor-balloon/ballooneditor~BalloonEditor#create `BalloonEditor.create()`} to **attach** {@link builds/guides/overview#balloon-editor Balloon editor} to the `<div>` element:
 
 ```js
 BalloonEditor

+ 1 - 1
docs/builds/guides/integration/configuration.md

@@ -83,7 +83,7 @@ ClassicEditor
 ```
 
 <info-box hint>
-	The above is a strict UI-related configuration. Removing a toolbar item does not remove the feature from the editor internals. If your goal with the toolbar configuration is to remove features, the right solution is to also remove their relative plugins. Check [Removing features](#Removing-features) above for more information.
+	The above is a strict UI-related configuration. Removing a toolbar item does not remove the feature from the editor internals. If your goal with the toolbar configuration is to remove features, the right solution is to also remove their relative plugins. Check [Removing features](#removing-features) above for more information.
 </info-box>
 
 ### Listing available items

+ 4 - 4
docs/builds/guides/integration/installation.md

@@ -12,11 +12,11 @@ order: 10
 
 There are several options to download CKEditor 5 builds:
 
-* [CDN](#CDN)
+* [CDN](#cdn)
 * [npm](#npm)
-* [Zip download](#Zip-download)
+* [Zip download](#zip-download)
 
-For the list of available builds check the {@link builds/guides/overview#Available-builds Overview} page.
+For the list of available builds check the {@link builds/guides/overview#available-builds Overview} page.
 
 After downloading the editor jump to the {@link builds/guides/integration/basic-api Basic API guide} to see how to create editors.
 
@@ -63,7 +63,7 @@ After downloading and installing a CKEditor 5 build in your application, it is t
 Once the CKEditor script is loaded, you can {@link builds/guides/integration/basic-api use the API} to create editors in your page.
 
 <info-box>
-	The `build/ckeditor.js` file is generated in the [UMD format](https://github.com/umdjs/umd) so you can also import it into your application if you use CommonJS modules (like in Node.js) or AMD modules (like in Require.js). Read more in the {@link builds/guides/integration/basic-api#UMD-support Basic API guide}.
+	The `build/ckeditor.js` file is generated in the [UMD format](https://github.com/umdjs/umd) so you can also import it into your application if you use CommonJS modules (like in Node.js) or AMD modules (like in Require.js). Read more in the {@link builds/guides/integration/basic-api#umd-support Basic API guide}.
 
 	Also, for a more advanced setup, you may wish to bundle the CKEditor script with other scripts used by your application. See {@link builds/guides/integration/advanced-setup Advanced setup} for more information about it.
 </info-box>

Plik diff jest za duży
+ 8 - 8
docs/builds/guides/migrate.md


+ 6 - 6
docs/builds/guides/overview.md

@@ -17,9 +17,9 @@ CKEditor 5 Builds are a set of ready-to-use rich text editors. Every "build" pro
 
 The following CKEditor 5 Builds are currently available:
 
- * [Classic editor](#Classic-editor)
- * [Inline editor](#Inline-editor)
- * [Balloon editor](#Balloon-editor)
+ * [Classic editor](#classic-editor)
+ * [Inline editor](#inline-editor)
+ * [Balloon editor](#balloon-editor)
 
 ### Classic editor
 
@@ -35,7 +35,7 @@ In CKEditor 5 the concept of the "boxed" editor was reinvented:
 
 {@img assets/img/editor-classic.png 772 Screenshot of a classic editor.}
 
-To try it out online, check the {@link examples/builds/classic-editor classic editor example}. Jump to {@link builds/guides/quick-start#Classic-editor quick start} to start using it.
+To try it out online, check the {@link examples/builds/classic-editor classic editor example}. Jump to {@link builds/guides/quick-start#classic-editor quick start} to start using it.
 
 ### Inline editor
 
@@ -45,7 +45,7 @@ A common scenario for using inline editor is offering users the possibility to e
 
 {@img assets/img/editor-inline.png 774 Screenshot of an inline editor.}
 
-To try it out online, check the {@link examples/builds/inline-editor inline editor example}. Jump to {@link builds/guides/quick-start#Inline-editor quick start} to start using it.
+To try it out online, check the {@link examples/builds/inline-editor inline editor example}. Jump to {@link builds/guides/quick-start#inline-editor quick start} to start using it.
 
 ### Balloon editor
 
@@ -53,7 +53,7 @@ Balloon editor is very similar to inline editor. The difference between them is
 
 {@img assets/img/editor-balloon.png 779 Screenshot of a balloon toolbar editor.}
 
-To try it out online, check the {@link examples/builds/balloon-editor balloon editor example}. Jump to {@link builds/guides/quick-start#Balloon-editor quick start} to start using it.
+To try it out online, check the {@link examples/builds/balloon-editor balloon editor example}. Jump to {@link builds/guides/quick-start#balloon-editor quick start} to start using it.
 
 ## Build customization
 

+ 1 - 1
docs/builds/guides/support/license-and-legal.md

@@ -24,7 +24,7 @@ You are not required to, but if you want to explicitly declare the license you h
 
 Where not otherwise indicated, all CKEditor 5 Builds content is authored by CKSource engineers and consists of CKSource-owned intellectual property. In some specific instances, CKEditor will incorporate work done by developers outside of CKSource with their express permission.
 
-The {@link features/image-upload#Easy-Image Easy Image} feature present in {@link builds/index CKEditor 5 Builds} integrates with [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services), if configured to do so. CKEditor Cloud Services is an external "Software as a Service" solution, delivered with its own license terms and conditions.
+The {@link features/image-upload#easy-image Easy Image} feature present in {@link builds/index CKEditor 5 Builds} integrates with [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services), if configured to do so. CKEditor Cloud Services is an external "Software as a Service" solution, delivered with its own license terms and conditions.
 
 ## Trademarks
 

+ 2 - 2
docs/builds/guides/whats-new.md

@@ -22,11 +22,11 @@ Inserting images into the content is now very intuitive, with all technical aspe
 
 <iframe width="600" height="337" src="https://www.youtube.com/embed/WWT9pkPZSnI?rel=0&amp;" frameborder="0" allowfullscreen></iframe>
 
-The outdated concept of image alignment was dropped in favor of {@link features/image#Image-styles image styles}:
+The outdated concept of image alignment was dropped in favor of {@link features/image#image-styles image styles}:
 
 {@img assets/img/builds-image-styles.png 591 Image styles toolbar.}
 
-When integrated with {@link features/image-upload#Easy-Image Easy Image}, uploading, resizing and producing different image sizes for responsive design is all automated.
+When integrated with {@link features/image-upload#easy-image Easy Image}, uploading, resizing and producing different image sizes for responsive design is all automated.
 
 {@img assets/img/easy-image.png 1440 Responsive images with Easy Image.}
 

+ 1 - 1
docs/examples/builds/balloon-editor.md

@@ -5,6 +5,6 @@ order: 30
 
 # Balloon editor
 
-{@link builds/guides/overview#Balloon-editor Balloon editor} lets you create your content directly in its target location with the help of a balloon toolbar that apprears next to the selected editable document element.
+{@link builds/guides/overview#balloon-editor Balloon editor} lets you create your content directly in its target location with the help of a balloon toolbar that apprears next to the selected editable document element.
 
 {@snippet examples/balloon-editor}

+ 1 - 1
docs/examples/builds/classic-editor.md

@@ -7,6 +7,6 @@ order: 10
 
 {@snippet build-classic-source}
 
-{@link builds/guides/overview#Classic-editor Classic editor} shows a boxed editing area with a toolbar, placed in a specific position on the page.
+{@link builds/guides/overview#classic-editor Classic editor} shows a boxed editing area with a toolbar, placed in a specific position on the page.
 
 {@snippet examples/classic-editor}

Plik diff jest za duży
+ 10 - 0
docs/examples/builds/custom-build.md


+ 2 - 2
docs/examples/builds/inline-editor.md

@@ -5,8 +5,8 @@ order: 20
 
 # Inline editor
 
-{@link builds/guides/overview#Inline-editor Inline editor} lets you create your content directly in its target location with the help of a floating toolbar that apprears when the editable text is focused.
+{@link builds/guides/overview#inline-editor Inline editor} lets you create your content directly in its target location with the help of a floating toolbar that apprears when the editable text is focused.
 
-In this example the {@link features/image#Image-styles image styles} configuration was changed to enable left- and right-aligned images.
+In this example the {@link features/image#image-styles image styles} configuration was changed to enable left- and right-aligned images.
 
 {@snippet examples/inline-editor}

+ 1 - 1
docs/features/image-upload.md

@@ -31,7 +31,7 @@ To make the above process possible, an image upload plugin must be available. Su
 
 Another great feature introduced with CKEditor 5 is the ability to have responsive images in the content. With a single image upload, several optimized versions of that image are created after upload, for different size of displays. All this is totally transparent to the end user who uploaded the image.
 
-Be sure to use image upload plugins with support for responsive images to enjoy this important additional benefit. [Easy Image](#Easy-Image) has support for responsive images out of the box, too.
+Be sure to use image upload plugins with support for responsive images to enjoy this important additional benefit. [Easy Image](#easy-image) has support for responsive images out of the box, too.
 
 ## Easy Image
 

+ 1 - 1
docs/features/index.md

@@ -23,6 +23,6 @@ Please bear in mind that the stable version of CKEditor 5 has not been officiall
 ## How about creating your own features?
 
 Probably the most exciting features are the ones you can develop on top of CKEditor 5 Framework!
-We are slowly enhancing the {@link framework/index CKEditor 5 Framework documentation} together with {@link api/index API documentation}, hoping to give you a solid base for {@link framework/guides/quick-start#Creating-a-simple-plugin creating custom features}.
+We are slowly enhancing the {@link framework/index CKEditor 5 Framework documentation} together with {@link api/index API documentation}, hoping to give you a solid base for {@link framework/guides/quick-start#creating-a-simple-plugin creating custom features}.
 
 The official add-ons repository for CKEditor 4 reached an impressive number of over 300 add-ons created and published by the community. Now it is time for you to add your contributions to the brand new CKEditor 5!

+ 6 - 6
docs/features/ui-language.md

@@ -16,9 +16,9 @@ See the demo of the editor in German:
 ## Loading additional languages from CDN, npm and zip file
 
 You can load additional languages using:
-* [CDN](#CDN),
+* [CDN](#cdn),
 * [npm](#npm),
-* [Zip download](#Zip).
+* [Zip download](#zip).
 
 Next, configure the editor to use chosen language:
 
@@ -44,7 +44,7 @@ To use different language than default one (English), you need to load the edito
 <script src="https://cdn.ckeditor.com/ckeditor5/[version.number]/[distribution]/translations/de.js"></script>
 ```
 
-See {@link builds/guides/integration/installation#CDN CDN installation guides} for more information.
+See {@link builds/guides/integration/installation#cdn CDN installation guides} for more information.
 
 ### npm
 
@@ -55,14 +55,14 @@ See {@link builds/guides/integration/installation#npm npm installation guides} f
 
 ### Zip
 
-All additional languages are included in `.zip` file. You need to include `ckeditor.js` file together with language file:
+All additional languages are included in the `.zip` file. You need to include `ckeditor.js` file together with language file:
 
 ```js
 <script src="[ckeditor-path]/ckeditor.js"></script>
 <script src="[ckeditor-path]/translations/de.js"></script>
 ```
 
-See {@link builds/guides/integration/installation#Zip-download zip installation guides} for more information.
+See {@link builds/guides/integration/installation#zip-download zip installation guides} for more information.
 
 ## Building the editor using a specific language
 
@@ -130,7 +130,7 @@ If you build CKEditor from scratch or integrate it directly into your applicatio
 	```
 
 <info-box>
-	We are aware that the current localization method is not sufficient for all needs. It doesn't support different bundlers (e.g. Rollup or Browserify). We will be extending the localization possibilities in the future.
+	We are aware that the current localization method is not sufficient for some needs. It does not support different bundlers (e.g. Rollup or Browserify). We will be extending the localization possibilities in the future.
 
 	You can read more about the used techniques in the ["Implement translation services" issue](https://github.com/ckeditor/ckeditor5/issues/387) and ["Implement translation services v2" issue](https://github.com/ckeditor/ckeditor5/issues/624).
 </info-box>

+ 8 - 8
docs/framework/guides/architecture/ui-library.md

@@ -9,7 +9,7 @@ The standard UI library of CKEditor 5 is [`@ckeditor/ckeditor5-ui`](https://www.
 
 ## Views
 
-Views use [templates](#Templates) to build the UI. They also provide observable interfaces that other features (e.g. [plugins](#Plugins), [commands](#Commands), etc.) can use to change the DOM without any actual interaction with the native API.
+Views use [templates](#templates) to build the UI. They also provide observable interfaces that other features (e.g. {@link framework/guides/architecture/core-editor-architecture#plugins plugins}, {@link framework/guides/architecture/core-editor-architecture#commands commands}, etc.) can use to change the DOM without any actual interaction with the native API.
 
 ### Definition
 
@@ -59,7 +59,7 @@ class SampleInputView extends View {
 
 Note that views encapsulate the DOM they render. Because the UI is organized according to the *view-per-tree* rule, it is clear which view is responsible for which part of the UI so it is unlikely that a collision occurs between two features writing to the same DOM node.
 
-More often than not, views become children of other views (collections), nodes in the [UI view tree](#View-collections-and-the-UI-tree):
+More often than not, views become children of other views (collections), nodes in the [UI view tree](#view-collections-and-the-ui-tree):
 
 ```js
 class ParentView extends View {
@@ -113,7 +113,7 @@ will result in:
 <input class="foo ck-enabled" type="text" placeholder="Type some text" />
 ```
 
-Alternatively, they can [bind](#Event-system-and-observables) them directly to their own observable properties:
+Alternatively, they can [bind](#event-system-and-observables) them directly to their own observable properties:
 
 ```js
 view.bind( 'placeholder', 'isEnabled' ).to( observable, 'placeholderText', 'isEnabled' );
@@ -148,13 +148,13 @@ view.element.placeholder = 'A new placeholder';
 
 ## Templates
 
-{@link module:ui/template~Template Templates} render DOM elements and text nodes in the UI library. Used primarily by [views](#Views), they are the lowest layer of the UI connecting the application to the web page.
+{@link module:ui/template~Template Templates} render DOM elements and text nodes in the UI library. Used primarily by [views](#views), they are the lowest layer of the UI connecting the application to the web page.
 
 <info-box>
 	Check out the {@link module:ui/template~TemplateDefinition} to learn more about the template syntax and other advanced concepts.
 </info-box>
 
-Templates support [observable properties](#Event-system-and-observables) bindings and handle native DOM events. A very simple template can look like this:
+Templates support [observable properties](#event-system-and-observables) bindings and handle native DOM events. A very simple template can look like this:
 
 ```js
 new Template( {
@@ -183,7 +183,7 @@ and renders to an HTML element:
 <p class="foo bar" style="background-color: yellow;">A paragraph.</p>
 ```
 
-where `observable#className` is `"bar"`. The `observable` in the example above can be a [view](#Views) or any object which is {@link module:utils/observablemixin~Observable observable}. When the value of the `className` attribute changes, the template updates the `class` attribute in the DOM. From now on the element is permanently bound to the state of an application.
+where `observable#className` is `"bar"`. The `observable` in the example above can be a [view](#views) or any object which is {@link module:utils/observablemixin~Observable observable}. When the value of the `className` attribute changes, the template updates the `class` attribute in the DOM. From now on the element is permanently bound to the state of an application.
 
 Similarly, when rendered, the template also takes care of DOM events. A binding to the `click` event in the definition makes the `observable` always fire the `clicked` event upon an action in DOM. This way the `observable` provides an event interface of the DOM element and all the communication should pass through it.
 
@@ -269,7 +269,7 @@ toolbar.items.add( buttonFoo );
 toolbar.items.add( buttonBar );
 ```
 
-The toolbar can now join the [UI tree](##View-collections-and-the-UI-tree) or it can be injected straight into the DOM. To keep the example simple, proceed with the latter scenario:
+The toolbar can now join the [UI tree](#view-collections-and-the-ui-tree) or it can be injected straight into the DOM. To keep the example simple, proceed with the latter scenario:
 
 ```js
 toolbar.render();
@@ -428,7 +428,7 @@ This information is useful when implementing a certain type of UI whose behavior
 
 ### Keystroke handler
 
-The {@link module:utils/keystrokehandler~KeystrokeHandler `KeystrokeHandler`} listens to the keystroke events fired by an HTML element or any of its descendants and executes pre–defined actions when the keystroke is pressed. Usually, each [view](#Views) creates its own keystroke handler instance which takes care of the keystrokes fired by the elements the view has rendered.
+The {@link module:utils/keystrokehandler~KeystrokeHandler `KeystrokeHandler`} listens to the keystroke events fired by an HTML element or any of its descendants and executes pre–defined actions when the keystroke is pressed. Usually, each [view](#views) creates its own keystroke handler instance which takes care of the keystrokes fired by the elements the view has rendered.
 
 ```js
 import KeystrokeHandler from '@ckeditor/ckeditor5-utils/src/keystrokehandler';

+ 1 - 1
docs/framework/guides/contributing/development-environment.md

@@ -47,7 +47,7 @@ cd ckeditor5
 
 And install all CKEditor 5 packages from the [npm registry](http://npmjs.com/).
 
-**Note:** If you plan to use the developement version of CKEditor 5 packages (see the [next section](#Switching-to-development-version-of-packages)), you can skip this step to save time.
+**Note:** If you plan to use the developement version of CKEditor 5 packages (see the [next section](#switching-to-development-version-of-packages)), you can skip this step to save time.
 
 ```bash
 npm install

+ 1 - 1
docs/framework/guides/support/license-and-legal.md

@@ -24,7 +24,7 @@ You are not required to, but if you want to explicitly declare the license you h
 
 Where not otherwise indicated, all CKEditor 5 Framework content is authored by CKSource engineers and consists of CKSource-owned intellectual property. In some specific instances, CKEditor will incorporate work done by developers outside of CKSource with their express permission.
 
-The {@link features/image-upload#Easy-Image Easy Image} feature present in {@link builds/index CKEditor 5 Builds} integrates with [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services), if configured to do so. CKEditor Cloud Services is an external "Software as a Service" solution, delivered with its own license terms and conditions.
+The {@link features/image-upload#easy-image Easy Image} feature present in {@link builds/index CKEditor 5 Builds} integrates with [CKEditor Cloud Services](https://ckeditor.com/ckeditor-cloud-services), if configured to do so. CKEditor Cloud Services is an external "Software as a Service" solution, delivered with its own license terms and conditions.
 
 ## Trademarks