Takashi Nakamoto
blued****@bpost*****
2006年 12月 10日 (日) 05:50:09 JST
中本です。 というわけで、独自候補ウィンドウに続いて語法を表示するようにもしました。 CVS版で試せますが、スクリーンショットもとってあるので、まずはこれを見 てみてください。 http://bd.tank.jp/diary/images/20061210_0.png とりあえずはみなさんに興味持ってもらうために、デモンストレーションを目 的に調整して作っています。ただ、大枠は完成しているので、ぼちぼち細かい ところをつめていって、適当なタイミングで開発版としてリリースすることに します。 以下、開発者向けメモ & ToDo * 候補の右側に何か表示させたりするには、 AnthyInstance::show_note() AnthyInstance::hide_note() AnthyInstance::update_note(str) を使う。今のところaux_stringと同じタイミングで表示させたり非表示にさせ たりしている。また、以下に説明するAnthyDiction.get_diction(word)の中身 を表示するようにしている。 * 今のところこの note は、 - GtkLabelを使っていて単なるテキストしか表示できない もうちょっとリッチにして画像とか表示できるようにするとか...めんど い。とりあえずは、Pango text markup language を使うという手もある が...それもめんどい。いくらでも改善できる。 - 自動で右端で折り返さず、ウィンドウが右端にどんどん伸びていく。 改善の必要あり。 * data/dictionは - 「語法データベース」と命名 - 単なるUTF-8ファイル -「単語1\n語法1\n\n単語2\n語法2」という形式 - 形式は改善の余地あり。xmlとかにしたらどうだろうかとか思っているが めんどい。 - (prefix)/share/scim/Anthy/ にインストールされる。 - 語法データベースはそんなに多くなるはずはないと思うので、有志の人に 手伝ってもらって作るつもり。EBはよく分からんし、あんまり頼りになら ない。 * 語法の表示について - AnthyDiction::get_diction(word)で取得できる。 対応する語法が無い場合には空文字列を返す。 - wordに厳密にマッチするものしか表示しない。 例えば、「異義が」という候補に対して「異義」の語法が表示されない。 wordには語幹を渡すようにするなどの改善が必要。 - 語法データベースの形式が間違っていると、語法は表示されなくなる。 * AnthyDictionについて - 安直にstd::mapを使っているだけなので、語法データベースが大きくなる とそれに比例してメモリの消費量が大きくなる。語法データベースが大き くなってきたら、キャッシュを使うなどの改善が必要。 * 語法に関する設定について - SCIM_ANTHY_CONFIG_DICTOIN_FILE は 語法データベースの場所。 - SCIM_ANTHY_CONFIG_ENABLE_DICTION は 語法を表示させるかどうかの設定。 scim-anthyの設定で変更できるようにしておく必要あり。 といわけで、直せそうなところがあればどんどん直しちゃってください。ある いは、私の流体実験と量子力学のレポート代わりにやってください。 > 足永 さん # 留年したら足永さんのせいだからね! -- 中本 崇志 (Takashi Nakamoto) E-mail: blued****@bpost***** Blog: http://bd.tank.jp/diary/