[Anthy-dev 874] Re: IPAオープンソースソフトウェア活用基盤整備事業

Back to archive index

HINO Naoya n_hino****@kcn*****
2004年 6月 24日 (木) 07:21:36 JST


日野です。
ヤマケンさんの以下の部分にだけ反応いたします。

YamaKen wrote:
> ヤマケンです。
> 
> - key press/releaseの正確な取り扱いの実現
> - 操作コマンドのキー入力からの分離
> - 物理キー、論理キー、キャラクタコードの分離
>   * 変則配列キーボードのより良いサポート
>   * かな入力への根本的対応
> - 複数キーの同時押し(chord)の認識
>   * 親指シフト入力方式への対応
> - マルチストロークの認識
>   * 修飾キーの1回押しによる前置修飾(sticky modifier)
>   * アルファベットキーの2つ同時押しによるシフト修飾(combinational shift)
> 
> 
> これにより可能になる機能の一例として、combinational shift(仮称) 
> を紹介します(主にSKK向け)。多分前例は無いと思っていますが、同様
> の機能をご存知の方はお教え頂けるとありがたいです。
> 
> 例:  rを押す → uを押す → r,uを離す(順不同) → "Ru"が入力される
> 
> これは複数のアルファベットキーの同時押しと、押した順番の検出が必
> 要になるので現在のuimの枠組では実現不可能です。
> 

私は、電話機など組み込み機器のキー入力操作周りのソフトをかなり手
掛けた事があります。もちろん皆さんがやっておられるような高水準言
語ではなく、アセンブリー言語(通称アセンブラ)でですがアルゴリズム
は、応用できると思います。

これらの要求を満たすには『イベント駆動型状態マシン』と呼ばれるタ
イプのソフト的な仕組みを導入することで可能だと思います。

これについて簡単に説明しますと「キー入力」などの事象を「イベント」
として処理し、そのイベントによってソフトの「状態」が変わっていく
ような仕組みです。

各「状態」が待っている「イベント」のテーブルを持っていて、そのテ
ーブルを参照することで、小さなタスクを実行し、別の「状態」へと移
動する。この仕組みは cron - crontab の関係を想像していただければ
よく分かると思います。

また、興味があるようでしたらご連絡ください。時間が許す限りお付き
合いしたいと思います。

-- 
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/                                  _/
_/  日野 直哉                       _/
_/                                  _/
_/  http://www1.kcn.ne.jp/~n_hino/  _/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/




Anthy-dev メーリングリストの案内
Back to archive index