| To: vim_dev@googlegroups.com |
| Subject: Patch 7.4.370 |
| Fcc: outbox |
| From: Bram Moolenaar <Bram@moolenaar.net> |
| Mime-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| |
| 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) |
| Files: src/testdir/Make_amiga.mak, src/testdir/Make_dos.mak, |
| src/testdir/Make_ming.mak, src/testdir/Make_os2.mak, |
| src/testdir/Make_vms.mms, src/testdir/Makefile, |
| src/testdir/test_listlbr.in, src/testdir/test_listlbr.ok, |
| src/testdir/test_listlbr_utf8.in, src/testdir/test_listlbr_utf8.ok |
| |
| |
| |
| |
| |
| *** 39,44 **** |
| --- 39,45 ---- |
| test_autoformat_join.out \ |
| test_breakindent.out \ |
| test_listlbr.out \ |
| + test_listlbr_utf8.out \ |
| test_eval.out \ |
| test_options.out |
| |
| |
| *** 167,171 **** |
| --- 168,173 ---- |
| test_autoformat_join.out: test_autoformat_join.in |
| test_breakindent.out: test_breakindent.in |
| test_listlbr.out: test_listlbr.in |
| + test_listlbr_utf8.out: test_listlbr_utf8.in |
| test_eval.out: test_eval.in |
| test_options.out: test_options.in |
| |
| |
| |
| *** 38,43 **** |
| --- 38,44 ---- |
| test_autoformat_join.out \ |
| test_breakindent.out \ |
| test_listlbr.out \ |
| + test_listlbr_utf8.out \ |
| test_eval.out \ |
| test_options.out |
| |
| |
| |
| |
| *** 58,63 **** |
| --- 58,64 ---- |
| test_autoformat_join.out \ |
| test_breakindent.out \ |
| test_listlbr.out \ |
| + test_listlbr_utf8.out \ |
| test_eval.out \ |
| test_options.out |
| |
| |
| |
| |
| *** 40,45 **** |
| --- 40,46 ---- |
| test_autoformat_join.out \ |
| test_eval.out \ |
| test_breakindent.out \ |
| + test_listlbr_utf8.out \ |
| test_listlbr.out \ |
| test_options.out |
| |
| |
| |
| |
| *** 99,104 **** |
| --- 99,105 ---- |
| test_autoformat_join.out \ |
| test_breakindent.out \ |
| test_listlbr.out \ |
| + test_listlbr_utf8.out \ |
| test_eval.out \ |
| test_options.out |
| |
| |
| |
| |
| *** 36,41 **** |
| --- 36,42 ---- |
| test_autoformat_join.out \ |
| test_breakindent.out \ |
| test_listlbr.out \ |
| + test_listlbr_utf8.out \ |
| test_eval.out \ |
| test_options.out |
| |
| |
| |
| |
| *** 1,10 **** |
| ! Test for linebreak and list option |
| |
| STARTTEST |
| :so small.vim |
| :if !exists("+linebreak") | 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) |
| --- 1,10 ---- |
| ! 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) |
| |
| *** 32,53 **** |
| :redraw! |
| :let line=ScreenChar(winwidth(0)) |
| :call DoRecordScreen() |
| ! :let g:test ="Test 3: 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 4: set linebreak nolist" |
| :set nolist linebreak |
| :redraw! |
| :let line=ScreenChar(winwidth(0)) |
| :call DoRecordScreen() |
| ! :let g:test ="Test 5: set nolinebreak list" |
| ! :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 |
| :let line="1\t".repeat('a', winwidth(0)-2) |
| :$put =line |
| --- 32,43 ---- |
| :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 |
| |
| |
| |
| *** 1,38 **** |
| |
| ! abcdef hijklmn pqrstuvwxyz 1060ABCDEFGHIJKLMNOP |
| |
| Test 1: set linebreak |
| abcdef |
| +hijklmn |
| ! +pqrstuvwxyz 1060ABC |
| +DEFGHIJKLMNOP |
| |
| Test 2: set linebreak + set list |
| ^Iabcdef hijklmn^I |
| ! +pqrstuvwxyz 1060ABC |
| +DEFGHIJKLMNOP |
| |
| |
| ! Test 3: set linebreak + set list + fancy listchars |
| ! ▕———abcdef |
| ! +hijklmn▕——— |
| ! +pqrstuvwxyz␣1060ABC |
| ! +DEFGHIJKLMNOPˑ¶ |
| ! |
| ! Test 4: set linebreak nolist |
| abcdef |
| +hijklmn |
| ! +pqrstuvwxyz 1060ABC |
| +DEFGHIJKLMNOP |
| - |
| - Test 5: set nolinebreak list |
| - ▕———abcdef hijklmn▕— |
| - +pqrstuvwxyz␣1060ABC |
| - +DEFGHIJKLMNOPˑ¶ |
| - ¶ |
| 1 aaaaaaaaaaaaaaaaaa |
| |
| ! Test 6: set linebreak with tab and 1 line as long as screen: should break! |
| 1 |
| +aaaaaaaaaaaaaaaaaa |
| ~ |
| --- 1,26 ---- |
| |
| ! abcdef hijklmn pqrstuvwxyz_1060ABCDEFGHIJKLMNOP |
| |
| Test 1: set linebreak |
| abcdef |
| +hijklmn |
| ! +pqrstuvwxyz_1060ABC |
| +DEFGHIJKLMNOP |
| |
| Test 2: set linebreak + set list |
| ^Iabcdef hijklmn^I |
| ! +pqrstuvwxyz_1060ABC |
| +DEFGHIJKLMNOP |
| |
| |
| ! Test 3: set linebreak nolist |
| abcdef |
| +hijklmn |
| ! +pqrstuvwxyz_1060ABC |
| +DEFGHIJKLMNOP |
| 1 aaaaaaaaaaaaaaaaaa |
| |
| ! Test 4: set linebreak with tab and 1 line as long as screen: should break! |
| 1 |
| +aaaaaaaaaaaaaaaaaa |
| ~ |
| |
| |
| |
| |
| --- 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 |
| |
| |
| |
| |
| --- 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ˑ¶ |
| + ¶ |
| |
| |
| |
| *** 736,737 **** |
| --- 736,739 ---- |
| { /* Add new patch number below this line */ |
| + /**/ |
| + 370, |
| /**/ |
| |
| -- |
| Another bucket of what can only be described as human ordure hits ARTHUR. |
| ARTHUR: ... Right! (to the KNIGHTS) That settles it! |
| "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD |
| |
| /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ |
| /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ |
| \\\ an exciting new programming language -- http://www.Zimbu.org /// |
| \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |