summaryrefslogtreecommitdiff
path: root/docs/fs.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/fs.md')
-rw-r--r--docs/fs.md19
1 files changed, 14 insertions, 5 deletions
diff --git a/docs/fs.md b/docs/fs.md
index b19a0a71..c5c5b2e0 100644
--- a/docs/fs.md
+++ b/docs/fs.md
@@ -218,11 +218,20 @@ the same open (factotum's `rpc` shape): write the line, then read `exit N`
once the command has ended and the shell is back at a prompt, followed by
what it printed. The output is what the screen showed between the command's
start and end marks: stderr interleaved, `\r` progress collapsed to its last
-state, no colour; a full-screen program (vim, less) leaves none, and rows a
-program redrew above its start are missed. Only its last 64 KiB are kept,
-from a line start, and the header then reads `exit N cut M` (M bytes left
-out), or `exit N cut` when its start scrolled out of the history. The header
-is always the whole first line. It reads
+state, no colour, tabs as the spaces they drew, trailing spaces trimmed and
+trailing blank lines dropped (`printf 'a\n\n\n'` answers `a`), leading
+whitespace kept; a program on the alternate screen (vim, less, htop) leaves
+none, and rows a program redrew above its start are missed. A bash job notice
+printed before its PROMPT_COMMAND lands in the next run's output. Only its
+last 64 KiB are kept, from a line start, and the header then reads `exit N
+cut M` (M bytes left out). `exit N cut`, with no count, says the output's
+start is not there to read: it scrolled out of the history, the command
+erased it (`clear`, a reset), a start or end mark came on the alternate
+screen, or the command printed more than 8192 rows, of which only the last
+are read so that the answer costs the editor a bounded amount. `exit ?` is a
+command whose end mark carried no status, which is not a success; `error out
+of memory` is an answer that could not be made. The header is always the
+whole first line. It reads
`busy` at once when a command is running, text is typed at the prompt or the
shell has not drawn its first prompt; `error not run` when the shell refused
the line without running it (a fish syntax error; the line is taken back off