Please review an enhancement to the other specifications and tool guides (man pages) that adds the following features:
- Support for light and dark themes - Permalinks for headings on hover - Responsive layout for wide screens and mobile devices Generated documentation [can be viewed here](https://cr.openjdk.org/~hannesw/8377548/docs.00/specs/index.html). The implementation for the new features is shared with API documentation, which was refactored to make it easier to apply in specs and man pages, which use a variety of build mechanisms. Instead of hard-coding the theme selector markup everywhere it is needed as we did before, the `initTheme()` function now creates the whole UI. This has the added benefit that no disfunctional theme selector button is generated if theme support is not loaded for some reason. The `initTheme()` function also encapsulates the whole theme functionality, whereas before it was intermingled with other code. The JVM Tool Interface specification does not participate in the new features because it uses inline styles that are not compatible with themes, and permalink conventions for headings that are not recognized by the script. I can file a bug for this if it is considered a serious enough issue. --------- - [x] I confirm that I make this contribution in accordance with the [OpenJDK Interim AI Policy](https://openjdk.org/legal/ai). ------------- Commit messages: - 8377548: Implement dark theme for other specs and tool guides Changes: https://git.openjdk.org/jdk/pull/33127/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=33127&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8377548 Stats: 548 lines in 9 files changed: 324 ins; 127 del; 97 mod Patch: https://git.openjdk.org/jdk/pull/33127.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/33127/head:pull/33127 PR: https://git.openjdk.org/jdk/pull/33127
