HOME / コンピュータTips / MacOSX / VMwareFusionだけKeyRemap4MacBookを無効に

Date: 2012/11/22 |  このエントリーをはてなブックマークに追加  |  Tags: MacOSX, VMwareFusion, KeyRemap, 無効

VMwareFusionだけKeyRemap4MacBookを無効にする

MacでRemapKeyを使うと、キーボードのレイアウトを変えたり、日本語変換のON/OFFのキーを変えたりと、いろんなキーの設定ができる。

しかしVMware Fusionをつかって、その上でその他のOSを利用すると、ゲストOSにおかしなキーが伝達されることになってしまう。

私の場合は日本語のON/OFFを右のCommandキー(Command_R)で行っている。Command_Rを押した瞬間に、日本語のON/OFFキーのイベントを発効しているのだが、ホストOSのCommand_Rを別のイベントに差し替わることによって、ゲストOSにCommand_Rが伝達されないことになる。これだとうまくないので、VMwareだけ設定を変える。

実際の設定を調べる

現在設定しているものがこれ。この設定をVMwareの時になくしたい。

スクリーンショット 2012-11-22 23.52.08.png

基本的にはVMwareの話は下記のサイトに書いてあるのでこれを熟読する。

デフォルトのキーマップは、/Library/org.pqrs/KeyRemap4MacBook/app/KeyRemap4MacBook.app/Contents/Resources/以下に入っているのでこれを探すと、/Library/org.pqrs/KeyRemap4MacBook/app/KeyRemap4MacBook.app/Contents/Resources/include/checkbox/languages/japanese.xmlに入っていることがわかった。

探し方はこんな感じで探す。grep内の文字列は、上のキャプチャーダイアログにあった文字列。

find /Library//org.pqrs/KeyRemap4MacBook -type f | xargs -n4 grep "Use Command_R as KANA/EISUU" 

ここで探すと、次のようなデータがある。

     <item>
       <name>Use Command_R as KANA/EISUU (toggle)</name>
       <identifier>remap.jis_unify_kana_eisuu_to_commandR</identifier>
       <autogen>--KeyToKey-- KeyCode::COMMAND_R, KeyCode::VK_JIS_TOGGLE_EISUU_KANA</autogen>
     </item>

これを元に書き換える。~/Library/Application Support/KeyRemap4MacBook/private.xmlの中にこれを入れる。

 <item>
   <name>Use Command_R as KANA/EISUU (toggle) without VMwareFusion</name>
   <identifier>remap.jis_unify_kana_eisuu_to_commandR_wo_virtual</identifier>
   <not>VIRTUALMACHINE</not>
   <autogen>--KeyToKey-- KeyCode::COMMAND_R, KeyCode::VK_JIS_TOGGLE_EISUU_KANA</autogen>
 </item>
name
適当な説明用文字列
identifier
ラベル。
not
VIRTUALMACHINEと入れる
autogen
実際に発効するキーコード

こんな感じ。