docs: def readText (self, filename=None):
      """Reads a text command sequence from the given filename (defaults to
      self.pathname).
      """
      if filename is None:
        filename = self.pathname
  
      self.header = { }
      inBody      = False
  
      with open(filename, 'rt') as stream:
        for (lineno, line) in enumerate(stream.readlines()):
          stripped = line.strip()
          if stripped == '':
            continue
          elif stripped.startswith('#'):
            if not inBody:
              self._parseHeader(line, lineno, self.log)
          else:
            inBody = True
            self.lines.append( SeqCmd.parse(line, lineno, self.log, self.cmddict) )
  
      if 'seqid' in self.header:
        self.seqid = self.header['seqid']
      elif self.seqid is None:
        self.log.error('No sequence id present in header.')
  
      if 'version' in self.header:
        self.version = self.header['version']
      elif self.version is None:
        self.log.warning('No version present in header.  Defaulting to zero (0).')
        self.version = 0