Ich will an dieser Stelle einen ersten Einblick in die Entwicklung von Joomla Extensions an einem einfachem Beispiel geben.

Syntax Highlight Plugin with Highlight.js
Syntax Highlight Plugin with Highlight.js

Joomla hatte früher einen integrierten Syntax Highlighter für die Darstellung von Code in der Website: Geshi. In den Joomla 3 Entwicklungen fiel dieses Plugin den internen Umstellungen zum Opfer. Also bin ich immer auf der Suche nach einem geeignetem Plugin für diese technische Umsetzung.

Statt mit einem der rund 5000 Erweiterungen des JED wollen wir die Umsetzung selber gestalten. Im Grunde ist ein Syntax Highlighter eine relative einfache JS und CSS Umsetzung, die wir nur noch in die Auslieferung der Joomla Site integrieren müssten.

Analyse Highlighting Techniken

Die beiden Klassenbesten in 2025 (siehe z.B.: https://snappify.com/blog/best-syntax-highlighters) sind Prism.js und Highlight.js

Kurzanalyse: beide Tools benutzen denselben HTML-Code für die Umsetzung. Das sollte Wechsel - sofern gewünscht - sehr vereinfachen, weil man bei späteren Wechseln nicht noch den Quellcode anpassen müsste. Kurzgegenüberstellung der beiden Highlighter:

Prism.js

  • Leichtgewichtig (nur 1,5 KB groß)
  • Einfach zu implementieren
  • Unterstützt viele Programmiersprachen
  • Bietet verschiedene Themes

Links zu Prism.js

Zu Prism gibt es auch bereits eine bestehende Joomla Plugin Lösung:

Anm.: letzte Aktualisierung vor 4 Jahren! Einschätzung: im Grunde kein Security- oder Tech-Problem, da ja einfach nur dynamisch Dateien in der Joomla Ausgabe verdrahtet werden, wenn entsprechender Quellcode in der Seite ausgeliefert wird. Allerdings sollte man Syntax und Technik des Plugins checken!

Highlight.js

  • Beliebte JavaScript-Bibliothek
  • Unterstützt zahlreiche Programmiersprachen
  • Automatische Spracherkennung möglich
  • Viele Themes - siehe Examples https://highlightjs.org/examples
  • KISS Prinzip - daher auch keine Zeilennummern

Links Highlight.js

Sammlung zu Joomla Plugin Technik und Entwurf

Für die beiden Syntax Highlighter habe ich in einem frischen GitLab Repo beispielhafte Umsetzungen hinterlegt.

Privates

... zu Joe Brandes

Sie finden auf dieser Seite - als auch auf meiner privaten Visitenkarte joe-brandes.de einige Hintergrundinformationen zu mir und meinem Background.
Natürlich stellt die IT einen Schwerpunkt in meinem Leben dar - aber eben nicht nur ...

joe brandes 600px

Private Visitenkarte / Technik: HTML & CSS
joe-brandes.de

Jobs

... IT-Trainer & Dozent

Ich erarbeite und konzipiere seit über 30 Jahren IT-Seminare und -Konzepte. Hierfür stehen der "PC-Systembetreuer / FITSN" und der "CMS Online Designer / CMSOD". Ich stehe Ihnen gerne als Ansprechpartner für Ihre Fragen rund um diese und andere IT-Themen zur Verfügung!

becss 600px

BECSS Visitenkarte / Technik: HTML & CSS
becss.de

Hobby

... Snooker & more

Wer einmal zum Snookerqueue gegriffen hat, der wird es wohl nicht wieder weglegen. Und ich spiele auch immer wieder gerne eine Partie Billard mit den Kumpels und Vereinskameraden. Der Verein freut sich über jeden, der einmal in unserem schicken Vereinsheim vorbeischauen möchte.

bsb 2011 600px

Billard Sport BS / nicht mehr von mir betreut
billard-sport-braunschweig.de