Add select object rail

This commit is contained in:
slhx agent
2026-06-21 22:39:56 +02:00
parent d7bf5edc1f
commit accbedbe4e
4 changed files with 33 additions and 12 deletions
+13 -12
View File
@@ -134,12 +134,12 @@ Selection-building mode. Escape or Ctrl-[ returns to Normal. Movement extends th
active selection by default. Vertical movement preserves a preferred cursor
column across ragged lines,
clamping only to the current line length until horizontal/editing motion resets
that preference. Semantic object selections live behind the match/object rail
(`m w`, `m l`, `m i`, `m p`, etc.) so bare `h/j/k/l`, word motions, arrows, and
mobile line aliases keep behaving as selection-extending motions. Line object
selection includes the line's newline boundary when present, matching Vim-like
linewise edit semantics. Select mode can apply operations such as delete,
replace, copy, format, code action, or explain to the selection.
that preference. Semantic object selections live behind the select-object rail
(`s` then `o w`, `o l`, `o i`, `o p`, etc.) so bare `h/j/k/l`, word motions,
arrows, and mobile line aliases keep behaving as selection-extending motions.
Line object selection includes the line's newline boundary when present, matching
Vim-like linewise edit semantics. Select mode can apply operations such as
delete, replace, copy, format, code action, or explain to the selection.
### Panel mode
@@ -254,12 +254,13 @@ Objects are shared by Normal and Select mode.
| `m` `{` | jump/select `{}` pair, depending on mode |
| `m` `[` | jump/select `[]` pair, depending on mode |
| `m` `"` / `m` `'` / `m` `` ` `` | jump/select quoted string where parseable |
| `s` `w` | select word |
| `s` `l` | select line |
| `s` `i` | select current indent block |
| `s` `p` | select current parameter/argument |
| `s` `f` | select current function or syntactic enclosing form where available |
| `s` `d` | select current diagnostic range |
| `s` then motion | enter Select mode and extend the selection with that motion |
| `s` `o` `w` | select word |
| `s` `o` `l` | select line |
| `s` `o` `i` | select current indent block |
| `s` `o` `p` | select current parameter/argument |
| `s` `o` `f` | select current function or syntactic enclosing form where available |
| `s` `o` `d` | select current diagnostic range |
Physical keyboards may expose `%` as an alias for `m m`. The mobile canonical
path stays `m m` because `%` is awkward on software keyboards and QWERTZ.