Markdown(マークダウン)は、プレーンテキストで文書を書くための軽量マークアップ言語です。GitHub の README、Notion、Zenn、Qiita、ChatGPT の出力など、エンジニアや情報発信者が日常的に使うツールの多くが Markdown をサポートしています。

この記事では、Markdown の基本記法をすべて一覧にまとめ、実際に使える具体例と一緒に解説します。また、Slack・Discord・Teams などのチャットツールとの書式の違いも紹介します。

Markdown の歴史と目的

Markdown は 2004年にジョン・グルーバー(John Gruber)とアーロン・スワーツ(Aaron Swartz)によって設計されました。目標は「プレーンテキストのまま読みやすく、HTML に変換できる」書式を作ることでした。

# で見出しを、** で太字を表現するといった記法は、メールやテキストファイルで昔から使われていた慣習をベースにしています。そのため、Markdown を知らない人が見てもある程度意味が伝わります。

見出し(Heading)

行頭に # を付けることで見出しになります。# の数が多いほどレベルが下がります。

記法HTML表示
# 見出し1<h1>最大サイズの見出し
## 見出し2<h2>次に大きい見出し
### 見出し3<h3>中くらいの見出し
#### 見出し4<h4>小さい見出し
##### 見出し5<h5>さらに小さい見出し
###### 見出し6<h6>最小の見出し

インライン書式

記法表示結果
**太字** または __太字__太字(Bold)
*斜体* または _斜体_斜体(Italic)
***太字斜体***太字+斜体
~~取り消し線~~打ち消し線(Strikethrough)
`インラインコード`等幅フォント

リンクと画像

[リンクテキスト](https://example.com)
[リンクテキスト](https://example.com "タイトル属性")

![画像の代替テキスト](https://example.com/image.png)
![画像の代替テキスト](https://example.com/image.png "タイトル")

リンクを直接記述する場合は URL をそのまま書くか、<URL> で囲みます。

https://example.com
<https://example.com>

リスト

箇条書きリスト(順不同リスト)

- 項目 A
- 項目 B
  - ネストした項目
  - ネストした項目
- 項目 C

行頭の記号は -(ハイフン)・*(アスタリスク)・+(プラス)のいずれでも使えます。インデント(半角スペース2〜4個)でネストできます。

番号付きリスト(順序リスト)

1. 最初の手順
2. 次の手順
3. 最後の手順

番号は自動でカウントされます。実際には 1. 1. 1. と書いても正しく 1, 2, 3 と表示されます。

タスクリスト(チェックボックス)

- [x] 完了したタスク
- [ ] 未完了のタスク
- [ ] もう一つの未完了タスク

GitHub・Notion・Obsidian など多くのツールで対応しています。

コードブロック

バッククォートを3つ使ってコードブロックを作ります。言語名を指定するとシンタックスハイライトが適用されます。

```javascript
const greet = (name) => `Hello, ${name}!`;
console.log(greet("World"));
```

インラインコードはバッククォート1つで囲みます: `npm install`

引用(Blockquote)

> これは引用文です。
> 複数行にわたる場合はそれぞれの行頭に > を付けます。
>
> > ネストした引用も可能です。

テーブル

| 列1 | 列2 | 列3 |
|-----|-----|-----|
| A   | B   | C   |
| D   | E   | F   |

列の揃えを指定することもできます。

| 左揃え | 中央揃え | 右揃え |
|:-------|:-------:|-------:|
| A      |    B    |      C |

水平線

---
***
___

いずれも水平線(<hr>)として描画されます。

エスケープ

Markdown の特殊記号(* _ # など)をそのまま表示したい場合は、バックスラッシュ(\)でエスケープします。

\*これはアスタリスクで囲まれていますが斜体になりません\*
\# これは見出しではなく通常のテキストです

GitHub Flavored Markdown(GFM)

GitHub が定めた Markdown の拡張仕様で、以下の機能が追加されています。

Zenn・Qiita・GitLab・Notion など多くのサービスも GFM に準拠した記法を採用しています。

Markdown が使える主なサービス

サービス対応状況
GitHub / GitLabGFM 完全対応
Notionほぼ GFM 対応(テーブルは GUI 操作)
Zenn / Qiita独自拡張を含む GFM 対応
VS Codeプレビュー機能で GFM 対応
ObsidianGFM +独自拡張
Slackmrkdwn(独自書式。記法が一部異なる)
DiscordH1〜H3・太字・斜体など主要記法に対応
Microsoft TeamsH1〜H3・太字・斜体など主要記法に対応

Markdown をチャットツールに貼るときの注意点

AI(Claude・ChatGPT など)の出力や GitHub の README を Slack や Discord にコピーすると、書式が崩れることがあります。主な原因は以下のとおりです。

各チャットツール向けの変換は、以下のツールで自動化できます。

Markdown ↔ 各チャットツール 変換 Slack・Discord・Teams・HTML への変換をリアルタイムで実行。
ツール一覧を見る →

まとめ

関連記事