Generate documentation redirects for lowercase rule codes (#15564)

## Summary

Resolves #15016.

## Test Plan

Generate the docs with:

```console
uv run --with-requirements docs/requirements-insiders.txt scripts/generate_mkdocs.py
```

and, check whether the mapping was created in `mkdocs.generated.yml` and run the server using:

```console
uvx --with-requirements docs/requirements-insiders.txt -- mkdocs serve -f mkdocs.insiders.yml -o
```
This commit is contained in:
InSync 2025-01-18 11:39:23 +07:00 committed by GitHub
parent 9d845ec8f5
commit 9730ff3a25
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -8,6 +8,7 @@ import re
import shutil
import subprocess
from collections.abc import Sequence
from itertools import chain
from pathlib import Path
from typing import NamedTuple
@ -257,10 +258,18 @@ def main() -> None:
config["plugins"].append(
{
"redirects": {
"redirect_maps": {
f"rules/{rule['code']}.md": f"rules/{rule['name']}.md"
for rule in rules
},
"redirect_maps": dict(
chain.from_iterable(
[
(f"rules/{rule['code']}.md", f"rules/{rule['name']}.md"),
(
f"rules/{rule['code'].lower()}.md",
f"rules/{rule['name']}.md",
),
]
for rule in rules
)
),
},
},
)