Namazu-devel-ja(旧)


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

macbinary.pl 追加しました



寺西です。

HEAD に macbinary.pl を追加しました。合わせてテスト用データを
tests/data/ja-mac/ に用意しました。
チェック用スクリプトとして、tests/{ja-mknmz-2, ja-namazu-2} も
用意しました。

HEAD のみに追加したのは以下の理由によるものです。

1. stable-2-0 では、namazu-devel-ja#03163 に書いたように File::Copy
   を使っているフィルタで不具合が生じるためです。
  この修正は後日行います。

2. 次に HEAD, stable-2-0 共に当てはまるのですが、1 と類似する問題で
  フィルタの中には、ファイルのタイプを拡張子で判断するものが
  あります。このため、データフォークを切り出しただけでは、認識
   しません。(たとえば、excel.pl 等。これは .xls ファイルを gzip で
  圧縮しても同様に認識しません。)

   この理由により実用的ではないかもしれないため、HEAD のみとしました。

2 を解決する方法としては、各フィルタの拡張子で識別している部分を、
ファイルの中身で判断するように修正するか、マックバイナリに含まれる
ファイルタイプを次のフィルタに引き渡す仕組みを作るかになるかと
思います。どちらも大変です。

せめて Excel と PowerPoint が Word と区別できれば、少しは使えるかと
思いますが、現状では Office ドキュメントは全て Word として認識
されてしまいます。

0       string          \376\067\0\043              application/msword
0       string          \333\245-\0\0\0             application/msword

Office ドキュメントでかつファイルの中に
"W o r k b o o k ", "B o o k " があれば、Excel,
"P o w e r P o i n t   D o c u m e n t ", "P P 4 0 " があれば 
PowerPoint のようなので、これをうまく使えないかなとは思っている
のですが...。
# 表記上、キーワードが分かりやすいように スペース区切りにしましたが、
# 実際は \0 区切りです。
-- 
=====================================================================
寺西 忠勝(TADAMASA TERANISHI)  yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint =  474E 4D93 8E97 11F6 662D  8A42 17F5 52F4 10E7 D14E