Mise en évidence de la syntaxe diff dans Github Markdown

100

J'écris des documents qui devraient expliquer le code en C # en utilisant Markdown.

J'utilise le ```csharppour mettre en évidence csharp.

Je veux parfois mettre en évidence quelque chose de spécifique dans le code en utilisant du gras ou quoi que ce soit.

Je sais pour <pre>etc ... mais cela enlève ma mise en évidence csharp.

Meilleur scénario - un moyen de mettre en évidence le code dans la ```csharpsection.

Meilleure chose suivante - je peux écrire le code en tant que diff - en utilisant + et - pour mettre en évidence des éléments, mais comment dire à Github de mettre en évidence la syntaxe de diff avec la couleur de fond rouge et verte?

Existe-t-il un moyen d'utiliser à la fois la coloration syntaxique diff et csharp?

Noam
la source
4
Oh, comme je souhaite que stackoverflow mette à jour son analyse Markdown pour qu'elle ressemble plus à Githubs. Je déteste leur terrible système de bloc de code. Emballer avec `` `est bien meilleur, car il ne nécessite aucun changement" dans le texte lui-même ". (les indentant tous avec quatre espaces) Même avec le raccourci clavier Ctrl + K, c'est juste un pansement sur une mauvaise conception. </rant>
Venryx

Réponses:

184

Le markdown de Github prend en charge les différences lors du formatage du code. Par exemple:

```diff
public class Hello1
{
   public static void Main()
   {
-      System.Console.WriteLine("Hello, World!");
+      System.Console.WriteLine("Rock all night long!");
   }
}
```

et il devrait vous donner les looks Diff que vous recherchez , mettant en évidence en rouge ce qui a été supprimé et en vert ce qui a été ajouté.

Salvador Medina
la source
2
Je l'ai essayé dans ce sens. J'espère que ça aide. gist.github.com/salmedina/…
Salvador Medina
Hou la la! Ma faute. Je cherchais "la coloration syntaxique diff dans les blocs de code stackoverflow" et j'ai été dirigé ici. Oui! cela fonctionne sur github et c'est pourquoi j'espérais que cela fonctionnerait sur stackoverflow. Hélas, ce n'est pas le cas et il semble qu'il n'y ait pas assez d'intérêt à le faire fonctionner. meta.stackoverflow.com/questions/272207/…
Bruno Bronosky
33
Savez-vous comment obtenir la bonne coloration syntaxique ET la coloration différente?
math2001
1
Il ne semble pas être pris en charge pour le moment. Voici une feuille de triche de ce qui est pris en charge. github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet#code . J'espère que cela t'aides.
Salvador Medina
1
Fonctionne pour moi sur GitHub, BitBucket et même mon IDE - VS Code. Merci!
Liran H
15

La réponse de Salvador est correcte, cependant, j'ai découvert que vous devriez ajouter l'en-tête diff à l'extrait de code afin de le mettre en évidence:

``` diff
diff --git a/filea.extension b/fileb.extension
index d28nd309d..b3nu834uj 111111
--- a/filea.extension
+++ b/fileb.extension
@@ -1,6 +1,6 @@
-oldLine
+newLine
```

J'espère que cela aide!

Fdiazreal
la source
Si quelqu'un cherche juste le format git, sans les couleurs ... stackoverflow.com/a/4857407/3196753
tresf