summaryrefslogtreecommitdiff
path: root/docs/fs.md
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-30 14:03:40 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:17 -0300
commita7d5422132d3b1ae00948e53314747814bb5814d (patch)
tree9d044f82722f029bce920282c198054abc4a01bf /docs/fs.md
parentb43866d6ab784e518df8dbef374147367358ada9 (diff)
downloadpardes-a7d5422132d3b1ae00948e53314747814bb5814d.tar.gz
pardes-a7d5422132d3b1ae00948e53314747814bb5814d.zip
fs.md gives the msize as 64 KiB, documents the Newcol refusal for tags that would not fit, and says how 16 columns is really reached
The docs said msize 8192, but the editor has offered 65536 since the bulk write work. They also told a reader to reach 16 columns without saying it needs a 160-cell window, or that Newcol halves the column it is run from. The "the panes' tags would not fit" refusal was not documented at all. The column paragraph now says all three, and that a refused Newcol logs its err alone. docs/cloud9.md's options line gives the current numbers. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs/fs.md')
-rw-r--r--docs/fs.md16
1 files changed, 11 insertions, 5 deletions
diff --git a/docs/fs.md b/docs/fs.md
index 49b10a7b..c7ef0857 100644
--- a/docs/fs.md
+++ b/docs/fs.md
@@ -153,7 +153,8 @@ column's `exec` take one command a line. The whole write is checked first
(a control character other than a tab fails it all, EINVAL); then lines run
in order, and a failing line fails the write after the lines before it took
effect, as acme's ctl does. Blank lines are skipped. A mount cuts a big
-write into pieces of at most one message (msize 8192, less the header), and
+write into pieces of at most one message (msize 64 KiB, 65536 negotiated,
+less the header), and
each line runs once it is whole. A write that does not fill its message is
whole, so its last line runs even without a newline (`printf Save > exec`). An `Edit` whose `{` or
`a`/`c`/`i` text is still open waits for the next write on that open, and
@@ -322,9 +323,14 @@ none). `current` is the column with the keyboard now, which may differ
from the active one. `/index`'s last field is each pane's column serial.
A session holds 16 columns (`no space for a column: 16 max`, ENOSPC), each at
-least 10 cells wide (`Newcol` from a column under 20 fails `this one is too
-narrow to split`). Since root `Newcol` halves the active column, reach 16 by
-writing `Newcol` to the widest column's `exec`.
+least 10 cells wide, so 16 wants a window 160 cells wide or more. `Newcol`
+halves the column it is run from, and one under 20 cells does not split
+(`this one is too narrow to split`): reach 16 by writing `Newcol` to the
+widest column's `exec` each time, not to the root's, which keeps halving the
+one just made. `Newcol` is refused as well when a narrower column would
+wrap its panes' tags onto more rows and leave one under its tag and two
+rows (`Newcol: no space for a column: the panes' tags would not fit`); a
+refused `Newcol` logs its `err` alone and uses up no column serial.
`/col/<n>/ctl` takes `Delcol`, `Joincol`, `New` and `Tty` for that column;
`/col/<n>/exec` is a click in its tag; `rmdir /col/<n>` closes an empty column
@@ -664,7 +670,7 @@ become spaces.
| panes | 64 (16 on the board) |
| columns | 16 (6 on the board), each at least 10 cells wide |
| rows a pane keeps | its tag and 2 |
-| msize | 8192 offered |
+| msize | 65536 (64 KiB) offered |
| connections | 16 Unix+TCP, 16 QUIC |
| opens holding state | 64 |
| named mounts | 8 |