Namazu-devel-ja(旧)


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

Re: WebDAVサーバの検索



寺西です。

Kenji Suzuki wrote:
> 
> # もともと WebDAV の検索から始まっていますが、Namazu 全体に
> # ついての意見です。2.0 に限定もしません。

ならば、もう少しきちんとした対応方法を議論するのがよろしいかと。

> > もちろん Kenji さんにとっては変換せずにもとの文字コードのまま
> > 扱う方が都合が良いのでしょうけれども、${uri} の中身は
> > NMZ.field.uri ファイルに保存されることになります。
> 
> ${uri} の文字コードを変換したりするから、ファイルにアクセスできない
> 状態が生じてややこしいことになるので、${uri} は文字コード
> 変換せずにそのままにしておいたらどうか? という意見です。

それは Namazu 側で漢字コードを戻すという解決方法で当面のバージョン
は対応しましょうということです。
# 多少不具合があろうともということです。
 
> > Namazu では今のところ NMZ.* のファイルの中身の漢字コードは EUC コード
> > にするという縛りがあります。(これはこれで利点でもあります。)
> 
> URL encode していれば、この縛りは問題にはなりません。

現状では EUC に変換後、encode されます。
(encode される/されないはオプションで変わりますが、漢字コードは
EUC に統一されています。)
 
> > また、${uri} は、検索結果の画面に使われるだけではなくて、フィールド
> > 検索に使われます。(使うことができます。)
> > そのためにもやはり、漢字コードは EUC コードでなければなりません。
> 
> 検索に使うためには、別に検索用のフィールドを用意したらどうか
> と思います。検索様は URL encode をやめ(現状仕様では EUC なので)
>  EUC に変換すれば、よいと思います。
> 検索の場合については、考慮していません。

考慮しましょうよ。(まぁ、現状でもエンコードされてるとダメなんだ
けどね。)

それはともかく、別に検索用のフィールド を用意するというのは、
むしろ現状の URI はそのまま検索用に明け渡して、
ファイル名の漢字コードのことを考慮した別の仕組みを組み込むのが
どちらかといえば筋かと思います。それは今まで何ら考慮していなかった
わけですから、きちんとした対応を考えなければならないということです。
場当たり的な対応で、コードを変換しないフィールドを用意する
のは、良い方法ではないでしょう。

そういったのは、将来、内部コードを unicode にするとかといった時に
一緒にするような話になるかと思います。
(そのときには、半角カナの扱いをどうするとか、全角記号を半角記号に
変換する問題とかも片付けたいなぁ。)
何にしても大事ですな。

で、当面は EUC に変換されてしまった ${uri} を元の漢字コードに戻す
という方法が(まどろっこしくて、不具合もあるけど) Namazu 的には
素直な方法だということです。
# そもそも Namazu では EUC を前提に設計されているわけだから。

なお、横道にそれますが、
NMZ.* ファイル群はエンディアンの問題も漢字コードの問題も気に
せず、他のシステムにそのままコピーしても使えるのが理想です。
読み出し側で変換すれば済むことですが、クライアントアプリケーション
で変換せずに使えるにこしたことはありません。
(クライアントアプリケーションの都合で変換して使うのは勝手。)
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E