Mercurial > vim
diff src/testdir/test_matchadd_conceal.vim @ 18621:a9bfdc5ea1ec v8.1.2303
patch 8.1.2303: cursor in wrong position after horizontal scroll
Commit: https://github.com/vim/vim/commit/08f23636aef595f4cc061dfee8248dca97df16b3
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Nov 16 14:19:33 2019 +0100
patch 8.1.2303: cursor in wrong position after horizontal scroll
Problem: Cursor in wrong position after horizontal scroll.
Solution: Set w_valid_leftcol. (closes https://github.com/vim/vim/issues/5214, closes https://github.com/vim/vim/issues/5224)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 16 Nov 2019 14:30:03 +0100 |
parents | e4b03b369c41 |
children | 7882ccab03da |
line wrap: on
line diff
--- a/src/testdir/test_matchadd_conceal.vim +++ b/src/testdir/test_matchadd_conceal.vim @@ -316,3 +316,31 @@ func Test_cursor_column_in_concealed_lin call StopVimInTerminal(buf) call delete('Xcolesearch') endfunc + +func Test_cursor_column_in_concealed_line_after_leftcol_change() + CheckRunVimInTerminal + + " Test for issue #5214 fix. + let lines =<< trim END + 0put = 'ab' .. repeat('-', &columns) .. 'c' + call matchadd('Conceal', '-') + set nowrap ss=0 cole=3 cocu=n + END + call writefile(lines, 'Xcurs-columns') + let buf = RunVimInTerminal('-S Xcurs-columns', {}) + + " Go to the end of the line (3 columns beyond the end of the screen). + " Horizontal scroll would center the cursor in the screen line, but conceal + " makes it go to screen column 1. + call term_sendkeys(buf, "$") + call term_wait(buf) + + " Are the concealed parts of the current line really hidden? + call assert_equal('c', term_getline(buf, '.')) + + " BugFix check: Is the window's cursor column properly updated for conceal? + call assert_equal(1, term_getcursor(buf)[1]) + + call StopVimInTerminal(buf) + call delete('Xcurs-columns') +endfunc