diff options
author | Matouš Dzivjak | 2022-01-06 02:12:02 +0000 |
---|---|---|
committer | GitHub | 2022-01-06 02:12:02 +0000 |
commit | 2e02a1d6bc004212033b9c4e5ed0de0fd880796c (patch) | |
tree | e73a695e58ddf7242d3cab282b93dd1ad9488ee5 /book/src | |
parent | 66afbc9fff1ec5947ea5718f7817887aa0c853c8 (diff) |
feat(commands): shrink_selection (#1340)
* feat(commands): shrink_selection
Add `shrink_selection` command that can be used to shrink
previously expanded selection.
To make `shrink_selection` work it was necessary to add
selection history to the Document since we want to shrink
the selection towards the syntax tree node that was initially
selected.
Selection history is cleared any time the user changes
selection other way than by `expand_selection`. This ensures
that we don't get some funky edge cases when user calls
`shrink_selection`.
Related: https://github.com/helix-editor/helix/discussions/1328
* Refactor shrink_selection, move history to view
* Remove useless comment
* Add default key mapping for extend&shrink selection
* Rework contains_selection method
* Shrink selection without expand selects first child
Diffstat (limited to 'book/src')
-rw-r--r-- | book/src/keymap.md | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/book/src/keymap.md b/book/src/keymap.md index 581e70e9..70ec13b3 100644 --- a/book/src/keymap.md +++ b/book/src/keymap.md @@ -261,6 +261,8 @@ Mappings in the style of [vim-unimpaired](https://github.com/tpope/vim-unimpaire | `]D` | Go to last diagnostic in document (**LSP**) | `goto_last_diag` | | `[space` | Add newline above | `add_newline_above` | | `]space` | Add newline below | `add_newline_below` | +| `]o` | Expand syntax tree object selection. | `expand_selection` | +| `[o` | Shrink syntax tree object selection. | `shrink_selection` | ## Insert Mode |