Palmで広辞苑(完成!)
前回のエントリーで、nowarlさんから「Perlを使えば1行テキスト形式に変換できる」というコメントを頂きました。ところが、私はPerlなるものをさっぱり知りません^^;
というわけで、まずはPerlの調査を。ふむふむ、こちらによると、どうやらCGIを書く代表的な言語のようです(ちなみに私は、CGIが何かもよく知りません^^;)。で、こちらによると、従来はソース形式でしかPerlは配布されてなかったけど、Windows環境ならAcrivePerlとやらをインストールすればよいとのこと。
で、早速配布元のActiveStateへ。ダウンロード出来るのは ActivePerl 5.10.0.1002 と 5.8.8.822 の2つがあるようですが、古い方が安定しているかな、ということで5.8.8.822の方のインストーラ(MSIと書かれているリンク)をクリック。14.9MBのファイルがダウンロードされてきました。で、これを実行すれば、あっさりActivePerlがインストールされました。
ちなみにnowarlさんに教えて頂いた、1行テキスト形式への変換を解説して頂いている幾霜さんのサイトでは、ActivePerl (build522)の他に、JPerlとやらが必要と書いてあるのですが、こちらによると「Jcode.pm が内包され、日本語の処理方法が変わっています」とありますので、このまま日本語が使えるんじゃないか、と言う憶測でそのまま次へ^^
で、次は幾霜さんの書かれているとおりの手順を進めます。(以下、ほとんど丸写し)
- まずkojien4.lzh内のhenkan.txt以外のファイルと出力ファイル(kojien.txt)を同じディレクトリ(フォルダ)に置き、それ ら以外のファイルは置かないようにします。
- そしてkojien.batを実行します。
- すると色々ファイルができますが最終的にkjdic.txtというファイルができます。このうち必要なのはkjdic.txtのみなのでそれ以外は削除して構いません。
ところが、なぜか出来たkjdic.txtのサイズは0kb。どうもうまく動いていないようです。で、kojien.batの中身を見てみると、、、こんな感じのスクリプトが並んでいます。
jperl chusyutu1.pl <kojien.txt >kjtemp.txt
なるほど、これではJPerlを動かそうとしているのでうまく行かないはずです。で、このバッチファイル内の「jperl」という部分を「perl」と言う風に書き換えて、再び実行。すると、見事バッチファイルが進んで行き、ファイルが出来ていきます^^
で、最後に出来たkjdic.txtを見てみると、、、、
あ /// / ◎(1)母音の一。口を広く開き、舌を低く下げ、その先端を下歯の歯ぐきに触れる程度の位置におき、声帯を振動させて発する。〔a〕 \ (2)平仮名「あ」は「安」の草体。片仮名「ア」は「阿」の偏(へん)の略体。
おおお、見事1行テキスト形式に変換されています!
ちなみに幾霜さんのこのPerlスクリプトを使って変換すれば、WDICで辞書を検索するときに、読みだけでなく、漢字でも検索できるという優れものだそうです。ありがたや。
で、こちらの手順に従って、次にこれをPDIC形式の辞書データに変換します。(以下転載&一部修正)
- PDIC for Windowsを起動します。
- 〔Tools〕→〔辞書の変換〕とたどります。
- 〔転送元辞書〕の〔ファイル形式〕は〔一行テキスト形式〕をチェック。上記で作成したPDIC一行テキスト形式の辞書ファイルを指定します
〔転送先辞書〕の〔ファイル形式〕は〔PDIC形式〕をチェック。ファイル名は、kojien.datとしました。
〔同一単語の処理〕は〔改行付きで付け加える〕を選択。
〔詳細〕では〔辞書格納率〕を100%にするとよいそうです。あと、〔一行テキスト形式の区切〕が” /// ”になっているか確認しておきましょう。あと、私の場合は「訳語 / 用例を区別して取り込む」のチェックを外しておいた方が、後で生成した辞書が見やすかったです。
で、〔OK〕。 - 〔辞書の新規作成〕が開いたら、〔辞書の種類〕の〔Hyper辞書形式〕をチェック。〔圧縮対応の辞書にする〕はチェックを外します。
で。〔OK〕。 - まつこと十数分。PDIC形式の広辞苑辞書ファイルの完成です。
私の場合、5.の結果はこんな感じ。
41万語が無事変換されました。(なぜか447語は欠落したようです)
で後は、SDカードのE:\PALM\PROGRAMS\PDICの下にKOJIENというフォルダを作り、その中にできあがったkojien.datファイルを放り込みます。そしてWDICを起動し、KOJIENを選択。
そうするとインデックスが自動的に作成されて、、、
むはははは!!見事広辞苑がTreoで動きました!!!
ちなみに上の画面は一覧画面。一番上の行をタップor 5wayで選択すると、こんな感じで「あ」に関する記述が表示されます。
さらにWDICでは、マルチ辞書の同時検索が出来ます。メニュー/オプションで「全ての辞書」を選択しておくと、導入されている辞書全てについてヒットしてくれます。ちなみに下の画面では、1行目が英辞郎、2行目が広辞苑です。
はっきり言ってこれは、専用機も顔負けです。非常にサクサク動くし、大満足^^
Palm最高!!
| 固定リンク
この記事へのコメントは終了しました。
コメント
すばらしいです!
私は第五版を持っていたのでいつかやりたいなと思ってたのですが
いいきっかけになりました(^^)週末にでも試してみようと思います。
投稿: kizm | 2008年2月 1日 (金) 00時35分
おめでとうございます。広辞苑がPDAに入っていると何かと便利ですね。私はpalmで挫折してzaurusを経て[es]で広辞苑使ってます。「サクサク」と聞くと、またpalm使いたくなりますね。
投稿: べっちゃん | 2008年2月 1日 (金) 11時19分
>kizmさん
第五版だと、若干Perlスクリプトが違うようですが、以下のリンク先を参考にすればうまく行くそうです。
http://members.jcom.home.ne.jp/khoo/zaurus/zaudic.htm
うまく行ったらまた教えてくださいませ。
>べっちゃんさん
本当に、あの分厚い広辞苑がこの小さなTreoに入っているかと思うとびっくりですね。動作は本当にサクサクです。是非Palmにカムバックを^^
投稿: MA-CYT | 2008年2月 1日 (金) 20時45分
陰郎宅にも広辞苑第四版がたまたまあったので、やってみました。まったく同じ手順を踏んだつもりですが、欠落単語数が800以上ありました。理由はわかりませんが、MA-CYさんが以前掲載されていたのとはCD-ROMケースのジャケット色が違う(緑色)ので、微妙にコンテンツに差があるのでしょうか。また、拡張子を .dic にしないとなぜか認識してくれませんでしたが、それ以外は快調です。英辞郎&広辞苑、さくさく動いて最高ですね。
投稿: 陰郎 | 2008年2月 1日 (金) 23時21分
広辞苑、ご成功おめでとうございます。手元に心強い味方ができたということは、安心してコトバを忘れてもいいですね(*_*)☆\
私はといえば辞スパを購入しました。起動して少し触った程度ですが、良さそうな感じです。ボチボチ実践で使っていきたいです。これで安心してコトバを忘れられます(←まだ言っている、、)
投稿: cooldad | 2008年2月 2日 (土) 17時43分
>陰郎さん
私のジャケットは緑色だったので、何かが違うのでしょうかね。それにしてもWdicと広辞苑の組み合わせ、久々にわくわくしました(^_^)v
>cooldadさん
辞スパは、漢和辞典が良いですよね!確かにこれだけは、Wdicではどうしようもありません。
実は個人的には、書き順が分かる漢和辞典が欲しいのですが、Palmでは無理ですかね^^;
投稿: MA-CY | 2008年2月 5日 (火) 12時57分
こちらのエントリーを参考にして、無事自分の650にも広辞苑(第四版ですが)を入れる事が出来ました。有難うございました〜。
投稿: Mochi | 2008年2月24日 (日) 01時58分
>Mochiさん
いえいえ、私は先人の方々の後をトレースしただけで^^;
それより、Mochiさんのサイト拝見しましたが、N75でも辞書閲覧が出来るんですね!そちらの方が驚きだったり。うーん、負けるなPalm!
投稿: MA-CY | 2008年2月25日 (月) 08時30分
Nokiaでも辞書はが見れたりするんですが、WDIC+Treoのキーボードにはやはり敵いません、はい。この組み合わせは電子辞典の使い勝手を超えると思います。
投稿: Mochi | 2008年2月25日 (月) 11時35分
始めまして、わかりやすい手順ありがとうございます。
GWを使かい五版をPDIC形式に変換してみました。
perlで頑張ってみたのですが、五版の場合は無理みたいですね。^^; jperl入れ直したらサクっと終了。英辞郎+和英辞郎入れても200MBに収まり動作も軽快、快適です。
投稿: yachimi@TH55 | 2008年5月 9日 (金) 13時11分
>yachimi@TH55さん
おめでとうございます。第五版でもいけましたか!WDIC+広辞苑、挿絵がないのが唯一の難点ですが、サクサク感が最高ですよね^^
投稿: MA-CY | 2008年5月10日 (土) 20時06分