From 7fe3a1d9a9ee3c2510ecac40e079608447eead70 Mon Sep 17 00:00:00 2001 From: Gabriel Schneider Date: Tue, 29 Sep 2026 03:14:45 -0300 Subject: The docs give the full-column refusal, an Edit block left open at close, and byte columns Round 11's doc findings: the skill names the full-column refusal beside the 64-pane cap; fs.md and the skill say an Edit block still open when its open closes fails with unmatched { and an err; and line:col's byte columns get the tip for character columns from tools (the same on ASCII, else a search or #n). A unit test pins the unmatched { at close. Co-Authored-By: Claude Opus 5.5 --- docs/fs.md | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'docs/fs.md') diff --git a/docs/fs.md b/docs/fs.md index 80735642..cf6acb60 100644 --- a/docs/fs.md +++ b/docs/fs.md @@ -406,8 +406,10 @@ whole: a mount cuts a big write at its message size (4 KiB through the kernel's, 8 KiB from a client that asks), anywhere, and each piece comes as a write of its own, so the open keeps a last line with no newline yet, or an Edit block whose text has not ended, until its next write, and runs it -then; what is left when it closes runs at the close. A fragment never runs -on its own. A line or Edit block held past 1 MiB is refused (EINVAL). +then; what is left when it closes runs at the close, where an Edit block +whose `{` or text never ended fails as any unclosed block does (``unmatched +`{'``, logged as an `err`; nothing changes). A fragment never runs on its +own. A line or Edit block held past 1 MiB is refused (EINVAL). A look takes acme's addresses after a colon (editors/acme/look.c:450): a line written to `look` as `file:/re/`, `file:#n`, `file:$` or any address @@ -509,7 +511,10 @@ takes in `file:12:5`: `12:5` is the point at line 12, column 5, and it composes like any simple address (`12:5,14:1`, `12:5+#3`). The column is in bytes from 1, as Look's is, clamped to the end of the line and snapped back to the start of the rune it falls in; a line past the end, or -column 0, is `address out of range`. sam would read `12:5` as a syntax +column 0, is `address out of range`. Since the column counts bytes, a +column a tool gives in characters (pytest's, a compiler's) is the same +only on an ASCII line; elsewhere address the line and search it +(`12/name/`) or use `#n`. sam would read `12:5` as a syntax error. Truncating `data` or `xdata` deletes the range `addr` names and nothing else, so a shell's `echo NEW > data` replaces that range, `: > data` -- cgit v1.3