summaryrefslogtreecommitdiff
path: root/docs/fs.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/fs.md')
-rw-r--r--docs/fs.md27
1 files changed, 19 insertions, 8 deletions
diff --git a/docs/fs.md b/docs/fs.md
index 5c952403..7fa33a02 100644
--- a/docs/fs.md
+++ b/docs/fs.md
@@ -214,7 +214,10 @@ go. An `exec` line's blanks at either end are trimmed.
is the home directory ($HOME, else the passwd entry's; `~user` that
user's) here and wherever a path is typed (`name`, `Save`, `ThemeFile`,
`DumpDir`, `Restore`, `pardes '~/x'`), even beside a file named `~`: write
- `./~` for that.
+ `./~` for that. A path to no file is a miss, as a search that finds
+ nothing is: said on the message row and logged as an `err`, the write
+ still answered. A file that is there but will not open (no permission to
+ read it, say) fails the write, with why.
- `@p<serial>:<addr>` addresses a pane by serial, a terminal's logical lines
too.
- a directory types `ls` into a terminal idle there, else opens one there.
@@ -241,7 +244,10 @@ A line written to `exec` is a middle click:
nothing, silently, here and in every ctl.
- the language server's words ask about a file pane's text at its cursor
(set it with `addr` and `dot=addr` first): `Hover` fills `+Hover`,
- `Rename new` renames the symbol everywhere and lists the places,
+ `Rename new` renames the symbol in the file and says how many ranges it
+ changed (on the message row, and so in /log) without listing them; one
+ that finds nothing to rename fails; a rename the server spreads over
+ other files lists them in `+Search`,
`Diagnostics` and `Symbols` list the file's in `+Search`, `Lspinfo` says
which server serves the file and its state, and `Lspwhy` narrates the
last query step by step (in `+Lsp`), to tell why it found nothing. The
@@ -313,7 +319,7 @@ Writes take settings and session builtins (`scope = .session` in
write is answered, then **every connection is hung up**: dial again, and
restart a 9ns mount. The new log has a `new` per pane, `restore <path>`,
then `restored <old> <new>` per pane and `restoredcol <old> <new>` per
- column. Undo history and REPL bindings are not restored; a command pane
+ column. Undo history, the jump list and REPL bindings are not restored; a command pane
comes back showing how it ended (`exit ?` if it was running) and does not
run again.
- `Kill [word...]` (above), `Mount name dial`, `Unmount name`, `Theme x`,
@@ -405,7 +411,9 @@ A terminal's body is its history as plain text in logical lines (wrapped
rows joined), frozen per open; writing it sends input to the child as typed
keys, never a paste: no bracketed-paste marks around it, even when the
program asked for them, so a newline in it is Enter. A PDF's
-body is the text layer of the page shown; images and PDFs take no write
+body is the text layer of the page shown, read-only: it is no text of the
+pane's, so `addr`, `data`, `dot` and a `file:<addr>` look do not address
+it (a PDF's `:<n>` is its page); images and PDFs take no write
(`this pane has no text`).
**`sel`** reads the selected text; a write replaces it. **`errors`** is
@@ -555,7 +563,9 @@ flag is `dirty`; a `+New` scratch reads 1 but holds up nothing under 100
bytes.
The writes of one open of `data`, `xdata` or `body` are one undo step (so a
-multi-line `printf` is one). To make a loop of opens one step: `echo 1 >
+multi-line `printf` is one), as long as no other client or keystroke edits
+the pane between them: such an edit ends the step, and the open's next
+write starts another. To make a loop of opens one step: `echo 1 >
mark` (a point now), `echo 0 > mark`, the writes, `echo 1 > mark`.
### event
@@ -683,9 +693,10 @@ become spaces.
- `/commands`: `Word [arg] root|pane|both [values] -- sentence`, one a line,
generated from the builtin registry (`both`: Edit, at the active pane from
the root).
-- `/recent`: up to 200 files, most recent first, `open <path>` or `closed
- <path>`; kept in `$XDG_STATE_HOME/pardes/recent`. `Recent` shows them in a
- pane; a look at a row reopens the file at its last dot.
+- `/recent`: up to 200 files, PDFs and images, most recent first, `open
+ <path>` or `closed <path>`; kept in `$XDG_STATE_HOME/pardes/recent`.
+ `Recent` shows them in a pane, an open one at its dot now and a closed
+ one at its last (a PDF's is its page); a look at a row reopens it there.
- `/status`: `pid`, `version`, `panes`.
- `/os/`: existing regular files take read, write and truncation to zero;
create, remove, rename and metadata changes are refused; ownership is