LoginSignup
5
4

More than 3 years have passed since last update.

Win/MacでHHKB(英語配列)のキー操作の統一を考える

Last updated at Posted at 2021-01-21

WindowsとMacでHHKBを共用するため、キー操作の統一を考える。

利用環境

HHKBのモデルはHHKB Professional HYBRID Type-S 英語配列。今回は以下の3台でHHKBを共用する前提とする。職場のWindowsノートに制約がある。

  • 職場のWindowsノート。Microsoft IMEを使用。ルール上、自由にソフトウェアをインストールできない。テレワークで、Macからリモートデスクトップでログインする。また、統合開発環境Eclipseを使用する。
  • 自宅のWindowsデスクトップ。Google 日本語入力を使用。自由にソフトウェアのインストールが可能。
  • 自宅のMacBook Pro。Google 日本語入力を使用。自由にソフトウェアのインストールが可能。また、ランチャーAlfredを使用。

検討結果

Macに合わせて左右の◇ボタンをそれぞれ英数/かなに割り当てたかったが、職場のWindowsノートにAutoHotKey等のソフトウェアのインストールが許可されていない。そのため、以下のような形に落ち着いた。

  • IMEオン/オフをCtrl+Spaceに統一。
  • コピー&ペースト等のショートカットを(左Cmdキーと左Ctrlキーの混在ではなく)左Ctrlキーに統一。
  • ショートカットが衝突するMacのSpotlight検索は諦め、Alfredで代替。
  • ショートカットが衝突するEclipseのコンテンツ・アシストはShift+Spaceに割り当て。
  • HHKBのディップスイッチはWinモードに設定するが、接続先をWin->Macに切り替えた際はFn+Ctrl+MでMacモードに切り替え。Mac->Winに切り替えた際はFn+Ctrl+WでWinモードに切り替え。

設定詳細

HHKB - ディップスイッチ

Winモードに設定するが、接続先切り替えの度にショートカットでWinモード(Fn+Ctrl+W)/Mac モード(Fn+Ctrl+M)を切り替える。SW6はお好みで。

SW 設定 内容
SW1 ON Win
SW2 OFF
SW3 ON Delete='BS'
SW4 OFF Left◇='Left◇'
SW5 OFF ◇='◇', Alt='Alt'
SW6 ON Power Saving Disabled

Windows - Microsoft IME

タスクトレイのアイコンから設定を開き、[キーとタッチのカスタマイズ]-[キーの割り当て]の設定を以下のように変更。

項目 設定値
各キーに好みの機能を割り当てる オン
Ctrl + Space IME-オン/オフ

スクリーンショット 2021-01-22 191127-2.png

Windows - Google 日本語入力

タスクトレイのアイコンからプロパティを開き、[一般]-[キー設定]-[キー設定の選択]の編集ボタンをクリック。設定を以下のように変更。直接入力は複数あるが、デフォルト設定なら原則Zenkaku/Hankakuを置き換えていけば良い。

モード 入力キー コマンド
変換前入力中 Ctrl Space IME を無効化
変換中 Ctrl Space IME を無効化
入力文字なし Ctrl Space IME を無効化
直接入力 Ctrl Space IME を有効化

スクリーンショット 2021-01-22 190938-2.png

Windows - Eclipse

[ウィンドウ]-[設定]を開き、[キー]の設定を以下のように変更。

コマンド バインディング
コンテンツ・アシスト Shift+Space

Mac - Karabiner-Elements

Karabiner-Elementsをインストールし、左Ctrlキーと左Cmdキーの入れ替えを行う。但し、リモートデスクトップも含めてしまうと、リモートデスクトップでのコピー&ペーストが◇ボタンとなってしまう。そのため、リモートデスクトップは対象から除外する。
~/.config/karabiner/assets/complex_modifications/配下に以下のファイルを作成後、Karabiner-Elementsを起動し、Complex modificationsから設定を行う。
product_idはHHKBのモデルに合わせて書き換えること。

hhkb.json
{
    "title": "For HHKB",
    "rules": [
        {
            "description": "Change left_command to left_control for HHKB. (Except RDC)",
            "manipulators": [
                {
                    "type": "basic",
                    "from": {
                        "key_code": "left_command"
                    },
                    "to": {
                        "key_code": "left_control"
                    },
                    "conditions": [
                        {
                            "type": "device_if",
                            "identifiers": [
                                {
                                    "vendor_id": 1278,
                                    "product_id": 33
                                }
                            ]
                        },
                        {
                            "type": "frontmost_application_unless",
                            "bundle_identifiers": [
                                "^com\\.microsoft\\.rdc\\.macos$"
                            ]
                        }
                    ]
                }
            ]
        },
        {
            "description": "Change left_control to left_command for HHKB. (Except RDC)",
            "manipulators": [
                {
                    "type": "basic",
                    "from": {
                        "key_code": "left_control"
                    },
                    "to": {
                        "key_code": "left_command"
                    },
                    "conditions": [
                        {
                            "type": "device_if",
                            "identifiers": [
                                {
                                    "vendor_id": 1278,
                                    "product_id": 33
                                }
                            ]
                        },
                        {
                            "type": "frontmost_application_unless",
                            "bundle_identifiers": [
                                "^com\\.microsoft\\.rdc\\.macos$"
                            ]
                        }
                    ]
                }
            ]
        }
    ]
}
5
4
1

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
5
4