概要
私はmacが特別好きというわけではありませんが、USキー配列のmacbook proが研究室から貸与されたため使用しています。必要に迫られてBootcampでwindows10をインストールしたのですが、JIS配列のwindowsにはある「全角/半角」に相当するキーがなくて困りました。そこで頑張ってCommandキー(windowsでは「ウィンドウズキーとして動作」)に該当機能を割り当てて所望の動作が得られたので作業手順を書きます。なるべく余計なソフトの導入はしたくないのでwindowsの標準機能(IMEの設定+軽いレジストリいじり)だけで実現できる方法を採用しました。
やったこと
caps lock
にcontrol
を割り当て
本題からはそれますが、よくやられてるこれもやっておきました。不便なので。キーの交換ではなくてcaps lock
を消しました。やり方はレジストリにキーボードのスキャンコードのマップを記述する方法で、http://www.shin-tan.com/swapKey で詳しく解説されています。
command
に日本語・英数切り替え機能を割り当て
Bootcampのwindowsではalt
+`
で日本語・英数の切り替えができますが、キーを二つ押さなければいけない上にその二つの同時押しは極めてやりづらいので使用機会の皆無なcommandキーだけで日本語・英数の切り替えができるようにしました。Macではcommand+spaceで日本語・英数の切り替えをするのでこの割り当てが指の動作的にも近くていいかなと思いました。
以下の二段階の手続きを経ます。
-
F2
に日本語・英数切り替え機能を割り当て -
command
にF2
を割り当て
F2
に日本語・英数切り替え機能を割り当て
MSのQ&Aを参考にIMEの設定を変更することでF2
キーに対して日本語・英数切り替え動作を割り当てることができます。F2
以外にもctrl
+space
などにも割り当て可能で実際そのように設定している人もいるようですが、私はVim等でctrl
+space
を使うのでF2
へ割り当てました。
command
にF2
を割り当て
ctrl
をcaps lock
に割り当てるのと同じ方法でできます。caps lock
->ctrl
と共存させる場合は二つのキーマッピングを同じレジストリキー(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout
)に記述する必要があります。具体的にやったことは以下のコードが書かれた.regファイルを実行して再起動するだけです。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,03,00,00,00,1d,00,3a,00,3c,00,5b,e0,00,00,00,00
これでcaps lock
->ctrl
とcommand
(左側)->F2
のマッピングができます。
ちなみに各キーのスキャンコードはhttp://softwaretechnique.jp/OS_Development/Tips/scan_code_set1.html で確認できます。今回割り当てたcommand
キーはスペースキーの左側のやつです。
追記
使っているうちにスペースキーの左側のcommand
をctrl
に割り当てることでMacとの動作の互換性を高めたくなりました(command+Vでコピーとかがしたい)。そこで日本語・英数切り替えはスペースキーの右側のcommand
で行うことにしました。その場合の.regファイルは以下のようになります。IMEの設定でF2に日本語・英数切り替えを割り当てるところは変わりません。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,04,00,00,00,1d,00,3a,00,3c,00,5c,e0,1d,00,5b,e0,00,00,00,00
-
caps lock
->ctrl
-
command
(スペースの左)->ctrl
-
command
(スペースの右)->F2
のマッピングが設定されます(再起動で反映)。