概要 実装例 技術詳細 Palm版 Emacs版 POBox Server 辞書 日記 POBox ML 関連情報
POBoxサーバ - インストール
■
概要
インストール
プロトコル
更新履歴/旧版DL

汎用サーバライブラリソース
POBoxサーバソース
POBox APIソース
POBox API定義
曖昧検索ライブラリ
ローマ字かな変換ライブラリ
「文芸的プログラミング」ツール
■ POBox ServerとEmacs用プログラムの 全ソースとHTML文書はpobox.tgzに まとめられているので、これを解凍して configure, make して下さい。
■ プログラムの他に辞書が必要です。 おすすめできる辞書がまだ無いので辞書は別配布です。 とりあえず 富豪辞書を使ってみることができますが、 辞書解説を見て 自作していただく方が良いかもしれません。
変換ツールを使用して 手持ちの辞書を変換して使うこともできます。
■ Web上の「文芸的プログラミング」 にもとづき、 HTMLファイルで文書とプログラムを両方表現しています。
サーバソース解説、 APIソース解説 のような、ソースを含むHTMLファイルに対して wtangleプログラムを適用すると pbserver.cなどのファイルを 生成することができるようになっています。
この処理はmakeにより自動的に実行されます。
■ configureで “--enable-gc” オプションを指定すると POBox Serverで Boehm GCが使用されます。
指定しなくても問題はありません。
■ configureで “--enable-sary” オプションを指定すると Suffix Array操作ライブラリ Sary が使用されます。
Saryを使用すると固定辞書を使うことができるようになります。 POBox Serverは、ユーザが単語を選択するごとにその単語を 辞書の先頭に持ってくる学習操作を行なうので、 大きな辞書を学習辞書に使うと速度が問題になることがあります。 小さな学習辞書(最初は空でもよい)と 巨大な固定辞書から使用を開始すると POBox Serverを快適に使うことができます。
小さな辞書でかまわない場合や 計算機が強力な場合は 固定辞書を使うメリットはあまりありません。
■ configureで “--enable-lookup” オプションを指定すると、 トライを使った固定辞書検索方式が使用されます。 超非力なマシンではSaryよりこちらの方が良いかもしれません。
■ Boehm GC, Saryを使う場合はあらかじめインストールが必要です。 (configureではちゃんとチェックしてません)
■ 学習辞書と固定辞書は今のところ learndic, staticdic という名前のものが使われるようになっています。 (もう少し柔軟にしたいと思います...)
Saryを使う場合は
  • 富豪辞書をEUCに変換して staticdicという名前にする
    % nkf -e < ../dict/data/fugodic > staticdic
  • “mksary -l” により、 インデクスファイル staticdic.sryを生成する
    % mksary -l staticdic
  • 空のlearndicを用意する
    % touch learndic
とすればよいでしょう。 また、Saryを使わない場合は
  • 富豪辞書をEUCに変換して learndicという名前にする
    % nkf -e < ../dict/data/fugodic > learndic
として下さい。
トライ検索を行なう場合は、
  • EUCに変換した富豪辞書をソートして staticdicを作成
    % nkf -e < ../dict/data/fugodic | sort > staticdic
  • 空のlearndicを用意する
    % touch learndic
として下さい。
■ pbserverと辞書は同じディレクトリに置かなければ なりません。 ダサくてすみません。
■ 以下のようなテストで pbserverが動いているかどうかわかります。 青い文字がユーザの入力です。
% telnet localhost 1178
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
1kai
1       かい    カイ    kai     買い    会
q
Connection closed by foreign host.
%
Up$Date: 2001/02/10 11:08:54 $