dart-sdk/runtime/tools/wiki
Alexander Thomas e87f2d895c [build] Switch builds to the ninja in DEPS
Note: this "upgrades" ninja to 1.11.1.

Change-Id: Idca0f8a2a67cf5d5dbe75661bb14de174012580f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/261101
Reviewed-by: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Alexander Thomas <athom@google.com>
2022-09-27 11:24:03 +00:00
..
build
CustomShellSessionPygmentsLexer
styles
templates
xref_extractor [build] Switch builds to the ninja in DEPS 2022-09-27 11:24:03 +00:00
README.md

This directory contains helper scripts for rendering runtime wiki pages as HTML.

# Run webserver for development.
$ runtime/tools/wiki/build/build.py

# Build wiki for deployment
$ runtime/tools/wiki/build/build.py --deploy

Markdown extensions

Asides

Paragraphs wrapped into <aside>...</aside> will be rendered as a sidenote on margins of the page.

Cross-references @{ref|text}

Cross-references are rendered as links to GitHub at the current commit.

  • @{file-path} is just rendered a link to the given file;
  • @{package:name/path.dart} is rendered as a link to file path.dart within package name - actual path is resolved via root .packages file in the SDK root;
  • @{c++-symbol} is rendered as a link to the line in the file which defines the given C++ symbol.

Prerequisites

  1. Install all Python dependencies.
    $ pip3 install coloredlogs jinja2 markdown aiohttp watchdog pymdown-extensions pygments
    
  2. Install the custom pygments lexer we use for shell session examples:
    $ cd runtime/tools/wiki/CustomShellSessionPygmentsLexer
    $ python3 setup.py develop
    
  3. Install SASS compiler (make sure that SASS binary is in your path).
  4. Generate xref.json file following instructions in xref_extractor/README.md.