KeyRemap4MacBookでCtrl-[をEscapeに割り当てたら,Ctrl-@がEscapeに割当たっていた

あ…ありのまま 今 起こった事を話すぜ!

『KeyRemap4MacBookでCtrl-[をEscapeに割り当てたら,Ctrl-@がEscapeに割当たっていた.』

な… 何を言ってるのか わからねーと思うが おれも何をされたのかわからなかった…(ry



てなかんじにKeyRemap4MacBookがおかしい動作をしてたんだけど,ソースコード弄ったら意図する動作になったので,メモ.ちなみにMacBook with JIS keyboardな環境での話デス.

どうやら,KeyRemap4MacBookが想定している[(BRACKET_LEFT)キーのキーコードと実際に[キーを押したときに送出されるキーコードが違っている(@のキーコードになっている),のが問題っぽい.

なので,KeyRemap4MacBook5.1.0のソースコードを展開した中にある,src/core/kext/keycode.hppを弄ってBRACKET_LEFTに対応するキーコードを変えてやる.

--- keycode.hpp.orig	2008-06-23 02:33:16.000000000 +0900
+++ keycode.hpp	2008-06-23 02:33:29.000000000 +0900
@@ -116,8 +116,8 @@
 
       SEMICOLON = 41,
       COMMA = 43,
-      BRACKET_LEFT = 33,
-      BRACKET_RIGHT = 30,
+      BRACKET_LEFT = 30,
+      BRACKET_RIGHT = 42,
       QUOTE = 39,
 
       F1 = 122,

これをmakeしてインストールしたら,ちゃんとCtrl-[でEscapeできるようになった.これでストレスなくvimperatorが使えそうだわ.

ちなみに,keycode.hppにおいて,ほかのキーについても実際のキーコードと一致してないのがあった.実はJIS配列なMacをちゃんと想定してないとか?手元にUS配列なMacがないのでよくわからんけど.