Namazu-devel-ja(旧)


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

Re: man filter and '-L ja' option



# 以下、namazu-2.0.10 での話です。

At Tue, 12 Feb 2002 16:56:19 JST,
NOKUBI Takatsugu wrote:

> >> のようなことをすると、LANG=ja_JP.EUC-JP mknmz のときとことなり、内部で
> >> roff が -Tascii で呼ばれます。なんとなく直感的には -Tnippon で処理される
> >> ことを期待するようにも思いますが、これはそういう仕様でいいのでしょうか。
> 
>   そういえば、かずひこさんはどのような環境でこの症状が発生するのでしょ
> うか?

具体的には、man-pages-ja から namazu 用のインデクスを作る Kondara のパッ
ケージでおこりました (通常 LANG=C でビルドされる)。これまでは
LANG=ja_JP.EUC-JP mknmz ...
だったのを
mknmz -L ja ...
でもいいかなと思ってためしたら、うまくいかなかったのです。

>   一度このメールに添付したパッチを試していただけると嬉しいです。
(snip)
> @@ -49,10 +50,11 @@
>  
>      if (util::islang("ja") && $roffpath =~ /\bj?groff$/) {
ここは
       if (util::islang("ja") || $roffpath =~ /\bj?groff$/) {
でないと意味がないのではないでしょうか。                              

>  	# Check wheter -Tnippon is valid.
> +	$langenv = "env LC_ALL=$util::LANG LANGUAGE=$util::LAN";
これは
  +	$langenv = "env LC_ALL=$util::LANG LANGUAGE=$util::LANG";
ですよね?

それはそれとして、mknmz -L ja... としても、なぜか $util::LANG = C になっ
てしまうようです (debug, verbose メッセージは適当にふやしています)。

$ mknmz --debug -L ja -O /tmp/ /usr/share/man/ja/man9/
@@ langenv='env LC_ALL=C LANGUAGE=C', roffpath='/usr/bin/groff')
// Override indexing language: ja
(snip)
// tmpnam: /tmp//NMZ.man.tmp
@@ Processing man file ... (using 'env LC_ALL=C LANGUAGE=C /usr/bin/groff -man -Wall -Tnippon')

となり、結果としてできる NMZ.man.tmp には全角文字が含まれません。

LANG=C mknmz ...
Total Keywords:      96

LANG=C mknmz -L ja 
Total Keywords:      96

LANG=ja_JP.EUC-JP mknmz
合計キーワード数:    224

という感じになりました。