Compare commits

...

2 Commits

Author SHA1 Message Date
c3c3e69896 patch 8.0.1766: expanding abbreviation doesn't work
Problem:    Expanding abbreviation doesn't work. (Tooth Pik)
Solution:   Return OK instead of FALSE and FAIL instead of TRUE. (Christian
            Brabandt)
2018-04-26 22:30:33 +02:00
db0eedec16 patch 8.0.1765: CTRL-G j in Insert mode is incorrect when 'virtualedit' set
Problem:    CTRL-G j in Insert mode is incorrect when 'virtualedit' is set.
Solution:   Take coladd into account. (Christian Brabandt, closes #2743)
2018-04-25 22:38:17 +02:00
5 changed files with 46 additions and 3 deletions

View File

@ -1417,7 +1417,12 @@ getvcol_nolist(pos_T *posp)
colnr_T vcol; colnr_T vcol;
curwin->w_p_list = FALSE; curwin->w_p_list = FALSE;
getvcol(curwin, posp, NULL, &vcol, NULL); #ifdef FEAT_VIRTUALEDIT
if (posp->coladd)
getvvcol(curwin, posp, NULL, &vcol, NULL);
else
#endif
getvcol(curwin, posp, NULL, &vcol, NULL);
curwin->w_p_list = list_save; curwin->w_p_list = list_save;
return vcol; return vcol;
} }

View File

@ -10209,9 +10209,9 @@ ins_eol(int c)
int i; int i;
if (echeck_abbr(c + ABBR_OFF)) if (echeck_abbr(c + ABBR_OFF))
return FALSE; return OK;
if (stop_arrow() == FAIL) if (stop_arrow() == FAIL)
return TRUE; return FAIL;
undisplay_dollar(); undisplay_dollar();
/* /*

View File

@ -198,3 +198,19 @@ func Test_map_timeout()
set timeoutlen& set timeoutlen&
delfunc ExitInsert delfunc ExitInsert
endfunc endfunc
func Test_abbreviation_CR()
new
func Eatchar(pat)
let c = nr2char(getchar(0))
return (c =~ a:pat) ? '' : c
endfunc
iabbrev <buffer><silent> ~~7 <c-r>=repeat('~', 7)<CR><c-r>=Eatchar('\s')<cr>
call feedkeys("GA~~7 \<esc>", 'xt')
call assert_equal('~~~~~~~', getline('$'))
%d
call feedkeys("GA~~7\<cr>\<esc>", 'xt')
call assert_equal(['~~~~~~~', ''], getline(1,'$'))
delfunc Eatchar
bw!
endfunc

View File

@ -38,6 +38,24 @@ func Test_paste_end_of_line()
exe "normal! 2G$lllA\<C-O>:normal! \"agP\r" exe "normal! 2G$lllA\<C-O>:normal! \"agP\r"
call assert_equal('123456', getline(2)) call assert_equal('123456', getline(2))
bwipe!
set virtualedit=
endfunc
func Test_edit_CTRL_G()
new
set virtualedit=insert
call setline(1, ['123', '1', '12'])
exe "normal! ggA\<c-g>jx\<c-g>jx"
call assert_equal(['123', '1 x', '12 x'], getline(1,'$'))
set virtualedit=all
%d_
call setline(1, ['1', '12'])
exe "normal! ggllix\<c-g>jx"
call assert_equal(['1 x', '12x'], getline(1,'$'))
bwipe! bwipe!
set virtualedit= set virtualedit=
endfunc endfunc

View File

@ -761,6 +761,10 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
1766,
/**/
1765,
/**/ /**/
1764, 1764,
/**/ /**/