Namazu-win32-users-ja(旧)


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

Re: namazu.cgi.exe と localeは同一ディレクトリに存在しなければ ならないのですか?



広瀬です。
これも遅いフォローですが。。

 <komine@xxxxxxxxxx> wrote.
/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>version情報
>・WindowsNT4.0 SP5
>・namazu-Win32:namazu of Namazu 2.0.4
>・Active Perl:5.005_03
>・kakasi:2.3.2
>・Apache:Apache/1.3.12 (Win32)
>
>[現象]
>  namazu.cgi.exeとlocaleのディレクトリが異なる場合、
>  検索結果のメッセージが英語表示となる。

Result や Current List 等は gettext(locale) のデータを
用いて日本語を表示しています。
#それ以外の静的な表示は NMZ.head.ja 等のデータを用いています。

よって namazu.cgi.exe が locale データを見付けられないと
動的なメッセージの部分だけが英語になってしまうはずです。

>[状況]
>  namazu-Win32、Active Perl、kakasi、Apacheをすべて
>  Cドライブ(OSの存在するディレクトリ)に導入。
>  環境変数:NAMAZULOCALEDIR:C:\namazu\share\locale

また Apache は NT のシステム環境変数およびユーザ環境変数を
引き継ぎません。
#IIS や Anhttpd は引き継いだと思います。
#個人的には apache の様な実装のほうが安心ですが。。。

> <PATTERN1>
>   namazu.cgi.exeと、編集した.namazurcをDドライブの
>   同一ディレクトリにコピーして実行すると、
>   検索結果のメッセージが英語になる。
>
>    Total 54 documents matching your query.
>        ・
>        ・    ←検索された文書は日本語で表示される。
>        ・
>    Current List: 1 - 20
>    Page: [1] [2] [3]

よって Apache の場合 namazu.cgi.exe を install したのと違う
 drive においたりする場合には SetEnv で NAMAZULOCALEDIR を
明示してやる必要があります。

httpd.conf の中で
SetEnv NAMAZULOCALEDIR "C:\namazu\share\local"
かな?

> <PATTERN2>
>   C:\namazu\share\localeディレクトリを
>   Dドライブにコピー(D:\namazu\share\locale)し
>   その他の設定はPATTERN1と同じ環境で実行すると、
>   検索結果のメッセージが日本語になる。
>
>    検索式にマッチする 54 個の文書が見つかりました。
>        ・
>        ・    ←検索された文書は日本語で表示される。
>        ・
>    現在のリスト: 1 - 20
>    ペイジ: [1] [2] [3]

これは compile 時の prefix を /namazu としているので、
namazu.cgi.exe の中に書き込んである情報で、gettext の
データを見付けられたため日本語で表示できたはずです。

>[質問内容]
>  検索メッセージを日本語で表示したい場合は、
>  namazu.cgi.exeとlocaleのディレクトリを同一ドライブに
>  しなければならないのですか?

いけないことはないですが、そのような方法でも対応可能です。
あとは SetEnv を使用するか、compile を自身で行い規定の
directory 情報を変更するかです。

#現在 Windows を入れておいた HDD が逝ってしまって確認ができないので
#そらで書いています。_o_

  Best regards,
--
Ken-ichi Hirose (^^)k!
e-mail: kenzo-@xxxxxxxxxx (or) EHC25612@xxxxxxxxxxx