80 lines
2.6 KiB
Python
80 lines
2.6 KiB
Python
import sys
|
|
from pynput import keyboard
|
|
|
|
__all__ = ['kbdmap']
|
|
|
|
kbdmap = {
|
|
0xff08: keyboard.Key.backspace,
|
|
0xff09: keyboard.Key.tab,
|
|
0xff0d: keyboard.Key.enter,
|
|
0xff1b: keyboard.Key.esc,
|
|
0xff63: keyboard.Key.insert if hasattr(keyboard.Key, "insert") else None,
|
|
0xffff: keyboard.Key.delete,
|
|
0xff50: keyboard.Key.home,
|
|
0xff57: keyboard.Key.end,
|
|
0xff55: keyboard.Key.page_up,
|
|
0xff56: keyboard.Key.page_down,
|
|
0xff51: keyboard.Key.left,
|
|
0xff52: keyboard.Key.up,
|
|
0xff53: keyboard.Key.right,
|
|
0xff54: keyboard.Key.down,
|
|
0xffbe: keyboard.Key.f1,
|
|
0xffbf: keyboard.Key.f2,
|
|
0xffc0: keyboard.Key.f3,
|
|
0xffc1: keyboard.Key.f4,
|
|
0xffc2: keyboard.Key.f5,
|
|
0xffc3: keyboard.Key.f6,
|
|
0xffc4: keyboard.Key.f7,
|
|
0xffc5: keyboard.Key.f8,
|
|
0xffc6: keyboard.Key.f9,
|
|
0xffc7: keyboard.Key.f10,
|
|
0xffc8: keyboard.Key.f11,
|
|
0xffc9: keyboard.Key.f12,
|
|
0xffca: keyboard.Key.f13,
|
|
0xffcb: keyboard.Key.f14,
|
|
0xffcc: keyboard.Key.f15,
|
|
0xffcd: keyboard.Key.f16,
|
|
0xffce: keyboard.Key.f17,
|
|
0xffcf: keyboard.Key.f18,
|
|
0xffd0: keyboard.Key.f19,
|
|
0xffd1: keyboard.Key.f20,
|
|
0xffe1: keyboard.Key.shift_l,
|
|
0xffe2: keyboard.Key.shift_r,
|
|
0xffe3: keyboard.Key.ctrl_l,
|
|
0xffe4: keyboard.Key.ctrl_r,
|
|
0xffe7: None, # "KEY_MetaLeft"
|
|
0xffe8: None, # "KEY_MetaRight"
|
|
#0xffe9: keyboard.Key.cmd_l,
|
|
0xffe9: keyboard.Key.alt,
|
|
0xffea: keyboard.Key.alt_gr, # "KEY_AltRight"
|
|
0xff14: keyboard.Key.scroll_lock if hasattr(keyboard.Key, "scroll_lock") else None,
|
|
0xff15: keyboard.Key.print_screen if hasattr(keyboard.Key, "print_screen") else None, # "KEY_Sys_Req"
|
|
0xff7f: keyboard.Key.num_lock if hasattr(keyboard.Key, "num_lock") else None,
|
|
0xffe5: keyboard.Key.caps_lock,
|
|
0xff13: keyboard.Key.pause if hasattr(keyboard.Key, "pause") else None,
|
|
0xffeb: keyboard.Key.cmd_r, # "KEY_Super_L"
|
|
0xffec: keyboard.Key.cmd_r, # "KEY_Super_R"
|
|
0xffed: None, # "KEY_Hyper_L"
|
|
0xffee: None, # "KEY_Hyper_R"
|
|
0xffb0: None, # "KEY_KP_0"
|
|
0xffb1: None, # "KEY_KP_1"
|
|
0xffb2: None, # "KEY_KP_2"
|
|
0xffb3: None, # "KEY_KP_3"
|
|
0xffb4: None, # "KEY_KP_4"
|
|
0xffb5: None, # "KEY_KP_5"
|
|
0xffb6: None, # "KEY_KP_6"
|
|
0xffb7: None, # "KEY_KP_7"
|
|
0xffb8: None, # "KEY_KP_8"
|
|
0xffb9: None, # "KEY_KP_9"
|
|
0xff8d: None, # "KEY_KP_Enter"
|
|
0x002f: "/", # KEY_ForwardSlash
|
|
0x005c: "\\", # KEY_BackSlash
|
|
0x0020: keyboard.Key.space, # "KEY_SpaceBar"
|
|
0xff7e: keyboard.Key.alt_gr, # altgr, at least on a mac (?)
|
|
#0xfe03: keyboard.Key.alt_l,
|
|
0xfe03: keyboard.Key.cmd_l,
|
|
}
|
|
|
|
if sys.platform == "darwin":
|
|
kbdmap[0xffe2] = keyboard.Key.shift
|