テンキーのシフト側も必ず確定文字で入力する
『窓使いの憂鬱』を使って、テンキーのシフト側によく使う記号を割り当てている。これは本来のテンキーの入力ではないので、かな入力の状態で入力すると、当然全角で入力されてしまう。
「50%」と入力する場合に、「50」は半角なのに「%」が全角なのは明らかに不自然。入力した後に変換などが必要になるのでは、せっかくのテンキー確定文字入力が台無しだ。
テンキーを普通に打つだけで「50%」と入力できるようにしたいなあ、と。
『窓使いの憂鬱』の「FUNCTION リファレンス」を見ていて思いついた。そうか、テンキーのシフト側を入力した瞬間にIMEをoffにしてしまえばいいんだ。
具体的にはこんな感じ。
これを、
key *IC-S-*NumAsterisk= ~S-*Semicolon
こうする。
key *IC-S-*NumAsterisk= &SetImeStatus(off) ~S-*Semicolon
これでテンキーでのシフト側を入力すれば自動的にIME offになるので、必ず確定文字で入力される。
『ATOK』のテンキー入力と違ってIMEがoffになったままになってしまうが、テンキーで入力するという時点でしばらく数字を入力するつもりなんだから、別に構わないでしょう。
これを応用すると、『MS-IME』でもテンキーの入力は必ず確定文字にする、とかもできますね。
ちなみにテンキーのシフト側の配置をどうしているかは「キーマップ原版」の「マイ設定」をご覧下さい。以前「ワンショットモディファイヤって素敵」で書いたとおり、[Num0]を[Num0&Shift]にしています。