namazu-ml(ring)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
mknmz in namazu-1.3.1.0-pre-9
- From: Kaz SHiMZ <kshimz@xxxxxxxxx>
- Date: Fri, 12 Feb 1999 19:31:27 +0900
清水@住友林業です。
まだ mknmz が不完全です。
例によって WIN32 or OS/2 で NKF.pm を使う際に、
[H:\project\namazu\namazu-1.3.1.0-pre-9\src] perl ./mknmz
Can't spawn "module_nkf": No such file or directory
|module_nkf -s: No such file or directory
となります。これは、mknmz に引数を与えずに起動すると、
require_modules();
を通るよりも前に
parse_command_line_options();
の中で usage(); を呼び出してしまうからです。
つまり、$CCS は sjis で、かつ、$conf::USE_NKF_MODULE が '1' に設定
されていないので、
sub usage () {
if ($conf::LANGUAGE eq "ja") {
if ($CCS eq "euc") {
print STDERR $conf::USAGE_JA;
} elsif ($CCS eq "sjis") {
if ($conf::USE_NKF_MODULE) {
require NKF;
print NKF::nkf("-s", $conf::USAGE_JA);
} else {
my $fh_nkf = util::fopen_or_die("|$conf::NKF -s");
print $fh_nkf $conf::USAGE_JA;
}
}
} else {
print STDERR $conf::USAGE_EN;
}
exit;
}
の中で
my $fh_nkf = util::fopen_or_die("|$conf::NKF -s");
が実行され、その際に $conf::NKF の値が 'module_nkf' となっているからです。
in [namazu 121]
> util::dprint() の方をあきらめるか、 usage() で NKF モジュールを呼
> び出すかで迷って、結局後者にしました。手元の版では直っています。
えーと、$conf::USE_NKF_MODULE の値が設定されるのは require_modules();
の中なので、require_modules(); を通るよりも前に
if ($conf::USE_NKF_MODULE) {
という条件分岐が usage(); 内でなされること自体が、そもそもの誤りです。
内部 EUC な環境では絶対に顕在化しないので、なかなか面倒だとは思いますが
よろしくお願いします。
end
--
住友林業株式会社 情報システム部 清水 和佳
TEL: +81-3-5322-6672 FAX: +81-3-5322-6658 Niftyserve: XLW01034
e-mail: <kshimz@xxxxxxxxx>