[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[plamo:33468] UTF-8 環境における Namazuについて
-
From:ABE Shin-ichi
-
Date:Tue, 3 Nov 2020 18:42:43 +0900 (JST)
- Subject: [plamo:33468] UTF-8 環境における Namazuについて
- From: ABE Shin-ichi <shin1.abe@xxxxxxxxx>
- Date: Tue, 3 Nov 2020 18:42:16 +0900
- Dkim-filter: OpenDKIM Filter v2.10.3 conuserg-11.nifty.com 0A39gGs0018993
阿部です。お世話になります。
ヘビーユーザーの方には笑われるかもしれませんが、今時のUTF-8な環境で
Namazu全文検索が使えるのか試してみたいと思いインストールしてみました。
最初に slackware環境にインストールしてそこそこ動作することを確認した後、
plamo-7.xな環境にインストールしました。plamoでもslackware環境と同様に
それなりに使えているのですが、 namazuソースファイルに含まれている UTF-8 環境で
検索結果を表示させるためのスクリプト「namazu_utf8」を使ったとき、
稀にコンソールでの検索結果表示が途中でフリーズして仮想コンソールが固まってしまう
ことがあることがわかりました。
(plamo でも slackware でも同じ状況でした)
namazu_utf8 内容は以下の様なものです。
---------------------------------------------------------
#!/bin/sh
LC_ALL=ja_JP.eucJP
LANGUAGE=ja_JP.eucJP
LANG=ja_JP.eucJP
#namazu `echo -n $* | nkf -e` | nkf -w
namazu `echo -n $* | iconv -f UTF-8 -t EUC-JP` | iconv -f EUC-JP -t UTF-8
---------------------------------------------------------
試行錯誤して調べたところ、mknmz でインデックスは生成されるのですが、
検索ワードが何かのファイル(どのファイルなのか不明)から生成されたインデックスに
当たった際に上記の iconv の出力に引っかかって問題が発生しているのではないか
と推察しています。(見当外れかもしれません)
そこで、上記スクリプトでコメントされて無効になっている、nkf 行を有効にして
iconv のほうを無効にしてみたところ、フリーズしていたときと同じ検索ワードでも
フリーズせずに結果表示できるようになりました。
現在使っている namazu_utf8
---------------------------------------------------------
#!/bin/sh
LC_ALL=ja_JP.eucJP
LANGUAGE=ja_JP.eucJP
LANG=ja_JP.eucJP
namazu `echo -n $* | nkf -e` | nkf -w
#namazu `echo -n $* | iconv -c -f UTF-8 -t EUC-JP` | iconv -c -f EUC-JP -t UTF-8
---------------------------------------------------------
根本原因がわからないまま、行き当たりばったりの対処で動作してはいるものの、
まだ釈然としていません。
どのようなファイル(例えば、windows環境で作成した特定アプリケーションのファイル)
が問題を起こす元だったのか?
または、ファイルに特定の文字(機種依存文字など)があると発生するのか、など
わからないままです。
既知の問題なのかも情報がなくわかりませんでした。
なにか情報、御指摘いただければ幸いです。
以下にインストールした情報を簡単に記します。
===========================================
Namazu version : namazu-2.0.22pre8
$ mknmz -C | nkf -w
読み込んだ設定ファイル: /etc/namazu/mknmzrc
システム: linux
Namazu: 2.0.22pre8
Perl: 5.032000
File-MMagic: 1.30
NKF: module_nkf
KAKASI: /usr/bin/kakasi -ieuc -oeuc -w
茶筌: no
和布蕪: no
わかち書き: /usr/bin/kakasi -ieuc -oeuc -w
メッセージの言語: ja_JP.UTF-8
言語: ja_JP.UTF-8
文字コード: euc
CONFDIR: /etc/namazu
LIBDIR: /usr/share/namazu/pl
FILTERDIR: /usr/share/namazu/filter
TEMPLATEDIR: /usr/share/namazu/template
対応メディアタイプ: (46)
未対応メディアタイプ: (4) marked with minus (-) probably missing application in your $path
application/epub+zip: epub.pl
application/excel: excel.pl
<中略>
- application/ichitaro7: taro7_10.pl
application/macbinary: macbinary.pl
application/msword: msword.pl
application/pdf: pdf.pl
application/postscript: postscript.pl
application/powerpoint: powerpoint.pl
application/rtf: rtf.pl
<中略>
application/x-bzip2: bzip2.pl
application/x-compress: compress.pl
- application/x-deb: deb.pl
application/x-dvi: dvi.pl
application/x-gzip: gzip.pl
- application/x-js-taro: taro7_10.pl
application/x-rpm: rpm.pl
application/x-tex: tex.pl
application/x-zip: zip.pl
audio/mpeg: mp3.pl
message/news: mailnews.pl
message/rfc822: mailnews.pl
text/hnf: hnf.pl
text/html: html.pl
text/html; x-type=mhonarc: mhonarc.pl
text/html; x-type=pipermail: pipermail.pl
- text/markdown: markdown.pl
text/plain
text/plain; x-type=rfc: rfc.pl
text/x-hdml: hdml.pl
text/x-roff: man.pl
==========================================
長文、失礼しました。
[検索ページ]
[メール一覧]
Plamo ML 公開システム