VCSと日本語とOSXまとめ
日本語(というかMBCS)の各環境での扱いは以下のとおり.
- Windows: Shift_JIS(ただしNTFSはUCS2 Normalization Form C)
- Mac OSX: UTF-8 Normalization Form D
- Linux: UTF-8 Normalization Form C,もしくはEUC-JP(最近は少ないけど)
で,svn, git, hg, bzrについて,
ということで,Normalization Form Dを自動変換してくれるVCSは現時点ではないようです.
さらに,NFDな日本語ファイルについて,
- 使えるけど(他の環境で)化ける: git, hg, svn
- addすらできない: bzr
ということなので,結論としては,
- OSXのみで使いたい: git, hg, svn
- OSXとLinuxで共有したい: git, hg, svn(※ただし濁点・半濁点は使わない)
- OSXとWinで共有したい: svn(※ただし濁点・半濁点は使わない)
- ※上と同様に,Winからaddするのは可かも
- (おまけ)LinuxとWinで共有したい: svn, bzr
ということみたい.
要するに,いちどMacを使ったら,もうほかのOSなんて使ってられないってこと.素晴らしいね.
まあ,Win(というかNT)はみためShift_JISだとはいえ中身はUCS2のNFCだし,
WideCharToMultiByteとかMultiByteToWideCharなんてのもあるから
対応は実は簡単なんだろうな,と思ったり.
ていうかもうさっさとunicodeにしてしまえばいいのに.
それに対し,OSXはなまじja_JP.UTF-8なだけに面倒くさいんだろうなぁ.
まあ,濁点半濁点とか,アクサン記号とかを別文字にしたくなる気持ちも分からなくはないし,
もうこれはappleの問題というよりunicodeの問題なんだけど,
これは面倒くさいだろうな.
むしろ,safariとかはどうやってるのかなと思ったり.
えっ?日本語ファイル名なんて使うなって?
そんなことだからプログラマしか使わないんだよ,と言っておく.
HDDまるごとVCSで管理してヒャッハーじゃなかったの?