mirror of
https://github.com/neovim/neovim.git
synced 2025-09-19 01:38:16 +00:00
vim-patch:8.1.1988: :startinsert! does not work the same way as "A"
Problem: :startinsert! does not work the same way as "A".
Solution: Use the same code to move the cursor. (closes vim/vim#4896)
8d3b51084a
This commit is contained in:
@@ -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) {
|
||||
|
Reference in New Issue
Block a user