概要 実装例 技術詳細 Palm版 Emacs版 POBox Server 辞書 日記 POBox ML 関連情報
Emacs版POBox - 辞書
概要/News
インストール
使いかた
辞書メンテナンス
更新履歴/旧版DL
プログラムソース
PalmPilotやEmacsで鍛えた辞書はマージして使うことができます。 POBox Server テキスト形式の交換形式辞書 を使っていますが、 PalmPilot版インラインPOBoxの辞書も 添付のpdb2dicスクリプトを使って 同じ形式のテキストに変換することができるので、 両者をマージすることにより、たとえば Emacs版POBoxで登録した単語をPalm版POBoxで使うことが できるようになります。

辞書ファイルのマージには UNIXの“diff”コマンドを使う ことができます。 diffは通常はふたつのファイルの 差分だけを計算して出力しますが、 -Dオプションを使うと #ifdefで相違部分を区別しつつ ふたつのファイルをマージした出力を得ることができます。

最初に以下のような辞書があったとします。

XXX
aaa
bbb
これを携帯端末とEmacsで学習させた結果、 以下のようなふたつの辞書ができたとします。
aaa
XXX
bbb
bbb
XXX
aaa
これらを単純にマージすると aaa, bbbの 両者の学習結果を反映させることができませんが、 diffを使えば 両方の学習結果を反映させることができます。
まず両者をdiff -Dでマージします。
% diff -DdictB dictA dictB
#ifndef dictB
aaa
#endif /* not dictB */
bbb
#ifdef dictB
aaa
#endif /* dictB */
XXX
%
このようなdiffコマンド出力から #ifdefのような制御行及び 重複するエントリを除去すると、
aaa
bbb
XXX
のようにマージされた辞書を得ることができます。
Up$Date: 2001/07/23 15:03:52 $