mirror of
https://github.com/helix-editor/helix.git
synced 2024-11-22 09:26:19 +04:00
doc: expand documentation on configuring minor modes
Fixes #3835, #4811
This commit is contained in:
parent
a02dd17e82
commit
9530fab4b6
@ -166,6 +166,9 @@ ### Minor modes
|
||||
| `Ctrl-w` | Enter [window mode](#window-mode) | N/A |
|
||||
| `Space` | Enter [space mode](#space-mode) | N/A |
|
||||
|
||||
These modes (except command mode) can be configured by
|
||||
[remapping keys](https://docs.helix-editor.com/remapping.html#minor-modes).
|
||||
|
||||
#### View mode
|
||||
|
||||
Accessed by typing `z` in [normal mode](#normal-mode).
|
||||
|
@ -25,8 +25,31 @@ # At most one section each of 'keys.normal', 'keys.insert' and 'keys.select'
|
||||
```
|
||||
> NOTE: Typable commands can also be remapped, remember to keep the `:` prefix to indicate it's a typable command.
|
||||
|
||||
> NOTE: Bindings can be nested, to create (or edit) minor modes: `g = { a = "code_action"}` adds a new entry to
|
||||
> the `goto` mode.
|
||||
## Minor modes
|
||||
|
||||
Minor modes are accessed by pressing a key (usually from normal mode), giving access to dedicated bindings. Bindings
|
||||
can be modified or added by nesting definitions.
|
||||
|
||||
```toml
|
||||
[keys.insert.j]
|
||||
k = "normal_mode" # Maps `jk` to exit insert mode
|
||||
|
||||
[keys.normal.g]
|
||||
a = "code_action" # Maps `ga` to show possible code actions
|
||||
|
||||
# invert `j` and `k` in view mode
|
||||
[keys.normal.z]
|
||||
j = "scroll_up"
|
||||
k = "scroll_down"
|
||||
|
||||
# create a new minor mode bound to `+`
|
||||
[keys.normal."+"]
|
||||
m = ":run-shell-command make"
|
||||
c = ":run-shell-command cargo build"
|
||||
t = ":run-shell-command cargo test"
|
||||
```
|
||||
|
||||
## Special keys and modifiers
|
||||
|
||||
Ctrl, Shift and Alt modifiers are encoded respectively with the prefixes
|
||||
`C-`, `S-` and `A-`. Special keys are encoded as follows:
|
||||
|
Loading…
Reference in New Issue
Block a user