2012-07-19 21 views
8

GitHub utiliza algo conocido como "Marcación con sabor a GitHub" para mensajes, problemas y comentarios. Mis preguntas son:Resaltado de sintaxis en la Wiki de GitHub: Especificación del lenguaje de programación

  • ¿GitHub también usa esta sintaxis para su Wiki?
  • Por lo que entiendo que uno puede especificar el lenguaje de programación para el resaltado de sintaxis utilizando la siguiente sintaxis:

    ```ruby 
    require 'redcarpet' 
    markdown = Redcarpet.new("Hello World!") 
    puts markdown.to_html 
    ``` 
    

    Donde uno puede especificar el lenguaje de programación después de la cadena ``` (por ejemplo ```ruby)

    Mi pregunta es: ¿Cómo busco el especificador para un lenguaje de programación? (por ejemplo C no parece funcionar para el lenguaje de programación C)

+0

prueba minúscula 'c' – nulltoken

+0

Ambos 'C' y' c' deberían funcionar. – pchaigno

Respuesta

6

Para obtener una lista de los posibles lexers que github wiki puede utilizar ver aquí: http://pygments.org/docs/lexers/

Si usted encuentra que un determinado léxico es no se admiten, github recomienda que se bifurcan su código y su presentación a través de una petición de atracción: https://github.com/blog/774-git-powered-wikis-improved

+1

GitHub usó Pygments para resaltar la sintaxis a la vez, pero la lista de lexers de Pygments nunca coincidió completamente con la lista de lexers disponibles en GitHub. GitHub ahora se basa en las gramáticas Sublime Text, Atom y TextMate para resaltar la sintaxis. Vea la respuesta de 3D1T0R para la lista de lexers disponibles. – pchaigno

1

¿Cómo busco el especificador para un lenguaje de programación?

La puesta al día lista de especificadores de idioma puede deducirse a partir del fichero de configuración principal del the Linguist repository, languages.yml. Para cada idioma en esa lista, se puede utilizar como especificadores:

  1. El nombre del idioma
  2. Cualquiera de la lengua aliases
  3. Cualquiera de las extensiones de archivo, con o sin un líder ..

Los espacios en blanco deben ser reemplazados por guiones (por ejemplo, emacs-lisp es uno especificador para Emacs Lisp). Los idiomas con una entrada tm_scope: none no tienen una gramática definida y no estarán resaltados en github.com.

jmm realizó este esfuerzo de ingeniería inversa y recibió la confirmación de uno de los ingenieros de GitHub. Él abrió un problema con toda la información en Linguist y mantiene a wiki page with the specifiers for all languages (que podría no estar actualizado).

¿GitHub también usa esta sintaxis para su Wiki?

Sí, pero los wikis de github.com también son compatibles con otros formatos. Puede encontrar la lista completa en the markup repository.

Cuestiones relacionadas