Add HUB-SDK Docs reference section (#7781)
Signed-off-by: Glenn Jocher <glenn.jocher@ultralytics.com> Co-authored-by: UltralyticsAssistant <web@ultralytics.com> Co-authored-by: Ayush Chaurasia <ayush.chaurarsia@gmail.com>
This commit is contained in:
parent
5941128835
commit
ee88882874
25 changed files with 142 additions and 47 deletions
|
|
@ -49,8 +49,9 @@ def build_docs(use_languages=False, clone_repos=True):
|
|||
os.system(f"git clone {repo} {local_dir}")
|
||||
os.system(f"git -C {local_dir} pull") # update repo
|
||||
shutil.rmtree(DOCS / "en/hub/sdk", ignore_errors=True) # delete if exists
|
||||
shutil.copytree(local_dir / "docs", DOCS / "en/hub/sdk")
|
||||
shutil.rmtree(DOCS / "en/hub/sdk/reference") # temporarily delete reference until we find a solution for this
|
||||
shutil.copytree(local_dir / "docs", DOCS / "en/hub/sdk") # for docs
|
||||
shutil.rmtree(DOCS.parent / "hub_sdk", ignore_errors=True) # delete if exists
|
||||
shutil.copytree(local_dir / "hub_sdk", DOCS.parent / "hub_sdk") # for mkdocstrings
|
||||
print(f"Cloned/Updated {repo} in {local_dir}")
|
||||
|
||||
# Build the main documentation
|
||||
|
|
@ -68,7 +69,7 @@ def build_docs(use_languages=False, clone_repos=True):
|
|||
|
||||
def update_html_links():
|
||||
"""Update href links in HTML files to remove '.md' and '/index.md', excluding links starting with 'https://'."""
|
||||
html_files = Path(SITE).rglob("*.html")
|
||||
html_files = SITE.rglob("*.html")
|
||||
total_updated_links = 0
|
||||
|
||||
for html_file in html_files:
|
||||
|
|
@ -134,6 +135,27 @@ def update_html_head(script=""):
|
|||
file.write(new_html_content)
|
||||
|
||||
|
||||
def update_subdir_edit_links(subdir="", docs_url=""):
|
||||
"""Update the HTML head section of each file."""
|
||||
from bs4 import BeautifulSoup
|
||||
|
||||
if str(subdir[0]) == "/":
|
||||
subdir = str(subdir[0])[1:]
|
||||
html_files = (SITE / subdir).rglob("*.html")
|
||||
for html_file in tqdm(html_files, desc="Processing subdir files"):
|
||||
with html_file.open("r", encoding="utf-8") as file:
|
||||
soup = BeautifulSoup(file, "html.parser")
|
||||
|
||||
# Find the anchor tag and update its href attribute
|
||||
a_tag = soup.find("a", {"class": "md-content__button md-icon"})
|
||||
if a_tag and a_tag["title"] == "Edit this page":
|
||||
a_tag["href"] = f"{docs_url}{a_tag['href'].split(subdir)[-1]}"
|
||||
|
||||
# Write the updated HTML back to the file
|
||||
with open(html_file, "w", encoding="utf-8") as file:
|
||||
file.write(str(soup))
|
||||
|
||||
|
||||
def main():
|
||||
# Build the docs
|
||||
build_docs()
|
||||
|
|
@ -141,6 +163,12 @@ def main():
|
|||
# Update titles
|
||||
update_page_title(SITE / "404.html", new_title="Ultralytics Docs - Not Found")
|
||||
|
||||
# Update edit links
|
||||
update_subdir_edit_links(
|
||||
subdir="hub/sdk/", # do not use leading slash
|
||||
docs_url="https://github.com/ultralytics/hub-sdk/tree/develop/docs/",
|
||||
)
|
||||
|
||||
# Update HTML file head section
|
||||
# update_html_head("")
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue