docs: def command_line_config(self):
          """
          settings.py is the basis
  
          if wants to change them by command line arguments,
          the existing option will be transformed to the value type in settings.py
          the unexisting option will be treated as string by default,
          and transform to certain type if `!<type>` was added after the value.
  
          example:
          $ python app.py --PORT=1000
  
          NOTE This method is deprecated, use `torext.script` to parse command line arguments instead.
          """
  
          args = sys.argv[1:]
          args_dict = {}
          existed_keys = []
          new_keys = []
  
          for t in args:
              if not t.startswith('--'):
                  raise errors.ArgsParseError('Bad arg: %s' % t)
              try:
                  key, value = tuple(t[2:].split('='))
              except:
                  raise errors.ArgsParseError('Bad arg: %s' % t)
  
              args_dict[key] = value
  
              if key in settings:
                  existed_keys.append(key)
              else:
                  new_keys.append(key)
  
          if existed_keys:
              app_log.debug('Changed settings:')
              for i in existed_keys:
                  before = settings[i]
                  type_ = type(before)
                  if type_ is bool:
                      if args_dict[i] == 'True':
                          _value = True
                      elif args_dict[i] == 'False':
                          _value = False
                      else:
                          raise errors.ArgsParseError('%s should only be True or False' % i)
                  else:
                      _value = type_(args_dict[i])
                  settings[i] = _value
                  app_log.debug('  %s  [%s]%s (%s)', i, type(settings[i]), settings[i], before)
  
          if new_keys:
              app_log.debug('New settings:')
              for i in new_keys:
                  settings[i] = args_dict[i]
                  app_log.debug('  %s  %s', i, args_dict[i])
  
          # NOTE if ``command_line_config`` is called, logging must be re-configed
          self.update_settings({})