日本語入力で変換前文字のキャレット移動が「空行」と通知される
概要を「ATOK 2015 への対応状況」から変更しました。
ATOK 2015 に限らず、Microsoft Office IME などでも同じ現象が起きているようです。
セットアップ
再現手順
期待される動作
実際の挙動
2014.3jp は日本語 IME に関する作業を行っており、これらの変更の影響と思われます。
以下、関連がありそうなチケット
チケット #31358 日本語入力(TSF)で文節ごとの候補の読み上げ
https://sourceforge.jp/ticket/browse.php?tid=31358&group_id=4221
チケット #34110 複数文節の日本語変換をした直後にすべての文節を通知する仕様の検討
https://sourceforge.jp/ticket/browse.php?group_id=4221&tid=34110
チケット #34120 Firefox や Excel で日本語入力のプリエディット文字が不正確に通知される
https://sourceforge.jp/ticket/browse.php?group_id=4221&tid=34120
日本語版 2015.1jp だと「日本語版の文字入力拡張」が無効でも「空行」問題が起きる。
本家版 2015.1 と ATOK2015 の組み合わせでは「空行」にならず、変換前文字が通知される。
修正作業
[jpbeta 6682ae8] fixes ti34933 announce caret movement of IME pre-edit string (before translation) 1 file changed, 15 insertions(+), 3 deletions(-)
本件は、少なくとも 2015.2jp での修正として、日本語版の既存の実装をメンテナンスします。
ですが、そろそろ本家版をベースに実装をやり直した方がよさそう。。
関連チケット #28859 本家inputMethods実装の日本語対応
いただいた報告:
「あいうえお」と打って、 変換前に左矢印キーで移動した場合、 最初の「お」だけは読まない。 あとは一文字ずつ読む。 右矢印キーで戻った時は、「お」も読んでいる。
「あいうえお」の後で左矢印を押したときの「お」が通知されない問題を修正。
To git@github.com:nvdajp/nvdajp.git 0490239..73ff99d jpbeta -> jpbeta
メモ:本家の inputComposition.py reportNewText() までイベントは送られているが、 「あいうえお」に「お」が含まれていて newText として判定されない。 そこで forceNewText というオプションをこのメソッドに追加して特別扱いしている。
ATOK 2015 でのキャレットの動きについて個人的に問い合わせをいただいています。
こちらではまだ詳細を確認していないのですが、なにかお気づきのことがあればお知らせください。