0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ずんだもん「MacでWinキーボードを快適に使いたい!Karabiner-Elements&Parallels設定奮闘記なのだ!」

Last updated at Posted at 2025-05-28

ずんだもん
「きりたん、MacでWindowsキーボード使ったら、Ctrl押したつもりがCommandで、コピーしたつもりが新規ウィンドウ開いちゃったのだ!これはもう"キーボード詐欺"なのだ!」

きりたん
「それは詐欺じゃなくて、ただの設定不足よ!今日はずんだもんの指をキーボード迷宮から救出する大作戦を決行するわよ!」

ずんだもん
「きりたん探偵、事件解決お願いするのだ〜!」

登場人物

Image 1 Image 2
  • ずんだもん:MacとParallelsでWindowsを使うOS両刀使いおじさん。MacMiniの便利さと仮想化Windowsの便利さをみんなに広めたいと思っている。

  • きりたん:ちょっと詳しい相棒。ずんだもんの質問にやさしく答えてくれる。

MacでWin用キーボードを使いたい!

1. 画面キャプチャをPrintScreenに

ずんだもん
「MacでWindows用の外付けキーボード使ってるんだけど、OPTION+SHIFT+4で画面キャプチャするのめんどいのだ。PrintScreenキーでキャプチャできないかな?」

きりたん
Karabiner-Elementsを使えば、PrintScreenキーにCommand+Shift+4を割り当てできるよ!」

image.png

2. Ctrlキーを統一

ずんだもん
「あと、CtrlとWinキーが逆で、コピペとか不便なのだ…」

きりたん
「CtrlキーとCommandキー(Winキー)を入れ替える設定を追加すれば、Windowsキーボードの感覚でMacショートカットが使えるよ!」

image.png

3. IMEの変換キーを統一

ずんだもん
「あとMacでもWindowsみたいに、半角/全角キーでIMEオン・オフをトグルしたいのだ!」

きりたん
「"半角/全角"キーをCtrl+Spaceに割り当てれば、IMEトグルができるよ。
ただし、このリマップはParallelsのWindowsにも伝わるから、VM利用時は無効化する条件(conditions)を付けよう!」

image.png

4. Parallels用の追加設定

ずんだもん
「Parallels VMのときだけリマップ無効化ってどういうことなのだ?」

きりたん
「Parallelsという仮想化ソフトに対してだけ、Karabiner-Elementsのリマップを無効化するということよ!こうしないとVM上で半角全角キーが効かなくなっちゃうのよ。」

Karabiner-Elements用スクリプト

Image 1 Image 2

きりたん
「以上をまとめたスクリプトがこれよ!Karabiner-Elementsの"Complex Modification"で設定してね!」

image.png

image.png

.json
{
    "description": "Custom Keyboard Remap for Mac with IME Toggle (Mac only, not in Parallels)",
    "manipulators": [
        // PrintScreenキーでMacの選択範囲キャプチャ(Command+Shift+4)を実行
        // Parallels(Windows VM)上では無効
        {
            "conditions": [
                {
                    "bundle_identifiers": [
                        "^com\\.parallels\\."
                    ],
                    "type": "frontmost_application_unless"
                }
            ],
            "from": { "key_code": "print_screen" },
            "to": [
                {
                    "key_code": "4",
                    "modifiers": ["command", "shift"]
                }
            ],
            "type": "basic"
        },

        // 左Ctrlキーを左Commandキーにリマップ(Macのみ有効、Parallelsでは無効)
        {
            "conditions": [
                {
                    "bundle_identifiers": [
                        "^com\\.parallels\\."
                    ],
                    "type": "frontmost_application_unless"
                }
            ],
            "from": { "key_code": "left_control" },
            "to": [{ "key_code": "left_command" }],
            "type": "basic"
        },

        // 左Commandキーを左Ctrlキーにリマップ(Macのみ有効、Parallelsでは無効)
        {
            "conditions": [
                {
                    "bundle_identifiers": [
                        "^com\\.parallels\\."
                    ],
                    "type": "frontmost_application_unless"
                }
            ],
            "from": { "key_code": "left_command" },
            "to": [{ "key_code": "left_control" }],
            "type": "basic"
        },

        // 右Ctrlキーを右Commandキーにリマップ(Macのみ有効、Parallelsでは無効)
        {
            "conditions": [
                {
                    "bundle_identifiers": [
                        "^com\\.parallels\\."
                    ],
                    "type": "frontmost_application_unless"
                }
            ],
            "from": { "key_code": "right_control" },
            "to": [{ "key_code": "right_command" }],
            "type": "basic"
        },

        // 右Commandキーを右Ctrlキーにリマップ(Macのみ有効、Parallelsでは無効)
        {
            "conditions": [
                {
                    "bundle_identifiers": [
                        "^com\\.parallels\\."
                    ],
                    "type": "frontmost_application_unless"
                }
            ],
            "from": { "key_code": "right_command" },
            "to": [{ "key_code": "right_control" }],
            "type": "basic"
        },

        // 半角/全角キー(grave_accent_and_tilde)でIMEオン・オフ(Ctrl+Spaceでトグル)
        // Macのみ有効、Parallelsでは無効
        {
            "conditions": [
                {
                    "bundle_identifiers": [
                        "^com\\.parallels\\."
                    ],
                    "type": "frontmost_application_unless"
                }
            ],
            "from": {
                "key_code": "grave_accent_and_tilde",
                "modifiers": { "optional": ["any"] }
            },
            "to": [
                {
                    "key_code": "spacebar",
                    "modifiers": ["left_control"]
                }
            ],
            "type": "basic"
        },

        // Insertキーでズーム機能(Option+Command+8)をトグル
        // Mac・Parallels両方で有効
        {
            "from": { "key_code": "insert" },
            "to": [
                {
                    "key_code": "8",
                    "modifiers": ["left_option", "left_command"]
                }
            ],
            "type": "basic"
        }
    ]
}

