aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/ex_docmd.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/ex_docmd.c')
-rw-r--r--src/nvim/ex_docmd.c13
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) {