From bbbaf75a6f231475a7b50be7eaadd141d9264215 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Thu, 1 Oct 2026 13:43:11 -0300 Subject: The landing shows each thing once, lists what is in pardes, and the guide opens on an annotated pane The window shelf drops terminals-are-panes (`landing = false` in clips.toml; the casts show it) and keeps the PDF, image, make, diff and 9P clips. Captions say what happens: the live-text cast renames a variable, runs make and lands on the error; the 9P clip is a shell under 9ns where the session is a directory. Casts stack one per row at the page's width, each showing a frame of itself until it plays. Under the lead, a row of linked chips names what is in pardes: terminals, PDFs, images, language servers, diff review, scripting, themes. Install says how long the first build takes (62 s from a clean cache on 16 cores, measured with the dependencies already fetched), and `project` in style.typ has a `download` slot (url, sha256, arch) install.typ shows once a binary exists. #annotated draws a screenshot with numbered pins and their labels as text beside it; the guide opens with one of the orchard theme's shot: the workspace tag, a column's tag, a pane's tag, the box, the body and the scrollbar, before its glossary. Co-Authored-By: Claude Opus 5.5 --- docs/site/casts/casts.toml | 2 +- docs/site/media/clips.toml | 7 ++++--- docs/site/site.css | 20 ++++++++++++++++++-- docs/site/site.typ | 17 +++++++++++++++-- 4 files changed, 38 insertions(+), 8 deletions(-) (limited to 'docs/site') diff --git a/docs/site/casts/casts.toml b/docs/site/casts/casts.toml index 5771e6be..9f0dd1a5 100644 --- a/docs/site/casts/casts.toml +++ b/docs/site/casts/casts.toml @@ -7,7 +7,7 @@ [[cast]] name = "live-text" title = "Live text" -caption = "Helix keys edit; middle-click runs make; right-click the error opens its line." +caption = "Rename a variable with helix keys, middle-click make, right-click the error." cols = 100 rows = 30 ready = true diff --git a/docs/site/media/clips.toml b/docs/site/media/clips.toml index adb97762..ca3002d0 100644 --- a/docs/site/media/clips.toml +++ b/docs/site/media/clips.toml @@ -1,7 +1,7 @@ # The landing page's recordings, in the order shown. For each clip the # site ships media/.webm and media/.mp4, with media/.png -# as the poster; the first ready clip's poster is also the landing's -# hero image. While `ready` is false the clip shows placeholder.svg and +# as the poster. `landing = false` keeps a clip off the landing (the +# terminal casts show the same) while its files stay for the chapters. While `ready` is false the clip shows placeholder.svg and # no video, so the site builds before a recording exists. [[clip]] @@ -28,10 +28,11 @@ ready = true name = "terminals-are-panes" caption = "A terminal is a pane: Ctrl-b, then move over its output." ready = true +landing = false [[clip]] name = "scripting-over-9p" -caption = "A script drives the session through its virtual filesystem (9P)." +caption = "A shell under 9ns, where the session is a directory: ls, cat, echo." ready = true [[clip]] diff --git a/docs/site/site.css b/docs/site/site.css index 7d6d0660..6e4a2e93 100644 --- a/docs/site/site.css +++ b/docs/site/site.css @@ -150,8 +150,8 @@ body { margin:0; min-height:100vh; background:var(--field) radial-gradient(color @media (max-width:600px) { .cmd pre { white-space:pre-wrap; overflow-wrap:anywhere; } } /* terminal recordings: the first across the page, the rest two by two */ -.casts { display:grid; grid-template-columns:repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap:18px; margin:1em 0 1.4em; } -.casts .first { grid-column:1 / -1; } +/* one per row at the page's full width: a terminal at half width is unreadable */ +.casts { display:grid; grid-template-columns:minmax(0, 1fr); gap:22px; margin:1em 0 1.4em; } .cast .player { background:#121314; } .cast figcaption strong { color:var(--leaf); } .content h2.shelf { font-size:26px; margin:1.2em 0 .4em; } @@ -191,3 +191,19 @@ main[data-page="builtins"] .content h4 + p { margin-top:0; } /* under the name: its prefix is --cols cells of the 13px mono font */ .fstree .desc { display:block; padding-left:calc(var(--cols) * 7.8px); font-size:15px; margin-bottom:.15em; } } + +/* what's in it: a row of linked chips under the lead */ +.inside { display:flex; flex-wrap:wrap; gap:8px 10px; margin:.2em 0 1.1em; padding:0; list-style:none; } +.inside a { display:inline-block; padding:2px 10px; font:17px var(--pixel); color:var(--leaf); background:var(--tag); border:2px solid var(--leaf); text-decoration:none; } +.inside a:hover { color:var(--amber); border-color:var(--amber); } + +/* a screenshot with numbered pins, their labels listed beside it */ +.annotated { margin:1.2em 0 1.6em; display:grid; grid-template-columns:minmax(0, 3fr) minmax(12em, 2fr); gap:14px 22px; align-items:center; } +.annotated .frame { position:relative; border:2px solid var(--leaf); box-shadow:5px 5px 0 var(--shadow); } +.annotated img { display:block; width:100%; height:auto; } +.annotated .pin { position:absolute; transform:translate(-50%, -50%); width:1.5em; height:1.5em; border-radius:50%; + display:flex; align-items:center; justify-content:center; font:700 14px var(--mono); background:var(--amber); color:#1b120a; box-shadow:0 0 0 2px var(--panel); } +.annotated .pins { margin:0; padding-left:1.8em; font-size:18px; } +.annotated .pins li { margin:.25em 0; } +.annotated .pins li::marker { font:700 15px var(--mono); color:var(--amber); } +@media (max-width:600px) { .annotated { grid-template-columns:minmax(0, 1fr); } } diff --git a/docs/site/site.typ b/docs/site/site.typ index e0cd9d4d..787844f5 100644 --- a/docs/site/site.typ +++ b/docs/site/site.typ @@ -26,6 +26,16 @@ Bell Labs: #link("https://9p.io/sys/doc/acme/acme.html")[acme]'s text as the interface, and the 9P protocol.], status: [Linux; macOS in progress. Version #version.], + // what's in it: a word each, linked to where it is told; no prose + inside: ( + ("Terminals", "guide.html#terminals"), + ("PDFs", "builtins.html#builtin-PdfSections"), + ("Images", "reference.html#panes"), + ("Language servers", "setup.html#language-servers"), + ("Diff review", "guide.html#reviewing-diffs"), + ("Scripting", "scripting.html"), + ("Themes", "themes.html"), + ), terminal: [In a terminal], window: [In its own window], start: ( @@ -152,7 +162,7 @@ // " c.at("landing", default: true)) { el("figure", (class: "clip"))[ #if c.ready { video(c) } else { placeholder } #el("figcaption")[#c.caption] -- cgit v1.3