Diese Anleitung erklärt, wie Sie konfigurieren, welche Programmiersprachen für die Syntaxhervorhebung in Discourse verfügbar sind.
Erforderliche Benutzerstufe: Administrator
Die Syntaxhervorhebung verbessert die Lesbarkeit von Codeblöcken, indem sie die Formatierung basierend auf der Programmiersprache anwendet. Sie können die für die Syntaxhervorhebung in Discourse verfügbaren Sprachen anpassen.
Konfigurieren der Site-Einstellung highlighted_languages
So konfigurieren Sie die Liste der Programmiersprachen für die Syntaxhervorhebung:
- Navigieren Sie zum Admin-Bereich.
- Gehen Sie zu
Config→Content→Posts and Topics. - Suchen Sie die Site-Einstellung
highlighted_languages.
In dieser Einstellung können Sie festlegen, welche Sprachen für die Syntaxhervorhebung verfügbar sein sollen. Geben Sie die Namen der Sprachen, die Sie unterstützen möchten, durch Kommas getrennt ein.
Verwandte Einstellungen
Es gibt zwei weitere Site-Einstellungen im Zusammenhang mit der Syntaxhervorhebung, die im selben Bereich zu finden sind:
default_code_lang— Die Standardsprache, die auf Codeblöcke angewendet wird, wenn keine Sprache angegeben ist. Standardmäßig aufautogesetzt, was versucht, die Sprache automatisch zu erkennen.autohighlight_all_code— Wenn aktiviert, wird die Syntaxhervorhebung auf alle<code>-Blöcke angewendet, auch auf solche, bei denen keine Sprachklasse angegeben ist. Standardmäßig deaktiviert.
Unterstützung für weitere Sprachen hinzufügen
Wenn die gewünschte Sprache nicht in highlight.js enthalten ist, können Sie sie über eine Theme-Komponente unter Verwendung der Plugin-API api.registerHighlightJSLanguage() hinzufügen. Nachfolgend sind die Schritte dazu aufgeführt:
- Modul für Ihre Sprache finden: Suchen Sie eine highlight.js-Sprachdefinition, die die gewünschte Sprache unterstützt. Zum Beispiel:
- Solidity:
https://github.com/highlightjs/highlightjs-solidity - Supercollider:
https://github.com/highlightjs/highlightjs-supercollider
- Modul mit einer Theme-Komponente integrieren:
- Beschaffen Sie die HighlightJS-Sprachdefinition für die gewünschte Sprache.
- Erstellen Sie eine neue Theme-Komponente in Discourse.
- Verwenden Sie in der JavaScript-Datei der Theme-Komponente die Plugin-API, um die Sprache zu registrieren:
api.registerHighlightJSLanguage("languageName", languageDefinitionFunction); - Sehen Sie sich Install a new language for Highlight.JS via a theme component für ein vollständiges Beispiel an.

