Mercurial > vim
diff src/testdir/test_diffmode.vim @ 29275:281509f1417b v8.2.5155
patch 8.2.5155: in diff mode windows may get out of sync
Commit: https://github.com/vim/vim/commit/a315ce1f326b836167ca8b1037dafd93eb8d4d4e
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Jun 24 12:38:57 2022 +0100
patch 8.2.5155: in diff mode windows may get out of sync
Problem: In diff mode windows may get out of sync. (Gary Johnson)
Solution: Avoid that the other window scrolls for 'cursorbind'.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Fri, 24 Jun 2022 13:45:04 +0200 |
parents | 27ae8ea82d7a |
children | bf4d7898cf93 |
line wrap: on
line diff
--- a/src/testdir/test_diffmode.vim +++ b/src/testdir/test_diffmode.vim @@ -1535,4 +1535,73 @@ func Test_diff_foldinvert() set scrollbind& endfunc +" This was scrolling for 'cursorbind' but 'scrollbind' is more important +func Test_diff_scroll() + CheckScreendump + + let left =<< trim END + line 1 + line 2 + line 3 + line 4 + + // Common block + // one + // containing + // four lines + + // Common block + // two + // containing + // four lines + END + call writefile(left, 'Xleft') + let right =<< trim END + line 1 + line 2 + line 3 + line 4 + + Lorem + ipsum + dolor + sit + amet, + consectetur + adipiscing + elit. + Etiam + luctus + lectus + sodales, + dictum + + // Common block + // one + // containing + // four lines + + Vestibulum + tincidunt + aliquet + nulla. + + // Common block + // two + // containing + // four lines + END + call writefile(right, 'Xright') + let buf = RunVimInTerminal('-d Xleft Xright', {'rows': 12}) + call term_sendkeys(buf, "\<C-W>\<C-W>jjjj") + call VerifyScreenDump(buf, 'Test_diff_scroll_1', {}) + call term_sendkeys(buf, "j") + call VerifyScreenDump(buf, 'Test_diff_scroll_2', {}) + + call StopVimInTerminal(buf) + call delete('Xleft') + call delete('Xright') +endfunc + + " vim: shiftwidth=2 sts=2 expandtab