[Namazu-win32-users-ja 1247] Re: 解決しました( Re: mknmzの処理が中断する )

Tadamasa Teranishi yw3t-trns @ asahi-net.or.jp
2010年 9月 17日 (金) 06:03:00 JST


寺西です。

Toru Ishizuka wrote:
> 
>  ファイルリストを一旦作ったあとで、長い日本語のファイル
> 名(パス名)については、ファイルリストから間引いてしまう
> ことで、正常にインデックス作成できることが確認できました。
>  厳密な閾値は調べてませんが、250バイトまではOKでした。

誤解があるようですが、1023 文字ぐらいまでなら、ファイル名の長さ
は関係ありません。
# 内部で漢字コード変換を行うので、厳密にはもう少し短くなる可能性
# はありますが...。

日本語の問題は単純に文字コードの問題です。
Find::File, -f 等の問題は全てそうですから。

石塚さんの環境で問題になっている日本語の長いパス名のものは、たまたま
その長いパス名にまずいコードが入っているだけでしょう。
# 伏字なんでコレって指摘できませんが。

なお、フィールドは $MAX_FIELD_LENGTH の制限を受けるので、URI を
表示したり、置換したりする場合には別のところで制限がかかりますので、
必要に応じて $MAX_FIELD_LENGTH を変更した方が良いでしょう。
  
>  mknmzに手を入れずに、外側での前処理ですべて対応できま
> したので、まずはこれで運用していくようにします。

たまたまですよ。
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns @ asahi-net.or.jp
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E


Namazu-win32-users-ja メーリングリストの案内