2011年08月09日

VirtualBox+WinXP で OSXと同じショートカットを使いたい

 近頃はPCの性能が格段によくなっていて、仮想PCでもほとんどストレスなく利用できるようになってきている。
 実際、業務でのWindowsアプリの開発に MacBookPro+VirtualBox+WinXP+VisualStudio2008 を利用しているが、特に大きな問題もない。
 普段 Mac 使いの自分にとっては、むしろ、Windows 専用機で開発するよりも快適である。
 OSX Lion の Mission Control によるところも大きい。Spaces では「画面を切り替えよう」という意識があったのが Mission Contorl ではそういう意識すら持たなくていいくらいに自然に扱える。
 切り替えがシームレスで超高速であるため、「一覧して選択」よりも、どんどんスクロールしたほうが快適な感じがしている。

 毎日 3kg超の MacBook Pro 17 を自宅〜オフィス間、持ち運ぶことが若干の問題ではあるが……。次期 MacBook Pro が Air なみの軽量化を図る、という噂もあったりして、少し期待している。2kg切るような MacBook Pro17 があれば、どれほど世界が変わることか。

ショートカット・キー

 さて、自分にとって OSX と Windows を使い分けていて一番ストレスになるのは、ショートカットキーの修飾キーの違いだ。
 OSX では "Command" キー。Windows では "Control" キー である。
 ある程度のスパンで使い分ける場合は、頭を切り替えるのもそう難しくはないし、特に問題にしていなかったのだが、VirtualBox+XP を使い始めると、あたかも Mac のアプリのように Windows アプリが動作するため、混乱しはじめてしまった。
 VisualStudio を使っていて、メールを OSXのSafari で書くとか、アクション単位で切り替える必要がある。Windowsアプリと OSXアプリの間で コピー&ペースト する場合など、その最たるものだ。
 "Control+C" でコピーして "Command+V" でペースト、とかやっていると、気が狂いそうになってくる。当然、ミスタッチも増える。

 なんとかならないものか、と思っていたが、すごく簡単に解決してしまった。

 Windows 側で "Control" と "Command" のキーの入れ替えをすればいい、とはわかっていたし、それを実行できるユーティリティもあるのだが、"Command" キーは VirtualBox が ホストキーとして使っていて、Windows まで届かないからできない。
 と、勝手に思い込んでいたのだけど、良く考えてみれば、ホストキーは変更できるはずである。
 環境設定を見れば、ちゃんと ホストキー の選択があった。これで解決だ。

WindowsでCommandキーをショートカット修飾に使う設定

まず、VirtualBox のホストキーを変更

Virtualboxpanel

 VirtualBox の 環境設定 から、ホストキー を変更する。
 この例では「右Command」に設定。

Windwosで キー設定を変更
 次に、VirtualBox+XP環境内で、適当なキー設定ユーティリティを使って 左Command を Control に設定する。
 ここでは "keyswap" というアプリを使った。keyswap は数年前からずっと使っているアプリで、特に問題が発生したこともない。

Keyswap

 「左Win」というのは 左 Command キーのこと。
 これで、Windows でも Command+C のようにショートカットを利用できるようになった。
 またひとつ、小さなストレスがなくなった。

安定性に配慮しよう

 なお、快適とはいえ VirtualBox のような仮想環境で 業務用の開発を行うことは、それなりのリスクを伴うことを知っておくべきだ。
 開発リソースは、仮想環境内ではなく 共有に出す、とか、失いたくないものは、リポジトリで管理する等の対策は、やっておこう。
 うちでは、「データ類はすべて共有ディスク」+「タイムマシンでバックアップ」+「外部リポジトリで管理」していて、万一なにかあっても、すぐに他のマシンで開発を継続できるようになっている。

 VirtualBox を使い始めて 1年くらいになるが、いまのところ HDDイメージを削除してしまった、という自分の大チョンボ以外で、起動できなくなるような問題にあたったことはない。そのミスも タイムマシン のおかげで 事無きを得ている。
 しかし、ある日突然、VirtualBox の XP が起動しなくなる、ということは 専用機でそれが起こるよりも、はるかに現実的なのも確か。それなりの対策はしておくべきだろう。


posted by tekniq at 09:39 | Comment(0) | TrackBack(0) | Mac