Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8916

【TypeScript】マークダウン文字列をHTMLにパースする(GitHub Flavored Markdown)

$
0
0

サンプル

今回紹介するコードを使用しているのがこちら。

デモページ: github-markdown-editor
github: kou-pg-0131/github-markdown-editor

使用するモジュール

  • marked, @types/marked
    markdownをHTMLにパース

  • highlight.js,@types/highlight.js
    コードのシンタックスハイライト部分をパース
    highlightjsモジュールも存在しますが、別物なので間違えないように注意

npm i marked @types/marked highlight.js @types/highlight.js

サンプルコード

importmarkedfrom'marked';importhighlightjsfrom'highlight.js';marked.setOptions({highlight:function(code,lang){returnhighlightjs.highlightAuto(code,[lang]).value;},// シンタックスハイライトに使用する関数の設定pedantic:false,// trueの場合はmarkdown.plに準拠する gfmを使用する場合はfalseで大丈夫gfm:true,// GitHub Flavored Markdownを使用breaks:true,// falseにすると改行入力は末尾の半角スペース2つになるsanitize:true,// trueにすると特殊文字をエスケープするsilent:false// trueにするとパースに失敗してもExceptionを投げなくなる});constmarkdown:string=`
# Hello World

\`\`\`ruby
puts 'Hello World'
\`\`\`

<h1>Hello World</h1>
`consthtml:string=marked(markdown)console.log(html);/* =>
 * <h1 id="hello-world">Hello World</h1>
 * <pre><code class="language-ruby">puts <span class="hljs-string">'Hello World'</span></code></pre>
 * <p>&lt;h1&gt;Hello World&lt;/h1&gt;
 * </p>
 */

参考


Viewing all articles
Browse latest Browse all 8916

Trending Articles