Ticket #269 (assigned 不具合)

Opened 2 years ago

Last modified 2 years ago

MS IME 2003で漢字を入力していると、入力文字が反映されなくなる。

Reported by: anonymous Assigned to: horiguti (accepted)
Priority: major Milestone:
Component: UI Version: 3.00 (開発中)
Keywords: Cc:

Description

IMEをonにして文章などを入力している際、変換キーor確定キーを押したタイミングで入力文字列が消え、それ以後文字が入力できなくなることがあります。Ctrl-gを何回か押すと、mini-bufferにQUITと表示され、IMEをoff/onすることで復旧します。

発生条件は不明ですが、文章をある程度速く連続して入力している状態で発生する場合が多いです。r3996以前では発生したことはありません。

おそらく、#241にあるr3999の修正によるものと思いますが、当方の環境では、mini-bufferだけでなく、通常のバッファでも取りこぼしが発生するようです。(mw32-ime-cont-onをnilにすると、当方の環境ではそもそも漢字の入力ができません。)

環境は、r4003 (cygwinでcomplie)、WindowsXP SP2、MS Standard IME 2003、Pentium Mになります。

Attachments

Change History

2005年12月28日 03時11分30秒 changed by horiguti

  • owner set to horiguti.
  • status changed from new to assigned.

r4005 で (setq mw32-fep-switch-by-key-event t) として試していただけますか?

2005年12月29日 01時25分37秒 changed by anonymous

(setq mw32-fep-switch-by-key-event t)にしてr4010で試してみました。現時点では問題はないようです。

ただ、r4010にしても当方の環境ではmini-bufferで漢字入力した場合(iserachも含む)、入力文字の確定ができません(underlineがひかれたままで、C-gでしか抜けることができません)。

#263にある以下の式を評価した場合でも、同様に確定してもunderlineが引かれた状態のままとなります。(ちなみにその状態で適当な文字キーを入力し、BSを打つと最初に確定した文字列がバッファに反映されます。)

(concat (mw32-input-method ?h))<C-j>  ;; 'h'は半角

# 上記の確認は、(setq mw32-fep-switch-by-key-event t)でMeadow -qで行っています。

2006年01月04日 23時08分27秒 changed by anonymous

上(12/29/05)で、r4010では問題ないと報告しましたが、本日通常のバッファ(Mewのdraftバッファ)で入力文字が反映されない現象が再現しました。

2006年01月06日 00時48分02秒 changed by anonymous 2

同じく,r4010 で mini-buffer での日本語入力ができません.(setq mw32-fep-switch-by-key-event t) にしても変わりません.ただし,その状態で適当な文字キーを入力し,BS を打つと最初に確定した文字列が mini-buffer に反映されます.この現象の確認は meadow -q で行いました.

通常のバッファで日本語が確定できない現象は,r4002 で一度見られましたが r4010 にしてからは起こっていません.

当方の環境は,r4010 (Netinstall),WindowsXP SP2,MS Standard IME 2003,Pentium M になります.

2006年01月11日 18時51分01秒 changed by horiguti

リターンで確定しないという問題は r4005 で修正されていますが, この修正は meadow.el のものなので make bootstrap をしないと反映されません.

r4010 で make bootstrap をやっても変わらないでしょうか.

2006年01月14日 15時30分38秒 changed by anonymous

r4012でmake bootstrapからinstallしなおしたところ、mini-bufferで確定できるようになりました。ただ時々、IME onにした直後の文字を取りこぼすことがあるみたいです。

2006年02月11日 17時00分17秒 changed by anonymous

r4031では、mw32-fep-switch-by-key-eventがnilでもmini-bufferに漢字入力ができるようになりました。
ただ、mw32-fep-switch-by-key-eventがtでもnilでも、
・確定のタイミングと、次の文字の入力タイミングが連続した場合、たまにIMEで入力した文字がMeadowのバッファに反映されない。
・IME onと次の文字入力タイミングが連続した場合、たまにIME onした直後の文字がIMEにわたらない。
といったような、IMEの状態遷移時に文字を取りこぼすような事象が残っています。(nilの方が発生頻度は少ないですが。)

2006年03月02日 21時17分33秒 changed by anonymous

r4044で、IMEの状態遷移時のガードが入ったようでしたので、しばらく使用していましたが、以前よりは発生頻度は少なくなりましたが、やはりIMEへ文字が渡らない、確定した文字がバッファに反映されない事象が発生します。また、1回だけ文字がまったく入力できない状態が発生しました(この状態の場合、Ctrl+GでミニバッファにQUITと表示されますが、復旧しませんでした)。

当方の環境では、
・Ctrl-Sでi-searchを起動後すぐの状態
・default-frame-alistで(alpha . 85)と設定している状態で、バックにPowerPoint?を表示しているなど、再描画が頻繁に起こる状態
・スワップがおきていて重い状態
などで、IMEを起動し文字を入力した場合や確定しすぐに次の文字を入力した場合に、発生することが多いです。

2006年03月05日 01時53分02秒 changed by horiguti

私の環境では相当重くなっても普通に使っている分には取りこぼしの類そうは起きているように見えません. もっともキー入力を機械的に行うプログラムを使って無理やりコンスタントに20キー/秒くらいで入力するとかなりぼろぼろになりますが...

# 自分でやっておいてこういうのもアレなんですがやはりこの方式(アプリケーションから激しくIMEのON/OFFをやること)は無理っぽいですね. でも i-search ではこうでもしないとisearchらしく動いてくれないしな.. 困りましたね.

  • 文字の入力ができなくなるのはキー入力を横取りしているところが止まらなくなってしまうせいです. これはきちんととめて出るようにしたため直っていると思います.
  • キーの取りこぼしとうについてはさらに耐性を上げてみましたがなにせIMEが別プロセスで Meadowよりシステム側で動いてしまっているので完全な解決はシステムにフック(WindowsHook)でもかけない限り無理だと思います. .
  • 一部の文字(記号など)で候補の確定を行うと, その文字が次の入力に引き継がれずに消えてしまっていました. こ れは直しました.

後ほど commit します..

2006年03月18日 15時59分32秒 changed by anonymous

r4051でしばらく使ってみました(mw32-ime-cont-onはalwaysのままです)。

ほとんど取りこぼさなくなりましたが、

  • Meadowを起動後の最初のIME起動直後
  • 半透明フレームで再描画が頻繁に走っていると思われる状態でのIME状態遷移直後

の文字を取りこぼすことがあるようです。

# こんなことが発生するのは私の環境だけなのかな?

2006年03月20日 11時33分09秒 changed by anonymous

詳細なテキストサービスを使用していませんか?

IMEツールバー→プロパティ→互換性タブ→使用しないにチェック ナチュラルインプット等使用できなくなりますが、IME関係のアプリでトラブルの元凶は上記であることが多いです。

2006年04月01日 19時30分09秒 changed by anonymous

遅くなりましたが、設定についてご教示ありがとうございました。

確かに詳細なテキストサービスを使用していました。ナチュラルインプット等は使用していないので、詳細なテキストサービスを使用しないにしたところ、以前よりIMEへ遷移時の反応がよくなりました。(なんとなくIME入力関係が軽くなったような気がします。)

変更後も時々取りこぼしはおこりますが、以前に比べればほとんどきにならないぐらいですので、私個人的には十分な状態です。


Add/Change #269 (MS IME 2003で漢字を入力していると、入力文字が反映されなくなる。)




Change Properties
Action