on_page_markdown() — fastapi Function Reference
Architecture documentation for the on_page_markdown() function in mkdocs_hooks.py from the fastapi codebase.
Entity Profile
Dependency Diagram
graph TD 331ccf21_aeb9_a5b0_5b21_4e6f6a898a2f["on_page_markdown()"] 566dbae4_46de_4e4a_0ed4_0c59e40fbcf8["mkdocs_hooks.py"] 331ccf21_aeb9_a5b0_5b21_4e6f6a898a2f -->|defined in| 566dbae4_46de_4e4a_0ed4_0c59e40fbcf8 043087c7_6695_9726_c840_836c4f8045e9["get_missing_translation_content()"] 331ccf21_aeb9_a5b0_5b21_4e6f6a898a2f -->|calls| 043087c7_6695_9726_c840_836c4f8045e9 89f35cca_48c0_852c_b202_88588d0b7431["get_translation_banner_content()"] 331ccf21_aeb9_a5b0_5b21_4e6f6a898a2f -->|calls| 89f35cca_48c0_852c_b202_88588d0b7431 style 331ccf21_aeb9_a5b0_5b21_4e6f6a898a2f fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
scripts/mkdocs_hooks.py lines 143–182
def on_page_markdown(
markdown: str, *, page: Page, config: MkDocsConfig, files: Files
) -> str:
# Set metadata["social"]["cards_layout_options"]["title"] to clean title (without
# permalink)
title = page.title
clean_title = title.split("{ #")[0]
if clean_title:
page.meta.setdefault("social", {})
page.meta["social"].setdefault("cards_layout_options", {})
page.meta["social"]["cards_layout_options"]["title"] = clean_title
if isinstance(page.file, EnFile):
for excluded_section in non_translated_sections:
if page.file.src_path.startswith(excluded_section):
return markdown
missing_translation_content = get_missing_translation_content(config.docs_dir)
header = ""
body = markdown
if markdown.startswith("#"):
header, _, body = markdown.partition("\n\n")
return f"{header}\n\n{missing_translation_content}\n\n{body}"
docs_dir_path = Path(config.docs_dir)
en_docs_dir_path = docs_dir_path.parent.parent / "en/docs"
if docs_dir_path == en_docs_dir_path:
return markdown
# For translated pages add translation banner
translation_banner_content = get_translation_banner_content(config.docs_dir)
en_url = "https://fastapi.tiangolo.com/" + page.url.lstrip("/")
translation_banner_content = translation_banner_content.replace(
"ENGLISH_VERSION_URL", en_url
)
header = ""
body = markdown
if markdown.startswith("#"):
header, _, body = markdown.partition("\n\n")
return f"{header}\n\n{translation_banner_content}\n\n{body}"
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does on_page_markdown() do?
on_page_markdown() is a function in the fastapi codebase, defined in scripts/mkdocs_hooks.py.
Where is on_page_markdown() defined?
on_page_markdown() is defined in scripts/mkdocs_hooks.py at line 143.
What does on_page_markdown() call?
on_page_markdown() calls 2 function(s): get_missing_translation_content, get_translation_banner_content.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free