VMware Fusion のゲスト OS でいつの間にか Caps Lock が有効になってしまう場合の対処法

VMware Fusion

Mac ユーザになってから、VMware Fusion は、バージョン 3、4、5と使用して。Yosemite の時に、Parallels Desktop 10 に乗り換えて。El Capitan で、再び VMware Fusion に戻ってきたんでですけど。

以前から、ゲスト OS の Caps Lock がいつの間にやら有効になるという、わりとイラっとくる問題が存在していたんですけど。VMware Fusion 8 でもこの問題、健在でした。
Parallels Desktop ではこんなことないので、本来 VMware Fusion の 側で解決できるはずの問題ではなかろうかとも思われますが。

現状ではそうなっていないので、対策してみました。

いつの間にやらゲスト OS の Caps Lock が有効になる症状

Mac capslock key

ゲスト OS が、Mac であっても Windows であっても関係なく起きています。

「caps lock」キーを押して有効にしたわけではないので、キーボードの Caps Lock キーのランプは消えているにもかかわらず、ゲスト OS では、いつの間にやら Caps Lock が有効になっていて、意図せずに大文字が入力されてしまいます。
この時、ホストの Mac の Caps Lock は、もちろん無効のままです。

知らぬ間に有効になっているから、パスワードの入力とかでエラーになります。
Caps Lock が有効になっていると Shift キーのアイコンが表示されて、警告してくれるけど。そもそも Caps Lock を有効にした覚えがまるでないから、だいたい 2回ぐらいエラーになってから気がついて。イラっときます。

気がついてから「なんだよ、勝手に Caps Lock 有効になりやがって」と、「caps lock」キーを押すと。ゲスト OS では、Caps Lock は無効になりますが。今度は操作しているゲスト OS では無効なのに、キーボードの「caps lock」キーのランプが点灯します。
そして ホストの Mac の Caps Lock は当然、有効になります。

ホスト OS と、ゲスト OS の状態があべこべだし、「caps lock」キーのランプも今の状態を反映していません。

非常に気持ちが悪い。

しかしおかしくなる前に自分で Caps Lock を有効にした場合など、場合によってはホスト OS と ゲスト OS の Caps Lock の状態は一致しているし、「caps lock」キーのランプもあるべき姿になっています。
もはや今どっちになっているのか、入力するまでまるでわかりません。

いつの間にやらゲスト OS の Caps Lock が有効になる原因

Karabiner

いろいろ試してみた結果。どうやら「英数」のキーコードを送信すると、ゲスト OS で、Caps Lock が有効になってしまうみたいです。

私の Mac は US キーボードなので、そもそも「英数」キーはないんですけど。Karabiner (旧 KeyRemap4MacBook) というアプリを使って、左右の Command キーを単独で打った時に、左が「英数」、右が「かな」として機能するようにしています。

その点は、よければこちらを参考にしてください。

US キーボードの Mac ユーザー必須アプリ KeyRemap4MacBook が バージョンアップ & Karabiner に名称変更

2014.07.10

そこで、Karabiner のこの設定を無効にして試してみたら、勝手に Caps Lock が有効にならなくなりました。原因は「英数」のキーコードで間違いなさそうです。
しかしそうなると JIS キーボードの場合は、絶対にこの現象が起きるということか?

これは、VMware 側で対処して欲しいな。

いつの間にやらゲスト OS の Caps Lock が有効にならないようにする

この現象も Karabiner で解決できました。

本当にありがたいアプリです。

Karabiner vmware fusion

Karabiner で「Change command keys to lazy command keys」を有効にすると解決できます。

ありがたや。

たくさん設定できる項目があるので、検索窓に「vmware command」と入れて検索したり、「Change command keys to lazy command keys」をコピって入れてもらうと、すぐに見つかると思います。

この設定は「Prevent unintended windows menu popup if you changed command-letters to control-letters」と説明されているので。
本来は、VMware 用に Command を Control に置き換える設定を有効にした時に、Command や Control キーで意図せず Windows メニューが開くのを防ぐための機能だと思いますが、Command キーの動作を Karabiner で変更しているという共通点があったので、試してみたところ、これで解決できました。

まとめ

量販店とかでは JIS キーボードの Mac しか売っていないし。Apple Store や Apple Online Store で購入する場合も、わざわざ自分で変更しなければ、JIS キーボードになるので。JIS キーボードの Mac ユーザの方が多いような気がするのですが、「英数」キーと相性が悪いのはいただけないですね。

文字入力とか問題なく出来て当たり前の部分だから、できれば Fusion の方で問題が起きないようにしていただけるとありがたい。Parallels ではこんな問題ないですから。

VMWare Fusion 8

VMware Fusion 8 に Windows 10 をインストールしてみた

2016.02.01

VMware Fusion 8 に Mac OS X 10.11 El Capitan をゲスト OS としてインストールする手順

2016.01.27
スポンサーリンク

ABOUTこの記事をかいた人

IT は、Apple、Google が特に好き。 音楽は、The Stone Roses、Johnny Marr が特に好き。 好きな飲み物は、ビール。 好きな食べ物は、ラーメン。 以上です。