41 lines
1.2 KiB
Markdown
41 lines
1.2 KiB
Markdown
# rivet-typst
|
|
|
|
RIVET _(Register / Instruction Visualizer & Explainer Tool)_ is a [Typst](https://typst.app) package for visualizing binary instructions or describing the contents of a register, using the [CeTZ](https://typst.app/universe/package/cetz) package.
|
|
|
|
It is based on the [homonymous Python script](https://git.kb28.ch/HEL/rivet/)
|
|
|
|
## Examples
|
|
<table>
|
|
<tr>
|
|
<td>
|
|
<a href="./gallery/example1.typ">
|
|
<img src="./gallery/example1.png" width="1000px">
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>A bit of eveything</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
<a href="./gallery/example2.typ">
|
|
<img src="./gallery/example2.png" width="1000px">
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>RISC-V memory instructions (blueprint)</td>
|
|
</tr>
|
|
</table>
|
|
|
|
*Click on the example image to jump to the code.*
|
|
|
|
## Usage
|
|
For more information, see the [manual](manual.pdf)
|
|
|
|
To use this package, simply import `schema` from [rivet](https://typst.app/universe/package/rivet) and call `schema.load` to parse a schema description. Then use `schema.render` to render it, et voilà !
|
|
```typ
|
|
#import "@preview/rivet:0.1.0": schema
|
|
#let doc = schema.load("path/to/schema.yaml")
|
|
#schema.render(doc)
|
|
``` |