docs: def interact(self):
          """Get a command from the user and respond to it."""
          lines = ""
          for line in self.read():
              lines += line
              try:
                  self.eval(lines)
              except ValueError:
                  pass
              except KeyboardInterrupt as e:
                  raise e
              except:
                  self.terminal.error(traceback.format_exc())
                  break
              else:
                  break