diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2017-01-18 14:59:46 +0100 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2017-01-18 15:00:55 +0100 |
| commit | 2cf304af420335d8e95e9e80559f19dd1dcf27bf (patch) | |
| tree | a61c7b74701b3763ced323fdb078cfcef8196ea6 /vis-modes.c | |
| parent | 5117997a12a602a0380d22f7c641bf0305d175b7 (diff) | |
| download | vis-2cf304af420335d8e95e9e80559f19dd1dcf27bf.tar.gz vis-2cf304af420335d8e95e9e80559f19dd1dcf27bf.tar.xz | |
vis: unify insert/replace mode enter handler
Diffstat (limited to 'vis-modes.c')
| -rw-r--r-- | vis-modes.c | 22 |
1 files changed, 4 insertions, 18 deletions
diff --git a/vis-modes.c b/vis-modes.c index 1b9a4f4..a82c71b 100644 --- a/vis-modes.c +++ b/vis-modes.c @@ -181,13 +181,13 @@ static void vis_mode_visual_leave(Vis *vis, Mode *new) { } } -static void vis_mode_insert_enter(Vis *vis, Mode *old) { +static void vis_mode_insert_replace_enter(Vis *vis, Mode *old) { if (vis->win->parent) return; if (!vis->action.op) { action_reset(&vis->action_prev); vis->action_prev.op = &vis_operators[VIS_OP_MODESWITCH]; - vis->action_prev.mode = VIS_MODE_INSERT; + vis->action_prev.mode = vis->mode->id; } if (!vis->macro_operator) { macro_operator_record(vis); @@ -203,20 +203,6 @@ static void vis_mode_insert_input(Vis *vis, const char *str, size_t len) { vis_insert_key(vis, str, len); } -static void vis_mode_replace_enter(Vis *vis, Mode *old) { - if (vis->win->parent) - return; - if (!vis->action.op) { - action_reset(&vis->action_prev); - vis->action_prev.op = &vis_operators[VIS_OP_MODESWITCH]; - vis->action_prev.mode = VIS_MODE_REPLACE; - } - if (!vis->macro_operator) { - macro_operator_record(vis); - vis->action_prev.macro = vis->macro_operator; - } -} - static void vis_mode_replace_input(Vis *vis, const char *str, size_t len) { vis_replace_key(vis, str, len); } @@ -258,7 +244,7 @@ Mode vis_modes[] = { .name = "INSERT", .status = "INSERT", .help = "", - .enter = vis_mode_insert_enter, + .enter = vis_mode_insert_replace_enter, .input = vis_mode_insert_input, .idle = vis_mode_insert_idle, .idle_timeout = 3, @@ -269,7 +255,7 @@ Mode vis_modes[] = { .parent = &vis_modes[VIS_MODE_INSERT], .status = "REPLACE", .help = "", - .enter = vis_mode_replace_enter, + .enter = vis_mode_insert_replace_enter, .input = vis_mode_replace_input, .idle = vis_mode_insert_idle, .idle_timeout = 3, |
