macOSにおけるカタカナファイル名の文字化け

Unicodeは濁音(『が』や『ば』など)や半濁音(『パ』や『ピ』)を1文字として扱います。一方で濁点『 ゙  』(U+3099) と半濁点『 ゚  』 (U+309A) も定義しています。この結果、Unicodeでは『が』を『か』+ 『 ゙  』の 合成文字 として表現することもできます。

 

  • WindowsやLinuxのファイルシステムは濁音や半濁音を1文字として扱う NFC (Normalization Form Canonical Compression) を採用しています。
  • MacOSのファイルシステム(HFS+)は本体文字と濁点・半濁点を分離して扱う NFD (Normalization Form Canonical Decompression) を採用しています。俗にいう uft-8-mac です。
  •  

    subversionやscpなど NFC と NFD の差異を考慮していないツールを使うと、Windowsで保存した濁音/半濁音を含むファイル名が文字化けします。場合によってはコマンドが失敗します。

    Mac OS XのSubversionの濁音と半濁音の扱いが不適切