web-dev-qa-db-fra.com

Markownshaarp & GitHub Syntaxe pour C # Code

Existe-t-il un moyen d'obtenir Markdownshaarp (j'utilise le Package Nuget ) pour gérer ' Marque à arômé Github (GFM)' et surtout la surbrillance de la syntaxe du code C #, qui ( dans gfm) est écrit comme ceci:

```c#
//my code.....
```

Donc, si je passe le contenu du marquage formaté à Markdownshaarp, containgez un bloc de code C # (comme ci-dessus), je souhaite que la syntaxe en surbrillance HTML en surbrillance sur le code C #. Des idées? Je sais que je peux utiliser les 4 espaces supportés pour indiquer un bloc de code, mais à nouveau, je recherche une solution pour que cela puisse supporter le marquage aromatisé Github.

25
Daniel
7
Daniel

J'ai fabriqué des modifications lumineuses à MarkdownshaARP qui transformera les blocs de code clôturés github

https://github.com/kylegobel/markdownshacharp-githubcodeblocks

```cs
Console.WriteLine("Fenced code blocks ftw!");
```

Deviendrait

<pre><code class='language-cs'>
Console.WriteLine("Fenced code blocks ftw!");
</code></pre>

Il gère les cas où j'avais besoin d'utiliser, il y a probablement beaucoup de cas de bord cependant, n'hésitez pas à la recherche/modification/modification/traction. Markdown Sharp a beaucoup de commentaires et est un seul fichier, donc ce n'est pas trop mauvais de modifier.

17
Kyle Gobel

Comme on peut lire dans ce post , github s'appuie sur Redcarpet Pour rendre la syntaxe de marquage.

Cependant, Vicent Marti ( Sundown (Ex-upskirt) et redcarpet mainteneur) états que la surbrillance de la syntaxe est spécifiquement manipulée par pycments , une bibliothèque python.

Retour à votre préoccupation, je peux penser à plusieurs options pour bénéficier de la sélection de la syntaxe de C #:

  • Essayez de construire une version gérée compilée de pygments code source Merci à IronPython ("Les API d'hébergement d'Ironthon peuvent être utilisées pour compiler Python scripts dans les DLL, les exécutables de la console ou les exécutables Windows. ")
  • Port pygh sur c #
  • Utilisez un produit de surbrillance de la syntaxe différente (par exemple, ColorCode utilisé par CodePlex ...)

Ensuite soit:

  • Fork Markdownshaarp pour le faire accepter des plug-ins
  • De la même manière que ce que GitHub utilise, utilisez la syntaxe gérée en surbrillance du produit et le processus de post de la section HTML générée par Markdownshaarp

Au fait, comme une alternative de marquage, vous voudrez peut-être envisager Moonshine , une enveloppe gérée sur le coucher du soleil qui est dit "au moins 20 fois plus rapide que MarkdownSharp lorsqu'il est exécuté contre l'application de référence de MarkdownSharp.

3
nulltoken