0
0
mirror of https://github.com/vim/vim.git synced 2025-09-24 03:44:06 -04:00

updated for version 7.4.529

Problem:    No test for what 7.4.517 fixes.
Solution:   Adjust the tests for breakindent. (Christian Brabandt)
This commit is contained in:
Bram Moolenaar
2014-11-27 14:09:13 +01:00
parent cbdf0a0b4a
commit baf0344ed7
3 changed files with 32 additions and 16 deletions

View File

@@ -6,18 +6,18 @@ STARTTEST
:10new|:vsp|:vert resize 20 :10new|:vsp|:vert resize 20
:put =\"\tabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP\" :put =\"\tabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP\"
:set ts=4 sw=4 sts=4 breakindent :set ts=4 sw=4 sts=4 breakindent
:fu! ScreenChar(width) :fu! ScreenChar(line, width)
: let c='' : let c=''
: for i in range(1,a:width) : for i in range(1,a:width)
: let c.=nr2char(screenchar(line('.'), i)) : let c.=nr2char(screenchar(a:line, i))
: endfor : endfor
: let c.="\n" : let c.="\n"
: for i in range(1,a:width) : for i in range(1,a:width)
: let c.=nr2char(screenchar(line('.')+1, i)) : let c.=nr2char(screenchar(a:line+1, i))
: endfor : endfor
: let c.="\n" : let c.="\n"
: for i in range(1,a:width) : for i in range(1,a:width)
: let c.=nr2char(screenchar(line('.')+2, i)) : let c.=nr2char(screenchar(a:line+2, i))
: endfor : endfor
: return c : return c
:endfu :endfu
@@ -29,43 +29,43 @@ STARTTEST
:endfu :endfu
:set briopt=min:0 :set briopt=min:0
:let g:test="Test 1: Simple breakindent" :let g:test="Test 1: Simple breakindent"
:let line1=ScreenChar(8) :let line1=ScreenChar(line('.'),8)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test="Test 2: Simple breakindent + sbr=>>" :let g:test="Test 2: Simple breakindent + sbr=>>"
:set sbr=>> :set sbr=>>
:let line1=ScreenChar(8) :let line1=ScreenChar(line('.'),8)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test ="Test 3: Simple breakindent + briopt:sbr" :let g:test ="Test 3: Simple breakindent + briopt:sbr"
:set briopt=sbr,min:0 sbr=++ :set briopt=sbr,min:0 sbr=++
:let line1=ScreenChar(8) :let line1=ScreenChar(line('.'),8)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test ="Test 4: Simple breakindent + min width: 18" :let g:test ="Test 4: Simple breakindent + min width: 18"
:set sbr= briopt=min:18 :set sbr= briopt=min:18
:let line1=ScreenChar(8) :let line1=ScreenChar(line('.'),8)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test =" Test 5: Simple breakindent + shift by 2" :let g:test =" Test 5: Simple breakindent + shift by 2"
:set briopt=shift:2,min:0 :set briopt=shift:2,min:0
:let line1=ScreenChar(8) :let line1=ScreenChar(line('.'),8)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test=" Test 6: Simple breakindent + shift by -1" :let g:test=" Test 6: Simple breakindent + shift by -1"
:set briopt=shift:-1,min:0 :set briopt=shift:-1,min:0
:let line1=ScreenChar(8) :let line1=ScreenChar(line('.'),8)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test=" Test 7: breakindent + shift by +1 + nu + sbr=? briopt:sbr" :let g:test=" Test 7: breakindent + shift by +1 + nu + sbr=? briopt:sbr"
:set briopt=shift:1,sbr,min:0 nu sbr=? nuw=4 :set briopt=shift:1,sbr,min:0 nu sbr=? nuw=4
:let line1=ScreenChar(10) :let line1=ScreenChar(line('.'),10)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test=" Test 8: breakindent + shift:1 + nu + sbr=# list briopt:sbr" :let g:test=" Test 8: breakindent + shift:1 + nu + sbr=# list briopt:sbr"
:set briopt=shift:1,sbr,min:0 nu sbr=# list :set briopt=shift:1,sbr,min:0 nu sbr=# list
:let line1=ScreenChar(10) :let line1=ScreenChar(line('.'),10)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test=" Test 9: breakindent + shift by +1 + 'nu' + sbr=# list" :let g:test=" Test 9: breakindent + shift by +1 + 'nu' + sbr=# list"
:set briopt-=sbr :set briopt-=sbr
:let line1=ScreenChar(10) :let line1=ScreenChar(line('.'),10)
:call DoRecordScreen() :call DoRecordScreen()
:let g:test=" Test 10: breakindent + shift by +1 + 'nu' + sbr=~ cpo+=n" :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 :set cpo+=n sbr=~ nu nuw=4 nolist briopt=sbr,min:0
:let line1=ScreenChar(10) :let line1=ScreenChar(line('.'),10)
:call DoRecordScreen() :call DoRecordScreen()
:wincmd p :wincmd p
:let g:test="\n Test 11: strdisplaywidth when breakindent is on" :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 :let width = strlen(text[1:])+indent(2)*4+strlen(&sbr)*3 " text wraps 3 times
:$put =g:test :$put =g:test
:$put =printf(\"strdisplaywidth: %d == calculated: %d\", strdisplaywidth(text), width) :$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 :" Test, that the string " a\tb\tc\td\te" is correctly
:" displayed in a 20 column wide window (see bug report :" displayed in a 20 column wide window (see bug report
@@ -87,7 +95,7 @@ fbgjyl:let line1 = @0
:?^\s*z :?^\s*z
fygjyl:let line2 = @0 fygjyl:let line2 = @0
:quit! :quit!
:$put ='Test 12: breakindent with wrapping Tab' :$put ='Test 13: breakindent with wrapping Tab'
:$put =line1 :$put =line1
:$put =line2 :$put =line2
:" :"

View File

@@ -53,6 +53,12 @@ Test 4: Simple breakindent + min width: 18
Test 11: strdisplaywidth when breakindent is on Test 11: strdisplaywidth when breakindent is on
strdisplaywidth: 46 == calculated: 64 strdisplaywidth: 46 == calculated: 64
Test 12: breakindent with wrapping Tab {
Test 12: breakindent + long indent
56
~
Test 13: breakindent with wrapping Tab
d d
w w

View File

@@ -741,6 +741,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
529,
/**/ /**/
528, 528,
/**/ /**/