docs: def process(meta):
      """Saves metadata fields in global variables and returns a few
      computed fields."""
  
      # pylint: disable=global-statement
      global capitalize
      global use_cleveref_default
      global plusname
      global starname
      global numbersections
  
      # Read in the metadata fields and do some checking
  
      for name in ['eqnos-cleveref', 'xnos-cleveref', 'cleveref']:
          # 'xnos-cleveref' enables cleveref in all 3 of fignos/eqnos/tablenos
          # 'cleveref' is deprecated
          if name in meta:
              use_cleveref_default = check_bool(get_meta(meta, name))
              break
  
      for name in ['eqnos-capitalize', 'eqnos-capitalise',
                   'xnos-capitalize', 'xnos-capitalise']:
          # 'eqnos-capitalise' is an alternative spelling
          # 'xnos-capitalise' enables capitalise in all 3 of fignos/eqnos/tablenos
          # 'xnos-capitalize' is an alternative spelling
          if name in meta:
              capitalize = check_bool(get_meta(meta, name))
              break
  
      if 'eqnos-plus-name' in meta:
          tmp = get_meta(meta, 'eqnos-plus-name')
          if isinstance(tmp, list):
              plusname = tmp
          else:
              plusname[0] = tmp
          assert len(plusname) == 2
          for name in plusname:
              assert isinstance(name, STRTYPES)
  
      if 'eqnos-star-name' in meta:
          tmp = get_meta(meta, 'eqnos-star-name')
          if isinstance(tmp, list):
              starname = tmp
          else:
              starname[0] = tmp
          assert len(starname) == 2
          for name in starname:
              assert isinstance(name, STRTYPES)
  
      if 'xnos-number-sections' in meta:
          numbersections = check_bool(get_meta(meta, 'xnos-number-sections'))