This is determined by looking at the `pdk` key in the config. If `pdk` doesn't exist, `id` will be used (assuming that the structure of the shuttle ID follows ttX where X=[sky, ihp, gf]). If any part fails, it will fall back to `openframe_sky130`.
The pinout can also be manually controlled by setting the `datasheet_config.pinout` key in the shuttle config, and that will be used verbatim. Note that `datasheet_config.pinout` is not checked, so it *must* be exact, otherwise it will cause the datasheet build to fail.
Add new pinouts for SKY130, IHP SG13G2 and GF180mcuD.
Valid keys for `show_pinouts` can now be easily seen in the `pinout_map` dictionary:
- `caravel`
- `openframe`
- `openframe_sky130`
- `customframe_ihp_sg13g2`
- `customframe_gf180mcud`
The pinout chapter in the datasheet has also been reworked: the content now exists directly in the typst template instead of being an external file. This is to make use of the `pinout_map` and to allow for easier modification of the content.
This change also allows the page to make use of the `callout` function.
This is a squash of 5 commits in order to add the new datasheet flow.
fix(datasheet): ensure datasheet can use images properly
fix(datasheet): white page when funding was not specified
This was caused by creating a page before first checking whether there was any content for that page beforehand, so it would result in a rogue white page with no content.
fix(datasheet): missing analog pin tables
fix(datasheet): tweak pandoc settings
Switching from `gfm` to `markdown` should enable more formatting options. The extensions have been configured to be similar to `gfm` but provide some additional things, like `line_blocks` and `lists_without_preceding_blankline`s.