Можно выделить следующие типы плагинов:
- Визуальный/невизуальный (отмечен флагом isVisual в config.json):
- Визуальные плагины («isVisual«: true) открывают окно или панель для некоторых действий.
- Невизуальные плагины («isVisual»: false) предоставляют кнопку (или кнопки) для применения некоторых преобразований или манипуляций к документу.
- Вспомогательный модуль ввода («события»: [«onInputHelperClear», «onInputHelperInput»]) представляет собой комбинацию как визуальных, так и невизуальных плагинов. У него есть собственное окно, которое появляется и исчезает при наборе текста. Его местоположение привязано к курсору.
- Системные/несистемные (отмечены флагом isSystem в config.json):
- Несистемные плагины (не отмеченные в config.json) запускаются при нажатии соответствующей кнопки, например.
- Системные плагины («isSystem«: true) плагины работают в фоновом режиме, пока запущены редакторы. Вам не нужно их запускать.
- Улучшение редактора / улучшение пользовательского интерфейса / плагины сторонних сервисов:
- Плагины расширения редактора расширяют функциональные возможности редактора и улучшают существующий пользовательский интерфейс, например поиск и замена, добавление комментария в ячейку, перемещение курсора.
- Улучшение плагина пользовательского интерфейса добавляют в пользовательский интерфейс пользовательские компоненты и элементы управления.
- Плагины сторонних сервисов подключают к редакторам сторонние сервисы.
- Объект OLE (помечен как «initDataType«: флаг «ole» в файле config.json):
- В дополнение к простой обработке или редактированию документа плагин может встраивать OLE-объект, который позволяет стороннему разработчику получить доступ к формату документа, т. е. сохранить информацию из внешних ресурсов в результирующий файл.Например, плагин YouTube встраивает видео с YouTube в ваш документ.