118b25554072c36d4d9652523ec15e0c5306101ceChirag Shah<?cs 218b25554072c36d4d9652523ec15e0c5306101ceChirag Shah 318b25554072c36d4d9652523ec15e0c5306101ceChirag Shah# walk the children pages and print them nested below the parent 418b25554072c36d4d9652523ec15e0c5306101ceChirag Shahpage: the node to insert a label, link and check for children 518b25554072c36d4d9652523ec15e0c5306101ceChirag Shahwhitespace: Whitespace to insert before any text in the structure, which helps 618b25554072c36d4d9652523ec15e0c5306101ceChirag Shah with nesting children on recursion. 718b25554072c36d4d9652523ec15e0c5306101ceChirag ShahisRoot: treat this node as if it has children and insert a section node. 818b25554072c36d4d9652523ec15e0c5306101ceChirag Shah 918b25554072c36d4d9652523ec15e0c5306101ceChirag Shah?><?cs 1018b25554072c36d4d9652523ec15e0c5306101ceChirag Shahdef:write_child_nodes(page,whitespace,isRoot) ?> 1118b25554072c36d4d9652523ec15e0c5306101ceChirag Shah<?cs var:whitespace ?>- title: "<?cs var:page.label ?>" 1218b25554072c36d4d9652523ec15e0c5306101ceChirag Shah<?cs var:whitespace ?> path: <?cs var:page.link ?><?cs 1318b25554072c36d4d9652523ec15e0c5306101ceChirag Shah if:subcount(page.children) || isRoot ?> 1418b25554072c36d4d9652523ec15e0c5306101ceChirag Shah<?cs var:whitespace ?> section: <?cs 1518b25554072c36d4d9652523ec15e0c5306101ceChirag Shah /if?><?cs 1618b25554072c36d4d9652523ec15e0c5306101ceChirag Shah each:child = page.children?> 1718b25554072c36d4d9652523ec15e0c5306101ceChirag Shah<?cs var:whitespace ?> - title: "<?cs var:child.label ?>" 1818b25554072c36d4d9652523ec15e0c5306101ceChirag Shah<?cs var:whitespace ?> path: <?cs var:child.link ?><?cs 1918b25554072c36d4d9652523ec15e0c5306101ceChirag Shah if:subcount(child.children) ?> 2018b25554072c36d4d9652523ec15e0c5306101ceChirag Shah<?cs var:whitespace ?> section:<?cs 2118b25554072c36d4d9652523ec15e0c5306101ceChirag Shah call:write_child_nodes(child) ?><?cs 2218b25554072c36d4d9652523ec15e0c5306101ceChirag Shah /if ?><?cs 2318b25554072c36d4d9652523ec15e0c5306101ceChirag Shah /each ?><?cs 2418b25554072c36d4d9652523ec15e0c5306101ceChirag Shah/def ?><?cs 2518b25554072c36d4d9652523ec15e0c5306101ceChirag Shah 2618b25554072c36d4d9652523ec15e0c5306101ceChirag Shah 2718b25554072c36d4d9652523ec15e0c5306101ceChirag Shah 2818b25554072c36d4d9652523ec15e0c5306101ceChirag Shah# print out the yaml nav starting with the toc entry and using the first item, 2918b25554072c36d4d9652523ec15e0c5306101ceChirag Shahwhich is generally the package summary as the root element with the rest of the 3018b25554072c36d4d9652523ec15e0c5306101ceChirag Shahpages as children beneath the package summary. 3118b25554072c36d4d9652523ec15e0c5306101ceChirag Shah 3218b25554072c36d4d9652523ec15e0c5306101ceChirag Shah?> 3318b25554072c36d4d9652523ec15e0c5306101ceChirag Shahtoc:<?cs each:page = docs.pages?><?cs 3418b25554072c36d4d9652523ec15e0c5306101ceChirag Shah if:page.type == "package"?><?cs 3518b25554072c36d4d9652523ec15e0c5306101ceChirag Shah call:write_child_nodes(page,"",1) ?><?cs 3618b25554072c36d4d9652523ec15e0c5306101ceChirag Shah else?> 3718b25554072c36d4d9652523ec15e0c5306101ceChirag Shah <?cs 3818b25554072c36d4d9652523ec15e0c5306101ceChirag Shah call:write_child_nodes(page," ",0) ?><?cs 3918b25554072c36d4d9652523ec15e0c5306101ceChirag Shah /if?><?cs 4018b25554072c36d4d9652523ec15e0c5306101ceChirag Shah/each ?> 41