diff options
Diffstat (limited to 'docs/fs.md')
| -rw-r--r-- | docs/fs.md | 20 |
1 files changed, 14 insertions, 6 deletions
@@ -350,7 +350,10 @@ same tree without leaving the process. (`LookWord list` on the root ctl lists every place in a `+Search` pane instead, as pardes did before; `LookWord search` is the default). In a terminal, which has no dot to go on from, a plain word is always listed - in a `+Search` pane, its rows naming the terminal as `@p<serial>:<line>`, + in a `+Search` pane, its rows naming the terminal as + `@p<serial>:<line>:<cols>`, the columns a range, `@p3:12:5-9` (bytes 5 + through 9 of logical line 12, 1-based, both ends in), which a look of the + row selects, and look reads that pane back. - a line written to `exec` is a middle click: a command word from `src/builtins.zig` (`Save`, `Del`, `New`, `Newcol`, `Mount NAME DIAL`, @@ -728,7 +731,8 @@ scratch, opens its prompt for a path, answered `answer <path>` or `answer `answer <serial> <choice|->` when it is answered, by key or ctl, `-` for taken back or for its pane closing with the question standing, `changed <serial>` when a pane's file changed on disk under its unsaved -edits (below), `unsaved <serial> <name>` for each pane an Exit, Restore, +edits (below), `changed <serial> reloaded` when a pane with none reloaded +it, and `changed <serial> deleted` when it was deleted or moved away, `unsaved <serial> <name>` for each pane an Exit, Restore, Del or Delcol refuses over (before that write's `err`), and `save <serial> <name>`, `dump <path>` when a Dump is written and `restore <path>` in a Restore's new log after its panes' `new`s (a relative Restore path is looked for in @@ -751,9 +755,9 @@ between words, and ends in an ellipsis, `…`, as an `err`'s reason is past 200; its serial is the pane it ran at, `-` when the keyboard was on a column or workspace tag, or the line came to the root's ctl, `/tagexec` or a column's ctl or exec), and `err <serial|-> -<file>: <why>` (the serial the pane's whose file it is, and for the root's -`exec` and `look` the pane the line ran at, `err 3 exec: ...`; `-` for -another root file) for every write or truncation the tree refused or that +<file>: <why>` (the serial is that of the pane whose file it is, and for +the root's `exec` and `look` the pane the line ran at, `err 3 exec: ...`; +`-` for another root file) for every write or truncation the tree refused or that failed -- through a mount a shell sees only the errno its kernel mapped the reply to, usually `Invalid argument`, and this is the reason (`err 3 addr: no match for regexp`). A record said again word for word, straight after @@ -893,7 +897,11 @@ longer than a read comes in pieces, so a shell's `read` loop works: `exec 3<>$m/log; echo follow >&3; while read -r line <&3; do ...; done`. bash's `read` takes a chunk, keeps one line and seeks back to just past it; a followed log, `event` and `pty/data` answer a read at an offset inside -their last answer from that answer again, so no record is lost. `tail -f` +their last answer from that answer again, so no record is lost. Through a +FUSE mount (9ns --mntgen) bash's `read -t` does not time out on a followed +file: the read waits in the mount, where its timer cannot cut it; wrap the +loop in `timeout N`, or read with `cat` in the background and poll what it +wrote. `tail -f` never writes `follow`, so it sees nothing new: use the follow open instead. `/screen` returns JSON with `cols`, `rows`, `cursor`, a `styles` table, and row-major `cells` of `[grapheme, style_index]`. Each open freezes one frame until close. A |
