CKEditor
Autor | Frederico Caldeira Knabben / CKSource |
---|---|
Aktualna wersja stabilna | 39.6.1 (8 lutego 2024) [±] |
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 |
CKEditor (poprzednio jako FCKeditor) – edytor WYSIWYG online umożliwiający 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].
Historia projektu
[edytuj | edytuj kod]FCKeditor i CKEditor 3
[edytuj | edytuj kod]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 4
[edytuj | edytuj kod]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 5
[edytuj | edytuj kod]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 Ecosystem
[edytuj | edytuj kod]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 edytora
[edytuj | edytuj kod]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 rzeczywistym
[edytuj | edytuj kod]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ądarkami
[edytuj | edytuj kod]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].
Przypisy
[edytuj | edytuj kod]- ↑ 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.).
- ↑ Quinn Dombrowski: Drupal for Humanists. Texas A&M University Press, 2016. ISBN 978-1-62349-473-5. [dostęp 2019-06-11]. (ang.).
- ↑ 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.).
- ↑ 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.).
- ↑ CKEditor Pricing. [dostęp 2020-08-04]. (ang.).
- ↑ Rebranding. 2009-02-20. [dostęp 2011-06-09]. (ang.).
- ↑ a b CKEditor 3.0 is here!. 2009-08-21. [dostęp 2020-03-20]. (ang.).
- ↑ CKEditor 5 v10.0.0 – the future of rich text editing looks stable. [dostęp 2018-05-07]. (ang.).
- ↑ API documentation. [dostęp 2020-08-04]. (ang.).
- ↑ CKEditor Ecosystem Documentation: Overview. [dostęp 2020-08-04]. (ang.).
- ↑ Letters - Overview. [dostęp 2020-08-04]. (ang.).
- ↑ Bringing collaborative editing to any application. [dostęp 2017-11-23]. (ang.).
- ↑ a b CKEditor Browser Compatibility. [dostęp 2020-08-04]. (ang.).
- ↑ Browser compatibility. [dostęp 2020-08-04]. (ang.).
Linki zewnętrzne
[edytuj | edytuj kod]- CKSource – oficjalna strona internetowa
- CKEditor 4 – repozytorium GitHub
- CKEditor 5 – repozytorium GitHub