Skip to content

Commit 2b17f77

Browse files
authored
docs: Migrate to gp-sphinx theme and packages (#1033)
## Summary Migrates tmuxp docs from individually-managed Sphinx extensions and manual `conf.py` boilerplate to the shared `gp-sphinx` documentation platform. ## What changed - `pyproject.toml` / `uv.lock` replace the repo-managed Sphinx dependency stack with published `gp-sphinx==0.0.1a0` and `sphinx-argparse-neo==0.0.1a0` from PyPI. - `docs/conf.py` rewrites the manual config around `merge_sphinx_config()` and `make_linkcode_resolve()` so shared theme settings, fonts, extension defaults, and asset workarounds come from gp-sphinx. - `docs/_ext/` removes repo-local argparse helpers, the embedded `sphinx_argparse_neo/` package, and `sphinx_fonts.py`; those are now supplied by shared packages. - `docs/_static/js/spa-nav.js` is removed because it now ships with the shared theme. - `tests/docs/_ext/` updates imports from old `_ext/` paths to `sphinx_argparse_neo.*` package paths, removes docs-path bootstrapping, and adjusts the font-package version assertion. ## Upstream fixes pulled in by this migration During the migration the following issues were found and fixed in `gp-sphinx`: - `sphinx_argparse_neo/exemplar.py` now imports roles from `sphinx_argparse_neo.roles`, so the packaged extension imports correctly. - `gp_sphinx/config.py` now sets `html_static_path = ["_static"]` and `templates_path = ["_templates"]` by default so repo-local static assets and templates continue to load. - `gp_sphinx/defaults.py` now includes the TOC object-entry default used by tmuxp. - Dead asset-path handling was removed from gp-sphinx config so shared theme assets remain the single source of truth. ## Test plan - [x] `uv run pytest` — 1154 passed, 2 skipped - [x] `uv run ruff check .` — no issues - [x] `uv run mypy` — no issues - [x] `just build-docs` — build succeeded (101 pre-existing autodoc/cross-ref warnings, unrelated to this change) - [x] Visual check via Playwright — logo, sidebar, IBM Plex fonts, argparse code blocks, projects sidebar all rendering correctly
2 parents 903041e + 090ac1a commit 2b17f77

36 files changed

+109
-12254
lines changed

docs/_ext/argparse_exemplar.py

Lines changed: 0 additions & 1305 deletions
This file was deleted.

docs/_ext/argparse_lexer.py

Lines changed: 0 additions & 429 deletions
This file was deleted.

docs/_ext/argparse_roles.py

Lines changed: 0 additions & 370 deletions
This file was deleted.

0 commit comments

Comments
 (0)