aboutsummaryrefslogtreecommitdiff
path: root/vis.c
diff options
context:
space:
mode:
Diffstat (limited to 'vis.c')
-rw-r--r--vis.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/vis.c b/vis.c
index e3ad87e..ed94f7d 100644
--- a/vis.c
+++ b/vis.c
@@ -930,7 +930,14 @@ static void vis_keys_process(Vis *vis, size_t pos) {
}
void vis_keys_feed(Vis *vis, const char *input) {
- vis_keys_push(vis, input, buffer_length0(vis->keys), false);
+ if (!input)
+ return;
+ Macro macro;
+ macro_init(&macro);
+ if (!macro_append(&macro, input))
+ return;
+ macro_replay(vis, &macro);
+ macro_release(&macro);
}
static void vis_keys_push(Vis *vis, const char *input, size_t pos, bool record) {