Yueseryueser.com

← ガイド一覧

Markdown プレビュー:リアルタイム表示と HTML のコピー

左側に Markdown を入力すると、右側に描画結果がすぐ表示されます。生成された HTML 断片を静的ページやメールテンプレート、CMS に貼り付けたり、Markdown のソースをそのままコピーしたりできます。描画は marked によりブラウザ内で行われ、内容は送信されません。

ツールを開く:Markdown Preview

プレビューが必要になる場面

Markdown は書くのは簡単ですが、表・タスクリスト・フェンス付きコードブロックといった GFM 拡張は、描画して初めて正しさが分かります。README やチケット、CMS に貼る前に確認しておけば、公開後に直す手間が減ります。

もう 1 つの用途は変換です。静的サイトやメールテンプレートに整形済みのブロックを入れたいとき、必要なのは Markdown のソースではなく HTML です。描画結果をコピーするほうが、タグを手で書くより速く正確です。

描画の仕様とつまずきやすい点

プレビューでは marked の breaks オプションを有効にしているため、段落内の改行 1 つが <br> になります。GitHub と標準の CommonMark は行末の空白 2 つか空行がないと改行しないため、同じ Markdown でも見え方が変わります。コピーした HTML にはこの <br> が含まれ、CommonMark の環境でもそのまま残ります。

表は GFM の書式が必要です。2 行目に |---|---| のような区切り行を置き、列数をヘッダーと揃えます。タスクリストは - [ ] または - [x] と書き、角括弧の中に空白を 1 つ入れます。フェンス付きコードは pre と code を出力し、language-js のような class が付きますが、シンタックスハイライトはありません。

代替手段

GitHub と完全に同じ描画(見出しアンカー、脚注、数式、Mermaid)が必要なら GitHub 本体か pandoc を使ってください。サイト全体を公開するなら静的サイトジェネレーター、信頼できない Markdown をサーバー側で描画するなら DOMPurify などのサニタイザーが必須です。

プレーンテキストの抽出や一括変換が目的なら、手でコピーするよりコマンドラインツールのほうが確実です。このプレビューは「書きながら確認する」ためのもので、公開パイプラインの一部ではありません。

よくある質問

ここでは改行が反映されるのに、GitHub では改行されないのはなぜですか?

プレビューで marked の breaks オプションを有効にしているため、段落内のすべての改行が <br> になります。GitHub と標準の CommonMark は行末の空白 2 つか空行があるときだけ改行します。そのため同じ Markdown でもここでは行が多く見え、コピーした HTML の <br> が CommonMark 環境でも残って段落間隔が変わります。

コピーした HTML をそのまま自分のサイトに貼れますか?

貼れますが、スタイルは自分で追加してください。コピーされるのはプレビュー領域の innerHTML で、h1、p、ul、table、pre、code、br などのタグだけで、CSS も html/head の外枠も含まれません。また marked はサニタイズしないため、Markdown 内の生の HTML(script タグや onerror 属性)もそのまま出力されます。信頼できる内容だけを貼ってください。

表やタスクリストが描画されないのはなぜですか?

書式が足りないことがほとんどです。表は 2 行目に |---|---| のような区切り行が必要で、列数をヘッダーと揃える必要があります。区切り行がない、または列数が合わないと、ブロック全体が通常の段落として扱われます。タスクリストは - [ ] または - [x] と書き、角括弧の中の空白を 1 つ残してください。空白がないと通常のリスト項目になります。

関連ツール:Markdown Preview