「Apple Wireless Keyboard を CentOS 6.3 (Linux) で使用する」の補足です。
4. Apple Wireless Keyboard のキーコード (keycode)
CentOS 6.3 (64 bit) に Apple Wireless Keyboard を接続したときの、Mac 専用キーのキーコードを調べました。
4.1. キーコード (keycode) の取得
キーコードは "xev" アプリを使用して取得します。
取得例: コントロールキーを押したときのイベント情報
$ xev
...
KeyPress event, serial 44, synthetic NO, window 0x4600001,
root 0x1c3, subw 0x0, time 6953593, (80,132), root:(991,1181),
state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
...
KeyPress event, serial 44, synthetic NO, window 0x4600001,
root 0x1c3, subw 0x0, time 6953593, (80,132), root:(991,1181),
state 0x0, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
赤字がキーコード (keycode)、青字が発生イベントです。
4.2. xkb_keycodes の取得
現在使用している "xkb_keycodes" を確認します。
$ setxkbmap -print
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete+japan" };
xkb_symbols { include "pc+jp(OADG109A)+inet(evdev)+terminate(ctrl_alt_bksp)" };
xkb_geometry { include "pc(pc104)" };
};
xkb_keymap {
xkb_keycodes { include "evdev+aliases(qwerty)" };
xkb_types { include "complete" };
xkb_compat { include "complete+japan" };
xkb_symbols { include "pc+jp(OADG109A)+inet(evdev)+terminate(ctrl_alt_bksp)" };
xkb_geometry { include "pc(pc104)" };
};
"xkb_keycodes" の値から、/usr/share/X11/xkb/keycodes/evdev がキーコードとして使用されていることが分かります。
/usr/share/X11/xkb/keycodes/evdev
// translation from evdev scancodes to something resembling xfree86 keycodes.
default xkb_keycodes "evdev" {
minimum = 8;
maximum = 255;
# Added for pc105 compatibility
<LSGT> = 94;
<TLDE> = 49;
<AE01> = 10;
<AE02> = 11;
<AE03> = 12;
<AE04> = 13;
...
~ 以下、略 ~
default xkb_keycodes "evdev" {
minimum = 8;
maximum = 255;
# Added for pc105 compatibility
<LSGT> = 94;
<TLDE> = 49;
<AE01> = 10;
<AE02> = 11;
<AE03> = 12;
<AE04> = 13;
...
~ 以下、略 ~
4.3. Mac 専用キーのキーコード一覧
Apple Wireless Keyboard の Mac 専用キーのキーコード (keycode) 一覧です。
比較用に Happy Hacking Keyboard Lite 2 の発生イベントも参考として乗せています。
物理キー | keycode | 発生イベント | ||
---|---|---|---|---|
Apple Wireless Keyboard | 【参考】 HHKB Lite 2 | |||
control | 37 | <LCTL> | Control_L | Control_L |
command (左) | 133 | <LWIN> | Super_L | - |
command (右) | 134 | <RWIN> | Super_R | - |
option (左) | 64 | <LALT> | Alt_L | Alt_L |
option (右) | 108 | <RALT> | - | Alt_R |
caps | 66 | <CAPS> | Eisu_toggle | - |
delete | 22 | <BKSP> | BackSpace | - |
119 | <DELE> | - | Delete | |
BS | 22 | <BKSP> | - | BackSpace |
英数 | 130 | <HNGL> | Hangul_Hanja | - |
かな | 131 | <HJCV> | Hangul | - |
半角/全角 | 49 | <TLDE> | - | Zenkaku_Hankaku |
無変換 | 102 | <MUHE> | - | Muhenkan |
変換 | 100 | <HENK> | - | Henkan_Mode |
eject | 169 | <I169> | XF86Eject | - |