CommonMarkとMarkdownの違いを徹底解説!初心者にもわかるポイントをわかりやすく紹介

  • このエントリーをはてなブックマークに追加
CommonMarkとMarkdownの違いを徹底解説!初心者にもわかるポイントをわかりやすく紹介
この記事を書いた人

中嶋悟

名前:中嶋 悟(なかじま さとる) ニックネーム:サトルン 年齢:28歳 性別:男性 職業:会社員(IT系メーカー・マーケティング部門) 通勤場所:東京都千代田区・本社オフィス 通勤時間:片道約45分(電車+徒歩) 居住地:東京都杉並区・阿佐ヶ谷の1LDKマンション 出身地:神奈川県横浜市 身長:175cm 血液型:A型 誕生日:1997年5月12日 趣味:比較記事を書くこと、カメラ散歩、ガジェット収集、カフェ巡り、映画鑑賞(特に洋画)、料理(最近はスパイスカレー作りにハマり中) 性格:分析好き・好奇心旺盛・マイペース・几帳面だけど時々おおざっぱ・物事をとことん調べたくなるタイプ 1日(平日)のタイムスケジュール 6:30 起床。まずはコーヒーを淹れながらニュースとSNSチェック 7:00 朝食(自作のオートミールorトースト)、ブログの下書きや記事ネタ整理 8:00 出勤準備 8:30 電車で通勤(この間にポッドキャストやオーディオブックでインプット) 9:15 出社。午前は資料作成やメール返信 12:00 ランチはオフィス近くの定食屋かカフェ 13:00 午後は会議やマーケティング企画立案、データ分析 18:00 退社 19:00 帰宅途中にスーパー寄って買い物 19:30 夕食&YouTubeやNetflixでリラックスタイム 21:00 ブログ執筆や写真編集、次の記事の構成作成 23:00 読書(比較記事のネタ探しも兼ねる) 23:45 就寝準備 24:00 就寝


はじめに: CommonMarkとMarkdownの基本

この話を始める前に、まず前提をそろえます。Markdownは、読みやすいプレーンテキストを HTML に変換するための軽量マークアップ言語です。作成者は John Gruber で、2004 年ごろに公開されました。その後、多くの開発者がこのアイデアを受けて、さまざまな派生が生まれました。派生の例としては GitHub Flavored Markdown、MultiMarkdown、RMarkdown などがあります。派生が増えると、仕様が揺らぎ、書き手と受け手の間で「この書き方はどう解釈されるのか」が揺れてしまいます。これをできるだけ解消するために、CommonMark という公式の仕様が作られました。CommonMark は「この表現はこう解釈する」という共通のルールを定め、いわば“標準語”のような役割を果たします。

ここから先は、CommonMarkMarkdown の違いを、実際の使い方に結びつけて詳しく見ていきます。長い文章が続きますが、中学生でも読めるよう、やさしく丁寧に説明します。
なお、ここで使う用語の多くは実務でよく出会うものです。分からない言葉があっても大丈夫。読み進めるうちに感覚がつかめるはずです。

CommonMarkとは何か

CommonMark は Markdown の“公式仕様”として作られた規格です。複数の実装が存在する Markdown の世界で、同じ入力が同じ出力になることを目指しています。これにより、サイトやブログの表示が環境依存で崩れにくくなります。
つまり、CommonMark は「どう解釈するか」を決めるルールブックであり、実際の表示はそれに従うパーサー(解釈するプログラム)に任されます。ここがキーポイントであり、互換性を高める役割を果たします。
ただし CommonMark 自体は「ここにはこの表示をします」という美しいデザインの約束ではなく、「こういう表現はこのように解釈します」という仕様書です。実装者はこの仕様に合わせて parser を作ることで、他の環境とのズレを減らすことができます。

