Mercurial > vim
comparison src/screen.c @ 15715:52930462eec4 v8.1.0865
patch 8.1.0865: when 'listchars' only contains "nbsp:X" it does not work
commit https://github.com/vim/vim/commit/895d966e341c187ffcf9da88dba193cbfcebf000
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Jan 31 21:57:21 2019 +0100
patch 8.1.0865: when 'listchars' only contains "nbsp:X" it does not work
Problem: When 'listchars' only contains "nbsp:X" it does not work.
Solution: Set extra_check when lcs_nbsp is set. (Ralf Schandl, closes https://github.com/vim/vim/issues/3889)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Thu, 31 Jan 2019 22:00:06 +0100 |
parents | adc6442118b8 |
children | a6ca8cf07a98 |
comparison
equal
deleted
inserted
replaced
15714:4763c41426b5 | 15715:52930462eec4 |
---|---|
1162 mod_top = wp->w_redraw_top; | 1162 mod_top = wp->w_redraw_top; |
1163 if (wp->w_redraw_bot != 0) | 1163 if (wp->w_redraw_bot != 0) |
1164 mod_bot = wp->w_redraw_bot + 1; | 1164 mod_bot = wp->w_redraw_bot + 1; |
1165 else | 1165 else |
1166 mod_bot = 0; | 1166 mod_bot = 0; |
1167 wp->w_redraw_top = 0; /* reset for next time */ | |
1168 wp->w_redraw_bot = 0; | |
1169 if (buf->b_mod_set) | 1167 if (buf->b_mod_set) |
1170 { | 1168 { |
1171 if (mod_top == 0 || mod_top > buf->b_mod_top) | 1169 if (mod_top == 0 || mod_top > buf->b_mod_top) |
1172 { | 1170 { |
1173 mod_top = buf->b_mod_top; | 1171 mod_top = buf->b_mod_top; |
1275 /* When line numbers are displayed need to redraw all lines below | 1273 /* When line numbers are displayed need to redraw all lines below |
1276 * inserted/deleted lines. */ | 1274 * inserted/deleted lines. */ |
1277 if (mod_top != 0 && buf->b_mod_xlines != 0 && wp->w_p_nu) | 1275 if (mod_top != 0 && buf->b_mod_xlines != 0 && wp->w_p_nu) |
1278 mod_bot = MAXLNUM; | 1276 mod_bot = MAXLNUM; |
1279 } | 1277 } |
1278 wp->w_redraw_top = 0; // reset for next time | |
1279 wp->w_redraw_bot = 0; | |
1280 | 1280 |
1281 /* | 1281 /* |
1282 * When only displaying the lines at the top, set top_end. Used when | 1282 * When only displaying the lines at the top, set top_end. Used when |
1283 * window has scrolled down for msg_scrolled. | 1283 * window has scrolled down for msg_scrolled. |
1284 */ | 1284 */ |
3496 } | 3496 } |
3497 #endif | 3497 #endif |
3498 | 3498 |
3499 if (wp->w_p_list) | 3499 if (wp->w_p_list) |
3500 { | 3500 { |
3501 if (lcs_space || lcs_trail) | 3501 if (lcs_space || lcs_trail || lcs_nbsp) |
3502 extra_check = TRUE; | 3502 extra_check = TRUE; |
3503 /* find start of trailing whitespace */ | 3503 /* find start of trailing whitespace */ |
3504 if (lcs_trail) | 3504 if (lcs_trail) |
3505 { | 3505 { |
3506 trailcol = (colnr_T)STRLEN(ptr); | 3506 trailcol = (colnr_T)STRLEN(ptr); |