comparison src/testdir/test_edit.vim @ 34653:8079960136db v9.1.0211

patch 9.1.0211: page-wise scrolling does not support smooth-scrolling Commit: https://github.com/vim/vim/commit/b9f5b95b7bec2414a5a96010514702d99afea18e Author: Luuk van Baal <luukvbaal@gmail.com> Date: Tue Mar 26 18:46:45 2024 +0100 patch 9.1.0211: page-wise scrolling does not support smooth-scrolling Problem: Page-wise scrolling with Ctrl-F/Ctrl-B implements it's own logic to change the topline and cursor. In doing so, skipcol is not handled properly for 'smoothscroll', and virtual lines. Solution: Re-use the logic from Ctrl-E/Ctrl-Y while staying backward compatible as much as possible. closes: #14268 Signed-off-by: Luuk van Baal <luukvbaal@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
author Christian Brabandt <cb@256bit.org>
date Tue, 26 Mar 2024 19:00:04 +0100
parents c94ef9458309
children ca2da8e8fb53
comparison
equal deleted inserted replaced
34652:86aff5d0f82a 34653:8079960136db
1292 call feedkeys("i\<PageDown>\<esc>", 'tnix') 1292 call feedkeys("i\<PageDown>\<esc>", 'tnix')
1293 call assert_equal([0, 30, 1, 0], getpos('.')) 1293 call assert_equal([0, 30, 1, 0], getpos('.'))
1294 call feedkeys("i\<PageDown>\<esc>", 'tnix') 1294 call feedkeys("i\<PageDown>\<esc>", 'tnix')
1295 call assert_equal([0, 30, 1, 0], getpos('.')) 1295 call assert_equal([0, 30, 1, 0], getpos('.'))
1296 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1296 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1297 call assert_equal([0, 29, 1, 0], getpos('.')) 1297 call assert_equal([0, 30, 1, 0], getpos('.'))
1298 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1298 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1299 call assert_equal([0, 21, 1, 0], getpos('.')) 1299 call assert_equal([0, 23, 1, 0], getpos('.'))
1300 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1300 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1301 call assert_equal([0, 13, 1, 0], getpos('.')) 1301 call assert_equal([0, 15, 1, 0], getpos('.'))
1302 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1302 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1303 call assert_equal([0, 5, 1, 0], getpos('.')) 1303 call assert_equal([0, 10, 1, 0], getpos('.'))
1304 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1304 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1305 call assert_equal([0, 5, 11, 0], getpos('.')) 1305 call assert_equal([0, 10, 11, 0], getpos('.'))
1306 " <S-Up> is the same as <PageUp> 1306 " <S-Up> is the same as <PageUp>
1307 " <S-Down> is the same as <PageDown> 1307 " <S-Down> is the same as <PageDown>
1308 call cursor(1, 1) 1308 call cursor(1, 1)
1309 call feedkeys("i\<S-Down>\<esc>", 'tnix') 1309 call feedkeys("i\<S-Down>\<esc>", 'tnix')
1310 call assert_equal([0, 9, 1, 0], getpos('.')) 1310 call assert_equal([0, 9, 1, 0], getpos('.'))
1315 call feedkeys("i\<S-Down>\<esc>", 'tnix') 1315 call feedkeys("i\<S-Down>\<esc>", 'tnix')
1316 call assert_equal([0, 30, 1, 0], getpos('.')) 1316 call assert_equal([0, 30, 1, 0], getpos('.'))
1317 call feedkeys("i\<S-Down>\<esc>", 'tnix') 1317 call feedkeys("i\<S-Down>\<esc>", 'tnix')
1318 call assert_equal([0, 30, 1, 0], getpos('.')) 1318 call assert_equal([0, 30, 1, 0], getpos('.'))
1319 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1319 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1320 call assert_equal([0, 29, 1, 0], getpos('.')) 1320 call assert_equal([0, 30, 1, 0], getpos('.'))
1321 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1321 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1322 call assert_equal([0, 21, 1, 0], getpos('.')) 1322 call assert_equal([0, 23, 1, 0], getpos('.'))
1323 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1323 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1324 call assert_equal([0, 13, 1, 0], getpos('.')) 1324 call assert_equal([0, 15, 1, 0], getpos('.'))
1325 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1325 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1326 call assert_equal([0, 5, 1, 0], getpos('.')) 1326 call assert_equal([0, 10, 1, 0], getpos('.'))
1327 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1327 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1328 call assert_equal([0, 5, 11, 0], getpos('.')) 1328 call assert_equal([0, 10, 11, 0], getpos('.'))
1329 set nostartofline 1329 set nostartofline
1330 call cursor(30, 11) 1330 call cursor(30, 11)
1331 norm! zt 1331 norm! zt
1332 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1332 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1333 call assert_equal([0, 29, 11, 0], getpos('.')) 1333 call assert_equal([0, 30, 11, 0], getpos('.'))
1334 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1334 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1335 call assert_equal([0, 21, 11, 0], getpos('.')) 1335 call assert_equal([0, 23, 11, 0], getpos('.'))
1336 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1336 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1337 call assert_equal([0, 13, 11, 0], getpos('.')) 1337 call assert_equal([0, 15, 11, 0], getpos('.'))
1338 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1338 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1339 call assert_equal([0, 5, 11, 0], getpos('.')) 1339 call assert_equal([0, 10, 11, 0], getpos('.'))
1340 call feedkeys("A\<PageUp>\<esc>", 'tnix') 1340 call feedkeys("A\<PageUp>\<esc>", 'tnix')
1341 call assert_equal([0, 5, 11, 0], getpos('.')) 1341 call assert_equal([0, 10, 11, 0], getpos('.'))
1342 call cursor(1, 1) 1342 call cursor(1, 1)
1343 call feedkeys("A\<PageDown>\<esc>", 'tnix') 1343 call feedkeys("A\<PageDown>\<esc>", 'tnix')
1344 call assert_equal([0, 9, 11, 0], getpos('.')) 1344 call assert_equal([0, 9, 11, 0], getpos('.'))
1345 call feedkeys("A\<PageDown>\<esc>", 'tnix') 1345 call feedkeys("A\<PageDown>\<esc>", 'tnix')
1346 call assert_equal([0, 17, 11, 0], getpos('.')) 1346 call assert_equal([0, 17, 11, 0], getpos('.'))
1353 " <S-Up> is the same as <PageUp> 1353 " <S-Up> is the same as <PageUp>
1354 " <S-Down> is the same as <PageDown> 1354 " <S-Down> is the same as <PageDown>
1355 call cursor(30, 11) 1355 call cursor(30, 11)
1356 norm! zt 1356 norm! zt
1357 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1357 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1358 call assert_equal([0, 29, 11, 0], getpos('.')) 1358 call assert_equal([0, 30, 11, 0], getpos('.'))
1359 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1359 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1360 call assert_equal([0, 21, 11, 0], getpos('.')) 1360 call assert_equal([0, 23, 11, 0], getpos('.'))
1361 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1361 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1362 call assert_equal([0, 13, 11, 0], getpos('.')) 1362 call assert_equal([0, 15, 11, 0], getpos('.'))
1363 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1363 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1364 call assert_equal([0, 5, 11, 0], getpos('.')) 1364 call assert_equal([0, 10, 11, 0], getpos('.'))
1365 call feedkeys("A\<S-Up>\<esc>", 'tnix') 1365 call feedkeys("A\<S-Up>\<esc>", 'tnix')
1366 call assert_equal([0, 5, 11, 0], getpos('.')) 1366 call assert_equal([0, 10, 11, 0], getpos('.'))
1367 call cursor(1, 1) 1367 call cursor(1, 1)
1368 call feedkeys("A\<S-Down>\<esc>", 'tnix') 1368 call feedkeys("A\<S-Down>\<esc>", 'tnix')
1369 call assert_equal([0, 9, 11, 0], getpos('.')) 1369 call assert_equal([0, 9, 11, 0], getpos('.'))
1370 call feedkeys("A\<S-Down>\<esc>", 'tnix') 1370 call feedkeys("A\<S-Down>\<esc>", 'tnix')
1371 call assert_equal([0, 17, 11, 0], getpos('.')) 1371 call assert_equal([0, 17, 11, 0], getpos('.'))