追記:
Windowsの拡大率のように200%をトグルする機能をInsertにバインドしました。

Parallelsで変換・無変換キーを使いたい

Image 1 Image 2

ずんだもん
「Macの問題点として、変換・無変換キーを認識しないのだ。でもParallelsのWindowsでも変換・無変換キーを使いたいのだ!カタカナとひらがなを一発変換できて便利なのだよ。」

きりたん
「それは確かに。でKarabiner-Elementsだけじゃ直接は無理。Mac側で特殊なショートカット(例:Ctrl+Shift+F9/F11)を送って、Windows側でAutoHotKeyを使って“変換”“無変換”に割り当てるのが定番だよ。」

image.png

.json
    // --- Parallels用:左Command単独押しでCtrl+Shift+F9(無変換代用) ---
    {
      "type": "basic",
      "from": { "key_code": "left_command", "modifiers": { "optional": ["any"] } },
      "to": [ { "key_code": "left_command" } ],
      "to_if_alone": [
        { "key_code": "f9", "modifiers": ["left_control", "left_shift"] }
      ],
      "conditions": [
        {
          "type": "frontmost_application_if",
          "bundle_identifiers": [
            "^com\\.parallels\\."
          ]
        }
      ]
    },

    // --- Parallels用:右Command単独押しでCtrl+Shift+F11(変換代用) ---
    {
      "type": "basic",
      "from": { "key_code": "right_command", "modifiers": { "optional": ["any"] } },
      "to": [ { "key_code": "right_command" } ],
      "to_if_alone": [
        { "key_code": "f11", "modifiers": ["left_control", "left_shift"] }
      ],
      "conditions": [
        {
          "type": "frontmost_application_if",
          "bundle_identifiers": [
            "^com\\.parallels\\."
          ]
        }
      ]
    },

キーボードをパススルーすれば解決?

ずんだもん
「AutoHotKeyを使えないような環境もあるのだ。その場合は、キーボードをVMにパススルーしたら、変換・無変換キーもそのまま使えるようになったのだ!」

きりたん
「そうそう!USBキーボードをパススルーすれば、物理的な日本語キーボードとしてWindowsに認識されるから、特殊キーもそのまま使えるよ。ただし、そのキーボードはMac側では使えなくなるから注意してね。」

image.png

ほか小ネタ

その1:ファンクションキーの注意

ずんだもん
「大変なのだ!キーボードをWindowsにパススルーしてからMacに戻したら、ファンクションキーが効かなくなっちゃったのだ…どうしたらいいのだ?」

きりたん
「それは困るわね。実は一部の外付けキーボードやKVMスイッチを接続・切断したとき、macOS側のキーボード設定がリセットされることがあるのよ。システム設定の『キーボード』から“F1、F2などのキーを標準のファンクションキーとして使用”をもう一度確認してみてね!」

image.png

その2:Parallels側のキーボードプロファイルは「汎用」にする

きりたん
「あと、Parallels側の設定は「Windows」といった親切なテンプレートがあるんだけど、Kalabiner-Elementsで設定ずみだから、これはオフにするのがいいよ。」

「「汎用」を選べば空のプロファイルだから、いちばん分かりやすいわね!」

image.png

ずんだもん
「なるほどなのだ!教えてくれてありがとうなのだ!」

まとめ

Image 1 Image 2

ずんだもん
「MacとWindowsでキーボードを快適に使い分けるには、Karabiner-Elementsの条件付きリマップと、Parallelsのプロファイルを"汎用"にしてからVMテンプレート化しておくのが便利なのだ!」

きりたん
「その通り!テンプレート化したらあとはVMファイルを配るだけだから便利だわね。でも設定忘れがちだからQiitaに書いておくわよ!(笑)」

ずんだもん
「やったのだ!これでもうキーボード詐欺に遭わないのだ!今度はマウスが『右クリックのつもりが左クリック』って詐欺してきたら、また相談するのだ!」

きりたん
「それはもうマウスの故障よ...!でも何でも解決してあげるから、また困ったことがあったら呼んでね〜」

ずんだもん
「きりたん探偵事務所、今日も事件解決なのだ〜!」

参考リンク

利用キャラクター

本記事で使用しているキャラクター画像の著作権は、それぞれの権利者に帰属します。
非商用目的での利用に基づき掲載しています。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?