Namazu-devel-ja(旧)


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

Re: 1行文字列出力部分の修正について



臼田です。

Tadamasa Teranishi wrote:
> 1行文字列出力部分で、改行コードや nul 文字が入っていても、そのまま
> 出力してしまう問題を回避するために以下の修正を考えています。
> (以下の修正では改行コード、nul 文字以降を捨てるようにしています。)
厳密に改行以下を捨てなくても改行コード、nul文字だけ空白
に置き換えるか捨てるかしてつないでしまえば良いのではな
いでしょうか?

> pl/nmzidx.pl には1行分のデータを出力するために putline が用意され
> ているので、これを修正することで問題解決かと思いましたが、
> NMZ.field.* に関しては mknmz 本体で直接操作している部分がありました。
> # 将来、統合した方が良いでしょうね。
pl/nmzidx.plはmknmzからは利用されていないようですね。
mknmzとダブっているサブルーチンもあるので整理してmknmz
本体を小さくできるとよいですね。

> 制御文字については今回削除するようにはしていませんが、NMZ.field.uri 
> 以外は削除した方が良いでしょう。
> (NMZ.field.uri が eucJP に統合された場合は、NMZ.field.uri も制御文字
> を削除した方が良い。)
NMZ.field.uriは他の情報より重要なので意識して別扱いにする
のは良いと思いますが、NMZ.field.uri に制御コードが入る可
能性として、どんな環境を想定されているのでしょうか?
uriエンコードされれば制御コードはないはずですし
sjis、euc-jp、utf-8ならば非ASCIIのマルチバイト文字には
制御コードは入っていなかったのではないかと思います。

> # 推奨バージョンは nkf 1.71 に戻っちゃいましたね。
新らしめのディストリビューションによってはnkf1.7の導入も
困難でしょうから修正済みの2.0.13をリリースしてnkf2.02も
非推奨とならないようにしたいです。

臼田幸生