summaryrefslogtreecommitdiff
path: root/docs/typ
Commit message (Collapse)AuthorAge
* addr, dot and limit on a pane with no text are refused `invalid address: ↵Gabriel Schneider36 hours
| | | | | | | | | this pane has no text to address`, which a mount reads as EINVAL, not EIO 9ns maps a refusal back to its errno by its words; "this pane has no text to address" held none it knows. The reference quotes the new words. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* /pager's refusals say invalid, so a mount's shell hears EINVAL: `pager: ↵Gabriel Schneider36 hours
| | | | | | | | | | | invalid directory "relative": must be absolute` 9ns maps a refusal back to an errno by its words, and "the directory must be absolute" and "one directory a write" held none it knows, so a shell through the mount got EIO for both. They now say `invalid`, as every EINVAL here does, and the reference quotes the new words. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Recipes work through a pane of their own, its look and exec, and keep a ↵Gabriel Schneider36 hours
| | | | | | command pane while their open lasts; the docs give cmd panes, the err grep, alt-screen prompts, /pager's refusals, Tty+ on a ctl, --, and theme failures in words Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Recipes read look and exec on the open they wrote, the reference says a ↵Gabriel Schneider37 hours
| | | | | | fresh open reads anyone's last answer, and /pager is documented Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The docs say Grep is a literal search, that a write's own status comes ↵Gabriel Schneider37 hours
| | | | | | before the log's last err, and that Delcol opens no +Unsaved Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The docs take round 32: petscii words in terminal and image tags, open ↵Gabriel Schneider38 hours
| | | | | | records and EMFILE, ThemeFile failures and replays, trailing-colon looks, pty/run after clear, no-text addr refusals, held log reads at Restore, pardes - in one open, and a detached pty in pixels Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Scripting shows a bash event helper that owns two tag words, writes other ↵Gabriel Schneider38 hours
| | | | | | clicks back and lets event go, and warns that cat event | while read swallows the next click Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The docs take round 31: one +Pager per directory and how pardes - cleans its ↵Gabriel Schneider40 hours
| | | | | | text, SYSTEMD_PAGER, a paged diff drawn as one, event reads in pieces, sel, write-back origins, +PdfSections rows, a PDF body by lines, bare :N looks and quoted bad values Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Every scripting and setup recipe runs as written: fmt-here finds the session ↵Gabriel Schneider40 hours
| | | | | | itself, the recipes share one stated preamble, run a command waits for its tag, and setup says man reads MANPAGER first Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A terminal's kitty graphics draw as glyph art where pixels cannot, and by ↵Gabriel Schneider41 hours
| | | | | | | | | | | | | | | | | | | | choice: Petscii on the pane, TermImages for new ones Under an outer terminal without kitty graphics a tty pardes cannot pass a terminal pane's images on, so it draws them itself as an image pane's Petscii does: each row of an image is matched to C64-palette glyph art over the cells it covers (GlyphArt.renderRect, the exact-grid half of GlyphArt.render), cached while it is on screen. yazi is still told the kitty protocol works, so it keeps sending its previews. The same art is a choice anywhere: the Petscii builtin now takes a terminal pane too (PaneKind.picture), flipping its images between pixels and glyphs, and a terminal holding images, or drawing them as glyphs by choice, says petscii:on|off in its tag as an image pane does. TermImages real|petscii (default real) is what a new terminal starts with; it is in DumpConfig, /ctl and the reference. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The docs describe the pager that landed: pardes - and its +Pager pane, a ↵Gabriel Schneider41 hours
| | | | | | terminal's PAGER, command panes' cat, Pager pardes|off, and pty/run no longer waiting in one Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The book and the HTML gain "Setting up your environment" after the guideGabriel Schneider42 hours
| | | | | | | | | chapters lists setup.typ second and #doc takes a setup id. Shell lines (#cmd) follow the density too: roomy in the book and the HTML, with a tint and space around them, tight on the A4 sheet; the book sets code blocks on the same tint. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Setting up your environment: a 9ns mount, pardes as the editor, pager and ↵Gabriel Schneider42 hours
| | | | | | yazi opener, the shells with prompt marks, language servers, fonts and plan9port, each snippet tried Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The docs take the 9P agent's round 30: log stats 0, names escape every ↵Gabriel Schneider42 hours
| | | | | | control byte, $winid and the pager defaults, the one client rule, and Shift-Esc said one way in the guide and the cheatsheet Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The book and the HTML set #pairs tables roomy, the A4 sheet tightGabriel Schneider42 hours
| | | | | | | | | A pairs-density state, set to tight by cheatsheet-a4.typ and roomy otherwise, gives book and HTML tables more row padding and room between the key and the meaning. The book sets its body at 10pt with more space around sections and between paragraphs and list items. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The book and the HTML hold every topic, and #doc links to its chapter or sectionGabriel Schneider42 hours
| | | | | | | | | | | | | chapters now names guide, cheatsheet, scripting, reference, themes and building. #doc takes the chapter ids, keeps the old ones mapped onto them (tags and fs to the guide and the reference, config, keys and detached to their guide sections), and links in the book and the HTML, where a doc-links state says every chapter is there; on the A4 sheet it names the chapter and section. The reference points at the scripting and building chapters by #doc instead of in words, and the guide heading for pardes FILE and --wait keeps its two dashes. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* docs/typ gets book and HTML wrappers over one chapter listGabriel Schneider42 hours
| | | | | | | | | | | style.typ lists the chapters in reading order (guide, cheatsheet, scripting, reference, building), each with its content file or none while unwritten. book.typ sets them as an A4 book with a title page and contents, the tutor read from src/tutor.txt last; html.typ sets them as one HTML page with a nav of anchors. An unwritten chapter shows a placeholder, so both compile before the topics exist. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The cheatsheet draws mouse buttons as a mouse, keys as chips, and pairs as ↵Gabriel Schneider42 hours
| | | | | | | | | | | | | | | | | | | | | | | | tables #btn and #chord draw a mouse (left button, wheel, right button) with the pressed part filled; the wheel is a narrow slot on a paper halo, hollow or filled, so it never reads as a button. A chord is the held button, then for each click the held one and that one down, with arrows between; #btn(.., shift: true) adds a ⇧. HTML gets a span with an aria-label. A key is one soft pill with no border: a combination (Ctrl-w) reads Ctrl + w and a sequence (g g, SPC f c) g › g, separators muted inside it; #keys("h", "j", ...) sets alternatives as separate pills. The drift test reads every key a #keys call names. #pairs sets key | meaning content as a two-column table on alternating tints; split: 2 sets the leader map as two such tables side by side. The mouse chords get their own table: cut, paste, copy (B1-B2 then B1-B3, one B1 hold, as mouse.zig says), 2-1 with an argument, 2-3 cancelling. The A4 page draws its own title and drops the content's level-1 heading. docs/typ/README is the function contract for content files. Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Themes become a short Typst topic: choosing one, the native palettes and ↵Gabriel Schneider42 hours
| | | | | | ports, and a theme file's roles Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Building gathers the platforms, options, tests, release gates and how the ↵Gabriel Schneider42 hours
| | | | | | core, threads, detached sessions and 9P fit, from the old design notes checked against the code Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The reference is fs.md's per-file semantics, errors and limits in Typst, ↵Gabriel Schneider42 hours
| | | | | | with the settings table, and says what the pane ctl's Left, Right, Up and Down do Co-Authored-By: Claude Opus 5.5 <[email protected]>
* Scripting over 9P has one chapter, and the served README and the 9P skill ↵Gabriel Schneider42 hours
| | | | | | shrink to a summary, the traps and a pointer to it Co-Authored-By: Claude Opus 5.5 <[email protected]>
* The guide walks a newcomer through pardes day to day, and the cheatsheet ↵Gabriel Schneider42 hours
| | | | | | says what Esc and Shift-Esc really do Co-Authored-By: Claude Opus 5.5 <[email protected]>
* A one-page A4 cheatsheet, the first file of a Typst docs corpus in docs/typGabriel Schneider42 hours
docs/typ/cheatsheet.typ holds the facts as semantic calls (#key, #btn, #chord, #word, #tag, #addr, #file, #cmd, #doc); docs/typ/style.typ defines those once, drawing them for paged output and emitting HTML elements under --features html; docs/typ/cheatsheet-a4.typ is the page. `zig build cheatsheet` renders it when typst is on PATH. A config.zig test reads every .typ in docs/typ and fails when one names a builtin, key binding or default tag pardes no longer has. Co-Authored-By: Claude Opus 5.5 <[email protected]>