X-Git-Url: https://wannabe.guru.org/gitweb/?a=blobdiff_plain;f=input_utils.py;fp=input_utils.py;h=d958db23691f910acd84b9f2ee33473ff4bee96a;hb=c08841600a2f61049cdb1a152407a1fb8ca129a5;hp=5e36db1ba853884636a2df7a5007004aa086760b;hpb=a778719a55da82f5a3d1ca5cecd9041530d4d6e9;p=python_utils.git diff --git a/input_utils.py b/input_utils.py index 5e36db1..d958db2 100644 --- a/input_utils.py +++ b/input_utils.py @@ -85,6 +85,23 @@ def press_any_key( return single_keystroke_response(None, prompt=prompt, timeout_seconds=timeout_seconds) +def up_down_enter() -> Optional[str]: + os_special_keystrokes = [3, 26] # ^C, ^Z + while True: + key = readchar.readkey() + if len(key) == 1: + if ord(key) in os_special_keystrokes: + return None + if ord(key) == 13: + return 'enter' + elif len(key) == 3: + if ord(key[0]) == 27 and ord(key[1]) == 91: + if ord(key[2]) == 65: + return "up" + elif ord(key[2]) == 66: + return "down" + + def keystroke_helper() -> None: """Misc util to watch keystrokes and report what they were."""