patch 9.0.0608: with spelling, deleting a full stop does not update next line
Problem: With spell checking, deleting a full stop at the end of a line
does not update SpellCap at the start of the next line.
Solution: Update the next line when characters have been deleted. Also when
using undo.
diff --git a/src/undo.c b/src/undo.c
index 3b35452..60172a7 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -2835,7 +2835,16 @@
curbuf->b_op_end.lnum += newsize - oldsize;
}
if (oldsize > 0 || newsize > 0)
+ {
changed_lines(top + 1, 0, bot, newsize - oldsize);
+#ifdef FEAT_SPELL
+ // When text has been changed, possibly the start of the next line
+ // may have SpellCap that should be removed or it needs to be
+ // displayed. Schedule the next line for redrawing just in case.
+ if (spell_check_window(curwin) && bot <= curbuf->b_ml.ml_line_count)
+ redrawWinline(curwin, bot);
+#endif
+ }
// Set the '[ mark.
if (top + 1 < curbuf->b_op_start.lnum)