diff --git a/7.4.710 b/7.4.710 new file mode 100644 index 0000000..3db78b9 --- /dev/null +++ b/7.4.710 @@ -0,0 +1,350 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.4.710 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.4.710 +Problem: It is not possible to make spaces visibible in list mode. +Solution: Add the "space" item to 'listchars'. (David Bürgin, issue 350) +Files: runtime/doc/options.txt, src/globals.h, src/message.h, + src/screen.c, src/testdir/test_listchars.in, + src/testdir/test_listchars.ok, 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 + + +*** ../vim-7.4.709/runtime/doc/options.txt 2015-03-31 18:27:30.317104255 +0200 +--- runtime/doc/options.txt 2015-04-21 18:21:13.142538865 +0200 +*************** +*** 4714,4744 **** + {not in Vi} + Strings to use in 'list' mode and for the |:list| command. It is a + comma separated list of string settings. +! *lcs-eol* + eol:c Character to show at the end of each line. When + omitted, there is no extra character at the end of the + line. +! *lcs-tab* + tab:xy Two characters to be used to show a tab. The first + char is used once. The second char is repeated to + fill the space that the tab normally occupies. + "tab:>-" will show a tab that takes four spaces as + ">---". When omitted, a tab is show as ^I. +! *lcs-trail* + trail:c Character to show for trailing spaces. When omitted, +! trailing spaces are blank. +! *lcs-extends* + extends:c Character to show in the last column, when 'wrap' is + off and the line continues beyond the right of the + screen. +! *lcs-precedes* + precedes:c Character to show in the first column, when 'wrap' + is off and there is text preceding the character + visible in the first column. +! *lcs-conceal* + conceal:c Character to show in place of concealed text, when + 'conceallevel' is set to 1. +! *lcs-nbsp* + nbsp:c Character to show for a non-breakable space (character + 0xA0, 160). Left blank when omitted. + +--- 4717,4751 ---- + {not in Vi} + Strings to use in 'list' mode and for the |:list| command. It is a + comma separated list of string settings. +! *lcs-eol* + eol:c Character to show at the end of each line. When + omitted, there is no extra character at the end of the + line. +! *lcs-tab* + tab:xy Two characters to be used to show a tab. The first + char is used once. The second char is repeated to + fill the space that the tab normally occupies. + "tab:>-" will show a tab that takes four spaces as + ">---". When omitted, a tab is show as ^I. +! *lcs-space* +! space:c Character to show for a space. When omitted, spaces +! are left blank. +! *lcs-trail* + trail:c Character to show for trailing spaces. When omitted, +! trailing spaces are blank. Overrides the "space" +! setting for trailing spaces. +! *lcs-extends* + extends:c Character to show in the last column, when 'wrap' is + off and the line continues beyond the right of the + screen. +! *lcs-precedes* + precedes:c Character to show in the first column, when 'wrap' + is off and there is text preceding the character + visible in the first column. +! *lcs-conceal* + conceal:c Character to show in place of concealed text, when + 'conceallevel' is set to 1. +! *lcs-nbsp* + nbsp:c Character to show for a non-breakable space (character + 0xA0, 160). Left blank when omitted. + +*************** +*** 4751,4757 **** + :set lcs=tab:>-,eol:<,nbsp:% + :set lcs=extends:>,precedes:< + < The "NonText" highlighting will be used for "eol", "extends" and +! "precedes". "SpecialKey" for "nbsp", "tab" and "trail". + |hl-NonText| |hl-SpecialKey| + + *'lpl'* *'nolpl'* *'loadplugins'* *'noloadplugins'* +--- 4758,4764 ---- + :set lcs=tab:>-,eol:<,nbsp:% + :set lcs=extends:>,precedes:< + < The "NonText" highlighting will be used for "eol", "extends" and +! "precedes". "SpecialKey" for "nbsp", "space", "tab" and "trail". + |hl-NonText| |hl-SpecialKey| + + *'lpl'* *'nolpl'* *'loadplugins'* *'noloadplugins'* +*** ../vim-7.4.709/src/globals.h 2015-02-17 11:11:42.244891247 +0100 +--- src/globals.h 2015-04-21 18:21:13.146538823 +0200 +*************** +*** 1163,1168 **** +--- 1163,1169 ---- + EXTERN int lcs_ext INIT(= NUL); + EXTERN int lcs_prec INIT(= NUL); + EXTERN int lcs_nbsp INIT(= NUL); ++ EXTERN int lcs_space INIT(= NUL); + EXTERN int lcs_tab1 INIT(= NUL); + EXTERN int lcs_tab2 INIT(= NUL); + EXTERN int lcs_trail INIT(= NUL); +*** ../vim-7.4.709/src/screen.c 2015-03-24 18:22:36.078072565 +0100 +--- src/screen.c 2015-04-21 18:21:13.150538781 +0200 +*************** +*** 4334,4347 **** + #endif + ++ptr; + +! /* 'list' : change char 160 to lcs_nbsp. */ +! if (wp->w_p_list && (c == 160 + #ifdef FEAT_MBYTE +! || (mb_utf8 && mb_c == 160) + #endif +! ) && lcs_nbsp) + { +! c = lcs_nbsp; + if (area_attr == 0 && search_attr == 0) + { + n_attr = 1; +--- 4334,4349 ---- + #endif + ++ptr; + +! /* 'list': change char 160 to lcs_nbsp and space to lcs_space. */ +! if (wp->w_p_list +! && (((c == 160 + #ifdef FEAT_MBYTE +! || (mb_utf8 && mb_c == 160) + #endif +! ) && lcs_nbsp) +! || (c == ' ' && lcs_space && ptr <= line + trailcol))) + { +! c = (c == ' ') ? lcs_space : lcs_nbsp; + if (area_attr == 0 && search_attr == 0) + { + n_attr = 1; +*** ../vim-7.4.709/src/testdir/test_listchars.in 2015-04-21 18:32:19.951463048 +0200 +--- src/testdir/test_listchars.in 2015-04-21 18:21:13.150538781 +0200 +*************** +*** 0 **** +--- 1,53 ---- ++ Tests for 'listchars' display with 'list' and :list ++ ++ STARTTEST ++ :so small.vim ++ :let g:lines = [] ++ :function GetScreenCharsForLine(lnum) ++ : return join(map(range(1, virtcol('$')), 'nr2char(screenchar(a:lnum, v:val))'), '') ++ :endfunction ++ :nnoremap GG ":call add(g:lines, GetScreenCharsForLine(".screenrow()."))\" ++ :set listchars+=tab:>-,space:.,trail:< ++ :set list ++ : ++ /^start:/ ++ :normal! jzt ++ GG ++ GG ++ GG ++ GG ++ GGH: ++ :set listchars-=trail:< ++ GG ++ GG ++ GG ++ GG ++ GG: ++ :put =g:lines ++ :'[,']w! test.out ++ ENDTEST ++ ++ start: ++ aa ++ bb ++ cccc ++ dd ee ++ ++ ++ ++ STARTTEST ++ :set listchars+=trail:< ++ :set nolist ++ : ++ /^start:/ ++ :redir! >> test.out ++ :+1,$list ++ :redir END ++ :q! ++ ENDTEST ++ ++ start: ++ fff ++ gg ++ h ++ iii +*** ../vim-7.4.709/src/testdir/test_listchars.ok 2015-04-21 18:32:19.955463005 +0200 +--- src/testdir/test_listchars.ok 2015-04-21 18:21:13.150538781 +0200 +*************** +*** 0 **** +--- 1,16 ---- ++ >-------aa>-----$ ++ ..bb>---<<$ ++ ...cccc><$ ++ dd........ee<<>-$ ++ <$ ++ >-------aa>-----$ ++ ..bb>---..$ ++ ...cccc>.$ ++ dd........ee..>-$ ++ .$ ++ ++ ++ ..fff>--<<$ ++ >-------gg>-----$ ++ .....h>-$ ++ iii<<<<><<$ +*** ../vim-7.4.709/src/testdir/Make_amiga.mak 2015-03-24 17:49:39.607748647 +0100 +--- src/testdir/Make_amiga.mak 2015-04-21 18:22:06.541972861 +0200 +*************** +*** 46,51 **** +--- 46,52 ---- + test_erasebackword.out \ + test_eval.out \ + test_insertcount.out \ ++ test_listchars.out \ + test_listlbr.out \ + test_listlbr_utf8.out \ + test_mapping.out \ +*************** +*** 189,194 **** +--- 190,196 ---- + test_erasebackword.out: test_erasebackword.in + test_eval.out: test_eval.in + test_insertcount.out: test_insertcount.in ++ test_listchars.out: test_listchars.in + test_listlbr.out: test_listlbr.in + test_listlbr_utf8.out: test_listlbr_utf8.in + test_mapping.out: test_mapping.in +*** ../vim-7.4.709/src/testdir/Make_dos.mak 2015-03-24 17:49:39.607748647 +0100 +--- src/testdir/Make_dos.mak 2015-04-21 18:22:15.457878362 +0200 +*************** +*** 45,50 **** +--- 45,51 ---- + test_erasebackword.out \ + test_eval.out \ + test_insertcount.out \ ++ test_listchars.out \ + test_listlbr.out \ + test_listlbr_utf8.out \ + test_mapping.out \ +*** ../vim-7.4.709/src/testdir/Make_ming.mak 2015-03-24 17:49:39.607748647 +0100 +--- src/testdir/Make_ming.mak 2015-04-21 18:22:22.197806926 +0200 +*************** +*** 67,72 **** +--- 67,73 ---- + test_erasebackword.out \ + test_eval.out \ + test_insertcount.out \ ++ test_listchars.out \ + test_listlbr.out \ + test_listlbr_utf8.out \ + test_mapping.out \ +*** ../vim-7.4.709/src/testdir/Make_os2.mak 2015-03-24 17:49:39.607748647 +0100 +--- src/testdir/Make_os2.mak 2015-04-21 18:22:28.777737187 +0200 +*************** +*** 47,52 **** +--- 47,53 ---- + test_erasebackword.out \ + test_eval.out \ + test_insertcount.out \ ++ test_listchars.out \ + test_listlbr.out \ + test_listlbr_utf8.out \ + test_mapping.out \ +*** ../vim-7.4.709/src/testdir/Make_vms.mms 2015-03-24 17:49:39.607748647 +0100 +--- src/testdir/Make_vms.mms 2015-04-21 18:22:34.801673339 +0200 +*************** +*** 4,10 **** + # Authors: Zoltan Arpadffy, + # Sandor Kopanyi, + # +! # Last change: 2015 Mar 24 + # + # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64. + # Edit the lines in the Configuration section below to select. +--- 4,10 ---- + # Authors: Zoltan Arpadffy, + # Sandor Kopanyi, + # +! # Last change: 2015 Apr 21 + # + # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64. + # Edit the lines in the Configuration section below to select. +*************** +*** 106,111 **** +--- 106,112 ---- + test_erasebackword.out \ + test_eval.out \ + test_insertcount.out \ ++ test_listchars.out \ + test_listlbr.out \ + test_listlbr_utf8.out \ + test_mapping.out \ +*** ../vim-7.4.709/src/testdir/Makefile 2015-03-24 17:49:39.611748618 +0100 +--- src/testdir/Makefile 2015-04-21 18:21:13.150538781 +0200 +*************** +*** 43,48 **** +--- 43,49 ---- + test_erasebackword.out \ + test_eval.out \ + test_insertcount.out \ ++ test_listchars.out \ + test_listlbr.out \ + test_listlbr_utf8.out \ + test_mapping.out \ +*** ../vim-7.4.709/src/version.c 2015-04-21 18:08:21.842719055 +0200 +--- src/version.c 2015-04-21 18:20:13.067175680 +0200 +*************** +*** 743,744 **** +--- 743,746 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 710, + /**/ + +-- +I have read and understood the above. X________________ + + /// 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 ///