view PubdicPlus/PUBDICPLUS-README.jp @ 7:6ab41ec6f895

fix dtoa crash when it encounters malformed entry.
author Yoshiki Yazawa <yaz@cc.rim.or.jp>
date Tue, 18 Dec 2007 23:25:17 +0900
parents bbc77ca4def5
children
line wrap: on
line source

<本ソフトウェアの取り扱いおよび無保証について>

このディレクトリにあるのはフリーな辞書 pubdic です。

この辞書は何をしてもかまいません。

また、このディレクトリには pubdic を扱ういくつかのコマンドがあります。
これらのコマンドに関しても何をしてもかまいません。

pubdic および pubdic をあつかうコマンドをここでは「本ソフトウェア」と
総称します。

本ソフトウェアはいわゆる as is のものとして提供されており、本ソフトウェ
アの著作者および pubdic ボランティアは、本ソフトウェアによって引き起こ
されるいかなる損害に関する保証を行いませんのであらかじめご了承ください。

本ソフトウェアの再配布も自由ですが、本ソフトウェアの再配布を行う場合は
本文書と同様の注意文を付加するなど無保証であることを明示するか、あるい
は再配布者の責任により保証を行うようお願いします。すなわち、再配布先に
おけるいかなる損害の責任も本ソフトウェアの著作者および pubdic ボランティ
アに及ばないようにお願いします。

<pubdic フォーマットについて>

本ソフトウェアでは辞書を表現するのに pubdic フォーマットと言う新しいフォー
マットを採用しています。pubdic フォーマットは以下の形をしています。

  読み 候補 品詞 頻度 [種類[/種類[/..]]]

例えば、以下が pubdic フォーマットの例です。例で分かる通り、品詞フィー
ルドには Wnn/Canna/SJ3 の品詞が併記されています。これは将来的にはより
一般的な記述を持った品詞表記に変えて行きたいと考えています。

  あかんこ 阿寒湖 地名/#CN/地名: 3 chimei
  あき 飽き 一段/#KS/一段1: 40
  か 書 カ行五段/#K5/カ五1: 66
  のうかすいたい 脳下垂体 名詞/#T35/名1: bio

第5フィールドの種類フィールドには種類を表す文字列を記します。ただし、
種類が kihon である場合にはこのフィールドをサプレスすることが可能です。
種類が複数に渡る場合にはスラッシュ(/)で区切ってそれらの種類をならべま
す。複数の種類を記述する場合には kihon に関してもサプレスせず記述を行
わなければなりません。

<pubdic フォーマット標準形>

辞書ツールなどで取り扱いを行うとき、同じ内容を持つ辞書が複数の表現形式
を持ってしまうことは diff などで違いを調べるときなどに不便を来すことが
あります。

 <例>

  あかんこ 阿寒湖 #CN 3 chimei
  あき 飽き #KS 40


  
  あき           飽き        #KS     40
  あかんこ       阿寒湖      #CN      3    chimei

そこで、同一の辞書は同一のファイル表現となるように標準形を以下のように
定義します。

 (1) 各エントリにおいて、各フィールド間は単一の空白(space)により区切ら
     れる。

 (2) 第5エントリが kihon のみになる場合はそのフィールドはサプレスする。

 (3) 最終フィールドの右は直ちに改行が来るものとする。

 (4) 空白行は含まない。

 (5) 各エントリはコード順にソートされる。

 (6) 読み、単語、品詞が同じエントリはたかだか1行しか存在しない。

標準形になっていない pubdic フォーマット辞書 foo.p を標準形にするため
には、コマンド pod を用いて以下のようにすると標準出力には標準形に直さ
れた辞書が出力されます。

  % pod foo.p

<辞書の差分抽出について>

辞書 a.p をベースにある程度修正を加え b.p を作成したときに、a.p と b.p
の差分を求めるにはコマンド pod を用いて以下のようにします。

  % pod a.p b.p -o dels -n adds

これにより削除されたエントリが dels に、追加されたエントリが adds に出
力されます。

a.p のみを所持している人がこの dels および adds を入手し b.p を再現す
るには以下のようにします。

  % pod a.p dels -o - | cat adds | pod - > b.p

dels および adds は context diff と異なり、実際に追加/削除さらた部分だ
けですので、context diff よりは量が少なくなります。

<各かな漢字変換システム用の辞書の作成>

まず、以下を実行します。

  % xmkmf

Wnn の辞書を作るにはこのディレクトリで、

  % make wnn

を実行します。 すると、bio.u、chimei.u、computer.u、jinmei.u、kihon.u、
koyuu.u、setsuji.u、symbol.u、tankan.u ができます。special.u は最初か
ら置いてあります。

『かんな』の辞書を作成するにはこのディレクトリで、

  % make canna

を実行します。すると iroha.t ができます。

SJ3 の辞書を作るにはこのディレクトリで、

  % make sj3

を実行します。すると visual.dic ができます。