Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This adds a
"macros"
field toconfig.json
which allows specifying custom mappings from one set of keys to another. This allows writing something like the following to mapjj
to<Esc>
in Insert mode:The following names can be used to refer to the different modes:
normal
/n
for Normal modeinsert
/i
for Insert modevisual
/v
for Visual modecommand
/c
for Command modeselect
for Select modeoperator-pending
for Operator Pending modeMultiple modes can be specified together using
|
to put a mapping in all of them. For example,"insert|command"
or"i|c"
could be used in the above example to mapjj
in both Insert and Command mode.I've called this
"macros"
since they'll behave like macros: a{count}
argument will repeat the mapping (<Esc>
in the above example), and not provide an argument to it. I have plans for a separate way to specify keybindings in the future using expressions that generate anAction
that should help anyone who needs to specify something that takes an optional count or register argument.