code: def read_hotkey(suppress=True):
      
      queue = _queue.Queue()
      fn = lambda e: queue.put(e) or e.event_type == KEY_DOWN
      hooked = hook(fn, suppress=suppress)
      while True:
          event = queue.get()
          if event.event_type == KEY_UP:
              unhook(hooked)
              with _pressed_events_lock:
                  names = [e.name for e in _pressed_events.values()] + [event.name]
              return get_hotkey_name(names)
docs: Similar to `read_key()`, but blocks until the user presses and releases a
      hotkey (or single key), then returns a string representing the hotkey
      pressed.
  
      Example:
  
          read_hotkey()
          # "ctrl+shift+p"