mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:7.4.370
Problem: Linebreak test fails when encoding is not utf-8. (Danek Duvall) Solution: Split the test in a single byte one and a utf-8 one. (Christian Brabandt)
This commit is contained in:
parent
244ea63724
commit
91aabcb75b
@ -1,10 +1,10 @@
|
|||||||
Test for linebreak and list option
|
Test for linebreak and list option (non-utf8)
|
||||||
|
|
||||||
STARTTEST
|
STARTTEST
|
||||||
:so small.vim
|
:so small.vim
|
||||||
:if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif
|
:if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif
|
||||||
:10new|:vsp|:vert resize 20
|
:10new|:vsp|:vert resize 20
|
||||||
:put =\"\tabcdef hijklmn\tpqrstuvwxyz\u00a01060ABCDEFGHIJKLMNOP \"
|
:put =\"\tabcdef hijklmn\tpqrstuvwxyz_1060ABCDEFGHIJKLMNOP \"
|
||||||
:norm! zt
|
:norm! zt
|
||||||
:set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
|
:set ts=4 sw=4 sts=4 linebreak sbr=+ wrap
|
||||||
:fu! ScreenChar(width)
|
:fu! ScreenChar(width)
|
||||||
@ -32,22 +32,12 @@ STARTTEST
|
|||||||
:redraw!
|
:redraw!
|
||||||
:let line=ScreenChar(winwidth(0))
|
:let line=ScreenChar(winwidth(0))
|
||||||
:call DoRecordScreen()
|
:call DoRecordScreen()
|
||||||
:let g:test ="Test 3: set linebreak + set list + fancy listchars"
|
:let g:test ="Test 3: set linebreak nolist"
|
||||||
:exe "set linebreak list listchars=nbsp:\u2423,tab:\u2595\u2014,trail:\u02d1,eol:\ub6"
|
|
||||||
:redraw!
|
|
||||||
:let line=ScreenChar(winwidth(0))
|
|
||||||
:call DoRecordScreen()
|
|
||||||
:let g:test ="Test 4: set linebreak nolist"
|
|
||||||
:set nolist linebreak
|
:set nolist linebreak
|
||||||
:redraw!
|
:redraw!
|
||||||
:let line=ScreenChar(winwidth(0))
|
:let line=ScreenChar(winwidth(0))
|
||||||
:call DoRecordScreen()
|
:call DoRecordScreen()
|
||||||
:let g:test ="Test 5: set nolinebreak list"
|
:let g:test ="Test 4: set linebreak with tab and 1 line as long as screen: should break!"
|
||||||
:set list nolinebreak
|
|
||||||
:redraw!
|
|
||||||
:let line=ScreenChar(winwidth(0))
|
|
||||||
:call DoRecordScreen()
|
|
||||||
:let g:test ="Test 6: set linebreak with tab and 1 line as long as screen: should break!"
|
|
||||||
:set nolist linebreak ts=8
|
:set nolist linebreak ts=8
|
||||||
:let line="1\t".repeat('a', winwidth(0)-2)
|
:let line="1\t".repeat('a', winwidth(0)-2)
|
||||||
:$put =line
|
:$put =line
|
||||||
|
@ -1,38 +1,26 @@
|
|||||||
|
|
||||||
abcdef hijklmn pqrstuvwxyz 1060ABCDEFGHIJKLMNOP
|
abcdef hijklmn pqrstuvwxyz_1060ABCDEFGHIJKLMNOP
|
||||||
|
|
||||||
Test 1: set linebreak
|
Test 1: set linebreak
|
||||||
abcdef
|
abcdef
|
||||||
+hijklmn
|
+hijklmn
|
||||||
+pqrstuvwxyz 1060ABC
|
+pqrstuvwxyz_1060ABC
|
||||||
+DEFGHIJKLMNOP
|
+DEFGHIJKLMNOP
|
||||||
|
|
||||||
Test 2: set linebreak + set list
|
Test 2: set linebreak + set list
|
||||||
^Iabcdef hijklmn^I
|
^Iabcdef hijklmn^I
|
||||||
+pqrstuvwxyz 1060ABC
|
+pqrstuvwxyz_1060ABC
|
||||||
+DEFGHIJKLMNOP
|
+DEFGHIJKLMNOP
|
||||||
|
|
||||||
|
|
||||||
Test 3: set linebreak + set list + fancy listchars
|
Test 3: set linebreak nolist
|
||||||
▕———abcdef
|
|
||||||
+hijklmn▕———
|
|
||||||
+pqrstuvwxyz␣1060ABC
|
|
||||||
+DEFGHIJKLMNOPˑ¶
|
|
||||||
|
|
||||||
Test 4: set linebreak nolist
|
|
||||||
abcdef
|
abcdef
|
||||||
+hijklmn
|
+hijklmn
|
||||||
+pqrstuvwxyz 1060ABC
|
+pqrstuvwxyz_1060ABC
|
||||||
+DEFGHIJKLMNOP
|
+DEFGHIJKLMNOP
|
||||||
|
|
||||||
Test 5: set nolinebreak list
|
|
||||||
▕———abcdef hijklmn▕—
|
|
||||||
+pqrstuvwxyz␣1060ABC
|
|
||||||
+DEFGHIJKLMNOPˑ¶
|
|
||||||
¶
|
|
||||||
1 aaaaaaaaaaaaaaaaaa
|
1 aaaaaaaaaaaaaaaaaa
|
||||||
|
|
||||||
Test 6: set linebreak with tab and 1 line as long as screen: should break!
|
Test 4: set linebreak with tab and 1 line as long as screen: should break!
|
||||||
1
|
1
|
||||||
+aaaaaaaaaaaaaaaaaa
|
+aaaaaaaaaaaaaaaaaa
|
||||||
~
|
~
|
||||||
|
41
src/nvim/testdir/test_listlbr_utf8.in
Normal file
41
src/nvim/testdir/test_listlbr_utf8.in
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
Test for linebreak and list option in utf-8 mode
|
||||||
|
|
||||||
|
STARTTEST
|
||||||
|
:so small.vim
|
||||||
|
:if !exists("+linebreak") | e! test.ok | w! test.out | qa! | endif
|
||||||
|
:so mbyte.vim
|
||||||
|
:if &enc !=? 'utf-8'|:e! test.ok|:w! test.out|qa!|endif
|
||||||
|
:10new|:vsp|:vert resize 20
|
||||||
|
:put =\"\tabcdef hijklmn\tpqrstuvwxyz\u00a01060ABCDEFGHIJKLMNOP \"
|
||||||
|
: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 + set list + fancy listchars"
|
||||||
|
:exe "set linebreak list listchars=nbsp:\u2423,tab:\u2595\u2014,trail:\u02d1,eol:\ub6"
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
:let g:test ="Test 2: set nolinebreak list"
|
||||||
|
:set list nolinebreak
|
||||||
|
:redraw!
|
||||||
|
:let line=ScreenChar(winwidth(0))
|
||||||
|
:call DoRecordScreen()
|
||||||
|
:%w! test.out
|
||||||
|
:qa!
|
||||||
|
ENDTEST
|
||||||
|
dummy text
|
14
src/nvim/testdir/test_listlbr_utf8.ok
Normal file
14
src/nvim/testdir/test_listlbr_utf8.ok
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
|
||||||
|
abcdef hijklmn pqrstuvwxyz 1060ABCDEFGHIJKLMNOP
|
||||||
|
|
||||||
|
Test 1: set linebreak + set list + fancy listchars
|
||||||
|
▕———abcdef
|
||||||
|
+hijklmn▕———
|
||||||
|
+pqrstuvwxyz␣1060ABC
|
||||||
|
+DEFGHIJKLMNOPˑ¶
|
||||||
|
|
||||||
|
Test 2: set nolinebreak list
|
||||||
|
▕———abcdef hijklmn▕—
|
||||||
|
+pqrstuvwxyz␣1060ABC
|
||||||
|
+DEFGHIJKLMNOPˑ¶
|
||||||
|
¶
|
@ -225,7 +225,7 @@ static int included_patches[] = {
|
|||||||
//373,
|
//373,
|
||||||
//372,
|
//372,
|
||||||
371,
|
371,
|
||||||
//370,
|
370,
|
||||||
//369,
|
//369,
|
||||||
//368,
|
//368,
|
||||||
//367,
|
//367,
|
||||||
|
Loading…
Reference in New Issue
Block a user