code: def do_use(self, arg):
          
          if arg == 'list':
              self._list_scope()
              return
          elif arg.startswith('add'):
              new_scope = arg.split(' ')[1]
              self._add_scope(new_scope)
              return
          elif arg.startswith('delete'):
              # delete does not work
              which_scope = arg.split(' ')[1]
              self._delete_scope(which_scope)
              return
          elif arg == "cm" or arg == "/":
              self.active_scope = ""
          elif arg in self.scopes:
              self.active_scope = arg
          else:
              self.active_scope = self.select(
                  [""] + self.scopes, 'Which scope? ')
  
          if self.active_scope == "":
              Console.ok("Switched scope to: cm")
              self.prompt = self.active_scope + 'cm> '
          else:
              Console.ok("Switched scope to: {0}".format(self.active_scope))
              self.prompt = self.active_scope + '> '
docs: ::
          
              USAGE:
  
                  use list           lists the available scopes
  
                  use add SCOPE      adds a scope <scope>
  
                  use delete SCOPE   removes the <scope>
  
                  use                without parameters allows an
                                     interactive selection
  
              DESCRIPTION
                 Often we have to type in a command multiple times. To save
                 us typng the name of the command, we have defined a simple
                 scope that can be activated with the use command
  
              ARGUMENTS:
                  list         list the available scopes
                  add          add a scope with a name
                  delete       delete a named scope
                  use          activate a scope