Windows11 メモ帳 がシフトジス文字化けするようになった ... メモ帳自動切換えくん
カテゴリー: General
2024-11-08
タイトル
執筆:2024.11.08
編集:2024.11.08
編集:2024.11.08
Windows11 メモ帳 がシフトジス文字化けするようになりました。
1.UTF8 BOM付か判定: 否定 2へ
2. UTF8のバイトだけか判定 → 否定: ANSI
または 可逆的 ANSIか判定する → 否定: UTF8
ってコードの流れなのに 文字化けしないようにしてほしいですね。
こんなこともできないとか マイクロソフトのプログラマーも地に落ちたね。
メモ帳で文字化けするファイルが正常に開けたアプリ
- LibreOffice
- ブラウザ (Edgeなど)
メモ帳が文字化けする原因
判定で手抜きチェックをしているため (先頭の1024バイトしか見ていない)
先頭にASCIIコード以外の文字、日本語をもってくれば開けることもある
UTF8に変換しても問題ない場合は、BOM付きで保存するようにしましょう。
メモ帳で シフトジスで開く方法
/Aをつけて呼び出すことで シフトジスとして開くことができます。
ファイルを指定して実行
notepad /A ファイル名
プログラム関係のファイルだとほぼ壊滅状態なので
VS CODEは UTF8しか開けませんので古いファイルはメモ帳だよりですよね。
過去のファイルをまともに開けないひどい改悪なので
対処しようと思います。
攻略フローとしては
プログラムから開くは、 .exe .bat のどちらかになりますが
コマンド枠が開かないようにするには、exeしかないので
今回は、下記のアプリを開くに登録します。
メモ帳自動切換えくん
流れとしては、
ファイルの文字コードを以前チェックして、
ANSIのときに、 /A をつけてメモ帳に渡す感じですね。
さくっと作りました。
今まで通り開けるようになりました!!
とりあえず、しばらく使ってみよう。
初回
- ファイルを右クリック
- プログラムから開く
- 別のプログラムを指定
- メモ帳自動切換えくん(仮)
- 常に使う、一度だけ を選択する
2回目以降
常に開くの場合は、ダブルクリックで開けます。
一度だけを選んだ場合は、「プログラムから開く」から選択する
実装済み
- ✅ BOMがあるか確認してから判定する
- ✅ 1Mバイト以上のサイズの大きいファイルを指定した場合: 処理前にユーザーへ確認を表示する
- ✅ 30Mバイト以上のサイズの大きいファイルを指定した場合: ユーザーへ中止を表示して終了する
📒 保留
- バイナリファイルを指定していた場合: 最終処理前にユーザーへ確認を表示する