13 Commits
Author SHA1 Message Date
Kristaps Jurkans 5779f397bc feat: add interactive document checker (#164)
* feat: add interactive document checker

This utility can be used to audit the documentation of the projects on the shuttle, marking them to be removed from the datasheet.

Usage:
`python3 tt/configure.py --doc-check`, inspect using `nano` controls, then answer prompt upon exiting `nano`.
2026-03-30 15:15:24 +02:00
Kristaps Jurkans becdf49dd7 fix(docs): remove extra str call (#159)
The `str()` call is already added by calling `DocsHelper._as_str_or_content()`, so having both causes an error which prevents docs from building.
2026-03-10 12:33:07 +01:00
Kristaps Jurkans 1caab70038 fix(docs): make project doc flow compatible with updated template (#158)
The shuttle datasheet flow was updated to santise strings properly, and within the changes were some updates to the template that was used. This template is shared between the shuttle and individual projects, but the standalone version wasn't updated to be compatible. This commit rectifies that issue.
2026-03-08 04:32:54 +01:00
Kristaps Jurkans bfd5020b4c fix(docs): attempt to sanitise user strings from yaml
User strings were used as-is in certain parts since they were taken directly from `info.yaml`, but this could sometimes cause the datasheet build to fail since they've found a way (intentionally or not) to escape the content box that they were in.

This commit attempts to address this issue by:
- Sanitising user input using regex
- Using Typst's `str()` function instead of content boxes where possible
- Clarifying syntax in certain sections

Hopefully these changes will remove (or at least reduce) the chances of someone breaking the build.
2026-03-07 22:55:01 +02:00
Kristaps Jurkans 310e50e3b1 fix(datasheet): make links inside callout boxes white 2025-12-15 19:53:30 +02:00
Kristaps Jurkans 99ff45921a feat(datasheet): automatically determine appropriate pinout table
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.
2025-12-15 19:53:30 +02:00
Kristaps Jurkans 4afe8f6941 feat(datasheet): add new pinouts
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.
2025-12-15 19:53:30 +02:00
kris j 9a14f318d6 feat(precheck): check if power pins have USE in definition (#139)
* feat(precheck): check if power pins have `USE` in definition

* fix: expect zero or more spaces, instead of one or more

* feat(precheck): check for missing `USE POWER`

* feat(precheck): check for missing `USE GROUND`

* feat(precheck): add simple README with link to LEF/DEF reference manual
2025-11-20 08:57:05 +02:00
Kristaps Jurkans 6f6b5042c2 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.
2025-10-30 15:27:41 +00:00
Kristaps Jurkans b8c4e91ab1 Fix missing analog pin tables 2025-10-30 13:34:20 +00:00
Kristaps Jurkans 7e4e1045a9 Fix 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.
2025-10-30 13:10:21 +00:00
kris j 8132ad6ecc fix(docs): ensure datasheet can use images properly (#125) 2025-10-16 01:35:54 +02:00
kris j c36badfb60 feat(docs): add new datasheet generation method (#123) 2025-10-16 00:11:07 +02:00