Namazu-devel-ja(旧)


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

Re: macbinary.pl追加しました



臼田です。

Tadamasa Teranishi wrote:
> HEAD のみに追加したのは以下の理由によるものです。
> 
> 1. stable-2-0 では、namazu-devel-ja#03163 に書いたように File::Copy
>    を使っているフィルタで不具合が生じるためです。
>   この修正は後日行います。
> 
> 2. 次に HEAD, stable-2-0 共に当てはまるのですが、1 と類似する問題で
>   フィルタの中には、ファイルのタイプを拡張子で判断するものが
>   あります。このため、データフォークを切り出しただけでは、認識
>    しません。(たとえば、excel.pl 等。これは .xls ファイルを gzip で
>   圧縮しても同様に認識しません。)
mknmz(HEAD版)を見ると
apply_filterの中でファイル名、ファイル内容、マジックデータの3種から
ファイルタイプを類推しています。
ただし、recursiveで通過する2周目ではファイル名による判断をやめています。
(元のファイル名は展開後のファイルの内容を示していないということでしょ
うか)

HEADについてはfilterモジュールからの返値としてオリジナルファイル名の他に、
展開後ファイル名も渡すようにして、apply_filterの2周目以降では展開後ファ
イル名も利用してファイルタイプを判断するとしてはどうでしょうか。

>    この理由により実用的ではないかもしれないため、HEAD のみとしました。
MS-Office系のExcel,Powerpointファイル以外には今の状態で実用になるので、
STABLEに入れても良いのではないでしょうか。
Magicデータの書けないexcel,powerpointのデータも結果として
filter/msword.plに渡されたのちにwvHtmlで未知のデータとしてはじかれている
ので致命的なエラーにはならないと思います。

「環境とファイルによってはmknmzがcoreを吐く」というものへの暫定的な対処と
してSTABLEにもいれてはいかがでしょうか。

臼田幸生