秀丸エディタマクロで IME オンオフを制御するための imestate imeswitch imeregisterword の挙動
秀丸エディタ上で「こんな時は IME をオフにしたい」的なことがしたかったので、一通り調べてみた。
状態取得: imestate
日本語入力中なら 1、そうでなければ 0 を返す。
例:
message ""+str(imestate);
状態変更: imeswitch
半角全角キーを一回押した時のような挙動。
つまり日本語入力モードと英文字入力モードをトグルで切り替える。
単語登録: imeregisterword
使用中の IME の単語登録ダイアログを出す。
上記を踏まえて
imeswitch はトグルなので、そのままでは 常に IME をオフにする、またはオンにすることができない。一工夫必要。
IME をオフにする
#IME_ON = 1; #IME_OFF = 0; if(imestate == #IME_ON){ imeswitch; }
オンだったら switch してオフにする。オフだったら何もしない。これで常にオフになる。
IME をオンにする
#IME_ON = 1; #IME_OFF = 0; if(imestate == #IME_OFF){ imeswitch; }