[Anthy-dev 3717] Re: 辞書の分離(Re: Re: g_fname.t と gcanna.ctd の修正

アーカイブの一覧に戻る

NIIBE Yutaka gniib****@fsij*****
2010年 5月 29日 (土) 14:18:34 JST


Hideki Yamane wrote:
>  debian では Emacs23 から libanthy0 ->  anthy-common と引っ張ってきて辞書が
>  入るという苦情がきてしまっているので ;)、

すみません。具体的にどういう苦情ですか?
libanthy0 が辞書に依存すると記述するのは、一つの指定のありかただと思います。

>  ・alt-cannadic
>  ・anthy-dic (?)
>  という別パッケージにしてはどうか、と思っています。

はい。

現時点では、anthy の実装(と配布形態)は、辞書とコードが密接に関連する形
になっているので、どうするのがいいか考え中です。

システム辞書 anthy.dic を生成する手順を整理できたので、少し、進みました。

一つ大きな問題が残っています。現在の anthy の実装では、システム辞書
anthy.dic の置き換えをする際に、古い辞書を使っているプロセスがこける
(SEGV)、あるいは意味不明の動作をする可能性があります。

具体的には、anthy.dic のファイルが i-node そのままで書き込まれたら、そ
れをアクセス途中のプロセスに悪影響を与える可能性があります。ここのとこ
ろのコードは、例えば、ファイルのタイムスタンプを見て、ファイルを参照し
ているオブジェクトをinvalidateするというような処理を追加する必要があり
ます。

今の Debian の packaging だと、/var/lib に anthy.dic を置いて
/usr/sbin/update-anthy-dics で更新するようになっていますが、これはちょっ
とマズイ。ひとつは上記の問題、もう一つは、/usr/sbin/update-anthy-dics
がコーパスの処理が anthy に機能追加されたのに対応していないところ。

普通のpackageとして anthy.dic が扱われていれば、古いファイルは mv され
てアクセスしているプロセスはそちらを参照するから、問題は起きません。

方向は二つ。

(1) /usr/sbin/update-anthy-dics 的な考え方

管理者が辞書のパッケージを指定して、update-anthy-dics を起動し、
/var/lib/anthy.dic を作る。という運用方法。

anthy のパッケージの configuration として(debconf で)辞書を指定するのか
な。


(2) Debian パッケージとして、システム辞書の種類を指定して install する
だけ、というような感じ

例えば、anthy-dic-plain, anthy-dic-2ch (通常に加えることの 2ch 辞書),
anthy-dic-hokuto (通常に加えることの北斗辞書), anthy-dic-sumo (全部入
り)とか、パッケージがある感じです。管理者はどれか一つを選択する。

どのパッケージもファイルは /usr/lib/anthy/anthy.dic だけど内容が異なる。


(1)は、現在のanthyの実装の修正が求められます。
(2) はすぐできます。

将来的にいろいろな辞書やいろいろな付属語の情報があって、その組み合わせ
がたくさん、ということなら (1) の方が良いですか。あんまりバリエーション
がないのだと (2)で問題ない。

(1), (2) いずれの場合も辞書や付属語の情報のパッケージングが求められます。
(1) の場合は通常のパッケージで利用者に使われる、(2) の場合は anthy が
Build-Depends:するパッケージで anthy の build の時に使われるパッケージ
になります。

とりあえず辞書や付属語の情報のパッケージングを進めましょうか。Alioth の
pkg-anthy でやりましょう。郵便番号のデータというのもあったなぁ。
-- 




Anthy-dev メーリングリストの案内
アーカイブの一覧に戻る