チケット #28526

日本語IMEのモードを通知する

登録: 2012-05-26 22:16 最終更新: 2012-11-27 20:43

報告者:
担当者:
(未割り当て)
チケットの種類:
状況:
完了
コンポーネント:
マイルストーン:
優先度:
5 - 中
重要度:
5 - 中
解決法:
受領
ファイル:
なし

詳細

IMEの日本語On・Off時の読み上げに関して、以下の改良パッチをご提案いただきました。

http://bazaar.launchpad.net/~misono/nvdajp/jp2012.2/revision/5204

  • フックの仕方を確実にウインドウハンドルを取得しIME制御ハンドルを取得できるよう修正
  • On/Offという文字列では聞き取りにくいためPC-Talkerと同等に日本語変換・変換停止に変更

さっそく確認をしました:

  • 英語キーボード:「変換停止」「日本語変換」と交互に読み上げる。また、日本語変換をオンにしたときに Microsoft IME の入力モード「英数」「ひらがな」を読み上げる
  • 日本語キーボード:変化なし

リリース版にマージする前に、以下の検討を行いたいと思います。

(1) モード番号24と25の他にもモード番号があるので、追加を行う。

出典 http://d.hatena.ne.jp/morakana/20080213/1202876561

 0 = かな入力 半角英数
 3 = かな入力 半角カナ
 8 = かな入力 全角英数
 9 = かな入力 全角ひらがな
11 = かな入力 全角カタカナ
16 = ローマ字入力 半角英数
19 = ローマ字入力 半角カタカナ
24 = ローマ字入力 全角英数
25 = ローマ字入力 全角ひらがな
27 = ローマ字入力 全角カタカナ

(2) 日本語キーボードにおいて「半角全角キーの単独押し」「ALTキーと半角全角キーの同時押し」の両方で動作を確認する。

(3) Microsoft IME と ATOK 2012 の両方で動作を確認する。

(4) Windows XP アプリケーション、 Windows 7 x64 アプリ、Windows 7 x86 アプリで動作を確認する。

(5) チケット28155「日本語入力で文節移動後の候補読み上げ」の改良が容易になるように C++ と Python の処理の分担の見直しを行う。

チケットの履歴 (6 件中 3 件表示)

2012-05-26 22:16 更新者: nishimoto
  • 新しいチケット "日本語IMEのモードを通知する" が作成されました
2012-05-26 23:10 更新者: nishimoto
コメント

日本語キーボードでの検証と報告が不十分だったので補足します。

  • 半角全角キーの単独押し、ALTとの同時押しの両方で「日本語変換」「変換停止」とキーエコーされる。
  • 半角全角とALTと同時押しの場合は「日本語変換」に続いて「ひらがな」「英数」のモード通知が行われる。
  • 半角全角キーの単独押しの場合は「日本語変換」のみでモード通知は行われない。

テスト環境は Windows 7 x64 のメモ帳のみです。

本チケットは「英数」「ひらがな」などの通知を行う改良について主に扱うこととします。

キーエコーの表現の変更、英語キーでのIMEオンオフ通知については、本チケットとは分けて検討します。

2012-05-27 22:06 更新者: nishimoto
コメント

西本の betterInput ブランチで以下の更新を行いました。

lp:~nishimotz/nvdajp/betterInput rev 4314

nvdajpime からのコールバックで日本語 IME の切り替えを通知するのではなく、もともと NVDA が keyboardHandler.py で行っている低レベルキーフックに処理を追加するようにしてみました。

キーイベントで日本語の有効・無効を判断するのではなく、misono さんの方法で状態を取得し、カナ入力およびローマ字入力における入力モードの通知も追加しました。

キー入力のイベントそのものはブロックせず、IME_ON および IME_OFF を強制的に行う処理はしていません。

Windows 7 で x86 と x64 のアプリいくつかで検証したところ、日本語キーボードに関しては安定して動いています。ATOK 2012 や Google IME でも問題ありません。

英語キーボードおよび Windows XP については、これから検証を行います。

なお、このブランチではチケット28155の作業も行われており、32ビットアプリのみ、日本語入力中の文節カーソル移動などを考慮した読み上げを行います。

http://sourceforge.jp/ticket/browse.php?group_id=4221&tid=28155

nvdajpime でキーボードフックをする必要がなくなったら、不要なコードを整理します。

2012-06-04 23:35 更新者: nishimoto
コメント

betterInput ブランチの動作検証ではありませんが、 2012.2jp-beta3 に関するご報告をいただきました。

  • 日本語変換の通知が逆(Word 2007):音声と点字で「変換停止」と通知されたとき日本語入力が可能になります。反対に「日本語変換」と通知されたときにはアルファベットしか入力できません。

テスト項目のひとつとしてこのチケットにコメント追加します。

2012-06-25 13:03 更新者: nishimoto
  • コンポーネント(未割り当て) から IME に更新されました
  • 解決法なし から 受領 に更新されました
  • マイルストーン(未割り当て) から 2012.3jp (完了済み) に更新されました
コメント

jpdev120625 にいままでの作業をマージしました。

2012-11-27 20:43 更新者: nishimoto
  • 状況オープン から 完了 に更新されました
  • チケット完了時刻2012-11-27 20:43 に更新されました

添付ファイルリスト

添付ファイルはありません

編集

このチケットにコメントを追加するには、ログインが必要です » ログインする