この章の要点をもう一度まとめると、CommonMark は「標準仕様」であり、Markdown は「派生や実装が多い言語」という構造です。
もしあなたが自分のブログを複数の場所で公開したい場合、CommonMark に準拠した環境を選ぶと、表示の安定性が高くなります。
ただし派生が多い Markdown でも、CommonMark 仕様をベースにしているものを選ぶことで、予測しやすい表示を得やすくなります。

Markdownとは何か

Markdown は John Gruber によって生み出された、読みやすいプレーンテキストを HTML に変換する軽量マークアップ言語です。最初の目的は、テキストを美しく整形しつつ、普通の文章としても読みやすい状態を保つことでした。
しかし、Markdown には公式の統一仕様はなく、実装ごとに解釈が少しずつ異なります。これが問題になる場面もあり、同じ本文が別の環境で崩れて見えることがあります。
そこで CommonMark の登場です。CommonMark は「この入力はこう解釤します」という基準を設け、互換性を高めています。とはいえ、Markdown 自体は今も派生が豊富で、GitHub Flavored Markdown などの機能拡張が横行しています。これにより、使い勝手は良くなる反面、どの機能がどの派生で使えるかを把握する必要が出てきます。

違いを詳しく見ていくポイント

仕様の一貫性と互換性

CommonMark の目的は、すべての実装で同じ解釈を共有することです。これにより、あるサイトでの表示と別のサイトでの表示が揃い、読み手の混乱を減らします。たとえば、リストのインデント、コードブロックの扱い、見出しのマークの数がどう解釈されるかなど、細かな挙動が公式に定義されています。
一方Markdown には派生が多く、派生ごとに解釈が微妙に異なることがあります。GitHub Flavored Markdown(GFM) などは公式仕様ではない機能を追加しており、これらを使うと可搬性が落ちることもあるのです。
もしあなたが複数の環境で同じ文書を扱うなら、CommonMark 準拠の環境を選ぶと安全性が高まります。とはいえ、特定の派生機能を活かしたい場合は、それがどの環境でサポートされているかを事前に確認すると良いでしょう。

この点を実務で実感する場面は多く、たとえば技術ドキュメントを書くときに、段落の分け方やリストのマークの扱い、コードブロックの表示などが異なると、読者が混乱します。CommonMark はこうした混乱を減らすための土台となるのです。
まとめると、CommonMark は「統一された解釈」を提供する規格であり、Markdown は派生が豊富で用途に応じて選ぶべき言語です。
表現の一貫性を重視するなら CommonMark、柔軟性と機能拡張を重視するなら派生 Markdown を選ぶのが現実的な選択です。

実用的な違いの例

