wip docs rework

This commit is contained in:
David Allemang
2026-06-19 15:35:04 -04:00
committed by David Allemang
parent a503cf2c83
commit c7d0d324bb
10 changed files with 65 additions and 45 deletions

View File

@@ -1,6 +1,4 @@
#import "/docs.typ": docs-page, note, warn
#show: docs-page("index.html", footer: none, header: none)
#let warn = block
#title()

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("/core.html")
= Core Mechanics
== Entity IDs

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("interference.html")
= Interference
== Other Entities

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("/tilesets.html")
= Global Ticking Order
== Tilesets

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("/design-tips.html")
= Design Tips
== Synchronization

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("/channels.html")
= Channels
== Static Channel Allocation

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("/transport-protocols.html")
= Transport Protocols
== Mod 4 Binary

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("/bulk-transport.html")
= Bulk Transport
== Tileable Receivers

View File

@@ -1,7 +1,3 @@
#import "/docs.typ": docs-page, note, tip, warn
#show: docs-page("/network-protocols.html")
= Network Protocols
== Collision Prevention

View File

@@ -1,14 +1,68 @@
#set heading(numbering: "1.1 -")
#set document(title: [The EID Wireless Masterclass])
#include "static/index.typ"
#asset("/style.css", read("static/style.css", encoding: none))
#include "content/00-index.typ"
#include "content/01-core.typ"
#include "content/02-interference.typ"
#include "content/03-tileset.typ"
#include "content/04-design.typ"
#include "content/05-channels.typ"
#include "content/06-transport.typ"
#include "content/07-bulk.typ"
#include "content/08-network.typ"
#let html-title = state("html-title", context document.title)
#let rawdoc(path, body) = document(path, html.html({
html.head({
html.meta(charset: "utf-8")
html.meta(name: "viewport", content: "width=device-width, initial-scale=1")
html.meta(name: "color-scheme", content: "dark light")
html.link(rel: "stylesheet", href: "/style.css")
html.title(context html-title.get())
})
html.body({ body })
}))
#show document: it => {
html-title.update(old => context {
let top = query(selector(heading.where(level: 1, outlined: true)).within(it.location())).first(default: none)
if top != none { return [#top.body - #document.title] } else { return old }
})
it
}
#let doc(path, main) = rawdoc(path, {
html.header()
html.main(id: "main", main)
html.footer()
})
// #let doc(path, main) = rawdoc(path, ..args, html.html({
// html.head({
// html.meta(charset: "utf-8")
// html.meta(name: "viewport", content: "width=device-width, initial-scale=1")
// html.meta(name: "color-scheme", content: "dark light")
// html.link(rel: "stylesheet", href: "/style.css")
// html.title(context document.title)
// })
// html.body({
// html.header(context {
// let doc = query(document).first()
// par(link(doc.location(), doc.title))
//
// let doc = query(selector(document).before(here())).last()
// let ch = query(selector(heading.where(level: 1, outlined: true)).within(doc.location())).first()
// outline(title: none, target: selector(heading).within(doc.location()))
//
// let next = query(selector(document).after(doc.location(), inclusive: false)).first(default: none)
// let prev = query(selector(document).before(doc.location(), inclusive: false)).last(default: none)
// })
// html.main(id: "main", { main })
// html.footer({})
// })
// }))
#{
rawdoc("/index.html", include "content/00-index.typ")
doc("/core.html", include "content/01-core.typ")
doc("/interference.html", include "content/02-interference.typ")
doc("/tileset.html", include "content/03-tileset.typ")
doc("/design.html", include "content/04-design.typ")
doc("/channels.html", include "content/05-channels.typ")
doc("/transport.html", include "content/06-transport.typ")
doc("/bulk.html", include "content/07-bulk.typ")
doc("/network.html", include "content/08-network.typ")
}