首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C#代码的MarkdownSharp和GitHub语法

C#代码的MarkdownSharp和GitHub语法
EN

Stack Overflow用户
提问于 2011-11-21 19:22:46
回答 3查看 33.9K关注 0票数 28

有没有办法让MarkdownSharp (我用的是NuGet package)来处理'GitHub flavored Markdown ( GFM)‘,特别是c#代码的语法突出显示,它(在GFM中)是这样写的:

代码语言:javascript
复制
```c#

//我的代码.....

代码语言:javascript
复制

因此,如果我将Markdown格式的内容传递给MarkDownSharp,包含一个C#代码块(如上所述),我希望它为该c#代码生成语法突出显示的html。有什么想法吗?我知道我可以使用支持的4个空格来指示代码块,但我仍然在寻找一种解决方案,让它支持GitHub风格的Markdown。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-12-03 09:27:21

Stack Overflow用户

发布于 2014-05-12 01:45:34

我对MarkdownSharp做了一些轻微的修改,可以转换github风格的栅栏代码块。

https://github.com/KyleGobel/MarkdownSharp-GithubCodeBlocks

代码语言:javascript
复制
```cs

Console.WriteLine(“围墙代码块ftw!");

代码语言:javascript
复制

会变成

代码语言:javascript
复制
<pre><code class='language-cs'>
Console.WriteLine("Fenced code blocks ftw!");
</code></pre>

它处理了我需要使用的情况,虽然可能有很多边缘情况,但请随意派生/更改/修改/拉入请求。Markdown sharp有很多注释,而且只有一个文件,所以修改它并不是太糟糕。

票数 22
EN

Stack Overflow用户

发布于 2011-12-02 21:49:57

从这个post中可以看出,GitHub依赖于RedCarpet来呈现Markdown语法。

然而,Vicent Marti (Sundown (ex-Upskirt) states python maintainer)指出,语法突出显示是由python库Pygments专门处理的。

回到您关心的问题,我可以想到几个选项来从C#的语法突出显示中受益:

  • 尝试并构建Pygments source code的已编译托管版本,这要归功于IronPython (“IronPython的托管API可用于将Python脚本编译为DLL、控制台可执行文件或different,以便使用不同的语法突出显示产品(例如,由executables.")
  • Port使用的ColorCode

然后:

要使其接受plug-ins

  • Similarly所做的工作,请使用托管语法突出显示产品并对由MarkDownSharp

生成的MarkDownSharp进行后期处理

顺便说一句,作为MarkDown的替代方案,你可能想要考虑Moonshine,它是Sundown之上的一个托管包装器,据说“在运行MarkdownSharp自己的基准应用程序时,它至少比MarkdownSharp快20倍”。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8210974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档