[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:26784] vfat でマルチバイト文字を扱う



小川です。

直接 Debian と関係はないので申し訳ないんですが、vfat のパッチを作成し
たのでアナウンスさせて下さい。

現在の Linux では、vfat でマルチバイト文字を含むファイル名がうまく扱え
ませんが、それを修正するパッチです。

NLS に対するパッチ(2.4.0 以降を対象)
http://user.parknet.co.jp/hirofumi/vfat/nls-2.4.1.diff.gz

1) 日本語の NLS には、SJIS <-> EUC 変換を行なうモジュールがありますが、そ
の変換規則に、OSF/JVC の変換仕様を採用しそれにしたがった変換をするよう
にします。
2) nls_cp932.c の単純なバグを修正します。

VFAT に対するパッチ(2.4.0 以降を対象)
http://user.parknet.co.jp/hirofumi/vfat/vfat-2.4.1.diff.gz

1) マルチバイト文字を変にいじらないようにした。
2) SFN 作成規則のバグを修正。
3) スペース以下の文字コードはファイル名に使えないのでエラーにするようにした。
4) nocase オプションを vfat でもサポート
5) 使われていないコードを、コンパイルされないようにした。

これらのパッチを当てることにより、マルチバイト文字を含むファイル名がう
まく扱えるようになると思います。
このパッチのテストとして、

fat パーティションを 2つ作成
1 つのパーティションに windows95 をインストール
linux からマウントして、windows95 を、もう 1つのパーティションにコピー
ロングファイル名が同じことを確認
ショートファイル名が同じことを確認
コピーした方のパーティションで、windows95 を起動し正常に使えること確認

のようなことをしました。

けど、まだバグが含まれている可能性が十分ありますので、興味のある方は是
非テストしてみて下さい。特に、日本語版以外の windows でテストしていた
だけると非常にありがたいです。

それでは
-- 
OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx>