Patch 8.2.3121
Problem:    'listchars' "exceeds" character appears in foldcolumn. Window
            separator is missing. (Leonid V.  Fedorenchik)
Solution:   Only draw the "exceeds" character in the text area.  Break the
            loop when not drawing the text. (closes #8524)
Files:      src/drawline.c, src/testdir/test_listchars.vim,
            src/testdir/dumps/Test_listchars_01.dump,
            src/testdir/dumps/Test_listchars_02.dump,
            src/testdir/dumps/Test_listchars_03.dump,
            src/testdir/dumps/Test_listchars_04.dump,
            src/testdir/dumps/Test_listchars_05.dump


*** ../vim-8.2.3120/src/drawline.c      2021-06-16 19:28:30.508346274 +0200
--- src/drawline.c      2021-07-08 12:32:27.451321508 +0200
***************
*** 2783,2788 ****
--- 2783,2789 ----
        // Show "extends" character from 'listchars' if beyond the line end and
        // 'list' is set.
        if (wp->w_lcs_chars.ext != NUL
+               && draw_state == WL_LINE
                && wp->w_p_list
                && !wp->w_p_wrap
  #ifdef FEAT_DIFF
***************
*** 3050,3056 ****
            wp->w_p_rl ? (col < 0) :
  #endif
                                    (col >= wp->w_width))
!               && (*ptr != NUL
  #ifdef FEAT_DIFF
                    || filler_todo > 0
  #endif
--- 3051,3058 ----
            wp->w_p_rl ? (col < 0) :
  #endif
                                    (col >= wp->w_width))
!               && (draw_state != WL_LINE
!                   || *ptr != NUL
  #ifdef FEAT_DIFF
                    || filler_todo > 0
  #endif
*** ../vim-8.2.3120/src/testdir/test_listchars.vim      2021-03-22 
17:11:11.095967719 +0100
--- src/testdir/test_listchars.vim      2021-07-08 12:26:30.644045987 +0200
***************
*** 1,6 ****
--- 1,8 ----
  " Tests for 'listchars' display with 'list' and :list
  
+ source check.vim
  source view_util.vim
+ source screendump.vim
  
  func Test_listchars()
    enew!
***************
*** 356,359 ****
--- 358,391 ----
    set list& listchars&
  endfunc
  
+ func Test_listchars_foldcolumn()
+   CheckScreendump
+ 
+   let lines =<< trim END
+       call setline(1, ['aaa', '', 'a', 'aaaaaa'])
+       vsplit
+       vsplit
+       windo set signcolumn=yes foldcolumn=1 winminwidth=0 nowrap list 
listchars=extends:>,precedes:<
+   END
+   call writefile(lines, 'XTest_listchars')
+ 
+   let buf = RunVimInTerminal('-S XTest_listchars', {'rows': 10, 'cols': 60})
+ 
+   call term_sendkeys(buf, "13\<C-W>>")
+   call VerifyScreenDump(buf, 'Test_listchars_01', {})
+   call term_sendkeys(buf, "\<C-W>>")
+   call VerifyScreenDump(buf, 'Test_listchars_02', {})
+   call term_sendkeys(buf, "\<C-W>>")
+   call VerifyScreenDump(buf, 'Test_listchars_03', {})
+   call term_sendkeys(buf, "\<C-W>>")
+   call VerifyScreenDump(buf, 'Test_listchars_04', {})
+   call term_sendkeys(buf, "\<C-W>>")
+   call VerifyScreenDump(buf, 'Test_listchars_05', {})
+ 
+   " clean up
+   call StopVimInTerminal(buf)
+   call delete('XTest_listchars')
+ endfunc
+ 
+ 
  " vim: shiftwidth=2 sts=2 expandtab
*** ../vim-8.2.3120/src/testdir/dumps/Test_listchars_01.dump    2021-07-08 
12:38:25.710641937 +0200
--- src/testdir/dumps/Test_listchars_01.dump    2021-07-08 12:26:47.812009495 
+0200
***************
*** 0 ****
--- 1,10 ----
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@2| @13||+1&&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0|>+0#4040ff13&||+1#0000000&| 
+0#0000e05#a8a8a8255@2>a+0#0000000#ffffff0@2| @26
+ | +0#0000e05#a8a8a8255@2| +0#0000000#ffffff0@16||+1&&| 
+0#0000e05#a8a8a8255@2| +0#0000000#ffffff0@1||+1&&| +0#0000e05#a8a8a8255@2| 
+0#0000000#ffffff0@29
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @15||+1&&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| ||+1&&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @28
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @10||+1&&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0|>+0#4040ff13&||+1#0000000&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @23
+ |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| 
@3||+1#0000000&|~+0#4040ff13&| @31
+ |~| @18||+1#0000000&|~+0#4040ff13&| @3||+1#0000000&|~+0#4040ff13&| @31
+ |~| @18||+1#0000000&|~+0#4040ff13&| @3||+1#0000000&|~+0#4040ff13&| @31
+ |~| @18||+1#0000000&|~+0#4040ff13&| @3||+1#0000000&|~+0#4040ff13&| @31
+ |<+1#0000000&|a|m|e|]| |[|+|]| |1|,|1| @3|A|l@1| |<|]| |1|,| |[+3&&|N|o| 
|N|a|m|e|]| |[|+|]| @3|1|,|1| @9|A|l@1
+ | +0&&@59
*** ../vim-8.2.3120/src/testdir/dumps/Test_listchars_02.dump    2021-07-08 
12:38:25.714641930 +0200
--- src/testdir/dumps/Test_listchars_02.dump    2021-07-08 12:26:48.872007247 
+0200
***************
*** 0 ****
--- 1,10 ----
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@2| @13||+1&&| 
+0#0000e05#a8a8a8255@2|>+0#4040ff13#ffffff0||+1#0000000&| 
+0#0000e05#a8a8a8255@2>a+0#0000000#ffffff0@2| @27
+ | +0#0000e05#a8a8a8255@2| +0#0000000#ffffff0@16||+1&&| 
+0#0000e05#a8a8a8255@2| +0#0000000#ffffff0||+1&&| +0#0000e05#a8a8a8255@2| 
+0#0000000#ffffff0@30
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @15||+1&&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0||+1&&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @29
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @10||+1&&| 
+0#0000e05#a8a8a8255@2|>+0#4040ff13#ffffff0||+1#0000000&| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @24
+ |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| 
@2||+1#0000000&|~+0#4040ff13&| @32
+ |~| @18||+1#0000000&|~+0#4040ff13&| @2||+1#0000000&|~+0#4040ff13&| @32
+ |~| @18||+1#0000000&|~+0#4040ff13&| @2||+1#0000000&|~+0#4040ff13&| @32
+ |~| @18||+1#0000000&|~+0#4040ff13&| @2||+1#0000000&|~+0#4040ff13&| @32
+ |<+1#0000000&|a|m|e|]| |[|+|]| |1|,|1| @3|A|l@1| |<| |1|,| |[+3&&|N|o| 
|N|a|m|e|]| |[|+|]| @3|1|,|1| @10|A|l@1
+ | +0&&@59
*** ../vim-8.2.3120/src/testdir/dumps/Test_listchars_03.dump    2021-07-08 
12:38:25.722641914 +0200
--- src/testdir/dumps/Test_listchars_03.dump    2021-07-08 12:26:49.924005014 
+0200
***************
*** 0 ****
--- 1,10 ----
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@2| @13||+1&&| 
+0#0000e05#a8a8a8255@2||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2>a+0#0000000#ffffff0@2| @28
+ | +0#0000e05#a8a8a8255@2| +0#0000000#ffffff0@16||+1&&| 
+0#0000e05#a8a8a8255@2||+1#0000000#ffffff0| +0#0000e05#a8a8a8255@2| 
+0#0000000#ffffff0@31
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @15||+1&&| 
+0#0000e05#a8a8a8255@2||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @30
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @10||+1&&| 
+0#0000e05#a8a8a8255@2||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @25
+ |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| 
@1||+1#0000000&|~+0#4040ff13&| @33
+ |~| @18||+1#0000000&|~+0#4040ff13&| @1||+1#0000000&|~+0#4040ff13&| @33
+ |~| @18||+1#0000000&|~+0#4040ff13&| @1||+1#0000000&|~+0#4040ff13&| @33
+ |~| @18||+1#0000000&|~+0#4040ff13&| @1||+1#0000000&|~+0#4040ff13&| @33
+ |<+1#0000000&|a|m|e|]| |[|+|]| |1|,|1| @3|A|l@1| |<| |1| |[+3&&|N|o| 
|N|a|m|e|]| |[|+|]| @4|1|,|1| @10|A|l@1
+ | +0&&@59
*** ../vim-8.2.3120/src/testdir/dumps/Test_listchars_04.dump    2021-07-08 
12:38:25.726641907 +0200
--- src/testdir/dumps/Test_listchars_04.dump    2021-07-08 12:26:50.980002777 
+0200
***************
*** 0 ****
--- 1,10 ----
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@2| @13||+1&&| 
+0#0000e05#a8a8a8255@1||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2>a+0#0000000#ffffff0@2| @29
+ | +0#0000e05#a8a8a8255@2| +0#0000000#ffffff0@16||+1&&| 
+0#0000e05#a8a8a8255@1||+1#0000000#ffffff0| +0#0000e05#a8a8a8255@2| 
+0#0000000#ffffff0@32
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @15||+1&&| 
+0#0000e05#a8a8a8255@1||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @31
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @10||+1&&| 
+0#0000e05#a8a8a8255@1||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @26
+ |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&| ||+1#0000000&|~+0#4040ff13&| 
@34
+ |~| @18||+1#0000000&|~+0#4040ff13&| ||+1#0000000&|~+0#4040ff13&| @34
+ |~| @18||+1#0000000&|~+0#4040ff13&| ||+1#0000000&|~+0#4040ff13&| @34
+ |~| @18||+1#0000000&|~+0#4040ff13&| ||+1#0000000&|~+0#4040ff13&| @34
+ |<+1#0000000&|a|m|e|]| |[|+|]| |1|,|1| @3|A|l@1| |<|1| |[+3&&|N|o| 
|N|a|m|e|]| |[|+|]| @4|1|,|1| @11|A|l@1
+ | +0&&@59
*** ../vim-8.2.3120/src/testdir/dumps/Test_listchars_05.dump    2021-07-08 
12:38:25.730641900 +0200
--- src/testdir/dumps/Test_listchars_05.dump    2021-07-08 12:26:52.036000538 
+0200
***************
*** 0 ****
--- 1,10 ----
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@2| @13||+1&&| 
+0#0000e05#a8a8a8255||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2>a+0#0000000#ffffff0@2| @30
+ | +0#0000e05#a8a8a8255@2| +0#0000000#ffffff0@16||+1&&| 
+0#0000e05#a8a8a8255||+1#0000000#ffffff0| +0#0000e05#a8a8a8255@2| 
+0#0000000#ffffff0@33
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @15||+1&&| 
+0#0000e05#a8a8a8255||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0| @32
+ | +0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @10||+1&&| 
+0#0000e05#a8a8a8255||+1#0000000#ffffff0| 
+0#0000e05#a8a8a8255@2|a+0#0000000#ffffff0@5| @27
+ |~+0#4040ff13&| @18||+1#0000000&|~+0#4040ff13&||+1#0000000&|~+0#4040ff13&| @35
+ |~| @18||+1#0000000&|~+0#4040ff13&||+1#0000000&|~+0#4040ff13&| @35
+ |~| @18||+1#0000000&|~+0#4040ff13&||+1#0000000&|~+0#4040ff13&| @35
+ |~| @18||+1#0000000&|~+0#4040ff13&||+1#0000000&|~+0#4040ff13&| @35
+ |<+1#0000000&|a|m|e|]| |[|+|]| |1|,|1| @3|A|l@1| |<| |[+3&&|N|o| |N|a|m|e|]| 
|[|+|]| @5|1|,|1| @11|A|l@1
+ | +0&&@59
*** ../vim-8.2.3120/src/version.c       2021-07-08 11:37:46.413639907 +0200
--- src/version.c       2021-07-08 11:52:00.507166817 +0200
***************
*** 757,758 ****
--- 757,760 ----
  {   /* Add new patch number below this line */
+ /**/
+     3121,
  /**/

-- 
>From "know your smileys":
 :-| :-|   Deja' vu!

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///                                                                      \\\
\\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/202107081040.168Aef0X3598540%40masaka.moolenaar.net.

Raspunde prin e-mail lui