Resaltado de sintaxis diferencial en Github Markdown

100

Estoy escribiendo documentos que deberían explicar el código en C # usando Markdown.

Utilizo ```csharppara obtener el resaltado csharp.

A veces quiero resaltar algo específico en el código usando negrita o cualquier cosa.

Sé sobre <pre>etc ... pero me quita el resaltado csharp.

En el mejor de los casos: alguna forma de resaltar el código en la ```csharpsección.

La siguiente mejor opción: puedo escribir el código como diff, usando + y - para resaltar cosas, pero ¿cómo le digo a Github que resalte la sintaxis diff con el color de fondo rojo y verde?

¿Hay alguna forma de utilizar el resaltado de sintaxis diff y csharp?

Noam
fuente
4
Oh, cómo me gustaría que stackoverflow actualizara su análisis de Markdown para que se parezca más a Githubs. Odio su terrible sistema de bloques de código. Envolver con "" es mucho mejor, ya que no requiere cambios "dentro del texto mismo". (sangrando a todos con cuatro espacios) Incluso con el atajo de teclado Ctrl + K, eso es solo una burla sobre el mal diseño. </rant>
Venryx

Respuestas:

184

La rebaja de Github admite diff al formatear el código. Por ejemplo:

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

y debe darle el aspecto Diff que está buscando , resaltando en rojo lo que se ha eliminado y en verde lo que se ha agregado.

Salvador Medina
fuente
2
Lo probé en esta esencia. Espero eso ayude. gist.github.com/salmedina/…
Salvador Medina
¡Guauu! Culpa mía. Estaba buscando "resaltado de sintaxis diferencial en bloques de código de desbordamiento de pila" y fui líder aquí. ¡Si! funciona en github y por eso esperaba que funcionara en stackoverflow. Por desgracia, no es así y parece que no hay suficiente interés en hacerlo funcionar. meta.stackoverflow.com/questions/272207/…
Bruno Bronosky
34
¿Sabe cómo obtener el resaltado de sintaxis correcto Y el resaltado de diferencias?
math2001
1
No parece ser compatible a partir de ahora. Aquí hay una hoja de trucos de lo que se admite. github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet#code . Espero que esto ayude.
Salvador Medina
1
Me funciona en GitHub, BitBucket e incluso en mi IDE - VS Code. ¡Gracias!
Liran H
15

La respuesta de Salvador es correcta, sin embargo, descubrí que debes agregar el encabezado diff al fragmento de código para resaltarlo:

``` 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
```

¡Espero que eso ayude!

Fdiazreal
fuente
Si alguien está buscando solo el formato git, sin los colores ... stackoverflow.com/a/4857407/3196753
tresf