view src/testdir/test98.in @ 8399:7d1c42e3ce11 v7.4.1491

commit https://github.com/vim/vim/commit/20b4f463f4ab50fa9bcc9838aa94101fa5698125 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Mar 5 17:25:39 2016 +0100 patch 7.4.1491 Problem: Visual-block shift breaks multi-byte characters. Solution: Compute column differently. (Yasuhiro Matsumoto) Add a test.
author Christian Brabandt <cb@256bit.org>
date Sat, 05 Mar 2016 17:30:05 +0100
parents fa024ce48542
children
line wrap: on
line source

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