ここでは、現場でよく出会う具体的な違いを、できるだけわかりやすく並べてみます。まずは基本の表現から始め、次に派生機能の扱いを見ていきましょう。
例えば、コードブロックの扱いは派生ごとに違いが大きいことがあります。CommonMark では三重バッククォート (``` ) で囲むコードブロックは、言語名の指定を省略しても適切に表示されます。GitHub Flavored Markdown のような派生では、言語名を付けることでハイライト機能が有効になることが多いです。
また、リストの解釈も差が出やすいポイントです。普通のハイフンやスターで作成するリストは、インデントの揺れによって「連番付きリストに見えるか」「段落が混じるか」が変わることがあります。CommonMark はこうしたケースをなるべく安定させるよう規定しています。一方、派生ではインデントの扱いが少し緩くなることもあり、同じ入力でもサイトごとに見え方が異なることがあります。
最後に、見出しや表の取り扱いも違いの対象です。CommonMark では見出しのマーク数や、表の整形ルールが比較的厳格です。派生では、表の機能を拡張して、より複雑な表を作れることがあります。これらの差を知っておくと、記事を書くときに困りにくくなります。


able> 機能 Markdown(派生の例) CommonMark コードブロック 言語名付きハイライトや派生機能があることが多い 基本的に言語名なしのブロックでも安定して表示 リスト インデントの柔軟性が高い派生あり インデントの取り扱いが厳格 表 拡張機能が豊富な派生あり 表の基本機能が明確で安定

まとめと使い分けのヒント

実務での結論としては、日常的な文書作成や、長期間にわたって多くの環境で同じように表示させたい場合は CommonMark 準拠を優先すると良いです。反対に、特定のサイトで高度な表現やハイライト、タスクリストなどの機能を活用したい場合は、派生 Markdown を選択して使い分けるのが現実的です。いずれにせよ、文書を公開する前に、対象のプラットフォームがどの仕様をサポートしているかを確認するのが成功のコツです。

要点のまとめと実践のヒント

最後に、実務で役立つ要点を短く整理します。
CommonMark は「標準仕様」であり、互換性と安定性を重視する場面で強力です。
Markdown は派生が豊富で、表現の幅が広がる一方、環境依存の差が出ることもある点に注意しましょう。
どちらを使うにしても、以下の実践のコツを覚えておくと作業が楽になります。1) 公式仕様を一度だけでも読んでおく。2) 公開先の環境での表示を事前に確認する。3) 可能なら標準仕様に沿った書き方を優先する。これらを意識するだけで、文章の見栄えと伝わり方がぐっと安定します。

ピックアップ解説

ねえ、CommonMark の話、ちょっと雑談風に深掘りしてみると面白いよ。CommonMark は“標準語のガイドブック”みたいなものだから、読んだ瞬間に“この表現はこう解釈されるのね”と納得できる。実務で困るのは、同じ Markdown でもサイトごとに表示が違うこと。それを避けるには CommonMark に近い仕様を使うのが王道だと思うんだ。とはいえ、派生 Markdown の魅力も捨てがたい。ハイライト機能や表の拡張など、必要な機能を選ぶ自由さは強みだから、使い分けるのが現実的。結局、文章を読んだ人にとって読みやすいかどうかが一番大事。CommonMark が“安定させる土台”を作ってくれるおかげで、私たちは自分の伝えたいことを余計な混乱なく伝えられるんだ。


ITの人気記事

ズームとズームワークプレイスの違いとは?初心者でもわかる徹底解説!
1434viws
青写真と青焼きの違いとは?簡単解説でわかりやすく理解しよう!
1107viws
「画素(ピクセル)とは何?解説と画像の違いをやさしく理解しよう」
982viws
CADデータとDXFデータの違いを徹底解説!初心者でもわかる使い分けのポイント
944viws
スター結線とデルタ結線の違いを徹底解説!初心者でも分かる電気の基本
873viws
初心者でもわかる!しきい値と閾値の違いを徹底解説
800viws
5GとXi(クロッシィ)ってどう違うの?初心者にもわかりやすく解説!
759viws
RGBとsRGBの違いって何?初心者でもわかる色の基本知識
727viws
インターフォンとインターホンの違いって何?わかりやすく解説!
699viws
RGBとVGAの違いを徹底解説!初心者にもわかりやすい映像信号の基礎知識
671viws
API仕様書とIF仕様書の違いを徹底解説!初心者でもわかるポイントとは?
659viws
HTTPとHTTPSの違いをわかりやすく解説!安全なネット利用のために知っておきたいポイント
626viws
IPアドレスとデフォルトゲートウェイの違いをわかりやすく解説!ネットワークの基本を理解しよう
625viws
SSDとUSBメモリの違いを徹底解説!初心者でもわかる保存デバイスの選び方
625viws
USBフラッシュメモリとUSBメモリの違いとは?初心者でもわかる解説!
580viws
ベアリングとリテーナーの違いとは?初心者でもわかる基本の解説
560viws
インプレッション数とクリック数の違いを徹底解説 — CTRを上げるための基礎と落とし穴
545viws
グロメットとコンジットの違いとは?わかりやすく解説!
545viws
モバイルデータ通信番号と電話番号の違いを徹底解説!初心者でもわかるスマホの基礎知識
528viws
USB充電器とアダプターの違いとは?初心者にもわかりやすく解説!
508viws

新着記事

ITの関連記事