diff options
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r-- | src/nvim/ex_docmd.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/nvim/ex_docmd.c b/src/nvim/ex_docmd.c index b97c886094..d524c3d035 100644 --- a/src/nvim/ex_docmd.c +++ b/src/nvim/ex_docmd.c @@ -8305,15 +8305,14 @@ static void ex_startinsert(exarg_T *eap) if (!curwin->w_cursor.lnum) { curwin->w_cursor.lnum = 1; } - coladvance((colnr_T)MAXCOL); - curwin->w_curswant = MAXCOL; - curwin->w_set_curswant = FALSE; + set_cursor_for_append_to_line(); } - /* Ignore the command when already in Insert mode. Inserting an - * expression register that invokes a function can do this. */ - if (State & INSERT) + // Ignore the command when already in Insert mode. Inserting an + // expression register that invokes a function can do this. + if (State & INSERT) { return; + } if (eap->cmdidx == CMD_startinsert) restart_edit = 'a'; @@ -8325,7 +8324,7 @@ static void ex_startinsert(exarg_T *eap) if (!eap->forceit) { if (eap->cmdidx == CMD_startinsert) restart_edit = 'i'; - curwin->w_curswant = 0; /* avoid MAXCOL */ + curwin->w_curswant = 0; // avoid MAXCOL } if (VIsual_active) { |