summaryrefslogtreecommitdiff
path: root/docs/conf.py
diff options
context:
space:
mode:
authorHiFiPhile <[email protected]>2026-06-23 23:12:51 +0200
committerHiFiPhile <[email protected]>2026-06-23 23:12:51 +0200
commit033dc6bb77e8a9e1c1172d74d47707848b5c5bf5 (patch)
treee7672f9bda54aa1a243b2a1c0f74a48055569c63 /docs/conf.py
parentb5e63ca44c846813ece9ad9df684cae0d1d5b542 (diff)
parentcd3561bf158afd5a5718904b8139a338d1e3b67c (diff)
Merge remote-tracking branch 'tinyusb/master' into fix-stm32-usbc
Diffstat (limited to 'docs/conf.py')
-rwxr-xr-xdocs/conf.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/docs/conf.py b/docs/conf.py
index 9e9784fb7..86ddcf672 100755
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -53,6 +53,25 @@ def preprocess_readme():
tgt = Path(__file__).parent.parent / "README_processed.rst"
if src.exists():
content = src.read_text(encoding='utf-8')
+ # if the matching is inside a table, keep the table cell width by adding the same number of spaces in the end of the line
+ # match pattern: | ... `... <docs/...>`_ ... |
+ # change into: | ... `... <...>`_ ... |
+ def _rewrite_table_line(line):
+ if not (line.startswith('|') and line.rstrip().endswith('|')):
+ return line
+
+ rewritten = re.sub(r"<docs/([^>]+)>", r"<\1>", line)
+ delta = len(line) - len(rewritten) - 1 # -1 for rst->html
+
+ if delta > 0:
+ last_pipe = rewritten.rfind('|')
+ if last_pipe >= 0:
+ rewritten = rewritten[:last_pipe] + (' ' * delta) + rewritten[last_pipe:]
+
+ return rewritten
+
+ content = ''.join(_rewrite_table_line(line) for line in content.splitlines(keepends=True))
+
content = re.sub(r"docs/", r"", content)
content = re.sub(r"\.rst\b", r".html", content)
if not content.endswith("\n"):