diff options
Diffstat (limited to 'docs/lsp.md')
| -rw-r--r-- | docs/lsp.md | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/docs/lsp.md b/docs/lsp.md index 097386e6..bce9b2cc 100644 --- a/docs/lsp.md +++ b/docs/lsp.md @@ -61,17 +61,20 @@ sub/file.zig:LINE:COL-ENDCOL text 1-based line and column. The second form carries the answer's RANGE where the protocol gave one on a single line (a token, a symbol's name), and a look on it SELECTS that span rather than parking at its first cell — so -`gd` lands on the whole name and `gr` steps references with each one -highlighted. This is the format `look.zig` already resolves, `runSearch` -already produces and `n`/`N` already step — so: +`gd` lands on the whole name, and a `gr` reference stepped to with `n`/`N` and +opened with Enter arrives with the reference itself selected. This is the +format `look.zig` already resolves, `runSearch` already produces and `n`/`N` +already walk — so: - **one row from a goto** → jump straight there (`lookAt`) -- **several rows** → an output buffer, which `n`/`N` walk +- **several rows** → an output buffer, which `n`/`N` walk: a step SELECTS a row + and Enter opens it which means helix's multi-result picker required **no picker code at all**. The `+Search` buffer *is* the picker. Non-location answers (`hover`, `code_action`, -`format`) open `+Hover`/`+Lsp` instead and do not arm the stepper — `n` over a -documentation blurb would step to nowhere. +`format`) open `+Hover`/`+Lsp` instead, which are prose and not places — `n`/`N` +find nothing look-able in a documentation blurb and walk straight past it to the +next pane on the ring. Rename is deliberately the one exception to rows as presentation. The backend emits `@edit START END` records through `lsp.edit()`, using half-open byte @@ -98,7 +101,7 @@ chain says neither, and stops being true the moment the row is read anywhere but beside its own buffer. `test/snapshots/lsprelpath.snap` pins both directions end to end — the enum one level up (absolute row) and one level down (`inner/tint.zig`, a stripped path that still has a separator in it), each with the `n` step that -opens it, plus a right click. +selects it and the Enter that opens it, plus a right click. This is the rule `look.grep` already follows for its own rows (`look.zig`, the `shown` computation), written a second time; the two are now the same function |
