KeySnailで変換や無変換にキーを割り当てる

Firefoxの仕様変更で既に消えそうな雰囲気になっているKeySnailだけど実際Chromeとかを蹴散らして圧倒的に便利なので、今も使っているわけだけど、出来ないと勝手に思い込んでいた無変換とかへのキー割り当てが実は出来たらしいというのに気づいた。多分初期の頃は割り当てできなかったと思う。

無変換 <nonconvert>
変換   <convert>

C-c してから[無変換]を打ったら、Firefoxのしたの所に

C-c <nonconvert> is undefined

と表示されたので、おや?っと思ってキーバインドしてみたら普通に動いた。そしてちょっと調べてみたところ、下みたいな感じで色々なWindowsの日本語キーボードっぽいキーが割り当てれるようになっていたらしい。無変換と変換以外はあまり使いそうになかったから確認はしてないが、ポイントは<>で囲まないと駄目な所。

keyCode2Name: {
    0x15: "kana",
    0x19: "kanji",
    0x1C: "convert",
    0x1D: "nonconvert",
    0x1E: "accept",
    0x1F: "modechange",
    0x29: "select",
    0x2A: "print",
    0x2B: "execute",
    0x5B: "l_windows",
    0x5C: "r_windows"
},
keyName2Code: {
    kana:       0x15,
    hangeul:    0x15,
    hangul:     0x15,
    kanji:      0x19,
    hanja:      0x19,
    convert:    0x1C,
    nonconvert: 0x1D,
    accept:     0x1E,
    modechange: 0x1F,
    select:     0x29,
    print:      0x2A,
    execute:    0x2B,
    l_windows:  0x5B,
    r_windows:  0x5C
},

https://github.com/mooz/keysnail/commit/397cecd264437bcfaa0a4467f609e2785284b5f3

丁度C-mやC-jが両手キーボードに拘束されるので、マウスを右手に持った状態で左手だけでEnterが出来ないかとか思っていたんだけど、ゲームとかでお馴染みのC-e=Enterの設定はEmacs風だと上手く行かないしC-fで代替しているゲームもEmacs風だと→なので難しい。そこで早速この無変換をEnterに割り当てるのを試してみている所。実はM-WASDでFPS風にキー操作してM-EでEnterっていうのも有力なんだけど。その場合M-系の単語単位の移動がつぶれたりするのが微妙といえば微妙。