Ce guide explique comment configurer les langages de programmation disponibles pour la coloration syntaxique dans Discourse.
Niveau d’utilisateur requis : Administrateur
La coloration syntaxique améliore la lisibilité des blocs de code en appliquant un formatage basé sur le langage de programmation. Vous pouvez personnaliser les langages disponibles pour la coloration syntaxique dans Discourse.
Configuration du paramètre du site highlighted_languages
Pour configurer la liste des langages de programmation pour la coloration syntaxique :
- Accédez au panneau d’administration.
- Allez dans
Config→Content→Posts and Topics. - Trouvez le paramètre du site
highlighted_languages.
Dans ce paramètre, vous pouvez définir les langages qui seront disponibles pour la coloration syntaxique. Saisissez les noms des langages que vous souhaitez prendre en charge, séparés par des virgules.
Paramètres associés
Il existe deux autres paramètres du site liés à la coloration syntaxique, situés dans la même section :
default_code_lang— Le langage par défaut appliqué aux blocs de code lorsqu’aucun langage n’est spécifié. La valeur par défaut estauto, qui tente de détecter automatiquement le langage.autohighlight_all_code— Lorsqu’il est activé, applique la coloration syntaxique à tous les blocs<code>, même ceux sans classe de langage spécifiée. La valeur par défaut est désactivée.
Ajout de la prise en charge de langages supplémentaires
Si le langage souhaité n’est pas inclus dans highlight.js, vous pouvez l’ajouter via un composant de thème en utilisant l’API de plugin api.registerHighlightJSLanguage(). Voici les étapes à suivre :
- Localiser un module pour votre langage : Trouvez une définition de langage highlight.js qui prend en charge le langage que vous souhaitez ajouter. Par exemple :
- Solidity :
https://github.com/highlightjs/highlightjs-solidity - Supercollider :
https://github.com/highlightjs/highlightjs-supercollider
- Intégrer le module à l’aide d’un composant de thème :
- Obtenez la définition de langage HighlightJS pour le langage souhaité.
- Créez un nouveau composant de thème dans Discourse.
- Dans le JavaScript du composant de thème, utilisez l’API de plugin pour enregistrer le langage :
api.registerHighlightJSLanguage("nomDuLangage", fonctionDefinitionDuLangage); - Consultez Installer un nouveau langage pour Highlight.JS via un composant de thème pour un exemple complet.

