mirror of
https://github.com/neovim/neovim.git
synced 2025-12-10 16:42:42 +00:00
vim-patch:9.0.0969: matchparen highlight is not updated when switching buffers (#21227)
Problem: Matchparen highlight is not updated when switching buffers.
Solution: Listen to the BufLeave and the BufWinEnter autocmd events.
(closes vim/vim#11626)
28a896f54d
Co-authored-by: Bram Moolenaar <Bram@vim.org>
This commit is contained in:
@@ -1,31 +1,28 @@
|
||||
local helpers = require('test.functional.helpers')(after_each)
|
||||
|
||||
local Screen = require('test.functional.ui.screen')
|
||||
local call = helpers.call
|
||||
local clear = helpers.clear
|
||||
local feed = helpers.feed
|
||||
local feed_command = helpers.feed_command
|
||||
local funcs = helpers.funcs
|
||||
local meths = helpers.meths
|
||||
local eq = helpers.eq
|
||||
local exec = helpers.exec
|
||||
|
||||
describe('visual line mode', function()
|
||||
local screen
|
||||
before_each(clear)
|
||||
|
||||
describe('visual line mode', function()
|
||||
-- oldtest: Test_visual_block_scroll()
|
||||
it('redraws properly after scrolling with matchparen loaded and scrolloff=1', function()
|
||||
clear{args={'-u', 'NORC'}}
|
||||
screen = Screen.new(30, 7)
|
||||
local screen = Screen.new(30, 7)
|
||||
screen:attach()
|
||||
screen:set_default_attr_ids({
|
||||
[1] = {bold = true},
|
||||
[2] = {background = Screen.colors.LightGrey},
|
||||
})
|
||||
|
||||
eq(1, meths.get_var('loaded_matchparen'))
|
||||
feed_command('set scrolloff=1')
|
||||
funcs.setline(1, {'a', 'b', 'c', 'd', 'e', '', '{', '}', '{', 'f', 'g', '}'})
|
||||
call('cursor', 5, 1)
|
||||
exec([[
|
||||
source $VIMRUNTIME/plugin/matchparen.vim
|
||||
set scrolloff=1
|
||||
call setline(1, ['a', 'b', 'c', 'd', 'e', '', '{', '}', '{', 'f', 'g', '}'])
|
||||
call cursor(5, 1)
|
||||
]])
|
||||
|
||||
feed('V<c-d><c-d>')
|
||||
screen:expect([[
|
||||
@@ -41,8 +38,8 @@ describe('visual line mode', function()
|
||||
end)
|
||||
|
||||
describe('visual block mode', function()
|
||||
-- oldtest: Test_visual_block_with_virtualedit()
|
||||
it('shows selection correctly with virtualedit=block', function()
|
||||
clear()
|
||||
local screen = Screen.new(30, 7)
|
||||
screen:set_default_attr_ids({
|
||||
[1] = {bold = true}, -- ModeMsg
|
||||
|
||||
Reference in New Issue
Block a user