code: def _process_script_node(node, name):
      '''Process a script-type node
  
      This handles nodes that follow the *Common script schema*,
      as outlined in doc/yaml-reference.md.
      '''
      if isinstance(node, basestring):
          # The script is just the text itself
          return [node]
  
  
      if isinstance(node, dict):
          # There must be a "script" key, which must be a list of strings
          script = node.get('script')
          if not script:
              raise ConfigError("{}: must have a 'script' subkey".format(name))
  
          if isinstance(script, list):
              return script
  
          if isinstance(script, basestring):
              return [script]
  
          raise ConfigError("{}.script: must be a string or list".format(name))
  
      raise ConfigError("{}: must be string or dict".format(name)f _process_script_node(node, name):
      '''Process a script-type node
  
      This handles nodes that follow the *Common script schema*,
      as outlined in doc/yaml-reference.md.
      '''
      if isinstance(node, basestring):
          # The script is just the text itself
          return [node]
  
  
      if isinstance(node, dict):
          # There must be a "script" key, which must be a list of strings
          script = node.get('script')
          if not script:
              raise ConfigError("{}: must have a 'script' subkey".format(name))
  
          if isinstance(script, list):
              return script
  
          if isinstance(script, basestring):
              return [script]
  
          raise ConfigError("{}.script: must be a string or list".format(name))
  
      raise ConfigError("{}: must be string or dict".format(name))
docs: Process a script-type node
  
      This handles nodes that follow the *Common script schema*,
      as outlined in doc/yaml-reference.md.