summaryrefslogtreecommitdiff
path: root/lulua/keyboard.py
diff options
context:
space:
mode:
Diffstat (limited to 'lulua/keyboard.py')
-rw-r--r--lulua/keyboard.py130
1 files changed, 65 insertions, 65 deletions
diff --git a/lulua/keyboard.py b/lulua/keyboard.py
index 0a7e2e6..c9d3adb 100644
--- a/lulua/keyboard.py
+++ b/lulua/keyboard.py
@@ -157,72 +157,72 @@ _buttonToKeyman = {
'Fr_ctrl': 'RCTRL',
}
-# button to symbolic windows scancode usable in keyboard.c
-# see windows header kbd.h (#define TXX _EQ(YY))
+# button windows scancode. See Keyboard Scan Code Specification Revision 1.3a
+# (published in 2000) from the Windows Platform Design Notes for example.
_buttonToWinScancode = {
- 'Bl1': 'T29',
- 'Bl2': 'T02',
- 'Bl3': 'T03',
- 'Bl4': 'T04',
- 'Bl5': 'T05',
- 'Bl6': 'T06',
- 'Bl7': 'T07',
- 'Br6': 'T08',
- 'Br5': 'T09',
- 'Br4': 'T0A',
- 'Br3': 'T0B',
- 'Br2': 'T0C',
- 'Br1': 'T0D',
- 'Br_bs': 'T0E',
- 'Cl_tab': 'T0F',
- 'Cl1': 'T10',
- 'Cl2': 'T11',
- 'Cl3': 'T12',
- 'Cl4': 'T13',
- 'Cl5': 'T14',
- 'Cr7': 'T15',
- 'Cr6': 'T16',
- 'Cr5': 'T17',
- 'Cr4': 'T18',
- 'Cr3': 'T19',
- 'Cr2': 'T1A',
- 'Cr1': 'T1B',
- 'CD_ret': 'T1C',
- 'Dl_caps': 'T3A',
- 'Dl1': 'T1E',
- 'Dl2': 'T1F',
- 'Dl3': 'T20',
- 'Dl4': 'T21',
- 'Dl5': 'T22',
- 'Dr7': 'T23',
- 'Dr6': 'T24',
- 'Dr5': 'T25',
- 'Dr4': 'T26',
- 'Dr3': 'T27',
- 'Dr2': 'T28',
- 'Dr1': 'T2B',
- 'El_shift': 'T2A',
- 'El1': 'T56',
- 'El2': 'T2C',
- 'El3': 'T2D',
- 'El4': 'T2E',
- 'El5': 'T2F',
- 'El6': 'T30',
- 'Er5': 'T31',
- 'Er4': 'T32',
- 'Er3': 'T33',
- 'Er2': 'T34',
- 'Er1': 'T35',
- 'Er_shift': 'T36',
- 'Fl_ctrl': 'T1D',
- 'Fl_win': 'X5B',
- 'Fl_alt': 'T38',
- 'Fl_space': 'T39',
- 'Fr_space': 'T39',
- 'Fr_altgr': 'X38',
- 'Fr_win': 'X5C',
- 'Fr_menu': 'X5D',
- 'Fr_ctrl': 'X1D',
+ 'Bl1': (0x29, ),
+ 'Bl2': (0x02, ),
+ 'Bl3': (0x03, ),
+ 'Bl4': (0x04, ),
+ 'Bl5': (0x05, ),
+ 'Bl6': (0x06, ),
+ 'Bl7': (0x07, ),
+ 'Br6': (0x08, ),
+ 'Br5': (0x09, ),
+ 'Br4': (0x0A, ),
+ 'Br3': (0x0B, ),
+ 'Br2': (0x0C, ),
+ 'Br1': (0x0D, ),
+ 'Br_bs': (0x0E, ),
+ 'Cl_tab': (0x0F, ),
+ 'Cl1': (0x10, ),
+ 'Cl2': (0x11, ),
+ 'Cl3': (0x12, ),
+ 'Cl4': (0x13, ),
+ 'Cl5': (0x14, ),
+ 'Cr7': (0x15, ),
+ 'Cr6': (0x16, ),
+ 'Cr5': (0x17, ),
+ 'Cr4': (0x18, ),
+ 'Cr3': (0x19, ),
+ 'Cr2': (0x1A, ),
+ 'Cr1': (0x1B, ),
+ 'CD_ret': (0x1C, ),
+ 'Dl_caps': (0x3A, ),
+ 'Dl1': (0x1E, ),
+ 'Dl2': (0x1F, ),
+ 'Dl3': (0x20, ),
+ 'Dl4': (0x21, ),
+ 'Dl5': (0x22, ),
+ 'Dr7': (0x23, ),
+ 'Dr6': (0x24, ),
+ 'Dr5': (0x25, ),
+ 'Dr4': (0x26, ),
+ 'Dr3': (0x27, ),
+ 'Dr2': (0x28, ),
+ 'Dr1': (0x2B, ),
+ 'El_shift': (0x2A, ),
+ 'El1': (0x56, ),
+ 'El2': (0x2C, ),
+ 'El3': (0x2D, ),
+ 'El4': (0x2E, ),
+ 'El5': (0x2F, ),
+ 'El6': (0x30, ),
+ 'Er5': (0x31, ),
+ 'Er4': (0x32, ),
+ 'Er3': (0x33, ),
+ 'Er2': (0x34, ),
+ 'Er1': (0x35, ),
+ 'Er_shift': (0x36, ),
+ 'Fl_ctrl': (0x1D, ),
+ 'Fl_win': (0xe0, 0x5B, ),
+ 'Fl_alt': (0x38, ),
+ 'Fl_space': (0x39, ),
+ 'Fr_space': (0x39, ),
+ 'Fr_altgr': (0xe0, 0x38, ),
+ 'Fr_win': (0xe0, 0x5C, ),
+ 'Fr_menu': (0xe0, 0x5D, ),
+ 'Fr_ctrl': (0xe0, 0x1D, ),
}
class Button: