テクノロジー

誤解の多い「NFD問題とUTF-8-MAC問題」を解説する - macOSの濁点を含むファイル名の扱い - Qiita

1: yarumato 2025/06/12 10:37

gitで日本語ファイル名を保存してると、Macで保存したファイルがWindowsやLinuxで取り出したとき、おかしい表示になる。

2: gazi4 2025/06/12 10:40
3: umaemong 2025/06/12 10:47

詳しい人の解説は読んでて楽しい。Unicodeは日本語の文化的な事情が軽視されがちなので、日本語ネイティブ的に違和感のある仕様が多い。

4: asthattoy 2025/06/12 11:02

[nfd[nfc]

5: miki3k 2025/06/12 11:35

日本語圏だと余計なことをして、むやみに複雑にしていると感じるけど、他の言語圏ではどうだろう

6: kazumi_wakatsu 2025/06/12 11:57

“現状で対応するのであれば、事前にファイル名を UTF-8-MAC の逆変換に正規化するのが一番シンプル”

7: daishi_n 2025/06/12 12:13

そういや、うちはハードディスク含めてAPFSで初期化してるな。Big Sur以前の昔はTime MachineがHFS+専用で統一できなかった

8: nezuku 2025/06/12 12:30

HFS+にてUTF-8−MACを実装したのがかなり引きずっているんだなぁ感 / 一昔前のiOSの更新でAPFSに移行したときファイル名そのままファイルシステムに保管していたPDFビューアの類で濁点付いたファイル開けないの思い出した

9: san57 2025/06/12 12:31

i'm

10: pixmap 2025/06/12 13:22

これだけ丁寧に説明されてもややこしくて、1年後に正しい認識を持ててる自信がない。NFD正規化はまだわかるけど、UTF-8−MACみたいな環境中立なはずのUnicode規格に環境依存を持ち込んだのが悪手だったのでは。

11: JULY 2025/06/12 13:31

今考えれば「何でファイルシステム上のファイル名を正規化した?」だけど、そのタイミングではこうした方が並び順がきれいとか、これがいいと思わせるものがあったんだろうなぁ。技術負債を取り除くのは難しい。

12: hogetax 2025/06/12 13:53

検索性/互換性以外の理由で正規化する設計意図がよく分からない

13: satomi_hanten 2025/06/12 14:08

後でちゃんと読むけどなんでそんなことしたん。Finderとかいうクソのため?

14: nakamura-kenichi 2025/06/12 14:09

おま国扱いが戻ってきててまた顕在化してんよなあ。禄に発表もせんと勝手に大幅に仕様変えるくせに、この辺は全く直す(合わせる)気無いんやからまあしゃーない。「そう、Appleならね(m9(^Д^)プギャーw)」

15: suka6411144 2025/06/12 15:05

APFSに移行するときにFinderも正規化しないようにしてくれればよかったのに…過去の互換性とかの問題なんだろうけど

16: queeuq 2025/06/12 15:09

macでdockerがクソな理由の一つ。hostのディスクマウントして日本語ファイル扱うと地獄と化す

17: omron 2025/06/12 15:10

“Apple”

18: petitbang 2025/06/12 16:10

ぼんやりとしか理解してなかったけど非常に分かりやすいまとめだった。

19: sisya 2025/06/12 19:05

MS932問題を思い出す。既存の文字コードをOSで扱うときに発生する問題を吸収するために少し違う独自規格を作るのだろうが、一旦独自規格を作ってしまうとそこに縛られるため時間経過で問題が噴出する。

20: peperon_brain 2025/06/12 20:38

クラウドストレージによっては、同名?なんやこれ→あー〇〇さんがMacでいじったんだ!統合したいけどどっちが最新なのか区別つかんのが百件以上ある😇なトラブルまれによくあった

21: ton-boo 2025/06/12 20:57

“個人的には、これらの正規化は文字列を検索する時に互換性がある文字にマッチしやすくするために使うべきと考えています” 同意すぎる

22: tohokuaiki 2025/06/12 22:17

要約がそもそも複雑で理解できん。てか、そもそも正規化ってなんや?

23: yuann_hoz 2025/06/12 22:51

“うか。しかしそれを行うためには、先に Unix の世界に照合順序を導入しなければならないはずです。macOS 15.4 でそれが実現されたので、将来の macOS では NFD 正規化や UTF-8-MAC 正規化が廃止されるかもしれません。それが実

24: hiro7373 2025/06/13 03:00

最近の状況知らなかったので興味深い。濁点とかより、波ダッシュと全角チルダとか、住所表記で入れさせられる全角ハイフンとかの方が本当は正規化が必要とされてると思う

25: IGA-OS 2025/06/13 05:44

macOSデバイスと、Windowsデバイスを混ぜてビジネス環境で使わないで欲しいわ。ファイル名トラブルおきるから🥺

26: b-wind 2025/06/13 17:39

Apple Modified NFD などとも呼ばれることがあるやつ。