summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/fs.md8
1 files changed, 6 insertions, 2 deletions
diff --git a/docs/fs.md b/docs/fs.md
index 0b255390..ffce848e 100644
--- a/docs/fs.md
+++ b/docs/fs.md
@@ -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.