22
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【まぜるな危険】Markdownに対応したWindows11のメモ帳は要注意!実際に触ってわかった“怖さ”とは?

Last updated at Posted at 2025-07-18

※この記事は、しゃちらぼブログ Vol.027 をベースに、Qiita向けに再構成・補足したものです。

Windows 11に搭載された「メモ帳(Notepad)」がMarkdown(.md)形式に対応しました。

これは一見すると便利なアップデートですが、実際に使用してみるとMarkdownユーザーにとっては致命的なリスクがあることが分かりました。

この記事では、次のような観点からこの新機能の実態を検証します。

  • メモ帳がサポートしているMarkdown構文と非対応構文
  • 保存時に発生する自動エスケープや書き換え挙動
  • 技術文書やソースコードに混在させることのリスク
  • Markdownファイルの“破壊”につながる事例と再現例

本記事の目的は、メモ帳のMarkdownモードを批判することではなく、
Markdownをドキュメント標準として運用している現場で、意図しない破壊が発生する危険性を共有することです。

メモ帳を使ってみる

Windows標準のテキストエディタである「メモ帳」に、Markdownファイルを扱う機能が追加されましたので、早速、使ってみました。

検証環境と対象バージョン

本検証は、Windows 11 HomeのPreview版(バージョン24H2、OSビルド26120.4733)にて実施しています。
Markdown対応機能は、2025年7月時点でのPreview版メモ帳に含まれています。

起動画面

メモ帳を起動すると以下のような画面になります。
メモ帳Markdown画面
ダークモードに対応していて、メニューバーの中央に装飾アイコンが並んでいます。
Copilotにも対応しているなど、いくつかの変更点はありますが、この記事ではMarkdown対応についてのみを取り上げます。

メモ帳に追加されたMarkdownモードとは

表示メニューに「マークダウン」という項目が追加されています。
起動直後および拡張子.txtを開いたときはテキストモードで、この表示メニューの「マークダウン」はグレーアウトされていて選択できません。
表示メニュー2

入力したテキストに装飾をすると、自動的に Markdownモードになります。
または、拡張子 .md のMarkdownファイルを読み込むことでも Markdownモードになります。

表示メニュー1

表示モードは以下の2種類です:

  • 書式付き:Markdown記法を装飾表示する(プレビュー的な見た目)
  • 構文:装飾を排除し、プレーンテキストとして表示するモード

ファイル保存時には、記法や内容によって自動でエスケープが挿入される仕様になっています。

テキストに装飾をして Markdownモードになったとき、これを保存しようとすると、マークダウンで保存するのかを聞かれます。
ダイアログ2

マークダウンで保存するを選ぶと、拡張子が .md で保存されます。

表示エラーと“壊れるMarkdownファイル”

表示モードを「構文」から「書式付き」に切り替えたとき、そのMarkdownとして記述されたドキュメントに、対応外の構文や画像記法が含まれている場合、
メモ帳では「サポートされていない構文が含まれています」という警告ダイアログが表示されます。

「サポートされていない構文が含まれています」のダイアログ

ただし、どの記法が非対応かは一切示されません

さらに、表示モードに切り替え時に以下のような副作用が発生します:

  • 書式設定が一部解除される
  • 一部の非対応のMarkdown構文に\が自動挿入される
  • Markdownの構文が勝手に改変される
  • 勝手に空行が挿入される

対応しているMarkdown構文と非対応構文

Markdownの構文で、メモ帳が対応しているものと非対応のものを、
またどのように改変されるのかについても、独自に確かめてみました。

