CKEditor (poprzednio jako FCKeditor) jest edytorem WYSIWYG online umożliwiającym tworzenie tekstów na stronach internetowych lub w aplikacjach online[1][2][3][4]. Silnik edytora napisany jest w JavaScript i rozwijany przez firmę CKSource. CKEditor dostępny jest na licencjach open source i komercyjnych[5].

CKEditor
Ilustracja
Interfejs CKEditora 4
Autor Frederico Caldeira Knabben / CKSource
Aktualna wersja stabilna 4.15.1
(6 listopada 2020) [±]
Język programowania JavaScript
System operacyjny Wieloplatformowość
Rodzaj Edytor HTML
Licencja CKEditor 5: GPL i licencje komercyjne. CKEditor 4: GPL, LGPL, MPL i licencje komercyjne.
Strona internetowa

Historia projektuEdytuj

FCKeditor i CKEditor 3Edytuj

Pierwsza wersja programu - pod nazwą FKCEditor - została napisana przez Frederico Caldeirę Knabbena (który do dziś pozostaje BDfL projektu) i udostępniona w marcu 2003 roku. Po prekroczeniu 3 milionów pobrań, oprogramowanie zostało poprawione i przepisane pod nazwą CKEditor 3[6]; w tej wersji położono naciska na wydajność, dostępność i na nowy interfejs użytkownika[7].

CKEditor 4Edytuj

W grudniu 2012 wydany został CKEditor 4 - w oprogramowaniu znalazły się nowe rozwiązania, takie jak Inline Editing, zmieniono formatowanie kodu źródłowego, poprawiono obsługę DOM i wydajność CSS. Usunięto także implementacje po stronie serwera.

CKEditor 5Edytuj

Po pięciu latach pracy, w 2018 roku wyszła pierwsza stabilna wersja CKEditora 5. Całość kodu została napisana od zera, zastosowano też nowy własny model danych i architekturę. Edytor wykorzystuje technologię OT (Operational Transformation), drzewiastą strukturę oraz inne mechanizmy, których wdrożenie było niezbędne do zapewnienia możliwości współpracy w czasie rzeczywistym[8].

CKEditor 5 to framework naisany w JavaScript, oferujący rozbudowane API, pozwalające na tworzenie dowolnych rozwiązań[9]. CKEditor 5 dostępny jest też w formie tzw. buildów - prekonfigurowanych, gotowych do użycia dystrybucji, oferujących różne typy edytora: Classic, Inline, Balloon, Balloon block oraz Document[10].

CKEditor EcosystemEdytuj

W październiku 2017, CKSource uruchomiło CKEditor Ecosystem. W sierpniu 2020 składał się on z następujących produktów:

  • CKEditor 4.
  • CKEditor 5 Builds - prekonfigurowane wersje edytora do pobrania oraz CKEditor 5 Framework - platforma umożliwiająca budowę własnych wersji dostosowanych do potrzeb.
  • CKEditor Cloud Services - oferujące wsparcie dla pracy grupowej i obsługi grafik.
  • Letters - komponent umożliwiający współpracę przy tworzeniu dokumentów w czasie rzeczywistym w dowolnej aplikacji[11].
  • CKFinder - komponent do wgrywania plików i zarządzania grafikami.
  • CKEditor Cloud Services - platforma chmurowa umożliwiająca edycję i współpracę wieloosobową w czasie rzeczywistym.

Cechy edytoraEdytuj

CKEditor oferuje funkcje dostępne w tradycyjnych edytorach tekstu, takie jak formatowanie (pogrubienie, kursywa, podkreślenie, listy numerowane i punktowane), tabele, cytowanie blokowe, linkowanie do zasobów sieciowych, wstawianie grafik, wklejanie zawartości z Microsoft Word, cofanie i przywracanie operacji oraz inne narzędzia do formatowania HTML. Ma także wbudowane narzędzie do sprawdzania pisowni w locie, dostarczone jako plugin przez WebSpellChecker LLC[7].

Dostępne jest wiele wtyczek do CKEditora 4, rozszerzających jego funkcjonalność. Część z nich, podobnie jak sam edytor, dostępna jest zarówno na licencji Open Source jak i komercyjnej, niektóre tylko na tej drugiej (np. Export to PDF czy CKFinder).

Współdzielna edycja w czasie rzeczywistymEdytuj

Archtektura i autorski model danych CKEditora 5 umożliwia wieloosobową jednoczesną pracę nad tworzonym tekstem. Możliwe jest stworzenie dostosowanej do potrzeb wersji edytora z użyciem CKEditor 5 Framework, zaś jednoczesna praca w czasie rzeczywistym dostępna jest dzięki CKEditor Cloud Services.

Komponent Letters oparty na CKEditorze 5 umożliwia implementację tych funkcji w dowolnym oprogramowaniu[12].

Zgodność z przeglądarkamiEdytuj

CKEditor 4 jest w pełni kompatybilny z większością przeglądarek, w tym z aktualnymi stabilnymi wersjami Google Chrome, Firefox, Safari, Microsoft Edge, Opera oraz Internet Explorer 10 i 11.[13]. Oferuje także niemal pełne wsparcie dla mobilnych wersji Safari (iOS6 +) oraz Chrome (Android).[13]

CKEditor 5 jest także kompatybilny z Google Chrome, Firefox, Safari, Opera oraz Microsoft Edge. Nie wspiera jednak jeszcze Internet Explorera 11.[14].

PrzypisyEdytuj

  1. Neeraj Kumar, Tassos Koutlas, Samuel Keen, Edward Crompton, Krishna Kanth: Drupal 8 Development: Beginner's Guide. Packt Publishing Ltd, 2016, s. 145–159. ISBN 978-1-78528-626-1. [dostęp 2019-06-11]. (ang.)
  2. Quinn Dombrowski: Drupal for Humanists. Texas A&M University Press, 2016. ISBN 978-1-62349-473-5. [dostęp 2019-06-11]. (ang.)
  3. David Jin, Sally Lin: Advances in Multimedia, Software Engineering and Computing Vol.1: Proceedings of the 2011 MESC International Conference on Multimedia, Software Engineering and Computing, November 26-27, Wuhan, China. Springer Science & Business Media, 2011. ISBN 978-3-642-25989-0. [dostęp 2019-06-11]. (ang.)
  4. Angela Byron, Addison Berry, Jeff Robbins, Nathan Haug, Heather Berry: Using Drupal. "O'Reilly Media, Inc.", 2009. ISBN 978-0-596-51580-5. [dostęp 2019-06-11]. (ang.)
  5. CKEditor Pricing (ang.). [dostęp 2020-08-04].
  6. Rebranding (ang.). 2009-02-20. [dostęp 2011-06-09].
  7. a b CKEditor 3.0 is here! (ang.). 2009-08-21. [dostęp 2020-03-20].
  8. CKEditor 5 v10.0.0 – the future of rich text editing looks stable (ang.). [dostęp 2018-05-07].
  9. API documentation (ang.). [dostęp 4 sierpnia 2020].
  10. CKEditor Ecosystem Documentation: Overview (ang.). [dostęp 4 sierpnia 2020].
  11. Letters - Overview (ang.). [dostęp 4 sierpnia 2020].
  12. Bringing collaborative editing to any application (ang.). [dostęp 2017-11-23].
  13. a b CKEditor Browser Compatibility (ang.). [dostęp 4 sierpnia 2020].
  14. Browser compatibility (ang.). [dostęp 4 sierpnia 2020].

Linki zewnętrzneEdytuj