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.1.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.1-py3-none-any.whl (5.6 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: peakrdl_html-2.12.1.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.1.tar.gz
Algorithm Hash digest
SHA256 3de6193961ad44fde4e95d197dd2c2b1a5349d2bea361a0ac4bf04715ae5e0f7
MD5 516e27a6790a04058a28f8e871889cf4
BLAKE2b-256 62442bf8f303920aa37d74c6dde4602f221bfe0e5a205b8f9e62057048c66ffc

See more details on using hashes here.

Provenance

The following attestation bundles were made for peakrdl_html-2.12.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: peakrdl_html-2.12.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2b1c2f570649b9572f10c77635f78e9998af81785ce0a33028b6edcb45707fbc
MD5 2d0bd4d32c57685a0b70e3676e83aa59
BLAKE2b-256 9947bb735d6af6f046cfe66f2ea69683075a399c7228d4830b635e25ded7d42c

See more details on using hashes here.

Provenance

The following attestation bundles were made for peakrdl_html-2.12.1-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