私の購入したNokia E90 CommunicatorはAPAC版で英中辞書は入っているのですが、全く使わないし役に立ちません。
そこで広辞苑をNOKIA端末に入れられるように変換し、E90を電子辞書化してみました。
その時の備忘録です。
一度データを作ってしまえば、E90だろうがN95だろうが入れられて便利です。
全体の流れ
- CD-ROMからデータを抽出し、テキストファイル化(DDwin)
- テキストファイル化したデータから外字データなど特殊な文字列を変換、PDIC一行形式に変換(kojien4)
- CSV形式に変換(PDIC for windows)
- html形式に変換(もび汁2)
- prc形式に変換(Mobipocket Reader Desktop)
必要なものを揃える。
データ以外は無料で手に入るものです。
- 広辞苑第五版(CD-ROM)
ヤフオクで1000円程度で売っています。 - ActivePerl
公式サイトは分かりづらく、ダウンロードサイトへ行くのが大変。
こちらの一覧から探すとラク。
ActivePerl-5.8.8.822-MSWin32-x86-280952.msiをダウンロードしました。 - 秀丸エディタ
このソフトはシェアウェアですが機能制限なしで試用できます。
高機能なエディタならなんでもいいです。他にはTeraPadやサクラエディタなど、いろいろあります。標準のメモ帳だと行数が多すぎてクラッシュします。 - DDwin
Googleで「DDwin」を検索してトップにくる公式サイトでは、ダウンロードできなかったため、ベクターからダウンロード。
→Vecotor DDwin32 - kojien4
上記サイトからkojien4.lzhをダウンロード解凍してください。 - PDIC for Windows
Ver.4.82(2008-04-24)を使用しました。 - もび汁2
上記サイトにアクセスし、ページ中段上あたりにPerlスクリプトがありますので、テキストファイルにコピペし、csv2html4mbp2.plとファイル名を変更してください。拡張子が表示されるようにしておかなかいとこれは出来ません。 - Mobipocket Reader
サイトは英語ですが、PCの方は日本語化されています。画面トップの赤いタブに「Software」と書かれたところからダウンロードできます。
Mobipocket Reader Desktop 6.2と Mobipocket eBook Reader 5.2を使用しました。
1.CD-ROMからデータを抽出する。
まず、環境を整えます。
DDwinの ツール -> オプション -> その他 の「エディタ」の項目で秀丸エディタを指定しておく。なお、秀丸エディタの その他 -> 動作環境 -> 環境 のところで「編集可能な最大行数」を「1000万行」にしておく。そうしないと開けない。
DDwinを起動し、「広辞苑」のボタンをクリック、「全文」のタブをクリックしたのち、検索するとすべての用語が出てくる。
次にDDwinの 編集 -> エディタを起動 をクリックし、「出力する内容」のラジオボタンを「該当項目すべて」とする。良ければ「OK」を押して作業開始。
作業が終了すれば、指定したエディタが起動し、データが抽出されたのを確認できる。とりあえず「kojien.txt」としてデスクトップに保存。
こでデータの抽出は終了。
2.外字データの変換 とPDIC一行形式への変換
A.これにはPerlを使用します。また、作業するフォルダに日本語ファイル名が入ると失敗するらしいので、自分はCドライブの一番トップ(ルート)に先ほどのkojien4のフォルダを移動させました。
B.先ほど作成した「kojien.txt」をCドライブのルートに移動させた「kojien4」フォルダに移動させます。
C.kojien.batを編集します。
kojien.bat内にはjperlが使われていますが、これをperlに置き換えてください。また余計なファイルを消さない仕様になっています。もし、プロセスを見たくない方はbatファイルの最後の行に
del kj1.txt
del kj2.txt
del kj3.txt
del kj4.txt
del kj5.txt
del kj6.txt
del kj7.txt
del kjdic1.txt
del kjdic2.txt
del kjdic3.txt
del kjtemp.txt
del gjdled.txt
del temp3.txt
del temp4.txt
del temp4_2.txt
del kjdic4.txt
del kjcddte.txt
上記を追加して保存すれば自動的に不要ファイルを削除するように動作します。
D.kojien.batをクリックすると自動的に作業が開始されます。しかし、エラーが出ているかどうか分からないので、DOS窓(コマンドプロンプト)から起動させてもいいと思います。
>cd c:kojien4
>kojien.bat
これでkjdic.txtができあがります。
E.できあがったkjdic.txtファイル内の余計なデータを編集します。
これは不要な作業かもしれませんが、ファイルの一番最後の方にありがたいお言葉がありますので、やむなく消される方は消してもいいかと思います。
また、ファイルサイズが大きい場合、のちのMobipocket Readerで変換に失敗することがありましたので、意味不明な後半部分は消した方がいいと思います。
3.PDIC一行形式をCSV形式に変換する。
PDIC for windowsを起動し、tool -> 辞書の変換をクリック
-
同一単語の種類 => 改行付きで付け加える
-
詳細設定のボタン => 訳語/用例を区別して取り込む にチェックを入れ、それ以外はすべてチェックを外す
-
登録項目のボタン => 訳語部、用例部のみチェックを入れ、それ以外のチェックは外す。
その後、転送元辞書には先ほどのkjdic.txtを左の参照から選択、転送先辞書には、CSV形式にチェックを入れ、参照ボタンを押して、csvファイルの保存先を指定したら、OKボタンを押せば変換が始まります。
4.html形式に変換
もび汁のサイトからPerlスクリプトをコピーし、空のテキストファイルにペーストします。ファイル名はcsv2html4mbp2.plと変更しました。
また、スクリプト内の編集する部分については下記の通りにしました。
#!/usr/bin/perl
# csv2html4mbp2.pl (perlスクリプト) 060401
# 設定 (行頭の # はコメントアウト= 無効)
####ここから設定部分################################################# ↓ $dic_name = “辞書表示名” ;
$dic_name = “広辞苑第五版” ;# ↓ open ( READFILE , ” <辞書データ.csv” ) ;
open ( READFILE , ” <kojien.csv” ) ;# ↓ open ( WRITFILE , ” >中間ファイル.html” ) ;
open ( WRITFILE , ” >kojien.html” ) ;####設定ここまで。以下、好みで修正。幸あれ!##########################
そして、DOS窓を開き、
>cd c:kojien4
>perl csv2html4mbp2.pl
processing now
442965
と打ち込み、実行してください。うまくいけば、kojien.htmlというファイルができあがっているはずです。(失敗してもできあがりますが、その場合はファイルサイズが1KBになっているはずです)
5.prc形式へ変換
Mobipocket Readerを起動します。
画面上部の「ファイル変換」 => HTMLファイル => 別窓が開くので「kojien.html」を指定
これで自動的に変換が始まります。問題がなければば終了です。データはマイドキュメント内に「My ebook」というフォルダがありますのでその中に入っています。
私はメモリカード内にebookというフォルダを作り、できあがったkojien.prcを入れました。
6.その他の試行錯誤
ファイルサイズが極端に大きくなった場合に変換に失敗することがありました。kojien5perlで失敗するのは辞書ファイルの項目数が多いためでるような気がします。
また、「4.html形式に変換」の項目で
# ↓ $dic_name = “辞書表示名” ;
$dic_name = “広辞苑第五版” ;
ここが日本語であるとNOKIA上でエラーが発生するという情報もありましたが、今のところ発生はしておりません。
NOKIA上で見てみると分かると思いますが、関係ないデータもインデックス化されていることに気づくと思います(音声データや画像データ用のインデックス)。これらを削除してみたり、いろいろといじってみてください。
7.参考にさせていただいたサイト
ありがとうございました。
コメント