summaryrefslogtreecommitdiff
path: root/docs/typ
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-10-01 19:52:35 -0300
committerGabriel Schneider <[email protected]>2026-10-01 19:57:27 -0300
commit0728b937028418232a1da3d9922615a6f49680f2 (patch)
tree74790f74a9f0f349ffb91ac0165d73136d263212 /docs/typ
parentdce94f4453735a6f71385cc020ee79c7604609e7 (diff)
downloadpardes-0728b937028418232a1da3d9922615a6f49680f2.tar.gz
pardes-0728b937028418232a1da3d9922615a6f49680f2.zip
The reference's acme words and its Coming from acme rows say what Get, Putall, Zerox, Tab, Incl, Load and Indent are now, and what covers Font, Send and ID; Load is tested as Restore
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'docs/typ')
-rw-r--r--docs/typ/reference.typ22
1 files changed, 15 insertions, 7 deletions
diff --git a/docs/typ/reference.typ b/docs/typ/reference.typ
index bcdf40e2..5bcd8f6f 100644
--- a/docs/typ/reference.typ
+++ b/docs/typ/reference.typ
@@ -266,10 +266,12 @@ A line written to #file("exec") is #word("Exec"):
#word("Lspwhy") narrates the last query step by step (in `+Lsp`). The
write returns once the answer is in; a pane with no file is refused.
- acme's words run as pardes's where it has one (`Put` is #word("Save"),
- `Delete` a #word("Del") that does not ask); the rest (`Get`, `Putall`,
- `Snarf`, `Cut`, `Paste`, `Zerox`, `Sort`, `Load`, `ID`, `Send`, `Tab`,
- `Indent`, `Local`, `Incl`, `Abort`) are refused, `invalid: acme's Get is not a pardes builtin: ...`, never run as commands. So is a GUI-only
- builtin (#word("Fonts")) on another frontend.
+ `Load` is #word("Restore"), `Delete` a #word("Del") that does not ask);
+ `Get`, `Putall`, `Zerox`, `Tab` and `Incl` are builtins of their own; the
+ rest (`Snarf`, `Cut`, `Paste`, `Sort`, `ID`, `Send`, `Indent`, `Local`,
+ `Abort`) are refused, `invalid: acme's Snarf is not a pardes builtin: ...`,
+ never run as commands. So is a GUI-only builtin (#word("Fonts")) on
+ another frontend.
- Anything else is a command line (a typo ends `exit 127`), at most 1024 bytes, run as the guide
says (#doc("tags", section: "command-panes")): typed into a terminal idle
at an empty prompt, else run in a command pane. #file("exec") reads back
@@ -1028,10 +1030,16 @@ with Client(sys.argv[1]) as c: # a socket path, or (ip, port)
[`addr` reset on first open], [#file("addr") is the pane's; no open resets it (write `0`)],
[OTRUNC on `data` ignored], [`: > data` deletes the addressed text; OTRUNC on #file("body") (`9p write`) replaces it all],
[event flags 1, 2, 4, 8], [1, 4 and 8; never 2, so no expansion record follows],
- [`Get`], [`get` on the pane's #file("ctl"); `Get` itself only in a directory pane],
- [`Put`, `Delete`], [#word("Save"); a #word("Del") that does not ask],
+ [`Get`], [#word("Get") reads the file again, refusing unsaved edits once; `Get file` loads that file into the pane; in a directory pane it reads the directory again (also `get` on #file("ctl"))],
+ [`Put`, `Delete`, `Load`], [#word("Save"); a #word("Del") that does not ask; #word("Restore")],
+ [`Putall`], [#word("Putall"): every pane with unsaved edits to a file is saved, a refused one said],
+ [`Zerox`], [#word("Zerox"): a second pane on the buffer, one text, undo and unsaved state, its own scroll and cursor; an event reader on one hears no edit made through the other],
+ [`Tab`], [#word("Tab") `N`, 1-16: for every pane, not per window; bare, it says the width],
+ [`Incl`], [#word("Incl"): for the session, not per window, seeded with `/usr/include` and `/usr/local/include`; a name found nowhere else (`stdio.h`, `<stdio.h>`) is tried there],
+ [`Indent`], [always on: #key("Enter"), #key("o") and #key("O") keep the line's indent as it is],
[`Snarf`, `Cut`, `Paste`], [refused: the chords, #key("y"), #key("p")],
- [acme's other builtins], [refused: `Putall`, `Zerox`, `Sort`, `Load`, `ID`, `Send`, `Tab`, `Indent`, `Local`, `Incl`, `Abort`],
+ [`Font`, `Send`, `ID`], [#word("Font"); #word("Repl") and #word("Exec"); `$winid`],
+ [acme's other builtins], [refused: `Sort`, `Local`, `Abort` (plan9port's debugging word)],
[Edit], [no `< | >`, `X`, `Y`, `b B D e r w f`, no `\1`-`\9`; an alternation takes the first branch that matches, not the longest (#doc("fs", section: "edit"))],
[`win`], [#word("Tty") is a VT terminal pane; #file("pty/run") runs a line at its prompt and answers `exit N` and the output; with #word("Repl") bound, #word("Exec") on a source pane types the text into it],
[a directory window], [as acme's: a text pane named `dir/` (#file("index") kind `text`, #file("ctl") isdir 1), its entries in columns sorted bytewise, dotfiles shown, a directory's marked `/`; blanks pad the columns where acme's tabs do; a #word("Look") at an entry is from that directory, `Get` or a look at it again reads it again, and an edit is kept until then rather than lost to a resize; never dirty, #word("Save") refuses it; #word("DirLook") `terminal` types `ls` into a terminal there instead],