Markdown 機能
作成 2026年5月28日更新 2026年6月11日Takeshi Takatsudo
zfb が提供する組み込みおよびオプトイン Markdown パイプライン機能。
zfb の Markdown パイプラインは、常に有効な Core(組み込み) 機能と、zfb.config.ts の markdown.features で個別に有効化する Opt-in(オプトイン) 機能を提供します。
Core 機能
以下の 8 機能は常に有効です。設定は不要です。
| 機能 | 説明 |
|---|---|
| CJK Friendly | 中国語・日本語・韓国語(CJK)の文章に対して、スペーシングと改行処理を改善します。 |
| Heading Links | h2 以上の見出しにアンカーリンクを追加し、ページ内の直接リンクを可能にします。 |
| Code Title | コードブロックに title="…" を設定すると、ファイル名や見出しバーを表示します。 |
| External Links | 外部リンクに視覚的なインジケーターを自動付与します。 |
| Resolve Links | 相対パスの .mdx/.md リンクをクリーンなドキュメント URL に解決します。 |
| Strip .md Extension | 出力される内部リンクの href から .md/.mdx 拡張子を除去します。 |
| Syntax Highlighting | syntect によるビルド時コードハイライト(固定テーマ: base16-ocean-dark)。 |
| Directives Registry | 汎用的な :::name ディレクティブエンジン — ディレクティブ構文を JSX コンポーネントにマッピングします。アドモニションのボキャブラリはレシピとして別途登録されます。 |
Opt-in 機能
以下の 14 機能はデフォルトで無効です。zfb.config.ts の対応する markdown.features.* キーで個別に有効化してください。
| 機能 | 設定キー | 説明 |
|---|---|---|
| Admonitions Preset | directives | directives マップでアドモニションのボキャブラリ(note/tip/warning/danger/info/caution/details)を登録します。 |
| Mermaid | mermaid | ```mermaid フェンスをクライアントサイドの Mermaid ライブラリで図として描画します。 |
| Image Enlarge | settings.imageEnlarge | クリックで拡大できる <figure> に画像をラップします。ユーザーランド設定 — 組み込みの markdown.features キーは next.18 で削除されました。 |
| Heading Marker TOC | headingMarkerToc | 各見出しにアンカーマーカーを付与し、TOC アイランドにデータを提供します。 |
| GitHub Alerts | githubAlerts | > [!NOTE]/[!TIP]/[!WARNING]/[!IMPORTANT]/[!CAUTION] ブロック引用をアドモニションマークアップに変換します。 |
| Reading Time | readingTime | 推定読了時間を計算し、ページレベルのメタデータとして公開します。 |
| GitHub Autolinks | githubAutolinks | Issue 番号、クロスリポジトリ参照、コミット SHA を GitHub へ自動リンクします。 |
| Code Enrichment | codeEnrichment | コードブロックにタイトルバー、コピーボタン、diff/行ハイライト装飾を追加します。 |
| Code Tabs | codeTabs | :::code-group ディレクティブを <CodeGroup> 経由でタブ付きコードパネルとして描画します。 |
| Ruby | ruby | ルビ注釈サポートを追加します({base}^{ruby} 構文)。 |
| TOC Export | tocExport | ページの目次を export const toc 名前付きエクスポートとして出力します。 |
| Image Dimensions | imageDimensions | ビルド時にディスクのメタデータから画像に width/height 属性を付与します。 |
| Link Validation | linkValidation | ビルド時に内部リンクを検証し、壊れた参照に警告(またはエラー)を出します。 |
| Transclude | transclude | :::include{file="…"} または ![[path]] で別ファイルの内容を埋め込みます。zudo-doc では無効(transclude レンダラー未配線)。 |
Revision History
Takeshi Takatsudo作成: 2026-05-29T01:18:48+09:00更新: 2026-06-11T17:55:32+09:00