Markdown機能 「書式付き」での表示  内容の改変
見出し(# ~ ######) 〇(装飾される)
見出し(#######以上) ×(Markdown仕様外) エスケープされる
太字(**bold**, __bold__) 〇(装飾される) __** に強制変換
イタリック(*italic*, _italic_) 〇(装飾される) _* に強制変換
訂正線(~~訂正線~~) ×(完全にスルー)
リスト(-, *,+) △(ネストレベル1のみ) -+*に強制変換、また空行挿入の場合あり
区切り線(---,***,___) ×(完全にスルー) ***___---に強制変換
表(| で区切った表) ×(完全にスルー)
コードブロック(```) ×(完全にスルー)
インラインコード(`code`) ×(完全にスルー)
引用(> 引用文) ×(完全にスルー)
チェックボックス(- [ ]) △(リストとみなされる) *に強制変換、括弧はエスケープ
リンク([text](URL)) 〇(クリック可能)
画像(![alt](URL)) ×(完全にスルー) 括弧はエスケープ

実際に使用したMarkdown構文サンプル

検証には、以下の内容の構文サンプルを使用しました。

# 見出し-1
## 見出し-2
### 見出し-3
#### 見出し-4
##### 見出し-5
###### 見出し-6

*イタリック* _斜体_
**ボールド**  __太字__
~~訂正線~~

---
***
___

> 引用

`インラインコード`

```
コードブロック
```

|1桁目|2桁目|
|-----|-----|
|項目1|項目2|

* リスト-A-1
* リスト-A-2
  * リスト-A-2-1
    * リスト-A-2-1-1

- リスト-B-1
- リスト-B-2

+ リスト-C-1
+ リスト-C-2

1. 番号リストA-1
1. 番号リストA-2
   1. 番号リストA-2-1
      1. 番号リストA-2-1-1

チェックボックス
- [ ] 未完了
- [x] 完了

[しゃちらぼ](https://shachi-lab.com)
![ろらたん](https://shachi-lab.com/roratan_profile_summer_w128.png)

VSCode + Markdown Preview Enhanced での表示

比較として、VSCode + Markdown Preview Enhanced での表示は以下のようになります。

VSCodeで表示した画面

クリックすると拡大します

メモ帳の「書式付き」での表示

この構文サンプルを「書式付き」に切り替えると、以下のように表示されます。

Markdownプレビュー表示

クリックすると拡大します

表やコードブロックなど、いくつかの構文はそのまま表示されています。
区切り線は、水平線として表示されないにもかかわらず、すべて *** に書き換わっています。

改変されたMarkdown構文サンプル

上記のMarkdown構文サンプルを、再び「構文」の戻したとき、ドキュメントの内容は以下のように変化していました。
以下は実際に改変された例です。

# 見出し-1

## 見出し-2

### 見出し-3

#### 見出し-4

##### 見出し-5

###### 見出し-6

*イタリック* *斜体*
**ボールド**  **太字**
~~訂正線~~

---
---
---

> 引用

`インラインコード`

```
コードブロック
```

|1桁目|2桁目|
|-----|-----|
|項目1|項目2|

* リスト-A-1
* リスト-A-2

  * リスト-A-2-1

    * リスト-A-2-1-1

* リスト-B-1
* リスト-B-2
* リスト-C-1
* リスト-C-2

1. 番号リストA-1
2. 番号リストA-2

   1. 番号リストA-2-1

      1. 番号リストA-2-1-1

チェックボックス

* \[ ] 未完了
* \[x] 完了

[しゃちらぼ](https://shachi-lab.com)
!\[ろらたん](https://shachi-lab.com/roratan_profile_summer_w128.png)

ただ、表示モードを切り替えただけです。

重大な問題:記法の自動書き換えと保存破壊

メモ帳アプリでは、表示モードを切り替えるだけで、自身では全く編集はしていないにも関わらず、内容が改変されてしまいます。

このような変換は、元のMarkdownとしての構造や意図を破壊してしまう恐れがあります。

Markdownモードで開いた .md ファイルを「書式付き」で表示したあとに、保存すると、記法が自動的に書き換わるということになります。

特にGitなどでバージョン管理されているMarkdownにおいては、意味のない差分や構文エラーを引き起こす要因となります。

Markdown運用におけるリスクと注意点

特に以下のようなチームや用途では、メモ帳でMarkdownを開くことが大きなリスクになります。

  • バージョン管理(Git)で.mdファイルを共有している開発チーム
  • 技術設計書やドキュメントをMarkdownで一元管理しているプロジェクト
  • ドキュメント記法の統一や整合性を重視するCI/CD環境

意図せず書き換えられた.mdファイルがコミットされた場合、
レビュワーが「誰が書き換えたのか分からない差分」に直面する可能性があります。

所感・要望

このメモ帳は、現時点ではあくまでもプレビューという位置付けのため、このままの仕様で正式リリースされるとは考えたくありません。

正式リリース時には、せめてCommonMark準拠くらいにはしてほしい。
それに、勝手に編集するのは辞めてほしいです。

Markdownはもっとシンプルで、もっと自由な書き方ができるもののはず。

自由で軽快だったMarkdownが、仕様の異なるUIで制限されていくのは、長年のユーザーにとっては不安材料となります。

同じMicrosoft製品のVSCodeではMarkdown Preview EnhancedやMermaidの図表まで対応してるので、うまいこと社内連携して、"これぞMarkdownエディター" というのになることを期待しています。

まとめ:現時点では併用非推奨

Windowsメモ帳のMarkdown対応は、現時点では以下の理由で運用には慎重な判断が必要です。

  • 構文対応が不完全(表・コード・チェックボックス非対応)
  • 記法が保存時に自動書き換え・エスケープされる
  • Markdown仕様として破壊的な変換がある
  • 挙動が明示されず、仕様書も不透明

開発プロジェクトのメンバーに、メモ帳でMarkdownを表示するメンバーがいると、意図せずとも「書式付き」で表示したあとに保存してしまうと、本人は編集した覚えがないにもかかわらず、ファイルを破壊してしまいます。

VSCode等でMarkdownを編集しているところに、メモ帳を まぜるのは非常に危険です

✅ 推奨

  • VSCode、Typora、Obsidian など、CommonMark準拠のMarkdownエディタを使用する
  • .md ファイルはGitにコミットされる前にdiff確認を必ず行う

メモ帳は「軽く閲覧する程度」にとどめ、正式な編集には使わないことをおすすめします。

🎀「まぜちゃダメって書いてあるのに、うっかり混ぜちゃうのが人間なんだよね……っ💦」


関連リンク

22
13
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
13

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?