diff options
| -rw-r--r-- | .agents/skills/pardes-9p/SKILL.md | 9 | ||||
| -rw-r--r-- | docs/fs.md | 7 |
2 files changed, 16 insertions, 0 deletions
diff --git a/.agents/skills/pardes-9p/SKILL.md b/.agents/skills/pardes-9p/SKILL.md index 7cdca1a0..85f26ca5 100644 --- a/.agents/skills/pardes-9p/SKILL.md +++ b/.agents/skills/pardes-9p/SKILL.md @@ -94,6 +94,15 @@ echo 'sig INT' > "$m/pane/$t/pty/ctl" # interrupt `busy: <program> is running` means the prompt is not free: a program holds the terminal, so talk to it through `pty/data`. +Ask the language server at a file pane's cursor (`addr` then `dot=addr`): + +```sh +echo '/myFunc/' > "$m/pane/$n/addr"; echo 'dot=addr' > "$m/pane/$n/ctl" +echo Hover > "$m/pane/$n/exec" # +Hover; Rename new, Diagnostics, Symbols +echo Lspwhy > "$m/pane/$n/exec" # +Lsp: why the last query found what it did +echo Lspinfo > "$m/pane/$n/exec" # which server, and its state +``` + ## Follow what happens ```sh @@ -213,6 +213,13 @@ A line written to `exec` is a middle click: A builtin that needs its argument (`Msg`, `Mount`, `Find`) written bare is `wrong #args in control message "Msg"`, and so is one that takes none written with one (`Config extra`). +- 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, + `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 + 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 `Save`, `Delete` a `Del` that does not ask); the rest (`Get`, `Putall`, `Snarf`, `Cut`, `Paste`, `Zerox`, `Sort`, `Load`, `ID`, `Send`, `Tab`, `Indent`, `Local`, |
