Mayu IME modifier

窓使いの憂鬱IME関係モディファイヤについては、下記が参考になります。
http://jisx6004.client.jp/mayu2.html

モディファイヤの注意点
(中略)
key Hyphen = Semicolon
key Semicolon = Hyphen

さて、では早速IMEをonにして「 ; 」を押してみます。ばっちり「 ー 」が出ました。ではこのまま確定せずに続けて押してみましょう・・・・きっと「 ー;;;;; 」となると思います。

もうお分かりでしょうが暗黙の設定で「 *IL-~IC- 」となっているために、1打鍵目はこの条件に当てはまる(IMEはonでもoffでもいい。ただし変換中ではない)ので期待通りキーが入れ替わったのですが、2打鍵目は「 IL-IC- 」(IMEがonで、かつ変換中)であるために条件に当てはまらなくなったのです。 正しくは

key IL-*IC-Hyphen = Semicolon
key IL-*IC-Semicolon = Hyphen

あるいは

key IL-*IC- =      #1
key Hyphen = Semicolon
key Semicolon = Hyphen

"「変更できます。"」とマニュアルにありますが、変更した場合がこれ(#1)です。

ここでびっくりしたのは、例えばグローバルにkey IL-*IC- =と、IME状態について敢えて指定すると、IMEがonでないときには何も指定していないことになってしまう。
したがって、IMEがonでない場合には何もkey設定がなされていないのと同じ状態になってしまう。
考えてみれば、そのように指定したわけで、そうなるのが当然なのだが、IME設定をしない場合には、デフォルトでIMEがonの状態について設定されている為、IMEに設定したときも通常状態について設定がなされたような気持ちになってしまう。
両方でkey変換がなされる為には、
key semicolon = hyphen
key IL-*IC-semicolon = hyphen
key hyphen = semicolon
key IL-*IC-hyphen = semicolon
としないといけないと気付きました。