diff options
author | Luuk van Baal <luukvbaal@gmail.com> | 2023-05-11 20:29:09 +0200 |
---|---|---|
committer | Luuk van Baal <luukvbaal@gmail.com> | 2023-05-11 20:57:31 +0200 |
commit | 15c684b358b0165d0874ba08ab6ac0976c86cc0f (patch) | |
tree | d9dbcae6d9b7e9c36d5fd792010d72e679d47a54 /test | |
parent | d5780e133a030d3ae4a4985264412bdca06746d7 (diff) | |
download | rneovim-15c684b358b0165d0874ba08ab6ac0976c86cc0f.tar.gz rneovim-15c684b358b0165d0874ba08ab6ac0976c86cc0f.tar.bz2 rneovim-15c684b358b0165d0874ba08ab6ac0976c86cc0f.zip |
vim-patch:9.0.1542: line not fully displayed if it doesn't fit in the screen
Problem: Line not fully displayed if it doesn't fit in the screen.
Solution: Do not reset s_skipcol if not needed. (Luuk van Baal,
closes vim/vim#12376)
https://github.com/vim/vim/commit/6c018680be0ec25d42614a93be1ea08df29a9e2a
Diffstat (limited to 'test')
-rw-r--r-- | test/functional/legacy/display_spec.lua | 22 | ||||
-rw-r--r-- | test/old/testdir/test_display.vim | 18 |
2 files changed, 39 insertions, 1 deletions
diff --git a/test/functional/legacy/display_spec.lua b/test/functional/legacy/display_spec.lua index f1cd8d1aac..a698bed9f7 100644 --- a/test/functional/legacy/display_spec.lua +++ b/test/functional/legacy/display_spec.lua @@ -196,7 +196,7 @@ describe('display', function() end) -- oldtest: Test_display_long_lastline() - it('display "lastline" shows correct text when end of wrapped line is deleted', function() + it('"lastline" shows correct text when end of wrapped line is deleted', function() local screen = Screen.new(35, 14) screen:attach() exec([[ @@ -241,4 +241,24 @@ describe('display', function() | ]]) end) + + -- oldtest: Test_display_cursor_long_line() + it("correctly shows line that doesn't fit in the window", function() + local screen = Screen.new(75, 8) + screen:attach() + exec([[ + call setline(1, ['a', 'bbbbb '->repeat(100), 'c']) + norm $j + ]]) + screen:expect([[ + <<<bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb | + bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbb| + bb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb | + bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbb| + bb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb | + bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbb| + bb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb bbbbb^ | + | + ]]) + end) end) diff --git a/test/old/testdir/test_display.vim b/test/old/testdir/test_display.vim index f27a8362a9..b30f3bbeef 100644 --- a/test/old/testdir/test_display.vim +++ b/test/old/testdir/test_display.vim @@ -500,4 +500,22 @@ func Test_display_long_lastline() call StopVimInTerminal(buf) endfunc +" Moving the cursor to a line that doesn't fit in the window should show +" correctly. +func Test_display_cursor_long_line() + CheckScreendump + + let lines =<< trim END + call setline(1, ['a', 'bbbbb '->repeat(100), 'c']) + norm $j + END + + call writefile(lines, 'XdispCursorLongline', 'D') + let buf = RunVimInTerminal('-S XdispCursorLongline', #{rows: 8}) + + call VerifyScreenDump(buf, 'Test_display_cursor_long_line', {}) + + call StopVimInTerminal(buf) +endfunc + " vim: shiftwidth=2 sts=2 expandtab |