Mercurial > vim
view src/testdir/test_listlbr.in @ 6100:76e7fb736c0e v7.4.388
updated for version 7.4.388
Problem: With 'linebreak' set and 'list' unset a Tab is not counted
properly. (Kent Sibilev)
Solution: Check the 'list' option. (Christian Brabandt)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Wed, 30 Jul 2014 16:44:22 +0200 |
parents | 50575818a97f |
children | 69da1498ce89 |
line wrap: on
line source
Test for linebreak and list option (non-utf8) STARTTEST :so small.vim :if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif :10new|:vsp|:vert resize 20 :put =\"\tabcdef hijklmn\tpqrstuvwxyz_1060ABCDEFGHIJKLMNOP \" :norm! zt :set ts=4 sw=4 sts=4 linebreak sbr=+ wrap :fu! ScreenChar(width) : let c='' : for j in range(1,4) : for i in range(1,a:width) : let c.=nr2char(screenchar(j, i)) : endfor : let c.="\n" : endfor : return c :endfu :fu! DoRecordScreen() : wincmd l : $put =printf(\"\n%s\", g:test) : $put =g:line : wincmd p :endfu :let g:test="Test 1: set linebreak" :redraw! :let line=ScreenChar(winwidth(0)) :call DoRecordScreen() :let g:test="Test 2: set linebreak + set list" :set linebreak list listchars= :redraw! :let line=ScreenChar(winwidth(0)) :call DoRecordScreen() :let g:test ="Test 3: set linebreak nolist" :set nolist linebreak :redraw! :let line=ScreenChar(winwidth(0)) :call DoRecordScreen() :let g:test ="Test 4: set linebreak with tab and 1 line as long as screen: should break!" :set nolist linebreak ts=8 :let line="1\t".repeat('a', winwidth(0)-2) :$put =line :$ :norm! zt :redraw! :let line=ScreenChar(winwidth(0)) :call DoRecordScreen() :%w! test.out :qa! ENDTEST dummy text