code: def rmd_options_to_metadata(options):
      
      options = re.split(r'\s|,', options, 1)
      if len(options) == 1:
          language = options[0]
          chunk_options = []
      else:
          language, others = options
          language = language.rstrip(' ,')
          others = others.lstrip(' ,')
          chunk_options = parse_rmd_options(others)
  
      language = 'R' if language == 'r' else language
      metadata = {}
      for i, opt in enumerate(chunk_options):
          name, value = opt
          if i == 0 and name == '':
              metadata['name'] = value
              continue
          else:
              if update_metadata_from_rmd_options(name, value, metadata):
                  continue
              try:
                  metadata[name] = _py_logical_values(value)
                  continue
              except RLogicalValueError:
                  metadata[name] = value
  
      for name in metadata:
          try_eval_metadata(metadata, name)
  
      if ('active' in metadata or metadata.get('run_control', {}).get('frozen') is True) and 'eval' in metadata:
          del metadata['eval']
  
      return metadata.get('language') or language, metadata
docs: Parse rmd options and return a metadata dictionary
      :param options:
      :return: