aboutsummaryrefslogtreecommitdiff
path: root/test/functional/ui/syntax_conceal_spec.lua
diff options
context:
space:
mode:
authorJit <jityao+github@gmail.com>2021-09-07 06:18:33 +0800
committerGitHub <noreply@github.com>2021-09-06 15:18:33 -0700
commitdb695cc4cafa6c26eb71a183cc73a167b842731e (patch)
tree787ab119c0545975a207ba612d91247f33074555 /test/functional/ui/syntax_conceal_spec.lua
parent687a0b3d3e8878b6de058b02d84fbd1f78aa2e89 (diff)
downloadrneovim-db695cc4cafa6c26eb71a183cc73a167b842731e.tar.gz
rneovim-db695cc4cafa6c26eb71a183cc73a167b842731e.tar.bz2
rneovim-db695cc4cafa6c26eb71a183cc73a167b842731e.zip
fix(screen): missing search highlights when redrawing from timer #15380
* Revert "vim-patch:8.1.2294: cursor pos wrong with concealing and search causes a scroll" * Add a test which covers #13074 910bbc3cca796f7fa941e0f6176cd0061de0e01c while reverting the screen.c code changes from there. Fixes #14064
Diffstat (limited to 'test/functional/ui/syntax_conceal_spec.lua')
-rw-r--r--test/functional/ui/syntax_conceal_spec.lua42
1 files changed, 42 insertions, 0 deletions
diff --git a/test/functional/ui/syntax_conceal_spec.lua b/test/functional/ui/syntax_conceal_spec.lua
index d1af0e955c..4e1852162f 100644
--- a/test/functional/ui/syntax_conceal_spec.lua
+++ b/test/functional/ui/syntax_conceal_spec.lua
@@ -913,4 +913,46 @@ describe('Screen', function()
]]}
eq(grid_lines, {{2, 0, {{'c', 0, 3}}}})
end)
+
+ -- Copy of Test_cursor_column_in_concealed_line_after_window_scroll in
+ -- test/functional/ui/syntax_conceal_spec.lua.
+ describe('concealed line after window scroll', function()
+ after_each(function()
+ command(':qall!')
+ os.remove('Xcolesearch')
+ end)
+
+ it('has the correct cursor column', function()
+ insert([[
+ 3split
+ let m = matchadd('Conceal', '=')
+ setl conceallevel=2 concealcursor=nc
+ normal gg
+ "==expr==
+ ]])
+
+ command('write Xcolesearch')
+ feed(":so %<CR>")
+
+ -- Jump to something that is beyond the bottom of the window,
+ -- so there's a scroll down.
+ feed("/expr<CR>")
+
+ -- Are the concealed parts of the current line really hidden?
+ -- Is the window's cursor column properly updated for hidden
+ -- parts of the current line?
+ screen:expect{grid=[[
+ setl conceallevel2 concealcursornc |
+ normal gg |
+ "{5:^expr} |
+ {2:Xcolesearch }|
+ normal gg |
+ "=={5:expr}== |
+ |
+ {0:~ }|
+ {3:Xcolesearch }|
+ /expr |
+ ]]}
+ end)
+ end)
end)