vkCodes module
Maps between Windows virtual key (vk) codes and NVDA key names. These names are used when binding keyboard gestures to scripts.
- vkCodes.byCode = {(1, None): 'leftMouse', (2, None): 'rightMouse', (3, None): 'break', (4, None): 'middleMouse', (8, None): 'backspace', (9, None): 'tab', (12, None): 'numpad5', (13, False): 'enter', (13, True): 'numpadEnter', (16, None): 'shift', (17, None): 'control', (18, None): 'alt', (19, None): 'pause', (20, None): 'capsLock', (24, None): 'IMEFinalMode', (27, None): 'escape', (28, None): 'IMEConvert', (29, None): 'IMENonconvert', (30, None): 'IMEAccept', (31, None): 'IMEModeChange', (32, None): 'space', (33, False): 'numpad9', (33, True): 'pageUp', (34, False): 'numpad3', (34, True): 'pageDown', (35, False): 'numpad1', (35, True): 'end', (36, False): 'numpad7', (36, True): 'home', (37, False): 'numpad4', (37, True): 'leftArrow', (38, False): 'numpad8', (38, True): 'upArrow', (39, False): 'numpad6', (39, True): 'rightArrow', (40, False): 'numpad2', (40, True): 'downArrow', (41, None): 'select', (42, None): 'print', (43, None): 'execute', (44, None): 'printScreen', (45, False): 'numpadInsert', (45, True): 'insert', (46, False): 'numpadDelete', (46, True): 'delete', (47, None): 'help', (91, None): 'leftWindows', (92, None): 'rightWindows', (93, None): 'applications', (95, None): 'sleep', (96, None): 'numLockNumpad0', (97, None): 'numLockNumpad1', (98, None): 'numLockNumpad2', (99, None): 'numLockNumpad3', (100, None): 'numLockNumpad4', (101, None): 'numLockNumpad5', (102, None): 'numLockNumpad6', (103, None): 'numLockNumpad7', (104, None): 'numLockNumpad8', (105, None): 'numLockNumpad9', (106, None): 'numpadMultiply', (107, None): 'numpadPlus', (108, None): 'numpadSeparator', (109, None): 'numpadMinus', (110, None): 'numpadDecimal', (111, None): 'numpadDivide', (112, None): 'f1', (113, None): 'f2', (114, None): 'f3', (115, None): 'f4', (116, None): 'f5', (117, None): 'f6', (118, None): 'f7', (119, None): 'f8', (120, None): 'f9', (121, None): 'f10', (122, None): 'f11', (123, None): 'f12', (124, None): 'f13', (125, None): 'f14', (126, None): 'f15', (127, None): 'f16', (128, None): 'f17', (129, None): 'f18', (130, None): 'f19', (131, None): 'f20', (132, None): 'f21', (133, None): 'f22', (134, None): 'f23', (135, None): 'f24', (144, None): 'numLock', (145, None): 'scrollLock', (160, None): 'leftShift', (161, None): 'rightShift', (162, None): 'leftControl', (163, None): 'rightControl', (164, None): 'leftAlt', (165, None): 'rightAlt', (166, None): 'browserBack', (167, None): 'browserForward', (168, None): 'browserRefresh', (169, None): 'browserStop', (170, None): 'browserSearch', (171, None): 'browserFavorites', (172, None): 'browserHome', (173, None): 'volumeMute', (174, None): 'volumeDown', (175, None): 'volumeUp', (176, None): 'mediaNextTrack', (177, None): 'mediaPrevTrack', (178, None): 'mediaStop', (179, None): 'mediaPlayPause', (180, None): 'launchMail', (181, None): 'launchMediaPlayer', (182, None): 'launchApp1', (183, None): 'launchApp2'}
Maps vk codes to key names. The dict key is a tuple of (vkCode, extended), where vkCode is the vk code and extended is a bool specifying whether the key is an extended key. If extended is C{None}, the extended state of the key is irrelevant to the mapping; i.e. the name is the same in either case. The dict value is the key name. @type: dict with keys of tuple(int, bool) and values of str
- vkCodes.byName = {'alt': (18, None), 'applications': (93, None), 'backspace': (8, None), 'break': (3, None), 'browserback': (166, None), 'browserfavorites': (171, None), 'browserforward': (167, None), 'browserhome': (172, None), 'browserrefresh': (168, None), 'browsersearch': (170, None), 'browserstop': (169, None), 'capslock': (20, None), 'control': (17, None), 'delete': (46, True), 'downarrow': (40, True), 'end': (35, True), 'enter': (13, False), 'escape': (27, None), 'execute': (43, None), 'f1': (112, None), 'f10': (121, None), 'f11': (122, None), 'f12': (123, None), 'f13': (124, None), 'f14': (125, None), 'f15': (126, None), 'f16': (127, None), 'f17': (128, None), 'f18': (129, None), 'f19': (130, None), 'f2': (113, None), 'f20': (131, None), 'f21': (132, None), 'f22': (133, None), 'f23': (134, None), 'f24': (135, None), 'f3': (114, None), 'f4': (115, None), 'f5': (116, None), 'f6': (117, None), 'f7': (118, None), 'f8': (119, None), 'f9': (120, None), 'help': (47, None), 'home': (36, True), 'imeaccept': (30, None), 'imeconvert': (28, None), 'imefinalmode': (24, None), 'imemodechange': (31, None), 'imenonconvert': (29, None), 'insert': (45, True), 'launchapp1': (182, None), 'launchapp2': (183, None), 'launchmail': (180, None), 'launchmediaplayer': (181, None), 'leftalt': (164, None), 'leftarrow': (37, True), 'leftcontrol': (162, None), 'leftmouse': (1, None), 'leftshift': (160, None), 'leftwindows': (91, None), 'medianexttrack': (176, None), 'mediaplaypause': (179, None), 'mediaprevtrack': (177, None), 'mediastop': (178, None), 'middlemouse': (4, None), 'numlock': (144, None), 'numlocknumpad0': (96, None), 'numlocknumpad1': (97, None), 'numlocknumpad2': (98, None), 'numlocknumpad3': (99, None), 'numlocknumpad4': (100, None), 'numlocknumpad5': (101, None), 'numlocknumpad6': (102, None), 'numlocknumpad7': (103, None), 'numlocknumpad8': (104, None), 'numlocknumpad9': (105, None), 'numpad1': (35, False), 'numpad2': (40, False), 'numpad3': (34, False), 'numpad4': (37, False), 'numpad5': (12, None), 'numpad6': (39, False), 'numpad7': (36, False), 'numpad8': (38, False), 'numpad9': (33, False), 'numpaddecimal': (110, None), 'numpaddelete': (46, False), 'numpaddivide': (111, None), 'numpadenter': (13, True), 'numpadinsert': (45, False), 'numpadminus': (109, None), 'numpadmultiply': (106, None), 'numpadplus': (107, None), 'numpadseparator': (108, None), 'pagedown': (34, True), 'pageup': (33, True), 'pause': (19, None), 'print': (42, None), 'printscreen': (44, None), 'rightalt': (165, None), 'rightarrow': (39, True), 'rightcontrol': (163, None), 'rightmouse': (2, None), 'rightshift': (161, None), 'rightwindows': (92, None), 'scrolllock': (145, None), 'select': (41, None), 'shift': (16, None), 'sleep': (95, None), 'space': (32, None), 'tab': (9, None), 'uparrow': (38, True), 'volumedown': (174, None), 'volumemute': (173, None), 'volumeup': (175, None)}
Maps key names to vk codes. This is the inverse of the L{byCode} map except that names are all lower case to make case insensitive lookup easier. @type: dict with keys of str and values of tuple(int, bool)