code: def parse_command_only(self, rawinput: str) -> Statement:
          
          # expand shortcuts and aliases
          line = self._expand(rawinput)
  
          command = ''
          args = ''
          match = self._command_pattern.search(line)
          if match:
              # we got a match, extract the command
              command = match.group(1)
  
              # take everything from the end of the first match group to
              # the end of the line as the arguments (stripping leading
              # and trailing spaces)
              args = line[match.end(1):].strip()
              # if the command is empty that means the input was either empty
              # or something weird like '>'. args should be empty if we couldn't
              # parse a command
              if not command or not args:
                  args = ''
  
          # set multiline
          if command in self.multiline_commands:
              multiline_command = command
          else:
              multiline_command = ''
  
          # build the statement
          statement = Statement(args,
                                raw=rawinput,
                                command=command,
                                multiline_command=multiline_command,
                                )
          return statement
docs: Partially parse input into a Statement object.
  
          The command is identified, and shortcuts and aliases are expanded.
          Multiline commands are identified, but terminators and output
          redirection are not parsed.
  
          This method is used by tab completion code and therefore must not
          generate an exception if there are unclosed quotes.
  
          The `Statement` object returned by this method can at most contain values
          in the following attributes:
            - args
            - raw
            - command
            - multiline_command
  
          `Statement.args` includes all output redirection clauses and command
          terminators.
  
          Different from parse(), this method does not remove redundant whitespace
          within args. However, it does ensure args has no leading or trailing
          whitespace.