def handle_key_event(self, event):
"""
Handle edit pad key events
:param event:
:return:
"""
logging.info("Key Event:{}".format(event))
if event == curses.KEY_UP:
try:
cmd = self.lastcmd[0]
except IndexError:
return event
self.edit.clear()
self.edit.addstr(0, 0, cmd)
self.edit.refresh()
try_handle_global_event(event)
if event == 9:
logging.info("Calling auto complete on TAB key")
data = self.pad.gather().strip()
cmds = {key[:len(data)]: key for key in commands.keys()}
logging.info("Options are")
for cmd, fullname in cmds.iteritems():
if cmd == data:
logging.info("Grabbed the first match which was {}".format(fullname))
self.edit.clear()
self.edit.addstr(0, 0, fullname)
self.edit.refresh()
break
return event
评论列表
文章目录