実際、業務での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 のホストキーを変更
VirtualBox の 環境設定 から、ホストキー を変更する。この例では「右Command」に設定。
Windwosで キー設定を変更
次に、VirtualBox+XP環境内で、適当なキー設定ユーティリティを使って 左Command を Control に設定する。ここでは "keyswap" というアプリを使った。keyswap は数年前からずっと使っているアプリで、特に問題が発生したこともない。
「左Win」というのは 左 Command キーのこと。
これで、Windows でも Command+C のようにショートカットを利用できるようになった。
またひとつ、小さなストレスがなくなった。
安定性に配慮しよう
なお、快適とはいえ VirtualBox のような仮想環境で 業務用の開発を行うことは、それなりのリスクを伴うことを知っておくべきだ。開発リソースは、仮想環境内ではなく 共有に出す、とか、失いたくないものは、リポジトリで管理する等の対策は、やっておこう。
うちでは、「データ類はすべて共有ディスク」+「タイムマシンでバックアップ」+「外部リポジトリで管理」していて、万一なにかあっても、すぐに他のマシンで開発を継続できるようになっている。
VirtualBox を使い始めて 1年くらいになるが、いまのところ HDDイメージを削除してしまった、という自分の大チョンボ以外で、起動できなくなるような問題にあたったことはない。そのミスも タイムマシン のおかげで 事無きを得ている。
しかし、ある日突然、VirtualBox の XP が起動しなくなる、ということは 専用機でそれが起こるよりも、はるかに現実的なのも確か。それなりの対策はしておくべきだろう。