diff --git a/src/normal.c b/src/normal.c index 7aaa8e43ae..2cf4bb1d3b 100644 --- a/src/normal.c +++ b/src/normal.c @@ -6284,9 +6284,9 @@ nv_gotofile(cmdarg_T *cap) if (curbufIsChanged() && curbuf->b_nwindows <= 1 && !P_HID(curbuf)) (void)autowrite(curbuf, FALSE); setpcmark(); - (void)do_ecmd(0, ptr, NULL, NULL, ECMD_LAST, - P_HID(curbuf) ? ECMD_HIDE : 0, curwin); - if (cap->nchar == 'F' && lnum >= 0) + if (do_ecmd(0, ptr, NULL, NULL, ECMD_LAST, + P_HID(curbuf) ? ECMD_HIDE : 0, curwin) == OK + && cap->nchar == 'F' && lnum >= 0) { curwin->w_cursor.lnum = lnum; check_cursor_lnum(); diff --git a/src/testdir/test_gf.vim b/src/testdir/test_gf.vim index c4aa6f9218..ef1bf1075b 100644 --- a/src/testdir/test_gf.vim +++ b/src/testdir/test_gf.vim @@ -1,7 +1,7 @@ " This is a test if a URL is recognized by "gf", with the cursor before and " after the "://". Also test ":\\". -function! Test_gf_url() +func Test_gf_url() enew! call append(0, [ \ "first test for URL://machine.name/tmp/vimtest2a and other text", @@ -30,4 +30,27 @@ function! Test_gf_url() set isf&vim enew! -endfunction +endfunc + +func Test_gF() + new + call setline(1, ['111', '222', '333', '444']) + w! Xfile + close + new + set isfname-=: + call setline(1, ['one', 'Xfile:3', 'three']) + 2 + call assert_fails('normal gF', 'E37:') + call assert_equal(2, getcurpos()[1]) + w! Xfile2 + normal gF + call assert_equal('Xfile', bufname('%')) + call assert_equal(3, getcurpos()[1]) + + set isfname& + call delete('Xfile') + call delete('Xfile2') + bwipe Xfile + bwipe Xfile2 +endfunc diff --git a/src/testdir/test_spell.vim b/src/testdir/test_spell.vim index 0688d615e7..80a66f280a 100644 --- a/src/testdir/test_spell.vim +++ b/src/testdir/test_spell.vim @@ -27,3 +27,20 @@ func Test_z_equal_on_invalid_utf8_word() set nospell bwipe! endfunc + +func Test_spellreall() + new + set spell + call assert_fails('spellrepall', 'E752:') + call setline(1, ['A speling mistake. The same speling mistake.', + \ 'Another speling mistake.']) + call feedkeys(']s1z=', 'tx') + call assert_equal('A spelling mistake. The same speling mistake.', getline(1)) + call assert_equal('Another speling mistake.', getline(2)) + spellrepall + call assert_equal('A spelling mistake. The same spelling mistake.', getline(1)) + call assert_equal('Another spelling mistake.', getline(2)) + call assert_fails('spellrepall', 'E753:') + set spell& + bwipe! +endfunc diff --git a/src/version.c b/src/version.c index f8f51b35c3..66522bf635 100644 --- a/src/version.c +++ b/src/version.c @@ -779,6 +779,14 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 604, +/**/ + 603, +/**/ + 602, +/**/ + 601, /**/ 600, /**/