KeyRemap4MacBookで自分好みにキーをリマッピング
こんにちは、熊谷です。
Macを使っている上でキーマップをカスタマイズするために欠かせないソフトといえば、KeyRemap4MacBookです。これがないと私はMacを思い通りに使えないと言っても過言ではありませ ん。そんなKeyRemap4MacBook、500種類以上の様々なキーのリマッピングが出来ると言うことで、そのままの状態でもほぼ思い通りにキーをカスタマイズすることが出来ます。
しかし、こんなに種類があっても個人的にこれがこう出来ると良いのにとちょっとおもったりもします。ということで、カスタマイズです!
そんなことで、私が行いたいのはYen(\)のリマップです。それだけならこのKeyRemap4MacBookで対応しているんですが、このリマップをX11上では無効にしたいという、「X11上では無効になるYen(\)のリマップ」を追加します。ちなみにMacではYenマークとバックスラッシュは別物になっているので、このリマップがないといろいろ不便です。でも、X11ではXmodmapで
keycode 101 = backslash bar yen bar
としているの、KeyRemap4MacBookのリマップは無効にしたい。ということで先の「X11上では無効になるYen(\)のリマップ」が欲しくなってくると言うことになります。
で、それを実現するのに必要なものはKeyRemap4MacBookのソースコードとXcodeです。
http://pqrs.org/macosx/keyremap4macbook/source.html.ja
KeyRemap4MacBookに自分好みの設定を追加するにはfiles/prefpane/checkbox.xmlに設定を加えコンパイルし直してインストールし直せばOKです。
<item>
<name>Remap Yen(\) Key not X11</name>
<list>
<item>
<name>JIS Yen(\) to Backslash(\) not X11</name>
<sysctl>remap.jis_yen2backslash_notX11</sysctl>
<not>VIRTUALMACHINE, X11</not>
<autogen>--KeyToKey-- KeyCode::JIS_YEN, KeyCode::VK_JIS_BACKSLASH</autogen>
</item>
</list>
</item>
こんな感じで設定を追加します。<sysctl>にはユニークな名を<not>にはこのリマップを適用しないアプリケーションを記述します(このアプリケーション名については、src/core/bridge/bridge.hppに記述され ています。ここに記載されていないものでも、src/core/server/server.cppの該当部分と併せて追記すれば自由に出来るのではないかなぁと)。
そんなことで、checkbox.xmlに記述したらあとはコンパイル
% make clean all
するとパッケージができあがるので、あとは普段通りそのパッケージをインストールすると完了です。
KeyRemap4MacBookの設定画面に追加した項目が表示されていると思います。
簡単に自分好みのキーマップを追加できるKeyRemap4MacBook、是非使ってみてはいかがでしょうか。