窓使いの憂鬱で SKKIME の Sticky Shift を実現する
通俗的な意味で Sticky Shift とは、SKK(や SKKIME)において、変換モードに入るために押しづらいシフトキーに替えて、";"(セミコロン)を使うこと指す*1。単にシフトキーをセミコロンに置き換えるだけではなく、セミコロンを一度押すと、シフトのロックがかかる状態になる。これによって SKK の操作性は格段に向上する。
さて本家 SKK の場合、Sticky Shift は Emacs Lisp で設定できる。では SKKIME はどうやって実現するか。色々な方法があると思うが、ここではキー・カスタマイズ・ソフトの「窓使いの憂鬱」を使った例を紹介する。
key IL-*IC-Semicolon = &EditNextModifier(M0-S-)
key M0-S-Semicolon = ~S-Semicolon
上記のコードを解説する。「窓使いの憂鬱」の基本構文は以下の通り。
key A = B
これで「A を押した際、B が表示される」の意味になる。
一行目は、IME がオンであり (IL)、かつ変換中ではない (*IC) 状態でセミコロン (Semicolon) を押した場合、次のキーに対してシフトキーのモディファイヤ (&EditNextModifier(M0-S-)) を適用する設定。
二行目は、セミコロン自体を入力するための設定。"~"(ティルダ)は、モディファイヤを離す命令。これで ":"(コロン)が表示されてしまうのが防げる。
上記を窓使いの憂鬱の設定ファイル (.mayu) の記載すればよい。
以下の方式よりも、こちらの方がいいような気がする。
ZOETROPEの日記
SKKIMEでsticky-shiftする