mirror of
https://github.com/neovim/neovim.git
synced 2025-10-03 00:18:33 +00:00
Merge pull request #4157 from watiko/vim-7.4.694
vim-patch:7.4.{662,694}
This commit is contained in:
@@ -3076,18 +3076,18 @@ current_block (
|
||||
} else
|
||||
old_end = VIsual;
|
||||
|
||||
/*
|
||||
* Search backwards for unclosed '(', '{', etc..
|
||||
* Put this position in start_pos.
|
||||
* Ignore quotes here.
|
||||
*/
|
||||
// Search backwards for unclosed '(', '{', etc..
|
||||
// Put this position in start_pos.
|
||||
// Ignore quotes here. Keep the "M" flag in 'cpo', as that is what the
|
||||
// user wants.
|
||||
save_cpo = p_cpo;
|
||||
p_cpo = (char_u *)"%";
|
||||
p_cpo = (char_u *)(vim_strchr(p_cpo, CPO_MATCHBSL) != NULL ? "%M" : "%");
|
||||
while (count-- > 0) {
|
||||
if ((pos = findmatch(NULL, what)) == NULL)
|
||||
if ((pos = findmatch(NULL, what)) == NULL) {
|
||||
break;
|
||||
}
|
||||
curwin->w_cursor = *pos;
|
||||
start_pos = *pos; /* the findmatch for end_pos will overwrite *pos */
|
||||
start_pos = *pos; // the findmatch for end_pos will overwrite *pos
|
||||
}
|
||||
p_cpo = save_cpo;
|
||||
|
||||
|
@@ -594,7 +594,7 @@ static int included_patches[] = {
|
||||
697,
|
||||
696,
|
||||
695,
|
||||
// 694,
|
||||
694,
|
||||
// 693,
|
||||
// 692 NA
|
||||
// 691 NA
|
||||
@@ -626,7 +626,7 @@ static int included_patches[] = {
|
||||
665,
|
||||
// 664 NA
|
||||
// 663 NA
|
||||
// 662,
|
||||
662,
|
||||
// 661 NA
|
||||
660,
|
||||
659,
|
||||
|
61
test/functional/legacy/textobjects_spec.lua
Normal file
61
test/functional/legacy/textobjects_spec.lua
Normal file
@@ -0,0 +1,61 @@
|
||||
local helpers = require('test.functional.helpers')
|
||||
local call = helpers.call
|
||||
local clear = helpers.clear
|
||||
local execute = helpers.execute
|
||||
local expect = helpers.expect
|
||||
local source = helpers.source
|
||||
|
||||
describe('Text object', function()
|
||||
before_each(function()
|
||||
clear()
|
||||
execute('set shada=')
|
||||
source([[
|
||||
function SelectionOut(data)
|
||||
new
|
||||
call setline(1, a:data)
|
||||
call setreg('"', '')
|
||||
normal! ggfrmavi)y
|
||||
$put =getreg('\"')
|
||||
call setreg('"', '')
|
||||
normal! `afbmavi)y
|
||||
$put =getreg('\"')
|
||||
call setreg('"', '')
|
||||
normal! `afgmavi)y
|
||||
$put =getreg('\"')
|
||||
endfunction
|
||||
]])
|
||||
end)
|
||||
|
||||
it('Test for vi) without cpo-M', function()
|
||||
execute('set cpo-=M')
|
||||
call('SelectionOut', '(red \\(blue) green)')
|
||||
|
||||
expect([[
|
||||
(red \(blue) green)
|
||||
red \(blue
|
||||
red \(blue
|
||||
]])
|
||||
end)
|
||||
|
||||
it('Test for vi) with cpo-M #1', function()
|
||||
execute('set cpo+=M')
|
||||
call('SelectionOut', '(red \\(blue) green)')
|
||||
|
||||
expect([[
|
||||
(red \(blue) green)
|
||||
red \(blue) green
|
||||
blue
|
||||
red \(blue) green]])
|
||||
end)
|
||||
|
||||
it('Test for vi) with cpo-M #2', function()
|
||||
execute('set cpo+=M')
|
||||
call('SelectionOut', '(red (blue\\) green)')
|
||||
|
||||
expect([[
|
||||
(red (blue\) green)
|
||||
red (blue\) green
|
||||
blue\
|
||||
red (blue\) green]])
|
||||
end)
|
||||
end)
|
Reference in New Issue
Block a user