1
1
mirror of https://github.com/mawww/kakoune.git synced 2024-11-15 09:17:22 +03:00
kakoune/doc/pages/execeval.asciidoc
Maxime Coste 4d11bb20c3 Always collapse jumps in exec/eval, remove -collapse-jumps switch
There does not seem to be any reasonable use cases of not collapsing
jumps when the input is not comming from the user. Always collapse
them.

It could make sense to move jump collapsing out of context_wrap as
in general any action not comming directly from the user should
collapse them, at the moment a comment or mapping will not collapse
jumps, which is unfortunate.
2018-02-24 19:02:15 +11:00

57 lines
1.9 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

= Execute-keys and Evaluate-commands
== Description
The *execute-keys* and *evaluate-commands* commands can be used to run
Kakoune commands, and should be used as follows:
----------------------------
execute-keys [<flags>] <key> ...
evaluate-commands [<flags>] <command> ...
----------------------------
*execute-keys* runs keys as if they were pressed, whereas *evaluate-commands*
evaluates its given parameters as if they were entered in the command prompt.
By default, their execution happens within the context of the current client,
and stops when the last key/command is reached, or an error is raised.
These two commands also save the following registers, who are then restored
when the commands have been executed: */*, *"*, *|*, *^*, *@*.
(See <<registers#,`:doc registers`>>)
== Optional flags
*-client* <name>::
execute in the context of the client named *name*
*-try-client* <name>::
execute in the context of the client named *name* if such client
exists, or else in the current context
*-draft*::
execute in a copy of the context of the selected client. Modifications
to the selections or input state will not affect the client. This
permits to make some modification to the buffer without modifying
the users selection
*-itersel*::
execute once per selection, in a context with only the considered
selection. This permits avoiding cases where the selections may
get merged
*-buffer* <names>::
execute in the context of each buffers in the comma separated list
*names*, as a name can be used to iterate on all buffers
*-no-hooks*::
disable hook execution while executing the keys/commands
(See <<hooks#,`:doc hooks`>>)
*-with-maps*::
use user key mapping in instead of built in keys (*execute-keys* only)
(See <<mapping#,`:doc mapping`>>)
*-save-regs* <regs>::
regs is a string of registers to be restored after execution (overwrites
the list of registers saved by default, c.f. description)