Markdownテーブルを手動でフォーマットするのは面倒です。パイプを数え、ダッシュを揃え、カラムをアライメントするために時間を費やすより、執筆に集中したいはずです。Markdownテーブルジェネレーターはフォーマットを処理してくれるので、コンテンツに集中できます。
GFMテーブル構文を60秒で理解
GitHub Flavored Markdown(GFM)テーブルは、GitHub、GitLab、VS Code、Obsidian、Notion、ほとんどのMarkdownレンダラーでサポートされている標準フォーマットです。
構造:
| 名前 | 役割 | ステータス |
|---------|-----------|-----------|
| Alice | Engineer | Active |
| Bob | Designer | Active |
| Charlie | Manager | Away |
3つのルール:
- ヘッダー行:パイプ(
|)で区切ったカラム名 - セパレーター行:ダッシュとオプションのアライメント用コロン
- データ行:1行に1レコード
以上です。先頭と末尾のパイプはオプションですが、可読性のために推奨されます。
カラムの配置
セパレーター行のコロンで配置を制御します:
| 構文 | 配置 |
|---|---|
--- または :--- | 左(デフォルト) |
:---: | 中央 |
---: | 右 |
例 — 混合配置:
| アイテム | 数量 | 価格 |
|:---------|:----:|--------:|
| Widget | 10 | ¥1,000 |
| Gadget | 3 | ¥2,500 |
| Doohickey| 25 | ¥150 |
レンダリング後、アイテム列は左寄せ、数量は中央、価格は右寄せになります。数値カラムに便利です。
Markdownテーブルジェネレーターの使い方
ツールは3つの入力モードを提供します:
手動ビジュアルエディタ
空のグリッドから始めて、セルに直接入力します。ボタンで:
- 行を追加 / 行を削除 — テーブルを縦方向に拡縮
- カラムを追加 / カラムを削除 — 横方向を調整
- 配置セレクター — 各ヘッダーセルのドロップダウンから左・中央・右を選択
入力に合わせてMarkdown出力がリアルタイムで更新されます。コピーをクリックしてフォーマット済みテーブルを取得。
最適用途:構造がわかっていて小規模なデータセットをゼロから作成する場合。
CSVペースト
CSVデータを貼り付けます — スプレッドシートのエクスポート、DBクエリ結果、テキストファイルから。ツールはデリミタ(カンマ、タブ、セミコロン)を自動検出し、ビジュアルエディタとMarkdown出力に同時にパースします。
例 — これを貼り付けると:
language,paradigm,year
Python,multi-paradigm,1991
Go,concurrent,2009
Rust,systems,2015
TypeScript,typed,2012
このMarkdownテーブルが得られます:
| language | paradigm | year |
|------------|----------------|------|
| Python | multi-paradigm | 1991 |
| Go | concurrent | 2009 |
| Rust | systems | 2015 |
| TypeScript | typed | 2012 |
最適用途:スプレッドシートデータやクエリ結果をドキュメントテーブルに変換する場合。
JSONペースト
オブジェクトのJSON配列を貼り付けます。キーがヘッダー行に、値がデータ行に入ります。APIがレコードリストを返す場合、そのままペーストできます。
例 — これを貼り付けると:
[
{ "endpoint": "/users", "method": "GET", "auth": true },
{ "endpoint": "/login", "method": "POST", "auth": false },
{ "endpoint": "/profile", "method": "PUT", "auth": true }
]
結果:
| endpoint | method | auth |
|----------|--------|-------|
| /users | GET | true |
| /login | POST | false |
| /profile | PUT | true |
最適用途:APIレスポンス、設定オブジェクト、JSON形式ですでに持っている構造化データのドキュメント化。
セル内容のパイプ文字
GFMテーブルはカラムデリミタとして | を使うため、セル内容のリテラルパイプは \| としてエスケープする必要があります。ジェネレーターはこれを自動的に処理します。
手動の例:
| 式 | 意味 |
|------------|-------------------|
| `a \| b` | 論理OR |
| `a && b` | 論理AND |
| `a ?? b` | Null合体演算子 |
手動でテーブルを書く場合、コンテンツ内のパイプ文字のエスケープを忘れずに。ビジュアルエディタやインポートモードを使えばツールが自動処理します。
主な使用例
READMEテーブル — 依存関係リスト、機能比較マトリクス、設定オプション。現実のMarkdownテーブルで最も一般的です。
| パッケージ | バージョン | ライセンス |
|--------------|-----------|-----------|
| react | 18.3.0 | MIT |
| typescript | 5.4.5 | Apache |
| eslint | 9.0.0 | MIT |
APIドキュメント — エンドポイント一覧、パラメーターテーブル、レスポンスフィールドの説明。
変更ログ — バージョン、日付、概要のカラムを持つ構造化されたバージョン履歴。
データ比較 — ツール、サービス、アプローチの機能比較を並べて表示。
コードからMarkdownテーブルへの変換
コードで定義されたデータ構造(Pythonの辞書リスト、GoのStructスライス、JavaScriptのオブジェクト配列)があれば、JSONペーストタブにJSON表現を貼り付けます。Pythonのjson.dumps()、GoのJSON、JavaScriptのJSON.stringify()はすべてツールが解析できるJSONを出力します。
import json
data = [
{"tool": "Prettier", "lang": "JS/TS", "config": ".prettierrc"},
{"tool": "Black", "lang": "Python", "config": "pyproject.toml"},
{"tool": "gofmt", "lang": "Go", "config": "built-in"},
]
print(json.dumps(data, indent=2))
# JSONタブに出力を貼り付け
Markdownテーブルの制限事項
GFMテーブルにはいくつかの制約があります:
- セル結合なし:各セルは独立しています。結合セルには、MarkdownのHTMLの
<table>要素を使用してください。 - 複数行セルなし:各セルは1行でなければなりません。狭い表示では長いコンテンツが視覚的に切れます。
- プレーンテキストのみ:セル内でインラインMarkdown(
**bold**、`code`、[link](url))は使えますが、ブロック要素(コードブロック、リスト)はテーブルセル内では機能しません。 - レンダリングが必要:生のMarkdownテーブルはプレーンテキストエディタでは見づらいです。レンダリング結果を確認するためにプレビューを使用してください。
GFMテーブルクイックリファレンス
| 要素 | 構文 |
|---|---|
| ヘッダーセパレーター | --- |
| 左寄せ | :--- |
| 中央寄せ | :---: |
| 右寄せ | ---: |
| エスケープパイプ | | |
| セル内の太字 | **text** |
| セル内のコード | `code` |
| セル内のリンク | [label](url) |
パイプを手動でコーディングするのはやめましょう。Markdownテーブルジェネレーターを試す →