GitHubのREADMEやSlackのメッセージ、Notionのメモなどで「# 見出し」や「**太字**」のような書き方を見たことがある方は多いと思います。これはMarkdownと呼ばれる軽量マークアップ言語の記法です。この記事ではMarkdownの基本的な記法と、GitHubやSlackなど実際のサービスで書くときのコツを解説します。
1. Markdownとは何か
Markdownは、#や*などの記号だけを使って、見出しや強調、リストといった文書の構造をシンプルに表現できる軽量マークアップ言語です。HTMLのようにタグで囲む必要がなく、プレーンテキストに近い見た目のまま、装飾された文書として表示させることができます。
書いた内容がどのように表示されるか確認したい場合はMarkdownプレビューツールでリアルタイムに表示を確認しながら書くと分かりやすくなります。
2. なぜMarkdownが広く使われているのか
MarkdownはHTMLと比べて記号の数が圧倒的に少なく、見た目もプレーンテキストに近いため、専門知識がなくても短時間で習得できます。また、テキストファイルとして保存できるため、特別なエディタやソフトがなくてもメモ帳のようなツールで書け、バージョン管理(Gitなど)との相性も良いという特徴があります。
こうした「書きやすさ」と「装飾できる」のバランスの良さから、エンジニア向けのドキュメントだけでなく、チャットツールやメモアプリなど幅広いサービスの入力形式として採用されています。
3. 基本記法一覧
| 記法 | 書き方の例 | 表示結果のイメージ |
|---|---|---|
| 見出し | # 見出し1 / ## 見出し2 | #の数に応じた大きさの見出し |
| 強調(太字) | **太字** | 太字のテキスト |
| 強調(斜体) | *斜体* | 斜体のテキスト |
| リスト(箇条書き) | - 項目1 / - 項目2 | ・で始まる箇条書き |
| リスト(番号付き) | 1. 項目1 / 2. 項目2 | 1、2と続く番号付きリスト |
| リンク | [表示名](https://example.com) | 表示名にリンクが張られた文字 |
| 引用 | > 引用したい文章 | 縦線で区切られた引用ブロック |
| コードブロック | ```コード```(前後を3つのバッククォートで囲む) | 等幅フォントで表示されるコード |
| 表 | | 列1 | 列2 |(パイプで区切る) | 見出し付きの表 |
| 区切り線 | ---(ハイフン3つ) | 水平線 |
これらの基本記法だけでも、見出しで構造を作り、強調で重要な部分を目立たせ、リストで情報を整理するという、文書として読みやすい形をシンプルな記号だけで作ることができます。
4. GFM(GitHub Flavored Markdown)など方言の違い
Markdownには標準規格として厳密に統一された1つの仕様があるわけではなく、サービスごとに独自の拡張(方言)を持っていることがあります。代表的なものがGitHubが採用しているGFM(GitHub Flavored Markdown)で、オリジナルのMarkdownにはなかった表(テーブル)記法や、チェックボックス付きのタスクリスト(- [ ] 未完了 / - [x] 完了)などが使えるようになっています。
Slackなど一部のチャットツールでは、強調の記法が`**太字**`ではなく`*太字*`一重で太字になる、見出し記法がそのまま使えないなど、独自のルールを採用している場合もあります。同じ「Markdownっぽい記法」でも、使うサービスによって細かな違いがある点には注意が必要です。
5. 実際に使われる場面
- •README:GitHubなどのリポジトリでプロジェクトの説明を記述するファイル
- •Slack・Discordなどのチャットツール:メッセージ内で太字や箇条書き、コードブロックを使った装飾
- •Notion・Obsidianなどのメモ・ドキュメントアプリ:入力中にMarkdown記法を自動で装飾に変換するエディタ
- •技術ブログ・静的サイトジェネレーター:記事本文をMarkdownファイルで管理し、HTMLに変換して公開する
6. 記号をそのまま表示したいときの「エスケープ」
Markdownでは#や*などの記号が装飾の意味を持つため、これらの文字をそのまま文章中に表示したい場合に工夫が必要になることがあります。多くのMarkdown処理では、記号の前にバックスラッシュ(\)を置くことで、装飾ではなく「ただの文字」として表示させる「エスケープ」という方法が使えます。
例えば「\*」と書くと、強調記号としてではなく、そのままアスタリスクの文字として表示されます。プログラミングのコードや数式の説明文の中で記号を使う場合は、意図しない装飾がかかっていないか確認するとよいでしょう。
7. 画像の挿入とリンクとの記法の違い
Markdownで画像を挿入する記法は、リンクの記法の先頭に感嘆符(!)を付けた形になります。リンクが「[表示名](URL)」であるのに対し、画像は「」と書きます。この代替テキスト(alt属性に相当)は、画像が読み込めなかった場合や、スクリーンリーダーを使う利用者に向けて画像の内容を伝える役割を持つため、空にせず簡潔な説明を入れておくのが望ましいとされています。
記号1つの違いでリンクと画像が切り替わるため、感嘆符の付け忘れ・付けすぎは初心者が混同しやすいポイントの一つです。画像のURLには、Webに公開されている画像だけでなく、Markdownファイルと同じ場所に置いたローカルの画像ファイルへの相対パスを指定することもでき、ブログの静的サイトジェネレーターなどでは、この相対パス指定による画像の管理がよく使われていて、画像ファイルをMarkdown本文と一緒にバージョン管理できる利点があります。
まとめ
Markdownは、記号だけで見出しや強調、リストといった文書構造をシンプルに表現できる軽量マークアップ言語で、README・チャットツール・メモアプリなど幅広い場面で使われています。サービスによってGFMなど方言の違いがある点には注意しつつ、基本記法を覚えておけば多くの場面で応用できます。実際に書いた内容の表示を確認したい場合はMarkdownプレビューツールを使ってみてください。