/ 最近 .rdf 追記 編集 設定 本棚

脳log[20100326] TSF関連再読



2010年03月26日 (金)

最終更新: 2010-03-28T06:40+0900

TSF関連再読

最初のリンク先の「余談その 1 - 誰がプリエディットを描画しているか?」で説明されているように、未確定文字列を IMEに表示してもらうアプリケーションと自分で描画するアプリケーションが存在する。メモ帳とサクラエディタは前者。ワードパッドと Firefoxは後者。全然意識してなかったけど、確かに Firefoxなどでは確定前の文字列によってその後ろの文字列が押し流されていく。また、テキストを選択した状態で日本語を入力し始めた場合の動作も異なっていて、Firefoxやワードパッドでは入力をキャンセルしたとしても最初に選択されていた文字列が消えてしまう。確定前の文字列がアプリケーションの状態を変更することがあるのに全然気づいてなかった。マウスクリックによって文字列の挿入位置を確定直前に変更することもできなくて、未確定文字列が確定されてしまうだけ。こんなにも使い勝手がちがうとは(全然気にしてなかったけど)。

 Google日本語入力

たなかゆう……で「田中優美清春香菜」「田中優美清秋香菜」が出てくるのが強みだねえ。2ch語や四字熟語のもじりなどが上位にきて間違いを助長されると困るけど。

Windows XP SP3 + Opera10.10 + Google日本語入力 = Operaクラッシュの件(Google日本語入力をインストールしたところ、Operaが起動できなくなりました。 - Google 日本語入力ヘルプ)で触れられていたが、Google日本語入力は TSFでいうところの Text Serviceとして動いていて IMM32に直接は対応していないらしいので、TSFベースの文脈依存変換のテストに使えるかと思ってインストールしたのだが Google日本語入力に文脈依存変換はないみたい。少なくとも(実装方法が似てそうな)再変換機能は確実にないらしく、いくつも要望があがっている。

再変換は使わないからいいんだけどこっちの方、「『半角/全角』で日本語入力をオフにした際、それまでの未確定文字を全て消したい - Google 日本語入力ヘルプ」「IMEをオフにしたとき、変換確定していない文字を消去できるようにして欲しい - Google 日本語入力ヘルプ」「変換確定前の半角/全角キー押下によるキャンセル動作 - Google 日本語入力ヘルプ」この一つの要望だけはかなえてもらわないと使えない。

 MSDN

Parameters

(省略)

acpEnd [in]
Specifies the ending character position. If this parameter is 1, then return all text in the text store.

(省略)

Remarks

(省略)

If acpEnd is -1, then it should be handled as if set at the end of the stream. Otherwise, it will be greater than or equal to zero.

なんで 1?最初の一文字を取得したいときはどうすれば?と思ったけど、-1の間違いだよね。びっくりさせる。