diff options
author | zeertzjq <zeertzjq@outlook.com> | 2024-11-03 08:27:15 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-03 08:27:15 +0800 |
commit | ed3fb1bb9ad97435c50655ee8de71b2d7d67d01c (patch) | |
tree | 1c9871360a3092decd8d442857ac3424168ea28b /test | |
parent | f3606416f0eb36977e174c512d96542c54ff3162 (diff) | |
download | rneovim-ed3fb1bb9ad97435c50655ee8de71b2d7d67d01c.tar.gz rneovim-ed3fb1bb9ad97435c50655ee8de71b2d7d67d01c.tar.bz2 rneovim-ed3fb1bb9ad97435c50655ee8de71b2d7d67d01c.zip |
vim-patch:9.1.0830: using wrong highlight group for spaces for popupmenu (#31054)
Problem: using wrong highlight group for spaces for popupmenu
Solution: use original attribute instead of combined attributed
(glepnir)
closes: vim/vim#15978
https://github.com/vim/vim/commit/bc10be7a4060748ed1876ab91cf53a2a8701ac13
Co-authored-by: glepnir <glephunter@gmail.com>
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/ui/popupmenu_spec.lua | 24 | ||||
-rw-r--r-- | test/old/testdir/test_popup.vim | 22 |
2 files changed, 43 insertions, 3 deletions
diff --git a/test/functional/ui/popupmenu_spec.lua b/test/functional/ui/popupmenu_spec.lua index 295d677aa0..d096311703 100644 --- a/test/functional/ui/popupmenu_spec.lua +++ b/test/functional/ui/popupmenu_spec.lua @@ -5190,10 +5190,18 @@ describe('builtin popupmenu', function() -- oldtest: Test_pum_user_abbr_hlgroup() it('custom abbr_hlgroup override', function() exec([[ - func CompleteFunc( findstart, base ) + let s:var = 0 + func CompleteFunc(findstart, base) if a:findstart return 0 endif + if s:var == 1 + return { + \ 'words': [ + \ { 'word': 'aword1', 'abbr_hlgroup': 'StrikeFake' }, + \ { 'word': '你好', 'abbr_hlgroup': 'StrikeFake' }, + \]} + endif return { \ 'words': [ \ { 'word': 'aword1', 'menu': 'extra text 1', 'kind': 'W', 'abbr_hlgroup': 'StrikeFake' }, @@ -5201,6 +5209,9 @@ describe('builtin popupmenu', function() \ { 'word': '你好', 'menu': 'extra text 3', 'kind': 'W', 'abbr_hlgroup': 'StrikeFake' }, \]} endfunc + func ChangeVar() + let s:var = 1 + endfunc set completeopt=menu set completefunc=CompleteFunc @@ -5243,6 +5254,17 @@ describe('builtin popupmenu', function() {2:-- }{5:match 2 of 3} | ]]) feed('<C-E><Esc>') + + command('call ChangeVar()') + feed('S<C-X><C-U>') + screen:expect([[ + aword1^ | + {ds:aword1}{s: }{1: }| + {dn:你好}{n: }{1: }| + {1:~ }|*16 + {2:-- }{5:match 1 of 2} | + ]]) + feed('<C-E><Esc>') end) -- oldtest: Test_pum_user_kind_hlgroup() diff --git a/test/old/testdir/test_popup.vim b/test/old/testdir/test_popup.vim index d35d32b13d..601ba6c688 100644 --- a/test/old/testdir/test_popup.vim +++ b/test/old/testdir/test_popup.vim @@ -1509,10 +1509,18 @@ endfunc func Test_pum_user_abbr_hlgroup() CheckScreendump let lines =<< trim END - func CompleteFunc( findstart, base ) + let s:var = 0 + func CompleteFunc(findstart, base) if a:findstart return 0 endif + if s:var == 1 + return { + \ 'words': [ + \ { 'word': 'aword1', 'abbr_hlgroup': 'StrikeFake' }, + \ { 'word': '你好', 'abbr_hlgroup': 'StrikeFake' }, + \]} + endif return { \ 'words': [ \ { 'word': 'aword1', 'menu': 'extra text 1', 'kind': 'W', 'abbr_hlgroup': 'StrikeFake' }, @@ -1520,6 +1528,9 @@ func Test_pum_user_abbr_hlgroup() \ { 'word': '你好', 'menu': 'extra text 3', 'kind': 'W', 'abbr_hlgroup': 'StrikeFake' }, \]} endfunc + func ChangeVar() + let s:var = 1 + endfunc set completeopt=menu set completefunc=CompleteFunc @@ -1547,13 +1558,20 @@ func Test_pum_user_abbr_hlgroup() call VerifyScreenDump(buf, 'Test_pum_highlights_14', {}) call term_sendkeys(buf, "\<C-E>\<Esc>") + call TermWait(buf) + call term_sendkeys(buf, ":call ChangeVar()\<CR>") + call TermWait(buf) + call term_sendkeys(buf, "S\<C-X>\<C-U>") + call VerifyScreenDump(buf, 'Test_pum_highlights_17', {}) + call term_sendkeys(buf, "\<C-E>\<Esc>") + call StopVimInTerminal(buf) endfunc func Test_pum_user_kind_hlgroup() CheckScreendump let lines =<< trim END - func CompleteFunc( findstart, base ) + func CompleteFunc(findstart, base) if a:findstart return 0 endif |