Skip to main content

HTML documentation generator for SystemRDL-based register models

Project description

build PyPI - Python Version

PeakRDL-html

Generate address space documentation HTML from compiled SystemRDL input.

For the command line tool, see the PeakRDL project.

Installing

Install from PyPi using pip:

python3 -m pip install peakrdl-html

Example

The easiest way to use PeakRDL-html is via the PeakRDL command line tool:

# Install the command line tool
python3 -m pip install peakrdl

# Generate HTML
peakrdl html your_design.rdl -o output_dir

Here is an example of HTML output generated from a fictional SystemRDL register description: turboencabulator.rdl.

PeakRDL TOML config options

If using the PeakRDL command-line tool, some additional things can be configured via the TOML configuration file.

[html]
user_template_dir = "path/to/dir/"
user_static_dir = "path/to/dir/"
extra_doc_properties = ["list", "of", "properties"]
generate_source_links = false
reverse_fields = false

Reference

HTMLExporter(**kwargs)

Constructor for the HTML exporter class

Optional Parameters

  • markdown_inst
    • Override the class instance of the Markdown processor. See the Markdown module for more details.
    • By default, the following extensions are loaded: 'extra', 'admonition', 'mdx_math'
  • user_template_dir
    • Path to a directory where user-defined template overrides are stored.
  • user_static_dir
    • Path to user-defined static content to copy to output directory.
  • user_context
    • Additional context variables to load into the template namespace.
  • show_signals
    • Show signal components. Default is False
  • reverse_fields
    • Show fields in reverse order (LSB to MSB). Default is False (MSB to LSB).
  • extra_doc_properties
    • List of properties to explicitly document.

      Nodes that have a property explicitly set will show its value in a table in the node's description. Use this to bring forward user-defined properties, or other built-in properties in your documentation.

  • generate_source_links
    • If True, attempts to generate links back to original RDL source deginitions. Defaults to True.
  • gitmetheurl_translators
    • Override the list of GitMeTheURL translators to use when generating source links. If unset, GitMeTheURL uses its builtin translators, as well as any installed plugins.

HTMLExporter.export(node, output_dir, **kwargs)

Perform the export!

Parameters

  • nodes
    • Top-level node to export. Can be the top-level RootNode or any internal AddrmapNode. Can also be a list of RootNode and any internal AddrmapNode.
  • output_dir
    • HTML output directory.

Optional Parameters

  • footer
    • Override footer text.
  • title
    • Override title text.
  • home_url
    • If a URL is specified, adds a home button to return to a parent home page.
  • skip_not_present
    • Control whether nodes with ispresent=false are generated. Default is True.

API Example

Pass the elaborated output of the SystemRDL Compiler into the exporter.

Assuming root is the elaborated top-level node, or an internal AddrmapNode:

from peakrdl_html import HTMLExporter

exporter = HTMLExporter()

exporter.export(root, "path/to/output")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

peakrdl_html-2.12.2.tar.gz (11.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

peakrdl_html-2.12.2-py3-none-any.whl (5.6 MB view details)

Uploaded Python 3

File details

Details for the file peakrdl_html-2.12.2.tar.gz.

File metadata

  • Download URL: peakrdl_html-2.12.2.tar.gz
  • Upload date:
  • Size: 11.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for peakrdl_html-2.12.2.tar.gz
Algorithm Hash digest
SHA256 7be4b92dead8d296d714da5d25e71249ebf488bccdd255ed7581f32dd3a99546
MD5 6cd89b7084d7ae1adb5e4b6873bbbda1
BLAKE2b-256 190a069fd914b588ef1d9dbc89031d962293fa2b9255c3b1104f9de9f0891320

See more details on using hashes here.

Provenance

The following attestation bundles were made for peakrdl_html-2.12.2.tar.gz:

Publisher: build.yml on SystemRDL/PeakRDL-html

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file peakrdl_html-2.12.2-py3-none-any.whl.

File metadata

  • Download URL: peakrdl_html-2.12.2-py3-none-any.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for peakrdl_html-2.12.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1b74a43579900b48fb6ebf0468b91c50d2256828d1f9751da8bfeb2f0883710c
MD5 3c9938bd66582a8b5068edbf255a4b00
BLAKE2b-256 14328bb83251ca56366af0fcea102331b337e87b2baeca81ade16942357e172f

See more details on using hashes here.

Provenance

The following attestation bundles were made for peakrdl_html-2.12.2-py3-none-any.whl:

Publisher: build.yml on SystemRDL/PeakRDL-html

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page