Mercurial > vim
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('.')) |