aboutsummaryrefslogtreecommitdiff
path: root/test/functional
diff options
context:
space:
mode:
authorLuuk van Baal <luukvbaal@gmail.com>2023-04-26 22:32:38 +0200
committerLuuk van Baal <luukvbaal@gmail.com>2023-05-02 13:11:47 +0200
commitbf12a85a69f03bb5321fe0a32e1a9ac81f31750c (patch)
treea14582f8112b02baff0b996d2375357cfb6bd1f6 /test/functional
parent36c98b47a3526dc61d149f951f8b8e3a677c26eb (diff)
downloadrneovim-bf12a85a69f03bb5321fe0a32e1a9ac81f31750c.tar.gz
rneovim-bf12a85a69f03bb5321fe0a32e1a9ac81f31750c.tar.bz2
rneovim-bf12a85a69f03bb5321fe0a32e1a9ac81f31750c.zip
vim-patch:9.0.0734: cursor position invalid when scrolling with 'smoothscroll'
Problem: Cursor position invalid when scrolling with 'smoothscroll' set. (Ernie Rael) Solution: Add w_valid_skipcol and clear flags when it changes. Adjust w_skipcol after moving the cursor. https://github.com/vim/vim/commit/2fbabd238a94022c99506e920186a5b6cdf15426 Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat (limited to 'test/functional')
-rw-r--r--test/functional/legacy/scroll_opt_spec.lua34
1 files changed, 28 insertions, 6 deletions
diff --git a/test/functional/legacy/scroll_opt_spec.lua b/test/functional/legacy/scroll_opt_spec.lua
index be7d324908..a5660ae4d2 100644
--- a/test/functional/legacy/scroll_opt_spec.lua
+++ b/test/functional/legacy/scroll_opt_spec.lua
@@ -428,14 +428,36 @@ describe('smoothscroll', function()
|
]])
-- 'scrolloff' set to 2, scrolling down, cursor moves screen line up
- feed('<C-E>gjgj<C-Y>')
+ feed('<C-E>gj<C-Y>')
+ screen:expect_unchanged()
+ end)
+
+ -- oldtest: Test_smoothscroll_one_long_line()
+ it("scrolls correctly when moving the cursor", function()
+ screen:try_resize(40, 6)
+ exec([[
+ call setline(1, 'with lots of text '->repeat(7))
+ set smoothscroll scrolloff=0
+ ]])
+ local s1 = [[
+ ^with lots of text with lots of text with|
+ lots of text with lots of text with lot|
+ s of text with lots of text with lots of|
+ text |
+ ~ |
+ |
+ ]]
+ screen:expect(s1)
+ feed('<C-E>')
screen:expect([[
- <<<of text with lots of text with lots o|
- f text with lots of text with lots of te|
- xt with l^ots of text with lots of text w|
- ith lots of text with lots of text with |
- lots of text with lots of text with lots|
+ <<<ts of text with lots of text with lot|
+ ^s of text with lots of text with lots of|
+ text |
+ ~ |
+ ~ |
|
]])
+ feed('0')
+ screen:expect(s1)
end)
end)