def test_curses_ex(): with pytest.raises(TypeError): curses_ex.define_key('\x1b11', 600) with pytest.raises(curses.error): # curses is not initialized here. curses_ex.define_key(b'\x1b11', 600)
def demo(scrn): # define character 'a' as keycode 600. curses_ex.define_key(b'a', 600) n = 0 while True: c = scrn.getch() scrn.addstr(n, 0, str(c)) scrn.clrtoeol() n = 0 if n > 10 else n+1
def init(): # Experimental code to get keycode from cap name for i in range(512, 1024): name = str(curses.keyname(i), 'utf-8', 'replace') if name in CAPNAME_TO_KEY: KEYNAME_TO_CODE[CAPNAME_TO_KEY[name]] = i CAPNAME_TO_CODE[name] = i reg_code = KAA_KEYCODE_FROM # register ESC + seq for name, keycode in CAPNAME_TO_CODE.items(): seq = curses.tigetstr(name) if seq: curses_ex.define_key(b'\x1b'+seq, reg_code) REGISTERD_META_SEQUENCE[reg_code] = keycode reg_code += 1
def init(conf): # Experimental code to get keycode from cap name for i in range(512, 1024): name = str(curses.keyname(i), 'utf-8', 'replace') if name in CAPNAME_TO_KEY: KEYNAME_TO_CODE[CAPNAME_TO_KEY[name]] = i CAPNAME_TO_CODE[name] = i result = io.StringIO() err = False reg_code = KAA_KEYCODE_FROM # register ESC + seq registered_seqs = set() for name, keycode in CAPNAME_TO_CODE.items(): seq = curses.tigetstr(name) if seq: seq = b'\x1b' + seq try: curses_ex.define_key(seq, reg_code) print('OK: ', name, keycode, reg_code, seq, file=result) except Exception: print('NG: ', name, keycode, reg_code, seq, file=result) err = True continue REGISTERD_SEQUENCE[reg_code] = ['\x1b', keycode] reg_code += 1 registered_seqs.add(seq) for seq, keycode in KNOWN_KEY_SEQUENCE.items(): if seq not in registered_seqs: try: curses_ex.define_key(seq, reg_code) print('OK: ', keycode, reg_code, seq, file=result) except Exception: print('NG: ', keycode, reg_code, seq, file=result) err = True continue REGISTERD_SEQUENCE[reg_code] = keycode reg_code += 1 logname = os.path.join(conf.LOGDIR, 'DEFINE_KEY.LOG') with open(logname, 'w') as f: f.write(result.getvalue())
def init(conf): # Experimental code to get keycode from cap name for i in range(512, 1024): name = str(curses.keyname(i), 'utf-8', 'replace') if name in CAPNAME_TO_KEY: KEYNAME_TO_CODE[CAPNAME_TO_KEY[name]] = i CAPNAME_TO_CODE[name] = i result = io.StringIO() err = False reg_code = KAA_KEYCODE_FROM # register ESC + seq registered_seqs = set() for name, keycode in CAPNAME_TO_CODE.items(): seq = curses.tigetstr(name) if seq: seq = b'\x1b' + seq try: curses_ex.define_key(seq, reg_code) print('OK: ', name, keycode, reg_code, seq, file=result) except Exception: print('NG: ', name, keycode, reg_code, seq, file=result) continue REGISTERD_SEQUENCE[reg_code] = ['\x1b', keycode] reg_code += 1 registered_seqs.add(seq) for seq, keycode in KNOWN_KEY_SEQUENCE.items(): if seq not in registered_seqs: try: curses_ex.define_key(seq, reg_code) print('OK: ', keycode, reg_code, seq, file=result) except Exception: print('NG: ', keycode, reg_code, seq, file=result) continue REGISTERD_SEQUENCE[reg_code] = keycode reg_code += 1 logname = os.path.join(conf.LOGDIR, 'DEFINE_KEY.LOG') with open(logname, 'w') as f: f.write(result.getvalue())