2006/08/10(木)Apple Pro KeyboardをWindowsで使用する

[album:keyboard:prokey_1.jpg]
Apple Pro Keyboardを安価で入手した為、それに先立ちWindowsでPro Keyboardを使用する為のTipsを纏めることにします。

はじめに

Apple Pro KeyboardはUSBキーボードですので、Windowsに接続すると通常のUSBキーボード同様に認識します。
しかし、Windows用キーボード(109日本語キーボード)とApple Pro Keyboardでは発生するスキャンコード(キーコード)が異なる為、そのままでは利用が困難です。
これらの違いを吸収し、Windowsで利用できるようにすることが今回の話題です。

109日本語キーボードとの相違点

Apple Pro Keyboardと一般的な109日本語キーボードとの相違点を調べました。

両方にあるがキー表記が異なるもの

Scancode109日本語キーボードApple Pro Keyboard
38左Alt左Option
B8右Alt右Option
DB左Win左Command
DC右Win右Command
0EBackSpaceDelete(Enter上)
D2Inserthelp

どちらかにしか存在しないキー

Scancode109日本語キーボードApple Pro Keyboard
29半角/全角-
7B無変換-
79変換-
70ひらがな-
E05Dアプリケーションキー-
E037PrintScreen-
46ScrollLock-
E11D45Pause-
72?*1-英数
71?*2-かな
5D-F13
5E-F14
5F-F15
E02E-VolUp
E030-VolDown
E020-Mute
6C-CD排出
59-Num =
7E-Num ,

*1 : showkeyではキーが離された場合のみ取得可能、0x72

*2 : showkeyではキーが離された場合のみ取得可能、0x71

カスタマイズ

日本語キーボードとしてApple Pro Keyboardを使用する場合にネックになるのがまず、「半角/全角」キーです。
当初、これをApple Pro Keyboardの「英数」キーに割り当てようと考えていたのですが、Windows上ではスキャンコードの取得すら困難でした。
Linux上で$showkey -sでようやく取得できたのですが、押下時のみ取得可能で、キーを離したときにはスキャンコードが発生しない特殊なキーでした。
まぁ、なんとか取得できたので早速試してみたのですが、玉砕という結果となりました。
#「かな」キーも同様

仕方がないのでWinキーとして使用可能な左Appleキーを「全角/半角」に、右Appleキーを「変換」キーに変更し、またF13~F15はPrtScrなどに変更します。
纏めると以下のような感じになります。

変更前変更後
左Apple全角/半角
右Apple変換
F13PrintScreen
F14ScreenLock
F15Pause
Num =BackSpace
Num ,,

尚、VolUp,VolDn,Muteはデフォルトのままで使用可能、Windowsでは存在意義が解らないCD排出キーは今回は割り当てていません。

変更方法

WinNT系統であればレジストリをたらたら書いていくことになるのですが、ここでは深くは解説しません。

今回の場合、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layoutの下にScancode Mapを作成し、以下の様な値を持たせます。

00 00 00 00 00 00 00 00 08 00 00 00 29 00 5B E0
79 00 5C E0 37 E0 5D 00 46 00 5E 00 45 E0 5F 00
0E 00 59 00 33 00 74 00 00 00 00 00

このキーを追加したら再起動して、入れ替わっているはずです。入れ替わってなければ、設定を見直して下さい。

尚、Apple Pro Keyboardを利用しなくなり、キー割り当てを元に戻したい場合は追加したレジストリのエントリを削除し、再起動して下さい。

FAQ

  1. Q.「英数」キーや「かな」キーに割り当てられないの?
    A.私の技量ではWindows上では割り当てることができませんでした。何かいい方法があれば教えて下さい。
  2. Q.「英数」キーとかにどうしても割り当てたいんだけど
    A.有償ですが、Apple KeyboardをWindowsで利用する為のドライバがあります。(シェアウェア)
    興味のある方はこちらをご覧ください。