def hotkey(*args, **kwargs): """Performs key down presses on the arguments passed in order, then performs key releases in reverse order. The effect is that calling hotkey('ctrl', 'shift', 'c') would perform a "Ctrl-Shift-C" hotkey/keyboard shortcut press. Args: key(s) (str): The series of keys to press, in order. This can also be a list of key strings to press. interval (float, optional): The number of seconds in between each press. 0.0 by default, for no pause in between presses. Returns: None """ interval = float(kwargs.get('interval', 0.0)) _failSafeCheck() for c in args: if len(c) > 1: c = c.lower() platformModule._keyDown(c) time.sleep(interval) for c in reversed(args): if len(c) > 1: c = c.lower() platformModule._keyUp(c) time.sleep(interval) if kwargs.get('_pause', True) and PAUSE != 0: time.sleep(PAUSE)
def press(keys, presses=1, interval=0.0, pause=None, _pause=True): """Performs a keyboard key press down, followed by a release. Args: key (str, list): The key to be pressed. The valid names are listed in KEYBOARD_KEYS. Can also be a list of such strings. presses (integer, optiional): the number of press repetition 1 by default, for just one press interval (float, optional): How many seconds between each press. 0.0 by default, for no pause between presses. pause (float, optional): How many seconds in the end of function process. None by default, for no pause in the end of function process. Returns: None """ if type(keys) == str: keys = [keys] # put string in a list else: lowerKeys = [] for s in keys: if len(s) > 1: lowerKeys.append(s.lower()) else: lowerKeys.append(s) interval = float(interval) for i in range(presses): for k in keys: platformModule._keyDown(k) platformModule._keyUp(k) time.sleep(interval) if pause is not None and _pause: time.sleep(pause) elif _pause and PAUSE != 0: time.sleep(PAUSE)
def press(keys, rep=1, _pause=True): """Performs a keyboard key press down, followed by a release. Args: key (str, list): The key to be pressed. The valid names are listed in KEYBOARD_KEYS. Can also be a list of such strings. Returns: None """ if type(keys) == str: keys = [keys] # put string in a list else: lowerKeys = [] for s in keys: if len(s) > 1: lowerKeys.append(s.lower()) else: lowerKeys.append(s) for i in range(rep): for k in keys: _failSafeCheck() platformModule._keyDown(k) platformModule._keyUp(k) if _pause and PAUSE != 0: time.sleep(PAUSE)
def hotkey(*args, **kwargs): """Performs key down presses on the arguments passed in order, then performs key releases in reverse order. The effect is that calling hotkey('ctrl', 'shift', 'c') would perform a "Ctrl-Shift-C" hotkey/keyboard shortcut press. Args: key(s) (str): The series of keys to press, in order. This can also be a list of key strings to press. interval (float, optional): The number of seconds in between each press. 0.0 by default, for no pause in between presses. Returns: None """ interval = float(kwargs.get('interval', 0.0)) _failSafeCheck() for c in args: if len(c) > 1: c = c.lower() platformModule._keyDown(c) time.sleep(interval) for c in reversed(args): if len(c) > 1: c = c.lower() platformModule._keyUp(c) time.sleep(interval) if kwargs.get('pause', None) is not None and _pause: time.sleep(pause) elif kwargs.get('_pause', True) and PAUSE != 0: time.sleep(PAUSE)
def press(keys, pause=None, _pause=True): """Performs a keyboard key press down, followed by a release. Args: key (str, list): The key to be pressed. The valid names are listed in KEYBOARD_KEYS. Can also be a list of such strings. Returns: None """ if type(keys) == str: keys = [keys] # put string in a list else: lowerKeys = [] for s in keys: if len(s) > 1: lowerKeys.append(s.lower()) else: lowerKeys.append(s) for k in keys: _failSafeCheck() platformModule._keyDown(k) platformModule._keyUp(k) if pause is not None and _pause: time.sleep(pause) elif _pause and PAUSE != 0: time.sleep(PAUSE)
def keyUp(key, _pause=True): """Performs a keyboard key release (without the press down beforehand). Args: key (str): The key to be released up. The valid names are listed in KEYBOARD_KEYS. Returns: None """ if len(key) > 1: key = key.lower() _failSafeCheck() platformModule._keyUp(key) if _pause and PAUSE != 0: time.sleep(PAUSE)
def keyUp(key, pause=None, _pause=True): """Performs a keyboard key release (without the press down beforehand). Args: key (str): The key to be released up. The valid names are listed in KEYBOARD_KEYS. Returns: None """ if len(key) > 1: key = key.lower() _failSafeCheck() platformModule._keyUp(key) if pause is not None and _pause: time.sleep(pause) elif _pause and PAUSE != 0: time.sleep(PAUSE)
def press(keys, presses=1, interval=0.0, pause=None, _pause=True): """Performs a keyboard key press down, followed by a release. Args: key (str, list): The key to be pressed. The valid names are listed in KEYBOARD_KEYS. Can also be a list of such strings. presses (integer, optiional): the number of press repetition 1 by default, for just one press interval (float, optional): How many seconds between each press. 0.0 by default, for no pause between presses. pause (float, optional): How many seconds in the end of function process. None by default, for no pause in the end of function process. Returns: None """ if type(keys) == str: keys = [keys] # put string in a list else: lowerKeys = [] for s in keys: if len(s) > 1: lowerKeys.append(s.lower()) else: lowerKeys.append(s) interval = float(interval) for i in range(presses): for k in keys: _failSafeCheck() platformModule._keyDown(k) platformModule._keyUp(k) time.sleep(interval) if pause is not None and _pause: time.sleep(pause) elif _pause and PAUSE != 0: time.sleep(PAUSE)