code: def get_cmdline_options(self):
          
  
          d = {}
  
          for cmd, opts in self.command_options.items():
  
              for opt, (src, val) in opts.items():
  
                  if src != "command line":
                      continue
  
                  opt = opt.replace('_', '-')
  
                  if val == 0:
                      cmdobj = self.get_command_obj(cmd)
                      neg_opt = self.negative_opt.copy()
                      neg_opt.update(getattr(cmdobj, 'negative_opt', {}))
                      for neg, pos in neg_opt.items():
                          if pos == opt:
                              opt = neg
                              val = None
                              break
                      else:
                          raise AssertionError("Shouldn't be able to get here")
  
                  elif val == 1:
                      val = None
  
                  d.setdefault(cmd, {})[opt] = val
  
          return d
docs: Return a '{cmd: {opt:val}}' map of all command-line options
  
          Option names are all long, but do not include the leading '--', and
          contain dashes rather than underscores.  If the option doesn't take
          an argument (e.g. '--quiet'), the 'val' is 'None'.
  
          Note that options provided by config files are intentionally excluded.