Markdownテーブルジェネレーター

Markdownのテーブルは気難しいものです。パイプが1つ欠けたり、区切り行が不揃いだったりすると、テーブル全体がただのテキストとして表示されます。このジェネレーターは入力できる視覚的なグリッドを提供し、表計算ソフトからCSVやTSVを貼り付けられ、列がソース内で揃うようにパディングされたMarkdownテーブルを出力します。差分でぐっと読みやすく、一発で直せます。

Markdownテーブルを作る方法

  1. 1

    行と列を選ぶ

    またはCSV/TSVを貼り付けると、ツールが自動で寸法を推測します。

  2. 2

    セルの内容を入力

    各セルをクリックします。Tabキーと矢印キーで表計算ソフトのように移動します。

  3. 3

    列の揃えを設定

    ヘッダー行で、列ごとに左(既定)、中央、右を指定します。

  4. 4

    Markdown出力をコピー

    ツールがパイプを列幅に合わせて埋めるので、ソースがきれいに見えます。

Markdownテーブルの構文

基本のテーブル:

| 列A   | 列B   | 列C   |
|-------|-------|-------|
| セル1 | セル2 | セル3 |
| セル4 | セル5 | セル6 |

揃えは区切り行のコロンで指定します:

| 左 | 中央 | 右 |
|:---|:----:|----:|
| a  | b    | c   |
  • :--- 左揃え
  • :---: 中央
  • ---: 右揃え

ジェネレーターがやってくれること

  • 各セルを埋める、列内の最長エントリの幅に合わせるので、ソースでパイプが揃います。レンダリング結果には影響しません(Markdownは余分なスペースを無視します)が、差分を読む人は喜びます。
  • パイプをエスケープ、セル内のパイプを\|にするので、a|bを含むセルが2列に分かれません。
  • 列幅を変えても揃えを保持します。
  • CSVとTSVの貼り付けを受け入れ、引用符付きフィールドや引用符内のカンマを検出します。

よくある落とし穴

  • 区切り行は必須。 |---|---|行がないMarkdownテーブルは、ただのテキストとして表示されます。
  • 複数行セルは不可。 各行は1行です。内部で改行が必要なら<br>を埋め込みます。テーブルセル内のMarkdownの改行は対応していません。
  • 入れ子のテーブルは不可。 必要ならHTMLに切り替えます。
  • 空のセルにはスペース(または少なくとも空のパイプ対)が必要です。||を直接書くのは避けてください。

代わりにHTMLを使うとき

colspan、rowspan、複数行セル、カスタムCSSクラスが必要なら、HTMLのテーブルが適切です。ほとんどのMarkdownパーサーは、生のHTMLテーブルのマークアップをインラインで受け入れます。

Markdownテーブルがよく機能する場所

  • GitHub、GitLab、GiteaのREADME。
  • IssueやPRの説明。
  • Obsidian、Bear、ほとんどのノートアプリ。
  • Docusaurus、MkDocs、Hugo。いずれもGFMのテーブルに対応します。

よくある質問

そのままでは不可です。インラインの改行には<br>を使います。本物の複数行コンテンツ(コードブロック、セル内のリスト)には、HTMLの<table>に切り替えてください。

GFMは結合セルに対応していません。colspanrowspanが必要なら、Markdownドキュメント内でHTMLを使ってください。ほとんどのレンダラーは<table>をそのまま通します。

いいえ。埋めても埋めなくても、レンダリングされるHTMLは同一です。パディングは純粋にソースの読みやすさのための選択です。

はい。表計算ソフトからコピーすると、クリップボードにTSV(タブ区切り値)が入ります。ジェネレーターはTSVを検出し、同じ行と列でMarkdownテーブルを作ります。

\|と書きます。ほとんどのパーサーは、列の境界を壊さずにそのままのパイプを表示します。

関連ツール

このツールは他の言語でも利用できます