Permalink
Browse files

patch 8.0.1151: "vim -c startinsert!" doesn't append

Problem:    "vim -c startinsert!" doesn't append.
Solution:   Correct line number on startup. (Christian Brabandt, closes #2117)
  • Loading branch information...
brammool committed Sep 26, 2017
1 parent 6edeaf3 commit 09ca932f8e7d63a83b39baa7c03d4c6145e3baab
Showing with 29 additions and 0 deletions.
  1. +3 −0 src/ex_docmd.c
  2. +24 −0 src/testdir/test_startup.vim
  3. +2 −0 src/version.c
View
@@ -10294,6 +10294,9 @@ ex_startinsert(exarg_T *eap)
{
if (eap->forceit)
{
/* cursor line can be zero on startup */
if (!curwin->w_cursor.lnum)
curwin->w_cursor.lnum = 1;
coladvance((colnr_T)MAXCOL);
curwin->w_curswant = MAXCOL;
curwin->w_set_curswant = FALSE;
@@ -263,3 +263,27 @@ func Test_default_term()
call assert_match("defaulting to 'ansi'", out)
let $TERM = save_term
endfunc
func Test_zzz_startinsert()
" Test :startinsert
call writefile(['123456'], 'Xtestout')
let after = [
\ ':startinsert',
\ 'call feedkeys("foobar\<c-o>:wq\<cr>","t")'
\ ]
if RunVim([], after, 'Xtestout')
let lines = readfile('Xtestout')
call assert_equal(['foobar123456'], lines)
endif
" Test :startinsert!
call writefile(['123456'], 'Xtestout')
let after = [
\ ':startinsert!',
\ 'call feedkeys("foobar\<c-o>:wq\<cr>","t")'
\ ]
if RunVim([], after, 'Xtestout')
let lines = readfile('Xtestout')
call assert_equal(['123456foobar'], lines)
endif
call delete('Xtestout')
endfunc
View
@@ -761,6 +761,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1151,
/**/
1150,
/**/

0 comments on commit 09ca932

Please sign in to comment.