Patch 8.1.2214

24 views
Skip to first unread message

Bram Moolenaar

unread,
Oct 24, 2019, 4:33:12 PM10/24/19
to vim...@googlegroups.com

Patch 8.1.2214
Problem: Too much is redrawn when 'cursorline' is set.
Solution: Don't do a complete redraw. (closes #5079)
Files: src/main.c, src/change.c, src/drawscreen.c,
src/testdir/dumps/Test_Xcursorline_13.dump,
src/testdir/dumps/Test_Xcursorline_14.dump,
src/testdir/dumps/Test_Xcursorline_15.dump,
src/testdir/dumps/Test_Xcursorline_16.dump,
src/testdir/dumps/Test_Xcursorline_17.dump,
src/testdir/dumps/Test_Xcursorline_18.dump


*** ../vim-8.1.2213/src/main.c 2019-10-13 16:43:35.956359658 +0200
--- src/main.c 2019-10-24 21:31:40.373294129 +0200
***************
*** 1380,1406 ****
validate_cursor();

#ifdef FEAT_SYN_HL
! if (curwin->w_p_cul && curwin->w_p_wrap
! && (curwin->w_p_culopt_flags & CULOPT_SCRLINE))
! must_redraw = NOT_VALID;
#endif
-
if (VIsual_active)
update_curbuf(INVERTED); // update inverted part
else if (must_redraw)
{
mch_disable_flush(); // Stop issuing gui_mch_flush().
! #ifdef FEAT_SYN_HL
! // Might need some more update for the cursorscreen line.
! // TODO: can we optimize this?
! if (curwin->w_p_cul
! && curwin->w_p_wrap
! && (curwin->w_p_culopt_flags & CULOPT_SCRLINE)
! && !char_avail())
! update_screen(VALID);
! else
! #endif
! update_screen(0);
mch_enable_flush();
}
else if (redraw_cmdline || clear_cmdline)
--- 1380,1399 ----
validate_cursor();

#ifdef FEAT_SYN_HL
! // Might need to update for 'cursorline'.
! // When 'cursorlineopt' is "screenline" need to redraw always.
! if (curwin->w_p_cul
! && (curwin->w_last_cursorline != curwin->w_cursor.lnum
! || (curwin->w_p_culopt_flags & CULOPT_SCRLINE))
! && !char_avail())
! redraw_later(VALID);
#endif
if (VIsual_active)
update_curbuf(INVERTED); // update inverted part
else if (must_redraw)
{
mch_disable_flush(); // Stop issuing gui_mch_flush().
! update_screen(0);
mch_enable_flush();
}
else if (redraw_cmdline || clear_cmdline)
*** ../vim-8.1.2213/src/change.c 2019-10-24 20:07:04.419105304 +0200
--- src/change.c 2019-10-24 22:26:53.069615100 +0200
***************
*** 609,624 ****
if (hasAnyFolding(wp))
set_topline(wp, wp->w_topline);
#endif
! // Relative numbering may require updating more. Cursor line
! // highlighting probably needs to be updated if it's below the
! // change (or is using screenline highlighting)
! if (wp->w_p_rnu
#ifdef FEAT_SYN_HL
! || ((wp->w_p_cul && lnum <= wp->w_last_cursorline)
! || (wp->w_p_culopt_flags & CULOPT_SCRLINE))
#endif
- )
- redraw_win_later(wp, SOME_VALID);
}
}

--- 609,629 ----
if (hasAnyFolding(wp))
set_topline(wp, wp->w_topline);
#endif
! // Relative numbering may require updating more.
! if (wp->w_p_rnu)
! redraw_win_later(wp, SOME_VALID);
#ifdef FEAT_SYN_HL
! // Cursor line highlighting probably need to be updated with
! // "VALID" if it's below the change.
! // If the cursor line is inside the change we need to redraw more.
! if (wp->w_p_cul)
! {
! if (xtra == 0)
! redraw_win_later(wp, VALID);
! else if (lnum <= wp->w_last_cursorline)
! redraw_win_later(wp, SOME_VALID);
! }
#endif
}
}

