PDIC辞書化の方法
道具など
まず用意するのはPersonal Dictionary for Win32 (PDICW)。PDIC-CEはPDICWのサブセットで辞書変換等の機能がないため、PDICWで辞書の変換やメンテナンスを行ないます。PDICWで生成された辞書はそのままPDIC-CEで使用することができます。
またテキストエディタは必需品で、数10MBのファイルを扱うことになるのでパワーのあるものが必要です。内容の参照や簡単な編集などに使います。私は市販のWzエディタを使っています。動作も高速ですし、バイナリーモードで開くこともできるので特殊記号の分析に重宝しています。
それと、データをPDICが読み込める形に変換するのに何らかの処理系が必要です。簡単なものならエディタでも出来なくはないけれど、処理系なら巨大ファイルも簡単な操作で変換できます。CやBASICでもいいのですが、この分野ではawk, Perlが主流のようです。私はjgawk, ActivePerlとJPerl MS-Windows/MS-DOSを使いました。いずれもインターネット等を通して無料で入手・使用できます。お察しの通りjgawk, JPerlは日本語対応(全角文字を1文字として扱う)ですが、これは日本語テキストの処理には威力を発揮するけれど、特殊記号を扱うときにはむしろPerlの方が都合よい時もあるので、場合によって使い分けています。なお、jgawkは行バッファに制約(たしか数KB)があるので、訳部の長い辞書を扱うなら、その制約のない(J)Perlの方が良いようです。
なお、jgawk, (J)Perlのメリットは、文字列処理に向いている他にもいろいろあって、
1. インターネット等から誰でも無料で正規に入手・使用できる。
2. スクリプトはバイナリー形式と違いウイルスの混入する心配がない。
3. スクリプトを読めば処理内容は明白で、その気になれば修正も容易。
詳細は各言語のサイトに譲りますが、ちょっとした仕事するのにも重宝だし、あると便利ですよ。今まで食わず嫌いだった方も一度試してみてください。
jgawk入手先
ActivePerl, JPerl入手先
基本的な手順
PDIC辞書化については既に多くの例が公開されていますが、ここでは概略を書いておきます。
基本的な手順は次のようになります。
Step1: CD-ROMの内容をテキストファイルに吸い出す
Step2: それをPDICのサポートする形式に変換する
Step3: PDICに取り込みPDIC辞書化する
以下、順を追って解説します。
Step1:
このステップは辞書CD-ROMの形式によりアプローチが異なり、それにより処理時間も大きく左右されます。しかし、ある程度のパソコンの知識と根性があれば、最終的にほとんどの辞書がテキスト化可能と思われます。でも手元の研究社「新英和中辞典」電子ブックなどは訳と用例が階層化されているため用例が吸い出せませんでした。あまり階層化されていないほうが都合良いようです。
正攻法は、辞書を解析し、内容をテキスト(またはPDIC形式で)出力するプログラムを書くことでしょう。でも、公開されていればありがたく使わせてもらうけれど、普通は別の方法を考えたほうが手っ取り早いと思います。
最も効率的なのはDDwinで読める辞書(EPWING/電子ブック/JIS X4081)で、これはDDwinを使えば数十分でテキストファイルに落とすことができます。PDIC化を念頭に辞書CD-ROMの購入を考えているのであれば、これが無難です。
逆に、最も地道な方法としては、Windows上で動作しているアプリケーションなら、たいてい最低でも単語ごとにCOPY/PASTEで別ファイルにコピーできるので、これの繰り返しでテキストファイルに落とすことができます。数万~数十万回を手作業で行なうのは現実的でないので、コンピュータにやらせましょう。うみうみ屋さん作「UWSC自動化ソフト」を利用すれば勝手に吸い出してくれます。JScriptを使う方法もあるようです。時間はかかりますが(中辞典クラスで数日)、原理的に辞書形式を問わないので、応用範囲の広い方法です。
DTONICは、「地道な方法」で吸い出したことがあり、数十の単語ごとにCOPY/PASTEできるので比較的楽でした。その時はUWSCを使い、安直に一度手作業でコピーした動作を記録して、それを数千回ループさせました。また、EBStudioとDTONIC Toolkitを使っていったんEPWINGに変換し、それをDDwinでテキスト化する方法もあります。DTONIC Toolkitは今のところDTONICなら何でも変換できるわけではありませんが、対応した辞書なら高速に変換・吸い出しが可能で、副産物として(?)EPWING辞書も手に入ります。これもお勧めです。
この「いったんEPWINGに変換」も応用範囲が広く、「EPWING」や「DDwin」でサイトを検索すると多くの移植情報が入手できます。試してはいませんが、「システムソフト電子辞典」「LONGMAN現代英英辞典」「COLLINS COBUILD on CDROM」「ジーニアス英和・和英」「ランダムハウス英語辞典」などもEPWING化できるようなので期待が持てます。いずれにせよEPWING/DDwin関連は要チェックです。
ということで、たとえば次のようなテキストファイルが作成されます(新辞林)。
アーチェリー【archery】
(1)西洋式の弓術。また,それに用いる弓。洋弓。
(2)洋弓を用いるスポーツ。標的(ターゲット)をねらい射って,得点を争う。
アーチきょう【アーチ橋】
主桁(しゆげた)をアーチ構造とした橋。
アーチスト【artist】
芸術家。特に,美術家・演奏家。アーティスト。
DDwinとEPWINGの資料
UWSCの使い方資料
Jscriptの使い方資料
EBStudioの資料
Step2:
さて、ここからが面白い。(^_^) テキストの変換は次の2つがポイントです。
1. 特殊記号をPDIC上で(それなりに)読めるように変換
2. PDICのサポートする形式(1行テキスト形式など)に整形
吸い出したファイルをエディタで見ると、所々読めない部分があると思います。[hA121][zA423]のようなもの、文字化けしているものなどです。原本と比較しながら、各文字を読めるように変換します。おそらく、”【”、”】”などの記号、特殊な漢字、アクサンやウムラウト、発音記号などが相当するはずです。PDICで扱える1~数種類のフォントだけでは100%の再現は難しく、その制約の中でそれなりに努力することになります(PDIC Unicord版ではその辺が改善されるのでしょう)。私の場合、記号はなるべく同じ文字に、難しい漢字は割り切って”■”に、アクサン等は”e’”のように2語で表記します(アクサン等はPDICで欧文フォントを使えば正しく表示することも可能)。発音記号は英辞郎方式に変換すると、そのままでも何とか読めるし、PDICで取り込む際IPAフォントに変換することもできます。文字化けしている場合(特に外国語関係で)、日本語対応ではない、英文用エディタやバイナリ・エディタで見たほうがわかりやすいときもあります。変換はエディタで行なってもよいですが、途中で誤変換すると元に戻しにくいので、Perl等で変換させ、結果を見ながらスクリプトを書き足していったほうが良いでしょう。[*1]
2は要するにファイル内容を単語、訳などに分類して所定形式に組み上げる作業です。内容盛りだくさんの辞書だと構成が複雑で頭をひねることもありますが、一番面白い部分でもあります。まず単語と訳を分離し、結果を見ながら不要な文字を消し、行をつなげ、改行を入れたりと形を整えて行きます。時々PDICに読み込ませて様子を見たりします。はじめは辞書の一部を抜き出したものでテストすると結果が早く確認できて良いでしょう。出力形式はどれでもいいのですが、1行テキスト形式が一番使いやすいように思います。発音記号も、英辞郎方式で記述して訳部に’【発音】xxx、’と入れておけば、PDICがIPAフォントに変換して発音記号欄にセットしてくれます(「辞書変換」で対応項目にチェックを入れること)。[*2]
さきほどの例を1行テキスト形式に変換した例です。
アーチェリー【archery】 /// (1)西洋式の弓術。また、それに用いる弓。洋弓。 \ (2)洋弓を用いるスポーツ。標的(ターゲット)をねらい射って、得点を争う。
アーチきょう【アーチ橋】 /// 主桁(シユゲタ)をアーチ構造とした橋。
アーチスト【artist】 /// 芸術家。特に、美術家・演奏家。アーティスト。
[*1] テキストに吸い出す際、特に「地道な方法」で、一部データの欠落・変形が起きることがあります。発音記号の一部やアクサンが無かったり、外字が「■」(文字化けでなく「■」そのもの)だったり。これは訳の切り貼りで文字化けしないための処理で、ある意味当然なんですが、その分情報が失われることになります。こればかりは仕方が無いですね。
[*2] オリジナルの項立てにこだわる必要はありません。たとえば英和辞典では、可能なら単語中のイディオムも別単語扱いすると見やすいと思います。単語自体も通常なら大文字・小文字が分かれますが、”ABC”を”abc :ABC”などとすれば辞書順に近くなります。いろいろ工夫してみてはいかがでしょう。
Step3:
あとはPDICの辞書変換機能でPDICに取り込めばいいだけです。
ひとつ問題は、PDICの訳部に各3000byteまでという制約がある点で、これでは英和中辞典の基本単語のように訳部の長いものは弾かれて登録できません。私的解決策として「単語分割・復元ツール」で単語を分割登録してみましたが、けっこう快適です。
あと、辞典類をPDIC化する時は、「同一単語の処理」を「改行付きで付け加える」を選んだほうが、日本語訳マージがOFFになるので無難です。
具体的には、「PDIC辞書化の例」を参照ください。 |