Patch 8.1.0274
Problem: 'incsearch' triggers on ":source".
Solution: Check for the whole command name.
Files: src/ex_getln.c, src/testdir/test_search.vim
*** ../vim-8.1.0273/src/ex_getln.c 2018-08-11 19:02:18.038566056 +0200
--- src/ex_getln.c 2018-08-11 19:08:55.639612407 +0200
***************
*** 293,299 ****
// Skip over "substitute" to find the pattern separator.
for (p = cmd; ASCII_ISALPHA(*p); ++p)
;
! if (*p != NUL)
{
delim = *p++;
end = skip_regexp(p, delim, p_magic, NULL);
--- 293,302 ----
// Skip over "substitute" to find the pattern separator.
for (p = cmd; ASCII_ISALPHA(*p); ++p)
;
! if (*p != NUL
! && (STRNCMP(cmd, "substitute", p - cmd) == 0
! || STRNCMP(cmd, "global", p - cmd) == 0
! || STRNCMP(cmd, "vglobal", p - cmd) == 0))
{
delim = *p++;
end = skip_regexp(p, delim, p_magic, NULL);
*** ../vim-8.1.0273/src/testdir/test_search.vim 2018-08-11 16:40:39.068311966
+0200
--- src/testdir/test_search.vim 2018-08-11 19:11:57.066276471 +0200
***************
*** 342,367 ****
bw!
endfunc
- func Test_search_cmdline3()
- if !exists('+incsearch')
- return
- endif
- " need to disable char_avail,
- " so that expansion of commandline works
- call test_override("char_avail", 1)
- new
- call setline(1, [' 1', ' 2 the~e', ' 3 the theother'])
- set incsearch
- 1
- " first match
- call feedkeys("/the\<c-l>\<cr>", 'tx')
- call assert_equal(' 2 the~e', getline('.'))
- " clean up
- set noincsearch
- call test_override("char_avail", 0)
- bw!
- endfunc
-
func Cmdline3_prep()
" need to disable char_avail,
" so that expansion of commandline works
--- 342,347 ----
***************
*** 377,382 ****
--- 357,375 ----
bw!
endfunc
+ func Test_search_cmdline3()
+ if !exists('+incsearch')
+ return
+ endif
+ call Cmdline3_prep()
+ 1
+ " first match
+ call feedkeys("/the\<c-l>\<cr>", 'tx')
+ call assert_equal(' 2 the~e', getline('.'))
+
+ call Cmdline3_cleanup()
+ endfunc
+
func Test_search_cmdline3s()
if !exists('+incsearch')
return
***************
*** 385,390 ****
--- 378,389 ----
1
call feedkeys(":%s/the\<c-l>/xxx\<cr>", 'tx')
call assert_equal(' 2 xxxe', getline('.'))
+ undo
+ call feedkeys(":%subs/the\<c-l>/xxx\<cr>", 'tx')
+ call assert_equal(' 2 xxxe', getline('.'))
+ undo
+ call feedkeys(":%substitute/the\<c-l>/xxx\<cr>", 'tx')
+ call assert_equal(' 2 xxxe', getline('.'))
call Cmdline3_cleanup()
endfunc
***************
*** 397,402 ****
--- 396,404 ----
1
call feedkeys(":g/the\<c-l>/d\<cr>", 'tx')
call assert_equal(' 3 the theother', getline(2))
+ undo
+ call feedkeys(":global/the\<c-l>/d\<cr>", 'tx')
+ call assert_equal(' 3 the theother', getline(2))
call Cmdline3_cleanup()
endfunc
***************
*** 410,415 ****
--- 412,421 ----
call feedkeys(":v/the\<c-l>/d\<cr>", 'tx')
call assert_equal(1, line('$'))
call assert_equal(' 2 the~e', getline(1))
+ undo
+ call feedkeys(":vglobal/the\<c-l>/d\<cr>", 'tx')
+ call assert_equal(1, line('$'))
+ call assert_equal(' 2 the~e', getline(1))
call Cmdline3_cleanup()
endfunc
***************
*** 518,524 ****
" so that expansion of commandline works
call test_override("char_avail", 1)
new
! let @/='b'
call setline(1, [' bbvimb', ''])
set incsearch
" first match
--- 524,530 ----
" so that expansion of commandline works
call test_override("char_avail", 1)
new
! let @/ = 'b'
call setline(1, [' bbvimb', ''])
set incsearch
" first match
*** ../vim-8.1.0273/src/version.c 2018-08-11 19:02:18.038566056 +0200
--- src/version.c 2018-08-11 19:11:29.546478790 +0200
***************
*** 796,797 ****
--- 796,799 ----
{ /* Add new patch number below this line */
+ /**/
+ 274,
/**/
--
You can be stopped by the police for biking over 65 miles per hour.
You are not allowed to walk across a street on your hands.
[real standing laws in Connecticut, United States of America]
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.