*** ../vim-8.1.2213/src/drawscreen.c 2019-09-19 23:05:56.471034946 +0200
--- src/drawscreen.c 2019-10-24 21:24:50.678976250 +0200
***************
*** 2124,2130 ****
|| (wp->w_match_head != NULL
&& buf->b_mod_xlines != 0)
#endif
! )))))
{
#ifdef FEAT_SEARCH_EXTRA
if (lnum == mod_top)
--- 2124,2135 ----
|| (wp->w_match_head != NULL
&& buf->b_mod_xlines != 0)
#endif
! ))))
! #ifdef FEAT_SYN_HL
! || (wp->w_p_cul && (lnum == wp->w_cursor.lnum
! || lnum == wp->w_last_cursorline))
! #endif
! )
{
#ifdef FEAT_SEARCH_EXTRA
if (lnum == mod_top)
*** ../vim-8.1.2213/src/testdir/dumps/Test_Xcursorline_13.dump 2019-09-14 21:00:01.387100866 +0200
--- src/testdir/dumps/Test_Xcursorline_13.dump 2019-10-24 21:32:24.501256291 +0200
***************
*** 17,20 ****
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|1| @5|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! |:+0&&|s|e|t| |b|r|e|a|k|i|n|d|e|n|t| |f|o|l|d|c|o|l|u|m|n|=|2| |s|i|g|n|c|o|l|u|m|n|=|y|e|s| @30
--- 17,20 ----
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|1| @5|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! | +0&&@74
*** ../vim-8.1.2213/src/testdir/dumps/Test_Xcursorline_14.dump 2019-09-14 21:00:01.387100866 +0200
--- src/testdir/dumps/Test_Xcursorline_14.dump 2019-10-24 21:35:43.576967109 +0200
***************
*** 17,20 ****
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|2|6|-|3|0| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! |:+0&&|s|e|t| |b|r|e|a|k|i|n|d|e|n|t| |f|o|l|d|c|o|l|u|m|n|=|2| |s|i|g|n|c|o|l|u|m|n|=|y|e|s| @30
--- 17,20 ----
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|2|6|-|3|0| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! | +0&&@74
*** ../vim-8.1.2213/src/testdir/dumps/Test_Xcursorline_15.dump 2019-09-14 21:00:01.387100866 +0200
--- src/testdir/dumps/Test_Xcursorline_15.dump 2019-10-24 21:35:44.660965081 +0200
***************
*** 17,20 ****
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|4|3|-|4|7| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! |:+0&&|s|e|t| |b|r|e|a|k|i|n|d|e|n|t| |f|o|l|d|c|o|l|u|m|n|=|2| |s|i|g|n|c|o|l|u|m|n|=|y|e|s| @30
--- 17,20 ----
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|4|3|-|4|7| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! | +0&&@74
*** ../vim-8.1.2213/src/testdir/dumps/Test_Xcursorline_16.dump 2019-09-14 21:00:01.387100866 +0200
--- src/testdir/dumps/Test_Xcursorline_16.dump 2019-10-24 21:37:29.016751178 +0200
***************
*** 17,20 ****
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|5|9|-|6|4| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! |:+0&&|s|e|t| |b|r|e|a|k|i|n|d|e|n|t| |f|o|l|d|c|o|l|u|m|n|=|2| |s|i|g|n|c|o|l|u|m|n|=|y|e|s| @30
--- 17,20 ----
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|5|9|-|6|4| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! | +0&&@74
*** ../vim-8.1.2213/src/testdir/dumps/Test_Xcursorline_17.dump 2019-09-14 21:00:01.387100866 +0200
--- src/testdir/dumps/Test_Xcursorline_17.dump 2019-10-24 21:37:30.100748775 +0200
***************
*** 17,20 ****
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|7|5|-|8|1| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! |:+0&&|s|e|t| |b|r|e|a|k|i|n|d|e|n|t| |f|o|l|d|c|o|l|u|m|n|=|2| |s|i|g|n|c|o|l|u|m|n|=|y|e|s| @30
--- 17,20 ----
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|7|5|-|8|1| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! | +0&&@74
*** ../vim-8.1.2213/src/testdir/dumps/Test_Xcursorline_18.dump 2019-09-14 21:00:01.387100866 +0200
--- src/testdir/dumps/Test_Xcursorline_18.dump 2019-10-24 21:37:31.184746368 +0200
***************
*** 17,20 ****
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|9|1|-|9|8| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! |:+0&&|s|e|t| |b|r|e|a|k|i|n|d|e|n|t| |f|o|l|d|c|o|l|u|m|n|=|2| |s|i|g|n|c|o|l|u|m|n|=|y|e|s| @30
--- 17,20 ----
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|i+0#0000000&|n|s|-+0#0000e05&|z+0#0000000&|w|e|i|-+0#0000e05&|d+0#0000000&|r|e|i|-+0#0000e05&|v+0#0000000&|i||+1&&|~+0#4040ff13&| @47
| +0#0000e05#a8a8a8255@3| +0#af5f00255#ffffff0@3|>+0#4040ff13&|e+0#0000000&|r|-+0#0000e05&|f+0#0000000&|ü|n|f|-+0#0000e05&|s+0#0000000&|e|c|h|s|@+0#4040ff13&@2||+1#0000000&|~+0#4040ff13&| @47
|<+3#0000000&|o| |N|a|m|e|]| |[|+|]| |1|,|9|1|-|9|8| @1|T|o|p| |[+1&&|N|o| |N|a|m|e|]| |[|+|]| @17|5|,|0|-|1| @9|B|o|t
! | +0&&@74
*** ../vim-8.1.2213/src/version.c 2019-10-24 22:12:51.569124167 +0200
--- src/version.c 2019-10-24 22:31:25.872529334 +0200
***************
*** 743,744 ****
--- 743,746 ----
{ /* Add new patch number below this line */
+ /**/
+ 2214,
/**/

--
Managers are like cats in a litter box. They instinctively shuffle things
around to conceal what they've done.
(Scott Adams - The Dilbert principle)

/// Bram Moolenaar -- Br...@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 ///

Christian Brabandt

unread,
Oct 24, 2019, 5:20:06 PM10/24/19
to vim...@googlegroups.com

On Do, 24 Okt 2019, Bram Moolenaar wrote:

> Patch 8.1.2214
> Problem: Too much is redrawn when 'cursorline' is set.
> Solution: Don't do a complete redraw. (closes #5079)

Hm, we also do redraw too much, if line numbering is turned on
and cursorline option is set and cursorlineopt=number

I think this can be also be optimized. That would need a patch similar
to this one:

diff --git a/src/drawscreen.c b/src/drawscreen.c
index abf34b5e9..2040c77d4 100644
--- a/src/drawscreen.c
+++ b/src/drawscreen.c
@@ -2127,7 +2127,8 @@ win_update(win_T *wp)
))))
#ifdef FEAT_SYN_HL
|| (wp->w_p_cul && (lnum == wp->w_cursor.lnum
- || lnum == wp->w_last_cursorline))
+ || lnum == wp->w_last_cursorline)
+ && !(wp->w_p_culopt_flags == CULOPT_NBR))
#endif
)
{
@@ -2387,7 +2388,7 @@ win_update(win_T *wp)
}
else
{
- if (wp->w_p_rnu)
+ if (wp->w_p_rnu || (wp->w_p_cul && wp->w_p_culopt_flags == CULOPT_NBR))
{
#ifdef FEAT_FOLDING
// 'relativenumber' set: The text doesn't need to be drawn, but


And then this ugly change to drawline.c:

diff --git a/src/drawline.c b/src/drawline.c
index 869bdaa0e..bd3d42c86 100644
--- a/src/drawline.c
+++ b/src/drawline.c
@@ -1267,13 +1267,12 @@ win_line(
// When still displaying '$' of change command, stop at cursor.
// When only displaying the (relative) line number and that's done,
// stop here.
- if ((dollar_vcol >= 0 && wp == curwin
+ if (dollar_vcol >= 0 && wp == curwin
&& lnum == wp->w_cursor.lnum && vcol >= (long)wp->w_virtcol
#ifdef FEAT_DIFF
&& filler_todo <= 0
#endif
)
- || (number_only && draw_state > WL_NR))
{
screen_line(screen_row, wp->w_wincol, col, -(int)wp->w_width,
screen_line_flags);
@@ -1288,6 +1287,25 @@ win_line(
break;
}

+ if (number_only && draw_state > WL_NR)
+ {
+ screen_line(screen_row, wp->w_wincol, col, -(int)wp->w_width,
+ screen_line_flags);
+ if (wp->w_p_wrap && (wp->w_p_nu || wp->w_p_rnu) && HL_ATTR(HLF_CLN) != 0)
+ {
+ ++row;
+ ++screen_row;
+ // need to redraw the number column with the right highlighting attribute
+ // for the start of the next screen row.
+ // Pretend to be done with the first line, wrap around now.
+ goto wrap_around;
+ }
+ else
+ // break out of the loop after having redrawn the number column
+ break;
+ }
+
+
if (draw_state == WL_LINE && (area_highlighting || extra_check))
{
// handle Visual or match highlighting in this line
@@ -3007,6 +3025,7 @@ win_line(
row = endrow;
}

+wrap_around:
// When line got too long for screen break here.
if (row == endrow)
{
@@ -3018,7 +3037,7 @@ win_line(
#ifdef FEAT_DIFF
&& filler_todo <= 0
#endif
- && wp->w_width == Columns)
+ && wp->w_width == Columns && !number_only)
{
// Remember that the line wraps, used for modeless copy.
LineWraps[screen_row - 1] = TRUE;

Is that too specific optimization for a too bizare use-case? Or would it make sense to include that?


Best,
Christian
--
Das Leben hat keinen Sinn, außer dem, den wir ihm geben. Es ermutigt
den Menschen nicht, noch demütigt es ihn.
-- Thornton Niven Wilder

Bram Moolenaar

unread,
Oct 25, 2019, 3:52:43 PM10/25/19
to vim...@googlegroups.com, Christian Brabandt

Christian wrote:

> On Do, 24 Okt 2019, Bram Moolenaar wrote:
>
> > Patch 8.1.2214
> > Problem: Too much is redrawn when 'cursorline' is set.
> > Solution: Don't do a complete redraw. (closes #5079)
>
> Hm, we also do redraw too much, if line numbering is turned on
> and cursorline option is set and cursorlineopt=number
>
> I think this can be also be optimized. That would need a patch similar
> to this one:

Hmm, is this actually fixing something? Then please add a test.
Anyway, please create a pull request for this, so that the CI is
triggered.


--
If your company is not involved in something called "ISO 9000" you probably
have no idea what it is. If your company _is_ involved in ISO 9000 then you
definitely have no idea what it is.

Christian Brabandt

unread,
Oct 25, 2019, 4:29:58 PM10/25/19
to vim...@googlegroups.com

On Fr, 25 Okt 2019, Bram Moolenaar wrote:
> Hmm, is this actually fixing something? Then please add a test.
> Anyway, please create a pull request for this, so that the CI is
> triggered.

Well, patch v8.1.2206 should catch it. Actually, I don't think this is a
problem. For one, when culopt == CULOPT_NBR, only the number column of
the first screenline will be highlighted, so no special treatment is
needed. And when cursorlineopt includes line, the complete line needs to
be redrawn anyway.

So I tend not to take any actions here.

Best,
Christian
--
Weniges auf dieser Welt verbindet so stark wie eine gemeinsame
Abneigung gegen einen Dritten.
-- Rene Clair
Reply all
Reply to author
Forward
0 new messages