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-オン/オフ |
Windows - Google 日本語入力
タスクトレイのアイコンからプロパティを開き、[一般]-[キー設定]-[キー設定の選択]の編集ボタンをクリック。設定を以下のように変更。直接入力は複数あるが、デフォルト設定なら原則Zenkaku/Hankakuを置き換えていけば良い。
モード | 入力キー | コマンド |
---|---|---|
変換前入力中 | Ctrl Space | IME を無効化 |
変換中 | Ctrl Space | IME を無効化 |
入力文字なし | Ctrl Space | IME を無効化 |
直接入力 | Ctrl Space | IME を有効化 |
Windows - Eclipse
[ウィンドウ]-[設定]を開き、[キー]の設定を以下のように変更。
コマンド | バインディング |
---|---|
コンテンツ・アシスト | Shift+Space |
Mac - Karabiner-Elements
Karabiner-Elementsをインストールし、左Ctrlキーと左Cmdキーの入れ替えを行う。但し、リモートデスクトップも含めてしまうと、リモートデスクトップでのコピー&ペーストが◇ボタンとなってしまう。そのため、リモートデスクトップは対象から除外する。
~/.config/karabiner/assets/complex_modifications/配下に以下のファイルを作成後、Karabiner-Elementsを起動し、Complex modificationsから設定を行う。
product_id
はHHKBのモデルに合わせて書き換えること。
{
"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$"
]
}
]
}
]
}
]
}