Skip to content

Commit 545a93e

Browse files
authored
Add examples section (#14)
* Add examples section * Fix wrapping
1 parent 5c537e8 commit 545a93e

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

docs/netsuke-design.md

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -262,11 +262,11 @@ Each entry in the `rules` list is a mapping that defines a reusable action.
262262
field (defaulting to `/bin/sh -e`). For `/bin/sh` scripts, each interpolation
263263
is automatically passed through the `shell_escape` filter unless a `| raw`
264264
filter is applied. Future versions will allow configurable script languages
265-
with their own escaping rules.
265+
with their own escaping rules.
266266
On Windows, scripts default to `powershell -Command` unless the manifest's
267-
`interpreter` field overrides the setting.
268-
Exactly one of `command` or `script` must be provided. The manifest parser
269-
enforces this rule to prevent invalid states.
267+
`interpreter` field overrides the setting. Exactly one of `command` or
268+
`script` must be provided. The manifest parser enforces this rule to prevent
269+
invalid states.
270270

271271
Internally, these options deserialize into a shared `Recipe` enum tagged with
272272
a `kind` field. Serde aliases ensure manifests that omit the tag continue to
@@ -1386,6 +1386,23 @@ possibilities for future enhancements beyond the initial scope.
13861386
build system, allowing for massively parallel builds across a cluster of
13871387
machines. The user's `Netsukefile` manifest would remain unchanged.
13881388

1389+
## Section 10: Example Manifests
1390+
1391+
The repository includes several complete Netsuke manifests in the
1392+
`examples/` directory. They demonstrate how the YAML schema can be applied
1393+
to real-world projects.
1394+
1395+
- [`basic_c.yml`](../examples/basic_c.yml): a minimal C project compiling two
1396+
object files and linking them into a small application.
1397+
- [`photo_edit.yml`](../examples/photo_edit.yml): converts RAW photographs and
1398+
generates a simple HTML gallery for previewing the results.
1399+
- [`visual_design.yml`](../examples/visual_design.yml): rasterises a set of SVG
1400+
design assets into PNG images using Inkscape.
1401+
- [`website.yml`](../examples/website.yml): builds a static web site from
1402+
Markdown pages with Pandoc and assembles an index page.
1403+
- [`writing.yml`](../examples/writing.yml): produces a multi-chapter PDF book
1404+
by combining chapters rendered from Markdown via LaTeX.
1405+
13891406
### **Works cited**
13901407

13911408
[^1]: Ninja, a small build system with a focus on speed, accessed on July 12,

0 commit comments

Comments
 (0)