В CKEditor 5 есть родной плагин, который отображает список спец. символов для вставки в редактор. Он удобен и прост, проблема лишь в том, что он содержит далеко не все символы, которые могут быть нужны.
Хоть плагин и содержит много символов, можно заметить, что большинство из них обычно не используются и только загромождают таблицу. Но мы можем фильтровать список, выбираю группу, и это облегчает поиск нужного символа.
Я вижу два варианта решить задачу — первый — написать свой плагин, где будет возможность настроить нужные нам символы для вставки. Это идеальный вариант — т.к. можно было бы показывать только те символы, которые нам нужны.
И второй вариант — где мы тоже пишем плагин, но очень простой — мы добавим еще одну группу символов прямо в плагин SpecialCharacters.
Вот реализация второго варианта:

Как пример, я добавляю группу General с тремя символами. Код CKE5 плагина выглядит вот так:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
import {Plugin} from 'ckeditor5/src/core'; /** * @extends module:core/plugin~Plugin */ export default class MyPlugin extends Plugin { init() { const editor = this.editor; const specialCharactersPlugin = editor.plugins.get('SpecialCharacters'); if (specialCharactersPlugin) { specialCharactersPlugin.addItems('General', [ { title: 'Symbol PI', character: 'π' }, { title: 'Symbol Micro', character: 'µ' }, { title: 'Symbol Degree', character: '°' }, ]); } } } |
Согласно документации, плагин SpecialCharacters облагает методом addItems, который позволяет добавлять группы символов.
Получим доступ к объекту плагина и добавим наши символы.