From 1fe1bb084d0099fc4f9bfdc11189485d0f74b75a Mon Sep 17 00:00:00 2001 From: Lewis Russell Date: Mon, 19 Dec 2022 16:37:45 +0000 Subject: refactor(options): deprecate nvim[_buf|_win]_[gs]et_option Co-authored-by: zeertzjq Co-authored-by: famiu --- test/functional/editor/completion_spec.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test/functional/editor/completion_spec.lua') diff --git a/test/functional/editor/completion_spec.lua b/test/functional/editor/completion_spec.lua index 22857efe5b..dcd7ef720f 100644 --- a/test/functional/editor/completion_spec.lua +++ b/test/functional/editor/completion_spec.lua @@ -988,7 +988,7 @@ describe('completion', function() return '' endfunction ]]) - meths.set_option('completeopt', 'menuone,noselect') + meths.set_option_value('completeopt', 'menuone,noselect', {}) meths.set_var('_complist', {{ word=0, abbr=1, -- cgit From b65f4151d9e52a8521c0682a817c4dab9690e1e7 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Wed, 27 Sep 2023 18:51:40 +0800 Subject: vim-patch:8.2.3517: TextChanged does not trigger after TextChangedI (#25384) Problem: TextChanged does not trigger after TextChangedI. Solution: Store the tick separately for TextChangedI. (Christian Brabandt, closes vim/vim#8968, closes vim/vim#8932) https://github.com/vim/vim/commit/db3b44640d69ab27270691a3cab8d83cc93a0861 Co-authored-by: Christian Brabandt --- test/functional/editor/completion_spec.lua | 87 ------------------------------ 1 file changed, 87 deletions(-) (limited to 'test/functional/editor/completion_spec.lua') diff --git a/test/functional/editor/completion_spec.lua b/test/functional/editor/completion_spec.lua index dcd7ef720f..8c299636cc 100644 --- a/test/functional/editor/completion_spec.lua +++ b/test/functional/editor/completion_spec.lua @@ -1032,93 +1032,6 @@ describe('completion', function() ]]) end) - -- oldtest: Test_ChangedP() - it('TextChangedI and TextChangedP autocommands', function() - curbufmeths.set_lines(0, 1, false, { 'foo', 'bar', 'foobar'}) - source([[ - set complete=. completeopt=menuone - let g:foo = [] - autocmd! TextChanged * :call add(g:foo, "N") - autocmd! TextChangedI * :call add(g:foo, "I") - autocmd! TextChangedP * :call add(g:foo, "P") - call cursor(3, 1) - ]]) - - command('let g:foo = []') - feed('o') - poke_eventloop() - feed('') - eq({'I'}, eval('g:foo')) - - command('let g:foo = []') - feed('S') - poke_eventloop() - feed('f') - poke_eventloop() - eq({'I', 'I'}, eval('g:foo')) - feed('') - - command('let g:foo = []') - feed('S') - poke_eventloop() - feed('f') - poke_eventloop() - feed('') - poke_eventloop() - eq({'I', 'I', 'P'}, eval('g:foo')) - feed('') - - command('let g:foo = []') - feed('S') - poke_eventloop() - feed('f') - poke_eventloop() - feed('') - poke_eventloop() - feed('') - poke_eventloop() - eq({'I', 'I', 'P', 'P'}, eval('g:foo')) - feed('') - - command('let g:foo = []') - feed('S') - poke_eventloop() - feed('f') - poke_eventloop() - feed('') - poke_eventloop() - feed('') - poke_eventloop() - feed('') - poke_eventloop() - eq({'I', 'I', 'P', 'P', 'P'}, eval('g:foo')) - feed('') - - command('let g:foo = []') - feed('S') - poke_eventloop() - feed('f') - poke_eventloop() - feed('') - poke_eventloop() - feed('') - poke_eventloop() - feed('') - poke_eventloop() - feed('') - eq({'I', 'I', 'P', 'P', 'P', 'P'}, eval('g:foo')) - feed('') - - eq({'foo', 'bar', 'foobar', 'foo'}, eval('getline(1, "$")')) - - source([[ - au! TextChanged - au! TextChangedI - au! TextChangedP - set complete&vim completeopt&vim - ]]) - end) - it('CompleteChanged autocommand', function() curbufmeths.set_lines(0, 1, false, { 'foo', 'bar', 'foobar', ''}) source([[ -- cgit From 01c51a491330bd10202c73aff92c0978984c0692 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Sun, 1 Oct 2023 19:07:16 +0800 Subject: feat(completion): support completing more string options --- test/functional/editor/completion_spec.lua | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'test/functional/editor/completion_spec.lua') diff --git a/test/functional/editor/completion_spec.lua b/test/functional/editor/completion_spec.lua index 8c299636cc..ea3397d50d 100644 --- a/test/functional/editor/completion_spec.lua +++ b/test/functional/editor/completion_spec.lua @@ -941,6 +941,15 @@ describe('completion', function() end) end) + it('cmdline completion supports various string options', function() + eq('auto', funcs.getcompletion('set foldcolumn=', 'cmdline')[2]) + eq({'nosplit', 'split'}, funcs.getcompletion('set inccommand=', 'cmdline')) + eq({'ver:3,hor:6', 'hor:', 'ver:'}, funcs.getcompletion('set mousescroll=', 'cmdline')) + eq('BS', funcs.getcompletion('set termpastefilter=', 'cmdline')[2]) + eq('SpecialKey', funcs.getcompletion('set winhighlight=', 'cmdline')[1]) + eq('SpecialKey', funcs.getcompletion('set winhighlight=NonText:', 'cmdline')[1]) + end) + describe('from the commandline window', function() it('is cleared after CTRL-C', function () feed('q:') -- cgit From ae4ca4edf89ece433b61e8bf92c412298b58d9ea Mon Sep 17 00:00:00 2001 From: glepnir Date: Fri, 13 Oct 2023 14:49:01 +0800 Subject: feat(complete): support f flag for complete buffer part --- test/functional/editor/completion_spec.lua | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'test/functional/editor/completion_spec.lua') diff --git a/test/functional/editor/completion_spec.lua b/test/functional/editor/completion_spec.lua index ea3397d50d..cb5e0b0b14 100644 --- a/test/functional/editor/completion_spec.lua +++ b/test/functional/editor/completion_spec.lua @@ -1228,4 +1228,28 @@ describe('completion', function() expect('colorscheme NOSUCHCOLORSCHEME') assert_alive() end) + + it('complete with f flag #25598', function() + screen:try_resize(20, 9) + local bufname = 'foo/bar.txt' + local hidden = 'fooA/.hidden' + if helpers.is_os('win') then + bufname = 'C:\\foo\\bar.txt' + hidden = 'C:\\fooA\\.hidden' + end + command('set complete+=f | edit '.. bufname ..' | edit '..hidden) + feed('i') + + screen:expect{grid=[[ + foo^ | + {2:foo }{0: }| + {1:bar }{0: }| + {1:txt }{0: }| + {1:fooA }{0: }| + {1:.hidden }{0: }| + {0:~ }| + {0:~ }| + {3:-- }{4:match 1 of 5} | + ]]} + end) end) -- cgit From d1b2a5cf5fa583b556457d34a46ce7b940913a66 Mon Sep 17 00:00:00 2001 From: mortezadadgar Date: Sat, 11 Nov 2023 02:11:10 +0330 Subject: fix(completion): make sure the buffer name is valid (#25975) Problem: crash from set complete+=f open a empty buffer C-N Solution: make sure the buffer name is valid. regression from ae4ca4edf89ece433b61e8bf92c412298b58d9ea --- test/functional/editor/completion_spec.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'test/functional/editor/completion_spec.lua') diff --git a/test/functional/editor/completion_spec.lua b/test/functional/editor/completion_spec.lua index cb5e0b0b14..51f30543e3 100644 --- a/test/functional/editor/completion_spec.lua +++ b/test/functional/editor/completion_spec.lua @@ -1237,7 +1237,7 @@ describe('completion', function() bufname = 'C:\\foo\\bar.txt' hidden = 'C:\\fooA\\.hidden' end - command('set complete+=f | edit '.. bufname ..' | edit '..hidden) + command('set complete+=f | edit '..bufname..' | edit '..hidden..' | enew') feed('i') screen:expect{grid=[[ -- cgit From cdc8bacc7945da816738e330555fa85d3ffffd56 Mon Sep 17 00:00:00 2001 From: Raphael Date: Sat, 18 Nov 2023 12:26:52 +0800 Subject: fix(completion): filter results with complete+=f (#26029) --- test/functional/editor/completion_spec.lua | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) (limited to 'test/functional/editor/completion_spec.lua') diff --git a/test/functional/editor/completion_spec.lua b/test/functional/editor/completion_spec.lua index 51f30543e3..cbaf401f06 100644 --- a/test/functional/editor/completion_spec.lua +++ b/test/functional/editor/completion_spec.lua @@ -1231,25 +1231,30 @@ describe('completion', function() it('complete with f flag #25598', function() screen:try_resize(20, 9) - local bufname = 'foo/bar.txt' - local hidden = 'fooA/.hidden' - if helpers.is_os('win') then - bufname = 'C:\\foo\\bar.txt' - hidden = 'C:\\fooA\\.hidden' - end - command('set complete+=f | edit '..bufname..' | edit '..hidden..' | enew') + command('set complete+=f | edit foo | edit bar |edit foa |edit .hidden') feed('i') - screen:expect{grid=[[ foo^ | {2:foo }{0: }| {1:bar }{0: }| - {1:txt }{0: }| - {1:fooA }{0: }| + {1:foa }{0: }| {1:.hidden }{0: }| {0:~ }| {0:~ }| - {3:-- }{4:match 1 of 5} | + {0:~ }| + {3:-- }{4:match 1 of 4} | + ]]} + feed('ccf') + screen:expect{grid=[[ + foo^ | + {2:foo }{0: }| + {1:foa }{0: }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {0:~ }| + {3:-- }{4:match 1 of 2} | ]]} end) end) -- cgit