diff --git a/CHANGELOG.md b/CHANGELOG.md index 3bec945ce..a99c70c5a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,6 +20,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Added +- The landing-page `{tableofcontents}` now renders like the lecture builds' + toctree instead of a plain bulleted list: section titles as real `

` + headings (each with a stable anchor id, so they join the "On this page" + outline and can be deep-linked) over bulletless lists of the section's + lectures, with every entry labelled "1. Title" — enumerator, period, title. + The theme rebuilds the TOC from the site manifest (where the enumerator is + a separate field) rather than re-parsing the CLI's baked "1 Title" text, + inside a `nav` labelled "Table of contents" + (`app/components/ProjectTOC.tsx`, `styles/front-toc.css`) + ([#240](https://github.com/QuantEcon/quantecon-theme.mystmd/pull/240)). + ### Changed - Code blocks render their source at 16px with a 20px line, up from the 13px / 17px they inherited, against the 18px prose. The 13px was JupyterLab's diff --git a/UPSTREAM-CANDIDATES.yml b/UPSTREAM-CANDIDATES.yml index ef9d3bf61..ecadf17db 100644 --- a/UPSTREAM-CANDIDATES.yml +++ b/UPSTREAM-CANDIDATES.yml @@ -126,3 +126,27 @@ upstream_candidates: route to `shouldRevalidate: () => false`; React Router 7 keeps the same hash-removal semantics, so the migration tracked in #28 does not repair it. No upstream issue found on jupyter-book/myst-theme at filing time. + + - id: project-toc-renderer + title: Landing-page {tableofcontents} renderer (sections, enumerators, no bullets) + description: | + A theme-side renderer for the `toc:project` block: rebuilds the TOC + from the site manifest (separate `enumerator` field) instead of the + CLI's baked "1 Title" list, rendering section titles as real `

` + headings with anchor ids inside a labelled `