diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-29 09:11:37 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:16 -0300 |
| commit | a550753fb60be3cdc040c521ddaab9022f5d3248 (patch) | |
| tree | 9d392076f417b6a9d53b6a1bc9ce7fe44d4e499b /docs/fs.md | |
| parent | 4d4818f7baf356866d323e4b337a64a3dddd8adb (diff) | |
| download | pardes-a550753fb60be3cdc040c521ddaab9022f5d3248.tar.gz pardes-a550753fb60be3cdc040c521ddaab9022f5d3248.zip | |
Every EINVAL a write gets says why; DEL in an exec or look line is a control character
An empty name, a word written to log other than follow, a data, sel, dot
or dirty write to a pane with no text, a truncate other than to zero,
and a control character in a look line written through a held open were
refused with no words, logged as `Invalid argument`. Each says its reason
now; and DEL is refused in exec and look lines as in names.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs/fs.md')
| -rw-r--r-- | docs/fs.md | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -410,8 +410,8 @@ same tree without leaving the process. its whole line, `&` jobs included; a command line is at most 1024 bytes, and a longer one written to an exec fails the write (EINVAL, `invalid command line: a command line is at most 1024 bytes`, and one with a control - character but a tab, `invalid command line: it holds a control character - other than a tab`; the root's exec logs either against the pane it would + character (DEL too) but a tab, `invalid command line: it holds a control + character (or DEL) other than a tab`; the root's exec logs either against the pane it would have run at) before anything in it runs; a builtin's line (a long `Msg`, an Edit block) may be longer. To run a command again, execute its line again from its directory: `echo 'make test' > pane/<n>/exec` on @@ -818,6 +818,10 @@ acme's `errors` only takes text, and one record stream is simpler to watch than a file per pane. A `msg` said while a pane is being made can precede that pane's `new`; panes present at boot are recorded before anything else. +Every EINVAL a write gets says why, in its reply and in its `err` record +(`bad character in file name: an empty name`, `invalid write to log: it +takes \`follow\` or \`follow new\``, `invalid write: this pane has no +text`), never a bare `Invalid argument`. Control characters, DEL and C1 controls (U+0080-U+009F) in a record become spaces, and a byte that is not UTF-8 is written `\xNN`, so a record is one line of UTF-8. |
