mobipocketと英辞郎 for Kindle(3)
気づいてはいたのだが、対応方法がわからなかったので仕方ないと思っていた点がある。
たとえば、makeなんて単語は、実際の文中では makes, made などの形で登場するし、tallなどは taller, tallestという形でも登場する。しかし、単純に「語」の完全一致で辞書検索されると、もちろん、makes も made も make には引っかかってくれない。名詞の複数形も同様である。
kindleに標準でついてくる The New Oxford American Dictionaryでは、このあたりがちゃんと検索されるので、何らかのデータの持ち方で実現できることは、容易に想像ができるが、では、そのデータ形式は?となると、お手上げ状態であった。
が、とは言うものの、mobipocketの書籍、辞書のデータってあれほどフリーでたくさん出回っているのに、その内部フォーマットが秘密なんてことはどうもありそうにないではないか?というのが、最初の疑問。実は、やり始めの頃にも、いい加減なテンションでそういう資料がないか、ちょびっとググってみたのだが、そういうロー・テンションなので、すぐに諦めてしまっていた。
しかし、一応自分でhtmlも生成するとなると、ちょっと調べておこうかと、少しだけエンジンを吹かし気味で調べてみると、こんなページが見つかった。このページの 2.2 Inflections for Dictionaries が語形変化に対応するためのデータ形式のようだ。幸い、英辞郎の辞書データにも、それぞれの品詞に語形変化がある場合は、「【変化】」というヘッダとともに変化形を保持しているので、これを各エントリーで引っ張り出してきて、このような要素を作り出してやればよさそうだ。
ちょっと、心配なのは mobipocketリーダー的にはOKだが、kindleの辞書検索機能がこのデータを仕様して語形変化追従を実現しているかどうか不明な点だが、これ以外に語形変化に関するデータはなさそうなので、とりあえず、この形式のタグを含むHTMLファイルを生成するように変更してみた。
ついでに、このページ近辺の資料をもとにして吐き出すHTMLファイル自体も少し整理した。
- というわけで、語形変化に追従
カーソルは"replaces"にあるけど、検索は"replace"で行われているところに注目だにゃ。
機種: E-P1 絞り値: F1.7 焦点距離: 20mm ISO: 200 シャッタースピード: 1/200 撮影日時: 2010:01:02 06:20:52
で、結論から言うと、首尾は上々。ちゃんと、語形変化に追従して検索するようになった。これで、ずいぶん使い勝手が向上する。
ところで、前のアーティクルにいただいたコメントに対する調査で、知ったのだが、英辞郎辞書って、すでに version 118 とからしい。自分の使っている version 52って、2001年という超古いものらしい。で、最新のバージョンはunicode対応になっていて、おそらくはCSVで吐き出すデータもutf8とか、もしかするとUCS2なんてことになっているかもしれない?(さすがにUCS2ってことはないとは思うのだが)
それで、オプションで第3引数を受け付けるようにscriptを変更した。ここにutf-8とか書くと、CSVファイルをUTF-8のファイルと思ってオープンするはず。残念ながら、手元に英辞郎の118とかがないので、それ以外の問題が起こるのか?などについては試していない。
もう一つ、もともとのデータでキャリッジリターンが入っていたところ(PDICで見ると改行されて見えるところ)は、前のスクリプトでは、そのCRを除去して、後続の内容をそのまま続けていたのだが、これもkindleでのリアルタイム検索の表示用に、CRをスペースに置き換えるように変更した。貴重な2行表示を有効に使うためにワードラップしやすいようにするのが目的。
では、Eijiro.csv2html.plをここに落としておくことにする。拾った方はネコババしても大丈夫だけど、何かあったときに落とし主に文句を言わないように。
Related posts:


はじめまして。
おかげさまでデスクトップのmobipocket readerでも英辞郎が動くようになりました!
あと、自分はKindleは持ってないんですが、mobipocket readerの動く某電子辞書がありまして、こちらでも動いてくれました!
特にデスクトップのmobipocket readerの上ではDokopopが利かないので不自由していたんですが、めっさ快適になりとても感謝してます。
これが動くと動かないとでは大違いなんですよね。
ありがとうございますた。
こちらこそ、コメントありがとうございます。
お役に立てて、不親切な形ではありますが公開した甲斐があるというものです。変化形がらみでバグを見つけたので修正中だったりするんですが。
そうですか、修正中ですか。
それはぜひとも頑張ってもらわないと。w
いや冗談はともかくとして、今のままでもかなりありがたく使えわせてもらえてます。
ボクはPerlのスクリプト読めないので、何をどういじられてるかわかんないんですけど、今のままでもジーニアス大よりはヒット率高いですし。
手元の電子辞書(SII DB-J260)でみると、語形変化に関しては英英(OALDとMWカレッジ)と比べるとジーニアス英和大はほとんどダメなので、なんかロジックに差があるのかな?なんて思ってますが。
だけど、英英も向かうところ敵なしってほどでもないんですよね。
あれは良かったのに、これじゃダメなの?みたいなレベル。
関係ないですけど、お花の写真綺麗ですね。
天気が悪いと写真撮るのは面倒ですけど、そのかわり割りと綺麗に映りませんか?
そう考えると、この妙な天気も捨てたものじゃないかもしれません。
おっと、話が。。。
失礼しました。