1
0
forked from aniani/vim

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'.
This commit is contained in:
Bram Moolenaar
2022-06-24 12:38:57 +01:00
parent a57b553b43
commit a315ce1f32
5 changed files with 101 additions and 1 deletions

View File

@@ -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