summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-28 14:13:25 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:15 -0300
commit7284b72396398213356577345151bd79e497d27c (patch)
tree60e98eed31c4469b967f427996a8767eaaea77d8 /docs
parent0de2e7f04977b22df3f7b6ab1690eb8a6c905cd4 (diff)
downloadpardes-7284b72396398213356577345151bd79e497d27c.tar.gz
pardes-7284b72396398213356577345151bd79e497d27c.zip
Paint a body with context rows once, into its layer, and join it
joinBody replaces the second paint of a file body with compact tree-sitter context rows: the body is painted once into its body layer (more rows than the grid has) and the grid's body rows are copies of the layer's first ones; the rail is the grid's alone, from its region. Which rows are context rows is still decided by a text build before the paint, and a body without them reuses that text and paints straight onto the grid: every other body has no row the grid cannot show, so it gets no layer and no copy. Each part now paints only its own rows. The tag paints the tag rows of every pointer sweep that crosses them (the select sweep in the tag's colours, the look-hover affordance over it, a middle or right sweep over both in its button's tint), which the body used to paint over the tag on the grid alone; the body paints only body rows, and a select sweep begun on the tag marks the body rows it crossed before the text is laid down, as it did. Grid and layers agree, the snapshot goldens are byte-identical, and a test checks the joined grid rows and caret against a plain paint of the same body with the tag on top and at the bottom. The GUI goldens gain a terminal pane scene.
Diffstat (limited to 'docs')
-rw-r--r--docs/render-pipeline.md10
1 files changed, 10 insertions, 0 deletions
diff --git a/docs/render-pipeline.md b/docs/render-pipeline.md
index 590a7e72..f63b9a0b 100644
--- a/docs/render-pipeline.md
+++ b/docs/render-pipeline.md
@@ -842,6 +842,16 @@ goldens; ssh/tty byte budgets; wire version bump breaks mixed-version attach.
4. The macOS shell breaks at stages 7 and 8 (Layer ABI, mark_hover). Accepted,
since the macOS build is ignored for now.
5. Stage-0 GPU goldens gate locally only.
+6. Revisit at the first visual stage (from stage 5): the notice layer lost
+ its hover word to keep the grid's behaviour. Notice words are Look/Exec
+ targets, so bring the hover affordance back in BOTH the grid and the
+ layer then.
+7. Revisit at stage 8 (from stage 6): a body without context rows has no
+ layer (paint once, straight onto the grid). If the GUI is to read every
+ body from a layer, give every body one then and measure the copy. The
+ context-row path also still builds the body's text twice (a pre-pass
+ with body_rows 0 decides the context rows, renderBody builds it again at
+ the layer's rows); the paint is single. Measure both there.
## 15. Questions for the user