docs: def _load_config():
      """Searches for config files, reads them and returns a dictionary
  
      Looks for a ``check-manifest`` section in ``pyproject.toml``,
      ``setup.cfg``, and ``tox.ini``, in that order.  The first file
      that exists and has that section will be loaded and returned as a
      dictionary.
  
      """
      if os.path.exists("pyproject.toml"):
          config = toml.load("pyproject.toml")
          if CFG_SECTION_CHECK_MANIFEST in config.get("tool", {}):
              return config["tool"][CFG_SECTION_CHECK_MANIFEST]
  
      search_files = ['setup.cfg', 'tox.ini']
      config_parser = ConfigParser.ConfigParser()
      for filename in search_files:
          if (config_parser.read([filename])
                  and config_parser.has_section(CFG_SECTION_CHECK_MANIFEST)):
              config = {}
  
              if config_parser.has_option(*CFG_IGNORE_DEFAULT_RULES):
                  ignore_defaults = config_parser.getboolean(*CFG_IGNORE_DEFAULT_RULES)
                  config[CFG_IGNORE_DEFAULT_RULES[1]] = ignore_defaults
  
              if config_parser.has_option(*CFG_IGNORE):
                  patterns = [
                      p.strip()
                      for p in config_parser.get(*CFG_IGNORE).splitlines()
                  ]
                  config[CFG_IGNORE[1]] = patterns
  
              if config_parser.has_option(*CFG_IGNORE_BAD_IDEAS):
                  patterns = [
                      p.strip()
                      for p in config_parser.get(*CFG_IGNORE_BAD_IDEAS).splitlines()
                  ]
                  config[CFG_IGNORE_BAD_IDEAS[1]] = patterns
  
              return config
  
      return {}