Statisches Syntax-Highlighting ist das Hervorheben von Code, den Nutzende nicht ändern können. Dazu gehören Code-Schnipsel, Iterationen und mehr.
Der Online-Editor verwendet kein statisches Syntax-Highlighting, da Nutzende den Code direkt ändern können. Wenn du mehr darüber erfahren möchtest, wie wir Syntax-Highlighting im Online-Editor handhaben, schau in die Dokumentation zum dynamischen Syntax-Highlighting.
Für statisches Syntax-Highlighting verwenden wir die highlightjs-Bibliothek.
Wenn du Unterstützung für deine Sprache hinzufügst, hast du drei Möglichkeiten:
Um die highlightjs-Unterstützung für die Sprache deines Tracks zu aktivieren, musst du die config.json-Datei des Tracks ändern.
Füge in der Datei config.json den Schlüssel online_editor.highlightjs_language hinzu bzw. setze ihn auf den passenden highlightjs-Sprachbezeichner (der in der Dokumentation zu finden ist).
{
"online_editor": {
"highlightjs_language": "csharp"
}
}
Um ein vorhandenes Plugin zu verwenden, muss es auf NPM veröffentlicht sein. Wenn das Plugin nicht auf NPM veröffentlicht ist, hast du folgende Möglichkeiten:
Der nächste Schritt ist, das Plugin zu aktivieren.
Um ein Plugin zu aktivieren (es muss auf NPM veröffentlicht sein), erstelle ein Thema im Forum, in dem du uns bittest, Unterstützung für das Plugin auf der Website hinzuzufügen. Wir (Exercism) erstellen dann einen Pull Request, der das Plugin zur Website hinzufügt. Sobald der PR gemergt ist, kannst du die highlightjs-Unterstützung aktivieren, indem du die Anleitung im Abschnitt Track konfigurieren befolgst.
Wenn du ein Plugin erstellen möchtest, hast du zwei Möglichkeiten für das Hosting:
Sobald du ein Repository hast, folge der Anleitung zum Beitragen einer Sprache, um das Plugin umzusetzen.
Danach musst du das Plugin auf NPM veröffentlichen. Der nächste Schritt ist, das Plugin zu aktivieren.
Die Syntax deiner Sprache ähnelt (stark) der Syntax einer anderen Sprache. In diesem Fall kannst du in Erwägung ziehen, das Syntax-Highlighting dieser Sprache für deine Sprache zu verwenden. Konfiguriere dazu den Track so, dass er den highlightjs-Sprachbezeichner der anderen Sprache verwendet. Mehr dazu findest du im Abschnitt Track konfigurieren.