AtlatestRepositoryfolio

folio / tree / test / fixturesf1b-nested-containers.sgd

1#lang folio/doc
2@note["topics/f1b-nested-containers" title: "Folio nodes nested inside core containers" tags: '("folio")]
3
4@p{THIS FIXTURE EXISTS BECAUSE A NARROW FIX WAS JUSTIFIED BY A BAD ARGUMENT.
5The publication lowering originally descended into @code{section} alone,
6reasoning that SD-P7 parameterized only @code{make-section} so no other core
7container can hold a folio node. That establishes only that they cannot hold one
8DIRECTLY: @code{section?} is itself a @code{block-node?}, so a section carrying
9work items nests happily inside an admonition, a list item, a table cell or an
10exercise, and every one of those reached @code{document->plain} unlowered.}
12@aside{
13@section["Inside an admonition" id: "in-aside"]{
14@p{ordinary block}
15@task["t-in-aside" title: "A task under a section under an admonition" status: 'ready]{
16@p{body}
21@items[ordered: #f]{
22@item{
23@section["Inside a list item" id: "in-item"]{
24@p{ordinary block}
25@decision["d-in-item" title: "A decision under a section under a list item" status: 'accepted]{
26@p{body}
32@exercise["ex-outer" "Inside an exercise"]{
33@section["Inside an exercise" id: "in-exercise"]{
34@p{ordinary block}
35@query["q-in-exercise" title: "A query under a section under an exercise" spec: '(status ready)]{}
39@term["source of truth" id: "sot"]{
40@section["Inside a term" id: "in-term"]{
41@p{ordinary block}
42@task["t-in-term" title: "A task under a section under a TERM -- the silent case" status: 'ready]{
43@p{A term renders at the glossary, so nothing crashes: the folio node is simply
44absent from the output while present in the tree. That is the failure this
45module is gated to prevent.}
50@glossary{}
52@end note