Markdown方言のCommonMarkとは何か?
→ Markdown方言の全体像については以下の記事を参照のこと
CommonMarkとは何か?
CommonMarkは、Markdownの明確な仕様と互換性を持たせることを目的とした標準化プロジェクトである(2014年発足)。このため、これを方言と表現するのは正確では無いが、利用者からすれば、「結局また新たな仕様が派生した」ように見えるので、便宜的に方言として扱う。
- 曖昧な記法を厳格に定義
- 公式のテストスイートと仕様書(https://spec.commonmark.org)
- 実装ごとの差異を減らすことを目指す
CommonMarkでできること・できないこと
以下は、同一のMarkdown文書をCommonMarkとGitHub Flavored Markdown(GFM)でレンダリングした比較画像である。細かな違いが視覚的に理解できる。
CommonMarkがサポートしている主な機能と、未対応の機能を以下表に示す。
機能 | CommonMarkでの対応 | サンプル記法 |
---|---|---|
見出し | ✅ 対応 | ## 見出し2 |
段落・改行 | ✅ 対応 | 行末に2スペース / 空行 |
強調(太字・斜体) | ✅ 対応 | **太字** , *斜体* |
リスト | ✅ 対応 | - アイテム , 1. 番号付き |
コード | ✅ 対応 | インライン: code / ブロック: code |
リンク・画像 | ✅ 対応 | [Google](https://...) |
引用 | ✅ 対応 | > 引用文 |
区切り線 | ✅ 対応 | --- , *** |
表 | ❌ 非対応 | ※構文上は書けてもHTMLには変換されない |
チェックボックス | ❌ 非対応 | - [ ] タスク |
脚注 | ❌ 非対応 | [^1] |
比較の準備:次回以降の方針
CommonMarkは、Markdownの「共通語」として各方言との比較の基準に使える。
次回は、現在もっとも広く使われている「GitHub Flavored Markdown(GFM)」を取り上げ、CommonMarkと何が異なるのかを具体的に示す予定である。
Markdownの方言による違いが気になる場合は、より厳密な構造記述が可能な Asciidoc の導入も検討する価値がある。