From 5f8411b7bf706210a4ff0960032389d015b88b16 Mon Sep 17 00:00:00 2001 From: James McCoy Date: Tue, 6 Jun 2017 05:19:28 -0400 Subject: vim-patch:8.0.0176 Problem: Using :change in between :function and :endfunction fails. Solution: Recognize :change inside a function. (ichizok, closes vim/vim#1374) https://github.com/vim/vim/commit/70bcd7336f9f19304f32c52a86ed5b4b3de852c2 --- src/nvim/testdir/test_vimscript.vim | 71 +++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) (limited to 'src/nvim/testdir/test_vimscript.vim') diff --git a/src/nvim/testdir/test_vimscript.vim b/src/nvim/testdir/test_vimscript.vim index a2997b6d4d..b7d12d8c93 100644 --- a/src/nvim/testdir/test_vimscript.vim +++ b/src/nvim/testdir/test_vimscript.vim @@ -1064,6 +1064,77 @@ func Test_echo_and_string() endfunc +"------------------------------------------------------------------------------- +" Test 95: lines of :append, :change, :insert {{{1 +"------------------------------------------------------------------------------- + +function! DefineFunction(name, body) + let func = join(['function! ' . a:name . '()'] + a:body + ['endfunction'], "\n") + exec func +endfunction + +func Test_script_lines() + " :append + try + call DefineFunction('T_Append', [ + \ 'append', + \ 'py <