Lines Matching refs:app

61 def get_page_prefix(app: Sphinx, pagename: str) -> str:
76 if not os.path.isfile(app.env.doc2path(pagename)):
79 for exclude in app.config.gh_link_exclude:
84 for pattern, prefix in app.config.gh_link_prefixes.items():
92 def gh_link_get_url(app: Sphinx, pagename: str, mode: str = "blob") -> str | None:
104 page_prefix = get_page_prefix(app, pagename)
110 app.config.gh_link_base_url,
112 app.config.gh_link_version,
114 str(app.env.doc2path(pagename, False)),
119 def gh_link_get_open_issue_url(app: Sphinx, pagename: str, sha1: str) -> str | None:
131 page_prefix = get_page_prefix(app, pagename)
138 app.env.doc2path(pagename, False),
166 def git_info_filter(app: Sphinx, pagename) -> tuple[str, str] | None:
179 page_prefix = get_page_prefix(app, pagename)
186 app.env.doc2path(pagename, False),
218 last_update_fmt = app.config.html_last_updated_fmt
220 date = format_date(last_update_fmt, date=date_object, language=app.config.language)
226 def add_jinja_filter(app: Sphinx):
227 if app.builder.format != "html":
230 app.builder.templates.environment.filters["gh_link_get_blob_url"] = partial(
231 gh_link_get_url, app, mode="blob"
234 app.builder.templates.environment.filters["gh_link_get_edit_url"] = partial(
235 gh_link_get_url, app, mode="edit"
238 app.builder.templates.environment.filters["gh_link_get_open_issue_url"] = partial(
239 gh_link_get_open_issue_url, app
242 app.builder.templates.environment.filters["git_info"] = partial(git_info_filter, app)
245 def setup(app: Sphinx):
246 app.add_config_value("gh_link_version", "", "")
247 app.add_config_value("gh_link_base_url", "", "")
248 app.add_config_value("gh_link_prefixes", {}, "")
249 app.add_config_value("gh_link_exclude", [], "")
251 app.connect("builder-inited", add_jinja_filter)