2016-12-16 4 views
0

は、私はそう代替構文を使用したマークダウンをノードでHTMLに解析するにはどうすればよいですか?

const markdown = require("markdown-it")("default", { 
    html: true, 
    linkify: true, 
    typographer: true 
}); 
const htmlText = markdown.render(textFileContent); 

のように値下げ - それを使用し、それは私が<p>代わりの<h1><h2>に包まれます

#Big title 

##Title 

#Small title 

を行うまでに正常に動作します。これはGithubで動作することに注意してください。など

が、これは私が値下げを変更することはできません

Big title 
--------- 

Title 
======= 

に動作します。ユーザーはGitHubやstackoverflowのように解析することを期待しています。

+0

別の構文を使用すると、代替パーサーが必要になることがあります。 – GolezTrol

+0

どのパーサーをお勧めしますか? –

答えて

1

CommonMark specに続くすべての実装と同様に、markdownでは、ATXスタイルのヘッダーインジケータと見出しテキストの間にスペースが必要です。

これは動作するはずです:

# Big title 

## Title 

# Small title 

私はone of Markdown's fundamental goalsである、これはまた読みするソースやすくなりますことを信じて:

値下げの書式設定の構文については、最優先の設計目標は、としてそれを作ることです可能な限り読みやすい。 Markdown形式のドキュメントは、タグや書式設定の指示があるように見えることなく、そのままの状態でパブリッシュ可能でなければなりません。

あなたがmarkdown-it-lazy-headers pluginを使用することができますスペースなしのヘッダーをサポートしたい場合は、:

markdown-it-lazy-headersはあなたが従わなければならないようにATX headersの構文を緩和markdown-itためのプラグインです空白文字で始まる#文字の開始シーケンス。

+0

ありがとう、私の編集 –

+0

@WalleCyrilを参照してください。スペースなしでATXヘッダーをサポートするために使用できるプラグインがあります。私の更新された答えを見てください。 – Chris

関連する問題