diff options
-rw-r--r-- | src/testdir/test_breakindent.in | 38 | ||||
-rw-r--r-- | src/testdir/test_breakindent.ok | 8 | ||||
-rw-r--r-- | src/version.c | 2 |
3 files changed, 32 insertions, 16 deletions
diff --git a/src/testdir/test_breakindent.in b/src/testdir/test_breakindent.in index 150c9430d..a255457b2 100644 --- a/src/testdir/test_breakindent.in +++ b/src/testdir/test_breakindent.in @@ -6,18 +6,18 @@ STARTTEST :10new|:vsp|:vert resize 20 :put =\"\tabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP\" :set ts=4 sw=4 sts=4 breakindent -:fu! ScreenChar(width) +:fu! ScreenChar(line, width) : let c='' : for i in range(1,a:width) -: let c.=nr2char(screenchar(line('.'), i)) +: let c.=nr2char(screenchar(a:line, i)) : endfor : let c.="\n" : for i in range(1,a:width) -: let c.=nr2char(screenchar(line('.')+1, i)) +: let c.=nr2char(screenchar(a:line+1, i)) : endfor : let c.="\n" : for i in range(1,a:width) -: let c.=nr2char(screenchar(line('.')+2, i)) +: let c.=nr2char(screenchar(a:line+2, i)) : endfor : return c :endfu @@ -29,43 +29,43 @@ STARTTEST :endfu :set briopt=min:0 :let g:test="Test 1: Simple breakindent" -:let line1=ScreenChar(8) +:let line1=ScreenChar(line('.'),8) :call DoRecordScreen() :let g:test="Test 2: Simple breakindent + sbr=>>" :set sbr=>> -:let line1=ScreenChar(8) +:let line1=ScreenChar(line('.'),8) :call DoRecordScreen() :let g:test ="Test 3: Simple breakindent + briopt:sbr" :set briopt=sbr,min:0 sbr=++ -:let line1=ScreenChar(8) +:let line1=ScreenChar(line('.'),8) :call DoRecordScreen() :let g:test ="Test 4: Simple breakindent + min width: 18" :set sbr= briopt=min:18 -:let line1=ScreenChar(8) +:let line1=ScreenChar(line('.'),8) :call DoRecordScreen() :let g:test =" Test 5: Simple breakindent + shift by 2" :set briopt=shift:2,min:0 -:let line1=ScreenChar(8) +:let line1=ScreenChar(line('.'),8) :call DoRecordScreen() :let g:test=" Test 6: Simple breakindent + shift by -1" :set briopt=shift:-1,min:0 -:let line1=ScreenChar(8) +:let line1=ScreenChar(line('.'),8) :call DoRecordScreen() :let g:test=" Test 7: breakindent + shift by +1 + nu + sbr=? briopt:sbr" :set briopt=shift:1,sbr,min:0 nu sbr=? nuw=4 -:let line1=ScreenChar(10) +:let line1=ScreenChar(line('.'),10) :call DoRecordScreen() :let g:test=" Test 8: breakindent + shift:1 + nu + sbr=# list briopt:sbr" :set briopt=shift:1,sbr,min:0 nu sbr=# list -:let line1=ScreenChar(10) +:let line1=ScreenChar(line('.'),10) :call DoRecordScreen() :let g:test=" Test 9: breakindent + shift by +1 + 'nu' + sbr=# list" :set briopt-=sbr -:let line1=ScreenChar(10) +:let line1=ScreenChar(line('.'),10) :call DoRecordScreen() :let g:test=" Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+=n" :set cpo+=n sbr=~ nu nuw=4 nolist briopt=sbr,min:0 -:let line1=ScreenChar(10) +:let line1=ScreenChar(line('.'),10) :call DoRecordScreen() :wincmd p :let g:test="\n Test 11: strdisplaywidth when breakindent is on" @@ -74,6 +74,14 @@ STARTTEST :let width = strlen(text[1:])+indent(2)*4+strlen(&sbr)*3 " text wraps 3 times :$put =g:test :$put =printf(\"strdisplaywidth: %d == calculated: %d\", strdisplaywidth(text), width) +:let g:str="\t\t\t\t\t{" +:let g:test=" Test 12: breakindent + long indent" +:wincmd p +:set all& breakindent linebreak briopt=min:10 nu numberwidth=3 ts=4 +:$put =g:str +zt:let line1=ScreenChar(1,10) +:wincmd p +:call DoRecordScreen() :" :" Test, that the string " a\tb\tc\td\te" is correctly :" displayed in a 20 column wide window (see bug report @@ -87,7 +95,7 @@ fbgjyl:let line1 = @0 :?^\s*z fygjyl:let line2 = @0 :quit! -:$put ='Test 12: breakindent with wrapping Tab' +:$put ='Test 13: breakindent with wrapping Tab' :$put =line1 :$put =line2 :" diff --git a/src/testdir/test_breakindent.ok b/src/testdir/test_breakindent.ok index d89d424fb..e50265ecd 100644 --- a/src/testdir/test_breakindent.ok +++ b/src/testdir/test_breakindent.ok @@ -53,6 +53,12 @@ Test 4: Simple breakindent + min width: 18 Test 11: strdisplaywidth when breakindent is on strdisplaywidth: 46 == calculated: 64 -Test 12: breakindent with wrapping Tab + { + + Test 12: breakindent + long indent +56 + +~ +Test 13: breakindent with wrapping Tab d w diff --git a/src/version.c b/src/version.c index c674ce191..2496defc2 100644 --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 529, +/**/ 528, /**/ 527, |