diff options
Diffstat (limited to 'docs/typ/scripting.typ')
| -rw-r--r-- | docs/typ/scripting.typ | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/docs/typ/scripting.typ b/docs/typ/scripting.typ index 8b5831b8..d3e42573 100644 --- a/docs/typ/scripting.typ +++ b/docs/typ/scripting.typ @@ -39,9 +39,12 @@ and the Python client in the source tree. A command run from a pane (#btn("B2") on a line in its tag or text) also gets `$winid`, the serial of that pane, as acme's commands do; it is unset for one run from a column's or the workspace's tag, and `PARDES_PANE` -stays the command pane's own. Every pane's child, a terminal's shell or a -command, gets `PAGER=cat` and `GIT_PAGER=cat` unless your environment sets -them, so nothing waits in a pager. +stays the command pane's own. + +A paging command run through #file("pty/run") does not hang: the +terminal's pager is `pardes -`, which puts the text in a `+Pager` pane and +returns. A command pane pages through `cat`; its output is a pane already. +Both hold only where your environment names no pager. = Recipes @@ -102,10 +105,6 @@ pardes the editor of every program run there. the bad one fails. Send a block as one write (`cat block > $p/ctl`), and end every write whose result matters with a newline. - plan9port's `9p write` opens with OTRUNC: `echo x | 9p write pane/3/body` replaces the whole body. Append with `>>` through a mount. -- #file("pty/run") runs in the terminal's own shell, so a command that - pages waits in the pager when your environment names one (pardes sets - `PAGER` and `GIT_PAGER` to `cat` only when it does not): run - `git --no-pager ...` or `PAGER=cat ...`. - `tail -f log` never sees anything new: write `follow` on the open you read. Through a FUSE mount bash's `read -t` cannot time out: wrap the loop in `timeout`. |
