| Test for 'scrollbind' causing an unexpected scroll of one of the windows. |
| STARTTEST |
| :so small.vim |
| :" We don't want the status line to cause problems: |
| :set laststatus=0 |
| :let g:totalLines = &lines * 20 |
| :let middle = g:totalLines / 2 |
| :wincmd n |
| :wincmd o |
| :for i in range(1, g:totalLines) |
| : call setline(i, 'LINE ' . i) |
| :endfor |
| :exe string(middle) |
| :normal zt |
| :normal M |
| :aboveleft vert new |
| :for i in range(1, g:totalLines) |
| : call setline(i, 'line ' . i) |
| :endfor |
| :exe string(middle) |
| :normal zt |
| :normal M |
| :" Execute the following two command at once to reproduce the problem. |
| :setl scb | wincmd p |
| :setl scb |
| :wincmd w |
| :let topLineLeft = line('w0') |
| :wincmd p |
| :let topLineRight = line('w0') |
| :setl noscrollbind |
| :wincmd p |
| :setl noscrollbind |
| :q! |
| :%del _ |
| :call setline(1, 'Difference between the top lines (left - right): ' . string(topLineLeft - topLineRight)) |
| :w! test.out |
| :brewind |
| ENDTEST |
| |
| STARTTEST |
| :qa! |
| ENDTEST |
| |