Ce guide explique comment publier du code ou du texte préformaté dans Discourse en utilisant les formats Markdown, BBCode et HTML.
Niveau d’utilisateur requis : Tous les utilisateurs
Vous avez une ligne de code à partager ? Peut-être avez-vous besoin de partager un journal d’erreurs de votre site ? Lire du code non formaté peut être difficile, surtout si le code dépend d’espaces ou contient des caractères spéciaux que Discourse transforme.
Résumé
Dans ce guide, vous apprendrez :
- Comment formater le code en ligne.
- Comment formater des lignes de code entières.
- Comment formater des blocs de code.
- Comment utiliser BBCode et HTML pour le formatage du code.
- Comment désactiver le style automatique du code.
Formatage du code en ligne
Pour formater une section de texte spécifique, utilisez un seul accent grave de chaque côté du code. Cela peut être fait dans du texte normal, ou lorsque le code est sur sa propre ligne. Le formatage en ligne n’applique aucun formatage automatique du code (voir ci-dessous) et applique uniquement le « style de code » au texte entre les accents graves.
Exemple 1 :
Saisie :
``This is a line of code``
Résultat :
This is a line of code
Exemple 2 :
Saisie :
Voici du texte avec `un peu de code` à l’intérieur !
Résultat :
Voici du texte avec un peu de code à l’intérieur !
Formatage de lignes de code entières
Pour formater une ligne entière, ajoutez 4 espaces au début d’une ligne. Tout le texte jusqu’à la prochaine rupture de ligne sera considéré comme du code.
Exemple :
Saisie :
All text after 4 spaces will be formatted.
Résultat :
All text after 4 spaces will be formatted.
Formatage des blocs de code
Bien que vous puissiez utiliser la méthode des 4 espaces pour produire plusieurs lignes de code, cela peut être fastidieux, surtout si vous copiez et collez et que vous devez taper 4 espaces sur plusieurs lignes de texte.
Au lieu de cela, utilisez 3 accents graves (```) sur leur propre ligne au-dessus et en dessous de votre code. Assurez-vous qu’il n’y a pas d’espaces sur les lignes contenant les accents graves, sinon cela ne fonctionnera pas.
Exemple :
Saisie :
```
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
```
Résultat :
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
BBCode et HTML
En plus de Markdown, Discourse prend en charge un sous-ensemble de BBCode et de HTML.
Pour le HTML, utilisez les balises <pre> et <code> :
<pre><code>
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
</code></pre>
Pour le BBCode, utilisez la balise [code] :
[code]
public class CodeFormatting {
public static void main(String[] args) {
System.out.println("I can format code now!");
}
}
[/code]
Spécification du langage de programmation
Par défaut, Discourse détecte la langue de votre code et la stylise en conséquence.
Pour spécifier manuellement le langage de programmation pour un bloc de code, tapez le nom du langage juste après le premier ensemble d’accents graves :
``` your_language
# Your code here
Exemple
Pour spécifier Ruby :
Saisie :
``` ruby
3.times do |stuff|
stuff.do
end
```
Résultat :
3.times do |stuff|
stuff.do
end
Le langage doit être l’un des langages mis en évidence configurés pour la coloration syntaxique sur votre site. La liste par défaut peut être trouvée dans config/site_settings.yml en recherchant highlighted_languages.
Vous pouvez également définir la langue de code par défaut avec le paramètre de site default code lang.
Suppression de la coloration syntaxique
Si vous souhaitez empêcher toute coloration syntaxique, vous pouvez utiliser text comme langage :
Exemple
Saisie :
``` text
Your text to NOT highlight here
Résultat :
Your text to NOT highlight here
Meilleures pratiques
- Assurez-vous toujours que votre code en ligne est encadré d’accents graves simples pour plus de clarté.
- Utilisez le formatage de bloc de code pour partager de plus grands extraits de code.
- Évitez le style automatique du code lors du partage de texte ou de journaux qui ne bénéficient pas d’un style spécifique au langage.
- Spécifiez le langage si la détection automatique ne reconnaît pas correctement votre code.