28

MarkdownSharp (私はNuGet パッケージを使用しています) を取得して、「GitHub 風味の Markdown (GFM)」、特に (GFM で) 次のように記述された c# コードの構文の強調表示を処理する方法はありますか?

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

したがって、Markdown 形式のコンテンツを MarkDownSharp に渡し、C# コード ブロック (上記のように) を含む場合、その C# コードの構文強調表示された html を生成する必要があります。何か案は?サポートされている 4 つのスペースを使用してコード ブロックを示すことができることはわかっていますが、GitHub フレーバーの Markdown をサポートするためのソリューションを探しています。

4

3 に答える 3

8

結果は次のとおりです:https ://github.com/danielwertheim/kiwi/wiki/Use-with-Asp.Net-MVC

// D

于 2011-12-03T01:27:20.553 に答える
3

この投稿で読めるように、GitHub はRedCarpetに依存して Markdown 構文をレンダリングします。

ただし、Vicent Marti ( Sundown (元 Upskirt) および RedCarpet メンテナー)、構文の強調表示は特にPython ライブラリであるPygmentsによって処理されると述べています。

あなたの懸念に戻りますが、C# の構文強調表示を利用するためのいくつかのオプションを考えることができます。

  • IronPythonのおかげで、Pygmentsソース コードのコンパイル済みマネージド バージョンを試してビルドしてください( 「IronPython のホスティング API を使用して、Python スクリプトを DLL、コンソール実行可能ファイル、または Windows 実行可能ファイルにコンパイルできます。」 )
  • Pigment を C# に移植する
  • 別の構文強調表示製品を使用します (たとえば、Codeplexで使用される ColorCode など)。

次に、次のいずれかを行います。

  • MarkDownSharp をフォークして、プラグインを受け入れるようにする
  • GitHub と同様に、管理された構文強調表示製品を使用し、MarkDownSharp によって生成された Html を後処理します。

ところで、MarkDown の代替手段として、「MarkdownSharp 独自のベンチマーク アプリに対して実行した場合、MarkdownSharp より少なくとも 20 倍高速」と言われている Sundown のマネージド ラッパーであるMoonshineを検討することをお勧めします。

于 2011-12-02T13:49:56.597 に答える