diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-14 21:26:47 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-09-15 17:24:42 -0300 |
| commit | a624a56e289e4a02a411f83741f0f2c9fc0f0b2e (patch) | |
| tree | b87e3ca10dd1c4417112164f792b5da1e26de0a6 /src/fs-help.txt | |
| parent | 95681ff7017b8a9e4c8f9fa6a7371d1233432f2f (diff) | |
| download | pardes-a624a56e289e4a02a411f83741f0f2c9fc0f0b2e.tar.gz pardes-a624a56e289e4a02a411f83741f0f2c9fc0f0b2e.zip | |
Add Linux Tty9p mounted terminals and forward raw TTY keys
Diffstat (limited to 'src/fs-help.txt')
| -rw-r--r-- | src/fs-help.txt | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/src/fs-help.txt b/src/fs-help.txt new file mode 100644 index 00000000..eeb000cc --- /dev/null +++ b/src/fs-help.txt @@ -0,0 +1,65 @@ +Pardes control filesystem +========================= +The mount root contains self/ (this editor) and os/ (host files). +This guide is available as self/README and self/new/README. +Examples below run inside a Tty9p shell, where PARDES_MOUNT is set. + +Explore +------- + ls "$PARDES_MOUNT/self" + cat "$PARDES_MOUNT/self/index" + ls -l "$PARDES_MOUNT/self/new" + ls "$PARDES_MOUNT/self/pane" + +index lists panes: serial, tag length, body length, reserved zero, +modified flag, then tag text. Use the serial in self/pane/<serial>/. +screen is rendered screen JSON; listeners lists the session addresses. +cons accepts text to display in the editor. + +Create a pane +------------- +new/ lists the same files as a scratch pane, plus this README. +Listing, walking and statting these paths do not create anything. +OPENING any file except README creates one scratch pane below the active pane. +Each open creates a separate pane, even if you open the same path again. + + cat "$PARDES_MOUNT/self/new/ctl" + +This creates a pane and prints its control information, beginning with its +serial. Use self/pane/<serial>/ for all subsequent operations on that pane. +To create a pane and write its initial text in one operation: + + printf 'Hello from the shell\n' > "$PARDES_MOUNT/self/new/body" + +Reading all files recursively would open factories and create panes. +Use ls or stat to inspect them; read README for this guide. + +Work with an existing pane +-------------------------- +Replace <serial> with a number from index or new/ctl: + + cat "$PARDES_MOUNT/self/pane/<serial>/body" + printf 'Replacement text\n' > "$PARDES_MOUNT/self/pane/<serial>/body" + printf 'More text\n' >> "$PARDES_MOUNT/self/pane/<serial>/body" + printf 'name notes.txt\n' > "$PARDES_MOUNT/self/pane/<serial>/ctl" + +body buffer text; for terminals, reads history and writes child input + tag editable pane tag + ctl control information on read; newline-separated commands on write + addr address range; write #0,#5 to select the first five bytes + data read from addr onward, or replace the range selected by addr + xdata read only the range selected by addr; writes replace that range + rdsel read the editor selection + wrsel replace the editor selection + errors write diagnostics + event pane interaction events; opening intercepts Look/Exec events + +Common ctl commands: name PATH, put (save), get (reload), dot=addr, +addr=dot, look PATH, del (close, refusing dirty text), delete (force close). +Reload and force close can discard unsaved changes. + +Terminal panes also expose pty/ctl, pty/status and pty/data. +Writing pty/data sends terminal input; use carriage return to submit a command. +Reading pty/data streams new output; read body for a history snapshot. + +Embedded source files under self/src/ document the complete interface. |
