code: def setup(app):
      # Format template for issues URI
      # e.g. 'https://github.com/sloria/marshmallow/issues/{issue}
      app.add_config_value("issues_uri", default=None, rebuild="html")
      # Format template for PR URI
      # e.g. 'https://github.com/sloria/marshmallow/pull/{issue}
      app.add_config_value(
          "issues_pr_uri", default=None, rebuild="html"
      )
      # Format template for commit URI
      # e.g. 'https://github.com/sloria/marshmallow/commits/{commit}
      app.add_config_value(
          "issues_commit_uri", default=None, rebuild="html"
      )
      # Shortcut for Github, e.g. 'sloria/marshmallow'
      app.add_config_value(
          "issues_github_path", default=None, rebuild="html"
      )
      # Format template for user profile URI
      # e.g. 'https://github.com/{user}'
      app.add_config_value(
          "issues_user_uri", default=None, rebuild="html"
      )
      app.add_role("issue", issue_role)
      app.add_role("pr", pr_role)
      app.add_role("user", user_role)
      app.add_role("commit", commit_role)
      app.add_role("cve", cve_role)
      return {
          "version": __version__,
          "parallel_read_safe": True,
          "parallel_write_safe": True,
      }
  
file_path: scikit-optimize/doc/sphinxext/sphinx_issues.py
imports: import re
  from docutils import nodes, utils
  from sphinx.util.nodes import split_explicit_title
label_desc: Use image node_id 4 for calling a global function with example usage: setup(app) and returns: dict