MarkdownフェンスコードブロックからHTML pre/codeタグへの変換
Markdownのフェンスコードブロック(```)をHTML <pre><code>タグに変換する方法を解説。言語ヒント、シンタックスハイライトクラス、インデントコードブロックを含みます。
Code
詳細な説明
Markdownのフェンスコードブロック
フェンスコードブロックは、技術文書においてMarkdownの最も重要な機能の一つです。ホワイトスペースを保持し、通常等幅フォントでレンダリングされます。
基本的なフェンスコードブロック
コードをトリプルバッククォートで囲みます。これは以下のHTMLに変換されます:
<pre><code>function greet(name) {
return "Hello, " + name;
}
</code></pre>
言語の指定
開始バッククォートの後に言語名を追加すると、シンタックスハイライトが有効になります。language-* クラスは Prism.js や highlight.js などのシンタックスハイライトライブラリが色分けに使用します。
インデントコードブロック
元のMarkdown構文では、4スペースのインデントによるコードブロックもサポートされています。しかし、言語ヒントをサポートし読みやすいフェンスブロックが一般的に推奨されます。
HTMLエンティティエンコーディング
コードブロック内の <、>、& などの文字は自動的にHTMLエンティティに変換されます。これにより、HTMLを含むコードスニペットが安全に表示されます。
ユースケース
コードブロックは、技術ドキュメント、APIリファレンス、チュートリアル、READMEファイルに不可欠です。言語クラスにより、静的サイト、ドキュメントジェネレータ、MarkdownをHTMLに処理するCMSプラットフォームでシンタックスハイライトが可能になります。