From d68a8e60bb9ca8557b6724019b95aeedc71262b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20Noco=C5=84?= Date: Tue, 28 Jul 2026 14:45:35 +0200 Subject: [PATCH] Fixed card link when using MkDocs development server --- main.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/main.py b/main.py index 9c8a178242..0df8b672b6 100644 --- a/main.py +++ b/main.py @@ -7,8 +7,8 @@ from mkdocs.utils import meta from typing import List -def _absolute_page_url(site, language, version, *parts): - return 'https://' + '/'.join((site, language, version) + parts) +def _absolute_page_url(scheme, site, language, version, *parts): + return scheme + '://' + '/'.join((site, language, version) + parts) CARDS_TEMPLATE = """ @@ -74,8 +74,8 @@ def cards(pages, columns=1, style="cards", force_version=False): current_page = env.variables.page absolute_url = current_page.abs_url canonical = current_page.canonical_url - url_parts = re.search("//([^/]+)/([^/]+)/([^/]+)/", canonical) - (site, language, version) = url_parts.groups() + url_parts = re.search(r"^(https?)://([^/]+)/([^/]+)/([^/]+)/", canonical) + (scheme, site, language, version) = url_parts.groups() version = force_version or version version = os.getenv("READTHEDOCS_VERSION_NAME", version) @@ -113,12 +113,12 @@ def cards(pages, columns=1, style="cards", force_version=False): elif re.search(".html$", path): html = True content = open("docs/%s" % path, "r").read() - page = _absolute_page_url(site, language, version, page) + page = _absolute_page_url(scheme, site, language, version, page) else: html = False path = path.rstrip('/') content = open("docs/%s.md" % path, "r").read() - page = _absolute_page_url(site, language, version, path, hash) + page = _absolute_page_url(scheme, site, language, version, path, hash) if html: match = re.search("