From f9cd8d69d84798deb3e1db6b28ba506490bb33b4 Mon Sep 17 00:00:00 2001 From: len0rd Date: Wed, 26 Aug 2026 00:22:11 -0400 Subject: [PATCH 1/4] install rail diagram --- .gitmodules | 3 +++ conf.py | 29 +++++++++++++++++++++++++++++ extern/rail_diagram | 1 + 3 files changed, 33 insertions(+) create mode 100644 .gitmodules create mode 160000 extern/rail_diagram diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..3dc97a6 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "extern/rail_diagram"] + path = extern/rail_diagram + url = ../rail_diagram diff --git a/conf.py b/conf.py index 0d04bd9..4fd082b 100644 --- a/conf.py +++ b/conf.py @@ -1,5 +1,7 @@ # Sphinx docs configuration for building project documentation from datetime import datetime +from pathlib import Path +import shutil from pygments import token from pygments.lexer import RegexLexer, bygroups @@ -214,3 +216,30 @@ class CanbusDbcLexer(RegexLexer): lexers["dbc"] = CanbusDbcLexer(startinline=True) + + +def copy_rail_diagram(app, exception): + if exception is not None: + return + + project_root = Path(__file__).parent + rail_diagram_dir = project_root / "extern" / "rail_diagram" + output_rail_dir = Path(app.outdir) / "rail" + output_rail_dir.mkdir(parents=True, exist_ok=True) + + shutil.copy2( + rail_diagram_dir / "railroad_diagram.html", + output_rail_dir / "index.html", + ) + shutil.copy2( + rail_diagram_dir / "railroad_app.js", + output_rail_dir / "railroad_app.js", + ) + shutil.copy2( + rail_diagram_dir / "railroad_data.js", + output_rail_dir / "railroad_data.js", + ) + + +def setup(app): + app.connect("build-finished", copy_rail_diagram) diff --git a/extern/rail_diagram b/extern/rail_diagram new file mode 160000 index 0000000..dd5ed09 --- /dev/null +++ b/extern/rail_diagram @@ -0,0 +1 @@ +Subproject commit dd5ed091f91ab789bc829cd9754da6d830e4c038 From ee31e3c4244d30f3ff51fb847fd5564b2cbcb0aa Mon Sep 17 00:00:00 2001 From: len0rd Date: Sat, 29 Aug 2026 13:51:46 -0400 Subject: [PATCH 2/4] bump rail diagram --- extern/rail_diagram | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/rail_diagram b/extern/rail_diagram index dd5ed09..6c99102 160000 --- a/extern/rail_diagram +++ b/extern/rail_diagram @@ -1 +1 @@ -Subproject commit dd5ed091f91ab789bc829cd9754da6d830e4c038 +Subproject commit 6c99102d3952a2fde41b3d41a004779ebf8253a9 From 88b391883b46c3e7258c8a66bd0315d73114fab6 Mon Sep 17 00:00:00 2001 From: len0rd Date: Sat, 29 Aug 2026 19:20:25 -0400 Subject: [PATCH 3/4] bump rail diagram --- extern/rail_diagram | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/rail_diagram b/extern/rail_diagram index 6c99102..98fa7dc 160000 --- a/extern/rail_diagram +++ b/extern/rail_diagram @@ -1 +1 @@ -Subproject commit 6c99102d3952a2fde41b3d41a004779ebf8253a9 +Subproject commit 98fa7dc32668b94c8b7dd25e48cdd3ada277cfc1 From f0935c1ccf32dd606bb7b30f6114822402817235 Mon Sep 17 00:00:00 2001 From: len0rd Date: Sun, 27 Sep 2026 20:30:28 -0400 Subject: [PATCH 4/4] bump diagram --- extern/rail_diagram | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/rail_diagram b/extern/rail_diagram index 98fa7dc..56fcf79 160000 --- a/extern/rail_diagram +++ b/extern/rail_diagram @@ -1 +1 @@ -Subproject commit 98fa7dc32668b94c8b7dd25e48cdd3ada277cfc1 +Subproject commit 56fcf794f3a9554b9cba96076e74780b3b030d44