patch 8.1.0372: screen updating slow when 'cursorline' is set
Problem: Screen updating slow when 'cursorline' is set.
Solution: Only redraw the old and new cursor line, not all lines.
diff --git a/src/edit.c b/src/edit.c
index ff45bb7..72dc586 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -1966,7 +1966,7 @@
if (pc_status == PC_STATUS_RIGHT)
++curwin->w_wcol;
if (pc_status == PC_STATUS_RIGHT || pc_status == PC_STATUS_LEFT)
- redrawWinline(curwin->w_cursor.lnum, FALSE);
+ redrawWinline(curwin, curwin->w_cursor.lnum, FALSE);
else
#endif
screen_puts(pc_bytes, pc_row - msg_scrolled, pc_col, pc_attr);
@@ -2017,7 +2017,7 @@
if (dollar_vcol >= 0)
{
dollar_vcol = -1;
- redrawWinline(curwin->w_cursor.lnum, FALSE);
+ redrawWinline(curwin, curwin->w_cursor.lnum, FALSE);
}
}
@@ -7079,7 +7079,7 @@
linenr_T lnum = spell_redraw_lnum;
spell_redraw_lnum = 0;
- redrawWinline(lnum, FALSE);
+ redrawWinline(curwin, lnum, FALSE);
}
}