#!/usr/bin/python3 import pyatspi import sys def registerAndStart(): pyatspi.Registry.registerKeystrokeListener( onKey, kind=(pyatspi.KEY_PRESSED_EVENT, pyatspi.KEY_RELEASED_EVENT)) pyatspi.Registry.start() def deregisterAndStop(): pyatspi.Registry.deregisterKeystrokeListener( onKey, kind=(pyatspi.KEY_PRESSED_EVENT, pyatspi.KEY_RELEASED_EVENT)) pyatspi.Registry.stop() sys.exit(0) def onKey(e): if e.type == pyatspi.KEY_PRESSED_EVENT: eType = "PRESSED" elif e.type == pyatspi.KEY_RELEASED_EVENT: eType = "RELEASED" else: eType = "UNKNOWN" print("%s: '%s'" % (eType, e.event_string)) if e.event_string == "F4" and eType == "PRESSED": deregisterAndStop() print("Press F4 to terminate this listener") registerAndStart()