Blog

Grails Syntax-Highlighter Plugin veröffentlicht

Erik Pragt

Aktualisiert Oktober 23, 2025
3 Minuten

Grails Syntax-Highlighter-Plugin

Gestern habe ich mein erstes Plugin für Grails veröffentlicht. Das Ziel des Plugins ist es, Syntax-Highlighting für Code Snippets in HTML-Seiten zu ermöglichen, wofür es bisher kein Plugin gab. Das Plugin unterstützt eine ganze Reihe von Sprachen und bietet sogar Unterstützung für Groovy Highlighting. Der Grails Synax Highlighter baut auf der großartigen Arbeit von Alex Gorbatchev auf, der den Javascript Syntax Highlighter geschrieben hat und pflegt.

Da Bilder mehr sagen, als 1000 Worte beschreiben können, zeige ich Ihnen ein Beispiel für die Ausgabe des Plugins:

Der obige Code ist in der Syntax gefärbt und enthält auch Leinenummern, Unterstützung zum Kopieren in die Zwischenablage usw. Wie können wir ihn also in Grails verwenden?

Installation

Nun, der erste Schritt ist die Installation. Wenn Sie noch kein Grails-Projekt haben, können Sie eines mit dem Befehl grails create-app <name> erstellen. Danach installieren Sie das Plugin mit grails install-plugin syntax-highlighter. Grails wird das Plugin aus dem Plugin-Repository herunterladen. Das Plugin enthält alles, was Sie brauchen, so dass Sie die Javascript-Bibliothek nicht manuell herunterladen müssen. Nachdem das Plugin installiert ist, haben Sie ein neues Verzeichnis 'syntaxhighlighter' in Ihrem /web-app/js und css Verzeichnis. Diese Verzeichnisse enthalten die verschiedenen Formatierer, wie z.B. Java, PHP, Groovy, und den dafür verwendeten Stil, den Sie durch Ändern der CSS-Datei ändern können.

Verwendung

Das Plugin kann auf die folgende Weise verwendet werden. Fügen Sie zunächst den syntax:resources Tag in den Kopf der GSP-Seite ein. Der syntax:resources Tag ist für das Laden des erforderlichen Javascript und CSS verantwortlich und hat zwei erforderliche Attribute: name und languages. Der Name entspricht dem Namen der Codeblöcke, die im Body der GSP-Seite hervorgehoben werden sollen. Das Attribut languages nimmt eine Karte der verschiedenen Sprachen auf. Auf dieser Seite finden Sie eine Übersicht über alle unterstützten Sprachen. Um den Code mit Hilfe des Plugins syntaktisch hervorzuheben, können Sie das <syntax:format> verwenden (das ich wahrscheinlich in <syntax:highlight> umbenennen sollte, wenn ich daran denke...). Dieser Tag hat auch zwei erforderliche Attribute, die dem Ressourcen-Tag ähneln: name und language, die hoffentlich selbsterklärend sind.

Beispiel

Ein vollständiges Beispiel sieht so aus:


   

Etwas Groovy-Code

Klasse User { def name def Passwort }

Und etwas Java-Code

public class User { private String name; private String password; public String getName() { Name zurückgeben; } }

Das erzeugt diese Ausgabe:

Als Bonus kodiert das <syntax:format> automatisch die HTML- und XML-Elemente im Tag-Body. Sie müssen diese Elemente also nicht selbst entschlüsseln, das Plugin erledigt das für Sie. Und wenn Ihnen das nicht gefällt, können Sie es mit dem Attribut syntax:format escapeXml="false" ausschalten.Ich hoffe, Sie haben einen guten Überblick über das Plugin und seine Möglichkeiten erhalten. Weitere Informationen finden Sie auf der Seite des Grails-Plugins, die alle Informationen enthält, die Sie benötigen. Und wenn Sie etwas vermissen, zögern Sie nicht, einen Kommentar zu hinterlassen!

Verfasst von

Erik Pragt

Contact

Let’s discuss how we can support your journey.